diff options
author | Mike Macgirvin <mike@macgirvin.com> | 2010-07-24 23:20:20 -0700 |
---|---|---|
committer | Mike Macgirvin <mike@macgirvin.com> | 2010-07-24 23:20:20 -0700 |
commit | fc8379b1080823bb69664aa4119ba190e1f5b1ca (patch) | |
tree | 80179ca329106a59247a54106e34716eee19dfff | |
parent | 6368bd165612dfa1e95e8d4c99b922797bf429af (diff) | |
download | volse-hubzilla-fc8379b1080823bb69664aa4119ba190e1f5b1ca.tar.gz volse-hubzilla-fc8379b1080823bb69664aa4119ba190e1f5b1ca.tar.bz2 volse-hubzilla-fc8379b1080823bb69664aa4119ba190e1f5b1ca.zip |
live updates sort of working
-rw-r--r-- | mod/network.php | 8 | ||||
-rw-r--r-- | mod/profile.php | 11 | ||||
-rw-r--r-- | mod/update_network.php | 9 | ||||
-rw-r--r-- | mod/update_profile.php | 9 | ||||
-rw-r--r-- | view/head.tpl | 45 | ||||
-rw-r--r-- | view/jot-header.tpl | 36 |
6 files changed, 68 insertions, 50 deletions
diff --git a/mod/network.php b/mod/network.php index cbd1f4454..0807f9561 100644 --- a/mod/network.php +++ b/mod/network.php @@ -119,9 +119,15 @@ function network_content(&$a, $update = false) { } } + if($update) + $return_url = $_SESSION['return_url']; + else + $return_url = $_SESSION['return_url'] = $a->cmd; + + if($item['last-child']) { $comment = replace_macros($cmnt_tpl,array( - '$return_path' => $a->cmd, + '$return_path' => $_SESSION['return_url'], '$id' => $item['item_id'], '$parent' => $item['parent'], '$profile_uid' => $_SESSION['uid'], diff --git a/mod/profile.php b/mod/profile.php index aa13f0a78..0cfe22807 100644 --- a/mod/profile.php +++ b/mod/profile.php @@ -212,13 +212,18 @@ function profile_content(&$a, $update = false) { $redirect_url = $a->get_baseurl() . '/redir/' . $item['cid'] ; - if(can_write_wall($a,$a->profile['profile_uid'])) { + if($update) + $return_url = $_SESSION['return_url']; + else + $return_url = $_SESSION['return_url'] = $a->cmd; + + if(can_write_wall($a,$a->profile['uid'])) { if($item['last-child']) { $comment = replace_macros($cmnt_tpl,array( - '$return_path' => $a->cmd, + '$return_path' => $_SESSION['return_url'], '$id' => $item['item_id'], '$parent' => $item['parent'], - '$profile_uid' => $a->profile['profile_uid'], + '$profile_uid' => $a->profile['uid'], '$ww' => '' )); } diff --git a/mod/update_network.php b/mod/update_network.php index 655bebb96..18c630fdf 100644 --- a/mod/update_network.php +++ b/mod/update_network.php @@ -6,9 +6,12 @@ require_once('mod/network.php'); function update_network_content(&$a) { - echo "<html>\r\n"; - echo network_content($a,true); - echo "</html>\r\n"; + header("Content-type: text/html"); + echo "<!DOCTYPE html><html><body>\r\n"; + echo (($_GET['msie'] == 1) ? '<div>' : '<section>'); + echo str_replace("\t",' ',network_content($a,true)); + echo (($_GET['msie'] == 1) ? '</div>' : '</section>'); + echo "</body></html>\r\n"; killme(); }
\ No newline at end of file diff --git a/mod/update_profile.php b/mod/update_profile.php index a0cb10f5d..367a5568d 100644 --- a/mod/update_profile.php +++ b/mod/update_profile.php @@ -6,9 +6,12 @@ require_once('mod/profile.php'); function update_profile_content(&$a) { - echo "<html>\r\n"; - echo profile_content($a,true); - echo "</html>\r\n"; + header("Content-type: text/html"); + echo "<!DOCTYPE html><html><body>\r\n"; + echo (($_GET['msie'] == 1) ? '<div>' : '<section>'); + echo str_replace("\t",' ',profile_content($a,true)); + echo (($_GET['msie'] == 1) ? '</div>' : '</section>'); + echo "</body></html>\r\n"; killme(); }
\ No newline at end of file diff --git a/view/head.tpl b/view/head.tpl index 6be3f7940..d02f56c72 100644 --- a/view/head.tpl +++ b/view/head.tpl @@ -9,12 +9,24 @@ <script type="text/javascript" src="$baseurl/include/main.js" ></script> <script type="text/javascript"> - $(document).ready(function() { NavUpdate(); }); -function NavUpdate() - { - $.get("ping",function(data) - { + var src = null; + var prev = null; + var livetime = null; + var msie = false; + + $(document).ready(function() { + $.ajaxSetup({cache: false}); + msie = $.browser.msie ; + NavUpdate(); + }); + + function NavUpdate() { + + if($('#live-network').length) { src = 'network'; liveUpdate(); } + if($('#live-profile').length) { src = 'profile'; liveUpdate(); } + + $.get("ping",function(data) { $(data).find('result').each(function() { var net = $(this).find('net').text(); if(net == 0) { net = ''; } @@ -31,6 +43,29 @@ function NavUpdate() }); }) ; setTimeout(NavUpdate,30000); + } + + function liveUpdate() { + if(src == null) { return; } + if($('.comment-edit-text-full').length) { + livetime = setTimeout(liveUpdate, 10000); + return; + } + prev = 'live-' + src; + + $.get('update_' + src + '?msie=' + ((msie) ? 1 : 0),function(data) { + $('.wall-item-outside-wrapper',data).each(function() { + var ident = $(this).attr('id'); + if($('#' + ident).length == 0) { + $('#' + prev).after($(this)); + } + else { $('#' + ident).replaceWith($(this)); } + prev = ident; + }); + }); + + } + </script> diff --git a/view/jot-header.tpl b/view/jot-header.tpl index 78e0151d8..3a1d0a2ae 100644 --- a/view/jot-header.tpl +++ b/view/jot-header.tpl @@ -1,3 +1,4 @@ + <script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script> <script language="javascript" type="text/javascript"> @@ -50,41 +51,6 @@ tinyMCE.init({ } } - var src = null; - - $(document).ready(function() { - if($('#live-network').length) { src = 'network'; setTimeout(liveUpdate, 30000); } - if($('#live-profile').length) { src = 'profile'; setTimeout(liveUpdate, 30000); } - }); - - function liveUpdate() { - if(src == null) { return; } - if($('.comment-edit-text-full').length) { - setTimeout(liveUpdate, 30000); - return; - } - -// $.get('update_' + src,function(data) -// { -// $(data).find('#wall-item-outside-wrapper').each(function() { -// var net = $(this).find('net').text(); -// if(net == 0) { net = ''; } -// $('#net-update').html(net); -// var home = $(this).find('home').text(); -// if(home == 0) { home = ''; } -// $('#home-update').html(home); -// var mail = $(this).find('mail').text(); -// if(mail == 0) { mail = ''; } -// $('#mail-update').html(mail); -// var intro = $(this).find('intro').text(); -// if(intro == 0) { intro = ''; } -// $('#notify-update').html(intro); -// }); -// }) ; - - setTimeout(liveUpdate,30000); - } - |