You are here

function globallink_menu_dashboard_filter_form in GlobalLink Connect for Drupal 7.6

Same name and namespace in other branches
  1. 7.7 globallink_menu/globallink_menu_send.inc \globallink_menu_dashboard_filter_form()
  2. 7.5 globallink_menu/globallink_menu_send.inc \globallink_menu_dashboard_filter_form()

Builds form to filter menus to send for translation on dashboard.

1 string reference to 'globallink_menu_dashboard_filter_form'
globallink_menu_dashboard in globallink_menu/globallink_menu_send.inc
Builds forms on menu send dashboard.

File

globallink_menu/globallink_menu_send.inc, line 27

Code

function globallink_menu_dashboard_filter_form() {
  module_load_include('inc', 'globallink', 'globallink');
  module_load_include('inc', 'globallink', 'gl_ws/gl_ws_send_translations');
  $form = array();
  $languages = globallink_get_mapped_drupal_locales(FALSE);
  if (isset($languages) && count($languages) > 1) {
    foreach ($languages as $key => $lang) {
      $lang_filter[$key] = $lang;
    }
    $filter = FALSE;
    $types = 'main-menu';
    if (!empty($_SESSION['globallink_selected_menu_types'])) {
      $types = $_SESSION['globallink_selected_menu_types'];
      $filter = TRUE;
    }
    $default_language = language_default();
    $default = $default_language->language;
    if (!empty($_SESSION['globallink_selected_menu_language'])) {
      $default = $_SESSION['globallink_selected_menu_language'];
      $filter = TRUE;
    }
    $default_title = '';
    if (!empty($_SESSION['globallink_selected_menu_title'])) {
      $default_title = $_SESSION['globallink_selected_menu_title'];
      $filter = TRUE;
    }
    $options = array(
      '' => 'All',
    );
    $menu_types = menu_get_menus(TRUE);
    foreach ($menu_types as $key => $menu) {
      $options[$key] = $menu;
    }
    $form['select_menu_type'] = array(
      '#type' => 'fieldset',
      '#title' => t('FILTER MENUS'),
      '#collapsible' => TRUE,
      '#collapsed' => TRUE,
    );
    $form['select_menu_type']['filters'] = array(
      '#type' => 'container',
      '#attributes' => array(
        'class' => array(
          'container-inline',
        ),
      ),
    );
    $form['select_menu_type']['filters']['language'] = array(
      '#type' => 'select',
      '#title' => 'Language' . ':  ',
      '#options' => $lang_filter,
      '#default_value' => $default,
      '#prefix' => '<div class="container-inline"><table><tr><td style="text-align: left;width: 15%;vertical-align: middle;border: none;">',
      '#suffix' => '</tr>',
      '#field_suffix' => '</td>',
      '#field_prefix' => '</td><td>',
    );
    $form['select_menu_type']['filters']['link_title'] = array(
      '#type' => 'textfield',
      '#title' => 'Link Title',
      '#default_value' => $default_title,
      '#attributes' => array(
        'size' => 30,
      ),
      '#prefix' => '<tr><td style="text-align: left;width: 15%;vertical-align: middle;border: none;">',
      '#suffix' => '</tr>',
      '#field_suffix' => '</td>',
      '#field_prefix' => '</td><td>',
    );
    $form['select_menu_type']['filters']['types'] = array(
      '#type' => 'select',
      '#title' => 'Menu Type(s)' . ':&nbsp;&nbsp;',
      '#options' => $options,
      '#default_value' => $types,
      '#multiple' => TRUE,
      '#attributes' => array(
        'class' => array(
          'container-inline',
        ),
        'style' => array(
          'padding:0px;',
        ),
      ),
      '#prefix' => '<tr><td style="text-align: left;width: 15%;vertical-align: middle;border: none;">',
      '#suffix' => '</tr></table></div>',
      '#field_suffix' => '</td>',
      '#field_prefix' => '</td><td>',
    );
    $disable_submit = $filter ? TRUE : FALSE;
    $form['select_menu_type']['filters']['filter'] = array(
      '#type' => 'submit',
      '#value' => t('Filter'),
      '#disabled' => $disable_submit,
    );
    if ($filter) {
      $label = 'All';
      if ($types != '') {
        $m_labels = array();
        foreach ($types as $m_type) {
          $m_labels[] = $options[$m_type];
        }
        $label = implode($m_labels, ', ');
      }
      $form['filter-search'] = array(
        '#type' => 'fieldset',
        '#title' => t('FILTER CRITERIA'),
      );
      $form['filter-search']['filter-markup'] = array(
        '#type' => 'container',
      );
      $form['filter-search']['filter-markup'][] = array(
        '#markup' => '<table>',
      );
      $form['filter-search']['filter-markup'][] = array(
        '#markup' => '<tr><td style="text-align: left;width: 15%;vertical-align: middle;border: none;"><b>' . 'Menu Type' . '</b>:&nbsp;</td><td style="text-align: left;width: 85%;vertical-align: middle;border: none;">' . $label . '</td></tr>',
      );
      $form['filter-search']['filter-markup'][] = array(
        '#markup' => '<tr><td style="text-align: left;width: 15%;vertical-align: middle;border: none;"><b>' . 'Language' . '</b>:&nbsp;</td><td style="text-align: left;width: 85%;vertical-align: middle;border: none;">' . $lang_filter[$default] . '</td></tr>',
      );
      if ($default_title != '') {
        $form['filter-search']['filter-markup'][] = array(
          '#markup' => '<tr><td style="text-align: left;width: 15%;vertical-align: middle;border: none;"><b>' . 'Link Title' . '</b>:&nbsp;</td><td style="text-align: left;width: 85%;vertical-align: middle;border: none;">' . $default_title . '</td></tr>',
        );
      }
      $form['filter-search']['filter-markup'][] = array(
        '#markup' => '</table>',
      );
      $form['filter-search']['status']['actions'] = array(
        '#type' => 'actions',
        '#attributes' => array(
          'class' => array(
            'container-inline',
          ),
        ),
      );
      $form['filter-search']['status']['actions']['reset'] = array(
        '#type' => 'submit',
        '#value' => t('Reset'),
      );
    }
  }
  else {
    $form['locale_mapping']['no_mapping'] = array(
      '#type' => 'markup',
      '#markup' => t('<br/><b><i>No GlobalLink locale mapping found.</i></b>'),
    );
  }
  return $form;
}