if($argc != 2 )
{
echo "Vous devez spécifier le fichier de configuration!.\n You must specify the configuration file!\n";
exit;
}
else
{
$conf = $argv[1];
if(!file_exists($conf))
{
echo "Pb à l'ouverture du fichier de configuration.\n Error during the configuration file opening!.\n";
exit;
}
// chargement du fichier de config
$xmlconfig = simplexml_load_file($conf);
foreach($xmlconfig->CONFIG as $CONFIG)
{
$_SESSION['config']['databaseserver'] = utf8_decode((string) $CONFIG->databaseserver);
$_SESSION['config']['databasename'] = utf8_decode((string) $CONFIG->databasename);
$_SESSION['config']['databaseuser'] = utf8_decode((string) $CONFIG->databaseuser);
$_SESSION['config']['databasepassword'] = utf8_decode((string) $CONFIG->databasepassword);
$_SESSION['config']['lang'] = utf8_decode((string) $CONFIG->lang);
$_SESSION['config']['mail'] = utf8_decode((string) $CONFIG->mailfrom);
$_SESSION['config']['debug'] = utf8_decode((string) $CONFIG->debug);
$_SESSION['config']['Unix'] = utf8_decode((string) $CONFIG->UNIXserver);
$_SESSION['config']['MaarchDirectory'] = utf8_decode((string) $CONFIG->MaarchDirectory);
$_SESSION['config']['MaarchURL'] = utf8_decode((string) $CONFIG->MaarchURL);
}
$i=0;
foreach($xmlconfig->RESOURCES as $RESOURCES)
{
$_SESSION['ressources'][$i] = array("tablename" => utf8_decode((string) $RESOURCES->tablename),
"comment" => utf8_decode((string) $RESOURCES->comment),
);
$i++;
}
$table = $_SESSION['ressources'][0]['tablename'];
foreach($xmlconfig->TABLENAME as $TABLENAME)
{
$_SESSION['tablename']['doctypes'] = utf8_decode((string) $TABLENAME->doctypes);
$_SESSION['tablename']['history'] = utf8_decode((string) $TABLENAME->history);
$_SESSION['tablename']['listinstance'] = utf8_decode((string) $TABLENAME->listinstance);
$_SESSION['tablename']['users'] = utf8_decode((string) $TABLENAME->users);
$_SESSION['tablename']['user_abs'] = utf8_decode((string) $TABLENAME->user_abs);
$_SESSION['tablename']['services'] = utf8_decode((string) $TABLENAME->services);
}
/* if(file_exists($_SESSION['config']['lang'].'.php'))
{
include($_SESSION['config']['lang'].'.php');
}
else
{
$_SESSION['error'] = "Language file missing...
";
}*/
include("fr.php");
require_once($_SESSION['config']['MaarchDirectory']."class_functions.php");
require_once($_SESSION['config']['MaarchDirectory']."class_db.php");
$func = new functions();
$db = new dbquery();
$db->connect();
$db2 = new dbquery();
$db2->connect();
$db->query("SELECT DISTINCT USER_ID, MAIL, ELU, LASTNAME, FIRSTNAME FROM ".$_SESSION['tablename']['users']." where ENABLED = 'Y'");
$datedujour=date("Y-m-d") ;;
$date = Array('annee'=>date('Y'), 'mois'=>date('m'), 'jour'=>date('d'));
$N = -1;
$time = mktime(00, 00, 00, $date['mois'], $date['jour']+$N, $date['annee']);
$dansNjours = date('Y-m-d', $time);
$dansNjours = str_replace("-", "", $dansNjours );
$time18= "22:00:00";
$date = $dansNjours.$time18;
$date = str_replace(":", "", $date);
$users = array();
$the_res = array();
while($res = $db->fetch_object())
{
//on vérifie que l'user n'est pas absent
$db2->query("select u.MAIL, ua.NEW_USER from ".$_SESSION['tablename']['users']." u, ".$_SESSION['tablename']['user_abs']." ua where u.USER_ID = ua.NEW_USER and ua.USER_ABS = '".$res->USER_ID."'");
if($db2->nb_result() < 1)
{
array_push($users, array( 'ID' => $res->USER_ID, 'MAIL' => $res->MAIL, 'NOM' => $res->LASTNAME, 'PRENOM' => $res->FIRSTNAME,'ELU' => $res->ELU,'IS_ABS' => false));
}
else
{
$res2 = $db2->fetch_object();
array_push($users, array( 'ID' => $res->USER_ID, 'MAIL' => $res->MAIL, 'NOM' => $res->LASTNAME, 'PRENOM' => $res->FIRSTNAME, 'ELU' => $res->ELU, 'IS_ABS' => true, 'MAIL_ACTIF' => $res2->MAIL, 'ID_ACTIF' => $res2->NEW_USER));
}
}
for($i=0; $i < count($users); $i++)
{
// requete pour les destinataires principaux
$db->query("select DEST_USER, CUSTOM_T3, AUTHOR, CUSTOM_T4, TYPE_ID, DESCRIPTION, date_format(date(CUSTOM_D2), '%d-%m-%Y') as DATE_LIM, date_format(date(CREATION_DATE), '%d-%m-%Y') as DATE_CREA, IDENTIFIER, RES_ID from ".$table." where DEST_USER ='".$users[$i]['ID']."' and (STATUS = 'NEW' or STATUS = 'COU') and date(CUSTOM_D5) = '".$datedujour."' ");
$res_trait = "";
if($_SESSION['config']['debug'] == "true")
{
echo "\nrequete 1 : ";
$db->show();
echo "\n nb resultat : ".$db->nb_result()."\n";
}
if($db->nb_result() > 0)
{
if($users[$i]['IS_ABS'])
{
$mail_trait = "
"._HELLO.",
"._YOU_ARE_LATE." "._OF." ".$users[$i]['NOM']." ".$users[$i]['PRENOM']." :
"._HELLO.",
"._YOU_ARE_LATE." :
"._PROCESS_THIS_MAIL_QUICKLY.".
"; if($users[$i]['IS_ABS']) { $mail = $users[$i]['MAIL_ACTIF']; } else { $mail = $users[$i]['MAIL']; } if($_SESSION['config']['debug'] == "true") { $msg = "\n"._USER." : ".$users[$i]['NOM']." ".$users[$i]['PRENOM']."\n"._MAIL." : ".$mail."\n"._PROCESS_MAIL." : \n".$mail_trait."\n"; echo "\n\n".$msg."\n\n"; } mail($mail, _SECOND_WARNING." - "._LATE, $mail_trait , "From: ".$_SESSION['config']['mail']."\nReply-To: ".$_SESSION['config']['mail']." \nContent-Type: text/html; charset=\"iso-8859-1\"\n"); } // requete pour les destinataires en copies $db->query("select r.DEST_USER, l.USER_ID, r.CUSTOM_T3, r.AUTHOR, r.CUSTOM_T4, r.TYPE_ID, r.DESCRIPTION, date_format(date(r.CUSTOM_D2), '%d-%m-%Y') as DATE_LIM, date_format( date(r.CREATION_DATE), '%d-%m-%Y') as DATE_CREA, r.IDENTIFIER, r.RES_ID, l.SEQUENCE from ".$table." r, ".$_SESSION['tablename']['listinstance']." l where l.USER_ID ='".$users[$i]['ID']."' and (r.STATUS = 'NEW' or r.STATUS = 'COU') and date(r.CUSTOM_D5) = '".$datedujour."' and l.RES_ID=r.RES_ID and l.SEQUENCE > 1 and r.IS_FOLDER = 'Y' and r.FLAG_RELANCE2 = 'N' order by DEST_USER"); $res_copies = ""; if($_SESSION['config']['debug'] == "true") { echo "\nrequete 2 : "; $db->show(); echo "\n nb resultat : ".$db->nb_result()."\n"; } if($db->nb_result() > 0) { $mail_copies = ""._HELLO.",
"._FOLLOWING_MAIL_ARE_LATE." :