[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/mod/data/ -> renderer.php (source)

   1  <?php
   2  
   3  defined('MOODLE_INTERNAL') || die();
   4  
   5  class mod_data_renderer extends plugin_renderer_base {
   6  
   7      public function import_setting_mappings($datamodule, data_preset_importer $importer) {
   8  
   9          $strblank = get_string('blank', 'data');
  10          $strcontinue = get_string('continue');
  11          $strwarning = get_string('mappingwarning', 'data');
  12          $strfieldmappings = get_string('fieldmappings', 'data');
  13          $strnew = get_string('new');
  14  
  15  
  16          $params = $importer->get_preset_settings();
  17          $settings = $params->settings;
  18          $newfields = $params->importfields;
  19          $currentfields = $params->currentfields;
  20  
  21          $html  = html_writer::start_tag('div', array('class'=>'presetmapping'));
  22          $html .= html_writer::start_tag('form', array('method'=>'post', 'action'=>''));
  23          $html .= html_writer::start_tag('div');
  24          $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'action', 'value'=>'finishimport'));
  25          $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'sesskey', 'value'=>sesskey()));
  26          $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'d', 'value'=>$datamodule->id));
  27  
  28          if ($importer instanceof data_preset_existing_importer) {
  29              $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'fullname', 'value'=>$importer->get_userid().'/'.$importer->get_directory()));
  30          } else {
  31              $html .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'directory', 'value'=>$importer->get_directory()));
  32          }
  33  
  34          if (!empty($newfields)) {
  35              $html .= $this->output->heading_with_help($strfieldmappings, 'fieldmappings', 'data', '', '', 3);
  36  
  37              $table = new html_table();
  38              $table->data = array();
  39  
  40              foreach ($newfields as $nid => $newfield) {
  41                  $row = array();
  42                  $row[0] = html_writer::tag('label', $newfield->name, array('for'=>'id_'.$newfield->name));
  43                  $row[1] = html_writer::start_tag('select', array('name'=>'field_'.$nid, 'id'=>'id_'.$newfield->name));
  44  
  45                  $selected = false;
  46                  foreach ($currentfields as $cid => $currentfield) {
  47                      if ($currentfield->type != $newfield->type) {
  48                          continue;
  49                      }
  50                      if ($currentfield->name == $newfield->name) {
  51                          $row[1] .= html_writer::tag('option', get_string('mapexistingfield', 'data', $currentfield->name), array('value'=>$cid, 'selected'=>'selected'));
  52                          $selected=true;
  53                      } else {
  54                          $row[1] .= html_writer::tag('option', get_string('mapexistingfield', 'data', $currentfield->name), array('value'=>$cid));
  55                      }
  56                  }
  57  
  58                  if ($selected) {
  59                      $row[1] .= html_writer::tag('option', get_string('mapnewfield', 'data'), array('value'=>'-1'));
  60                  } else {
  61                      $row[1] .= html_writer::tag('option', get_string('mapnewfield', 'data'), array('value'=>'-1', 'selected'=>'selected'));
  62                  }
  63  
  64                  $row[1] .= html_writer::end_tag('select');
  65                  $table->data[] = $row;
  66              }
  67              $html .= html_writer::table($table);
  68              $html .= html_writer::tag('p', $strwarning);
  69          } else {
  70              $html .= $this->output->notification(get_string('nodefinedfields', 'data'));
  71          }
  72  
  73          $html .= html_writer::start_tag('div', array('class'=>'overwritesettings'));
  74          $html .= html_writer::tag('label', get_string('overwritesettings', 'data'), array('for'=>'overwritesettings'));
  75          $html .= html_writer::empty_tag('input', array('type'=>'checkbox', 'name'=>'overwritesettings', 'id'=>'overwritesettings'));
  76          $html .= html_writer::end_tag('div');
  77          $html .= html_writer::empty_tag('input', array('type'=>'submit', 'class'=>'button', 'value'=>$strcontinue));
  78  
  79          $html .= html_writer::end_tag('div');
  80          $html .= html_writer::end_tag('form');
  81          $html .= html_writer::end_tag('div');
  82  
  83          return $html;
  84      }
  85  
  86  }


Generated: Thu Aug 11 10:00:09 2016 Cross-referenced by PHPXref 0.7.1