$Debuglog->add('redirect_to: ' . $redirect_to); if (strlen($return_to)) { // Make it relative to the form's target, in case it has been set absolute (and can be made relative). $return_to = url_rel_to_same_host($return_to, $secure_htsrv_url); } if (preg_match('#/login.php([&?].*)?$#', $return_to)) { // avoid "endless loops" $redirect_to = $baseurl; } // Remove login and pwd parameters from URL, so that they do not trigger the login screen again: $return_to = preg_replace('~(?<=\\?|&) (login|pwd) = [^&]+ ~x', '', $return_to); $Debuglog->add('return_to: ' . $return_to); /* * Display in-skin login if it's supported */ if ($inskin && use_in_skin_login()) { // in-skin display: $BlogCache =& get_BlogCache(); $Blog = $BlogCache->get_by_ID($blog, false, false); if (!empty($Blog)) { if (!empty($login_error)) { $Messages->add($login_error); } if (empty($redirect_to)) { $redirect_to = $Blog->gen_blogurl(); } // check if action was req_validatemail if ($action == 'req_validatemail' && !empty($current_User)) { // redirect to inskin activate account page $redirect = url_add_param($Blog->gen_blogurl(), 'disp=activateinfo', '&'); if ($Messages->has_errors()) {
" id="pwd" value="" /></label> <input type="submit" id="logsub" name="submit" value="<?php echo T_('Login'); ?> " /> <input type="hidden" name="redirect_to" value="<?php echo $_SERVER['REQUEST_URI']; ?> "/> <input type="hidden" value="<?php echo get_crumb('loginform'); ?> " name="crumb_loginform" /> <input type="hidden" value="login" name="login_action[login]" /> <input type="hidden" value="<?php echo (int) use_in_skin_login(); ?> " name="inskin" /> <a href="javascript:return false;"><img class="head-close" src="<?php echo $Skin->get_url(); ?> img/head-close.png" alt="close" /></a> </form> </div> </div> <!-- #start The Search Overlay --> <div id="wptouch-search"> <div id="wptouch-search-inner"> <form method="get" id="searchform" action="<?php echo $Blog->gen_blogurl();
if ($email_login) { $Messages->add(sprintf(T_('You are now logged in as <b>%s</b>'), $login), $exists_more ? 'error' : 'success'); } header_redirect($redirect_to); exit(0); } } } if (!empty($login_error) || $login_required && !is_logged_in()) { // ----- LOGIN FAILED ----- OR Login is required and user is not logged in yet $Debuglog->add('Login error: ' . $login_error, '_init_login'); // inskin param is set when the login request come from the front office // we need this to decide if we should use display in-skin login from or not param('inskin', 'boolean', 0); $Debuglog->add('Param inskin: ' . $inskin, '_init_login'); if ($inskin || use_in_skin_login()) { // Use in-skin login $Debuglog->add('Trying to use in-skin login', '_init_login'); if (is_logged_in()) { // user is logged in, but the email address is not validated yet $login = $current_User->login; $email = $current_User->email; } if (empty($Blog) && init_requested_blog()) { // $blog is set, init $Blog also $BlogCache =& get_BlogCache(); $Blog = $BlogCache->get_by_ID($blog, false, false); } $blog_skin_ID = NULL; if (!empty($Blog)) { // Blog was set
/** * Get a user registration url * * @param string redirect to url * @param string where this registration url will be displayed * @param boolean force to display even when a user is logged in * @param string delimiter to use for more url params */ function get_user_register_url($redirect = NULL, $default_source_string = '', $disp_when_logged_in = false, $glue = '&') { global $Settings, $edited_Blog, $secure_htsrv_url; if (is_logged_in() && !$disp_when_logged_in) { // Do not display, when already logged in: return false; } if (!$Settings->get('newusers_canregister')) { // We won't let him register return false; } if (use_in_skin_login()) { global $blog; $BlogCache =& get_BlogCache(); $Blog = $BlogCache->get_by_ID($blog); $register_url = url_add_param($Blog->get('url'), 'disp=register', $glue); } else { $register_url = $secure_htsrv_url . 'register.php'; } // Source= $source = param('source', 'string', ''); if (empty($source)) { $source = $default_source_string; } if (!empty($source)) { $register_url = url_add_param($register_url, 'source=' . rawurlencode($source), $glue); } // Redirect_to= if (!isset($redirect)) { $redirect = regenerate_url('', '', '', $glue); } if (!empty($redirect)) { $register_url = url_add_param($register_url, 'redirect_to=' . rawurlencode(url_rel_to_same_host($redirect, $secure_htsrv_url)), $glue); } return $register_url; }
/** * Get a user registration url * * @param string redirect to url * @param string where this registration url will be displayed * @param boolean force to display even when a user is logged in * @param string delimiter to use for more url params * @param integer blog ID for the requested blog. NULL for current $Blog * @return string URL */ function get_user_register_url($redirect_to = NULL, $default_source_string = '', $disp_when_logged_in = false, $glue = '&', $blog_ID = NULL) { global $Settings, $edited_Blog, $secure_htsrv_url; if (is_logged_in() && !$disp_when_logged_in) { // Do not display, when already logged in: return false; } if ($Settings->get('newusers_canregister') == 'no') { // We won't let him register return false; } if (!is_logged_in() && !$Settings->get('registration_is_public')) { // Don't show registration link if it is not forced to display when a user is already logged in return false; } if (use_in_skin_login()) { // Use in-skin register form of the current blog or of the special blog for login/register actions if (empty($blog_ID)) { // Use current blog if it is not defined global $blog; $blog_ID = $blog; } $BlogCache =& get_BlogCache(); $Blog = $BlogCache->get_by_ID($blog_ID); $register_url = $Blog->get('registerurl', array('glue' => $glue)); } else { // Use normal/standard register form (without blog skin) $register_url = $secure_htsrv_url . 'register.php'; } // Source $source = param('source', 'string', ''); if (empty($source)) { $source = $default_source_string; } if (!empty($source)) { $register_url = url_add_param($register_url, 'source=' . rawurlencode($source), $glue); } if (!isset($redirect_to)) { // Set where to redirect $redirect_to = regenerate_url('', '', '', $glue); } if (!empty($redirect_to)) { $register_url = url_add_param($register_url, 'redirect_to=' . rawurlencode(url_rel_to_same_host($redirect_to, $secure_htsrv_url)), $glue); } // This URL is used to redirect after ABORT login action $return_url = param('return_to', 'url', ''); if (empty($return_url)) { $return_url = url_rel_to_same_host(regenerate_url('', '', '', '&'), $secure_htsrv_url); } $register_url = url_add_param($register_url, 'return_to=' . rawurlencode($return_url), $glue); return $register_url; }