Browse Source

Added get_cached_avatar_image to App class for shared profile image access and reduced sql queries/load

pull/344/merge
Zvi ben Yaakov (a.k.a rdc) 9 years ago
committed by friendica
parent
commit
9058029eef
1 changed files with 25 additions and 0 deletions
  1. +25
    -0
      boot.php

+ 25
- 0
boot.php View File

@ -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];
}
}
}


Loading…
Cancel
Save