I tried to convert the Contrib Login box 5.4 (http://addons.oscommerce.com/info/2058) for version 2.3.1.
The box is shown as expected (okay, layout needs to be adapted, this is a next step). But after typing in the credentials and clicking the submit button, I am not logged in and led to the account page, but to the login page, where I then have to login then.
What am I doing wrong? What needs to be done codewise to get logged in with that login box and to be directed to the account page?
Down below you find the code of the login box I have done by now.
Thanks in advance for your support
Kajoka
<?php
/*
$Id$
osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
Copyright (c) 2010 osCommerce
Released under the GNU General Public License
*/
class bm_login {
var $code = 'bm_login';
var $group = 'boxes';
var $title;
var $description;
var $sort_order;
var $enabled = false;
function bm_login() {
$this->title = MODULE_BOXES_LOGIN_TITLE;
$this->description = MODULE_BOXES_LOGIN_DESCRIPTION;
if ( defined('MODULE_BOXES_LOGIN_STATUS') ) {
$this->sort_order = MODULE_BOXES_LOGIN_SORT_ORDER;
$this->enabled = (MODULE_BOXES_LOGIN_STATUS == 'True');
$this->group = ((MODULE_BOXES_LOGIN_CONTENT_PLACEMENT == 'Left Column') ? 'boxes_column_left' : 'boxes_column_right');
}
}
function execute() {
global $oscTemplate;
if ((!strstr($_SERVER['PHP_SELF'],'login.php'))
and
(!strstr($_SERVER['PHP_SELF'],'create_account.php'))
and
(!strstr($_SERVER['PHP_SELF'],'order_info.php'))
and
(!strstr($_SERVER['PHP_SELF'],'order_info_process.php'))
and
(!tep_session_is_registered('customer_id')))
{
// loginbox
if (!tep_session_is_registered('customer_id')) {
$data = '<div class="ui-widget infoBoxContainer">'.
' <div class="ui-widget-header infoBoxHeading">' . MODULE_BOXES_LOGIN_BOX_TITLE . '</div>' .
' <div class="ui-widget-content infoBoxContents">'
. tep_draw_form('login', tep_href_link(FILENAME_LOGIN, 'action=process', 'SSL'))
. MODULE_BOXES_LOGIN_EMAIL
. tep_draw_input_field('email_address', '', 'size="10" maxlength="100" style="width: ' . (BOX_WIDTH-30) . 'px"')
.'<br><br>'
. MODULE_BOXES_LOGIN_PASSWORD
. tep_draw_password_field('password', '', 'size="10" maxlength="40" style="width: ' . (BOX_WIDTH-30) . 'px"')
.'<a href="'
. tep_href_link(FILENAME_PASSWORD_FORGOTTEN, '', 'SSL')
. '">'
. MODULE_BOXES_LOGIN_FORGOT_PASSWORD
. '</a>'
. tep_image_submit('button_login.gif', IMAGE_BUTTON_LOGIN, 'SSL')
. '</form><br><br>'
. MODULE_BOXES_LOGIN_TEXT_NEW
. '<a href="'
. tep_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL')
. '">'
. MODULE_BOXES_LOGIN_NEW
. '</a>'.
' </div>' .
'</div>';
} else {
// Hier kann irgendwas rein, was beim Login angezeigt werden soll
}
} else {
if (tep_session_is_registered('customer_id')) {
$data = '<div class="ui-widget infoBoxContainer">'.
' <div class="ui-widget-header infoBoxHeading">' . MODULE_BOXES_LOGIN_YOUR_ACCOUNT . '</div>' .
' <div class="ui-widget-content infoBoxContents">' .
'<a href="' . tep_href_link(FILENAME_PRODUCTS_NEW, '', 'SSL') . '">' . MODULE_BOXES_LOGIN_PRODUCTS_NEW . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_ACCOUNT, '', 'SSL') . '">' . MODULE_BOXES_LOGIN_MY_ACCOUNT . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_ACCOUNT_EDIT, '', 'SSL') . '">' . MODULE_BOXES_LOGIN_ACCOUNT_EDIT . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_ACCOUNT_HISTORY, '', 'SSL') . '">' . MODULE_BOXES_LOGIN_ACCOUNT_HISTORY . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_ADDRESS_BOOK, '', 'SSL') . '">' . MODULE_BOXES_LOGIN_ADDRESS_BOOK . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_ACCOUNT_NOTIFICATIONS, '', 'NONSSL') . '">' . MODULE_BOXES_LOGIN_PRODUCT_NOTIFICATIONS . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_LOGOFF, '', 'NONSSL') . '">' . MODULE_BOXES_LOGIN_LOGOFF . '</a>'.
' </div>' .
'</div>';
}
}
$oscTemplate->addBlock($data, $this->group);
}
function isEnabled() {
return $this->enabled;
}
function check() {
return defined('MODULE_BOXES_LOGIN_STATUS');
}
function install() {
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable LoginBox Module', 'MODULE_BOXES_LOGIN_STATUS', 'True', 'Do you want to add the module to your shop?', '6', '1', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())");
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Content Placement', 'MODULE_BOXES_LOGIN_CONTENT_PLACEMENT', 'Left Column', 'Should the module be loaded in the left or right column?', '6', '1', 'tep_cfg_select_option(array(\'Left Column\', \'Right Column\'), ', now())");
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort Order', 'MODULE_BOXES_LOGIN_SORT_ORDER', '0', 'Sort order of display. Lowest is displayed first.', '6', '0', now())");
}
function remove() {
tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
}
function keys() {
return array('MODULE_BOXES_LOGIN_STATUS', 'MODULE_BOXES_LOGIN_CONTENT_PLACEMENT', 'MODULE_BOXES_LOGIN_SORT_ORDER');
}
}
?>









