diff --git a/gosa-plugins/goto/addons/goto/class_goto_import_file.inc b/gosa-plugins/goto/addons/goto/class_goto_import_file.inc
index 3eedfc0ff03277d8c9d812b76e6b724a6d41a3f3..7c328d788d6614b450c090fca57451076a5c8bac 100644 (file)
var $events = array();
var $csv_fields = array();
+ var $import_successful = FALSE; // Indicates that we have successfully imported everything.
public function __construct($config,&$parent)
{
plugin::plugin($config,NULL);
$this->parent = $parent;
- $this->daemon_events = DaemonEvent::get_event_types( SYSTEM_EVENT);
+ $this->daemon_events = DaemonEvent::get_event_types( SYSTEM_EVENT | HIDDEN_EVENT);
$this->csv_fields = array(
"0"=>"TIMESTAMP","1" => "MAC", "2" => "HEADER", "3" => "OGROUP",
/* Some file checks
*/
- $lines = split("\n",$str);
+ $lines = preg_split("/\n/",$str);
if(empty($str) || !count($lines)){
msg_dialog::display(_("Import"), msgPool::incorrectUpload(_("file is empty")),ERROR_DIALOG);
return;
/* Load values from file
*/
- $fields = split(";",$line);
+ $fields = explode(";",$line);
$event = array();
foreach($this->csv_fields as $key => $val) {
$event[$val] = "";
$fail ++;
continue;
}
+
+ /* Create event
+ */
$class= $this->daemon_events['QUEUED'][$event['HEADER']];
+ $o_data = $this->daemon_events['BY_CLASS'][$class];
$object = new $class($this->config);
- $object->set_type(TRIGGERED_EVENT);
$object->add_targets(array($event['MAC']));
+ if($o_data['s_Schedule_Action'] == $event['HEADER']){
+ $object->set_type(SCHEDULED_EVENT);
+ }else{
+ $object->set_type(TRIGGERED_EVENT);
+ }
/* Update values like fqdn a.s.o
*/
}
}
msg_dialog::display(_("Import"),sprintf(_("Import complete: %s events successfully send, %s failed"),$success,$fail),INFO_DIALOG);
+ $this->import_successful = count($this->events) == 0;
}
}