Перейти к содержанию
x1nz

Переадрессация с личного кабинета

Рекомендуемые сообщения

Добрый день , подскажите пожалуйста , как сделать редирект после удачного входа на главную страницу.

При удачной авторизации , покупатель попадает сразу в личный кабинет , хотелось бы что бы сразу перенаправляло на главную страницу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В файле catalog\controller\account\login.php найти строчку: $this->redirect($this->url->link('account/account', '', 'SSL')); и соотв. поменять на $this->redirect($this->url->link('common/home', '', 'SSL'));

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В файле catalog\controller\account\login.php найти строчку: $this->redirect($this->url->link('account/account', '', 'SSL')); и соотв. поменять на $this->redirect($this->url->link('common/home', '', 'SSL'));

 

Думал не работает , потом поменял все 3 строки , заработало. Спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Покажите под спойлером код файла: catalog\controller\account\login.php

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Покажите под спойлером код файла: catalog\controller\account\login.php

class ControllerAccountLogin extends Controller {

private $error = array();

public function index() {

$this->load->model('account/customer');

// Login override for admin users

if (!empty($this->request->get['token'])) {

$this->customer->logout();

$this->cart->clear();

unset($this->session->data['wishlist']);

unset($this->session->data['shipping_address_id']);

unset($this->session->data['shipping_country_id']);

unset($this->session->data['shipping_zone_id']);

unset($this->session->data['shipping_postcode']);

unset($this->session->data['shipping_method']);

unset($this->session->data['shipping_methods']);

unset($this->session->data['payment_address_id']);

unset($this->session->data['payment_country_id']);

unset($this->session->data['payment_zone_id']);

unset($this->session->data['payment_method']);

unset($this->session->data['payment_methods']);

unset($this->session->data['comment']);

unset($this->session->data['order_id']);

unset($this->session->data['coupon']);

unset($this->session->data['reward']);

unset($this->session->data['voucher']);

unset($this->session->data['vouchers']);

$customer_info = $this->model_account_customer->getCustomerByToken($this->request->get['token']);

if ($customer_info && $this->customer->login($customer_info['email'], '', true)) {

// Default Addresses

$this->load->model('account/address');

$address_info = $this->model_account_address->getAddress($this->customer->getAddressId());

if ($address_info) {

if ($this->config->get('config_tax_customer') == 'shipping') {

$this->session->data['shipping_country_id'] = $address_info['country_id'];

$this->session->data['shipping_zone_id'] = $address_info['zone_id'];

$this->session->data['shipping_postcode'] = $address_info['postcode'];

}

if ($this->config->get('config_tax_customer') == 'payment') {

$this->session->data['payment_country_id'] = $address_info['country_id'];

$this->session->data['payment_zone_id'] = $address_info['zone_id'];

}

} else {

unset($this->session->data['shipping_country_id']);

unset($this->session->data['shipping_zone_id']);

unset($this->session->data['shipping_postcode']);

unset($this->session->data['payment_country_id']);

unset($this->session->data['payment_zone_id']);

}

$this->redirect($this->url->link('common/home', '', 'SSL'));

}

}

if ($this->customer->isLogged()) {

$this->redirect($this->url->link('common/home', '', 'SSL'));

}

$this->language->load('account/login');

$this->document->setTitle($this->language->get('heading_title'));

if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {

unset($this->session->data['guest']);

// Default Shipping Address

$this->load->model('account/address');

$address_info = $this->model_account_address->getAddress($this->customer->getAddressId());

if ($address_info) {

if ($this->config->get('config_tax_customer') == 'shipping') {

$this->session->data['shipping_country_id'] = $address_info['country_id'];

$this->session->data['shipping_zone_id'] = $address_info['zone_id'];

$this->session->data['shipping_postcode'] = $address_info['postcode'];

}

if ($this->config->get('config_tax_customer') == 'payment') {

$this->session->data['payment_country_id'] = $address_info['country_id'];

$this->session->data['payment_zone_id'] = $address_info['zone_id'];

}

} else {

unset($this->session->data['shipping_country_id']);

unset($this->session->data['shipping_zone_id']);

unset($this->session->data['shipping_postcode']);

unset($this->session->data['payment_country_id']);

unset($this->session->data['payment_zone_id']);

}

// Added strpos check to pass McAfee PCI compliance test (http://forum.opencart.com/viewtopic.php?f=10&t=12043&p=151494#p151295)

if (isset($this->request->post['redirect']) && (strpos($this->request->post['redirect'], $this->config->get('config_url')) !== false || strpos($this->request->post['redirect'], $this->config->get('config_ssl')) !== false)) {

$this->redirect(str_replace('&', '&', $this->request->post['redirect']));

} else {

$this->redirect($this->url->link('common/home', '', 'SSL'));

}

}

$this->data['breadcrumbs'] = array();

$this->data['breadcrumbs'][] = array(

'text' => $this->language->get('text_home'),

'href' => $this->url->link('common/home'),

'separator' => false

);

$this->data['breadcrumbs'][] = array(

'text' => $this->language->get('text_account'),

'href' => $this->url->link('account/account', '', 'SSL'),

'separator' => $this->language->get('text_separator')

);

$this->data['breadcrumbs'][] = array(

'text' => $this->language->get('text_login'),

'href' => $this->url->link('account/login', '', 'SSL'),

'separator' => $this->language->get('text_separator')

);

$this->data['heading_title'] = $this->language->get('heading_title');

$this->data['text_new_customer'] = $this->language->get('text_new_customer');

$this->data['text_register'] = $this->language->get('text_register');

$this->data['text_register_account'] = $this->language->get('text_register_account');

$this->data['text_returning_customer'] = $this->language->get('text_returning_customer');

$this->data['text_i_am_returning_customer'] = $this->language->get('text_i_am_returning_customer');

$this->data['text_forgotten'] = $this->language->get('text_forgotten');

$this->data['entry_email'] = $this->language->get('entry_email');

$this->data['entry_password'] = $this->language->get('entry_password');

$this->data['button_continue'] = $this->language->get('button_continue');

$this->data['button_login'] = $this->language->get('button_login');

if (isset($this->error['warning'])) {

$this->data['error_warning'] = $this->error['warning'];

} else {

$this->data['error_warning'] = '';

}

$this->data['action'] = $this->url->link('account/login', '', 'SSL');

$this->data['register'] = $this->url->link('account/register', '', 'SSL');

$this->data['forgotten'] = $this->url->link('account/forgotten', '', 'SSL');

// Added strpos check to pass McAfee PCI compliance test (http://forum.opencart.com/viewtopic.php?f=10&t=12043&p=151494#p151295)

if (isset($this->request->post['redirect']) && (strpos($this->request->post['redirect'], $this->config->get('config_url')) !== false || strpos($this->request->post['redirect'], $this->config->get('config_ssl')) !== false)) {

$this->data['redirect'] = $this->request->post['redirect'];

} elseif (isset($this->session->data['redirect'])) {

$this->data['redirect'] = $this->session->data['redirect'];

unset($this->session->data['redirect']);

} else {

$this->data['redirect'] = '';

}

if (isset($this->session->data['success'])) {

$this->data['success'] = $this->session->data['success'];

unset($this->session->data['success']);

} else {

$this->data['success'] = '';

}

if (isset($this->request->post['email'])) {

$this->data['email'] = $this->request->post['email'];

} else {

$this->data['email'] = '';

}

if (isset($this->request->post['password'])) {

$this->data['password'] = $this->request->post['password'];

} else {

$this->data['password'] = '';

}

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/account/login.tpl')) {

$this->template = $this->config->get('config_template') . '/template/account/login.tpl';

} else {

$this->template = 'default/template/account/login.tpl';

}

$this->children = array(

'common/column_left',

'common/column_right',

'common/content_top',

'common/content_bottom',

'common/footer',

'common/header'

);

$this->response->setOutput($this->render());

}

protected function validate() {

if (!$this->customer->login($this->request->post['email'], $this->request->post['password'])) {

$this->error['warning'] = $this->language->get('error_login');

}

$customer_info = $this->model_account_customer->getCustomerByEmail($this->request->post['email']);

if ($customer_info && !$customer_info['approved']) {

$this->error['warning'] = $this->language->get('error_approved');

}

if (!$this->error) {

return true;

} else {

return false;

}

}

}

?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Напишите в ЛС адрес сайта или доступ к вашему сайту.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Напишите в ЛС адрес сайта или доступ к вашему сайту.

так у меня заработало , написал же выше :-)

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.