$pclf = new PermissionControlListFactory(); $pclf->StartTransaction(); foreach ($ids as $id) { $pclf->getByIdAndCompanyId($id, $current_company->getId()); foreach ($pclf as $pc_obj) { $permission_arr = $pc_obj->getPermission(); $pc_obj->setId(FALSE); $pc_obj->setName(Misc::generateCopyName($pc_obj->getName())); if ($pc_obj->isValid()) { $pc_obj->Save(FALSE); $pc_obj->setPermission($permission_arr); } unset($pc_obj, $permission_arr); } } $pclf->CommitTransaction(); Redirect::Page(URLBuilder::getURL(NULL, 'PermissionControlList.php')); break; case 'delete': case 'undelete': if (strtolower($action) == 'delete') { $delete = TRUE; } else { $delete = FALSE; } $pclf = new PermissionControlListFactory(); foreach ($ids as $id) { $pclf->getByIdAndCompanyId($id, $current_company->getId()); foreach ($pclf as $pc_obj) { $pc_obj->setDeleted($delete); if ($pc_obj->isValid()) {