function views_random_seed_handler_sort_random::options_form in Views random seed 7
Same name and namespace in other branches
- 6 views_random_seed_handler_sort_random.inc \views_random_seed_handler_sort_random::options_form()
Basic options for all sort criteria
Overrides views_handler_sort::options_form
File
- ./
views_random_seed_handler_sort_random.inc, line 25 - Views random seed order class.
Class
- views_random_seed_handler_sort_random
- Handle a random sort with seed.
Code
function options_form(&$form, &$form_state) {
parent::options_form($form, $form_state);
$form['order']['#access'] = FALSE;
// User seed type.
$form['user_seed_type'] = array(
'#type' => 'radios',
'#title' => t('User seed type'),
'#options' => array(
'same_per_user' => t('Use the same seed for every user'),
'diff_per_user' => t('Use a different seed per user'),
'custom' => t('Use custom PHP code'),
),
'#default_value' => isset($this->options['user_seed_type']) ? $this->options['user_seed_type'] : 'same_per_user',
);
// User seed type.
$form['reset_seed_int'] = array(
'#type' => 'radios',
'#title' => t('Reset seed'),
'#options' => array(
'never' => t('Never'),
'custom' => t('Custom'),
'3600' => t('Every hour'),
'28800' => t('Every day'),
),
'#default_value' => isset($this->options['reset_seed_int']) ? $this->options['reset_seed_int'] : '3600',
);
$form['reset_seed_custom'] = array(
'#type' => 'textfield',
'#size' => 10,
'#title' => t('Custom reset seed'),
'#required' => TRUE,
'#default_value' => isset($this->options['reset_seed_custom']) ? $this->options['reset_seed_custom'] : '300',
'#description' => t('Define your own custom reset time, must be a number and is in seconds. Choose custom in the options above.'),
);
// Custom seed textarea.
$form['custom_seed'] = array(
'#type' => 'textarea',
'#title' => t('Custom PHP code'),
'#description' => t('PHP code, must return a string. Do not include <?php and ?> tags, this is passed through <code>eval()</code>.'),
'#default_value' => isset($this->options['custom_seed']) ? $this->options['custom_seed'] : NULL,
);
// Caching strategy info.
$form['cache_strategy'] = array(
'#type' => 'item',
'#title' => t('Cache exclude'),
'#description' => t('If you enable page caching, anonymous users might get duplicate items depending on their seed and which pages are allready cached by Drupal. If you wish to exclude paths from getting cached for anonymous users, install <a href="!url" target="_blank">Cache exclude</a>.', array(
'!url' => 'http://drupal.org/project/cacheexclude',
)),
);
}