sitdikov: Блог

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

Drupal 7.24 - Access denied на admin_menu/flush_cache, batch, смену темы и везде где есть token

9 декабря 2013 в 11:05

Собственно проблема следующая:
Не удается сменить тему, выполнить flush caches all и любую другую операцию, где есть get-параметр token. Он гененируется в common.inc, а вот где идет его проверка - понять не могу.
По чейнджлогу вижу, что были изменения как раз в валидации токена. Но в чем именно проблема - не разобрался.
Может кто поможет.

Сайт для тех, кому нужен фотограф

1 июня 2012 в 17:53

В общем на суд ваш выставляю проект, который был переписан с собственного движка на 7ой Drupal.

Собственно линк: http://fotograd.org/

Особенности:
Используемые модули i18n_*, date_*, boost, ajax_comments, logintogobban.
Остальное все реализуется на своих модулях.
Почему отказался от views - в этом случае пришлось бы использовать domain taxonomy (так как все города в таксономиях). В принципе конечно можно, но тогда дефолтный город надо было бы все-равно хуками переопределять.

Все города хранятся в таксономии. Склонение - добавлением поля.

Из @TODO что было бы не только мне интересно:
- при регистрации пользователю в autocomplete показываются города на английском, буду дотачивать чтобы использовался родной язык.

AHAH Form - при замене перестает работать ahah

7 марта 2012 в 12:59

Темизация формы

function vkaz_theme()
{
        return array(
                'vkaz_get_news_form' => array(
                        'arguments' => array('form' => NULL)
                        ),
        );
}

hook_menu

function vkaz_menu()
{
        $items['block_issue_now/%'] = array(
            'page callback' => 'vkaz_get_news',
            'page arguments' => array(1),
            'access callback' => true,
            'type' => MENU_CALLBACK,
        );
       
        return $items;
}

Сама ahah-функция

function vkaz_get_news($date = NULL)
{
        return drupal_get_form('vkaz_get_news_form', $date);
}
function vkaz_get_news_form($form, $date = null)
{
       
        $ajax = 0;
        if ($date) $ajax = 1;
       
        drupal_add_css(drupal_get_path('module', 'vkaz') .'/vkaz.css');
       

Ajax Form в Drupal7

2 марта 2012 в 14:09

По мотивам [#61043]Как проще всего реализовать аякс с выдачей json[/#]" и [#59035]Установка фокуса на элемент формы[/#]*.

В итоге, на память себе и может кому понадобится:

В hook_menu:

$items['path_to_page/%'] = array(
        'type' => MENU_CALLBACK,
        'page callback' => 'my_callback',
        'delivery callback' => 'ajax_deliver',
        'page arguments' => array(1),
        'access arguments' => true,
);

Непосредственно callback

function my_callback($fid)
{
        $commands[] = ajax_command_replace('#ID_'.$fid, 'New value text');
        $page = array('#type' => 'ajax', '#commands' => $commands);
# если в форме у нас #type = submit
        ajax_deliver($page);
# если у нас #type = link, то return $page;
}

CKEditor - модуль Шредингера (работает, но не отображает текст в редактировании)

29 февраля 2012 в 12:32

Все работает прекрасно, но когда заходим в редактирование - в области editor'a нет текста, хотя textarea скрытая содержит его.

P.S. сорри за ужасную картинку

Не отображает некоторые профайлы - страница не существует

21 июля 2011 в 14:20

Использую модуль loginza для авторизации на сайте.
В качестве back_url - ссылка на скрипт, который автоматически регистрирует пользователя и автологинит его.
Всё работает: профайл заводится, роли присваиваются, можно комментировать.
Но! По ссылке: sitename.ru/users/login - не отображает профиль. По /user/uid - отображает нормально.

Не могу понять в чем дело.

Как убрать кеширования для блока?

7 июля 2011 в 15:34

В общем, для анонимных пользователей где-то включен кеш (~3-5 минут).
Как его можно отключить? Для конкретного блока?
Очень нужна ваша помощь.

Большое спасибо.