Example #1
0
 static function preItemUpdate(CommonDBTM $item)
 {
     //find container (if not exist, do nothing)
     if (isset($_REQUEST['c_id'])) {
         $c_id = $_REQUEST['c_id'];
     } else {
         $c_id = self::findContainer(get_Class($item), $item->fields['id'], "dom");
         if ($c_id === false) {
             return false;
         }
     }
     //find fields associated to found container
     $field_obj = new PluginFieldsField();
     $fields = $field_obj->find("plugin_fields_containers_id = {$c_id} AND type != 'header'", "ranking");
     //prepare datas to update
     $datas = array('plugin_fields_containers_id' => $c_id, 'items_id' => $item->fields['id']);
     foreach ($fields as $field) {
         if (isset($item->input[$field['name']])) {
             //standard field
             $input = $field['name'];
         } else {
             //dropdown field
             $input = "plugin_fields_" . $field['name'] . "dropdowns_id";
         }
         if (isset($item->input[$input])) {
             $datas[$input] = $item->input[$input];
         }
     }
     //update datas
     $container = new self();
     if ($container->updateFieldsValues($datas)) {
         return true;
     }
     return $item->input = array();
 }
Example #2
0
 /**
  * Pre item hook for update
  * Do store data in db
  *
  * @param CommonDBTM $item Item instance
  *
  * @return boolean
  */
 static function preItemUpdate(CommonDBTM $item)
 {
     self::preItem($item);
     if (property_exists($item, 'plugin_fields_data')) {
         $data = $item->plugin_fields_data;
         //update data
         $container = new self();
         if ($container->updateFieldsValues($data, isset($_REQUEST['massiveaction']), $item->getType())) {
             return true;
         }
     }
     return $item->input = array();
 }