youtube videos
[fnpeditor.git] / src / editor / plugins / core / img / imgElement.js
index 622c127..be0ff24 100644 (file)
@@ -20,8 +20,8 @@ _.extend(linkElement, {
 
         var linkText = this.wlxmlNode.getAttr('src') || '',
             linkUrl = this.getUrl(linkText);
-        
-        this._container().attr('style', 'background-image: url(\'' + linkUrl + '\');');
+
+        this.refreshLink(linkUrl);
 
         this.box = $(_.template(boxTemplate)({text: linkText, url: linkUrl}));
         this.box.find('.change').on('click', this.changeLink);
@@ -41,10 +41,15 @@ _.extend(linkElement, {
             link.text(event.meta.newVal);
             var linkUrl = this.getUrl(event.meta.newVal);
             link.attr('href', linkUrl);
-            this._container().attr('style', 'background-image: url(\'' + linkUrl + '\');');
+            this.refreshLink(linkUrl);
         }
     },
 
+    refreshLink: function(linkUrl) {
+        this._container().text('');
+        this._container().attr('style', 'background-image: url(\'' + linkUrl + '\');');
+    },
+
     changeLink: function(e) {
         var el = this,
             //doc = this.wlxmlNode.document,
@@ -91,23 +96,20 @@ _.extend(linkElement, {
             doc = this.wlxmlNode.document;
 
         el.wlxmlNode.document.transaction(function() {
-            var f = el.canvas.getSelection().toDocumentFragment(),
-                prefLen = 0,
-                ret;
-
-            if(el.wlxmlNode.isPrecededByTextNode()) {
-                prefLen = el.wlxmlNode.prev().getText().length;
-            }
-
-            ret = el.wlxmlNode.unwrapContent();
-            return doc.createFragment(doc.CaretFragment, {node: ret.element1, offset: prefLen + f.offset});
+            //var f = el.canvas.getSelection().toDocumentFragment(),
+            //    prefLen = 0,
+            //    ret;
+            //
+            //if(el.wlxmlNode.isPrecededByTextNode()) {
+            //    prefLen = el.wlxmlNode.prev().getText().length;
+            //}
+            //
+            //ret = el.wlxmlNode.unwrapContent();
+            //return doc.createFragment(doc.CaretFragment, {node: ret.element1, offset: prefLen + f.offset});
+            el.wlxmlNode.detach();
         }, {
             metadata: {
-                description: gettext('Remove link'),
-                fragment: doc.createFragment(doc.CaretFragment, {node: el.wlxmlNode.contents()[0], offset:0})
-            },
-            success: function(ret) {
-                el.canvas.select(ret);
+                description: gettext('Remove link')
             }
         });
     },