<?php include 'cd.php'; ini_set('max_execution_time', '3600'); $CurrentUser = Authentication::Authenticate(); if (!$CurrentUser->hasPermission(RIGHT_VIDEO_ADD) && !$CurrentUser->hasPermission(RIGHT_VIDEO_EDIT)) { $e = new Error(RIGHTS_ERR_USERNOTALLOWED); Error::AddError($e); HTMLstuff::RefererRedirect(); } $ModelID = Utils::SafeIntFromQS('model_id'); $SetID = Utils::SafeIntFromQS('set_id'); $Models = Model::GetModels(new ModelSearchParameters(is_null($ModelID) ? FALSE : $ModelID)); $Sets = Set::GetSets(new SetSearchParameters(is_null($SetID) ? FALSE : $SetID)); $Videos = Video::GetVideos(new VideoSearchParameters(FALSE, FALSE, is_null($SetID) ? FALSE : $SetID, FALSE, is_null($ModelID) ? FALSE : $ModelID)); $CacheImages = CacheImage::GetCacheImages(); if ($SetID) { $Set = $Sets[0]; $Models = array($Set->getModel()); } /* @var $Model Model */ for ($i = 0; $i < count($Models); $i++) { $Model = $Models[$i]; $VideoFolder = sprintf('%1$s/%2$s', CANDYPATH, $Model->GetFullName()); if (!file_exists($VideoFolder)) { continue; } /* @var $it RecursiveIteratorIterator */ $it = new RecursiveDirectoryIterator($VideoFolder, FileSystemIterator::SKIP_DOTS | FileSystemIterator::CURRENT_AS_FILEINFO); $itArray = array(); foreach ($it as $file) {
$MultipleVideoIDs = NULL; if (!is_null($SetID) && $DeleteSetsImages) { $imagesThisSet = Image::GetImages(new ImageSearchParameters(FALSE, FALSE, $SetID)); /* @var $im Image */ foreach ($imagesThisSet as $im) { $MultipleImageIDs[] = $im->getID(); } $cisp = new CacheImageSearchParameters(FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, is_null($MultipleImageIDs) ? FALSE : $MultipleImageIDs); if ($cisp->getValues()) { $CacheImages = array_merge($CacheImages, CacheImage::GetCacheImages($cisp)); } } if (!is_null($SetID) && $DeleteSetsVideos) { $videosThisSet = Video::GetVideos(new VideoSearchParameters(FALSE, FALSE, $SetID)); /* @var $vd Video */ foreach ($videosThisSet as $vd) { $MultipleVideoIDs[] = $vd->getID(); } $cisp = new CacheImageSearchParameters(FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, is_null($MultipleVideoIDs) ? FALSE : $MultipleVideoIDs); if ($cisp->getValues()) { $CacheImages = array_merge($CacheImages, CacheImage::GetCacheImages($cisp)); } } $cisp = new CacheImageSearchParameters(FALSE, FALSE, is_null($ModelIndexID) ? FALSE : $ModelIndexID, FALSE, is_null($ModelID) ? FALSE : $ModelID, FALSE, is_null($SetID) ? FALSE : $SetID, FALSE, is_null($ImageID) ? FALSE : $ImageID, FALSE, is_null($VideoID) ? FALSE : $VideoID, FALSE, is_null($Width) ? FALSE : $Width, is_null($Height) ? FALSE : $Height); if ($cisp->getValues()) { $CacheImages = array_merge($CacheImages, CacheImage::GetCacheImages($cisp)); } if ($CacheImages) { CacheImage::DeleteMulti($CacheImages, $CurrentUser); } HTMLstuff::RefererRedirect();
$CacheImage->setVideoID($VideoID); $CacheImage->setKind(CACHEIMAGE_KIND_VIDEO); $CacheImage->setImageWidth($Width); $CacheImage->setImageHeight($Height); CacheImage::Insert($CacheImage, $CurrentUser); Image::OutputImage($filename, $Width, $Height, TRUE, $CacheImage->getFilenameOnDisk()); } else { Image::OutputImage(); } } else { Image::OutputImage(); } } } else { if ($ImageID) { $CacheImage = CacheImage::GetCacheImages(new CacheImageSearchParameters(FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, $ImageID, FALSE, FALSE, FALSE, $Width, $Height)); if ($CacheImage) { $CacheImage = $CacheImage[0]; Image::OutputImage($CacheImage->getFilenameOnDisk(), $CacheImage->getImageWidth(), $CacheImage->getImageHeight(), TRUE); } else { $Image = Image::GetImages(new ImageSearchParameters($ImageID)); if ($Image) { $Image = $Image[0]; $Set = $Image->getSet(); $Model = $Set->getModel(); if (file_exists($Image->getFilenameOnDisk())) { $CacheImage = new CacheImage(); $CacheImage->setImageID($ImageID); $CacheImage->setKind(CACHEIMAGE_KIND_IMAGE); $CacheImage->setImageWidth($Width); $CacheImage->setImageHeight($Height);
$Set2Process->setName((string) $Set->attributes()->name); } else { if ($Set2Process->getModel()->getFirstName() == 'Promotions') { $Set2Process->setPrefix(NULL); $Set2Process->setName((string) $Set->attributes()->name); } else { $Set2Process->setPrefix('set_'); $Set2Process->setName((string) $Set->attributes()->name); } } } if ($Set2Process->getID()) { Set::Update($Set2Process, $CurrentUser); } else { Set::Insert($Set2Process, $CurrentUser); $CacheImages = CacheImage::GetCacheImages(new CacheImageSearchParameters(FALSE, FALSE, $Model2Process->getID())); CacheImage::DeleteMulti($CacheImages, $CurrentUser); } $settags = Tag::GetTagArray((string) $Set->attributes()->tags); $Tag2AllThisSet = Tag2All::Filter($Tag2AllThisModel, NULL, $Model2Process->getID(), $Set2Process->getID(), NULL, NULL); Tag2All::HandleTags($settags, $Tag2AllThisSet, $TagsInDB, $CurrentUser, $Model2Process->getID(), $Set2Process->getID(), NULL, NULL, FALSE); $datesPic = array(); $datesVid = array(); preg_match_all('/[0-9]{4}-[01][0-9]-[0123][0-9]/ix', (string) $Set->attributes()->date_pic, $datesPic); $Set2Process->setDatesPic(Date::ParseDates($datesPic[0], DATE_KIND_IMAGE, $Set2Process)); preg_match_all('/[0-9]{4}-[01][0-9]-[0123][0-9]/ix', (string) $Set->attributes()->date_vid, $datesVid); $Set2Process->setDatesVid(Date::ParseDates($datesVid[0], DATE_KIND_VIDEO, $Set2Process)); // Reset the Set's CONTAINS_WHAT $Set2Process->setContainsWhat(SET_CONTENT_NONE); if ($Set2Process->getDatesPic()) { $Set2Process->setContainsWhat($Set2Process->getContainsWhat() | SET_CONTENT_IMAGE);
DROP VIEW IF EXISTS `vw_Tag2All`; CREATE ALGORITHM=UNDEFINED VIEW `vw_Tag2All` AS\tselect `Tag2All`.`tag_id` AS `tag_id`, `Tag`.`tag_name` AS `tag_name`, `Tag2All`.`model_id` AS `model_id`, `Tag2All`.`set_id` AS `set_id`, `Tag2All`.`image_id` AS `image_id`, `Tag2All`.`video_id` AS `video_id` from `Tag2All` join `Tag` on `Tag`.`tag_id` = `Tag2All`.`tag_id`; UPDATE `Model` SET `model_firstname` = 'Yuliya' WHERE `model_lastname` = 'Semenishyna'; UPDATE `CacheImage` SET `index_sequence_number` = 1, `index_sequence_total` = 1 WHERE `index_id` IS NOT NULL; COMMIT; SET AUTOCOMMIT=1; FjbMNnvUJheiwewUJfheJheuehFJDUHdywgwwgHGfgywug; if ($NoError && $dbi->ExecuteMulti($UpdateDBSQL)) { /* Rename all cached images on disk to include prefix */ $CacheImagesInDB = CacheImage::GetCacheImages(); /* @var $ci CacheImage */ foreach ($CacheImagesInDB as $ci) { if ($ci->getKind() == CACHEIMAGE_KIND_INDEX) { if (file_exists($ci->getFilenameOnDisk(TRUE, TRUE))) { rename($ci->getFilenameOnDisk(TRUE, TRUE), $ci->getFilenameOnDisk(FALSE, FALSE)); } if (file_exists($ci->getFilenameOnDisk(FALSE, TRUE))) { rename($ci->getFilenameOnDisk(FALSE, TRUE), $ci->getFilenameOnDisk(FALSE, FALSE)); } } else { if (file_exists($ci->getFilenameOnDisk(TRUE))) { rename($ci->getFilenameOnDisk(TRUE), $ci->getFilenameOnDisk(FALSE)); } } }
$FileToFind = ''; $CacheFolder = NULL; $CacheImages = CacheImage::GetCacheImages(); if (isset($argv) && $argc > 0) { $CacheFolder = sprintf('%1$s/cache', dirname($_SERVER['PHP_SELF'])); } else { $CacheFolder = 'cache'; } /* @var $it RecursiveIteratorIterator */ $it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($CacheFolder, FileSystemIterator::SKIP_DOTS | FileSystemIterator::CURRENT_AS_FILEINFO)); /* @var $file SplFileInfo */ foreach ($it as $file) { $idToFind = $file->getBasename('.jpg'); $matches = array(); if (preg_match_all('/^(?<Prefix>[MXSIV]-)?[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}(?<Suffix>-[1-9][0-9]*-[1-9][0-9]*)?$/i', $idToFind, $matches) > 0) { $CacheImageInDB = CacheImage::GetCacheImages(new CacheImageSearchParameters(str_ireplace($matches['Prefix'], '', str_ireplace($matches['Suffix'], '', $idToFind)))); if (!$CacheImageInDB) { unlink($file->getRealPath()); } } } /* @var $CacheImage CacheImage */ foreach ($CacheImages as $CacheImage) { $FileToFind = $CacheImage->getFilenameOnDisk(); if (!file_exists($FileToFind)) { CacheImage::Delete($CacheImage, $CurrentUser); } } $infoSuccess = new Info($lang->g('MessageCacheImagesCleaned')); Info::AddInfo($infoSuccess); HTMLstuff::RefererRedirect();