diff --git a/htdocs/core/boxes/box_graph_product_distribution.php b/htdocs/core/boxes/box_graph_product_distribution.php index b81bd2f9578e7cfa30846a55e8f8f5ab3a785aaf..ca851961857757ec4e0a78473dba85cee496eb14 100644 --- a/htdocs/core/boxes/box_graph_product_distribution.php +++ b/htdocs/core/boxes/box_graph_product_distribution.php @@ -180,6 +180,7 @@ class box_graph_product_distribution extends ModeleBoxes //$px1->mode='depth'; $px1->SetType(array('pie')); $px1->SetTitle($langs->trans("BoxProductDistributionFor",$paramtitle,$langs->transnoentitiesnoconv("Invoices"))); + $px1->combine = 0.05; $px1->draw($filenamenb,$fileurlnb); } @@ -238,6 +239,7 @@ class box_graph_product_distribution extends ModeleBoxes //$px2->mode='depth'; $px2->SetType(array('pie')); $px2->SetTitle($langs->trans("BoxProductDistributionFor",$paramtitle,$langs->transnoentitiesnoconv("Proposals"))); + $px2->combine = 0.05; $px2->draw($filenamenb,$fileurlnb); } @@ -297,6 +299,8 @@ class box_graph_product_distribution extends ModeleBoxes //$px3->mode='depth'; $px3->SetType(array('pie')); $px3->SetTitle($langs->trans("BoxProductDistributionFor",$paramtitle,$langs->transnoentitiesnoconv("Orders"))); + $px3->combine = 0.05; + $px3->draw($filenamenb,$fileurlnb); } } diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php index b65c5c8ede4f9c7dddca92bf40830a734d9735c0..0b713de80ff6cda51df18fe5b27e77d87404987e 100644 --- a/htdocs/core/class/dolgraph.class.php +++ b/htdocs/core/class/dolgraph.class.php @@ -1,6 +1,6 @@ <?php /* Copyright (c) 2003-2006 Rodolphe Quiedeville <rodolphe@quiedeville.org> - * Copyright (c) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net> + * Copyright (c) 2004-2015 Laurent Destailleur <eldy@users.sourceforge.net> * * 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 @@ -56,7 +56,7 @@ class DolGraph var $showlegend=1; var $showpointvalue=1; var $showpercent=0; - + var $combine=0; // 0.05 if you want to combine records < 5% into "other" var $graph; // Objet Graph (Artichow, Phplot...) var $error; @@ -875,39 +875,43 @@ class DolGraph function plotWithOptions_'.$tag.'() { $.plot($("#placeholder_'.$tag.'"), d0, { - series: { - pie: { - show: true, - radius: 3/4, - label: { - show: true, - radius: 3/4, - formatter: function(label, series) { - var percent=Math.round(series.percent); - var number=series.data[0][1]; - return \''; - $this->stringtoshow.='<div style="font-size:8pt;text-align:center;padding:2px;color:white;">'; - if ($urltemp) $this->stringtoshow.='<a style="color: #FFFFFF;" border="0" href="'.$urltemp.'">'; - $this->stringtoshow.='\'+'; - $this->stringtoshow.=($showlegend?'':'label+\'<br/>\'+'); // Hide label if already shown in legend - $this->stringtoshow.=($showpointvalue?'number+':''); - $this->stringtoshow.=($showpercent?'\'<br/>\'+percent+\'%\'+':''); - $this->stringtoshow.='\''; - if ($urltemp) $this->stringtoshow.='</a>'; - $this->stringtoshow.='</div>\'; - }, - background: { - opacity: 0.5, - color: \'#000000\' - } - } - } + series: { + pie: { + show: true, + radius: 0.8, + '.($this->combine ? ' + combine: { + threshold: '.$this->combine.' + },' : '') . ' + label: { + show: true, + radius: 0.9, + formatter: function(label, series) { + var percent=Math.round(series.percent); + var number=series.data[0][1]; + return \''; + $this->stringtoshow.='<div style="font-size:8pt;text-align:center;padding:2px;color:black;">'; + if ($urltemp) $this->stringtoshow.='<a style="color: #FFFFFF;" border="0" href="'.$urltemp.'">'; + $this->stringtoshow.='\'+'; + $this->stringtoshow.=($showlegend?'':'label+\' \'+'); // Hide label if already shown in legend + $this->stringtoshow.=($showpointvalue?'number+':''); + $this->stringtoshow.=($showpercent?'\'<br/>\'+percent+\'%\'+':''); + $this->stringtoshow.='\''; + if ($urltemp) $this->stringtoshow.='</a>'; + $this->stringtoshow.='</div>\'; + }, + background: { + opacity: 0.0, + color: \'#000000\' + } + } + } }, zoom: { - interactive: true + interactive: true }, pan: { - interactive: true + interactive: true },'; if (count($datacolor)) { diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 5d75d7ad5d6760bd46ff0f2b524673ccfa920354..8b9ca77f6a9e3447d7bd1083d11d67a79649b40b 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -1777,26 +1777,29 @@ function dol_print_graph($htmlid,$width,$height,$data,$showlegend=0,$type='pie', series: { pie: { show: true, - radius: 3/4, + radius: 0.8, + combine: { + threshold: 0.05 + }, label: { show: true, - radius: 3/4, + radius: 0.9, formatter: function(label, series) { var percent=Math.round(series.percent); var number=series.data[0][1]; return \''; - print '<div style="font-size:8pt;text-align:center;padding:2px;color:white;">'; + print '<div style="font-size:8pt;text-align:center;padding:2px;color:black;">'; if ($url) print '<a style="color: #FFFFFF;" border="0" href="'.$url.'=">'; - print '\'+'.($showlegend?'number':'label+\'<br/>\'+number'); + print '\'+'.($showlegend?'number':'label+\' \'+number'); if (! empty($showpercent)) print '+\'<br/>\'+percent+\'%\''; print '+\''; if ($url) print '</a>'; print '</div>\'; }, background: { - opacity: 0.5, + opacity: 0.0, color: \'#000000\' - } + }, } } }, diff --git a/htdocs/core/lib/treeview.lib.php b/htdocs/core/lib/treeview.lib.php index 08fa63c52c659ad363e7534fc3be14477e923c5c..5b1682c54947f0e3d6acc87b20dd2971c1181beb 100644 --- a/htdocs/core/lib/treeview.lib.php +++ b/htdocs/core/lib/treeview.lib.php @@ -144,7 +144,7 @@ function tree_recur($tab, $pere, $rang, $iddivjstree='iddivjstree') if ($tab[$x]['fk_menu'] != -1 && $tab[$x]['fk_menu'] == $pere['rowid']) { if (empty($ulprinted) && ! empty($pere['rowid'])) { print '<ul'.(empty($pere['rowid'])?' id="treeData"':'').'>'; $ulprinted++; } - print "\n".'<li>'; + print "\n".'<li '.($tab[$x]['statut']?' class="liuseractive"':'class="liuserdisabled"').'>'; print $tab[$x]['entry']; // And now we search all its sons of lower level tree_recur($tab,$tab[$x],$rang+1); @@ -153,7 +153,7 @@ function tree_recur($tab, $pere, $rang, $iddivjstree='iddivjstree') elseif (! empty($tab[$x]['rowid']) && $tab[$x]['fk_menu'] == -1 && $tab[$x]['fk_mainmenu'] == $pere['mainmenu'] && $tab[$x]['fk_leftmenu'] == $pere['leftmenu']) { if (empty($ulprinted) && ! empty($pere['rowid'])) { print '<ul'.(empty($pere['rowid'])?' id="treeData"':'').'>'; $ulprinted++; } - print "\n".'<li>'; + print "\n".'<li '.($tab[$x]['statut']?' class="liuseractive"':'class="liuserdisabled"').'>'; print $tab[$x]['entry']; // And now we search all its sons of lower level tree_recur($tab,$tab[$x],$rang+1); diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang index 09ac5dd44a7e956a2181d41f05ee9c1348b6816d..0aaac7816bd91c03d1dc2efd1842229f7d7f8fb3 100644 --- a/htdocs/langs/en_US/projects.lang +++ b/htdocs/langs/en_US/projects.lang @@ -165,7 +165,18 @@ ProjectOverview=Overview ManageTasks=Use projects to follow tasks and time ManageOpportunitiesStatus=Use projects to follow leads/opportinuties ProjectNbProjectByMonth=Nb of created projects by month +ProjectOppAmountOfProjectsByMonth=Amount of opportunities by month +ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of opportunities by month +ProjectOpenedProjectByOppStatus=Opened project/lead by opportunity status ProjectsStatistics=Statistics on projects/leads TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. OpenedProjectsByThirdparties=Opened projects by thirdparties -OpportunityPonderatedAmount=Opportunities ponderated amount \ No newline at end of file +OpportunityTotalAmount=Opportunities total amount +OpportunityPonderatedAmount=Opportunities weighted amount +OppStatusPROSP=Prospection +OppStatusQUAL=Qualification +OppStatusPROPO=Proposal +OppStatusNEGO=Negociation +OppStatusPENDING=Pending +OppStatusWIN=Won +OppStatusLOST=Lost diff --git a/htdocs/projet/class/projectstats.class.php b/htdocs/projet/class/projectstats.class.php index 27335777db12598b01a3589007b0df2b6145a756..ae99bb141889ab44fd96f8aa8ae7815b78cef72c 100644 --- a/htdocs/projet/class/projectstats.class.php +++ b/htdocs/projet/class/projectstats.class.php @@ -54,6 +54,7 @@ class ProjectStats extends Stats $sql .= " count(DISTINCT t.rowid), t.fk_opp_status"; $sql .= " FROM " . MAIN_DB_PREFIX . "projet as t"; $sql .= $this->buildWhere(); + $sql .= " AND t.fk_statut = 1"; $sql .= " GROUP BY t.fk_opp_status"; $result = array (); @@ -118,7 +119,7 @@ class ProjectStats extends Stats */ public function buildWhere() { $sqlwhere_str = ''; - $sqlwhere = array (); + $sqlwhere = array(); $sqlwhere[] = ' t.entity IN (' . getEntity('project') . ')'; @@ -192,6 +193,126 @@ class ProjectStats extends Stats return $res; } + + /** + * Return amount of elements by month for several years + * + * @param int $endyear Start year + * @param int $startyear End year + * @param int $cachedelay Delay we accept for cache file (0=No read, no save of cache, -1=No read but save) + * @return array Array of values + */ + function getWeightedAmountByMonthWithPrevYear($endyear,$startyear,$cachedelay=0) + { + global $conf,$user,$langs; + + if ($startyear > $endyear) return -1; + + $datay=array(); + + // Search into cache + if (! empty($cachedelay)) + { + include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + include_once DOL_DOCUMENT_ROOT.'/core/lib/json.lib.php'; + } + + $newpathofdestfile=$conf->user->dir_temp.'/'.get_class($this).'_'.__FUNCTION__.'_'.(empty($this->cachefilesuffix)?'':$this->cachefilesuffix.'_').$langs->defaultlang.'_user'.$user->id.'.cache'; + $newmask='0644'; + + $nowgmt = dol_now(); + + $foundintocache=0; + if ($cachedelay > 0) + { + $filedate=dol_filemtime($newpathofdestfile); + if ($filedate >= ($nowgmt - $cachedelay)) + { + $foundintocache=1; + + $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$filedate; + } + else + { + dol_syslog(get_class($this).'::'.__FUNCTION__." cache file ".$newpathofdestfile." is not found or older than now - cachedelay (".$nowgmt." - ".$cachedelay.") so we can't use it."); + } + } + + // Load file into $data + if ($foundintocache) // Cache file found and is not too old + { + dol_syslog(get_class($this).'::'.__FUNCTION__." read data from cache file ".$newpathofdestfile." ".$filedate."."); + $data = json_decode(file_get_contents($newpathofdestfile), true); + } + else + { + $year=$startyear; + while($year <= $endyear) + { + $datay[$year] = $this->getWeightedAmountByMonth($year); + $year++; + } + + $data = array(); + // $data = array('xval'=>array(0=>xlabel,1=>yval1,2=>yval2...),...) + for ($i = 0 ; $i < 12 ; $i++) + { + $data[$i][]=$datay[$endyear][$i][0]; // set label + $year=$startyear; + while($year <= $endyear) + { + $data[$i][]=$datay[$year][$i][1]; // set yval for x=i + $year++; + } + } + } + + // Save cache file + if (empty($foundintocache) && ($cachedelay > 0 || $cachedelay == -1)) + { + dol_syslog(get_class($this).'::'.__FUNCTION__." save cache file ".$newpathofdestfile." onto disk."); + if (! dol_is_dir($conf->user->dir_temp)) dol_mkdir($conf->user->dir_temp); + $fp = fopen($newpathofdestfile, 'w'); + if ($fp) + { + fwrite($fp, json_encode($data)); + fclose($fp); + if (! empty($conf->global->MAIN_UMASK)) $newmask=$conf->global->MAIN_UMASK; + @chmod($newpathofdestfile, octdec($newmask)); + } + else dol_syslog("Failed to write cache file", LOG_ERR); + $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$nowgmt; + } + + return $data; + } + + + /** + * Return the Project amount by month for a year + * + * @param int $year scan + * @return array with amount by month + */ + function getWeightedAmountByMonth($year) { + global $user; + + $this->yearmonth = $year; + + $sql = "SELECT date_format(t.datec,'%m') as dm, SUM(t.opp_amount)"; + $sql .= " FROM " . MAIN_DB_PREFIX . "projet as t"; + if (! $user->rights->societe->client->voir && ! $user->societe_id) + $sql .= " INNER JOIN " . MAIN_DB_PREFIX . "societe_commerciaux as sc ON sc.fk_soc=t.fk_soc AND sc.fk_user=" . $user->id; + $sql .= $this->buildWhere(); + $sql .= " GROUP BY dm"; + $sql .= $this->db->order('dm', 'DESC'); + $this->yearmonth=0; + + $res = $this->_getAmountByMonth($year, $sql); + // var_dump($res);print '<br>'; + return $res; + } + /** * Return amount of elements by month for several years * diff --git a/htdocs/projet/index.php b/htdocs/projet/index.php index 264afb449f9dad24c899f9cf93ced8e43b897f5e..2625b1f8503a10e5b1b3a1b5b75980f1d3be0d58 100644 --- a/htdocs/projet/index.php +++ b/htdocs/projet/index.php @@ -123,7 +123,7 @@ if (! empty($conf->projet->enabled) && $user->rights->projet->lire) if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) { - $sql = "SELECT count(p.rowid), p.fk_opp_status as status"; + $sql = "SELECT COUNT(p.rowid) as nb, SUM(p.opp_amount) as opp_amount, p.fk_opp_status as opp_status"; $sql.= " FROM ".MAIN_DB_PREFIX."projet as p"; $sql.= " WHERE p.entity = ".$conf->entity; $sql.= " AND p.fk_statut = 1"; @@ -136,20 +136,25 @@ if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) $num = $db->num_rows($resql); $i = 0; - $total=0; - $totalinprocess=0; + $totalnb=0; + $totalamount=0; + $ponderated_opp_amount=0; + $valsnb=array(); + $valsamount=array(); $dataseries=array(); - $vals=array(); // -1=Canceled, 0=Draft, 1=Validated, (2=Accepted/On process not managed for customer orders), 3=Closed (Sent/Received, billed or not) while ($i < $num) { - $row = $db->fetch_row($resql); - if ($row) + $obj = $db->fetch_object($resql); + if ($obj) { //if ($row[1]!=-1 && ($row[1]!=3 || $row[2]!=1)) { - $vals[$row[1]]=$row[0]; - $totalinprocess+=$row[0]; + $valsnb[$obj->opp_status]=$obj->nb; + $valsamount[$obj->opp_status]=$obj->opp_amount; + $totalnb+=$obj->nb; + $totalamount+=$obj->opp_amount; + $ponderated_opp_amount = $ponderated_opp_amount + price2num($listofoppstatus[$obj->opp_status] * $obj->opp_amount / 100); } $total+=$row[0]; } @@ -169,15 +174,16 @@ if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) if ($code) $labelstatus = $langs->trans("OppStatus".$code); if (empty($labelstatus)) $labelstatus=$listofopplabel[$status]; - $labelstatus .= ' ('.$langs->trans("Coeff").': '.$listofoppstatus[$status].')'; + //$labelstatus .= ' ('.$langs->trans("Coeff").': '.price2num($listofoppstatus[$status]).')'; + $labelstatus .= ' - '.price2num($listofoppstatus[$status]).'%'; - $dataseries[]=array('label'=>$labelstatus,'data'=>(isset($vals[$status])?(int) $vals[$status]:0)); + $dataseries[]=array('label'=>$labelstatus,'data'=>(isset($valsamount[$status])?(float) $valsamount[$status]:0)); if (! $conf->use_javascript_ajax) { $var=!$var; print "<tr ".$bc[$var].">"; print '<td>'.$labelstatus.'</td>'; - print '<td align="right"><a href="list.php?statut='.$status.'">'.(isset($vals[$status])?$vals[$status]:0).'</a></td>'; + print '<td align="right"><a href="list.php?statut='.$status.'">'.price((isset($valsamount[$status])?(float) $valsamount[$status]:0), 0, '', 1, -1, -1, $conf->currency).'</a></td>'; print "</tr>\n"; } } @@ -185,12 +191,13 @@ if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) { print '<tr class="impair"><td align="center" colspan="2">'; $data=array('series'=>$dataseries); - dol_print_graph('stats',400,180,$data,1,'pie',1); + dol_print_graph('stats',400,180,$data,1,'pie',0,''); print '</td></tr>'; } //if ($totalinprocess != $total) //print '<tr class="liste_total"><td>'.$langs->trans("Total").' ('.$langs->trans("CustomersOrdersRunning").')</td><td align="right">'.$totalinprocess.'</td></tr>'; - print '<tr class="liste_total"><td>'.$langs->trans("Total").'</td><td align="right">'.$total.'</td></tr>'; + print '<tr class="liste_total"><td>'.$langs->trans("OpportunityTotalAmount").'</td><td align="right">'.price($totalamount, 0, '', 1, -1, -1, $conf->currency).'</td></tr>'; + print '<tr class="liste_total"><td>'.$langs->trans("OpportunityPonderatedAmount").'</td><td align="right">'.price($ponderated_opp_amount, 0, '', 1, -1, -1, $conf->currency).'</td></tr>'; print "</table><br>"; } else diff --git a/htdocs/projet/stats/index.php b/htdocs/projet/stats/index.php index fdb272ed70eb1ff7de0b98618db8d226523b8ed9..04dd819054e69fe2c679dcde1d9911577e59965d 100644 --- a/htdocs/projet/stats/index.php +++ b/htdocs/projet/stats/index.php @@ -122,7 +122,7 @@ if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) $px->SetType(array ( 'pie' )); - $px->SetTitle($langs->trans('ProjectNbProjectByStatus')); + $px->SetTitle($langs->trans('ProjectOpenedProjectByOppStatus')); $result=$px->draw($filenamenb, $fileurlnb); if ($result<0) { setEventMessages($px->error, null, 'errors'); @@ -194,12 +194,12 @@ if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) $px2->SetMinValue(min(0,$px2->GetFloorMinValue())); $px2->SetWidth($WIDTH); $px2->SetHeight($HEIGHT); - $px2->SetYLabel($langs->trans("ProjectAmountOfProject")); + $px2->SetYLabel($langs->trans("ProjectOppAmountOfProjectsByMonth")); $px2->SetShading(3); $px2->SetHorizTickIncrement(1); $px2->SetPrecisionY(0); $px2->mode='depth'; - $px2->SetTitle($langs->trans("ProjectAmountOfProjectsByMonth")); + $px2->SetTitle($langs->trans("ProjectOppAmountOfProjectsByMonth")); $px2->draw($filenamenb,$fileurlnb); } @@ -208,7 +208,7 @@ if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) { // Build graphic with transformation rate - $data = $stats_project->getTransformRateByMonthWithPrevYear($endyear,$startyear); + $data = $stats_project->getWeightedAmountByMonthWithPrevYear($endyear,$startyear); //var_dump($data); // $data = array(array('Lib',val1,val2,val3),...) @@ -231,12 +231,12 @@ if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) $px3->SetMinValue(min(0,$px3->GetFloorMinValue())); $px3->SetWidth($WIDTH); $px3->SetHeight($HEIGHT); - $px3->SetYLabel($langs->trans("ProjectTransRateOfProject")); + $px3->SetYLabel($langs->trans("ProjectWeightedOppAmountOfProjectsByMonth")); $px3->SetShading(3); $px3->SetHorizTickIncrement(1); $px3->SetPrecisionY(0); $px3->mode='depth'; - $px3->SetTitle($langs->trans("ProjectTransRateOfProjectsByMonth")); + $px3->SetTitle($langs->trans("ProjectWeightedOppAmountOfProjectsByMonth")); $px3->draw($filenamenb,$fileurlnb); } @@ -340,15 +340,12 @@ print '</div><div class="fichetwothirdright"><div class="ficheaddleft">'; $stringtoshow.= '<table class="border" width="100%"><tr valign="top"><td align="center">'; if ($mesg) { print $mesg; } else { - if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) - { - $stringtoshow.= $px->show(); - $stringtoshow.= "<br>\n"; - } $stringtoshow.= $px1->show(); $stringtoshow.= "<br>\n"; if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) { + $stringtoshow.= $px->show(); + $stringtoshow.= "<br>\n"; $stringtoshow.= $px2->show(); $stringtoshow.= "<br>\n"; $stringtoshow.= $px3->show(); diff --git a/htdocs/user/hierarchy.php b/htdocs/user/hierarchy.php index 2fc51e555ee412b7d5fc2672adaa87b3bea89425..ccaf6687da910fc84265ca0faeeb5ea9aefaba63 100644 --- a/htdocs/user/hierarchy.php +++ b/htdocs/user/hierarchy.php @@ -48,6 +48,10 @@ $search_statut=GETPOST('search_statut','int'); if ($search_statut == '') $search_statut='1'; +if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers +{ + $search_statut=""; +} /* @@ -87,6 +91,7 @@ foreach($fulltree as $key => $val) $entity=$val['entity']; $entitystring=''; + // TODO Set of entitystring should be done with a hook if (is_object($mc)) { @@ -109,14 +114,15 @@ foreach($fulltree as $key => $val) $data[] = array( 'rowid'=>$val['rowid'], 'fk_menu'=>$val['fk_user'], - 'entry'=>'<table class="nobordernopadding centpercent"><tr><td>'.$li.'</td><td align="right">'.$userstatic->getLibStatut(5).'</td></tr></table>' + 'statut'=>$val['statut'], + 'entry'=>'<table class="nobordernopadding centpercent"><tr><td class="'.($val['statut']?'usertdenabled':'usertddisabled').'">'.$li.'</td><td align="right" class="'.($val['statut']?'usertdenabled':'usertddisabled').'">'.$userstatic->getLibStatut(5).'</td></tr></table>' ); } -/*print $langs->trans("Status").': '; -print $form->selectarray('search_statut', array('-1'=>'','0'=>$langs->trans('Disabled'),'1'=>$langs->trans('Enabled')),$search_statut); -*/ +print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">'."\n"; + +$param="search_statut=".$search_statut; print '<table class="liste nohover" width="100%">'; print '<tr class="liste_titre">'; @@ -132,7 +138,7 @@ print '<td> </td>'; print '<td> </td>'; // Status print '<td align="right">'; -print $form->selectarray('search_statut', array('-1'=>'','0'=>$langs->trans('Disabled'),'1'=>$langs->trans('Enabled')),$search_statut); +print $form->selectarray('search_statut', array('-1'=>'','1'=>$langs->trans('Enabled')),$search_statut); print '</td>'; print '<td class="liste_titre" align="right"><input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">'; print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">'; @@ -165,7 +171,19 @@ else } print "</table>"; +print "</form>\n"; +// +/*print '<script type="text/javascript" language="javascript"> +jQuery(document).ready(function() { + function init_myfunc() + { + jQuery(".usertddisabled").hide(); + } + init_myfunc(); +}); +</script>'; +*/ llxFooter();