These are chat archives for dru-io/Drupal

7th
Nov 2016
boolboost
@boolboost
Nov 07 2016 01:31
@codev0 посмотрите парамметр delivery callback в hook menu.
Он как раз отвечает за рендер page calkback
Во пример стандартного рендера https://api.drupal.org/api/drupal/includes%21common.inc/function/drupal_deliver_html_page/7.x. вам нужно будет сделать что то попроще
print $page_callback_result;
И да тут уже правильно юзать print
boolboost
@boolboost
Nov 07 2016 01:36
Из особеностей если вам нужно что бы работал кэш для анонима в конце обязательно должна присутствовать drupal_page_footer();
Лучше её всегда писать, а разруливать парамметром cache в hook menu.
Airat
@codev0
Nov 07 2016 03:48
@boolboost спасибо.
KarmaBot
@KarmaBot
Nov 07 2016 03:48
Спасибо (+1) для @boolboost принято! Текущая карма +31.
Airat
@codev0
Nov 07 2016 03:49

ребят, а почему этот hook_menu отдает варнинг?

Warning: Invalid argument supplied for foreach() в функции menu_unserialize() (строка 408 в файле /Users/codev0/projects/mamp/spark.dev/includes/menu.inc).

https://gist.github.com/codev0/0abe0873fd1160b3afba6d34eae7f31c

boolboost
@boolboost
Nov 07 2016 03:57
А там же написанно почему
Airat
@codev0
Nov 07 2016 04:00
как я понял что аргмент не правильный передан в массиве $items, вот только как из
boolboost
@boolboost
Nov 07 2016 04:01
access arguments
Массив должен быть
А у вас там true
И ещё в друпал принято писать TRUE
'access callback' => TRUE,
Нужно в вашем случаи
А access arguments уберите
В последнем item
Airat
@codev0
Nov 07 2016 04:06
@boolboost спасибо
KarmaBot
@KarmaBot
Nov 07 2016 04:06
Спасибо (+1) для @boolboost принято! Текущая карма +32.
Airat
@codev0
Nov 07 2016 05:11
подскажите, почему Cannot read property 'behaviors' of undefined
(function ($, Drupal, window, document, undefined) {
    'use strict';

    Drupal.behaviors.slCalculator = {
        attach: function (context, settings) {
            var _this = this,
                context = $(context);
        },
        attachCalculator: function (elem, settings) {
            console.log(elem);
            console.log(settings);
        }
    }
})();
скрипт модуля вызвается после misc/drupal.js
boolboost
@boolboost
Nov 07 2016 05:16
Как его подключал?
Airat
@codev0
Nov 07 2016 05:17

/**
 * Implements hook_page_build().
 */
function sl_kz_calc_page_build(&$page)
{
    drupal_add_js(drupal_get_path('module', 'sl_kz_calc') . '/script.js', array('type' => 'file', 'scope' => 'header'));
}
Airat
@codev0
Nov 07 2016 05:34
интересно выходит, в консоли Drupal доступна.
а когда логаю в модуле, она undefined
boolboost
@boolboost
Nov 07 2016 05:35
Сдаётся мне хук не удачно выбрали
А зачем вам score
В общем я бы вообще без опций подключал
А так чесно нз вроже всё норм
boolboost
@boolboost
Nov 07 2016 05:46
Я обычно в hook init пишу если нужно везде подключить
Airat
@codev0
Nov 07 2016 05:51
аналогично :(
Airat
@codev0
Nov 07 2016 05:58
я так и не понял что было, скопировал JS из другого модуля, все завелось
@boolboost спасибо
KarmaBot
@KarmaBot
Nov 07 2016 05:58
Спасибо (+1) для @boolboost принято! Текущая карма +33.
Airat
@codev0
Nov 07 2016 08:04
подскажите, как сделать результатом сабмита формы, вывод другой формы с подстановкой значения из предыдущей формы.
делаю калькулятор, после его подсчета надо отправить заявку с результатом калькулятора
и как можно обернуть 2 поля в элемент в массиве $form?
типа чтобы 2 textfield были в одно див с классом clearfix
bumble
@awd-studio
Nov 07 2016 18:08
Значения из формы находятся в массиве $form_state['values']
Airat
@codev0
Nov 07 2016 18:19
Да
<div>
$form['city_from'] = array();
$form['city_to'] = array();
</div>
bumble
@awd-studio
Nov 07 2016 18:47

в одном блоке можно так:

$form['wrapper'] = array(
  '#type'        => 'fieldset',
  '#title'       => t('Wrapper title'),
  '#collapsible' => FALSE,
  '#attributes'  => array(
    'class' => array('clearfix'),
  ),
  '#tree'        => TRUE,
);
$form['wrapper']['city_from'] = array();
$form['wrapper']['city_to'] = array();

а можно так:

$form['city_from'] = array(
  '#prefix' => '<div class="clearfix">',
);
$form['city_to'] = array(
  '#suffix' => '</div>',
);
Airat
@codev0
Nov 07 2016 18:59
@awd-studio спасибо!