views_handler_sort_random.inc

  1. 3.x handlers/views_handler_sort_random.inc
  2. 2.x handlers/views_handler_sort_random.inc

File

handlers/views_handler_sort_random.inc
View source
  1. <?php
  2. /**
  3. * Handle a random sort.
  4. */
  5. class views_handler_sort_random extends views_handler_sort {
  6. function query() {
  7. global $db_type;
  8. switch ($db_type) {
  9. case 'mysql':
  10. case 'mysqli':
  11. $formula = 'RAND()';
  12. break;
  13. case 'pgsql':
  14. $formula = 'RANDOM()';
  15. break;
  16. }
  17. if (!empty($formula)) {
  18. $this->query->add_orderby(NULL, $formula, $this->options['order'], '_' . $this->field);
  19. }
  20. }
  21. function options_form(&$form, &$form_state) {
  22. parent::options_form($form, $form_state);
  23. $form['order']['#access'] = FALSE;
  24. }
  25. }