Advertisement
Guest User

Untitled

a guest
Jun 5th, 2014
288
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.95 KB | None | 0 0
  1. <?php
  2.  
  3. $ajax = isset($_GET["ajax"]) || isset($_POST["ajax"]);
  4. if (!defined("SC_LOCKED_VERSION_8976") || "CARREGADO4536" != SC_LOCKED_VERSION_8976 && !$ajax) {
  5. exit("<br /><span style=\"font-weight: bold\">Fatal error</span>: " . "invalid access to system file.");
  6. }
  7. nm_load_class("page", "Page");
  8.  
  9.  
  10. class nmPageLogin {
  11.  
  12. public function nmPageLogin() {
  13. global $nm_config;
  14. $nm_config["page_info"] = NM_PAGE_INFO_NONE;
  15. if (!isset($_POST["ajax"])) {
  16. $this->SetDigita(false);
  17. $this->SetMargin(0);
  18. $this->SetPage("Login");
  19. $this->SetPageCode(NM_PAGE_COD_LOGIN);
  20. $this->SetPageSubtitle("");
  21. $this->setDocType("XHTML 1.0 Transitional");
  22. $this->SetScroll("no");
  23. if (stripos($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
  24. $this->setDocType("XHTML 1.0 Transitional");
  25. }
  26. }
  27. else {
  28. switch ($_POST["option"]) {
  29. case "login": {
  30. $this->closeSession();
  31. $bkp_lang = (array());
  32. nm_set_all_lang($bkp_lang);
  33. $_SESSION["nm_session"]["status"]["lang"] = strtolower($_POST["language"]);
  34. $nm_config["path_user_lang"] = $nm_config["path_lang"] . $_SESSION["nm_session"]["status"]["lang"] . "/";
  35. include $nm_config["path_user_lang"] . "general.lang.php";
  36. $this->SetPage("Login");
  37. $this->LoadLang();
  38. $this->DisplayContent(true);
  39. break;
  40. }
  41. case "change_language": {
  42. $this->changeLanguage(strtolower($_POST["language"]));
  43. break;
  44. }
  45. case "drop_user": {
  46. $this->dropUserConnected($_POST["field_user"], $_POST["field_pass"], $_POST["ip"], $_POST["session"]);
  47. break;
  48. }
  49. }
  50. exit();
  51. }
  52. }
  53.  
  54. public function closeSession() {
  55. if (isset($_SESSION["nm_session"])) {
  56. unset($_SESSION["nm_session"]);
  57. }
  58. }
  59.  
  60. public function changeLanguage($str_idioma) {
  61. global $nm_config;
  62. if (!empty($str_idioma)) {
  63. $msg_lic = isset($_SESSION["nm_session"]["str_lang_lic"]) && isset($_SESSION["nm_session"]["str_lang_lic"][$str_idioma]) ? ($_SESSION["nm_session"]["str_lang_lic"][$str_idioma]) : "";
  64. echo "OK#@#" . nm_get_text_lang("['login_field_user']", "Login", $str_idioma) . "#@#" . nm_get_text_lang("['login_field_pass']", "Login", $str_idioma) . "#@#" . sprintf(nm_get_text_lang("['login_copyright']", "Login", $str_idioma), date("Y")) . "#@#" . nm_get_text_lang("['login_forget_pass']", "Login", $str_idioma) . "#@#" . $msg_lic . "#@#" . nm_get_text_lang("['login_msg']", "Login", $str_idioma) . "#@#" . (is_ver_en() ? (nm_get_text_lang("['login_msg_url']", "Login", $str_idioma)) : "");
  65. }
  66. }
  67.  
  68. public function dropUserConnected($str_login, $str_pass, $ip, $session) {
  69. global $nm_online;
  70. if ($nm_online->RemoveConnection($str_login, $ip, $session)) {
  71. echo $str_login . "__#@#__" . $str_pass;
  72. }
  73. else {
  74. echo "error";
  75. }
  76. }
  77.  
  78. public function CalculateExpireDate($v_bol_temp = false) {
  79. global $nm_config;
  80. global $obj_lic;
  81. include $nm_config["path_prod"] . "lib/php/nm_data.class.php";
  82. $obj_data = new nm_data();
  83. $str_date = $obj_data->CalculaData($obj_lic->GetData("DataInstal", $v_bol_temp), "YYYYMMDD", "+", $obj_lic->FetchPeriod($obj_lic->GetData("Periodo", $v_bol_temp)), 0, 0);
  84. return $obj_data->Dif_Datas($str_date, "YYYY-MM-DD", date("Ymd"), "YYYYMMDD");
  85. }
  86.  
  87. public function CheckDateSysUpd() {
  88. global $obj_lic;
  89. global $nm_config;
  90. nm_load_class("interface", "Application");
  91. $obj_app = new nmApplication();
  92. $str_max = $obj_app->FetchMaxUpdDate();
  93. $str_today = date("Ymd");
  94. $_SESSION["nm_session"]["nm_sc_data_update"] = $obj_lic->IsDemo() ? (date("Ymd")) : ($obj_lic->GetData("DataUpdate"));
  95. $_SESSION["nm_session"]["nm_sc_data_update"] = $nm_config["em_desenv"] ? 20501010 : ($_SESSION["nm_session"]["nm_sc_data_update"]);
  96. if ($obj_lic->IsRent($obj_lic->GetData("Periodo")) && $str_today < $str_max) {
  97. $obj_lic->SetData("Status", NM_LIC_STATUS_OFF);
  98. $obj_lic->Update();
  99. }
  100. }
  101.  
  102. public function DisplayContent($bol_ajax = false) {
  103. global $nm_config;
  104. global $nm_template;
  105. global $nm_ini_sys;
  106. global $obj_lic;
  107. $nm_template->SetVar("arr_langs_login", $nm_config["lang_list"]);
  108. $nm_template->SetVar("sys_smtp_server", $nm_ini_sys->GetTag("sys_smtp_server"));
  109. $nm_template->SetVar("bol_welcome", is_file($nm_config["path_scriptcase"] . "welcome"));
  110. if (!$this->ValidateLogin($bol_ajax)) {
  111. if ($obj_lic->IsDemo()) {
  112. $arr_langs_lic = fc_get_text_all_lang(array("login_msg_demo_expired", "login_msg_demo_days", "login_msg_demo_day", "login_msg_demo_last", "login_msg_demo_expired"), "Login.lang.php");
  113. $nm_template->SetVar("lic_demo", true);
  114. if ($obj_lic->Expired()) {
  115. if (isset($_POST["ajax"])) {
  116. echo "error:" . nm_get_text_lang("['login_msg_demo_expired']");
  117. exit();
  118. }
  119. else {
  120. $nm_template->SetVar("lic_text", nm_get_text_lang("['login_msg_demo_expired']"));
  121. $_SESSION["nm_session"]["str_lang_lic"] = $arr_langs_lic["login_msg_demo_expired"];
  122. }
  123. }
  124. else {
  125. $int_diff = $this->CalculateExpireDate();
  126. $util_data = 0 < $obj_lic->GetData("UtilDatas") ? ($obj_lic->GetData("UtilDatas") - 1) : 0;
  127. $int_util = $obj_lic->FetchPeriod($obj_lic->GetData("Periodo", false)) - $util_data;
  128. $int_diff = min($int_diff, $int_util);
  129. if (1 < $int_diff) {
  130. if (isset($_POST["ajax"])) {
  131. echo "error:" . sprintf(nm_get_text_lang("['login_msg_demo_days']"), $int_diff);
  132. exit();
  133. }
  134. else {
  135. $nm_template->SetVar("lic_text", sprintf(nm_get_text_lang("['login_msg_demo_days']"), $int_diff));
  136. foreach ($arr_langs_lic["login_msg_demo_days"] as $k => $v) {
  137. $arr_langs_lic["login_msg_demo_days"][$k] = sprintf($v, $int_diff);
  138. continue;
  139. }
  140. $_SESSION["nm_session"]["str_lang_lic"] = $arr_langs_lic["login_msg_demo_days"];
  141. }
  142. }
  143. else {
  144. if (1 == $int_diff) {
  145. if (isset($_POST["ajax"])) {
  146. echo "error:" . nm_get_text_lang("['login_msg_demo_day']");
  147. exit();
  148. }
  149. else {
  150. $nm_template->SetVar("lic_text", nm_get_text_lang("['login_msg_demo_day']"));
  151. $_SESSION["nm_session"]["str_lang_lic"] = $arr_langs_lic["login_msg_demo_day"];
  152. }
  153. }
  154. else {
  155. if (0 == $int_diff) {
  156. if (isset($_POST["ajax"])) {
  157. echo "error:" . nm_get_text_lang("['login_msg_demo_last']");
  158. exit();
  159. }
  160. else {
  161. $nm_template->SetVar("lic_text", nm_get_text_lang("['login_msg_demo_last']"));
  162. $_SESSION["nm_session"]["str_lang_lic"] = $arr_langs_lic["login_msg_demo_last"];
  163. }
  164. }
  165. else {
  166. if (isset($_POST["ajax"])) {
  167. echo "error:" . nm_get_text_lang("['login_msg_demo_expired']");
  168. exit();
  169. }
  170. else {
  171. $nm_template->SetVar("lic_text", nm_get_text_lang("['login_msg_demo_expired']"));
  172. $_SESSION["nm_session"]["str_lang_lic"] = $arr_langs_lic["login_msg_demo_expired"];
  173. }
  174. }
  175. }
  176. }
  177. }
  178. }
  179. else {
  180. $nm_template->SetVar("lic_demo", false);
  181. $nm_template->SetVar("lic_text", "");
  182. }
  183. $nm_template->SetVar("change_lang_user", $this->GetArg("change_lang_user"));
  184. $nm_template->Display("body_login");
  185. $this->closeSession();
  186. }
  187. else {
  188. if (isset($_POST["ajax"])) {
  189. echo $_POST["field_user"] . "__#@#__" . $_POST["field_pass"] . "__#@#__";
  190. $this->closeSession();
  191. exit();
  192. }
  193. else {
  194. $obj_lic->ClearDumbRecord();
  195. checkLangFiles(nm_get_all_lang());
  196. $this->DoLogin();
  197. }
  198. }
  199. }
  200.  
  201. public function DoLogin() {
  202. global $nm_config;
  203. global $nm_online;
  204. global $nm_user;
  205. $str_login = $this->GetArg("field_user");
  206. $str_ip = $_SERVER["REMOTE_ADDR"];
  207. $int_code = $this->GetPageCode();
  208. $_SESSION["nm_session"]["return"] = "";
  209. if (isset($_POST["site"]) && !empty($_POST["site"])) {
  210. $_SESSION["nm_session"]["return"] = $_POST["site"];
  211. }
  212. ....................................................................
  213. .............................
  214. ...........
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement