<?php
namespace Claromentis\People\NameProvider;

$GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0a" . "b7848e536215"] ?: array()) + array("_0301dac72879547917" . "d01783dd4d945a" => base64_decode("aWQgSU4gaW46aW50Oml" . "kcw=="), "n" . "a" . "m" . "e" => base64_decode("bmFt" . "ZQ=="), "_1b8003906020f45513d54c7a" . "55e9a572" => base64_decode("U0VMRUNUIENPVU5UKDEpIEZST00gZXh0cmFuZXRfYXJlYX" . "M="), "_26ea2e897858cc8734f06d5e68" . "44e562" => base64_decode("U0VMRUNUIGlkLCBuYW1lIEZST00gZXh0c" . "mFuZXRfYXJlYXMgT1JERVIgQlkgcHJpbW" . "FyeV9hcmVhIERFU0MsIG5hbWU="));
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["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["_1b8003906020f45513" . "d54c7a55e9a572"]);
        $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["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_26ea2e897858cc8734f06d" . "5e6844e562"]);
        $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["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["na" . "me"], $this->keywords);
        }
        if (!$this->admin->IsPeopleAdmin()) {
            $_4c8189237e0d0b5cd82c06d69613c88e->AddWhereAndClause($GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_0301dac72879547917d01783dd4" . "d945a"], $this->admin->GetAssignExAreas());
        }
        return $_4c8189237e0d0b5cd82c06d69613c88e;
    }
}