app_auto_login.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414
  1. var isMobile = {
  2. Android: function() {
  3. return navigator.userAgent.match(/Android|AOS|webview/i) == null ? false : true;
  4. },
  5. iOS: function() {
  6. return navigator.userAgent.match(/iPhone|iPad|iPod|iOS/i) == null ? false : true;
  7. },
  8. any: function() {
  9. return (isMobile.Android() || isMobile.iOS());
  10. }
  11. };
  12. //로그아웃
  13. function setLogout() {
  14. if (isMobile.any()) {
  15. if (isMobile.Android()) {
  16. window.webview.setLogin('');
  17. } else if (isMobile.iOS()) {
  18. webkit.messageHandlers.setLogin.postMessage('');
  19. }
  20. }
  21. }
  22. function getLogin() {
  23. if (isMobile.any()) {
  24. if (isMobile.Android()) {
  25. try {
  26. var str = window.webview.getLogin(); // AOS는 바로 받을 수 있음
  27. //alert(str);
  28. //alert(window.webview.getLogin())
  29. //alert(app_exec_mode);
  30. if($.trim(str) != "") {
  31. switch(app_exec_mode) {
  32. case 'user':
  33. user_auto_login(str);
  34. break;
  35. case 'sa':
  36. sa_auto_login(str);
  37. break;
  38. case 'aap':
  39. aap_auto_login(str);
  40. break;
  41. }
  42. }else {
  43. //메인페이지에서 체크할 경우 로그인 페이지로 이동하려 했으나, 앱의 첫 페이지가 로그인이므로 주석 처리
  44. if(app_exec_mode == "user") {
  45. // alert("user");
  46. link('/m/main.php');
  47. }
  48. // go_login_page();
  49. }
  50. }catch (err) {
  51. //PC 모드에서는 APP Interface가 없기 떄문에 추가
  52. //window.location.pathname
  53. if(app_exec_mode == "user" && window.location.pathname != "/m/main.php") {
  54. console.log(window.location.pathname)
  55. // alert("user");
  56. link('/m/main.php');
  57. }
  58. }
  59. } else if (isMobile.iOS()) {
  60. webkit.messageHandlers.getLogin.postMessage(1); // 값이 빌 경우 앱 호출 안 됨
  61. }
  62. }
  63. }
  64. function setLogin(enc_str) {
  65. if (isMobile.any()) {
  66. if (isMobile.Android()) {
  67. window.webview.setLogin(enc_str);
  68. } else if (isMobile.iOS()) {
  69. webkit.messageHandlers.setLogin.postMessage(enc_str);
  70. }
  71. }
  72. }
  73. function user_auto_login(enc_str) {
  74. var parameter = get_query(enc_str);
  75. // alert(1);
  76. if(typeof parameter['al_usr'] != "undefined" && $.trim(parameter['al_usr']) != "" && typeof parameter['al_val'] != "undefined" && $.trim(parameter['al_val']) != "") {
  77. var data = {
  78. mode : 'loginAuto',
  79. al_usr : parameter['al_usr'],
  80. al_val : parameter['al_val'],
  81. }
  82. $.ajax({
  83. url: '/m/member/login_proc.php',
  84. type: 'POST',
  85. dataType: 'json',
  86. data: data,
  87. success: function (res) {
  88. // alert(res.CODE);
  89. //로그인 실패시 앱에 저장되어 있는 데이터 삭제
  90. if (res.CODE != "0000") {
  91. setLogout();
  92. link("/m/main.php");
  93. return false;
  94. }
  95. link("/m/main.php");
  96. },
  97. error: function (request, status, error) {
  98. alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
  99. }
  100. });
  101. }
  102. }
  103. function sa_auto_login(enc_str) {
  104. var parameter = get_query(enc_str);
  105. if(typeof parameter['al_usr'] != "undefined" && $.trim(parameter['al_usr']) != "" && typeof parameter['al_val'] != "undefined" && $.trim(parameter['al_val']) != "") {
  106. var data = {
  107. mode : 'loginAuto',
  108. al_usr : parameter['al_usr'],
  109. al_val : parameter['al_val'],
  110. }
  111. $.ajax({
  112. url: '/m/sa/login_proc.php',
  113. type: 'POST',
  114. dataType: 'json',
  115. data: data,
  116. success: function (res) {
  117. // alert(res.CODE);
  118. //로그인 실패시 앱에 저장되어 있는 데이터 삭제
  119. if (res.CODE != "0000") {
  120. setLogout();
  121. return false;
  122. }
  123. link("/m/sa/main.php");
  124. },
  125. error: function (request, status, error) {
  126. alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
  127. }
  128. });
  129. }
  130. }
  131. function aap_auto_login(enc_str) {
  132. var parameter = get_query(enc_str);
  133. if(typeof parameter['al_usr'] != "undefined" && $.trim(parameter['al_usr']) != "" && typeof parameter['al_val'] != "undefined" && $.trim(parameter['al_val']) != "") {
  134. var data = {
  135. mode : 'loginAuto',
  136. al_usr : parameter['al_usr'],
  137. al_val : parameter['al_val'],
  138. }
  139. $.ajax({
  140. url: '/m/aap/login_proc.php',
  141. type: 'POST',
  142. dataType: 'json',
  143. data: data,
  144. success: function (res) {
  145. // alert(res.CODE);
  146. //로그인 실패시 앱에 저장되어 있는 데이터 삭제
  147. if (res.CODE != "0000") {
  148. setLogout();
  149. return false;
  150. }
  151. link("/m/aap/main.php");
  152. },
  153. error: function (request, status, error) {
  154. alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
  155. }
  156. });
  157. }
  158. }
  159. function go_login_page() {
  160. // alert("로그인 페이지로 이동");
  161. // switch(app_exec_mode) {
  162. // case 'user':
  163. // link('/m/member/login.php');
  164. // break;
  165. // case 'sa':
  166. // link('/m/sa/login.php');
  167. // break;
  168. // case 'aap':
  169. // link('/m/aap/login.php');
  170. // break;
  171. // }
  172. }
  173. // iOS 정보 받는 부분var isMobile = {
  174. // Android: function() {
  175. // return navigator.userAgent.match(/Android|AOS|webview/i) == null ? false : true;
  176. // },
  177. // iOS: function() {
  178. // return navigator.userAgent.match(/iPhone|iPad|iPod|iOS/i) == null ? false : true;
  179. // },
  180. // any: function() {
  181. // return (isMobile.Android() || isMobile.iOS());
  182. // }
  183. // };
  184. // //로그아웃
  185. // function setLogout() {
  186. // if (isMobile.any()) {
  187. // if (isMobile.Android()) {
  188. // window.webview.setLogin('');
  189. // } else if (isMobile.iOS()) {
  190. // webkit.messageHandlers.setLogin.postMessage('');
  191. // }
  192. // }
  193. // }
  194. //
  195. // function getLogin() {
  196. // if (isMobile.any()) {
  197. // if (isMobile.Android()) {
  198. // try {
  199. // var str = window.webview.getLogin(); // AOS는 바로 받을 수 있음
  200. // // alert(str);
  201. // // alert(app_exec_mode);
  202. // if($.trim(str) != "") {
  203. // switch(app_exec_mode) {
  204. // case 'user':
  205. // user_auto_login(str);
  206. // break;
  207. // case 'sa':
  208. // sa_auto_login(str);
  209. // break;
  210. // case 'aap':
  211. // aap_auto_login(str);
  212. // break;
  213. // }
  214. // }else {
  215. // //메인페이지에서 체크할 경우 로그인 페이지로 이동하려 했으나, 앱의 첫 페이지가 로그인이므로 주석 처리
  216. // if(app_exec_mode == "user") {
  217. // // alert("user");
  218. // link('/m/main.php');
  219. // }
  220. // // go_login_page();
  221. // }
  222. // }catch (err) {
  223. // //PC 모드에서는 APP Interface가 없기 떄문에 추가
  224. //
  225. // //window.location.pathname
  226. // if(app_exec_mode == "user" && window.location.pathname != "/m/main.php") {
  227. // console.log(window.location.pathname)
  228. // // alert("user");
  229. // link('/m/main.php');
  230. // }
  231. // }
  232. //
  233. // } else if (isMobile.iOS()) {
  234. // webkit.messageHandlers.getLogin.postMessage(1); // 값이 빌 경우 앱 호출 안 됨
  235. // }
  236. // }
  237. // }
  238. //
  239. // function setLogin(enc_str) {
  240. // if (isMobile.any()) {
  241. // if (isMobile.Android()) {
  242. // window.webview.setLogin(enc_str);
  243. // } else if (isMobile.iOS()) {
  244. // webkit.messageHandlers.setLogin.postMessage(enc_str);
  245. // }
  246. // }
  247. // }
  248. //
  249. // function user_auto_login(enc_str) {
  250. // var parameter = get_query(enc_str);
  251. // // alert(1);
  252. // if(typeof parameter['al_usr'] != "undefined" && $.trim(parameter['al_usr']) != "" && typeof parameter['al_val'] != "undefined" && $.trim(parameter['al_val']) != "") {
  253. // var data = {
  254. // mode : 'loginAuto',
  255. // al_usr : parameter['al_usr'],
  256. // al_val : parameter['al_val'],
  257. // }
  258. // $.ajax({
  259. // url: '/m/member/login_proc.php',
  260. // type: 'POST',
  261. // dataType: 'json',
  262. // data: data,
  263. // success: function (res) {
  264. // // alert(res.CODE);
  265. // //로그인 실패시 앱에 저장되어 있는 데이터 삭제
  266. // if (res.CODE != "0000") {
  267. // setLogout();
  268. // link("/m/main.php");
  269. // return false;
  270. // }
  271. // link("/m/main.php");
  272. //
  273. // },
  274. // error: function (request, status, error) {
  275. // alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
  276. // }
  277. // });
  278. // }
  279. // }
  280. //
  281. // function sa_auto_login(enc_str) {
  282. // var parameter = get_query(enc_str);
  283. //
  284. // if(typeof parameter['al_usr'] != "undefined" && $.trim(parameter['al_usr']) != "" && typeof parameter['al_val'] != "undefined" && $.trim(parameter['al_val']) != "") {
  285. // var data = {
  286. // mode : 'loginAuto',
  287. // al_usr : parameter['al_usr'],
  288. // al_val : parameter['al_val'],
  289. // }
  290. // $.ajax({
  291. // url: '/m/sa/login_proc.php',
  292. // type: 'POST',
  293. // dataType: 'json',
  294. // data: data,
  295. // success: function (res) {
  296. // // alert(res.CODE);
  297. // //로그인 실패시 앱에 저장되어 있는 데이터 삭제
  298. // if (res.CODE != "0000") {
  299. // setLogout();
  300. // return false;
  301. // }
  302. // link("/m/sa/main.php");
  303. // },
  304. // error: function (request, status, error) {
  305. // alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
  306. // }
  307. // });
  308. // }
  309. // }
  310. //
  311. // function aap_auto_login(enc_str) {
  312. // var parameter = get_query(enc_str);
  313. // if(typeof parameter['al_usr'] != "undefined" && $.trim(parameter['al_usr']) != "" && typeof parameter['al_val'] != "undefined" && $.trim(parameter['al_val']) != "") {
  314. // var data = {
  315. // mode : 'loginAuto',
  316. // al_usr : parameter['al_usr'],
  317. // al_val : parameter['al_val'],
  318. // }
  319. // $.ajax({
  320. // url: '/m/aap/login_proc.php',
  321. // type: 'POST',
  322. // dataType: 'json',
  323. // data: data,
  324. // success: function (res) {
  325. // // alert(res.CODE);
  326. // //로그인 실패시 앱에 저장되어 있는 데이터 삭제
  327. // if (res.CODE != "0000") {
  328. // setLogout();
  329. // return false;
  330. // }
  331. // link("/m/aap/main.php");
  332. // },
  333. // error: function (request, status, error) {
  334. // alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
  335. // }
  336. // });
  337. // }
  338. // }
  339. //
  340. // function go_login_page() {
  341. // // alert("로그인 페이지로 이동");
  342. // // switch(app_exec_mode) {
  343. // // case 'user':
  344. // // link('/m/member/login.php');
  345. // // break;
  346. // // case 'sa':
  347. // // link('/m/sa/login.php');
  348. // // break;
  349. // // case 'aap':
  350. // // link('/m/aap/login.php');
  351. // // break;
  352. // // }
  353. // }
  354. //
  355. // // iOS 정보 받는 부분
  356. // function getLoginIos(str) {
  357. // if($.trim(str) != "") {
  358. // switch(app_exec_mode) {
  359. // case 'user':
  360. // user_auto_login(str);
  361. // break;
  362. // case 'sa':
  363. // sa_auto_login(str);
  364. // break;
  365. // case 'aap':
  366. // aap_auto_login(str);
  367. // break;
  368. // }
  369. // }
  370. // else {
  371. // //메인페이지에서 체크할 경우 로그인 페이지로 이동하려 했으나, 앱의 첫 페이지가 로그인이므로 주석 처리
  372. // if(app_exec_mode == "user") {
  373. // // alert("user");
  374. // link('/m/main.php');
  375. // }
  376. // // go_login_page();
  377. // }
  378. // // alert(str);
  379. // }
  380. function getLoginIos(str) {
  381. if($.trim(str) != "") {
  382. switch(app_exec_mode) {
  383. case 'user':
  384. user_auto_login(str);
  385. break;
  386. case 'sa':
  387. sa_auto_login(str);
  388. break;
  389. case 'aap':
  390. aap_auto_login(str);
  391. break;
  392. }
  393. }
  394. else {
  395. //메인페이지에서 체크할 경우 로그인 페이지로 이동하려 했으나, 앱의 첫 페이지가 로그인이므로 주석 처리
  396. if(app_exec_mode == "user") {
  397. // alert("user");
  398. link('/m/main.php');
  399. }
  400. // go_login_page();
  401. }
  402. // alert(str);
  403. }