<![CDATA[ Case Sensitive Issue For User Specific Page After Login Post Hook - My Forums]]> https://forums.modx.com/thread/?thread=98126 <![CDATA[Case Sensitive Issue For User Specific Page After Login Post Hook]]> https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530580 This is set up and working with this code:

<?php
$username = $hook->getValue('username');
 
$pageId = '7';
  
switch ($username) {
  case 'BossJudge':
          $pageId = '23';
          break;
  case 'Myla72':
          $pageId = '24';
          break;
  case 'TwoBuses':
          $pageId = '25';
          break;
  case 'Trainsporter01':
          $pageId = '26';
          break;
  case 'JonesJazz':
          $pageId = '27';
          break;
  case 'ShipperMein':
          $pageId = '37';
          break;  
  case 'guangun91':
          $pageId = '40';
          break;           
}
 
$landingPage = $modx->makeUrl($pageId, "", "", 'full');
$modx->sendRedirect($landingPage);


If someone enters an incorrect username or password then the usual error message appears.

Where I'm getting problems is if the correct username is used but with the wrong case for letters, then the user appears signed in but is redirected to the Log Out page.

for example; correct username = 'meuser' this goes to the correct landing page.
But.....
If I try this username ='MEUSER' it does not display an error, it just sends the user to the logout page.

Do I need to change the word 'case' in the above snippet?
If yes change to what?
Or is there some other mischievous piece of code I've not yet identified that I must change?

Can anyone advise?]]>
jimmyjazz Aug 26, 2015, 11:18 AM https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530580
<![CDATA[Re: Case Sensitive Issue For User Specific Page After Login Post Hook]]> https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530751 ]]> BobRay Aug 30, 2015, 01:28 AM https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530751 <![CDATA[Re: Case Sensitive Issue For User Specific Page After Login Post Hook]]> https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530749 Quote from: BobRay at Aug 27, 2015, 04:59 AM
Sorry, this should work:

$name = strtolower($username);
switch ($name) {
  case 'bossjudge':
          $pageId = '23';
          break;
  case 'myla72':
          $pageId = '24';
          break;
  case 'twobuses':
          $pageId = '25';
          break;
  case 'trainsporter01':
          $pageId = '26';
          break;
  case 'jonesjazz':
          $pageId = '27';
          break;
  case 'shippermein':
          $pageId = '37';
          break;  
  case 'guangun91':
          $pageId = '40';
          break;
  default:
          break;           
}


Replace the whole switch statement with this code.

Hey Bob,

That works great smiley

Cheers mate, one less headache , now onto the next challenge.]]>
jimmyjazz Aug 30, 2015, 12:05 AM https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530749
<![CDATA[Re: Case Sensitive Issue For User Specific Page After Login Post Hook (Best Answer)]]> https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530615
$name = strtolower($username);
switch ($name) {
  case 'bossjudge':
          $pageId = '23';
          break;
  case 'myla72':
          $pageId = '24';
          break;
  case 'twobuses':
          $pageId = '25';
          break;
  case 'trainsporter01':
          $pageId = '26';
          break;
  case 'jonesjazz':
          $pageId = '27';
          break;
  case 'shippermein':
          $pageId = '37';
          break;  
  case 'guangun91':
          $pageId = '40';
          break;
  default:
          break;           
}


Replace the whole switch statement with this code.]]>
BobRay Aug 26, 2015, 11:59 PM https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530615
<![CDATA[Re: Case Sensitive Issue For User Specific Page After Login Post Hook]]> https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530607
I just tried it in a different browser & it is sending everyone to the log out page.

I've just changed it back to the original so it is back to the case sensitive issue.]]>
jimmyjazz Aug 26, 2015, 10:46 PM https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530607
<![CDATA[Re: Case Sensitive Issue For User Specific Page After Login Post Hook]]> https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530606 Quote from: BobRay at Aug 26, 2015, 08:11 PM
Try this:

switch (strtolower($username)) {
  case 'bossjudge':
          $pageId = '23';
          break;
  case 'myla72':
          $pageId = '24';
          break;
  case 'twobuses':
          $pageId = '25';
          break;
  case 'trainsporter01':
          $pageId = '26';
          break;
  case 'jonesjazz':
          $pageId = '27';
          break;
  case 'shippermein':
          $pageId = '37';
          break;  
  case 'guangun91':
          $pageId = '40';
          break;           
}

Hi Bob,

Thanks for your input, I added this line only (because the usernames use both upper & lower case):

switch
 (strtolower($username)) {


The result is if a user logs in they go to the correct landing page regardless of case used.

This is acceptable because it stops users being sent to log out page.

However, when I added the above line it now throws a syntax error:

syntax error, unexpected '{'

The code gives the functionality I require but I'm unsure how to clear this error.]]>
jimmyjazz Aug 26, 2015, 10:35 PM https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530606
<![CDATA[Re: Case Sensitive Issue For User Specific Page After Login Post Hook]]> https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530597
switch (strtolower($username)) {
  case 'bossjudge':
          $pageId = '23';
          break;
  case 'myla72':
          $pageId = '24';
          break;
  case 'twobuses':
          $pageId = '25';
          break;
  case 'trainsporter01':
          $pageId = '26';
          break;
  case 'jonesjazz':
          $pageId = '27';
          break;
  case 'shippermein':
          $pageId = '37';
          break;  
  case 'guangun91':
          $pageId = '40';
          break;           
}
]]>
BobRay Aug 26, 2015, 03:11 PM https://forums.modx.com/thread/98126/case-sensitive-issue-for-user-specific-page-after-login-post-hook#dis-post-530597