@ -21,43 +21,14 @@
var CLNDR = new Array ( ) ;
var CLNDR = new Array ( ) ;
var calendar = Class . create ( ) ;
var calendar = Class . create ( ) ;
function getCalendarByID ( clndr_id ) {
var ret = null ;
jQuery ( CLNDR ) . each ( function ( i , obj ) {
if ( obj . clndr . id === clndr_id ) {
ret = obj ;
return ;
}
} ) ;
return ret ;
}
function create_calendar ( time , timeobjects , id , utime_field_id , parentNodeid ) {
function create_calendar ( time , timeobjects , id , utime_field_id , parentNodeid ) {
if ( typeof id === 'undefined' || id === null ) {
id = 'c' + CLNDR . length ;
}
if ( typeof utime_field_id === 'undefined' ) {
id = id || CLNDR . length ;
if ( 'undefined' == typeof ( utime_field_id ) ) {
utime_field_id = null ;
utime_field_id = null ;
}
}
var clndr = new Object ;
clndr . clndr = new calendar ( id , time , timeobjects , utime_field_id , parentNodeid ) ;
CLNDR . push ( clndr ) ;
return clndr ;
}
function dateSelectorOnClick ( event , elmnt , name ) {
var pos = getPosition ( elmnt ) ;
// This way calendar will never overlap with selector.
pos . top += elmnt . offsetHeight ;
pos . left += elmnt . offsetWidth ;
getCalendarByID ( name ) . clndr . clndrshow ( pos . top , pos . left , elmnt ) ;
event . stopPropagation ( ) ;
CLNDR [ id ] = new Object ;
CLNDR [ id ] . clndr = new calendar ( id , time , timeobjects , utime_field_id , parentNodeid ) ;
return CLNDR [ id ] ;
}
}
calendar . prototype = {
calendar . prototype = {
@ -70,29 +41,23 @@ calendar.prototype = {
hour : 12 , // hours
hour : 12 , // hours
minute : 00 , // minutes
minute : 00 , // minutes
clndr_calendar : null , // html obj of calendar
clndr_calendar : null , // html obj of calendar
clndr_month_div : null , // html obj
clndr_year_div : null , // html obj
clndr_minute : null , // html from obj
clndr_hour : null , // html from obj
clndr_days : null , // html obj
clndr_days : null , // html obj
clndr_month : null , // html obj
clndr_month : null , // html obj
clndr_year : null , // html obj
clndr_year : null , // html obj
clndr_selectedday : null , // html obj, selected day
clndr_selectedday : null , // html obj, selected day
clndr_year_wrap : null , // html obj
clndr_month_wrap : null , // html obj
clndr_monthup : null , // html bttn obj
clndr_monthup : null , // html bttn obj
clndr_monthdown : null , // html bttn obj
clndr_monthdown : null , // html bttn obj
clndr_yearup : null , // html bttn obj
clndr_yearup : null , // html bttn obj
clndr_yeardown : null , // html bttn obj
clndr_yeardown : null , // html bttn obj
clndr_now : null , // html bttn obj
clndr_done : null , // html bttn obj
clndr_utime_field : null , // html obj where unix date representation is saved
clndr_utime_field : null , // html obj where unix date representation is saved
timeobjects : new Array ( ) , // object list where will be saved date
timeobjects : new Array ( ) , // object list where will be saved date
status : false , // status of timeobjects
status : false , // status of timeobjects
visible : 0 , // GMenu style state
visible : 0 , // GMenu style state
hl_month : null , // highlighted month number
hl_year : null , // highlighted year number
hl_day : null , // highlighted days number
active_section : null , // Active calendar section. See 'sections' array. Default value set in method clndrshow.
monthname : new Array ( locale [ 'S_JANUARY' ] , locale [ 'S_FEBRUARY' ] , locale [ 'S_MARCH' ] , locale [ 'S_APRIL' ] , locale [ 'S_MAY' ] , locale [ 'S_JUNE' ] , locale [ 'S_JULY' ] , locale [ 'S_AUGUST' ] , locale [ 'S_SEPTEMBER' ] , locale [ 'S_OCTOBER' ] , locale [ 'S_NOVEMBER' ] , locale [ 'S_DECEMBER' ] ) ,
monthname : new Array ( locale [ 'S_JANUARY' ] , locale [ 'S_FEBRUARY' ] , locale [ 'S_MARCH' ] , locale [ 'S_APRIL' ] , locale [ 'S_MAY' ] , locale [ 'S_JUNE' ] , locale [ 'S_JULY' ] , locale [ 'S_AUGUST' ] , locale [ 'S_SEPTEMBER' ] , locale [ 'S_OCTOBER' ] , locale [ 'S_NOVEMBER' ] , locale [ 'S_DECEMBER' ] ) ,
dayname : new Array ( locale [ 'S_SUNDAY' ] , locale [ 'S_MONDAY' ] , locale [ 'S_TUESDAY' ] , locale [ 'S_WEDNESDAY' ] , locale [ 'S_THURSDAY' ] , locale [ 'S_FRIDAY' ] , locale [ 'S_SATURDAY' ] ) ,
sections : new Array ( '.calendar-year' , '.calendar-month' , '.calendar-date' ) ,
initialize : function ( id , stime , timeobjects , utime_field_id , parentNodeid ) {
initialize : function ( id , stime , timeobjects , utime_field_id , parentNodeid ) {
this . id = id ;
this . id = id ;
@ -106,6 +71,10 @@ calendar.prototype = {
addListener ( this . clndr_monthup , 'click' , this . monthup . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_monthup , 'click' , this . monthup . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_yeardown , 'click' , this . yeardown . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_yeardown , 'click' , this . yeardown . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_yearup , 'click' , this . yearup . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_yearup , 'click' , this . yearup . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_hour , 'blur' , this . sethour . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_minute , 'blur' , this . setminute . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_now , 'click' , this . setNow . bindAsEventListener ( this ) ) ;
addListener ( this . clndr_done , 'click' , this . setDone . bindAsEventListener ( this ) ) ;
for ( var i = 0 ; i < this . timeobjects . length ; i ++ ) {
for ( var i = 0 ; i < this . timeobjects . length ; i ++ ) {
if ( typeof ( this . timeobjects [ i ] ) != 'undefined' && ! empty ( this . timeobjects [ i ] ) ) {
if ( typeof ( this . timeobjects [ i ] ) != 'undefined' && ! empty ( this . timeobjects [ i ] ) ) {
@ -129,16 +98,6 @@ calendar.prototype = {
if ( ! is_null ( utime_field_id ) ) {
if ( ! is_null ( utime_field_id ) ) {
this . clndr_utime_field = utime_field_id ;
this . clndr_utime_field = utime_field_id ;
}
}
var cal_obj = this ;
jQuery ( this . sections ) . each ( function ( index , item ) {
jQuery ( item , cal_obj . clndr_calendar )
. attr ( { 'tabindex' : '0' } )
. on ( 'click' , function ( ) {
cal_obj . active_section = index ;
cal_obj . focusSection ( ) ;
} ) ;
} ) ;
} ,
} ,
ondateselected : function ( ) {
ondateselected : function ( ) {
@ -158,16 +117,6 @@ calendar.prototype = {
this . clndr_calendar . hide ( ) ;
this . clndr_calendar . hide ( ) ;
this . visible = 0 ;
this . visible = 0 ;
// Unset higlighted date.
this . hl_month = null ;
this . hl_year = null ;
this . hl_day = null ;
jQuery ( document )
. off ( 'click' , this . calendarDocumentClickHandler )
. off ( 'keydown' , this . calendarKeyDownHandler )
. off ( 'keyup' , this . calendarKeyUpHandler ) ;
removeFromOverlaysStack ( this . id . toString ( ) ) ;
removeFromOverlaysStack ( this . id . toString ( ) ) ;
} ,
} ,
@ -176,13 +125,6 @@ calendar.prototype = {
this . clndrhide ( ) ;
this . clndrhide ( ) ;
}
}
else {
else {
// Close all opened calendars.
jQuery ( CLNDR ) . each ( function ( i , cal ) {
if ( cal . clndr . visible == 1 && cal . clndr . id != this . id ) {
cal . clndr . clndrhide ( ) ;
}
} ) ;
if ( this . status ) {
if ( this . status ) {
this . setSDateFromOuterObj ( ) ;
this . setSDateFromOuterObj ( ) ;
this . cdt . setTime ( this . sdt . getTime ( ) ) ;
this . cdt . setTime ( this . sdt . getTime ( ) ) ;
@ -190,222 +132,15 @@ calendar.prototype = {
this . syncBSDateBySDT ( ) ;
this . syncBSDateBySDT ( ) ;
this . setCDate ( ) ;
this . setCDate ( ) ;
}
}
if ( typeof ( top ) != 'undefined' && typeof ( left ) != 'undefined' ) {
var cw = jQuery ( this . clndr_calendar ) . outerWidth ( ) ;
if ( document . body . clientWidth < + left + cw ) {
left = document . body . clientWidth - cw ;
}
if ( 'undefined' != typeof ( top ) && 'undefined' != typeof ( left ) ) {
this . clndr_calendar . style . top = top + 'px' ;
this . clndr_calendar . style . top = top + 'px' ;
this . clndr_calendar . style . left = left + 'px' ;
this . clndr_calendar . style . left = left + 'px' ;
}
}
this . clndr_calendar . show ( ) ;
this . clndr_calendar . show ( ) ;
this . visible = 1 ;
this . visible = 1 ;
jQuery ( document )
. on ( 'keydown' , { calendar : this } , this . calendarKeyDownHandler )
. on ( 'keyup' , { calendar : this } , this . calendarKeyUpHandler )
. on ( 'click' , this . calendarDocumentClickHandler ) ;
overlayDialogueOnLoad ( true , this . clndr_calendar ) ;
addToOverlaysStack ( this . id , trigger_elmnt , 'clndr' ) ;
addToOverlaysStack ( this . id , trigger_elmnt , 'clndr' ) ;
this . active_section = this . sections . indexOf ( '.calendar-date' ) ;
this . focusSection ( ) ;
}
} ,
calendarDocumentClickHandler : function ( ) {
jQuery ( CLNDR ) . each ( function ( i , cal ) {
if ( cal . clndr . visible == 1 ) {
cal . clndr . clndrhide ( ) ;
}
} ) ;
} ,
/ * *
* This function is workaround for Firefox bug .
*
* When triggering keydown event on [ space ] button , event is called for both , the actual element as well as calendar
* icon elemnet , so the calendar is first closed ( by handeler of actually focused element ) and immediately opened
* again ( by calendar icon element ' s handler ) .
*
* Workaround works as follow - it separates [ enter ] and [ space ] button in 2 handlers with similar functionality
* ( since pressing [ space ] and [ enter ] does the same thing in calendar ) . Keyup handles the [ space ] click event ,
* while other keyboard events are handled by keydown event .
* /
calendarKeyUpHandler : function ( event ) {
var cal = event . data . calendar ;
if ( event . which == 32 ) { // Space
// Enter has special meaning for each Calendar section.
var active_section = cal . sections [ cal . active_section ] ;
if ( active_section === '.calendar-year' || active_section === '.calendar-month' ) {
cal . active_section ++ ;
cal . focusSection ( ) ;
}
else if ( active_section === '.calendar-date' ) {
cal . setday ( event , cal . hl_day , cal . hl_month , cal . hl_year ) ;
}
return false ; // Prevent page scrolling when pressing Space.
}
} ,
calendarKeyDownHandler : function ( event ) {
var cal = event . data . calendar ,
hl_date ;
if ( cal . active_section < 0 || cal . active_section > cal . sections . length ) {
cal . active_section = 0 ;
}
switch ( event . which ) {
case 37 : // arrow left
case 38 : // arrow up
case 39 : // arrow right
case 40 : // arrow down
switch ( cal . sections [ cal . active_section ] ) {
case '.calendar-date' :
if ( cal . hl_month === null || cal . hl_day === null || cal . hl_year === null ) {
cal . hl_year = cal . year ;
cal . hl_month = cal . month ;
cal . hl_day = cal . day ;
}
hl_date = new Date ( cal . hl_year , cal . hl_month , cal . hl_day , 0 , 0 , 0 , 0 ) ;
switch ( event . which ) {
case 37 : // arrow left
hl_date . setDate ( hl_date . getDate ( ) - 1 ) ;
break ;
case 38 : // arrow up
hl_date . setDate ( hl_date . getDate ( ) - 7 ) ;
break ;
case 39 : // arrow right
hl_date . setDate ( hl_date . getDate ( ) + 1 ) ;
break ;
case 40 : // arrow down
hl_date . setDate ( hl_date . getDate ( ) + 7 ) ;
break ;
}
cal . hl_year = hl_date . getFullYear ( ) ;
cal . hl_month = hl_date . getMonth ( ) ;
cal . hl_day = hl_date . getDate ( ) ;
jQuery ( 'td.highlighted' , cal . clndr_calendar )
. removeClass ( 'highlighted' )
. attr ( 'tabindex' , '-1' ) ;
if ( cal . hl_year != cal . year || cal . hl_month != cal . month ) {
cal . year = cal . hl_year ;
cal . month = cal . hl_month ;
cal . day = cal . hl_day ;
cal . syncCDT ( ) ;
cal . setCDate ( ) ;
}
jQuery ( 'td[data-date=' + cal . hl_day + ']' , cal . clndr_calendar )
. addClass ( 'highlighted' )
. attr ( 'tabindex' , '0' )
. focus ( ) ;
break ;
case '.calendar-year' :
// Arrow left or arrow down.
if ( event . which == 37 || event . which == 40 ) {
cal . yeardown ( ) ;
}
// Arrow right or arrow up.
else if ( event . which == 38 || event . which == 39 ) {
cal . yearup ( ) ;
}
break ;
case '.calendar-month' :
// Arrow left or arrow down.
if ( event . which == 37 || event . which == 40 ) {
cal . monthdown ( ) ;
}
// Arrow right or arrow up.
else if ( event . which == 38 || event . which == 39 ) {
cal . monthup ( ) ;
}
break ;
}
// Prevent page scrolling.
event . preventDefault ( ) ;
break ;
case 9 : // Tab
event . preventDefault ( ) ;
if ( event . shiftKey ) {
cal . active_section -- ;
if ( cal . active_section < 0 ) {
cal . active_section = cal . sections . length - 1 ;
}
}
else {
cal . active_section ++ ;
if ( cal . active_section >= cal . sections . length ) {
cal . active_section = 0 ;
}
}
cal . focusSection ( ) ;
break ;
case 13 : // Enter
// Enter has special meaning for each Calendar section.
var active_section = cal . sections [ cal . active_section ] ;
if ( active_section === '.calendar-year' || active_section === '.calendar-month' ) {
cal . active_section ++ ;
cal . focusSection ( ) ;
}
else if ( active_section === '.calendar-date' ) {
cal . setday ( event , cal . hl_day , cal . hl_month , cal . hl_year ) ;
}
return false ;
break ;
case 32 : // Prevent page scrolling when pressing Space.
return false ;
}
} ,
focusSection : function ( ) {
var section_to_focus = this . sections [ this . active_section ] ;
jQuery ( '.highlighted' , this . clndr_calendar ) . removeClass ( 'highlighted' ) . blur ( ) ;
if ( section_to_focus === '.calendar-year' || section_to_focus === '.calendar-month' ) {
jQuery ( section_to_focus , this . clndr_calendar ) . addClass ( 'highlighted' ) . focus ( ) ;
}
else if ( section_to_focus === '.calendar-date' ) {
this . hl_year = this . hl_year || this . year ;
this . hl_month = this . hl_month || this . month ;
this . hl_day = this . hl_day || this . day ;
/ * *
* Switching between months and years , date picker will highlight previously selected date . If
* selected date is in different year or month , the first date of displayed year is highleghted .
* Same happens also if the number of dates in selected month is smaller than selected date in different
* month .
* /
if ( this . hl_year != this . year || this . hl_month != this . month
|| new Date ( this . year , this . month + 1 , 0 ) . getDate ( ) < this . hl_day ) {
this . hl_day = 1 ;
}
jQuery ( 'td[data-date=' + this . hl_day + ']' , this . clndr_calendar )
. addClass ( 'highlighted' )
. attr ( 'tabindex' , '0' )
. focus ( ) ;
}
}
} ,
} ,
@ -483,8 +218,8 @@ calendar.prototype = {
var result = true ;
var result = true ;
for ( var i = 0 ; i < this . timeobjects . length ; i ++ ) {
for ( var i = 0 ; i < this . timeobjects . length ; i ++ ) {
if ( 'undefined' !== this . timeobjects [ i ] && ! empty ( this . timeobjects [ i ] ) ) {
if ( this . timeobjects [ i ] . tagName . toLowerCase ( ) === 'input' ) {
if ( 'undefined' != this . timeobjects [ i ] && ! empty ( this . timeobjects [ i ] ) ) {
if ( this . timeobjects [ i ] . tagName . toLowerCase ( ) == 'input' ) {
val [ i ] = this . timeobjects [ i ] . value ;
val [ i ] = this . timeobjects [ i ] . value ;
}
}
else {
else {
@ -589,16 +324,10 @@ calendar.prototype = {
this . year = now . getFullYear ( ) ;
this . year = now . getFullYear ( ) ;
this . hour = now . getHours ( ) ;
this . hour = now . getHours ( ) ;
this . minute = now . getMinutes ( ) ;
this . minute = now . getMinutes ( ) ;
this . hl_year = this . year ;
this . hl_month = this . month ;
this . hl_day = this . day ;
this . syncSDT ( ) ;
this . syncSDT ( ) ;
this . syncBSDateBySDT ( ) ;
this . syncBSDateBySDT ( ) ;
this . syncCDT ( ) ;
this . syncCDT ( ) ;
this . setCDate ( ) ;
this . setCDate ( ) ;
this . active_section = this . sections . indexOf ( '.calendar-date' ) ;
this . focusSection ( ) ;
} ,
} ,
setDone : function ( ) {
setDone : function ( ) {
@ -606,30 +335,44 @@ calendar.prototype = {
this . ondateselected ( ) ;
this . ondateselected ( ) ;
} ,
} ,
setminute : function ( ) {
var minute = parseInt ( this . clndr_minute . value , 10 ) ;
if ( minute > - 1 && minute < 60 ) {
this . minute = minute ;
this . syncSDT ( ) ;
}
else {
this . clndr_minute . value = this . minute ;
}
} ,
sethour : function ( ) {
var hour = parseInt ( this . clndr_hour . value , 10 ) ;
if ( hour > - 1 && hour < 24 ) {
this . hour = hour ;
this . syncSDT ( ) ;
}
else {
this . clndr_hour . value = this . hour ;
}
} ,
setday : function ( e , day , month , year ) {
setday : function ( e , day , month , year ) {
if ( ! is_null ( this . clndr_selectedday ) ) {
if ( ! is_null ( this . clndr_selectedday ) ) {
this . clndr_selectedday . removeClassName ( 'selected' ) ;
this . clndr_selectedday . removeClassName ( 'selected' ) ;
this . clndr_selectedday . setAttribute ( 'tabindex' , '-1' ) ;
}
}
var selectedday = Event . element ( e ) ;
var selectedday = Event . element ( e ) ;
if ( selectedday . tagName === 'SPAN' ) {
selectedday = selectedday . parentNode ;
}
Element . extend ( selectedday ) ;
Element . extend ( selectedday ) ;
this . clndr_selectedday = selectedday ;
this . clndr_selectedday = selectedday ;
this . clndr_selectedday . addClassName ( 'selected' ) ;
this . clndr_selectedday . addClassName ( 'selected' ) ;
this . clndr_selectedday . setAttribute ( 'tabindex' , '0' ) ;
this . day = day ;
this . day = day ;
this . month = month ;
this . month = month ;
this . year = year ;
this . year = year ;
this . hl_day = day ;
this . hl_month = month ;
this . hl_year = year ;
this . syncSDT ( ) ;
this . syncSDT ( ) ;
this . syncBSDateBySDT ( ) ;
this . syncBSDateBySDT ( ) ;
this . syncCDT ( ) ;
this . syncCDT ( ) ;
this . setDon e ( ) ;
this . setCDat e ( ) ;
} ,
} ,
monthup : function ( ) {
monthup : function ( ) {
@ -649,9 +392,6 @@ calendar.prototype = {
this . syncCDT ( ) ;
this . syncCDT ( ) ;
this . setCDate ( ) ;
this . setCDate ( ) ;
}
}
this . hl_month = this . month ;
this . hl_year = this . year ;
} ,
} ,
monthdown : function ( ) {
monthdown : function ( ) {
@ -671,9 +411,6 @@ calendar.prototype = {
this . syncCDT ( ) ;
this . syncCDT ( ) ;
this . setCDate ( ) ;
this . setCDate ( ) ;
}
}
this . hl_month = this . month ;
this . hl_year = this . year ;
} ,
} ,
yearup : function ( ) {
yearup : function ( ) {
@ -683,7 +420,6 @@ calendar.prototype = {
this . year ++ ;
this . year ++ ;
this . syncCDT ( ) ;
this . syncCDT ( ) ;
this . setCDate ( ) ;
this . setCDate ( ) ;
this . hl_year = this . year ;
} ,
} ,
yeardown : function ( ) {
yeardown : function ( ) {
@ -693,7 +429,6 @@ calendar.prototype = {
this . year -- ;
this . year -- ;
this . syncCDT ( ) ;
this . syncCDT ( ) ;
this . setCDate ( ) ;
this . setCDate ( ) ;
this . hl_year = this . year ;
} ,
} ,
syncBSDateBySDT : function ( ) {
syncBSDateBySDT : function ( ) {
@ -713,6 +448,10 @@ calendar.prototype = {
} ,
} ,
setCDate : function ( ) {
setCDate : function ( ) {
this . clndr_minute . value = this . minute ;
this . clndr_minute . onchange ( ) ;
this . clndr_hour . value = this . hour ;
this . clndr_hour . onchange ( ) ;
this . clndr_month . textContent = this . monthname [ this . month ] ;
this . clndr_month . textContent = this . monthname [ this . month ] ;
this . clndr_year . textContent = this . year ;
this . clndr_year . textContent = this . year ;
this . createDaysTab ( ) ;
this . createDaysTab ( ) ;
@ -735,8 +474,6 @@ calendar.prototype = {
for ( var y = 0 ; y < 6 ; y ++ ) {
for ( var y = 0 ; y < 6 ; y ++ ) {
var tr = document . createElement ( 'tr' ) ;
var tr = document . createElement ( 'tr' ) ;
tr . setAttribute ( 'role' , 'presentation' ) ;
tbody . appendChild ( tr ) ;
tbody . appendChild ( tr ) ;
for ( var x = 0 ; x < 7 ; x ++ ) {
for ( var x = 0 ; x < 7 ; x ++ ) {
var td = document . createElement ( 'td' ) ;
var td = document . createElement ( 'td' ) ;
@ -746,9 +483,6 @@ calendar.prototype = {
if ( cur_month != this . cdt . getMonth ( ) ) {
if ( cur_month != this . cdt . getMonth ( ) ) {
td . addClassName ( 'grey' ) ;
td . addClassName ( 'grey' ) ;
}
}
else {
td . setAttribute ( 'data-date' , this . cdt . getDate ( ) ) ;
}
if ( this . sdt . getFullYear ( ) == this . cdt . getFullYear ( )
if ( this . sdt . getFullYear ( ) == this . cdt . getFullYear ( )
&& this . sdt . getMonth ( ) == this . cdt . getMonth ( )
&& this . sdt . getMonth ( ) == this . cdt . getMonth ( )
@ -757,39 +491,19 @@ calendar.prototype = {
this . clndr_selectedday = td ;
this . clndr_selectedday = td ;
}
}
td . setAttribute ( 'aria-label' , this . calendarGetReadableDate ( this . cdt ) ) ;
td . setAttribute ( 'tabindex' , '-1' ) ;
td . setAttribute ( 'role' , 'button' ) ;
var span = document . createElement ( 'span' ) ;
span . setAttribute ( 'aria-hidden' , 'true' ) ;
span . appendChild ( document . createTextNode ( this . cdt . getDate ( ) ) ) ;
td . appendChild ( span ) ;
addListener ( td , 'click' , this . setday . bindAsEventListener ( this , this . cdt . getDate ( ) , this . cdt . getMonth ( ) , this . cdt . getFullYear ( ) ) ) ;
addListener ( td , 'click' , this . setday . bindAsEventListener ( this , this . cdt . getDate ( ) , this . cdt . getMonth ( ) , this . cdt . getFullYear ( ) ) ) ;
td . appendChild ( document . createTextNode ( this . cdt . getDate ( ) ) ) ;
this . cdt . setTime ( this . cdt . getTime ( ) + 86400000 ) ; // + 1day
this . cdt . setTime ( this . cdt . getTime ( ) + 86400000 ) ; // + 1day
}
}
}
}
} ,
} ,
calendarGetReadableDate : function ( cdt ) {
return cdt . getDate ( ) + ', ' + this . dayname [ cdt . getDay ( ) ] + ' ' + this . monthname [ cdt . getMonth ( ) ] + ' ' +
cdt . getFullYear ( ) ;
} ,
calendarcreate : function ( parentNodeid ) {
calendarcreate : function ( parentNodeid ) {
this . clndr_calendar = document . createElement ( 'div' ) ;
this . clndr_calendar = document . createElement ( 'div' ) ;
Element . extend ( this . clndr_calendar ) ;
Element . extend ( this . clndr_calendar ) ;
this . clndr_calendar . className = 'overlay-dialogue calendar' ;
this . clndr_calendar . className = 'overlay-dialogue calendar' ;
this . clndr_calendar . setAttribute ( 'aria-label' , locale [ 'S_Calendar' ] ) ;
this . clndr_calendar . setAttribute ( 'role' , 'application' ) ;
this . clndr_calendar . setAttribute ( 'tabindex' , '0' ) ;
this . clndr_calendar . hide ( ) ;
this . clndr_calendar . hide ( ) ;
this . clndr_calendar . on ( 'click' , function ( event ) {
event . stopPropagation ( ) ;
Mirrors/php - php - Gitea: Git with a cup of tea
This website works better with JavaScript.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
<?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE package SYSTEM "../pear/package.dtd"> <package > <name > SQLite</name> <summary > SQLite database bindings</summary> <maintainers > <maintainer > <user > wez</user> <name > Wez Furlong</name> <email > wez@php.net</email> <role > lead</role> </maintainer> <maintainer > <user > tal</user> <name > Tal Peer</name> <email > tal@php.net</email> <role > developer</role> </maintainer> <maintainer > <user > helly</user> <name > Marcus B�rger</name> <email > helly@php.net</email> <role > lead</role> </maintainer> <maintainer > <user > iliaa</user> <name > Ilia Alshanetsky</name> <email > ilia@php.net</email> <role > developer</role> </maintainer> </maintainers> <description > SQLite is a C library that implements an embeddable SQL database engine.Programs that link with the SQLite library can have SQL database accesswithout running a separate RDBMS process.This extension allows you to access SQLite databases from within PHP.
Windows binary available from:http://snaps.php.net/win32/PECL_STABLE/php_sqlite.dll </description> <license > PHP</license> <release > <state > stable</state> <version > 2.0-dev</version> <date > TBA</date> <notes > Added: OO API (Marcus). </notes> <filelist > <file role= "src" name= "config.m4" /> <file role= "src" name= "config.w32" /> <file role= "src" name= "sqlite.c" /> <file role= "src" name= "sqlite.dsp" /> <file role= "src" name= "php_sqlite.h" /> <file role= "src" name= "php_sqlite.def" /> <file role= "doc" name= "CREDITS" /> <file role= "doc" name= "README" /> <file role= "doc" name= "TODO" /> <file role= "doc" name= "sqlite.php" /> <file role= "test" name= "tests/sqlite_001.phpt" /> <file role= "test" name= "tests/sqlite_002.phpt" /> <file role= "test" name= "tests/sqlite_003.phpt" /> <file role= "test" name= "tests/sqlite_004.phpt" /> <file role= "test" name= "tests/sqlite_005.phpt" /> <file role= "test" name= "tests/sqlite_006.phpt" /> <file role= "test" name= "tests/sqlite_007.phpt" /> <file role= "test" name= "tests/sqlite_008.phpt" /> <file role= "test" name= "tests/sqlite_009.phpt" /> <file role= "test" name= "tests/sqlite_010.phpt" /> <file role= "test" name= "tests/sqlite_011.phpt" /> <file role= "test" name= "tests/sqlite_012.phpt" /> <file role= "test" name= "tests/sqlite_013.phpt" /> <file role= "test" name= "tests/sqlite_014.phpt" /> <file role= "test" name= "tests/sqlite_015.phpt" /> <file role= "test" name= "tests/sqlite_016.phpt" /> <file role= "test" name= "tests/sqlite_017.phpt" /> <file role= "test" name= "tests/blankdb.inc" />
<dir name= "libsqlite" > <file role= "doc" name= "README" /> <file role= "src" name= "VERSION" />
<dir name= "src" > <file role= "src" name= "attach.c" /> <file role= "src" name= "auth.c" /> <file role= "src" name= "btree.c" /> <file role= "src" name= "btree_rb.c" /> <file role= "src" name= "build.c" /> <file role= "src" name= "copy.c" /> <file role= "src" name= "delete.c" /> <file role= "src" name= "encode.c" /> <file role= "src" name= "expr.c" /> <file role= "src" name= "func.c" /> <file role= "src" name= "hash.c" /> <file role= "src" name= "insert.c" /> <file role= "src" name= "main.c" /> <file role= "src" name= "opcodes.c" /> <file role= "src" name= "os.c" /> <file role= "src" name= "pager.c" /> <file role= "src" name= "parse.c" /> <file role= "src" name= "parse.y" /> <file role= "src" name= "pragma.c" /> <file role= "src" name= "printf.c" /> <file role= "src" name= "random.c" /> <file role= "src" name= "select.c" /> <file role= "src" name= "table.c" /> <file role= "src" name= "tokenize.c" /> <file role= "src" name= "trigger.c" /> <file role= "src" name= "update.c" /> <file role= "src" name= "util.c" /> <file role= "src" name= "vacuum.c" /> <file role= "src" name= "vdbe.c" /> <file role= "src" name= "where.c" /> <file role= "src" name= "btree.h" /> <file role= "src" name= "hash.h" /> <file role= "src" name= "opcodes.h" /> <file role= "src" name= "os.h" /> <file role= "src" name= "pager.h" /> <file role= "src" name= "parse.h" /> <file role= "src" name= "sqlite_config.w32.h" /> <file role= "src" name= "sqlite.h.in" /> <file role= "src" name= "sqliteInt.h" /> <file role= "src" name= "sqlite.w32.h" /> <file role= "src" name= "vdbe.h" /> </dir> </dir> </filelist> <deps > <dep type= "php" rel= "ge" version= "5" /> </deps> </release> </package> <!--
vim:et:ts=1:sw=1-->