X-Cart: shopping cart software

X-Cart forums (https://forum.x-cart.com/index.php)
-   Changing design (https://forum.x-cart.com/forumdisplay.php?f=51)
-   -   Make logout confirmation page? How to? (https://forum.x-cart.com/showthread.php?t=24139)

taltos1 02-15-2007 11:22 AM

Re: Make logout confirmation page? How to?
 
I tried a few more times to implement this and still no luck, I cannot get the logout confirmation page to work into/look like the rest of my site. Please help...

balinor 02-20-2007 10:56 AM

Re: Make logout confirmation page? How to?
 
Just make the logout page an embedded static page.

taltos1 02-20-2007 07:05 PM

Re: Make logout confirmation page? How to?
 
Smart! I cannot believe I did not think about that. You are great!

carpeperdiem 02-23-2007 05:55 PM

Re: Make logout confirmation page? How to?
 
Has anyone tried to make this work for 4.1.x ?

The code in post #6 (and #9) is not appropriate for 4.1

Any ideas? Thanks.

Jeremy

Ene 02-23-2007 06:08 PM

Re: Make logout confirmation page? How to?
 
Quote:

Originally Posted by carpeperdiem
Has anyone tried to make this work for 4.1.x ?

The code in post #6 (and #9) is not appropriate for 4.1

Any ideas? Thanks.

Jeremy


In include/login.php replace

PHP Code:

if ($old_login_type == 'C') {
    if (!empty(
$HTTP_REFERER) && (strncasecmp($HTTP_REFERER$http_locationstrlen($http_location)) == || strncasecmp($HTTP_REFERER$https_locationstrlen($https_location)) == 0)) {
        if (
strpos($HTTP_REFERER"mode=order_message") === false &&
            
strpos($HTTP_REFERER"mode=wishlist") === false &&
            
strpos($HTTP_REFERER"bonuses.php") === false &&
            
strpos($HTTP_REFERER"returns.php") === false &&
            
strpos($HTTP_REFERER"orders.php") === false &&
            
strpos($HTTP_REFERER"giftreg_manage.php") === false &&
            
strpos($HTTP_REFERER"order.php") === false &&
            
strpos($HTTP_REFERER"register.php?mode=delete") === false &&
            
strpos($HTTP_REFERER"register.php?mode=update") === false) {
            
func_header_location($redirect_to.strrchr($HTTP_REFERER"/"), false);
        }
    }



with the

PHP Code:

if ($old_login_type == 'C') {
func_header_location($redirect_to."/mynewlogoutpage.php");
/*
    if (!empty($HTTP_REFERER) && (strncasecmp($HTTP_REFERER, $http_location, strlen($http_location)) == 0 || strncasecmp($HTTP_REFERER, $https_location, strlen($https_location)) == 0)) {
        if (strpos($HTTP_REFERER, "mode=order_message") === false &&
            strpos($HTTP_REFERER, "mode=wishlist") === false &&
            strpos($HTTP_REFERER, "bonuses.php") === false &&
            strpos($HTTP_REFERER, "returns.php") === false &&
            strpos($HTTP_REFERER, "orders.php") === false &&
            strpos($HTTP_REFERER, "giftreg_manage.php") === false &&
            strpos($HTTP_REFERER, "order.php") === false &&
            strpos($HTTP_REFERER, "register.php?mode=delete") === false &&
            strpos($HTTP_REFERER, "register.php?mode=update") === false) {
            func_header_location($redirect_to.strrchr($HTTP_REFERER, "/"), false);
        }
    }
*/



carpeperdiem 02-23-2007 06:17 PM

Re: Make logout confirmation page? How to?
 
Hi Eugene,

Thanks for the code. I have a slight issue in that CDSEO is installed in my store, and there is CDSEO code all over this file. I have to tread lightly. But the idea of a logout confirmation page is a good one, and I'm going to try to make this happen. I'll report back if I get it working with CDSEO.

Thanks!

Jeremy

carpeperdiem 02-24-2007 04:33 AM

Re: Make logout confirmation page? How to?
 
Jon, if you're reading this, would this edit work with CDSEO?

Code:

if ($old_login_type == 'C') {
func_header_location($redirect_to."/mynewlogoutpage.php");
    // Check for a CDSEO url to redirect back to
    if (checkforcdseo_login($HTTP_REFERER) === TRUE) {
        func_header_location($HTTP_REFERER, false);
    }
/*
    elseif (!empty($HTTP_REFERER) && (strncasecmp($HTTP_REFERER, $http_location, strlen($http_location)) == 0 || strncasecmp($HTTP_REFERER, $https_location, strlen($https_location)) == 0)) {
        if (strpos($HTTP_REFERER, "mode=order_message") === false &&
            strpos($HTTP_REFERER, "mode=wishlist") === false &&
            strpos($HTTP_REFERER, "bonuses.php") === false &&
            strpos($HTTP_REFERER, "returns.php") === false &&
            strpos($HTTP_REFERER, "orders.php") === false &&
            strpos($HTTP_REFERER, "giftreg_manage.php") === false &&
            strpos($HTTP_REFERER, "order.php") === false &&
            strpos($HTTP_REFERER, "register.php?mode=delete") === false &&
            strpos($HTTP_REFERER, "register.php?mode=update") === false) {
               
        func_header_location($redirect_to.strrchr(func_qs_remove($HTTP_REFERER, $XCART_SESSION_NAME), "/"), false);
            }
    }
*/

}


I don't really understand why the "// Check for a CDSEO url to redirect back to" code is important, so I have no idea if this is going to help or hurt.

The reason I would like a logout confirmation: since I have "Rememebr Me" I want to make it clear to customers that may be on a public terminal, that if they logout, they are definitely logged out. A confirmation page is an obvious enhancement.

I was going to make a static embedded page, and exclude it from the help menu (by POS).

Any advice? Am I on the right track?

Thanks!

Jeremy

UPDATE: I did this edit and it seems to work. I added this line to pages_menu.tpl to exclude the static page:
Code:

{if $pages_menu[pg].orderby > 900}
{else}

Works as expected.

Jon: is this going to get in the way of CDSEO? Thanks!

Jeremy

Jon 02-24-2007 08:36 AM

Re: Make logout confirmation page? How to?
 
Hi Jeremy,

No problem. You may just want to add " exit;" after func_header_location($redirect_to."/mynewlogoutpage.php"); to ensure that no further processing is done.


The code I put in for "// Check for a CDSEO url to redirect back to" was because your logout was having difficulty with the http_referrer tag used by default, but the code you are now using makes all previous logout redirect processing irrelevant.

carpeperdiem 02-24-2007 08:52 AM

Re: Make logout confirmation page? How to?
 
Hi Jon,

Thanks for the heads up on the "exit;"

I just tried it and it works perfectly.

So the "// Check for a CDSEO url to redirect back to..." code was something you did just for me? Wow I feel special! So I can comment it out without harm?

This is my new favorite feature of the store. :)

Now, someday, we'll add a login to this "logout confirmation" page, so the customer could login again from here -- and of course, SOMEDAY ;) we'll put Remember Me code everywhere there's a potential login. Geez, I need to get a life.

How much fun is this? Thanks again.

Jeremy

Ene 02-24-2007 11:44 AM

Re: Make logout confirmation page? How to?
 
BTW you don't need to add exit(); after func_header_location(), because this function already has it:

PHP Code:

function func_header_location($location$keep_https true) {
    global 
$XCART_SESSION_NAME$XCARTSESSID$HTTP_COOKIE_VARS;

...

    
func_flush();
    exit();




All times are GMT -8. The time now is 05:32 AM.

Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.