Пример #1
0
 public function getUserInfo($uname, $attr = array())
 {
     $ldapObj = new Lucid_LDAP($this->configFile);
     $ldapObj->bind($this->username, $this->password);
     $result = $ldapObj->getAttributes($uname, array_merge($attr, array("name", "mail", "distinguishedName")));
     $ldapObj->destroy();
     $final = array("name" => $result["name"][0], "mail" => $result["mail"][0], "dn" => $result["distinguishedName"][0]);
     foreach ($attr as $val) {
         if (isset($result[$val])) {
             $final[$val] = $result[$val];
             if ($val == "userAccountControl") {
                 $final[$val] = getAccountStatus($result[$val][0]);
             }
         } else {
             $final[$val] = "";
         }
     }
     return $final;
 }
Пример #2
0
 public function searchUserWithFilter($filter)
 {
     if (!$this->conn) {
         throw new ADNotBoundException();
     }
     $results = array();
     $entries = ldap_search($this->conn, $this->searchUserDn, $filter, array("givenName", "middleName", "sn", "sAMAccountName", "sn", "memberOf", "mobile", "mail", "homePhone", "userAccountControl"));
     $count = ldap_count_entries($this->conn, $entries);
     $this->logger->log("Lucid_LDAP::info::LDAP Search Complete for filter {$filter}, found {$count} entries");
     if ($count > 0) {
         $i = 0;
         $entry = ldap_first_entry($this->conn, $entries);
         if ($entry) {
             do {
                 $i++;
                 array_push($results, array("givenName" => $this->getFirstValue($entry, "givenName"), "middleName" => $this->getFirstValue($entry, "middleName"), "sn" => $this->getFirstValue($entry, "sn"), "sAMAccountName" => $this->getFirstValue($entry, "sAMAccountName"), "memberOf" => $this->getAllGroupNames($entry, "memberOf"), "mobile" => $this->getFirstValue($entry, "mobile"), "homePhone" => $this->getFirstValue($entry, "homePhone"), "mail" => $this->getFirstValue($entry, "mail"), "userAccountControl" => getAccountStatus($this->getFirstValue($entry, "userAccountControl"))));
             } while ($entry = ldap_next_entry($this->conn, $entry));
         }
     } else {
         throw new EntryNotFoundException($filter);
     }
     return $results;
 }
Пример #3
0
function showUserInfo($userid)
{
    $db = Database::obtain();
    $sql = "SELECT * FROM " . TABLE_USERS . "\n\t\t\t\t\tWHERE `id` =" . $userid . "";
    $userdata = $db->query_first($sql);
    $userid = $userdata['id'];
    $username = $userdata['username'];
    $maxwebsites = $userdata['maxwebsites'];
    $fullnames = $userdata['fullnames'];
    $phone = $userdata['phone'];
    $user_website = $userdata['user_website'];
    $email = $userdata['email'];
    if (isset($_SESSION['last_visit'])) {
        $last_visit = $_SESSION['last_visit'];
    } else {
        $last_visit = $userdata['last_visit'];
    }
    $register_date = $userdata['joined'];
    $status = getAccountStatus($userdata['account_active']);
    $group = getGroup($userdata['group']);
    $date = getAccountExpireDate($userid);
    // 		date_add($date, date_interval_create_from_date_string('90 days')); //only available in PHP 5.3.0
    date_modify($date, '+ 90 days');
    $renewdate = date_format($date, 'Y-m-d');
    $userlanguage = showUserLanguage($userdata['language']);
    $profilemsg = file_get_contents('pages/profile_message.php');
    $statuslink = '';
    if ($userdata['account_active'] == '0') {
        if (scriptName() == 'admin.php') {
            $adml = '&user='******'';
        }
        if (isUser($userid)) {
            $statuslink = ' - ' . textLink(scriptName() . '?activate' . $adml, MSG00151) . helpIcon(MSG00152);
        } else {
            $statuslink = ' - ' . textLink(scriptName() . '?activate' . $adml, MSG00151) . helpIcon(MSG00150);
        }
    } elseif ($userdata['account_active'] == '3') {
        $statuslink = ' - ' . textLink('mailto:' . szEmail(), MSG00149);
    }
    include_once 'views/profile_view.php';
}