// Preview or apply bulk modify $sFilter = utils::ReadParam('filter', '', false, 'raw_data'); // TO DO: limit the search filter by the user context $oFilter = DBObjectSearch::unserialize($sFilter); // TO DO : check that the filter is valid $oChecker = new ActionChecker($oFilter, UR_ACTION_BULK_MODIFY); $sClass = utils::ReadParam('class', '', false, 'class'); $bPreview = utils::ReadParam('preview_mode', ''); $sSelectedObj = utils::ReadParam('selectObj', '', false, 'raw_data'); if (empty($sClass) || empty($sSelectedObj)) { throw new ApplicationException(Dict::Format('UI:Error:2ParametersMissing', 'class', 'selectObj')); } $aSelectedObj = explode(',', $sSelectedObj); $sCancelUrl = "./UI.php?operation=search&filter=" . urlencode($sFilter) . "&" . $oAppContext->GetForLink(); $aContext = array('filter' => $sFilter, 'selectObj' => $sSelectedObj); cmdbAbstractObject::DoBulkModify($oP, $sClass, $aSelectedObj, 'preview_or_modify_all', $bPreview, $sCancelUrl, $aContext); break; /////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////// case 'new': // Form to create a new object $sClass = utils::ReadParam('class', '', false, 'class'); $sStateCode = utils::ReadParam('state', ''); $bCheckSubClass = utils::ReadParam('checkSubclass', true); if (empty($sClass)) { throw new ApplicationException(Dict::Format('UI:Error:1ParametersMissing', 'class')); } $aArgs = utils::ReadParam('default', array(), false, 'raw_data'); $aContext = $oAppContext->GetAsHash(); foreach ($oAppContext->GetNames() as $key) { $aArgs[$key] = $oAppContext->GetCurrentValue($key);