Bonjour,

Voici la deuxième version du patch de désactivation du tiers.
J'ai dû modifier une traduction pour que la page listant les prospects n'affiche pas deux colonnes 'états'. (etat->suivi pour les contact de prospect)

translation:
Hello,

This is the second version of the patch to disable thirdparty.
I had to edit a translation for the page listing the prospect does not show two columns of states'. (status-> tracking for contacting prospective)


[email protected] a écrit :

Bonjour à nouveau,

Désolé pour le double mail, j'ai résolu les deux point qui m'échappaient et ai achevé la modification du module société.

Ci-joint le patch Activité qui ajoute au tiers un champ 'activity_state' permettant de définir si le tiers est en activité ou a cessé son activité. Inclus également une option de filtrage lors des recherche (activable dans la conf du module) afin de restreindre les recherches aux tiers en activité, ayant cessé leur activité ou tous les tiers.

Je prend toujours les commentaires et conseils, évidement ;)

Cordialement,

Anthony Poiret



[email protected] a écrit :

Bonjour à tous,

Actuellement en stage pour la société Auguria, je souhaite apporter ma contribution au développement de Dolibarr et ai donc cherché une petite tâche anodine pour me faire la main.

J'ai opté pour la tâche #9790, qui consiste à pouvoir désactiver un tiers pour cause de cessation d'activité, par exemple, sans avoir à le supprimer de la table des sociétés.

J'ai déjà apporter toutes les modifications nécessaires au DAO et au .php, je bloque actuellement sur le fichier de configuration du module.

Je voudrais rajouter un form pour limiter les résultat de recherche au entreprises en activité, en cessation d'activité ou les deux (à partir d'un selectarray), mais je n'arrive pas à trouver le descriptif des options de configurations (je suis bien parvenu à localiser le form de la partie 'autre' par exemple, dans htdocs/admin/societe.php, mais je n'arrive pas à saisir:

1- où est stocké le résultat du post quand on valide la modification (je pensais qu'elle s'appliquait dans la table des constantes, or ça ne semble pas être le cas)

2- où est stocké le descriptif du select html permettant de choisir ses options

En vous remerciant de votre lecture,

Cordialement,

Anthony Poiret

PS: je ne suis pas familier avec les mailing lists, si certaines habitudes me font défauts, n'hésitez pas à me le signaler, j'en prendrai notes attentivement

_______________________________________________
Dolibarr-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev


### Eclipse Workspace Patch 1.0
#P dolibarr
Index: htdocs/comm/clients.php
===================================================================
RCS file: /sources/dolibarr/dolibarr/htdocs/comm/clients.php,v
retrieving revision 1.74
diff -u -r1.74 clients.php
--- htdocs/comm/clients.php     26 Mar 2011 18:29:29 -0000      1.74
+++ htdocs/comm/clients.php     6 May 2011 15:52:57 -0000
@@ -80,7 +80,7 @@
     $search_idprof4='';
 }
 
-$sql = "SELECT s.rowid, s.nom as name, s.client, s.ville, st.libelle as 
stcomm, s.prefix_comm, s.code_client,";
+$sql = "SELECT s.rowid, s.nom as name, s.client, s.ville, st.libelle as 
stcomm, s.prefix_comm, s.code_client,s.status as status,";
 $sql.= " s.datec, s.datea, s.canvas";
 // We'll need these fields in order to filter by sale (including the case 
where the user can only see his prospects)
 if ($search_sale) $sql .= ", sc.fk_soc, sc.fk_user";
@@ -172,6 +172,7 @@
        
print_liste_field_titre($langs->trans("Company"),"clients.php","s.nom","",$param,"",$sortfield,$sortorder);
     
print_liste_field_titre($langs->trans("CustomerCode"),"clients.php","s.code_client","",$param,"",$sortfield,$sortorder);
        
print_liste_field_titre($langs->trans("Town"),"clients.php","s.ville","",$param,"",$sortfield,$sortorder);
+       
print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$params,'',$sortfield,$sortorder);
        
print_liste_field_titre($langs->trans("DateCreation"),"clients.php","datec","",$param,'align="right"',$sortfield,$sortorder);
        print "</tr>\n";
 
@@ -184,7 +185,7 @@
     print '</td>';
        print '<td class="liste_titre">';
        print '<input type="text" class="flat" name="search_ville" 
value="'.$search_ville.'" size="10">';
-       print '</td>';
+       print '</td><td>&nbsp;</td>';
        print '<td class="liste_titre" align="right"><input class="liste_titre" 
type="image" src="'.DOL_URL_ROOT.'/theme/'.$conf->theme.'/img/search.png" 
value="'.dol_escape_htmltag($langs->trans("Search")).'" 
title="'.dol_escape_htmltag($langs->trans("Search")).'">';
     print '&nbsp; ';
     print '<input type="image" class="liste_titre" name="button_removefilter" 
src="'.DOL_URL_ROOT.'/theme/'.$conf->theme.'/img/searchclear.png" 
value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" 
title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
@@ -205,10 +206,13 @@
         $thirdpartystatic->name=$obj->name;
         $thirdpartystatic->client=$obj->client;
         $thirdpartystatic->canvas=$obj->canvas;
+        $thirdpartystatic->status=$obj->status;
+        $thirdpartystatic->getImgStatus($conf->theme);
         print $thirdpartystatic->getNomUrl(1);
                print '</td>';
         print '<td>'.$obj->code_client.'</td>';
                print '<td>'.$obj->ville.'</td>';
+               print '<td>'.'<img src="'.$thirdpartystatic->imgStatus.'" 
alt="'.($thirdpartystatic->status?$langs->trans("InActivity"):$langs->trans("ActivityCeased")).'"
 /></td>';
                print '<td 
align="right">'.dol_print_date($db->jdate($obj->datec),'day').'</td>';
                print "</tr>\n";
                $i++;
Index: htdocs/comm/prospect/prospects.php
===================================================================
RCS file: /sources/dolibarr/dolibarr/htdocs/comm/prospect/prospects.php,v
retrieving revision 1.81
diff -u -r1.81 prospects.php
--- htdocs/comm/prospect/prospects.php  24 Feb 2011 18:22:28 -0000      1.81
+++ htdocs/comm/prospect/prospects.php  6 May 2011 15:52:57 -0000
@@ -158,7 +158,7 @@
 
 $htmlother=new FormOther($db);
 
-$sql = "SELECT s.rowid, s.nom, s.ville, s.datec, s.datea,";
+$sql = "SELECT s.rowid, s.nom, s.ville, s.datec, s.datea,s.status as status,";
 $sql.= " st.libelle as stcomm, s.prefix_comm, s.fk_stcomm, 
s.fk_prospectlevel,";
 $sql.= " d.nom as departement";
 // Updated by Matelli (see 
http://matelli.fr/showcases/patchs-dolibarr/enhance-prospect-searching.html)
@@ -288,7 +288,8 @@
        
print_liste_field_titre($langs->trans("State"),"prospects.php","s.fk_departement","",$param,"align=\"center\"",$sortfield,$sortorder);
        
print_liste_field_titre($langs->trans("DateCreation"),"prospects.php","s.datec","",$param,"align=\"center\"",$sortfield,$sortorder);
        
print_liste_field_titre($langs->trans("ProspectLevelShort"),"prospects.php","s.fk_prospectlevel","",$param,"align=\"center\"",$sortfield,$sortorder);
-       
print_liste_field_titre($langs->trans("Status"),"prospects.php","s.fk_stcomm","",$param,"align=\"center\"",$sortfield,$sortorder);
+       
print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$params,'',$sortfield,$sortorder);
+       
print_liste_field_titre($langs->trans("Tracking"),"prospects.php","s.fk_stcomm","",$param,"align=\"center\"",$sortfield,$sortorder);
        print '<td class="liste_titre" colspan="4">&nbsp;</td>';
        print "</tr>\n";
 
@@ -350,6 +351,7 @@
 
        $prospectstatic=new Prospect($db);
        $prospectstatic->client=2;
+       
 
        while ($i < min($num,$conf->liste_limit))
        {
@@ -361,6 +363,8 @@
                print '<td>';
                $prospectstatic->id=$obj->rowid;
                $prospectstatic->nom=$obj->nom;
+               $prospectstatic->status=$obj->status;
+       $prospectstatic->getImgStatus($conf->theme);
                print $prospectstatic->getNomUrl(1);
                print '</td>';
                print "<td>".$obj->ville."&nbsp;</td>";
@@ -371,6 +375,8 @@
                print "<td align=\"center\">";
                print $prospectstatic->LibLevel($obj->fk_prospectlevel);
                print "</td>";
+               // ActivityStatus
+               print '<td>'.'<img src="'.$prospectstatic->imgStatus.'" 
alt="'.($prospectstatic->status?$langs->trans("InActivity"):$langs->trans("ActivityCeased")).'"
 /></td>';
                // Statut
                print '<td align="center" nowrap="nowrap">';
                print $prospectstatic->LibStatut($obj->fk_stcomm,2);
Index: htdocs/fourn/liste.php
===================================================================
RCS file: /sources/dolibarr/dolibarr/htdocs/fourn/liste.php,v
retrieving revision 1.22
diff -u -r1.22 liste.php
--- htdocs/fourn/liste.php      24 Feb 2011 18:22:28 -0000      1.22
+++ htdocs/fourn/liste.php      6 May 2011 15:52:57 -0000
@@ -64,10 +64,11 @@
  */
 
 $htmlother=new FormOther($db);
+$thirdpartystatic=new Societe($db);
 
 llxHeader();
 
-$sql = "SELECT s.rowid as socid, s.nom, s.ville, s.datec, s.datea,  st.libelle 
as stcomm, s.prefix_comm";
+$sql = "SELECT s.rowid as socid, s.nom, s.ville, s.datec, s.datea,  st.libelle 
as stcomm, s.prefix_comm,s.status as status";
 $sql.= " , code_fournisseur, code_compta_fournisseur";
 if (!$user->rights->societe->client->voir && !$socid) $sql .= ", sc.fk_soc, 
sc.fk_user ";
 $sql.= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."c_stcomm as 
st";
@@ -140,6 +141,7 @@
        
print_liste_field_titre($langs->trans("Town"),$_SERVER["PHP_SELF"],"s.ville","",$param,'valign="middle"',$sortfield,$sortorder);
        
print_liste_field_titre($langs->trans("SupplierCode"),$_SERVER["PHP_SELF"],"s.code_fournisseur","",$param,'align="left"',$sortfield,$sortorder);
        
print_liste_field_titre($langs->trans("AccountancyCode"),$_SERVER["PHP_SELF"],"s.code_compta","",$param,'align="left"',$sortfield,$sortorder);
+       
print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$params,'',$sortfield,$sortorder);
        
print_liste_field_titre($langs->trans("DateCreation"),$_SERVER["PHP_SELF"],"datec","",$param,'align="center"',$sortfield,$sortorder);
        print '<td class="liste_titre">&nbsp;</td>';
        print "</tr>\n";
@@ -155,7 +157,7 @@
 
        print '<td align="left" class="liste_titre">';
        print '<input class="flat" type="text" size="10" name="search_compta" 
value="'.$_GET["search_compta"].'">';
-       print '</td>';
+       print '</td><td>&nbsp;</td>';
 
        print '<td class="liste_titre" colspan="2" align="right"><input 
class="liste_titre" type="image" 
src="'.DOL_URL_ROOT.'/theme/'.$conf->theme.'/img/search.png" 
value="'.dol_escape_htmltag($langs->trans("Search")).'" 
title="'.dol_escape_htmltag($langs->trans("Search")).'"></td>';
 
@@ -167,13 +169,17 @@
        {
                $obj = $db->fetch_object($resql);
                $var=!$var;
-
+               
+        $thirdpartystatic->status=$obj->status;
+        $thirdpartystatic->getImgStatus($conf->theme);
+        
                print "<tr $bc[$var]>";
                print '<td><a 
href="fiche.php?socid='.$obj->socid.'">'.img_object($langs->trans("ShowSupplier"),"company").'</a>';
                print "&nbsp;<a 
href=\"fiche.php?socid=".$obj->socid."\">".$obj->nom."</a></td>\n";
                print "<td>".$obj->ville."</td>\n";
                print '<td align="left">'.$obj->code_fournisseur.'&nbsp;</td>';
                print '<td 
align="left">'.$obj->code_compta_fournisseur.'&nbsp;</td>';
+               print '<td>'.'<img src="'.$thirdpartystatic->imgStatus.'" 
alt="'.($thirdpartystatic->status?$langs->trans("InActivity"):$langs->trans("ActivityCeased")).'"
 /></td>';
                print '<td 
align="center">'.dol_print_date($db->jdate($obj->datec)).'</td>';
                print "<td>&nbsp;</td>\n";
                print "</tr>\n";
Index: htdocs/langs/en_US/companies.lang
===================================================================
RCS file: /sources/dolibarr/dolibarr/htdocs/langs/en_US/companies.lang,v
retrieving revision 1.176
diff -u -r1.176 companies.lang
--- htdocs/langs/en_US/companies.lang   5 May 2011 22:19:22 -0000       1.176
+++ htdocs/langs/en_US/companies.lang   6 May 2011 15:52:57 -0000
@@ -310,6 +310,7 @@
 InActivity=In activity
 ActivityCeased=Activity ceased
 ActivityStateFilter=Activity status
+Tracking=Traking
 
 # Monkey
 MonkeyNumRefModelDesc=Return numero with format %syymm-nnnn for customer code 
and %syymm-nnnn for supplier code where yy is year, mm is month and nnnn is a 
sequence with no break and no return to 0.
Index: htdocs/langs/fr_FR/companies.lang
===================================================================
RCS file: /sources/dolibarr/dolibarr/htdocs/langs/fr_FR/companies.lang,v
retrieving revision 1.193
diff -u -r1.193 companies.lang
--- htdocs/langs/fr_FR/companies.lang   5 May 2011 22:19:22 -0000       1.193
+++ htdocs/langs/fr_FR/companies.lang   6 May 2011 15:52:58 -0000
@@ -317,6 +317,7 @@
 InActivity=En activité
 ActivityCeased=En cessation d'activité
 ActivityStateFilter=Statut d'activité
+Track=Suivi
 
 # Monkey
 MonkeyNumRefModelDesc=Renvoie le numéro sous la forme %syymm-nnnn pour les 
codes clients et %syymm-nnnn pour les codes fournisseurs où yy est l'année, mm 
le mois et nnnn un compteur séquentiel sans rupture et sans remise à 0.
Index: htdocs/societe/class/societe.class.php
===================================================================
RCS file: /sources/dolibarr/dolibarr/htdocs/societe/class/societe.class.php,v
retrieving revision 1.76
diff -u -r1.76 societe.class.php
--- htdocs/societe/class/societe.class.php      5 May 2011 22:19:22 -0000       
1.76
+++ htdocs/societe/class/societe.class.php      6 May 2011 15:53:01 -0000
@@ -131,6 +131,7 @@
 
     var $import_key;
 
+    var $imgStatus;
     var $logo;
     var $logo_small;
     var $logo_mini;
@@ -681,7 +682,7 @@
                 $this->tva_assuj      = $obj->tva_assuj;
                 $this->tva_intra      = $obj->tva_intra;
                 $this->status = $obj->status;
-
+                
                 // Local Taxes
                 $this->localtax1_assuj      = $obj->localtax1_assuj;
                 $this->localtax2_assuj      = $obj->localtax2_assuj;
@@ -950,9 +951,20 @@
                 return -1;
             }
         }
-
+               
+    }
+       
+    /**
+     *           \brief                Return the img src linked to the status 
for the theme passed in parameters
+     *           \return               string  The url of the img linked
+     * 
+     */
+    function getImgStatus($theme)
+    {
+       $imgStatusOk = '/theme/'.$theme.'/img/statut6.png';
+       $imgStatusKo = '/theme/'.$theme.'/img/statut5.png';
+       $this->imgStatus=$this->status ? $imgStatusOk : $imgStatusKo;
     }
-
 
     /**
      *    \brief     Retournes les factures impayees de la societe
Index: htdocs/societe/index.php
===================================================================
RCS file: /sources/dolibarr/dolibarr/htdocs/societe/index.php,v
retrieving revision 1.7
diff -u -r1.7 index.php
--- htdocs/societe/index.php    26 Mar 2011 13:18:02 -0000      1.7
+++ htdocs/societe/index.php    6 May 2011 15:52:58 -0000
@@ -131,7 +131,7 @@
  * Last third parties modified
  */
 $max=15;
-$sql = "SELECT s.rowid, s.nom as name, s.client, s.fournisseur, s.canvas, 
s.tms as datem";
+$sql = "SELECT s.rowid, s.nom as name, s.client, s.fournisseur, s.canvas, 
s.tms as datem,s.status as status";
 $sql.= " FROM ".MAIN_DB_PREFIX."societe as s";
 if (! $user->rights->societe->client->voir) $sql.= ", 
".MAIN_DB_PREFIX."societe_commerciaux as sc";
 $sql.= " WHERE s.entity = ".$conf->entity;
@@ -157,7 +157,9 @@
 
         print '<table class="noborder" width="100%">';
 
-        print '<tr class="liste_titre"><td 
colspan="3">'.$transRecordedType.'</td></tr>';
+        print '<tr class="liste_titre"><td 
colspan="2">'.$transRecordedType.'</td>';
+        print '<td>'.$langs->trans('Status').'</td>';
+        print '<td>&nbsp;</td></tr>';
 
         $var=True;
 
@@ -169,12 +171,14 @@
             print "<tr $bc[$var]>";
             // Name
             print '<td nowrap="nowrap">';
-            $thirdparty_static->id=$objp->rowid;
+            $thirdparty_static->id=$objp->rowid;            
             $thirdparty_static->name=$objp->name;
             $thirdparty_static->client=$objp->client;
             $thirdparty_static->fournisseur=$objp->fournisseur;
             $thirdparty_static->datem=$db->jdate($objp->datem);
             $thirdparty_static->canvas=$objp->canvas;
+            $thirdparty_static->status=$objp->status;
+                       $thirdparty_static->getImgStatus($conf->theme);
             print $thirdparty_static->getNomUrl(1,'',16);
             print "</td>\n";
             // Type
@@ -197,6 +201,7 @@
                print $thirdparty_static->getNomUrl(0,'supplier');
             }
             print '</td>';
+            print '<td>'.'<img src="'.$thirdparty_static->imgStatus.'" 
alt="'.($companystatic->status?$langs->trans("InActivity"):$langs->trans("ActivityCeased")).'"
 /></td>';
             // Last modified date
             print '<td align="right">';
             print dol_print_date($thirdparty_static->datem,'day');
Index: htdocs/societe/societe.php
===================================================================
RCS file: /sources/dolibarr/dolibarr/htdocs/societe/societe.php,v
retrieving revision 1.10
diff -u -r1.10 societe.php
--- htdocs/societe/societe.php  5 May 2011 22:19:21 -0000       1.10
+++ htdocs/societe/societe.php  6 May 2011 15:52:59 -0000
@@ -175,7 +175,7 @@
  */
 $title=$langs->trans("ListOfThirdParties");
 
-$sql = "SELECT s.rowid, s.nom as name, s.ville, s.datec, s.datea,";
+$sql = "SELECT s.rowid, s.nom as name, s.ville, s.datec, s.datea, s.status as 
status,";
 $sql.= " st.libelle as stcomm, s.prefix_comm, s.client, s.fournisseur, 
s.canvas,";
 $sql.= " s.siren as idprof1, s.siret as idprof2, ape as idprof3, idprof4 as 
idprof4";
 // We'll need these fields in order to filter by sale (including the case 
where the user can only see his prospects)
@@ -332,6 +332,7 @@
        
print_liste_field_titre($form->textwithpicto($langs->trans("ProfId2Short"),$textprofid[2],1,0),$_SERVER["PHP_SELF"],"s.siret","",$params,'nowrap="nowrap"',$sortfield,$sortorder);
        
print_liste_field_titre($form->textwithpicto($langs->trans("ProfId3Short"),$textprofid[3],1,0),$_SERVER["PHP_SELF"],"s.ape","",$params,'nowrap="nowrap"',$sortfield,$sortorder);
        
print_liste_field_titre($form->textwithpicto($langs->trans("ProfId4Short"),$textprofid[4],1,0),$_SERVER["PHP_SELF"],"s.idprof4","",$params,'nowrap="nowrap"',$sortfield,$sortorder);
+       
print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$params,'',$sortfield,$sortorder);
        print '<td></td>';
        print "</tr>\n";
 
@@ -360,7 +361,7 @@
        // IdProf4
        print '<td class="liste_titre">';
        print '<input class="flat" size="8" type="text" name="search_idprof4" 
value="'.$search_idprof4.'">';
-       print '</td>';
+       print '</td><td>&nbsp</td>';
        // Type (customer/prospect/supplier)
        print '<td class="liste_titre" align="right">';
        print '<input type="image" class="liste_titre" name="button_search" 
src="'.DOL_URL_ROOT.'/theme/'.$conf->theme.'/img/search.png" 
value="'.dol_escape_htmltag($langs->trans("Search")).'" 
title="'.dol_escape_htmltag($langs->trans("Search")).'">';
@@ -370,7 +371,7 @@
        print "</tr>\n";
 
        $var=True;
-
+       
        while ($i < min($num,$conf->liste_limit))
        {
                $obj = $db->fetch_object($resql);
@@ -380,6 +381,8 @@
                $companystatic->name=$obj->name;
                $companystatic->canvas=$obj->canvas;
         $companystatic->client=$obj->client;
+        $companystatic->status=$obj->status;
+        $companystatic->getImgStatus($conf->theme);
                print $companystatic->getNomUrl(1,'',24);
                print "</td>\n";
                print "<td>".$obj->ville."</td>\n";
@@ -387,7 +390,9 @@
                print "<td>".$obj->idprof2."</td>\n";
                print "<td>".$obj->idprof3."</td>\n";
                print "<td>".$obj->idprof4."</td>\n";
+               print '<td>'.'<img src="'.$companystatic->imgStatus.'" 
alt="'.($companystatic->status?$langs->trans("InActivity"):$langs->trans("ActivityCeased")).'"
 /></td>';
                print '<td colspan="2" align="center">';
+               
                $s='';
                if (($obj->client==1 || $obj->client==3) && 
empty($conf->global->SOCIETE_DISABLE_CUSTOMERS))
                {
_______________________________________________
Dolibarr-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev

Répondre à