Warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache' query: UPDATE cache SET data = 'a:402:{s:13:\"theme_default\";s:4:\"kewl\";s:13:\"filter_html_1\";s:1:\"1\";s:18:\"node_options_forum\";a:1:{i:0;s:6:\"status\";}s:18:\"drupal_private_key\";s:64:\"a5de3144cabd3a5a76889cdc7d52a5656ec758dd9c66b720824755fe28d5dc59\";s:10:\"menu_masks\";a:24:{i:0;i:127;i:1;i:63;i:2;i:62;i:3;i:61;i:4;i:59;i:5;i:58;i:6;i:57;i:7;i:56;i:8;i:31;i:9;i:30;i:10;i:29;i:11;i:28;i:12;i:24;i:13;i:21;i:14;i:15;i:15;i:14;i:16;i:12;i:17;i:11;i:18;i:7;i:19;i:6;i:20;i:5;i:21;i:3;i:22;i:2;i:23;i:1;}s:12:\"install_task\";s:4:\"done\";s:13:\"menu_expanded\";a:2:{i:0;s:15:\"menu-categories\";i:1;s:10:\"navigation\";}s:9:\"site_name\";s:7:\"jide.fr\";s:9:\"site_mail\";s:17:\"jide.fr@gmail.com\";s:21:\"date_defa in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:1854:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Après des heures à tenter de comprendre comment monter une box Vagrant avec LAMP, j\\'ai fini par avoir une box fonctionnelle.</p>\\n<p>Comme je suis sympa, je vous explique comment faire.</p>\\n<p>Nous utiliserons cette box : <a href=\\"https://github.com/TomJaeger/vagrant-puppet-lamp\\" title=\\&quot in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:1163:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>On trouve très souvent ceci dans les templates de Wordpress / Drupal / N\\'importe :</p>\\n<p><code><ol class=\\"commentlist\\"><br />\\n...<br />\\n</ol><!-- .commentlist --></code></p>\\n<p>N in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:1963:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Pour afficher le formulaire du module profile2 directement sur le formulaire du compte utilisateur :</p>\\n<p>Nous assumerons ici que le type de profil est nommé \\"profile\\".</p>\\n<p>Premièrement, il faut cacher l\\'onglet sur la page du compte utilisateur :</p>\\n<p><code&am in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:2441:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Drupal utilise un thème jQuery UI par défaut. Voici comment utiliser votre propre thème crée en utilisant <a href=\\"http://jqueryui.com/themeroller\\">jQuery ThemeRoller</a>.</p>\\n<p>Placez le thème jQuery UI généré dans votre thème, dans un sous-dossier appelé \\"jquery-ui\\".</p&gt in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:788:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Pour un projet récent, j\\'ai dû migrer des données d\\'un Drupal 5 vers un Drupal 7. Voici comment j\\'ai procédé pour que ce soit le plus facile possible. L\\'essentiel est de :</p>\\n<ul>\\n<li>Exporter les données en CSV depuis l\\'instance originale à l\\'aide de Views et d\\'un plu in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:1125:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Un ami à moi m\\'a signalé que mon pseudo était écrit en énorme dans la dernière keynote de Dries Buytaert montrant les contributeurs Drupal :) Dans le slide #10, et aussi dans la vidéo, autour de 1:00. Je suis célèbre !</p>\\n<p><a href=\\"http://buytaert.net/state-of-drupal-presentation-march-2011\\"><img src=\ in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:4585:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p><code>/**<br />\\n * Implements hook_cron_queue_info().<br />\\n */<br />\\nfunction MYMODULE_cron_queue_info() {<br />\\n $queues = array();<br />\\n $queues[\\'MYMODULE_queue_notify\\'] = array(<br />\\n \\'worker callback\\' => \\'MYMODU in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:1326:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Lorsqu\\'une vue utilise des filtres exposés, par défaut Views rend la vue avec tous les résultats. Pour que la vue soit rendue vide :</p>\\n<ul>\\n<li>Ajouter un argument \\"Global: Null\\"</li>\\n<li>Action to take if argument is not present: Provide default argument</li>\\n< in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:1103:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Pour créer des patchs GIT en utilisant les branches (nécessaire pour des patchs compatibles avec drush make) :<br />\\n<code>git clone --branch 7.x-1.x <a href=\\"http://git.drupal.org/project/session_api\\" title=\\"http://git.drupal.org/project/session_api\\">http://git.drupal.org/project/session_api</a&g in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:1165:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Voici un exemple simple de l\\'utilisation de la database API :</p>\\n<p><code>$results = db_select(\\'authmap\\', \\'am\\') // \\'authmap\\' is the table name, \\'am\\' the alias<br />\\n ->fields(\\'am\\', array(\\'uid\\& in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:10381:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_views_data'\nquery: UPDATE cache_views_data SET data = 'a:3:{s:6:\\"result\\";a:123:{i:0;O:8:\\"stdClass\\":1:{s:3:\\"nid\\";s:1:\\"1\\";}i:1;O:8:\\"stdClass\\":1:{s:3:\\"nid\\";s:1:\\"3\\";}i:2;O:8:\\"stdClass\\":1:{s:3:\\"nid\\";s:1:\\"5\\";}i:3;O:8:\\"stdClass\\&quot in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:5907:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_views_data'\nquery: UPDATE cache_views_data SET data = 'a:4:{s:4:\\"head\\";s:0:\\"\\";s:3:\\"css\\";a:0:{}s:2:\\"js\\";a:0:{}s:6:\\"output\\";s:3327:\\"<div class=\\"view view-tagadelic view-id-tagadelic view-display-id-block_2 view-dom-id-1\\">\\n \\n \\n \\n <div class=\\"view-content\\"&gt in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:5847:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_block'\nquery: UPDATE cache_block SET data = 'a:2:{s:7:\\"content\\";s:3327:\\"<div class=\\"view view-tagadelic view-id-tagadelic view-display-id-block_2 view-dom-id-1\\">\\n \\n \\n \\n <div class=\\"view-content\\">\\n <div class=\\"tagadelic_views\\"><a href=\\"/francais/android\\" class=\\&q in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:409:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter'\nquery: UPDATE cache_filter SET data = '<p>Follow me : <a href=\\"http://twitter.com/jidefr\\">jidefr</a></p>\\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:fb82f31c75d9dcc2908dc560fa3f9280'\";s:5:\"%file\";s:37:\"/home/jideretu/www/includes/cache.inc\";s:5:\"%li in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:1006:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_views_data'\nquery: UPDATE cache_views_data SET data = 'a:3:{s:6:\\"result\\";a:1:{i:0;O:8:\\"stdClass\\":3:{s:10:\\"twitter_id\\";s:18:\\"937070315510861824\\";s:12:\\"twitter_text\\";s:143:\\"RT @PhilippeCorbe: Si vous avez du mal à comprendre l\\'affaire russe, et l\\'importance de l\\'information du jour, le plaider coupable de l\\ in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:2347:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_views_data'\nquery: UPDATE cache_views_data SET data = 'a:4:{s:4:\\"head\\";s:0:\\"\\";s:3:\\"css\\";a:0:{}s:2:\\"js\\";a:3:{i:0;a:5:{i:0;s:38:\\"sites/default/modules/views/js/base.js\\";i:1;s:6:\\"module\\";i:2;s:6:\\"header\\";i:3;b:0;i:4;b:1;}i:1;a:5:{i:0;s:43:\\"sites/default/modules/views/js/ajax_view.js\\";i:1;s in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:676:\"UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_block'\nquery: UPDATE cache_block SET data = 'a:2:{s:7:\\"subject\\";s:15:\\"Recent Comments\\";s:7:\\"content\\";s:187:\\"<div id=\\"dsq-recentcomments\\" class=\\"dsq-widget\\"><script type=\\"text/javascript\\" src=\\"http://disqus.com/forums/jide/recent_comments_widget.js?num_items=1&hide_avatars=1\\& in /home/jideretu/www/includes/database.mysql.inc on line 135
Drupal | jide.fr

Drupal

  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Après des heures à tenter de comprendre comment monter une box Vagrant avec LAMP, j\'ai fini par avoir une box fonctionnelle.</p>\n<p>Comme je suis sympa, je vous explique comment faire.</p>\n<p>Nous utiliserons cette box : <a href=\"https://github.com/TomJaeger/vagrant-puppet-lamp\" title=\"https://github.com/TomJaeger/vagrant-puppet-lamp\">https://github.com/TomJaeger/vagrant-puppet-lamp</a>, qui contient Apache, PHP et MySQL.</p>\n<ol>\n<li>Vous aurez évidemment besoin de <a href=\"http://www.vagrantup.com\">Vagrant</a> et <a href=\"http://www.virtualbox.org\">VirtualBox</a>. Installez les deux.</li>\n<li>Clonez le repo : <code>git clone https://github.com/TomJaeger/vagrant-puppet-lamp.git</code></li>\n<li>Allez dans le dossier: <code>cd vagrant-puppet-lamp</code></li>\n<li>Lancez la VM: <code>vagrant up</code></li>\n<li>Connectez-vous à la VM via SSH: <code>vagrant ssh</code></li>\n<li>La partie \"tricky\": Lancez postinstall.sh comme sudoer: <code>sudo ./postinstall.sh</code></li>\n<li>Ca fonctionne ! Visitez <a href=\"http://localhost:8080\">http://localhost:8080</a>. Vous pouvez accéder à MySQL sur localhost:8889 avec l\'utilisateur \"root\" et le mot de passe \"root\".</li>\n</ol>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:beae45e34302c67079f645585e2b6a93' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>On trouve très souvent ceci dans les templates de Wordpress / Drupal / N\'importe :</p>\n<p><code>&lt;ol class=\"commentlist\"&gt;<br />\n...<br />\n&lt;/ol&gt;&lt;!-- .commentlist --&gt;</code></p>\n<p>Ne le faites pas ! Voici pourquoi :</p>\n<ul>\n<li>Personne n\'aura jamais besoin de ces indications sauf un hypothétique développeur qui reprendrait votre code. Et pourtant, vous le servez à la terre entière.</li>\n<li>Cela rend le fichier HTML plus lourd, car le navigateur télécharge ces commentaires. Utilisez au moins des commentaires PHP.</li>\n<li>Avec une indentation correcte, le code est tout à fait lisible. En fait cela rend le code plus difficile à lire au final.</li>\n</ul>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:8d40a2a6d5affad72348a380ed65093a' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Pour afficher le formulaire du module profile2 directement sur le formulaire du compte utilisateur :</p>\n<p>Nous assumerons ici que le type de profil est nommé \"profile\".</p>\n<p>Premièrement, il faut cacher l\'onglet sur la page du compte utilisateur :</p>\n<p><code>/**<br />\n * Implements hook_menu_alter().<br />\n */<br />\nfunction MY_MODULE_menu_alter(&amp;$items) {<br />\n $items[\'user/%user_category/edit/profile\'][\'access callback\'] = FALSE;<br />\n}</code></p>\n<p>Ensuite, il faut fusionner les 2 formulaires :</p>\n<p><code>/**<br />\n * Implements hook_form_FORM_ID_alter() for the user edit form.<br />\n */<br />\nfunction MY_MODULE_form_user_profile_form_alter(&amp;$form, &amp;$form_state) {<br />\n if (($type = profile2_get_types(\'profile\')) &amp;&amp; $type-&gt;userCategory) {<br />\n if (empty($form_state[\'profiles\'])) {<br />\n $profile = profile2_load_by_user($form[\'#user\'], \'profile\');<br />\n if (empty($profile)) {<br />\n $profile = profile_create(array(\'type\' =&gt; \'profile\', \'uid\' =&gt; $form[\'#user\']-&gt;uid));<br />\n }<br />\n $form_state[\'profiles\'][$profile-&gt;type] = $profile;<br />\n }<br />\n profile2_attach_form($form, $form_state);<br />\n }<br />\n}</code></p>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:d8702df4adfee83717b7f55cb95ea9cb' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Drupal utilise un thème jQuery UI par défaut. Voici comment utiliser votre propre thème crée en utilisant <a href=\"http://jqueryui.com/themeroller\">jQuery ThemeRoller</a>.</p>\n<p>Placez le thème jQuery UI généré dans votre thème, dans un sous-dossier appelé \"jquery-ui\".</p>\n<p>Ensuite, dans le fichier template.php de votre thème :</p>\n<p><code>/**<br />\n * Implements hook_library_alter().<br />\n */<br />\nfunction YOUR_THEME_library_alter(&amp;$libraries, $module) {<br />\n $libraries[\'ui\'][\'css\'] = array();<br />\n $libraries[\'ui.accordion\'][\'css\'] = array();<br />\n $libraries[\'ui.autocomplete\'][\'css\'] = array();<br />\n $libraries[\'ui.button\'][\'css\'] = array();<br />\n $libraries[\'ui.datepicker\'][\'css\'] = array();<br />\n $libraries[\'ui.dialog\'][\'css\'] = array();<br />\n $libraries[\'ui.draggable\'][\'css\'] = array();<br />\n $libraries[\'ui.droppable\'][\'css\'] = array();<br />\n $libraries[\'ui.mouse\'][\'css\'] = array();<br />\n $libraries[\'ui.position\'][\'css\'] = array();<br />\n $libraries[\'ui.progressbar\'][\'css\'] = array();<br />\n $libraries[\'ui.resizable\'][\'css\'] = array();<br />\n $libraries[\'ui.selectable\'][\'css\'] = array();<br />\n $libraries[\'ui.slider\'][\'css\'] = array();<br />\n $libraries[\'ui.sortable\'][\'css\'] = array();<br />\n $libraries[\'ui.tabs\'][\'css\'] = array();<br />\n $libraries[\'ui\'][\'css\'][drupal_get_path(\'theme\', \'YOUR_THEME\') . \'/jquery-ui/jquery-ui.css\'] = array();<br />\n}</code></p>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:b9c53aaedc6cc1d19b4d7544d33e11b4' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Pour un projet récent, j\'ai dû migrer des données d\'un Drupal 5 vers un Drupal 7. Voici comment j\'ai procédé pour que ce soit le plus facile possible. L\'essentiel est de :</p>\n<ul>\n<li>Exporter les données en CSV depuis l\'instance originale à l\'aide de Views et d\'un plugin de sortie en CSV.</li>\n<li>Les réimporter dans l\'instance en 7.x en utilisant Feeds.</li>\n</ul>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:1dfde1eef53f4115f817b9c7c1f997b1' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Un ami à moi m\'a signalé que mon pseudo était écrit en énorme dans la dernière keynote de Dries Buytaert montrant les contributeurs Drupal :) Dans le slide #10, et aussi dans la vidéo, autour de 1:00. Je suis célèbre !</p>\n<p><a href=\"http://buytaert.net/state-of-drupal-presentation-march-2011\"><img src=\"http://www.jide.fr/sites/default/files/Drupal-contributors-1.gif\" /></a></p>\n<p>La magie de l\'aléatoire :) Sur cette image là, qui reflète mieux les proportions, je suis en tout petit :) :</p>\n<p><a href=\"http://files.marcvangend.nl/d7-contributor-cloud-large.png\"><img src=\"http://www.jide.fr/sites/default/files/Drupal-contributors.gif\" /></a></p>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '2:01a7185e968c63d3266a929a8e497972' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p><code>/**<br />\n * Implements hook_cron_queue_info().<br />\n */<br />\nfunction MYMODULE_cron_queue_info() {<br />\n $queues = array();<br />\n $queues[\'MYMODULE_queue_notify\'] = array(<br />\n \'worker callback\' =&gt; \'MYMODULE_queue_notify_worker\',<br />\n \'time\' =&gt; 15,<br />\n );<br />\n return $queues;<br />\n}<br />\n&nbsp;<br />\n/**<br />\n * Queue worker for sending notification mails.<br />\n */<br />\nfunction MYMODULE_queue_notify_worker($params) {<br />\n drupal_mail(\'MYMODULE\', \'notify\', $params[\'to\'], language_default(), $params, $params[\'from\']);<br />\n}<br />\n&nbsp;<br />\n/**<br />\n * Implements hook_mail().<br />\n */<br />\nfunction MYMODULE_mail($key, &amp;$message, $params) {<br />\n $language = $message[\'language\'];<br />\n $message[\'subject\'] = $params[\'subject\'];<br />\n $message[\'body\'][] = $params[\'message\'];<br />\n}<br />\n&nbsp;<br />\n/**<br />\n * Implements hook_rules_action_info().<br />\n */<br />\nfunction MYMODULE_rules_action_info() {<br />\n return array(<br />\n \'MYMODULE_rules_action_mail\' =&gt; array(<br />\n \'label\' =&gt; t(\'Send mail\'),<br />\n \'group\' =&gt; \'MYMODULE\',<br />\n \'parameter\' =&gt; array(<br />\n \'to\' =&gt; array(<br />\n \'type\' =&gt; \'text\',<br />\n \'label\' =&gt; t(\'To\'),<br />\n \'description\' =&gt; t(\'The e-mail address or addresses where the message will be sent to. The formatting of this string must comply with RFC 2822.\'),<br />\n ),<br />\n \'subject\' =&gt; array(<br />\n \'type\' =&gt; \'text\',<br />\n \'label\' =&gt; t(\'Subject\'),<br />\n \'description\' =&gt; t(\"The mail\'s subject.\"),<br />\n ),<br />\n \'message\' =&gt; array(<br />\n \'type\' =&gt; \'text\',<br />\n \'label\' =&gt; t(\'Message\'),<br />\n \'description\' =&gt; t(\"The mail\'s message body.\"),<br />\n ),<br />\n \'from\' =&gt; array(<br />\n \'type\' =&gt; \'text\',<br />\n \'label\' =&gt; t(\'From\'),<br />\n \'description\' =&gt; t(\"The mail\'s from address. Leave it empty to use the site-wide configured address.\"),<br />\n \'optional\' =&gt; TRUE,<br />\n ),<br />\n ),<br />\n ),<br />\n );<br />\n}<br />\n&nbsp;<br />\n/**<br />\n * Action: Add notification mails to the queue.<br />\n */<br />\nfunction MYMODULE_rules_action_mail($to, $subject, $message, $from = NULL, $settings, RulesState $state, RulesPlugin $element) {<br />\n // Gather params.<br />\n $params = array(<br />\n \'to\' =&gt; str_replace(array(\"\\r\", \"\\n\"), \'\', $to),<br />\n \'from\' =&gt; !empty($from) ? str_replace(array(\"\\r\", \"\\n\"), \'\', $from) : NULL,<br />\n \'subject\' =&gt; $subject,<br />\n \'message\' =&gt; $message,<br />\n );<br />\n // Add to the queue.<br />\n $queue = DrupalQueue::get(\'MYMODULE_queue_notify\');<br />\n $queue-&gt;createItem($params);<br />\n}</code></p>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:e4c819bad8580ffa46f55815744408a6' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Lorsqu\'une vue utilise des filtres exposés, par défaut Views rend la vue avec tous les résultats. Pour que la vue soit rendue vide :</p>\n<ul>\n<li>Ajouter un argument \"Global: Null\"</li>\n<li>Action to take if argument is not present: Provide default argument</li>\n<li>Default argument type: Fixed entry</li>\n<li>Default argument: let it blank</li>\n<li>Validator: PHP code</li>\n<li>PHP validate code:<br />\n<code>if (!empty($view-&gt;exposed_input) &amp;&amp; count($view-&gt;exposed_input) == 1 &amp;&amp; isset($view-&gt;exposed_input[\'destination\'])) {<br />\n return FALSE;<br />\n}<br />\nreturn (!empty($view-&gt;exposed_input));</code></li>\n<li>Action to take if argument does not validate: Display empty text (if you want the view to be rendered)</li>\n</ul>\n<p>Et voilà !</p>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:40d054cd9eb1769e8f8f0a124415e6f6' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Pour créer des patchs GIT en utilisant les branches (nécessaire pour des patchs compatibles avec drush make) :<br />\n<code>git clone --branch 7.x-1.x <a href=\"http://git.drupal.org/project/session_api\" title=\"http://git.drupal.org/project/session_api\">http://git.drupal.org/project/session_api</a><br />\ncd session_api<br />\ngit checkout -b cron<br />\n[edit code...]<br />\ngit commit -a -m \"Use an expiration logic when clearing sessions on cron\"<br />\ngit checkout 7.x-1.x<br />\ngit diff --no-prefix 7.x-1.x cron &gt; session_api_cron.patch</code><br />\nIl est possible d\'utiliser la branche \"master\" plutôt que \"7.x-1.x\".</p>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:600d42709aaff0b06512f87bb9dc5758' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Voici un exemple simple de l\'utilisation de la database API :</p>\n<p><code>$results = db_select(\'authmap\', \'am\') // \'authmap\' is the table name, \'am\' the alias<br />\n -&gt;fields(\'am\', array(\'uid\')) // The alias and the field we want to fetch<br />\n -&gt;distinct() // Add distinct<br />\n -&gt;condition(\'module\', \'MYMODULE\') // A condition on the \'module\' field, \'MYMODULE\' value<br />\n -&gt;condition(\'authname\', $ids, \'IN\') // A condition on the \'authname\' field, value is in $ids array<br />\n -&gt;execute() // Execute the query<br />\n -&gt;fetchCol(); // Fetch column</code></p>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:b8959f0fae20710a29250ee9a172c8f8' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_views_data' query: UPDATE cache_views_data SET data = 'a:3:{s:6:\"result\";a:123:{i:0;O:8:\"stdClass\":1:{s:3:\"nid\";s:1:\"1\";}i:1;O:8:\"stdClass\":1:{s:3:\"nid\";s:1:\"3\";}i:2;O:8:\"stdClass\":1:{s:3:\"nid\";s:1:\"5\";}i:3;O:8:\"stdClass\":1:{s:3:\"nid\";s:1:\"6\";}i:4;O:8:\"stdClass\":1:{s:3:\"nid\";s:1:\"7\";}i:5;O:8:\"stdClass\":1:{s:3:\"nid\";s:1:\"8\";}i:6;O:8:\"stdClass\":1:{s:3:\"nid\";s:1:\"9\";}i:7;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"10\";}i:8;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"11\";}i:9;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"12\";}i:10;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"13\";}i:11;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"14\";}i:12;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"15\";}i:13;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"16\";}i:14;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"17\";}i:15;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"18\";}i:16;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"19\";}i:17;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"20\";}i:18;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"21\";}i:19;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"22\";}i:20;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"23\";}i:21;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"24\";}i:22;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"25\";}i:23;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"26\";}i:24;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"27\";}i:25;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"28\";}i:26;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"29\";}i:27;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"30\";}i:28;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"31\";}i:29;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"32\";}i:30;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"33\";}i:31;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"34\";}i:32;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"35\";}i:33;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"36\";}i:34;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"37\";}i:35;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"38\";}i:36;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"39\";}i:37;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"40\";}i:38;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"41\";}i:39;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"42\";}i:40;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"43\";}i:41;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"44\";}i:42;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"46\";}i:43;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"49\";}i:44;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"50\";}i:45;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"51\";}i:46;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"52\";}i:47;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"55\";}i:48;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"56\";}i:49;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"57\";}i:50;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"58\";}i:51;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"59\";}i:52;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"61\";}i:53;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"64\";}i:54;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"66\";}i:55;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"68\";}i:56;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"70\";}i:57;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"71\";}i:58;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"73\";}i:59;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"75\";}i:60;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"77\";}i:61;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"79\";}i:62;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"81\";}i:63;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"82\";}i:64;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"85\";}i:65;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"86\";}i:66;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"88\";}i:67;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"89\";}i:68;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"91\";}i:69;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"93\";}i:70;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"96\";}i:71;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"97\";}i:72;O:8:\"stdClass\":1:{s:3:\"nid\";s:2:\"99\";}i:73;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"102\";}i:74;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"103\";}i:75;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"105\";}i:76;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"107\";}i:77;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"109\";}i:78;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"112\";}i:79;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"114\";}i:80;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"115\";}i:81;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"116\";}i:82;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"117\";}i:83;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"120\";}i:84;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"122\";}i:85;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"123\";}i:86;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"125\";}i:87;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"127\";}i:88;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"129\";}i:89;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"131\";}i:90;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"133\";}i:91;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"136\";}i:92;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"137\";}i:93;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"141\";}i:94;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"143\";}i:95;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"146\";}i:96;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"148\";}i:97;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"150\";}i:98;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"152\";}i:99;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"154\";}i:100;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"156\";}i:101;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"157\";}i:102;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"160\";}i:103;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"162\";}i:104;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"164\";}i:105;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"166\";}i:106;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"168\";}i:107;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"170\";}i:108;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"172\";}i:109;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"189\";}i:110;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"191\";}i:111;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"193\";}i:112;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"195\";}i:113;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"201\";}i:114;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"202\";}i:115;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"204\";}i:116;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"206\";}i:117;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"207\";}i:118;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"210\";}i:119;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"212\";}i:120;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"214\";}i:121;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"216\";}i:122;O:8:\"stdClass\":1:{s:3:\"nid\";s:3:\"218\";}}s:10:\"total_rows\";i:123;s:5:\"pager\";a:5:{s:9:\"use_pager\";b:0;s:14:\"items_per_page\";i:0;s:7:\"element\";i:0;s:6:\"offset\";i:0;s:12:\"current_page\";i:0;}}', created = 1513169276, expire = 1513172876, headers = '', serialized = 1 WHERE cid = 'tagadelic:block_2:results:a05686bc58909a434d941cc375c8cde7' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_views_data' query: UPDATE cache_views_data SET data = 'a:4:{s:4:\"head\";s:0:\"\";s:3:\"css\";a:0:{}s:2:\"js\";a:0:{}s:6:\"output\";s:3327:\"<div class=\"view view-tagadelic view-id-tagadelic view-display-id-block_2 view-dom-id-1\">\n \n \n \n <div class=\"view-content\">\n <div class=\"tagadelic_views\"><a href=\"/francais/android\" class=\"tagadelic level1\" rel=\"tag\">android</a> \n<a href=\"/francais/apache\" class=\"tagadelic level1\" rel=\"tag\">Apache</a> \n<a href=\"/francais/automator\" class=\"tagadelic level1\" rel=\"tag\">Automator</a> \n<a href=\"/francais/bd\" class=\"tagadelic level1\" rel=\"tag\">BD</a> \n<a href=\"/francais/bootstrap\" class=\"tagadelic level3\" rel=\"tag\">bootstrap</a> \n<a href=\"/francais/canal\" class=\"tagadelic level1\" rel=\"tag\">canal +</a> \n<a href=\"/francais/command-line\" class=\"tagadelic level1\" rel=\"tag\">Command line</a> \n<a href=\"/francais/css\" class=\"tagadelic level2\" rel=\"tag\">CSS</a> \n<a href=\"/francais/customize\" class=\"tagadelic level1\" rel=\"tag\">customize</a> \n<a href=\"/francais/drupal\" class=\"tagadelic level5 active\" rel=\"tag\">Drupal</a> \n<a href=\"/francais/dwmapi\" class=\"tagadelic level1\" rel=\"tag\">Dwmapi</a> \n<a href=\"/francais/facebook\" class=\"tagadelic level1\" rel=\"tag\">Facebook</a> \n<a href=\"/francais/finder\" class=\"tagadelic level1\" rel=\"tag\">Finder</a> \n<a href=\"/francais/freshy\" class=\"tagadelic level1\" rel=\"tag\">freshy</a> \n<a href=\"/francais/game\" class=\"tagadelic level1\" rel=\"tag\">game</a> \n<a href=\"/francais/git\" class=\"tagadelic level1\" rel=\"tag\">GIT</a> \n<a href=\"/francais/github\" class=\"tagadelic level1\" rel=\"tag\">github</a> \n<a href=\"/francais/grunt\" class=\"tagadelic level1\" rel=\"tag\">grunt</a> \n<a href=\"/francais/html\" class=\"tagadelic level1\" rel=\"tag\">HTML</a> \n<a href=\"/francais/javascript\" class=\"tagadelic level2\" rel=\"tag\">javascript</a> \n<a href=\"/francais/jidefr\" class=\"tagadelic level1\" rel=\"tag\">jide.fr</a> \n<a href=\"/francais/jquery-0\" class=\"tagadelic level1\" rel=\"tag\">jQuery</a> \n<a href=\"/francais/jquery-ui-0\" class=\"tagadelic level2\" rel=\"tag\">jQuery UI</a> \n<a href=\"/francais/lamp\" class=\"tagadelic level1\" rel=\"tag\">LAMP</a> \n<a href=\"/francais/le-moteur-de-recherche\" class=\"tagadelic level1\" rel=\"tag\">le moteur de recherche</a> \n<a href=\"/francais/less\" class=\"tagadelic level2\" rel=\"tag\">less</a> \n<a href=\"/francais/mac-os-x\" class=\"tagadelic level1\" rel=\"tag\">Mac OS X</a> \n<a href=\"/francais/made-in-france\" class=\"tagadelic level1\" rel=\"tag\">made in france</a> \n<a href=\"/francais/mobile\" class=\"tagadelic level1\" rel=\"tag\">mobile</a> \n<a href=\"/francais/mongo-db\" class=\"tagadelic level1\" rel=\"tag\">mongo db</a> \n<a href=\"/francais/mysql\" class=\"tagadelic level1\" rel=\"tag\">MySQL</a> \n<a href=\"/francais/nodejs\" class=\"tagadelic level1\" rel=\"tag\">nodejs</a> \n<a href=\"/francais/php\" class=\"tagadelic level2\" rel=\"tag\">PHP</a> \n<a href=\"/francais/qt\" class=\"tagadelic level1\" rel=\"tag\">Qt</a> \n<a href=\"/francais/queue-api\" class=\"tagadelic level1\" rel=\"tag\">Queue API</a> \n<a href=\"/francais/ruby\" class=\"tagadelic level1\" rel=\"tag\">Ruby</a> \n<a href=\"/francais/rules\" class=\"tagadelic level1\" rel=\"tag\">Rules</a> \n<a href=\"/francais/vagrant\" class=\"tagadelic level1\" rel=\"tag\">Vagrant</a> \n<a href=\"/francais/views-0\" class=\"tagadelic level1\" rel=\"tag\">Views</a> \n<a href=\"/francais/windows-api\" class=\"tagadelic level1\" rel=\"tag\">Windows API</a> \n<a href=\"/francais/wordpress\" class=\"tagadelic level6\" rel=\"tag\">wordpress</a> \n</div> </div>\n \n \n \n \n \n \n</div> \";}', created = 1513169276, expire = 1513172876, headers = '', serialized = 1 WHERE cid = 'tagadelic:block_2:output:19f4215458053dda7780acaf26b5d77c' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_block' query: UPDATE cache_block SET data = 'a:2:{s:7:\"content\";s:3327:\"<div class=\"view view-tagadelic view-id-tagadelic view-display-id-block_2 view-dom-id-1\">\n \n \n \n <div class=\"view-content\">\n <div class=\"tagadelic_views\"><a href=\"/francais/android\" class=\"tagadelic level1\" rel=\"tag\">android</a> \n<a href=\"/francais/apache\" class=\"tagadelic level1\" rel=\"tag\">Apache</a> \n<a href=\"/francais/automator\" class=\"tagadelic level1\" rel=\"tag\">Automator</a> \n<a href=\"/francais/bd\" class=\"tagadelic level1\" rel=\"tag\">BD</a> \n<a href=\"/francais/bootstrap\" class=\"tagadelic level3\" rel=\"tag\">bootstrap</a> \n<a href=\"/francais/canal\" class=\"tagadelic level1\" rel=\"tag\">canal +</a> \n<a href=\"/francais/command-line\" class=\"tagadelic level1\" rel=\"tag\">Command line</a> \n<a href=\"/francais/css\" class=\"tagadelic level2\" rel=\"tag\">CSS</a> \n<a href=\"/francais/customize\" class=\"tagadelic level1\" rel=\"tag\">customize</a> \n<a href=\"/francais/drupal\" class=\"tagadelic level5 active\" rel=\"tag\">Drupal</a> \n<a href=\"/francais/dwmapi\" class=\"tagadelic level1\" rel=\"tag\">Dwmapi</a> \n<a href=\"/francais/facebook\" class=\"tagadelic level1\" rel=\"tag\">Facebook</a> \n<a href=\"/francais/finder\" class=\"tagadelic level1\" rel=\"tag\">Finder</a> \n<a href=\"/francais/freshy\" class=\"tagadelic level1\" rel=\"tag\">freshy</a> \n<a href=\"/francais/game\" class=\"tagadelic level1\" rel=\"tag\">game</a> \n<a href=\"/francais/git\" class=\"tagadelic level1\" rel=\"tag\">GIT</a> \n<a href=\"/francais/github\" class=\"tagadelic level1\" rel=\"tag\">github</a> \n<a href=\"/francais/grunt\" class=\"tagadelic level1\" rel=\"tag\">grunt</a> \n<a href=\"/francais/html\" class=\"tagadelic level1\" rel=\"tag\">HTML</a> \n<a href=\"/francais/javascript\" class=\"tagadelic level2\" rel=\"tag\">javascript</a> \n<a href=\"/francais/jidefr\" class=\"tagadelic level1\" rel=\"tag\">jide.fr</a> \n<a href=\"/francais/jquery-0\" class=\"tagadelic level1\" rel=\"tag\">jQuery</a> \n<a href=\"/francais/jquery-ui-0\" class=\"tagadelic level2\" rel=\"tag\">jQuery UI</a> \n<a href=\"/francais/lamp\" class=\"tagadelic level1\" rel=\"tag\">LAMP</a> \n<a href=\"/francais/le-moteur-de-recherche\" class=\"tagadelic level1\" rel=\"tag\">le moteur de recherche</a> \n<a href=\"/francais/less\" class=\"tagadelic level2\" rel=\"tag\">less</a> \n<a href=\"/francais/mac-os-x\" class=\"tagadelic level1\" rel=\"tag\">Mac OS X</a> \n<a href=\"/francais/made-in-france\" class=\"tagadelic level1\" rel=\"tag\">made in france</a> \n<a href=\"/francais/mobile\" class=\"tagadelic level1\" rel=\"tag\">mobile</a> \n<a href=\"/francais/mongo-db\" class=\"tagadelic level1\" rel=\"tag\">mongo db</a> \n<a href=\"/francais/mysql\" class=\"tagadelic level1\" rel=\"tag\">MySQL</a> \n<a href=\"/francais/nodejs\" class=\"tagadelic level1\" rel=\"tag\">nodejs</a> \n<a href=\"/francais/php\" class=\"tagadelic level2\" rel=\"tag\">PHP</a> \n<a href=\"/francais/qt\" class=\"tagadelic level1\" rel=\"tag\">Qt</a> \n<a href=\"/francais/queue-api\" class=\"tagadelic level1\" rel=\"tag\">Queue API</a> \n<a href=\"/francais/ruby\" class=\"tagadelic level1\" rel=\"tag\">Ruby</a> \n<a href=\"/francais/rules\" class=\"tagadelic level1\" rel=\"tag\">Rules</a> \n<a href=\"/francais/vagrant\" class=\"tagadelic level1\" rel=\"tag\">Vagrant</a> \n<a href=\"/francais/views-0\" class=\"tagadelic level1\" rel=\"tag\">Views</a> \n<a href=\"/francais/windows-api\" class=\"tagadelic level1\" rel=\"tag\">Windows API</a> \n<a href=\"/francais/wordpress\" class=\"tagadelic level6\" rel=\"tag\">wordpress</a> \n</div> </div>\n \n \n \n \n \n \n</div> \";s:7:\"subject\";s:4:\"Tags\";}', created = 1513169276, expire = -1, headers = '', serialized = 1 WHERE cid = 'views:tagadelic-block_2:kewl:fr:http://jide.fr/francais/drupal' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_filter' query: UPDATE cache_filter SET data = '<p>Follow me : <a href=\"http://twitter.com/jidefr\">jidefr</a></p>\n', created = 1513169276, expire = 1513255676, headers = '', serialized = 0 WHERE cid = '1:fb82f31c75d9dcc2908dc560fa3f9280' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_views_data' query: UPDATE cache_views_data SET data = 'a:3:{s:6:\"result\";a:1:{i:0;O:8:\"stdClass\":3:{s:10:\"twitter_id\";s:18:\"937070315510861824\";s:12:\"twitter_text\";s:143:\"RT @PhilippeCorbe: Si vous avez du mal à comprendre l\'affaire russe, et l\'importance de l\'information du jour, le plaider coupable de l\'anc…\";s:20:\"twitter_created_time\";s:10:\"1512249947\";}}s:10:\"total_rows\";N;s:5:\"pager\";a:5:{s:9:\"use_pager\";s:1:\"0\";s:14:\"items_per_page\";i:1;s:7:\"element\";i:0;s:6:\"offset\";i:0;s:12:\"current_page\";i:0;}}', created = 1513169276, expire = 1513172876, headers = '', serialized = 1 WHERE cid = 'tweets:block:results:edb266de823293cad00bd74d438dccde' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_views_data' query: UPDATE cache_views_data SET data = 'a:4:{s:4:\"head\";s:0:\"\";s:3:\"css\";a:0:{}s:2:\"js\";a:3:{i:0;a:5:{i:0;s:38:\"sites/default/modules/views/js/base.js\";i:1;s:6:\"module\";i:2;s:6:\"header\";i:3;b:0;i:4;b:1;}i:1;a:5:{i:0;s:43:\"sites/default/modules/views/js/ajax_view.js\";i:1;s:6:\"module\";i:2;s:6:\"header\";i:3;b:0;i:4;b:1;}i:2;a:3:{i:0;a:1:{s:5:\"views\";a:2:{s:9:\"ajax_path\";s:20:\"/francais/views/ajax\";s:9:\"ajaxViews\";a:1:{i:0;a:7:{s:9:\"view_name\";s:6:\"tweets\";s:15:\"view_display_id\";s:5:\"block\";s:9:\"view_args\";s:0:\"\";s:9:\"view_path\";s:16:\"taxonomy/term/79\";s:14:\"view_base_path\";N;s:11:\"view_dom_id\";i:2;s:13:\"pager_element\";i:0;}}}}i:1;s:7:\"setting\";i:2;s:6:\"header\";}}s:6:\"output\";s:739:\"<div class=\"view view-tweets view-id-tweets view-display-id-block view-dom-id-2\">\n \n \n \n <div class=\"view-content\">\n <div class=\"views-row views-row-1 views-row-odd views-row-first views-row-last\">\n \n <span class=\"views-field-text\">\n <span class=\"field-content\">RT <a target=\"_blank\" rel=\"nofollow\" href=\"http://twitter.com/PhilippeCorbe\">@PhilippeCorbe</a>: Si vous avez du mal à comprendre l\'affaire russe, et l\'importance de l\'information du jour, le plaider coupable de l\'anc…</span>\n </span>\n &#8212; \n <span class=\"views-field-created-time\">\n <span class=\"field-content\">Il y a <em>1 semaine 3 jours</em></span>\n </span>\n </div>\n </div>\n \n \n \n \n \n \n</div> \";}', created = 1513169276, expire = 1513172876, headers = '', serialized = 1 WHERE cid = 'tweets:block:output:3612a25bce275b87887cbb554efa85c6' in /home/jideretu/www/includes/cache.inc on line 112.
  • user warning: UPDATE command denied to user 'jideretumysql'@'10.0.66.38' for table 'cache_block' query: UPDATE cache_block SET data = 'a:2:{s:7:\"subject\";s:15:\"Recent Comments\";s:7:\"content\";s:187:\"<div id=\"dsq-recentcomments\" class=\"dsq-widget\"><script type=\"text/javascript\" src=\"http://disqus.com/forums/jide/recent_comments_widget.js?num_items=1&amp;hide_avatars=1\"></script></div>\";}', created = 1513169276, expire = -1, headers = '', serialized = 1 WHERE cid = 'disqus:disqus_recent_comments:kewl:fr' in /home/jideretu/www/includes/cache.inc on line 112.

Après des heures à tenter de comprendre comment monter une box Vagrant avec LAMP, j'ai fini par avoir une box fonctionnelle.

Comme je suis sympa, je vous explique comment faire.

Nous utiliserons cette box : https://github.com/TomJaeger/vagrant-puppet-lamp, qui contient Apache, PHP et MySQL.

  1. Vous aurez évidemment besoin de Vagrant et VirtualBox. Installez les deux.
  2. Clonez le repo : git clone https://github.com/TomJaeger/vagrant-puppet-lamp.git
  3. Allez dans le dossier: cd vagrant-puppet-lamp
  4. Lancez la VM: vagrant up
  5. Connectez-vous à la VM via SSH: vagrant ssh
  6. La partie "tricky": Lancez postinstall.sh comme sudoer: sudo ./postinstall.sh
  7. Ca fonctionne ! Visitez http://localhost:8080. Vous pouvez accéder à MySQL sur localhost:8889 avec l'utilisateur "root" et le mot de passe "root".

On trouve très souvent ceci dans les templates de Wordpress / Drupal / N'importe :

<ol class="commentlist">
...
</ol><!-- .commentlist -->

Ne le faites pas ! Voici pourquoi :

  • Personne n'aura jamais besoin de ces indications sauf un hypothétique développeur qui reprendrait votre code. Et pourtant, vous le servez à la terre entière.
  • Cela rend le fichier HTML plus lourd, car le navigateur télécharge ces commentaires. Utilisez au moins des commentaires PHP.
  • Avec une indentation correcte, le code est tout à fait lisible. En fait cela rend le code plus difficile à lire au final.

Pour afficher le formulaire du module profile2 directement sur le formulaire du compte utilisateur :

Nous assumerons ici que le type de profil est nommé "profile".

Premièrement, il faut cacher l'onglet sur la page du compte utilisateur :

/**
* Implements hook_menu_alter().
*/
function MY_MODULE_menu_alter(&$items) {
$items['user/%user_category/edit/profile']['access callback'] = FALSE;
}

Ensuite, il faut fusionner les 2 formulaires :

/**
* Implements hook_form_FORM_ID_alter() for the user edit form.
*/
function MY_MODULE_form_user_profile_form_alter(&$form, &$form_state) {
if (($type = profile2_get_types('profile')) && $type->userCategory) {
if (empty($form_state['profiles'])) {
$profile = profile2_load_by_user($form['#user'], 'profile');
if (empty($profile)) {
$profile = profile_create(array('type' => 'profile', 'uid' => $form['#user']->uid));
}
$form_state['profiles'][$profile->type] = $profile;
}
profile2_attach_form($form, $form_state);
}
}

Drupal utilise un thème jQuery UI par défaut. Voici comment utiliser votre propre thème crée en utilisant jQuery ThemeRoller.

Placez le thème jQuery UI généré dans votre thème, dans un sous-dossier appelé "jquery-ui".

Ensuite, dans le fichier template.php de votre thème :

/**
* Implements hook_library_alter().
*/
function YOUR_THEME_library_alter(&$libraries, $module) {
$libraries['ui']['css'] = array();
$libraries['ui.accordion']['css'] = array();
$libraries['ui.autocomplete']['css'] = array();
$libraries['ui.button']['css'] = array();
$libraries['ui.datepicker']['css'] = array();
$libraries['ui.dialog']['css'] = array();
$libraries['ui.draggable']['css'] = array();
$libraries['ui.droppable']['css'] = array();
$libraries['ui.mouse']['css'] = array();
$libraries['ui.position']['css'] = array();
$libraries['ui.progressbar']['css'] = array();
$libraries['ui.resizable']['css'] = array();
$libraries['ui.selectable']['css'] = array();
$libraries['ui.slider']['css'] = array();
$libraries['ui.sortable']['css'] = array();
$libraries['ui.tabs']['css'] = array();
$libraries['ui']['css'][drupal_get_path('theme', 'YOUR_THEME') . '/jquery-ui/jquery-ui.css'] = array();
}

Pour un projet récent, j'ai dû migrer des données d'un Drupal 5 vers un Drupal 7. Voici comment j'ai procédé pour que ce soit le plus facile possible. L'essentiel est de :

  • Exporter les données en CSV depuis l'instance originale à l'aide de Views et d'un plugin de sortie en CSV.
  • Les réimporter dans l'instance en 7.x en utilisant Feeds.

Un ami à moi m'a signalé que mon pseudo était écrit en énorme dans la dernière keynote de Dries Buytaert montrant les contributeurs Drupal :) Dans le slide #10, et aussi dans la vidéo, autour de 1:00. Je suis célèbre !

La magie de l'aléatoire :) Sur cette image là, qui reflète mieux les proportions, je suis en tout petit :) :

/**
* Implements hook_cron_queue_info().
*/
function MYMODULE_cron_queue_info() {
$queues = array();
$queues['MYMODULE_queue_notify'] = array(
'worker callback' => 'MYMODULE_queue_notify_worker',
'time' => 15,
);
return $queues;
}
 
/**
* Queue worker for sending notification mails.
*/
function MYMODULE_queue_notify_worker($params) {
drupal_mail('MYMODULE', 'notify', $params['to'], language_default(), $params, $params['from']);
}
 
/**
* Implements hook_mail().
*/
function MYMODULE_mail($key, &$message, $params) {
$language = $message['language'];
$message['subject'] = $params['subject'];
$message['body'][] = $params['message'];
}
 
/**
* Implements hook_rules_action_info().
*/
function MYMODULE_rules_action_info() {
return array(
'MYMODULE_rules_action_mail' => array(
'label' => t('Send mail'),
'group' => 'MYMODULE',
'parameter' => array(
'to' => array(
'type' => 'text',
'label' => t('To'),
'description' => t('The e-mail address or addresses where the message will be sent to. The formatting of this string must comply with RFC 2822.'),
),
'subject' => array(
'type' => 'text',
'label' => t('Subject'),
'description' => t("The mail's subject."),
),
'message' => array(
'type' => 'text',
'label' => t('Message'),
'description' => t("The mail's message body."),
),
'from' => array(
'type' => 'text',
'label' => t('From'),
'description' => t("The mail's from address. Leave it empty to use the site-wide configured address."),
'optional' => TRUE,
),
),
),
);
}
 
/**
* Action: Add notification mails to the queue.
*/
function MYMODULE_rules_action_mail($to, $subject, $message, $from = NULL, $settings, RulesState $state, RulesPlugin $element) {
// Gather params.
$params = array(
'to' => str_replace(array("\r", "\n"), '', $to),
'from' => !empty($from) ? str_replace(array("\r", "\n"), '', $from) : NULL,
'subject' => $subject,
'message' => $message,
);
// Add to the queue.
$queue = DrupalQueue::get('MYMODULE_queue_notify');
$queue->createItem($params);
}

Lorsqu'une vue utilise des filtres exposés, par défaut Views rend la vue avec tous les résultats. Pour que la vue soit rendue vide :

  • Ajouter un argument "Global: Null"
  • Action to take if argument is not present: Provide default argument
  • Default argument type: Fixed entry
  • Default argument: let it blank
  • Validator: PHP code
  • PHP validate code:
    if (!empty($view->exposed_input) && count($view->exposed_input) == 1 && isset($view->exposed_input['destination'])) {
    return FALSE;
    }
    return (!empty($view->exposed_input));
  • Action to take if argument does not validate: Display empty text (if you want the view to be rendered)

Et voilà !

Pour créer des patchs GIT en utilisant les branches (nécessaire pour des patchs compatibles avec drush make) :
git clone --branch 7.x-1.x http://git.drupal.org/project/session_api
cd session_api
git checkout -b cron
[edit code...]
git commit -a -m "Use an expiration logic when clearing sessions on cron"
git checkout 7.x-1.x
git diff --no-prefix 7.x-1.x cron > session_api_cron.patch

Il est possible d'utiliser la branche "master" plutôt que "7.x-1.x".

Voici un exemple simple de l'utilisation de la database API :

$results = db_select('authmap', 'am') // 'authmap' is the table name, 'am' the alias
->fields('am', array('uid')) // The alias and the field we want to fetch
->distinct() // Add distinct
->condition('module', 'MYMODULE') // A condition on the 'module' field, 'MYMODULE' value
->condition('authname', $ids, 'IN') // A condition on the 'authname' field, value is in $ids array
->execute() // Execute the query
->fetchCol(); // Fetch column

Syndiquer le contenu

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:0:\"\";s:5:\"%file\";s:37:\"/home/jideretu/www/includes/cache.inc\";s:5:\"%line\";i:112;}', 3, '', 'http://jide.fr/francais/drupal', '', '54.242.205.33', 1513169276) in /home/jideretu/www/includes/database.mysql.inc on line 135

Warning: INSERT command denied to user 'jideretumysql'@'10.0.66.38' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:429:\"UPDATE command denied to user &#039;jideretumysql&#039;@&#039;10.0.66.38&#039; for table &#039;sessions&#039;\nquery: UPDATE sessions SET uid = 0, cache = 0, hostname = &#039;54.242.205.33&#039;, session = &#039;messages|a:1:{s:5:\\&quot;error\\&quot;;a:1:{i:0;s:68:\\&quot;user warning: in /home/jideretu/www/includes/cache.inc on line 112.\\&quot;;}}&#039;, timestamp = 1513169276 WHERE sid = &#039;gevhl5k0djqv38l2602pss18l1&#039;\";s:5:\"%file\";s:39:\"/home/jideretu/www/includes/session.inc\";s:5:\"%lin in /home/jideretu/www/includes/database.mysql.inc on line 135