Beispiel #1
0
 /**
  * Loading of related XML files
  *
  * @param   string  $extensionName  Extension name
  *
  * @return  array  List of objects
  */
 public static function loadContentElements($extensionName = '')
 {
     jimport('joomla.filesystem.folder');
     $extensions = array();
     if (empty($extensionName)) {
         $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator(JPATH_SITE . '/media/redcore/translations'));
         /** @var SplFileInfo $fileInfo */
         foreach ($iterator as $fileInfo) {
             if ($fileInfo->isDir()) {
                 $extensions[] = $fileInfo->getFilename();
             }
         }
     } else {
         $extensions[] = $extensionName;
     }
     foreach ($extensions as $extension) {
         $contentElementsXml = array();
         $contentElementsXmlRedcorePath = RTranslationContentElement::getContentElementFolderPath($extension, true);
         if (is_dir($contentElementsXmlRedcorePath)) {
             $contentElementsXml = JFolder::files($contentElementsXmlRedcorePath, '.xml', true);
         }
         $contentElementsXmlExtensionPath = RTranslationContentElement::getContentElementFolderPath($extension);
         if (is_dir($contentElementsXmlExtensionPath)) {
             $contentElementsXmlExtension = JFolder::files($contentElementsXmlExtensionPath, '.xml', true);
             if (!empty($contentElementsXmlExtension)) {
                 $contentElementsXml = array_merge($contentElementsXml, $contentElementsXmlExtension);
             }
         }
         if (!empty($contentElementsXml)) {
             self::$contentElements[$extension] = array();
             foreach ($contentElementsXml as $contentElementXml) {
                 $contentElement = new RTranslationContentElement($extension, $contentElementXml);
                 self::$contentElements[$extension][$contentElement->table] = $contentElement;
             }
         }
     }
 }
Beispiel #2
0
 /**
  * Upload Content Element to redcore media location
  *
  * @param   string  $option  The Extension Name ex. com_redcore
  * @param   array   $files   The array of Files (file descriptor returned by PHP)
  *
  * @return  boolean  Returns true if Upload was successful
  */
 public static function uploadContentElement($option = 'com_redcore', $files = array())
 {
     $uploadOptions = array('allowedFileExtensions' => 'xml', 'allowedMIMETypes' => 'application/xml, text/xml', 'overrideExistingFile' => true);
     return RFilesystemFile::uploadFiles($files, RTranslationContentElement::getContentElementFolderPath($option), $uploadOptions);
 }