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

$GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"] = (@$GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"] ?: array()) + array("_adbffcf112" . "8327d7a0a7c" . "dc2164b7256" => base64_decode("cm9" . "sZW" . "lk"), "_9e2e18ee304be54148839b0" . "c0e58d0db" => base64_decode("dXNlc" . "l9ncm" . "91cHM" . "="), "_c8f7f72ce1bbf" . "96c92e1b24081d" . "f9250" => base64_decode("dXNlcl9yb2x" . "lcw=="), "user" . "id" => base64_decode("dXN" . "lcm" . "lk"), "_fd3573b00e549f334fe5f4d" . "7536a53ca" => base64_decode("Z3JvdX" . "BpZA=="), "_35b54f844f87c3db31eca42" . "284fefc39" => base64_decode("ZXhfYXJlYV9pZA=" . "="));
use Claromentis\Core\ORM\Behaviors\MetadataMap;
use Claromentis\Core\ORM\EntityMap;
use Claromentis\People\Entity\Extranet;
use Claromentis\People\Entity\Group;
use Claromentis\People\Entity\Role;
use Claromentis\People\Entity\User;




class UserMap extends EntityMap
{
    use MetadataMap;
    protected $aggregation = User::AGGREGATION;
    protected $table = 'users';
    protected $attributes = ['id', 'intranetuser', 'username', 'password', 'a1_hash', 'firstname', 'surname', 'emailad', 'company', 'job_title', 'last_time_login', 'last_time_used', 'user_code', 'notify_on_checkin', 'notification_method', 'language', 'easy_find_num', 'skin', 'default_skin', 'password_policy', 'pp_change_next_time', 'pp_default', 'password_last_change', 'ldap_guid', 'login_frozen_time', 'login_attempts', 'login_frozen_until', 'whats_new_list', 'ext_type', 'ext_id', 'ex_area_id'];
    protected $mappings = ['ex_area_id' => 'extranet_id', 'emailad' => 'email', 'ext_type' => 'external_directory_id', 'ext_id' => 'external_directory_user_id'];
    protected function getAggregation()
    {
        return User::AGGREGATION;
    }
    
    
    
    
    
    
    
    
    public function extranet(User $_24e0e36600d6af77406a44bb618a6253)
    {
        return $this->belongsTo($_24e0e36600d6af77406a44bb618a6253, Extranet::class, $GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["_35b54f844f87c3db31eca4" . "2284fefc39"]);
    }
    
    
    
    
    
    
    
    
    public function groups(User $_24e0e36600d6af77406a44bb618a6253)
    {
        return $this->belongsToMany($_24e0e36600d6af77406a44bb618a6253, Group::class, $GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["_9e2e18ee304be54148" . "839b0c0e58d0db"], $GLOBALS["__65da1b1ec2d6653e8a0a" . "b7848e536215"]["use" . "rid"], $GLOBALS["__65da1b1ec2d6653e8a0a" . "b7848e536215"]["_fd3573b00e549f334fe5f4d7" . "536a53ca"]);
    }
    
    
    
    
    
    
    
    
    public function roles(User $_24e0e36600d6af77406a44bb618a6253)
    {
        return $this->belongsToMany($_24e0e36600d6af77406a44bb618a6253, Role::class, $GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["_c8f7f72ce1bbf96c92e1b2408" . "1df9250"], $GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["user" . "id"], $GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"]["_adbffcf1128327d" . "7a0a7cdc2164b725" . "6"]);
    }
}