From 50974d181bc2788fe87132874b4e6e22206777b0 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Wed, 8 Aug 2012 19:38:05 -0300 Subject: Building widget links --- calendario-embed-widget.tpl.php | 4 ++-- calendario.module | 34 +++++++++++++++++++++++++++++----- 2 files changed, 31 insertions(+), 7 deletions(-) diff --git a/calendario-embed-widget.tpl.php b/calendario-embed-widget.tpl.php index 17558cb..58e8f3b 100644 --- a/calendario-embed-widget.tpl.php +++ b/calendario-embed-widget.tpl.php @@ -1,7 +1,7 @@ Este calendário no seu site:
-<iframe src="https://calendario.sarava.org/pt-br/widgets/calendario/dia" width="630" height="800" style="border: none;">
-  <a href="https://calendario.sarava.org/pt-br/widgets/calendario/dia">Calendário</a>.
+<iframe src="https://calendario.sarava.org/pt-br/widgets/calendario/" width="630" height="800" style="border: none;">
+  <a href="https://calendario.sarava.org/pt-br/widgets/calendario/">Calendário</a>.
 </iframe>
 
diff --git a/calendario.module b/calendario.module index 18939b2..6967746 100644 --- a/calendario.module +++ b/calendario.module @@ -12,7 +12,7 @@ function calendario_theme($existing, $type, $theme, $path) { return array( 'embed-widget' => array( 'template' => 'calendario-embed-widget', - 'variables' => array('period' => NULL, 'type' => NULL), + 'variables' => array('link' => NULL), ), ); } @@ -34,12 +34,36 @@ function calendario_entity_info_alter(&$entity_info) { /** * Include a calendar widget. - * - * @todo - * Set $period and $type. */ function calendario_widget($view = NULL) { - return theme('embed-widget'); + $display = $view->current_display; + $path = explode('/', $view->display[$display]->handler->options['path']); + + switch ($path[1]) { + case 'dia': + case 'semana': + case 'mes': + case 'ano': + $type = NULL; + $period = $path[1]; + //$date = isset($path[2]) ? .'/'. $path[2] : ''; + $date = isset($view->args[0]) ? .'/'. $view->args[0] : ''; + $argument = NULL; + $link = $period . $date; + break; + + default: + $type = $path[1]; + $period = $path[3]; + //$date = isset($path[4]) ? .'/'. $path[4] : ''; + $date = isset($view->args[1]) ? .'/'. $view->args[1] : ''; + //$argument = $path[2]; + $argument = isset($view->args[0]) ? .'/'. $view->args[0] : ''; + $link = $type . $argument .'/'. $period . $date + break; + } + + return theme('embed-widget', array('link' => $link)); } /** -- cgit v1.2.3