]> git.mxchange.org Git - friendica.git/blobdiff - js/main.js
more work on enotify
[friendica.git] / js / main.js
index 1a8cb4b85e1b346d5bc5af911aba32d20d074029..96c7fa642b3d29779d7e7036ae2a6896bd80ac06 100644 (file)
       document.getElementById(theID).style.display = "none" 
   }
 
-       
        var src = null;
        var prev = null;
        var livetime = null;
        var msie = false;
        var stopped = false;
+       var totStopped = false;
        var timer = null;
        var pr = 0;
        var liking = 0;
                
                NavUpdate(); 
                // Allow folks to stop the ajax page updates with the pause/break key
-               $(document).keypress(function(event) {
-                       if(event.keyCode == '19') {
+               $(document).keydown(function(event) {
+                       if(event.keyCode == '19' || (event.ctrlKey && event.which == '32')) {
                                event.preventDefault();
                                if(stopped == false) {
                                        stopped = true;
+                                       if (event.ctrlKey) {
+                                               totStopped = true;
+                                       }
                                        $('#pause').html('<img src="images/pause.gif" alt="pause" style="border: 1px solid black;" />');
+                               } else {
+                                       unpause();
                                }
-                               else {
-                                       stopped = false;
-                                       $('#pause').html('');
-                               }
-                       }
-                       else {
-                               // any key to resume
-                               if(stopped == true) {
-                                       stopped = false;
-                                       $('#pause').html('');
+                       } else {
+                               if (!totStopped) {
+                                       unpause();
                                }
                        }
-
                });
                
                
                                });
                        }) ;
                }
-               timer = setTimeout(NavUpdate,30000);
+               timer = setTimeout(NavUpdate,updateInterval);
        }
 
        function liveUpdate() {
                if((src == null) || (stopped) || (! profile_uid)) { $('.like-rotator').hide(); return; }
                if(($('.comment-edit-text-full').length) || (in_progress)) {
+                       if(livetime) {
+                               clearTimeout(livetime);
+                       }
                        livetime = setTimeout(liveUpdate, 10000);
                        return;
                }
+               if(livetime != null)
+                       livetime = null;
+
                prev = 'live-' + src;
 
                in_progress = true;
                        //                      $('#' + ident).hide();
                        //      }
                        //});
+
+                       // add a new thread
+
                        $('.tread-wrapper',data).each(function() {
                                var ident = $(this).attr('id');
-                               if($('#' + ident).length == 0) {
+
+                               if($('#' + ident).length == 0 && profile_page == 1) {
                                        $('img',this).each(function() {
                                                $(this).attr('src',$(this).attr('dst'));
                                        });
                                        $('#' + prev).after($(this));
                                }
-                               else { 
-                                       $(this).find('.wall-item-outside-wrapper').each(function() {
-                                               var iident = $(this).attr('id');
-                                               $('#' + iident + ' ' + '.wall-item-ago').replaceWith($(this).find('.wall-item-ago')); 
-                                               if($('#' + iident + ' ' + '.comment-edit-text-empty').length)
-                                                       $('#' + iident + ' ' + '.wall-item-comment-wrapper').replaceWith($(this).find('.wall-item-comment-wrapper'));
-                                               $('#' + iident + ' ' + '.hide-comments-total').replaceWith($(this).find('.hide-comments-total'));
-                                               $('#' + iident + ' ' + '.wall-item-like').replaceWith($(this).find('.wall-item-like'));
-                                               $('#' + iident + ' ' + '.wall-item-dislike').replaceWith($(this).find('.wall-item-dislike'));
-                                               $('#' + iident + ' ' + '.my-comment-photo').each(function() {
+                               else {
+                                       $('img',this).each(function() {
+                                               $(this).attr('src',$(this).attr('dst'));
+                                       });
+                                       $('#' + ident).replaceWith($(this));
+                               }
+                               prev = ident;
+                       });
+
+                       // reset vars for inserting individual items
+
+                       /*                      prev = 'live-' + src;
+
+                       $('.wall-item-outside-wrapper',data).each(function() {
+                               var ident = $(this).attr('id');
+
+                               if($('#' + ident).length == 0 && prev != 'live-' + src) {
+                                               $('img',this).each(function() {
                                                        $(this).attr('src',$(this).attr('dst'));
                                                });
+                                               $('#' + prev).after($(this));
+                               }
+                               else { 
+                                       $('#' + ident + ' ' + '.wall-item-ago').replaceWith($(this).find('.wall-item-ago')); 
+                                       if($('#' + ident + ' ' + '.comment-edit-text-empty').length)
+                                               $('#' + ident + ' ' + '.wall-item-comment-wrapper').replaceWith($(this).find('.wall-item-comment-wrapper'));
+                                       $('#' + ident + ' ' + '.hide-comments-total').replaceWith($(this).find('.hide-comments-total'));
+                                       $('#' + ident + ' ' + '.wall-item-like').replaceWith($(this).find('.wall-item-like'));
+                                       $('#' + ident + ' ' + '.wall-item-dislike').replaceWith($(this).find('.wall-item-dislike'));
+                                       $('#' + ident + ' ' + '.my-comment-photo').each(function() {
+                                               $(this).attr('src',$(this).attr('dst'));
                                        });
                                }
                                prev = ident; 
                        });
+                       */
                        $('.like-rotator').hide();
                        if(commentBusy) {
                                commentBusy = false;
        // is delayed and NavUpdate runs before it completes.
 
        function dolike(ident,verb) {
+               unpause();
                $('#like-rotator-' + ident.toString()).show();
                $.get('like/' + ident.toString() + '?verb=' + verb );
                if(timer) clearTimeout(timer);
        }
 
        function post_comment(id) {
+               unpause();
                commentBusy = true;
                $('body').css('cursor', 'wait');
                $.post(  
          return false;  
        }
 
+       function unpause() {
+               // unpause auto reloads if they are currently stopped
+               totStopped = false;
+               stopped = false;
+           $('#pause').html('');
+       }
+               
 
     function bin2hex(s){  
         // Converts the binary representation of data to hex