Submitted by ygerasimov on Wed, 01/21/2015 - 11:28
When we have multiple webheads behind the firewall we need to make sure that each of webhead pretend to be main host. So lets say our main website is www.example.com, all our webheads are webheadX.example.com. With following vhost config we can make sure that when request is recieved by webheadX.example.com it is treated same way as it came to www.example.com
Submitted by ygerasimov on Mon, 01/12/2015 - 14:51
Logstash is a great tool to centralize logs in your environment. For example we have several drupal webheads that write logs into syslog. It would be really nice to see those logs somewhere centrally to find out about your system's health status and debug potential problems.
In this article I would like to show how easy to start using logstash for local development.
Submitted by ygerasimov on Thu, 01/08/2015 - 10:19
In this article we will show small code snippet that helps you to control very granular how to render submit buttons on your forms.
Submitted by ygerasimov on Mon, 12/22/2014 - 13:05
Panels standard renderer has very flexible undocumented feature of controlling the sequence of panels being rendered.
By default you have possibility to use 'render first' and 'render last' in your content type definition so you already can control what pane should be rendered for example last. Undocumented part is more interesting that is hook_panels_panes_prepared_alter() that runs after all panes were set up. So you can alter the array of panes in which way you can control sequence of panes being rendered. This feature is super handy when you have dependent panes.
Submitted by ygerasimov on Mon, 12/22/2014 - 10:00
Because our IT sphere develops so fast it is so easy to wake up one morning and understand that your knowledge about things got outdated. I have personally decided to restart my habit of reading technical books. Lately I have completed book about Varnish (https://www.varnish-software.com/static/book/) that I highly recommend to everyone dealing with web development.
Submitted by ygerasimov on Tue, 11/04/2014 - 10:50
When we have a panels page in features and we want to move it to database we need to run
Submitted by ygerasimov on Fri, 10/10/2014 - 10:22
I knew for pretty long time existence of Chrome custom search engines but just now got a huge benefit of it.
The idea is that you can define custom keyword to do a "search" in some website. What you do is you define a keyword "engine" and then when you type "engine keyword" browser will redirect you to custom specified url with substituting %s with your keyword.
Lets see examples.
Submitted by ygerasimov on Mon, 08/11/2014 - 08:56
Submitted by ygerasimov on Fri, 07/25/2014 - 13:41
Today I have had very interesting case with drupal forms having #ajax buttons. One form was working but the other didn't. After some debugging on ajax.js file I have found out that ajax submit buttoms behaviors being attached to forms by id so it is critical that different buttons have different id's. And in my case I have named submit buttons the same name $form['submit'] and in this way they had same id "form-submit". So in order to avoid that only thing you need is to make keys of submit elements in form to be different and then box ajax submission behaviors work as expected.
Submitted by ygerasimov on Mon, 05/19/2014 - 22:40
I have discovered very very nasty bug lately. When you export the panels page and it has taxonomy argument. Settings of argument do have machine name of the taxonomy vocabulary but it ties up to vocabulary id. This means that your panels page can break pretty easy in case you will happen to have your exported vocabulary to have different id. This may happen pretty often if you use features extensively for example when develop project in 'code-driven' way.
Drupal.org ticket https://drupal.org/node/2270505