]> git.mxchange.org Git - friendica.git/blobdiff - view/theme/frio/js/textedit.js
Merge pull request #3458 from Hypolite/bug/missing-require-poco
[friendica.git] / view / theme / frio / js / textedit.js
index 9226646b7be1d50c2f7cfb7c572e7627cbb8a56f..8794658dd6911ff8ac74ecc755f4eab9c79a0183 100644 (file)
@@ -30,6 +30,8 @@ function insertFormatting(BBcode,id) {
                }
        }
 
+       $(textarea).trigger('change');
+
        return true;
 }
 
@@ -162,21 +164,29 @@ function qCommentInsert(obj,id) {
 
 function confirmDelete() { return confirm(aStr.delitem); }
 
-function dropItem(url, object) {
+/**
+ * Hide and removes an item element from the DOM after the deletion url is
+ * successful, restore it else.
+ *
+ * @param {string} url The item removal URL
+ * @param {string} elementId The DOM id of the item element
+ * @returns {undefined}
+ */
+function dropItem(url, elementId) {
        var confirm = confirmDelete();
 
-       //if the first character of the object is #, remove it because
-       // we use getElementById which don't need the #
-       // getElementByID selects elements even if there are special characters
-       // in the ID (like %) which won't work with jQuery
-       /// @todo ceck if we can solve this in the template
-       object = object.indexOf('#') == 0 ? object.substring(1) : object;
-
-       if(confirm) {
+       if (confirm) {
                $('body').css('cursor', 'wait');
-               $(document.getElementById(object)).fadeTo('fast', 0.33, function () {
-                       $.get(url).done(function() {
-                               $(document.getElementById(object)).remove();
+
+               var $el = $(document.getElementById(elementId));
+
+               $el.fadeTo('fast', 0.33, function () {
+                       $.get(url).then(function() {
+                               $el.remove();
+                       }).fail(function() {
+                               // @todo Show related error message
+                               $el.show();
+                       }).always(function() {
                                $('body').css('cursor', 'auto');
                        });
                });