We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 26709
    • 4 Posts
    Наверное нужно будет писать небольшую библиотеку функций, с помощью которых можно манипулировать полями корзины. Наподобие таких:

    GetTotal(); - возвращает в переменную общую сумму заказа;
    PutTotal(num); - изменяет общую сумму заказа на num;

    также манипулирование скидками, добавлением или удалением товаром и так далее. А уже потом можно писать свой сниппет, к которому подключается библиотека и можно делать все, чо потребуется.

    Как вам такая идея? Надеюсь, єто будет универсальное решение без всяких извращений.
      • 785
      • 2,113 Posts
      Может быть, хотя библиотека подразумевает какую-то стандартизацию, а значит накладывает ограничения.
        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
        Статьи о MODx, регулярно новые публикации
        • 19164
        • 1,215 Posts
        Зачем писать библиотеки функций, если всего все равно не предусмотреть, и как следствие - необходимость хакинга этой библиотеки для и оптимизации "под себя". Вполне достаточно разработать механизм, по которому поля корзины будут доступны для обработки внешними сниппетами (о чем и писали выше).
          DirectResize 0.9 beta. PHPThumb, sets of configurations, configuration, binded to specific path. No backward compatibility. | DirectResize 0.9. PHPThumb, наборы параметров, параметры, привязанные к определенным путям. Без обратной совместимости.

          Unfortunately, DirectResize project is closed. If you want to continue development, PM me for access to project page on Google Code. К сожалению, проект DirectResize закрыт. Если вы желаете продолжить разработки, обращайтесь через ПМ для получения доступа к репозиторию на Google Code.

          [PLUGIN] DirectResize - as Maxigallery but for single images :: Download :: [url=http://modxcms.com/forums/index.php/topic,21490]
          • 785
          • 2,113 Posts
          Не дождавшись новейшей версии сниппета, опробовал последнюю имеющуюся. Ну что могу сказать – впервые удалось пройти полностью путь покупки, но ошибок все равно слишком много.
          1. Самое главное – добавление в корзину на некоторых страницах работает, а не некоторых – нет. Причем HTML-код вызова абсолютно одинаковый, что самое странное.
          Там, где не работает, возникает такая ошибка:
          Ошибка: document.getElementById("infoblock") has no properties
          Источник: assets/snippets/shop/nopcart.js
          Строка: 850

          Вообще-то и там работает, то есть товар в корзину добавляется, но никаких сообщений не появляется, так что пользоваться нормально нельзя.
          2. Как ранее отмечалось, если страница прокручена, сообщение о добавлении товара появляется в невидимой области. Надо определять видимую область перед выводом.
          3. Настоятельно рекомендую в начале сниппета поставить
          $youremail = isset($youremail)? $youremail:$modx->config['emailsender'];

          а не какой-то неизвестный адрес.
          4. Ну, удалите позорные устаревшие строки
          <a href="http://www.netscape.com">Netscape</a> и 
          <a href="http://www.microsoft.com/ie">Microsoft</a> 
          бесплатные браузеры, которые имеют поддержку Java скриптов.

          которые, кстати, встречаются дважды.
          5. Тексты надо писать более грамотно. Например, язык называется JavaScript а не Java скрипт, и обращение к пользователю «вы», «вас», а не «Вы», «Вас». Последний вариант правильный, если обращение идет к конкретному человеку, а если к неизвестному, то надо начинать со строчной буквы. Есть и другие ошибки.
          6. Разберитесь все же с кодировками. Во-первых, просто ведь сделать два файла ru и ru-utf8, причем, как мне кажется, кодировка utf8 должна стоять по умолчанию. Также необходимо исправить проблему с кодировкой utf8 в приходящем письме.
          7. Закончите, все же, перевод на русский язык. Например, переведите:
          I\'m sorry, but you must provide the following field(s) before continuing:\n" + strFields

          8. Следует разобраться с полями при оформлении заказа. Их очень много, причем практически все они не нужны, если планируется курьерская доставка. Зато не хватает других полей (например, код домофона, подъезд, этаж, квартира и так далее). И зачем разные адреса для доставки счета и доставки товара? Вообще, что такое для нашей действительности «адрес доставки счета»? Вообще-то локализация подразумевает не просто перевод слов, а учет местных реалий. Например, в России есть регионы, районы, населенные пункты и так далее, и поля «область» и «город» не отражают существующее территориальное деление (недостаточно штат США назвать областью).
          Так как поля используются в разных местах программы, самостоятельное исправление может привести к нарушению работы корзины. Необходим простой и понятный механизм работы с формой оформления заказа, а также разумные установки по умолчанию.
          9. MonetarySymbol по умолчанию лучше поставить «руб.»
          10. Повторю, что рекомендация вручную добавить строки в заголовок страницы неудачна. Нередко используется один шаблон для разных страниц, и его изменение нежелательно. Проще написать на странице вызов сниппета, который только добавит в заголовок ссылку на нужный файл с программой.

          И напоследок важное замечание. При следующих релизах пишите, что было исправлено, а что нет. Просто некоторые замечания повторяются с прошлых версий, и как-то пропадает желание тестировать, если нарываешься на ту же ошибку. Хотелось бы заранее знать, на что пока не стоит обращать внимание, и что было изменено, а, следовательно, требует повышенного внимания.
            Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
            Статьи о MODx, регулярно новые публикации
            • 26709
            • 4 Posts
            Спасибо smiley В новой версии все эти недоченты исправлены уже давно, просто я решил пока не вылаживать. Также полная руссификация. Все основные языковые переменные вынесены во внешний файл. Решил уже глобально исправить все недочеты, а потом уже публиковать обновление. Думаю, понятно почему:) По поводу названия языка - то все это наследие неграмотного написания кода разработчиками - тоже исправлено.

            А по поводу библиотеки функций, то суть этих функций именно в том и заключается, чтобы можно было манипулировать полями корзины. Т.е. фактически это АПИ корзины. Уже на их основании можно писать свои внешние сниппеты. Комбинировать их как угодно и делать с полями корзины все что нужно в конкретном случае без ковыряния ядра корзины.
              • 29353
              • 4 Posts
              Доброго времени суток
              Решил опробовать корзину, много всего повылазило.
              За форму изложения не пинать - начинающий.
              ----
              Денвер
              БД utf8_general_ci
              Firefox 2
              IE 6
              ---


              1. Добавление в корзину работает только из-под дитто
              <a href="#" onclick="AddToCart(’7’,’1’,’100’,’товар 1,’0’,’yes’,this);return false">В корзину</a>

              При попытке добавления со стрницы конкретного товара половины значеиний теряется
              (<a href="#" onclick="AddToCart(’’,’1’,’’,’’,’0’,’yes’,this);return false">В корзину</a> )
              Может в движке дело?

              2. В ie вообще не отображается ничего из корзины, кроме кнопок(выполнено, но с ошибками на стрнице).
              <a href="xxx">Ваша корзина</a>
              <div id="infoblock"><script>Print_total();</script> - предполагается наличие обьекта
              + незвершенные строковые константы

              При попытке добавления товара происходит обыкновенный переход http://xxx/xxx.xxx# и ничего более
              Как с этим бороться?

              3. Где можно выбрать кодировку выводимых слов? (половину сообщений выглядит так ������� �����.)
                • 26709
                • 4 Posts
                Quote from: tayzer at May 11, 2008, 05:41 AM

                1. Добавление в корзину работает только из-под дитто
                <a href="#" onclick="AddToCart(’7’,’1’,’100’,’товар 1,’0’,’yes’,this);return false">В корзину</a>

                При попытке добавления со стрницы конкретного товара половины значеиний теряется
                (<a href="#" onclick="AddToCart(’’,’1’,’’,’’,’0’,’yes’,this);return false">В корзину</a> )
                Может в движке дело?
                Для того чтобы добавить кнопку на страницу товара, нужно в вызове кнопки вместо параметров [+параметр+] ставить [*параметр*], иначе дитто не бкдет их обрабатывать и, естественно, ничего в корзину не добавится.

                Quote from: tayzer at May 11, 2008, 05:41 AM

                2. В ie вообще не отображается ничего из корзины, кроме кнопок(выполнено, но с ошибками на стрнице).
                <a href="xxx">Ваша корзина</a>
                <div id="infoblock"><script>Print_total();</script> - предполагается наличие обьекта
                + незвершенные строковые константы

                При попытке добавления товара происходит обыкновенный переход http://xxx/xxx.xxx# и ничего более
                Как с этим бороться?

                Возможно, не совсем правильно установлен сниппет. Или, что более вероятно, при добавлении сниппета редактор сделал переносы строк. Такое возможно, когда вы скопировали из файла код сниппета, когда БЛОКНОТ был открыт не на всю страницу.
                Чтобы решить эту проблему, попробуйте открыть файл сниппета в блокноте, распахнув его НА ВЕСЬ экран, а потом уже копируйте содержимое в окно редактора сниппета.

                Quote from: tayzer at May 11, 2008, 05:41 AM

                3. Где можно выбрать кодировку выводимых слов? (половину сообщений выглядит так ������� �����.)
                Это потому что по умолчанию яваскрипты корзины сделаны в кодировке ВИН-1251. Для решения проблемы переконвертируейте файл nopcart.js и нужный языковой файл в кодировку УТФ-8 (ну или какая вам нужна).
                В следю версии будут файлы и в этой кодировке.
                  • 29353
                  • 4 Posts
                  благодарствую wink
                  1. исправил
                  2. переустановка сниппета не помогла :’(
                  3. исправил
                  Можно уточнить примерное время выхода новой версии?
                    • 26709
                    • 4 Posts
                    Постараюсь в середине недели выложить. Просто разработка сниппета - это время, которое у меня остается после основной работы. Потому сроки могут затягиваться.

                    А по поводу самого сниппета, то это странно, что не работает. Я так понял, что только корзина не работает? Или все? Работает ли страница оформления покупки? Проверьте и отпишитесь здесь. Постараюсь помочь.

                    Если все же нет, то другого варианта нету. Только некорректные переносы. Изначально сниппет рабочий. Посмотрите, вставляется ли в код страницы в самом верху служебные файлы НОПКАРТ и языковой файлы?
                      • 29353
                      • 4 Posts
                      Поставил на ВМ и нормально все заработало - кривой IE был.
                      На опере маленький косячек вылазил
                      версия 9.25 Сборка8827

                      <FONT class="blacktext"><b><font class="greetext">Комментарии/Дополнительная нформация:</font></b><P><TEXTAREA NAME="comment" ROWS=6 COLS=40></TEXTAREA></font>

                      "<font" - попадает в само текстовое поле