127 && $cpos>=0){$count_2B++;$cpos--;$lastchar=$str[$cpos];}if($count_2B%2){$len--;}return substr($str,0,$len).$suf;} function Sele($S, $D, $V=false){$R = ($S==$D)?' selected':'';if($V!=false){return $R;}else{echo $R;}} function output_num($num, $n=0) { if (!isset($num) || $num == "") echo "0"; else echo number_format($num,$n); } function ret_num($num, $n=0) { if (!isset($num) || $num == "") return "0"; else return number_format($num,$n); } function output_env_top10($title, $sub_title, $chk_item, $ret_rec, $limitTop) { global $LANG_REPORT_RANK; global $LANG_REPORT_TRNS_SUB; global $LANG_REPORT_40X; global $LANG_REPORT_50X; global $LANG_REPORT_LATENCY; global $LANG_REPORT_RTT; global $LANG_REPORT_ERROR; echo "".$title."
"; echo ""; echo ""; echo ""; echo ""; if (!isset($ret_rec[0][$chk_item])) { echo ""; } else { for ($j = 0 ; $j < sizeof($ret_rec) && $j < $limitTop ; $j ++ ) { echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; } } echo "
".$LANG_REPORT_RANK."".$sub_title."".$LANG_REPORT_TRNS_SUB."".$LANG_REPORT_40X."".$LANG_REPORT_50X."".$LANG_REPORT_RTT."".$LANG_REPORT_LATENCY."
".$LANG_REPORT_ERROR."
".($j+1)."".htmlspecialchars($ret_rec[$j][$chk_item])."".ret_num($ret_rec[$j]['ctrns'])."".ret_num($ret_rec[$j]['c40x'])."".ret_num($ret_rec[$j]['c50x'])."".ret_num($ret_rec[$j]['crtt'], 3)."".ret_num($ret_rec[$j]['latency'], 3)."
"; echo "
"; } function output_top10($title, $sub_title, $chk_item, $ret_rec, $limitTop) { global $LANG_REPORT_RANK; global $LANG_REPORT_TRNS_SUB; global $LANG_REPORT_40X; global $LANG_REPORT_50X; global $LANG_REPORT_LATENCY; global $LANG_REPORT_SERVER_WAIT; global $LANG_REPORT_ERROR; echo "".$title."
"; echo ""; echo ""; echo ""; echo ""; if (!isset($ret_rec[0][$chk_item])) { echo ""; } else { for ($j = 0 ; $j < sizeof($ret_rec) && $j < $limitTop ; $j ++ ) { echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; } } echo "
".$LANG_REPORT_RANK."".$sub_title."".$LANG_REPORT_TRNS_SUB."".$LANG_REPORT_40X."".$LANG_REPORT_50X."".$LANG_REPORT_SERVER_WAIT."".$LANG_REPORT_LATENCY."
".$LANG_REPORT_ERROR."
".($j+1)."".htmlspecialchars($ret_rec[$j][$chk_item])."".ret_num($ret_rec[$j]['ctrns'])."".ret_num($ret_rec[$j]['c40x'])."".ret_num($ret_rec[$j]['c50x'])."".ret_num($ret_rec[$j]['cwait'], 3)."".ret_num($ret_rec[$j]['latency'], 3)."
\n"; echo "
\n"; } function outputDateTable($MagReport, $v_cur_date, $title) { $time_hour_rec = $MagReport->GetMagReportDayHourForTT($v_cur_date, "d"); global $LANG_REPORT_WEEK_MON; global $LANG_REPORT_WEEK_TUS; global $LANG_REPORT_WEEK_WEN; global $LANG_REPORT_WEEK_THU; global $LANG_REPORT_WEEK_FRI; global $LANG_REPORT_WEEK_SAT; global $LANG_REPORT_WEEK_SUN; global $heatmap_color_1; echo '
'; echo "".$title."
"; echo ""; echo ""; echo ""; echo ""; $stime = strtotime($v_cur_date['sdate']." 00:00:00"); $etime = strtotime($v_cur_date['edate']." 00:00:00"); $w = date("w", $stime); if ($w == 0) $w = 7; $today_time = time(); echo ""; for ($i = 1 ; $i < $w ; $i ++ ) { echo ""; } for ($i = $stime ; $i <= $stime + (7-$w)*24*60*60 ; $i += (24*60*60)) { $date = date("Y-m-d", $i); if ($i >= ($today_time-24*60*60)) { echo ""; continue; } $ret_item = $MagReport->GetItemRec($time_hour_rec['data'], "sdate", $date); if ($ret_item == "") { $ret_item['ctrns'] = 0; } $color = GetColorDayHour($time_hour_rec, $ret_item); //if ($color == $heatmap_color_1) $c = ""; //else $c = "color:#ccc;"; $c = ""; echo ""; } echo ""; $st = $i; $j = 0; for ($i = $st ; $i <= $etime ; $i += (24*60*60)) { if ($j != 0 && $j%7 == 0) { echo ""; $j = 0; } $date = date("Y-m-d", $i); if ($i >= ($today_time-24*60*60)) { echo ""; $j++; continue; } $ret_item = $MagReport->GetItemRec($time_hour_rec['data'], "sdate", $date); if ($ret_item == "") { $ret_item['ctrns'] = 0; } $color = GetColorDayHour($time_hour_rec, $ret_item); //if ($color == $heatmap_color_1) $c = ""; //else $c = "color:#ccc;"; $c = ""; echo ""; $j ++; } if ($j) { for ($i = 0 ; $i < (7-$j) ; $i++ ) { echo ""; } } echo "
".$LANG_REPORT_WEEK_MON."".$LANG_REPORT_WEEK_TUS."".$LANG_REPORT_WEEK_WEN."".$LANG_REPORT_WEEK_THU."".$LANG_REPORT_WEEK_FRI."".$LANG_REPORT_WEEK_SAT."".$LANG_REPORT_WEEK_SUN."
$date".$date."
$date".$date."
"; outputColorDayHour($time_hour_rec); echo "

"; } function outputHourTable($MagReport, $v_cur_date, $title) { global $LANG_REPORT_OUTPUT_TIME_AM; global $LANG_REPORT_OUTPUT_TIME_PM; global $heatmap_color_1; $time_hour_rec = $MagReport->GetMagReportDayHourForTT($v_cur_date, "h"); //print_r($time_hour_rec); echo '
'; echo "".$title."
"; echo ""; echo ""; echo ""; for ($i = 0 ; $i < 24 ; $i ++ ) { if ($i != 0 && $i%6 == 0) { echo ""; } $hour = sprintf("%02d", $i); if ($i < 12) $hour_title = sprintf($LANG_REPORT_OUTPUT_TIME_AM, $i); else if ($i == 12) { $hour_title = sprintf($LANG_REPORT_OUTPUT_TIME_PM, $i); } else { $hour_title = sprintf($LANG_REPORT_OUTPUT_TIME_PM, $i-12); } $ret_item = $MagReport->GetItemRec($time_hour_rec['data'], "hour", $i); if ($ret_item == "") { $ret_item['ctrns'] = 0; } $color = GetColorDayHour($time_hour_rec, $ret_item); //if ($color == $heatmap_color_1) $c = ""; //else $c = "color:#ccc;"; $c = ""; echo ""; } echo "
".$hour_title."
"; outputColorDayHour($time_hour_rec); echo "

"; } function GetColorDayHour($time_hour_rec, $item) { global $heatmap_color_arr; $count_depth = 4; $width_depth = $time_hour_rec['top']['ctrns'] / $count_depth; for ($i = 0 ; $i < $count_depth ; $i ++ ) { if ($item['ctrns'] >= $i*$width_depth && $item['ctrns'] < ($i+1)*$width_depth) return $heatmap_color_arr[$i]; } if ($item['ctrns'] <= 0) return $heatmap_color_arr[0]; return $heatmap_color_arr[$count_depth-1]; } function outputICONCheckC($pre_c, $cur_c, $good_flag) { if ($pre_c == "") $pre_c = 0; if ($cur_c == "") $cur_c = 0; if ($pre_c == 0 && $cur_c == 0) { return ""; } $img_link = ""; if ($pre_c == 0) { // $cur_c는 늘었으니... if ($good_flag) { $img_link = "/report/images/good_increase.png"; } else { $img_link = "/report/images/bad_increase.png"; } } else if ($cur_c == 0) { if ($good_flag) { $img_link = "/report/images/bad_decrease.png"; } else { $img_link = "/report/images/good_decrease.png"; } } else { $chk = $cur_c/$pre_c; if ($chk >= 1.05) { if ($good_flag) { $img_link = "/report/images/good_increase.png"; } else { $img_link = "/report/images/bad_increase.png"; } } else if ($chk <= 0.95) { if ($good_flag) { $img_link = "/report/images/bad_decrease.png"; } else { $img_link = "/report/images/good_decrease.png"; } } } if ($img_link != "") { echo " "; } } function outputColorDayHour($time_hour_rec) { global $heatmap_color_arr; if ($time_hour_rec['top']['ctrns'] == "") $time_hour_rec['top']['ctrns'] = 0; $count_depth = 4; $width_depth = $time_hour_rec['top']['ctrns'] / $count_depth; echo ""; echo ""; echo ""; for ($i = 0 ; $i < $count_depth-1 ; $i ++ ) { if ($i == 0) $c = ""; else $c = "color:black;"; if ($width_depth != 0) $t_str = "~".number_format($width_depth*($i+1)); else $t_str = " "; echo ""; } if ($width_depth != 0) $t_str = "~".number_format($time_hour_rec['top']['ctrns']); else $t_str = " "; echo ""; echo "
".$t_str."".$t_str."
"; } session_start(); ## 세션값 extract($_SESSION); foreach($_REQUEST as $key => $val) $R[$key] = ${'k_'.$key} = trim(str_replace("( select| union| insert| update| delete| drop|\"|\'|#|\/\*|\*\/|\\\|\;)", "", $val)); $base = '/usr/local/apache/htdocs/report/'; $base_new = '/usr/local/apache/htdocs/report/'; require($base.'db_conn.php'); require($base_new.'reports/proc/MagReport.class.php'); require($base_new.'reports/proc/MagDate.class.php'); include_once "/usr/local/apache/htdocs/report/includes/lang.php"; $MagDate = new MagDateClass(); $MagReport = new MagReportClass($connect); define(_UIP_, $_SERVER['REMOTE_ADDR']); define(_AGENT_, $_SERVER['HTTP_USER_AGENT']); $cur_t = time(); $cur_time = date("Y-m-d H:i:s", $cur_t); $cur_date = date("Y-m-d"); $pre_date = date("Y-m-d", strtotime("-1 days")); $cur_week = $MagDate->GetDateCurWeek($cur_date); $cur_month = $MagDate->GetDateCurMonth($cur_date); //$prev_week = $MagDate->GetDatePrevWeek($cur_date); //$prev_month = $MagDate->GetDatePrevMonth($cur_date); if ($k_c == "") $k_c = 10; if ($k_c > 20) $k_c = 20; if ($k_o == "") $k_o = "d"; if ($k_d == "") { // 입력이 없으면 하루 전 default $v_date = date("Y-m-d", strtotime("-1 days")); } else { $v_date = $k_d; } // input error if ($k_o != "d" && $k_o !="w" && $k_o != "m") { echo "input error"; exit; } if ($k_o == "d") { $msg_pre = $LANG_REPORT_PREV_DAY; $v_cur_date['sdate'] = $v_date; $v_cur_date['edate'] = $v_cur_date['sdate']; $v_pre_date['sdate'] = $MagDate->GetDatePrevDay($v_date); $v_pre_date['edate'] = $v_pre_date['sdate']; $v_next_date['sdate'] = $MagDate->GetDateNextDay($v_date); $v_next_date['edate'] = $v_next_date['sdate']; if ($v_next_date['sdate'] > $pre_date) { $v_next_date['sdate'] = ""; $v_next_date['edate'] = ""; } } else if ($k_o == "w") { $msg_pre = $LANG_REPORT_PREV_WEEK; $v_cur_date = $MagDate->GetDateCurWeek($v_date); $v_pre_date = $MagDate->GetDatePrevWeek($v_date); $v_next_date = $MagDate->GetDateNextWeek($v_date); // 현재 날짜보다 더 다음인 주를 보려고 하면 안되겠지? if ($v_next_date['sdate'] > $cur_week['edate']) { $v_next_date['sdate'] = ""; $v_next_date['edate'] = ""; } } else { $msg_pre = $LANG_REPORT_PREV_MONTH; $v_cur_date = $MagDate->GetDateCurMonth($v_date); $v_pre_date = $MagDate->GetDatePrevMonth($v_date); $v_next_date = $MagDate->GetDateNextMonth($v_date); // 현재 날짜보다 뒤 쪽 달을 보면 안되지? if ($v_next_date['sdate'] > $cur_month['edate']) { $v_next_date['sdate'] = ""; $v_next_date['edate'] = ""; } } ?> ImageOCR REPORT
'; if ($k_o == "d") { echo "
".$LANG_REPORT_DAY."
"; } else { $click_str = "document.location=\"?d=".$v_date."&o=d\";"; echo ""; } if ($k_o == "w") { echo "
".$LANG_REPORT_WEEK."
"; } else { $click_str = "document.location=\"?d=".$v_date."&o=w\";"; echo ""; } if ($k_o == "m") { echo "
".$LANG_REPORT_MONTH."
"; } else { $click_str = "document.location=\"?d=".$v_date."&o=m\";"; echo ""; } echo "
"; echo '
'; echo ""; if ($k_o == "d") echo $v_cur_date['sdate'].""; else echo $v_cur_date['sdate']." ~ ".$v_cur_date['edate'].""; echo "  "; echo "
"; echo "
"; ?>
\n"; echo "  "; if ($v_next_date['sdate'] == "") { echo "\n"; } else { echo "\n"; } ?>
 
GetMagReportTotal($v_cur_date, $k_o); $total_r_pre = $MagReport->GetMagReportTotal($v_pre_date, $k_o); $total_avg_r = $MagReport->GetMagReportTotalAVG($k_o); */ ?>