superedit-A_PROBLEM.php 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337
  1. <?php
  2. /**
  3. * Dodawanie/usuwanie problemów.
  4. *
  5. * example:
  6. * index.php?MENU_INIT=A_PROBLEM&tbl=SES_USERS2_A&id={ID}
  7. *
  8. */
  9. function A_PROBLEM() {
  10. $tbl = V::get('tbl', '', $_GET);
  11. $id = V::get('id', '', $_GET, 'int');
  12. if (!$tbl || $id <= 0) {
  13. echo '<div class="alert alert-error">' . "Wrong param proces tbl or id!" . '</div>';
  14. return;
  15. }
  16. $allowedTbls = array();
  17. $allowedTbls[] = 'SES_USERS2_A';
  18. $allowedTbls[] = 'SES_TV_A';
  19. $allowedTbls[] = 'SES_VOIP_A';
  20. $tblOut = htmlspecialchars($tbl);
  21. if (!in_array($tbl, $allowedTbls)) {
  22. echo '<div class="alert alert-error">' . "Table {$tblOut} not allowed!" . '</div>';
  23. return;
  24. }
  25. Lib::loadClass('ProcesHelper');
  26. $zasobID = ProcesHelper::getZasobTableID($tbl);
  27. if ($zasobID <= 0) {
  28. echo '<div class="alert alert-error">' . "Can't find table {$tblOut} zasob id!" . '</div>';
  29. return;
  30. }
  31. $zasobObj = ProcesHelper::getZasobTableInfo($zasobID);
  32. if (!$zasobObj) {
  33. echo '<div class="alert alert-error">' . "Zasob id = {$zasobID} (tabela {$tlbOut}) nie istnieje" . '</div>';
  34. return;
  35. }
  36. $userAcl = User::getAcl();
  37. $userAcl->fetchGroups();
  38. if (!$userAcl->hasTableAcl($zasobObj->ID)) {
  39. echo '<div class="alert alert-error">' . "Brak uprawnień do tabeli {$tblOut} (id zasobu: {$zasobObj->ID})" . '</div>';
  40. return;
  41. }
  42. $tblAcl = $userAcl->getTableAcl($zasobObj->ID);
  43. $forceTblAclInit = ('1' == V::get('_force', '', $_GET));
  44. $tblAcl->init($forceTblAclInit);
  45. echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;text-align:left;">$tblAcl (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($tblAcl);echo'</pre>';
  46. $problemFldsList = array();
  47. $problemFldsList[] = 'A_PROBLEM';
  48. $problemFldsList[] = 'A_PROBLEM_DATE';
  49. $problemFldsList[] = 'A_PROBLEM_DESC';
  50. $problemFldsList[] = 'T_WORKPOINTS_TYPE';
  51. $problemFldsList[] = 'T_WORKPOINTS_DATE';
  52. // P_ACCOUNT // Obciazenie Abonenta / P_ACCOUNT
  53. // DO_APPOITMENT_CLEAR // Skasowanie danych o spotkaniach APPOITMENTS / APPOITMENTS var CLEAR
  54. // ID_BILLING_USERS // DO_DISCONNECT_REPORT // DO_DISCONNECT_REPORT_FROM
  55. }
  56. //function A_PROBLEM($ID,$A_PROBLEM) {
  57. if (0) {// TODO: RMME - OLD VERSION
  58. global $thiss,$ARG1,$ARG1_VAL,$result,$error;
  59. if ($_SESSION['CURRENT_MENU'] == $thiss->DETECT_EDIT_FUNCTION || $_SESSION['LAST_MENU'] == $thiss->DETECT_EDIT_FUNCTION) {
  60. if ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'] == $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID']) {
  61. // show action links
  62. if (strlen($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM']) > 0) {
  63. CREATE_MENUFUNC_INIT_2('A_PROBLEM', 'A_PROBLEM', 'REMOVE', 'USUN PROBLEM');
  64. echo "&nbsp;<a target=blank href=".$_SERVER['PHP_SELF']."?FUNCTION_INIT=ORDERER&ARG1_VAL=ZLECENIE_NAPRAWY&HEADER_NOT_INIT=YES><img src=icon/print.gif border=0 alt=DRUKUJ_ZLECENIE_MONTAZU></a>";
  65. echo "<font size=-1> | " ;
  66. if ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'] == 'UNVERIFIED') {
  67. CREATE_MENUFUNC_INIT_2('A_PROBLEM', 'A_PROBLEM', 'ADD', 'USTAW_PROBLEM');
  68. }
  69. if ($_SESSION['CURRENT_MENU'] == 'A_PROBLEM') CREATE_MENUFUNC_INIT_2('A_PROBLEM', 'ORDERER', 'POST', 'PRZESLIJ_ZLECENIE_MAIL');
  70. if ($_SESSION['CURRENT_MENU'] == 'A_PROBLEM') echo " | " ;
  71. if ($_SESSION['CURRENT_MENU'] == 'A_PROBLEM') echo "<a href='".$_SERVER['PHP_SELF']."?FUNCTION_INIT=ORDERER&ARG1_VAL=ZLECENIE_NAPRAWY&HEADER_NOT_INIT=YES' target='blank'>DRUKUJ_ZLECENIE</a>";
  72. if ($_SESSION['CURRENT_MENU'] == 'A_PROBLEM') echo " | </font>" ;
  73. } else {
  74. CREATE_MENUFUNC_INIT_2('A_PROBLEM', 'A_PROBLEM', 'ADD', 'DODAJ PROBLEM');
  75. }
  76. // run action
  77. if (($_SESSION['CURRENT_MENU'] == 'A_PROBLEM') && (!($ARG1=='ORDERER'))) {
  78. echo "<form action='' method='POST'>
  79. <input type='hidden' name='FUNCTION_INIT' value='UPDATEDB'><table cellspacing=0 cellpadding=4 border=1>
  80. <tr><td colspan='2'><b>MENU ZGLASZANIA / USUWANIA PROBLEMOW</b></td></tr>";
  81. if ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'] == 'UNVERIFIED') {
  82. echo "<tr><td>Rodzaj Problemu / Problem Level</td><td>";
  83. GETFORMITEM($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'], $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPE']['A_PROBLEM'], 'A_PROBLEM');
  84. echo "(obecnie " . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'] . ")</td></tr>";
  85. }
  86. else if (strlen($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM']) > 0) {
  87. echo "<tr><td>Rodzaj Problemu / Problem Level</td><td>";
  88. echo "<input type='hidden' name='A_PROBLEM' value=''>";
  89. echo "Problem usuwany (obecnie " . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'] . ")</td></tr>";
  90. }
  91. else {
  92. echo "<tr><td>Rodzaj Problemu / Problem Level</td><td>";
  93. GETFORMITEM($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'], $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPE']['A_PROBLEM'], 'A_PROBLEM');
  94. echo "(obecnie " . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'] . ")</td></tr>";
  95. }
  96. echo "<tr><td><br>Opis Problemu/Problem Description:</td><td>" ;
  97. GETFORMITEM($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM_DESC'], $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPE']['A_PROBLEM_DESC'], 'A_PROBLEM_DESC');
  98. echo "</td></tr>";
  99. if ((strlen($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM']) > 0) && (!($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'] == 'UNVERIFIED')) ) {
  100. echo "<tr><td>Typ pracy / T_WORKPOINTS_TYPE</td><td>";
  101. T_WORKPOINTS_TYPE_TYPES();
  102. if (0) {//function T_WORKPOINTS_TYPE_TYPES() {
  103. $T_WORKPOINTS_TYPE_TYPES[1]['TYPE']='Technik_w_dyzurze';
  104. $T_WORKPOINTS_TYPE_TYPES[2]['TYPE']='Administrator_w_godzinach';
  105. $T_WORKPOINTS_TYPE_TYPES[3]['TYPE']='Technik_w_akordzie';
  106. $T_WORKPOINTS_TYPE_TYPES[4]['TYPE']='Naprawa_gwarancyjna';
  107. $T_WORKPOINTS_TYPE_TYPES[1]['VALUE']="TECH_AT_DUTY";
  108. $T_WORKPOINTS_TYPE_TYPES[2]['VALUE']="ADMIN_AT_WORK";
  109. $T_WORKPOINTS_TYPE_TYPES[3]['VALUE']="TECH_AT_CONTRACT";
  110. $T_WORKPOINTS_TYPE_TYPES[4]['VALUE']="GUARANTY_SERVICE";
  111. echo "<select name=T_WORKPOINTS_TYPE><option value=''> </option>
  112. ";
  113. foreach ($T_WORKPOINTS_TYPE_TYPES as $value) {
  114. echo "<option value='" . $value['VALUE'] . "'" ;
  115. if($_SESSION['USERS2_COLUMN']['EDITRECORD']['T_WORKPOINTS_TYPE'] == $value['VALUE']) echo "selected";
  116. echo ">" . $value['TYPE'] . "</option>" ;
  117. echo "asd";
  118. }
  119. echo "</select>";
  120. // CREATE_MENU_NOTD_INIT_3(TEMPEDIT_EVAL,T_WORKPOINTS_TYPE,$value[VALUE],$value[TYPE]);
  121. // echo " | ";
  122. }
  123. echo "</td></tr>";
  124. echo "<tr><td>Data pracy / T_WORKPOINTS_DATE (YYYY-MM-DD)</td><td>";
  125. GETFORMITEM($_SESSION[$thiss->DETECT_TABLE_COLUMN]['TEMPEDITRECORD']['T_WORKPOINTS_DATE'], $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPE']['T_WORKPOINTS_DATE'], 'T_WORKPOINTS_DATE');
  126. echo "<font size='-2'>"; T_WORKPOINTS_DATE_SELECT(); echo "</font>";
  127. echo "</td></tr>";
  128. echo "<tr><td>Wykonawca pracy / T_WORKPOINTS_USER</td><td>";
  129. T_WORKPOINTS_USER_SELECT();
  130. echo "</td></tr>";
  131. echo "<tr><td>Wartosc pracy / T_WORKPOINTS_VALUE</td><td>";
  132. GETFORMITEM($_SESSION[$thiss->DETECT_TABLE_COLUMN]['TEMPEDITRECORD']['T_WORKPOINTS_VALUE'], $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPE']['T_WORKPOINTS_VALUE'], 'T_WORKPOINTS_VALUE');
  133. echo "<font size='-2'>";
  134. T_WORKPOINTS_VALUE_TYPES();
  135. if(0) {//function T_WORKPOINTS_VALUE_TYPES() {
  136. $T_WORKPOINTS_VALUE_TYPES[1]['TYPE']='BEZPLATNIE';
  137. $T_WORKPOINTS_VALUE_TYPES[2]['TYPE']='USTERKA';
  138. $T_WORKPOINTS_VALUE_TYPES[3]['TYPE']='USTERKA_PLATNA';
  139. $T_WORKPOINTS_VALUE_TYPES[4]['TYPE']='PRZELACZENIE';
  140. $T_WORKPOINTS_VALUE_TYPES[1]['VALUE']="0";
  141. $T_WORKPOINTS_VALUE_TYPES[2]['VALUE']="16";
  142. $T_WORKPOINTS_VALUE_TYPES[3]['VALUE']="19";
  143. $T_WORKPOINTS_VALUE_TYPES[4]['VALUE']="20";
  144. foreach ($T_WORKPOINTS_VALUE_TYPES as $value) {
  145. CREATE_MENU_NOTD_INIT_3('TEMPEDIT_EVAL', 'T_WORKPOINTS_VALUE', $value['VALUE'], $value['TYPE']);
  146. echo " | ";
  147. }
  148. }
  149. echo "</font>";
  150. echo "</td></tr>";
  151. if(substr($thiss->DETECT_TABLE_NAME,0,4)=='SES_' && substr($thiss->DETECT_TABLE_NAME,-2)=='_A') {
  152. echo "<tr><td>Obciazenie Abonenta / P_ACCOUNT </td><td>";
  153. echo "<input type=text name='P_ACCOUNT' value='' />";// $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['P_ACCOUNT']
  154. echo "<font size='-2'>";
  155. P_ACCOUNT_TYPES();
  156. if(0) {//function P_ACCOUNT_TYPES() {
  157. $P_ACCOUNT_TYPES[1]['TYPE']='BEZPLATNIE';
  158. $P_ACCOUNT_TYPES[2]['TYPE']='USTERKA_PLATNA_do_1g';
  159. $P_ACCOUNT_TYPES[3]['TYPE']='USTERKA_PLATNA_do_2g';
  160. $P_ACCOUNT_TYPES[1]['VALUE']="";
  161. $P_ACCOUNT_TYPES[2]['VALUE']="30";
  162. $P_ACCOUNT_TYPES[3]['VALUE']="60";
  163. foreach ($P_ACCOUNT_TYPES as $value) {
  164. CREATE_MENU_NOTD_INIT_3('TEMPEDIT_EVAL', 'P_ACCOUNT', $value['VALUE'], $value['TYPE']);
  165. echo " | ";
  166. }
  167. }
  168. echo "</font>";
  169. echo "</td></tr>";
  170. }
  171. echo "<tr><td>Skasowanie danych o spotkaniach APPOITMENTS / APPOITMENTS var CLEAR</td><td>";
  172. echo "<input type=checkbox name='DO_APPOITMENT_CLEAR' checked>";
  173. echo "</td></tr>";
  174. if(substr($thiss->DETECT_TABLE_NAME,0,4)=='SES_' && substr($thiss->DETECT_TABLE_NAME,-2)=='_A') {
  175. //wykrycie ID_BILLING_USERS jeżeli tabela SES_
  176. ZAP_SQL("select ID_BILLING_USERS from SERVICES where ID='".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID_SERVICES']."'");
  177. list($ID_BILLING_USERS)=mysql_fetch_row($result);
  178. if(strlen($ID_BILLING_USERS)<1) {
  179. $error.=" Nie znaleziono ID_BILLING_USERS!!! ";
  180. }
  181. echo "<input type=hidden name='ID_BILLING_USERS' value='$ID_BILLING_USERS'>";
  182. echo "<tr><td>Uznanie dni niedzialania uslugi zgodnie z datą zgłoszenia i usunięcia usterki (YYYY-MM-DD HH-MM) <input type=\"checkbox\" name=\"DO_DISCONNECT_REPORT\"></td><td>";
  183. echo "OD:<input type=text size=20 name='DO_DISCONNECT_REPORT_FROM' value=\"".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM_DATE']."\">, do dnia wykonania pracy";
  184. echo "</td></tr>";
  185. }
  186. }
  187. else {
  188. echo "<tr><td>Data Problemu / A_PROBLEM_DATE</td><td>";
  189. if( (strlen($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM']) > 1) && (strlen($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM_DATE']) > 1)) {
  190. $TEMP_A_PROBLEM_DATE = $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM_DATE'];
  191. } else {
  192. $TEMP_A_PROBLEM_DATE = date('Y-m-d-H:i');
  193. }
  194. GETFORMITEM($TEMP_A_PROBLEM_DATE, $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPE']['A_PROBLEM_DATE'], 'A_PROBLEM_DATE');
  195. // 2011-11-23: pole nieuzywane, problem z odpisywaniem maila przez klientow
  196. // @see superedit-UPDATEDB.php
  197. //if (strlen($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM']) < 1) {
  198. // echo "<tr><td>Przeslanie wiadomosci dla abonenta umozliwiajacej anulowanie problemu</td><td> <input type=checkbox name='A_DB_USER_PROBLEM_REPORT_S_ALIAS_INFO' checked>";
  199. //}
  200. echo "</td></tr>";
  201. }
  202. echo "<tr><td colspan='2' align='center'><input type='submit' value=' OK '></td></tr></table></form>";
  203. CREATE_MENUFUNC_NOTD_INIT($_SESSION['LAST_MENU'], 'POWROT<img src=icon/back.gif border=0 alt=POWROT>');
  204. echo "<hr>";
  205. }
  206. }
  207. }
  208. if(isset($error)) echo "ERROR($RESULT,$ERROR ".$error.")";
  209. }
  210. // @from superedit-UPDATEDB.php
  211. if(0){// if($_SESSION['CURRENT_MENU']=="A_PROBLEM") {
  212. // echo "CURRENT A_PROBLEM";
  213. if(!($_SESSION[$thiss->DETECT_TABLE_COLUMN][EDITRECORD][ID]==$_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'])) $ERROR=$ERROR . " BRAK_AUTORYZACJI_DLA_ID" ;
  214. if(!(strstr($_SESSION[$thiss->DETECT_TABLE_COLUMN]['FUNCPERMEDIT']['A_PROBLEM'],'W'))) $ERROR=$ERROR . " BRAK_UPRAWNIEN_DO [$thiss->DETECT_TABLE_COLUMN][FUNCPERMEDIT][A_PROBLEM]=W" ;
  215. if((strlen($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'])>0) && (!($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM']=="UNVERIFIED"))) {
  216. ZAP_SQL("select ADM_ACCOUNT from ADMIN_USERS where ADM_ACCOUNT='$_POST[T_WORKPOINTS_USER]' and ADM_STATUS='NORMAL' and ADM_TECH_WORKER!='NO' and ADM_COMPANY like '$_SESSION[ADM_COMPANY]'");
  217. if($_SESSION[MYSQL_NUM_ROWS]==1) $T_WORKPOINTS_USER_VAL="1";
  218. if ((!(isset($ERROR))) && isset($_POST['A_PROBLEM']) && ($T_WORKPOINTS_USER_VAL==1) && (!($_POST['A_PROBLEM'])) && ($_POST['A_PROBLEM_DESC']) && ($_POST['T_WORKPOINTS_USER']) && ($_POST['T_WORKPOINTS_DATE']) && (isset($_POST['T_WORKPOINTS_VALUE'])) ) {
  219. if(!($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM'])) $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM']="0" ;
  220. if(!($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['P_ACCOUNT']) || ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['P_ACCOUNT']=="N/S;") ) $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['P_ACCOUNT']="0" ;
  221. $T_WORKPOINTS_VALUE = $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['T_WORKPOINTS_VALUE'] + $_POST['T_WORKPOINTS_VALUE'] ;
  222. $P_ACCOUNT = $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['P_ACCOUNT'] + $_POST['P_ACCOUNT'] ;
  223. if(!($_POST['P_ACCOUNT'])) $_POST['P_ACCOUNT'] = "N/S;" ;
  224. if(isset($_POST['DO_APPOITMENT_CLEAR'])) $ZAP_SQL_APPOITMENT = "L_APPOITMENT_DATE='', L_APPOITMENT_USER='', L_APPOITMENT_PERIOD='', L_APPOITMENT_TYPE='', L_APPOITMENT_INFO=''";
  225. $A_PROBLEM_DATE=date(Y)."-".date(m)."-".date(d)."-".date(H).":".date(i);
  226. unset($ZAP_FIELD);
  227. unset($ZAP_VAL) ; unset($ZAP_UPD) ;
  228. //zapisanie dodatkowego info do bazy technicznej, ze wystawiono platny problem lub dano upust @2012-09-25
  229. if ((isset($_POST['DO_DISCONNECT_REPORT']))&&(strlen($_POST['DO_DISCONNECT_REPORT_FROM'])>8) && (strlen($_POST['T_WORKPOINTS_DATE'])>8) ) {
  230. $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM_DESC'].="(sys : DO_DISCONNECT_REPORT_FROM ".$_POST['DO_DISCONNECT_REPORT_FROM'].")";
  231. $_POST['A_PROBLEM_DESC'].="(sys : DO_DISCONNECT_REPORT_FROM ".$_POST['DO_DISCONNECT_REPORT_FROM'].")";
  232. }
  233. if ((isset($_POST['T_WORKPOINTS_DATE']))&&(strlen($_POST['P_ACCOUNT'])>0)&&($_POST['P_ACCOUNT']<>"N/S;")) {
  234. $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM_DESC'].="(sys : P_ACCOUNT ".$_POST['P_ACCOUNT'].")";
  235. $_POST['A_PROBLEM_DESC'].="(sys : P_ACCOUNT ".$_POST['P_ACCOUNT'].")";
  236. }
  237. if ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_KEY']['P_ACCOUNT']) {
  238. $ZAP_FIELD.=" , P_ACCOUNT ";
  239. $ZAP_VAL.=" , '".$_POST['P_ACCOUNT']."' ";
  240. $ZAP_UPD.=" , P_ACCOUNT='".$P_ACCOUNT."' " ;
  241. }
  242. $ZAP_SQL_HIST = "insert into ".$thiss->DETECT_TABLE_NAME."_HIST (ID, ID_USERS2, A_RECORD_UPDATE_DATE, A_RECORD_UPDATE_AUTHOR , A_PROBLEM, A_PROBLEM_DESC, T_WORKPOINTS_USER, T_WORKPOINTS_VALUE, T_WORKPOINTS_DATE, T_WORKPOINTS_TYPE $ZAP_FIELD ) values ('','" . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID'] . "', '".date(Y)."-".date(m)."-".date(d)."-".date(H).":".date(i)."', '".$_SESSION['ADM_ACCOUNT']."', '$_POST[A_PROBLEM]', '$_POST[A_PROBLEM_DESC] ($_SESSION[ADM_ACCOUNT])', '$_POST[T_WORKPOINTS_USER]', '$_POST[T_WORKPOINTS_VALUE]', '$_POST[T_WORKPOINTS_DATE]','$_POST[T_WORKPOINTS_TYPE]' $ZAP_VAL )";
  243. $ZAP_SQL = "update ".$thiss->DETECT_TABLE_NAME." SET $ZAP_SQL_APPOITMENT, A_RECORD_UPDATE_DATE='".date(Y)."-".date(m)."-".date(d)."-".date(H).":".date(i)."', A_RECORD_UPDATE_AUTHOR='".$_SESSION[ADM_ACCOUNT]."' , A_PROBLEM='$_POST[A_PROBLEM]', A_PROBLEM_DESC='$_POST[A_PROBLEM_DESC] ($_SESSION[ADM_ACCOUNT])', A_PROBLEM_DATE='$A_PROBLEM_DATE', T_WORKPOINTS_USER='$_POST[T_WORKPOINTS_USER]',T_WORKPOINTS_VALUE='$T_WORKPOINTS_VALUE', T_WORKPOINTS_DATE='$_POST[T_WORKPOINTS_DATE]',T_WORKPOINTS_TYPE='$_POST[T_WORKPOINTS_TYPE]' $ZAP_UPD where ID='" . $_SESSION[$thiss->DETECT_TABLE_COLUMN][EDITRECORD][ID] . "'";
  244. ZAP_SQL_UPDATE($ZAP_SQL_HIST); $RESULT=$_SESSION['MYSQL_UPDATE_NUM_ROWS'] ;
  245. ZAP_SQL_UPDATE($ZAP_SQL); $RESULT=$RESULT + $_SESSION['MYSQL_UPDATE_NUM_ROWS'] ;
  246. //TYP 14 - reklamacja
  247. //Wykrycie tabeli nazwy tabeli SES_X_C
  248. if (substr($thiss->DETECT_TABLE_NAME,0,4)=='SES_' && substr($thiss->DETECT_TABLE_NAME,-2)=='_A') {
  249. // echo "<h2>Detect table name=:".$thiss->DETECT_TABLE_NAME."</h2>";
  250. $SES_C_COLUMN=substr($thiss->DETECT_TABLE_NAME,0,(strlen($thiss->DETECT_TABLE_NAME)-1))."C" ;
  251. //$SES_C_COLUMN.="___C";
  252. //echo "<h2> SES_C_COLUMN_TO:: ".$SES_C_COLUMN." </h2>";
  253. if ((isset($_POST['DO_DISCONNECT_REPORT']))&&(strlen($_POST['DO_DISCONNECT_REPORT_FROM'])>8) && (strlen($_POST['T_WORKPOINTS_DATE'])>8) ) {
  254. ZAP_SQL_UPDATE("insert into ".$SES_C_COLUMN." (ID,ID_SERVICES,ID_BILLING_USERS,TYPE,VALUE1,VALUE2) values
  255. ('','".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID_SERVICES']."','".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID_BILLING_USERS']."','14','".$_POST['DO_DISCONNECT_REPORT_FROM']."','".$_POST['T_WORKPOINTS_DATE']."')") ;$RESULT+=$_SESSION['MYSQL_UPDATE_NUM_ROWS'] ;
  256. }
  257. if ((isset($_POST['T_WORKPOINTS_DATE']))&&(strlen($_POST['P_ACCOUNT'])>0)&&($_POST['P_ACCOUNT']<>"N/S;")) {
  258. ZAP_SQL_UPDATE("insert into ".$SES_C_COLUMN." (ID,ID_SERVICES,ID_BILLING_USERS,TYPE,VALUE1,VALUE2) values
  259. ('','".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID_SERVICES']."','".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID_BILLING_USERS']."','15','".$_POST['T_WORKPOINTS_DATE']."','".$_POST['P_ACCOUNT']."')") ;$RESULT+=$_SESSION['MYSQL_UPDATE_NUM_ROWS'] ;
  260. }
  261. }
  262. echo "PASSED($RESULT)<hr>";
  263. } else {
  264. echo "<h2>Podano zle zmienne lub nie wypelniono wszystkich pol(1)</h2><br>Errory: $ERROR<br>";
  265. print_r($_POST) ;
  266. }
  267. echo "<br>USUWAM PROBLEM<br>";
  268. }
  269. else if(strlen($_POST['A_PROBLEM'])>1) { //EOF if(strlen($_SESSION[USERS_COLUMN][EDITRECORD][A_PROBLEM])>0)
  270. if(!($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID']==$_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'])) $ERROR=$ERROR . " BRAK_AUTORYZACJI_DLA_ID" ;
  271. if(!(strstr($_SESSION[$thiss->DETECT_TABLE_COLUMN]['FUNCPERMEDIT']['A_PROBLEM'],'W'))) $ERROR=$ERROR . " BRAK_UPRAWNIEN_DO [$thiss->DETECT_TABLE_COLUMN][FUNCPERMEDIT][A_PROBLEM]=W" ;
  272. $T_WORKPOINTS_USER_VAL="1";
  273. if ((!(isset($ERROR))) && ($T_WORKPOINTS_USER_VAL==1) && ($_POST['A_PROBLEM']) && ($_POST['A_PROBLEM_DESC']) && ($_POST['A_PROBLEM_DATE'])) {
  274. $A_PROBLEM_DATE=date(Y)."-".date(m)."-".date(d)."-".date(H).":".date(i) ;
  275. $ZAP_SQL_HIST = "insert into ".$thiss->DETECT_TABLE_NAME."_HIST (ID, ID_USERS2, A_RECORD_UPDATE_DATE, A_RECORD_UPDATE_AUTHOR , A_PROBLEM, A_PROBLEM_DESC ) values ('','" . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID'] . "', '".date(Y)."-".date(m)."-".date(d)."-".date(H).":".date(i)."', '".$_SESSION['ADM_ACCOUNT']."', '".$_POST['A_PROBLEM']."', '".$_POST['A_PROBLEM_DESC']." (".$_SESSION['ADM_ACCOUNT'].")')";
  276. $ZAP_SQL = "update ".$thiss->DETECT_TABLE_NAME." SET A_RECORD_UPDATE_DATE='".date(Y)."-".date(m)."-".date(d)."-".date(H).":".date(i)."', A_RECORD_UPDATE_AUTHOR='".$_SESSION['ADM_ACCOUNT']."' , A_PROBLEM='".$_POST['A_PROBLEM']."', A_PROBLEM_DESC='".$_POST['A_PROBLEM_DESC']." (".$_SESSION['ADM_ACCOUNT'].")', A_PROBLEM_DATE='".$A_PROBLEM_DATE."' where ID='" . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID'] . "'";
  277. // echo "<hr>$ZAP_SQL_HIST<hr>$ZAP_SQL<hr>";
  278. ZAP_SQL_UPDATE($ZAP_SQL_HIST); $RESULT=$_SESSION['MYSQL_UPDATE_NUM_ROWS'] ;
  279. ZAP_SQL_UPDATE($ZAP_SQL); $RESULT=$RESULT + $_SESSION['MYSQL_UPDATE_NUM_ROWS'] ;
  280. if(isset($_POST['A_DB_USER_PROBLEM_REPORT_S_ALIAS_INFO'])) {
  281. $A_DB_USER_PROBLEM_REPORT_S_ALIAS_INFO="Zostal zgloszony problem dla Twojego adresu, Typ problemu to ".$_POST['A_PROBLEM']." (".$_POST['A_PROBLEM_DESC']."). Jezeli z jakichs przyczyn chcial(a)bys go odwolac - np. usluga zaczela poprawnie funkcjonowac, odpowiedz na tego maila, kasujac cala tresc (mozesz dodatkowo umiescic opis, uzywajac zwrotu ^opis problemu^), pozostawiajac jedynie:
  282. Odwoluje problem z dnia $A_PROBLEM_DATE .";
  283. mail($_SESSION['USERS_COLUMN']['EDITRECORD']['S_ALIAS'], 'Potwierdzenie zgloszenia problemu, Odwolaj go, jezeli zaczelo wszystko dzialac poprawnie.', $A_DB_USER_PROBLEM_REPORT_S_ALIAS_INFO, "From: $AUTOBOK_EMAIL Automatyczne Biuro Obslugi <$AUTOBOK_EMAIL>
  284. Reply-To: $AUTOBOK_EMAIL");
  285. echo "<br>DODATKOWO WYSLANO WIADOMOSC UMOZLIWIAJACA SKASOWANIE PROBLEMU NA ". $_SESSION['USERS_COLUMN']['EDITRECORD']['S_ALIAS']." <br>";
  286. }
  287. echo "PASSED(".$RESULT.")<hr>";
  288. }
  289. else {
  290. echo "<h2>Podano zle zmienne lub nie wypelniono wszystkich pol</h2><br>Errory: ".$ERROR."<br>";
  291. }
  292. } else if((strlen($_POST['A_PROBLEM'])==0) && ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['A_PROBLEM']=="UNVERIFIED")) {
  293. echo "KASOWANIE PROBLEMU UNVERIFIED";
  294. if ((!(isset($ERROR))) && (isset($_POST['A_PROBLEM'])) && ($_POST['A_PROBLEM_DESC']) && ($_POST['A_PROBLEM_DATE'])) {
  295. $ZAP_SQL_HIST = "insert into ".$thiss->DETECT_TABLE_NAME."_HIST (ID, ID_USERS2, A_RECORD_UPDATE_DATE, A_RECORD_UPDATE_AUTHOR , A_PROBLEM, A_PROBLEM_DESC ) values ('','" . $_SESSION['USERS_COLUMN']['EDITRECORD']['ID'] . "', '".date(Y)."-".date(m)."-".date(d)."-".date(H).":".date(i)."', '".$_SESSION['ADM_ACCOUNT']."', '".$_POST['A_PROBLEM']."', '".$_POST['A_PROBLEM_DESC']."')";
  296. $ZAP_SQL = "update ".$thiss->DETECT_TABLE_NAME." SET A_PROBLEM='".$_POST['A_PROBLEM']."', A_PROBLEM_DESC='".$_POST['A_PROBLEM_DESC']." (".$_SESSION['ADM_ACCOUNT'].")', A_PROBLEM_DATE='" . date(Y)."-".date(m)."-".date(d)."-".date(H).":".date(i)."' where ID='" . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['ID'] . "'";
  297. ZAP_SQL_UPDATE($ZAP_SQL_HIST); $RESULT=$_SESSION['MYSQL_UPDATE_NUM_ROWS'];
  298. ZAP_SQL_UPDATE($ZAP_SQL); $RESULT=$RESULT + $_SESSION['MYSQL_UPDATE_NUM_ROWS'];
  299. }
  300. }
  301. }