form_type = $form_type; if ($this->form_type == self::TYPE_IMPORT) { $this->build_import_form(); } elseif ($this->form_type == self::TYPE_EXPORT) { if ($locked_status == 0) { $this->build_export_form_option(false); } else { $this->build_export_form(); } } elseif ($this->form_type == self::TYPE_EXPORT_PDF) { $this->build_pdf_export_form(); } $this->setDefaults(); } public function display() { parent::display(); } public function setDefaults($defaults = [], $filter = null) { parent::setDefaults($defaults, $filter); } protected function build_pdf_export_form() { $renderer = &$this->defaultRenderer(); $renderer->setCustomElementTemplate('{element}'); $this->addElement('header', get_lang('Choose orientation')); $this->addElement('radio', 'orientation', null, get_lang('Portrait'), 'portrait'); $this->addElement('radio', 'orientation', null, get_lang('Landscape'), 'landscape'); $this->addButtonExport(get_lang('Export')); $this->setDefaults([ 'orientation' => 'portrait', ]); } protected function build_export_form() { $this->addElement('header', get_lang('PDF report')); $this->addElement('radio', 'file_type', get_lang('Output file type'), 'CSV (Comma-Separated Values)', 'csv'); $this->addElement('radio', 'file_type', null, 'XML (Extensible Markup Language)', 'xml'); $this->addElement('radio', 'file_type', null, 'PDF (Portable Document Format)', 'pdf'); $this->addButtonExport(get_lang('Export')); $this->setDefaults([ 'file_type' => 'csv', ]); } protected function build_export_form_option($show_pdf = true) { $this->addElement('header', get_lang('PDF report')); $this->addElement('radio', 'file_type', get_lang('Output file type'), 'CSV (Comma-Separated Values)', 'csv'); $this->addElement('radio', 'file_type', null, 'XML (Extensible Markup Language)', 'xml'); $this->addElement( 'radio', 'file_type', Display::return_icon('info3.gif', get_lang('To export, you must lock the evaluation.')), 'PDF (Portable Document Format)', 'pdf', ['disabled'] ); $this->addButtonExport(get_lang('Export')); $this->setDefaults([ 'file_type' => 'csv', ]); } protected function build_import_form() { $this->addElement('hidden', 'formSent'); $this->addElement('header', get_lang('Import marks in an assessment')); $this->addElement('file', 'import_file', get_lang('URL/URI')); $this->addElement( 'radio', 'file_type', get_lang('File type'), 'CSV (' .get_lang('Example CSV file') .')', 'csv' ); //$this->addElement('radio', 'file_type', null, 'XML ('.get_lang('Example XML file').')', 'xml'); $this->addElement('checkbox', 'overwrite', null, get_lang('Overwrite scores')); $this->addElement('checkbox', 'ignoreerrors', null, get_lang('Ignore errors')); $this->addButtonImport(get_lang('Validate')); $this->setDefaults([ 'formSent' => '1', 'file_type' => 'csv', ]); } }