You are here

function _language_access_form_node_form_alter in Language access 6

Same name and namespace in other branches
  1. 7 language_access.module \_language_access_form_node_form_alter()

Implements hook_form_alter(). Called by language_access_form_alter

1 string reference to '_language_access_form_node_form_alter'
language_access_form_alter in ./language_access.module
Implements hook_form_alter().

File

./language_access.module, line 88

Code

function _language_access_form_node_form_alter($form, &$form_state) {

  // Deny access if user has no permissions to create language and language is not undefined.
  $default_value = $form['language']['#default_value'];
  if (!empty($default_value)) {
    if (!user_access('create language ' . $default_value) && $default_value != 'und') {
      drupal_access_denied();
      exit;
    }
  }
  $default_language = language_default();

  // Remove unallowed languages from language list in form
  if (isset($form['language']['#options'])) {
    foreach ($form['language']['#options'] as $lang => $lang_name) {
      if ($lang != 'und' && $lang != $default_language->language) {
        if (!user_access('create language ' . $lang)) {
          unset($form['language']['#options'][$lang]);
        }
      }
    }
  }
  return $form;
}