$movie) {
echo $movie . "
";
# fetch movie info
VCDClassFactory::flushCache();
$fetchClass = VCDClassFactory::loadClass('VCDFetch_imdb');
$fetchObj = VCDClassFactory::getInstance('VCDFetch_imdb');
#VCDPageUserAddItem -- 448
$fetchResults = $fetchObj->Search( $movie );
$results = $fetchObj->showSearchResults();
$bestResult = $results[1];
$resultID = $bestResult['id'];
$fetchObj->fetchItemByID($resultID);
$fetchObj->fetchValues();
#$fetchedObj = $fetchObj->fetchedObj;
$fetchedObj = $fetchObj->getFetchedObject();
$fetchedObj->setSourceSite(1);
// Set the thumbnail
if (is_null($fetchedObj->getImage())) {
$img = '
';
$fetchedObj->itemThumbnail = ( $img);
} else {
$src = TEMP_FOLDER.$fetchedObj->getImage();
$img = '
';
$fetchedObj->itemThumbnail = (sprintf($img, $src));
$fetchedObj->itemThumb = ($fetchedObj->getImage());
}
// Set the movie category
$results = array();
$categories = SettingsServices::getAllMovieCategories();
foreach ($categories as $categoryObj) {
$results[$categoryObj->getId()] = $categoryObj->getName(true);
}
asort($results);
$results = array(null => VCDLanguage::translate('misc.select')) + $results;
$fetchedObj->itemCategoryList = ($results);
// Set the mediaType list
$results = array();
$results[null] = VCDLanguage::translate('misc.select');
foreach (SettingsServices::getAllMediatypes() as $mediaTypeObj) {
$results[$mediaTypeObj->getmediaTypeID()] = $mediaTypeObj->getDetailedName();
if ($mediaTypeObj->getChildrenCount() > 0) {
foreach ($mediaTypeObj->getChildren() as $childObj) {
$results[$childObj->getmediaTypeID()] = ' '.$childObj->getDetailedName();
}
}
}
$fetchedObj->mediatypeList = ( $results);
// Set the number of cd's list
$results = array();
$results[null] = VCDLanguage::translate('misc.select');
for($i=1;$i<11;$i++) {
$results[$i] = $i;
}
$fetchedObj->cdList = ($results);
// Handle the thumbnail
// Generic Fetched Object actions ..
if (strcmp($fetchedObj->getImage(), "") != 0) {
$filename = VCDUtils::grabImage($fetchedObj->getImage());
// Check if we need to resize the thumbnail ..
list($width, $height) = getimagesize(TEMP_FOLDER.$filename);
if ((int)$width > 135) {
// Image to big .. resize it
$im = new Image_Toolbox(TEMP_FOLDER.$filename);
if ($fetchedObj instanceof adultObj ) {
$im->newOutputSize(135,0);
} else {
$im->newOutputSize(0,140);
}
$newFilename ="x".$filename;
$im->save(TEMP_FOLDER.$newFilename, 'jpg');
unset($im);
fs_unlink($filename);
$filename = $newFilename;
}
$fetchedObj->setImage($filename);
}
$cast = $fetchedObj->getCast(false);
if (is_array($cast)) {
$fetchedObj->itemCast = implode(chr(13),$cast);
$fetchedObj->SetCast(implode(chr(13),$cast));
}
// Set the default category if match is found
$categories = $fetchedObj->getGenre();
if (is_string($categories)) {
$categories = explode(',',$categories);
foreach ($categories as $key => $value) {
$catId = SettingsServices::getCategoryIDByName(trim($value));
if ($catId>0) {
$fetchedObj->selectedCategory = $catId;
break;
}
}
}
// Create the basic CD obj
$basic = array('', $fetchedObj->getTitle(), $fetchedObj->selectedCategory, $fetchedObj->getYear());
$vcd = new vcdObj($basic);
// create mediatypeobj as xvid
$mediatypeObj = new mediaTypeObj(array(6, 'Xvid', 5, ''));
// Add 1 instance -- set #cds to 1
$vcd->addInstance(VCDUtils::getCurrentUser(), $mediatypeObj, 1, mktime());
// Add the imdbObj to the VCD
$vcd->setIMDB($fetchedObj);
// Set the source site
$sourceSiteObj = SettingsServices::getSourceSiteByID($fetchedObj->getSourceSiteID());
if ($sourceSiteObj instanceof sourceSiteObj ) {
$vcd->setSourceSite($sourceSiteObj->getsiteID(), $fetchedObj->getObjectID());
}
$coverArr = array();
// Add the thumbnail as a cover if any was found on IMDB
if (!is_null($fetchedObj->getImage())) {
$cover = new cdcoverObj();
// Get a Thumbnail CoverTypeObj
$coverTypeObj = CoverServices::getCoverTypeByName("thumbnail");
$cover->setCoverTypeID($coverTypeObj->getCoverTypeID());
$cover->setCoverTypeName("thumbnail");
$cover->setFilename($fetchedObj->getImage());
$coverArr[] = $cover;
}
$vcd->addCovers($coverArr);
// Handle metadata
$arrMetaData = array();
foreach ($_POST as $key => $value) {
if ((int)substr_count($key, 'meta') == 1) {
array_push($arrMetaData, array('key' => $key, 'value' => $value));
}
}
if (sizeof($arrMetaData) > 0) {
foreach ($arrMetaData as $itemArr) {
$key = $itemArr['key'];
$value = is_array($itemArr['value'])?implode("#",$itemArr['value']):$itemArr['value'];
$entry = explode("|", $key);
$metadataName = $entry[1];
$metadatatype_id = $entry[2];
$mediatype_id = $entry[3];
// Skip empty metadata
if (strcmp($value, "") != 0 && strcmp($value, "null") != 0) {
$fetchedObj = new metadataObj(array('', null, VCDUtils::getUserID(), $metadataName, $value));
$fetchedObj->setMetaDataTypeID($metadatatype_id);
$fetchedObj->setMediaTypeID($mediatype_id);
$vcd->addMetadata($fetchedObj);
}
}
unset($arrMetaData);
}
// Forward the movie to the Business layer
try {
$new_id = MovieServices::addVcd($vcd);
} catch (Exception $ex) {
echo "$movie -- already exists ($ex)\n
";
#throw $ex;
}
}
?>