本文整理汇总了PHP中X_Env::completeUrl方法的典型用法代码示例。如果您正苦于以下问题:PHP X_Env::completeUrl方法的具体用法?PHP X_Env::completeUrl怎么用?PHP X_Env::completeUrl使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类X_Env
的用法示例。
在下文中一共展示了X_Env::completeUrl方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: indexAction
function indexAction()
{
if (X_VlcShares_Plugins::helpers()->devices()->isWiimc()) {
// everything have to be in plx format
$plx = new X_Plx(X_Env::_('p_auth_loginindex_plxtitle'), X_Env::_('p_auth_loginindex_plxdesc'));
$plx->addItem(new X_Plx_Item(X_Env::_('p_auth_login_advice'), X_Env::completeUrl($this->_helper->url('index', 'auth'))));
$plx->addItem(new X_Plx_Item(X_Env::_('p_auth_login_pressbbutton'), X_Env::completeUrl($this->_helper->url('index', 'auth'))));
$this->_helper->viewRenderer->setNoRender(true);
$this->_helper->layout->disableLayout();
$this->getResponse()->setHeader('Content-Type', 'text/plain');
$this->getResponse()->setBody((string) $plx);
//echo $plx;
return;
}
//if ( $this->ns->enabled && isset($this->ns->username) ) {
//throw new Exception(X_Env::_('p_auth_already_loggedin'));
//}
if ($this->plugin->isLoggedIn()) {
throw new Exception(X_Env::_('p_auth_already_loggedin'));
}
$form = new Application_Form_AuthLogin();
$form->setAction($this->_helper->url('login', 'auth'));
$this->view->form = $form;
$this->view->messages = $this->_helper->flashMessenger->getMessages();
}
示例2: indexAction
public function indexAction()
{
$lang = $this->getRequest()->getParam('lang', false);
$languages = array();
foreach (new DirectoryIterator(APPLICATION_PATH . "/../languages/") as $entry) {
if ($entry->isFile() && pathinfo($entry->getFilename(), PATHINFO_EXTENSION) == 'ini') {
if (count(explode('.', $entry->getFilename())) == 2) {
$languages[$entry->getFilename()] = pathinfo($entry->getFilename(), PATHINFO_FILENAME);
}
}
}
if ($lang != false) {
// cleanup from ./ and ../
$lang = str_replace(array('.', '/'), '', $lang);
if (file_exists(APPLICATION_PATH . "/../languages/{$lang}.ini") && array_key_exists("{$lang}.ini", $languages)) {
$translation = new Zend_Translate('ini', APPLICATION_PATH . "/../languages/{$lang}.ini");
X_Env::initTranslator($translation);
} else {
$this->_helper->flashMessenger(array('type' => 'error', 'text' => X_Env::_('installer_invalid_language')));
$lang = false;
}
}
$form = new Application_Form_Installer();
$form->setAction($this->_helper->url('save', 'installer'));
try {
$form->lang->setMultiOptions($languages);
$form->setDefault('lang', $lang !== false ? "{$lang}.ini" : 'en_GB.ini');
$form->setDefault('auth', 0);
$form->setDefault('threads', X_Env::completeUrl($this->_helper->url('start', 'threads')));
} catch (Exception $e) {
// WTF?
}
// try to read the manifest of plugins index
$plugins = $this->getInstallablePlugins();
try {
$form->plugins->setMultiOptions($plugins);
} catch (Exception $e) {
// Connection kaboom?
}
$ns = new Zend_Session_Namespace('vlc-shares::installer');
if (isset($ns->errors) && $ns->errors) {
$form->isValid($ns->data);
unset($ns->errors);
unset($ns->data);
}
$threadsChecks = $this->_helper->url('check', 'threads');
$threadsPing = $this->_helper->url('ping', 'threads');
$basePing = $this->_helper->url('', 'threads');
$httpPort = $_SERVER['SERVER_PORT'];
$httpPort = $httpPort != '80' && $httpPort != '' ? ":{$httpPort}" : '';
$threadsUrls = array("'http://localhost{$httpPort}{$basePing}'", "'http://127.0.0.1{$httpPort}{$basePing}'", "'http://127.0.1.1{$httpPort}{$basePing}'", "'http://192.168.1.1{$httpPort}{$basePing}'");
$this->view->messages = array_merge($this->_helper->flashMessenger->getMessages(), $this->_helper->flashMessenger->getCurrentMessages());
$this->_helper->flashMessenger->clearCurrentMessages();
$this->view->languages = $languages;
$this->view->threadsCheck = $threadsChecks;
$this->view->threadsPing = $threadsPing;
$this->view->threadsUrls = $threadsUrls;
$this->view->form = $form;
}
示例3: gen_afterPageBuild
public function gen_afterPageBuild(X_Page_ItemList_PItem $items, Zend_Controller_Action $controller)
{
if (count($items->getItems()) == 0) {
X_Debug::i("Plugin triggered");
$item = new X_Page_Item_PItem('emptylists', X_Env::_('p_emptylists_moveaway'));
$item->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($controller->getHelper('url')->url()));
$items->append($item);
}
}
示例4: gen_afterPageBuild
public function gen_afterPageBuild(X_Page_ItemList_PItem $items, Zend_Controller_Action $controller)
{
if ($this->helpers()->devices()->isWiimc() && $this->helpers()->devices()->isWiimcBeforeVersion('1.0.9')) {
if (count($items->getItems()) === 1) {
X_Debug::i("Plugin triggered");
$item = new X_Page_Item_PItem('workaroundwiimcplaylistitemsbug', '-- Workaround for bug in Wiimc <= 1.0.9 --');
$item->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($controller->getHelper('url')->url()));
$items->append($item);
}
}
}
示例5: preGetSelectionItems
/**
* Show the header inside the selection page
*/
public function preGetSelectionItems($provider, $location, $pid, Zend_Controller_Action $controller)
{
// we want to expose items only if pid is this plugin
if ($this->getId() != $pid) {
return;
}
X_Debug::i('Plugin triggered');
$urlHelper = $controller->getHelper('url');
$link = new X_Page_Item_PItem($this->getId() . '-header', X_Env::_('p_profiles_selection_title'));
$link->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($urlHelper->url()));
return new X_Page_ItemList_PItem();
}
示例6: scriptAction
public function scriptAction()
{
$hosters = X_VlcShares_Plugins::helpers()->hoster()->getHosters();
$csrf = new Zend_Form_Element_Hash('csrf', array('salt' => __CLASS__));
$csrf->initCsrfToken();
$this->view->hosters = $hosters;
$this->view->frameUrl = X_Env::completeUrl($this->_helper->url->url(array('controller' => 'bookmarklets', 'action' => 'frame')));
$this->view->cssUrl = X_Env::completeUrl($this->_helper->viewRenderer->view->baseUrl('/css/bookmarklets/injected.css'));
$this->view->xfcUrl = X_Env::completeUrl($this->_helper->viewRenderer->view->baseUrl('/js/jquery.xfc.js'));
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setViewSuffix('pjs');
$this->getResponse()->setHeader('Content-Type', 'application/javascript');
}
示例7: getModeItems
public function getModeItems($provider, $location, Zend_Controller_Action $controller)
{
$list = new X_Page_ItemList_PItem();
$urlHelper = $controller->getHelper('url');
if ($this->countdown > 0) {
$countdown = new X_Page_Item_PItem('core-countdown', X_Env::_('core_countdown', $this->countdown));
$countdown->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setIcon("/images/{$this->getId()}/logo.png")->setLink(X_Env::completeUrl($urlHelper->url()));
$list->append($countdown);
}
if ($this->error_message) {
$error = new X_Page_Item_PItem('core-error', X_Env::_($this->error_message));
$error->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setIcon("/images/{$this->getId()}/logo.png")->setLink(X_Env::completeUrl($urlHelper->url()));
$list->append($error);
}
return $list;
}
示例8: preGetSelectionItems
public function preGetSelectionItems($provider, $location, $pid, Zend_Controller_Action $controller)
{
// we want to expose items only if pid is this plugin
if ($this->getId() != $pid) {
return;
}
// check for resolvable $location
// this plugin is useless if i haven't an access
// to the real location (url for stream or path for file)
$provider = X_VlcShares_Plugins::broker()->getPlugins($provider);
if (!$provider instanceof X_VlcShares_Plugins_ResolverInterface) {
return;
}
X_Debug::i('Plugin triggered');
$urlHelper = $controller->getHelper('url');
$link = new X_Page_Item_PItem($this->getId() . '-header', X_Env::_('p_audioswitcher_selection_title'));
$link->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($urlHelper->url()));
return new X_Page_ItemList_PItem();
}
示例9: preGetControlItems
/**
* Add the button BackToStream in controls page
*
* @param X_Streamer_Engine $engine
* @param Zend_Controller_Action $controller the controller who handle the request
* @return array
*/
public function preGetControlItems(X_Streamer_Engine $engine, Zend_Controller_Action $controller)
{
$urlHelper = $controller->getHelper('url');
$return = new X_Page_ItemList_PItem();
if ($this->config('show.title', true)) {
$onAirName = X_Env::_("p_streaminfo_unknown_source");
if ($engine instanceof X_Streamer_Engine_Vlc) {
$vlc = $engine->getVlcWrapper();
$onAirName = $vlc->getCurrentName();
} else {
// try to find the name from the location (if any)
$providerId = $controller->getRequest()->getParam('p', false);
$location = $controller->getRequest()->getParam('l', false);
if ($providerId && $location) {
$providerObj = X_VlcShares_Plugins::broker()->getPlugins($providerId);
$location = X_Env::decode($location);
if ($providerObj instanceof X_VlcShares_Plugins_ResolverInterface) {
$onAirName = $providerObj->resolveLocation($location);
}
}
}
// show the title of the file
$item = new X_Page_Item_PItem('streaminfo-onair', X_Env::_('p_streaminfo_onair') . ": {$onAirName}");
$item->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($urlHelper->url()));
$return->append($item);
}
if ($engine instanceof X_Streamer_Engine_Vlc) {
$vlc = $engine->getVlcWrapper();
if ($this->config('show.time', false)) {
$currentTime = X_Env::formatTime($vlc->getCurrentTime());
$totalTime = X_Env::formatTime($vlc->getTotalTime());
$item = new X_Page_Item_PItem('streaminfo-time', "{$currentTime}/{$totalTime}");
$item->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($urlHelper->url()));
$return->append($item);
}
}
return $return;
}
示例10: filterShareItems
/**
* Check the item in the collection should be filtered out
* If return is false, the item will be discarded at 100%
* If return is true, isn't sure that the item will be added
* 'cause another plugin can prevent this
*
* Plugins who check per-item acl or blacklist should hook here
*
* @param X_Page_Item_PItem $item
* @param string $provider
* @param Zend_Controller_Action $controller
* @return boolean true if item is ok, false if item should be discarded
*/
public function filterShareItems(X_Page_Item_PItem $item, $provider, Zend_Controller_Action $controller)
{
$providerClass = X_VlcShares_Plugins::broker()->getPluginClass($provider);
$providerObj = X_VlcShares_Plugins::broker()->getPlugins($provider);
if (is_a($providerObj, 'X_VlcShares_Plugins_FileSystem')) {
if ($item->getType() == X_Page_Item_PItem::TYPE_ELEMENT) {
$itemLocation = $item->getCustom('X_VlcShares_Plugins_FileSystem:location');
/* @var $urlHelper Zend_Controller_Action_Helper_Url */
$urlHelper = $controller->getHelper('url');
$path = $providerObj->resolveLocation($itemLocation);
$thumb = new Application_Model_FsThumb();
Application_Model_FsThumbsMapper::i()->fetchByPath($path, $thumb);
if ($thumb->isNew()) {
$thumbUrl = X_Env::completeUrl($urlHelper->direct('thumb', 'fsthumbs', 'default', array('l' => X_Env::encode($itemLocation), 't' => 'dummy.jpg')));
} else {
$thumbUrl = X_Env::completeUrl(Zend_Controller_Front::getInstance()->getBaseUrl() . $thumb->getUrl());
}
//$item->setDescription($itemLocation);
$item->setThumbnail($thumbUrl);
}
}
return true;
}
示例11: selectionAction
public function selectionAction()
{
$request = $this->getRequest();
X_VlcShares_Plugins::broker()->gen_preProviderSelection($this);
$provider = $request->getParam('p', false);
if ($provider === false || !X_VlcShares_Plugins::broker()->isRegistered($provider)) {
throw new Exception("Invalid provider");
}
$pid = $request->getParam('pid', false);
if ($pid === false || !X_VlcShares_Plugins::broker()->isRegistered($pid)) {
throw new Exception("Invalid pluginId");
}
$location = X_Env::decode($request->getParam('l', ''));
$pageItems = new X_Page_ItemList_PItem();
// I add a "Back" button as first, this should redirect to mode action
$back = new X_Page_Item_PItem('core-back', X_Env::_('back'));
$back->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(array('action' => 'mode', 'pid' => null), 'default', false);
$pageItems->append($back);
// links on top
$pageItems->merge(X_VlcShares_Plugins::broker()->preGetSelectionItems($provider, $location, $pid, $this));
// add separator between header items and options items
$separator = new X_Page_Item_PItem('core-separator', X_Env::_('_____options_separator_____'));
$separator->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($this->_helper->url->url()));
$pageItems->append($separator);
// normal links
$pageItems->merge(X_VlcShares_Plugins::broker()->getSelectionItems($provider, $location, $pid, $this));
// bottom links
$pageItems->merge(X_VlcShares_Plugins::broker()->postGetSelectionItems($provider, $location, $pid, $this));
// filter out items (parental-control / hidden file / system dir)
foreach ($pageItems->getItems() as $key => $item) {
$results = X_VlcShares_Plugins::broker()->filterSelectionItems($item, $provider, $pid, $this);
if ($results != null && in_array(false, $results)) {
$pageItems->remove($item);
}
}
// trigger for page creation
X_VlcShares_Plugins::broker()->gen_afterPageBuild($pageItems, $this);
}
示例12: preRegisterVlcArgs
/**
* This hook can be used to add low priority args in vlc stack
*
* @param X_Vlc $vlc vlc wrapper object
* @param string $provider id of the plugin that should handle request
* @param string $location to stream
* @param Zend_Controller_Action $controller the controller who handle the request
*/
public function preRegisterVlcArgs(X_Vlc $vlc, $provider, $location, Zend_Controller_Action $controller)
{
// this plugin inject params only if this is the provider
if ($provider != $this->getId()) {
return;
}
// i need to register source as first, because subtitles plugin use source
// for create subfile
X_Debug::i('Plugin triggered');
$dLocation = $this->resolveLocation($location);
if ($location !== null) {
// TODO adapt to newer api when ready
$vlc->registerArg('source', "\"{$dLocation}\"");
} else {
X_Debug::e("No source o_O");
return;
}
// Now, it's time to check for sub parameter
$request = $controller->getRequest();
$sub = $request->getParam($this->getId() . ':sub', false);
if ($sub !== false) {
$sub = X_Env::decode($sub);
/* @var $helper X_VlcShares_Plugins_Helper_Youtube */
$helper = $this->helpers('youtube');
list(, , , $videoId) = explode('/', $location);
$sub = $helper->getSubtitleNOAPI($videoId, $sub);
$urlHelper = $controller->getHelper('url');
$subFile = X_Env::completeUrl($urlHelper->url($sub['srt_url'], 'default', true));
$vlc->registerArg('subtitles', "--sub-file=\"{$subFile}\"");
}
}
示例13: gen_afterPageBuild
public function gen_afterPageBuild(X_Page_ItemList_PItem $list, Zend_Controller_Action $controller)
{
// force Rendering win over everythings
/*if ( !$this->_forceRendering ) {
if ( !((bool) $this->config('forced.enabled', false)) && !$this->helpers()->devices()->isWiimc() ) return;
}
*/
// new renderer interface
if (!$this->isDefaultRenderer()) {
return;
}
X_Debug::i("Plugin triggered");
$request = $controller->getRequest();
$enhanced = $this->helpers()->devices()->isWiimcEnhanced() && $this->config('support.enhanced', true);
$plx = new X_Plx(X_Env::_('p_wiimcplxrenderer_plxtitle_' . $request->getControllerName() . '_' . $request->getActionName()), X_Env::_('p_wiimcplxrenderer_plxdescription_' . $request->getControllerName() . '_' . $request->getActionName()));
// wiimc plus custom tags
if ($enhanced) {
$plx->setWiimcplus_generator_name('vlc-shares');
// uses the __call api
$plx->setWiimcplus_generator_version(X_VlcShares::VERSION_CLEAN);
// uses the __call api
if ($request->getControllerName() == 'index' && $request->getActionName() == 'collections') {
$plx->setWiimcplus_assert_mainmenu('true');
// uses the __call api
}
// show the current time as custom playlist header tag if the page is controls/control or browse/stream
if ($request->getControllerName() == 'controls' && $request->getActionName() == 'control' || $request->getControllerName() == 'browse' && $request->getActionName() == 'stream') {
$vlc = X_Vlc::getLastInstance();
if ($vlc) {
// check to be sure that vlc is running right now
$currentTime = X_Env::formatTime($vlc->getCurrentTime());
$totalTime = X_Env::formatTime($vlc->getTotalTime());
$plx->setWiimcplus_current_time("{$currentTime}/{$totalTime}");
// uses the __call api
}
} elseif ($request->getControllerName() == 'browse' && $request->getActionName() == 'selection') {
$plx->setWiimcplus_assert_nohistory('true');
// uses the __call api
}
}
foreach ($list->getItems() as $i => $item) {
/* @var $item X_Page_Item_PItem */
$plxItemName = ($item->isHighlight() ? '-) ' : '') . $item->getLabel();
$plxItemWiimcplusIcon = null;
switch ($item->getType()) {
case X_Page_Item_PItem::TYPE_CONTAINER:
$plxItemType = X_Plx_Item::TYPE_PLAYLIST;
$plxItemWiimcplusIcon = 'folder';
break;
case X_Page_Item_PItem::TYPE_ELEMENT:
$plxItemType = X_Plx_Item::TYPE_PLAYLIST;
if ($request->getControllerName() == 'browse' && $request->getActionName() == 'share') {
$plxItemWiimcplusIcon = 'file';
}
break;
case X_Page_Item_PItem::TYPE_REQUEST:
$plxItemType = X_Plx_Item::TYPE_SEARCH;
break;
case X_Page_Item_PItem::TYPE_PLAYABLE:
$plxItemType = X_Plx_Item::TYPE_VIDEO;
break;
default:
$plxItemType = $item->getType();
}
/* @var $urlHelper Zend_Controller_Action_Helper_Url */
$urlHelper = $controller->getHelper('url');
$plxItemUrl = $item->isUrl() ? $item->getLink() : X_Env::completeUrl($urlHelper->url($item->getLink(), $item->getRoute(), $item->isReset()));
$plxItem = new X_Plx_Item($plxItemName, $plxItemUrl, $plxItemType);
if ($item->getThumbnail() != null) {
if (X_Env::startWith($item->getThumbnail(), 'http') || X_Env::startWith($item->getThumbnail(), 'https')) {
$plxItem->setThumb($item->getThumbnail());
} else {
$plxItem->setThumb(X_Env::completeUrl($item->getThumbnail()));
}
}
if ($enhanced) {
if ($plxItemWiimcplusIcon !== null) {
$plxItem->setWiimcplus_icon($plxItemWiimcplusIcon);
}
if ($item->getKey() == 'core-separator') {
$plxItem->setWiimcplus_assert_separator('true');
}
if ($item->getKey() == 'core-directwatch') {
$plxItem->setWiimcplus_assert_directwatch('true');
if ($item->getCustom('subtitle') != null) {
$plxItem->setWiimcplus_subtitle($item->getCustom('subtitle'));
}
}
if ($item->getKey() == 'core-play') {
$plxItem->setWiimcplus_assert_startvlc('true');
}
}
$plx->addItem($plxItem);
}
$this->_render($plx, $controller);
}
示例14: getShareItems
/**
* Get download queue status
* @param unknown_type $provider
* @param unknown_type $location
* @param Zend_Controller_Action $controller
* @return X_Page_ItemList_PItem
*/
public function getShareItems($provider, $location, Zend_Controller_Action $controller)
{
// this plugin add items only if it is the provider
if ($provider != $this->getId()) {
return;
}
X_Debug::i("Plugin triggered");
// disabling cache plugin
try {
$cachePlugin = X_VlcShares_Plugins::broker()->getPlugins('cache');
if (method_exists($cachePlugin, 'setDoNotCache')) {
$cachePlugin->setDoNotCache();
}
} catch (Exception $e) {
// cache plugin not registered, no problem
}
// unregister sort plugin, it's useless now
X_VlcShares_Plugins::broker()->unregisterPluginClass('X_VlcShares_Plugins_SortItems');
/* @var $jdHelper X_VlcShares_Plugins_Helper_JDownloader */
$jdHelper = $this->helpers('jdownloader');
/* @var $url Zend_View_Helper_Url */
$urlHelper = $controller->getHelper('url');
$packages = $jdHelper->getDownloads();
X_Debug::i("Packages found: " . count($packages));
$list = new X_Page_ItemList_PItem();
foreach ($packages as $package) {
/* @var $package Application_Model_JDownloaderPackage */
if ($this->helpers()->devices()->isWiimc()) {
$packageLabel = X_Env::_('p_jdownloader_share_packageentry_nohtml', $package->getName(), $package->getSize(), $package->getFilesCount(), $package->getETA(), $package->getPercent(), X_Env::_('p_jdownloader_downloadstate_' . ($package->isDownloading() ? '1' : '0')));
$packageDesc = X_Env::_('p_jdownloader_share_packageentry_desc_nohtml', $package->getSize(), $package->getFilesCount(), $package->getETA(), $package->getPercent(), X_Env::_('p_jdownloader_downloadstate_' . ($package->isDownloading() ? '1' : '0')));
} else {
$packageLabel = X_Env::_('p_jdownloader_share_packageentry_html', $package->getName());
$packageDesc = X_Env::_('p_jdownloader_share_packageentry_desc_html', $package->getSize(), $package->getFilesCount(), $package->getETA(), $package->getPercent(), X_Env::_('p_jdownloader_downloadstate_' . ($package->isDownloading() ? '1' : '0')));
}
$link = new X_Page_Item_PItem($this->getId() . '-package', $packageLabel);
$link->setIcon('/images/icons/folder.png')->setDescription($packageDesc)->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($urlHelper->url()));
$list->append($link);
X_Debug::i("{$package->getFilesCount()} files in package {$package->getName()}");
foreach ($package->getFiles() as $file) {
/* @var $file Application_Model_JDownloaderFile */
if ($this->helpers()->devices()->isWiimc()) {
$fileLabel = X_Env::_('p_jdownloader_share_fileentry_nohtml', $file->getName(), $file->getHoster(), $file->getPercent(), X_Env::_('p_jdownloader_downloadstate_' . ($file->isDownloading() ? '1' : '0')));
$fileDesc = X_Env::_('p_jdownloader_share_fileentry_desc_nohtml', $file->getHoster(), $file->getPercent(), X_Env::_('p_jdownloader_downloadstate_' . ($file->isDownloading() ? '1' : '0')));
} else {
$fileLabel = X_Env::_('p_jdownloader_share_fileentry_html', $file->getName());
$fileDesc = X_Env::_('p_jdownloader_share_fileentry_desc_html', $file->getHoster(), $file->getPercent(), X_Env::_('p_jdownloader_downloadstate_' . ($file->isDownloading() ? '1' : '0')));
}
$link = new X_Page_Item_PItem($this->getId() . '-file', $fileLabel);
$link->setDescription($fileDesc)->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setLink(X_Env::completeUrl($urlHelper->url()));
$list->append($link);
}
}
return $list;
}