You are here

language_selection_page.pages.inc in Language Selection Page 6

The page containing the modules pages.

File

language_selection_page.pages.inc
View source
<?php

/**
 * @file
 * The page containing the modules pages.
 */

/**
 * Menu callback to display the selection page.
 */
function language_selection_page_selection_page() {
  module_load_include('inc', 'language_selection_page', 'includes/language_selection_page.helpers');
  drupal_init_language();
  $url_parsed = _language_selection_page_parse_url_custom();
  $query = $url_parsed['query'];
  $from = $query['destination'];
  unset($query['q']);
  unset($query['destination']);
  $query = drupal_query_string_encode($query);
  $link_text = url($from, array(
    'query' => $query,
    'language' => new stdClass(),
  ));
  $data['from_link']['from_text'] = $from;
  $data['from_link']['from_query_str'] = $query;
  $data['from_link']['link_text'] = url($from, array(
    'query' => $query,
    'language' => new stdClass(),
  ));
  $data['from_link']['html'] = l($link_text, $from, array(
    'query' => $query,
    'language' => new stdClass(),
  ));
  foreach (language_list() as $prefix => $language) {
    if (!$language->prefix) {
      continue;
    }
    $link_text = drupal_ucfirst(drupal_strtolower(t('Continue in', array(), $language->language))) . ' ' . $language->native;
    $data['links']['items'][$prefix] = l($link_text, $from, array(
      'query' => $query,
      'language' => $language,
    ));
    $data['links']['text'][$prefix] = $link_text;
    $data['links']['path'][$prefix] = url($from, array(
      'query' => $query,
      'language' => $language,
    ));
  }
  $data['links']['html'] = theme('item_list', $data['links']['items']);
  $data['content'] = theme('language_selection_page_body', $data);
  $redirect_type = variable_get('language_selection_page_redirect_type', 64);
  switch ($redirect_type) {
    case 32:
      return $data['content'];
      break;
    case 64:
      drupal_add_css(drupal_get_path('module', 'language_selection_page') . '/themes/css/language_selection_page.css');
      $data['head'] = drupal_get_html_head();
      $data['css'] = drupal_add_css();
      $data['styles'] = drupal_get_css();
      $data['scripts'] = drupal_get_js();
      $data['title'] = "Language selection";
      $data['closure'] = theme('closure');
      print theme('language_selection_page', $data);
      exit;
  }
}

Functions

Namesort descending Description
language_selection_page_selection_page Menu callback to display the selection page.