]> git.mxchange.org Git - friendica.git/commitdiff
Added get_cached_avatar_image to App class for shared profile image
authorZvi ben Yaakov (a.k.a rdc) <coderzvi@infosoc.net>
Mon, 18 Jun 2012 18:12:13 +0000 (21:12 +0300)
committerZvi ben Yaakov (a.k.a rdc) <coderzvi@infosoc.net>
Mon, 18 Jun 2012 18:12:13 +0000 (21:12 +0300)
access and reduced sql queries/load

boot.php

index 06f18b7845e347a6662b99a1beb5e7f26a9935c7..465bdf0c11101eaa0046f7cdb660eedeed25070b 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -332,6 +332,9 @@ if(! class_exists('App')) {
                private $curl_code;
                private $curl_headers;
 
+               private $cached_profile_image;
+               private $cached_profile_picdate;
+                                                       
                function __construct() {
 
                        global $default_timezone;
@@ -543,6 +546,28 @@ if(! class_exists('App')) {
                        return $this->curl_headers;
                }
 
+               function get_cached_avatar_image($avatar_image){
+                       if($this->cached_profile_image[$avatar_image])
+                               return $this->cached_profile_image[$avatar_image];
+
+                       $path_parts = explode("/",$avatar_image);
+                       $common_filename = $path_parts[count($path_parts)-1];
+
+                       if($this->cached_profile_picdate[$common_filename]){
+                               $this->cached_profile_image[$avatar_image] = $avatar_image . $this->cached_profile_picdate[$common_filename];
+                       } else {
+                               $r = q("SELECT `contact`.`avatar-date` AS picdate FROM `contact` WHERE `contact`.`thumb` like \"%%/%s\"",
+                                       $common_filename);
+                               if(! count($r)){
+                                       $this->cached_profile_image[$avatar_image] = $avatar_image;
+                               } else {
+                                       $this->cached_profile_picdate[$common_filename] = "?rev=" . urlencode($r[0]['picdate']);
+                                       $this->cached_profile_image[$avatar_image] = $avatar_image . $this->cached_profile_picdate[$common_filename];
+                               }
+                       }
+                       return $this->cached_profile_image[$avatar_image];
+               }
+
 
        }
 }