danielebarchiesi@0: t("Simplecontext"), danielebarchiesi@0: 'description' => t('A single "simplecontext" context, or data element.'), danielebarchiesi@0: 'context' => 'ctools_plugin_example_context_create_simplecontext', // func to create context danielebarchiesi@0: 'context name' => 'simplecontext', danielebarchiesi@0: 'settings form' => 'simplecontext_settings_form', danielebarchiesi@0: 'keyword' => 'simplecontext', danielebarchiesi@0: danielebarchiesi@0: // Provides a list of items which are exposed as keywords. danielebarchiesi@0: 'convert list' => 'simplecontext_convert_list', danielebarchiesi@0: // Convert keywords into data. danielebarchiesi@0: 'convert' => 'simplecontext_convert', danielebarchiesi@0: danielebarchiesi@0: 'placeholder form' => array( danielebarchiesi@0: '#type' => 'textfield', danielebarchiesi@0: '#description' => t('Enter some data to represent this "simplecontext".'), danielebarchiesi@0: ), danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * Create a context, either from manual configuration or from an argument on the URL. danielebarchiesi@0: * danielebarchiesi@0: * @param $empty danielebarchiesi@0: * If true, just return an empty context. danielebarchiesi@0: * @param $data danielebarchiesi@0: * If from settings form, an array as from a form. If from argument, a string. danielebarchiesi@0: * @param $conf danielebarchiesi@0: * TRUE if the $data is coming from admin configuration, FALSE if it's from a URL arg. danielebarchiesi@0: * danielebarchiesi@0: * @return danielebarchiesi@0: * a Context object/ danielebarchiesi@0: */ danielebarchiesi@0: function ctools_plugin_example_context_create_simplecontext($empty, $data = NULL, $conf = FALSE) { danielebarchiesi@0: $context = new ctools_context('simplecontext'); danielebarchiesi@0: $context->plugin = 'simplecontext'; danielebarchiesi@0: danielebarchiesi@0: if ($empty) { danielebarchiesi@0: return $context; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: if ($conf) { danielebarchiesi@0: if (!empty($data)) { danielebarchiesi@0: $context->data = new stdClass(); danielebarchiesi@0: // For this simple item we'll just create our data by stripping non-alpha and danielebarchiesi@0: // adding '_from_configuration_item_1' to it. danielebarchiesi@0: $context->data->item1 = t("Item1"); danielebarchiesi@0: $context->data->item2 = t("Item2"); danielebarchiesi@0: $context->data->description = preg_replace('/[^a-z]/i', '', $data['sample_simplecontext_setting']); danielebarchiesi@0: $context->data->description .= '_from_configuration_sample_simplecontext_setting'; danielebarchiesi@0: $context->title = t("Simplecontext context from config"); danielebarchiesi@0: return $context; danielebarchiesi@0: } danielebarchiesi@0: } danielebarchiesi@0: else { danielebarchiesi@0: // $data is coming from an arg - it's just a string. danielebarchiesi@0: // This is used for keyword. danielebarchiesi@0: $context->title = $data; danielebarchiesi@0: $context->argument = $data; danielebarchiesi@0: // Make up a bogus context danielebarchiesi@0: $context->data = new stdClass(); danielebarchiesi@0: $context->data->item1 = t("Item1"); danielebarchiesi@0: $context->data->item2 = t("Item2"); danielebarchiesi@0: danielebarchiesi@0: // For this simple item we'll just create our data by stripping non-alpha and danielebarchiesi@0: // adding '_from_simplecontext_argument' to it. danielebarchiesi@0: $context->data->description = preg_replace('/[^a-z]/i', '', $data); danielebarchiesi@0: $context->data->description .= '_from_simplecontext_argument'; danielebarchiesi@0: $context->arg_length = strlen($context->argument); danielebarchiesi@0: return $context; danielebarchiesi@0: } danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: function simplecontext_settings_form($conf, $external = FALSE) { danielebarchiesi@0: if (empty($conf)) { danielebarchiesi@0: $conf = array( danielebarchiesi@0: 'sample_simplecontext_setting' => 'default simplecontext setting', danielebarchiesi@0: ); danielebarchiesi@0: } danielebarchiesi@0: $form = array(); danielebarchiesi@0: $form['sample_simplecontext_setting'] = array( danielebarchiesi@0: '#type' => 'textfield', danielebarchiesi@0: '#title' => t('Setting for simplecontext'), danielebarchiesi@0: '#size' => 50, danielebarchiesi@0: '#description' => t('An example setting that could be used to configure a context'), danielebarchiesi@0: '#default_value' => $conf['sample_simplecontext_setting'], danielebarchiesi@0: '#prefix' => '