]> git.mxchange.org Git - friendica.git/blobdiff - view/js/main.js
Perfgorm a reload after following a thread
[friendica.git] / view / js / main.js
index 89c4e91f664bbd6873686e70d3d1f4b98c888034..d029ec13bcefd9719225c4d37f8f48428ac67135 100644 (file)
@@ -175,6 +175,17 @@ $(function() {
                $(textarea).trigger('change');
        });
 
+       $(".comment-edit-wrapper textarea, .wall-item-comment-wrapper textarea")
+               .editor_autocomplete(baseurl + '/search/acl')
+               .bbco_autocomplete('bbcode');
+
+       // Ensures asynchronously-added comment forms recognize mentions, tags and BBCodes as well
+       document.addEventListener("postprocess_liveupdate", function() {
+               $(".comment-edit-wrapper textarea, .wall-item-comment-wrapper textarea")
+                       .editor_autocomplete(baseurl + '/search/acl')
+                       .bbco_autocomplete('bbcode');
+       });
+
        /* popup menus */
        function close_last_popup_menu() {
                if (last_popup_menu) {
@@ -568,10 +579,6 @@ function updateConvItems(data) {
                commentBusy = false;
                $('body').css('cursor', 'auto');
        }
-       /* autocomplete @nicknames */
-       $(".comment-edit-form  textarea").editor_autocomplete(baseurl + '/search/acl');
-       /* autocomplete bbcode */
-       $(".comment-edit-form  textarea").bbco_autocomplete('bbcode');
 }
 
 function liveUpdate(src) {
@@ -620,11 +627,9 @@ function liveUpdate(src) {
                in_progress = false;
                update_item = 0;
 
-               if (data.length < 100) {
-                       // console.log('No data ' + data.length + ':' + data);
+               if ($('.wall-item-body', data).length == 0) {
                        return;
                }
-               // console.log('Got data: ' + data.length + ':' + data);
 
                $('.wall-item-body', data).imagesLoaded(function() {
                        updateConvItems(data);
@@ -660,66 +665,78 @@ function imgdull(node) {
  * @param {string}  verb  The verb of the action
  * @param {boolean} un    Whether to perform an activity removal instead of creation
  */
-function dolike(ident, verb, un) {
+function doActivityItem(ident, verb, un) {
        unpause();
        $('#like-rotator-' + ident.toString()).show();
        verb = un ? 'un' + verb : verb;
-       $.get('like/' + ident.toString() + '?verb=' + verb, NavUpdate);
+       $.post('item/' + ident.toString() + '/activity/' + verb, NavUpdate);
        liking = 1;
        force_update = true;
        update_item = ident.toString();
 }
 
-function dosubthread(ident) {
+function doFollowThread(ident) {
        unpause();
        $('#like-rotator-' + ident.toString()).show();
-       $.get('subthread/' + ident.toString(), NavUpdate);
+       $.post('item/' + ident.toString() + '/follow', NavUpdate);
        liking = 1;
+       force_update = true;
+       update_item = ident.toString();
 }
 
-function dostar(ident) {
+function doStar(ident) {
        ident = ident.toString();
        $('#like-rotator-' + ident).show();
-       $.get('starred/' + ident, function(data) {
-               if (data.match(/1/)) {
-                       $('#starred-' + ident).addClass('starred');
-                       $('#starred-' + ident).removeClass('unstarred');
+       $.post('item/' + ident + '/star')
+       .then(function(data) {
+               if (data.state === 1) {
+                       $('#starred-' + ident)
+                               .addClass('starred')
+                               .removeClass('unstarred');
                        $('#star-' + ident).addClass('hidden');
                        $('#unstar-' + ident).removeClass('hidden');
                } else {
-                       $('#starred-' + ident).addClass('unstarred');
-                       $('#starred-' + ident).removeClass('starred');
+                       $('#starred-' + ident)
+                               .addClass('unstarred')
+                               .removeClass('starred');
                        $('#star-' + ident).removeClass('hidden');
                        $('#unstar-' + ident).addClass('hidden');
                }
+       })
+       .always(function () {
                $('#like-rotator-' + ident).hide();
        });
 }
 
-function dopin(ident) {
+function doPin(ident) {
        ident = ident.toString();
        $('#like-rotator-' + ident).show();
-       $.get('pinned/' + ident, function(data) {
-               if (data.match(/1/)) {
-                       $('#pinned-' + ident).addClass('pinned');
-                       $('#pinned-' + ident).removeClass('unpinned');
+       $.post('item/' + ident + '/pin')
+       .then(function(data) {
+               if (data.state === 1) {
+                       $('#pinned-' + ident)
+                               .addClass('pinned')
+                               .removeClass('unpinned');
                        $('#pin-' + ident).addClass('hidden');
                        $('#unpin-' + ident).removeClass('hidden');
                } else {
-                       $('#pinned-' + ident).addClass('unpinned');
-                       $('#pinned-' + ident).removeClass('pinned');
+                       $('#pinned-' + ident)
+                               .addClass('unpinned')
+                               .removeClass('pinned');
                        $('#pin-' + ident).removeClass('hidden');
                        $('#unpin-' + ident).addClass('hidden');
                }
+       })
+       .always(function () {
                $('#like-rotator-' + ident).hide();
        });
 }
 
-function doignore(ident) {
+function doIgnoreThread(ident) {
        ident = ident.toString();
        $('#like-rotator-' + ident).show();
-       $.get('item/ignore/' + ident, function(data) {
-               if (data === 1) {
+       $.post('item/' + ident + '/ignore', function(data) {
+               if (data.state === 1) {
                        $('#ignored-' + ident)
                                .addClass('ignored')
                                .removeClass('unignored');
@@ -895,16 +912,29 @@ function loadScrollContent() {
 
        // get the raw content from the next page and insert this content
        // right before "#conversation-end"
-       $.get(infinite_scroll.reload_uri + '&mode=raw&last_received=' + received + '&last_commented=' + commented + '&last_created=' + created + '&last_uriid=' + uriid, function(data) {
+       $.get({
+               url: infinite_scroll.reload_uri,
+               data: {
+                       'mode'          : 'raw',
+                       'last_received' : received,
+                       'last_commented': commented,
+                       'last_created'  : created,
+                       'last_uriid'    : uriid
+               }
+       })
+       .done(function(data) {
                $("#scroll-loader").hide();
                if ($(data).length > 0) {
                        $(data).insertBefore('#conversation-end');
-                       lockLoadContent = false;
                } else {
                        $("#scroll-end").fadeIn('normal');
                }
 
                document.dispatchEvent(new Event('postprocess_liveupdate'));
+       })
+       .always(function () {
+               $("#scroll-loader").hide();
+               lockLoadContent = false;
        });
 }