Moodle  2.2.1
http://www.collinsharper.com
C:/xampp/htdocs/moodle/mod/data/renderer.php
Go to the documentation of this file.
00001 <?php
00002 
00003 defined('MOODLE_INTERNAL') || die();
00004 
00005 class mod_data_renderer extends plugin_renderer_base {
00006     
00007     public function import_setting_mappings($datamodule, data_preset_importer $importer) {
00008 
00009         $strblank = get_string('blank', 'data');
00010         $strcontinue = get_string('continue');
00011         $strwarning = get_string('mappingwarning', 'data');
00012         $strfieldmappings = get_string('fieldmappings', 'data');
00013         $strnew = get_string('new');
00014 
00015 
00016         $params = $importer->get_preset_settings();
00017         $settings = $params->settings;
00018         $newfields = $params->importfields;
00019         $currentfields = $params->currentfields;
00020 
00021         $html  = html_writer::start_tag('div', array('class'=>'presetmapping'));
00022         $html .= html_writer::start_tag('form', array('method'=>'post', 'action'=>''));
00023         $html .= html_writer::start_tag('div');
00024         $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'action', 'value'=>'finishimport'));
00025         $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'sesskey', 'value'=>sesskey()));
00026         $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'d', 'value'=>$datamodule->id));
00027         
00028         if ($importer instanceof data_preset_existing_importer) {
00029             $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'fullname', 'value'=>$importer->get_userid().'/'.$importer->get_directory()));
00030         } else {
00031             $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'directory', 'value'=>$importer->get_directory()));
00032         }
00033 
00034         if (!empty($newfields)) {
00035             $html .= $this->output->heading_with_help($strfieldmappings, 'fieldmappings', 'data');
00036 
00037             $table = new html_table();
00038             $table->data = array();
00039 
00040             foreach ($newfields as $nid => $newfield) {
00041                 $row = array();
00042                 $row[0] = html_writer::tag('label', $newfield->name, array('for'=>'id_'.$newfield->name));
00043                 $row[1] = html_writer::start_tag('select', array('name'=>'field_'.$nid, 'id'=>'id_'.$newfield->name));
00044 
00045                 $selected = false;
00046                 foreach ($currentfields as $cid => $currentfield) {
00047                     if ($currentfield->type != $newfield->type) {
00048                         continue;
00049                     }
00050                     if ($currentfield->name == $newfield->name) {
00051                         $row[1] .= html_writer::tag('option', get_string('mapexistingfield', 'data', $currentfield->name), array('value'=>$cid, 'selected'=>'selected'));
00052                         $selected=true;
00053                     } else {
00054                         $row[1] .= html_writer::tag('option', get_string('mapexistingfield', 'data', $currentfield->name), array('value'=>$cid));
00055                     }
00056                 }
00057 
00058                 if ($selected) {
00059                     $row[1] .= html_writer::tag('option', get_string('mapnewfield', 'data'), array('value'=>'-1'));
00060                 } else {
00061                     $row[1] .= html_writer::tag('option', get_string('mapnewfield', 'data'), array('value'=>'-1', 'selected'=>'selected'));
00062                 }
00063                 
00064                 $row[1] .= html_writer::end_tag('select');
00065                 $table->data[] = $row;
00066             }
00067             $html .= html_writer::table($table);
00068             $html .= html_writer::tag('p', $strwarning);
00069         } else {
00070             $html .= $this->output->notification(get_string('nodefinedfields', 'data'));
00071         }
00072 
00073         $html .= html_writer::start_tag('div', array('class'=>'overwritesettings'));
00074         $html .= html_writer::tag('label', get_string('overwritesettings', 'data'), array('for'=>'overwritesettings'));
00075         $html .= html_writer::empty_tag('input', array('type'=>'checkbox', 'name'=>'overwritesettings', 'id'=>'overwritesettings'));
00076         $html .= html_writer::end_tag('div');
00077         $html .= html_writer::empty_tag('input', array('type'=>'submit', 'class'=>'button', 'value'=>$strcontinue));
00078 
00079         $html .= html_writer::end_tag('div');
00080         $html .= html_writer::end_tag('form');
00081         $html .= html_writer::end_tag('div');
00082 
00083         return $html;
00084     }
00085     
00086 }
 All Data Structures Namespaces Files Functions Variables Enumerations