aboutsummaryrefslogtreecommitdiffstats
path: root/usecaseui-holmes/src/main/webapp/public/common/js/popModal.js
diff options
context:
space:
mode:
authorzhangab <zhanganbing@chinamobile.com>2018-10-18 12:36:05 +0800
committerzhangab <zhanganbing@chinamobile.com>2018-10-18 12:36:07 +0800
commit101e5e37f4ece60af8d08020c7e4bd8f473adce7 (patch)
tree5b8c03f88280346e0f152f7936b96f2b70b428db /usecaseui-holmes/src/main/webapp/public/common/js/popModal.js
parent91c591a198f83eecba7047bc4529d3acd038a932 (diff)
Update usecase-ui version for R31.2.0
Change-Id: I6d9b3e71f69d17d34dc5f5074a6f2d7025516e58 Issue-ID: USECASEUI-153 Signed-off-by: zhangab <zhanganbing@chinamobile.com>
Diffstat (limited to 'usecaseui-holmes/src/main/webapp/public/common/js/popModal.js')
-rw-r--r--usecaseui-holmes/src/main/webapp/public/common/js/popModal.js1153
1 files changed, 0 insertions, 1153 deletions
diff --git a/usecaseui-holmes/src/main/webapp/public/common/js/popModal.js b/usecaseui-holmes/src/main/webapp/public/common/js/popModal.js
deleted file mode 100644
index 862a31ac..00000000
--- a/usecaseui-holmes/src/main/webapp/public/common/js/popModal.js
+++ /dev/null
@@ -1,1153 +0,0 @@
-/*
- popModal - 1.21 [18.11.15]
- Author: vadimsva
- Github: https://github.com/vadimsva/popModal
- */
-/* popModal */
-(function ($) {
- $.fn.popModal = function (method) {
- var elem = $(this),
- elemObj,
- isFixed = '',
- closeBut = '',
- elemClass = 'popModal',
- overflowContentClass = '',
- asMenuClass,
- _options,
- animTime,
- effectIn = 'fadeIn',
- effectOut = 'fadeOut',
- bl = 'bottomLeft',
- bc = 'bottomCenter',
- br = 'bottomRight',
- lt = 'leftTop',
- lc = 'leftCenter',
- rt = 'rightTop',
- rc = 'rightCenter',
- currentID;
-
- var methods = {
- init: function (params) {
- var _defaults = {
- html: '',
- placement: bl,
- showCloseBut: true,
- onDocumentClickClose: true,
- onDocumentClickClosePrevent: '',
- overflowContent: false,
- inline: true,
- asMenu: false,
- beforeLoadingContent: 'Please, wait...',
- onOkBut: function () {
- return true;
- },
- onCancelBut: function () {
- },
- onLoad: function () {
- },
- onClose: function () {
- }
- };
- _options = $.extend(_defaults, params);
-
- if ($('body').find('.' + elemClass).length !== 0 && $('body').find('.' + elemClass).attr('data-popmodal_id') == elem.attr('data-popmodal_id')) {
- popModalClose();
- } else {
- $('html.' + elemClass + 'Open').off('.' + elemClass + 'Event').removeClass(elemClass + 'Open');
- $('.' + elemClass + '_source').replaceWith($('.' + elemClass + '_content').children());
- $('.' + elemClass).remove();
-
- if (elem.css('position') == 'fixed') {
- isFixed = 'position:fixed;';
- }
- if (_options.asMenu) {
- asMenuClass = ' ' + elemClass + '_asMenu';
- } else {
- asMenuClass = '';
- if (_options.showCloseBut) {
- closeBut = $('<button type="button" class="close">&times;</button>');
- }
- if (_options.overflowContent) {
- overflowContentClass = ' ' + elemClass + '_contentOverflow';
- } else {
- overflowContentClass = '';
- }
- }
-
- currentID = new Date().getMilliseconds();
- elem.attr('data-popmodal_id', currentID);
-
- var tooltipContainer = $('<div class="' + elemClass + ' animated" style="' + isFixed + '" data-popmodal_id="' + currentID + '"></div>');
- var tooltipContent = $('<div class="' + elemClass + '_content' + overflowContentClass + asMenuClass + '"></div>');
- tooltipContainer.append(closeBut, tooltipContent);
-
- if ($.isFunction(_options.html)) {
- var beforeLoadingContent = _options.beforeLoadingContent;
- tooltipContent.append(beforeLoadingContent);
- _options.html(function (loadedContent) {
- tooltipContent.empty().append(loadedContent);
- elemObj = $('.' + elemClass);
- getPlacement();
- });
- } else {
- if ($.type(_options.html) == 'object') {
- _options.html.after($('<div class="popModal_source"></div>'));
- }
- tooltipContent.append(_options.html);
- }
- if ($(window).width() <= 500) {
- _options.inline = true;
- }
-
- if (_options.inline) {
- elem.after(tooltipContainer);
- } else {
- $('body').append(tooltipContainer);
- }
-
- elemObj = $('.' + elemClass);
- elemObj.css('height', method.html.outerHeight() + elemObj.marginBottom + elemObj.marginTop + elemObj.borderBottomWidth + elemObj.borderTopWidth + elemObj.paddingBottom + elemObj.paddingTop);
- var elemObjFooter = elemObj.find('.' + elemClass + '_footer');
- if (elemObjFooter.length != 0) {
- elemObj.find('.' + elemClass + '_content').css({marginBottom: elemObjFooter.outerHeight() + 15 + 'px'});
- }
-
- if (!$.isFunction(_options.html)) {
- var htmlStr;
- if ($.type(_options.html) == 'string') {
- htmlStr = _options.html;
- } else {
- htmlStr = _options.html[0].outerHTML;
- }
- }
-
- if (_options.onLoad && $.isFunction(_options.onLoad)) {
- _options.onLoad();
- }
- $(_options.html).trigger('load');
-
- elemObj.on('destroyed', function () {
- if (_options.onClose && $.isFunction(_options.onClose)) {
- _options.onClose();
- }
- $(_options.html).trigger('close');
- });
-
- getPlacement();
-
- if (_options.onDocumentClickClose) {
- $('html').on('click.' + elemClass + 'Event', function (event) {
- $(this).addClass(elemClass + 'Open');
- if (elemObj.is(':hidden')) {
- popModalClose();
- }
- var target = $(event.target);
- if (!target.parents().andSelf().is('.' + elemClass) && !target.parents().andSelf().is(elem)) {
- var zIndex = parseInt(target.parents().filter(function () {
- return $(this).css('zIndex') !== 'auto';
- }).first().css('zIndex'));
- if (isNaN(zIndex)) {
- zIndex = 0;
- }
- if (_options.onDocumentClickClosePrevent !== '' && target.is(_options.onDocumentClickClosePrevent)) {
- zIndex = 9999;
- }
- var target_zIndex = target.css('zIndex');
- if (target_zIndex == 'auto') {
- target_zIndex = 0;
- }
- if (zIndex < target_zIndex) {
- zIndex = target_zIndex;
- }
- if (zIndex <= elemObj.css('zIndex')) {
- popModalClose();
- }
- }
- });
- }
-
- $(window).resize(function () {
- getPlacement();
- });
-
- elemObj.find('.close').on('click', function () {
- popModalClose();
- $(this).off('click');
- });
-
- elemObj.find('[data-popmodal-but="close"]').unbind('click');
- elemObj.find('[data-popmodal-but="close"]').on('click', function () {
- popModalClose();
- $(this).off('click');
- });
-
- elemObj.find('[data-popmodal-but="ok"]').unbind('click');
- elemObj.find('[data-popmodal-but="ok"]').on('click', function (event) {
- var ok;
- if (_options.onOkBut && $.isFunction(_options.onOkBut)) {
- ok = _options.onOkBut(event);
- }
- if (ok !== false) {
- popModalClose();
- $(this).off('click');
- $(_options.html).trigger('okbut');
- }
- });
-
- elemObj.find('[data-popmodal-but="cancel"]').unbind('click');
- elemObj.find('[data-popmodal-but="cancel"]').on('click', function () {
- if (_options.onCancelBut && $.isFunction(_options.onCancelBut)) {
- _options.onCancelBut();
- }
- popModalClose();
- $(this).off('click');
- $(_options.html).trigger('cancelbut');
- });
-
- $('html').on('keydown.' + elemClass + 'Event', function (event) {
- if (event.keyCode == 27) {
- popModalClose();
- }
- });
-
- }
- return elemObj;
- },
- hide: function () {
- popModalClose();
- }
- };
-
- function getPlacement() {
- if (_options.inline) {
- var eLeft = elem.position().left;
- var eTop = elem.position().top;
- } else {
- var eLeft = elem.offset().left;
- var eTop = elem.offset().top;
- }
- var offset = 10,
- eMLeft = parseInt(elem.css('marginLeft')),
- ePLeft = parseInt(elem.css('paddingLeft')),
- eMTop = parseInt(elem.css('marginTop')),
- eHeight = elem.outerHeight(),
- eWidth = elem.outerWidth(),
- eObjWidth = elemObj.outerWidth(),
- eObjHeight = elemObj.outerHeight();
-
- var placement,
- eOffsetLeft = elem.offset().left,
- eOffsetRight = $(window).width() - elem.offset().left - eWidth,
- eOffsetTop = elem.offset().top,
- deltaL = eOffsetLeft - offset - eObjWidth,
- deltaBL = eWidth + eOffsetLeft - eObjWidth,
- deltaR = eOffsetRight - offset - eObjWidth,
- deltaBR = eWidth + eOffsetRight - eObjWidth,
- deltaCL = eWidth / 2 + eOffsetLeft - eObjWidth / 2,
- deltaCR = eWidth / 2 + eOffsetRight - eObjWidth / 2,
- deltaC = Math.min(deltaCR, deltaCL),
- deltaCT = eOffsetTop - eObjHeight / 2;
-
- function optimalPosition(current) {
- var optimal;
- var maxDelta = Math.max(deltaBL, deltaBR, deltaC);
- if (isCurrentFits(current)) {
- optimal = current;
- } else if (deltaBR > 0 && deltaBR == maxDelta) {
- optimal = bl;
- } else if (deltaBL > 0 && deltaBL == maxDelta) {
- optimal = br;
- } else if (deltaC > 0 && deltaC == maxDelta) {
- optimal = bc;
- } else {
- optimal = current;
- }
- return optimal;
- }
-
- function isCurrentFits(current) {
- return current == bl ? deltaBR > 0
- : current == br ? deltaBL > 0
- : deltaC > 0;
- }
-
- if ((/^bottom/).test(_options.placement)) {
- placement = optimalPosition(_options.placement);
- } else if ((/^left/).test(_options.placement)) {
- if (deltaL > 0) {
- if (_options.placement == lc && deltaCT > 0) {
- placement = lc;
- } else {
- placement = lt;
- }
- } else {
- placement = optimalPosition(bl);
- }
- } else if ((/^right/).test(_options.placement)) {
- if (deltaR > 0) {
- if (_options.placement == rc && deltaCT > 0) {
- placement = rc;
- } else {
- placement = rt;
- }
- } else {
- placement = optimalPosition(br);
- }
- }
-
- elemObj.removeAttr('class').addClass(elemClass + ' animated ' + placement);
- switch (placement) {
- case (bl):
- elemObj.css({
- top: eTop + eMTop + eHeight + offset + 'px',
- left: eLeft + eMLeft + 'px'
- }).addClass(effectIn + 'Bottom');
- break;
- case (br):
- elemObj.css({
- top: eTop + eMTop + eHeight + offset + 'px',
- left: eLeft + eMLeft + eWidth - eObjWidth + 'px'
- }).addClass(effectIn + 'Bottom');
- break;
- case (bc):
- elemObj.css({
- top: eTop + eMTop + eHeight + offset + 'px',
- left: eLeft + eMLeft + (eWidth - eObjWidth) / 2 + 'px'
- }).addClass(effectIn + 'Bottom');
- break;
- case (lt):
- elemObj.css({
- top: eTop + eMTop + 'px',
- left: eLeft + eMLeft - eObjWidth - offset + 'px'
- }).addClass(effectIn + 'Left');
- break;
- case (rt):
- elemObj.css({
- top: eTop + eMTop + 'px',
- left: eLeft + eMLeft + eWidth + offset + 'px'
- }).addClass(effectIn + 'Right');
- break;
- case (lc):
- elemObj.css({
- top: eTop + eMTop + eHeight / 2 - eObjHeight / 2 + 'px',
- left: eLeft + eMLeft - eObjWidth - offset + 'px'
- }).addClass(effectIn + 'Left');
- break;
- case (rc):
- elemObj.css({
- top: eTop + eMTop + eHeight / 2 - eObjHeight / 2 + 'px',
- left: eLeft + eMLeft + eWidth + offset + 'px'
- }).addClass(effectIn + 'Right');
- break;
- }
- }
-
- function popModalClose() {
- elemObj = $('.' + elemClass);
- if (elemObj.length) {
- reverseEffect();
- getAnimTime();
- setTimeout(function () {
- $('.' + elemClass + '_source').replaceWith($('.' + elemClass + '_content').children());
- elemObj.remove();
- $('html.' + elemClass + 'Open').off('.' + elemClass + 'Event').removeClass(elemClass + 'Open');
- }, animTime);
- }
- }
-
- function getAnimTime() {
- if (!animTime) {
- animTime = elemObj.css('animationDuration');
- if (animTime !== undefined) {
- animTime = animTime.replace('s', '') * 1000;
- } else {
- animTime = 0;
- }
- }
- }
-
- function reverseEffect() {
- var animClassOld = elemObj.attr('class'),
- animClassNew = animClassOld.replace(effectIn, effectOut);
- elemObj.removeClass(animClassOld).addClass(animClassNew);
- }
-
- if (methods[method]) {
- return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
- } else if (typeof method === 'object' || !method) {
- return methods.init.apply(this, arguments);
- }
-
- };
-
- $('* [data-popmodal-bind]').bind('click', function () {
- var elemBind = $(this).attr('data-popmodal-bind');
- var params = {html: $(elemBind)};
- if ($(this).attr('data-placement') !== undefined) {
- params['placement'] = $(this).attr('data-placement');
- }
- if ($(this).attr('data-showclose-but') !== undefined) {
- params['showCloseBut'] = (/^true$/i).test($(this).attr('data-showclose-but'));
- }
- if ($(this).attr('data-overflowcontent') !== undefined) {
- params['overflowContent'] = (/^false$/i).test($(this).attr('data-overflowcontent'));
- }
- if ($(this).attr('data-ondocumentclick-close') !== undefined) {
- params['onDocumentClickClose'] = (/^true$/i).test($(this).attr('data-ondocumentclick-close'));
- }
- if ($(this).attr('data-ondocumentclick-close-prevent') !== undefined) {
- params['onDocumentClickClosePrevent'] = $(this).attr('data-ondocumentclick-close-prevent');
- }
- if ($(this).attr('data-inline') !== undefined) {
- params['inline'] = (/^true$/i).test($(this).attr('data-inline'));
- }
- if ($(this).attr('data-beforeloading-content') !== undefined) {
- params['beforeLoadingContent'] = $(this).attr('data-beforeloading-content');
- }
- $(this).popModal(params);
- });
-
- $.event.special.destroyed = {
- remove: function (o) {
- if (o.handler) {
- o.handler();
- }
- }
- };
-})(jQuery);
-
-
-/* notifyModal */
-(function ($) {
- $.fn.notifyModal = function (method) {
- var elem = $(this),
- elemObj,
- elemClass = 'notifyModal',
- onTopClass = '',
- _options,
- animTime;
-
- var methods = {
- init: function (params) {
- var _defaults = {
- duration: 2500,
- placement: 'center',
- type: 'notify',
- overlay: true,
- onClose: function () {
- }
- };
- _options = $.extend(_defaults, params);
-
- if (_options.overlay) {
- onTopClass = 'overlay';
- }
-
- $('.' + elemClass).remove();
- var notifyContainer = $('<div class="' + elemClass + ' ' + _options.placement + ' ' + onTopClass + ' ' + _options.type + '"></div>');
- var notifyContent = $('<div class="' + elemClass + '_content"></div>');
- var closeBut = $('<button type="button" class="close">&times;</button>');
- if (elem[0] === undefined) {
- elem = elem['selector'];
- } else {
- elem = elem[0].innerHTML;
- }
- notifyContent.append(closeBut, elem);
- notifyContainer.append(notifyContent);
- $('body').append(notifyContainer);
-
- elemObj = $('.' + elemClass);
- getAnimTime();
-
- elemObj.addClass('open');
- elemObj.click(function () {
- notifyModalClose();
- });
- if (_options.duration != -1) {
- notifDur = setTimeout(notifyModalClose, _options.duration);
- }
-
- },
- hide: function () {
- notifyModalClose();
- }
- };
-
- function notifyModalClose() {
- var elemObj = $('.' + elemClass);
- elemObj.removeClass('open');
- setTimeout(function () {
- elemObj.remove();
- if (_options.duration != -1) {
- clearTimeout(notifDur);
- }
- if (_options.onClose && $.isFunction(_options.onClose)) {
- _options.onClose();
- }
- }, animTime);
- }
-
- function getAnimTime() {
- if (!animTime) {
- animTime = elemObj.css('transitionDuration');
- if (animTime !== undefined) {
- animTime = animTime.replace('s', '') * 1000;
- } else {
- animTime = 0;
- }
- }
- }
-
- $('html').keydown(function (event) {
- if (event.keyCode == 27) {
- notifyModalClose();
- }
- });
-
- if (methods[method]) {
- return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
- } else if (typeof method === 'object' || !method) {
- return methods.init.apply(this, arguments);
- }
-
- };
-
- $('* [data-notifymodal-bind]').bind('click', function () {
- var elemBind = $(this).attr('data-notifymodal-bind');
- var params = {};
- if ($(this).attr('data-duration') !== undefined) {
- params['duration'] = parseInt($(this).attr('data-duration'));
- }
- if ($(this).attr('data-placement') !== undefined) {
- params['placement'] = $(this).attr('data-placement');
- }
- if ($(this).attr('data-ontop') !== undefined) {
- params['onTop'] = (/^true$/i).test($(this).attr('data-ontop'));
- }
- $(elemBind).notifyModal(params);
- });
-
-})(jQuery);
-
-
-/* hintModal */
-(function ($) {
- $.fn.hintModal = function (method) {
- $('.hintModal').off();
-
- var methods = {
- init: function () {
-
- $(this).on('mouseenter', function () {
- var elem = $(this).find('> .hintModal_container');
- if (elem[0].textContent.length > 1) {
- elem.addClass('animated fadeInBottom');
- getPlacement($(this), elem);
- }
- });
-
- $(this).on('mouseleave', function () {
- var elem = $(this).find('> .hintModal_container');
- if (elem[0].textContent.length > 1) {
- elem.removeClass('animated fadeInBottom');
- }
- });
-
- function getPlacement(elemObj, elem) {
- var placementDefault,
- classDefault = elemObj.attr('class'),
- eObjWidth = elemObj.outerWidth(),
- eWidth = elem.outerWidth(),
- eOffsetLeft = elemObj.offset().left,
- eOffsetRight = $(window).width() - elemObj.offset().left - eObjWidth,
- deltaBL = eObjWidth + eOffsetLeft - eWidth,
- deltaBR = eObjWidth + eOffsetRight - eWidth,
- deltaCL = eObjWidth / 2 + eOffsetLeft - eWidth / 2,
- deltaCR = eObjWidth / 2 + eOffsetRight - eWidth / 2,
- deltaC = Math.min(deltaCR, deltaCL),
- bl = 'bottomLeft',
- bc = 'bottomCenter',
- br = 'bottomRight';
-
- if (elemObj.hasClass(bl)) {
- placementDefault = bl;
- } else if (elemObj.hasClass(bc)) {
- placementDefault = bc;
- } else if (elemObj.hasClass(br)) {
- placementDefault = br;
- } else {
- placementDefault = bl;
- }
-
- if (elemObj.data('placement') === undefined) {
- elemObj.data('placement', placementDefault);
- }
-
- function optimalPosition(current) {
- var optimal;
- var maxDelta = Math.max(deltaBL, deltaBR, deltaC);
- if (isCurrentFits(current)) {
- optimal = current;
- } else if (deltaBR > 0 && deltaBR == maxDelta) {
- optimal = bl;
- } else if (deltaBL > 0 && deltaBL == maxDelta) {
- optimal = br;
- } else if (deltaC > 0 && deltaC == maxDelta) {
- optimal = bc;
- } else {
- optimal = current;
- }
- return optimal;
- }
-
- function isCurrentFits(current) {
- return current == bl ? deltaBR > 0
- : current == br ? deltaBL > 0
- : deltaC > 0;
- }
-
- elemObj.removeAttr('class').addClass(classDefault + ' ' + optimalPosition(elemObj.data('placement')));
- }
-
- }
- };
-
- if (methods[method]) {
- return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
- } else if (typeof method === 'object' || !method) {
- return methods.init.apply(this, arguments);
- }
-
- };
- $('.hintModal').hintModal();
- document.addEventListener("DOMNodeInserted", function (event) {
- if ($(event.target).hasClass('hintModal')) {
- $('.hintModal').hintModal();
- }
- }, false);
-})(jQuery);
-
-
-/* dialogModal */
-(function ($) {
- $.fn.dialogModal = function (method) {
- var elem = $(this),
- elemObj,
- elemClass = 'dialogModal',
- prevBut = 'dialogPrev',
- nextBut = 'dialogNext',
- _options,
- animTime;
-
- var methods = {
- init: function (params) {
- var _defaults = {
- topOffset: 0,
- top: '10%',
- type: '',
- onOkBut: function () {
- return true;
- },
- onCancelBut: function () {
- },
- onLoad: function () {
- },
- onClose: function () {
- },
- onChange: function () {
- }
- };
- _options = $.extend(_defaults, params);
-
- $('html.' + elemClass + 'Open').off('.' + elemClass + 'Event').removeClass(elemClass + 'Open');
- $('.' + elemClass + ' .' + prevBut + ', .' + elemClass + ' .' + nextBut).off('click');
- $('.' + elemClass).remove();
-
- if (_options.type == '') {
- _options.top = 0;
- } else {
- _options.top = 'calc(' + _options.top + ' + 60px)';
- }
-
- var currentDialog = 0,
- maxDialog = elem.length - 1,
- dialogMain = $('<div class="' + elemClass + ' ' + _options.type + '" style="top:' + _options.topOffset + 'px"></div>'),
- dialogContainer = $('<div class="' + elemClass + '_container" style="top:' + _options.top + '"></div>'),
- dialogTop = $('<div class="' + elemClass + '_top animated"></div>'),
- dialogHeader = $('<div class="' + elemClass + '_header"></div>'),
- dialogBody = $('<div class="' + elemClass + '_body animated"></div>'),
- dialogCloseBut = $('<button type="button" class="close">&times;</button>');
- dialogMain.append(dialogContainer);
- dialogContainer.append(dialogTop, dialogBody);
- dialogTop.append(dialogHeader);
- dialogHeader.append(dialogCloseBut);
- dialogBody.append(elem[currentDialog].innerHTML);
-
- if (maxDialog > 0) {
- dialogHeader.append($('<div class="' + nextBut + '">&rsaquo;</div><div class="' + prevBut + ' notactive">&lsaquo;</div>'));
- }
- dialogHeader.append('<span>' + elem.find('.' + elemClass + '_header')[currentDialog].innerHTML + '</span>');
-
- $('body').append(dialogMain).addClass(elemClass + 'Open');
- if (_options.type == '') {
- var getScrollBarWidth = dialogMain.outerWidth() - dialogMain[0].scrollWidth;
- dialogTop.css({right: getScrollBarWidth + 'px'});
- }
-
- elemObj = $('.' + elemClass);
- getAnimTime();
-
- if (_options.onLoad && $.isFunction(_options.onLoad)) {
- _options.onLoad(elemObj, currentDialog + 1);
- }
- elem.trigger('load', {el: elemObj, current: currentDialog + 1});
-
- elemObj.on('destroyed', function () {
- if (_options.onClose && $.isFunction(_options.onClose)) {
- _options.onClose();
- }
- elem.trigger('close');
- });
-
- elemObj.addClass('open');
- setTimeout(function () {
- if (_options.type != '') {
- dialogContainer.css({opacity: 1});
- }
- dialogTop.addClass('fadeInTopBig');
- dialogBody.addClass('fadeInTopBig');
- }, animTime + 100);
-
- bindFooterButtons();
-
- function bindFooterButtons() {
- elemObj.find('[data-dialogmodal-but="close"]').on('click', function () {
- dialogModalClose();
- $(this).off('click');
- });
-
- elemObj.find('[data-dialogmodal-but="ok"]').on('click', function (event) {
- var ok;
- if (_options.onOkBut && $.isFunction(_options.onOkBut)) {
- ok = _options.onOkBut(event);
- }
- if (ok !== false) {
- dialogModalClose();
- }
- $(this).off('click');
- elem.trigger('okbut');
- });
-
- elemObj.find('[data-dialogmodal-but="cancel"]').on('click', function () {
- if (_options.onCancelBut && $.isFunction(_options.onCancelBut)) {
- _options.onCancelBut();
- }
- dialogModalClose();
- $(this).off('click');
- elem.trigger('cancelbut');
- });
-
- elemObj.find('[data-dialogmodal-but="prev"]').on('click', function () {
- elemObj.find('.' + prevBut).click();
- });
-
- elemObj.find('[data-dialogmodal-but="next"]').on('click', function () {
- elemObj.find('.' + nextBut).click();
- });
- }
-
- elemObj.find('.' + prevBut).on('click', function () {
- if (currentDialog > 0) {
- --currentDialog;
- if (currentDialog < maxDialog) {
- elemObj.find('.' + nextBut).removeClass('notactive');
- }
- if (currentDialog === 0) {
- elemObj.find('.' + prevBut).addClass('notactive');
- }
- changeDialogContent();
- }
- });
-
- elemObj.find('.' + nextBut).on('click', function () {
- if (currentDialog < maxDialog) {
- ++currentDialog;
- if (currentDialog > 0) {
- elemObj.find('.' + prevBut).removeClass('notactive');
- }
- if (currentDialog == maxDialog) {
- elemObj.find('.' + nextBut).addClass('notactive');
- }
- changeDialogContent();
- }
- });
-
- function changeDialogContent() {
- dialogBody.empty().append(elem[currentDialog].innerHTML);
- dialogHeader.find('span').html(elem.find('.' + elemClass + '_header')[currentDialog].innerHTML);
- bindFooterButtons();
- if (_options.onChange && $.isFunction(_options.onChange)) {
- _options.onChange(elemObj, currentDialog + 1);
- }
- elem.trigger('change', {el: elemObj, current: currentDialog + 1});
- }
-
- elemObj.find('.close').on('click', function () {
- dialogModalClose();
- $(this).off('click');
- });
-
- $('html').on('keydown.' + elemClass + 'Event', function (event) {
- if (event.keyCode == 27) {
- dialogModalClose();
- } else if (event.keyCode == 37) {
- elemObj.find('.' + prevBut).click();
- } else if (event.keyCode == 39) {
- elemObj.find('.' + nextBut).click();
- }
- });
-
- },
- hide: function () {
- dialogModalClose();
- }
- };
-
- function dialogModalClose() {
- var elemObj = $('.' + elemClass);
- elemObj.removeClass('open');
- setTimeout(function () {
- elemObj.remove();
- $('body').removeClass(elemClass + 'Open').css({paddingRight: ''});
- $('html.' + elemClass + 'Open').off('.' + elemClass + 'Event').removeClass(elemClass + 'Open');
- elemObj.find('.' + prevBut).off('click');
- elemObj.find('.' + nextBut).off('click');
- }, animTime);
- }
-
- function getAnimTime() {
- if (!animTime) {
- animTime = elemObj.css('transitionDuration');
- if (animTime !== undefined) {
- animTime = animTime.replace('s', '') * 1000;
- } else {
- animTime = 0;
- }
- }
- }
-
- if (methods[method]) {
- return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
- } else if (typeof method === 'object' || !method) {
- return methods.init.apply(this, arguments);
- }
-
- };
-
- $('* [data-dialogmodal-bind]').bind('click', function () {
- var elemBind = $(this).attr('data-dialogmodal-bind');
- var params = {};
- if ($(this).attr('data-topoffset') !== undefined) {
- params['topOffset'] = $(this).attr('data-topoffset');
- }
- if ($(this).attr('data-top') !== undefined) {
- params['top'] = $(this).attr('data-top');
- }
- if ($(this).attr('data-topoffset') !== undefined) {
- params['type'] = $(this).attr('data-type');
- }
- $(elemBind).dialogModal(params);
- });
-
- $.event.special.destroyed = {
- remove: function (o) {
- if (o.handler) {
- o.handler();
- }
- }
- };
-})(jQuery);
-
-
-/* titleModal */
-(function ($) {
- $.fn.titleModal = function (method) {
- $('.titleModal').off();
-
- var methods = {
- init: function () {
- var elem,
- elemObj,
- elemClass = 'titleModal',
- getElem = $('.' + elemClass),
- effectIn = 'fadeIn',
- effectOut = 'fadeOut';
-
- getElem.on('mouseenter', function () {
- elem = $(this);
- var titleAttr;
- if (elem.attr('title') !== undefined || elem.css('textOverflow') == 'ellipsis' || elem.css('textOverflow') == 'clip') {
- if (elem.attr('title') !== undefined) {
- titleAttr = elem.attr('title');
- } else {
- titleAttr = elem.text();
- }
- elem.removeAttr('title');
- elem.attr('data-title', titleAttr);
- var titleModal = $('<div class="' + elemClass + '_container animated"></div>');
- elemObj = $('.' + elemClass + '_container');
- var placement = elem.attr('data-placement');
- if (placement === undefined) {
- placement = 'bottom';
- }
- if (elemObj) {
- elemObj.remove();
- }
- elem.append(titleModal.append(titleAttr));
- getPlacement(placement);
- }
- });
-
- getElem.on('mouseleave', function () {
- elem = $(this);
- var titleAttr;
- if (elem.attr('data-title') !== undefined) {
- titleAttr = elem.attr('data-title');
- elem.removeAttr('data-title');
- elem.attr('title', titleAttr);
- reverseEffect();
- elemObj.remove();
- }
- });
-
- function getPlacement(placement) {
- elemObj = $('.' + elemClass + '_container');
- var eLeft, eTop,
- eMLeft = elem.css('marginLeft'),
- eMTop = elem.css('marginTop'),
- eMBottom = elem.css('marginBottom'),
- eHeight = elem.outerHeight(),
- eWidth = elem.outerWidth(),
- eObjMTop = elemObj.css('marginTop'),
- eObjWidth = elemObj.outerWidth(),
- eObjHeight = elemObj.outerHeight();
- if (elem.css('position') == 'fixed' || elem.css('position') == 'absolute') {
- eLeft = 0;
- eTop = 0;
- } else {
- eLeft = elem.position().left;
- eTop = elem.position().top;
- }
- switch (placement) {
- case 'bottom':
- elemObj.css({
- marginTop: parseInt(eObjMTop) - parseInt(eMBottom) + 'px',
- left: eLeft + parseInt(eMLeft) + (eWidth - eObjWidth) / 2 + 'px'
- }).addClass(effectIn + 'Bottom');
- break;
- case 'top':
- elemObj.css({
- top: eTop + parseInt(eMTop) - eObjHeight + 'px',
- left: eLeft + parseInt(eMLeft) + (eWidth - eObjWidth) / 2 + 'px'
- }).addClass('top ' + effectIn + 'Top');
- break;
- case 'left':
- elemObj.css({
- top: eTop + parseInt(eMTop) + eHeight / 2 - eObjHeight / 2 + 'px',
- left: eLeft + parseInt(eMLeft) - eObjWidth - 10 + 'px'
- }).addClass('left ' + effectIn + 'Left');
- break;
- case 'right':
- elemObj.css({
- top: eTop + parseInt(eMTop) + eHeight / 2 - eObjHeight / 2 + 'px',
- left: eLeft + parseInt(eMLeft) + eWidth + 10 + 'px'
- }).addClass('right ' + effectIn + 'Right');
- break;
- }
- }
-
- function reverseEffect() {
- var animClassOld = elemObj.attr('class'),
- animClassNew = animClassOld.replace(effectIn, effectOut);
- elemObj.removeClass(animClassOld).addClass(animClassNew);
- }
-
- }
- };
-
- if (methods[method]) {
- return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
- } else if (typeof method === 'object' || !method) {
- return methods.init.apply(this, arguments);
- }
-
- };
- $('.titleModal').titleModal();
- document.addEventListener("DOMNodeInserted", function (event) {
- if ($(event.target).hasClass('titleModal')) {
- $('.titleModal').titleModal();
- }
- }, false);
-})(jQuery);
-
-
-/* confirmModal */
-(function ($) {
- $.fn.confirmModal = function (method) {
- var elem = $(this),
- elemObj,
- elemClass = 'confirmModal',
- _options,
- animTime;
-
- var methods = {
- init: function (params) {
- var _defaults = {
- topOffset: 0,
- onOkBut: function () {
- return true;
- },
- onCancelBut: function () {
- },
- onLoad: function () {
- },
- onClose: function () {
- }
- };
- _options = $.extend(_defaults, params);
-
- $('html.' + elemClass + 'Open').off('.' + elemClass + 'Event').removeClass(elemClass + 'Open');
- $('.' + elemClass).remove();
-
- var dialogMain = $('<div class="' + elemClass + '" style="top:' + _options.topOffset + 'px"></div>'),
- dialogBody = $('<div class="' + elemClass + '_body animated"></div>');
- dialogMain.append(dialogBody);
- dialogBody.append(elem[0].innerHTML);
-
- $('body').append(dialogMain).addClass(elemClass + 'Open');
-
- elemObj = $('.' + elemClass);
- getAnimTime();
-
- if (_options.onLoad && $.isFunction(_options.onLoad)) {
- _options.onLoad();
- }
-
- elemObj.on('destroyed', function () {
- if (_options.onClose && $.isFunction(_options.onClose)) {
- _options.onClose();
- }
- });
-
- elemObj.addClass('open');
- setTimeout(function () {
- dialogBody.addClass('fadeInTopBig');
-
- setTimeout(function () {
- dialogBody.removeClass('fadeInTopBig').addClass('open');
- }, animTime + 100);
-
- }, animTime + 100);
-
- bindFooterButtons();
-
- function bindFooterButtons() {
- elemObj.find('[data-confirmmodal-but="close"]').on('click', function () {
- confirmModalClose();
- $(this).off('click');
- });
-
- elemObj.find('[data-confirmmodal-but="ok"]').on('click', function (event) {
- var ok;
- if (_options.onOkBut && $.isFunction(_options.onOkBut)) {
- ok = _options.onOkBut(event);
- }
- if (ok !== false) {
- confirmModalClose();
- }
- $(this).off('click');
- });
-
- elemObj.find('[data-confirmmodal-but="cancel"]').on('click', function () {
- if (_options.onCancelBut && $.isFunction(_options.onCancelBut)) {
- _options.onCancelBut();
- }
- confirmModalClose();
- $(this).off('click');
- });
-
-
- function needConfirm() {
- dialogBody.addClass('needConfirm');
- setTimeout(function () {
- dialogBody.removeClass('needConfirm');
- }, animTime + 100);
- }
-
- elemObj.on('click', function (event) {
- var target = $(event.target);
- if (!target.parents().andSelf().is(dialogBody)) {
- needConfirm();
- }
- });
-
- $('html').on('keydown.' + elemClass + 'Event', function (event) {
- if (event.keyCode == 27) {
- needConfirm();
- }
- });
-
- }
-
- },
- hide: function () {
- confirmModalClose();
- }
- };
-
- function confirmModalClose() {
- var elemObj = $('.' + elemClass);
- elemObj.removeClass('open');
- setTimeout(function () {
- elemObj.remove();
- $('body').removeClass(elemClass + 'Open').css({paddingRight: ''});
- $('html.' + elemClass + 'Open').off('.' + elemClass + 'Event').removeClass(elemClass + 'Open');
- }, animTime);
- }
-
- function getAnimTime() {
- if (!animTime) {
- animTime = elemObj.css('transitionDuration');
- if (animTime !== undefined) {
- animTime = animTime.replace('s', '') * 1000;
- } else {
- animTime = 0;
- }
- }
- }
-
- if (methods[method]) {
- return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
- } else if (typeof method === 'object' || !method) {
- return methods.init.apply(this, arguments);
- }
-
- };
-
- $('* [data-confirmmodal-bind]').bind('click', function () {
- var elemBind = $(this).attr('data-confirmmodal-bind');
- var params = {};
- if ($(this).attr('data-topoffset') !== undefined) {
- params['topOffset'] = $(this).attr('data-topoffset');
- }
- $(elemBind).confirmModal(params);
- });
-
- $.event.special.destroyed = {
- remove: function (o) {
- if (o.handler) {
- o.handler();
- }
- }
- };
-})(jQuery);