• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP get_user_by_username函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中get_user_by_username函数的典型用法代码示例。如果您正苦于以下问题:PHP get_user_by_username函数的具体用法?PHP get_user_by_username怎么用?PHP get_user_by_username使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了get_user_by_username函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: polls_page_handler

/**
 * poll page handler; allows the use of fancy URLs
 *
 * @param array $page From the page_handler function
 * @return true|false Depending on success
 */
function polls_page_handler($page)
{
    elgg_load_library('elgg:polls');
    $page_type = $page[0];
    switch ($page_type) {
        case "view":
            echo polls_get_page_view($page[1]);
            break;
        case "all":
            echo polls_get_page_list($page_type);
            break;
        case "add":
        case "edit":
            echo polls_get_page_edit($page_type, $page[1]);
            break;
        case "friends":
        case "owner":
            $username = $page[1];
            $user = get_user_by_username($username);
            $user_guid = $user->guid;
            echo polls_get_page_list($page_type, $user_guid);
            break;
        case "group":
            echo polls_get_page_list($page_type, $page[1]);
            break;
        default:
            return FALSE;
            break;
    }
    return TRUE;
}
开发者ID:napilap,项目名称:polls,代码行数:37,代码来源:start.php


示例2: page_owner

/**
 * Gets the page owner for the current page.
 * @uses $CONFIG
 * @return int|false The current page owner guid (0 if none).
 */
function page_owner()
{
    global $CONFIG;
    $setpageowner = set_page_owner();
    if ($setpageowner !== false) {
        return $setpageowner;
    }
    if ($username = get_input("username")) {
        //if (substr_count($username,'group:')) {
        if (substr_count($username, 'group_')) {
            //preg_match('/group\:([0-9]+)/i',$username,$matches);
            preg_match('/group\\_([0-9]+)/i', $username, $matches);
            $guid = $matches[1];
            if ($entity = get_entity($guid)) {
                return $entity->getGUID();
            }
        }
        if ($user = get_user_by_username($username)) {
            return $user->getGUID();
        }
    }
    if ($owner = get_input("owner_guid")) {
        if ($user = get_entity($owner)) {
            return $user->getGUID();
        }
    }
    if (!empty($CONFIG->page_owner_handlers) && is_array($CONFIG->page_owner_handlers)) {
        foreach ($CONFIG->page_owner_handlers as $handler) {
            if ($guid = $handler()) {
                return $guid;
            }
        }
    }
    return 0;
}
开发者ID:eokyere,项目名称:elgg,代码行数:40,代码来源:pageowner.php


示例3: triggerMentionNotificationEvent

 /**
  * This functions performs actions when a wire post is created
  *
  * @param string     $event  'create'
  * @param string     $type   'object'
  * @param \ElggObject $object the ElggObject created
  *
  * @return void
  */
 public static function triggerMentionNotificationEvent($event, $type, \ElggObject $object)
 {
     if (!elgg_instanceof($object, 'object', 'thewire')) {
         return;
     }
     // @todo replace with decent Elgg 2.0 notification event handling
     //send out notification to users mentioned in a wire post
     $usernames = [];
     preg_match_all("/\\@([A-Za-z0-9\\_\\.\\-]+)/i", $object->description, $usernames);
     if (empty($usernames)) {
         return;
     }
     $usernames = array_unique($usernames[0]);
     $params = ['object' => $object, 'action' => 'mention'];
     foreach ($usernames as $username) {
         $username = str_ireplace('@', '', $username);
         $user = get_user_by_username($username);
         if (empty($user) || $user->getGUID() == $object->getOwnerGUID()) {
             continue;
         }
         $setting = thewire_tools_get_notification_settings($user->getGUID());
         if (empty($setting)) {
             continue;
         }
         $subject = elgg_echo('thewire_tools:notify:mention:subject');
         $message = elgg_echo('thewire_tools:notify:mention:message', [$user->name, $object->getOwnerEntity()->name, elgg_normalize_url("thewire/search/@{$user->username}")]);
         notify_user($user->getGUID(), $object->getOwnerGUID(), $subject, $message, $params, $setting);
     }
 }
开发者ID:coldtrick,项目名称:thewire_tools,代码行数:38,代码来源:Notifications.php


示例4: profile_page_handler

/**
 * Profile page handler
 *
 * @param array $page Array of URL segments passed by the page handling mechanism
 * @return bool
 */
function profile_page_handler($page)
{
    if (isset($page[0])) {
        $username = $page[0];
        $user = get_user_by_username($username);
        elgg_set_page_owner_guid($user->guid);
    } elseif (elgg_is_logged_in()) {
        forward(elgg_get_logged_in_user_entity()->getURL());
    }
    // short circuit if invalid or banned username
    if (!$user || $user->isBanned() && !elgg_is_admin_logged_in()) {
        register_error(elgg_echo('profile:notfound'));
        forward();
    }
    $action = NULL;
    if (isset($page[1])) {
        $action = $page[1];
    }
    if ($action == 'edit') {
        // use the core profile edit page
        $base_dir = elgg_get_root_path();
        require "{$base_dir}pages/profile/edit.php";
        return true;
    }
    $content = elgg_view('profile/layout', array('entity' => $user));
    $body = elgg_view_layout('one_column', array('content' => $content));
    echo elgg_view_page($user->name, $body);
    return true;
}
开发者ID:nooshin-mirzadeh,项目名称:web_2.0_benchmark,代码行数:35,代码来源:start.php


示例5: messageboard_page_handler

/**
 * Messageboard dispatcher for flat message board.
 * Profile (and eventually group) widgets handle their own.
 *
 * URLs take the form of
 *  User's messageboard:               messageboard/owner/<username>
 *  Y's history of posts on X's board: messageboard/owner/<X>/history/<Y>
 *  New post:                          messageboard/add/<guid> (container: user or group)
 *  Group messageboard:                messageboard/group/<guid>/all (not implemented)
 *
 * @param array $page Array of page elements
 * @return bool
 */
function messageboard_page_handler($page)
{
    $pages = dirname(__FILE__) . '/pages/messageboard';
    switch ($page[0]) {
        case 'owner':
            //@todo if they have the widget disabled, don't allow this.
            $owner_name = elgg_extract(1, $page);
            $owner = get_user_by_username($owner_name);
            set_input('page_owner_guid', $owner->guid);
            $history = elgg_extract(2, $page);
            $username = elgg_extract(3, $page);
            if ($history && $username) {
                set_input('history_username', $username);
            }
            include "{$pages}/owner.php";
            break;
        case 'add':
            $container_guid = elgg_extract(1, $page);
            set_input('container_guid', $container_guid);
            include "{$pages}/add.php";
            break;
        case 'group':
            elgg_group_gatekeeper();
            $owner_guid = elgg_extract(1, $page);
            set_input('page_owner_guid', $owner_guid);
            include "{$pages}/owner.php";
            break;
        default:
            return false;
    }
    return true;
}
开发者ID:ibou77,项目名称:elgg,代码行数:45,代码来源:start.php


示例6: au_landing_router

function au_landing_router($hook, $type, $return, $params)
{
    if ($type == 'blog' && $return['segments'][0] == 'new') {
        $user = get_user_by_username($return['segments'][1]);
        if ($user) {
            system_message(elgg_echo('changebookmark'));
            forward(elgg_get_site_url() . 'blog/add/' . $user->guid);
            exit;
        }
        // must be a group
        $guid = str_replace('group:', '', $return['segments'][1]);
        $group = get_entity($guid);
        if (elgg_instanceof($group, 'group', '', 'ElggGroup')) {
            system_message(elgg_echo('changebookmark'));
            forward(elgg_get_site_url() . 'blog/add/' . $group->guid);
        }
        return FALSE;
    }
    // forward old groups urls to new group urls
    if ($type == 'groups' && is_numeric($return['segments'][0])) {
        $group = get_entity($return['segments'][0]);
        if ($group instanceof \ElggGroup) {
            system_message(elgg_echo('changebookmark'));
            forward($group->getURL());
        }
    }
}
开发者ID:AU-Landing-Project,项目名称:au_landing,代码行数:27,代码来源:hooks.php


示例7: profile_page_handler

/**
 * Profile page handler
 *
 * @param array $page Array of page elements, forwarded by the page handling mechanism
 */
function profile_page_handler($page)
{
    if (isset($page[0])) {
        $username = $page[0];
        $user = get_user_by_username($username);
        elgg_set_page_owner_guid($user->guid);
    }
    // short circuit if invalid or banned username
    if (!$user || $user->isBanned() && !elgg_is_admin_logged_in()) {
        register_error(elgg_echo('profile:notfound'));
        forward();
    }
    $action = NULL;
    if (isset($page[1])) {
        $action = $page[1];
    }
    if ($action == 'edit') {
        // use the core profile edit page
        $base_dir = elgg_get_root_path();
        require "{$base_dir}pages/profile/edit.php";
        return;
    }
    // main profile page
    $params = array('content' => elgg_view('profile/wrapper'), 'num_columns' => 3);
    $content = elgg_view_layout('widgets', $params);
    $body = elgg_view_layout('one_column', array('content' => $content));
    echo elgg_view_page($title, $body);
}
开发者ID:rasul,项目名称:Elgg,代码行数:33,代码来源:start.php


示例8: profile_page_handler

/**
 * Profile page handler
 *
 * @param array $page Array of URL segments passed by the page handling mechanism
 * @return bool
 */
function profile_page_handler($page)
{
    if (isset($page[0])) {
        $username = $page[0];
        $user = get_user_by_username($username);
        elgg_set_page_owner_guid($user->guid);
    } elseif (elgg_is_logged_in()) {
        forward(elgg_get_logged_in_user_entity()->getURL());
    }
    // short circuit if invalid or banned username
    if (!$user || $user->isBanned() && !elgg_is_admin_logged_in()) {
        register_error(elgg_echo('profile:notfound'));
        forward();
    }
    $action = NULL;
    if (isset($page[1])) {
        $action = $page[1];
    }
    if ($action == 'edit') {
        // use the core profile edit page
        echo elgg_view_resource('profile/edit');
        return true;
    }
    echo elgg_view_resource('profile/view', ['username' => $page[0]]);
    return true;
}
开发者ID:elgg,项目名称:elgg,代码行数:32,代码来源:start.php


示例9: notifications_page_handler

/**
 * Route page requests
 *
 * @param array $page Array of url parameters
 * @return bool
 */
function notifications_page_handler($page)
{
    gatekeeper();
    $current_user = elgg_get_logged_in_user_entity();
    // default to personal notifications
    if (!isset($page[0])) {
        $page[0] = 'personal';
    }
    if (!isset($page[1])) {
        forward("notifications/{$page[0]}/{$current_user->username}");
    }
    $user = get_user_by_username($page[1]);
    if ($user->guid != $current_user->guid && !$current_user->isAdmin()) {
        forward();
    }
    $base = elgg_get_plugins_path() . 'notifications';
    // note: $user passed in
    switch ($page[0]) {
        case 'group':
            require "{$base}/groups.php";
            break;
        case 'personal':
            require "{$base}/index.php";
            break;
        default:
            return false;
    }
    return true;
}
开发者ID:nogsus,项目名称:Elgg,代码行数:35,代码来源:start.php


示例10: monashees_profile_page_handler

function monashees_profile_page_handler($page)
{
    if (isset($page[0])) {
        $username = $page[0];
        $user = get_user_by_username($username);
        elgg_set_page_owner_guid($user->guid);
    } elseif (elgg_is_logged_in()) {
        forward(elgg_get_logged_in_user_entity()->getURL());
    }
    // short circuit if invalid or banned username
    if (!$user || $user->isBanned() && !elgg_is_admin_logged_in()) {
        register_error(elgg_echo('profile:notfound'));
        forward();
    }
    $action = NULL;
    if (isset($page[1])) {
        $action = $page[1];
    }
    if ($action == 'edit') {
        // use the core profile edit page
        $base_dir = elgg_get_root_path();
        require "{$base_dir}pages/profile/edit.php";
        return true;
    }
    // main profile page
    /*$params = array (
              'content' => elgg_view ( 'profile/wrapper' ),
              'num_columns' => 3 
      );*/
    //$content = elgg_view_layout ( 'widgets', $params );
    $body = elgg_view_layout('two_sidebar', array('content' => elgg_view('profile/wrapper') . "" . elgg_view("profile/owner_block") . "" . elgg_view("profile/homeposts"), 'username' => $username));
    echo elgg_view_page($user->name, $body);
    return true;
}
开发者ID:elainenaomi,项目名称:labxp2014,代码行数:34,代码来源:start.php


示例11: messageboard_page_handler

/**
 * Messageboard dispatcher for flat message board.
 * Profile (and eventually group) widgets handle their own.
 *
 * URLs take the form of
 *  User's messageboard:               messageboard/owner/<username>
 *  Y's history of posts on X's board: messageboard/owner/<X>/history/<Y>
 *  New post:                          messageboard/add/<guid> (container: user or group)
 *  Group messageboard:                messageboard/group/<guid>/all (not implemented)
 *
 * @param array $page Array of page elements
 * @return bool
 */
function messageboard_page_handler($page)
{
    switch ($page[0]) {
        case 'owner':
            //@todo if they have the widget disabled, don't allow this.
            $owner_name = elgg_extract(1, $page);
            $owner = get_user_by_username($owner_name);
            set_input('page_owner_guid', $owner->guid);
            $history = elgg_extract(2, $page);
            $username = elgg_extract(3, $page);
            if ($history && $username) {
                set_input('history_username', $username);
            }
            echo elgg_view('resources/messageboard/owner');
            break;
        case 'add':
            $container_guid = elgg_extract(1, $page);
            set_input('container_guid', $container_guid);
            echo elgg_view('resources/messageboard/add');
            break;
        case 'group':
            elgg_group_gatekeeper();
            $owner_guid = elgg_extract(1, $page);
            set_input('page_owner_guid', $owner_guid);
            echo elgg_view('resources/messageboard/owner');
            break;
        default:
            return false;
    }
    return true;
}
开发者ID:elgg,项目名称:messageboard,代码行数:44,代码来源:start.php


示例12: thewire_tools_create_object_event_handler

/**
 * This functions performs actions when a wire post is created
 *
 * @param string     $event  'create'
 * @param string     $type   'object'
 * @param ElggObject $object the ElggObject created
 *
 * @return void
 */
function thewire_tools_create_object_event_handler($event, $type, ElggObject $object)
{
    if (empty($object) || !elgg_instanceof($object, "object", "thewire")) {
        return;
    }
    //send out notification to users mentioned in a wire post
    $usernames = array();
    preg_match_all("/\\@([A-Za-z0-9\\_\\.\\-]+)/i", $object->description, $usernames);
    if (empty($usernames)) {
        return;
    }
    $usernames = array_unique($usernames[0]);
    $params = array("object" => $object, "action" => "mention");
    foreach ($usernames as $username) {
        $username = str_ireplace("@", "", $username);
        $user = get_user_by_username($username);
        if (empty($user) || $user->getGUID() == $object->getOwnerGUID()) {
            continue;
        }
        $setting = thewire_tools_get_notification_settings($user->getGUID());
        if (empty($setting)) {
            continue;
        }
        $subject = elgg_echo("thewire_tools:notify:mention:subject");
        $message = elgg_echo("thewire_tools:notify:mention:message", array($user->name, $object->getOwnerEntity()->name, elgg_normalize_url("thewire/search/@" . $user->username)));
        notify_user($user->getGUID(), $object->getOwnerGUID(), $subject, $message, $params, $setting);
    }
}
开发者ID:Twizanex,项目名称:thewire_tools,代码行数:37,代码来源:events.php


示例13: getUserData

 /**
  * Return user info
  *
  * Returns info about the given user needs to contain
  * at least these fields:
  *
  * name string  full name of the user
  * mail string  email addres of the user
  * grps array   list of groups the user is in
  *
  * @author  Andreas Gohr <[email protected]>
  */
 function getUserData($username)
 {
     $user = get_user_by_username($username);
     //error_log("getUserData:".$username);
     if (!$user) {
         return false;
     }
     //error_log("getUserData:".$username);
     $page_owner = elgg_get_page_owner_entity();
     $grps = array();
     if ($page_owner instanceof ElggGroup) {
         if ($page_owner->canEdit($user->getGUID())) {
             $grps[] = "admin";
             $grps[] = "root";
             //error_log('operator');
         } elseif ($page_owner->isMember($user)) {
             $grps[] = "member";
         }
     } elseif ($page_owner instanceof ElggUser) {
         if ($page_owner == $user) {
             $grps[] = "admin";
         } elseif ($page_owner->isFriendsWith($user->getGUID())) {
             $grps[] = "member";
         }
     }
     if ($user->isAdmin()) {
         $grps[] = "root";
         $grps[] = "admin";
     }
     $groups = elgg_get_entities_from_relationship(array('relationship' => 'member', 'relationship_guid' => $user->getGUID(), 'inverse_relationship' => FALSE, 'limit' => 0));
     foreach ($groups as $group) {
         $grps[] = $this->cleanUser($group->name);
     }
     return array('name' => $user->name, 'mail' => $user->email, 'grps' => $grps);
 }
开发者ID:lorea,项目名称:Hydra-dev,代码行数:47,代码来源:elgg.class.php


示例14: stripe_page_handler

/**
 * Stripe related pages
 *
 * @param array $page
 * @param string $handler
 * @return boolean
 */
function stripe_page_handler($page, $handler)
{
    gatekeeper();
    $username = elgg_extract(0, $page, false);
    if ($username) {
        $user = get_user_by_username($username);
    }
    if (!elgg_instanceof($user) || !$user->canEdit()) {
        $user = elgg_get_logged_in_user_entity();
        forward("{$handler}/{$user->username}");
    }
    elgg_set_context('settings');
    elgg_set_page_owner_guid($user->guid);
    elgg_push_breadcrumb(elgg_echo('stripe:billing'), 'billing');
    $context = elgg_extract(1, $page, 'cards');
    $action = elgg_extract(2, $page, 'all');
    $view = "stripe/pages/{$context}/{$action}";
    if (elgg_view_exists($view)) {
        $params = array('entity' => $user, 'id' => elgg_extract(3, $page, false), 'context' => $page);
        $title = elgg_echo("stripe:{$context}:{$action}");
        $content = elgg_view($view, $params);
        $sidebar = elgg_view('stripe/sidebar', $params);
        $filter = elgg_view("stripe/filters/{$context}/{$action}", $params);
    }
    if ($content) {
        if (elgg_is_xhr()) {
            echo $content;
        } else {
            $layout = elgg_view_layout('content', array('title' => $title, 'content' => $content, 'sidebar' => $sidebar, 'filter' => $filter));
            echo elgg_view_page($title, $layout);
        }
        return true;
    }
    return false;
}
开发者ID:Daltonmedia,项目名称:stripe,代码行数:42,代码来源:page_handlers.php


示例15: show_members_json

 function show_members_json($context, $limit = 30, $offset = 0, $username)
 {
     if (!$username) {
         $user = elgg_get_logged_in_user_entity();
     } else {
         $user = get_user_by_username($username);
         if (!$user) {
             throw new InvalidParameterException('registration:usernamenotvalid');
         }
     }
     if ($context == "newest") {
         $params = array('types' => 'user', 'limit' => $limit, 'full_view' => FALSE);
         $latest_member = elgg_get_entities($params);
         //return $return;
     }
     if ($context == "online") {
         $latest_member = get_online_users();
     }
     if ($context == "popular") {
         $params = array('types' => 'user', 'relationship' => 'friend', 'inverse_relationship' => false);
         $latest_member = elgg_list_entities_from_relationship_count($params);
     }
     if ($latest_member) {
         foreach ($latest_member as $single) {
             $member['guid'] = $single->guid;
             $member['name'] = $single->name;
             //$member['avatar_url'] = get_entity_icon_url($single,'small');
             $return[] = $member;
         }
     }
     //return $return;
     return json_encode($return, true);
 }
开发者ID:elahegol,项目名称:APIPlugin,代码行数:33,代码来源:member.php


示例16: messageboard_page_handler

/**
 * Messageboard dispatcher for flat message board.
 * Profile (and eventually group) widgets handle their own.
 *
 * URLs take the form of
 *  User's messageboard:               messageboard/owner/<username>
 *  Y's history of posts on X's board: messageboard/owner/<X>/history/<Y>
 *  New post:                          messageboard/add/<guid> (container: user or group)
 *  Group messageboard:                messageboard/group/<guid>/all (not implemented)
 *
 * @param array $page Array of page elements
 * @return bool
 */
function messageboard_page_handler($page)
{
    $vars = [];
    switch ($page[0]) {
        case 'owner':
            //@todo if they have the widget disabled, don't allow this.
            $owner_name = elgg_extract(1, $page);
            $owner = get_user_by_username($owner_name);
            $vars['page_owner_guid'] = $owner->guid;
            $history = elgg_extract(2, $page);
            $username = elgg_extract(3, $page);
            if ($history && $username) {
                $vars['history_username'] = $username;
            }
            echo elgg_view_resource('messageboard/owner', $vars);
            break;
        case 'group':
            elgg_group_gatekeeper();
            $owner_guid = elgg_extract(1, $page);
            $vars['page_owner_guid'] = $owner_guid;
            echo elgg_view_resource('messageboard/owner', $vars);
            break;
        default:
            return false;
    }
    return true;
}
开发者ID:elgg,项目名称:elgg,代码行数:40,代码来源:start.php


示例17: __construct

 /**
  * Construct a new user entity
  *
  * Plugin developers should only use the constructor to create a new entity.
  * To retrieve entities, use get_entity() and the elgg_get_entities* functions.
  *
  * @param \stdClass $row Database row result. Default is null to create a new user.
  *
  * @throws IOException|InvalidParameterException if there was a problem creating the user.
  */
 public function __construct($row = null)
 {
     $this->initializeAttributes();
     if (!empty($row)) {
         // Is $row is a DB entity row
         if ($row instanceof \stdClass) {
             // Load the rest
             if (!$this->load($row)) {
                 $msg = "Failed to load new " . get_class() . " for GUID:" . $row->guid;
                 throw new \IOException($msg);
             }
         } else {
             if (is_string($row)) {
                 // $row is a username
                 elgg_deprecated_notice('Passing a username to constructor is deprecated. Use get_user_by_username()', 1.9);
                 $user = get_user_by_username($row);
                 if ($user) {
                     foreach ($user->attributes as $key => $value) {
                         $this->attributes[$key] = $value;
                     }
                 }
             } else {
                 if (is_numeric($row)) {
                     // $row is a GUID so load entity
                     elgg_deprecated_notice('Passing a GUID to constructor is deprecated. Use get_entity()', 1.9);
                     if (!$this->load($row)) {
                         throw new \IOException("Failed to load new " . get_class() . " from GUID:" . $row);
                     }
                 } else {
                     throw new \InvalidParameterException("Unrecognized value passed to constuctor.");
                 }
             }
         }
     }
 }
开发者ID:cyrixhero,项目名称:Elgg,代码行数:45,代码来源:ElggUser.php


示例18: blog

 /**
  * Listen to the blog page handler, to takeover some pages
  *
  * @param string $hook         "route"
  * @param string $type         "blog"
  * @param array  $return_value the current page_handler params
  * @param null   $params       null
  *
  * @return array|bool
  */
 public static function blog($hook, $type, $return_value, $params)
 {
     if (empty($return_value) || !is_array($return_value)) {
         // someone else had a route hook
         return $return_value;
     }
     $page = elgg_extract("segments", $return_value);
     if (empty($page)) {
         return $return_value;
     }
     $pages_path = elgg_get_plugins_path() . "blog_tools/pages/";
     switch ($page[0]) {
         case "owner":
             $user = get_user_by_username($page[1]);
             if (!empty($user)) {
                 $return_value = false;
                 // push all blogs breadcrumb
                 elgg_push_breadcrumb(elgg_echo("blog:blogs"), "blog/all");
                 set_input("owner_guid", $user->guid);
                 include $pages_path . "owner.php";
             }
             break;
         case "read":
             // Elgg 1.7 compatibility
         // Elgg 1.7 compatibility
         case "view":
             if (!elgg_is_logged_in()) {
                 $setting = elgg_get_plugin_setting("advanced_gatekeeper", "blog_tools");
                 if ($setting != "no") {
                     if (isset($page[1]) && !get_entity($page[1])) {
                         elgg_gatekeeper();
                     }
                 }
             }
             set_input("guid", $page[1]);
             // to be used in the blog_tools/full/related view
             break;
         case "add":
         case "edit":
             $return_value = false;
             // push all blogs breadcrumb
             elgg_push_breadcrumb(elgg_echo("blog:blogs"), "blog/all");
             set_input("page_type", $page[0]);
             if (isset($page[1])) {
                 set_input("guid", $page[1]);
             }
             if (isset($page[2])) {
                 set_input("revision", $page[2]);
             }
             include $pages_path . "edit.php";
             break;
         case "featured":
             $return_value = false;
             include $pages_path . "featured.php";
             break;
     }
     return $return_value;
 }
开发者ID:lorea,项目名称:Hydra-dev,代码行数:68,代码来源:Router.php


示例19: bookmarks_page_handler

/**
 * Dispatcher for bookmarks.
 *
 * URLs take the form of
 *  All bookmarks:        bookmarks/all
 *  User's bookmarks:     bookmarks/owner/<username>
 *  Friends' bookmarks:   bookmarks/friends/<username>
 *  View bookmark:        bookmarks/view/<guid>/<title>
 *  New bookmark:         bookmarks/add/<guid> (container: user, group, parent)
 *  Edit bookmark:        bookmarks/edit/<guid>
 *  Group bookmarks:      bookmarks/group/<guid>/owner
 *  Bookmarklet:          bookmarks/bookmarklet/<guid> (user)
 *
 * Title is ignored
 *
 * @param array $page
 */
function bookmarks_page_handler($page)
{
    elgg_load_library('elgg:bookmarks');
    elgg_push_breadcrumb(elgg_echo('bookmarks'), 'bookmarks/all');
    elgg_push_context('bookmarks');
    // old group usernames
    if (substr_count($page[0], 'group:')) {
        preg_match('/group\\:([0-9]+)/i', $page[0], $matches);
        $guid = $matches[1];
        if ($entity = get_entity($guid)) {
            bookmarks_url_forwarder($page);
        }
    }
    // user usernames
    $user = get_user_by_username($page[0]);
    if ($user) {
        bookmarks_url_forwarder($page);
    }
    $pages = dirname(__FILE__) . '/pages/bookmarks';
    switch ($page[0]) {
        case "all":
            include "{$pages}/all.php";
            break;
        case "owner":
            include "{$pages}/owner.php";
            break;
        case "friends":
            include "{$pages}/friends.php";
            break;
        case "read":
        case "view":
            set_input('guid', $page[1]);
            include "{$pages}/view.php";
            break;
        case "add":
            gatekeeper();
            include "{$pages}/add.php";
            break;
        case "edit":
            gatekeeper();
            set_input('guid', $page[1]);
            include "{$pages}/edit.php";
            break;
        case 'group':
            group_gatekeeper();
            include "{$pages}/owner.php";
            break;
        case "bookmarklet":
            set_input('container_guid', $page[1]);
            include "{$pages}/bookmarklet.php";
            break;
        default:
            return false;
    }
    elgg_pop_context();
    return true;
}
开发者ID:rasul,项目名称:Elgg,代码行数:74,代码来源:start.php


示例20: pam_handler

/**
 * Can we allow the user with the credentials to log in?
 * Check stormpath, create the user if they can log in and don't exist
 * Enable the user if they can log in but were waiting for email verification
 * 
 * @param type $credentials
 * @return boolean
 */
function pam_handler($credentials)
{
    // try to authenticate first
    $application = get_application();
    $authResult = $application->authenticate($credentials['username'], $credentials['password']);
    $account = $authResult->account;
    if (!$account || strtolower($account->status) != 'enabled') {
        return false;
    }
    // we need to search hidden users too
    // in case of email confirmation disabling
    $show_hidden = access_get_show_hidden_status();
    access_show_hidden_entities(true);
    // we have an account and it's enabled
    // see if we have a matching account here
    // check if logging in with email address
    if (strpos($credentials['username'], '@') !== false) {
        $users = get_user_by_email($credentials['username']);
        $user = $users[0];
    } else {
        $user = get_user_by_username($credentials['username']);
    }
    // custom context gives us permission to do this
    elgg_push_context('stormpath_validate_user');
    // if we don't have a user we need to create one
    if (!$user) {
        $user = new \ElggUser();
        $user->username = preg_replace("/[^a-zA-Z0-9]/", "", $account->username);
        $user->email = $account->email;
        $user->name = $account->fullName;
        $user->access_id = ACCESS_PUBLIC;
        $user->salt = _elgg_generate_password_salt();
        $user->password = generate_user_password($user, $credentials['password']);
        $user->owner_guid = 0;
        // Users aren't owned by anyone, even if they are admin created.
        $user->container_guid = 0;
        // Users aren't contained by anyone, even if they are admin created.
        $user->language = get_current_language();
        $user->save();
        $user->__stormpath_user = $account->href;
        elgg_set_user_validation_status($user->guid, TRUE, 'stormpath');
        // Turn on email notifications by default
        set_user_notification_setting($user->getGUID(), 'email', true);
    }
    // see if we need to enable/verify the user
    if (!$user->isEnabled() && in_array($user->disable_reason, array('stormpath_new_user', 'uservalidationbyemail_new_user'))) {
        $user->enable();
        $user->__stormpath_user = $account->href;
        elgg_set_user_validation_status($user->guid, TRUE, 'stormpath');
    }
    elgg_pop_context();
    access_show_hidden_entities($show_hidden);
    if ($user && $user->isEnabled()) {
        return true;
    }
    return false;
}
开发者ID:arckinteractive,项目名称:elgg_stormpath,代码行数:65,代码来源:start.php



注:本文中的get_user_by_username函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP get_user_class函数代码示例发布时间:2022-05-15
下一篇:
PHP get_user_by_id函数代码示例发布时间:2022-05-15
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap