"36", "2" => "48");
$typeArray["logoselection"] = "
";
elseif ($history_mode == "1") :
$typeArray["mode"] = "cr";
$typeArray["id"] = $cr_id;
$typeArray["auth"] = "1";
$typeArray["pagetitle"] = getLngt("TRANSPORTEURSHISTORIE");
if ($logoselection == "2") :
$typeArray["pagetitle"] = getLngt("FAHRZEUGHISTORIE DES TRANSPORTEURS");
endif;
$typeArray["dateselection"] = "1";
$typeArray["logomapping"] = array("1" => "37", "2" => "86");
$typeArray["logoselection"] = "
";
elseif ($history_mode == "2") :
$typeArray["mode"] = "jb";
$typeArray["id"] = $job_id;
$typeArray["auth"] = "4";
$typeArray["pagetitle"] = getLngt("AUFTRAGSHISTORIE");
$typeArray["dateselection"] = "0";
$typeArray["logomapping"] = array();
$typeArray["logoselection"] = "";
elseif ($history_mode == "3") :
$typeArray["mode"] = "at";
$typeArray["id"] = $at_id;
$typeArray["auth"] = "14";
$typeArray["pagetitle"] = getLngt("ARTIKELHISTORIE");
$typeArray["dateselection"] = "1";
$typeArray["logomapping"] = array();
$typeArray["logoselection"] = "";
elseif ($history_mode == "4") :
$typeArray["mode"] = "emp";
$typeArray["id"] = $empIdHist;
$typeArray["auth"] = "32";
$typeArray["pagetitle"] = getLngt("MITARBEITERHISTORIE");
$typeArray["dateselection"] = "1";
$typeArray["logomapping"] = array();
$typeArray["logoselection"] = "";
endif;
$deactivateMenuStatic = "1";
$pageTitel = $typeArray["pagetitle"];
include_once ("../admin/menu.php");
include_once ("../include/html.inc.php");
getCurrentScript(__FILE__);
// Check for authentication access and granted rights
$usrAccessArray["hq"] = "1";
authCheckForAccess($hq_id, $usr_id, $emp_id, "1", $customerId, $cscIdRoot, $cscIdActual);
if (!authCheckEmployeeRights($emp_id, $typeArray["auth"])) : gotoReferer("1"); endif;
// Get the emp_id of the root admin because he/she is allowed to change a password of an employee
$empIdRootAdmin = getEmpIdOfRootAdmin($userTypeName);
// For limitation of the rows displayed
$limitOfRowsDisplayed = "2500";
// Get the array for formatting the database-values for the output according to the defined type
$outputFormatField = defineOutputFormats();
if ($op != "0") :
$day_from = "01"; $month_from = "01"; $year_from = "2020";
$day_to = getDateTime("day"); $month_to = getDateTime("month"); $year_to = getDateTime("year");
endif;
// Check range of date. All fields have to be set
if ($day_from == "" || $month_from == "" || $year_from == "" ||
$day_to == "" || $month_to == "" || $year_to == "") :
// Initialize date-ranges to the current date
$fromDateRange = getDateTime("3") . " 00:00:00";
$toDateRange = getDateTime("3") . " 23:59:59";
$day_from = getDateTime("day");
$month_from = getDateTime("month");
$year_from = getDateTime("year");
$day_to = getDateTime("day");
$month_to = getDateTime("month");
$year_to = getDateTime("year");
else :
$fromDateRange = $year_from . "-" . pad($month_from,2) . "-" . pad($day_from,2) . " 00:00:00";
$toDateRange = $year_to . "-" . pad($month_to,2) . "-" . pad($day_to,2) . " 23:59:59";
endif;
// Get the year of the begin of history data
$dbhistory = getDBNames($dbhistory, $year_from);
/*
echo "op = " . $op . "
";
echo "logoselection = " . $logoselection . "
";
echo "displayselection = " . $displayselection . "
";
echo "fromDateRange = " . $fromDateRange . "
";
echo "toDateRange = " . $toDateRange . "
";
*/
// --- CUSTOMER HISTORY ------------------
if ($typeArray["mode"] == "cs") :
// From table "log"
$fieldClause = getDBFields("logoperation") . "," . getDBFields("log") . "," . getDBFields("user") . " ";
$fromClause = "phoenix_log.logoperation AS logo, phoenix_log." . $dbh_log . " AS log " .
"LEFT JOIN phoenix.user AS usr ON log.usr_id = usr.usr_id ";
// Pre-Statement to get the last modification entry to compare with the first of selectet date range
$fromDateRangeSql = $fromDateRange;
$toDateRangeSql = $toDateRange;
$tmpMaxLogCreatetime = "";
if ($logoselection > "0" && count($typeArray["logomapping"]) > 0) :
$whereClausePre = "log.cs_id = '" . $cs_id . "' AND "
. " log.logo_id = '" . $typeArray["logomapping"][$logoselection] . "' AND "
. " log.logo_id = logo.logo_id AND "
. " log.log_createtime < '" . $fromDateRange . "'";
$tmpMaxLogCreatetime = getMaxOfField("phoenix_log.logoperation AS logo, phoenix_log.log AS log", "log.log_createtime", $whereClausePre);
if ($tmpMaxLogCreatetime != "") :
$fromDateRangeSql = $tmpMaxLogCreatetime;
endif;
endif;
$whereClause = "log.cs_id = '" . $cs_id . "' AND "
. ($logoselection > "0" && count($typeArray["logomapping"]) > 0 ? "log.logo_id = '" . $typeArray["logomapping"][$logoselection] . "' AND " : "")
. " log.logo_id = logo.logo_id AND"
. " log.log_createtime >= '" . $fromDateRangeSql . "' AND"
. " log.log_createtime <= '" . $toDateRangeSql . "'";
// $orderByClause = "log.log_createtime LIMIT 0," . $limitOfRowsDisplayed;
$orderByClause = ($logoselection > "0" && count($typeArray["logomapping"]) > 0 ? "log.logo_id, " : "")
. ($logoselection == "2" && count($typeArray["logomapping"]) > 0 ? "CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(logo_description, '|ADT_ID=', -1),'|', 1) AS UNSIGNED), " : "")
. "log.log_id LIMIT 0," . $limitOfRowsDisplayed;
$sqlquery = generateStatement($fieldClause,$fromClause,$whereClause,$orderByClause);
// echo $sqlquery . "
";
// Send request to database
$result = $db->query($sqlquery);
if (DB::isError($result)) die ("$PHP_SELF: " . $result->getMessage());
// Generate list with header
$titleArray = array(getLngt("Vorgang") . " ",getLngt("Zeitpunkt") . " ",getLngt("Name") . " ",getLngt("Vorname") . " ",getLngt("Telefon") . " ",getLngt("Details"));
$fieldArray = array("logo_op_shortname","log_createtime","usr_name","usr_firstname","usr_phone","logo_description");
$aligns = "l,c,l,l,l,l";
$alignArray = spliti(",",$aligns);
$alignTitles = "center";
$widths = "180,130,150,150,80,350";
$widthArray = spliti(",",$widths);
$summationField = "";
$postParserField = "logo_description";
$mode = "1"; // Output from DB-RESULT
$sortDBField = ""; // Used in following include-file for sorting per column;
if ($logoselection > "0" && count($typeArray["logomapping"]) > 0) :
$noDisplayBoolCondition = array("log_createtime", ">=", $fromDateRange);
endif;
include ("../include/inc_list_defineoutput.inc.php");
$result->free();
// *** ONLY OUTPUT ***
// Customer
$cmpId = getFieldValueFromId("customer", "cs_id", $cs_id, "cmp_id");
$tmpFields = getFieldsValueFromId("company","cmp_id",$cmpId,array("cmp_comp","cmp_comp2"));
$csCmpComp = $tmpFields[0];
$csCmpComp2 = $tmpFields[1];
// Post parsing if necessary
if ($postParserField != "") :
$tableBody = postParseCsHistory($tableBody, ($logoselection > "0" ? true : false));
endif;
// Invert all occurrences of "
"
$tableBody = reverseOuterTableRows($tableBody);
endif;
// --- COURIER HISTORY ------------------
if ($typeArray["mode"] == "cr") :
// From table "log"
$fieldClause = getDBFields("logoperation") . "," . getDBFields("log") . "," . getDBFields("user") . " ";
$fromClause = "phoenix_log.logoperation AS logo, phoenix_log." . $dbh_log . " AS log " .
"LEFT JOIN phoenix.user AS usr ON log.usr_id = usr.usr_id ";
// Pre-Statement to get the last modification entry to compare with the first of selectet date range
$fromDateRangeSql = $fromDateRange;
$toDateRangeSql = $toDateRange;
$tmpMaxLogCreatetime = "";
if ($logoselection > "0" && count($typeArray["logomapping"]) > 0) :
$whereClausePre = "log.cr_id = '" . $cr_id . "' AND "
. " log.logo_id = '" . $typeArray["logomapping"][$logoselection] . "' AND "
. " log.logo_id = logo.logo_id AND "
. " log.log_createtime < '" . $fromDateRange . "'";
$tmpMaxLogCreatetime = getMaxOfField("phoenix_log.logoperation AS logo, phoenix_log.log AS log", "log.log_createtime", $whereClausePre);
if ($tmpMaxLogCreatetime != "") :
$fromDateRangeSql = $tmpMaxLogCreatetime;
endif;
endif;
$whereClause = "log.cr_id = '" . $cr_id . "' AND "
. ($logoselection > "0" && count($typeArray["logomapping"]) > 0 ? "log.logo_id = '" . $typeArray["logomapping"][$logoselection] . "' AND " : "")
. " log.logo_id = logo.logo_id AND "
. " log.log_createtime >= '" . $fromDateRangeSql . "' AND"
. " log.log_createtime <= '" . $toDateRangeSql . "'";
// $orderByClause = "log.log_createtime LIMIT 0," . $limitOfRowsDisplayed;
$orderByClause = "log.log_id LIMIT 0," . $limitOfRowsDisplayed;
$sqlquery = generateStatement($fieldClause,$fromClause,$whereClause,$orderByClause);
// echo $sqlquery . "
";
// Send request to database
$result = $db->query($sqlquery);
if (DB::isError($result)) die ("$PHP_SELF: " . $result->getMessage());
// Generate list with header
$titleArray = array(getLngt("Vorgang") . " ",getLngt("Zeitpunkt") . " ",getLngt("Auftrag") . " ",getLngt("Fahrzeug") . " ",getLngt("Name") . " ",getLngt("Vorname") . " ",getLngt("Telefon") . " ",getLngt("Details"));
$fieldArray = array("logo_op_shortname","log_createtime","jb_id","cr_sid","usr_name","usr_firstname","usr_phone","logo_description");
$aligns = "l,c,c,c,l,l,l,l";
$alignArray = spliti(",",$aligns);
$alignTitles = "center";
$widths = "330,130,50,50,150,150,80,200";
$widthArray = spliti(",",$widths);
$summationField = "";
$postParserField = "logo_description";
$mode = "1"; // Output from DB-RESULT
$sortDBField = ""; // Used in following include-file for sorting per column;
if ($logoselection > "0" && count($typeArray["logomapping"]) > 0) :
$noDisplayBoolCondition = array("log_createtime", ">=", $fromDateRange);
endif;
// $checkDifferences = true;
include ("../include/inc_list_defineoutput.inc.php");
$result->free();
// *** ONLY OUTPUT ***
// Courier
$crSid = getFieldValueFromId("courier", "cr_id", $cr_id, "cr_sid");
$crUsrId = getFieldValueFromId("courier", "cr_id", $cr_id, "usr_id");
$tmpFields = getFieldsValueFromId("user","usr_id",$crUsrId,array("usr_firstname","usr_name"));
$crUsrFirstname = $tmpFields[0];
$crUsrName = $tmpFields[1];
// Post parsing if necessary
if ($postParserField != "") :
$tableBody = postParseCrHistory($tableBody, $crSid, ($logoselection > "0" ? true : false));
endif;
// Invert all occurrences of "
"
$tableBody = reverseOuterTableRows($tableBody);
endif;
// --- JOB HISTORY ------------------
if ($typeArray["mode"] == "jb") :
// From table "log"
$fieldClause = getDBFields("logoperation") . "," . getDBFields("log") . "," . getDBFields("user") . " ";
$fromClause = "phoenix_log.logoperation AS logo, phoenix_log." . $dbh_log . " AS log " .
"LEFT JOIN phoenix.user AS usr ON log.usr_id = usr.usr_id ";
// $whereClause = "log.jb_id = '" . $job_id . "' AND log.hq_id = '" . $hq_id . "' AND log.logo_id = logo.logo_id";
$whereClause = "log.jb_id = '" . $job_id . "' AND log.logo_id = logo.logo_id";
// $orderByClause = "log.log_createtime";
$orderByClause = "log.log_id DESC";
$sqlquery = generateStatement($fieldClause,$fromClause,$whereClause,$orderByClause);
// Send request to database
$result = $db->query($sqlquery);
if (DB::isError($result)) die ("$PHP_SELF: " . $result->getMessage());
// Generate list with header
$titleArray = array(getLngt("Vorgang") . " ",getLngt("Zeitpunkt") . " ",getLngt("Fahrzeug") . " ",getLngt("Name") . " ",getLngt("Vorname") . " ",getLngt("Telefon") . " ",getLngt("Details"));
$fieldArray = array("logo_op_shortname","log_createtime","cr_sid","usr_name","usr_firstname","usr_phone","logo_description");
$aligns = "l,c,c,l,l,l,l";
$alignArray = spliti(",",$aligns);
$alignTitles = "center";
$widths = "330,130,50,150,150,80,200";
$widthArray = spliti(",",$widths);
$summationField = "";
$postParserField = "logo_description";
$mode = "1"; // Output from DB-RESULT
$sortDBField = ""; // Used in following include-file for sorting per column;
include ("../include/inc_list_defineoutput.inc.php");
$historyentry = $tableHeader . $tableBody;
$result->free();
// *** ONLY OUTPUT ***
// Job
// $jbXXXX = getFieldValueFromId("job", "jb_id", $job_id, "jb_XXXX");
// Post parsing if necessary
if ($postParserField != "") :
$tableBody = postParseJbHistory($tableBody);
endif;
// Invert all occurrences of "
"
$tableBody = reverseOuterTableRows($tableBody);
endif;
// --- ARTICLE HISTORY ------------------
if ($typeArray["mode"] == "at") :
// From table "log"
$fieldClause = getDBFields("logoperation") . "," . getDBFields("log") . "," . getDBFields("user") . " ";
$fromClause = "phoenix_log.logoperation AS logo, phoenix_log." . $dbh_log . " AS log " .
"LEFT JOIN phoenix.user AS usr ON log.usr_id = usr.usr_id ";
// $whereClause = "log.at_id = '" . $at_id . "' AND log.hq_id = '" . $hq_id . "' AND log.logo_id = logo.logo_id AND ";
$whereClause = "log.at_id = '" . $at_id . "' AND log.logo_id = logo.logo_id AND ";
$whereClause .= "log.log_createtime >= '$fromDateRange' AND log.log_createtime <= '$toDateRange'";
// $orderByClause = "log.log_createtime LIMIT 0," . $limitOfRowsDisplayed;
$orderByClause = "log.log_id LIMIT 0," . $limitOfRowsDisplayed;
$sqlquery = generateStatement($fieldClause,$fromClause,$whereClause,$orderByClause);
// Send request to database
$result = $db->query($sqlquery);
if (DB::isError($result)) die ("$PHP_SELF: " . $result->getMessage());
// Generate list with header
$titleArray = array(getLngt("Vorgang") . " ",getLngt("Zeitpunkt") . " ",getLngt("Name") . " ",getLngt("Vorname") . " ",getLngt("Telefon") . " ",getLngt("Details"));
$fieldArray = array("logo_op_shortname","log_createtime","usr_name","usr_firstname","usr_phone","logo_description");
$aligns = "l,c,l,l,l,l";
$alignArray = spliti(",",$aligns);
$alignTitles = "center";
$widths = "180,130,150,150,80,350";
$widthArray = spliti(",",$widths);
$summationField = "";
$postParserField = "logo_description";
$mode = "1"; // Output from DB-RESULT
$sortDBField = ""; // Used in following include-file for sorting per column;
include ("../include/inc_list_defineoutput.inc.php");
$result->free();
// *** ONLY OUTPUT ***
// Article
$tmpFields = getFieldsValueFromId("article","at_id",$at_id,array("at_name","at_eid"));
$atName = $tmpFields[0];
$atEid = $tmpFields[1];
// Post parsing if necessary
if ($postParserField != "") :
$tableBody = postParseAtHistory($tableBody);
endif;
// Invert all occurrences of "
"
$tableBody = reverseOuterTableRows($tableBody);
endif;
// --- EMPLOYEE HISTORY ------------------
if ($typeArray["mode"] == "emp") :
// From table "log"
$fieldClause = getDBFields("logoperation") . "," . getDBFields("log") . "," . getDBFields("user") . " ";
$fromClause = "phoenix_log.logoperation AS logo, phoenix_log." . $dbh_log . " AS log "
. "LEFT JOIN phoenix.user AS usr ON log.usr_id = usr.usr_id ";
$whereClause = "";
if ($empIdHist != "0") :
$whereClause .= "log.emp_id = '" . $empIdHist . "' AND ";
endif;
$whereClause .= "log.logo_id = logo.logo_id AND log.log_createtime >= '$fromDateRange' AND log.log_createtime <= '$toDateRange' AND logo_op_category = 'emp' ";
// $orderByClause = "log.log_createtime LIMIT 0," . $limitOfRowsDisplayed;
$orderByClause = "log.log_id LIMIT 0," . $limitOfRowsDisplayed;
$sqlquery = generateStatement($fieldClause,$fromClause,$whereClause,$orderByClause);
// Send request to database
$result = $db->query($sqlquery);
if (DB::isError($result)) die ("$PHP_SELF: " . $result->getMessage());
// Generate list with header
$titleArray = array(getLngt("Vorgang") . " ",getLngt("Zeitpunkt") . " ",getLngt("Name") . " ",getLngt("Vorname") . " ",getLngt("Telefon") . " ",getLngt("Details"));
$fieldArray = array("logo_op_shortname","log_createtime","usr_name","usr_firstname","usr_phone","logo_description");
$aligns = "l,c,l,l,l,l";
$alignArray = spliti(",",$aligns);
$alignTitles = "center";
$widths = "330,130,150,150,80,300";
$widthArray = spliti(",",$widths);
$summationField = "";
$postParserField = "logo_description";
$mode = "1"; // Output from DB-RESULT
$sortDBField = ""; // Used in following include-file for sorting per column;
include ("../include/inc_list_defineoutput.inc.php");
$result->free();
// *** ONLY OUTPUT ***
// Employee
$usrIdHist = getFieldValueFromId("employee", "emp_id", $empIdHist, "usr_id");
$tmpFields = getFieldsValueFromId("user","usr_id",$usrIdHist,array("usr_firstname","usr_name"));
$empUsrFirstname = $tmpFields[0];
$empUsrName = $tmpFields[1];
// Post parsing if necessary
if ($postParserField != "") :
$tableBody = postParseEmpHistory($tableBody, $crSid);
endif;
// Invert all occurrences of "
"
$tableBody = reverseOuterTableRows($tableBody);
endif;
// Define output table
$historyentry = $tableHeader . $tableBody;
$currentFrameName = ""; // Empty string for "main frame"
$filter_dateranges = "";
$js_date = "";
if ($op == "0" && $typeArray["dateselection"] == "1") :
// Date-ranges
$filter_dateranges .= "| " . getLngt("Von:") . "\n";
$filter_dateranges .= "\n";
$filter_dateranges .= "\n";
$filter_dateranges .= "\n";
$filter_dateranges .= " | " . getLngt("bis:") . "\n";
$filter_dateranges .= "\n";
$filter_dateranges .= "\n";
$filter_dateranges .= "\n";
$filter_dateranges .= " | ";
// Javascript-function as template only for
$js_date .= "\n";
endif;
// Output headline
$pageHeadline = $pageTitel . ": ";
if ($typeArray["mode"] == "cs") :
$pageHeadline .= $csCmpComp . " " . $csCmpComp2;
elseif ($typeArray["mode"] == "cr") :
$pageHeadline .= $crUsrFirstname . " " . $crUsrName;
elseif ($typeArray["mode"] == "jb") :
$pageHeadline .= $job_id;
elseif ($typeArray["mode"] == "at") :
$pageHeadline .= $atName . " (" . $atEid . ")";
elseif ($typeArray["mode"] == "emp") :
$pageHeadline .= $empUsrFirstname . " " . $empUsrName;
endif;
?>
setDisplaySelection();checkLogoSelection();">