Example #1
0
 $table = new htmlobject_table_identifiers_checked('event_id');
 $arHead = array();
 $arHead['event_icon'] = array();
 $arHead['event_icon']['title'] = '';
 $arHead['event_id'] = array();
 $arHead['event_id']['title'] = 'ID';
 $arHead['event_description'] = array();
 $arHead['event_description']['title'] = 'Description';
 $arBody = array();
 $event = new event();
 $event_list = $event->get_list();
 foreach ($event_list as $ev) {
     $events_all++;
     $event_id = $ev['value'];
     $g_event = new event();
     $g_event->get_instance_by_id($event_id);
     if ($g_event->priority <= 2 && $g_event->status == 0) {
         // fill in event-error
         $events_error++;
         if ($events_error < $max_show_error) {
             $arBody[] = array('event_icon' => "<img widht='16' height='16' src='/openqrm/base/img/error.png'>", 'event_id' => $g_event->id, 'event_description' => $g_event->description);
         }
     }
 }
 $table->id = 'Tabelle';
 $table->css = 'htmlobject_table';
 $table->border = 1;
 $table->cellspacing = 0;
 $table->cellpadding = 3;
 $table->sort = '';
 $table->head = $arHead;
 function action()
 {
     $event = new event();
     $identifier = $this->response->html->request()->get($this->identifier_name);
     $msg = '';
     if ($identifier !== '') {
         foreach ($identifier as $id) {
             $event->get_instance_by_id($id);
             if ($event->priority == 9 && $event->source === 'License') {
                 continue;
             }
             $fields = array();
             $fields["event_status"] = 1;
             $event->update($id, $fields);
             $msg .= sprintf($this->lang['msg'], $id) . '<br>';
         }
     }
     $this->response->redirect($this->response->get_url($this->actions_name, 'select', $this->message_param, $msg));
 }
Example #3
0
 function select()
 {
     $h = array();
     $h['event_id']['title'] = $this->lang['table_id'];
     $h['event_id']['hidden'] = true;
     $h['event_id']['sortable'] = false;
     $h['event_priority']['title'] = $this->lang['table_state'];
     $h['event_time']['title'] = $this->lang['table_date'];
     $h['event_source']['title'] = $this->lang['table_source'];
     $h['event_description']['title'] = $this->lang['table_description'];
     $h['event_description']['sortable'] = false;
     $event = new event();
     $b = array();
     $table = $this->response->html->tablebuilder('events', $this->response->get_array($this->actions_name, 'select'));
     $table->offset = 0;
     $table->limit = 100;
     $table->sort = 'event_time';
     $table->order = 'DESC';
     switch ($this->response->html->request()->get('event_filter')) {
         case '':
         case 'all':
             $table->max = $event->get_count();
             break;
         case 'active':
             $table->max = $event->get_count('active');
             break;
         case 'error':
             $table->max = $event->get_count('error');
             break;
         case 'acknowledge':
             $table->max = $event->get_count('acknowledge');
             break;
         case 'warning':
             $table->max = $event->get_count('warning');
             break;
     }
     $table->init();
     switch ($this->response->html->request()->get('event_filter')) {
         case '':
         case 'all':
             $events = $event->display_overview($table->offset, $table->limit, $table->sort, $table->order);
             break;
         case 'active':
             $events = $event->display_overview($table->offset, $table->limit, $table->sort, $table->order, 'active');
             break;
         case 'error':
             $events = $event->display_overview($table->offset, $table->limit, $table->sort, $table->order, 'error');
             break;
         case 'acknowledge':
             $events = $event->display_overview($table->offset, $table->limit, $table->sort, $table->order, 'acknowledge');
             break;
         case 'warning':
             $events = $event->display_overview($table->offset, $table->limit, $table->sort, $table->order, 'warning');
             break;
     }
     $RootDir = $_SERVER["DOCUMENT_ROOT"] . '/openqrm/base/';
     $i = 0;
     foreach ($events as $key => $value) {
         $icon = "transition.png";
         switch ($value['event_priority']) {
             case 0:
                 $icon = '<span class="pill off">off</span>';
                 break;
             case 1:
             case 2:
             case 3:
                 $icon = '<span class="pill red">error</span>';
                 break;
                 // error event
             // error event
             case 4:
             case 5:
             case 6:
             case 7:
             case 8:
                 $icon = '<span class="pill green">notice</span>';
                 break;
                 // undefined event
             // undefined event
             case 9:
                 $icon = '<span class="pill yellow">running</span>';
                 break;
                 // active event
             // active event
             case 10:
                 $icon = '<span class="pill green">ok</span>';
                 break;
                 // notice event
         }
         if ($value['event_status'] === '1') {
             $icon = '<span class="pill green">ack</span>';
             // acknowledged event
         }
         $description = '';
         if (strstr($value['event_description'], "ERROR running token")) {
             $error_token = str_replace("ERROR running token ", "", $value['event_description']);
             $cmd_file = $this->rootdir . "/server/event/errors/" . $error_token . ".cmd";
             $error_file = $this->rootdir . "/server/event/errors/" . $error_token . ".out";
             // get command and error strings
             if ($this->file->exists($cmd_file) && $this->file->exists($error_file)) {
                 $oq_cmd = $this->file->get_contents($cmd_file);
                 $oq_cmd = str_replace('"', '', $oq_cmd);
                 $oq_cmd_error = $this->file->get_contents($error_file);
                 $oq_cmd_error = str_replace('"', '', $oq_cmd_error);
                 // set the event to error in any way
                 $event_fields = array();
                 $event_fields["event_priority"] = 1;
                 $event->update($value['event_id'], $event_fields);
                 $event->get_instance_by_id($value['event_id']);
                 $icon = '<span class="pill red">error</span>';
                 // set the description
                 $description = "<a href=\"/openqrm/base/server/event/errors/" . $error_token . ".out\" title=\"" . $oq_cmd_error . "\" target=\"_BLANK\">Error</a> running openQRM <a href=\"/openqrm/base/server/event/errors/" . $error_token . ".cmd\" title=\"" . $oq_cmd . "\"target=\"_BLANK\">command</a>";
                 $a = $this->response->html->a();
                 $a->title = $this->lang['action_rerun'];
                 $a->label = $this->lang['action_rerun'];
                 $a->handler = 'onclick="wait();"';
                 $a->css = 'start pull-right';
                 $a->href = $this->response->get_url($this->actions_name, 'rerun') . '&token=' . $error_token . '&event_id=' . $event->id;
                 $rerun = $a->get_string();
                 $description .= $rerun;
             } else {
                 // we are currently re-running the token, do not show the links
                 $description = "Error running openQRM command<br><strong>Currently re-running token {$error_token}</strong>";
             }
         } else {
             $description = $value['event_description'];
         }
         $b[$i]['event_id'] = $value['event_id'];
         $b[$i]['event_priority'] = $icon;
         $b[$i]['event_time'] = date('Y/m/d H:i:s', $value['event_time']);
         $b[$i]['event_source'] = $value['event_source'];
         $b[$i]['event_description'] = $description;
         $i++;
     }
     $filter = array();
     $filter[] = array('', 'all');
     $filter[] = array($this->lang['filter_active'], 'active');
     $filter[] = array($this->lang['filter_warning'], 'warning');
     $filter[] = array($this->lang['filter_error'], 'error');
     $filter[] = array($this->lang['filter_acknowledge'], 'acknowledge');
     asort($filter);
     $select = $this->response->html->select();
     $select->add($filter, array(1, 0));
     $select->name = 'event_filter';
     $select->handler = 'onchange="wait();this.form.submit();return false;"';
     $select->selected = array($this->response->html->request()->get('event_filter'));
     $box = $this->response->html->box();
     $box->add($select);
     $box->id = 'events_filter';
     $box->css = 'htmlobject_box';
     $box->label = $this->lang['lang_filter'];
     $table->add_headrow($box->get_string());
     $table->id = 'Tabelle';
     $table->css = 'htmlobject_table';
     $table->border = 1;
     $table->cellspacing = 0;
     $table->form_action = $this->response->html->thisfile;
     $table->cellpadding = 3;
     $table->autosort = false;
     $table->sort_link = false;
     $table->head = $h;
     $table->body = $b;
     $table->actions_name = $this->actions_name;
     $table->actions = array(array('remove' => $this->lang['action_remove']), array('acknowledge' => $this->lang['action_acknowledge']));
     $table->identifier = 'event_id';
     $table->identifier_name = $this->identifier_name;
     $table->limit_select = array(array("value" => 100, "text" => 100), array("value" => 200, "text" => 200), array("value" => 400, "text" => 400), array("value" => 500, "text" => 500));
     return $table;
 }
Example #4
0
 function action()
 {
     global $OPENQRM_SERVER_BASE_DIR;
     $RootDir = $_SERVER["DOCUMENT_ROOT"] . '/openqrm/base/';
     $token = $this->response->html->request()->get('token');
     $event_id = $this->response->html->request()->get('event_id');
     $msg = '';
     if ($token !== '' && $event_id !== '') {
         $event = new event();
         $event->get_instance_by_id($event_id);
         $event->log("event-action", $_SERVER['REQUEST_TIME'], 5, "event-overview.php", "Re-Running command {$token}", "", "", 0, 0, 0);
         $command = "mv -f " . $OPENQRM_SERVER_BASE_DIR . "/openqrm/web/base/server/event/errors/" . $token . ".cmd " . $OPENQRM_SERVER_BASE_DIR . "/openqrm/var/spool/openqrm-queue." . $token . " && rm -f " . $OPENQRM_SERVER_BASE_DIR . "/openqrm/web/base/server/event/errors/" . $token . ".out";
         shell_exec($command);
         $fields = array();
         $fields["event_priority"] = 4;
         $event->update($event_id, $fields);
         $msg .= "Re-running token " . $token . " / Event ID " . $event_id . "<br>";
     }
     $this->response->redirect($this->response->get_url($this->actions_name, 'select', $this->message_param, $msg));
 }
Example #5
0
 function action()
 {
     $RootDir = $_SERVER["DOCUMENT_ROOT"] . '/openqrm/base/';
     $identifiers = $this->response->html->request()->get($this->identifier_name);
     $msg = '';
     if ($identifiers !== '') {
         foreach ($identifiers as $id) {
             $event = new event();
             $event->get_instance_by_id($id);
             if (strstr($event->description, "ERROR running token")) {
                 $error_token = str_replace("ERROR running token ", "", $event->description);
                 $cmd_file = $RootDir . "/server/event/errors/" . $error_token . ".cmd";
                 $error_file = $RootDir . "/server/event/errors/" . $error_token . ".out";
                 if ($this->file->exists($cmd_file)) {
                     $error = $this->file->remove($cmd_file);
                     if ($error !== '') {
                         $msg .= $error . '<br>';
                     }
                 }
                 if ($this->file->exists($error_file)) {
                     $error = $this->file->remove($error_file);
                     if ($error !== '') {
                         $msg .= $error . '<br>';
                     }
                 }
             }
             $event->remove($id);
             $msg .= sprintf($this->lang['msg'], $id) . '<br>';
         }
     }
     $this->response->redirect($this->response->get_url($this->actions_name, 'select', $this->message_param, $msg));
 }