Drupal 8 notes

  1. urls
    $current_url = \Drupal\Core\Url::fromRoute('<current>', array(), array("absolute" => TRUE))->toString();  // get full url

     

  2. Variables
    Drupal\Core\Site\Settings::get('some_setting_here'); // Get a setting from settings.php

     

sass watch recursive

The problem comes when you want your sass to observe imported files.

For instance in your main scss file you have:

// page styles
@import 'page';

// content styles
@import 'content';

so the task is to force sass to observe changes in imported files

Here how i managed it to work properly:

Resizing Vagrant disk size

https://github.com/hashicorp/vagrant/issues/2339#issuecomment-112402297

cd ~/VirtualBox VMs/...your_virtualbox
VBoxManage clonehd box-disk1.vmdk tmp-disk.vdi --format vdi
VBoxManage modifyhd tmp-disk.vdi --resize 61440
VBoxManage clonehd tmp-disk.vdi resized-disk.vmdk --format vmdk
rm tmp-disk.vdi box-disk1.vmdk
mv resized-disk.vmdk box-disk1.vmdk

При запуске: "vagrant up" поругается на измененный UUID диска. Копируем его. Присваиваем новому диску.

Drupal load popap window or open link

Задача.

Открывать ссылку в всплывающем окне при высоте страницы более 800px или переходить по ссылке в противном случае. При переходе добавлять к странице действующую кнопку "назад".

В примере используются стили bootstrap.

  1. устанавливаем colorbox
  2. cоздаем custom модуль

В файле our_module.module

name = our_module_name 
core = 7.x 
description = "some description" 
scripts[] = our_module.js

В файле our_module.module

Stomp.py Reconnect to activemq after disconnect

Менеджер очередей activemq, брокер stomp.py

Была задача создать клиента, спраляющегося с дисконектами.

Пример описанный тут: https://jasonrbriggs.github.io/stomp.py/api.html#dealing-with-disconnects , не сказать, что рабочий.

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

В итоге получилось создать работающий вариант:

Неправильное отображение времени PHP

Сервер отображал правильно время, при этот PHP выдавал время на час вперед.

Решение нашлося тут

Если PHP собран без опции --with-system-tzdata то нужен модуль timezonedb

sudo apt-get update 
sudo apt-get install php-pear php5-dev 
sudo pecl install timezonedb
sudo echo "extension=timezonedb.so" > /etc/php5/conf.d/timezonedb.ini

Может понадобиться самостоятельно включить расширение

Мультисайтинг c ServerAlias

Надо было создать 2 домена работающих на одном друпале (базы разные), у каждого есть синоним.

Т.е.

foo1.example.com (foo2.example.com, ... )

doo1.example.com (doo2.example.com, ... )

По дефолту пусть у нас будет  foo1.example.com

Для doo1.example.com создаем папку sites/doo1.example.com. Создаем в ней каталог files, копируем в нее файл settings.php, меняем в нем настройки доступа к бд и т.д.

Для его синонимов (doo2.example.com, ... ) создаем жесткие ссылки, указывающие на doo1.example.com

Страницы