diff --git a/modules/language.views.inc b/modules/language.views.inc new file mode 100644 index 0000000000000000000000000000000000000000..d9065e850819f1b036d0ee4a23e9d7c47e614319 --- /dev/null +++ b/modules/language.views.inc @@ -0,0 +1,95 @@ +<?php + +/** + * @file + * Provide views data and handlers for language.module. + * + * @ingroup views_module_handlers + */ + +/** + * Implements hook_views_data(). + */ +function language_views_data() { + $data['language']['table']['group'] = t('Language'); + + $data['language']['table']['base'] = array( + 'field' => 'langcode', + 'title' => t('Language'), + 'help' => t('A language used in drupal.'), + ); + + // name + // direction + // weight + + $data['language']['langcode'] = array( + 'title' => t('Language code'), + 'help' => t("Language code, e.g. 'de' or 'en-US'."), + 'field' => array( + 'handler' => 'views_handler_field', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string' + ), + 'argument' => array( + 'handler' => 'views_handler_argument_string', + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + ); + + $data['language']['name'] = array( + 'title' => t('Language name'), + 'help' => t("Language name, e.g. 'German' or 'English'."), + 'field' => array( + 'handler' => 'views_handler_field', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string' + ), + 'argument' => array( + 'handler' => 'views_handler_argument_string', + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + ); + + $data['language']['direction'] = array( + 'title' => t('Direction'), + 'help' => t('Direction of language (Left-to-Right = 0, Right-to-Left = 1).'), + 'field' => array( + 'handler' => 'views_handler_field_numeric', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_numeric' + ), + 'argument' => array( + 'handler' => 'views_handler_argument_numeric', + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + ); + + $data['language']['weight'] = array( + 'title' => t('Weight'), + 'help' => t('Weight, used in lists of languages.'), + 'field' => array( + 'handler' => 'views_handler_field_numeric', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_numeric' + ), + 'argument' => array( + 'handler' => 'views_handler_argument_numeric', + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + ); + + return $data; +} diff --git a/views.module b/views.module index 3d34603365a0268ad1ae5ab441bdf619c56b6910..27bb3aa9f079755de838da09257887c3f3833191 100644 --- a/views.module +++ b/views.module @@ -2397,6 +2397,10 @@ function filter_views_api() { return views_views_api(); } function image_views_api() { return views_views_api(); } } +if (!function_exists('language_views_api')) { + function language_views_api() { return views_views_api(); } +} + if (!function_exists('locale_views_api')) { function locale_views_api() { return views_views_api(); } }