| Current Path : /home/sunflowe/www2/j15/components/com_jce/editor/tiny_mce/plugins/browser/classes/ |
| Current File : /home/sunflowe/www2/j15/components/com_jce/editor/tiny_mce/plugins/browser/classes/browser.php |
<?php
/**
* @package JCE
* @copyright Copyright © 2009-2011 Ryan Demmer. All rights reserved.
* @license GNU/GPL 2 or later - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
* JCE is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
*/
defined( '_JEXEC') or die('RESTRICTED');
require_once(WF_EDITOR_LIBRARIES .DS. 'classes' .DS. 'manager.php');
final class WFFileBrowserPlugin extends WFMediaManager
{
/*
* @var string
*/
protected $_filetypes = 'xml=xml;html=htm,html;word=doc,docx;powerpoint=ppt;excel=xls;text=txt,rtf;image=gif,jpeg,jpg,png;acrobat=pdf;archive=zip,tar,gz;flash=swf;winrar=rar;quicktime=mov,mp4,qt;windowsmedia=wmv,asx,asf,avi;audio=wav,mp3,aiff;openoffice=odt,odg,odp,ods,odf';
/**
* @access protected
*/
public function __construct()
{
parent::__construct();
$browser = $this->getBrowser();
if (JRequest::getWord('type', 'file') == 'file') {
// Add all files
$browser->addFileTypes(array('WF_FILEGROUP_ALL' => '*.*'));
} else {
$browser->setFileTypes('images=jpg,jpeg,png,gif');
}
if (JRequest::getString('filter')) {
$browser->setFileTypes('files=' . JRequest::getString('filter'));
}
}
/**
* Returns a reference to a WFFileBrowserPlugin object
*
* This method must be invoked as:
* <pre> $browser = WFFileBrowserPlugin::getInstance();</pre>
*
* @access public
* @return object WFFileBrowserPlugin
*/
public function &getInstance()
{
static $instance;
if (!is_object($instance)) {
$instance = new WFFileBrowserPlugin();
}
return $instance;
}
/**
* Display the plugin
* @access public
*/
public function display()
{
parent::display();
$document = WFDocument::getInstance();
$settings = $this->getSettings();
if ($document->get('standalone') == 1) {
$document->addScript(array('browser'), 'component');
// load the language file
if (is_file(WF_EDITOR . DS . 'tiny_mce' . DS . 'langs' . DS . $this->getLanguage() . '_dlg.js')) {
$document->addScript(array('langs/' . $this->getLanguage() . '_dlg.js'), 'tiny_mce');
} else {
$document->addScript(array('langs/en_dlg.js'), 'tiny_mce');
}
$element = JRequest::getCmd('element', '');
$options = array(
'plugin' => array(
'root' => JURI::root(),
'site' => JURI::base(true) . '/'
),
'manager' => $settings,
'element' => $element
);
$document->addScriptDeclaration('jQuery(document).ready(function($){$.WFBrowserWidget.init('.json_encode($options).');});');
$document->addStyleSheet(array(
'dialog'
), 'libraries');
} else {
$document->addScript(array('browser'), 'plugins');
$document->addScriptDeclaration('BrowserDialog.settings='.json_encode($settings).';');
}
}
/**
* @see WFMediaManager::getSettings()
*/
function getSettings()
{
return parent::getSettings();
}
}
?>