/**
  * Checks that Ghostscript is installed.
  *
  * @Given /^ghostscript is installed$/
  */
 public function ghostscript_is_installed()
 {
     $testpath = setaskfeedback_editpdf\pdf::test_gs_path();
     if (!extension_loaded('zlib') or $testpath->status !== setaskfeedback_editpdf\pdf::GSPATH_OK) {
         throw new \Moodle\BehatExtension\Exception\SkippedException();
     }
 }
Beispiel #2
0
 /**
  * Automatically enable or disable editpdf feedback plugin based on
  * whether the ghostscript path is set correctly.
  *
  * @return bool
  */
 public function is_enabled()
 {
     if ($this->enabledcache === null) {
         $testpath = setaskfeedback_editpdf\pdf::test_gs_path(false);
         $this->enabledcache = $testpath->status == setaskfeedback_editpdf\pdf::GSPATH_OK;
     }
     return $this->enabledcache;
 }
Beispiel #3
0
require_capability('moodle/site:config', context_system::instance());
$strheading = get_string('testgs', 'setaskfeedback_editpdf');
$PAGE->navbar->add(get_string('administrationsite'));
$PAGE->navbar->add(get_string('plugins', 'admin'));
$PAGE->navbar->add(get_string('setaskmentplugins', 'mod_setask'));
$PAGE->navbar->add(get_string('feedbackplugins', 'mod_setask'));
$PAGE->navbar->add(get_string('pluginname', 'setaskfeedback_editpdf'), new moodle_url('/admin/settings.php?section=setaskfeedback_editpdf'));
$PAGE->navbar->add($strheading);
$PAGE->set_heading($strheading);
$PAGE->set_title($strheading);
if (optional_param('sendimage', false, PARAM_BOOL)) {
    // Serve the generated test image.
    setaskfeedback_editpdf\pdf::send_test_image();
    die;
}
$result = setaskfeedback_editpdf\pdf::test_gs_path();
switch ($result->status) {
    case setaskfeedback_editpdf\pdf::GSPATH_OK:
        $msg = get_string('test_ok', 'setaskfeedback_editpdf');
        $msg .= html_writer::empty_tag('br');
        $imgurl = new moodle_url($PAGE->url, array('sendimage' => 1));
        $msg .= html_writer::empty_tag('img', array('src' => $imgurl, 'alt' => get_string('gsimage', 'setaskfeedback_editpdf')));
        break;
    case setaskfeedback_editpdf\pdf::GSPATH_ERROR:
        $msg = $result->message;
        break;
    default:
        $msg = get_string("test_{$result->status}", 'setaskfeedback_editpdf');
        break;
}
$returl = new moodle_url('/admin/settings.php', array('section' => 'setaskfeedback_editpdf'));