Création d'une page d'accueil à l'installation
authorFelip Manyer i Ballester <git@res-telae.cat>
Sat, 26 Oct 2013 19:57:03 +0000 (21:57 +0200)
committerFelip Manyer i Ballester <git@res-telae.cat>
Sat, 26 Oct 2013 19:57:03 +0000 (21:57 +0200)
fonamental.install
fonamental.install_content_callbacks.inc [new file with mode: 0644]

index 1648458..74cd0c1 100644 (file)
@@ -10,6 +10,11 @@ function fonamental_install_tasks() {
       'type' => 'batch',
       'display' => TRUE,
     ),
+    'fonamental_content' => array(
+      'display_name' => st('Importation de contenu'),
+      'type' => 'batch',
+      'display' => TRUE,
+    ),
   );
 
   return $tasks;
@@ -47,6 +52,18 @@ function fonamental_config() {
   return $batch;
 }
 
+function fonamental_content() {
+  $batch = array(
+    'title' => t('Importation de contenu'),
+    'operations' => array(
+      array('_fonamental_accueil', array()),
+    ),
+    'file' => drupal_get_path('profile', 'cci_flight') . '/fonamental.install_content_callbacks.inc',
+  );
+
+  return $batch;
+}
+
 /**
  * Implements hook_install().
  */
diff --git a/fonamental.install_content_callbacks.inc b/fonamental.install_content_callbacks.inc
new file mode 100644 (file)
index 0000000..33e9e1c
--- /dev/null
@@ -0,0 +1,31 @@
+<?php
+
+function _fonamental_accueil(&$context) {
+  $context['message'] = st('Création du contenu de la page d\'accueil');
+
+  // Création d'un nœud de type Page
+  $node = new stdClass();
+  $node->type = 'page';
+  node_object_prepare($node);
+  $node->title = 'Page d\'accueil';
+  $node->language = 'fr';
+  $node->body[LANGUAGE_NONE][0]['value']   = 'Contenu de la page d\'accueil';
+  $node->body[LANGUAGE_NONE][0]['format']  = 'full_html';
+  $node->uid = 1;
+  $node->promote = 0;
+  $node->comment = 0;
+  node_save($node);
+
+  // Définir le nid obtenu comme page d'accueil
+  variable_set('site_frontpage', 'node/' . $node->nid);
+
+  // Créer lien vers la page d'accueil
+  $home_link = array(
+    'link_path' => '<front>',
+    'link_title' => 'Accueil',
+    'description' => '',
+    'menu_name' => 'main-menu',
+    'weight' => -10,
+  );
+  menu_link_save($home_link);
+}