Newer
Older
<?php
/**
* Expose themes as context reactions.
*/
class context_reaction_delta extends context_reaction {
/**
* @todo
*/
function options_form($context) {
$values = $this->fetch_from_context($context);
$options = delta_layout_options();
$form = array(
'#tree' => TRUE,
'#title' => t('Delta Override Template'),
);
$form['delta'] = array(
'#type' => count($options) > 10 ? 'select' : 'radios',
'#title' => t('Select Custom theme settings template.'),
'#default_value' => isset($values['delta']) ? $values['delta'] : '',
'#options' => $options,
'#required' => TRUE,
);
return $form;
}
/**
* @todo
*/
function execute() {
global $delta, $theme_key;
foreach (context_active_contexts() as $context) {
if (!empty($context->reactions['delta']) && delta_valid($context->reactions['delta']['delta'], $theme_key)) {
$delta = $context->reactions['delta']['delta'];
delta_inject_settings($delta, $theme_key);
}
}
}
}