Exemplo n.º 1
0
 /**
  * Override the method to set the document source filename to be like symfony templates filename
  *
  * Available options:
  *  - dirname:     The dirname   of the document source file (symfony module templates directory by default)
  *  - basename:    The basename  of the document source file (symfony action name by default)
  *  - extension:   The extension of the document source file (odt by default)
  *
  * @param mixed $options  The sourcePathname or an array of options
  */
 public function setSourcePathname($options = array())
 {
     if (is_array($options)) {
         $context = sfContext::getInstance();
         if (!isset($options['dirname'])) {
             $options['dirname'] = $context->getModuleDirectory() . DIRECTORY_SEPARATOR . 'templates';
         }
         if (!isset($options['basename'])) {
             $options['basename'] = $context->getActionName();
         }
         if (!isset($options['extension'])) {
             $options['extension'] = $this->getDefaultExtension();
         }
         $sourcePathname = $options['dirname'] . DIRECTORY_SEPARATOR . $options['basename'] . 'Success' . '.' . $options['extension'];
     } else {
         $sourcePathname = $options;
     }
     parent::setSourcePathname($sourcePathname);
 }
Exemplo n.º 2
0
	$tempdir=get_user_temp_directory();
	
	$fb_dezip_ooo=getSettingValue("fb_dezip_ooo");

	if($fb_dezip_ooo==2) {
		$msg="Mode \$fb_dezip_ooo=$fb_dezip_ooo non traité pour le moment... désolé.<br />";
	}
	else {
		$tempdirOOo="../temp/".$tempdir;

		$nom_dossier_temporaire = $tempdirOOo;
		//par defaut content.xml
		$nom_fichier_xml_a_traiter ='content.xml';

		// Création d'une classe tinyDoc
		$OOo = new tinyDoc();
		
		// Choix du module de dézippage
		$dezippeur=getSettingValue("fb_dezip_ooo");
		if ($dezippeur==1){
			$OOo->setZipMethod('shell');
			$OOo->setZipBinary('zip');
			$OOo->setUnzipBinary('unzip');
		}
		else{
			$OOo->setZipMethod('ziparchive');
		}

		$prefixe_generation_hors_dossier_mod_ooo="../mod_ooo/";
		$nom_fichier_modele_ooo="avertissement_fin_periode.odt";
Exemplo n.º 3
0
$nom_fichier_xml_a_traiter = 'content.xml';
//les chemins contenant les données
$fb_gab_perso = getSettingValue("fb_gab_perso");
if ($fb_gab_perso == "1") {
    // Gestion du multisite
    if ($_SESSION['rne'] != '') {
        $rne = $_SESSION['rne'] . "/";
    } else {
        $rne = '';
    }
    $nom_dossier_modele_a_utiliser = "../../mod_ooo/mes_modeles/" . $rne;
} else {
    $nom_dossier_modele_a_utiliser = "../../mod_ooo/modeles_gepi/";
}
// Création d'une classe tinyDoc
$OOo = new tinyDoc();
// Choix du module de dézippage
$dezippeur = getSettingValue("fb_dezip_ooo");
if ($dezippeur == 1) {
    $OOo->setZipMethod('shell');
    $OOo->setZipBinary('zip');
    $OOo->setUnzipBinary('unzip');
} else {
    $OOo->setZipMethod('ziparchive');
}
// setting the object
$OOo->SetProcessDir($nom_dossier_temporaire);
//dossier où se fait le traitement (décompression / traitement / compression)
// create a new openDocument document from the template with an unique id
$OOo->createFrom($nom_dossier_modele_a_utiliser . $nom_fichier_modele_ooo);
// le chemin du fichier est indiqué à partir de l'emplacement de ce fichier
Exemplo n.º 4
0
 /**
  * Render the invoice.
  *
  * @return mixed
  */
 public function render()
 {
     // libs TinyButStrong
     include_once 'TinyButStrong/tinyButStrong.class.php';
     include_once 'TinyButStrong/tinyDoc.class.php';
     $doc = new tinyDoc();
     // use zip extension if available
     if (class_exists('ZipArchive')) {
         $doc->setZipMethod('ziparchive');
     } else {
         $doc->setZipMethod('shell');
         try {
             $doc->setZipBinary('zip');
             $doc->setUnzipBinary('unzip');
         } catch (tinyDocException $e) {
             $doc->setZipMethod('pclzip');
         }
     }
     $doc->setProcessDir($this->getTemporaryDirectory());
     //This is where the template is selected
     $templateform = $this->getTemplateDir() . $this->getTemplateFile();
     $doc->createFrom($templateform);
     $doc->loadXml('content.xml');
     // fetch variables from model to get values
     $customer = $this->getModel()->getCustomer();
     $projects = $this->getModel()->getProjects();
     $entries = $this->getModel()->getEntries();
     // assign all available variables (which are not arrays as they do not work in tinyButStrong)
     foreach ($this->getModel()->toArray() as $k => $v) {
         if (is_array($v)) {
             continue;
         }
         $GLOBALS[$k] = $v;
     }
     // ugly but neccessary for tinyButStrong
     // set globals variables, so they can be used in invoice templates
     $allCustomer = $this->prepareCustomerArray($customer);
     foreach ($allCustomer as $k => $v) {
         $GLOBALS[$k] = $v;
     }
     $GLOBALS['projects'] = $projects;
     $GLOBALS['project'] = implode(', ', array_map(function ($project) {
         return $project['name'];
     }, $projects));
     $doc->mergeXmlBlock('row', $entries);
     $doc->saveXml();
     $doc->close();
     // send and remove the document
     $doc->sendResponse();
     $doc->remove();
 }
$tempdir=get_user_temp_directory();

$fb_dezip_ooo=getSettingValue("fb_dezip_ooo");

if($fb_dezip_ooo==2) {
	$msg="Mode \$fb_dezip_ooo=$fb_dezip_ooo non géré pour le moment... désolé.<br />";
}
else {
	$tempdirOOo="../temp/".$tempdir;

	$nom_dossier_temporaire = $tempdirOOo;
	//par defaut content.xml
	$nom_fichier_xml_a_traiter ='content.xml';

	// Creation d'une classe tinyDoc
	$OOo = new tinyDoc();
	
	// Choix du module de dezippage
	$dezippeur=getSettingValue("fb_dezip_ooo");
	if ($dezippeur==1){
		$OOo->setZipMethod('shell');
		$OOo->setZipBinary('zip');
		$OOo->setUnzipBinary('unzip');
	}
	else{
		$OOo->setZipMethod('ziparchive');
	}

	
	// setting the object
	$OOo->SetProcessDir($nom_dossier_temporaire ); //dossier ou se fait le traitement (decompression / traitement / compression)
Exemplo n.º 6
0
    }
}
// calculate invoice sums
$ttltime = 0;
$gtotal = 0;
while (list($id, $fd) = each($invoiceArray)) {
    $gtotal += $invoiceArray[$id]['amount'];
    $ttltime += $invoiceArray[$id]['hour'];
}
$vat_rate = $kndArray['knd_vat'];
if (!is_numeric($vat_rate)) {
    $vat_rate = $kga['conf']['defaultVat'];
}
$vat = $vat_rate * $gtotal / 100;
$total = $gtotal - $vat;
$doc = new tinyDoc();
// use zip extension if available
if (class_exists('ZipArchive')) {
    $doc->setZipMethod('ziparchive');
} else {
    $doc->setZipMethod('shell');
    try {
        $doc->setZipBinary('zip');
        $doc->setUnzipBinary('unzip');
    } catch (tinyDocException $e) {
        $doc->setZipMethod('pclzip');
    }
}
$doc->setProcessDir('../../temporary');
//This is where the template is selected
$templateform = "templates/" . $_REQUEST['ivform_file'];