You are here

function services_edit_form_endpoint_server in Services 6.3

Same name and namespace in other branches
  1. 7.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) {
  $form = array();
  $endpoint = $form_state;
  $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.'),
    );
  }
  elseif (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]) ? $endpoint->server_settings[$endpoint->server] : 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;
}