コード例 #1
0
           echo '<a href="'.api_get_self().'">'.Display::return_icon('back.png',get_lang('Back'),'',ICON_SIZE_MEDIUM).'</a>';
           echo '</div>';            */
         $form->addElement('hidden', 'sec_token');
         $form->setConstants(array('sec_token' => $token));
         $form->display();
     }
     break;
 case 'edit':
     // Action handling: Editing
     $url = api_get_self() . '?action=' . Security::remove_XSS($_GET['action']) . '&id=' . intval($_GET['id']) . '&' . $params;
     $form = $obj->return_form($url, 'edit');
     // The validation or display
     if ($form->validate()) {
         if ($check) {
             $values = $form->exportValues();
             $res = $obj->update($values);
             Display::display_confirmation_message(sprintf(get_lang('ItemUpdated'), $values['name']), false);
         }
         $obj->display();
     } else {
         /*echo '<div class="actions">';
           echo '<a href="'.api_get_self().'">'.Display::return_icon('back.png',get_lang('Back'),'',ICON_SIZE_MEDIUM).'</a>';
           echo '</div>';*/
         $form->addElement('hidden', 'sec_token');
         $form->setConstants(array('sec_token' => $token));
         $form->display();
     }
     break;
 case 'delete':
     // Action handling: delete
     if ($check) {
コード例 #2
0
 static function transaction_extra_field_editar_generic($extra_field_variable, $original_data, $web_service_details, $type = 'session')
 {
     $extra_field = new ExtraField($type);
     $extra_field_info = $extra_field->get_handler_field_info_by_field_variable($extra_field_variable);
     if (empty($extra_field_info)) {
         return array('message' => "Extra field can't be edited extra field does not exists:  extra_field_variable: " . $extra_field_variable, 'status_id' => self::TRANSACTION_STATUS_FAILED);
     }
     $extra_field_option = new ExtraFieldOption($type);
     $extra_field_option_info = $extra_field_option->get_field_option_by_field_and_option($extra_field_info['id'], $original_data['item_id']);
     $function_name = $extra_field_variable . "Detalles";
     $params = array('intIdSede' => $original_data['branch_id'], "uidid" . $extra_field_variable => $original_data['item_id']);
     $data = Migration::soap_call($web_service_details, $function_name, $params);
     if ($data['error'] == false) {
         // Exceptional treatment for specific fields
         if ($extra_field_variable == 'aula') {
             $data['name'] = $original_data['branch_id'] . ' - ' . $data['name'];
         }
         //Update 1 item
         if (!empty($extra_field_option_info)) {
             $info_before = $extra_field_option->get_field_options_by_field($extra_field_info['id']);
             if (count($extra_field_option_info) > 1) {
                 //var_dump($extra_field_option_info);
                 //Take the first one
                 error_log('Warning! There are several options with the same key. You should delete doubles. Check your DB with this query:');
                 error_log("SELECT * FROM " . $type . "_field_options WHERE field_id =  {$extra_field_info['id']} AND option_value = '{$original_data['item_id']}' ");
                 error_log('All options are going to be updated');
             }
             $options_updated = array();
             foreach ($extra_field_option_info as $option) {
                 $extra_field_option_info = array('id' => $option['id'], 'field_id' => $extra_field_info['id'], 'option_value' => $original_data['item_id'], 'option_display_text' => $data['name'], 'option_order' => null);
                 $extra_field_option->update($extra_field_option_info);
                 $options_updated[] = $option['id'];
             }
             $info_after = $extra_field_option->get_field_options_by_field($extra_field_info['id']);
             $options_updated = implode(',', $options_updated);
             return array('entity' => $extra_field_variable, 'before' => $info_before, 'after' => $info_after, 'message' => "Extra field options id updated: {$options_updated}", 'status_id' => self::TRANSACTION_STATUS_FAILED);
         } else {
             return array('message' => "Extra field option not found item_id: {$original_data['item_id']}", 'status_id' => self::TRANSACTION_STATUS_FAILED);
         }
     } else {
         return $data;
     }
 }