<?php
namespace Claromentis\Orgchart;

$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"] = (@$GLOBALS["__65da1b1ec2d66" . "53e8a0ab7848e53" . "6215"] ?: array()) + array("_4d707fab93bebb00bbe69e" . "8159697c90" => base64_decode(""), "_18dab35f5768d09db81" . "c56070e04f534" => base64_decode("b3JnX2NoYXJ0X2RlcGFydG1lbnQu" . "aWQ="), "p" => base64_decode("c" . "A" . "=" . "="), "_98b8bed5a" . "c843350163" . "22c401873c" . "3d4" => base64_decode("UGVybUN" . "oZWNrQX" . "NUd29TU" . "Uw="), "_70935e7f47" . "a44a86b6b20" . "eba2ee1fba0" => base64_decode("b3JnX2NoY" . "XJ0X2RlcG" . "FydG1lbnQ" . "="), "_5630a508eaf62fdbab410362fa1" . "7735c" => base64_decode("cGVybWlzc2lvb" . "nM="));
use Claromentis\Core\Acl\AclRepository;
use Claromentis\Core\DAL;
use Claromentis\Core\Security\SecurityContext;




class OrgchartAcl
{
    protected $acl_repository;
    protected $url_repo;
    protected $pages_repo;
    public function __construct(AclRepository $acl, OrgchartRepository $_0bb8bac53757cffec6387614650ed2d8)
    {
        $this->acl_repository = $acl;
        $this->orgchart_repository = $_0bb8bac53757cffec6387614650ed2d8;
    }
    public function CanViewOrgchart(SecurityContext $context, $_e9592f9765722975cdfa9db51be4cc76)
    {
        return $this->acl_repository->Permits($context, Perm::PERM_VIEW, Perm::CLASS_ORGCHART, $_e9592f9765722975cdfa9db51be4cc76);
    }
    public function CanCreateEditOrgchart(SecurityContext $context)
    {
        return $this->acl_repository->Permits($context, Perm::PERM_MANAGE, Perm::CLASS_ORGCHART_ADMIN, 1);
    }
    public function CanDeleteOrgchart(SecurityContext $context, $id)
    {
        return $this->acl_repository->Permits($context, Perm::PERM_MANAGE, Perm::CLASS_ORGCHART_ADMIN, 1);
    }
    public function ApplySitesPermissions(SecurityContext $context, DAL\QueryBuilder $_4c8189237e0d0b5cd82c06d69613c88e, $rights = Perm::PERM_VIEW)
    {
        list($_bdfba04e3e7f4c28fa5e00cda2d66752, $_c7598a9614976977e540b17c67707384) = $GLOBALS["__65da1b1ec2d665" . "3e8a0ab7848e5362" . "15"]["_98b8bed5ac84335016" . "322c401873c3d4"](Perm::CLASS_ORGCHART, $GLOBALS["__65da1b1ec2d6653e8a0ab7848e536" . "215"]["_18dab35f5768d09db81" . "c56070e04f534"], $rights, $GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_4d707fab93bebb00bbe" . "69e8159697c90"], $GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["p"]);
        
        
        $_4c8189237e0d0b5cd82c06d69613c88e->AddJoin($GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["_70935e7f47" . "a44a86b6b20" . "eba2ee1fba0"], $GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"]["_5630a508eaf62fdbab410362fa17" . "735c"], $GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"]["p"], $_bdfba04e3e7f4c28fa5e00cda2d66752);
        $_4c8189237e0d0b5cd82c06d69613c88e->AddWhereAndClause($_c7598a9614976977e540b17c67707384);
    }
}