class VideoThumbnailsPlugin extends Plugin
{
+ const PLUGIN_VERSION = '2.0.0';
+
/*
* This function should only extract an image from the video stream
* and disregard any cropping or scaling in the resulting file, as
return true;
}
+ try {
+ // Exception thrown if no thumbnail found
+ $thumb = File_thumbnail::byFile($file, false);
+ $imgPath = $thumb->getPath();
+ // If getPath didn't throw an exception, we have a working locally stored thumbnail
+ return false;
+ } catch (NoResultException $e) {
+ // Alright, no thumbnail found, so let's create one.
+ } catch (InvalidFilenameException $e) {
+ // I guess this means $thumb->filename is null? Shouldn't happen because $file->filename is not null, so delete it
+ $thumb->delete();
+ } catch (FileNotFoundException $e) {
+ // Thumb file was not found, let's delete it.
+ $thumb->delete();
+ }
+
// Let's save our frame to a temporary file. If we fail, remove it.
$tmp_imgPath = tempnam(sys_get_temp_dir(), 'socialthumb-');
public function onPluginVersion(array &$versions)
{
$versions[] = array('name' => 'Video Thumbnails',
- 'version' => GNUSOCIAL_VERSION,
+ 'version' => self::PLUGIN_VERSION,
'author' => 'Mikael Nordfeldth',
'homepage' => 'https://www.gnu.org/software/social/',
'rawdescription' =>