Source for file export.action.php

Documentation is available at export.action.php

  1. <?php
  2. /**
  3. @package Mambo
  4. @subpackage Languages
  5. @copyright  Refer to copyright.php
  6. @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
  7. @author Mambo Foundation Inc see README.php
  8. */ 
  9. defined'_VALID_MOS' or die'Direct Access to this location is not allowed.' );
  10. class exportAction extends Action
  11. {
  12.     function execute(&$controller&$request)
  13.     {
  14.         $root mamboCore::get('rootPath');
  15.         $live mamboCore::get('mosConfig_live_site');
  16.         include($root.'/administrator/includes/pcl/pclzip.lib.php');
  17.         chdir($root);
  18.  
  19.         $lang mosGetParam($_POST'lang''');
  20.         $language new mamboLanguage($lang);
  21.         $language->load(true);
  22.         $zipfile "$root/media/MamboLanguage_$lang.zip";
  23.         $archive new PclZip($zipfile);
  24.  
  25.         foreach ($language->files as $file{
  26.             $v_list $archive->add($root.'/'.$file['filename']PCLZIP_OPT_REMOVE_PATH$root.'language/');
  27.             if ($v_list == 0){
  28.                die("Error : ".$archive->errorInfo(true));
  29.             }
  30.         }
  31.  
  32.         if (ereg('Opera(/| )([0-9].[0-9]{1,2})'$UserAgent)) {
  33.             $UserBrowser "Opera";
  34.         }
  35.         elseif (ereg('MSIE ([0-9].[0-9]{1,2})'$UserAgent)) {
  36.             $UserBrowser "IE";
  37.         else {
  38.             $UserBrowser '';
  39.         }
  40.         $mime_type 'application/x-zip';
  41.         $filename "MamboLanguage_$lang.zip";
  42.         @ob_end_clean();
  43.         ob_start();
  44.         header('Content-Type: ' $mime_type);
  45.         header('Expires: ' gmdate('D, d M Y H:i:s'' GMT');
  46.  
  47.         if ($UserBrowser == 'IE'{
  48.             header('Content-Disposition: inline; filename="' $filename '"');
  49.             header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
  50.             header('Pragma: public');
  51.         else {
  52.             header('Content-Disposition: attachment; filename="' $filename '"');
  53.             header('Pragma: no-cache');
  54.         }
  55.         
  56.         readfile($zipfile);
  57.         ob_end_flush();
  58.         $fmanager =mosFileManager::getInstance();
  59.         $fmanager->deleteFile($zipfile);
  60.         exit(0);
  61.     }
  62. }
  63.  
  64. ?>

Documentation generated on Mon, 05 May 2008 16:19:26 +0400 by phpDocumentor 1.4.0