diff -r d2af8a210f5d -r 8e4fe6f3337d thd/web/js/.svn/text-base/uc.utils.js.svn-base --- a/thd/web/js/.svn/text-base/uc.utils.js.svn-base Wed Jun 01 14:07:43 2016 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,155 +0,0 @@ -uc = uc || {}; -uc.utils = uc.utils || {}; - -uc.utils.centeredContainer = function(html_container) { - this.html_container = html_container; -} - -uc.utils.centeredContainer.currentContainer = null; - -uc.utils.centeredContainer.centerCurrent = function() { - // Center popup in the browser window - if (uc.utils.centeredContainer.currentContainer == null) return; - var jq_container = uc.utils.centeredContainer.currentContainer; - var jq_window = jQuery(window); - var popup_x = jq_window.scrollLeft() + ((jq_window.width() - jq_container.width()) / 2); - var popup_y = jq_window.scrollTop() + ((jq_window.height() - jq_container.height()) / 2); - jq_container.css('top', popup_y); - jq_container.css('left', popup_x); -} - -uc.utils.centeredContainer.showCurrent = function() { - if (uc.utils.centeredContainer.currentContainer == null) return; - var jq_container = uc.utils.centeredContainer.currentContainer; - var jq_window = jQuery(window); - jq_window.bind("resize", uc.utils.centeredContainer.centerCurrent); - jq_window.bind("scroll", uc.utils.centeredContainer.centerCurrent); - uc.utils.centeredContainer.centerCurrent(); - jq_container.show(); -} - -uc.utils.centeredContainer.hideCurrent = function() { - if (uc.utils.centeredContainer.currentContainer == null) return; - var jq_container = uc.utils.centeredContainer.currentContainer; - var jq_window = jQuery(window); - jq_container.hide(); - jq_container.remove(); - jq_window.unbind("resize", uc.utils.centeredContainer.centerCurrent); - jq_window.unbind("scroll", uc.utils.centeredContainer.centerCurrent); -} - -uc.utils.centeredContainer.prototype = { - show: function() { - this.hide(); - var jq_body = jQuery("body"); - var jq_container = jQuery(this.html_container); - jq_container.hide(); - jq_container.css('position', 'absolute'); - jq_container.css('display', 'block'); - jq_body.append(jq_container); - uc.utils.centeredContainer.currentContainer = jq_container; - uc.utils.centeredContainer.showCurrent(); - }, - hide: function() { - uc.utils.centeredContainer.hideCurrent(); - } -} - -uc.utils.showModalWrapper = function() { - if (jQuery('#modal-wrapper').length > 0) return false; - var jq_body = jQuery("body"); - var jq_modal_wrapper = jQuery('
'); - jq_modal_wrapper.height(jq_body.height()); - jq_body.append(jq_modal_wrapper); -} - -uc.utils.hideModalWrapper = function() { - jQuery('#modal-wrapper').remove(); -} - -uc.utils.showLoader = function() { - var loader = new uc.utils.centeredContainer('
')
- loader.show();
-}
-
-uc.utils.hideLoader = function() {
- jQuery('#loader').remove();
-}
-
-uc.utils.executeServerJS = function(http_url, http_data, http_method, complete_callback) {
- if (http_method == null) http_method = 'GET';
- if (complete_callback == null) complete_callback = function () {};
-
- if (http_method == 'POST') uc.utils.showModalWrapper();
- uc.utils.showLoader();
-
- jQuery.ajax({
- url: http_url,
- type: http_method,
- data: http_data,
- beforeSend: function(xhr) {xhr.setRequestHeader("Accept", "application/javascript");},
- complete: function (XMLHttpRequest, textStatus) {uc.utils.hideLoader(); complete_callback();},
- success: function (data, textStatus) {},
- dataType: "script"
- });
-}
-
-uc.utils.ajaxifyLink = function(jq_selector, http_method, complete_callback) {
- jq_selector.removeClass('ajax').removeClass('ajax-post');
- jq_selector.parents('.ajax').removeClass('ajax').removeClass('ajax-post');
-
- jq_selector.each(function () {
- var jq_this = jQuery(this);
- var ajax_url = jq_this.attr('href');
-
- if (ajax_url.indexOf('javascript:') == 0) return false;
-
- jq_this.attr('href', 'javascript:void(0);');
- jq_this.removeClass('ajax');
- jq_this.click(function() {
- uc.utils.executeServerJS(ajax_url, {}, http_method, complete_callback);
- return false;
- });
- });
-}
-
-uc.utils.ajaxifyForm = function(jq_selector, complete_callback) {
- jq_selector.removeClass('ajax');
- jq_selector.submit(function() {
- var jq_this = jQuery(this);
- var ajax_url = jq_this.attr('action');
- var ajax_data = {};
-
- // Extract data of form
- jQuery('textarea, input:text, input:password, input:hidden, select, input:checked, input:selected', jq_this).each(function () {
- var jq_input = jQuery(this);
- ajax_data[jq_input.attr('name')] = jq_input.val();
- });
-
- uc.utils.executeServerJS(ajax_url, ajax_data, 'POST', complete_callback);
-
- // Do not process normal http request
- return false;
- });
-}
-
-uc.utils.buildSelectList = function(jq_selector) {
- // Wait 1 second to make sure css is loaded
- window.setTimeout(function() {
- jq_selector.each(function() {
- var jq_select = jQuery(this);
-
- // Check for an existing selectedItem
- var jq_selected_item = jQuery('li.selected', jq_select);
- if (jq_selected_item.length == 1) {
- // Scroll to this item
- var top = jq_selected_item.position().top;
- if (top > 200) jq_select.scrollTop(top-200);
- }
-
- jQuery('li a', jq_select).click(function() {
- jQuery('li.selected', jq_select).toggleClass('selected');
- jQuery(this).parents('li').toggleClass('selected');
- });
- });}, 1000);
-}
\ No newline at end of file