We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 12992
    • 21 Posts
    письмо с пустой ячейкой приходит.
      • 26709
      • 4 Posts
      Quote from: Int at Feb 19, 2010, 03:34 AM

      письмо с пустой ячейкой приходит.

      Я немного неправильно написал. Давайте сделаем так. Способ добавления в админку оставляем как я писал выше. Но остальное делаем по-другому. Ищем в файле nopcart.js в самом начале строку
      OutputItemAddtlInfo = 'ADDTLINFO_';
      


      и сразу после нее вставляем
      OutputItemAddColor = 'COLOR_';
      


      далее ищем кусок кода
      if (PaymentProcessor != '') {
                  //Process description field for payment processors instead of hidden values.
                  //Format Description of product as:
                  // ID, Name, Qty X
                  strPP += fields[0] + ", " + fields[3];
                  if (fields[5] != "") strPP += " - " + fields[5];
                  strPP += ", Qty. " + fields[1] + "\n";
              } else {
                  strOutput += "<input type=hidden name=\"" + OutputItemId + strFooter + "\" value=\"" + fields[0] + "\">";
                  strOutput += "<input type=hidden name=\"" + OutputItemQuantity + strFooter + "\" value=\"" + fields[1] + "\">";
                  strOutput += "<input type=hidden name=\"" + OutputItemPrice + strFooter + "\" value=\"" + fields[2] + "\">";
                  strOutput += "<input type=hidden name=\"" + OutputItemName + strFooter + "\" value=\"" + fields[3] + "\">";
                  strOutput += "<input type=hidden name=\"" + OutputItemShipping + strFooter + "\" value=\"" + fields[4] + "\">";
                  strOutput += "<input type=hidden name=\"" + OutputItemAddtlInfo + strFooter + "\" value=\"" + fields[5] + "\">";
              }
      
      


      и сразу после

                  strOutput += "<input type=hidden name=\"" + OutputItemAddtlInfo + strFooter + "\" value=\"" + fields[5] + "\">";
      


      добавляем
                  strOutput += "<input type=hidden name=\"" + OutputItemAddColor + strFooter + "\" value=\"" + color + "\">";
      


      Теперь идет в сниппет и ищем

      for ($i = 1;$i < $maxpr;$i++) {
                  $field_name = 'NAME_' . $i;
                  $field_quantity = 'QUANTITY_' . $i;
                  $field_price = 'PRICE_' . $i;
                  $field_id = 'ID_' . $i;
                  $field_addtlinfo = 'ADDTLINFO_' . $i;
                  if (isset($_POST[$field_name])) {
                      if ($_POST[$field_name] != "") {
                          $NAME[$i] = $_POST[$field_name];
                          $QUANTITY[$i] = $_POST[$field_quantity];
                          $PRICE[$i] = $_POST[$field_price];
                          $ID[$i] = $_POST[$field_id];
                          $ADDTLINFO[$i] = $_POST[$field_addtlinfo];
                      }
                  }
              }


      После
                  $field_addtlinfo = 'ADDTLINFO_' . $i;
      

      Добавляем
                  $field_color = 'COLOR_' . $i;
      


      а после
                          $ADDTLINFO[$i] = $_POST[$field_addtlinfo];
      

      добавляем
                          $COLOR[$i] = $_POST[$field_color];
      


      Далее в сниппете после
                      $tablemail1 = str_replace("[+shop.mail.name+]", $NAME[$i] . $ADDTLINFO[$i], $tablemail1);
      


      добавляем
                      $tablemail1 = str_replace("[+shop.mail.color+]", $COLOR[$i], $tablemail1);
      


      Теперь доступен плейсхолдер [+shop.mail.color+] в письме.

      Осталось только в БД его вписать. Опять идем в файл snippet/shop/include/saveorder_db.inc.php и ищем строку
      INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name`)
      VALUES ( '".$numorder."', '".$QUANTITY[$i]."', '".$PRICE[$i]."', '".$ID[$i]."', '".$NAME[$i]."');
      

      и заменяем на
      INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name`, `color`)
      VALUES ( '".$numorder."', '".$QUANTITY[$i]."', '".$PRICE[$i]."', '".$ID[$i]."', '".$NAME[$i]."', '".$COLOR[$i]."');
      


      Все, должно работать. Т.е. вместо моего первого примера из предыдущего поста используем этот. А добавление в админку остается без изменения. Везде вместо color и COLOR можно подставляеть свою значение. По такому принципу добавляется неограниченное количество ополнительных ТВ.
        • 12789
        • 9 Posts
        Похоже небольшая ошибка либо я не знаю где смотреть... сменит почтовый адрес в админке модх но модуль магазина шлет на старый адрес? где смотреть?

        сори.. ступил=)) все ок
          • 12992
          • 21 Posts
          Serg24, спасибо огромное все получилось.
            • 26709
            • 4 Posts
            Quote from: Int at Feb 24, 2010, 01:10 AM

            Serg24, спасибо огромное все получилось.
            Всегда пожалуйста smiley Как я уже говорил,таким образом можно добавлять сколько угодно дополнительных ТВ.

            Кстати, сори за оффтоп, но если у кого-то есть Webmoney и нужно обменять 1 к 1 на Яндекс.Деньги, то свисните мне - тут заплатили ЯД, но мне нужно их обменять.
              • 20673
              • 2 Posts
              Здравствуйте,

              Прошу меня не гнобить, я на ModX’е недавно.

              Сделал всё по инструкции, которая в readme.html... Сайт test.prorostki.com
              Я могу добавлять в корзину товары, но не пойму как вызвать кнопку «оформить покупку». Простой ссылкой на id страница с оформлением?
              Также не понимаю где тот TV, который задаёт изображения товара. Нужен какой-то особый темплейт для Дитто?
              Да, кстати. если я просто захожу на страницу «оформить покупку», то мне выдаёт следующее:
              Не найден чанк или шаблон для корзины c именем UserForm

              Вроде везде стоит UTF-8....

              Пожалуйста, помогите!
                • 26709
                • 4 Posts
                Quote from: Mushbird at Mar 01, 2010, 09:10 AM

                Я могу добавлять в корзину товары, но не пойму как вызвать кнопку «оформить покупку». Простой ссылкой на id страница с оформлением?
                Чтобы вывести ссылочку на корзину в инфоблоке, воспользуйтесь информацией по ссылке http://modxcms.com/forums/index.php/topic,24185.msg269611.html#msg269611

                Quote from: Mushbird at Mar 01, 2010, 09:10 AM

                Также не понимаю где тот TV, который задаёт изображения товара. Нужен какой-то особый темплейт для Дитто?
                Вы имеете ввиду, что вам нужно в самом каталоге товаров вывести картинку товара? В таком случае делаете ТВ, например, с названием photo с типом image, а в шаблоне дитто, который выводит товары с кнопкой В КОРЗИНУ. добавляете в нужное место [+photo+]

                Quote from: Mushbird at Mar 01, 2010, 09:10 AM

                Да, кстати. если я просто захожу на страницу «оформить покупку», то мне выдаёт следующее:
                Не найден чанк или шаблон для корзины c именем UserForm

                Вроде везде стоит UTF-8....

                Пожалуйста, еще раз убедитесь, что у вас везде стоит кодировка UTF-8. А сама ошибка означает, что вы не создали чанк Shop_UserForm. Он есть в архиве со сниппетом
                  • 26735
                  • 34 Posts
                  @Serg24
                  А можно ли где-нибудь посмотреть работу сниппета?
                  Чем ваш сниппет отличается от Shopkeeper?

                  --
                  Спасибо
                    • 26709
                    • 4 Posts
                    Quote from: sergeykarpuk at Mar 02, 2010, 06:35 AM

                    @Serg24
                    А можно ли где-нибудь посмотреть работу сниппета?
                    Чем ваш сниппет отличается от Shopkeeper?

                    --
                    Спасибо

                    Сейчас готовится демо-сайт со сниппетом, где вы сможете попробовать его в работе во фронтенде и бекэнде. Как только он будет готов, я сразу же выложу ссылочку.

                    Что касаетя отличий, то как у нашего сниппета, так и у шопкипера есть свои плюсы и свои минусы. По плюсам, то в нашем сниппете есть работа с дисконтными картами и скидочными талонами, в скорой новой версии есть функция управления скидками на товары в зависимости от количества заказанного товара, модуль управления ценами прямо внутри модуля. Установка и настройка как самого сниппета и модуля, так и чанка товаров, как мне кажется, намного проще, чем в шопкипере (хотя не могу утверждать наверняка.) К плюсам можно отнести и некоторые нововведения, которые будут внедрены в ближайшей и последующих версиях - по некоторым причинам не хочу пока оглашать их. Но скажу лишь, что мы решили нацелить свой сниппет на легкомасштабируемость (легкое подключение дополнений) и написание дополнительных подключаемых надстроек, которые будут доступны для скачивания и установки на официальном сайте. В общем, сами скоро увидите smiley

                    В остальном скажу, что ка наш сниппет, так и шопкипер, по-своему хороши. Поэтому советую попробовать и тот и другой, чтобы определиться - на вкус и цвет - товарищей нет.
                      • 3046
                      • 48 Posts
                      Здравствуйте!
                      У меня не отображаются цены в модуле, все остальное работет без нареканий.
                      Не пойму с чем может быть связано?
                      Где смотреть?