From d8f8143207b761d5e40e2838de9d50af38f422c4 Mon Sep 17 00:00:00 2001 From: flyskyko Date: Thu, 31 Jan 2013 05:02:21 +0000 Subject: [PATCH] issue 2876. fixed a bug. added a new multimedia link component when modify multimedia link component. git-svn-id: http://xe-core.googlecode.com/svn/branches/maserati@12637 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- .../components/multimedia_link/tpl/popup.js | 37 +++++++++++++------ .../multimedia_link/tpl/popup.min.css | 2 +- .../multimedia_link/tpl/popup.min.js | 2 +- 3 files changed, 27 insertions(+), 14 deletions(-) diff --git a/modules/editor/components/multimedia_link/tpl/popup.js b/modules/editor/components/multimedia_link/tpl/popup.js index b217ba909..d71564272 100644 --- a/modules/editor/components/multimedia_link/tpl/popup.js +++ b/modules/editor/components/multimedia_link/tpl/popup.js @@ -11,11 +11,11 @@ jQuery(function($){ if(!$node.length) return; attrs = { - url : $node.attr('multimedia_src'), - caption : $node.attr('alt'), - width : $node.width() - 4, - height : $node.height() - 4, - wmode : $node.attr('wmode') + url : $node.attr('multimedia_src') || null, + caption : $node.attr('alt') || null, + width : $node.width() || 400, + height : $node.height() || 400, + wmode : $node.attr('wmode') || null }; $.each(attrs, function(key, val) { @@ -45,17 +45,30 @@ $('.btnArea button').click(function(){ return; } - var html = ''; + var $selected_node = $(opener.editorPrevNode); + if($selected_node.is('img') && $selected_node.attr('editor_component') == 'multimedia_link'){ + $selected_node + .attr('multimedia_src', attrs.multimedia_src) + .attr('width', attrs.width) + .attr('height', attrs.height) + .attr('wmode', attrs.wmode) + .attr('auto_start', attrs.auto_start) + .attr('alt', attrs.alt) + .css('width', attrs.width + 'px') + .css('height', attrs.height + 'px') + }else{ + var html = ''; - html = html.replace(/(\w+)=""/g, function(m0,m1) { - return attrs[m1] ? (m1+'="'+attrs[m1]+'"') : ''; - }); + html = html.replace(/(\w+)=""/g, function(m0,m1) { + return attrs[m1] ? (m1+'="'+attrs[m1]+'"') : ''; + }); - opener.editorFocus(opener.editorPrevSrl); + opener.editorFocus(opener.editorPrevSrl); - var iframe_obj = opener.editorGetIFrame(opener.editorPrevSrl) + var iframe_obj = opener.editorGetIFrame(opener.editorPrevSrl) - opener.editorReplaceHTML(iframe_obj, html); + opener.editorReplaceHTML(iframe_obj, html); + } opener.editorFocus(opener.editorPrevSrl); window.close(); diff --git a/modules/editor/components/multimedia_link/tpl/popup.min.css b/modules/editor/components/multimedia_link/tpl/popup.min.css index 43b5c9694..5f3781f32 100644 --- a/modules/editor/components/multimedia_link/tpl/popup.min.css +++ b/modules/editor/components/multimedia_link/tpl/popup.min.css @@ -2,4 +2,4 @@ * popup으로 열렸을 경우 부모창의 위지윅에디터에 select된 멀티미디어 컴포넌트 코드를 체크하여 * 있으면 가져와서 원하는 곳에 삽입 **/ -@charset "utf-8";@import "../../../../../modules/admin/tpl/css/admin.css"; \ No newline at end of file +@charset "utf-8";@import "../../../../../modules/admin/tpl/css/admin.css";@import "../../../../../common/css/bootstrap.min.css"; \ No newline at end of file diff --git a/modules/editor/components/multimedia_link/tpl/popup.min.js b/modules/editor/components/multimedia_link/tpl/popup.min.js index c35abf925..61e3ad1c1 100644 --- a/modules/editor/components/multimedia_link/tpl/popup.min.js +++ b/modules/editor/components/multimedia_link/tpl/popup.min.js @@ -2,4 +2,4 @@ * popup으로 열렸을 경우 부모창의 위지윅에디터에 select된 멀티미디어 컴포넌트 코드를 체크하여 * 있으면 가져와서 원하는 곳에 삽입 **/ -jQuery(function($){(function(){if(!is_def(opener))return;var $node=$(opener.editorPrevNode).filter('img'),attrs;if(!$node.length)return;attrs={url:$node.attr('multimedia_src'),caption:$node.attr('alt'),width:$node.width()-4,height:$node.height()-4,wmode:$node.attr('wmode')};$.each(attrs,function(key,val){get_by_id('multimedia_'+key).value=val});get_by_id('multimedia_auto_start').checked=($node.attr('auto_start')=='true')})();$('.btnArea button').click(function(){if(!is_def(opener))return;var el_wmode=get_by_id('fo').elements['multimedia_wmode'],attrs={alt:encodeURIComponent(get_by_id('multimedia_caption').value),width:get_by_id('multimedia_width').value||400,height:get_by_id('multimedia_height').value||400,wmode:el_wmode.value||el_wmode.options[0].value,auto_start:get_by_id('multimedia_auto_start').checked?'true':'false',multimedia_src:get_by_id('multimedia_url').value.replace(request_uri,'')};if(!attrs.multimedia_src){window.close();return};var html='';html=html.replace(/(\w+)=""/g,function(m0,m1){return attrs[m1]?(m1+'="'+attrs[m1]+'"'):''});opener.editorFocus(opener.editorPrevSrl);var iframe_obj=opener.editorGetIFrame(opener.editorPrevSrl);opener.editorReplaceHTML(iframe_obj,html);opener.editorFocus(opener.editorPrevSrl);window.close()})}) \ No newline at end of file +jQuery(function($){(function(){if(!is_def(opener))return;var $node=$(opener.editorPrevNode).filter('img'),attrs;if(!$node.length)return;attrs={url:$node.attr('multimedia_src')||null,caption:$node.attr('alt')||null,width:$node.width()||400,height:$node.height()||400,wmode:$node.attr('wmode')||null};$.each(attrs,function(key,val){get_by_id('multimedia_'+key).value=val});get_by_id('multimedia_auto_start').checked=($node.attr('auto_start')=='true')})();$('.btnArea button').click(function(){if(!is_def(opener))return;var el_wmode=get_by_id('fo').elements['multimedia_wmode'],attrs={alt:encodeURIComponent(get_by_id('multimedia_caption').value),width:get_by_id('multimedia_width').value||400,height:get_by_id('multimedia_height').value||400,wmode:el_wmode.value||el_wmode.options[0].value,auto_start:get_by_id('multimedia_auto_start').checked?'true':'false',multimedia_src:get_by_id('multimedia_url').value.replace(request_uri,'')};if(!attrs.multimedia_src){window.close();return};var $selected_node=$(opener.editorPrevNode);if($selected_node.is('img')&&$selected_node.attr('editor_component')=='multimedia_link'){$selected_node.attr('multimedia_src',attrs.multimedia_src).attr('width',attrs.width).attr('height',attrs.height).attr('wmode',attrs.wmode).attr('auto_start',attrs.auto_start).attr('alt',attrs.alt).css('width',attrs.width+'px').css('height',attrs.height+'px')}else{var html='';html=html.replace(/(\w+)=""/g,function(m0,m1){return attrs[m1]?(m1+'="'+attrs[m1]+'"'):''});opener.editorFocus(opener.editorPrevSrl);var iframe_obj=opener.editorGetIFrame(opener.editorPrevSrl);opener.editorReplaceHTML(iframe_obj,html)};opener.editorFocus(opener.editorPrevSrl);window.close()})}) \ No newline at end of file