public static function getUploader($uploader_type, $record_type, $item_id, $limit, $size_limit, $whitelist, $files = array(), $multiple_upload) { $prefix = $suffix = $uploader_type; //.'_'.$record_type; $uploader_id = 'multiuploader_' . $suffix; $wrapper_id = 'djc_uploader_' . $suffix; $wrapper_class = 'djc_uploader_' . $uploader_type; $document = JFactory::getDocument(); if (self::$plUpload_scripts_included == false) { $document->addScript(JURI::root(false) . 'components/com_djcatalog2/assets/upload/upload.js'); $script_vars = array(); $script_vars['url'] = JUri::root(false); $script_vars['client'] = JFactory::getApplication()->isAdmin() ? 1 : 0; $script_vars['lang'] = array(); $script_vars['lang']['remove'] = JText::_('COM_DJCATALOG2_DELETE_BTN'); $script_vars['lang']['limitreached'] = JText::_('COM_DJCATALOG2_UPLOADER_LIMIT_REACHED'); $document->addScriptDeclaration('var DJCatalog2UploaderVars = ' . json_encode($script_vars)); self::$plUpload_scripts_included = true; } $app = JFactory::getApplication(); $settings = array(); $settings['max_file_size'] = $size_limit > 0 ? $size_limit . 'kb' : '102400kb'; $settings['chunk_size'] = '1024kb'; $settings['resize'] = true; $settings['width'] = '2880'; $settings['height'] = '2880'; $settings['quality'] = '90'; $settings['filter'] = implode(',', $whitelist); $settings['onUploadedEvent'] = 'DJC2PlUploadInjectUploaded' . ucfirst($uploader_type); //.ucfirst($record_type); $settings['onAddedEvent'] = 'DJC2PlUploadStartUpload' . ucfirst($uploader_type); //.ucfirst($record_type); $settings['debug'] = false; $layoutFile = dirname(__FILE__) . DS . 'layouts' . DS . $uploader_type . '.php'; if (JFile::exists($layoutFile) == false) { $layoutFile = dirname(__FILE__) . DS . 'layouts' . DS . 'file.php'; } ob_start(); include $layoutFile; $layoutOutput = ob_get_contents(); ob_end_clean(); return $layoutOutput; }
public static function getUploader($uploader_type, $record_type, $item_id, $limit, $size_limit, $whitelist, $files = array(), $multiple_upload) { $prefix = $suffix = $uploader_type; //.'_'.$record_type; $uploader_id = 'multiuploader_' . $suffix; $wrapper_id = 'djc_uploader_' . $suffix; $wrapper_class = 'djc_uploader_' . $uploader_type; $params = JComponentHelper::getParams('com_djcatalog2'); $valid_captions = trim($params->get('allowed_attachment_captions', '')); $captions = explode(PHP_EOL, $valid_captions); foreach ($captions as $k => $v) { if (trim($v) == '') { unset($captions[$k]); continue; } $captions[$k] = trim($v); } $document = JFactory::getDocument(); if (self::$plUpload_scripts_included == false) { $document->addScript(JURI::root(false) . 'components/com_djcatalog2/assets/upload/upload.js'); $script_vars = array(); $script_vars['url'] = JUri::root(false); $script_vars['client'] = JFactory::getApplication()->isAdmin() ? 1 : 0; $script_vars['lang'] = array(); $script_vars['lang']['remove'] = JText::_('COM_DJCATALOG2_DELETE_BTN'); $script_vars['lang']['limitreached'] = JText::_('COM_DJCATALOG2_UPLOADER_LIMIT_REACHED'); if (count($captions) > 0) { $script_vars['valid_captions'] = array(); foreach ($captions as $caption) { $script_vars['valid_captions'][] = '<option value="' . htmlspecialchars($caption) . '">' . htmlspecialchars($caption) . '</option>'; } } else { $script_vars['valid_captions'] = false; } $document->addScriptDeclaration('var DJCatalog2UploaderVars = ' . json_encode($script_vars)); self::$plUpload_scripts_included = true; } $app = JFactory::getApplication(); $settings = array(); $settings['max_file_size'] = $size_limit > 0 ? $size_limit . 'kb' : '102400kb'; $settings['chunk_size'] = '1024kb'; $settings['resize'] = true; $settings['width'] = '2880'; $settings['height'] = '2880'; $settings['quality'] = '90'; $settings['filter'] = implode(',', $whitelist); $settings['onUploadedEvent'] = 'DJC2PlUploadInjectUploaded' . ucfirst($uploader_type); //.ucfirst($record_type); $settings['onAddedEvent'] = 'DJC2PlUploadStartUpload' . ucfirst($uploader_type); //.ucfirst($record_type); $settings['debug'] = false; $layoutFile = dirname(__FILE__) . DS . 'layouts' . DS . $uploader_type . '.php'; if (JFile::exists($layoutFile) == false) { $layoutFile = dirname(__FILE__) . DS . 'layouts' . DS . 'file.php'; } ob_start(); include $layoutFile; $layoutOutput = ob_get_contents(); ob_end_clean(); return $layoutOutput; }