<?php
namespace Claromentis\People\Entity\Map;

$GLOBALS["__65da1b1ec2d6653e8a0ab7848e5" . "36215"] = (@$GLOBALS["__65da1b1ec" . "2d6653e8a0a" . "b7848e53621" . "5"] ?: array()) + array("_9e2e18ee304be5414883" . "9b0c0e58d0db" => base64_decode("dXNlcl9" . "ncm91cH" . "M="), "_35b54f844f87" . "c3db31eca4228" . "4fefc39" => base64_decode("ZXhfYXJlYV9pZA" . "=="), "_fd3573b00e549f334fe5f4d7536" . "a53ca" => base64_decode("Z3JvdXBpZA=" . "="), "parent_i" . "d" => base64_decode("cGF" . "yZW" . "50X" . "2lk"), "us" . "er" . "id" => base64_decode("dX" . "Nl" . "cm" . "lk"));
use Analogue\ORM\Exceptions\MappingException;
use Analogue\ORM\Relationships;
use Claromentis\Core\ORM\EntityMap;
use Claromentis\People\Entity\Extranet;
use Claromentis\People\Entity\Group;
use Claromentis\People\Entity\User;




class GroupMap extends EntityMap
{
    protected $table = 'groups';
    protected $primaryKey = 'groupid';
    protected $attributes = ['groupid', 'groupname', 'description', 'inactive', 'ex_area_id', 'parent_id', 'owner_id'];
    protected $mappings = ['groupid' => 'id', 'groupname' => 'name', 'ex_area_id' => 'extranet_id', 'owner' => 'owner_id'];
    
    
    
    
    
    
    
    
    public function parent(Group $_e9208e4fb555ac989f7519e19c1da810)
    {
        return $this->belongsTo($_e9208e4fb555ac989f7519e19c1da810, Group::class, $GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["pa" . "re" . "nt" . "_i" . "d"]);
    }
    
    
    
    
    
    
    
    
    
    
    public function subgroups(Group $_e9208e4fb555ac989f7519e19c1da810)
    {
        return $this->hasMany($_e9208e4fb555ac989f7519e19c1da810, Group::class, $GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"]["paren" . "t_id"]);
    }
    
    
    
    
    
    
    
    
    
    
    public function users(Group $_e9208e4fb555ac989f7519e19c1da810)
    {
        return $this->belongsToMany($_e9208e4fb555ac989f7519e19c1da810, User::class, $GLOBALS["__65da1b1ec2d6653e8a0ab784" . "8e536215"]["_9e2e18ee304b" . "e54148839b0c0" . "e58d0db"], $GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["_fd3573b00e549f334fe5f4d753" . "6a53ca"], $GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["us" . "er" . "id"]);
    }
    
    
    
    
    
    
    
    
    public function extranet(Group $_e9208e4fb555ac989f7519e19c1da810)
    {
        return $this->belongsTo($_e9208e4fb555ac989f7519e19c1da810, Extranet::class, $GLOBALS["__65da1b1ec2d6653e8a0a" . "b7848e536215"]["_35b54f844f" . "87c3db31eca" . "42284fefc39"]);
    }
}