Welcome to ProjeQtOr new Forum. We migrated old forum to the new website.
You will find all your posts here, with your usual account.
Just one point : you’ll have to reinitialize your password. Use “Lost password” feature.
Nouvelle version de la fonction (augmente les performances de Projectorria) :
-----------------------------------
New version of the function (increases performance Projectorria):
public function drawSubProjects($selectField=null, $recursiveCall=false, $limitToUserProjects=false, $limitToActiveProjects=false, $visibleProjectsList = null) {
if ($limitToUserProjects) {
$user=$_SESSION['user'];
if (! $user->_accessControlVisibility) {
$user->getAccessControlRights(); // Force setup of accessControlVisibility
}
if (!$visibleProjectsList){
$visibleProjectsList=$user->getHierarchicalViewOfVisibleProjects();
}
$reachableProjectsList=$user->getVisibleProjects();
} else {
$visibleProjectsList=array();
$reachableProjectsList=array();
}
$result="";
$clickEvent=' onClick=""';
$subList=$this->getSubProjects($limitToActiveProjects);
if ($selectField!=null and ! $recursiveCall) {
$result .= '
';
$clickEvent=' onClick='setSelectedProject("*", "' . i18n('allProjects') . '", "' . $selectField . '");' ';
$result .= '';
}
$result .='';
if (count($subList)>0) {
foreach ($subList as $prj) {
$showLine=true;
$reachLine=true;
if ($limitToUserProjects) {
if ($user->_accessControlVisibility != 'ALL') {
if (! array_key_exists('#' . $prj->id,$visibleProjectsList)) {
$showLine=false;
}
if (! array_key_exists($prj->id,$reachableProjectsList)) {
$reachLine=false;
}
}
}
if ($showLine) {
$result .='';
if ($selectField==null) {
$result .= '' . $prj->name;
} else if (! $reachLine) {
$result .= '' . $prj->name;
} else {
$clickEvent=' onClick='setSelectedProject("' . $prj->id . '", "' . htmlEncode($prj->name) . '", "' . $selectField . '");' ';
$result .= '';
}
$result .= $prj->drawSubProjects($selectField,true,$limitToUserProjects,$limitToActiveProjects, $visibleProjectsList);
$result .= '';
}
}
}
$result .='';
return $result;
}
Great performance improvement when dealing with many projects !
Will be integrated in V1.6.1.
Many thanks.