2016-06-30 2 views
0

Мне нужно всплывающее окно с пользовательским контентом после успешного входа в систему.Как установить всплывающее окно после входа в систему пользователя

В содержании мне нужно указать имя клиента, группу клиентов и другой текст.

+0

где вы хотите отобразить всплывающее окно? (панель учетных записей клиентов или где-то еще)? обычно мы определяем наблюдателя для события 'customer_login' и делаем некоторую логику внутри. В зависимости от вашего требования, вам может потребоваться переопределить «Mage_Customer_AccountController» –

+0

Thanx @LaxmanSingh .... У меня есть успешное сообщение, настроенное в методе перенаправления контроллера, поэтому оно автоматическое, потому что я использовал тему intenso, поэтому ...... – Dhrumin

+0

Хорошо, это круто. –

ответ

0

Используйте событие customer_login

<customer_login> 
    <observers> 
     <yourobservername> 
      <type>model</type> 
      <class>yourmodule/path_to_class</class> 
      <method>customerLogin</method> 
     </yourobservername> 
    </observers> 
</customer_login> 

Ваш класс наблюдатель будет выглядеть следующим образом, и вы можете вызвать здесь всплывающих .phtml файл

class YourCompany_YourModule_Model_Observer 
{ 
    public function customerLogin($observer) 
    { 
     $customer = $observer->getCustomer(); 
    } 
} 
+0

Thanx @Sunny .... У меня есть успешное сообщение, настроенное в методе перенаправления контроллера, поэтому оно автоматическое, потому что я использовал тему intenso, поэтому ...... – Dhrumin

+0

@Dhrumin Надеюсь, что вы не изменили основной контроллер , Это отлично. Пожалуйста. –

0

Вам нужно будет работать над событиями и наблюдателями в Magento.

  • Сначала вам нужно будет наблюдать customer_login события и установить некоторые пользовательские значения в сессии.
  • Далее вам нужно будет наблюдать за событием, как controller_action_layout_load_before или controller_front_init_before. В этой функции наблюдателя вам нужно будет проверить значение сеанса, которое вы установили на предыдущем шаге. Если значение найдено, то используйте такой код:

$layout = $observer->getEvent()->getLayout(); $layout->addHandle('some_handle')->removeHandle('some_other_handle');

и после установки макета ручки, вам нужно, чтобы сбросить значение сеанса, которое вы уже установленной в первом шаге. Пожалуйста, попробуйте реализовать его и сообщите мне, если вы найдете какие-либо проблемы.

Смежные вопросы