annotate sites/all/modules/ctools/ctools_plugin_example/plugins/contexts/relcontext.inc @ 9:830c812b520f

added smtp module
author root <root@paio.local>
date Mon, 28 Oct 2013 15:34:27 +0000
parents ff03f76ab3fe
children
rev   line source
danielebarchiesi@0 1 <?php
danielebarchiesi@0 2
danielebarchiesi@0 3 /**
danielebarchiesi@0 4 * @file
danielebarchiesi@0 5 * Sample ctools context type plugin that
danielebarchiesi@0 6 * is used in this demo to create a relcontext from an existing simplecontext.
danielebarchiesi@0 7 */
danielebarchiesi@0 8
danielebarchiesi@0 9 /**
danielebarchiesi@0 10 * Plugins are described by creating a $plugin array which will be used
danielebarchiesi@0 11 * by the system that includes this file.
danielebarchiesi@0 12 */
danielebarchiesi@0 13 $plugin = array(
danielebarchiesi@0 14 'title' => t("Relcontext"),
danielebarchiesi@0 15 'description' => t('A relcontext object.'),
danielebarchiesi@0 16 // Function to create the relcontext.
danielebarchiesi@0 17 'context' => 'ctools_plugin_example_context_create_relcontext',
danielebarchiesi@0 18 // Function that does the settings.
danielebarchiesi@0 19 'settings form' => 'relcontext_settings_form',
danielebarchiesi@0 20 'keyword' => 'relcontext',
danielebarchiesi@0 21 'context name' => 'relcontext',
danielebarchiesi@0 22 );
danielebarchiesi@0 23
danielebarchiesi@0 24 /**
danielebarchiesi@0 25 * Create a context, either from manual configuration (form) or from an argument on the URL.
danielebarchiesi@0 26 *
danielebarchiesi@0 27 * @param $empty
danielebarchiesi@0 28 * If true, just return an empty context.
danielebarchiesi@0 29 * @param $data
danielebarchiesi@0 30 * If from settings form, an array as from a form. If from argument, a string.
danielebarchiesi@0 31 * @param $conf
danielebarchiesi@0 32 * TRUE if the $data is coming from admin configuration, FALSE if it's from a URL arg.
danielebarchiesi@0 33 *
danielebarchiesi@0 34 * @return
danielebarchiesi@0 35 * a Context object.
danielebarchiesi@0 36 */
danielebarchiesi@0 37 function ctools_plugin_example_context_create_relcontext($empty, $data = NULL, $conf = FALSE) {
danielebarchiesi@0 38 $context = new ctools_context('relcontext');
danielebarchiesi@0 39 $context->plugin = 'relcontext';
danielebarchiesi@0 40 if ($empty) {
danielebarchiesi@0 41 return $context;
danielebarchiesi@0 42 }
danielebarchiesi@0 43 if ($conf) {
danielebarchiesi@0 44 if (!empty($data)) {
danielebarchiesi@0 45 $context->data = new stdClass();
danielebarchiesi@0 46 // For this simple item we'll just create our data by stripping non-alpha and
danielebarchiesi@0 47 // adding 'sample_relcontext_setting' to it.
danielebarchiesi@0 48 $context->data->description = 'relcontext_from__' . preg_replace('/[^a-z]/i', '', $data['sample_relcontext_setting']);
danielebarchiesi@0 49 $context->data->description .= '_from_configuration_sample_simplecontext_setting';
danielebarchiesi@0 50 $context->title = t("Relcontext context from simplecontext");
danielebarchiesi@0 51 return $context;
danielebarchiesi@0 52 }
danielebarchiesi@0 53 }
danielebarchiesi@0 54 else {
danielebarchiesi@0 55 // $data is coming from an arg - it's just a string.
danielebarchiesi@0 56 // This is used for keyword.
danielebarchiesi@0 57 $context->title = "relcontext_" . $data->data->description;
danielebarchiesi@0 58 $context->argument = $data->argument;
danielebarchiesi@0 59 // Make up a bogus context.
danielebarchiesi@0 60 $context->data = new stdClass();
danielebarchiesi@0 61 // For this simple item we'll just create our data by stripping non-alpha and
danielebarchiesi@0 62 // prepend 'relcontext_' and adding '_created_from_from_simplecontext' to it.
danielebarchiesi@0 63 $context->data->description = 'relcontext_' . preg_replace('/[^a-z]/i', '', $data->data->description);
danielebarchiesi@0 64 $context->data->description .= '_created_from_simplecontext';
danielebarchiesi@0 65 return $context;
danielebarchiesi@0 66 }
danielebarchiesi@0 67 }
danielebarchiesi@0 68
danielebarchiesi@0 69 function relcontext_settings_form($conf, $external = FALSE) {
danielebarchiesi@0 70 $form = array();
danielebarchiesi@0 71
danielebarchiesi@0 72 $form['sample_relcontext_setting'] = array(
danielebarchiesi@0 73 '#type' => 'textfield',
danielebarchiesi@0 74 '#title' => t('Relcontext setting'),
danielebarchiesi@0 75 '#size' => 50,
danielebarchiesi@0 76 '#description' => t('Just an example setting.'),
danielebarchiesi@0 77 '#default_value' => !empty($conf['sample_relcontext_setting']) ? $conf['sample_relcontext_setting'] : '',
danielebarchiesi@0 78 '#prefix' => '<div class="clear-block no-float">',
danielebarchiesi@0 79 '#suffix' => '</div>',
danielebarchiesi@0 80 );
danielebarchiesi@0 81 return $form;
danielebarchiesi@0 82 }
danielebarchiesi@0 83