superedit-AUTHORIZE_USER_LOGIN_BY_AUTH_MODULE.php 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  2. function AUTHORIZE_USER_LOGIN_BY_AUTH_MODULE($ADM_ACCOUNT,$ADM_PASSWD) {
  3. global $SQL_USER,$SQL_DATABASE,$INTERFACE_ADDR,$SQL_USER_PASS,$AUTH_API;
  4. //echo "<hr>AUTHORIZE_USER_LOGIN User $SQL_USER Adm_Account=$ADM_ACCOUNT mysql_pconnect($INTERFACE_ADDR,$SQL_USER,$SQL_USER_PASS);";
  5. $NIP = '';
  6. $REQ = $AUTH_API."?user=".$ADM_ACCOUNT."&pass=".urlencode($ADM_PASSWD)."&request=auth";//&request_module=sew";
  7. DEBUG_S(4, 'AUTH_API', $REQ);
  8. try {
  9. $tresc = file_get_contents($REQ);
  10. } catch (Exception $e) {
  11. DEBUG_S(3, "AUTH_API error", $e->getMessage());
  12. echo'AUTH_API error';
  13. return;
  14. }
  15. if ($tresc !== FALSE) {
  16. $tresc = str_replace(array("\n","\r"),"",$tresc);// remove ne lines for preg_match_all
  17. if (strpos($tresc,'<error>') !== FALSE) {
  18. if (preg_match_all("/<error>(.*?)<\/error>/", $tresc, $matches, PREG_SET_ORDER)) {
  19. $ERROR = $matches[0][0];
  20. }
  21. } else if (strpos($tresc,'<auth>') !== FALSE && strpos($tresc,'<nip>') !== FALSE) {
  22. if (preg_match_all("/<auth>(.*?)<\/auth>/", $tresc, $matches, PREG_SET_ORDER)) {
  23. $AUTH = $matches[0][0];
  24. $tags="nip";
  25. if (preg_match_all("/<nip>(.*?)<\/nip>/", $AUTH, $matches, PREG_SET_ORDER)) {
  26. $match = $matches[0][0];
  27. $match=str_replace("<".$tags.">", "", $match); $match=str_replace("</".$tags.">", "", $match);
  28. $_SESSION['AUTHORIZE_USER_LOGIN_BY_AUTH_MODULE']['P_NIP']=$match;
  29. }
  30. $tags="status";
  31. if (preg_match_all("/<status>(.*?)<\/status>/", $tresc, $matches, PREG_SET_ORDER)) {
  32. $match=$matches[0][0];
  33. $match=str_replace("<".$tags.">", "", $match); $match=str_replace("</".$tags.">", "", $match);
  34. $_SESSION['AUTHORIZE_USER_LOGIN_BY_AUTH_MODULE']['status'] = $match;
  35. }
  36. $tags="DUTIES_GID";
  37. if (preg_match_all("/<DUTIES_GID>(.*?)<\/DUTIES_GID>/", $tresc, $matches, PREG_SET_ORDER)) {
  38. $match=$matches[0][0];
  39. $match=str_replace("<".$tags.">", "", $match); $match=str_replace("</".$tags.">", "", $match);
  40. $_SESSION['AUTHORIZE_USER_LOGIN_BY_AUTH_MODULE']['DUTIES_GID'] = $match;
  41. $_SESSION['DUTIES_GID']=$match;
  42. }
  43. }
  44. }
  45. else {
  46. $ERROR = "Bᄈᄆd konwersji";
  47. }
  48. } else {
  49. DEBUG_S(3, "LOGOWANIE", $AUTH_API);
  50. echo "<br><h2>Wystᄆpiᄈy bᄈ↑dy podczas poᄈᄆczenia do zewn↑trznego moduᄈu</h2>";
  51. }
  52. //if(isset($_SESSION['AUTHORIZE_USER_LOGIN_BY_AUTH_MODULE']['status']))
  53. if ($_SESSION['AUTHORIZE_USER_LOGIN_BY_AUTH_MODULE']['status'] == 'OK') {
  54. $_SESSION['ADM_PASSWD']="$ADM_PASSWD";
  55. $_SESSION['AUTHORIZE_USER']="$ADM_ACCOUNT";//TODO: read from XML
  56. $_SESSION['ADM_ACCOUNT']="$ADM_ACCOUNT";
  57. $_SESSION['ADM_AREA']="";
  58. $_SESSION['ADM_NAME']="";
  59. $_SESSION['ADM_TECH_WORKER']="";
  60. $_SESSION['ADM_COMPANY']="";
  61. $_SESSION['ADM_ADMIN_LEVEL']="";
  62. $_SESSION['ADM_PHONE']="";
  63. $_SESSION['ADM_ADMIN_EXPIRE']="";
  64. echo "<br><h2>Nastᄆpiᄈo poprawne logowanie do zewn↑trznego moduᄈu autoryzacji </h2><br>Informacje: <font color=green>".$AUTH."</font>";
  65. return;
  66. }
  67. else {
  68. echo "<br><h2>Wystᄆpiᄈy bᄈ↑dy w logowaniu z zewn↑trznego moduᄈu </h2><br><font color=red>".$ERROR."</font>";
  69. }
  70. SEF("DEBUG_S");
  71. DEBUG_S(3, "STATUS", $_SESSION['AUTHORIZE_USER_LOGIN_BY_AUTH_MODULE']['status']);
  72. DEBUG_S(3, "NIP", $NIP);
  73. DEBUG_S(3, "ADM_NAME", $_SESSION['ADM_NAME']);
  74. DEBUG_S(3, "DUTIES_GID", $_SESSION['DUTIES_GID']);
  75. }
  76. ?>