Advertisement
freddy0512

scripts.js

Jan 19th, 2017
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.76 KB | None | 0 0
  1. // $(document).ready(function() {
  2.  
  3. // // User Menu
  4.  
  5. // $('.username').click(function() {
  6. // $('.user-menu').slideToggle();
  7. // });
  8.  
  9. // // Tabs
  10.  
  11. // $('.offer-tabs-tab.bxslider').bxSlider({
  12. // controls: false,
  13. // adaptiveHeight: true,
  14. // pagerCustom: '#offer-tabs-nav'
  15. // });
  16.  
  17. // $('.excerpts-tabs-tab').bxSlider({
  18. // controls: false,
  19. // pagerCustom: '#excerpts-tabs-nav'
  20. // });
  21.  
  22. // $('.account-tabs-tab').bxSlider({
  23. // controls: false,
  24. // mode: 'fade',
  25. // adaptiveHeight: true,
  26. // pagerCustom: '#account-tabs-nav'
  27. // });
  28.  
  29. // // Tabs with Pagination
  30.  
  31. // $('#search-tabs-nav').tabpager({
  32. // items: 8,
  33. // contents: 'search-results-tab',
  34. // time: 300,
  35. // previous: '«Prev',
  36. // next: 'Next»',
  37. // start: 1,
  38. // position: 'bottom'
  39. // });
  40.  
  41. // $('.dates-table').each(function() {
  42.  
  43. // var currentPage = 0;
  44. // var numPerPage = 4;
  45. // var table = $(this);
  46.  
  47. // table.bind('repaginate', function() {
  48. // table.find('tbody tr').hide().slice(currentPage * numPerPage, (currentPage + 1) * numPerPage).show();
  49. // });
  50.  
  51. // table.trigger('repaginate');
  52.  
  53. // var numRows = table.find('tbody tr').length;
  54. // var numPages = Math.ceil(numRows / numPerPage);
  55. // var pager = $('<div class="pager"></div>');
  56. // var prev = $('<a class="pagination-btn prev">Prev</a>');
  57. // var next = $('<a class="pagination-btn next">Next</a>');
  58.  
  59. // for (var page = 0; page < numPages; page++) {
  60. // $('<a class="page-number"></a>').text(page + 1).bind('click', {
  61. // newPage: page
  62. // }, function(event) {
  63. // currentPage = event.data['newPage'];
  64. // table.trigger('repaginate');
  65. // $(this).addClass('current').siblings().removeClass('current');
  66. // }).appendTo(pager).addClass('clickable');
  67. // }
  68.  
  69. // pager.insertAfter(table).find('a.page-number:first').addClass('current');
  70. // prev.insertBefore('a.page-number:first');
  71. // next.insertAfter('a.page-number:last');
  72.  
  73. // next.click(function (e) {
  74. // prev.addClass('clickable');
  75. // pager.find('.current').next('.page-number.clickable').click();
  76. // });
  77. // prev.click(function (e) {
  78. // next.addClass('clickable');
  79. // pager.find('.current').prev('.page-number.clickable').click();
  80. // });
  81. // table.on('repaginate', function () {
  82. // next.addClass('clickable');
  83. // prev.addClass('clickable');
  84.  
  85. // setTimeout(function () {
  86. // var active = pager.find('.page-number.active');
  87. // if (active.next('.page-number.clickable').length === 0) {
  88. // next.removeClass('clickable');
  89. // } else if (active.prev('.page-number.clickable').length === 0) {
  90. // prev.removeClass('clickable');
  91. // }
  92. // });
  93. // });
  94. // table.trigger('repaginate');
  95.  
  96. // });
  97.  
  98. // // Accordion
  99.  
  100. // $('.accordion-title').click(function(e) {
  101. // e.preventDefault();
  102. // $(this).next('.accordion-content').slideToggle();
  103. // });
  104.  
  105. // $('.product-page .accordion-title').click(function(e) {
  106. // e.preventDefault();
  107. // $('.accordion-content').slideToggle();
  108. // $(this).hide();
  109. // });
  110.  
  111. // // Select
  112.  
  113. // $('.select-bank li a').click(function(e) {
  114. // e.preventDefault();
  115. // $(this).toggleClass('selected');
  116. // $(this).parent().siblings().children().removeClass('selected');
  117. // });
  118.  
  119. // // Category Menu
  120.  
  121. // $('.product-categories li a.has-submenu').click(function(e) {
  122. // event.preventDefault();
  123. // $(this).toggleClass('open');
  124. // $(this).next('.submenu').slideToggle();
  125. // });
  126.  
  127. // // AJAX
  128.  
  129. // var articleCount = 0;
  130. // var ajaxLock = false;
  131. // var articleTemplate = $('#tpl-product').html();
  132. // var articleHolder = $('#products-list');
  133.  
  134. // var getArticles = function(){
  135. // if(!ajaxLock){
  136. // ajaxLock = true;
  137. // $.ajax({
  138. // url: 'data.php',
  139. // method: 'get',
  140. // dataType: 'json',
  141. // data: {offset: articleCount},
  142. // error: function(){ ajaxLock = false; try{ console.error('AJAX ERROR', arguments) } catch(e){} },
  143. // success: function(reply){
  144. // $.each(reply, function(i, articleData){
  145. // var html = Mustache.render(articleTemplate, articleData);
  146. // articleHolder.append(html);
  147. // });
  148. // articleCount += reply.length;
  149. // if(reply.length>0) {
  150. // ajaxLock = false;
  151. // // $('.load-more').fadeOut();
  152. // }
  153. // }
  154. // });
  155. // }
  156. // };
  157.  
  158. // $('.load-more a').click(function(e){
  159. // e.preventDefault();
  160. // getArticles();
  161. // }).trigger('click');
  162.  
  163. // });
  164.  
  165.  
  166. var tags = new Array("sales", "promo", "new");
  167. var articlePostTypes = new Array("news", "event", "promo");
  168.  
  169. function getProductByTags() {
  170.  
  171. if (tags.length === 0)
  172. return;
  173.  
  174. tag = tags[0];
  175. tags.shift();
  176.  
  177. $(".loader-product").show();
  178.  
  179. $.ajax({
  180. url: "api/get-product-by-tags/games/" + tag + "/6/0",
  181. type: "GET",
  182. }).done(function (msg) {
  183. elm = $(msg);
  184. elm.hide().appendTo(".home-product").fadeIn(1000);
  185. $(".loader-product").hide();
  186. getProductByTags();
  187. });
  188. }
  189.  
  190. function getArticleByPostType() {
  191.  
  192. if (articlePostTypes.length === 0)
  193. return;
  194.  
  195. type = articlePostTypes[0];
  196. articlePostTypes.shift();
  197. //$(".loader-article").show();
  198.  
  199. $.ajax({
  200. url: "api/get-article-by-post-type/" + type + "/4/0",
  201. type: "GET",
  202. }).done(function (msg) {
  203. types = type.toLowerCase().replace(/\b[a-z]/g, function (letter) {
  204. return letter.toUpperCase();
  205. });
  206. elm = $(msg);
  207. elm.hide().appendTo("#" + types).fadeIn(1000);
  208. $(".loader-article").hide();
  209. getArticleByPostType();
  210. });
  211. }
  212.  
  213. $(document).ready(function () {
  214.  
  215. getProductByTags();
  216. getArticleByPostType();
  217. });
  218.  
  219.  
  220.  
  221. $(function () {
  222.  
  223. $('form.mog-form').find('.form-group').append('<div class="help-block with-errors"></div>');
  224.  
  225. $('.dob').datetimepicker({
  226. viewMode: 'years',
  227. focusOnShow: true,
  228. format: "YYYY-MM-DD",
  229. showClear: true,
  230. showClose: true,
  231. ignoreReadonly: true,
  232. useCurrent: false,
  233. maxDate: moment().subtract(6,'year')
  234.  
  235. });
  236.  
  237. $('body').on('submit', 'form.mog-form', function () {
  238.  
  239.  
  240.  
  241. var $form = $(this),
  242. url = $(this).attr('action'),
  243. method = $(this).attr('method'),
  244. validation = $(this).parsley()
  245. ;
  246. if(validation) {
  247. MOG.lib.sendAjax({
  248. url: url,
  249. method: method,
  250. data: $(this).serialize(),
  251. indicatorPlacement: $form,
  252. success: function (response) {
  253. if (typeof response == 'object') {
  254. if (response.status != 'ok') {
  255. MOG.lib.showErrorMessage(response.messages,'body',true);
  256. grecaptcha.reset();
  257.  
  258. }
  259.  
  260. MOG.lib.showSuccessMessage(response.messages,'body',true);
  261.  
  262. $form.hide;
  263.  
  264. }
  265. return;
  266. },
  267. error: function (xhr) {
  268. var rsp = xhr.responseJSON;
  269. //console.log(JSON.stringify(rsp));
  270. if (xhr.status == 422 ) {
  271. var _errors = [];
  272. $.each(rsp.messages, function (key, item) {
  273. var _field = $('#' + key);
  274. var father = _field.parents('.form-group');
  275. father.removeClass('has-success');
  276. father.addClass('has-error');
  277. father.find('.help-block').html(item[0]);
  278. _errors.push(key);
  279. });
  280. $.each($form.serializeArray(), function (i, field) {
  281. if ($.inArray(field.name, _errors) === -1) {
  282. var father = $('#' + field.name).parent('.form-group');
  283. father.removeClass('has-error');
  284. father.addClass('has-success');
  285. father.find('.help-block').html('');
  286. }
  287. });
  288. } else {
  289. MOG.lib.showErrorMessage(rsp.messages,'body',true);
  290.  
  291. }
  292.  
  293. grecaptcha.reset();
  294.  
  295. return false;
  296. }
  297. });
  298.  
  299. return false;
  300. }
  301.  
  302. });
  303. $('body').on('submit', 'form.mog-login-form', function () {
  304.  
  305.  
  306.  
  307. var $form = $(this),
  308. url = $(this).attr('action'),
  309. method = $(this).attr('method'),
  310. validation = $(this).parsley()
  311. ;
  312. if(validation) {
  313. MOG.lib.sendAjax({
  314. url: url,
  315. method: method,
  316. data: $(this).serialize(),
  317. indicatorPlacement: $form,
  318. success: function (response) {
  319. if (typeof response == 'object') {
  320. if (response.status != 'ok') {
  321. MOG.lib.showErrorMessage(response.messages,'body',true);
  322. grecaptcha.reset();
  323. return;
  324.  
  325. }
  326.  
  327. MOG.lib.showSuccessMessage(response.messages,'body',true);
  328.  
  329. $form.hide;
  330.  
  331. }
  332. setTimeout(function () {
  333. window.location.reload();
  334. },200)
  335. return;
  336. },
  337. error: function (xhr) {
  338. var rsp = xhr.responseJSON;
  339. //console.log(JSON.stringify(rsp));
  340. if (xhr.status == 422 ) {
  341. var _errors = [];
  342. $.each(rsp.messages, function (key, item) {
  343. var _field = $('#' + key);
  344. var father = _field.parents('.form-group');
  345. father.removeClass('has-success');
  346. father.addClass('has-error');
  347. father.find('.help-block').html(item[0]);
  348. _errors.push(key);
  349. });
  350. $.each($form.serializeArray(), function (i, field) {
  351. if ($.inArray(field.name, _errors) === -1) {
  352. var father = $('#' + field.name).parent('.form-group');
  353. father.removeClass('has-error');
  354. father.addClass('has-success');
  355. father.find('.help-block').html('');
  356. }
  357. });
  358. } else {
  359. MOG.lib.showErrorMessage(rsp.messages,'body',true);
  360.  
  361. }
  362.  
  363. grecaptcha.reset();
  364.  
  365. return false;
  366. }
  367. });
  368.  
  369. return false;
  370. }
  371.  
  372. });
  373. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement