1. Import
This commit is contained in:
343
html/tools/numbers_ht.php
Normal file
343
html/tools/numbers_ht.php
Normal file
@@ -0,0 +1,343 @@
|
||||
<?php
|
||||
/*=======================================================================
|
||||
*
|
||||
* numbers_ht.php
|
||||
*
|
||||
* Autor: Carsten Annacker
|
||||
*
|
||||
=======================================================================*/
|
||||
|
||||
//mysql_connect("localhost", "root", "%Fidewz37%")
|
||||
mysql_connect("127.0.0.1:3711", "root", "%Fidewz37%")
|
||||
or die (mysql_error());
|
||||
mysql_select_db("mobiledata")
|
||||
or die (mysql_error());
|
||||
|
||||
$HTTP_GET_VARS = !empty($HTTP_GET_VARS) ? $HTTP_GET_VARS : $_GET;
|
||||
$HTTP_POST_VARS = !empty($HTTP_POST_VARS) ? $HTTP_POST_VARS : $_POST;
|
||||
//print_r($HTTP_POST_VARS);
|
||||
$pn = $HTTP_GET_VARS['pn'];
|
||||
$new_pn = $HTTP_POST_VARS['new_pn'];
|
||||
$new_remark = $HTTP_POST_VARS['new_remark'];
|
||||
$new_assignment = $HTTP_POST_VARS['new_assignment'];
|
||||
$cur_time = time();
|
||||
$wait_time = 12;
|
||||
$free_count = 0;
|
||||
$now = getdate();
|
||||
$now_date = $now['year'] . "-" . sprintf("%02d", $now['mon']) . "-" . sprintf("%02d", $now['mday']);
|
||||
$now_time = sprintf("%02d", $now['hours']) . ":" . sprintf("%02d", $now['minutes']) . ":" . sprintf("%02d", $now['seconds']);
|
||||
|
||||
$ob = $HTTP_GET_VARS['ob'];
|
||||
$od = $HTTP_GET_VARS['od'];
|
||||
$oda = array ($od, $od, $od, $od, $od, $od, $od, $od, $od);
|
||||
$om = $HTTP_GET_VARS['om'];
|
||||
$omStr = "";
|
||||
if ($ob != "")
|
||||
$oda[$ob] = ($od == "d" ? "a" : "d");
|
||||
if ($ob == "" && $om != 1)
|
||||
$omStr = "?om=1";
|
||||
|
||||
/**************************************************************************************************************************************************/
|
||||
//
|
||||
|
||||
// Änderungen speichern, falls vorhanden
|
||||
if ($new_pn != ""):
|
||||
$sqlquery = "SELECT MAX(pa_id) AS mpa_id FROM phoneassign WHERE pa_number = '$new_pn'";
|
||||
$res = mysql_query($sqlquery) or die ($sqlquery);
|
||||
if ($row = mysql_fetch_array($res, MYSQL_ASSOC)):
|
||||
$mpa_id = $row["mpa_id"];
|
||||
else:
|
||||
die($sqlquery);
|
||||
endif;
|
||||
mysql_free_result($res);
|
||||
if ($new_assignment == "1"):
|
||||
$sqlquery = "INSERT INTO phoneassign (pa_number, pa_date, pa_remark) VALUES ('$new_pn', '$now_date $now_time', '$new_remark')";
|
||||
else:
|
||||
$sqlquery = "UPDATE phoneassign SET pa_remark = '$new_remark' WHERE pa_id = $mpa_id";
|
||||
endif;
|
||||
mysql_query($sqlquery) or die ($sqlquery);
|
||||
endif;
|
||||
|
||||
// Aktuelle (d.h. größte) Rechnungsnummer von Hansetrans finden
|
||||
$sqlquery = "SELECT MAX(rechnungsnummer) AS mrn, MAX(abrechnungszeitraum_bis) AS azb FROM invoicedetails WHERE rechnungskonto = 90952374";
|
||||
$res = mysql_query($sqlquery) or die ($sqlquery);
|
||||
if ($row = mysql_fetch_array($res, MYSQL_ASSOC)):
|
||||
$mrn = $row["mrn"];
|
||||
$azb = $row["azb"];
|
||||
else:
|
||||
die("Keine Rechnungsnummer für Rechnungskonto '90952374' gefunden");
|
||||
endif;
|
||||
|
||||
// Alle aktuellen Rufnummern von Hansetrans sortiert nach dem Datum der letzten Verbindung
|
||||
$sqlquery = "SELECT DISTINCT invoicedetails.interne_kennziffer AS ik, invoicedetails.rechnungsposten AS rp, MAX(calldetails.datum) AS mcd " .
|
||||
"FROM invoicedetails LEFT JOIN calldetails ON invoicedetails.rechnungsposten = calldetails.vd2_nummer_optional " .
|
||||
"WHERE invoicedetails.rechnungsnummer = $mrn AND LEFT(invoicedetails.rechnungsposten, 1) = '0' " .
|
||||
"GROUP BY invoicedetails.rechnungsposten ORDER BY mcd, calldetails.vd2_nummer_optional";
|
||||
$res = mysql_query($sqlquery) or die ($sqlquery);
|
||||
$phonenumbers = array();
|
||||
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)):
|
||||
$phonenumbers[$row["rp"]] = array($row["rp"], (trim($row["mcd"]) == '' ? "-" : $row["mcd"]), (trim($row["ik"]) == '' ? "-" : $row["ik"]), "", "", "", "", "", "", "");
|
||||
endwhile;
|
||||
mysql_free_result($res);
|
||||
|
||||
// Nur Datenverbindungen
|
||||
$sqlquery = "SELECT vd2_nummer_optional AS vno, MAX(datum) AS mcd FROM calldetails " .
|
||||
"WHERE LEFT(vd2_nummer_optional, 1) = '0' " .
|
||||
"AND (rufnummer = '' AND NOT (call_info_indicator = 'A' OR call_info_indicator = 'r'))" .
|
||||
"GROUP BY vd2_nummer_optional ORDER BY mcd, vd2_nummer_optional";
|
||||
$res = mysql_query($sqlquery) or die ($sqlquery);
|
||||
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)):
|
||||
if (array_key_exists($row["vno"], $phonenumbers))
|
||||
$phonenumbers[$row["vno"]][3] = $row["mcd"];
|
||||
endwhile;
|
||||
mysql_free_result($res);
|
||||
|
||||
// Nur Sprachverbindungen
|
||||
$sqlquery = "SELECT vd2_nummer_optional AS vno, MAX(datum) AS mcd FROM calldetails " .
|
||||
"WHERE LEFT(vd2_nummer_optional, 1) = '0' " .
|
||||
"AND NOT (rufnummer = '' AND NOT (call_info_indicator = 'A' OR call_info_indicator = 'r'))" .
|
||||
"GROUP BY vd2_nummer_optional ORDER BY mcd, vd2_nummer_optional";
|
||||
$res = mysql_query($sqlquery) or die ($sqlquery);
|
||||
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)):
|
||||
if (array_key_exists($row["vno"], $phonenumbers))
|
||||
$phonenumbers[$row["vno"]][4] = $row["mcd"];
|
||||
endwhile;
|
||||
mysql_free_result($res);
|
||||
|
||||
// Bereits vergebene Nummern holen
|
||||
$sqlquery = "SELECT MAX(pa_id) AS mpa_id FROM phoneassign GROUP BY pa_number";
|
||||
$res = mysql_query($sqlquery) or die ($sqlquery);
|
||||
$pa_ids = "";
|
||||
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)):
|
||||
if ($pa_ids != "")
|
||||
$pa_ids .= ",";
|
||||
$pa_ids .= $row["mpa_id"];
|
||||
endwhile;
|
||||
mysql_free_result($res);
|
||||
$sqlquery = "SELECT pa_number, pa_date, pa_remark FROM phoneassign WHERE pa_id IN (" . $pa_ids . ")";
|
||||
$res = mysql_query($sqlquery) or die ($sqlquery);
|
||||
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)):
|
||||
if (array_key_exists($row["pa_number"], $phonenumbers)):
|
||||
$phonenumbers[$row["pa_number"]][7] = substr($row["pa_date"], 0, 10);
|
||||
$phonenumbers[$row["pa_number"]][8] = $row["pa_remark"];
|
||||
endif;
|
||||
endwhile;
|
||||
mysql_free_result($res);
|
||||
|
||||
// Alle in der Tabelle courier ordnungsgemäß eingetragene Rufnummern von Hansetrans sortiert nach dem Datum des letzten Logins
|
||||
mysql_close();
|
||||
mysql_connect("127.0.0.1:3511", "root", "%Fidewz37%")
|
||||
or die (mysql_error());
|
||||
mysql_select_db("phoenix")
|
||||
or die (mysql_error());
|
||||
$sqlquery = "SELECT REPLACE(REPLACE(REPLACE(cr_mobile_pda, '+49', '0'), '49173', '0173'), ' ', '') AS cmp, cr_sid, cr_logintime, hq_id FROM courier ORDER BY cmp, cr_logintime ASC";
|
||||
$res = mysql_query($sqlquery) or die ($sqlquery);
|
||||
$prev_row = array("", "", "", "");
|
||||
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)):
|
||||
if ($prev_row[0] != "" && $prev_row[0] != $row["cmp"]):
|
||||
if (array_key_exists($prev_row[0], $phonenumbers)):
|
||||
$phonenumbers[$prev_row[0]][5] = $prev_row[2];
|
||||
$phonenumbers[$prev_row[0]][6] = $prev_row[1];
|
||||
switch ($prev_row[3]):
|
||||
case 101: $phonenumbers[$prev_row[0]][9] = " (HB)"; break;
|
||||
case 102: $phonenumbers[$prev_row[0]][9] = " (HH)"; break;
|
||||
case 103: $phonenumbers[$prev_row[0]][9] = " (B)"; break;
|
||||
case 104: $phonenumbers[$prev_row[0]][9] = " (H)"; break;
|
||||
case 105: $phonenumbers[$prev_row[0]][9] = " (F)"; break;
|
||||
case 106: $phonenumbers[$prev_row[0]][9] = " (DD)"; break;
|
||||
case 107: $phonenumbers[$prev_row[0]][9] = " (E)"; break;
|
||||
case 108: $phonenumbers[$prev_row[0]][9] = " (L)"; break;
|
||||
case 109: $phonenumbers[$prev_row[0]][9] = " (M)"; break;
|
||||
case 110: $phonenumbers[$prev_row[0]][9] = " (N)"; break;
|
||||
case 111: $phonenumbers[$prev_row[0]][9] = " (S)"; break;
|
||||
case 203: $phonenumbers[$prev_row[0]][9] = " (LG)"; break;
|
||||
default: $phonenumbers[$prev_row[0]][9] = " (" . $prev_row[3] . ")";
|
||||
endswitch;
|
||||
endif;
|
||||
endif;
|
||||
$prev_row = array($row["cmp"], $row["cr_sid"], $row["cr_logintime"], $row["hq_id"]);
|
||||
endwhile;
|
||||
mysql_free_result($res);
|
||||
|
||||
usort($phonenumbers, "cmp");
|
||||
if ($ob != "")
|
||||
usort($phonenumbers, "cmpo");
|
||||
|
||||
$content =
|
||||
"<table border=1 width=100% cellspacing=0 cellpadding=0 vspace=0 hspace=0>\n" .
|
||||
" <tr>\n" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php$omStr\"><b>Lfd. Nr.</b></a> </div></td>" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php?ob=0&od=".$oda[0]."\"><b>Rufummer</b></a> </div></td>" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php?ob=5&od=".$oda[5]."\"><b>Letzter Login</b></a> </div></td>" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php?ob=6&od=".$oda[6]."\"><b>SID</b></a> </div></td>" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php?ob=3&od=".$oda[3]."\"><b>Letzte<br>Datenverbindung</b></a> </div></td>" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php?ob=4&od=".$oda[4]."\"><b>Letzte<br>Sprachverbindung</b></a> </div></td>" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php?ob=2&od=".$oda[2]."\"><b>Interne Kennziffer</b></a> </div></td>" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php?ob=7&od=".$oda[7]."\"><b>Letzte<br>Neuvergabe</b></a> </div></td>" .
|
||||
" <td align=left><div class=\"f7np1\"> <a href=\"numbers_ht.php?ob=8&od=".$oda[8]."\"><b>Bemerkung</b></a> </div></td>" .
|
||||
" </tr>\n";
|
||||
foreach (array_keys($phonenumbers) as $phonenumber) {
|
||||
|
||||
$edit_link = "<a href=\"numbers_ht.php?pn=" . $phonenumbers[$phonenumber][0] . "\"><img src=\"../mobiledata/p.gif\" border=0></a>";
|
||||
$new_assignment_disabled = "";
|
||||
$new_assignment_checked = "";
|
||||
$new_assignment_hidden = "";
|
||||
if (check_date($phonenumbers[$phonenumber][5]) && check_date($phonenumbers[$phonenumber][3]) && check_date($phonenumbers[$phonenumber][4])
|
||||
&& check_date($phonenumbers[$phonenumber][7])):
|
||||
$tmp_phonenumber = "<span style=\"color:red\">" . ($phonenumber + 1) . "</span>";
|
||||
$free_count++;
|
||||
$new_assignment_checked = "checked";
|
||||
if ($phonenumbers[$phonenumber][7] == ""):
|
||||
$new_assignment_disabled = "disabled";
|
||||
$new_assignment_hidden = "<input type=\"hidden\" name=\"new_assignment\" value=\"1\">";
|
||||
endif;
|
||||
else:
|
||||
$tmp_phonenumber = ($phonenumber + 1);
|
||||
if ($phonenumbers[$phonenumber][7] == "")
|
||||
$edit_link = " ";
|
||||
else
|
||||
$new_assignment_disabled = "disabled";
|
||||
// Löschen ermöglichen
|
||||
endif;
|
||||
|
||||
$edit_form = " " . $phonenumbers[$phonenumber][8] . " ";
|
||||
if ($phonenumbers[$phonenumber][0] == $pn):
|
||||
$edit_link = "<a href=\"numbers_ht.php\"><img src=\"../mobiledata/m.gif\" border=0></a>";
|
||||
$edit_form = "<form action=\"numbers_ht.php\" method=\"post\"><textarea name=\"new_remark\" cols=\"40\" rows=\"1\">" . $phonenumbers[$phonenumber][8] . "</textarea><br>\n" .
|
||||
"<input type=\"checkbox\" name=\"new_assignment\" value=\"1\" $new_assignment_checked $new_assignment_disabled> Neuvergabe $new_assignment_hidden<input type=\"hidden\" name=\"new_pn\" value=\"$pn\"><input type=\"submit\" value=\"Speichern\"></form>\n";
|
||||
endif;
|
||||
|
||||
$content .=
|
||||
" <tr>\n" .
|
||||
" <td align=right><div class=\"f7np1\"> " . $tmp_phonenumber . " </div></td>\n" .
|
||||
" <td align=left><div class=\"f7np1\"> " .
|
||||
" <a href=\"../mobiledata/details.php?rp=" . $phonenumbers[$phonenumber][0] . "\" target=\"_blank\" onclick=\"oeffnefenster(this.href); return false\">" .
|
||||
$phonenumbers[$phonenumber][0] . "</a> </div></td>\n" .
|
||||
" <td align=left><div class=\"f7np1\"> " . span_date($phonenumbers[$phonenumber][5]) . $phonenumbers[$phonenumber][9] . " </div></td>\n" .
|
||||
" <td align=left><div class=\"f7np1\"> " . $phonenumbers[$phonenumber][6] . " </div></td>\n" .
|
||||
" <td align=right><div class=\"f7np1\"> " . span_date($phonenumbers[$phonenumber][3]) . " </div></td>\n" .
|
||||
" <td align=right><div class=\"f7np1\"> " . span_date($phonenumbers[$phonenumber][4]) . " </div></td>\n" .
|
||||
" <td align=left><div class=\"f7np1\"> " . $phonenumbers[$phonenumber][2] . " </div></td>\n" .
|
||||
" <td align=left><div class=\"f7np1\">" . $edit_link . " " . span_date($phonenumbers[$phonenumber][7]) . " </div></td>\n" .
|
||||
" <td align=left><div class=\"f7np1\">" . $edit_form . "</div></td>\n" .
|
||||
" </tr>\n";
|
||||
}
|
||||
$content .=
|
||||
"</table><br>\n";
|
||||
|
||||
function cmp($a, $b)
|
||||
{
|
||||
global $om;
|
||||
|
||||
$a1 = ($a[3] < $a[4] ? $a[4] : $a[3]);
|
||||
$a1 = ($a1 < $a[5] ? $a[5] : $a1);
|
||||
if ($om != 1)
|
||||
$a1 = ($a1 < $a[7] ? $a[7] : $a1);
|
||||
|
||||
$b1 = ($b[3] < $b[4] ? $b[4] : $b[3]);
|
||||
$b1 = ($b1 < $b[5] ? $b[5] : $b1);
|
||||
if ($om != 1)
|
||||
$b1 = ($b1 < $b[7] ? $b[7] : $b1);
|
||||
|
||||
if ($a1 == $b1)
|
||||
return 0;
|
||||
return ($a1 < $b1) ? -1 : 1;
|
||||
}
|
||||
|
||||
function cmpo($a, $b)
|
||||
{
|
||||
global $ob, $od;
|
||||
|
||||
if ($a[$ob] == $b[$ob])
|
||||
return 0;
|
||||
if ($od == "d")
|
||||
return ($a[$ob] > $b[$ob]) ? -1 : 1;
|
||||
return ($a[$ob] < $b[$ob]) ? -1 : 1;
|
||||
}
|
||||
|
||||
function formDate ($sqlDate) {
|
||||
return substr($sqlDate, 8, 2) . "." . substr($sqlDate, 5, 2) . "." . substr($sqlDate, 0, 4);
|
||||
}
|
||||
|
||||
function check_date($date_val)
|
||||
{
|
||||
global $cur_time, $wait_time;
|
||||
|
||||
// if (mktime(23, 59, 59, substr($date_val, 5, 2), substr($date_val, 8, 2), substr($date_val, 0, 4)) < $cur_time - ($wait_time * 24 * 60 * 60))
|
||||
if (mktime(23, 59, 59, substr($date_val, 5, 2) + $wait_time, substr($date_val, 8, 2), substr($date_val, 0, 4)) < $cur_time)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
function span_date($date_val)
|
||||
{
|
||||
if (check_date($date_val))
|
||||
return "<span style=\"color:red\">" . $date_val . "</span>";
|
||||
return $date_val;
|
||||
}
|
||||
|
||||
/**************************************************************************************************************************************************/
|
||||
// HTML-Output
|
||||
|
||||
?>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>RUFNUMMERN-NUTZUNG</title>
|
||||
<link rel="stylesheet" type="text/css" href="phoenix.css">
|
||||
<style type="text/css">
|
||||
<!--
|
||||
.verysmall
|
||||
{ font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 2pt; font-weight: normal; padding: 0px}
|
||||
-->
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
// Quelle: http://molily.de/javascript-popups
|
||||
function oeffnefenster (url) {
|
||||
fenster=window.open(url, "_blank", "width=625,height=1000,status=yes,scrollbars=yes,resizable=yes");
|
||||
fenster.focus();
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<table border="0" width="100%" cellspacing="0" cellpadding="0" vspace="0" hspace="0">
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
<td align="center">
|
||||
<table border="0" cellspacing="0" cellpadding="0" vspace="0" hspace="0">
|
||||
<tr>
|
||||
<td align="center"> <div class="f10bp1_blue">
|
||||
<br>
|
||||
Rufnummern-Nutzung Hansetrans Gütertaxi<br>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"> <div class="f8np1_blue">
|
||||
<i><b>
|
||||
<?php echo "Einzelverbindungen verfügbar vom 15.10.2008 bis " . formDate($azb) . "\n";?>
|
||||
<br></b></i>
|
||||
<br>
|
||||
<?php echo "Wartezeit vor Neuvergabe: <span style=\"color:red\"><b>" . $wait_time .
|
||||
"</b></span> Monate; dies ergibt heute (" . formDate($now_date) . ") <span style=\"color:red\"><b>" . $free_count . "</b></span> neu vergebbare Rufnummern\n<br>";?>
|
||||
<br>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<?php echo $content;?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user