OSDN Git Service

json.jsとは相性が悪いみたい。jquery.json.jsに差し替え。
[andro-memo/andro-memo.git] / andro-memo-web / war / res / js / andro-memo.js
1 $(function() {\r
2         $.ajaxSetup({\r
3                 cache: false,\r
4                 contentType: "application/json",\r
5                 dataType: "json",\r
6                 timeout: 10000,\r
7                 type: "POST",\r
8                 url: "http://localhost:8888/json/rpc.json"\r
9         });\r
10         \r
11         $("#messagePanel").hide();\r
12         $("#loadingImage").hide();\r
13         \r
14         $("#loginButton")\r
15                 .button({\r
16                         icons: {primary: "ui-icon-info"}\r
17                 })\r
18                 .click(function() {\r
19                         $("#messagePanel").hide();\r
20                         $("#emailField").attr("disabled", true);\r
21                         $("#passwordField").attr("disabled", true);\r
22                         $("#loginButton").button({\r
23                                 disabled: true\r
24                         });\r
25                         $("#loadingImage").show();\r
26                         \r
27                         $.ajax({\r
28                                 data: $.toJSON({\r
29                                         method: "user.login",\r
30                                         params: [ $("#emailField").val(), $("#passwordField").val() ],\r
31                                         id: 1\r
32                                 }),\r
33                                 success: loginSuccess,\r
34                                 error: loginError\r
35                         });\r
36                 });\r
37         \r
38         $("#dialog")\r
39                 .dialog({\r
40                         autoOpen: false,\r
41                         modal: true,\r
42                         resizable: false\r
43                 });\r
44 });\r
45 \r
46 function loginSuccess(data, status, xhr) {\r
47         if (data.error != null) {\r
48                 loginError(xhr, "internal", data);\r
49                 return;\r
50         }\r
51         \r
52         if (data.result != null) {\r
53                 alert("loginTicketKey: " + data.result);\r
54                 location.href = "user/index.html";\r
55                 return;\r
56         }\r
57         \r
58         $("#emailField").removeAttr("disabled");\r
59         $("#passwordField").removeAttr("disabled");\r
60         $("#loginButton").button({\r
61                 disabled: false\r
62         });\r
63         $("#loadingImage").hide();\r
64         \r
65         $("#messageField").text("ログインに失敗しました。メールアドレス、またはパスワードが間違えています。");\r
66         $("#messagePanel").show();\r
67 }\r
68 \r
69 function loginError(xhr, status, errorThrown) {\r
70         $("#emailField").removeAttr("disabled");\r
71         $("#passwordField").removeAttr("disabled");\r
72         $("#loginButton").button({\r
73                 disabled: false\r
74         });\r
75         $("#loadingImage").hide();\r
76         \r
77         var dialogTitle;\r
78         \r
79         if (status == "internal") {\r
80                 dialogTitle = "サーバー内エラー";\r
81                 $("#dialogIconImage").addClass("ui-icon-alert");\r
82                 $("#dialogMessageField").html("<strong>サーバーの中でエラーが発生しました。</strong><br>問題を調査していますので、しばらく後にもう一度試してください。");\r
83         } else {\r
84                 dialogTitle = "通信エラー";\r
85                 $("#dialogIconImage").addClass("ui-icon-alert");\r
86                 $("#dialogMessageField").html("<strong>通信に失敗しました。</strong><br>インターネットへの接続を確認してください。接続に問題が無い場合、サーバが停止している可能性がありますので、しばらく後にもう一度試してください。");\r
87         }\r
88         \r
89         $("#dialog")\r
90                 .dialog({\r
91                         title: dialogTitle,\r
92                         position: "center",\r
93                         buttons: {\r
94                                 "閉じる": function() {\r
95                                         $("#dialogIconImage").removeClass("ui-icon-alert");\r
96                                         $("#dialogMessage").html("");\r
97                                         \r
98                                         $(this).dialog("close");\r
99                                 }\r
100                         }\r
101                 })\r
102                 .dialog("open");\r
103 }\r