src/ztfy/myams/resources/js/myams.js
changeset 160 6c271ae9cfd3
parent 156 61176c64158d
child 167 bf78f1c35edd
equal deleted inserted replaced
159:a2ac7c3363ae 160:6c271ae9cfd3
  2061 
  2061 
  2062 		/**
  2062 		/**
  2063 		 * Close modal dialog associated with given context
  2063 		 * Close modal dialog associated with given context
  2064 		 */
  2064 		 */
  2065 		close: function(context) {
  2065 		close: function(context) {
       
  2066 			if (typeof(context) === 'string') {
       
  2067 				context = $(context);
       
  2068 			}
  2066 			var modal = context.parents('.modal').data('modal');
  2069 			var modal = context.parents('.modal').data('modal');
  2067 			if (modal) {
  2070 			if (modal) {
  2068 				var manager = $('body').data('modalmanager');
  2071 				var manager = $('body').data('modalmanager');
  2069 				if (manager && (manager.getOpenModals().indexOf(modal) >= 0)) {
  2072 				if (manager && (manager.getOpenModals().indexOf(modal) >= 0)) {
  2070 					modal.hide();
  2073 					modal.hide();
  2689 			 */
  2692 			 */
  2690 			slider: function(element) {
  2693 			slider: function(element) {
  2691 				var sliders = $('.slider', element);
  2694 				var sliders = $('.slider', element);
  2692 				if (sliders.length > 0) {
  2695 				if (sliders.length > 0) {
  2693 					ams.ajax.check($.fn.slider,
  2696 					ams.ajax.check($.fn.slider,
  2694 								   ams.baseURL + 'ext/bootstrap-slider.min.js',
  2697 								   ams.baseURL + 'ext/bootstrap-slider-2.0.0' + ams.devext + '.js',
  2695 								   function() {
  2698 								   function() {
  2696 										sliders.each(function() {
  2699 										sliders.each(function() {
  2697 											var slider = $(this);
  2700 											var slider = $(this);
  2698 											var data = slider.data();
  2701 											var data = slider.data();
  2699 											var data_options = {};
  2702 											var data_options = {};
  3526 			 */
  3529 			 */
  3527 			imgareaselect: function(element) {
  3530 			imgareaselect: function(element) {
  3528 				var images = $('.imgareaselect', element);
  3531 				var images = $('.imgareaselect', element);
  3529 				if (images.length > 0) {
  3532 				if (images.length > 0) {
  3530 					ams.ajax.check($.fn.imgAreaSelect,
  3533 					ams.ajax.check($.fn.imgAreaSelect,
  3531 								   ams.baseURL + 'ext/jquery-imgareaselect-0.9.10' + ams.devext + '.js',
  3534 								   ams.baseURL + 'ext/jquery-imgareaselect-0.9.11-rc1' + ams.devext + '.js',
  3532 								   function(first_load) {
  3535 								   function(first_load) {
  3533 									   if (first_load) {
  3536 									   if (first_load) {
  3534 										   ams.getCSS(ams.baseURL + '../css/ext/jquery-imgareaselect' + ams.devext + '.css');
  3537 										   ams.getCSS(ams.baseURL + '../css/ext/jquery-imgareaselect' + ams.devext + '.css');
  3535 									   }
  3538 									   }
  3536 									   images.each(function() {
  3539 									   images.each(function() {
  4528 				e.preventDefault();
  4531 				e.preventDefault();
  4529 			});
  4532 			});
  4530 			$(document).on('click', 'a[href!="#"]:not([data-toggle]), [data-ams-url]:not([data-toggle])', function(e) {
  4533 			$(document).on('click', 'a[href!="#"]:not([data-toggle]), [data-ams-url]:not([data-toggle])', function(e) {
  4531 				var link = $(e.currentTarget);
  4534 				var link = $(e.currentTarget);
  4532 				var handlers = link.data('ams-disabled-handlers');
  4535 				var handlers = link.data('ams-disabled-handlers');
  4533 				if ((handlers === true) || (handlers === 'click')) {
  4536 				if ((handlers === true) || (handlers === 'click') || (handlers === 'all')) {
  4534 					return;
  4537 					return;
  4535 				}
  4538 				}
  4536 				var href = link.attr('href') || link.data('ams-url');
  4539 				var href = link.attr('href') || link.data('ams-url');
  4537 				if (!href || href.startsWith('javascript') || link.attr('target') || (link.data('ams-context-menu') === true)) {
  4540 				if (!href || href.startsWith('javascript') || link.attr('target') || (link.data('ams-context-menu') === true)) {
  4538 					return;
  4541 					return;
  4593 		// Initialize modal dialogs links
  4596 		// Initialize modal dialogs links
  4594 		$(document).off('click.modal')
  4597 		$(document).off('click.modal')
  4595 				   .on('click', '[data-toggle="modal"]', function(e) {
  4598 				   .on('click', '[data-toggle="modal"]', function(e) {
  4596 			var source = $(this);
  4599 			var source = $(this);
  4597 			var handlers = source.data('ams-disabled-handlers');
  4600 			var handlers = source.data('ams-disabled-handlers');
  4598 			if ((handlers === true) || (handlers === 'click')) {
  4601 			if ((handlers === true) || (handlers === 'click') || (handlers === 'all')) {
  4599 				return;
  4602 				return;
  4600 			}
  4603 			}
  4601 			if (source.data('ams-context-menu') === true) {
  4604 			if (source.data('ams-context-menu') === true) {
  4602 				return;
  4605 				return;
  4603 			}
  4606 			}
  4619 
  4622 
  4620 		// Initialize custom click handlers
  4623 		// Initialize custom click handlers
  4621 		$(document).on('click', '[data-ams-click-handler]', function(e) {
  4624 		$(document).on('click', '[data-ams-click-handler]', function(e) {
  4622 			var source = $(this);
  4625 			var source = $(this);
  4623 			var handlers = source.data('ams-disabled-handlers');
  4626 			var handlers = source.data('ams-disabled-handlers');
  4624 			if ((handlers === true) || (handlers === 'click')) {
  4627 			if ((handlers === true) || (handlers === 'click') || (handlers === 'all')) {
  4625 				return;
  4628 				return;
  4626 			}
  4629 			}
  4627 			var data = source.data();
  4630 			var data = source.data();
  4628 			if (data.amsClickHandler) {
  4631 			if (data.amsClickHandler) {
  4629 				if ((data.amsStopPropagation === true) || (data.amsClickStopPropagation === true)) {
  4632 				if ((data.amsStopPropagation === true) || (data.amsClickStopPropagation === true)) {
  4641 
  4644 
  4642 		// Initialize custom change handlers
  4645 		// Initialize custom change handlers
  4643 		$(document).on('change', '[data-ams-change-handler]', function(e) {
  4646 		$(document).on('change', '[data-ams-change-handler]', function(e) {
  4644 			var source = $(this);
  4647 			var source = $(this);
  4645 			var handlers = source.data('ams-disabled-handlers');
  4648 			var handlers = source.data('ams-disabled-handlers');
  4646 			if ((handlers === true) || (handlers === 'change')) {
  4649 			if ((handlers === true) || (handlers === 'change') || (handlers === 'all')) {
  4647 				return;
  4650 				return;
  4648 			}
  4651 			}
  4649 			var data = source.data();
  4652 			var data = source.data();
  4650 			if (data.amsChangeHandler) {
  4653 			if (data.amsChangeHandler) {
  4651 				if (data.amsChangeKeepDefault !== true) {
  4654 				if (data.amsChangeKeepDefault !== true) {