diff --git a/htdocs/adherents/cartes/carte.php b/htdocs/adherents/cartes/carte.php index eed63e4c40e..35e1dc75ba3 100755 --- a/htdocs/adherents/cartes/carte.php +++ b/htdocs/adherents/cartes/carte.php @@ -28,8 +28,10 @@ require("../../main.inc.php"); require_once(DOL_DOCUMENT_ROOT."/lib/files.lib.php"); require_once(DOL_DOCUMENT_ROOT."/adherents/class/adherent.class.php"); require_once(DOL_DOCUMENT_ROOT."/includes/modules/member/cards/modules_cards.php"); +require_once(DOL_DOCUMENT_ROOT."/includes/modules/member/labels/modules_labels.php"); $langs->load("members"); +$langs->load("errors"); // Choix de l'annee d'impression ou annee courante. $now = dol_now(); @@ -38,13 +40,20 @@ $month=dol_print_date($now,'%m'); $day=dol_print_date($now,'%d'); $foruserid=GETPOST('foruserid'); $foruserlogin=GETPOST('foruserlogin'); +$mode=GETPOST('mode'); +$mesg=''; /* * View */ -if (empty($foruserid) && empty($foruserlogin)) +if ($mode == 'cardlogin' && empty($foruserlogin)) +{ + $mesg=$langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Login")); +} + +if ((empty($foruserid) && empty($foruserlogin) && empty($mode)) || $mesg) { llxHeader('',$langs->trans("MembersCards")); @@ -54,20 +63,30 @@ if (empty($foruserid) && empty($foruserlogin)) print $langs->trans("LinkToGeneratedPagesDesc").'
'; print '
'; - print $langs->trans("PDFForAllMembersCards",$conf->global->ADHERENT_CARD_TYPE).' '; + if ($mesg) print '
'.$mesg.'

'; + + print $langs->trans("DocForAllMembersCards",$conf->global->ADHERENT_CARD_TYPE).' '; print '
'; print ''; - print ' '; + print ''; + print ' '; print '
'; print '
'; - print $langs->trans("PDFForOneMemberCards",$conf->global->ADHERENT_CARD_TYPE).' '; + print $langs->trans("DocForOneMemberCards",$conf->global->ADHERENT_CARD_TYPE).' '; print '
'; + print ''; print $langs->trans("Login").': '; - print ' '; + print ' '; print '
'; print '
'; + print $langs->trans("DocForLabels",$conf->global->ADHERENT_ETIQUETTE_TYPE).' '; + print '
'; + print ''; + print ' '; + print '
'; + print '
'; llxFooter('$Date$ - $Revision$'); } @@ -120,38 +139,68 @@ else '%DAY%'=>$day ); - $textleft=make_substitutions($conf->global->ADHERENT_CARD_TEXT, $substitutionarray, $langs); - $textheader=make_substitutions($conf->global->ADHERENT_CARD_HEADER_TEXT, $substitutionarray, $langs); - $textfooter=make_substitutions($conf->global->ADHERENT_CARD_FOOTER_TEXT, $substitutionarray, $langs); - $textright=make_substitutions($conf->global->ADHERENT_CARD_TEXT_RIGHT, $substitutionarray, $langs); - if (is_numeric($foruserid) || $foruserlogin) + // For business cards + if (empty($mode) || $mode=='card' || $mode=='cardlogin') { - for($j=0;$j<100;$j++) + $textleft=make_substitutions($conf->global->ADHERENT_CARD_TEXT, $substitutionarray, $langs); + $textheader=make_substitutions($conf->global->ADHERENT_CARD_HEADER_TEXT, $substitutionarray, $langs); + $textfooter=make_substitutions($conf->global->ADHERENT_CARD_FOOTER_TEXT, $substitutionarray, $langs); + $textright=make_substitutions($conf->global->ADHERENT_CARD_TEXT_RIGHT, $substitutionarray, $langs); + + if (is_numeric($foruserid) || $foruserlogin) + { + for($j=0;$j<100;$j++) + { + $arrayofmembers[]=array('textleft'=>$textleft, + 'textheader'=>$textheader, + 'textfooter'=>$textfooter, + 'textright'=>$textright, + 'id'=>$objp->rowid, + 'photo'=>$objp->photo); + } + } + else { $arrayofmembers[]=array('textleft'=>$textleft, - 'textheader'=>$textheader, - 'textfooter'=>$textfooter, - 'textright'=>$textright, - 'id'=>$objp->rowid, - 'photo'=>$objp->photo); + 'textheader'=>$textheader, + 'textfooter'=>$textfooter, + 'textright'=>$textright, + 'id'=>$objp->rowid, + 'photo'=>$objp->photo); } } - else + + // For labels + if ($mode == 'label') { + $conf->global->ADHERENT_ETIQUETTE_TEXT="%PRENOM% %NOM%\n%ADRESSE%\n%CP% %VILLE%\n%PAYS%"; + $textleft=make_substitutions($conf->global->ADHERENT_ETIQUETTE_TEXT, $substitutionarray, $langs); + $textheader=''; + $textfooter=''; + $textright=''; + $arrayofmembers[]=array('textleft'=>$textleft, - 'textheader'=>$textheader, - 'textfooter'=>$textfooter, - 'textright'=>$textright, - 'id'=>$objp->rowid, - 'photo'=>$objp->photo); + 'textheader'=>$textheader, + 'textfooter'=>$textfooter, + 'textright'=>$textright, + 'id'=>$objp->rowid, + 'photo'=>$objp->photo); } $i++; } // Build and output PDF - $result=members_card_pdf_create($db, $arrayofmembers, '', $outputlangs); + if (empty($mode) || $mode=='card' || $mode='cardlogin') + { + $result=members_card_pdf_create($db, $arrayofmembers, '', $outputlangs); + } + if ($mode == 'label') + { + $result=members_label_pdf_create($db, $arrayofmembers, '', $outputlangs); + } + if ($result <= 0) { dol_print_error($db,$result); diff --git a/htdocs/adherents/cartes/etiquette.php b/htdocs/adherents/cartes/etiquette.php deleted file mode 100755 index 5f41de204ab..00000000000 --- a/htdocs/adherents/cartes/etiquette.php +++ /dev/null @@ -1,117 +0,0 @@ - - * Copyright (C) 2003 Jean-Louis Bergamo - * Copyright (C) 2006-2010 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 - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -/** - * \file htdocs/adherents/cartes/etiquette.php - * \ingroup member - * \brief Page to output members labels sheets - * \version $Id$ - */ -require("../../main.inc.php"); -require_once(DOL_DOCUMENT_ROOT."/lib/files.lib.php"); -require_once(DOL_DOCUMENT_ROOT."/adherents/class/adherent.class.php"); -require_once(DOL_DOCUMENT_ROOT.'/includes/modules/member/labels/modules_labels.php'); - -//if (empty($conf->global->ADHERENT_ETIQUETTE_TYPE)) $conf->global->ADHERENT_ETIQUETTE_TYPE='L7163'; -//$pdf = new PDF_card($conf->global->ADHERENT_ETIQUETTE_TYPE, 1, 1); - -// Choix de l'annee d'impression ou annee courante. -$now = dol_now(); -$year=dol_print_date($now,'%Y'); -$month=dol_print_date($now,'%m'); -$day=dol_print_date($now,'%d'); - - -$arrayofmembers=array(); - -// requete en prenant que les adherents a jour de cotisation -$sql = "SELECT d.rowid, d.prenom, d.nom, d.login, d.societe, d.datefin,"; -$sql.= " d.adresse, d.cp, d.ville, d.naiss, d.email, d.photo,"; -$sql.= " t.libelle as type,"; -$sql.= " p.libelle as pays"; -$sql.= " FROM ".MAIN_DB_PREFIX."adherent_type as t, ".MAIN_DB_PREFIX."adherent as d"; -$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_pays as p ON d.pays = p.rowid"; -$sql.= " WHERE d.fk_adherent_type = t.rowid AND d.statut = 1"; -$sql.= " ORDER BY d.rowid ASC"; - -$result = $db->query($sql); -if ($result) -{ - $num = $db->num_rows($result); - $i = 0; - while ($i < $num) - { - $objp = $db->fetch_object($result); - - if ($objp->pays == '-') $objp->pays=''; - - // List of values to scan for a replacement - $substitutionarray = array ( - '%PRENOM%'=>$objp->prenom, - '%NOM%'=>$objp->nom, - '%LOGIN%'=>$objp->login, - '%SERVEUR%'=>"http://".$_SERVER["SERVER_NAME"]."/", - '%SOCIETE%'=>$objp->societe, - '%ADRESSE%'=>$objp->adresse, - '%CP%'=>$objp->cp, - '%VILLE%'=>$objp->ville, - '%PAYS%'=>$objp->pays, - '%EMAIL%'=>$objp->email, - '%NAISS%'=>$objp->naiss, - '%TYPE%'=>$objp->type, - '%ID%'=>$objp->rowid, - '%ANNEE%'=>$year, // For backward compatibility - '%YEAR%'=>$year, - '%MONTH%'=>$month, - '%DAY%'=>$day - ); - - $conf->global->ADHERENT_ETIQUETTE_TEXT="%PRENOM% %NOM%\n%ADRESSE%\n%CP% %VILLE%\n%PAYS%"; - $textleft=make_substitutions($conf->global->ADHERENT_ETIQUETTE_TEXT, $substitutionarray, $langs); - $textheader=''; - $textfooter=''; - $textright=''; - - $arrayofmembers[]=array('textleft'=>$textleft, - 'textheader'=>$textheader, - 'textfooter'=>$textfooter, - 'textright'=>$textright, - 'id'=>$objp->rowid, - 'photo'=>$objp->photo); - - $i++; - } - - // Build and output PDF - $result=members_label_pdf_create($db, $arrayofmembers, '', $outputlangs); - if ($result <= 0) - { - dol_print_error($db,$result); - exit; - } -} -else -{ - dol_print_error($db); - - llxFooter('$Date$ - $Revision$'); -} - -?> diff --git a/htdocs/includes/menus/barre_left/eldy.lib.php b/htdocs/includes/menus/barre_left/eldy.lib.php index 6f029e4864e..db5600b5c48 100644 --- a/htdocs/includes/menus/barre_left/eldy.lib.php +++ b/htdocs/includes/menus/barre_left/eldy.lib.php @@ -833,8 +833,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after) $newmenu->add(DOL_URL_ROOT."/adherents/index.php?leftmenu=export&mainmenu=members",$langs->trans("Exports"),0,$user->rights->adherent->export); if ($conf->export->enabled && $leftmenu=="export") $newmenu->add(DOL_URL_ROOT."/exports/index.php?leftmenu=export",$langs->trans("Datas"),1,$user->rights->adherent->export); if ($leftmenu=="export") $newmenu->add(DOL_URL_ROOT."/adherents/htpasswd.php?leftmenu=export",$langs->trans("Filehtpasswd"),1,$user->rights->adherent->export); - if ($leftmenu=="export") $newmenu->add(DOL_URL_ROOT."/adherents/cartes/carte.php?leftmenu=export",$langs->trans("MembersCards"),1,$user->rights->adherent->export,'_blank'); - if ($leftmenu=="export") $newmenu->add(DOL_URL_ROOT."/adherents/cartes/etiquette.php?leftmenu=export",$langs->trans("MembersTickets"),1,$user->rights->adherent->export,'_blank'); + if ($leftmenu=="export") $newmenu->add(DOL_URL_ROOT."/adherents/cartes/carte.php?leftmenu=export",$langs->trans("MembersCards"),1,$user->rights->adherent->export); $newmenu->add(DOL_URL_ROOT."/adherents/public.php?leftmenu=member_public",$langs->trans("MemberPublicLinks")); diff --git a/htdocs/includes/menus/init_menu_auguria.sql b/htdocs/includes/menus/init_menu_auguria.sql index 28261b6b688..4162d5fef02 100644 --- a/htdocs/includes/menus/init_menu_auguria.sql +++ b/htdocs/includes/menus/init_menu_auguria.sql @@ -268,8 +268,7 @@ insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled', 'auguria', 'left', 4500__+MAX_llx_menu__, 'members', '', 13__+MAX_llx_menu__, '/adherents/index.php?leftmenu=export&mainmenu=members', 'Exports', 0, 'members', '$user->rights->adherent->export', '', 2, 3, __ENTITY__); insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled && $conf->export->enabled', 'auguria', 'left', 4501__+MAX_llx_menu__, 'members', '', 4500__+MAX_llx_menu__, '/exports/index.php?leftmenu=export', 'Datas', 1, 'members', '$user->rights->adherent->export', '', 2, 0, __ENTITY__); insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled', 'auguria', 'left', 4502__+MAX_llx_menu__, 'members', '', 4500__+MAX_llx_menu__, '/adherents/htpasswd.php?leftmenu=export', 'Filehtpasswd', 1, 'members', '$user->rights->adherent->export', '', 2, 1, __ENTITY__); -insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled', 'auguria', 'left', 4503__+MAX_llx_menu__, 'members', '', 4500__+MAX_llx_menu__, '/adherents/cartes/carte.php?leftmenu=export', 'MembersCards', 1, 'members', '$user->rights->adherent->export', '_blank', 2, 2, __ENTITY__); -insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled', 'auguria', 'left', 4504__+MAX_llx_menu__, 'members', '', 4500__+MAX_llx_menu__, '/adherents/cartes/etiquette.php?leftmenu=export', 'MembersTickets', 1, 'members', '$user->rights->adherent->export', '_blank', 2, 3, __ENTITY__); +insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled', 'auguria', 'left', 4503__+MAX_llx_menu__, 'members', '', 4500__+MAX_llx_menu__, '/adherents/cartes/carte.php?leftmenu=export', 'MembersCards', 1, 'members', '$user->rights->adherent->export', '', 2, 2, __ENTITY__); insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled', 'auguria', 'left', 4600__+MAX_llx_menu__, 'members', '', 13__+MAX_llx_menu__, '/adherents/public.php?leftmenu=member_public', 'MemberPublicLinks', 0, 'members', '$user->rights->adherent->export', '', 2, 4, __ENTITY__); insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled', 'auguria', 'left', 4700__+MAX_llx_menu__, 'members', '', 13__+MAX_llx_menu__, '/adherents/index.php?leftmenu=setup&mainmenu=members', 'Setup', 0, 'members', '$user->rights->adherent->configurer', '', 2, 5, __ENTITY__); insert into llx_menu (enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('$conf->adherent->enabled', 'auguria', 'left', 4701__+MAX_llx_menu__, 'members', '', 4700__+MAX_llx_menu__, '/adherents/type.php?leftmenu=setup', 'MembersTypes', 1, 'members', '$user->rights->adherent->configurer', '', 2, 0, __ENTITY__); diff --git a/htdocs/install/upgrade2.php b/htdocs/install/upgrade2.php index 257fa355954..0f3c3e0b996 100644 --- a/htdocs/install/upgrade2.php +++ b/htdocs/install/upgrade2.php @@ -299,7 +299,10 @@ if (GETPOST('action') && preg_match('/upgrade/i',GETPOST("action"))) $beforeversionarray=explode('.','3.0.9'); if (versioncompare($versiontoarray,$afterversionarray) >= 0 && versioncompare($versiontoarray,$beforeversionarray) <= 0) { - print $langs->trans("AlreadyDone"); + //print $langs->trans("AlreadyDone"); + + // Reload menus + migrate_reload_menu($db,$langs,$conf,$versionto); } // On commit dans tous les cas. diff --git a/htdocs/langs/en_US/members.lang b/htdocs/langs/en_US/members.lang index 3f65625dcb1..7dde868aeb9 100644 --- a/htdocs/langs/en_US/members.lang +++ b/htdocs/langs/en_US/members.lang @@ -156,7 +156,7 @@ MoreActionBankViaInvoice=Create an invoice and payment on account MoreActionInvoiceOnly=Create an invoice with no payment LinkToGeneratedPages=Generate visit cards LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. -PDFForAllMembersCards=Generate PDF of business cards for all members (Format for PDF actually setup : %s) -PDFForOneMemberCards=Generate PDF of business cards for a particular member (Format for PDF actually setup: %s) -BuildCards=Build PDF file +DocForAllMembersCards=Generate business cards for all members (Format for output actually setup : %s) +DocForOneMemberCards=Generate business cards for a particular member (Format for output actually setup: %s) +DocForLabels=Generate address sheets (Format for output actually setup: %s) diff --git a/htdocs/langs/fr_FR/members.lang b/htdocs/langs/fr_FR/members.lang index bb5245f2661..d362fcc6c5b 100644 --- a/htdocs/langs/fr_FR/members.lang +++ b/htdocs/langs/fr_FR/members.lang @@ -156,6 +156,6 @@ MoreActionBankViaInvoice=Création facture avec paiement sur compte MoreActionInvoiceOnly=Création facture sans paiement LinkToGeneratedPages=Génération de cartes de visites LinkToGeneratedPagesDesc=Cet écran vous permet de générer des planches de cartes de visites pour chaque adhérents ou pour un adhérent en particulier. -PDFForAllMembersCards=Génération PDF de cartes pour tous les adhérents (Format de planche actuellement configuré: %s) -PDFForOneMemberCards=Génération PDF de cartes pour un adhérent particulier (Format de planche actuellement configuré: %s) -BuildCards=Générer cartes de visites +DocForAllMembersCards=Génération de cartes pour tous les adhérents (Format de planche actuellement configuré: %s) +DocForOneMemberCards=Génération de cartes pour un adhérent particulier (Format de planche actuellement configuré: %s) +DocForLabels=Génération d'étiquette d'adresses (Format de planche actuellement configuré: %s)