API:EPrints/Time

From EPrints Documentation
Revision as of 14:03, 24 August 2009 by Cjg (Talk | contribs)

Jump to: navigation, search


EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects


API: Core API

Latest Source Code (3.3, 3.2) | Revision Log | Before editing this page please read Pod2Wiki


NAME

EPrints::Time - Time and Date-related functions

User Comments


SYNOPSIS

 EPrints::Time::render_date( $handle, "2001-01-12T00:00:00Z" ) 
 # returns XML containing 12 January 2001 00:00
 
 EPrints::Time::render_short_date( $handle, "2001-01-12T00:00:00Z" ) 
 # returns XML containing 12 Jan 2001 00:00
 
 EPrints::Time::get_iso_timestamp( ); 
 # returns NOW in the form YYYY-MM-DDTHH:MM:SSZ
 
 EPrints::Time::human_delay( 28 ); 
 # returns "1 day"
 
 EPrints::Time::get_month_label( $handle, 11 ) 
 # returns November
 
 EPrints::Time::get_month_label_short( $handle, 11 ) 
 # returns Nov
 

User Comments


DESCRIPTION

This package contains functions related to time/date functionality.


User Comments


$xhtml = EPrints::Time::render_date( $handle, $datevalue )

Render the given date or date and time as a chunk of XHTML.

$datevalue is given in a UTC timestamp of the form YYYY-MM-DDTHH:MM:SSZ but it will be rendered in the local offset.

e.g EPrints::Time::render_date( $handle, "2001-01-12T00:00:00Z" ) #returns XML containing 12 January 2001 00:00

User Comments


$xhtml = EPrints::Time::render_short_date( $handle, $datevalue )

Renders a short version of the given date or date and time as a chunk of XHTML.

$datevalue is given in UTC timestamp of the form YYYY-MM-DDTHH:MM:SSZ but it will be rendered in the local offset.

e.g EPrints::Time::render_short_date( $handle, "2001-01-12T00:00:00Z" ) #returns XML containing 12 Jan 2001 00:00

User Comments


$xhtml = EPrints::Time::datestring_to_timet( $handle, $datevalue )

Returns an interger number of seconds since 1970-01-01:00:00

$datevalue - in the format YYYY-MM-DDTHH:MM:SSZ

User Comments


$xhtml = EPrints::Time::gmt_off()

Render the current time offset in seconds. This just diffs gmtime and localtime.

User Comments


$label = EPrints::Time::get_month_label( $handle, $monthid )

Return a UTF-8 string describing the month, in the current lanugage.

$monthid is an integer from 1 to 12.

e.g EPrints::Time::get_month_label( $handle, 11 ) # returns November

User Comments


$label = EPrints::Time::get_month_label_short( $handle, $monthid )

Return a UTF-8 string of a short representation in month, in the current lanugage.

$monthid is an integer from 1 to 12.

e.g EPrints::Time::get_month_label_short( $handle, 11 ) # returns Nov

User Comments


($year,$month,$day) = EPrints::Time::get_date_array( [$time] )

Static method that returns the given time (in UNIX time, seconds since 1.1.79) in an array.

This is the local date not the UTC date.

User Comments


$datestamp = EPrints::Time::get_iso_date( [$time] )

Method that returns the given time (in UNIX time, seconds since 1.1.79) in the format used by EPrints and MySQL (YYYY-MM-DD).

This is the localtime date, not UTC.

User Comments


$timestamp = EPrints::Time::human_time( [$time] )

Return a string describing the current local date and time in the current locale's format (see Perl's 'localtime).

User Comments


$timestamp = EPrints::Time::get_iso_timestamp( [$time] );

Return a UTC timestamp of the form YYYY-MM-DDTHH:MM:SSZ

e.g. 2005-02-12T09:23:33Z

$time in seconds from 1970. If not defined then assume current time.


User Comments


$timestamp = EPrints::Time::human_delay( $hours );

Returns a human readable amount of time.

$hours the number of hours representing the time you want to be human readable.

e.g. EPrints::Time::human_delay( 28 ); # returns "1 day"

e.g. EPrints::Time::human_delay( 400 ); # returns "2 weeks"

User Comments