function getNB_SESSION($mode_) { if (isset($_GET['from'])) { $t0 = strtotime($_GET['from']); } else { $t0 = strtotime($mode_->get_default_from()); } if (isset($_GET['to'])) { $t1 = strtotime($_GET['to']); } else { $t1 = time(); } if (isset($_GET['server'])) { $server_part = 'AND server="' . $_GET['server'] . '"'; } else { $server_part = ''; } $t0 = $mode_->transform_date($t0); $t1 = $mode_->transform_date($t1); if ($t0 > $t1) { popup_error(_('Error: "from" date is after "to" date, switching')); $buf = $t0; $t0 = $t1; $t1 = $buf; } if ($t1 > time()) { popup_error(_('Error: "to" field is in the future, switch to the current time')); $t1 = $mode_->transform_date(time()); } $t2 = strtotime($mode_->get_next(), $t1); $prefs = Preferences::getInstance(); $mysql_conf = $prefs->get('general', 'sql'); $sql = SQL::getInstance(); $res = $sql->DoQuery('SELECT * FROM @1 WHERE @2 BETWEEN %3 AND %4 ' . $server_part . ' AND ( @5 <= %4 OR ( @6 IS NULL AND id IN (SELECT id FROM @7)))', SESSIONS_HISTORY_TABLE, 'start_stamp', date('c', $t0), date('c', $t2), 'stop_stamp', 'stop_stamp', $mysql_conf['prefix'] . 'sessions'); $result_nb_sessions = build_array($t0, $t2, $mode_); $g = $sql->FetchAllResults(); foreach ($g as $p) { $y = strtotime($p['start_stamp']); $buf = date($mode_->get_prefix(), $y); foreach ($result_nb_sessions as $k => $v) { if ($buf > $k) { continue; } if (is_null($p['stop_stamp'])) { $result_nb_sessions[$k] += 1; } else { $time_stop = strtotime($p['stop_stamp']); $str_stop = date($mode_->get_prefix(), $time_stop); if ($str_stop >= $k) { $result_nb_sessions[$k] += 1; } else { break; } } } } return $result_nb_sessions; }
function getNB_SESSION($mode_) { if (isset($_GET['from'])) { $t0 = strtotime($_GET['from']); } else { $t0 = strtotime($mode_->get_default_from()); } if (isset($_GET['to'])) { $t1 = strtotime($_GET['to']); } else { $t1 = time(); } if (isset($_GET['server'])) { $server = $_GET['server']; } else { $server = null; } $t0 = $mode_->transform_date($t0); $t1 = $mode_->transform_date($t1); if ($t0 > $t1) { popup_error(_('Error: "from" date is after "to" date, the current time will be used')); $buf = $t0; $t0 = $t1; $t1 = $buf; } if ($t1 > time()) { popup_error(_('Error: "to" field is in the future, the current time will be used')); $t1 = $mode_->transform_date(time()); } $t2 = strtotime($mode_->get_next(), $t1); $sessions = $_SESSION['service']->sessions_reports_list2($t0, $t2, $server); if (is_null($sessions)) { $sessions = array(); } $result_nb_sessions = build_array($t0, $t2, $mode_); foreach ($sessions as $session) { $y = strtotime($session->getStartTime()); $buf = date($mode_->get_prefix(), $y); foreach ($result_nb_sessions as $k => $v) { if ($buf > $k) { continue; } if (is_null($session->getStopTime())) { $result_nb_sessions[$k] += 1; } else { $time_stop = strtotime($session->getStopTime()); $str_stop = date($mode_->get_prefix(), $time_stop); if ($str_stop >= $k) { $result_nb_sessions[$k] += 1; } else { break; } } } } return $result_nb_sessions; }
function getHTMLForLabels($record, $labeling, $demoName = null) { if ($demoName == "wikifier") { return wikify2($record, $labeling); } $labels = build_array($labeling->labels); $rawtext = $record->rawText; $sents = $record->labelViews["sentences"]->labels; ksort($labels); $previous = 0; $j = 0; $result = '<div class="output"><p><span class="sentence">'; foreach ($labels as $start => $ends) { if ($start > $sents[$j]->ending) { if ($previous < $sents[$j]->ending) { $result .= htmlspecialchars(my_substr($rawtext, $previous, $sents[$j]->ending - $previous)); $previous = $sents[$j]->ending; } $result .= '</span><span class="sentence">'; $j = $j + 1; } ksort($ends); if ($start - $previous > 0) { $result .= htmlspecialchars(my_substr($rawtext, $previous, $start - $previous)); } foreach ($ends as $end => $span) { $result .= getSpanHTML($rawtext, $span, ""); $previous = $end; } } $result .= htmlspecialchars(my_substr($rawtext, $previous)); $result .= '</span></p></div>'; return nl2br($result); }