function plugin_geninventorynumber_MassiveActions($type) { global $GENINVENTORYNUMBER_TYPES; $actions = array(); if (in_array($type, $GENINVENTORYNUMBER_TYPES)) { $fields = PluginGeninventorynumberConfigField::getConfigFieldByItemType($type); if (PluginGeninventorynumberConfigField::isActiveForItemType($type)) { if (Session::haveRight("plugin_geninventorynumber", CREATE)) { $actions['PluginGeninventorynumberGeneration' . MassiveAction::CLASS_ACTION_SEPARATOR . 'plugin_geninventorynumber_generate'] = __('GenerateInventoryNumber', 'geninventorynumber'); } if (Session::haveRight("plugin_geninventorynumber", UPDATE)) { $actions['PluginGeninventorynumberGeneration' . MassiveAction::CLASS_ACTION_SEPARATOR . 'plugin_geninventorynumber_overwrite'] = __('RegenerateInventoryNumber', 'geninventorynumber'); } } } return $actions; }
static function preItemAdd(CommonDBTM $item, $massiveaction = false) { $config = PluginGeninventorynumberConfigField::getConfigFieldByItemType(get_class($item)); if (in_array(get_class($item), PluginGeninventorynumberConfigField::getEnabledItemTypes())) { if (!$massiveaction && !Session::haveRight("plugin_geninventorynumber", CREATE)) { if (!isCommandLine()) { Session::addMessageAfterRedirect(__('GenerateInventoryNumberDenied', 'geninventorynumber'), true, ERROR); } return array('noright'); } $tmp = clone $item; $values = array(); if (PluginGeninventorynumberConfig::isGenerationActive() && PluginGeninventorynumberConfigField::isActiveForItemType(get_class($item))) { if (!$massiveaction) { $values['otherserial'] = self::autoName($config, $item); if (!isCommandLine()) { Session::addMessageAfterRedirect(__('InventoryNumberGenerated', 'geninventorynumber'), true); } } else { $values['otherserial'] = self::autoName($config, $item); $values['massiveaction'] = true; $values['id'] = $item->getID(); $tmp->update($values); } if ($config['use_index']) { PluginGeninventorynumberConfig::updateIndex(); } else { PluginGeninventorynumberConfigField::updateIndex(get_class($item)); } return array('ok'); } else { $values['otherserial'] = ''; $values['id'] = $item->getID(); $tmp->update($values); } } }