<?php
namespace Claromentis\People\NameProvider;

$GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab7848e5" . "36215"] ?: array()) + array("_0301dac7287" . "9547917d0178" . "3dd4d945a" => base64_decode("aWQgSU4gaW46aW50" . "Omlkcw=="), "_26ea2e897858cc873" . "4f06d5e6844e562" => base64_decode("U0VMRUNUIGlkLCBuYW1lIEZST00gZXh0cmFuZXRfYXJlYXMgT1JE" . "RVIgQlkgcHJpbWFyeV9hcmVhIERFU0MsIG5hbWU="), "_1b8003906020f45513d54c7a55e" . "9a572" => base64_decode("U0VMRUNUIENPVU" . "5UKDEpIEZST00g" . "ZXh0cmFuZXRfYX" . "JlYXM="), "na" . "me" => base64_decode("bm" . "Ft" . "ZQ" . "=="));
use Claromentis\Core\DAL\QueryBuilder;
use Claromentis\Core\Services;
use PeopleGRENamesProvider;
class AssignableExtranets implements PeopleGRENamesProvider
{
    protected $keywords;
    protected $admin;
    public function __construct()
    {
        $this->admin = new \UsersAdmin(\AuthUser::I()->GetId());
    }
    public function count()
    {
        $_4c8189237e0d0b5cd82c06d69613c88e = new QueryBuilder($GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"]["_1b80039060" . "20f45513d54" . "c7a55e9a572"]);
        $this->addFilter($_4c8189237e0d0b5cd82c06d69613c88e);
        list($_f53d35a1a1e233d98d9ce73d92ab3bb1) = Services::I()->GetDb()->query_row($_4c8189237e0d0b5cd82c06d69613c88e->GetQuery());
        return (int) $_f53d35a1a1e233d98d9ce73d92ab3bb1;
    }
    public function SetFilterKeywords($keywords)
    {
        $this->keywords = $keywords;
    }
    public function GetList($page_size, $_85008ed1ba1db3b691d57c5329e12ac8 = 0)
    {
        $_4c8189237e0d0b5cd82c06d69613c88e = new QueryBuilder($GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["_26ea2e897858cc8" . "734f06d5e6844e56" . "2"]);
        $this->addFilter($_4c8189237e0d0b5cd82c06d69613c88e);
        $_7f5aa4e96d4b415a86ed72ebff677cbe = $_4c8189237e0d0b5cd82c06d69613c88e->GetQuery();
        $_7f5aa4e96d4b415a86ed72ebff677cbe->setLimit($page_size, $_85008ed1ba1db3b691d57c5329e12ac8);
        $_189840d11056515e52402d1412a0b6e4 = Services::I()->GetDb()->query($_7f5aa4e96d4b415a86ed72ebff677cbe);
        $_1f24efd4735b7a11b391147435e7d35d = [];
        while (list($id, $name) = $_189840d11056515e52402d1412a0b6e4->fetchRow()) {
            $_1f24efd4735b7a11b391147435e7d35d[$id] = $name;
        }
        return $_1f24efd4735b7a11b391147435e7d35d;
    }
    protected function addFilter(QueryBuilder $_4c8189237e0d0b5cd82c06d69613c88e)
    {
        if ($this->keywords) {
            $_4c8189237e0d0b5cd82c06d69613c88e->AddSubstringFilter($GLOBALS["__65da1b1ec2d6653e8a0ab7848e5362" . "15"]["na" . "me"], $this->keywords);
        }
        if (!$this->admin->IsPeopleAdmin()) {
            $_4c8189237e0d0b5cd82c06d69613c88e->AddWhereAndClause($GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"]["_0301dac72879547917d017" . "83dd4d945a"], $this->admin->GetAssignExAreas());
        }
        return $_4c8189237e0d0b5cd82c06d69613c88e;
    }
}