From 10f1df53e0d5baf5aeabd1129ca1e4e2a048d823 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 20 Mar 2010 13:12:00 +0000 Subject: [PATCH] New: Enhancement in category module --- htdocs/categories/categorie.php | 82 +++++++++++++++++++----------- htdocs/langs/en_US/categories.lang | 1 + htdocs/langs/fr_FR/categories.lang | 1 + htdocs/lib/member.lib.php | 9 ++++ 4 files changed, 63 insertions(+), 30 deletions(-) diff --git a/htdocs/categories/categorie.php b/htdocs/categories/categorie.php index 67af3432a17..e5c302b8baf 100644 --- a/htdocs/categories/categorie.php +++ b/htdocs/categories/categorie.php @@ -89,6 +89,7 @@ if ($_REQUEST["removecat"]) { if ($_REQUEST["typeid"]==0 && ($user->rights->produit->creer || $user->rights->service->creer)) { + require_once(DOL_DOCUMENT_ROOT."/product.class.php"); $object = new Product($db); if ($_REQUEST["ref"]) $result = $object->fetch('',$_REQUEST["ref"]); if ($_REQUEST["id"]) $result = $object->fetch($_REQUEST["id"]); @@ -106,6 +107,7 @@ if ($_REQUEST["removecat"]) } if ($_REQUEST["typeid"] == 3 && $user->rights->adherent->creer) { + require_once(DOL_DOCUMENT_ROOT."/adherents/adherent.class.php"); $object = new Adherent($db); $result = $object->fetch($objectid); } @@ -119,9 +121,11 @@ if ($_REQUEST["removecat"]) if (isset($_REQUEST["catMere"]) && $_REQUEST["catMere"]>=0) { $_GET["id"]=$_REQUEST["id"]; + $_GET["type"]=$_REQUEST["type"]; if ($_REQUEST["typeid"]==0 && ($user->rights->produit->creer || $user->rights->service->creer)) { + require_once(DOL_DOCUMENT_ROOT."/product.class.php"); $object = new Product($db); if ($_REQUEST["ref"]) $result = $object->fetch('',$_REQUEST["ref"]); if ($_REQUEST["id"]) $result = $object->fetch($_REQUEST["id"]); @@ -141,6 +145,7 @@ if (isset($_REQUEST["catMere"]) && $_REQUEST["catMere"]>=0) } if ($_REQUEST["typeid"]==3 && $user->rights->adherent->creer) { + require_once(DOL_DOCUMENT_ROOT."/adherents/adherent.class.php"); $object = new Adherent($db); $result = $object->fetch($objectid); $type = 'member'; @@ -181,14 +186,14 @@ if ($_GET["socid"]) /* * Creation de l'objet client/fournisseur correspondant au socid */ - $soc = new Societe($db); - $result = $soc->fetch($_GET["socid"]); - llxHeader("","",$langs->trans("Category")); + $soc = new Societe($db); + $result = $soc->fetch($_GET["socid"]); + llxHeader("","",$langs->trans("Category")); - /* - * Affichage onglets - */ + /* + * Affichage onglets + */ $head = societe_prepare_head($soc); dol_fiche_head($head, 'category', $langs->trans("ThirdParty"),0,'company'); @@ -268,9 +273,11 @@ else if ($_GET["id"] || $_GET["ref"]) { if ($_GET["type"] == 0) { - /* - * Fiche categorie de produit - */ + $langs->load("products"); + + /* + * Fiche categorie de produit + */ require_once(DOL_DOCUMENT_ROOT."/lib/product.lib.php"); require_once(DOL_DOCUMENT_ROOT."/product.class.php"); @@ -316,43 +323,57 @@ else if ($_GET["id"] || $_GET["ref"]) if ($_GET["type"] == 3) { - /* - * Fiche categorie d'adherent - */ + $langs->load("members"); + + /* + * Fiche categorie d'adherent + */ require_once(DOL_DOCUMENT_ROOT."/lib/member.lib.php"); require_once(DOL_DOCUMENT_ROOT."/adherents/adherent.class.php"); + require_once(DOL_DOCUMENT_ROOT."/adherents/adherent_type.class.php"); // Produit $member = new Adherent($db); if ($_GET["ref"]) $result = $member->fetch('',$_GET["ref"]); if ($_GET["id"]) $result = $member->fetch($_GET["id"]); - llxHeader("","",$langs->trans("CardMember")); + $adht = new AdherentType($db); + $adht->fetch($member->typeid); + + llxHeader("","",$langs->trans("Member")); - $head=member_prepare_head($product, $user); - $titre=$langs->trans("CardMember"); - $picto='member'; + $head=member_prepare_head($member, $user); + $titre=$langs->trans("Member"); + $picto='user'; dol_fiche_head($head, 'category', $titre,0,$picto); print ''; - print ""; - // Reference - print ''; - print ''; - // Libelle - print ''; - print ''; - - // Statut - print ''; + print ''; + // Nom + print ''; + print ''; + + // Prenom + print ''; + print ''; + + // Login + print ''; + + // Type + print '\n"; + + // Status + print ''; + print '
'.$langs->trans("Ref").''; - print $html->showrefnav($member,'ref','',1,'ref'); - print '
'.$langs->trans("Label").''.$member->libelle.'
'.$langs->trans("Status").''; - print $member->getLibStatut(2); + // Ref + print '
'.$langs->trans("Ref").''; + print $html->showrefnav($member,'rowid'); print '
'.$langs->trans("Lastname").''.$member->nom.' 
'.$langs->trans("Firstname").''.$member->prenom.' 
'.$langs->trans("Login").''.$member->login.' 
'.$langs->trans("Type").''.$adht->getNomUrl(1)."
'.$langs->trans("Status").''.$member->getLibStatut(4).'
'; print ''; @@ -382,6 +403,7 @@ function formCategory($db,$object,$typeid) print '
'; print ''; print ''; + print ''; print ''; print ''; print '
'; @@ -438,7 +460,7 @@ function formCategory($db,$object,$typeid) if ($typeid == 3) $permission=$user->rights->adherent->creer; if ($permission) { - print ""; + print ""; print img_delete($langs->trans("DeleteFromCat")).' '; print $langs->trans("DeleteFromCat").""; } diff --git a/htdocs/langs/en_US/categories.lang b/htdocs/langs/en_US/categories.lang index d8b5e957811..e1034565fec 100644 --- a/htdocs/langs/en_US/categories.lang +++ b/htdocs/langs/en_US/categories.lang @@ -52,6 +52,7 @@ CompanyIsInSuppliersCategories=This third party owns to following suppliers cate ProductHasNoCategory=This product/service is not in any categories SupplierHasNoCategory=This supplier is not in any categories CompanyHasNoCategory=This company is not in any categories +MemberHasNoCategory=This member is not in any categories ClassifyInCategory=Classify in category NoneCategory=None CategoryExistsAtSameLevel=This category already exists with this ref diff --git a/htdocs/langs/fr_FR/categories.lang b/htdocs/langs/fr_FR/categories.lang index c45bbf532d5..da849c570ae 100644 --- a/htdocs/langs/fr_FR/categories.lang +++ b/htdocs/langs/fr_FR/categories.lang @@ -52,6 +52,7 @@ CompanyIsInSuppliersCategories=Cette société est dans les catégories fourniss ProductHasNoCategory=Ce produit/service n'est dans aucune catégorie en particulier SupplierHasNoCategory=Ce fournisseur n'est dans aucune catégorie en particulier CompanyHasNoCategory=Cette société n'est dans aucune catégorie en particulier +MemberHasNoCategory=Cet adhérent n'est dans aucune catégorie en particulier ClassifyInCategory=Classer dans la catégorie NoneCategory=Aucune CategoryExistsAtSameLevel=Cette catégorie existe déjà pour cette référence diff --git a/htdocs/lib/member.lib.php b/htdocs/lib/member.lib.php index 4e439011368..f28d631a7c7 100644 --- a/htdocs/lib/member.lib.php +++ b/htdocs/lib/member.lib.php @@ -55,6 +55,15 @@ function member_prepare_head($member) $h++; } + // Show category tab + if ($conf->categorie->enabled && $user->rights->categorie->lire) + { + $head[$h][0] = DOL_URL_ROOT."/categories/categorie.php?id=".$member->id.'&type=3'; + $head[$h][1] = $langs->trans('Categories'); + $head[$h][2] = 'category'; + $h++; + } + $head[$h][0] = DOL_URL_ROOT.'/adherents/note.php?id='.$member->id; $head[$h][1] = $langs->trans("Note"); $head[$h][2] = 'note';