original_string: public function col_info($log) {
          global $PAGE;
  
          if (empty($log->info) && empty($log->dir)) {
              return '';
          }
  
          $info = array();
          if (!empty($log->info)) {
              $info = json_decode($log->info);
          }
          if (!empty($log->dir)) {
              $info[] = get_string('predictorresultsin', 'tool_analytics', $log->dir);
          }
          $PAGE->requires->js_call_amd('tool_analytics/log_info', 'loadInfo', array($log->id, $info));
          return \html_writer::link('#', get_string('view'), array('data-model-log-id' => $log->id));
      }
code: public function col_info($log) {
          global $PAGE;
  
          if (empty($log->info) && empty($log->dir)) {
              return '';
          }
  
          $info = array();
          if (!empty($log->info)) {
              $info = json_decode($log->info);
          }
          if (!empty($log->dir)) {
              $info[] = get_string('predictorresultsin', 'tool_analytics', $log->dir);
          }
          $PAGE->requires->js_call_amd('tool_analytics/log_info', 'loadInfo', array($log->id, $info));
          return \html_writer::link('#', get_string('view'), array('data-model-log-id' => $log->id));
      }
code_tokens: public function col_info ( $ log ) { global $ PAGE ; if ( empty ( $ log -> info ) && empty ( $ log -> dir ) ) { return '' ; } $ info = array ( ) ; if ( ! empty ( $ log -> info ) ) { $ info = json_decode ( $ log -> info ) ; } if ( ! empty ( $ log -> dir ) ) { $ info [ ] = get_string ( 'predictorresultsin' , 'tool_analytics' , $ log -> dir ) ; } $ PAGE -> requires -> js_call_amd ( 'tool_analytics/log_info' , 'loadInfo' , array ( $ log -> id , $ info ) ) ; return \ html_writer :: link ( '#' , get_string ( 'view' ) , array ( 'data-model-log-id' => $ log -> id ) ) ; }
docstring: Generate the info column.
  
  @param \stdClass $log log data.
  @return string HTML for the score column
docstring_tokens: Generate the info column .