Cache: item cache now has an autodelete of old files. The pages plugin now sets a link via redirection. So posting works.

This commit is contained in:
Michael Vogel 2012-03-11 19:11:25 +01:00
parent b879a1ddf1
commit 9f76d96d46
3 changed files with 17 additions and 3 deletions

View File

@ -55,7 +55,7 @@ function pages_getpages($uid) {
// Look if the profile is a community page
foreach($contacts as $contact) {
if (pages_iscommunity($contact["url"], $pagelist))
$pages[] = array("url"=>$contact["url"], "Name"=>$contact["Name"]);
$pages[] = array("url"=>$contact["url"], "Name"=>$contact["Name"], "id"=>$contact["id"]);
}
// Write back cached pagelist
@ -76,7 +76,8 @@ function pages_page_end($a,&$b) {
$contacts = pages_getpages($a->user['uid']);
foreach($contacts as $contact) {
$pages .= '<li class="tool"><a href="'.$contact["url"].'" class="label" target="external-link">'.$contact["Name"]."</a></li>";
$pages .= '<li class="tool"><a href="'.$a->get_baseurl().'/redir/'.$contact["id"].'" class="label" target="external-link">'.
$contact["Name"]."</a></li>";
}
$pages .= "</ul></div></div>";
if (sizeof($contacts) > 0)

View File

@ -69,6 +69,19 @@ function poller_run($argv, $argc){
// clear old cache
Cache::clear();
// clear item cache files if they are older than one day
$cache = get_config('system','itemcache');
if (($cache != '') and is_dir($cache)) {
if ($dh = opendir($cache)) {
while (($file = readdir($dh)) !== false) {
$fullpath = $cache."/".$file;
if ((filetype($fullpath) == "file") and filectime($fullpath) < (time() - 1800))
unlink($fullpath);
}
closedir($dh);
}
}
$manual_id = 0;
$generation = 0;
$hub_update = false;

View File

@ -879,7 +879,7 @@ function prepare_body($item,$attach = false) {
$cache = get_config('system','itemcache');
if (($cache != '')) {
$cachefile = $cache."/".$item["guid"]."-".strtotime($item["edited"])."-".$attach."-".hash("crc32", $item['body']);
$cachefile = $cache."/".$item["guid"]."-".strtotime($item["edited"])."-".hash("crc32", $item['body']);
if (file_exists($cachefile))
$s = file_get_contents($cachefile);