$attach, 'preview_style' => $preview_style, 'preview_width' => $preview_width, 'preview_height' => $preview_height, 'thumbnail' => null ]; /** * @hooks thumbnail * * \e array \b attach * * \e int \b preview_style * * \e int \b preview_width * * \e int \b preview_height * * \e string \b thumbnail */ call_hooks('thumbnail',$p); if ($p['thumbnail']) { return; } $default_controller = null; $files = glob('Zotlabs/Thumbs/*.php'); if ($files) { foreach ($files as $f) { $clsname = '\\Zotlabs\\Thumbs\\' . ucfirst(basename($f,'.php')); if (class_exists($clsname)) { $x = new $clsname(); if (method_exists($x,'Match')) { $matched = $x->Match($attach['filetype']); if ($matched) { $x->Thumb($attach,$preview_style,$preview_width,$preview_height); } } if (method_exists($x,'MatchDefault')) { $default_matched = $x->MatchDefault(substr($attach['filetype'],0,strpos($attach['filetype'],'/'))); if ($default_matched) { $default_controller = $x; } } } } } if (($default_controller) && ((! file_exists(dbunescbin($attach['content']) . '.thumb')) || (filectime(dbunescbin($attach['content']) . 'thumb') < (time() - 60)))) { $default_controller->Thumb($attach,$preview_style,$preview_width,$preview_height); } } }