|
@@ -0,0 +1,151 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+class tripal_views_handler_area_action_links extends views_handler_area {
|
|
|
+
|
|
|
+ function option_definition() {
|
|
|
+ $options = parent::option_definition();
|
|
|
+
|
|
|
+ $options['link-1']['label-1'] = array('default' => '');
|
|
|
+ $options['link-1']['path-1'] = array('default' => '');
|
|
|
+
|
|
|
+ $options['link-2']['label-2'] = array('default' => '');
|
|
|
+ $options['link-2']['path-2'] = array('default' => '');
|
|
|
+
|
|
|
+ $options['link-3']['label-3'] = array('default' => '');
|
|
|
+ $options['link-3']['path-3'] = array('default' => '');
|
|
|
+
|
|
|
+ $options['link-4']['label-4'] = array('default' => '');
|
|
|
+ $options['link-4']['path-4'] = array('default' => '');
|
|
|
+
|
|
|
+ return $options;
|
|
|
+ }
|
|
|
+
|
|
|
+ function options_form(&$form, &$form_state) {
|
|
|
+ parent::options_form($form, $form_state);
|
|
|
+
|
|
|
+ $form['label']['#default_value'] = 'Action Links';
|
|
|
+
|
|
|
+ $form['link-1'] = array(
|
|
|
+ '#type' => 'fieldset',
|
|
|
+ '#title' => t('Link #1')
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-1']['label-1'] = array(
|
|
|
+ '#type' => 'textfield',
|
|
|
+ '#title' => t('Label'),
|
|
|
+ '#description' => t('The text that will be displayed as the link'),
|
|
|
+ '#default_value' => $this->options['link-1']['label-1'],
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-1']['path-1'] = array(
|
|
|
+ '#type' => 'textfield',
|
|
|
+ '#title' => t('URL'),
|
|
|
+ '#description' => t('The path that the link will link to'),
|
|
|
+ '#default_value' => $this->options['link-1']['path-1']
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-2'] = array(
|
|
|
+ '#type' => 'fieldset',
|
|
|
+ '#title' => t('Link #2')
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-2']['label-2'] = array(
|
|
|
+ '#type' => 'textfield',
|
|
|
+ '#title' => t('Label'),
|
|
|
+ '#description' => t('The text that will be displayed as the link'),
|
|
|
+ '#default_value' => $this->options['link-2']['label-2'],
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-2']['path-2'] = array(
|
|
|
+ '#type' => 'textfield',
|
|
|
+ '#title' => t('URL'),
|
|
|
+ '#description' => t('The path that the link will link to'),
|
|
|
+ '#default_value' => $this->options['link-2']['path-2']
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-3'] = array(
|
|
|
+ '#type' => 'fieldset',
|
|
|
+ '#title' => t('Link #3')
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-3']['label-3'] = array(
|
|
|
+ '#type' => 'textfield',
|
|
|
+ '#title' => t('Label'),
|
|
|
+ '#description' => t('The text that will be displayed as the link'),
|
|
|
+ '#default_value' => $this->options['link-3']['label-3'],
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-3']['path-3'] = array(
|
|
|
+ '#type' => 'textfield',
|
|
|
+ '#title' => t('URL'),
|
|
|
+ '#description' => t('The path that the link will link to'),
|
|
|
+ '#default_value' => $this->options['link-3']['path-3']
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-4'] = array(
|
|
|
+ '#type' => 'fieldset',
|
|
|
+ '#title' => t('Link #4')
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-4']['label-4'] = array(
|
|
|
+ '#type' => 'textfield',
|
|
|
+ '#title' => t('Label'),
|
|
|
+ '#description' => t('The text that will be displayed as the link'),
|
|
|
+ '#default_value' => $this->options['link-4']['label-4'],
|
|
|
+ );
|
|
|
+
|
|
|
+ $form['link-4']['path-4'] = array(
|
|
|
+ '#type' => 'textfield',
|
|
|
+ '#title' => t('URL'),
|
|
|
+ '#description' => t('The path that the link will link to'),
|
|
|
+ '#default_value' => $this->options['link-4']['path-4']
|
|
|
+ );
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ function options_submit(&$form, &$form_state) {
|
|
|
+ parent::options_submit($form, $form_state);
|
|
|
+ ddl($form_state, 'form state in submit');
|
|
|
+ $this->options['link-1']['label-1'] = $form_state['values']['options']['link-1']['label-1'];
|
|
|
+ $this->options['link-1']['path-1'] = $form_state['values']['options']['link-1']['path-1'];
|
|
|
+
|
|
|
+ $this->options['link-2']['label-2'] = $form_state['values']['options']['link-2']['label-2'];
|
|
|
+ $this->options['link-2']['path-2'] = $form_state['values']['options']['link-2']['path-2'];
|
|
|
+
|
|
|
+ $this->options['link-3']['label-3'] = $form_state['values']['options']['link-3']['label-3'];
|
|
|
+ $this->options['link-3']['path-3'] = $form_state['values']['options']['link-3']['path-3'];
|
|
|
+
|
|
|
+ $this->options['link-4']['label-4'] = $form_state['values']['options']['link-4']['label-4'];
|
|
|
+ $this->options['link-4']['path-4'] = $form_state['values']['options']['link-4']['path-4'];
|
|
|
+ }
|
|
|
+
|
|
|
+ function render($empty = FALSE) {
|
|
|
+ if (!$empty || !empty($this->options['empty'])) {
|
|
|
+ $output = '<ul class="action-links">';
|
|
|
+
|
|
|
+ // First link
|
|
|
+ if (!empty($this->options['link-1']['label-1']) AND !empty($this->options['link-1']['path-1'])) {
|
|
|
+ $output .= '<li>' . l($this->options['link-1']['label-1'], $this->options['link-1']['path-1']) . '</li>';
|
|
|
+ }
|
|
|
+
|
|
|
+ // Second link
|
|
|
+ if (!empty($this->options['link-2']['label-2']) AND !empty($this->options['link-2']['path-2'])) {
|
|
|
+ $output .= '<li>' . l($this->options['link-2']['label-2'], $this->options['link-2']['path-2']) . '</li>';
|
|
|
+ }
|
|
|
+
|
|
|
+ // Third link
|
|
|
+ if (!empty($this->options['link-3']['label-3']) AND !empty($this->options['link-3']['path-3'])) {
|
|
|
+ $output .= '<li>' . l($this->options['link-3']['label-3'], $this->options['link-3']['path-3']) . '</li>';
|
|
|
+ }
|
|
|
+
|
|
|
+ // Fourth link
|
|
|
+ if (!empty($this->options['link-4']['label-4']) AND !empty($this->options['link-4']['path-4'])) {
|
|
|
+ $output .= '<li>' . l($this->options['link-4']['label-4'], $this->options['link-4']['path-4']) . '</li>';
|
|
|
+ }
|
|
|
+ $output .= '</ul>';
|
|
|
+ return $output;
|
|
|
+ }
|
|
|
+ return '';
|
|
|
+ }
|
|
|
+
|
|
|
+}
|