rendered paste body function parseLogFile($logdata, $sortby, $start_date, $end_date) { $logdata = explode("\n", $logdata); $index = array(); $data = array(); foreach($logdata AS $line) { $date = $this->mkTimestamp(substr($line, 0, 17)); $entry = substr($line, 18, strlen($line)-18); if((substr($entry, 0, 5) == "LOGON" || substr($entry, 0, 7) == "MSG_DSC") && ($date > $start_date && $date < $end_date)) { $index[] = $date; $entry_data = explode(", ", $entry); foreach($entry_data AS $key=>$val) $entry_data[$key] = trim($val); if(substr($entry_data[0], 0, 5) == "LOGON") $entry_data[0] = "Connect"; else $entry_data[0] = "Disconnect"; $entry_data[1] = substr($entry_data[1], 4, strlen($entry_data[1])-3); $data_array = array('Type' => $entry_data[0], 'IP' => $entry_data[1], 'Username' => $entry_data[2], 'Timestamp' => $date); switch($sortby) { case "Timestamp": $data[$date] = $data_array; sort($data, SORT_NUMERIC); break; case "IP Address": $data[$data_array['IP']] = $data_array; sort($data, SORT_STRING); break; case "Username": $data[$data_array['Username']] = $data_array; sort($data, SORT_STRING); break; } } } }