Ответить Новая тема Новый опрос 
Всего: 2 1 2 >
 Оформления заказа
naff
Cпециалист
Сообщений: 216
Регистрация: 05-09-2011


14-10-2011 04:38
У меня в настройках стоит оформление на одной странице (НЕ гостевое!)

Как в AuthController.php, в зависимости от введенных данных пользователя, сделать так, что бы он оформил заказ как ГОСТЬ???

Поясню:
Если пользователь ввел емейл и пароль, то он регистрируется как обычно...
Если не ввел данные то тогда он оформляется как гость (без учетной записи)...

З.Ы: Сейчас сайт работает почти так как нужно... Только вот если пользователь не ввел данные то для него генерируются пароль и емейл, и проходит обычная регистрация...

Какие есть идеи??
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
naff
Cпециалист
Сообщений: 216
Регистрация: 05-09-2011


14-10-2011 17:34
За проверку "гостевой заказ или нет" отвечает переменная is_new_customer

Если она = 1 то оформление происходит как гостевое... Так же есть проверка стоит ли в настройках гостевой заказ - я ее убрал.

Но все ровно выдает "Ошибка создания учетной записи."...

Вот нашел еще кусок кода который тоже имеет к этому отношение
Код:
/* New Guest customer */
                        if (Tools::isSubmit('is_new_customer'))
                            $customer->is_guest = !Tools::getValue('is_new_customer', 0);
                        else
                            $customer->is_guest = 0;
                        if (!$customer->add())
                            $this->errors[] = Tools::displayError('An error occurred while creating your account.');
                        else
                        {
                            $address->id_customer = (int)($customer->id);
                            if (!$address->add())
                                $this->errors[] = Tools::displayError('An error occurred while creating your address.');
                            else
                            {
                                if (!$customer->is_guest)
                                {
                                    if (!Mail::Send((int)(self::$cookie->id_lang), 'account', Mail::l('Welcome!'),
                                    array('{firstname}' => $customer->firstname, '{lastname}' => $customer->lastname, '{email}' => $customer->email, '{passwd}' => Tools::getValue('passwd')), $customer->email, $customer->firstname.' '.$customer->lastname))
                                        $this->errors[] = Tools::displayError('Cannot send email');
                                }
                                self::$smarty->assign('confirmation', 1);
                                self::$cookie->id_customer = (int)($customer->id);
                                self::$cookie->customer_lastname = $customer->lastname;
                                self::$cookie->customer_firstname = $customer->firstname;
                                self::$cookie->passwd = $customer->passwd;
                                self::$cookie->logged = 1;
                                self::$cookie->email = $customer->email;
                                self::$cookie->is_guest = !Tools::getValue('is_new_customer', 1);
                                /* Update cart address */
                                self::$cart->secure_key = $customer->secure_key;
                                self::$cart->id_address_delivery = Address::getFirstCustomerAddressId((int)($customer->id));
                                self::$cart->id_address_invoice = Address::getFirstCustomerAddressId((int)($customer->id));
                                self::$cart->update();
                                Module::hookExec('createAccount', array(
                                    '_POST' => $_POST,
                                    'newCustomer' => $customer
                                ));
                                if (Tools::isSubmit('ajax'))
                                {
                                    $return = array(
                                        'hasError' => !empty($this->errors),
                                        'errors' => $this->errors,
                                        'isSaved' => true,
                                        'id_customer' => (int)self::$cookie->id_customer,
                                        'id_address_delivery' => self::$cart->id_address_delivery,
                                        'id_address_invoice' => self::$cart->id_address_invoice,
                                        'token' => Tools::getToken(false)
                                    );
                                    die(Tools::jsonEncode($return));
                                }
                                if ($back = Tools::getValue('back'))
                                    Tools::redirect($back);
                                Tools::redirect('my-account.php');
                            }
                        }
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
naff
Cпециалист
Сообщений: 216
Регистрация: 05-09-2011


14-10-2011 17:36
Ув. Алекс Подскажи в чем еще может быть проблема...
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
naff
Cпециалист
Сообщений: 216
Регистрация: 05-09-2011


14-10-2011 19:09
Не стал вдаваться в подробности... Видимо проблемы были с тем что гостевой заказ был выключен... Реализовал тоже самое только на форме гостевого заказа...

Что в общем получилось:
Во первых избавился от кнопок выбора гостевого заказа и заказа с регистрацией.
Во вторых избавился от поля Email в гостевом заказе.
В третьих упростил выбор метода оформления с помощью чекбокса.



Без регистрации.jpg - Размер файла26.33KB (Нажмите для увеличения)
При не отмеченном чекбоксе Email генерируется автоматически.
И оформление происходит как гостевое.


С регистрацией.jpg - Размер файла31.31KB (Нажмите для увеличения)
При отмеченном чекбоксе происходит оформление с регистрацией.
Используются введенные пользователем данные.


З.Ы: Кому будет интересно такое решение обращайтесь...


Сообщение отредактировано naff 14-10-2011 15:09 ...
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
golovnev
Новичок
Сообщений: 8
Регистрация: 26-12-2011


09-01-2012 18:48
Возможно ли сделать средствами Prestashop такое оформление заказа? http://www.kupinoski.by/order.php

Если кто-то сможет сделать подобное, готов заплатить.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
rykketid
Новичок
Сообщений: 23
Откуда: Север
Регистрация: 08-01-2011


03-02-2012 00:57
naff, поделитесь, пожалуйста
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
andrei
Новичок
Сообщений: 30
Регистрация: 08-01-2012


03-02-2012 01:50
Цитата:( golovnev @ 09-01-2012 19:48 Смотреть сообщение )
Возможно ли сделать средствами Prestashop такое оформление заказа? http://www.kupinoski.by/order.php

Если кто-то сможет сделать подобное, готов заплатить.


могу посоветовать модуль One page checkout for PS 1.4


 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
KPG
Новичок
Сообщений: 5
Регистрация: 30-04-2012


20-05-2012 21:17
может так?
http://prestadev.ru/forum/tema-5754-0.html#pid29780
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
SVirra
Новичок
Сообщений: 11
Регистрация: 18-06-2012


29-06-2012 05:22
Цитата:( naff @ 14-10-2011 14:09 Смотреть сообщение )

З.Ы: Кому будет интересно такое решение обращайтесь...


мне интересно
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
stasy
Новичок
Сообщений: 3
Регистрация: 24-09-2012


24-09-2012 12:08
Цитата:( naff @ 14-10-2011 20:09 Смотреть сообщение )
З.Ы: Кому будет интересно такое решение обращайтесь...
поделитесь пожалуйста решением!
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос 
Всего: 2 1 2 >