after user deletion, 13 pending user records remain in today table; to purge those records I've introduced quick fix in deleteObject.php:
/** ===========================================================================
* Delete the current object : call corresponding method in SqlElement Class
*/
require_once "../tool/projeqtor.php";
// Get the object class from request
if (! array_key_exists('objectClassName',$_REQUEST)) {
throwError('className parameter not found in REQUEST');
}
$className=$_REQUEST;
if ($className=='Project') {
Project::$_deleteProjectInProgress=true;
}
$objectId = RequestHandler::getId('objectId');
// Get the object from session(last status before change)
$fromContextMenu = RequestHandler::getBoolean('fromContextMenu');
if($fromContextMenu){
$obj=new $className($objectId);
}else{
$obj=SqlElement::getCurrentObject(null,null,true,false);
}
if (! is_object($obj)) {
throwError('last saved object is not a real object');
}
// compare expected class with object class
if ($className!=get_class($obj)) {
throwError('last save object (' . get_class($obj) . ') is not of the expected class (' . $className . ').');
}
if (array_key_exists('confirmed',$_REQUEST) ) {
if ($_REQUEST=='true') {
SqlElement::setDeleteConfirmed();
}
}
Sql::beginTransaction();
$obj=new $className($obj->id); // Get the last saved version, to fetch last version for array of objects
$peName=$className.'PlanningElement';
$topItemType=null;
$topItemId=null;
// delete from database
if (property_exists($obj,$peName)) {
PlanningElement::$_noDispatch=true;
$topItemType=$obj->$peName->topRefType;
$topItemId=$obj->$peName->topRefId;
}
$deleteObjectInProgress=true;
$result=$obj->delete();
$resultStatus=getLastOperationStatus($result);
if ($resultStatus=='OK' and $topItemType and $topItemId) {
PlanningElement::$_noDispatch=false;
PlanningElement::updateSynthesis($topItemType, $topItemId);
$pe=SqlElement::getSingleSqlElementFromCriteria('PlanningElement', array('refType'=>$topItemType,'refId'=>$topItemId));
$pe->renumberWbs();
}
BudgetElement::dispatchFinalize();
En poursuivant votre navigation, vous acceptez le dépôt de cookies tiers destinés au bon fonctionnement et à la sécurisation du site (gestion de session, reCaptcha) et à une analyse statistique anonymisée des accès sur notre site (Google Analytics). Si vous vous inscrivez, les informations que vous fournirez ne seront jamais divulguées à un tiers sous quelque forme que ce soit. En savoir plus
Cookies settings
×
Functional Cookies
Ce site utilise des cookies pour assurer son bon fonctionnement et ne peuvent pas être désactivés de nos systèmes. Nous ne les utilisons pas à des fins publicitaires. Si ces cookies sont bloqués, certaines parties du site ne pourront pas fonctionner.
Session
Please login to see yours activities!
Other cookies
Ce site web utilise un certain nombre de cookies pour gérer, par exemple, les sessions utilisateurs.