public static function copyData($source_entry_id, entry $target) { // the source_entry can be from any partner - not only of the current context entryPeer::getCriteriaFilter()->disable(); // TODO - should not be switched of - it sohuld work ok with the new ks/kn mechanism and only public entries should be copied $source_entry = entryPeer::retrieveByPK($source_entry_id); if (!$source_entry) { return false; } $exclude_fields = array("id", "comments", "total_rank", "views", "votes", "favorites", "conversion_profile_id", "access_control_id", "categories", "categories_ids", "start_date", "end_date"); baseObjectUtils::fillObjectFromObject(entryPeer::getFieldNames(BasePeer::TYPE_FIELDNAME), $source_entry, $target, baseObjectUtils::CLONE_POLICY_PREFER_EXISTING, $exclude_fields); $wrapper = objectWrapperBase::getWrapperClass($target, objectWrapperBase::DETAIL_LEVEL_REGULAR); $target->setDimensions($source_entry->getWidth(), $source_entry->getHeight()); $target->getCustomDataObj(); // $target->setLengthInMsecs( $source_entry->getLengthInMsecs() ); // $target->setMediaType( $source_entry->getMediaType() ); // $target->setTags ( $source_entry->getTags () ); $sourceThumbKey = $source_entry->getSyncKey(entry::FILE_SYNC_ENTRY_SUB_TYPE_THUMB); //replaced__getThumbnailPat $sourceDataKey = $source_entry->getSyncKey(entry::FILE_SYNC_ENTRY_SUB_TYPE_DATA); //replaced__getDataPath $sourceDataEditKey = $source_entry->getSyncKey(entry::FILE_SYNC_ENTRY_SUB_TYPE_DATA_EDIT); //replaced__getDataPathEdit // $target->setThumbnail ( $source_thumbnail_path ); // $target->setData ( $source_data_path ); $targetThumbKey = $target->getSyncKey(entry::FILE_SYNC_ENTRY_SUB_TYPE_THUMB); //replaced__getThumbnailPath $targetDataKey = $target->getSyncKey(entry::FILE_SYNC_ENTRY_SUB_TYPE_DATA); //replaced__getDataPath $targetDataEditKey = $target->getSyncKey(entry::FILE_SYNC_ENTRY_SUB_TYPE_DATA_EDIT); //replaced__getDataPathEdit $content = myContentStorage::getFSContentRootPath(); // echo "[$content] [$source_thumbnail_path]->[$target_thumbnail_path] [$source_data_path]->[$target_data_path]"; if (kFileSyncUtils::file_exists($sourceDataKey, true)) { kFileSyncUtils::softCopy($sourceDataKey, $targetDataKey); } if (kFileSyncUtils::file_exists($sourceThumbKey, true)) { kFileSyncUtils::softCopy($sourceThumbKey, $targetThumbKey); } if (kFileSyncUtils::file_exists($sourceDataEditKey, true)) { kFileSyncUtils::softCopy($sourceDataEditKey, $targetDataEditKey); } // added by Tan-Tan 12/01/2010 to support falvors copy $sourceFlavorAssets = flavorAssetPeer::retrieveByEntryId($source_entry_id); foreach ($sourceFlavorAssets as $sourceFlavorAsset) { $sourceFlavorAsset->copyToEntry($target->getId(), $target->getPartnerId()); } return true; }
/** * Populates the object using an array. * * This is particularly useful when populating an object from one of the * request arrays (e.g. $_POST). This method goes through the column * names, checking to see whether a matching key exists in populated * array. If so the setByName() method is called for that column. * * You can specify the key type of the array by additionally passing one * of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. * The default key type is the column's phpname (e.g. 'AuthorId') * * @param array $arr An array to populate the object from. * @param string $keyType The type of keys the array uses. * @return void */ public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME) { $keys = entryPeer::getFieldNames($keyType); if (array_key_exists($keys[0], $arr)) { $this->setId($arr[$keys[0]]); } if (array_key_exists($keys[1], $arr)) { $this->setKshowId($arr[$keys[1]]); } if (array_key_exists($keys[2], $arr)) { $this->setKuserId($arr[$keys[2]]); } if (array_key_exists($keys[3], $arr)) { $this->setName($arr[$keys[3]]); } if (array_key_exists($keys[4], $arr)) { $this->setType($arr[$keys[4]]); } if (array_key_exists($keys[5], $arr)) { $this->setMediaType($arr[$keys[5]]); } if (array_key_exists($keys[6], $arr)) { $this->setData($arr[$keys[6]]); } if (array_key_exists($keys[7], $arr)) { $this->setThumbnail($arr[$keys[7]]); } if (array_key_exists($keys[8], $arr)) { $this->setViews($arr[$keys[8]]); } if (array_key_exists($keys[9], $arr)) { $this->setVotes($arr[$keys[9]]); } if (array_key_exists($keys[10], $arr)) { $this->setComments($arr[$keys[10]]); } if (array_key_exists($keys[11], $arr)) { $this->setFavorites($arr[$keys[11]]); } if (array_key_exists($keys[12], $arr)) { $this->setTotalRank($arr[$keys[12]]); } if (array_key_exists($keys[13], $arr)) { $this->setRank($arr[$keys[13]]); } if (array_key_exists($keys[14], $arr)) { $this->setTags($arr[$keys[14]]); } if (array_key_exists($keys[15], $arr)) { $this->setAnonymous($arr[$keys[15]]); } if (array_key_exists($keys[16], $arr)) { $this->setStatus($arr[$keys[16]]); } if (array_key_exists($keys[17], $arr)) { $this->setSource($arr[$keys[17]]); } if (array_key_exists($keys[18], $arr)) { $this->setSourceId($arr[$keys[18]]); } if (array_key_exists($keys[19], $arr)) { $this->setSourceLink($arr[$keys[19]]); } if (array_key_exists($keys[20], $arr)) { $this->setLicenseType($arr[$keys[20]]); } if (array_key_exists($keys[21], $arr)) { $this->setCredit($arr[$keys[21]]); } if (array_key_exists($keys[22], $arr)) { $this->setLengthInMsecs($arr[$keys[22]]); } if (array_key_exists($keys[23], $arr)) { $this->setCreatedAt($arr[$keys[23]]); } if (array_key_exists($keys[24], $arr)) { $this->setUpdatedAt($arr[$keys[24]]); } if (array_key_exists($keys[25], $arr)) { $this->setPartnerId($arr[$keys[25]]); } if (array_key_exists($keys[26], $arr)) { $this->setDisplayInSearch($arr[$keys[26]]); } if (array_key_exists($keys[27], $arr)) { $this->setSubpId($arr[$keys[27]]); } if (array_key_exists($keys[28], $arr)) { $this->setCustomData($arr[$keys[28]]); } if (array_key_exists($keys[29], $arr)) { $this->setSearchText($arr[$keys[29]]); } if (array_key_exists($keys[30], $arr)) { $this->setScreenName($arr[$keys[30]]); } if (array_key_exists($keys[31], $arr)) { $this->setSiteUrl($arr[$keys[31]]); } if (array_key_exists($keys[32], $arr)) { $this->setPermissions($arr[$keys[32]]); } if (array_key_exists($keys[33], $arr)) { $this->setGroupId($arr[$keys[33]]); } if (array_key_exists($keys[34], $arr)) { $this->setPlays($arr[$keys[34]]); } if (array_key_exists($keys[35], $arr)) { $this->setPartnerData($arr[$keys[35]]); } if (array_key_exists($keys[36], $arr)) { $this->setIntId($arr[$keys[36]]); } if (array_key_exists($keys[37], $arr)) { $this->setIndexedCustomData1($arr[$keys[37]]); } if (array_key_exists($keys[38], $arr)) { $this->setDescription($arr[$keys[38]]); } if (array_key_exists($keys[39], $arr)) { $this->setMediaDate($arr[$keys[39]]); } if (array_key_exists($keys[40], $arr)) { $this->setAdminTags($arr[$keys[40]]); } if (array_key_exists($keys[41], $arr)) { $this->setModerationStatus($arr[$keys[41]]); } if (array_key_exists($keys[42], $arr)) { $this->setModerationCount($arr[$keys[42]]); } if (array_key_exists($keys[43], $arr)) { $this->setModifiedAt($arr[$keys[43]]); } if (array_key_exists($keys[44], $arr)) { $this->setPuserId($arr[$keys[44]]); } if (array_key_exists($keys[45], $arr)) { $this->setAccessControlId($arr[$keys[45]]); } if (array_key_exists($keys[46], $arr)) { $this->setConversionProfileId($arr[$keys[46]]); } if (array_key_exists($keys[47], $arr)) { $this->setCategories($arr[$keys[47]]); } if (array_key_exists($keys[48], $arr)) { $this->setCategoriesIds($arr[$keys[48]]); } if (array_key_exists($keys[49], $arr)) { $this->setStartDate($arr[$keys[49]]); } if (array_key_exists($keys[50], $arr)) { $this->setEndDate($arr[$keys[50]]); } if (array_key_exists($keys[51], $arr)) { $this->setSearchTextDiscrete($arr[$keys[51]]); } if (array_key_exists($keys[52], $arr)) { $this->setFlavorParamsIds($arr[$keys[52]]); } if (array_key_exists($keys[53], $arr)) { $this->setAvailableFrom($arr[$keys[53]]); } }
public function hasPeerFieldName($fieldName) { if (strpos($fieldName, '.') === false) { $fieldName = strtoupper($fieldName); $fieldName = "entry.{$fieldName}"; } $entryFields = entryPeer::getFieldNames(BasePeer::TYPE_COLNAME); return in_array($fieldName, $entryFields); }