}
/**
- * Path to executable file
+ * Path to directory
*/
-class admin_setting_configexecutable extends admin_setting_configtext {
+class admin_setting_configfile extends admin_setting_configtext {
/**
* Constructor
* @param string $name of setting
* @param string $visiblename localised
* @param string $description long localised info
- * @param string $defautpath default path
+ * @param string $defaultdirectory default directory location
*/
- function admin_setting_configexecutable($name, $visiblename, $description, $defaultpath) {
- parent::admin_setting_configtext($name, $visiblename, $description, $defaultpath, PARAM_RAW);
+ function admin_setting_configfile($name, $visiblename, $description, $defaultdirectory) {
+ parent::admin_setting_configtext($name, $visiblename, $description, $defaultdirectory, PARAM_RAW);
}
function output_html($data, $query='') {
$default = $this->get_defaultsetting();
if ($data) {
- if (file_exists($data) and is_executable($data)) {
+ if (file_exists($data)) {
$executable = '<span class="pathok">✔</span>';
} else {
$executable = '<span class="patherror">✘</span>';
}
return format_admin_setting($this, $this->visiblename,
- '<div class="form-executable defaultsnext"><input type="text" id="'.$this->get_id().'" name="'.$this->get_full_name().'" value="'.s($data).'" />'.$executable.'</div>',
+ '<div class="form-file defaultsnext"><input type="text" id="'.$this->get_id().'" name="'.$this->get_full_name().'" value="'.s($data).'" />'.$executable.'</div>',
$this->description, true, '', $default, $query);
}
}
/**
- * Path to directory
+ * Path to executable file
*/
-class admin_setting_configdirectory extends admin_setting_configtext {
- /**
- * Constructor
- * @param string $name of setting
- * @param string $visiblename localised
- * @param string $description long localised info
- * @param string $defaultdirectory default directory location
- */
- function admin_setting_configdirectory($name, $visiblename, $description, $defaultdirectory) {
- parent::admin_setting_configtext($name, $visiblename, $description, $defaultdirectory, PARAM_RAW);
+class admin_setting_configexecutable extends admin_setting_configfile {
+
+ function output_html($data, $query='') {
+ $default = $this->get_defaultsetting();
+
+ if ($data) {
+ if (file_exists($data) and is_executable($data)) {
+ $executable = '<span class="pathok">✔</span>';
+ } else {
+ $executable = '<span class="patherror">✘</span>';
+ }
+ } else {
+ $executable = '';
+ }
+
+ return format_admin_setting($this, $this->visiblename,
+ '<div class="form-file defaultsnext"><input type="text" id="'.$this->get_id().'" name="'.$this->get_full_name().'" value="'.s($data).'" />'.$executable.'</div>',
+ $this->description, true, '', $default, $query);
}
+}
+/**
+ * Path to directory
+ */
+class admin_setting_configdirectory extends admin_setting_configfile {
function output_html($data, $query='') {
$default = $this->get_defaultsetting();
}
return format_admin_setting($this, $this->visiblename,
- '<div class="form-directory defaultsnext"><input type="text" id="'.$this->get_id().'" name="'.$this->get_full_name().'" value="'.s($data).'" />'.$executable.'</div>',
+ '<div class="form-file defaultsnext"><input type="text" id="'.$this->get_id().'" name="'.$this->get_full_name().'" value="'.s($data).'" />'.$executable.'</div>',
$this->description, true, '', $default, $query);
}
}