From f3b6992b31829901b7c209fe25e6e37ae900ac2a Mon Sep 17 00:00:00 2001 From: flyskyko Date: Tue, 20 Sep 2011 07:03:34 +0000 Subject: [PATCH] issue 160, change behavior for mid select git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@9227 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/widget/tpl/js/generate_code.js | 1 + modules/widget/tpl/js/mid.js | 50 +++++++++++++++++++ modules/widget/tpl/js/module_list.js | 2 +- modules/widget/tpl/js/multi_order.js | 2 +- .../tpl/widget_generate_code.include.html | 26 ++++++---- 5 files changed, 70 insertions(+), 11 deletions(-) create mode 100644 modules/widget/tpl/js/mid.js diff --git a/modules/widget/tpl/js/generate_code.js b/modules/widget/tpl/js/generate_code.js index 1f0f17027..2f74b051e 100644 --- a/modules/widget/tpl/js/generate_code.js +++ b/modules/widget/tpl/js/generate_code.js @@ -175,6 +175,7 @@ function doFillWidgetVars() { xe.broadcast('MULTIORDER_SYNC'); xe.broadcast('MODULELIST_SYNC'); + xe.broadcast('MID_SYNC'); jQuery('.filebox') .each(function(){ diff --git a/modules/widget/tpl/js/mid.js b/modules/widget/tpl/js/mid.js new file mode 100644 index 000000000..c34df454d --- /dev/null +++ b/modules/widget/tpl/js/mid.js @@ -0,0 +1,50 @@ +(function($){ + +xe.MidManager = xe.createApp("MidManager", { + $keyObj: null, + + init: function(key){ + var self = this; + var $keyObj = this.$keyObj = $('.extra_vars input[name='+key+']'); + var $finder = $keyObj.siblings('.finder'); + + $keyObj.siblings('button.search').bind('click', function(){ + $finder.slideDown(100); + return false; + }); + + $keyObj.siblings('button.delete').bind('click', function(){ + $keyObj.val('').next().val(''); + return false; + }); + + $finder.find('.moduleIdList').siblings('button').bind('click', function(){ + $keyObj.val($finder.find('.moduleIdList').val()); + self.cast('MID_SYNC'); + $finder.slideUp(100); + return false; + }); + }, + + API_MID_SYNC: function(){ + var self = this; + var $finder = self.$keyObj.closest('.modulefinder'); + + var module_srl = this.$keyObj.val(); + if (!module_srl) return; + + function on_complete(data){ + if (data.error){ + alert(data.message); + return; + } + + self.$keyObj.val(data.module_list[0].module_srl); + self.$keyObj.next().val(data.module_list[0].browser_title+' ('+data.module_list[0].mid+', '+data.module_list[0].module_name+')'); + } + + $.exec_json('module.getModuleAdminModuleList', {'module_srls': module_srl}, on_complete); + } +}); + +})(jQuery); \ No newline at end of file diff --git a/modules/widget/tpl/js/module_list.js b/modules/widget/tpl/js/module_list.js index 01623825d..36094458c 100644 --- a/modules/widget/tpl/js/module_list.js +++ b/modules/widget/tpl/js/module_list.js @@ -8,7 +8,7 @@ xe.ModuleListManager = xe.createApp("ModuleListManager", { init: function(key){ var self = this; - var $keyObj = this.$keyObj = $('input[name='+key+']'); + var $keyObj = this.$keyObj = $('.extra_vars input[name='+key+']'); this.$moduleNameObj = $keyObj.parent().find('.moduleList'); this.$moduleSrlObj = $keyObj.parent().find('.moduleIdList'); this.$selectedObj = $keyObj.parent().find('.modulelist_selected'); diff --git a/modules/widget/tpl/js/multi_order.js b/modules/widget/tpl/js/multi_order.js index d37f51d2c..c53d8efa2 100644 --- a/modules/widget/tpl/js/multi_order.js +++ b/modules/widget/tpl/js/multi_order.js @@ -7,7 +7,7 @@ xe.MultiOrderManager = xe.createApp("MultiOrderManager", { init: function(key){ var self = this; - var $keyObj = this.$keyObj = jQuery('input[name='+key+']'); + var $keyObj = this.$keyObj = jQuery('.extra_vars input[name='+key+']'); this.$showObj = $keyObj.parent().find('.multiorder_show'); this.$selectedObj = $keyObj.parent().find('.multiorder_selected'); diff --git a/modules/widget/tpl/widget_generate_code.include.html b/modules/widget/tpl/widget_generate_code.include.html index 493623057..4396c1e83 100644 --- a/modules/widget/tpl/widget_generate_code.include.html +++ b/modules/widget/tpl/widget_generate_code.include.html @@ -1,5 +1,6 @@ +
    @@ -31,11 +32,11 @@ {@$suggestion_id = 0} {@$suggestion_id++} -
      +

      {$var->group}

      -
        +
          {@$group = $var->group} {@$not_first = true} @@ -114,15 +115,22 @@ -
          - {$lang->find_site} -
          -
            -
          + + + -

          -

          + {@$use_filebox = true}