Nick Fedchik: Блог

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

Commerce: ввод в поле товара перед покупкой

8 февраля 2013 в 17:55

Пытаюсь решить такую задачу

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

Пытаюсь прикрутить к сущности "Товар" текстовое поле, куда пользователь должен буде ввести код.
Без кода товар продаваться не должен, т.е. код разрешает купить товар.
Проверка кода - отдельная песня, может быть что и кастомным модулем.
Но сейчас заткнулся на том, чтобы поле выводилось редактируемым - либо до нажатия кнопки "Добавить корзину", либо позже при оформлении заказа.

Commerce: поделить один заказ на два по статусу наличия товара

7 августа 2012 в 16:29

Есть такая типовая задача, надо решить под Commerce.
Пользователь оформляет заказ.
Из его выбора товаров, некоторые могут быть в наличии у продавца, некоторые надо заказывать у поставщика и ждать поставку (таких товаров в наличии нет, но на витрине это не отображается, скажем так что их статус - "Под заказ").
Надо разбивать заказ на два заказа этого же пользователя - те что "В наличии" в один заказ (быстрый), те что "Под заказ" - в другой заказ (долгий).
Автоматически.
Если в заказе товары только одного статуса - не делать разделение.

Ссылки товара на товар, создание нового товара если нет.

28 июля 2012 в 15:36

Делаю магазин на Commerce - комплектующие для принтеров.

Есть товары (сущность) типа Чернила и типа Принтер

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

Когда создается товар Принтер, то в нем надо указать список чернил, которые в этих принтерах могут применяться - список совместимости. Тут как правило связь один к одному, но не всегда.

Простой способ (сейчас его буду отрабатывать) - это сделать словарь таксономии и заполнять его как теги. Что получится - множество товаров типа Чернила и Принтер, два словаря "Чернила" и "Принтер" где опять же список дублируется.

Поле выбора ссылки на материал из списка (view)

18 апреля 2012 в 20:02

Есть типы материала "Соревнование", "Заявка", "Спортсмен".
Есть множество материалов "Соревнование" и "Спортсмен".
Спортсмены подают заявки участие в соревнованиях.
Такая связка делается путем создания материала "Заявка", в котором есть поля с ссылками на конкретное соревнование и выбор спортсмена.
Это тривиально, но неудобно - при больших количествах соревнований и спортсменов надо помнить кто куда подавал заявки, избегая дублирования.
Я делаю автопривязку к материалу Соревнование - на его странице создаю Заявку.
Остается из множества экземпляров материала Спортсмен выбрать тех, кто не имеет такой связи (Спортсмен-Заявка-Соревнование).

[РЕШЕНО] Advanced Forum Поле изображения

17 апреля 2012 в 14:54

В АДМИНКЕ Advanced Forum
/admin/config/content/advanced-forum

Нижнаяя секция (collapsed)
НАСТРОЙКИ ИЗОБРАЖЕНИЙ ФОРУМА

Кому-нибудь удавалось настроить и использовать "Поле изображения" в админке Advanced Forum?
Для чего оно?

У меня выпадающее меню "Поле изображения для отображения изображений форума" содержит только "нет",
хотя к нодетипу "Тема форума" я добавил поле "Изображение".

Image field
The image field to use to display forum images.

Но как его начать использовать - не понятно.

Calendar, FullCalendar - какие есть альтернативы?

14 апреля 2012 в 15:56

Calendar, FullCalendar - самые популярные модули в Друпале для календаря.
Какие им есть в Друпале альтернативы?

Красивый вывод тегов

14 апреля 2012 в 14:24

НА сайте используется тема Zeropoint, в ней по умолчанию теги контента выводятся в одну колонку. Хочется в ряд, и как-то приукрасить.

Какие модули для красивого вывода тегов на странице порекомендуете?

Fullcalendar с использованием Exposed Filter

12 апреля 2012 в 23:21

Установил FullCalendar
Настроил раскраску нод по таксоносмии, вывел блок с легендой, затем добавил блок с exposed filters в виде чекбоксов (множественный выбор).
При выборе любой опции (термина таксономии) вывод календаря вообще пропадает...

Кто сталкивался? Какие способы лечения?

Views: как настроить список нод с аналогичными ссылками?

12 апреля 2012 в 11:01

Есть два типа нод: Спортсмен и Соревнование.
В нодетипе Спортсмен есть поле node reference на Соревнование.
На странице ноды Спортсмен надо вывести блок со списком других спортсменов, ссылающихся на это соревнование.

Вопрос 1: Как настроить выборку других нод с такой же ссылкой на ноду типа Соревнование, как у текущей ноды? (пробую варианты с контекстными фильтрами, но пока не получилось)
Вопрос 2: Как после этого исключить из списка запись с текущей нодой? (самого себя не выводим, только других).

РЕШЕНО: Блок из поля - не могу спрятать пустой блок

10 апреля 2012 в 12:30

Есть нодетип с полями.
Одно из полей с помощью Views я вывожу в блок.
Во вьювсе задаю неформатированный список, всюду где можно (конфиг формата вывода и конфиг поля) указываю не выводить пустые поля.
Поле пустое, сохраняю ноду. Блок есть. Анализирую Firebug-ом - контент из одного пробела между тегами.
Надо прятать блок, если поле пустое, подскажите!!!

VBO - массовое добавление и удаление ссылок на ноды.

6 апреля 2012 в 21:11

Есть два типа сущностей (нод) - Соревнование и Спортсмен.
У сущности Спортсмен есть поле ссылки на много нод типа Соревнование.
Имеем Спортсмен *-->* Соревнование

Задача 1:
Имеется большое множество Спортсменов, допустим больше 500.
Создается Соревнование. На него надо выбрать Спортсменов.
Делаю вьюв в виде вкладки, назначаю его на тип ноды "Соревнование".
Выбираю ноды типа Спортсмен, добавляю поле VBO и операцию "Modify entity values (views_bulk_operations_modify_action)"
Добавляю во вьюв контекстный фильтр по полю "Ссылка на Соревнование" у сущности Спортсмен, ставлю инверсию - чтобы не показывать в списке тех Спортсменов, которые уже имеют связь на это Соревнование.

Ограничить видимость вкладки Views по типу ноды

5 апреля 2012 в 14:25

Делаю View, который буду показывать в виде таба (вкладки) на странице ноды.
Прописал путь node/%/mytab (алиасы не понимает Sad )
Вкладка появляется на всех страницах.

Как сделать ограничение показа только на страницах конкретного типа ноды?

Как ограничить доступ к кастомным полям Display Suite?

5 апреля 2012 в 11:33

Создал кастомное поле Code field, добавил в отображение ноды.
Надо ограничить к этому полю доступ только для выделенных ролей, поскольку поле содержит ссылку на добавление нового материала.
Установил Field Permissions, но он работает только с стандартными полями и не признает полей Display Suite.
Какие варианты есть еще?

Наcледование таксономии в связях Node Reference с помощью Rules

2 апреля 2012 в 13:04

Описание задачи:
Есть нода типа "Соревнование", категорированная словарем "Дисциплина" с одним вариантом выбора термина.
На "Соревнование" ссылаются (поле "Ссылка на материал") ноды типа "Этап" (создаем несколько этапов со страницы соревнования, по ходу спасибо модулю Node Reference URL Widget за автодобавление связи)

Вопрос:
Как сделать так, чтобы при создании экземпляр нодетипа "Этап" автоматически наследовал в своё поле "Дисциплина" (тип "Ссылка на термин") значение из такого же поля "Дисциплина" ноды "Соревнование"?
(т.е. аналогично тому, как это происходит с ссылками на ноды в Node Reference URL Widget)

Решение:

[РЕШЕНО] Как вывести кнопку "Купить" в Display Suite?

27 февраля 2012 в 18:13

Drupal 6 & Ubercart 2
Кастомизирую вывод ноды (товара) с помощью Display Suite.
Поля кнопки добавления в корзину нету по умолчанию.

Захожу в админку DS и добавляю "Add new code field"
В токенах - тоже нет токена для добавления в корзину.

Как вывести кнопку "Купить" в Display Suite?

Развитие веб-архитектур (в путь с Drupal от LAMP к SOA)

7 августа 2008 в 14:15

Я собираю информацию для написания статьи по развитию веб-проектов и эволюции веб-архитектур.
В часности, о переходе централизованных LAMP-решений (конечно же не без CMS Drupal) на SOA.
Черновой вариант (предупреждаю - на украинском языке) находится и обновляется здесь:
http://www.drupal.org.ua/blog/nick-fedchik/2008/aug/07/36
В статье анализируется проблема роста LAMP-проекта и возможный эволюционный путь изменения архитектуры на SOA.
Благодарю всем кто прочитает эту статью и добавит свой отзыв (либо здесь, либо там), либо поделится ссылками на другие подобные материалы.

Какие аналоги ActiveSelect есть для 6?

4 июля 2008 в 15:16

Народ!

Какие есть аналоги для Drupal 6 функциональности, предлагаемой модулем ActiveSelect (который пока что есть только для 5).
Спасибо.

Логин и уникальный e-mail

11 апреля 2008 в 13:29

По умолчанию, в Drupal для регистрации нужно ввести уникальное имя (логин), пароль и уникальный адрес электронной почты.
Вопросы:
- зачем адрес электронной почты должен быть уникальным?
- можно ли отключить проверку уникальности электронной почты?
- какие примеры уязвимостей могут быть при использовании одного и того же адреса электронной почты и нескольких разных регистрационных имён?

Регистрация с проверкой в таблице другой БД? Сделали!

28 декабря 2007 в 15:28

Есть некая таблица с пользователями (ранее зарегистрировавшимися, но в совсем другой системе)

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

Буду рад помощи или подсказке подходящих модулей.

Импорт таблицы с удалённой БД

28 декабря 2007 в 14:51

Исходные: есть сайт на Дрюпал 5 + MySQL (5.0.45), есть ещё один удаленный хост с MySQL (тоже 5.0.45).
На удаленном хосте есть БД с таблицей, к которой надо часто обращаться.
Другие таблицы в той же базе данных - не нужны.
Вариант с репликацией БД MySQL - не рассматриваю пока что как трудоёмкий.

Есть ли в Дрюпале модуль, который мог бы периодически импортировать удалённую таблицу в локальную таблицу базы данных Дрюпала?

Есть ли альтернативные решения?

Title field label: * - как избавиться?

25 сентября 2007 в 11:46

Народ, поделитесь рецептом! Пожалуйста Smile

К стандартной процедуре регистрации в Drupal 5.2 мне надо добавить одно поле - ввод пин-кода
Создал тип nodeprofile для кастомизации регистрации, туда добавил поле типа decimal, указал диапазоны ввода
НО... В этом типе контента есть секция Submission form, в которой
Title field label: * - обязательное поле... которое мне совсем не нужно, но я никак не могу от него избавиться Sad
Body field label: я оставил просто пустым, понадеявшись на надпись
"To omit the body field for this content type, remove any text and leave this field blank."

Регистрация для разных ролей

11 сентября 2007 в 14:33

По мотивам недавних обсуждений
http://drupal.ru/node/7667
стал искать нечто более подходящее для регистрации различных ролей (типов пользователей)
ну и соответсвующего заполнения разных полей профайла

Нашёл такую штуковину
http://drupal.org/project/nf_registration_mod

Она требует pageroute ну и кучу разных других модулей - все скачал и установил
Registration Modifier 5.x-1.1 Allows the admin to setup different membership types. Each uses a unique pageroute.
Зависит от: Pageroute (включено), Node Profile (включено)

Вроде как бы оно...
Создал pageroute по страничке типа Nodeprofile в каждом, привязал их к Membership types

Workflow: пошаговое создание ноды

22 августа 2007 в 14:01

Установил модуль workflow
Ожидал от него решение следующей проблемы - с помощью CCK я создал ноду из нескольких полей. Теперь мне надо сделать последовательное заполнение полей - первые два-три поля, затем кнопка "Next", следующие два три поля и т.п. ну и кнопка "OK" когда всё готово.
Т.е. что-то типа обычного Wizard - пользователь пошагово с подсказками заполняет некоторую форму.

Халиф на час - как сделать?

16 августа 2007 в 13:55

Есть такая задача у меня - надо включать пользователей в определённую группу на некоторый период времени (задавать календарные даты от и до),
затем по истечении этого периода возвращать в исходную группу.

Например я иду в отпуск на месяц и назначаю аккаунт vasya_pupkin в группу Администраторы с такого-то по такой-то день и месяц.
А потом - подстраховка чтобы я не забыл, vasya_pupkin снова становится обычным юзером...

Новичок я в Дрю, и не нашел, есть ли такая готовая фича? или надо дохачивать какой-то модуль под такую вот нужду?