You are here

function services_edit_form_endpoint_server in Services 7.3

Same name and namespace in other branches
  1. 6.3 plugins/export_ui/services_ctools_export_ui.class.php \services_edit_form_endpoint_server()
1 string reference to 'services_edit_form_endpoint_server'
services_ctools_export_ui::server_page in plugins/export_ui/services_ctools_export_ui.class.php
Page callback for the server page.

File

plugins/export_ui/services_ctools_export_ui.class.php, line 141
Export-ui handler for the Services module.

Code

function services_edit_form_endpoint_server($form, &$form_state) {
  list($endpoint) = $form_state['build_info']['args'];
  $servers = services_get_servers();
  $server = !empty($servers[$endpoint->server]) ? $servers[$endpoint->server] : FALSE;
  $form['endpoint_object'] = array(
    '#type' => 'value',
    '#value' => $endpoint,
  );
  if (!$server) {
    $form['message'] = array(
      '#type' => 'item',
      '#title' => t('Unknown server @name', array(
        '@name' => $endpoint->server,
      )),
      '#description' => t('No server matching the one used in the endpoint.'),
    );
  }
  else {
    if (empty($server['settings'])) {
      $form['message'] = array(
        '#type' => 'item',
        '#title' => t('@name has no settings', array(
          '@name' => $endpoint->server,
        )),
        '#description' => t("The server doesn't have any settings that needs to be configured."),
      );
    }
    else {
      $definition = $server['settings'];
      $settings = isset($endpoint->server_settings) ? $endpoint->server_settings : array();
      if (!empty($definition['file'])) {
        call_user_func_array('module_load_include', $definition['file']);
      }
      $form[$endpoint->server] = array(
        '#type' => 'fieldset',
        '#title' => $server['name'],
        '#tree' => TRUE,
      );
      call_user_func_array($definition['form'], array(
        &$form[$endpoint->server],
        $endpoint,
        $settings,
      ));
      $form['submit'] = array(
        '#type' => 'submit',
        '#value' => 'Save',
      );
    }
  }
  return $form;
}