Пример #1
0
function getTopBar($args = null)
{
    global $forgroup;
    global $group_name;
    global $group;
    global $access_isGroupMember, $access_isGroupAdmin;
    global $allow_chat;
    global $service_host;
    if ($args == null) {
        $args = func_get_args();
    }
    // we'll return this one
    $html = "";
    $html .= "<div id=\"topbar\">";
    // First member status
    $html .= "<div id=\"memberstatus\">";
    if (isset($_SESSION['valid_user'])) {
        $ue = _usernameToEmail($_SESSION['valid_user']);
        if ($forgroup) {
            if ($ue[0]) {
                $html .= $ue[1] . " | <a href=\"{$service_host}?function=dashboard\">My Account</a> &middot;";
            } else {
                $html .= $_SESSION['valid_user'] . " | <a href=\"{$service_host}?function=dashboard\">My Account</a> &middot;";
            }
            if ($allow_chat) {
                $html .= " <a href=\"javascript:void()\" onclick=\"switchChatVisibility()\">" . topbarTranslate("Chat On/Off") . "</a> &middot;";
            }
            if ($access_isGroupAdmin) {
                $html .= " <a href=\"{$service_host}?function=admin\">" . topbarTranslate("Group Admin Panel") . "</a> &middot;";
            } elseif (!$access_isGroupMember) {
                if (!$group->membershipApplied(_getMemberID($_SESSION['valid_user']))) {
                    $html .= " <a href=\"{$service_host}?function=join\">" . topbarTranslate("Join This Group") . "</a> &middot;";
                } else {
                    $html .= " <i>" . topbarTranslate("Waiting Membership Authorization") . "</i> &middot;";
                }
            }
            $html .= " <a href=\"{$service_host}?function=signout\">" . topbarTranslate("Sign Out") . "</a>";
        }
    } else {
        if ($forgroup) {
            $html .= "<a href=\"{$service_host}?function=signin\">" . topbarTranslate("Sign In") . "</a> or <a href=\"{$service_host}?function=join\">" . topbarTranslate("Join") . "</a>";
        }
    }
    $html .= " | ";
    // problematic
    // $im = sizeof($args)-1;
    foreach ($args as $i => $a) {
        // $html .= " &gt; <a href=\"{$a[0]}\">".topbarTranslate($a[1])."</a>";
        $html .= "<a href=\"{$a[0]}\">" . topbarTranslate($a[1]) . "</a> &gt; ";
        // if($i!=$im) {
        //	  $html .= "";
        // }
    }
    $html = substr($html, 0, -6);
    $html .= "</div>";
    $html .= "</div>";
    return $html;
}
Пример #2
0
/**
 * logs the user in 
 * @param $username username, comes from net
 * @param $password password, comes from net
 * @param $remember_me, comes from net
 * @returns if successful, true; else false
 */
function login($username, $password, $remember_me = false, $openid = false, $from_remember = false)
{
    global $valid_user;
    $username = mysql_real_escape_string($username);
    $password = mysql_real_escape_string($password);
    $db = AccessDB();
    if (!$openid) {
        if (!$from_remember) {
            $password_crypted = md5($password);
        } else {
            $password_crypted = $password;
        }
        if (strpos($username, '@') !== false) {
            $mid = $db->getOne("SELECT member_id FROM members WHERE email=? AND member_password=? AND openid='no'", array($username, $password_crypted));
        } else {
            $mid = $db->getOne("SELECT member_id FROM members WHERE member_login=? AND member_password=? AND openid='no'", array($username, $password_crypted));
        }
    } else {
        $mid = $db->getOne("SELECT member_id FROM members WHERE member_login=? AND openid='yes'", array($username));
    }
    if (PEAR::isError($mid)) {
        die($mid->getMessage());
    }
    if (empty($mid)) {
        return false;
    } else {
        /**
         * if this is email login
         */
        if (strpos($username, '@') !== false) {
            $nusername = $db->getOne("SELECT member_login FROM members WHERE email=?", array($username));
            if (PEAR::isError($nusername)) {
                die($nusername->getMessage());
            }
            if (empty($nusername)) {
                return false;
            }
            $username = $nusername;
        }
        /**
         * legacy code here
         */
        $valid_user = $username;
        session_register("valid_user");
        $_SESSION['valid_user'] = $username;
        /** 
         * shold be changed to this
         */
        //$_SESSION['valid_user'] = $username;
        if ($remember_me || $from_remember) {
            rememberUser($username, $password_crypted);
        } else {
            dontRememberUser($username);
        }
        /** 
         * analytics code here
         */
        if (class_exists('Analytics')) {
            $ans = new Analytics();
            $ans->loggedIn($valid_user);
        }
        // set login recovered
        // because sure that he still knows
        // his password
        $u2e = _usernameToEmail($valid_user);
        if ($u2e[0]) {
            $email = $u2e[1];
            // check for previous login recovery
            // requests
            setLoginRecovered($email);
        }
        return true;
    }
}