public static function getSystemUsersAndRoles()
 {
     global $db, $current_user;
     if (asol_ReportsUtils::isDomainsInstalled()) {
         require_once "modules/asol_Domains/AlineaSolDomainsFunctions.php";
     }
     $users_opts = "";
     $users_sql = "SELECT id, user_name FROM users WHERE deleted=0";
     if (asol_ReportsUtils::isDomainsInstalled()) {
         $users_sql .= asol_manageDomains::getExtendedDomainsWhereQuery('', true);
     }
     $users_sql .= " ORDER BY user_name";
     $users_query = $db->query($users_sql);
     while ($users_row = $db->fetchByAssoc($users_query)) {
         $users_opts .= $users_row['id'] . '${comma}' . $users_row['user_name'] . '${pipe}';
     }
     $users_opts = substr($users_opts, 0, -7);
     $acl_roles_opts = "";
     $acl_roles_sql = "";
     if (asol_ReportsUtils::isDomainsInstalled()) {
         $acl_roles_sql .= "SELECT acl_roles.id, acl_roles.name FROM acl_roles LEFT JOIN asol_domains_aclroles ON acl_roles.id=asol_domains_aclroles.aclrole_id WHERE deleted=0 AND asol_domains_aclroles.asol_domain_id='" . $current_user->asol_default_domain . "'";
     } else {
         $acl_roles_sql .= "SELECT id, name FROM acl_roles WHERE deleted=0";
     }
     $acl_roles_sql .= " ORDER BY name";
     $acl_roles_query = $db->query($acl_roles_sql);
     while ($acl_roles_row = $db->fetchByAssoc($acl_roles_query)) {
         $acl_roles_opts .= $acl_roles_row['id'] . '${comma}' . $acl_roles_row['name'] . '${pipe}';
     }
     $acl_roles_opts = substr($acl_roles_opts, 0, -7);
     return array('users' => empty($users_opts) ? array() : $users_opts, 'roles' => empty($acl_roles_opts) ? array() : $acl_roles_opts);
 }