divined: Блог

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

AHAH и роли пользователей

7 сентября 2011 в 18:00

Доброго времени суток.

Кто может просветить меня в одном вопросе?

Имеется свой модуль, в котором создана форма. На все элементы формы развешаны AHAH обработчики.
Под админом все AHAH запросы выполняются, под анонимом нет.

(Поведение как при отсутствующем обработчике на событие)
Соответственно ни ошибок, ничего..

Я подозреваю что дела в ролях, но не могу найти подобной роли.

Банально тормозит друпал, но не банальный способ +)

6 сентября 2011 в 10:27

При создании ноды тормозят веб-элементы:

Checkbox при нажатии активируется сек 10-15, т.е. я вижу все этапы: сначала его поле становится серым секунд на 5-7, потом медленно появляется галочка сек 5-7 Smile

При установки мышкой курсора в Input происходит задержка сек 5-6, во время которой вся веб-страница замерает, и соответственно ничего нельзя печатать.

Диапазон аргументов

17 августа 2011 в 14:07

Доброго времени суток. Завис на одном функционале, помогите кто сталкивался.

Создаю View который бы смог разобрать url и вывести необходимые мне ноды.

Например путь: /view_page/arg1/arg2/arg3/arg4 (/result/flats/omsk/50000/150000)

Соответственно вьюха должна вывести ноды в которых

arg1 = flats
arg2 = omsk
arg3 >= 50000
arg4 <= 150000

С первыми двумя аргументами проблем нет, а как быть с диапазоном, View по умолчанию может только приравнивать аргументы, а сравнивать больше/меньше не умеет.

[Решено] Drupal и потребление памяти

16 августа 2011 в 10:51

Вот код:

<?php
include_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
ini_set('memory_limit''256M');
      
$result db_query("SELECT n.nid FROM {node} n WHERE n.nid >%d LIMIT 0,5"variable_get('current_updated_nid2'0));
while(
$nid db_fetch_object($result)) {
  
$node node_load($nid->nid);
  
node_save($node);
  
variable_set('current_updated_nid2'$node->nid);

?>

Который перебирает 5 нод, загружает их и просто пересохраняет, чтобы в базе обновились значения вычисляемых полей.
Но данный скрипт вылетает с ошибкой:
Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 35 bytes) in /sites/all/modules/i18n/i18nsync/i18nsync.module on line 396

перезапусал апач, перезагружал сервер, увеличивал память до 1Gb - ничего не помогает.

Tinymce перестал работать

30 июня 2011 в 10:38

И снова я вас приветствую.

Очередной глюк/проблема в drupal:

Пришел утром на работу, и как обычно сел за добавление материалов на сайт, но не тут-то было,
пока меня не было что-то произошло:

TinyMCE напрочь отказывается конвертировать текст в HTML,

ввожу:
1. ааа
2. ббб
3. ввв

Сохраняю, а он мне выдает: 1. ааа 2. ббб 3. ввв

Ни тегов, ничего, просто текст.

[Решено] Сохранение состояний форм и выбранных значений

22 июня 2011 в 13:33

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

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

[Не Решено] AHAH + ID элемента на форме

21 июня 2011 в 13:23

Ситуация следующая, взбрело мне (или не мне) менять кнопку сабмит (к которой прилеплен свой ahah) на форме по средством ahah, все хорошо меняется, и даже после изменения, ahah событие встает на место, но только в том случае если это единственный "submit" на странице.
Если присутствует другой, то ahah событие не прикрепляется к кнопке после изменения.

Немного покурил и понял, что изначально моя кнопка имеет ID="EDIT-SUBMIT-1", а вторая ID="EDIT-SUBMIT",
после того как я меняю свою кнопку на форме, она получает ID="EDIT-SUBMIT" вместо изначального.

Вопрос:

<?php
    $form
['submit']=array(
        
'#type'=>'submit',
        
'#value'=>'Показать:  '.rkreal_search1($t$r$c$p1$p20),
        
'#ahah' => array(
             
'path'=>'rkquicksearchres/2',
             
'wrapper'=>'rksearch-res-wrapper',
        ),

        

//есть в form api нечто подобное, чтобы я явно указал с каким id появляться кнопке?
        
'#id' => 'edit-submit-1'
     
);
?>

[Не Решено] Таблица Variable при мультисайтинге

29 марта 2011 в 10:20

Приветствую всех еще раз,

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

Другие статьи, где говорится, сделайте так, получите гору ошибок, но не обращайте внимание - ведут по неправильному пути, который в итоге заканчивается тупиком.

И вот в этом тупике у меня созрел вопрос: Что делать с таблицами variable у каждого сайта в мультисайтинге?

Как понимают большинство, в этих таблицах хранятся все настройки для сайта: модулей, тем и др.
Так вот, после связки в мультисайтинг, эти таблицы одинаковые, но после непродолжительной работы, например, добавления новых модулей и тем, эти таблицы имеют уже очень серьезные отличия, и некоторые из этих отличий ведут к ошибкам друпала.

Основное такое отличие на сегодняшний момент я нашел в строке "content_schema_version"

Ее обязательно синхронизировать между двумя таблицами, иначе гора ошибок у модуля cck

И нигде про это не пишут, создается ощущение что наши специалисты просто вообще ничего не делают на мультисайтинге.
Поставили, настроили, потыкали странички - все работает. А дальше никто ничего не проверял.

ВОПРОС: Что еще надо учитывать в этих таблицах, потому-что отличия по минимуму в 50+ строках между ними.

BLOB поля, как с ними работать?

22 марта 2011 в 10:40

Есть такой модуль i18n, который в БД создает 2 таблицы locales_source и locales_target, в которых хранятся "оригинальные строки" и переводы соответственно.
Но эти строки хранятся в BLOB полях, вопрос в том как с ними работать?
При обыкновенно выборе этого поля выводится только идентификатор BLOB сами данные не возвращаются!

Как записывать и читать из BLOB полей?

[Не Решено] Conditional fields и стандартные cck поля

15 марта 2011 в 18:14

Доброго времени суток, возник такой вопросик, надеюсь опытные специалисты подскажут решение Smile

Как сделать зависимость полей (с упомянутым в названии модулем или любым другим) для стандартных типов cck полей таких как: Язык, Местоположение(особенно)и др.

Мне нужно отображать модуль Locations в зависимости от выбранного cck поля. А у этого поля нет настроек и в зависимые поля его определить нельзя.

[Не Решено] Node hierarchy, вставка вида дочерних нод

7 марта 2011 в 11:41

Модуль Node Hierarchy.

Как видно из скрина: view дочерних нод вставляется в середину контента.
Ни один из модулей изменения порядка следования полей в ноде, не ловит этот view, так как он не является cck полем.

Кто-нибудь уже сталкивался с этой проблемой. Если нет, хотя-бы посоветуйте куда копать.

Интересная задача

22 февраля 2011 в 12:40

Попробую описать задачу, итак:

Каталог товаров:

Товар 1 (Термин таксономии 1)
- подчиненный товар 1 (Термин таксономии 1,2)
- подчиненный товар 2 (Термин таксономии 1,2)
Товар 2 (Термин таксономии 3)
- подчиненный товар 3 (Термин таксономии 3,4)
- подчиненный товар 4 (Термин таксономии 3,4)
Товар 3 (Термин таксономии 3,4)

Таксономия иерархичная, термин 2 принадлежит термину 1 и так далее.

Товар выступает как родительский элемент для подчиненного товара.
Подчиненный товар может быть и самостоятельной единицей.

Задача:

Создание товара:
Имя, тело и другие поля ckk.
И тут же создаем подчиненные товары динамически добавляя их к товару.

Как лучше реализовать?

1 Вариант (Модуль Node Hierarchy + Node edit):
Товар - первый тип материала
Подчиненный товар - второй тип материала
Проблемы:
1. Заменить стандартное создание материала View-кой.
2. При создании подчиненной ноды внутри ноды (Node edit) нельзя добавить выбор термина таксономии,
подчиненный товар может содержать только Заголовок и Тело.

2 Вариант (Подчиненный товар это группа cck полей)
Проблема:
1. Динамическое добавление любого количества групп к ноде.
По типу как добавляются изображения, имеется кнопка "Добавить еще", по нажатию на который появляется новая
группа полей ckk.

Прошу прокомментировать мои представления решения этой проблемы, или подсказать совершенной иной способ решения.

[Не Решено] Темизация page-node-edit.tpl.php

17 февраля 2011 в 15:19

Помогите разобраться.

Нужно затемезировать страницу page-node-edit.tpl.php
Закомментировал $content.

Теперь как вывести интересующие меня поля?
<?php print $node->title ?>
Приводит к выводу поля, а нужно выводить элемент ввода!

[Не Решено] Самопроизвольное отключение тем

16 февраля 2011 в 19:58

Приветствую,

Установил тему fusion, модуль skinr и тему Acquia Marina, которую переписал под себя.

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

Отключается любая тема, которая стоит по умолчанию.

Помогите люди добрые!

[Не Решено] Язык по умолчанию

9 февраля 2011 в 13:38

Помогите разобраться, по идее тривиальный вопрос, но никак не решается.

Мультиязычный сайт.
Язык по умолчанию - Английский.
Второй язык - русский.

Определение языка - префикс пути.

Я админ, захожу на главную страницу с русского ПК с русским ИП, показывается английская версия сайта.
Меняю язык на русский, перекидывает на путь с префиксом и показывает русскую версию.
Ставлю в настройках профиля Русский, все равно показывается английская версия при первом заходе.

Определение языка - префикс пути с определением языка.

Я админ, захожу на главную страницу с русского ПК с русским ИП, показывается русская версия сайта (без префикса в адресе!!!)
Меняю язык на Английский, (модуль смены языка), ничего не происходит, все равно остается русский.
Ставлю в настройках профиля английский, показывает английскую версию (без префикса в адресе!!!)
Этот тип терпеть не могут поисковики, разный контент на одних адресах для разных регионов недопустим.

Вопрос: Как сделать чтобы язык определялся правильно и показывалась страница с префиксом?
Сменить на русский по умолчанию прошу не предлагать, очень много будет ошибок!

[Решено] Разное содержимое для разных групп пользователей зависимое от CCK

7 февраля 2011 в 13:04

Здравствуйте,
помогите советом, никак не могу реализовать одну функцию.

Имеется нода, во время создания которой администратором предусмотрена галочка "скрывать информацию".
Требуется запретить вывод части информации для анонимных и зарегистрированных пользователей тех материалов, у которых стоит эта галочка, а вместо закрытой информации показывать другую, например вместо "body" вывести в этом-же поле данные из определенного cck поля.

Есть "View", который показывает список нод, например тут http://rkreal.biz/ru/business/car_servises_and_car_washes.
Требуется вместо изображения из ноды, у которой стоит галочка "скрывать информацию", показывать определенное изображение.

Никак не могу построить логику.
Во "View", пробовал вместо вывода конкретного изображения использовать "PHP Customfield", но там не понятно как работать с ролями.
Пробовал реврайтить вывод поля "изображение", но там можно использовать только HTML, PHP там не предусмотрен.
Если использовать роли, то там нет возможности учитывать галочку, закрытый ли это объект.

В ноде тоже не все просто, если закрыть весь $content и сделать вывод своих полей, то это очень много переписывать.

Есть какие-нибудь модули отображения закрытой информации на основе ролей?

[Решено]Pathauto i18n и редактирование материала

11 января 2011 в 13:54

Доброго времени суток.
У меня сложилось такое впечатление, что на данном форуме не водятся специалисты.
Или просто не принято помогать =(. Еще ни на один из моих вопросов не ответили =(.
Но попытаю судьбу еще раз:

У меня проблема с модулем Pathauto в связке с i18n.

Например, создаю я материал на русском языке (пусть номер ноды 133), Pathauto создает путь для него node->title.

синоним1 node/133 Русский

Добавляю перевод для этой ноды (пусть номер 134), Pathauto создает путь для него node->title и меняет путь для русской ноды на [en]node->title. Все хорошо все работает.

синоним2 node/133 Русский
синоним2 node/134 Английский

Теперь редактируем (например англоязычную ноду 134), Pathauto меняет алиас для 133 ноды, а не для 134.
А вернее алиас для 134 записывает как алиас для 133:

синоним2 node/133 Русский
синоним2 node/133 Русский

Теперь для английской ноды нет алиаса. Редактируем русскую ноду. Теперь Pathauto ДОБАВЛЯЕТ алиас для английской ноды:

синоним2 node/133 Русский
синоним2 node/133 Русский
синоним2 node/134 Английский

Опять все работает.

Проблема в создании неограниченных копий алиасов при каждом редактировании ноды.
Почему Pathauto при редактировании ноды на одном языке меняет алиас ноды другого языка.

File attachments

10 января 2011 в 15:29

Имеем мультиязычный сайт.

Создаем материал на русском языке, добавляем файлы к материалу.
Сохраняем. Все в порядке.

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

Словарь таксономии

20 декабря 2010 в 13:07

Проблема с отображением словаря таксономии в админке:
по адресу admin/content/taxonomy/{номер словаря} вижу следующее:

[Решено] Перевод полей Title и Breadcrumb во View

14 декабря 2010 в 11:27

На рисунке в красных квадратах выделены поля, которые принимают значения из аргументов View.
На выходе эти поля не проходят через перевод.

Подскажите где найти в коде модуля Views эти поля и добавить функцию перевода.

i18n и ссылки на материал (термины таксономии)

13 декабря 2010 в 21:14

Имеется View, которому аргументами передаются термины таксономии 3 штуки

Например:
http://site/business/autoservices/region/city
http://site/business/region
http://site/business/region/city
http://site/investment/appartments/region/city
и т.д. по аналогии

где,
business и investment - начальные рубрикаторы, являющиеся терминами таксономии
autoservices и appartments - дочерние рубрикаторы от вышестоящих соответственно
region и city - тоже термины таксономии

View настроен и обрабатывает все пути правильно (т.е. любой термин таксономии является пользовательским фильтром, кроме
главных рубрикаторов, которые забиты вручную)
Необходимо вывести тизеры материалов, где должен быть рисунок, заголовок, "autoservice" - т.е. дочерний рубрикатор.,
и блок расположения объекта:
т.к. пути у меня специфические, написал для этого в php custom field следующее:

<?php
$sql 
"SELECT tn.tid AS tid, t.name AS name FROM {term_data} t LEFT JOIN {term_node} tn ON t.tid = tn.tid INNER JOIN {node} n ON tn.nid = n.nid WHERE n.nid =%d ORDER BY tn.tid ";
  
$result db_query($sql$data->nid);
  
$terms = array(); 
  
$i 0
  while (
$term db_fetch_object($result))
    {
      
$terms[$i] = $term->name;
      
$i++;
    }
  print (
"<a href='/business/" .strtolower($terms[0]). "/" .strtolower($terms[1]). "'>" .t($terms[1]). "</a>"); 
  if (
$terms[2]!="")
    {
      print (
" ");
      print (
"<a href='/business/" .strtolower($terms[0]). "/" .strtolower($terms[1]). "/" .strtolower($terms[2]). "'>"
            
.t($terms[2]). "</a>"); 
    }
?>