login.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. var Login = function () {
  2. return {
  3. //main function to initiate the module
  4. init: function () {
  5. $('.login-form').validate({
  6. errorElement: 'label', //default input error message container
  7. errorClass: 'help-inline', // default input error message class
  8. focusInvalid: false, // do not focus the last invalid input
  9. rules: {
  10. username: {
  11. required: true
  12. },
  13. password: {
  14. required: true
  15. },
  16. remember: {
  17. required: false
  18. }
  19. },
  20. messages: {
  21. username: {
  22. required: "Username is required."
  23. },
  24. password: {
  25. required: "Password is required."
  26. }
  27. },
  28. invalidHandler: function (event, validator) { //display error alert on form submit
  29. $('.alert-error', $('.login-form')).show();
  30. },
  31. highlight: function (element) { // hightlight error inputs
  32. $(element)
  33. .closest('.control-group').addClass('error'); // set error class to the control group
  34. },
  35. success: function (label) {
  36. label.closest('.control-group').removeClass('error');
  37. label.remove();
  38. },
  39. errorPlacement: function (error, element) {
  40. error.addClass('help-small no-left-padding').insertAfter(element.closest('.input-icon'));
  41. },
  42. submitHandler: function (form) {
  43. window.location.href = "index.html";
  44. }
  45. });
  46. $('.login-form input').keypress(function (e) {
  47. if (e.which == 13) {
  48. if ($('.login-form').validate().form()) {
  49. window.location.href = "index.html";
  50. }
  51. return false;
  52. }
  53. });
  54. $('.forget-form').validate({
  55. errorElement: 'label', //default input error message container
  56. errorClass: 'help-inline', // default input error message class
  57. focusInvalid: false, // do not focus the last invalid input
  58. ignore: "",
  59. rules: {
  60. email: {
  61. required: true,
  62. email: true
  63. }
  64. },
  65. messages: {
  66. email: {
  67. required: "Email is required."
  68. }
  69. },
  70. invalidHandler: function (event, validator) { //display error alert on form submit
  71. },
  72. highlight: function (element) { // hightlight error inputs
  73. $(element)
  74. .closest('.control-group').addClass('error'); // set error class to the control group
  75. },
  76. success: function (label) {
  77. label.closest('.control-group').removeClass('error');
  78. label.remove();
  79. },
  80. errorPlacement: function (error, element) {
  81. error.addClass('help-small no-left-padding').insertAfter(element.closest('.input-icon'));
  82. },
  83. submitHandler: function (form) {
  84. window.location.href = "index.html";
  85. }
  86. });
  87. $('.forget-form input').keypress(function (e) {
  88. if (e.which == 13) {
  89. if ($('.forget-form').validate().form()) {
  90. window.location.href = "index.html";
  91. }
  92. return false;
  93. }
  94. });
  95. jQuery('#forget-password').click(function () {
  96. jQuery('.login-form').hide();
  97. jQuery('.forget-form').show();
  98. });
  99. jQuery('#back-btn').click(function () {
  100. jQuery('.login-form').show();
  101. jQuery('.forget-form').hide();
  102. });
  103. $('.register-form').validate({
  104. errorElement: 'label', //default input error message container
  105. errorClass: 'help-inline', // default input error message class
  106. focusInvalid: false, // do not focus the last invalid input
  107. ignore: "",
  108. rules: {
  109. username: {
  110. required: true
  111. },
  112. password: {
  113. required: true
  114. },
  115. rpassword: {
  116. equalTo: "#register_password"
  117. },
  118. email: {
  119. required: true,
  120. email: true
  121. },
  122. tnc: {
  123. required: true
  124. }
  125. },
  126. messages: { // custom messages for radio buttons and checkboxes
  127. tnc: {
  128. required: "Please accept TNC first."
  129. }
  130. },
  131. invalidHandler: function (event, validator) { //display error alert on form submit
  132. },
  133. highlight: function (element) { // hightlight error inputs
  134. $(element)
  135. .closest('.control-group').addClass('error'); // set error class to the control group
  136. },
  137. success: function (label) {
  138. label.closest('.control-group').removeClass('error');
  139. label.remove();
  140. },
  141. errorPlacement: function (error, element) {
  142. if (element.attr("name") == "tnc") { // insert checkbox errors after the container
  143. error.addClass('help-small no-left-padding').insertAfter($('#register_tnc_error'));
  144. } else {
  145. error.addClass('help-small no-left-padding').insertAfter(element.closest('.input-icon'));
  146. }
  147. },
  148. submitHandler: function (form) {
  149. window.location.href = "index.html";
  150. }
  151. });
  152. jQuery('#register-btn').click(function () {
  153. jQuery('.login-form').hide();
  154. jQuery('.register-form').show();
  155. });
  156. jQuery('#register-back-btn').click(function () {
  157. jQuery('.login-form').show();
  158. jQuery('.register-form').hide();
  159. });
  160. }
  161. };
  162. }();