Extracted text and test files from source code

This commit is contained in:
Manuel Cillero 2017-08-29 09:49:41 +02:00
parent 676a7ea81c
commit e7e66a9245
134 changed files with 0 additions and 14081 deletions

View file

@ -1,71 +0,0 @@
==================================================================================
Date API Installation instructions:
==================================================================================
1) If you have an earlier version of the Date module on your system, empty the
date folder out completely. The files in version 2 have different names and are
located in different places.
2) Download the whole package of files from http://drupal.org/project/date.
3) Upload the date files to the modules directory. The package includes files
needed by the Date API, and optional modules to to create CCK date fields.
4) Go to admin/build/modules and enable the needed modules from the Date/Time group.
You should end up with a structure like:
/drupal/modules/date/date_api.info
/drupal/modules/date/date_api.install
/drupal/modules/date/date_api.module
...
/drupal/modules/date/date/date.info
/drupal/modules/date/date/date.install
/drupal/modules/date/date/date.module
...
/drupal/modules/date/date_copy/date_copy.info
/drupal/modules/date/date_copy/date_copy.module
...
/drupal/modules/date/date_php4/date_php4.inc
/drupal/modules/date/date_php4/date_php4_lib.inc
...
==================================================================================
Older PHP versions
==================================================================================
If you are using PHP 4 or PHP 5.0 or 5.1, native date handling won't work right.
Install the Date_PHP4 module to enable wrapper functions so this code will work
in old PHP versions.
==================================================================================
Enable Date Timezone
==================================================================================
In most cases, you should enable the Date Timezone module any time you use the
Date API to be able to set the site and user timezone names. It is not enabled by
default in case another module is setting timezone names in the database.
Once you have enabled it, go to admin/settings/date-time and set the default
site timezone name. If you are using user timezones, go to your account settings
and set up your own timezone name.
==================================================================================
Install CCK Date Fields:
==================================================================================
1) The CCK date field is included in the Date files at http://drupal.org/project/date.
2) Go to admin/build/modules and enable the Date module. Be sure that the Date API module,
the Date Timezone module, and the Content module are also installed.
3) Go to admin/content/types to view cck content types and edit a content type.
4) Make sure the default timezone name has been set at admin/settings/date-time.
5) While viewing a content type, select the option to add a new field from the tabs at
the top of the page. Several options for date fields should be visible.
==================================================================================
More documentation is available at http://drupal.org/node/92460.
==================================================================================

View file

@ -1,282 +0,0 @@
<?php
/**
* @file
* Theme functions.
*/
/**
* @addtogroup themeable
* @{
*
* Formatter themes
*/
/**
* Theme from/to date combination in the view.
*
* Useful values:
*
* $node->date_id
* If set, this will show only an individual date on a field with
* multiple dates. The value should be a string that contains
* the following values, separated with periods:
* - module name of the module adding the item
* - node nid
* - field name
* - delta value of the field to be displayed
* - other information the module's custom theme might need
*
* Used by the calendar module and available for other uses.
* example: 'date.217.field_date.3.test'
*
* $node->date_repeat_show
* If true, tells the theme to show all the computed values
* of a repeating date. If not true or not set, only the
* start date and the repeat rule will be displayed.
*
* $dates['format'] - the format string used on these dates
* $dates['value']['local']['object'] - the local date object for the From date
* $dates['value2']['local']['object'] - the local date object for the To date
* $dates['value']['local']['datetime'] - the datetime value of the From date database (GMT) value
* $dates['value2']['local']['datetime'] - the datetime value of the To date database (GMT) value
* $dates['value']['formatted'] = formatted From date, i.e. 'February 15, 2007 2:00 pm';
* $dates['value']['formatted_date'] - only the date part of the formatted From date
* $dates['value']['formatted_time'] - only the time part of the formatted From date
* $dates['value2']['formatted'] = formatted To date, i.e. 'February 15, 2007 6:00 pm';
* $dates['value2']['formatted_date'] - only the date part of the formatted To date
* $dates['value2']['formatted_time'] - only the time part of the formatted To date
*/
function theme_date_display_combination($element) {
static $repeating_ids = array();
$node = $element['#node'];
$field_name = $element['#field_name'];
$context = !empty($node->content) && !empty($node->content[$field_name]) ? $node->content[$field_name]['#context'] : 'full';
$type_name = $element['#type_name'];
$fields = content_fields();
$field = $fields[$field_name];
$item = $element['#item'];
// Get the formatter settings, either the default settings for this node
// type or the View settings stored in $node->date_info.
$options = date_formatter_get_settings($field_name, $type_name, $context);
if (!empty($node->date_info) && !empty($node->date_info->formatter_settings)) {
$options = $node->date_info->formatter_settings;
}
$output = '';
// If date_id is set for this field and the delta doesn't match, don't display it.
if (!empty($node->date_id)) {
foreach ((array) $node->date_id as $key => $id) {
list($module, $nid, $field_name, $delta, $other) = explode('.', $id);
if ($field_name == $field['field_name'] && isset($item['#delta']) && $delta != $item['#delta']) {
return $output;
}
}
}
// Check the formatter settings to see if the repeat rule should be
// displayed. Show it only with the first multiple value date.
if (!in_array($node->nid, $repeating_ids) && module_exists('date_repeat')
&& !empty($item['rrule']) && $options['repeat']['show_repeat_rule'] == 'show') {
require_once('./'. drupal_get_path('module', 'date') .'/date_repeat.inc');
$output .= theme('date_repeat_display', $field, $item, $node);
$repeating_ids[] = $node->nid;
}
// If this is a full node or a pseudo node created by grouping
// multiple values, see exactly which values are supposed to be visible.
if (isset($node->$field_name)) {
$node = date_prepare_node($node, $field, $type_name, $context, $options);
// Did the current value get removed by formatter settings?
if (empty($node->{$field_name}[$item['#delta']])) {
return $output;
}
// Adjust the $element values to match the changes.
$element['#node'] = $node;
}
// Call the right theme for this formatter.
// Update the element with values that might have been altered by
// date_prepare_node() and figure out which values to display.
$dates = date_formatter_process($element);
switch ($options['fromto']['fromto']) {
case 'value':
$date1 = $dates['value']['formatted'];
$date2 = $date1;
break;
case 'value2':
$date2 = $dates['value2']['formatted'];
$date1 = $date2;
break;
default:
$date1 = $dates['value']['formatted'];
$date2 = $dates['value2']['formatted'];
break;
}
// Pull the timezone, if any, out of the formatted result and tack it
// back on at the end, if it is in the current formatted date.
$timezone = $dates['value']['formatted_timezone'];
if ($timezone) {
$timezone = ' ' . $timezone;
}
$date1 = str_replace($timezone, '', $date1);
$date2 = str_replace($timezone, '', $date2);
// No date values, display nothing.
if (empty($date1) && empty($date2)) {
$output .= '';
}
// From and To dates match or there is no To date, display a complete single date.
elseif ($date1 == $date2 || empty($date2)) {
$output .= theme('date_display_single', $date1, $timezone);
}
// Same day, different times, don't repeat the date but show both From and To times.
elseif (date_has_time($field['granularity']) && $dates['value']['formatted_date'] == $dates['value2']['formatted_date']) {
// Replace the original time with the from/to time in the formatted start date.
// Make sure that parentheses or brackets wrapping the time will be retained in the
// final result.
$time1 = preg_replace('`^([\(\[])`', '', $dates['value']['formatted_time']);
$time1 = preg_replace('([\)\]]$)', '', $time1);
$time2 = preg_replace('`^([\(\[])`', '', $dates['value2']['formatted_time']);
$time2 = preg_replace('([\)\]]$)', '', $time2);
$time = theme('date_display_range', $time1, $time2);
$replaced = str_replace($time1, $time, $date1);
$output .= theme('date_display_single', $replaced, $timezone);
}
// Different days, display both in their entirety.
else {
$output .= theme('date_display_range', $date1, $date2, $timezone);
}
return $output;
}
function theme_date_display_single($date, $timezone = NULL) {
return '<span class="date-display-single">'. $date . $timezone .'</span>';
}
function theme_date_display_range($date1, $date2, $timezone = NULL) {
return '<span class="date-display-start">'. $date1 .'</span>'.
'<span class="date-display-separator"> - </span>' .
'<span class="date-display-end">'. $date2 . $timezone. '</span>';
}
/**
* Theme a format interval for a date element
*
* @param $field = the field settings
* @param $node = node information, this is not always available and not
* always the full node, it depends on what value was provided to the formatter.
* Only the nid is always guaranteed to be available.
* @param $dates - an array of date information, see explanation for date_field_object for details.
* @return a formatted display
*
*/
function theme_date_format_interval($element) {
$node = $element['#node'];
$field_name = $element['#field_name'];
$context = !empty($node->content) ? $node->content[$field_name]['#context'] : 'full';
$type_name = $element['#type_name'];
$fields = content_fields();
$field = $fields[$field_name];
$item = $element['#item'];
// Get the formatter settings, either the default settings for this node
// type or the View settings stored in $node->date_info.
$options = date_formatter_get_settings($field_name, $type_name, $context);
if (!empty($node->date_info) && !empty($node->date_info->formatter_settings)) {
$options = $node->date_info->formatter_settings;
}
// If date_id is set for this field and the delta doesn't match, don't display it.
if (!empty($node->date_id)) {
foreach ((array) $node->date_id as $key => $id) {
list($module, $nid, $field_name, $delta, $other) = explode('.', $id);
if ($field_name == $field['field_name'] && isset($item['#delta']) && $delta != $item['#delta']) {
return;
}
}
}
// If this is not coming from Views, it is the full node.
// If we aren't retrieving a specific value, adjust the node values
// to match the formatter settings, removing values we should not see.
if (!empty($node->content) && empty($node->date_id)) {
$node = date_prepare_node($node, $field, $type_name, $context, $options);
// Did the current value get removed by formatter settings?
if (empty($node->{$field_name}[$item['#delta']])) {
return;
}
// Adjust the $element values to match the changes.
$element['#node'] = $node;
}
$dates = date_formatter_process($element);
return theme('date_time_ago', $dates['value']['local']['object'], $dates['value2']['local']['object']);
}
/**
* Theme the human-readable description for a Date Repeat rule.
*
* TODO -
* add in ways to store the description in the date so it isn't regenerated
* over and over and find a way to allow description to be shown or hidden.
*/
function theme_date_repeat_display($field, $item, $node = NULL) {
$output = '';
if (!empty($item['rrule'])) {
$output = date_repeat_rrule_description($item['rrule']);
$output = '<div>'. $output .'</div>';
}
return $output;
}
/**
* Adjust from/to date format to account for 'all day'.
*
* @param array $field, the field definition for this date field.
* @param string $which, which value to return, 'date1' or 'date2'.
* @param object $date1, a date/time object for the 'from' date.
* @param object $date2, a date/time object for the 'to' date.
* @param string $format
* @param object $node, the node this date comes from (may be incomplete, always contains nid).
* @param object $view, the view this node comes from, if applicable.
* @return formatted date.
*/
function theme_date_all_day($field, $which, $date1, $date2, $format, $node, $view = NULL) {
if (empty($date1) || !is_object($date1) || $format == 'format_interval') {
return;
}
if (empty($date2)) {
$date2 = $date1;
}
$suffix = '';
if (!date_has_time($field['granularity'])) {
$format = date_limit_format($format, array('year', 'month', 'day'));
}
else {
$format_granularity = date_format_order($format);
$format_has_time = FALSE;
if (in_array('hour', $format_granularity)) {
$format_has_time = TRUE;
}
$all_day = date_field_all_day($field, $date1, $date2);
if ($all_day && $format_has_time) {
$format = date_limit_format($format, array('year', 'month', 'day'));
$suffix = ' ' . theme('date_all_day_label');
}
}
return trim(date_format_date($$which, 'custom', $format) . $suffix);
}
/**
* Theme the way an 'all day' label will look.
*/
function theme_date_all_day_label() {
return '('. date_t('All day', 'datetime') .')';
}
/** @} End of addtogroup themeable */