FIX project overview (can use any fields as fk_projet)
This commit is contained in:
parent
cfb0f2df05
commit
1297470c99
@ -458,7 +458,7 @@ class FormProjets
|
|||||||
* @param int $limitonstatus Add filters to limit length of list to opened status (for example to avoid ERR_RESPONSE_HEADERS_TOO_BIG on project/element.php page). TODO To implement
|
* @param int $limitonstatus Add filters to limit length of list to opened status (for example to avoid ERR_RESPONSE_HEADERS_TOO_BIG on project/element.php page). TODO To implement
|
||||||
* @return int|string The HTML select list of element or '' if nothing or -1 if KO
|
* @return int|string The HTML select list of element or '' if nothing or -1 if KO
|
||||||
*/
|
*/
|
||||||
function select_element($table_element, $socid=0, $morecss='', $limitonstatus=-2)
|
function select_element($table_element, $socid=0, $morecss='', $limitonstatus=-2,$projectkey="fk_projet")
|
||||||
{
|
{
|
||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
@ -468,7 +468,7 @@ class FormProjets
|
|||||||
if (! in_array($table_element, array('don','expensereport_det','expensereport','loan','stock_mouvement','chargesociales'))) $linkedtothirdparty=true;
|
if (! in_array($table_element, array('don','expensereport_det','expensereport','loan','stock_mouvement','chargesociales'))) $linkedtothirdparty=true;
|
||||||
|
|
||||||
$sqlfilter='';
|
$sqlfilter='';
|
||||||
$projectkey="fk_projet";
|
|
||||||
//print $table_element;
|
//print $table_element;
|
||||||
switch ($table_element)
|
switch ($table_element)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -518,7 +518,7 @@ class Project extends CommonObject
|
|||||||
* @param int $datee End date
|
* @param int $datee End date
|
||||||
* @return mixed Array list of object ids linked to project, < 0 or string if error
|
* @return mixed Array list of object ids linked to project, < 0 or string if error
|
||||||
*/
|
*/
|
||||||
function get_element_list($type, $tablename, $datefieldname='', $dates='', $datee='')
|
function get_element_list($type, $tablename, $datefieldname='', $dates='', $datee='', $project_field='fk_projet')
|
||||||
{
|
{
|
||||||
$elements = array();
|
$elements = array();
|
||||||
|
|
||||||
@ -548,7 +548,7 @@ class Project extends CommonObject
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$sql = "SELECT rowid FROM " . MAIN_DB_PREFIX . $tablename." WHERE fk_projet IN (". $ids .")";
|
$sql = "SELECT rowid FROM " . MAIN_DB_PREFIX . $tablename." WHERE ".$project_field." IN (". $ids .")";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($dates > 0)
|
if ($dates > 0)
|
||||||
|
|||||||
@ -562,11 +562,12 @@ foreach ($listofreferent as $key => $value)
|
|||||||
$datefieldname=$value['datefieldname'];
|
$datefieldname=$value['datefieldname'];
|
||||||
$qualified=$value['test'];
|
$qualified=$value['test'];
|
||||||
$margin = $value['margin'];
|
$margin = $value['margin'];
|
||||||
|
$project_field = $value['project_field'];
|
||||||
if ($qualified && isset($margin)) // If this element must be included into profit calculation ($margin is 'minus' or 'plus')
|
if ($qualified && isset($margin)) // If this element must be included into profit calculation ($margin is 'minus' or 'plus')
|
||||||
{
|
{
|
||||||
$element = new $classname($db);
|
$element = new $classname($db);
|
||||||
|
|
||||||
$elementarray = $object->get_element_list($key, $tablename, $datefieldname, $dates, $datee);
|
$elementarray = $object->get_element_list($key, $tablename, $datefieldname, $dates, $datee, !empty($project_field)?$project_field:'fk_projet');
|
||||||
|
|
||||||
if (count($elementarray)>0 && is_array($elementarray))
|
if (count($elementarray)>0 && is_array($elementarray))
|
||||||
{
|
{
|
||||||
@ -697,6 +698,7 @@ foreach ($listofreferent as $key => $value)
|
|||||||
$urlnew=$value['urlnew'];
|
$urlnew=$value['urlnew'];
|
||||||
$buttonnew=$value['buttonnew'];
|
$buttonnew=$value['buttonnew'];
|
||||||
$testnew=$value['testnew'];
|
$testnew=$value['testnew'];
|
||||||
|
$project_field=$value['project_field'];
|
||||||
|
|
||||||
if ($qualified)
|
if ($qualified)
|
||||||
{
|
{
|
||||||
@ -719,7 +721,7 @@ foreach ($listofreferent as $key => $value)
|
|||||||
|
|
||||||
if (empty($conf->global->PROJECT_LINK_ON_OVERWIEW_DISABLED) && $idtofilterthirdparty && !in_array($tablename, array('payment_various')))
|
if (empty($conf->global->PROJECT_LINK_ON_OVERWIEW_DISABLED) && $idtofilterthirdparty && !in_array($tablename, array('payment_various')))
|
||||||
{
|
{
|
||||||
$selectList=$formproject->select_element($tablename, $idtofilterthirdparty, 'minwidth300');
|
$selectList=$formproject->select_element($tablename, $idtofilterthirdparty, 'minwidth300',-2,!empty($project_field)?$project_field:'fk_projet');
|
||||||
if (! $selectList || ($selectList<0))
|
if (! $selectList || ($selectList<0))
|
||||||
{
|
{
|
||||||
setEventMessages($formproject->error,$formproject->errors,'errors');
|
setEventMessages($formproject->error,$formproject->errors,'errors');
|
||||||
@ -787,7 +789,7 @@ foreach ($listofreferent as $key => $value)
|
|||||||
else print '<td align="right" width="200">'.$langs->trans("Status").'</td>';
|
else print '<td align="right" width="200">'.$langs->trans("Status").'</td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
|
|
||||||
$elementarray = $object->get_element_list($key, $tablename, $datefieldname, $dates, $datee);
|
$elementarray = $object->get_element_list($key, $tablename, $datefieldname, $dates, $datee,!empty($project_field)?$project_field:'fk_projet');
|
||||||
if (is_array($elementarray) && count($elementarray)>0)
|
if (is_array($elementarray) && count($elementarray)>0)
|
||||||
{
|
{
|
||||||
$total_ht = 0;
|
$total_ht = 0;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user