diff --git a/htdocs/adherents/admin/adherent.php b/htdocs/adherents/admin/adherent.php
index 16d63f3964d..f563cdca4eb 100644
--- a/htdocs/adherents/admin/adherent.php
+++ b/htdocs/adherents/admin/adherent.php
@@ -31,6 +31,7 @@
require("../../main.inc.php");
require_once(DOL_DOCUMENT_ROOT."/lib/admin.lib.php");
+require_once(DOL_DOCUMENT_ROOT."/lib/member.lib.php");
$langs->load("admin");
$langs->load("members");
@@ -91,14 +92,18 @@ if ($_GET["action"] == 'unset')
* View
*/
-llxHeader();
+$help_url='EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros';
+llxHeader('',$langs->trans("MembersSetup"),$help_url);
-$var=True;
$linkback=''.$langs->trans("BackToModuleList").'';
print_fiche_titre($langs->trans("MembersSetup"),$linkback,'setup');
-print "
";
+
+
+$head = member_admin_prepare_head($adh);
+
+dol_fiche_head($head, 'general', $langs->trans("Member"), 0, 'user');
print_fiche_titre($langs->trans("MemberMainOptions"),'','');
@@ -248,38 +253,40 @@ $constantes=array(
'ADHERENT_CARD_TEXT',
'ADHERENT_CARD_TEXT_RIGHT',
'ADHERENT_CARD_FOOTER_TEXT'
- );
- print_fiche_titre($langs->trans("MembersCards"),'','');
+);
- form_constantes($constantes);
+print_fiche_titre($langs->trans("MembersCards"),'','');
- print '*'.$langs->trans("FollowingConstantsWillBeSubstituted").'
';
- print '%DOL_MAIN_URL_ROOT%, %ID%, %PRENOM%, %NOM%, %LOGIN%, %PASSWORD%, ';
- print '%SOCIETE%, %ADRESSE%, %CP%, %VILLE%, %PAYS%, %EMAIL%, %NAISS%, %PHOTO%, %TYPE%, ';
- print '%YEAR%, %MONTH%, %DAY%';
- //print '%INFOS%'; Deprecated
- print '
';
+form_constantes($constantes);
- print '
';
+print '*'.$langs->trans("FollowingConstantsWillBeSubstituted").'
';
+print '%DOL_MAIN_URL_ROOT%, %ID%, %PRENOM%, %NOM%, %LOGIN%, %PASSWORD%, ';
+print '%SOCIETE%, %ADRESSE%, %CP%, %VILLE%, %PAYS%, %EMAIL%, %NAISS%, %PHOTO%, %TYPE%, ';
+print '%YEAR%, %MONTH%, %DAY%';
+//print '%INFOS%'; Deprecated
+print '
';
+
+print '
';
- /*
- * Edition info modele document
- */
- $constantes=array(
- 'ADHERENT_ETIQUETTE_TYPE'
- );
- print_fiche_titre($langs->trans("MembersTickets"),'','');
+/*
+ * Edition info modele document
+ */
+$constantes=array(
+ 'ADHERENT_ETIQUETTE_TYPE'
+);
- form_constantes($constantes);
+print_fiche_titre($langs->trans("MembersTickets"),'','');
- print '
';
+form_constantes($constantes);
+
+print '
';
- /*
- * Edition des variables globales non rattache a un theme specifique
- */
- $constantes=array(
+/*
+ * Edition des variables globales non rattache a un theme specifique
+ */
+$constantes=array(
'ADHERENT_AUTOREGISTER_MAIL_SUBJECT',
'ADHERENT_AUTOREGISTER_MAIL',
'ADHERENT_MAIL_VALID_SUBJECT',
@@ -290,153 +297,154 @@ $constantes=array(
'ADHERENT_MAIL_RESIL',
'ADHERENT_MAIL_FROM',
- );
- print_fiche_titre($langs->trans("Other"),'','');
+);
+print_fiche_titre($langs->trans("Other"),'','');
- form_constantes($constantes);
+form_constantes($constantes);
- print '*'.$langs->trans("FollowingConstantsWillBeSubstituted").'
';
- print '%DOL_MAIN_URL_ROOT%, %ID%, %PRENOM%, %NOM%, %LOGIN%, %PASSWORD%,';
- print '%SOCIETE%, %ADRESSE%, %CP%, %VILLE%, %PAYS%, %EMAIL%, %NAISS%, %PHOTO%, %TYPE%';
- //print '%YEAR%, %MONTH%, %DAY%'; // Not supported
- //print '%INFOS%'; Deprecated
- print '
';
+print '*'.$langs->trans("FollowingConstantsWillBeSubstituted").'
';
+print '%DOL_MAIN_URL_ROOT%, %ID%, %PRENOM%, %NOM%, %LOGIN%, %PASSWORD%,';
+print '%SOCIETE%, %ADRESSE%, %CP%, %VILLE%, %PAYS%, %EMAIL%, %NAISS%, %PHOTO%, %TYPE%';
+//print '%YEAR%, %MONTH%, %DAY%'; // Not supported
+//print '%INFOS%'; Deprecated
+print '
';
+dol_fiche_end();
- $db->close();
+$db->close();
- print '
';
+print '
';
- llxFooter('$Date$ - $Revision$');
+llxFooter('$Date$ - $Revision$');
- function form_constantes($tableau)
- {
- global $db,$bc,$langs,$conf,$_Avery_Labels;
+function form_constantes($tableau)
+{
+ global $db,$bc,$langs,$conf,$_Avery_Labels;
- $form = new Form($db);
+ $form = new Form($db);
- print '
';
- print '';
- print '| '.$langs->trans("Description").' | ';
- print ''.$langs->trans("Value").'* | ';
- print ' | ';
- print ''.$langs->trans("Action").' | ';
- print "
\n";
- $var=true;
+ print '';
+ print '';
+ print '| '.$langs->trans("Description").' | ';
+ print ''.$langs->trans("Value").'* | ';
+ print ' | ';
+ print ''.$langs->trans("Action").' | ';
+ print "
\n";
+ $var=true;
- $listofparam=array();
- foreach($tableau as $const) // Loop on each param
- {
- $sql = "SELECT ";
- $sql.= "rowid";
- $sql.= ", ".$db->decrypt('name')." as name";
- $sql.= ", ".$db->decrypt('value')." as value";
- $sql.= ", type";
- $sql.= ", note";
- $sql.= " FROM ".MAIN_DB_PREFIX."const";
- $sql.= " WHERE ".$db->decrypt('name')." = '".$const."'";
- $sql.= " AND entity in (0, ".$conf->entity.")";
- $sql.= " ORDER BY name ASC, entity DESC";
- $result = $db->query($sql);
+ $listofparam=array();
+ foreach($tableau as $const) // Loop on each param
+ {
+ $sql = "SELECT ";
+ $sql.= "rowid";
+ $sql.= ", ".$db->decrypt('name')." as name";
+ $sql.= ", ".$db->decrypt('value')." as value";
+ $sql.= ", type";
+ $sql.= ", note";
+ $sql.= " FROM ".MAIN_DB_PREFIX."const";
+ $sql.= " WHERE ".$db->decrypt('name')." = '".$const."'";
+ $sql.= " AND entity in (0, ".$conf->entity.")";
+ $sql.= " ORDER BY name ASC, entity DESC";
+ $result = $db->query($sql);
- dol_syslog("List params sql=".$sql);
- if ($result)
- {
- $obj = $db->fetch_object($result); // Take first result of select
- $var=!$var;
+ dol_syslog("List params sql=".$sql);
+ if ($result)
+ {
+ $obj = $db->fetch_object($result); // Take first result of select
+ $var=!$var;
- print "\n".'\n";
- $i++;
- }
- }
- print '
';
- }
+ print '';
+ print '';
+ }
+ else if ($obj->type == 'yesno')
+ {
+ print $form->selectyesno('constvalue',$obj->value,1);
+ print ' | ';
+ print '';
+ }
+ else
+ {
+ print '';
+ print ' | ';
+ print '';
+ }
+ print ' | ';
+ }
+ print '';
+ print ' ';
+ // print ''.img_delete().'';
+ print " | ";
+ print "\n";
+ print "\n";
+ $i++;
+ }
+ }
+ print '
';
+}
- ?>
\ No newline at end of file
+?>
\ No newline at end of file
diff --git a/htdocs/adherents/options.php b/htdocs/adherents/options.php
index b80b88908ef..c20a8ccc531 100644
--- a/htdocs/adherents/options.php
+++ b/htdocs/adherents/options.php
@@ -26,6 +26,7 @@
*/
require("../main.inc.php");
+require_once(DOL_DOCUMENT_ROOT."/lib/member.lib.php");
require_once(DOL_DOCUMENT_ROOT."/core/class/extrafields.class.php");
$langs->load("members");
@@ -162,11 +163,17 @@ if ($action == 'delete' && $user->rights->adherent->configurer)
$textobject=$langs->transnoentitiesnoconv("Members");
$help_url='EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros';
-llxHeader('',$langs->trans("OptionalFieldsSetup"),$help_url);
+llxHeader('',$langs->trans("MembersSetup"),$help_url);
print_fiche_titre($langs->trans("OptionalFieldsSetup"));
+
+$head = member_admin_prepare_head($adh);
+
+dol_fiche_head($head, 'attributes', $langs->trans("Member"), 0, 'user');
+
+
print $langs->trans("DefineHereComplementaryAttributes",$textobject).'
'."\n";
print '
';
@@ -202,6 +209,8 @@ foreach($extrafields->attribute_type as $key => $value)
print "";
+dol_fiche_end();
+
/*
* Barre d'actions
*
diff --git a/htdocs/adherents/type.php b/htdocs/adherents/type.php
index 3f950dad3d6..04f1b928222 100644
--- a/htdocs/adherents/type.php
+++ b/htdocs/adherents/type.php
@@ -1,7 +1,7 @@
* Copyright (C) 2003 Jean-Louis Bergamo
- * Copyright (C) 2004-2010 Laurent Destailleur
+ * Copyright (C) 2004-2011 Laurent Destailleur
* Copyright (C) 2005-2011 Regis Houssin
*
* This program is free software; you can redistribute it and/or modify
@@ -138,7 +138,7 @@ $form=new Form($db);
if (! $rowid && $_GET["action"] != 'create' && $_GET["action"] != 'edit')
{
- print_fiche_titre($langs->trans("MembersTypeSetup"));
+ print_fiche_titre($langs->trans("MembersTypes"));
$sql = "SELECT d.rowid, d.libelle, d.cotisation, d.vote";
@@ -165,12 +165,12 @@ if (! $rowid && $_GET["action"] != 'create' && $_GET["action"] != 'edit')
{
$objp = $db->fetch_object($result);
$var=!$var;
- print "";
- print '| '.img_object($langs->trans("ShowType"),'group').' '.$objp->rowid.' | ';
+ print "
";
+ print '| rowid.'">'.img_object($langs->trans("ShowType"),'group').' '.$objp->rowid.' | ';
print ''.$objp->libelle.' | ';
print ''.yn($objp->cotisation).' | ';
print ''.yn($objp->vote).' | ';
- print ''.img_edit().' | ';
+ print 'rowid.'">'.img_edit().' | ';
print "
";
$i++;
}
diff --git a/htdocs/includes/menus/init_menu_auguria.sql b/htdocs/includes/menus/init_menu_auguria.sql
index c8f7c9a148a..0a2b44ccad5 100644
--- a/htdocs/includes/menus/init_menu_auguria.sql
+++ b/htdocs/includes/menus/init_menu_auguria.sql
@@ -263,9 +263,9 @@ 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', __HANDLER__, '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', __HANDLER__, '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', __HANDLER__, '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', __HANDLER__, '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', __HANDLER__, '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__);
-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', __HANDLER__, 'left', 4702__+MAX_llx_menu__, 'members', '', 4700__+MAX_llx_menu__, '/adherents/options.php?leftmenu=setup', 'MembersAttributes', 1, 'members', '$user->rights->adherent->configurer', '', 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', __HANDLER__, 'left', 4700__+MAX_llx_menu__, 'members', '', 13__+MAX_llx_menu__, '/adherents/type.php?leftmenu=setup&mainmenu=members', 'MembersType', 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', __HANDLER__, 'left', 4701__+MAX_llx_menu__, 'members', '', 4700__+MAX_llx_menu__, '/adherents/type.php?leftmenu=setup&mainmenu=members&action=create', 'New', 1, 'members', '$user->rights->adherent->configurer', '', 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', __HANDLER__, 'left', 4702__+MAX_llx_menu__, 'members', '', 4700__+MAX_llx_menu__, '/adherents/type.php?leftmenu=setup&mainmenu=members', 'List', 1, 'members', '$user->rights->adherent->configurer', '', 2, 1, __ENTITY__);
-- Members - Category member
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->categorie->enabled', __HANDLER__, 'left', 5200__+MAX_llx_menu__, 'members', '', 13__+MAX_llx_menu__, '/categories/index.php?leftmenu=cat&type=3', 'MembersCategoriesShort', 0, 'categories', '$user->rights->categorie->lire', '', 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->categorie->enabled', __HANDLER__, 'left', 5201__+MAX_llx_menu__, 'members', '', 5200__+MAX_llx_menu__, '/categories/fiche.php?action=create&type=3', 'NewCategory', 1, 'categories', '$user->rights->categorie->creer', '', 2, 0, __ENTITY__);
diff --git a/htdocs/includes/menus/standard/eldy.lib.php b/htdocs/includes/menus/standard/eldy.lib.php
index 938dcf3db90..2b00d739e27 100644
--- a/htdocs/includes/menus/standard/eldy.lib.php
+++ b/htdocs/includes/menus/standard/eldy.lib.php
@@ -1301,12 +1301,10 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after)
if ($leftmenu=="export") $newmenu->add("/adherents/cartes/carte.php?leftmenu=export",$langs->trans("MembersCards"),1,$user->rights->adherent->export);
$newmenu->add("/adherents/public.php?leftmenu=member_public",$langs->trans("MemberPublicLinks"));
-
- $newmenu->add("/adherents/index.php?leftmenu=setup&mainmenu=members",$langs->trans("Setup"),0,$user->rights->adherent->configurer);
- $newmenu->add("/adherents/type.php?leftmenu=setup&",$langs->trans("MembersTypes"),1,$user->rights->adherent->configurer);
- $newmenu->add("/adherents/options.php?leftmenu=setup&",$langs->trans("MembersAttributes"),1,$user->rights->adherent->configurer);
-
-
+ // Type
+ $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members",$langs->trans("MembersTypes"),0,$user->rights->adherent->configurer);
+ $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members&action=create",$langs->trans("New"),1,$user->rights->adherent->configurer);
+ $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members",$langs->trans("List"),1,$user->rights->adherent->configurer);
}
}
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index f1a516fea69..47f4ec5df96 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -841,6 +841,7 @@ MAIN_PROXY_PORT=Port of proxy server
MAIN_PROXY_USER=Login to use the proxy server
MAIN_PROXY_PASS=Password to use the proxy server
DefineHereComplementaryAttributes=Define here all atributes, not already available by default, and that you want to be supported for %s.
+ExtraFields=Complementary attributes
##### Module password generation
PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase.
diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang
index 8a7b48f40aa..933c1c78700 100644
--- a/htdocs/langs/fr_FR/admin.lang
+++ b/htdocs/langs/fr_FR/admin.lang
@@ -853,6 +853,7 @@ MAIN_PROXY_PORT=Port du serveur proxy mandataire
MAIN_PROXY_USER=Login pour passer le serveur proxy mandataire
MAIN_PROXY_PASS=Mot de passe pour passer le serveur proxy mandataire
DefineHereComplementaryAttributes=Definissez ici la liste des attributs supplémentaire, non disponible en standard, et que vous voulez voir gérez sur les %s.
+ExtraFields=Attributs suplémentaires
##### Module password generation= undefined
PasswordGenerationStandard= Renvoie un mot de passe généré selon algorithme interne Dolibarr: 8 caractères, chiffres et caractères en minuscules mélangés.
diff --git a/htdocs/lib/member.lib.php b/htdocs/lib/member.lib.php
index b67c280ec9b..c3f11ec35e8 100644
--- a/htdocs/lib/member.lib.php
+++ b/htdocs/lib/member.lib.php
@@ -94,6 +94,37 @@ function member_prepare_head($object)
}
+/**
+ * Return array head with list of tabs to view object informations
+ * @param object Member
+ * @return array head
+ */
+function member_admin_prepare_head($object)
+{
+ global $langs, $conf, $user;
+
+ $h = 0;
+ $head = array();
+
+ $head[$h][0] = DOL_URL_ROOT.'/adherents/admin/adherent.php';
+ $head[$h][1] = $langs->trans("Miscellanous");
+ $head[$h][2] = 'general';
+ $h++;
+
+ $head[$h][0] = DOL_URL_ROOT.'/adherents/options.php';
+ $head[$h][1] = $langs->trans("ExtraFields");
+ $head[$h][2] = 'attributes';
+ $h++;
+
+ // Show more tabs from modules
+ // Entries must be declared in modules descriptor with line
+ // $this->tabs = array('entity:+tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to add new tab
+ // $this->tabs = array('entity:-tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to remove a tab
+ complete_head_from_modules($conf,$langs,$object,$head,$h,'member_admin');
+
+ return $head;
+}
+
/**
* Return array head with list of tabs to view object stats informations