You are here

function theme_quiz_stats_get_basic_stats in Quiz 6.x

Same name and namespace in other branches
  1. 8.6 modules/quiz_stats/quiz_stats.admin.inc \theme_quiz_stats_get_basic_stats()
  2. 8.4 modules/quiz_stats/quiz_stats.admin.inc \theme_quiz_stats_get_basic_stats()
  3. 8.5 modules/quiz_stats/quiz_stats.admin.inc \theme_quiz_stats_get_basic_stats()
  4. 6.4 includes/quiz_stats/quiz_stats.admin.inc \theme_quiz_stats_get_basic_stats()
  5. 7.6 modules/quiz_stats/quiz_stats.admin.inc \theme_quiz_stats_get_basic_stats()
  6. 7 includes/quiz_stats/quiz_stats.admin.inc \theme_quiz_stats_get_basic_stats()
  7. 7.4 includes/quiz_stats/quiz_stats.admin.inc \theme_quiz_stats_get_basic_stats()
  8. 7.5 modules/quiz_stats/quiz_stats.admin.inc \theme_quiz_stats_get_basic_stats()

Generates table of results from quiz data structure.

Parameters

@results: Array containing quiz results data structure.

Return value

HTML table containing quiz title, author, questions count, attempt count.

1 theme call to theme_quiz_stats_get_basic_stats()
quiz_stats_get_basic_stats in modules/quiz_stats/quiz_stats.admin.inc
Returns statistics for all available quizzes.

File

modules/quiz_stats/quiz_stats.admin.inc, line 469
Administration file for Quiz stats Module.

Code

function theme_quiz_stats_get_basic_stats($variables) {
  $results = $variables['results'];
  if (empty($results)) {
    return '<p>' . t('No questions were found.') . '</p>';
  }
  $header = [
    'title' => t('Quiz'),
    'creator' => t('Author'),
    'created' => t('Created'),
  ];
  if (user_access('access author stats')) {
    $header['questions_count'] = t('Questions');
    $header['attempt_count'] = t('Attempts');
  }
  $p = drupal_get_path('module', 'quiz_stats');
  $chart_icon = theme('image', [
    'path' => "{$p}/chart.png",
    'width' => t('Charts'),
    'height' => t('See charts'),
  ]);
  foreach ($results as $result) {
    $title_link = user_access('access author stats') ? 'quiz/' . $result['nid'] . '/quiz/statistics' : 'user/' . arg(1) . '/stats/';
    $row = [
      'title' => l($chart_icon . ' ' . $result['title'], $title_link, [
        'html' => TRUE,
      ]),
      'creator' => l($result['name'], 'user/' . $result['uid']),
      'created' => \Drupal::service('date.formatter')
        ->format($result['created'], 'short'),
    ];
    if (user_access('access author stats')) {
      $row['questions_count'] = quiz_get_number_of_questions($result['vid'], $result['nid']);
      $row['attempt_count'] = _quiz_get_attempt_count($result['nid']);
    }
    $rows[] = $row;
  }
  module_load_include('inc', 'quiz', 'quiz.pages');
  $cc = '<em>' . t('Chart icon from !url', [
    '!url' => 'pinvoke.com',
  ]) . '</em>';
  return theme('table', [
    'header' => $header,
    'rows' => $rows,
    'attributes' => [
      'id' => 'tablesorter',
    ],
  ]) . $cc;
}