* @return - target file name
*/
function getStoreName()
+ {
+ return self::staticGetStoreName($this);
+
+ }
+
+ static function staticGetStoreName($o)
{
$opts = HTML_FlexyFramework::get()->Pman;
- $fn = preg_replace('/[^a-z0-9_\.]+/i', '_', $this->filename);
+ $fn = preg_replace('/[^a-z0-9\.]+/i', '_', $o->filename);
return implode( '/', array(
- $opts['storedir'], '_images_', date('Y/m', strtotime($this->created)), $this->id . '-'. $fn
+ $opts['storedir'], '_images_', date('Y/m', strtotime($o->created)), $o->id . '-'. $fn
));
-
}
/**
* does the files exist?
*/
function exists()
+ {
+ return self::staticExists($this);
+ }
+
+ static function staticExists($o)
{
clearstatcache();
- //var_dump($this->getStoreName());
- $ret = file_exists($this->getStoreName());
+ $ret = file_exists(self::staticGetStoreName($o));
if (!$ret) {
- return $this->canFix();
+ return self::staticCanFix($o);
}
return $ret;
}
+
/**
* the getStorename code got changed, and some old files may not end up with the correct name anymore.
* this tries to fix it.
*
*/
- function canFix() {
+ function canFix()
+ {
+ return self::staticCanFix($this);
+ }
+
+ static function staticCanFix($o)
+ {
// look for the image in the folder, with matching id.
// this is problematic..
- $fn = $this->getStoreName();
+ $fn = self::staticGetStoreName($o);
if (file_exists($fn . '-really-missing')) {
return false;
}
continue;
}
$bits = explode('-', $n);
- if ($bits[0] != $this->id) {
+ if ($bits[0] != $o->id) {
continue;
}
if (preg_match('/\.[0-9]+x[0-9]]+\.jpeg$/', $n)) {
} else if (preg_match('#images[^/]+/([0-9]+)/#i', $url, $matches)) {
// supports images.xxxxx.com/{number}/name...
$id = $matches[1];
+ } else if (preg_match('#Thumb/[^/]+/([0-9]+)/#', $url, $matches)) {
+ $id = $matches[1];
}
if ($id === false || $id < 1) {
return false;