diff --git a/classes/task/import_data.php b/classes/task/import_data.php index 7c0754e..65e6f1b 100755 --- a/classes/task/import_data.php +++ b/classes/task/import_data.php @@ -69,21 +69,26 @@ class import_data extends \core\task\scheduled_task { $filename = get_config('timetable', 'fname_substitution'); if (!$filename || !file_exists($filename)) return; - if (($handle = fopen($filename, 'r')) == FALSE) return; + if (($handle = fopen($filename, 'r')) == FALSE) return; $hash = hash_file('md5', $filename); if ($hash == $filehash) return; + /* $max_id = 0; $max_changetime = 0; if ($result = $DB->get_record_sql("select max(id), max(changetime) from {$CFG->prefix}timetable_substitution")) { $max_id = $result->{'max(id)'}; $max_changetime = $result->{'max(changetime)'}; - } + } echo "Max id = $max_id\n"; echo "Max changetime = $max_changetime\n"; + */ try { $transaction = $DB->start_delegated_transaction(); - while (($data = fgetcsv($handle, 1000, ',')) !== FALSE) { - $dataobject = (object)array('id' => $data[0], + echo "before delete\n"; + $DB->delete_records_select("timetable_substitution", "id>0"); + echo "after delete\n"; + while (($data = fgetcsv($handle, 1000, ',')) !== FALSE) { + $dataobject = (object)array('id' => $data[0], 'date' => $data[1], 'period' => $data[2], 'absence' => $data[3], @@ -104,19 +109,22 @@ class import_data extends \core\task\scheduled_task { 'classb' => utf8_encode($data[18]), 'substitutiontype' => $data[19], 'changetime' => $data[20], - 'unknown' => $data[21]); + 'unknown' => $data[21]); //echo var_dump($dataobject); foreach (get_object_vars($dataobject) as $key => $value) { if ($value=='') unset($dataobject->{$key}); } + /* if ($dataobject->id > $max_id) { $DB->insert_record_raw("timetable_substitution", $dataobject,false, false, true); echo "Object (id={$data[0]}) inserted\n"; } elseif ($dataobject->changetime >= $max_changetime) { - $DB->update_record("timetable_substitution", $dataobject); + $DB->update_record("timetable_substitution", $dataobject); echo "Object (id={$data[0]}) updated\n"; } - } + */ + $DB->insert_record_raw("timetable_substitution", $dataobject,false, false, true); + } $transaction->allow_commit(); fclose($handle); set_config('filehash_substitution', $hash, 'timetable'); @@ -248,4 +256,4 @@ class import_data extends \core\task\scheduled_task { $this->read_class(); } -} \ No newline at end of file +}