init.js 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633
  1. $(document).ready(function(){
  2. if($('.body-login')[0]){
  3. $('input').first().focus();
  4. }
  5. $(".submenu-select-dropdown").each(function(){
  6. $(this).wrap("<span class='submenu-select-wrapper'></span>");
  7. $(this).after("<span class='holder'></span>");
  8. });
  9. $(".submenu-select-dropdown").change(function(){
  10. var selectedOption = $(this).find(":selected").text();
  11. $(this).next(".holder").text(selectedOption);
  12. }).trigger('change');
  13. $('.to-top').on('click', function(evt) {
  14. $("html, body").animate({ scrollTop: 0 }, "normal");
  15. });
  16. $('.ui-button').on('click',function(evt){
  17. var action = $(this).data('action');
  18. var id = $(this).data('id');
  19. if(action=='submit' && document.getElementById(id)){
  20. evt.preventDefault();
  21. $(document.getElementById(id)).submit();
  22. }
  23. });
  24. var isMobile = false; //initiate as false
  25. // device detection
  26. if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|ipad|iris|kindle|Android|Silk|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(navigator.userAgent)
  27. || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(navigator.userAgent.substr(0,4))){
  28. isMobile = true;
  29. $('body').addClass('mobile');
  30. }
  31. $(window).scroll(function(){hover_menu()});
  32. $('.l-sort-toolbar .sort-by').click(function(){
  33. $('.context-menu.sort-order').toggle().css({left: $(this).position().left - 0});
  34. });
  35. // CREATE BUTTON
  36. $('.l-sort__create-btn').hover(function(){
  37. $(".l-sort__create-btn").append("<div id='add-icon'></div>");
  38. $(".l-sort__create-btn").append("<div id='tooltip'>"+$('.l-sort__create-btn').attr('title').replace(' ','&nbsp;')+"</div>");
  39. }, function(){
  40. $("#add-icon").remove();
  41. $("#tooltip").remove();
  42. });
  43. // SEARCH BOX
  44. $('.l-sort-toolbar__search, .l-sort-toolbar__search-box .search-input').hover(function(){
  45. clearTimeout(VE.tmp.search_display_interval);
  46. clearTimeout(VE.tmp.search_hover_interval);
  47. VE.tmp.search_display_interval = setTimeout(function(){$('.search-input').addClass('activated');}, 150);
  48. }, function(){
  49. clearTimeout(VE.tmp.search_display_interval);
  50. clearTimeout(VE.tmp.search_hover_interval);
  51. VE.tmp.search_hover_interval = setTimeout(function(){
  52. if(!VE.tmp.search_activated && !$(".search-input").val().length){
  53. $(".search-input").removeClass('activated');
  54. }
  55. }, 600);
  56. });
  57. $('.search-input').focus(function(){
  58. VE.tmp.search_activated = 1;
  59. clearTimeout(VE.tmp.search_hover_interval);
  60. });
  61. $('.search-input').blur(function(){
  62. VE.tmp.search_activated = 0;
  63. clearTimeout(VE.tmp.search_hover_interval);
  64. VE.tmp.search_hover_interval = setTimeout(function(){
  65. if(!$(".search-input").val().length){
  66. $(".search-input").removeClass('activated');
  67. }
  68. }, 600);
  69. });
  70. // TIMER
  71. if($('.movement.left').length){
  72. VE.helpers.refresh_timer.right = $('.movement.right');
  73. VE.helpers.refresh_timer.left = $('.movement.left');
  74. VE.helpers.refresh_timer.start();
  75. $('.pause').click(function(){
  76. VE.helpers.refresh_timer.stop();
  77. $('.pause').addClass('hidden');
  78. $('.play').removeClass('hidden');
  79. $('.refresh-timer').addClass('paused');
  80. });
  81. $('.play').click(function(){
  82. VE.helpers.refresh_timer.start();
  83. $('.pause').removeClass('hidden');
  84. $('.play').addClass('hidden');
  85. $('.refresh-timer').removeClass('paused');
  86. });
  87. }
  88. // SORTING
  89. $('#vstobjects input, #vstobjects select, #vstobjects textarea').change(function(){VE.tmp.form_changed=1});
  90. $('.sort-order span').click(function(){
  91. $('.context-menu.sort-order').toggle();
  92. if($(this).hasClass('active'))
  93. return;
  94. $('.sort-order span').removeClass('active');
  95. $(this).addClass('active');
  96. VE.tmp.sort_par = $(this).parent('li').attr('entity');
  97. VE.tmp.sort_as_int = $(this).parent('li').attr('sort_as_int');
  98. VE.tmp.sort_direction = $(this).hasClass('up')*1 || -1;
  99. $('.l-sort .sort-by span b').html($(this).parent('li').find('.name').html());
  100. $('.l-sort .sort-by i').removeClass('fa-sort-amount-up fa-sort-amount-down');
  101. $(this).hasClass('up') ? $('.l-sort .sort-by i').addClass('fa-sort-amount-up') : $('.l-sort .sort-by i').addClass('fa-sort-amount-down');
  102. $('.units .l-unit').sort(function (a, b) {
  103. if(VE.tmp.sort_as_int)
  104. return parseInt($(a).attr(VE.tmp.sort_par)) >= parseInt($(b).attr(VE.tmp.sort_par)) ? VE.tmp.sort_direction : VE.tmp.sort_direction * -1;
  105. else
  106. return $(a).attr(VE.tmp.sort_par) <= $(b).attr(VE.tmp.sort_par) ? VE.tmp.sort_direction : VE.tmp.sort_direction * -1;
  107. }).appendTo(".l-center.units");
  108. });
  109. // STARS
  110. $('.l-unit .l-icon-star').click(function(){
  111. var l_unit = $(this).parents('.l-unit');
  112. if(l_unit.hasClass('l-unit--starred')){
  113. // removing star
  114. $.ajax({
  115. method: "POST",
  116. url: "/delete/favorite/index.php",
  117. data: { v_section: l_unit.attr('v_section'), v_unit_id: l_unit.attr('v_unit_id') }
  118. });
  119. l_unit.attr({'sort-star': 0});
  120. l_unit.removeClass('l-unit--starred');
  121. }
  122. else{
  123. $.ajax({
  124. method: "POST",
  125. url: "/add/favorite/index.php",
  126. data: { v_unit_id: l_unit.attr('v_unit_id'), v_section: l_unit.attr('v_section') }
  127. });
  128. l_unit.attr({'sort-star': 1});
  129. l_unit.addClass('l-unit--starred');
  130. }
  131. });
  132. // Shortcuts
  133. shortcut.add("Ctrl+Enter", function(){
  134. $('form#vstobjects').submit();
  135. }, {
  136. 'type': 'keydown',
  137. 'propagate': false,
  138. 'disable_in_input': false,
  139. 'target': document
  140. }
  141. );
  142. shortcut.add("Ctrl+Backspace", function(){
  143. var redirect = $('a.ui-button#btn-back').attr('href')
  144. if(VE.tmp.form_changed && redirect){
  145. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect'), '', redirect);
  146. } else if($('form#vstobjects .button.cancel')[0]){
  147. location.href=$('form#vstobjects input.cancel').attr('onclick').replace("location.href='", "").replace("'","");
  148. } else if(redirect){
  149. location.href = redirect;
  150. }
  151. }, {
  152. 'type': 'keydown',
  153. 'propagate': false,
  154. 'disable_in_input': false,
  155. 'target': document
  156. }
  157. );
  158. shortcut.add("f", function(){
  159. $('.search-input').addClass('activated').focus();
  160. }, {
  161. 'type': 'keydown',
  162. 'propagate': false,
  163. 'disable_in_input': true,
  164. 'target': document
  165. }
  166. );
  167. $(window).on('keypress', function(evt) {
  168. var tag = evt.target.tagName.toLowerCase();
  169. if (evt.charCode == 97 && tag != 'input' && tag != 'textarea' && tag != 'selectbox') {
  170. evt.preventDefault();
  171. if (!evt.ctrlKey && !evt.shiftKey) {
  172. //if ($('.l-sort__create-btn')[0]) {
  173. if ($('.ui-button#btn-create').length) {
  174. location.href=$('.ui-button#btn-create').attr('href');
  175. }
  176. }
  177. else {
  178. if ($('.l-unit .ch-toggle:eq(0)').attr('checked')) {
  179. $('.l-unit').removeClass('selected');
  180. $('.l-unit .ch-toggle').prop('checked', false);
  181. }
  182. else {
  183. $('.l-unit').addClass('selected');
  184. $('.l-unit .ch-toggle').prop('checked', true);
  185. }
  186. }
  187. }
  188. });
  189. shortcut.add("1", function(){
  190. var target = $('.l-stat .l-stat__col:nth-of-type(1) a')
  191. if(target.length != 1){
  192. return;
  193. }
  194. if(VE.tmp.form_changed){
  195. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect'), '', target.attr('href'));
  196. } else {
  197. location.href=target.attr('href');
  198. }
  199. }, {
  200. 'type': 'keydown',
  201. 'propagate': false,
  202. 'disable_in_input': true,
  203. 'target': document
  204. }
  205. );
  206. shortcut.add("2", function(){
  207. var target = $('.l-stat .l-stat__col:nth-of-type(2) a')
  208. if(target.length != 1){
  209. return;
  210. }
  211. if(VE.tmp.form_changed){
  212. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect'), '', target.attr('href'));
  213. } else {
  214. location.href=target.attr('href');
  215. }
  216. }, {
  217. 'type': 'keydown',
  218. 'propagate': false,
  219. 'disable_in_input': true,
  220. 'target': document
  221. }
  222. );
  223. shortcut.add("3", function(){
  224. var target = $('.l-stat .l-stat__col:nth-of-type(3) a')
  225. if(target.length != 1){
  226. return;
  227. }
  228. if(VE.tmp.form_changed){
  229. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect'), '', target.attr('href'));
  230. } else {
  231. location.href=target.attr('href');
  232. }
  233. }, {
  234. 'type': 'keydown',
  235. 'propagate': false,
  236. 'disable_in_input': true,
  237. 'target': document
  238. }
  239. );
  240. shortcut.add("4", function(){
  241. var target = $('.l-stat .l-stat__col:nth-of-type(4) a')
  242. if(target.length != 1){
  243. return;
  244. }
  245. if(VE.tmp.form_changed){
  246. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect'), '', target.attr('href'));
  247. } else {
  248. location.href=target.attr('href');
  249. }
  250. }, {
  251. 'type': 'keydown',
  252. 'propagate': false,
  253. 'disable_in_input': true,
  254. 'target': document
  255. }
  256. );
  257. shortcut.add("5", function(){
  258. var target = $('.l-stat .l-stat__col:nth-of-type(5) a')
  259. if(target.length != 1){
  260. return;
  261. }
  262. if(VE.tmp.form_changed){
  263. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect'), '', target.attr('href'));
  264. } else {
  265. location.href=target.attr('href');
  266. }
  267. }, {
  268. 'type': 'keydown',
  269. 'propagate': false,
  270. 'disable_in_input': true,
  271. 'target': document
  272. }
  273. );
  274. shortcut.add("6", function(){
  275. var target = $('.l-stat .l-stat__col:nth-of-type(6) a')
  276. if(target.length != 1){
  277. return;
  278. }
  279. if(VE.tmp.form_changed){
  280. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect'), '', target.attr('href'));
  281. } else {
  282. location.href=target.attr('href');
  283. }
  284. }, {
  285. 'type': 'keydown',
  286. 'propagate': false,
  287. 'disable_in_input': true,
  288. 'target': document
  289. }
  290. );
  291. shortcut.add("7", function(){
  292. var target = $('.l-stat .l-stat__col:nth-of-type(7) a')
  293. if(target.length != 1){
  294. return;
  295. }
  296. if(VE.tmp.form_changed){
  297. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect'), '', target.attr('href'));
  298. } else {
  299. location.href=target.attr('href');
  300. }
  301. }, {
  302. 'type': 'keydown',
  303. 'propagate': false,
  304. 'disable_in_input': true,
  305. 'target': document
  306. }
  307. );
  308. shortcut.add("h", function(){
  309. $('.shortcuts').toggle();
  310. }, {
  311. 'type': 'keydown',
  312. 'propagate': false,
  313. 'disable_in_input': true,
  314. 'target': document
  315. }
  316. );
  317. shortcut.add("Esc", function(){
  318. $('.shortcuts').hide();
  319. $('input, checkbox, textarea, select').blur();
  320. }, {
  321. 'type': 'keydown',
  322. 'propagate': false,
  323. 'disable_in_input': false,
  324. 'target': document
  325. }
  326. );
  327. shortcut.add("Left", function(){
  328. VE.navigation.move_focus_left();
  329. }, {
  330. 'type': 'keydown',
  331. 'propagate': false,
  332. 'disable_in_input': true,
  333. 'target': document
  334. }
  335. );
  336. shortcut.add("Right", function(){
  337. VE.navigation.move_focus_right();
  338. }, {
  339. 'type': 'keydown',
  340. 'propagate': false,
  341. 'disable_in_input': true,
  342. 'target': document
  343. }
  344. );
  345. shortcut.add("down", function(){
  346. VE.navigation.move_focus_down();
  347. }, {
  348. 'type': 'keydown',
  349. 'propagate': false,
  350. 'disable_in_input': true,
  351. 'target': document
  352. }
  353. );
  354. shortcut.add("up", function(){
  355. VE.navigation.move_focus_up();
  356. }, {
  357. 'type': 'keydown',
  358. 'propagate': false,
  359. 'disable_in_input': true,
  360. 'target': document
  361. }
  362. );
  363. shortcut.add("l", function(){
  364. var elm = $('.units.active .l-unit.focus .shortcut-l');
  365. if(elm.length){
  366. VE.navigation.shortcut(elm);
  367. }
  368. }, {
  369. 'type': 'keydown',
  370. 'propagate': false,
  371. 'disable_in_input': true,
  372. 'target': document
  373. }
  374. );
  375. shortcut.add("s", function(){
  376. var elm = $('.units.active .l-unit.focus .shortcut-s');
  377. if(elm.length){
  378. VE.navigation.shortcut(elm);
  379. }
  380. }, {
  381. 'type': 'keydown',
  382. 'propagate': false,
  383. 'disable_in_input': true,
  384. 'target': document
  385. }
  386. );
  387. shortcut.add("w", function(){
  388. var elm = $('.units.active .l-unit.focus .shortcut-w');
  389. if(elm.length){
  390. VE.navigation.shortcut(elm);
  391. }
  392. }, {
  393. 'type': 'keydown',
  394. 'propagate': false,
  395. 'disable_in_input': true,
  396. 'target': document
  397. }
  398. );
  399. shortcut.add("d", function(){
  400. var elm = $('.units.active .l-unit.focus .shortcut-d');
  401. if(elm.length){
  402. VE.navigation.shortcut(elm);
  403. }
  404. }, {
  405. 'type': 'keydown',
  406. 'propagate': false,
  407. 'disable_in_input': true,
  408. 'target': document
  409. }
  410. );
  411. shortcut.add("r", function(){
  412. var elm = $('.units.active .l-unit.focus .shortcut-r');
  413. if(elm.length){
  414. VE.navigation.shortcut(elm);
  415. }
  416. }, {
  417. 'type': 'keydown',
  418. 'propagate': false,
  419. 'disable_in_input': true,
  420. 'target': document
  421. }
  422. );
  423. shortcut.add("n", function(){
  424. var elm = $('.units.active .l-unit.focus .shortcut-n');
  425. if(elm.length){
  426. VE.navigation.shortcut(elm);
  427. }
  428. }, {
  429. 'type': 'keydown',
  430. 'propagate': false,
  431. 'disable_in_input': true,
  432. 'target': document
  433. }
  434. );
  435. shortcut.add("u", function(){
  436. var elm = $('.units.active .l-unit.focus .shortcut-u');
  437. if(elm.length){
  438. VE.navigation.shortcut(elm);
  439. }
  440. }, {
  441. 'type': 'keydown',
  442. 'propagate': false,
  443. 'disable_in_input': true,
  444. 'target': document
  445. }
  446. );
  447. shortcut.add("Delete", function(){
  448. var elm = $('.units.active .l-unit.focus .shortcut-delete');
  449. if(elm.length){
  450. VE.navigation.shortcut(elm);
  451. }
  452. }, {
  453. 'type': 'keydown',
  454. 'propagate': false,
  455. 'disable_in_input': true,
  456. 'target': document
  457. }
  458. );
  459. shortcut.add("Enter", function(evt){
  460. if (evt.target.tagName == 'INPUT' && evt.target.form.id == 'vstobjects'){
  461. $('form#vstobjects').submit();
  462. }
  463. if(VE.tmp.form_changed){
  464. if(!$('.ui-dialog').is(':visible')){
  465. VE.helpers.createConfirmationDialog($('.confirmation-text-redirect')[0], '', $(VE.navigation.state.menu_selector + '.focus a').attr('href'));
  466. } else { // if dialog is opened - submitting confirm box by "enter" shortcut
  467. $('.ui-dialog button.submit').click();
  468. }
  469. } else {
  470. if(!$('.ui-dialog').is(':visible')){
  471. var elm = $('.units.active .l-unit.focus .shortcut-enter');
  472. if(elm.length){
  473. VE.navigation.shortcut(elm);
  474. } else {
  475. VE.navigation.enter_focused();
  476. }
  477. } else { // if dialog is opened - submitting confirm box by "enter" shortcut
  478. $('.ui-dialog button.submit').click();
  479. }
  480. }
  481. }, {
  482. 'type': 'keydown',
  483. 'propagate': true,
  484. 'disable_in_input': false,
  485. 'target': document
  486. }
  487. );
  488. $('.shortcuts .close').click(function(){
  489. $('.shortcuts').hide();
  490. });
  491. $('.to-shortcuts').click(function(){
  492. $('.shortcuts').toggle();
  493. });
  494. $(document).click(function(evt){
  495. //close notification popup
  496. if(!$(evt.target).hasClass('l-profile__notifications') && $(evt.target).parents('ul.notification-container').length == 0){
  497. $('.notification-container').hide();
  498. $('.l-profile__notifications').removeClass('active');
  499. }
  500. });
  501. // focusing on the first input at form
  502. if( location.href.indexOf('lead=') == -1 && !$('.ui-dialog').is(':visible') ){
  503. $('#vstobjects .vst-input:not([disabled]), #vstobjects .vst-list:not([disabled])').first().focus();
  504. }
  505. $('.l-profile__notifications').click(function(){
  506. if(!$('.l-profile__notifications').hasClass('active')){
  507. VE.notifications.get_list();
  508. $('.l-profile__notifications').addClass('active');
  509. left = $('.l-profile__notifications').offset().left - $('.notification-container').outerWidth() + 22;
  510. $('.notification-container').css({left: left+'px'});
  511. } else {
  512. $('.notification-container').hide();
  513. $('.l-profile__notifications').removeClass('active');
  514. }
  515. });
  516. VE.navigation.init();
  517. $('.button').attr('title','ctrl+Enter');
  518. $('.button.cancel').attr('title','ctrl+Backspace');
  519. VE.core.register();
  520. if (location.href.search(/list/) != -1) {
  521. var shift_select_ref = $('body').finderSelect({
  522. children: '.l-unit',
  523. 'onFinish': function(evt) {
  524. if ($('.l-content').find('.l-unit.selected').length == $('.l-content').find('.l-unit').length) {
  525. $('.toggle-all').addClass('clicked-on');
  526. }
  527. },
  528. 'toggleAllHook': function() {
  529. if ($('.l-unit').length == $('.ch-toggle:checked').length) {
  530. $('.l-unit.selected').removeClass('selected');
  531. $('.ch-toggle').prop('checked', false);
  532. $('#toggle-all').prop('checked', false);
  533. }
  534. else {
  535. $('.ch-toggle').prop('checked', true);
  536. $('#toggle-all').prop('checked', true);
  537. }
  538. }
  539. });
  540. $('table').on('mousedown', 'td', function(e) {
  541. if (e.ctrlKey) {
  542. e.preventDefault();
  543. }
  544. });
  545. }
  546. //
  547. $('form#objects').on('submit', function(evt) {
  548. $('.l-unit').find('.ch-toggle').prop('checked', false);
  549. $('.l-unit.selected').find('.ch-toggle').prop('checked', true);
  550. });
  551. });