public static function exportLanguages($path, $dest, $lang, $client, $search, $extensions = array()) { CCK_Export::createDir($dest); $package = (object) array('name' => 'cck_' . $lang . '_' . $client, 'tag' => $lang, 'description' => 'SEBLOD 3.x ' . $lang . ' Language Pack - www.seblod.com', 'client' => $client == 'admin' ? 'administrator' : $client); $xml = CCK_Export::prepareLanguage($package); $filelist = $xml->addChild('fileset'); $list = $filelist->addChild('files'); $target = $client == 'site' ? 'language/' . $lang : 'administrator/language/' . $lang; $list->addAttribute('target', $target); $files = JFolder::files($path, $search); if (count($extensions)) { foreach ($files as $file) { $id = str_replace(array($lang . '.', '.sys.ini', '.ini'), array('', '', ''), $file); if (isset($extensions[$id])) { JFile::copy($path . '/' . $file, $dest . '/' . $file); $list->addChild('filename', $file); } } } else { foreach ($files as $file) { JFile::copy($path . '/' . $file, $dest . '/' . $file); } } CCK_Export::createFile($dest . '/' . $package->name . '.xml', '<?xml version="1.0" encoding="utf-8"?>' . $xml->asIndentedXML()); }