function emember_login_init($redirect = true) { do_action('eMember_user_login_init'); $emember_auth = Emember_Auth::getInstance(); $emember_config = Emember_Config::getInstance(); $user = strip_tags($_POST['login_user_name']); $clientip = $_SERVER['REMOTE_ADDR']; if ($emember_config->getValue('eMember_multiple_logins') == '1') { unset($_POST['rememberme']); } eMember_log_debug("Authenticating login request for username: "******". Request came from IP Address: " . $clientip, true); if ($emember_auth->isLoggedIn()) { eMember_log_debug("Authentication completed for username: "******". IP Address: " . $clientip, true); $_SESSION['membership_level_name'] = $emember_auth->permitted->primary_level->get('alias'); do_action('eMember_login_authentication_completed'); if (isset($_REQUEST['no-redirect']) && $_REQUEST['no-redirect'] == '1') { //No redirect argument is set in this request. Do not do any after login redirect } else { //Do after login redirection according to the settings $enable_after_login_redirect = $emember_config->getValue('eMember_enable_redirection'); if ($redirect && $enable_after_login_redirect) { eMember_log_debug("Redirecting member to the after login redirection page.", true); $separate_home_page = emember_get_after_login_page_url_of_current_user(); if (!empty($separate_home_page)) { wp_emember_redirect_to_url($separate_home_page); exit; } } } } }
function eMember_login_widget() { if (!defined('DONOTCACHEPAGE')) { define('DONOTCACHEPAGE', TRUE); } //Cache plugin compatibility. Do not cache the login form. $emember_config = Emember_Config::getInstance(); $auth = Emember_Auth::getInstance(); $username = $auth->getUserInfo('user_name'); $output = ''; if ($auth->isLoggedIn()) { $expires = $auth->getUserInfo('account_state'); $subscription_duration = $auth->permitted->subscription_duration; if ($subscription_duration['type'] == 'noexpire') { $sub_expires = EMEMBER_NEVER; } else { if ($subscription_duration['type'] == 'fixeddate') { $sub_expires = emember_date_locale(strtotime($subscription_duration['duration'])); } else { $sub_start = strtotime($auth->getUserInfo('subscription_starts')); $sub_expires = emember_date_locale(strtotime("+" . $subscription_duration['duration'] . " days ", $sub_start)); } } $states = array('active' => EMEMBER_ACTIVE, 'inactive' => EMEMBER_INACTIVE, 'expired' => EMEMBER_EXPIRED, 'pending' => EMEMBER_PENDING, 'unsubscribed' => EMEMBER_UNSUBSCRIBED); $eMember_secure_rss = $emember_config->getValue('eMember_secure_rss'); $eMember_show_welcome_page_link = $emember_config->getValue('eMember_show_link_to_after_login_page'); $feed_url = get_bloginfo('rss2_url'); //$feed_url = get_bloginfo('url') . '?feed=ememberfeed&key=' . md5($auth->getUserInfo('member_id')); global $wp_rewrite; //$nonce = wp_create_nonce('emember-secure-feed-nonce'); if ($wp_rewrite->using_permalinks()) { $feed_url .= '?emember_feed_key=' . md5($auth->getUserInfo('member_id')); } else { $feed_url .= '&emember_feed_key=' . md5($auth->getUserInfo('member_id')); } $logout = get_logout_url(); $output .= '<div class="eMember_logged_widget">'; $output .= '<div class="eMember_logged_user_info_section">'; $output .= '<div class="eMember_logged_in_as">' . EMEMBER_LOGGED_IN_AS; $output .= '<label class="eMember_highlight">' . $username . '</label></div>'; $output .= '<div class="eMember_logged_in_level">' . EMEMBER_LOGGED_IN_LEVEL; $output .= '<label class="eMember_highlight">' . $auth->permitted->primary_level->get('alias') . '</label></div>'; $output .= '<div class="eMember_logged_in_account_status">' . EMEMBER_ACCOUNT_STATUS . " "; $output .= '<label class="eMember_highlight">' . $states[$auth->getUserInfo('account_state')] . '</label></div>'; $output .= '<div class="eMember_logged_user_expiry">'; if ($expires != 'expired') { $output .= EMEMBER_ACCOUNT_EXPIRES_ON . " "; $output .= '<label class="eMember_highlight">' . $sub_expires . '</label>'; } else { $renew_url = $emember_config->getValue('eMember_account_upgrade_url'); $output .= '<a href="' . $renew_url . '">' . EMEMBER_RENEW_OR_UPGRADE . '</a>'; } $output .= '</div>'; //End of eMember_logged_user_expiry $output .= '</div>'; //End of eMember_logged_user_info_section $output .= '<ul>'; $output .= '<li><a href="' . $logout . '">' . EMEMBER_LOGOUT . '</a></li>'; if ($eMember_secure_rss) { $output .= '<li><a href="' . $feed_url . '">' . EMEMBER_MY_FEED . '</a></li>'; } $edit_profile_page = $emember_config->getValue('eMember_profile_edit_page'); $support_page = $emember_config->getValue('eMember_support_page'); if (!empty($edit_profile_page)) { $output .= '<li><a href="' . $edit_profile_page . '">' . EMEMBER_EDIT_PROFILE . '</a></li>'; } if (!empty($support_page)) { $output .= '<li><a href="' . $support_page . '">' . EMEMBER_SUPPORT_PAGE . '</a></li>'; } if ($eMember_show_welcome_page_link) { $welcome_page_url = emember_get_after_login_page_url_of_current_user(); $output .= '<li><a href="' . $welcome_page_url . '">' . EMEMBER_WELCOME_PAGE . '</a></li>'; } $bookmark_feature = $emember_config->getValue('eMember_enable_bookmark'); if ($bookmark_feature) { $bookmark_page_url = $emember_config->getValue('eMember_bookmark_listing_page'); if (!empty($bookmark_page_url)) { $output .= '<li><a href="' . $bookmark_page_url . '">' . EMEMBER_BOOKMARK_PAGE . '</a></li>'; } } $output .= '</ul>'; $custom_login_msg = stripslashes($emember_config->getValue('eMember_login_widget_message_for_logged_members')); if (!empty($custom_login_msg)) { $custom_login_msg = do_shortcode($custom_login_msg); $output .= html_entity_decode($custom_login_msg, ENT_COMPAT); } $output .= '</div>'; //End of eMember_logged_widget } else { $output = show_login_form(); } return $output; }