<?php
namespace Claromentis\People\NameProvider;

$GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"] ?: array()) + array("na" . "me" => base64_decode("bmFtZQ=" . "="), "_0301dac72879547917d" . "01783dd4d945a" => base64_decode("aWQgSU4gaW46" . "aW50Omlkcw=="), "_1b8003906020f45513d54c7a5" . "5e9a572" => base64_decode("U0VMRUNUIENPVU5UKDEpIEZST00gZXh0c" . "mFuZXRfYXJlYXM="), "_26ea2e8978" . "58cc8734f06" . "d5e6844e562" => base64_decode("U0VMRUNUIGlkLCBuYW1lIEZST00gZXh0cmFuZXRfYXJlYXM" . "gT1JERVIgQlkgcHJpbWFyeV9hcmVhIERFU0MsIG5hbWU="));
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["__65da1b1ec2d6653e8a0ab7" . "848e536215"]["_1b8003906020f45513d54c7a" . "55e9a572"]);
        $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["__65da1b1ec2d6653e8a0ab7848e536" . "215"]["na" . "me"], $this->keywords);
        }
        if (!$this->admin->IsPeopleAdmin()) {
            $_4c8189237e0d0b5cd82c06d69613c88e->AddWhereAndClause($GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_0301dac72879547917" . "d01783dd4d945a"], $this->admin->GetAssignExAreas());
        }
        return $_4c8189237e0d0b5cd82c06d69613c88e;
    }
}