portal html css js resource

inviteAuthor.js 6.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290
  1. (function($) {
  2. $(document).ready(function() {
  3. var state;
  4. function Init() {
  5. this.id = s64to16(GetQueryString("i"));
  6. if(GetQueryString("d")) {
  7. this.inviteId =s64to16(GetQueryString("d"));
  8. }else{
  9. this.inviteId ="";
  10. }
  11. this.flag = GetQueryString("f");
  12. this.passCode=false;
  13. this.ajax({
  14. url: "/ajax/ppaper/qo",
  15. obj: {
  16. "id":this.id
  17. },
  18. type: "get",
  19. status:true,
  20. oFun: this.title
  21. });
  22. this.bindEvent(this);
  23. }
  24. Init.prototype.ajax = function(objec) {
  25. $.ajax({
  26. url: objec.url,
  27. data: objec.obj,
  28. dataType: 'json', //服务器返回json格式数据
  29. type: objec.type, //HTTP请求类型
  30. timeout: 10000, //超时时间设置为10秒;
  31. async:objec.status,
  32. traditional: true,
  33. success: function(data) {
  34. objec.oFun(data);
  35. },
  36. error: function(e) {
  37. console.log(e);
  38. bombox("服务器链接超时");
  39. return;
  40. }
  41. });
  42. }
  43. Init.prototype.title = function($data) {
  44. if($data.success) {
  45. $(".formTit").html("《"+$data.data.name+"》")
  46. }
  47. console.log($data);
  48. }
  49. Init.prototype.sendAuthentication = function($data) {
  50. if($data.success) {
  51. state = $data.data;
  52. doClick();
  53. }
  54. }
  55. Init.prototype.code = function(data) {
  56. if(data.success) {
  57. if(data.data==false) {
  58. bombox("验证码错误,请检查后重新输入");
  59. return;
  60. }else{
  61. init.passCode=true;
  62. return;
  63. }
  64. }else{
  65. if(data.msg=="验证超时"){
  66. bombox("验证码已过期,请重新获取");
  67. return;
  68. }else{
  69. bombox("请填写正确的手机号,验证码");
  70. return;
  71. }
  72. }
  73. }
  74. Init.prototype.completeReg = function(data) {
  75. if (data.success) {
  76. if(init.flag) {
  77. location.href="../ekexiu/InviteResult.html?flag=1&code="+data.data
  78. }
  79. }
  80. }
  81. Init.prototype.bindEvent = function(sel) {
  82. /*校验提交按钮显示状态*/
  83. $('.form-group').on('keyup', "#userphone,#code,#username", function() {
  84. if($("#userphone").val() == "" || $("#code").val() == "" || $("#username").val() == "") {
  85. $("#regbtn").attr("disabled", true);
  86. } else {
  87. $("#regbtn").attr("disabled", false);
  88. }
  89. });
  90. /*注册按钮*/
  91. $("#regbtn").on('click', function() {
  92. var oStringLength = $("#username").val().length;
  93. if(oStringLength > 10) {
  94. bombox("请输入您的真实姓名");
  95. return;
  96. }
  97. sel.ajax({
  98. url: "/ajax/validCode",
  99. obj: {
  100. "state": state,
  101. "vc": $("#code").val()
  102. },
  103. status:false,
  104. type: "post",
  105. oFun: sel.code
  106. });
  107. if(sel.passCode) {
  108. sel.ajax({
  109. url: (sel.flag)?"/ajax/regAndAssPaper":"/ajax/regAndAssPatent",
  110. obj: (sel.flag)?{
  111. "state":state,
  112. "vc":$("#code").val(),
  113. "phone":$("#userphone").val(),
  114. "inviterId":sel.d,
  115. "name":$("#username").val(),
  116. "paper":sel.i
  117. }:{
  118. "state":state,
  119. "vc":$("#code").val(),
  120. "phone":$("#userphone").val(),
  121. "inviterId":sel.d,
  122. "name":$("#username").val(),
  123. "patent":sel.i
  124. },
  125. status:true,
  126. type: "post",
  127. oFun: sel.completeReg
  128. });
  129. }
  130. });
  131. /*点击获取验证码*/
  132. $('#obtain-code').on('click', function() {
  133. var hunPhone = /^1[3|4|5|7|8]\d{9}$/;
  134. if(hunPhone.test($("#userphone").val())) {
  135. sel.ajax({
  136. url: "/ajax/regmobilephone",
  137. obj: {
  138. "mobilePhone":$("#userphone").val(),
  139. "checkExists":false
  140. },
  141. status:true,
  142. type: "get",
  143. oFun: sel.sendAuthentication
  144. });
  145. } else {
  146. bombox("请输入正确的手机号码");
  147. return;
  148. }
  149. });
  150. }
  151. /*控制提示框样式*/
  152. function bombox(textt) {
  153. $(".bomb-box").fadeIn("slow");
  154. $(".bomb-box").text(textt);
  155. var bombwidth = $(".bomb-box").width();
  156. $(".bomb-box").css({
  157. "marginLeft": -(bombwidth + 25) / 2 + "px"
  158. });
  159. setTimeout(function() {
  160. $(".bomb-box").fadeOut("slow");
  161. }, 4000);
  162. }
  163. /*30s后重新获取验证码*/
  164. function doClick() {
  165. $("#obtain-code").attr("disabled",true);
  166. $("#obtain-code").text("60s后重新获取");
  167. var clickTime = new Date().getTime();
  168. var Timer = setInterval(function() {
  169. var nowTime = new Date().getTime();
  170. var second = Math.ceil(60 - (nowTime - clickTime) / 1000);
  171. if(second > 0) {
  172. $("#obtain-code").text(second + "s后重新获取");
  173. } else {
  174. clearInterval(Timer);
  175. $("#obtain-code").attr("disabled",false);
  176. $("#obtain-code").text("获取验证码");
  177. }
  178. }, 1000);
  179. }
  180. var r64 = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "-", "_"];
  181. var d64 = {
  182. "0": 0,
  183. "1": 1,
  184. "2": 2,
  185. "3": 3,
  186. "4": 4,
  187. "5": 5,
  188. "6": 6,
  189. "7": 7,
  190. "8": 8,
  191. "9": 9,
  192. "A": 10,
  193. "B": 11,
  194. "C": 12,
  195. "D": 13,
  196. "E": 14,
  197. "F": 15,
  198. "G": 16,
  199. "H": 17,
  200. "I": 18,
  201. "J": 19,
  202. "K": 20,
  203. "L": 21,
  204. "M": 22,
  205. "N": 23,
  206. "O": 24,
  207. "P": 25,
  208. "Q": 26,
  209. "R": 27,
  210. "S": 28,
  211. "T": 29,
  212. "U": 30,
  213. "V": 31,
  214. "W": 32,
  215. "X": 33,
  216. "Y": 34,
  217. "Z": 35,
  218. "a": 36,
  219. "b": 37,
  220. "c": 38,
  221. "d": 39,
  222. "e": 40,
  223. "f": 41,
  224. "g": 42,
  225. "h": 43,
  226. "i": 44,
  227. "j": 45,
  228. "k": 46,
  229. "l": 47,
  230. "m": 48,
  231. "n": 49,
  232. "o": 50,
  233. "p": 51,
  234. "q": 52,
  235. "r": 53,
  236. "s": 54,
  237. "t": 55,
  238. "u": 56,
  239. "v": 57,
  240. "w": 58,
  241. "x": 59,
  242. "y": 60,
  243. "z": 61,
  244. "-": 62,
  245. "_": 63
  246. };
  247. function s16to64(s) {
  248. var out, idx, n1, n2, n3;
  249. idx = s.length - 1;
  250. out = "";
  251. while(idx >= 0) {
  252. n1 = d64[s.charAt(idx--)];
  253. if(idx < 0) {
  254. out = r64[n1] + out;
  255. break;
  256. }
  257. n2 = d64[s.charAt(idx--)];
  258. if(idx < 0) {
  259. out = r64[(n2 >>> 2)] + r64[((n2 & 0x3) << 4) + n1] + out;
  260. break;
  261. }
  262. n3 = d64[s.charAt(idx--)];
  263. out = r64[(n2 >>> 2) + (n3 << 2)] + r64[((n2 & 0x3) << 4) + n1] + out;
  264. }
  265. return out;
  266. }
  267. function s64to16(s) {
  268. var out, idx, n1, n2;
  269. idx = s.length - 1;
  270. out = "";
  271. while(idx >= 0) {
  272. n1 = d64[s.charAt(idx--)];
  273. if(idx < 0) {
  274. out = r64[n1 >>> 4] + r64[n1 & 0xF] + out;
  275. break;
  276. }
  277. n2 = d64[s.charAt(idx--)];
  278. out = r64[(n2 >>> 2)] + r64[(n1 >>> 4) + ((n2 & 0x3) << 2)] + r64[n1 & 0xF] + out;
  279. }
  280. return out;
  281. }
  282. var init=new Init();
  283. })
  284. })(jQuery);