';
print $searchbox;
print $boxgraph;
-// List of subscription by year
-$Total = array();
-$Number = array();
-$tot = 0;
-$numb = 0;
-
-$sql = "SELECT c.subscription, c.dateadh as dateh";
-$sql .= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."subscription as c";
-$sql .= " WHERE d.entity IN (".getEntity('adherent').")";
-$sql .= " AND d.rowid = c.fk_adherent";
-
-
-$result = $db->query($sql);
-if ($result) {
- $num = $db->num_rows($result);
- $i = 0;
- while ($i < $num) {
- $objp = $db->fetch_object($result);
- $year = dol_print_date($db->jdate($objp->dateh), "%Y");
- $Total[$year] = (isset($Total[$year]) ? $Total[$year] : 0) + $objp->subscription;
- $Number[$year] = (isset($Number[$year]) ? $Number[$year] : 0) + 1;
- $tot += $objp->subscription;
- $numb += 1;
- $i++;
- }
-}
-
-print '
';
-print '
';
-print '';
-print '| '.$langs->trans("Year").' | ';
-print ''.$langs->trans("Subscriptions").' | ';
-print ''.$langs->trans("AmountTotal").' | ';
-print ''.$langs->trans("AmountAverage").' | ';
-print "
\n";
-
-krsort($Total);
-$i = 0;
-foreach ($Total as $key=>$value) {
- if ($i >= 8) {
- print '';
- print "| ... | ";
- print " | ";
- print " | ";
- print " | ";
- print "
\n";
- break;
- }
- print '';
- print "| $key | ";
- print "".$Number[$key]." | ";
- print "".price($value)." | ";
- print "".price(price2num($value / $Number[$key], 'MT'))." | ";
- print "
\n";
- $i++;
-}
-
-// Total
-print '';
-print '| '.$langs->trans("Total").' | ';
-print "".$numb." | ";
-print ''.price($tot)." | ";
-print "".price(price2num($numb > 0 ? ($tot / $numb) : 0, 'MT'))." | ";
-print "
\n";
-print "
";
-
-print "
\n";
-
print $resultboxes['boxlista'];
print '
'."\n";
print '';
-/*
- * Latest modified members
- */
-$max = $conf->global->MAIN_SIZE_SHORTLIST_LIMIT;
-
-$sql = "SELECT a.rowid, a.statut as status, a.lastname, a.firstname, a.societe as company, a.fk_soc,";
-$sql .= " a.gender, a.email, a.photo, a.morphy,";
-$sql .= " a.tms as datem, a.datefin as date_end_subscription,";
-$sql .= " ta.rowid as typeid, ta.libelle as label, ta.subscription as need_subscription";
-$sql .= " FROM ".MAIN_DB_PREFIX."adherent as a, ".MAIN_DB_PREFIX."adherent_type as ta";
-$sql .= " WHERE a.entity IN (".getEntity('adherent').")";
-$sql .= " AND a.fk_adherent_type = ta.rowid";
-$sql .= $db->order("a.tms", "DESC");
-$sql .= $db->plimit($max, 0);
-
-$resql = $db->query($sql);
-if ($resql) {
- print '
';
- print '
';
- print '';
- print '| '.$langs->trans("LastMembersModified", $max).' |
';
-
- $num = $db->num_rows($resql);
- if ($num) {
- $i = 0;
- while ($i < $num) {
- $obj = $db->fetch_object($resql);
-
- $staticmember->id = $obj->rowid;
- $staticmember->ref = $obj->rowid;
- $staticmember->lastname = $obj->lastname;
- $staticmember->firstname = $obj->firstname;
- $staticmember->gender = $obj->gender;
- $staticmember->email = $obj->email;
- $staticmember->photo = $obj->photo;
- $staticmember->morphy = $obj->morphy;
- $staticmember->statut = $obj->status;
- $staticmember->need_subscription = $obj->need_subscription;
- $staticmember->datefin = $db->jdate($obj->date_end_subscription);
- if (!empty($obj->fk_soc)) {
- $staticmember->fk_soc = $obj->fk_soc;
- $staticmember->fetch_thirdparty();
- $staticmember->name = $staticmember->thirdparty->name;
- } else {
- $staticmember->name = $obj->company;
- }
-
- $statictype->id = $obj->typeid;
- $statictype->label = $obj->label;
- $statictype->subscription = $obj->need_subscription;
-
- print '';
- print '| '.$staticmember->getNomUrl(-1, 32).' | ';
- print ''.$statictype->getNomUrl(1, 32).' | ';
- print ''.dol_print_date($db->jdate($obj->datem), 'dayhour').' | ';
- print ''.$staticmember->getLibStatut(3).' | ';
- print '
';
- $i++;
- }
- }
- print "
";
- print "
";
-} else {
- dol_print_error($db);
-}
-
-
-/*
- * Last modified subscriptions
- */
-$max = $conf->global->MAIN_SIZE_SHORTLIST_LIMIT;
-
-$sql = "SELECT a.rowid, a.statut as status, a.lastname, a.firstname, a.societe as company, a.fk_soc,";
-$sql .= " a.gender, a.email, a.photo, a.morphy,";
-$sql .= " a.datefin as date_end_subscription,";
-$sql .= " ta.rowid as typeid, ta.libelle as label, ta.subscription as need_subscription,";
-$sql .= " c.rowid as cid, c.tms as datem, c.datec as datec, c.dateadh as date_start, c.datef as date_end, c.subscription";
-$sql .= " FROM ".MAIN_DB_PREFIX."adherent as a, ".MAIN_DB_PREFIX."adherent_type as ta, ".MAIN_DB_PREFIX."subscription as c";
-$sql .= " WHERE a.entity IN (".getEntity('adherent').")";
-$sql .= " AND a.fk_adherent_type = ta.rowid";
-$sql .= " AND c.fk_adherent = a.rowid";
-$sql .= $db->order("c.tms", "DESC");
-$sql .= $db->plimit($max, 0);
-
-$resql = $db->query($sql);
-if ($resql) {
- print '
';
- print '
';
- print '';
- print '| '.$langs->trans("LastSubscriptionsModified", $max).' |
';
-
- $num = $db->num_rows($resql);
- if ($num) {
- $i = 0;
- while ($i < $num) {
- $obj = $db->fetch_object($resql);
-
- $staticmember->id = $obj->rowid;
- $staticmember->ref = $obj->rowid;
- $staticmember->lastname = $obj->lastname;
- $staticmember->firstname = $obj->firstname;
- $staticmember->gender = $obj->gender;
- $staticmember->email = $obj->email;
- $staticmember->photo = $obj->photo;
- $staticmember->morphy = $obj->morphy;
- $staticmember->statut = $obj->status;
- $staticmember->need_subscription = $obj->need_subscription;
- $staticmember->datefin = $db->jdate($obj->date_end_subscription);
- if (!empty($obj->fk_soc)) {
- $staticmember->fk_soc = $obj->fk_soc;
- $staticmember->fetch_thirdparty();
- $staticmember->name = $staticmember->thirdparty->name;
- } else {
- $staticmember->name = $obj->company;
- }
-
- $subscriptionstatic->id = $obj->cid;
- $subscriptionstatic->ref = $obj->cid;
-
- print '';
- print '| '.$subscriptionstatic->getNomUrl(1).' | ';
- print ''.$staticmember->getNomUrl(-1, 32, 'subscription').' | ';
- print ''.get_date_range($db->jdate($obj->date_start), $db->jdate($obj->date_end)).' | ';
- print ''.price($obj->subscription).' | ';
- //print ''.$staticmember->LibStatut($obj->statut,($obj->subscription=='yes'?1:0),$db->jdate($obj->date_end_subscription),5).' | ';
- print ''.dol_print_date($db->jdate($obj->datem ? $obj->datem : $obj->datec), 'dayhour').' | ';
- print '
';
- $i++;
- }
- }
- print "
";
- print "
";
-} else {
- dol_print_error($db);
-}
-
-
-// Summary of members by type
-print '
';
-print '
';
-print '';
-print '| '.$langs->trans("MembersTypes").' | ';
-print ''.$langs->trans("MembersStatusToValid").' | ';
-print ''.$langs->trans("OutOfDate").' | ';
-print ''.$langs->trans("UpToDate").' | ';
-print ''.$langs->trans("MembersStatusResiliated").' | ';
-print "
\n";
-
-foreach ($AdherentType as $key => $adhtype) {
- print '';
- print '| '.$adhtype->getNomUrl(1, dol_size(32)).' | ';
- print ''.(isset($MembersToValidate[$key]) && $MembersToValidate[$key] > 0 ? $MembersToValidate[$key] : '').' '.$staticmember->LibStatut(-1, $adhtype->subscription, 0, 3).' | ';
- print ''.(isset($MembersValidated[$key]) && ($MembersValidated[$key] - (isset($MembersUpToDate[$key]) ? $MembersUpToDate[$key] : 0) > 0) ? $MembersValidated[$key] - (isset($MembersUpToDate[$key]) ? $MembersUpToDate[$key] : 0) : '').' '.$staticmember->LibStatut(1, $adhtype->subscription, 0, 3).' | ';
- print ''.(isset($MembersUpToDate[$key]) && $MembersUpToDate[$key] > 0 ? $MembersUpToDate[$key] : '').' '.$staticmember->LibStatut(1, $adhtype->subscription, $now, 3).' | ';
- print ''.(isset($MembersResiliated[$key]) && $MembersResiliated[$key] > 0 ? $MembersResiliated[$key] : '').' '.$staticmember->LibStatut(0, $adhtype->subscription, 0, 3).' | ';
- print "
\n";
-}
-print '';
-print '| '.$langs->trans("Total").' | ';
-print ''.$SumToValidate.' '.$staticmember->LibStatut(-1, $adhtype->subscription, 0, 3).' | ';
-print ''.$SumValidated.' '.$staticmember->LibStatut(1, $adhtype->subscription, 0, 3).' | ';
-print ''.$SumUpToDate.' '.$staticmember->LibStatut(1, $adhtype->subscription, $now, 3).' | ';
-print ''.$SumResiliated.' '.$staticmember->LibStatut(0, $adhtype->subscription, 0, 3).' | ';
-print '
';
-
-print "
\n";
-print "
";
-
-print '
';
-
print $resultboxes['boxlistb'];
print '
'."\n";
diff --git a/htdocs/adherents/list.php b/htdocs/adherents/list.php
index cebd634fa56..a52d551d83e 100644
--- a/htdocs/adherents/list.php
+++ b/htdocs/adherents/list.php
@@ -76,7 +76,7 @@ if ($statut != '') {
$sall = trim((GETPOST('search_all', 'alphanohtml') != '') ?GETPOST('search_all', 'alphanohtml') : GETPOST('sall', 'alphanohtml'));
-if ($search_status < -1) {
+if ($search_status < -2) {
$search_status = '';
}
@@ -452,6 +452,9 @@ if (GETPOSTISSET("search_status")) {
if ($search_status == '0') {
$titre = $langs->trans("MembersListResiliated");
}
+ if ($search_status == '-2') {
+ $titre = $langs->trans("MembersListExcluded");
+ }
} elseif ($action == 'search') {
$titre = $langs->trans("MembersListQualified");
}
@@ -750,9 +753,10 @@ if (!empty($arrayfields['d.statut']['checked'])) {
$liststatus = array(
'-1'=>$langs->trans("Draft"),
'1'=>$langs->trans("Validated"),
- '0'=>$langs->trans("Resiliated")
+ '0'=>$langs->trans("Resiliated"),
+ '-2'=>$langs->trans("Excluded")
);
- print $form->selectarray('search_status', $liststatus, $search_status, -2);
+ print $form->selectarray('search_status', $liststatus, $search_status, -3);
print '';
}
// Action column
diff --git a/htdocs/adherents/subscription.php b/htdocs/adherents/subscription.php
index f9dd77debac..8e1b9093e77 100644
--- a/htdocs/adherents/subscription.php
+++ b/htdocs/adherents/subscription.php
@@ -645,7 +645,7 @@ if ($rowid > 0) {
* Action bar
*/
- // Button to create a new subscription if member no draft neither resiliated
+ // Button to create a new subscription if member no draft (-1) neither resiliated (0) neither excluded (-2)
if ($user->rights->adherent->cotisation->creer) {
if ($action != 'addsubscription' && $action != 'create_thirdparty') {
print '