public static function process($args)
 {
     /* use CoursefinderFinder to sanitise options and get data */
     $options = CourseFinder::get_options($args);
     if ($options) {
         $data = CourseFinder::get_data($options);
         if (false !== $data) {
             if ($options['field'] !== '') {
                 return self::get_field($data, $options['field']);
             } else {
                 return self::get_page($data, $options);
             }
         }
     }
     return '';
 }
Example #2
0
/* whether or not to display the term */
$opts['display_term'] = isset($_POST["display_term"]);
$chckd = $opts['display_term'] ? ' checked="checked"' : '';
printf('<p><label for="display_term">Display term in output?</label><input type="checkbox" name="display_term" id="display_term"%s></p>', $chckd);
/* term */
$opts['term'] = isset($_POST["term"]) && preg_match('/^[0-9]{6}$/', $_POST["term"]) ? $_POST["term"] : '201718';
printf('<p><label for="term">Term:</label><input type="text" name="term" id="term" value="%s"></p>', $opts['term']);
$types = array('PGR', 'PGT', 'UG', 'PG');
$opts['type'] = isset($_POST["type"]) && in_array($_POST["type"], $types) ? $_POST["type"] : 'UG';
print '<p><label for="type">Type:</label><select name="type" id="type">';
foreach ($types as $t) {
    $sel = $t == $opts['type'] ? ' selected' : '';
    printf('<option value="%1$s"%2$s>%1$s</option>', $t, $sel);
}
print '</select></p>';
$outputs = array('html', 'json');
$opts['output'] = isset($_POST["output"]) && in_array($_POST["output"], $outputs) ? $_POST["output"] : 'html';
print '<p><label for="type">Output:</label><select name="output" id="output">';
foreach ($outputs as $o) {
    $sel = $o == $opts['output'] ? ' selected' : '';
    printf('<option value="%1$s"%2$s>%1$s</option>', $o, $sel);
}
print '</select></p>';
print '<p><input type="submit" value="get course"></p>';
print_r($opts);
print '</form></div></div>';
print '<div class="coursefinder_output">';
print CourseDisplay::process($opts);
print '<pre>';
print_r(CourseFinder::get_data($opts));
print '</pre></div></body></html>';