示例#1
0
     $bi->Next();
 }
 if ($FileInfo->isFile() && $FileInfo->isReadable()) {
     $setnamematch = preg_match('/(?P<Prefix>[A-Z]+[_ -])?(?P<Name>[A-Z0-9]+)(?P<Number>\\d\\d)(?P<Suffix>[a-z])?\\.(?P<Extension>[^.]+)$/i', $FileInfo->getFilename(), $matches);
     if (isset($matches) && count($matches) > 0) {
         $Set = Set::Filter($Sets, $Model->getID(), NULL, $matches['Name'] . $matches['Number'], $matches['Prefix']);
         if (!$Set) {
             continue;
         } else {
             $Set = $Set[0];
         }
         /* @var $VideoInDB Video */
         $VideosInDB = Video::Filter($Videos, $ModelID, $Set->getID(), $matches['Name'] . $matches['Number'] . $matches['Suffix']);
         if ($VideosInDB) {
             $VideoInDB = $VideosInDB[0];
             $cis = CacheImage::Filter($CacheImages, NULL, NULL, NULL, NULL, NULL, $VideoInDB->getID());
             CacheImage::DeleteMulti($cis, $CurrentUser);
         } else {
             $VideoInDB = new Video();
             $VideoInDB->setSet($Set);
         }
         $VideoInDB->setFileName($matches['Prefix'] . $matches['Name'] . $matches['Number'] . $matches['Suffix']);
         $VideoInDB->setFileExtension($matches['Extension']);
         $VideoInDB->setFileSize($FileInfo->getSize());
         $VideoInDB->setFileCheckSum(Utils::CalculateMD5($FileInfo->getRealPath()));
         $VideoInDB->setFileCRC32(Utils::CalculateCRC32($FileInfo->getRealPath()));
         if (!$VideoInDB->getID() && $CurrentUser->hasPermission(RIGHT_VIDEO_ADD)) {
             Video::Insert($VideoInDB, $CurrentUser);
         } else {
             if ($CurrentUser->hasPermission(RIGHT_VIDEO_EDIT)) {
                 Video::Update($VideoInDB, $CurrentUser);
示例#2
0
 if ($file->isFile() && $file->isReadable()) {
     $imagenamematch = preg_match('/(?P<Prefix>[A-Z]+[_ -])?(?P<ModelName>[A-Z0-9]+)(?P<SetNumber>\\d\\d)_(?P<Number>[0-9]{3})\\.(?P<Extension>[^.]+)$/i', $file->getFilename(), $matches);
     if ($imagenamematch) {
         $Set = Set::Filter($Sets, $Model->getID(), NULL, $matches['ModelName'] . $matches['SetNumber'], $matches['Prefix']);
         if ($Set) {
             $Set = $Set[0];
         } else {
             continue;
         }
         $CacheImage = CacheImage::Filter($CacheImages, NULL, NULL, NULL, $Set->getID());
         CacheImage::DeleteMulti($CacheImage, $CurrentUser);
         /* @var $ImageInDB Image */
         $ImagesInDB = Image::Filter($Images, $ModelID, $Set->getID(), sprintf('%1$s%2$s%3$s_%4$s', $matches['Prefix'], $matches['ModelName'], $matches['SetNumber'], $matches['Number']));
         if ($ImagesInDB) {
             $ImageInDB = $ImagesInDB[0];
             $CacheImage = CacheImage::Filter($CacheImages, NULL, NULL, NULL, NULL, $ImageInDB->getID());
             CacheImage::DeleteMulti($CacheImage, $CurrentUser);
         } else {
             $ImageInDB = new Image();
             $ImageInDB->setSet($Set);
         }
         $info = getimagesize($file->getRealPath());
         $ImageInDB->setFileName(sprintf('%1$s%2$s%3$s_%4$s', $matches['Prefix'], $matches['ModelName'], $matches['SetNumber'], $matches['Number']));
         $ImageInDB->setFileExtension($matches['Extension']);
         $ImageInDB->setFileSize($file->getSize());
         $ImageInDB->setFileCheckSum(Utils::CalculateMD5($file->getRealPath()));
         $ImageInDB->setFileCRC32(Utils::CalculateCRC32($file->getRealPath()));
         $ImageInDB->setImageWidth($info[0]);
         $ImageInDB->setImageHeight($info[1]);
         if (!$ImageInDB->getID() && $CurrentUser->hasPermission(RIGHT_IMAGE_ADD)) {
             Image::Insert($ImageInDB, $CurrentUser);