From 06bdf8a4cfe9087573494c0b782a33d1e28ac043 Mon Sep 17 00:00:00 2001 From: Mike Macgirvin Date: Tue, 10 Aug 2010 16:54:36 -0700 Subject: [PATCH] atom auto-discover, fix image preloading in ajax --- mod/photo.php | 5 ++--- mod/profile.php | 2 ++ mod/update_network.php | 10 +++++++++- mod/update_profile.php | 16 +++++++++++++++- view/head.tpl | 3 +++ 5 files changed, 31 insertions(+), 5 deletions(-) diff --git a/mod/photo.php b/mod/photo.php index 6174b10abe..653ca81c27 100644 --- a/mod/photo.php +++ b/mod/photo.php @@ -112,9 +112,8 @@ function photo_init(&$a) { } header("Content-type: image/jpeg"); - header('Expires: ' . datetime_convert('UTC','UTC', 'now + 30 minutes', 'D, d M Y H:i:s' . ' GMT')); - header('Expires: ' . datetime_convert('UTC','UTC', 'now + 30 minutes', 'D, d M Y H:i:s' . ' GMT')); - header("Cache-Control: max-age=3600, must-revalidate"); + header('Expires: ' . datetime_convert('UTC','UTC', 'now + 3 months', 'D, d M Y H:i:s' . ' GMT')); +// header("Cache-Control: max-age=36000, only-if-cached"); echo $data; killme(); return; //NOTREACHED diff --git a/mod/profile.php b/mod/profile.php index 6e04724beb..0cc236f953 100644 --- a/mod/profile.php +++ b/mod/profile.php @@ -63,6 +63,8 @@ function profile_init(&$a) { $profile = $a->argv[1]; } profile_load($a,$which,$profile); + $a->page['htmlhead'] .= ''; + $a->page['htmlhead'] .= "get_baseurl() . "/profile/%s" . "\" />\r\n"; $dfrn_pages = array('request', 'confirm', 'notify', 'poll'); diff --git a/mod/update_network.php b/mod/update_network.php index 18c630fdf0..1c790ead16 100644 --- a/mod/update_network.php +++ b/mod/update_network.php @@ -1,5 +1,6 @@ \r\n"; echo (($_GET['msie'] == 1) ? '
' : '
'); - echo str_replace("\t",' ',network_content($a,true)); + + + $text = network_content($a,true); + $pattern = "/]*) src=\"([^\"]*)\"/"; + $replace = "' : '
'); echo "\r\n"; killme(); diff --git a/mod/update_profile.php b/mod/update_profile.php index 8ea86eb91e..96d8376dc0 100644 --- a/mod/update_profile.php +++ b/mod/update_profile.php @@ -1,5 +1,7 @@ \r\n"; echo (($_GET['msie'] == 1) ? '
' : '
'); - echo str_replace("\t",' ',profile_content($a,true)); + + // Grab the page inner contents, but move any image src attributes to another attribute name. + // Some browsers will prefetch all the images for the page even if we don't need them. + // The only ones we need to fetch are those for new page additions, which we'll discover + // on the client side and then swap the image back. + + + $text = profile_content($a,true); + $pattern = "/]*) src=\"([^\"]*)\"/"; + $replace = "' : '
'); echo "\r\n"; killme(); diff --git a/view/head.tpl b/view/head.tpl index a2b55e0b53..ec67455d07 100644 --- a/view/head.tpl +++ b/view/head.tpl @@ -61,6 +61,9 @@ $('.wall-item-outside-wrapper',data).each(function() { var ident = $(this).attr('id'); if($('#' + ident).length == 0) { + $('img',this).each(function() { + $(this).attr('src',$(this).attr('dst')); + }); $('#' + prev).after($(this)); } else {