diff --git a/htdocs/comm/propal/stats/index.php b/htdocs/comm/propal/stats/index.php index 012fab4f31e..51c75972a8c 100644 --- a/htdocs/comm/propal/stats/index.php +++ b/htdocs/comm/propal/stats/index.php @@ -20,21 +20,29 @@ * $Source$ * */ + +/** + \file htdocs/comm/propal/stats/index.php + \ingroup propale + \brief Page des stats propositions commerciales + \version $Revision$ +*/ + require("./pre.inc.php"); require("./propalestats.class.php"); llxHeader(); -/* - * - * - */ print_fiche_titre('Statistiques propositions commerciales', $mesg); $stats = new PropaleStats($db); $year = strftime("%Y", time()); $data = $stats->getNbByMonthWithPrevYear($year); -$filev = "/document/images/nbpropale2year-$year.png"; + +if (! is_dir($conf->propale->dir_images)) { mkdir($conf->propale->dir_images); } + +$filename = $conf->propale->dir_images."/nbpropale2year-$year.png"; +$fileurl = $conf->propale->url_images."/nbpropale2year-$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); @@ -43,8 +51,7 @@ if (! $mesg) { $px->SetLegend(array($year - 1, $year)); $px->SetWidth(450); $px->SetHeight(280); - - $px->draw(DOL_DOCUMENT_ROOT.$filev, $data, $year); + $px->draw($filename, $data, $year); } $sql = "SELECT count(*), date_format(datep,'%Y') as dm, sum(price) FROM ".MAIN_DB_PREFIX."propal WHERE fk_statut > 0 GROUP BY dm DESC "; @@ -52,12 +59,12 @@ if ($db->query($sql)) { $num = $db->num_rows(); - print ''; + print '
'; print ''; print ''; $i = 0; while ($i < $num) diff --git a/htdocs/comm/propal/stats/month.php b/htdocs/comm/propal/stats/month.php index 2f3d2dec686..9b935258b9f 100644 --- a/htdocs/comm/propal/stats/month.php +++ b/htdocs/comm/propal/stats/month.php @@ -21,6 +21,13 @@ * */ +/** + \file htdocs/comm/propal/stats/month.php + \ingroup propale + \brief Page des stats propositions commerciales par mois + \version $Revision$ +*/ + require("./pre.inc.php"); require("./propalestats.class.php"); @@ -29,7 +36,7 @@ llxHeader(); $year = isset($_GET["year"])?$_GET["year"]:date("Y",time()); $mesg = ''.img_previous().' '; -$mesg.= "Année $year"; +$mesg.= $langs->trans("Year")." $year"; $mesg.= ' '.img_next().''; /* @@ -39,12 +46,13 @@ $mesg.= ' '.img_next().''; print_fiche_titre('Statistiques des propositions commerciales', $mesg); -$dir = DOL_DOCUMENT_ROOT; - $stats = new PropaleStats($db); $data = $stats->getNbByMonth($year); -$filev = "/document/images/propale$year.png"; +if (! is_dir($conf->propale->dir_images)) { mkdir($conf->propale->dir_images); } + +$filename = $conf->propale->dir_images."/propale$year.png"; +$fileurl = $conf->propale->url_images."/propale$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); @@ -52,8 +60,7 @@ if (! $mesg) { $px->SetMaxValue($px->GetMaxValue()); $px->SetWidth(500); $px->SetHeight(280); - - $px->draw($dir.$filev, $data, $year); + $px->draw($filename, $data, $year); } $res = $stats->getAmountByMonth($year); @@ -65,17 +72,17 @@ for ($i = 1 ; $i < 13 ; $i++) $data[$i-1] = array(strftime("%b",mktime(12,12,12,$i,1,$year)), $res[$i]); } -$file_amount = "/document/images/propalamount$year.png"; +$filename_amount = $conf->propale->dir_images."/propaleamount$year.png"; +$fileurl_amount = $conf->propale->url_images."/propaleamount$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); if (! $mesg) { - $px->SetYLabel("Montant"); + $px->SetYLabel($langs->trans("AmountTotal")); $px->SetMaxValue($px->GetAmountMaxValue()); $px->SetWidth(500); $px->SetHeight(250); - - $px->draw($dir.$file_amount, $data, $year); + $px->draw($filename_amount, $data, $year); } $res = $stats->getAverageByMonth($year); @@ -85,33 +92,35 @@ for ($i = 1 ; $i < 13 ; $i++) { $data[$i-1] = array(strftime("%b",mktime(12,12,12,$i,1,$year)), $res[$i]); } -$file_avg = "/document/images/propalaverage$year.png"; + +$filename_avg = $conf->propale->dir_images."/propalaverage$year.png"; +$fileurl_avg = $conf->propale->url_images."/propalaverage$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); if (! $mesg) { - $px->SetYLabel("Montant moyen"); + $px->SetYLabel($langs->trans("AmountAverage")); $px->SetMaxValue($px->GetAmountMaxValue()); $px->SetWidth(500); $px->SetHeight(250); - $px->draw($dir.$file_avg, $data, $year); + $px->draw($filename_avg, $data, $year); } -print '
AnnéeNb de propositionSomme des propositions'; print 'Nombre de proposition par mois
'; if ($mesg) { print "$mesg"; } - else { print 'Graphique nombre de commande'; } + else { print 'Nombre de proposition par mois'; } print '
'; +print '
'; print ''; print ''; -print ''; +print ''; print ''; -print ''; +print ''; print '
Nombre par mois'; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
Sommes
'.$langs->trans("AmountTotal").''; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
Montant moyen
'.$langs->trans("AmountAverage").''; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
'; $db->close(); diff --git a/htdocs/commande/stats/index.php b/htdocs/commande/stats/index.php index 7ed0e8dfad0..49edecf0187 100644 --- a/htdocs/commande/stats/index.php +++ b/htdocs/commande/stats/index.php @@ -20,6 +20,15 @@ * $Source$ * */ + +/** + \file htdocs/commande/stats/index.php + \ingroup commande + \brief Page des stats commandes + \version $Revision$ +*/ + + require("./pre.inc.php"); require("../commande.class.php"); require("./commandestats.class.php"); @@ -44,7 +53,11 @@ $stats = new CommandeStats($db, $socidp); $year = strftime("%Y", time()); $data = $stats->getNbCommandeByMonthWithPrevYear($year); -$filev = "/document/images/nbcommande2year.png"; + +if (! is_dir($conf->commande->dir_images)) { mkdir($conf->commande->dir_images); } + +$filename = $conf->commande->dir_images."/nbcommande2year-$year.png"; +$fileurl = $conf->commande->url_images."/nbcommande2year-$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); @@ -53,17 +66,17 @@ if (! $mesg) { $px->SetWidth(450); $px->SetHeight(280); $px->SetYLabel("Nombre de commande"); - $px->draw(DOL_DOCUMENT_ROOT.$filev, $data, $year); + $px->draw($filename, $data, $year); } $rows = $stats->getNbByYear(); $num = sizeof($rows); -print ''; -print ''; +print '
AnnéeNb de commandeSomme des commandes
'; +print ''; print ''; $i = 0; while (list($key, $value) = each ($rows)) diff --git a/htdocs/commande/stats/month.php b/htdocs/commande/stats/month.php index 0780c52264a..1686668ae29 100644 --- a/htdocs/commande/stats/month.php +++ b/htdocs/commande/stats/month.php @@ -20,6 +20,14 @@ * $Source$ * */ + +/** + \file htdocs/commande/stats/month.php + \ingroup commande + \brief Page des stats commandes par mois + \version $Revision$ +*/ + require("./pre.inc.php"); require("../commande.class.php"); require("./commandestats.class.php"); @@ -38,7 +46,7 @@ llxHeader(); $year = isset($_GET["year"])?$_GET["year"]:date("Y",time()); $mesg = ''.img_previous().' '; -$mesg.= "Année $year"; +$mesg.= $langs->trans("Year")." $year"; $mesg.= ' '.img_next().''; /* @@ -48,12 +56,13 @@ $mesg.= ' '.img_next().''; print_fiche_titre('Statistiques commandes', $mesg); -$dir = DOL_DOCUMENT_ROOT; - $stats = new CommandeStats($db, $socidp); $data = $stats->getNbCommandeByMonth($year); -$filev = "/document/images/commande$year.png"; +if (! is_dir($conf->commande->dir_images)) { mkdir($conf->commande->dir_images); } + +$filename = $conf->commande->dir_images."/commande$year.png"; +$fileurl = $conf->commande->url_images."/commande$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); @@ -62,7 +71,7 @@ if (! $mesg) { $px->SetWidth(500); $px->SetHeight(280); $px->SetYLabel("Nombre de commande"); - $px->draw($dir.$filev, $data, $year); + $px->draw($filename, $data, $year); } $res = $stats->getCommandeAmountByMonth($year); @@ -74,7 +83,8 @@ for ($i = 1 ; $i < 13 ; $i++) $data[$i-1] = array(strftime("%b",mktime(12,12,12,$i,1,$year)), $res[$i]); } -$file_amount = "/document/images/commandeamount.png"; +$filename_amount = $conf->commande->dir_images."/commandeamount$year.png"; +$fileurl_amount = $conf->commande->url_images."/commandeamount$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); @@ -82,8 +92,8 @@ if (! $mesg) { $px->SetMaxValue($px->GetAmountMaxValue()); $px->SetWidth(500); $px->SetHeight(250); - $px->SetYLabel("Montant des commande"); - $px->draw($dir.$file_amount, $data, $year); + $px->SetYLabel($langs->trans("AmountTotal")); + $px->draw($filename_amount, $data, $year); } $res = $stats->getCommandeAverageByMonth($year); @@ -93,32 +103,35 @@ for ($i = 1 ; $i < 13 ; $i++) { $data[$i-1] = array(strftime("%b",mktime(12,12,12,$i,1,$year)), $res[$i]); } -$file_avg = "/document/images/commandeaverage.png"; + +$filename_avg = $conf->commande->dir_images."/commandeaverage$year.png"; +$fileurl_avg = $conf->commande->url_images."/commandeaverage$year.png"; + $px = new BarGraph($data); $mesg = $px->isGraphKo(); if (! $mesg) { $px->SetMaxValue($px->GetAmountMaxValue()); $px->SetWidth(500); $px->SetHeight(250); - $px->SetYLabel("Montant moyen des commande"); - $px->draw($dir.$file_avg, $data, $year); + $px->SetYLabel($langs->trans("AmountAverage")); + $px->draw($filename_avg, $data, $year); } -print '
'.$langs->trans("Year").'Nb de commandeSomme des commandes'; print 'Nombre de commande par mois
'; if ($mesg) { print $mesg; } -else { print 'Graphique nombre de commande'; } +else { print 'Nombre de commande par mois'; } print '
'; +print '
'; print ''; print ''; print ''; print ''; print ''; print '
Nombre de commande par mois'; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
Sommes des commandes'; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
Montant moyen des commande'; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
'; $db->close(); diff --git a/htdocs/compta/facture/stats/index.php b/htdocs/compta/facture/stats/index.php index 072cd261982..f48a1ab4dbb 100644 --- a/htdocs/compta/facture/stats/index.php +++ b/htdocs/compta/facture/stats/index.php @@ -20,7 +20,16 @@ * $Source$ * */ + +/** + \file htdocs/compta/facture/stats/index.php + \ingroup facture + \brief Page des stats factures + \version $Revision$ +*/ + require("./pre.inc.php"); + /* * Sécurité accés client */ @@ -31,17 +40,17 @@ if ($user->societe_id > 0) } llxHeader(); -/* - * - * - */ print_fiche_titre('Statistiques factures', $mesg); $stats = new FactureStats($db, $socidp); $year = strftime("%Y", time()); $data = $stats->getNbByMonthWithPrevYear($year); -$filev = "/document/images/nbfacture2year-$year.png"; + +if (! is_dir($conf->facture->dir_images)) { mkdir($conf->facture->dir_images); } + +$filename = $conf->facture->dir_images."/nbfacture2year-$year.png"; +$fileurl = $conf->facture->url_images."/nbfacture2year-$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); @@ -50,7 +59,7 @@ if (! $mesg) { $px->SetLegend(array($year - 1, $year)); $px->SetWidth(450); $px->SetHeight(280); - $px->draw(DOL_DOCUMENT_ROOT.$filev, $data, $year); + $px->draw($filename, $data, $year); } $sql = "SELECT count(*), date_format(datef,'%Y') as dm, sum(total) FROM ".MAIN_DB_PREFIX."facture WHERE fk_statut > 0 "; @@ -63,12 +72,12 @@ if ($db->query($sql)) { $num = $db->num_rows(); - print ''; - print ''; + print '
AnnéeNb de factureSomme des factures
'; + print ''; print ''; $i = 0; while ($i < $num) @@ -86,7 +95,7 @@ if ($db->query($sql)) } else { - print "Erreur : $sql"; + dolibarr_print_error($db); } diff --git a/htdocs/compta/facture/stats/month.php b/htdocs/compta/facture/stats/month.php index bb14c3c052d..d6aef5334a2 100644 --- a/htdocs/compta/facture/stats/month.php +++ b/htdocs/compta/facture/stats/month.php @@ -21,6 +21,13 @@ * */ +/** + \file htdocs/compta/facture/stats/month.php + \ingroup facture + \brief Page des stats factures par mois + \version $Revision$ +*/ + require("./pre.inc.php"); /* @@ -37,23 +44,18 @@ llxHeader(); $year = isset($_GET["year"])?$_GET["year"]:date("Y",time()); $mesg = ''.img_previous().' '; -$mesg.= "Année $year"; +$mesg.= $langs->trans("Year")." $year"; $mesg.= ' '.img_next().''; -/* - * - * - */ - print_fiche_titre('Statistiques des factures '.$year, $mesg); - -$dir = DOL_DOCUMENT_ROOT; - $stats = new FactureStats($db, $socidp); $data = $stats->getNbByMonth($year); -$filev = "/document/images/facture$year.png"; +if (! is_dir($conf->facture->dir_images)) { mkdir($conf->facture->dir_images); } + +$filename = $conf->facture->dir_images."/facture$year.png"; +$fileurl = $conf->facture->url_images."/facture$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); @@ -61,7 +63,7 @@ if (! $mesg) { $px->SetMaxValue($px->GetMaxValue()); $px->SetWidth(500); $px->SetHeight(280); - $px->draw($dir.$filev, $data, $year); + $px->draw($filename, $data, $year); } $res = $stats->getAmountByMonth($year); @@ -73,16 +75,17 @@ for ($i = 1 ; $i < 13 ; $i++) $data[$i-1] = array(strftime("%b",mktime(12,12,12,$i,1,$year)), $res[$i]); } -$file_amount = "/document/images/factureamount$year.png"; +$filename_amount = $conf->facture->dir_images."/factureamount$year.png"; +$fileurl_amount = $conf->facture->url_images."/factureamount$year.png"; $px = new BarGraph($data); $mesg = $px->isGraphKo(); if (! $mesg) { - $px->SetYLabel("Montant"); + $px->SetYLabel($langs->trans("AmountTotal")); $px->SetMaxValue($px->GetAmountMaxValue()); $px->SetWidth(500); $px->SetHeight(250); - $px->draw($dir.$file_amount, $data, $year); + $px->draw($filename_amount, $data, $year); } $res = $stats->getAverageByMonth($year); @@ -92,32 +95,35 @@ for ($i = 1 ; $i < 13 ; $i++) { $data[$i-1] = array(strftime("%b",mktime(12,12,12,$i,1,$year)), $res[$i]); } -$file_avg = "/document/images/factureaverage$year.png"; + +$filename_avg = $conf->facture->dir_images."/factureaverage$year.png"; +$fileurl_avg = $conf->facture->url_images."/factureaverage$year.png"; + $px = new BarGraph($data); $mesg = $px->isGraphKo(); if (! $mesg) { - $px->SetYLabel("Montant moyen"); + $px->SetYLabel($langs->trans("AmountAverage")); $px->SetMaxValue($px->GetAmountMaxValue()); $px->SetWidth(500); $px->SetHeight(250); - $px->draw($dir.$file_avg, $data, $year); + $px->draw($filename_avg, $data, $year); } -print '
'.$langs->trans("Year").'Nb de factureSomme des factures'; - print 'Nombre de facture par mois
'; + print 'Nombre de factures par mois
'; if ($mesg) { print $mesg; } - else { print 'Graphique nombre de commande'; } + else { print 'Nombre de factures par mois'; } print '
'; +print '
'; print ''; print ''; -print ''; +print ''; print ''; -print ''; +print ''; print '
Nombre par mois'; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
Sommes
'.$langs->trans("AmountTotal").''; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
Montant moyen
'.$langs->trans("AmountAverage").''; if ($mesg) { print $mesg; } -else { print ''; } +else { print ''; } print '
'; $db->close(); diff --git a/htdocs/expedition/stats/index.php b/htdocs/expedition/stats/index.php index fd43b211f82..bbbfea284a2 100644 --- a/htdocs/expedition/stats/index.php +++ b/htdocs/expedition/stats/index.php @@ -1,5 +1,6 @@ + * Copyright (C) 2004 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -19,19 +20,23 @@ * $Source$ * */ + +/** + \file htdocs/expedition/stats/index.php + \ingroup expedition + \brief Page des stats expeditions + \version $Revision$ +*/ + require("./pre.inc.php"); require("../expedition.class.php"); llxHeader(); -/* - * - * - */ print_fiche_titre('Statistiques expéditions', $mesg); -print ''; -print ''; +print '
AnnéeNb d\'expédition
'; +print ''; $sql = "SELECT count(*), date_format(date_expedition,'%Y') as dm FROM ".MAIN_DB_PREFIX."expedition WHERE fk_statut > 0 GROUP BY dm DESC "; if ($db->query($sql)) diff --git a/htdocs/expedition/stats/month.php b/htdocs/expedition/stats/month.php index db7d2a89030..7133a5acf46 100644 --- a/htdocs/expedition/stats/month.php +++ b/htdocs/expedition/stats/month.php @@ -1,5 +1,6 @@ + * Copyright (C) 2004 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -20,6 +21,13 @@ * */ +/** + \file htdocs/expedition/stats/month.php + \ingroup commande + \brief Page des stats expeditions par mois + \version $Revision$ +*/ + require("./pre.inc.php"); require("../expedition.class.php"); require("./expeditionstats.class.php"); @@ -28,31 +36,26 @@ llxHeader(); $mesg = ''; -/* - * - * - */ - print_fiche_titre('Statistiques expeditions '.$_GET["year"], $mesg); $stats = new ExpeditionStats($db); - -$dir = DOL_DOCUMENT_ROOT; - $data = $stats->getNbExpeditionByMonth($_GET["year"]); -$filev = "/document/images/expedition-".$_GET["year"].".png"; +if (! is_dir($conf->expedition->dir_images)) { mkdir($conf->expedition->dir_images); } + +$filename = $conf->expedition->dir_images."/expedition$year.png"; +$fileurl = $conf->expedition->url_images."/expedition$year.png"; $px = new BarGraph($data); $px->SetMaxValue($px->GetMaxValue()); $px->SetWidth(600); $px->SetHeight(280); -$px->draw($dir.$filev, $data, $_GET["year"]); +$px->draw($filename, $data, $_GET["year"]); -print '
'.$langs->trans("Year").'Nb d\'expédition
'; +print '
'; print ''; print ''; print '
Nombre d\'expédition par mois'; -print ''; +print ''; print '
'; diff --git a/htdocs/master.inc.php b/htdocs/master.inc.php index bea2b8d30ec..78f1dbf12c4 100644 --- a/htdocs/master.inc.php +++ b/htdocs/master.inc.php @@ -170,10 +170,16 @@ if (defined("MAIN_MODULE_EXTERNALRSS")) if (defined("MAIN_MODULE_COMMANDE")) { $conf->commande->enabled=MAIN_MODULE_COMMANDE; + $conf->commande->dir_ouput=DOL_DATA_ROOT."/documents/commande"; + $conf->commande->dir_images=DOL_DOCUMENT_ROOT."/images/commande"; + $conf->commande->url_images=DOL_URL_ROOT."/images/commande"; } if (defined("MAIN_MODULE_EXPEDITION")) { $conf->expedition->enabled=MAIN_MODULE_EXPEDITION; + $conf->expedition->dir_ouput=DOL_DATA_ROOT."/documents/expedition"; + $conf->expedition->dir_images=DOL_DOCUMENT_ROOT."/images/expedition"; + $conf->expedition->url_images=DOL_URL_ROOT."/images/expedition"; } if (defined("MAIN_MODULE_SOCIETE")) { @@ -205,8 +211,8 @@ if (defined("MAIN_MODULE_FOURNISSEUR")) } if (defined("MAIN_MODULE_FICHEINTER")) { - require (DOL_DOCUMENT_ROOT ."/includes/modules/fichinter/modules_fichinter.php"); $conf->fichinter->enabled=MAIN_MODULE_FICHEINTER; + require (DOL_DOCUMENT_ROOT ."/includes/modules/fichinter/modules_fichinter.php"); } if (defined("MAIN_MODULE_ADHERENT")) { @@ -215,10 +221,16 @@ if (defined("MAIN_MODULE_ADHERENT")) if (defined("MAIN_MODULE_PRODUIT")) { $conf->produit->enabled=MAIN_MODULE_PRODUIT; + $conf->produit->dir_ouput=DOL_DATA_ROOT."/documents/produit"; + $conf->produit->dir_images=DOL_DOCUMENT_ROOT."/images/produit"; + $conf->produit->url_images=DOL_URL_ROOT."/images/produit"; } if (defined("MAIN_MODULE_SERVICE")) { $conf->service->enabled=MAIN_MODULE_SERVICE; + $conf->service->dir_ouput=DOL_DATA_ROOT."/documents/produit"; + $conf->service->dir_images=DOL_DOCUMENT_ROOT."/images/produit"; + $conf->service->url_images=DOL_URL_ROOT."/images/produit"; } if (defined("MAIN_MODULE_STOCK")) { @@ -269,16 +281,23 @@ if (defined("MAIN_MODULE_FACTURE")) { $conf->facture->enabled=MAIN_MODULE_FACTURE; require (DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php"); + $conf->facture->dir_ouput=DOL_DATA_ROOT."/documents/facture"; + $conf->facture->dir_images=DOL_DOCUMENT_ROOT."/images/facture"; + $conf->facture->url_images=DOL_URL_ROOT."/images/facture"; } if (defined("MAIN_MODULE_PROPALE")) { $conf->propal->enabled=MAIN_MODULE_PROPALE; - require (DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php"); - + $conf->propale->dir_ouput=DOL_DATA_ROOT."/documents/propale"; + $conf->propale->dir_images=DOL_DOCUMENT_ROOT."/images/propale"; + $conf->propale->url_images=DOL_URL_ROOT."/images/propale"; + + // \todo a virer car remplacé par $conf->propale->dir_ouput if (! defined("PROPALE_OUTPUTDIR")) { - define('PROPALE_OUTPUTDIR', DOL_DOCUMENT_ROOT . "/document/propale/"); + define('PROPALE_OUTPUTDIR', DOL_DOCUMENT_ROOT . "/document/propale"); + $conf->propale->dir_ouput=DOL_DOCUMENT_ROOT . "/document/propale"; } if (! defined("PROPALE_OUTPUT_URL")) {