From 8e956c857bc5e18e99d0a1ea3c428c984e4b86d6 Mon Sep 17 00:00:00 2001 From: bachy Date: Tue, 30 Oct 2012 18:10:14 +0100 Subject: [PATCH] didactique Signed-off-by: bachy --- materio_didactique.info | 29 +++++++ materio_didactique.module | 83 +++++++++++++++++++ materio_didactique.pages.inc | 1 + .../materio-didactique-home-block.tpl.php | 3 + 4 files changed, 116 insertions(+) create mode 100644 materio_didactique.info create mode 100644 materio_didactique.module create mode 100644 materio_didactique.pages.inc create mode 100644 templates/materio-didactique-home-block.tpl.php diff --git a/materio_didactique.info b/materio_didactique.info new file mode 100644 index 00000000..625da7e8 --- /dev/null +++ b/materio_didactique.info @@ -0,0 +1,29 @@ +name = Materio Didactique +description = "Materio Didactique module" + +; Core version (required) +core = 7.x + +; Package name (see http://drupal.org/node/542202 for a list of names) +package = Materio + +; PHP version requirement (optional) +; php = 5.2 + +; Loadable code files +;files[] = materio_didactique.theme.inc +;files[] = materio_didactique.forms.inc +files[] = materio_didactique.pages.inc +;files[] = materio_didactique.admin.inc +files[] = materio_didactique.module + +; Module dependencies +;dependencies[] = taxonomy +;dependencies[] = search_api +;dependencies[] = search_api_solr + +; Configuration page +; configure = admin/config/materiobasemod + +; For further information about configuration options, see +; - http://drupal.org/node/542202 diff --git a/materio_didactique.module b/materio_didactique.module new file mode 100644 index 00000000..29b72b61 --- /dev/null +++ b/materio_didactique.module @@ -0,0 +1,83 @@ + array( + 'title' => t('view materio didactique home block'), + 'description' => t(''), + ), + ); +} + +/** + * Implements hook_block_info(). + */ +function materio_didactique_block_info() { + $blocks['materio_didactique_home'] = array( + 'info' => t('Materio didactique home block'), + 'cache' => DRUPAL_NO_CACHE + ); + + return $blocks; +} + +/** + * Implements hook_block_view(). + */ +function materio_didactique_block_view($delta = '') { + $block = array(); + + switch ($delta) { + case 'materio_didactique_home': + if(user_access('view materio didactique home block')){ + $query = new EntityFieldQuery; + $query + ->entityCondition('entity_type', 'node') + ->propertyCondition('status', 1) + ->entityCondition('bundle', array('didactique')) + ->fieldCondition('field_displayed_in_home', 'value', 1) + ->fieldOrderBy('field_weight', 'value', 'ASC'); + + $result = $query->execute(); + // dsm($result, '$result'); + + if (isset($result['node'])) { + $block['subject'] = t('Didactique home block'); + $block['content'] = theme('materio_didactique_home_block', array('items' => $result['node'])); + } + } + break; + + } + return $block; +} + +/** + * Implements hook_theme(). + */ +function materio_didactique_theme($existing, $type, $theme, $path) { + return array( + 'materio_didactique_home_block' => array( + 'arguments' => array('items'=>NULL), + 'template' => 'materio-didactique-home-block', + 'path' => drupal_get_path('module', 'materio_didactique').'/templates', + ), + ); +} + + + +function template_preprocess_materio_didactique_home_block(&$vars){ + // dsm($vars, 'template_preprocess_materio_didactique_home_block | $vars'); + + $items = array(); + foreach ($vars['items'] as $nid => $item) { + $items[] = node_load($nid); + } + $vars['items'] = $items; + +} + diff --git a/materio_didactique.pages.inc b/materio_didactique.pages.inc new file mode 100644 index 00000000..5c15a99f --- /dev/null +++ b/materio_didactique.pages.inc @@ -0,0 +1 @@ +