Technician: Блог

Главные вкладки

Автозаполнение поля 'Город' на странице оформления заказа в Ubercart

7 мая 2013 в 10:55

Хочу сделать простую (как мне казалось) вещь. Чтобы клиент при оформлении заказа, заполняя поле "Город", мог выбрать из предложенных вариантов. Таблица с городами в БД у меня есть. Написать обработчик для AJAX callback функции тоже проблемы не составляет. Но я уперся в невозможность включить этот самый callback для поля в форме, т.е. прописать параметр '#autocomplete_path' => 'myautocomplete'.

[РЕШЕНО] Тормоза при запуске Feeds через Cron

12 ноября 2012 в 15:32

Импортирую через Feeds товары в формате CSV в магазин на D7+Ubercart. Если загружать из браузера, то короткий файл из 200 записей обрабатывается за 15 секунд (есть и другие файлы, существенно больше). Но вручную это довольно хлопотное занятие и каждый день надоедает. Решили попробовать это автоматизировать и сделать регулярные выгрузки на FTP и чтобы оттуда уже Feeds подхватывал. И вот тут начались непонятные вещи. Те же 200 записей при запуске Feeds через Cron обрабатываются 20 минут! Можно заходить на страницу импорта и наблюдать изменение состояния импорта (по F5): 25%->50%->75%->100%. Каждый этап соответствует 50 записям из файла и занимает 5 минут.

[РЕШЕНО] Views: преобразовать галочку в текст в выдаче

23 мая 2012 в 17:23

Надо сделать, чтобы если в материале поставлена галочка "Распродажа", то текст "Распродажа!" добавлялся бы к цене товара. Хотел сделать это через перезапись результатов вывода, но непонятно, как преобразовать галочку в текст. Т.е. если значение галочки = TRUE, то текст выводим, иначе текст не выводим.

[РЕШЕНО] Одноразовая ссылка из письма -> Доступ запрещен

11 мая 2012 в 14:39

При регистрации заказа в Ubercart пользователю приходит письмо с одноразовой ссылкой. При переходе по ней он попадает на страницу "Доступ запрещен". Соответственно, не может зарегистрироваться. Проблема возникает как на D7.12+U3.0, так и на D7.14+U3.1. Все уже перекопал, что делать, непонятно. Единственное, что нашел, это вообще отключить эту фичу. Но не хочется.

[РЕШЕНО] Тема оформления отображается дважды на странице "Доступ запрещен"

11 мая 2012 в 14:20

Столкнулся с этим только что, задокументирую, вдруг кому пригодится.

Проблема: при попадании на страницу "Доступ запрещен" посетитель сайта видит эту страницу дважды, т.е. после подвала опять идет шапка и т.д. У меня эта проблема встретилась как на D7.12, так и на D7.14.

Issue на Drupal.org: http://drupal.org/node/415474

Там предлагают патч: http://drupal.org/files/issues/drupal.user-access-denied.patch

Мне было лень разбираться, как ставятся патчи (вроде нужна консоль и т.п.), и я сделал это вручную. Все просто:

1. Находим файл modules/user/user.pages.inc

2. Находим в нем строку с текстом "drupal_access_denied();". У меня это были 159 и 534 строки.

3. В обоих случаях добавляем после найденной строки еще строку с командой "exit". Должно получиться так:

Ubercart3 - полный e-mail в качестве логина при регистрации юзера

11 мая 2012 в 10:24

При регистрации пользователя его логином автоматически становится часть его e-mail до @. Т.е., если его адрес - vasya@mail.ru, то создастся юзер с логином vasya. А если затем регистрируется клиент с адресом vasya@yandex.ru, то создастся юзер vasya7, где 7 - произвольное число, обеспечивающее уникальность логина. Хотелось бы остановить этот беспредел и сделать, чтобы логин создаваемого пользователя в точности равнялся его e-mail.

[РЕШЕНО] Ubercart3 - убрать "Рассчитать стоимость доставки"

10 мая 2012 в 22:47

В магазине всего два варианта доставки: самовывоз и доставка с фиксированной ценой. Ubercart на форме оформления заказа подставляет раздел "Рассчитать стоимость доставки" с огромной кнопкой "Нажмите для вычисления стоимости":

Ubercart3 - настройка отображения встроенных таблиц

10 мая 2012 в 20:48

Народ, подскажите, как настроить столбцы в таблицах, отображаемых Ubercart?

Например на странице просмотра заказа нужно убрать столбец Артикул (SKU), а столбец кол-во хочется поставить ближе к цене. На этой же странице в списке комментариев к заказу в столбце "Дата" отображается только дата, а по-хорошему надо бы еще и время показывать. Где все это настраивается-то в UC3? Представлений (views) таких не нашел, шаблонов тоже.

Работа с нодами из внешней программы на .NET

23 апреля 2012 в 15:16

Есть самописная программа на .NET, которая подгружает из 1С ассортимент и цены, позволяет добавлять к товарам описание и фото, ставит на фото водяные знаки и выгружает всю эту информацию на два сайта (в перспективе - будет еще создавать файлы для Яндекс.Маркет).

Первый сайт - на чистом PHP, вопрос с выгрузкой инфы там решен через web-service на основе SOAP. Фотки выгружаются по FTP. Все работает очень удобно - прямо в интерфейсе программы на любой записи можно нажать "Обновить на сайте" и через две секунды инфа уже по адресу:-). Также можно сделать много изменений и выгрузить все их на сайт одной кнопкой. Выгружаются при этом только измененные записи.

Как убрать подключение лишних JS и CSS файлов в jQuery.extend

8 апреля 2012 в 23:30

Пишу сайт на D7+AT Commerce. Работает вроде бы довольно быстро, но заметил такую проблемку. Когда заходишь на сайт в первый раз - очень долгая пауза (секунд 5) перед появлением первой страницы. Затем уже все работает довольно шустро, задержка по полсекунды на страницу в среднем. Хотя в некоторых местах и бывают неожиданные тормоза.

По сайту сделано некоторые вещи в плане оптимизации, в том числе в настройках производительности включены все галочки (т.е. JS и CSS по идее должны объединяться и сжиматься).

[РЕШЕНО] Как отобразить все ноды, ссылающиеся на данную, без передачи аргументов в URL

25 января 2012 в 14:54

Есть два типа материала - производитель авто и модель авто. Установил модуль node reference, создал ссылку из модели авто на производителя. Для каждого производителя прописываю его название в качестве синонима URL. Получается, что страница, например, Audi доступна по адресу mysite.ru/audi (вместо mysite.ru/node/12). Хочу сделать, чтобы при входе на эту страницу отображался бы список всех моделей авто данного производителя. Создал соответствующее представление (в виде блока), создал в нем критерии фильтрации: "Содержимое: Опубликовано (Да), Содержимое: Тип (= Модель авто)", настроил вывод как хотелось, оно работает. На данном этапе на странице любого производителя выводятся все модели всех производителей.

Сайт разработчика софта

21 февраля 2011 в 1:00

Я пишу декстопный софт и хочу сделать себе современный сайт. Сразу скажу, что немного понимаю в PHP и при необходимости могу глубоко разобраться, но времени особо на это нет. Сейчас есть работающий сайт на самописном движке, но там уже очень устаревший фреймворк, и добавлять новый функционал хлопотно. Вот, примеряюсь к Drupal 7.0. Люди, которые знают функциональность модулей, подскажите, можно ли на нем без особого залезания в код реализовать следующий функционал:
1. У пользователя может быть несколько ролей:
- Просто пользователь может скачивать бесплатный софт и общаться на форуме;
- Активисты проекта могут стать модераторами (это, думаю, поддерживает любой форумный движок);
- Бета-тестер получает доступ к бета-версиям программ. Статус тестера можно получить по запросу.
- Потенциальный клиент может выставлять себе счета на выбранный софт. Статус потенциального клиента включается пользователем самостоятельно (т.е. он может перейти в такой статус и ему станут доступны для заполнения поля реквизитов и т.п.). Счет должен выставляться в PDF (речь пока только о безнале). Если клиент счет оплатил, то я вручную это подтверждаю и ему включается период обновления, в течение которого он может загружать платный софт.
2. Репозитарий софта с ограничением доступа в соответствии с ролями пользователей. Статистика загрузок по версиям программ с ведением логов по IP. Тут бы красивые графики не помешали:-) Поддержка через web-service запросов на выход новой версии.
3. Страницы с описанием программ: краткое списком, развернутое, галерея скриншотов.
4. Импорт форума из PHPBB2.