Débuggage et améliorations divers du modules adhérents

This commit is contained in:
Laurent Destailleur 2005-08-11 18:24:58 +00:00
parent 4164a70d94
commit f8be595425
7 changed files with 661 additions and 512 deletions

View File

@ -52,6 +52,8 @@ class Adherent
var $adresse; var $adresse;
var $cp; var $cp;
var $ville; var $ville;
var $pays_id;
var $pays_code;
var $pays; var $pays;
var $typeid; var $typeid;
var $morphy; var $morphy;
@ -98,6 +100,7 @@ class Adherent
\remarks %INFOS% : l'ensemble des attributs de cet adherent \remarks %INFOS% : l'ensemble des attributs de cet adherent
\remarks %SERVEUR% : URL du serveur web \remarks %SERVEUR% : URL du serveur web
\remarks etc.. \remarks etc..
\todo Utiliser classe CMailFile
*/ */
function send_an_email($recipients,$text,$subject="Vos coordonnees sur %SERVEUR%") function send_an_email($recipients,$text,$subject="Vos coordonnees sur %SERVEUR%")
@ -169,21 +172,22 @@ class Adherent
/** /**
\brief fonction qui renvoie la nature physique ou morale d'un adherent \brief Renvoie le libelle traduit de la nature d'un adherent (physique ou morale)
\param morphy nature physique ou morale de l'adhérent \param morphy Nature physique ou morale de l'adhérent
*/ */
function getmorphylib($morphy='') function getmorphylib($morphy='')
{ {
global $langs;
if (! $morphy) { $morphy=$this->morphy; } if (! $morphy) { $morphy=$this->morphy; }
if ($morphy == 'phy') { return "Physique"; } if ($morphy == 'phy') { return $langs->trans("Physical"); }
if ($morphy == 'mor') { return "Morale"; } if ($morphy == 'mor') { return $langs->trans("Moral"); }
return $morphy; return $morphy;
} }
/** /**
\brief fonction qui vérifie les données entrées \brief Vérifie les données entrées
\param minimum \param minimum
*/ */
function check($minimum=0) function check($minimum=0)
@ -318,8 +322,8 @@ class Adherent
function update() function update()
{ {
$sql = "UPDATE ".MAIN_DB_PREFIX."adherent SET "; $sql = "UPDATE ".MAIN_DB_PREFIX."adherent SET";
$sql .= "prenom = '".$this->prenom ."'"; $sql .= " prenom = '".$this->prenom ."'";
$sql .= ",nom='" .$this->nom."'"; $sql .= ",nom='" .$this->nom."'";
$sql .= ",societe='".$this->societe."'"; $sql .= ",societe='".$this->societe."'";
$sql .= ",adresse='".$this->adresse."'"; $sql .= ",adresse='".$this->adresse."'";
@ -330,7 +334,8 @@ class Adherent
$sql .= ",email='" .$this->email."'"; $sql .= ",email='" .$this->email."'";
$sql .= ",login='" .$this->login."'"; $sql .= ",login='" .$this->login."'";
$sql .= ",pass='" .$this->pass."'"; $sql .= ",pass='" .$this->pass."'";
$sql .= ",naiss='" .$this->naiss."'"; if ($this->naiss) $sql .= ",naiss='" .$this->naiss."'";
else $sql .= ",naiss=null";
$sql .= ",photo='" .$this->photo."'"; $sql .= ",photo='" .$this->photo."'";
$sql .= ",public='" .$this->public."'"; $sql .= ",public='" .$this->public."'";
$sql .= ",statut=" .$this->statut; $sql .= ",statut=" .$this->statut;
@ -454,55 +459,61 @@ class Adherent
} }
/** /**
\brief fonction qui récupére l'adhérent en donnant son rowid \brief fonction qui récupére l'adhérent en donnant son rowid
\param rowid \param rowid
*/ */
function fetch($rowid) function fetch($rowid)
{ {
$sql = "SELECT d.rowid, d.prenom, d.nom, d.societe, d.statut, d.public, d.adresse, d.cp, d.ville, d.pays, d.note, d.email, d.login, d.pass, d.naiss, d.photo, d.fk_adherent_type, d.morphy, t.libelle as type"; global $langs;
$sql .= ",".$this->db->pdate("d.datefin")." as datefin";
$sql .= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."adherent_type as t"; $sql = "SELECT d.rowid, d.prenom, d.nom, d.societe, d.statut, d.public, d.adresse, d.cp, d.ville, d.note, d.email, d.login, d.pass, d.naiss, d.photo, d.fk_adherent_type, d.morphy, t.libelle as type";
$sql .= " WHERE d.rowid = $rowid AND d.fk_adherent_type = t.rowid"; $sql .= ",".$this->db->pdate("d.datefin")." as datefin";
$sql .= ", d.pays, p.rowid as pays_id, p.code as pays_code, p.libelle as pays_lib";
$result=$this->db->query( $sql); $sql .= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."adherent_type as t";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_pays as p ON d.pays = p.rowid";
if ($result) $sql .= " WHERE d.rowid = $rowid AND d.fk_adherent_type = t.rowid";
{
if ($this->db->num_rows())
{
$obj = $this->db->fetch_object($result);
$this->id = $obj->rowid;
$this->typeid = $obj->fk_adherent_type;
$this->type = $obj->type;
$this->statut = $obj->statut;
$this->public = $obj->public;
$this->date = $obj->datedon;
$this->prenom = stripslashes($obj->prenom);
$this->nom = stripslashes($obj->nom);
$this->societe = stripslashes($obj->societe);
$this->adresse = stripslashes($obj->adresse);
$this->cp = stripslashes($obj->cp);
$this->ville = stripslashes($obj->ville);
$this->email = stripslashes($obj->email);
$this->login = stripslashes($obj->login);
$this->pass = stripslashes($obj->pass);
$this->naiss = stripslashes($obj->naiss);
$this->photo = stripslashes($obj->photo);
$this->pays = stripslashes($obj->pays);
$this->datefin = $obj->datefin;
$this->commentaire = stripslashes($obj->note);
$this->morphy = $obj->morphy;
}
}
else
{
dolibarr_print_error($this->db);
}
} $result=$this->db->query( $sql);
if ($result)
{
if ($this->db->num_rows($result))
{
$obj = $this->db->fetch_object($result);
$this->id = $obj->rowid;
$this->typeid = $obj->fk_adherent_type;
$this->type = $obj->type;
$this->statut = $obj->statut;
$this->public = $obj->public;
$this->date = $obj->datedon;
$this->prenom = stripslashes($obj->prenom);
$this->nom = stripslashes($obj->nom);
$this->societe = stripslashes($obj->societe);
$this->adresse = stripslashes($obj->adresse);
$this->cp = stripslashes($obj->cp);
$this->ville = stripslashes($obj->ville);
$this->pays_id = $obj->pays_id;
$this->pays_code = $obj->pays_code;
if ($langs->trans("Country".$obj->pays_code) != "Country".$obj->pays_code) $this->pays = $langs->trans("Country".$obj->pays_code);
elseif ($obj->pays_lib) $this->pays=$obj->pays_lib;
else $this->pays=$obj->pays;
$this->email = stripslashes($obj->email);
$this->login = stripslashes($obj->login);
$this->pass = stripslashes($obj->pass);
$this->naiss = stripslashes($obj->naiss);
$this->photo = stripslashes($obj->photo);
$this->datefin = $obj->datefin;
$this->commentaire = stripslashes($obj->note);
$this->morphy = $obj->morphy;
}
}
else
{
dolibarr_print_error($this->db);
}
}
/** /**
@ -580,49 +591,57 @@ class Adherent
} }
/** /**
\brief fonction qui insère la cotisation dans la base de données \brief Fonction qui insère la cotisation dans la base de données
\param date \param date Date cotisation
\param montant \param montant Montant cotisation
*/ \return int rowid de l'entrée ajoutée, <0 si erreur
*/
function cotisation($date, $montant) function cotisation($date, $montant)
{
$sql = "INSERT INTO ".MAIN_DB_PREFIX."cotisation (fk_adherent, dateadh, cotisation)";
$sql .= " VALUES ($this->id, ".$this->db->idate($date).", $montant)";
$result=$this->db->query( $sql);
if ($result)
{ {
if ( $this->db->affected_rows() ) $this->db->begin();
$sql = "INSERT INTO ".MAIN_DB_PREFIX."cotisation (fk_adherent, datec, dateadh, cotisation)";
$sql .= " VALUES ($this->id, now(), ".$this->db->idate($date).", $montant)";
$result=$this->db->query($sql);
if ($result)
{ {
$rowid=$this->db->last_insert_id(MAIN_DB_PREFIX."cotisation"); if ( $this->db->affected_rows($result) )
$datefin = mktime(12, 0 , 0,
strftime("%m",$date),
strftime("%d",$date),
strftime("%Y",$date)+1) - (24 * 3600);
$sql = "UPDATE ".MAIN_DB_PREFIX."adherent SET datefin = ".$this->db->idate($datefin)." WHERE rowid =". $this->id;
if ( $this->db->query( $sql) )
{ {
return $rowid; $rowid=$this->db->last_insert_id(MAIN_DB_PREFIX."cotisation");
$datefin = mktime(12, 0 , 0,
strftime("%m",$date),
strftime("%d",$date),
strftime("%Y",$date)+1) - (24 * 3600);
$sql = "UPDATE ".MAIN_DB_PREFIX."adherent SET datefin = ".$this->db->idate($datefin)." WHERE rowid =". $this->id;
if ( $this->db->query( $sql) )
{
$this->db->commit();
return $rowid;
}
else
{
$this->error=$this->db->error();
$this->db->rollback();
return -3;
}
}
else
{
$this->error=$this->db->error();
$this->db->rollback();
return -2;
} }
} }
else else
{ {
return 0; $this->error=$this->db->error();
$this->db->rollback();
return -1;
} }
} }
else
{
dolibarr_print_error($this->db);
return 0;
}
}
/** /**
\brief fonction qui vérifie que l'utilisateur est valide \brief fonction qui vérifie que l'utilisateur est valide

View File

@ -30,118 +30,95 @@
*/ */
require("./pre.inc.php"); require("./pre.inc.php");
require_once(DOL_DOCUMENT_ROOT."/compta/bank/account.class.php"); require_once(DOL_DOCUMENT_ROOT."/compta/bank/account.class.php");
$sortorder=$_GET["sortorder"];
$sortfield=$_GET["sortfield"];
$page=$_GET["page"];
$filter=$_GET["filter"];
$statut=isset($_GET["statut"])?$_GET["statut"]:1;
if (! $sortorder) { $sortorder="DESC"; }
if (! $sortfield) { $sortfield="c.dateadh"; }
if ($page == -1) { $page = 0 ; }
$offset = $conf->liste_limit * $page ;
$pageprev = $page - 1;
$pagenext = $page + 1;
$date_select=isset($_GET["date_select"])?$_GET["date_select"]:$_POST["date_select"];
// Insertion de la cotisation dans le compte banquaire
if ($_POST["action"] == '2bank' && $_POST["rowid"] !='')
{
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0)
{
// \todo Créer une facture et enregistrer son paiement
$dateop=strftime("%Y%m%d",time());
$sql="SELECT cotisation FROM ".MAIN_DB_PREFIX."cotisation WHERE rowid=".$_POST["rowid"]." ";
$result = $db->query($sql);
if ($result)
{
$num = $db->num_rows($result);
if ($num>0)
{
$objp = $db->fetch_object($result);
$amount=$objp->cotisation;
$acct=new Account($db,ADHERENT_BANK_ACCOUNT);
$insertid=$acct->addline($dateop, $_POST["operation"], $_POST["label"], $amount, $_POST["num_chq"],ADHERENT_BANK_CATEGORIE,$user);
if ($insertid == '')
{
dolibarr_print_error($db);
}
else
{
// met a jour la table cotisation
$sql="UPDATE ".MAIN_DB_PREFIX."cotisation SET fk_bank=$insertid WHERE rowid=".$_POST["rowid"]." ";
$result = $db->query($sql);
if ($result)
{
//Header("Location: cotisations.php");
}
else
{
dolibarr_print_error($db);
}
}
}
else
{
dolibarr_print_error($db);
}
}
else
{
dolibarr_print_error($db);
}
}
}
llxHeader(); llxHeader();
// \todo Cette partie de code semble non utilisée $params="&amp;select_date=".$select_date;
if ($action == 'add') { print_barre_liste($langs->trans("ListOfSubscriptions"), $page, "cotisations.php", $params, $sortfield, $sortorder,'',$num);
$datepaye = $db->idate(mktime(12, 0 , 0, $pmonth, $pday, $pyear));
$paiement = new Paiement($db);
$paiement->facid = $facid;
$paiement->datepaye = $datepaye;
$paiement->amount = $amount;
$paiement->author = $author;
$paiement->paiementid = $paiementid;
$paiement->num_paiement = $num_paiement;
$paiement->note = $note;
$paiement->create();
$action = '';
}
// Insertion de la cotisation dans le compte banquaire // Liste des cotisations
if ($_POST["action"] == '2bank' && $_POST["rowid"] !=''){ $sql = "SELECT d.rowid, d.prenom, d.nom, d.societe, b.fk_account,";
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0){ $sql.= " c.cotisation, ".$db->pdate("c.dateadh")." as dateadh, c.fk_bank as bank, c.rowid as crowid,";
$sql.= " b.fk_account";
// \todo Créer une facture et enregistrer son paiement $sql.= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."cotisation as c";
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."bank as b ON c.fk_bank=b.rowid";
$sql.= " WHERE d.rowid = c.fk_adherent";
$dateop=strftime("%Y%m%d",time());
$sql="SELECT cotisation FROM ".MAIN_DB_PREFIX."cotisation WHERE rowid=".$_POST["rowid"]." ";
$result = $db->query($sql);
if ($result)
{
$num = $db->num_rows();
if ($num>0)
{
$objp = $db->fetch_object($result);
$amount=$objp->cotisation;
$acct=new Account($db,ADHERENT_BANK_ACCOUNT);
$insertid=$acct->addline($dateop, $_POST["operation"], $_POST["label"], $amount, $_POST["num_chq"],ADHERENT_BANK_CATEGORIE,$user);
if ($insertid == '')
{
dolibarr_print_error($db);
}
else
{
// met a jour la table cotisation
$sql="UPDATE ".MAIN_DB_PREFIX."cotisation SET fk_bank=$insertid WHERE rowid=".$_POST["rowid"]." ";
$result = $db->query($sql);
if ($result)
{
//Header("Location: cotisations.php");
}
else
{
dolibarr_print_error($db);
}
}
}
else
{
dolibarr_print_error($db);
}
}
else
{
dolibarr_print_error($db);
}
}
}
if ($sortorder == "") { $sortorder="DESC"; }
if ($sortfield == "") { $sortfield="c.dateadh"; }
if ($page == -1) { $page = 0 ; }
$offset = $conf->liste_limit * $page ;
$pageprev = $page - 1;
$pagenext = $page + 1;
$sql = "SELECT c.cotisation, ".$db->pdate("c.dateadh")." as dateadh";
$sql .= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."cotisation as c";
$sql .= " WHERE d.rowid = c.fk_adherent";
if(isset($date_select) && $date_select != ''){
$sql .= " AND dateadh LIKE '$date_select%'";
}
$result = $db->query($sql);
$Total=array();
$Number=array();
if ($result)
{
$num = $db->num_rows();
$i = 0;
while ($i < $num)
{
$objp = $db->fetch_object($result);
$Total[strftime("%Y",$objp->dateadh)]+=price($objp->cotisation);
$Number[strftime("%Y",$objp->dateadh)]+=1;
$i++;
}
}
$sql = "SELECT d.rowid, d.prenom, d.nom, d.societe, c.cotisation, ".$db->pdate("c.dateadh")." as dateadh, c.fk_bank as bank, c.rowid as crowid";
$sql .= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."cotisation as c";
$sql .= " WHERE d.rowid = c.fk_adherent";
if(isset($date_select) && $date_select != ''){ if(isset($date_select) && $date_select != ''){
$sql .= " AND dateadh LIKE '$date_select%'"; $sql .= " AND dateadh LIKE '$date_select%'";
} }
@ -152,86 +129,66 @@ if ($result)
{ {
$num = $db->num_rows($result); $num = $db->num_rows($result);
$i = 0; $i = 0;
print_barre_liste($langs->trans("ListOfSubscriptions"), $page, "cotisations.php", "&statut=$statut&sortorder=$sortorder&sortfield=$sortfield");
print "<table class=\"noborder\">\n";
print '<tr class="liste_titre">';
print '<td>'.$langs->trans("Year").'</td>';
print '<td align="right">'.$langs->trans("Amount").'</td>';
print '<td align="right">'.$langs->trans("Number").'</td>';
print '<td align="right">'.$langs->trans("Average").'</td>';
print "</tr>\n";
foreach ($Total as $key=>$value){
$var=!$var;
print "<tr $bc[$var]><td><A HREF=\"cotisations.php?statut=$statut&date_select=$key\">$key</A></td><td align=\"right\">".price($value)."</td><td align=\"right\">".$Number[$key]."</td><td align=\"right\">".price($value/$Number[$key])."</td></tr>\n";
}
print "</table><br>\n";
// Liste des cotisations
print '<table class="noborder" width="100%">'; print '<table class="noborder" width="100%">';
print '<tr class="liste_titre">'; print '<tr class="liste_titre">';
print_liste_field_titre($langs->trans("Name"),"cotisations.php","d.nom","&page=$page&statut=$statut"); print_liste_field_titre($langs->trans("Date"),"cotisations.php","c.dateadh","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("Date"),"cotisations.php","c.dateadh","&page=$page&statut=$statut"); print_liste_field_titre($langs->trans("Name"),"cotisations.php","d.nom","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("Amount"),"cotisations.php","c.cotisation","&page=$page&statut=$statut","","align=\"right\""); print_liste_field_titre($langs->trans("Amount"),"cotisations.php","c.cotisation","&page=$page&statut=$statut","","align=\"right\"",$sortfield);
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0)
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0){ {
print '<td>'; print_liste_field_titre($langs->trans("Bank"),"cotisations.php","b.fk_account","&page=$page&statut=$statut","","",$sortfield);
// print_liste_field_titre("Bank","cotisations.php","c.fk_bank","&page=$page&statut=$statut");
print 'Bank<br>(Type,Numéro,Libelle)';
print "</td>\n";
} }
print "</tr>\n"; print "</tr>\n";
$var=true; $var=true;
$total=0; $total=0;
while ($i < $num) while ($i < $num)
{
$objp = $db->fetch_object($result);
$total+=price($objp->cotisation);
$var=!$var;
print "<tr $bc[$var]>";
print "<td>".dolibarr_print_date($objp->dateadh)."</td>\n";
print "<td><a href=\"fiche.php?rowid=$objp->rowid&action=edit\">".img_object($langs->trans("ShowMember"),"user").' '.stripslashes($objp->prenom)." ".stripslashes($objp->nom)."</a></td>\n";
print '<td align="right">'.price($objp->cotisation).'</td>';
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0)
{ {
$objp = $db->fetch_object($result); if ($objp->fk_account)
$total+=price($objp->cotisation); {
$acc=new Account($db);
$var=!$var; $acc->fetch($objp->fk_account);
print "<tr $bc[$var]>"; print '<td><a href="'.DOL_URL_ROOT.'/compta/bank/account.php?account='.$objp->fk_account.'">'.$acc->label.'</a></td>';
print "<td><a href=\"fiche.php?rowid=$objp->rowid&action=edit\">".stripslashes($objp->prenom)." ".stripslashes($objp->nom)."</a></td>\n"; }
print "<td>".strftime("%d %B %Y",$objp->dateadh)."</td>\n"; else
print '<td align="right">'.price($objp->cotisation).'</td>'; {
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0){ print "<td>";
if ($objp->bank !='' ){ print "<form method=\"post\" action=\"cotisations.php\">";
print "<td>Deposé</td>"; print '<input type="hidden" name="action" value="2bank">';
}else{ print '<input type="hidden" name="rowid" value="'.$objp->crowid.'">';
print "<td>"; $html = new Form($db);
print "<form method=\"post\" action=\"cotisations.php\">"; $html->select_types_paiements();
print '<input type="hidden" name="action" value="2bank">'; print '<input name="num_chq" type="text" size="6">&nbsp;-&nbsp;';
print '<input type="hidden" name="rowid" value="'.$objp->crowid.'">'; print "<input name=\"label\" type=\"text\" size=20 value=\"".$langs->trans("Subscriptions").' '.stripslashes($objp->prenom)." ".stripslashes($objp->nom)." ".strftime("%Y",$objp->dateadh)."\" >\n";
print '<select name="operation">'; // print "<td><input name=\"debit\" type=\"text\" size=8></td>";
print '<option value="CHQ" selected>CHQ'; // print "<td><input name=\"credit\" type=\"text\" size=8></td>";
print '<option value="CB">CB'; print '<input type="submit" value="'.$langs->trans("Save").'">';
print '<option value="DEP">DEP'; print "</form>\n";
print '<option value="TIP">TIP'; print "</td>\n";
print '<option value="PRE">PRE'; }
print '<option value="VIR">VIR';
print '</select>';
print '<input name="num_chq" type="text" size="6">&nbsp;-&nbsp;';
print "<input name=\"label\" type=\"text\" size=20 value=\"Cotisation ".stripslashes($objp->prenom)." ".stripslashes($objp->nom)." ".strftime("%Y",$objp->dateadh)."\" >\n";
// print "<td><input name=\"debit\" type=\"text\" size=8></td>";
// print "<td><input name=\"credit\" type=\"text\" size=8></td>";
print '<input type="submit" value="Dépot">';
print "</form>\n";
print "</td>\n";
}
}
print "</tr>";
$i++;
} }
print "</tr>";
$i++;
}
$var=!$var; $var=!$var;
print "<tr $bc[$var]>"; print '<tr class="liste_total">';
print "<td>".$langs->trans("Total")."</td>\n"; print "<td>".$langs->trans("Total")."</td>\n";
print "<td align=\"right\">&nbsp;</td>\n"; print "<td align=\"right\">&nbsp;</td>\n";
print "<td align=\"right\">".price($total)."</td>\n"; print "<td align=\"right\">".price($total)."</td>\n";
print '<td>&nbsp;</td>';
print "</tr>\n"; print "</tr>\n";
print "</table>"; print "</table>";
print "<br>\n"; print "<br>\n";
@ -246,5 +203,5 @@ else
$db->close(); $db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>"); llxFooter('$Date$ - $Revision$');
?> ?>

View File

@ -1,7 +1,7 @@
<?php <?php
/* Copyright (C) 2001-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org> /* Copyright (C) 2001-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2002 Jean-Louis Bergamo <jlb@j1b.org> * Copyright (C) 2002 Jean-Louis Bergamo <jlb@j1b.org>
* Copyright (C) 2004 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2004-2005 Laurent Destailleur <eldy@users.sourceforge.net>
* *
* This program is free software; you can redistribute it and/or modify * 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 * it under the terms of the GNU General Public License as published by
@ -128,7 +128,19 @@ if ($rowid)
$adht = new AdherentType($db); $adht = new AdherentType($db);
print_titre($langs->trans("EditMember"));
/*
* Affichage onglets
*/
$h = 0;
$head[$h][0] = DOL_URL_ROOT.'/adherents/fiche.php?rowid='.$rowid;
$head[$h][1] = $langs->trans("MemberCard");
$hselected=$h;
$h++;
dolibarr_fiche_head($head, $hselected, $adh->fullname);
print "<form action=\"edit.php\" method=\"post\">"; print "<form action=\"edit.php\" method=\"post\">";
print '<table class="border" width="100%">'; print '<table class="border" width="100%">';
@ -147,10 +159,10 @@ if ($rowid)
print '<td valign="top" width="50%">'.$langs->trans("Comments").'</td></tr>'; print '<td valign="top" width="50%">'.$langs->trans("Comments").'</td></tr>';
$morphys["phy"] = "Physique"; $morphys["phy"] = $langs->trans("Physical");
$morphys["mor"] = "Morale"; $morphys["mor"] = $langs->trans("Morale");
print "<tr><td>Personne</td><td>"; print "<tr><td>".$langs->trans("Person")."</td><td>";
$htmls->select_array("morphy", $morphys, $adh->morphy); $htmls->select_array("morphy", $morphys, $adh->morphy);
print "</td>"; print "</td>";
@ -164,13 +176,15 @@ if ($rowid)
print '<tr><td>'.$langs->trans("Company").'</td><td><input type="text" name="societe" size="40" value="'.$adh->societe.'"></td></tr>'; print '<tr><td>'.$langs->trans("Company").'</td><td><input type="text" name="societe" size="40" value="'.$adh->societe.'"></td></tr>';
print '<tr><td>'.$langs->trans("Address").'</td><td>'; print '<tr><td>'.$langs->trans("Address").'</td><td>';
print '<textarea name="adresse" wrap="soft" cols="40" rows="3">'.$adh->adresse.'</textarea></td></tr>'; print '<textarea name="adresse" wrap="soft" cols="40" rows="2">'.$adh->adresse.'</textarea></td></tr>';
print '<tr><td>'.$langs->trans("Zip").'/'.$langs->trans("Town").'</td><td><input type="text" name="cp" size="6" value="'.$adh->cp.'"> <input type="text" name="ville" size="20" value="'.$adh->ville.'"></td></tr>'; print '<tr><td>'.$langs->trans("Zip").'/'.$langs->trans("Town").'</td><td><input type="text" name="cp" size="6" value="'.$adh->cp.'"> <input type="text" name="ville" size="20" value="'.$adh->ville.'"></td></tr>';
print '<tr><td>'.$langs->trans("Country").'</td><td><input type="text" name="pays" size="40" value="'.$adh->pays.'"></td></tr>'; print '<tr><td>'.$langs->trans("Country").'</td><td>';
$htmls->select_pays($adh->pays_id?$adh->pays_id:MAIN_INFO_SOCIETE_PAYS,'pays');
print '</td></tr>';
print '<tr><td>'.$langs->trans("EMail").'</td><td><input type="text" name="email" size="40" value="'.$adh->email.'"></td></tr>'; print '<tr><td>'.$langs->trans("EMail").'</td><td><input type="text" name="email" size="40" value="'.$adh->email.'"></td></tr>';
print '<tr><td>'.$langs->trans("Login").'</td><td><input type="text" name="login" size="40" value="'.$adh->login.'"></td></tr>'; print '<tr><td>'.$langs->trans("Login").'</td><td><input type="text" name="login" size="40" value="'.$adh->login.'"></td></tr>';
print '<tr><td>'.$langs->trans("Password").'</td><td><input type="password" name="pass" size="40" value="'.$adh->pass.'"></td></tr>'; print '<tr><td>'.$langs->trans("Password").'</td><td><input type="password" name="pass" size="40" value="'.$adh->pass.'"></td></tr>';
print '<tr><td>'.$langs->trans("Birthday").'<BR>Format AAAA-MM-JJ</td><td><input type="text" name="naiss" size="40" value="'.$adh->naiss.'"></td></tr>'; print '<tr><td>'.$langs->trans("Birthday").'</td><td><input type="text" name="naiss" size="10" value="'.$adh->naiss.'"> ('.$langs->trans("DateFormatYYYYMMDD").')</td></tr>';
print '<tr><td>URL photo</td><td><input type="text" name="photo" size="40" value="'.$adh->photo.'"></td></tr>'; print '<tr><td>URL photo</td><td><input type="text" name="photo" size="40" value="'.$adh->photo.'"></td></tr>';
// $myattr=$adho->fetch_name_optionals(); // $myattr=$adho->fetch_name_optionals();
foreach($adho->attribute_label as $key=>$value){ foreach($adho->attribute_label as $key=>$value){
@ -181,12 +195,13 @@ if ($rowid)
print '<input type="submit" name="bouton" value="'.$langs->trans("Save").'">&nbsp;'; print '<input type="submit" name="bouton" value="'.$langs->trans("Save").'">&nbsp;';
print '<input type="submit" value="'.$langs->trans("Cancel").'">'; print '<input type="submit" value="'.$langs->trans("Cancel").'">';
print '</td></tr>'; print '</td></tr>';
print '</form>';
print '</table>'; print '</table>';
print '</form>';
print '</div>';
} }
$db->close(); $db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>"); llxFooter('$Date$ - $Revision$');
?> ?>

View File

@ -67,27 +67,30 @@ if ($_POST["action"] == 'cotisation')
$adh = new Adherent($db); $adh = new Adherent($db);
$adh->id = $rowid; $adh->id = $rowid;
$adh->fetch($rowid); $adh->fetch($rowid);
if ($cotisation >= 0) if ($cotisation > 0)
{ {
$db->begin();
// rajout du nouveau cotisant dans les listes qui vont bien // rajout du nouveau cotisant dans les listes qui vont bien
// if (defined("ADHERENT_MAILMAN_LISTS_COTISANT") && ADHERENT_MAILMAN_LISTS_COTISANT!='' && $adh->datefin == "0000-00-00 00:00:00"){ // if (defined("ADHERENT_MAILMAN_LISTS_COTISANT") && ADHERENT_MAILMAN_LISTS_COTISANT!='' && $adh->datefin == "0000-00-00 00:00:00"){
if (defined("ADHERENT_MAILMAN_LISTS_COTISANT") && ADHERENT_MAILMAN_LISTS_COTISANT!='' && $adh->datefin == 0){ if (defined("ADHERENT_MAILMAN_LISTS_COTISANT") && ADHERENT_MAILMAN_LISTS_COTISANT!='' && $adh->datefin == 0){
$adh->add_to_mailman(ADHERENT_MAILMAN_LISTS_COTISANT); $adh->add_to_mailman(ADHERENT_MAILMAN_LISTS_COTISANT);
} }
$crowid=$adh->cotisation(mktime(12, 0 , 0, $remonth, $reday, $reyear), $cotisation); $crowid=$adh->cotisation(mktime(12, 0 , 0, $remonth, $reday, $reyear), $cotisation);
if (defined("ADHERENT_MAIL_COTIS") && defined("ADHERENT_MAIL_COTIS_SUBJECT")){
$adh->send_an_email($adh->email,ADHERENT_MAIL_COTIS,ADHERENT_MAIL_COTIS_SUBJECT);
}
// insertion dans la gestion banquaire si configure pour // insertion dans la gestion banquaire si configure pour
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0 && if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE)
defined("ADHERENT_BANK_USE_AUTO") && ADHERENT_BANK_USE_AUTO !=0){ {
$acct=new Account($db,$_POST["accountid"]);
$dateop=strftime("%Y%m%d",time()); $dateop=strftime("%Y%m%d",time());
$amount=$cotisation; $amount=$cotisation;
$acct=new Account($db,ADHERENT_BANK_ACCOUNT); $insertid=$acct->addline($dateop, $_POST["operation"], $_POST["label"], $amount, $_POST["num_chq"], '', $user);
$insertid=$acct->addline($dateop, $_POST["operation"], $_POST["label"], $amount, $_POST["num_chq"],ADHERENT_BANK_CATEGORIE,$user); if ($insertid <= 0)
if ($insertid == '')
{ {
dolibarr_print_error($db); $db->rollback();
dolibarr_print_error($db,$acct->error);
} }
else else
{ {
@ -96,14 +99,25 @@ if ($_POST["action"] == 'cotisation')
$result = $db->query($sql); $result = $db->query($sql);
if ($result) if ($result)
{ {
$db->commit();
//Header("Location: fiche.php"); //Header("Location: fiche.php");
} }
else else
{ {
$db->rollback();
dolibarr_print_error($db); dolibarr_print_error($db);
} }
} }
} }
else
{
$db->commit();
}
if (defined("ADHERENT_MAIL_COTIS") && defined("ADHERENT_MAIL_COTIS_SUBJECT")){
$adh->send_an_email($adh->email,ADHERENT_MAIL_COTIS,ADHERENT_MAIL_COTIS_SUBJECT);
}
} }
$action = "edit"; $action = "edit";
} }
@ -117,13 +131,13 @@ if ($_POST["action"] == 'add')
$adresse=$_POST["adresse"]; $adresse=$_POST["adresse"];
$cp=$_POST["cp"]; $cp=$_POST["cp"];
$ville=$_POST["ville"]; $ville=$_POST["ville"];
$naiss=$_POST["pays"]; $pays=$_POST["pays"];
$email=$_POST["email"]; $email=$_POST["email"];
$login=$_POST["login"]; $login=$_POST["login"];
$pass=$_POST["pass"]; $pass=$_POST["pass"];
$naiss=$_POST["naiss"]; $naiss=$_POST["naiss"];
$naiss=$_POST["photo"]; $photo=$_POST["photo"];
$naiss=$_POST["note"]; $note=$_POST["note"];
$comment=$_POST["comment"]; $comment=$_POST["comment"];
$morphy=$_POST["morphy"]; $morphy=$_POST["morphy"];
$reday=$_POST["reday"]; $reday=$_POST["reday"];
@ -138,13 +152,13 @@ if ($_POST["action"] == 'add')
$adh->adresse = $adresse; $adh->adresse = $adresse;
$adh->cp = $cp; $adh->cp = $cp;
$adh->ville = $ville; $adh->ville = $ville;
$adh->pays = $pays;
$adh->email = $email; $adh->email = $email;
$adh->login = $login; $adh->login = $login;
$adh->pass = $pass; $adh->pass = $pass;
$adh->naiss = $naiss; $adh->naiss = $naiss;
$adh->photo = $photo; $adh->photo = $photo;
$adh->note = $note; $adh->note = $note;
$adh->pays = $pays;
$adh->typeid = $type; $adh->typeid = $type;
$adh->commentaire = $comment; $adh->commentaire = $comment;
$adh->morphy = $morphy; $adh->morphy = $morphy;
@ -202,8 +216,9 @@ if ($_POST["action"] == 'add')
} else { } else {
$public=0; $public=0;
} }
if (!$error) {
if (!$error)
{
// Email a peu pres correct et le login n'existe pas // Email a peu pres correct et le login n'existe pas
if ($adh->create($user->id)) if ($adh->create($user->id))
{ {
@ -211,12 +226,12 @@ if ($_POST["action"] == 'add')
{ {
$crowid=$adh->cotisation(mktime(12, 0 , 0, $remonth, $reday, $reyear), $cotisation); $crowid=$adh->cotisation(mktime(12, 0 , 0, $remonth, $reday, $reyear), $cotisation);
// insertion dans la gestion banquaire si configure pour // insertion dans la gestion banquaire si configure pour
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0 && if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE)
defined("ADHERENT_BANK_USE_AUTO") && ADHERENT_BANK_USE_AUTO !=0){ {
$dateop=strftime("%Y%m%d",time()); $dateop=strftime("%Y%m%d",time());
$amount=$cotisation; $amount=$cotisation;
$acct=new Account($db,ADHERENT_BANK_ACCOUNT); $acct=new Account($db,$_POST["accountid"]);
$insertid=$acct->addline($dateop, $_POST["operation"], $_POST["label"], $amount, $_POST["num_chq"],ADHERENT_BANK_CATEGORIE); $insertid=$acct->addline($dateop, $_POST["operation"], $_POST["label"], $amount, $_POST["num_chq"], '', $user);
if ($insertid == '') if ($insertid == '')
{ {
dolibarr_print_error($db); dolibarr_print_error($db);
@ -401,59 +416,58 @@ if ($action == 'create')
$htmls->select_array("morphy", $morphys); $htmls->select_array("morphy", $morphys);
print "</td>\n"; print "</td>\n";
print '<td valign="top" rowspan="13"><textarea name="comment" wrap="soft" cols="40" rows="25"></textarea></td></tr>'; print '<td valign="top" rowspan="12"><textarea name="comment" wrap="soft" cols="40" rows="16"></textarea></td></tr>';
print '<tr><td>'.$langs->trans("Firstname").'*</td><td><input type="text" name="prenom" size="40"></td></tr>'; print '<tr><td>'.$langs->trans("Firstname").'*</td><td><input type="text" name="prenom" size="40" value="'.$adh->prenom.'"></td></tr>';
print '<tr><td>'.$langs->trans("Lastname").'*</td><td><input type="text" name="nom" size="40"></td></tr>'; print '<tr><td>'.$langs->trans("Lastname").'*</td><td><input type="text" name="nom" value="'.$adh->nom.'" size="40"></td></tr>';
print '<tr><td>'.$langs->trans("Company").'</td><td><input type="text" name="societe" size="40"></td></tr>'; print '<tr><td>'.$langs->trans("Company").'</td><td><input type="text" name="societe" size="40" value="'.$adh->societe.'"></td></tr>';
print '<tr><td>'.$langs->trans("Address").'</td><td>'; print '<tr><td valign="top">'.$langs->trans("Address").'</td><td>';
print '<textarea name="adresse" wrap="soft" cols="40" rows="3"></textarea></td></tr>'; print '<textarea name="adresse" wrap="soft" cols="40" rows="2"></textarea></td></tr>';
print '<tr><td>'.$langs->trans("Zip").' / '.$langs->trans("Town").'</td><td><input type="text" name="cp" size="8"> <input type="text" name="ville" size="40"></td></tr>'; print '<tr><td>'.$langs->trans("Zip").' / '.$langs->trans("Town").'</td><td><input type="text" name="cp" size="8"> <input type="text" name="ville" size="40" value="'.$adh->ville.'"></td></tr>';
print '<tr><td>'.$langs->trans("Country").'</td><td><input type="text" name="pays" size="40"></td></tr>'; print '<tr><td>'.$langs->trans("Country").'</td><td>';
print '<tr><td>'.$langs->trans("EMail").(ADHERENT_MAIL_REQUIRED&&ADHERENT_MAIL_REQUIRED==1?'*':'').'</td><td><input type="text" name="email" size="40"></td></tr>'; $htmls->select_pays($adh->pays?$adh->pays:MAIN_INFO_SOCIETE_PAYS,'pays');
print '<tr><td>'.$langs->trans("Login").'*</td><td><input type="text" name="login" size="40"></td></tr>'; print '</td></tr>';
print '<tr><td>'.$langs->trans("Password").'*</td><td><input type="password" name="pass" size="40"></td></tr>'; print '<tr><td>'.$langs->trans("EMail").(ADHERENT_MAIL_REQUIRED&&ADHERENT_MAIL_REQUIRED==1?'*':'').'</td><td><input type="text" name="email" size="40" value="'.$adh->email.'"></td></tr>';
print '<tr><td>'.$langs->trans("Birthday").'<br>('.$langs->trans("DateFormatYYYYMMDD").')</td><td><input type="text" name="naiss" size="10"></td></tr>'; print '<tr><td>'.$langs->trans("Login").'*</td><td><input type="text" name="login" size="40" value="'.$adh->login.'"></td></tr>';
print '<tr><td>'.$langs->trans("Password").'*</td><td><input type="password" name="pass" size="40" value="'.$adh->password.'"></td></tr>';
print '<tr><td>'.$langs->trans("Birthday").'</td><td><input type="text" name="naiss" size="10"> ('.$langs->trans("DateFormatYYYYMMDD").')</td></tr>';
print '<tr><td>Url photo</td><td><input type="text" name="photo" size="40"></td></tr>'; print '<tr><td>Url photo</td><td><input type="text" name="photo" size="40"></td></tr>';
foreach($adho->attribute_label as $key=>$value){ foreach($adho->attribute_label as $key=>$value){
print "<tr><td>$value</td><td><input type=\"text\" name=\"options_$key\" size=\"40\"></td></tr>\n"; print "<tr><td>$value</td><td><input type=\"text\" name=\"options_$key\" size=\"40\"></td></tr>\n";
} }
print "</table>\n";
print '<br>';
// Boite cotisations
print '<table class="border" width="100%">';
print "<tr><td>".$langs->trans("DateSubscription")."</td><td>\n"; print "<tr><td>".$langs->trans("DateSubscription")."</td><td>\n";
$htmls->select_date(); $htmls->select_date();
print "</td></tr>\n"; print "</td></tr>\n";
print '<tr><td>Mode de paiment</td><td>';
print '<select name="operation">'; if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE)
print '<option value="CHQ" selected>Chèque'; {
print '<option value="CB">Carte Bleue'; print '<tr><td>'.$langs->trans("PaymentMode").'</td><td>';
print '<option value="DEP">Espece'; $htmls->select_types_paiements('','operation');
print '<option value="TIP">TIP'; print "</td></tr>\n";
print '<option value="PRE">PRE';
print '<option value="VIR">Virement';
print '</select>';
// $paiement = new Paiement($db);
// $paiement->select("modepaiement","crédit"); print '<tr><td>'.$langs->trans("FinancialAccount").'</td><td>';
$htmls->select_comptes('','accountid');
print "</td></tr>\n";
print "</td></tr>\n"; print '<tr><td>'.$langs->trans("Numero").'</td><td>';
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0 &&
defined("ADHERENT_BANK_USE_AUTO") && ADHERENT_BANK_USE_AUTO !=0){
print "<tr><td>Numero de cheque</td><td>\n";
print '<input name="num_chq" type="text" size="6">'; print '<input name="num_chq" type="text" size="6">';
print "</td></tr>\n"; print "</td></tr>\n";
}
print '<tr><td>'.$langs->trans("Subscription").'</td><td><input type="text" name="cotisation" size="6">'.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0 && defined("ADHERENT_BANK_USE_AUTO") && ADHERENT_BANK_USE_AUTO !=0){ print '<tr><td>'.$langs->trans("Label").'</td><td><input name="label" type="text" size="50" value="'.$langs->trans("Subscription").' " ></td></tr>';
print '<tr><td>'.$langs->trans("Label").'</td><td><input name="label" type="text" size=20 value="'.$langs->trans("Subscription").' " ></td></tr>';
} }
print '<tr><td>'.$langs->trans("Subscription").'</td><td><input type="text" name="cotisation" size="6"> '.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
print '<tr><td colspan="2" align="center"><input type="submit" value="'.$langs->trans("AddMember").'"></td></tr>';
print "</form>\n";
print "</table>\n"; print "</table>\n";
print '<br>';
print '<center><input type="submit" value="'.$langs->trans("AddMember").'"></center>';
print "</form>\n";
} }
@ -476,12 +490,12 @@ if ($rowid)
$html = new Form($db); $html = new Form($db);
/* /*
* Affichage onglets * Affichage onglets
*/ */
$h = 0; $h = 0;
$head[$h][0] = DOL_URL_ROOT.'/adherents/fiche.php?rowid='.$rowid; $head[$h][0] = DOL_URL_ROOT.'/adherents/fiche.php?rowid='.$rowid;
$head[$h][1] = $langs->trans("Member"); $head[$h][1] = $langs->trans("MemberCard");
$hselected=$h; $hselected=$h;
$h++; $h++;
@ -492,7 +506,8 @@ if ($rowid)
*/ */
if ($action == 'delete') if ($action == 'delete')
{ {
$html->form_confirm("fiche.php?rowid=$rowid","Supprimer un adhérent","Etes-vous sûr de vouloir supprimer cet adhérent (La suppression d'un adhérent entraine la suppression de toutes ses cotisations !)","confirm_delete"); $html->form_confirm("fiche.php?rowid=$rowid",$langs->trans("ResiliateMember"),$langs->trans("ConfirmResiliateMember"),"confirm_delete");
print '<br>';
} }
/* /*
@ -500,7 +515,8 @@ if ($rowid)
*/ */
if ($action == 'valid') if ($action == 'valid')
{ {
$html->form_confirm("fiche.php?rowid=$rowid","Valider un adhérent","Etes-vous sûr de vouloir valider cet adhérent ?","confirm_valid"); $html->form_confirm("fiche.php?rowid=$rowid",$langs->trans("ValidateMember"),$langs->trans("ConfirmValidateMember"),"confirm_valid");
print '<br>';
} }
/* /*
@ -508,7 +524,8 @@ if ($rowid)
*/ */
if ($action == 'resign') if ($action == 'resign')
{ {
$html->form_confirm("fiche.php?rowid=$rowid","Résilier une adhésion","Etes-vous sûr de vouloir résilier cet adhérent ?","confirm_resign"); $html->form_confirm("fiche.php?rowid=$rowid",$langs->trans("ResiliateMember"),$langs->trans("ConfirmResiliateMember"),"confirm_resign");
print '<br>';
} }
/* /*
@ -517,6 +534,7 @@ if ($rowid)
if ($action == 'add_glasnost') if ($action == 'add_glasnost')
{ {
$html->form_confirm("fiche.php?rowid=$rowid","Ajouter dans glasnost","Etes-vous sur de vouloir ajouter cet adhérent dans glasnost ? (serveur : ".ADHERENT_GLASNOST_SERVEUR.")","confirm_add_glasnost"); $html->form_confirm("fiche.php?rowid=$rowid","Ajouter dans glasnost","Etes-vous sur de vouloir ajouter cet adhérent dans glasnost ? (serveur : ".ADHERENT_GLASNOST_SERVEUR.")","confirm_add_glasnost");
print '<br>';
} }
/* /*
@ -525,6 +543,7 @@ if ($rowid)
if ($action == 'del_glasnost') if ($action == 'del_glasnost')
{ {
$html->form_confirm("fiche.php?rowid=$rowid","Supprimer dans glasnost","Etes-vous sur de vouloir effacer cet adhérent dans glasnost ? (serveur : ".ADHERENT_GLASNOST_SERVEUR.")","confirm_del_glasnost"); $html->form_confirm("fiche.php?rowid=$rowid","Supprimer dans glasnost","Etes-vous sur de vouloir effacer cet adhérent dans glasnost ? (serveur : ".ADHERENT_GLASNOST_SERVEUR.")","confirm_del_glasnost");
print '<br>';
} }
/* /*
@ -533,6 +552,7 @@ if ($rowid)
if ($action == 'add_spip') if ($action == 'add_spip')
{ {
$html->form_confirm("fiche.php?rowid=$rowid","Ajouter dans spip","Etes-vous sur de vouloir ajouter cet adhérent dans spip ? (serveur : ".ADHERENT_SPIP_SERVEUR.")","confirm_add_spip"); $html->form_confirm("fiche.php?rowid=$rowid","Ajouter dans spip","Etes-vous sur de vouloir ajouter cet adhérent dans spip ? (serveur : ".ADHERENT_SPIP_SERVEUR.")","confirm_add_spip");
print '<br>';
} }
/* /*
@ -542,6 +562,7 @@ if ($rowid)
{ {
$html->form_confirm("fiche.php?rowid=$rowid","Supprimer dans spip","Etes-vous sur de vouloir effacer cet adhérent dans spip ? (serveur : ".ADHERENT_SPIP_SERVEUR.")","confirm_del_spip"); $html->form_confirm("fiche.php?rowid=$rowid","Supprimer dans spip","Etes-vous sur de vouloir effacer cet adhérent dans spip ? (serveur : ".ADHERENT_SPIP_SERVEUR.")","confirm_del_spip");
$html->form_confirm("fiche.php?rowid=$rowid","Ajouter dans glasnost","Etes-vous sur de vouloir ajouter cet adhérent dans glasnost ? (serveur : ".ADHERENT_GLASNOST_SERVEUR.")","confirm_del_spip"); $html->form_confirm("fiche.php?rowid=$rowid","Ajouter dans glasnost","Etes-vous sur de vouloir ajouter cet adhérent dans glasnost ? (serveur : ".ADHERENT_GLASNOST_SERVEUR.")","confirm_del_spip");
print '<br>';
} }
@ -556,7 +577,7 @@ if ($rowid)
print '<td rowspan="'.(14+count($adh->array_options)).'" valign="top" width="50%">'; print '<td rowspan="'.(14+count($adh->array_options)).'" valign="top" width="50%">';
print nl2br($adh->commentaire).'&nbsp;</td></tr>'; print nl2br($adh->commentaire).'&nbsp;</td></tr>';
print '<tr><td>Personne</td><td class="valeur">'.$adh->getmorphylib().'&nbsp;</td></tr>'; print '<tr><td>'.$langs->trans("Person").'</td><td class="valeur">'.$adh->getmorphylib().'&nbsp;</td></tr>';
print '<tr><td width="15%">'.$langs->trans("Firstname").'*</td><td class="valeur" width="35%">'.$adh->prenom.'&nbsp;</td></tr>'; print '<tr><td width="15%">'.$langs->trans("Firstname").'*</td><td class="valeur" width="35%">'.$adh->prenom.'&nbsp;</td></tr>';
@ -565,7 +586,7 @@ if ($rowid)
print '<tr><td>'.$langs->trans("Company").'</td><td class="valeur">'.$adh->societe.'&nbsp;</td></tr>'; print '<tr><td>'.$langs->trans("Company").'</td><td class="valeur">'.$adh->societe.'&nbsp;</td></tr>';
print '<tr><td>'.$langs->trans("Address").'</td><td class="valeur">'.nl2br($adh->adresse).'&nbsp;</td></tr>'; print '<tr><td>'.$langs->trans("Address").'</td><td class="valeur">'.nl2br($adh->adresse).'&nbsp;</td></tr>';
print '<tr><td>'.$langs->trans("Zip").' / '.$langs->trans("Town").'</td><td class="valeur">'.$adh->cp.' '.$adh->ville.'&nbsp;</td></tr>'; print '<tr><td>'.$langs->trans("Zip").' / '.$langs->trans("Town").'</td><td class="valeur">'.$adh->cp.' '.$adh->ville.'&nbsp;</td></tr>';
print '<tr><td>'.$langs->trans("Country").'</td><td class="valeur">'.$adh->pays.'&nbsp;</td></tr>'; print '<tr><td>'.$langs->trans("Country").'</td><td class="valeur">'.$adh->pays.'</td></tr>';
print '<tr><td>'.$langs->trans("EMail").(ADHERENT_MAIL_REQUIRED&&ADHERENT_MAIL_REQUIRED==1?'*':'').'</td><td class="valeur">'.$adh->email.'&nbsp;</td></tr>'; print '<tr><td>'.$langs->trans("EMail").(ADHERENT_MAIL_REQUIRED&&ADHERENT_MAIL_REQUIRED==1?'*':'').'</td><td class="valeur">'.$adh->email.'&nbsp;</td></tr>';
print '<tr><td>'.$langs->trans("Login").'*</td><td class="valeur">'.$adh->login.'&nbsp;</td></tr>'; print '<tr><td>'.$langs->trans("Login").'*</td><td class="valeur">'.$adh->login.'&nbsp;</td></tr>';
// print '<tr><td>Pass</td><td class="valeur">'.$adh->pass.'&nbsp;</td></tr>'; // print '<tr><td>Pass</td><td class="valeur">'.$adh->pass.'&nbsp;</td></tr>';
@ -583,7 +604,6 @@ if ($rowid)
print '</form>'; print '</form>';
print "</table>\n"; print "</table>\n";
print "<br>";
print "</div>\n"; print "</div>\n";
@ -595,26 +615,26 @@ if ($rowid)
print '<div class="tabsAction">'; print '<div class="tabsAction">';
print "<a class=\"tabAction\" href=\"edit.php?rowid=$rowid\">".$langs->trans("Edit")."</a>"; print "<a class=\"butAction\" href=\"edit.php?rowid=$rowid\">".$langs->trans("Edit")."</a>";
// Valider // Valider
if ($adh->statut < 1) if ($adh->statut < 1)
{ {
print "<a class=\"tabAction\" href=\"fiche.php?rowid=$rowid&action=valid\">".$langs->trans("Validate")."</a>\n"; print "<a class=\"butAction\" href=\"fiche.php?rowid=$rowid&action=valid\">".$langs->trans("Validate")."</a>\n";
} }
// Envoi fiche par mail // Envoi fiche par mail
print "<a class=\"tabAction\" href=\"fiche.php?rowid=$adh->id&action=sendinfo\">".$langs->trans("SendCardByMail")."</a>\n"; print "<a class=\"butAction\" href=\"fiche.php?rowid=$adh->id&action=sendinfo\">".$langs->trans("SendCardByMail")."</a>\n";
// Résilier // Résilier
if ($adh->statut == 1) if ($adh->statut == 1)
{ {
print "<a class=\"tabAction\" href=\"fiche.php?rowid=$rowid&action=resign\">".$langs->trans("Resiliate")."</a>\n"; print "<a class=\"butAction\" href=\"fiche.php?rowid=$rowid&action=resign\">".$langs->trans("Resiliate")."</a>\n";
} }
// Supprimer // Supprimer
if ($user->admin) { if ($user->admin) {
print "<a class=\"butDelete\" href=\"fiche.php?rowid=$adh->id&action=delete\">".$langs->trans("Delete")."</a>\n"; print "<a class=\"butActionDelete\" href=\"fiche.php?rowid=$adh->id&action=delete\">".$langs->trans("Delete")."</a>\n";
} }
// Action Glasnost // Action Glasnost
@ -684,7 +704,7 @@ if ($rowid)
print "<table class=\"noborder\" width=\"100%\">\n"; print "<table class=\"noborder\" width=\"100%\">\n";
print '<tr class="liste_titre">'; print '<tr class="liste_titre">';
print "<td>Date cotisations</td>\n"; print '<td>'.$langs->trans("DateSubscription").'</td>';
print "<td align=\"right\">".$langs->trans("Amount")."</td>\n"; print "<td align=\"right\">".$langs->trans("Amount")."</td>\n";
print "</tr>\n"; print "</tr>\n";
@ -711,10 +731,8 @@ if ($rowid)
/* /*
* Ajout d'une nouvelle cotisation * Ajout d'une nouvelle cotisation
*
*/ */
// \todo Ajout du droit adherent cotisation if ($user->rights->adherent->cotisation->creer)
if ($user->rights->adherent->cotisation || 1==1)
{ {
print "<table class=\"border\" width=\"100%\">\n"; print "<table class=\"border\" width=\"100%\">\n";
@ -723,22 +741,28 @@ if ($rowid)
print '<input type="hidden" name="rowid" value="'.$rowid.'">'; print '<input type="hidden" name="rowid" value="'.$rowid.'">';
print '<tr><td width="15%">'.$langs->trans("SubscriptionEndDate").'</td>'; print '<tr><td width="15%">'.$langs->trans("SubscriptionEndDate").'</td>';
if ($adh->datefin < time()) print '<td width="35%">';
if ($adh->datefin)
{ {
print '<td width="35%">'; if ($adh->datefin < time())
print dolibarr_print_date($adh->datefin)." ".img_warning($langs->trans("Late")); {
print dolibarr_print_date($adh->datefin)." ".img_warning($langs->trans("Late"));
}
else
{
print dolibarr_print_date($adh->datefin);
}
} }
else else
{ {
print '<td width="35%">'; print $langs->trans("SubscriptionNotReceived")." ".img_warning($langs->trans("Late"));
print dolibarr_print_date($adh->datefin);
} }
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';
print '<tr><td colspan="2">'.$langs->trans("NewCotisation").'</td></tr>'; print '<tr><td colspan="2"><b>'.$langs->trans("NewCotisation").'</b></td></tr>';
print "<tr><td>Date de cotisation</td><td>\n"; print '<tr><td>'.$langs->trans("DateSubscription").'</td><td>';
if ($adh->datefin > 0) if ($adh->datefin > 0)
{ {
$html->select_date($adh->datefin + (3600*24)); $html->select_date($adh->datefin + (3600*24));
@ -750,21 +774,25 @@ if ($rowid)
print "</td></tr>"; print "</td></tr>";
print "<tr><td>Mode de paiement</td><td>\n"; print '<tr><td>'.$langs->trans("Amount").'</td><td><input type="text" name="cotisation" size="6"> '.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
print_type_paiement_select($db,'operation');
print "</td></tr>\n"; if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE)
{
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0 && print '<tr><td>'.$langs->trans("PaymentMode").'</td><td>';
defined("ADHERENT_BANK_USE_AUTO") && ADHERENT_BANK_USE_AUTO !=0){ $html->select_types_paiements('','operation');
print "<tr><td>Numero de cheque</td><td>\n";
print '<input name="num_chq" type="text" size="6">';
print "</td></tr>\n"; print "</td></tr>\n";
print '<tr><td>'.$langs->trans("FinancialAccount").'</td><td>';
$html->select_comptes('','accountid');
print "</td></tr>\n";
print '<tr><td>'.$langs->trans("Numero").'</td><td>';
print '<input name="num_chq" type="text" size="8">';
print "</td></tr>\n";
print '<tr><td>'.$langs->trans("Label").'</td><td><input name="label" type="text" size="50" value="'.$langs->trans("Subscription").' '.stripslashes($adh->prenom).' '.stripslashes($adh->nom).' '.strftime("%Y",$adh->datefin).'" ></td></tr>';
} }
print '<tr><td>'.$langs->trans("Subscription").'</td><td><input type="text" name="cotisation" size="6"> '.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
if (defined("ADHERENT_BANK_USE") && ADHERENT_BANK_USE !=0 &&
defined("ADHERENT_BANK_USE_AUTO") && ADHERENT_BANK_USE_AUTO !=0){
print '<tr><td>'.$langs->trans("Label").'</td><td colspan="2"><input name="label" type="text" size=20 value="Cotisation '.stripslashes($adh->prenom).' '.stripslashes($adh->nom).' '.strftime("%Y",$adh->datefin).'" ></td></tr>';
}
print '<tr><td colspan="2" align="center"><input type="submit" value="'.$langs->trans("Save").'"</td></tr>'; print '<tr><td colspan="2" align="center"><input type="submit" value="'.$langs->trans("Save").'"</td></tr>';
print '</form>'; print '</form>';

View File

@ -23,9 +23,9 @@
*/ */
/** /**
\file htdocs/adherents/index.php \file htdocs/adherents/index.php
\ingroup adherent \ingroup adherent
\brief Page accueil module adherents \brief Page accueil module adherents
*/ */
@ -38,10 +38,15 @@ $langs->load("members");
llxHeader(); llxHeader();
print_titre($langs->trans("MembersArea")); print_fiche_titre($langs->trans("MembersArea"));
print '<br>';
print '<table class="noborder">'; print '<table border="0" width="100%" class="notopnoleftnoright">';
print '<tr><td valign="top" width="100%" colspan="2" class="notopnoleft">';
print '<table class="noborder" width="100%">';
print '<tr class="liste_titre">'; print '<tr class="liste_titre">';
print '<td>'.$langs->trans("Type").'</td>'; print '<td>'.$langs->trans("Type").'</td>';
print '<td align=right width="80">'.$langs->trans("MembersStatusToValid").'</td>'; print '<td align=right width="80">'.$langs->trans("MembersStatusToValid").'</td>';
@ -112,19 +117,18 @@ $SommeD=0;
foreach ($AdherentsAll as $key=>$value){ foreach ($AdherentsAll as $key=>$value){
$var=!$var; $var=!$var;
print "<tr $bc[$var]>"; print "<tr $bc[$var]>";
print '<td><a href="liste.php?type='.$AdherentsAll[$key].'">'.$key.'</a></td>'; print '<td><a href="type.php?rowid='.$AdherentsAll[$key].'">'.img_object($langs->trans("ShowType"),"group").' '.$key.'</a></td>';
print '<td align="right">'.$AdherentsAValider[$key].'</td>'; print '<td align="right">'.(isset($AdherentsAValider[$key])?$AdherentsAValider[$key]:'').'</td>';
print '<td align="right">'.$Adherents[$key].'</td>'; print '<td align="right">'.(isset($Adherents[$key])?$Adherents[$key]:'').'</td>';
print '<td align="right">'.$Cotisants[$key].'</td>'; print '<td align="right">'.(isset($Cotisants[$key])?$Cotisants[$key]:'').'</td>';
print '<td align="right">'.($AdherentsResilies[$key]?$AdherentsResilies[$key]:0).'</td>'; print '<td align="right">'.(isset($AdherentsResilies[$key])?$AdherentsResilies[$key]:'').'</td>';
print "</tr>\n"; print "</tr>\n";
$SommeA+=$AdherentsAValider[$key]; $SommeA+=isset($AdherentsAValider[$key])?$AdherentsAValider[$key]:0;
$SommeB+=$Adherents[$key]; $SommeB+=isset($Adherents[$key])?$Adherents[$key]:0;
$SommeC+=$Cotisants[$key]; $SommeC+=isset($Cotisants[$key])?$Cotisants[$key]:0;
$SommeD+=$AdherentsResilies[$key]; $SommeD+=isset($AdherentsResilies[$key])?$AdherentsResilies[$key]:0;
} }
$var=!$var; print '<tr class="liste_total">';
print "<tr $bc[$var]>";
print '<td> <b>'.$langs->trans("Total").'</b> </td>'; print '<td> <b>'.$langs->trans("Total").'</b> </td>';
print '<td align="right"><b>'.$SommeA.'</b></td>'; print '<td align="right"><b>'.$SommeA.'</b></td>';
print '<td align="right"><b>'.$SommeB.'</b></td>'; print '<td align="right"><b>'.$SommeB.'</b></td>';
@ -136,24 +140,80 @@ print "</table>";
print '<br>'; print '<br>';
print '</td></tr>';
print '<tr><td width="30%" class="notopnoleft" valign="top">';
// Formulaire recherche adhérent // Formulaire recherche adhérent
print '<form action="liste.php" method="post">'; print '<form action="liste.php" method="post">';
print '<input type="hidden" name="action" value="search">'; print '<input type="hidden" name="action" value="search">';
print '<table class="noborder" cellspacing="0" cellpadding="3">'; print '<table class="noborder" width="100%">';
print '<tr class="liste_titre">'; print '<tr class="liste_titre">';
print '<td>'.$langs->trans("SearchAMember").'</td>'; print '<td colspan="2">'.$langs->trans("SearchAMember").'</td>';
print "</tr>\n"; print "</tr>\n";
$var=false;
print "<tr $bc[$var]>"; print "<tr $bc[$var]>";
print '<td>'; print '<td>';
print $langs->trans("Lastname").'/'.$langs->trans("Firstname").' <input type="text" name="search" class="flat" size="20">'; print $langs->trans("Name").' <input type="text" name="search" class="flat" size="16">';
print '&nbsp; <input class="button" type="submit" value="'.$langs->trans("Search").'">'; print '</td><td><input class="button" type="submit" value="'.$langs->trans("Search").'">';
print '</td></tr>'; print '</td></tr>';
print "</table></form>"; print "</table></form>";
print '</td><td class="notopnoleftnoright">';
$sql = "SELECT c.cotisation, ".$db->pdate("c.dateadh")." as dateadh";
$sql.= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."cotisation as c";
$sql.= " WHERE d.rowid = c.fk_adherent";
if(isset($date_select) && $date_select != ''){
$sql .= " AND dateadh LIKE '$date_select%'";
}
$result = $db->query($sql);
$Total=array();
$Number=array();
$tot=0;
$numb=0;
if ($result)
{
$num = $db->num_rows($result);
$i = 0;
while ($i < $num)
{
$objp = $db->fetch_object($result);
$year=strftime("%Y",$objp->dateadh);
$Total[$year]+=$objp->cotisation;
$Number[$year]+=1;
$tot+=$objp->cotisation;
$numb+=1;
$i++;
}
}
print '<table class="noborder" width="100%">';
print '<tr class="liste_titre">';
print '<td>'.$langs->trans("Year").'</td>';
print '<td align="right">'.$langs->trans("Subscriptions").'</td>';
print '<td align="right">'.$langs->trans("Number").'</td>';
print '<td align="right">'.$langs->trans("Average").'</td>';
print "</tr>\n";
$var=true;
foreach ($Total as $key=>$value)
{
$var=!$var;
print "<tr $bc[$var]><td><a href=\"cotisations.php?date_select=$key\">$key</a></td><td align=\"right\">".price($value)."</td><td align=\"right\">".$Number[$key]."</td><td align=\"right\">".price($value/$Number[$key])."</td></tr>\n";
}
// Total
print '<tr class="liste_total"><td>'.$langs->trans("Total").'</td><td align="right">'.price($tot)."</td><td align=\"right\">".$numb."</td><td align=\"right\">".price($tot/$numb)."</td></tr>\n";
print "</table><br>\n";
print '</td></tr>';
print '</table>';
$db->close(); $db->close();
llxFooter('$Date$ - $Revision$'); llxFooter('$Date$ - $Revision$');

View File

@ -39,20 +39,18 @@ llxHeader();
$sortorder=$_GET["sortorder"]; $sortorder=$_GET["sortorder"];
$sortfield=$_GET["sortfield"]; $sortfield=$_GET["sortfield"];
$page=$_GET["page"]; $page=$_GET["page"];
$filter=$_GET["filter"];
$statut=isset($_GET["statut"])?$_GET["statut"]:1; $statut=isset($_GET["statut"])?$_GET["statut"]:1;
if (! $sortorder) { $sortorder="ASC"; } if (! $sortorder) { $sortorder="ASC"; }
if (! $sortfield) { $sortfield="d.nom"; } if (! $sortfield) { $sortfield="d.nom"; }
if ($page == -1) { $page = 0 ; } if ($page == -1) { $page = 0 ; }
$offset = $conf->liste_limit * $page ; $offset = $conf->liste_limit * $page ;
$pageprev = $page - 1; $pageprev = $page - 1;
$pagenext = $page + 1; $pagenext = $page + 1;
$sql = "SELECT d.rowid, d.prenom, d.nom, d.societe, ".$db->pdate("d.datefin")." as datefin"; $sql = "SELECT d.rowid, d.prenom, d.nom, d.societe, ".$db->pdate("d.datefin")." as datefin,";
$sql .= " , d.email, t.libelle as type, d.morphy, d.statut, t.cotisation"; $sql .= " d.email, d.fk_adherent_type as type_id, t.libelle as type, d.morphy, d.statut, t.cotisation";
$sql .= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."adherent_type as t"; $sql .= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."adherent_type as t";
$sql .= " WHERE d.fk_adherent_type = t.rowid "; $sql .= " WHERE d.fk_adherent_type = t.rowid ";
if ($_GET["type"]) { if ($_GET["type"]) {
@ -64,111 +62,119 @@ if (isset($_GET["statut"])) {
if ( $_POST["action"] == 'search') if ( $_POST["action"] == 'search')
{ {
if (isset($_POST['search']) && $_POST['search'] != ''){ if (isset($_POST['search']) && $_POST['search'] != ''){
$sql .= " AND (d.prenom LIKE '%".$_POST['search']."%' OR d.nom LIKE '%".$_POST['search']."%')"; $sql.= " AND (d.prenom LIKE '%".$_POST['search']."%' OR d.nom LIKE '%".$_POST['search']."%')";
} }
} }
if ($filter == 'uptodate') {
$sql.=" AND datefin >= sysdate()";
}
$sql .= " ORDER BY $sortfield $sortorder " . $db->plimit($conf->liste_limit, $offset); $sql .= " ORDER BY $sortfield $sortorder " . $db->plimit($conf->liste_limit, $offset);
$result = $db->query($sql); $result = $db->query($sql);
if ($result) if ($result)
{ {
$num = $db->num_rows(); $num = $db->num_rows($result);
$i = 0; $i = 0;
$titre=$langs->trans("MembersList");
if (isset($_GET["statut"])) {
if ($statut == -1) { $titre=$langs->trans("MembersListToValid"); }
if ($statut == 1) { $titre=$langs->trans("MembersListValid"); }
if ($statut == 0) { $titre=$langs->trans("MembersListResiliated"); }
}
elseif ($_POST["action"] == 'search') {
$titre="Liste des adhérents répondant aux critères";
}
if ($_GET["type"]) { $titre=$langs->trans("MembersList");
$objp = $db->fetch_object($result); if (isset($_GET["statut"])) {
$titre.=" (".$objp->type.")"; if ($statut == -1) { $titre=$langs->trans("MembersListToValid"); }
} if ($statut == 1) { $titre=$langs->trans("MembersListValid"); }
if ($statut == 0) { $titre=$langs->trans("MembersListResiliated"); }
print_barre_liste($titre, $page, "liste.php", "&statut=$statut&sortorder=$sortorder&sortfield=$sortfield",$sortfield,$sortorder,'',$num); }
elseif ($_POST["action"] == 'search') {
print "<table class=\"noborder\" width=\"100%\">"; $titre="Liste des adhérents répondant aux critères";
print '<tr class="liste_titre">';
print_liste_field_titre($langs->trans("Name")." / ".$langs->trans("Company"),"liste.php","d.nom","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("DateAbonment"),"liste.php","t.cotisation","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("EMail"),"liste.php","d.email","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("Type"),"liste.php","t.libelle","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("Person"),"liste.php","d.morphy","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("Status"),"liste.php","d.statut","&page=$page&statut=$statut","","",$sortfield);
print "<td>".$langs->trans("Action")."</td>\n";
print "</tr>\n";
$var=True;
while ($i < $num)
{
if ($_GET["type"] && $i==0) { # Fetch deja fait
} else {
$objp = $db->fetch_object($result);
}
$adh=new Adherent($db);
$var=!$var;
print "<tr $bc[$var]>";
if ($objp->societe != ''){
print "<td><a href=\"fiche.php?rowid=$objp->rowid&action=edit\">".stripslashes($objp->prenom)." ".stripslashes($objp->nom)." / ".stripslashes($objp->societe)."</a></td>\n";
}else{
print "<td><a href=\"fiche.php?rowid=$objp->rowid&action=edit\">".stripslashes($objp->prenom)." ".stripslashes($objp->nom)."</a></td>\n";
}
print "<td>";
if ($objp->cotisation == 'yes')
{
if ($objp->datefin < time())
{
print dolibarr_print_date($objp->datefin)." - Cotisation non recue ".img_warning()."</td>\n";
}
else
{
print dolibarr_print_date($objp->datefin)."</td>\n";
}
}
else
{
print "&nbsp;</td>";
}
print "<td>$objp->email</td>\n";
print "<td>$objp->type</td>\n";
print "<td>".$adh->getmorphylib($objp->morphy)."</td>\n";
print "<td>";
if ($objp->statut == -1) print '<a href="fiche.php?rowid='.$objp->rowid.'">';
print $adh->LibStatut($objp->statut);
if ($objp->statut == -1) print '</a>';
print "</td>";
print "<td><a href=\"fiche.php?rowid=$objp->rowid&action=edit\">".img_edit()."</a> &nbsp; ";
print "<a href=\"fiche.php?rowid=$objp->rowid&action=resign\">".img_disable($langs->trans("Resiliate"))."</a> &nbsp; <a href=\"fiche.php?rowid=$objp->rowid&action=delete\">".img_delete()."</a></td>\n";
print "</tr>";
$i++;
} }
print "</table><br>\n";
print "<table class=\"noborder\" width=\"100%\">";
print_barre_liste("", $page, "liste.php", "&statut=$statut&sortorder=$sortorder&sortfield=$sortfield",$sortfield,$sortorder,'',$num);
print "</table><br>\n"; if ($_GET["type"]) {
$objp = $db->fetch_object($result);
$titre.=" (".$objp->type.")";
}
} print_barre_liste($titre, $page, "liste.php", "&statut=$statut&sortorder=$sortorder&sortfield=$sortfield",$sortfield,$sortorder,'',$num);
print "<table class=\"noborder\" width=\"100%\">";
print '<tr class="liste_titre">';
print_liste_field_titre($langs->trans("Name")." / ".$langs->trans("Company"),"liste.php","d.nom","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("DateAbonment"),"liste.php","t.cotisation","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("EMail"),"liste.php","d.email","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("Type"),"liste.php","t.libelle","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("Person"),"liste.php","d.morphy","&page=$page&statut=$statut","","",$sortfield);
print_liste_field_titre($langs->trans("Status"),"liste.php","d.statut","&page=$page&statut=$statut","","",$sortfield);
print "<td>".$langs->trans("Action")."</td>\n";
print "</tr>\n";
$var=True;
while ($i < $num)
{
if ($_GET["type"] && $i==0) { # Fetch deja fait
} else {
$objp = $db->fetch_object($result);
}
$adh=new Adherent($db);
$var=!$var;
print "<tr $bc[$var]>";
if ($objp->societe != ''){
print "<td><a href=\"fiche.php?rowid=$objp->rowid&action=edit\">".img_object($langs->trans("ShowAdherent"),"user").' '.stripslashes($objp->prenom)." ".stripslashes($objp->nom)." / ".stripslashes($objp->societe)."</a></td>\n";
}else{
print "<td><a href=\"fiche.php?rowid=$objp->rowid&action=edit\">".img_object($langs->trans("ShowAdherent"),"user").' '.stripslashes($objp->prenom)." ".stripslashes($objp->nom)."</a></td>\n";
}
print "<td>";
if ($objp->cotisation == 'yes')
{
if ($objp->datefin)
{
if ($objp->datefin < time())
{
print dolibarr_print_date($objp->datefin)." - ".$langs->trans("SubscriptionLate")." ".img_warning()."</td>\n";
}
else
{
print dolibarr_print_date($objp->datefin)."</td>\n";
}
}
else {
print $langs->trans("SubscriptionNotReceived")." ".img_warning()."</td>\n";
}
}
else
{
print "&nbsp;</td>";
}
print "<td>$objp->email</td>\n";
print '<td><a href="type.php?rowid='.$objp->type_id.'">'.img_object($langs->trans("ShowType"),"group").' '.$objp->type.'</a></td>';
print "<td>".$adh->getmorphylib($objp->morphy)."</td>\n";
// Statut
print "<td>";
print $adh->LibStatut($objp->statut);
print "</td>";
print "<td><a href=\"edit.php?rowid=$objp->rowid&action=edit\">".img_edit()."</a> &nbsp; ";
print "<a href=\"fiche.php?rowid=$objp->rowid&action=resign\">".img_disable($langs->trans("Resiliate"))."</a> &nbsp; <a href=\"fiche.php?rowid=$objp->rowid&action=delete\">".img_delete()."</a></td>\n";
print "</tr>";
$i++;
}
print "</table><br>\n";
print "<table class=\"noborder\" width=\"100%\">";
print_barre_liste("", $page, "liste.php", "&statut=$statut&sortorder=$sortorder&sortfield=$sortfield",$sortfield,$sortorder,'',$num);
print "</table><br>\n";
}
else else
{ {
print $sql; dolibarr_print_error($db);
print $db->error();
} }
$db->close(); $db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>"); llxFooter('$Date$ - $Revision$');
?> ?>

View File

@ -35,6 +35,9 @@ require(DOL_DOCUMENT_ROOT."/adherents/adherent_type.class.php");
$langs->load("members"); $langs->load("members");
$rowid=isset($_GET["rowid"])?$_GET["rowid"]:$_POST["rowid"];
if ($_POST["action"] == 'add' && $user->admin) if ($_POST["action"] == 'add' && $user->admin)
{ {
@ -62,7 +65,7 @@ if ($_POST["action"] == 'update' && $user->admin)
{ {
if ($_POST["button"] != $langs->trans("Cancel")) { if ($_POST["button"] != $langs->trans("Cancel")) {
$adht = new AdherentType($db); $adht = new AdherentType($db);
$adht->id = $_POST["rowid"];; $adht->id = $_POST["rowid"];
$adht->libelle = $_POST["libelle"]; $adht->libelle = $_POST["libelle"];
$adht->cotisation = $yesno[$_POST["cotisation"]]; $adht->cotisation = $yesno[$_POST["cotisation"]];
$adht->commentaire = $_POST["comment"]; $adht->commentaire = $_POST["comment"];
@ -70,8 +73,10 @@ if ($_POST["action"] == 'update' && $user->admin)
$adht->vote = $yesno[$_POST["vote"]]; $adht->vote = $yesno[$_POST["vote"]];
$adht->update($user->id); $adht->update($user->id);
Header("Location: type.php?rowid=".$_POST["rowid"]);
exit;
} }
Header("Location: type.php");
} }
if ($_GET["action"] == 'delete') if ($_GET["action"] == 'delete')
@ -99,7 +104,7 @@ llxHeader();
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
if ($_GET["action"] != 'create' && $_GET["action"] != 'edit') { if (! $rowid && $_GET["action"] != 'create' && $_GET["action"] != 'edit') {
print_titre($langs->trans("MembersTypeSetup")); print_titre($langs->trans("MembersTypeSetup"));
print '<br>'; print '<br>';
@ -117,7 +122,7 @@ if ($_GET["action"] != 'create' && $_GET["action"] != 'edit') {
print '<table class="noborder" width="100%">'; print '<table class="noborder" width="100%">';
print '<tr class="liste_titre">'; print '<tr class="liste_titre">';
print "<td>Id</td>"; print '<td>'.$langs->trans("Ref").'</td>';
print '<td>'.$langs->trans("Label").'</td><td align="center">'.$langs->trans("SubscriptionRequired").'</td>'; print '<td>'.$langs->trans("Label").'</td><td align="center">'.$langs->trans("SubscriptionRequired").'</td>';
print '<td align="center">'.$langs->trans("VoteAllowed").'</td><td>&nbsp;</td>'; print '<td align="center">'.$langs->trans("VoteAllowed").'</td><td>&nbsp;</td>';
print "</tr>\n"; print "</tr>\n";
@ -128,7 +133,7 @@ if ($_GET["action"] != 'create' && $_GET["action"] != 'edit') {
$objp = $db->fetch_object($result); $objp = $db->fetch_object($result);
$var=!$var; $var=!$var;
print "<tr $bc[$var]>"; print "<tr $bc[$var]>";
print "<td>".$objp->rowid."</td>\n"; print '<td><a href="type.php?rowid='.$objp->rowid.'">'.img_object($langs->trans("ShwoType"),'group').' '.$objp->rowid.'</a></td>';
print '<td>'.$objp->libelle.'</td>'; print '<td>'.$objp->libelle.'</td>';
print '<td align="center">'.$langs->trans($objp->cotisation).'</td>'; print '<td align="center">'.$langs->trans($objp->cotisation).'</td>';
print '<td align="center">'.$langs->trans($objp->vote).'</td>'; print '<td align="center">'.$langs->trans($objp->vote).'</td>';
@ -157,7 +162,7 @@ if ($_GET["action"] != 'create' && $_GET["action"] != 'edit') {
/* ************************************************************************** */ /* ************************************************************************** */
/* */ /* */
/* Création d'une fiche don */ /* Création d'un type adherent */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -202,47 +207,106 @@ if ($_GET["action"] == 'create') {
/* Edition de la fiche */ /* Edition de la fiche */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
if ($_GET["rowid"] > 0 && $_GET["action"] == 'edit') if ($rowid > 0)
{ {
$htmls = new Form($db); if ($_GET["action"] != 'edit')
{
$adht = new AdherentType($db);
$adht->id = $rowid;
$adht->fetch($rowid);
$adht = new AdherentType($db);
$adht->id = $_GET["rowid"];
$adht->fetch($_GET["rowid"]);
print_titre($langs->trans("EditType")); $h=0;
print '<br>';
$head[$h][0] = $_SERVER["PHP_SELF"].'?rowid='.$adht->id;
print '<form method="post" action="'.$_SERVER["PHP_SELF"].'?rowid='.$_GET["rowid"].'">'; $head[$h][1] = $langs->trans("MemberType").': '.$adht->libelle;
print '<input type="hidden" name="rowid" value="'.$_GET["rowid"].'">'; $h++;
print '<input type="hidden" name="action" value="update">';
print '<table class="border" width="100%">';
print '<tr><td>'.$langs->trans("Label").'</td><td><input type="text" name="libelle" size="40" value="'.$adht->libelle.'"></td></tr>'; dolibarr_fiche_head($head, 0, '');
print '<tr><td>'.$langs->trans("SubscriptionRequired").'</td><td>';
$htmls->selectyesnonum("cotisation",$adht->cotisation);
print '</tr>';
print '<tr><td>'.$langs->trans("VoteAllowed").'</td><td>'; print '<table class="border" width="100%">';
$htmls->selectyesnonum("vote",$adht->vote);
print '</tr>'; print '<tr><td width="15%">'.$langs->trans("Ref").'</td><td>'.$adht->id.'</td></tr>';
print '<tr><td width="15%">'.$langs->trans("Label").'</td><td>'.$adht->libelle.'</td></tr>';
print '<tr><td>'.$langs->trans("SubscriptionRequired").'</td><td>';
print $adht->cotisation;
print '</tr>';
print '<tr><td>'.$langs->trans("VoteAllowed").'</td><td>';
print $adht->vote;
print '</tr>';
print '<tr><td valign="top">'.$langs->trans("Comments").'</td><td>';
print nl2br($adht->commentaire)."</td></tr>";
print '<tr><td valign="top">'.$langs->trans("WelcomeEMail").'</td><td>';
print nl2br($adht->mail_valid)."</td></tr>";
print '</table>';
print '<tr><td valign="top">'.$langs->trans("Comments").'</td><td>'; print '</div>';
print "<textarea name=\"comment\" wrap=\"soft\" cols=\"60\" rows=\"3\">".$adht->commentaire."</textarea></td></tr>";
print '<tr><td valign="top">'.$langs->trans("WelcomeEMail").'</td><td>'; /*
print "<textarea name=\"mail_valid\" wrap=\"soft\" cols=\"60\" rows=\"15\">".$adht->mail_valid."</textarea></td></tr>"; * Barre d'actions
*
*/
print '<div class="tabsAction">';
print "<a class=\"tabAction\" href=\"type.php?action=edit&amp;rowid=".$adht->id."\">".$langs->trans("Edit")."</a>";
print "</div>";
}
if ($_GET["action"] == 'edit')
{
$htmls = new Form($db);
$adht = new AdherentType($db);
$adht->id = $rowid;
$adht->fetch($rowid);
print '<tr><td colspan="2" align="center"><input type="submit" value="'.$langs->trans("Save").'"> &nbsp;';
print '<input type="submit" name="button" value="'.$langs->trans("Cancel").'"></td></tr>';
print '</table>'; $h=0;
print "</form>";
$head[$h][0] = $_SERVER["PHP_SELF"].'?rowid='.$adht->id;
$head[$h][1] = $langs->trans("MemberType").': '.$adht->libelle;
$h++;
dolibarr_fiche_head($head, 0, '');
print '<form method="post" action="'.$_SERVER["PHP_SELF"].'?rowid='.$rowid.'">';
print '<input type="hidden" name="rowid" value="'.$rowid.'">';
print '<input type="hidden" name="action" value="update">';
print '<table class="border" width="100%">';
print '<tr><td width="15%">'.$langs->trans("Ref").'</td><td>'.$adht->id.'</td></tr>';
print '<tr><td>'.$langs->trans("Label").'</td><td><input type="text" name="libelle" size="40" value="'.$adht->libelle.'"></td></tr>';
print '<tr><td>'.$langs->trans("SubscriptionRequired").'</td><td>';
$htmls->selectyesnonum("cotisation",$adht->cotisation);
print '</tr>';
print '<tr><td>'.$langs->trans("VoteAllowed").'</td><td>';
$htmls->selectyesnonum("vote",$adht->vote);
print '</tr>';
print '<tr><td valign="top">'.$langs->trans("Comments").'</td><td>';
print "<textarea name=\"comment\" wrap=\"soft\" cols=\"60\" rows=\"3\">".$adht->commentaire."</textarea></td></tr>";
print '<tr><td valign="top">'.$langs->trans("WelcomeEMail").'</td><td>';
print "<textarea name=\"mail_valid\" wrap=\"soft\" cols=\"60\" rows=\"15\">".$adht->mail_valid."</textarea></td></tr>";
print '<tr><td colspan="2" align="center"><input type="submit" value="'.$langs->trans("Save").'"> &nbsp;';
print '<input type="submit" name="button" value="'.$langs->trans("Cancel").'"></td></tr>';
print '</table>';
print "</form>";
}
} }
$db->close(); $db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>"); llxFooter('$Date$ - $Revision$');
?> ?>