Jump to content

Search the Community

Showing results for tags 'custom login page'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Welcome to ProcessWire
    • News & Announcements
    • Showcase
    • Wishlist & Roadmap
  • Community Support
    • Getting Started
    • Tutorials
    • FAQs
    • General Support
    • API & Templates
    • Modules/Plugins
    • Themes and Profiles
    • Multi-Language Support
    • Security
    • Jobs
  • Off Topic
    • Pub
    • Dev Talk

Product Groups

  • Form Builder
  • ProFields
  • ProCache
  • ProMailer
  • Login Register Pro
  • ProDrafts
  • ListerPro
  • ProDevTools
  • Likes
  • Custom Development

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Found 1 result

  1. Dear All, Request your assistance on building the Sign In form, my query might be very silly but I am trying from past few days to get this working. Basically, I am calling the LoginPersist module to log the user in, to utilize the persistent cookie setting; however, once logged in I want to check the user role and redirect them to respective page accordingly. I am stuck in referring the $user instance from LoginPersist module to perform this check. Please help... Login page ------------------------ <?php namespace ProcessWire; ob_start(); require_once('/var/www/bluemine/index.php'); require("./ip.php"); ob_end_clean(); if($session->CSRF->hasValidToken()) { $input = wire('input'); $sanitizer = wire('sanitizer'); $config = wire('config'); $session = wire('session'); $ip = ip2long($ipaddress); if ($input->post && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') { $rte = array(); $remme = $input->post->rememberme; if($remme == 'rememberme'){ $persist = wire('modules')->get('LoginPersist')->persist(); $uname = $persist->$session->$name; $rte['msg4'] = 'persistent'; if ($uname->hasRole('superuser')) { $rte['msg'] = 'admin'; $rte['route'] = '/admin/access/users/'; } elseif ($uname->hasRole('mine')) { $rte['msg'] = 'member'; $rte['route'] = '/phpconf/'; } else { $rte['msg'] = 'Not Activated'; } } else { if(!$user->isLoggedin()) { $uname = $sanitizer->username($input->post->lname); $pass = $input->post->lpswd; $rte['msg4'] = 'non_persistent'; try { $u = $session->login($uname, $pass); if($u && $u->id) { if ($u->hasRole('superuser')) { //$session->redirect('/admin/access/users/'); $rte['msg'] = 'admin'; $rte['route'] = '/admin/access/users/'; } elseif ($u->hasRole('mine')) { //$session->redirect('/profile/'); $rte['msg'] = 'member'; $rte['route'] = '/phpconf/'; } else { $rte['msg'] = 'Not Activated'; } } else { $rte['msg'] = 'Login Failed'; $errors .= "Login failed."; } echo json_encode($rte); } catch(WireException $e){ // in case of multiple false login (throttle login) $errors .= $e->getMessage(); // get the error message } } else { $rte['msg'] = 'You are already logged in.'; echo json_encode($rte); die(); } } } else { echo "<font color=red><strong>Unauthorised access. Your access to this site might be permanently blocked if tresspassing continues</strong></font>"; die(); } } else { //throw new WireException('CSRF check failed!'); $rte['msg'] = 'Tresspassing'; $rte['msg1'] = '<div class="w3-panel w3-red w3-card-4 w3-display-middle"><p class="w3-jumbo w3-red"><strong><h1>Forgery Attempt:</h1> <h3>The site has closed the connection. This occurs due to abrupt network disruption or in an event of hackers trying to steal information.</h3> <h2><small>Return to <a href="./">Homepage</a></small></h2></strong></p>'; echo json_encode($rte); die(); } ?> AJAX post from Login Page... $.ajax({ type: 'POST', url: url, data: postData, dataType: 'json', success: function (data) { if(data.msg == "member") { window.location.href = data.route; } else if(data.msg == "admin") { window.location.href = data.route; } else if(data.msg == "Not Activated") { $('#errmsg').css('display','block'); $('#loginerror').html('You are yet to activate the account. Please follow the link sent via email during registration for activation.'); document.getElementById('limgcaptcha').src="/site/templates/lcaptcha.php?id=" +((new Date()).getTime()); $('#loginform :input').attr('disabled', false); $('#show_pswd').attr('disabled',false); document.getElementById('lname').value = ""; document.getElementById('lpswd').value = ""; document.getElementById('lsec').value = ""; $("#cookie").prop('checked',false ); } else if(data.msg == "Login Failed") { $('#errmsg').css('display','block'); $('#loginerror').html('Login Failed. Please try again, or use the forgot password link below.'); document.getElementById('limgcaptcha').src="/site/templates/lcaptcha.php?id=" +((new Date()).getTime()); $('#loginform :input').attr('disabled', false); $('#show_pswd').attr('disabled',false); document.getElementById('lname').value = ""; document.getElementById('lpswd').value = ""; document.getElementById('lsec').value = ""; $("#cookie").prop('checked',false ); } else if(data.msg == "Tresspassing") { $('#main').html(data.msg1); //$('#errmsg').css('display','block'); //$('#loginerror').html(data.msg1); } } }); }); I know this code if lot more repetitive and can be cut short but I am learning this whole thing (PHP Language -> Processwire, CSS and JavaScript) of my own, hence Site Moderator / Members valuable feedback, above and beyond the exact issue is very much welcomed.
×
×
  • Create New...