Всего: 4 1 2 3 4 >
 Модуль покупка без регистрации
YellowDuck


Профессионал
: 1054
: Ярославль
: 29-09-2009


28-06-2011 15:11
Пока встретился только один толковый модуль, от Евгения Троицкого

Кто еще какие решения встречал?

В 1.4 есть замечательная опция гостевого оформления заказа, но в ней большой косяк, т.к. поле e-mail обязательное.
Возможно ли безболезненно в коде движка отключить проверку уникальности e-mail'ов?


 



Интернет-магазин товаров для детей yellowduck.ru
Хороший хостинг для Prestashop и не только one-hosting.ru
  
kvazi
Новичок
: 13
: 10-08-2010


28-06-2011 20:51
От Т. идеален, если нет разных доставок. Встречал пару-тройку под 1.3 = безжизненные модули, если сравнивать с творением Т.
Перейдя на 1.4 использую только встроенную фичу.
 
  
YellowDuck


Профессионал
: 1054
: Ярославль
: 29-09-2009


06-07-2011 16:40
Кто за donate в 300 руб. на яндех кошелек, приделает генерацию случайного e-mail к гостевому оформлению в 1.4?

формат генерации, желательно random@mydomain.ru

Постите рабочий код и номер кошелька.

 



Интернет-магазин товаров для детей yellowduck.ru
Хороший хостинг для Prestashop и не только one-hosting.ru
  
YellowDuck


Профессионал
: 1054
: Ярославль
: 29-09-2009


08-07-2011 02:24
500 рублей.
 



Интернет-магазин товаров для детей yellowduck.ru
Хороший хостинг для Prestashop и не только one-hosting.ru
  
DenisRD
Новичок
: 60
: 10-10-2010


08-07-2011 14:05
В файле /controllers/AuthController.php в строке 318 находим функцию displayContent() и дописываем ее до такого вида

Код:
public function displayContent()
    {
        $this->processAddressFormat();

        // символы для e-mail
        $abc = array(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z);
        // количество символов до @
        $num = 10;
        // домен для e-mail
        $domen = '@mydomain.ru';
        for ($i = 1; $i <= $num; $i++) {
          $id = array_rand($abc);
          $email .= $abc[$id];
        }
        $email = $email.$domen;
        self::$smarty->assign('rand_email', $email);

        parent::displayContent();
        self::$smarty->display(_PS_THEME_DIR_.'authentication.tpl');
    }

В файле /themes/prestashop/authentication.tpl строку 122
Код:
<input type="text" class="text" id="guest_email" name="guest_email" value="{if isset($smarty.post.guest_email)}{$smarty.post.guest_email}{/if}">                

заменяем на:
Код:
<input type="text" class="text" id="guest_email" name="guest_email" value="{if isset($smarty.post.guest_email)}{$smarty.post.guest_email}{else}{$rand_email}{/if}">              

Не забываем почистить кэш Smarty.


Сообщение отредактировано DenisRD 08-07-2011 09:08 ...
 
  
YellowDuck


Профессионал
: 1054
: Ярославль
: 29-09-2009


08-07-2011 14:51
DenisRD, супер! все работает, так как хотел. Спасибо огромное за оперативность.

Куда засылать Donate?

Еще вопрос, насколько вероятно совпадение значения до собачки при генерации? Можно для подстраховки в начало мэйла добавлять, например, ID клиента?
 



Интернет-магазин товаров для детей yellowduck.ru
Хороший хостинг для Prestashop и не только one-hosting.ru
  
DenisRD
Новичок
: 60
: 10-10-2010


08-07-2011 23:33
Цитата:
Еще вопрос, насколько вероятно совпадение значения до собачки при генерации? Можно для подстраховки в начало мэйла добавлять, например, ID клиента?

Нет, это же гость - ID ему еще не присвоено.
Можно например в адресе дополнительно использовать метку timestamp - она каждую секудну разная, тогда точно верноятность совпадения адресов стремится к нулю.

Код:
public function displayContent()
    {
        $this->processAddressFormat();

        // символы для e-mail
        $abc = array(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z);
        // количество символов до @
        $num = 3;
        // домен для e-mail
        $domen = '@mydomain.ru';
        for ($i = 1; $i <= $num; $i++) {
          $id = array_rand($abc);
          $email .= $abc[$id];
        }
        $email = $email.time().$domen;
        self::$smarty->assign('rand_email', $email);

        parent::displayContent();
        self::$smarty->display(_PS_THEME_DIR_.'authentication.tpl');
    }
 
  
YellowDuck


Профессионал
: 1054
: Ярославль
: 29-09-2009


09-07-2011 01:41
Большое спасибо!
Денежку отправил
 



Интернет-магазин товаров для детей yellowduck.ru
Хороший хостинг для Prestashop и не только one-hosting.ru
  
DenisRD
Новичок
: 60
: 10-10-2010


09-07-2011 03:21
Деньги получил. Спасибо!
 
  
webvictory
Новичок
: 67
: 25-07-2011


25-07-2011 10:27
Как получить такой же ГОТОВЫЙ модуль?
Версия PS 1.3.1.1
 
  
   
Всего: 4 1 2 3 4 >