Fix: add function to sort project authorized for a user
This commit is contained in:
parent
0812ba2536
commit
a3c0f4399f
@ -107,7 +107,8 @@ else
|
|||||||
print "</table>";
|
print "</table>";
|
||||||
|
|
||||||
print '</td><td width="70%" valign="top" class="notopnoleft">';
|
print '</td><td width="70%" valign="top" class="notopnoleft">';
|
||||||
|
//$result = $projectstatic->getProjectsAuthorizedForUser($user);
|
||||||
|
//var_dump($result);
|
||||||
|
|
||||||
print '<table class="noborder" width="100%">';
|
print '<table class="noborder" width="100%">';
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
@ -122,7 +123,6 @@ $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s on p.fk_soc = s.rowid";
|
|||||||
$sql.= " WHERE p.entity = ".$conf->entity;
|
$sql.= " WHERE p.entity = ".$conf->entity;
|
||||||
if ($socid) $sql.= " AND s.rowid = ".$socid;
|
if ($socid) $sql.= " AND s.rowid = ".$socid;
|
||||||
$sql.= " GROUP BY s.nom, s.rowid";
|
$sql.= " GROUP BY s.nom, s.rowid";
|
||||||
//$sql .= " ORDER BY $sortfield $sortorder " . $db->plimit($conf->liste_limit, $offset);
|
|
||||||
|
|
||||||
$var=true;
|
$var=true;
|
||||||
$resql = $db->query($sql);
|
$resql = $db->query($sql);
|
||||||
|
|||||||
@ -651,5 +651,50 @@ class Project extends CommonObject
|
|||||||
return $userAccess;
|
return $userAccess;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return array of projects authorized for a user
|
||||||
|
*
|
||||||
|
* @param unknown_type $user
|
||||||
|
* @return unknown
|
||||||
|
*/
|
||||||
|
function getProjectsAuthorizedForUser($user)
|
||||||
|
{
|
||||||
|
global $conf;
|
||||||
|
|
||||||
|
$projects = array();
|
||||||
|
|
||||||
|
$sql = "SELECT DISTINCT p.rowid, p.ref";
|
||||||
|
$sql.= " FROM ".MAIN_DB_PREFIX."projet as p";
|
||||||
|
$sql.= ", ".MAIN_DB_PREFIX."element_contact as ec";
|
||||||
|
$sql.= ", ".MAIN_DB_PREFIX."c_type_contact as ctc";
|
||||||
|
$sql.= " WHERE p.entity = ".$conf->entity;
|
||||||
|
$sql.= " AND ( p.public = 1";
|
||||||
|
$sql.= " OR p.fk_user_creat = ".$user->id;
|
||||||
|
$sql.= " OR ( ec.element_id = p.rowid";
|
||||||
|
$sql.= " AND ctc.rowid = ec.fk_c_type_contact";
|
||||||
|
$sql.= " AND ctc.element = '".$this->element."'";
|
||||||
|
$sql.= " AND ec.fk_socpeople = ".$user->id." ) )";
|
||||||
|
|
||||||
|
$resql = $this->db->query($sql);
|
||||||
|
if ($resql)
|
||||||
|
{
|
||||||
|
$num = $this->db->num_rows($resql);
|
||||||
|
$i = 0;
|
||||||
|
while ($i < $num)
|
||||||
|
{
|
||||||
|
$row = $this->db->fetch_row($resql);
|
||||||
|
$projects[$row[0]] = $row[1];
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
$this->db->free();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dol_print_error($this->db);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $projects;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user