*/ class UploadFileForm extends \FormValidator { /** * * @param string $action * @return \Glossary\UploadFileForm */ public static function create($action) { return new self('upload_file', 'post', $action); } function __construct($form_name = 'upload_file', $method = 'post', $action = '', $target = '', $attributes = null, $track_submit = true) { parent::__construct($form_name, $method, $action, $target, $attributes, $track_submit); } /** * * */ function init() { $form_name = get_lang('ImportGlossary'); $this->addHeader($form_name); $this->addHidden(Request::PARAM_SEC_TOKEN, Access::instance()->get_token()); $label = get_lang('ImportCSVFileLocation'); $this->addFile('file', $label); $this->addRule('file', get_lang('ThisFieldIsRequired'), 'required'); $this->addCheckBox('deleteall', '', get_lang('DeleteAllGlossaryTerms')); $this->addButton('save', get_lang('Save')); $label = get_lang('CSVMustLookLike'); $label = "$label"; $help = '
term;definition;
"Hello";"Hola";
"Good";"Bueno";
';
$this->addHtml($label . $help);
}
public function get_delete_all()
{
return (bool) $this->exportValue('deleteall');
}
/**
*
* @return object
*/
public function get_file()
{
$result = Request::file('file', array());
if (empty($result)) {
return null;
}
$error = isset($result['error']) ? (bool) $result['error'] : false;
if ($error) {
return array();
}
return (object) $result;
}
public function validate()
{
$result = (bool) parent::validate();
if ($result == false) {
return false;
}
$file = $this->get_file();
if (empty($file)) {
return false;
}
return true;
}
}