These are chat archives for dru-io/Drupal

23rd
Feb 2016
Alexander Dubovskoy
@adubovskoy
Feb 23 2016 06:51
в wadmiraal удобно что не надо ручками ставить phpmyadmin и drupal console. а у тебя зато xdebug.
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 07:11
@fortis добрый день
KarmaBot
@KarmaBot
Feb 23 2016 07:11
@AlexanderPoddubsky, привет, как настроение?
Sergey Bril
@brilsergei
Feb 23 2016 07:59
всем привет. может кто помнит, можно ли в друпал 7 в EntityFieldQuery использовать OR или AND для условий, добавленный через propertyCondition()?
KarmaBot
@KarmaBot
Feb 23 2016 07:59
@brilsergei, и тебе привет ;)
Alan Bondarchuk
@fortis
Feb 23 2016 08:02
@adubovskoy drupal console тож приделал еще не закинул коммитом, надо свое лишнее подчистить оттуда, а пхпмуадпмин я как-то и не пользуюсь имхо mysql workbench или navicat лучш, но можно прикрутить
@AlexandrPoddubsky добрый)
@brilsergei нет нельзя, разве что отнаследоваться от класса EntityFieldQuery и там внутри реализовать
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:04
@fortis хотел тут атрибут в js в аттаче бахнуть. как решается такой вопрос?
Sergey Bril
@brilsergei
Feb 23 2016 08:05
@fortis спс
Alan Bondarchuk
@fortis
Feb 23 2016 08:05
@AlexandrPoddubsky так не понятно что нужно)
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:05
$page['header']['#attached']['js'] = array(
              'data' => '//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js',
              'type' => 'external',
              //'async' => TRUE,
              '#attributes'=>array('async' => 'async'),
       );
не пашет так
атрибут не добавляется
Alan Bondarchuk
@fortis
Feb 23 2016 08:06
а, тут не сделаешь
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:06
а где?
Alan Bondarchuk
@fortis
Feb 23 2016 08:06
нужно в hook_js_alter нужному элементу поставить async = true
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:07
if (strpos($name, 'ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js') !== FALSE) {
      $values['async'] = TRUE;
тоже не хотит
Alan Bondarchuk
@fortis
Feb 23 2016 08:08
цикл покажи)
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:09
function twiks_js_alter(&$javascript) {
  foreach ($javascript as $name => &$values) {


    // Skip if not external.
    if ($values['type'] != 'external') {
      continue;
    }
    if (strpos($name, 'ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js') !== FALSE) {
      $values['async'] = TRUE;
      break;
    }
  }
}
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:14
Alan Bondarchuk
@fortis
Feb 23 2016 08:18
странно, advagg так и делает
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:19
может что дополнительно еще делает?
Alan Bondarchuk
@fortis
Feb 23 2016 08:22
да нет вроде
можно попробовать альтерить тег
ну и если уж совсем никак, то добавлять свой скрипт через drupal_add_js setting и в js’ке своей делать для него такое
(function() {
  var s = document.createElement('script');
  s.type = 'text/javascript';
  s.async = true;
  s.src = script.data;
  var x = document.getElementsByTagName('script')[0];
  x.parentNode.insertBefore(s, x);
})();
но вообще jquery через async кажется плохая идея)
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:25
для внешнего файла да наверное плохая идея
Alan Bondarchuk
@fortis
Feb 23 2016 08:25
requires_jquery = true может и не дает поэтому
но у тебя от jquery то другие скрипты зависят
которые синхронно подключаются
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 08:26
угу. попробую это. кстати да. вспомнил что как то в капче решили этот вопрос. забыл совсем
@fortis спасб
alexd73
@alexd73
Feb 23 2016 16:21

@KarmaBot понимает спасб? )

@fortis спасб

Alan Bondarchuk
@fortis
Feb 23 2016 16:33
Карма
KarmaBot
@KarmaBot
Feb 23 2016 16:33
@fortis, Ваша карма +11. Вы благодарили 3 раз.
- Достижения: "Находчивый"
- Профиль fortis на laravel.su
Alan Bondarchuk
@fortis
Feb 23 2016 16:34
вроде да)
alexd73
@alexd73
Feb 23 2016 16:35
@fortis по поводу докера, поясни плз. момент раскатывания на локальной машине понятен. Но далее, есть у клиента на ispmanager хостинг, как деплой будет присходить туда? На сервере должен стоять docker-deamon?
Alan Bondarchuk
@fortis
Feb 23 2016 16:48
в продакшене не пробовал
да и конфиг там строго для локальной разработки
там от рута запускаются все процессы это только для разработки
Gor Martsen
@Gormartsen
Feb 23 2016 17:00
@alexd73 только для VPS
где ты можешь поставить докера
и уже туда деплоить
ну или выделенный сервер
соответственно смирится с потерями производительности
barel metal да еще который тюнится и администрируется спецами - всегда будет быстрее VPS/VDS решений
Alan Bondarchuk
@fortis
Feb 23 2016 17:06
ну и я не видел образов докера для продакшена
вообще используют его так? вродь не безопасно
Gor Martsen
@Gormartsen
Feb 23 2016 17:17
ну типа да
в этом же и "плюс"
мол идентичность работы что локально что на сервере
alexd73
@alexd73
Feb 23 2016 17:21
меня эта статья вообще запутала )) https://habrahabr.ru/post/277699/
типа даже ссх и гита по бороде..
Gor Martsen
@Gormartsen
Feb 23 2016 17:22
@alexd73 смысл в докере только если ты кодишь проект, где готовы выкидывать на выделенный сервер или вдс и есть люди что будут его потимизировать, обновлять и сопровождать
имею ввиду сервер сам
впрочем mysql, apache или nginx да и сам php требует оптимизации и рекомендации с stackoverflow - это не решение. а так, баловство.
если же проект будет выкладываться на обычный хостинг, то все эти докер и прочее.. чисто для себя поиграться на создание своей “девел” структуры
alexd73
@alexd73
Feb 23 2016 17:26
Вот я и не понимаю, оно мне надо? )
Разве что, чтобы локально апач не крутить постоянно.. Если один фиг руками переносить на боевой хостинг.
Gor Martsen
@Gormartsen
Feb 23 2016 17:32
@alexd73 ты гитхаб репо под клиента сайт делаешь?
alexd73
@alexd73
Feb 23 2016 17:32
@Gormartsen не всегда
Gor Martsen
@Gormartsen
Feb 23 2016 17:32
ну и отвечая на твой вопрос - нафиг? поставь себе вдску если под виндой сидишь vbox - туда LAMP и тести наздоровье пока кодишь
и не ипи себе мозг докерами. вагрант уже отстой типа. еще год и докер станет таким же
@alexd73 глянь как я сделал с drupal.ru
у нас каждый push в master и код улетает на сервер сам
при чем не важно какой хостинг. чисто деплой кода
в таком варианте быстрый баг можно пофиксить даже прямо в браузере
без всяких ssh заливок и тп
а лог улеталовок тут: http://git.lc/DrupalRu/drupal.ru?apcount=20
вот пример
Screen Shot 2016-02-23 at 12.36.27 PM.png
Gor Martsen
@Gormartsen
Feb 23 2016 17:39
вот интересный деплоя лог, когда сфинкс деплоили:
это с последнего апдейта
Alan Bondarchuk
@fortis
Feb 23 2016 17:39
ну не только в этом смысл
если ещё ты не один то лучше когда все работают в одном окружении
Gor Martsen
@Gormartsen
Feb 23 2016 17:40
@fortis командная разработка да. чтоб у всех одинаково
Alan Bondarchuk
@fortis
Feb 23 2016 17:40
и не обязательно на продакшене иметь докер, можно просто ведь настроить те же версии софта
Gor Martsen
@Gormartsen
Feb 23 2016 17:40
только там, где командная разработка обычно у клиента есть деньги на свой сервер - так что можно и докер в продакшн
Alan Bondarchuk
@fortis
Feb 23 2016 17:41
и чаще это не так уж важно чтобы совпадал по версиям строго
Gor Martsen
@Gormartsen
Feb 23 2016 17:42
в веб разработке - вадно только чтоб php версии совпадали
иначе могут быть приколы
а так - абы был apache + mod_php или fpm с nginx + mysql
ну или если нужен postgre то и кодить на нем надо
вообщем плюсы докера есть только когда начинается работа от 2+
до этого момента, чисто что б технологию поизучать
alexd73
@alexd73
Feb 23 2016 17:49
@Gormartsen гранд мерси
KarmaBot
@KarmaBot
Feb 23 2016 17:49
Спасибо (+1) для @Gormartsen принято! Текущая карма +45.
alexd73
@alexd73
Feb 23 2016 17:49
Столько всего чудного и неизвестного )
Gor Martsen
@Gormartsen
Feb 23 2016 17:50
@alexd73 de nada
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 22:02
@fortis доброй ночи
drupal_add_js(url('https://www.google.com/api.js'), array(  'async' => TRUE, 'type' => 'external'));
вот так конечно пашет. но в аттач не получается переделать
хотя иногда получается что атрибут прописался нормально при использовании в аттач но урл берет из другого места. например вместо урла пишет слово type / сдается мне какая то последовательность в масивах должна быть. пока увы не разобрался. сижу смотрю как рендерится
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 22:13
пашет блин
@fortis но вот доп атрибуты всунуть не получилось. ну хоть что то уже
  $page['header']['#attached']['js'] = array(
        '//www.google.com/recaptcha/aphhhhhhi.js' => array(
            //'#attributes' => array('data-main' => 'main'),
            'type' => 'external',
            'async' => TRUE,
       ),
      );
<script async="async" src="//www.google.com/recaptcha/aphhhhhhi.js"></script>
async="async" - так вообще правильно? в гугле пишется просто async
@fortis надо было раньше спросить, у меня бывает так, что не пашет не пашет, спросишь человека. он не ответил. а у тебя все получилось
Alan Bondarchuk
@fortis
Feb 23 2016 22:19
@AlexandrPoddubsky async=«true» вроде обычно
но думаю не важно, главное что аттрибут задан
а в каком хуке вызывается drupal add js ?
вернее где аттачед делаешь?
а таки заработало с #attached ?
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 22:21
в пейдж альтер делаю
но заметил одну вещь. альтер и билд одинаково пашут
хотел доп атрибуты всунуть. но подумал что может с внешним и не будет добавляться.
заработало когда доп массив прописал
аттач удобен все же
Alan Bondarchuk
@fortis
Feb 23 2016 22:35
а блин )) ну обычно делают так $page['header']['#attached']['js'][] = array(….
проще читать
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 22:36
[] не нужен в данном случае же
плюс не пашет
с []
Alexandr.Poddubsky
@AlexandrPoddubsky
Feb 23 2016 22:42
$page['header']['#attached']['js'][] = array(
        'data' => '//pagead2.example.com/scripts.js',
        'type' => 'external',
        'async' => TRUE,
        );
вот так пашет
остановлюсь на таком варианте с []