Закладки без авторизации

Тема в разделе "Общие вопросы", создана пользователем sibrus, 26 окт 2015.

  1. sibrus

    sibrus Пользователь

    Сообщения:
    96
    Симпатии:
    7
    хочу чтобы закладки работали не на основании учётной записи т.к. хочу вообще убрать личный кабинет, а на основании куков, сесии.

    может есть модуль или кто делал или знает как решить вопрос?
     
  2. Vlad

    Vlad Эксперт

    Сообщения:
    3.940
    Симпатии:
    944
  3. sibrus

    sibrus Пользователь

    Сообщения:
    96
    Симпатии:
    7
    спасибо
     
  4. sibrus

    sibrus Пользователь

    Сообщения:
    96
    Симпатии:
    7
    не устанавливается. добавил в имя файла перед разширением file_name.ocmod.xml при установке пишет нет id эксклюзивного. присвоил ид прописав <code>12345</code> ( все эти решения подглядел в аналогичном файле).
    файл вроде установился но в модификаторах у него нет имени(добавил) и не понимаю как его включить что бы содержимое закладок показывалось не зависимо от того зарегистрирован или нет (что бы выполнял свою задачу)
    кэш почистил
     
    Последнее редактирование: 2 ноя 2015
  5. sibrus

    sibrus Пользователь

    Сообщения:
    96
    Симпатии:
    7
    \catalog\controller\account\wishlist.php
    закомментировал строки 7, 164.
    Код:
    строка 7
    // $this->response->redirect($this->url->link('account/login', '', 'SSL'));
    
    строка 164
    //$json['info'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', 'SSL'), $this->url->link('account/register', '', 'SSL'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist'));
    работает, а модификатор в топку
     
    Vlad нравится это.
  6. Vlad

    Vlad Эксперт

    Сообщения:
    3.940
    Симпатии:
    944
    потому что он оказывается вкумод )))) Вот и не работает. В нем инструкцию подсмотреть просто...
     
  7. sibrus

    sibrus Пользователь

    Сообщения:
    96
    Симпатии:
    7
    посмотрел :) ни х не понял... сделал по другому :) как смог
     
  8. aquaf

    aquaf Новичок

    Сообщения:
    8
    Симпатии:
    1
    на 2.1 не подскажете как сделать?
     
  9. Dimasscus

    Dimasscus Пользователь

    Сообщения:
    93
    Симпатии:
    1
    Всем привет, нужна помощь. На опенкарт 2.1.0.2.1 допиливали как то решение для вывода скидок на покупки только зарегистрированным покупателям. Концепция поменялась, теперь нужно отключить проверку на авторизацию, показывать блок со скидками всем клиентам. Кто и когда допиливал история умалчивает, поэтому прошу помощи- ка отключить проверку на авторизацию для такого чуда :
    контролер хедера где выводится блок
    //discount1
    $data['discount1_ar']=array();
    if($this->config->get('discount1_status')=='0')
    {
    if($this->customer->isLogged())
    {
    $data['discount1_ar']=$this->config->get('discount1_ar');
    $s_ar=array();
    foreach($data['discount1_ar'] as $n1=>$ar1)
    {
    $s_ar[]=$ar1['sort_order'];
    }

    array_multisort ($s_ar, SORT_ASC, $data['discount1_ar']);


    if(isset($this->session->data['discount1']))
    {
    $data['d_title1']=$this->session->data['discount1']['title'];
    }
    else
    {
    $data['d_title1']='';
    }

    $data['d_url1']=$this->url->link('product/product/discount1');

    }
    }
    //discount1

    подключение в шаблоне хедера

    <?php if($discount1_ar)
    { ?>

    <div style="display:inline-block;float:right;margin-top:6px;width:auto;position:relative;white-space:nowrap; color: #000">
    <?php foreach($discount1_ar as $d_n=>$discount1_ar1) { ?>
    <input type="hidden" name="discount1_<?php echo $d_n; ?>_title" id="discount1_<?php echo $d_n; ?>_title" value="<?php echo $discount1_ar1['title']; ?>">
    <input type="hidden" name="discount1_<?php echo $d_n; ?>_percent" id="discount1_<?php echo $d_n; ?>_percent" value="<?php echo $discount1_ar1['percent']; ?>">

    <?php } ?>



    <div id="discount1_div" style="display:none;"></div>
    <table align="right" border="0">
    <tr><td style="padding-right:5px;">
    Скидка:&nbsp; </td><td><select class="form-control" style="width:auto;" name="discount1" onChange="set_discount1(this.value);">
    <option value="">Выберите</option>

    <?php foreach($discount1_ar as $d_n=>$discount1_ar1) { ?>
    <option value="<?php echo $d_n; ?>"<?php if(isset($d_title1)) { if($d_title1==$discount1_ar1['title']) {echo ' selected'; } } ?>><?php echo $discount1_ar1['title']; ?></option>
    <?php } ?>
    </select>
    </td></tr></table>

    <script>
    function set_discount1(n)
    {

    var percent1=document.getElementById('discount1_'+n+'_percent').value;
    var title1=document.getElementById('discount1_'+n+'_title').value;

    window.location='<?php echo $d_url1; ?>&percent='+percent1+'&title='+encodeURIComponent(title1)+'&n='+n+'&url1='+encodeURIComponent(document.location);
    }
    </script>
    </div>
    <?php } ?>

    Буду признателен за помощь или подсказку.
     
  10. Vlad

    Vlad Эксперт

    Сообщения:
    3.940
    Симпатии:
    944
    1. Не по теме!!
    2. Пожалуйста, не нужно писать о "своем чуде". Разбираться в чудесах другого за бесплатно дело не благодарное и не спортивное.
     
  11. Dimasscus

    Dimasscus Пользователь

    Сообщения:
    93
    Симпатии:
    1
    приношу извинения за неспортивное поведение :)
    просто нагуглил темку, думал мож подскажет кто или подтолкнет в нужном направлении. ну нет, так нет. и на том спасибо что молотком не кинул
     
  12. srs3000

    srs3000 Пользователь

    Сообщения:
    186
    Симпатии:
    1
    апну тему. Вопрос сабжа для версии 2.1.0.0
    Если каментить строки выше, то не показывает закладки, а предлагает нажать далее и все равно кидает на форму авторизации

    http://www.opencart.com/index.php?route=extension/extension/info&extension_id=23623&filter_search=wishlist without login нормально не работает(

    скачал этот модуль http://www.opencart.com/index.php?r...ishlist without login&filter_license=0&page=3


    разобрал xml файл и сделал все руками. Не работает.
    Строчки
    Код:
    $json['info'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', 'SSL'), $this->url->link('account/register', '', 'SSL'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist'));
    первой строчки не нашел, но судя повсему нашел верный аналог т.к.

    Код:
    $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', 'SSL'), $this->url->link('account/register', '', 'SSL'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist'));
    
     
    Последнее редактирование: 26 авг 2016
  13. Vlad

    Vlad Эксперт

    Сообщения:
    3.940
    Симпатии:
    944
    вот незнай. Я комментирую 2 строки прямо в самом начале и все работает. (2.1.0.0)
    PHP:
                $this->session->data['redirect'] = $this->url->link('account/wishlist''''SSL');

                
    $this->response->redirect($this->url->link('account/login''''SSL'));
     
  14. srs3000

    srs3000 Пользователь

    Сообщения:
    186
    Симпатии:
    1
    Выдает в таком случае:
    Мои закладки
    Ваши закладки пусты
    Продолжить

    и после продолжить - форма авторизации.


    Из за модуля оформления заказа на 1 странице может такое быть?
     
  15. Vlad

    Vlad Эксперт

    Сообщения:
    3.940
    Симпатии:
    944
    все возможно в нашей жизни. И невозможное, возможно!
     
  16. srs3000

    srs3000 Пользователь

    Сообщения:
    186
    Симпатии:
    1
    на пустой сборке закаментил две строчки - результат аналогичный
     
  17. Vlad

    Vlad Эксперт

    Сообщения:
    3.940
    Симпатии:
    944
    значит или мы тестируем по разному или не понимаем друг друга.
     
  18. Sanik

    Sanik Активный пользователь

    Сообщения:
    251
    Симпатии:
    3
    Вопрос остается актуальным, как убрать обязательную авторизацию для добавления, просмотра и редатирования wishlist? для 1.5.5-х решение есть, для 2.3 - не подходит(
     
  19. Chukcha

    Chukcha Специалист

    Сообщения:
    2.961
    Симпатии:
    675
    И не подойдет
    Но самое интересное, что товары прекрасно попадают в список желаний,
    Но вот просмотреть можно только после авторизации
     
  20. Vlad

    Vlad Эксперт

    Сообщения:
    3.940
    Симпатии:
    944
    к предыдущей инструкции добавьте так
    найти
    PHP:
    if ($this->customer->isLogged()) {
    изменить на
    PHP:
    if (1) {
    последняя строка похожа на говнокод :), но для восприятия что делается, вполне себе. Кому нужно... удаляйте условие проверки.