NEW Add filter on task ref and task label into list of tasks

This commit is contained in:
Laurent Destailleur
2015-04-23 15:22:50 +02:00
parent 7fd2247297
commit 4f3fe82e93
3 changed files with 32 additions and 8 deletions

View File

@@ -561,9 +561,10 @@ class Task extends CommonObject
* @param int $mode 0=Return list of tasks and their projects, 1=Return projects and tasks if exists
* @param string $filteronprojref Filter on project ref
* @param string $filteronprojstatus Filter on project status
* @param string $morewherefilter Add more filter into where SQL request
* @return array Array of tasks
*/
function getTasksArray($usert=0, $userp=0, $projectid=0, $socid=0, $mode=0, $filteronprojref='', $filteronprojstatus=-1)
function getTasksArray($usert=0, $userp=0, $projectid=0, $socid=0, $mode=0, $filteronprojref='', $filteronprojstatus=-1, $morewherefilter='')
{
global $conf;
@@ -573,8 +574,8 @@ class Task extends CommonObject
// List of tasks (does not care about permissions. Filtering will be done later)
$sql = "SELECT p.rowid as projectid, p.ref, p.title as plabel, p.public, p.fk_statut,";
$sql.= " t.rowid as taskid, t.label, t.description, t.fk_task_parent, t.duration_effective, t.progress,";
$sql.= " t.dateo as date_start, t.datee as date_end, t.planned_workload, t.ref as ref_task,t.rang";
$sql.= " t.rowid as taskid, t.ref as taskref, t.label, t.description, t.fk_task_parent, t.duration_effective, t.progress,";
$sql.= " t.dateo as date_start, t.datee as date_end, t.planned_workload, t.rang";
if ($mode == 0)
{
$sql.= " FROM ".MAIN_DB_PREFIX."projet as p";
@@ -594,6 +595,7 @@ class Task extends CommonObject
}
if ($filteronprojref) $sql.= " AND p.ref LIKE '%".$filteronprojref."%'";
if ($filteronprojstatus > -1) $sql.= " AND p.fk_statut = ".$filteronprojstatus;
if ($morewherefilter) $sql.=" AND (".$morewherefilter.")";
$sql.= " ORDER BY p.ref, t.rang, t.dateo";
//print $sql;exit;
@@ -629,7 +631,7 @@ class Task extends CommonObject
{
$tasks[$i] = new Task($this->db);
$tasks[$i]->id = $obj->taskid;
$tasks[$i]->ref = $obj->ref_task;
$tasks[$i]->ref = $obj->taskref;
$tasks[$i]->fk_project = $obj->projectid;
$tasks[$i]->projectref = $obj->ref;
$tasks[$i]->projectlabel = $obj->plabel;