本文整理汇总了PHP中Asset::getAssetType方法的典型用法代码示例。如果您正苦于以下问题:PHP Asset::getAssetType方法的具体用法?PHP Asset::getAssetType怎么用?PHP Asset::getAssetType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Asset
的用法示例。
在下文中一共展示了Asset::getAssetType方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getAllMediaAssets
/**
* Answer all media assets below the specified asset
*
* @param object Asset $asset
* @param optional object Id $excludeId
* @return object Iterator
* @access protected
* @since 2/26/07
*/
protected function getAllMediaAssets(Asset $asset, $excludeId = null)
{
if ($excludeId && $excludeId->isEqual($asset->getId())) {
return false;
}
if ($this->mediaFileType->isEqual($asset->getAssetType())) {
$tmp = array();
$tmp[] = $asset;
$iterator = new HarmoniIterator($tmp);
return $iterator;
} else {
$iterator = new MultiIteratorIterator();
$children = $asset->getAssets();
while ($children->hasNext()) {
$result = $this->getAllMediaAssets($children->next(), $excludeId);
if ($result) {
$iterator->addIterator($result);
}
}
return $iterator;
}
}
示例2: newInstance
/**
* Instantiate a new plugin for an Asset
*
* @param object Asset $asset
* @param object ConfigurationProperties $configuration
* @return object Plugin OR string (error string) on error.
* @access public
* @since 1/12/06
* @static
*/
public static function newInstance(Asset $asset, Properties $configuration)
{
$type = $asset->getAssetType();
$pluginManager = Services::getService("PluginManager");
$pluginDir = $pluginManager->getPluginDir($type);
$pluginClass = $pluginManager->getPluginClass($type);
if (preg_match('/[^a-z0-9_]/i', $pluginClass)) {
throw new Exception("Invalid plugin class, '" . $pluginClass . "'.");
}
$pluginFile = $pluginDir . $pluginClass . ".class.php";
// Check for the file
if (!file_exists($pluginFile)) {
return _("Error: Plugin not found at '{$pluginFile}'.");
}
require_once $pluginFile;
// Check for the class
if (!class_exists($pluginClass)) {
return _("Error: Plugin class, '{$pluginClass}', not found.");
}
// Ensure that the plugin writer didn't override the constructor
if (in_array($pluginClass, get_class_methods($pluginClass))) {
return _("Error: Plugin class should not have a constructor method, '{$pluginClass}'.");
}
// Instantiate the plugin
$plugin = new $pluginClass();
$plugin->setConfiguration($configuration);
$plugin->setAsset($asset);
// Execute the decendent's initialization
$plugin->initialize();
return $plugin;
}
示例3: while
/**
* Recursively copies an asset and its children to a new parent.
*
* @access private
*/
function _copyAsset(Asset $asset, Id $newParentId)
{
// Create the new asset
$newAsset = $this->createAsset($asset->getDisplayName(), $asset->getDescription(), $asset->getAssetType());
// Move the new asset to the proper parent if it
// is not being copied to the dr root.
if (!$newParentId->isEqual($this->getId())) {
$newParent = $this->getAsset($newParentId);
$newParent->addAsset($newAsset->getId());
}
// Copy its data
// @todo
// Copy the children
$children = $asset->getAssets();
while ($children->hasNext()) {
$childAsset = $children->next();
$this->_copyAsset($childAsset, $newAsset->getId());
}
// Return its Id
return $newAsset->getId();
}
示例4: recordPluginExtras
/**
* Record any extra files that are used by plugins
*
* @param Asset $asset
* @return void
*/
public function recordPluginExtras(Asset $asset)
{
$audioType = new Type('SeguePlugins', 'edu.middlebury', 'AudioPlayer');
$downloadType = new Type('SeguePlugins', 'edu.middlebury', 'Download');
if ($asset->getAssetType()->isEqual($audioType) || $asset->getAssetType()->isEqual($downloadType)) {
$query = 'count(item[wp:post_type = "attachment" and title = "downarrow.gif"])';
if (!$this->xpath->evaluate($query, $this->channel)) {
$url = MYPATH . '/images/downarrow.gif';
$element = $this->channel->insertBefore($this->doc->createElement('item'), $this->endFiles);
$element->appendChild($this->getElement('title', "downarrow.gif"));
$element->appendChild($this->getElement('link', $url));
$element->appendChild($this->getElement('guid', $url))->setAttribute('isPermaLink', 'false');
$element->appendChild($this->getElement('description', 'Download icon.'));
$element->appendChild($this->getElement('pubDate', date('r')));
$agentUID = $this->recordAgent($asset->getCreator());
$element->appendChild($this->getElementNS("http://purl.org/dc/elements/1.1/", 'dc:creator', '0'));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:post_id', '0'));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:post_date', date('Y-m-d H:i:s')));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:post_date_gmt', date('Y-m-d H:i:s')));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:comment_status', 'closed'));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:ping_status', 'closed'));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:status', 'publish'));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:post_parent', $asset->getId()->getIdString()));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:menu_order', '0'));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:post_type', 'attachment'));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:post_password', ''));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:is_sticky', '0'));
$element->appendChild($this->getElementNS("http://wordpress.org/export/1.1/", 'wp:attachment_url', $url));
}
}
}
示例5: getSiteComponentFromAsset
/**
* Create and/or return the component for an asset and register it for later fetching
*
* @param object Asset $asset
* @return object SiteComponent
* @access public
* @since 4/5/06
*/
function getSiteComponentFromAsset(Asset $asset)
{
$id = $asset->getId();
$idString = $id->getIdString();
if (!isset($this->_createdSiteComponents[$idString])) {
$type = $asset->getAssetType();
foreach ($this->siteDisplayTypes as $siteDisplayType) {
if ($type->isEqual($siteDisplayType)) {
$typeKey = ucfirst($type->getKeyword());
break;
}
}
if (!isset($typeKey)) {
$typeKey = 'Block';
}
$class = "Asset" . $typeKey . "SiteComponent";
try {
$xmlDocument = $this->getXmlDocumentFromAsset($asset);
$documentElement = $xmlDocument->documentElement;
} catch (NonNavException $e) {
$documentElement = null;
}
$this->_createdSiteComponents[$idString] = new $class($this, $asset, $documentElement);
}
return $this->_createdSiteComponents[$idString];
}