view release on metacpan or search on metacpan
lib/HTML/Calendar/Monthly.pm view on Meta::CPAN
package HTML::Calendar::Monthly;
# Monthly.pm -- A very simple HTML calendar
# RCS Info        : $Id: Monthly.pm,v 1.4 2009/06/25 09:18:25 jv Exp $
# Author          : Johan Vromans
# Created On      : Thu Apr 30 22:13:00 2009
# Last Modified By: Johan Vromans
# Last Modified On: Thu Jun 25 11:18:16 2009
lib/HTML/Calendar/Monthly.pm view on Meta::CPAN
our $VERSION = "0.03";
=head1 NAME
HTML::Calendar::Monthly - A very simple HTML calendar
=head1 SYNOPSIS
  use HTML::Calendar::Monthly;
lib/HTML/Calendar/Monthly.pm view on Meta::CPAN
  # Add a link for a day.
  $cal->add_link( $day, $link );
  # Get HTML representation.
  my $html = $cal->calendar_month;
=head1 DESCRIPTION
This is a very simple module which will make an HTML representation of
a given month. You can add links to individual days.
lib/HTML/Calendar/Monthly.pm view on Meta::CPAN
=head2 year
  my $year = $cal->year;
This will return the four-digit year of the calendar
=cut
sub month      { $_[0]->{month}            } # month in numerical format
sub month_name { $months[$_[0]->{month}-1 ]} # month name
lib/HTML/Calendar/Monthly.pm view on Meta::CPAN
	    . $ref->{date}->day
	      . "</td>";
    }
}
=head2 calendar_month
  my $html = $cal->calendar_month;
This will return an html string of the calendar month.
=cut
sub calendar_month {
    my $self = shift;
    my @seq  = $self->_the_month;
    my $cal  = "<table class='hc_month'>\n"
               . "  <tr>\n"
               . join("\n", map { "    <th>$_</th>" } @days )
view release on metacpan or search on metacpan
HTML/Calendar/Simple.pm view on Meta::CPAN
=pod
=head1 NAME
HTML::Calendar::Simple - A simple html calendar
=head1 SYNOPSIS
  use HTML::Calendar::Simple;
HTML/Calendar/Simple.pm view on Meta::CPAN
                     'link'     => [$link, $tag],
  });
  print $cal;
  
  print $cal->calendar_month;
                  or
  print $cal->calendar_month({border => 0}); #this allows you to change the border of the table ( default is set to 1 )
                                                                          which shows the border with padding.
  my $html = HTML::Calendar::Simple->calendar_year;
     $html = HTML::Calendar::Simple->calendar_year({ 'year' => $year });
     $html = HTML::Calendar::Simple->calendar_year(
               { 'pin_up' => $where_to_find_the_picture,
                 'year'   => $year, 
                 $month   => { $day1 => $link1,
                               $day2 => $link2, }
               });
HTML/Calendar/Simple.pm view on Meta::CPAN
=head2 year
  my $year = $cal->year;
This will return the four-digit year of the calendar
=cut
sub month      { $_[0]->{month}          } # month in numerical format
sub year       { $_[0]->{year}           } # year in YYYY form
HTML/Calendar/Simple.pm view on Meta::CPAN
                     $type2     => $info2,
                     'link'     => [$link, $tag],
        });
  }
  
  print $cal->calendar_month();
 
=cut
HTML/Calendar/Simple.pm view on Meta::CPAN
    $day_ref->{$_} = $info{$_} foreach keys %info;
    last;
  }
}
# Glerg. Make each cell in the calendar table a table of its own. And each row
# of this table will contain a little snippet of information.
sub _row_elem {
  my $self = shift;
  my $ref  = shift or return $self->_spacer;
HTML/Calendar/Simple.pm view on Meta::CPAN
=head2 pin_up
  $cal->pin_up(a_picture_with_location);
This will add a picture above the calendar month, just like the 
calendar I have hanging up in my kitchen, (It is a cat calendar, if
you are interested, as my second son loves cats. As do I!)
This could be used to have a mechanic's garage Pirelli-style pr0n
calendar, but that would be your call. Mine would be something including
a Triumph Daytona 955i. Mmmm, nice.
=cut
sub pin_up {
HTML/Calendar/Simple.pm view on Meta::CPAN
sub picture {
  my $self = shift;
  return exists $self->{picture} ? $self->{picture} : 0;
}
=head2 calendar_month
  my $html = $cal->calendar_month;
This will return an html string of the calendar month in question.
=head2 html
  my $html = $cal->html;
This will return an html string of the calendar month in question.
THIS CALL HAS BEEN DEPRECATED.
=cut
sub html { $_[0]->calendar_month }
sub calendar_month {
  my ($self, $alt_args) = @_;
  my $border = (defined $alt_args && ref $alt_args eq 'HASH' && exists $alt_args->{border}) ? $alt_args->{border} : 1;
  my @seq  = $self->_the_month;
  my $q    = $self->_cgi;
  my $mnth = $q->h3($months{$self->month} . " " . $self->year);
HTML/Calendar/Simple.pm view on Meta::CPAN
       . $q->Tr($q->td($cal)) . $q->end_table;
  $cal = $self->_add_pic($cal) if $self->picture;
  return $cal;
}
=head2 calendar_year
  
  my $html = HTML::Calendar::Simple->calendar_year;
     $html = HTML::Calendar::Simple->calendar_year({ 'year' => $year });
     $html = HTML::Calendar::Simple->calendar_year(
               { 'pin_up' => $where_to_find_the_picture,
                 'year'   => $year, 
                 $month   => { $day1 => $link1,
                               $day2 => $link2, }
               });
HTML/Calendar/Simple.pm view on Meta::CPAN
    push @year, $cal;
  }
  return @year;
}
sub calendar_year {
  my ($class, $ref) = @_;
  my $year = $ref->{year};
  my $when = defined $year 
           ? Date::Simple->new($year, 1, 1)
           : Date::Simple->new;
HTML/Calendar/Simple.pm view on Meta::CPAN
  $year = $when->year;
  my @year = $class->_generate_months($year, $ref);
  my $year_string;
  my $q = CGI->new;
  while (@year) {
    my @qrtr = map { $_->calendar_month } splice @year, 0, 3;
    s/$year//g for @qrtr;
    $year_string .= $q->start_table . $q->Tr($q->td({valign => 'top'}, [@qrtr])) 
                 .  $q->end_table   . $q->br;
  }
  my $pic = defined $ref->{'pin_up'} ? $ref->{'pin_up'} : "";
HTML/Calendar/Simple.pm view on Meta::CPAN
=head2 TODO
Oh....lots of things.
  o Rip out the CGI stuff and put all the HTML in a template, so the user
    can decide on the format of the calendar themselves.
  o Allow for the setting of borders etc like HTML::CalendarMonthSimple.
  o Format the output better if there is info in a daily cell.
  o Perhaps overload '.' so you could add two calendars. Not sure.
  o Check the links passed in are of format http://www.stray-toaster.co.uk
    or something.
  o Get rid of the days and months hashes and replace with something better.
  o And if all that happens, it may as well be HTML::CalendarMonthSimple!!
  o Make HTML::Calendar::Day, HTML::Calendar::Month and HTML::Calendar::Year
view release on metacpan or search on metacpan
lib/HTML/CalendarMonth.pm view on Meta::CPAN
use constant CLASS_HET      => 'HTML::ElementTable';
use constant CLASS_DATETOOL => 'HTML::CalendarMonth::DateTool';
use constant CLASS_LOCALE   => 'HTML::CalendarMonth::Locale';
sub _gencal {
  # generate internal calendar representation
  my $self = shift;
  # new calendar...clobber day-specific settings
  my $itoc = $self->_itoch({});
  my $ctoi = $self->_ctoih({});
  # figure out dow of 1st day of the month as well as last day of the
  # month (uses date calculator backends)
lib/HTML/CalendarMonth.pm view on Meta::CPAN
  wantarray ? ($self->headers, $self->days)
            : [$self->headers, $self->days];
}
sub last_col {
  # what's the max col of the calendar?
  my $self = shift;
  $self->head_week ? LDC + 1 : LDC;
}
sub last_day_col { LDC }
sub last_row {
  # last row of the calendar
  my $self = shift;
  return ($self->coords_of($self->lastday))[0];
}
*last_week_row = \&last_row;
lib/HTML/CalendarMonth.pm view on Meta::CPAN
  defined $item1 && defined $item2 or croak "Two items required";
  $self->box($self->coords_of($item1), $self->coords_of($item2));
}
sub all {
  # return a glob of all calendar cells, including empty cells.
  my $self = shift;
  $self->box( 0,0 => $self->last_row, $self->last_col );
}
sub alldays {
lib/HTML/CalendarMonth.pm view on Meta::CPAN
__END__
=head1 NAME
HTML::CalendarMonth - Generate and manipulate HTML calendar months
=head1 SYNOPSIS
 use HTML::CalendarMonth;
lib/HTML/CalendarMonth.pm view on Meta::CPAN
 );
 print $c2->as_HTML;
 # HTML-Tree integration
 my $tree = HTML::TreeBuilder->parse_file('cal.html');
 $tree->find_by_attribute(class => 'hcm-calendar')->replace_with($c);
 print $tree->as_HTML;
 # clean up if you're not done, HTML::Element structures must be
 # manually destroyed
 $c->delete; $c2->delete;
lib/HTML/CalendarMonth.pm view on Meta::CPAN
HTML::CalendarMonth is a subclass of HTML::ElementTable. See
L<HTML::ElementTable(3)> for how that class works, for it affects this
module on many levels. Like HTML::ElementTable, HTML::CalendarMonth is
an enhanced HTML::Element with methods added to facilitate the
manipulation of the calendar table elements as a whole.
The primary interaction with HTML::CalendarMonth is through I<items>
rather than cell coordinates like HTML::ElementTable uses. An I<item> is
merely a string that represents the content of the cell of interest
within the calendar. For instance, the element representing the 14th day
of the month would be returned by C<$c-E<gt>item(14)>. Similarly, the
element representing the header for Monday would be returned by C<$c-
E<gt>item('Mo')>. If the year happened to by 2010, then C<$c-
E<gt>item(2010)> would return the cell representing the year. Since
years and particular months change frequently, it is probably more
useful to take advantage of the C<month()> and C<year()> methods, which
return their respective values. The following is therefore the same as
explicitely referencing the year: C<$c-E<gt>item($c- E<gt>year())>.
Multiple cells of the calendar can be manipulated as if they were a
single element. For instance, C<$c-E<gt>item(15)-E<gt>attr(class =E<gt>
'fancyday')> would alter the class of the cell representing the 15th. By
the same token, C<$c-E<gt>item(15, 16, 17,
23)-E<gt>attr(class =E<gt> 'fancyday')> would do the same thing for all
cells containing the days passed to the C<item()> method.
Underneath, the calendar is still nothing more than a table structure,
the same as provided by the HTML::ElementTable class. In addition to the
I<item> based access methods above, calendar cells can still be accessed
using row and column grid coordinates using the C<cell()> method
provided by the table class. All coordinate-based methods in the table
class are accessible to the calendar class.
The module includes support for week-of-the-year numbering, arbitrary
1st day of the week definitions, and locale support.
Dates that are beyond the range of the built-in time functions of perl
lib/HTML/CalendarMonth.pm view on Meta::CPAN
=over
=item new()
With no arguments, the constructor will return a calendar object
representing the current month with a default appearance. The initial
configuration of the calendar is controlled by special attributes. Non-
calendar related attributes are passed along to HTML::ElementTable. Any
non-table related attributes left after that are passed to HTML::Element
while constructing the E<lt>tableE<gt> tag. See L<HTML::ElementTable> if
you are interested in attributes that can be passed along to that class.
Special Attributes for HTML::CalendarMonth:
lib/HTML/CalendarMonth.pm view on Meta::CPAN
Specifies whether to display the week-of-year numbering. Default 0.
=item locale
Specifies the id of the locale in which to render the calendar. Default
is 'en-US'. By default, this will also control determine which day is
considered to be the first day of the week. See
L<HTML::CalendarMonth::Locale> for more information. If for some reason
you prefer to use different labels than those provided by C<locale>, see
the C<alias> attribute below. NOTE: DateTime::Locale versions 0.92 and
lib/HTML/CalendarMonth.pm view on Meta::CPAN
=item alias
Takes a hash reference mapping labels provided by C<locale> to any
custom label you prefer. Lookups, such as C<day('Sun')>, will still use
the locale string, but when the calendar is rendered the aliased value
will appear.
=item week_begin
Specify first day of the week, which can be 1..7, starting with Sunday.
lib/HTML/CalendarMonth.pm view on Meta::CPAN
=item enable_css
Set some handy CSS class attributes on elements, enabled by default.
Currently the classes are:
  hcm-table       Set on the E<lt>tableE<gt> tag of the calendar
  hcm-day-head    Set on the day-of-week E<lt>trE<gt> or E<lt>tdE<gt> tags
  hcm-year-head   Set on the E<lt>tdE<gt> tag for the year
  hcm-month-head  Set on the E<lt>tdE<gt> tag for the month
  hcm-week-head   Set on the E<lt>tdE<gt> tags for the week-of-year
lib/HTML/CalendarMonth.pm view on Meta::CPAN
=item today
Specify the value for 'today' if different from the local time as
reported by the system clock (the default). If specified as two or less
digits, it is assumed to be one of the days of the month in the current
calendar. If more than two digits, it is assumed to be a epoch time in
seconds. Otherwise it must be given as a string of the form 'YYYY-mm-
dd'. Note that the default value as determined by the system clock uses
localtime rather than gmtime.
=item historic
lib/HTML/CalendarMonth.pm view on Meta::CPAN
This option is ignored for dates that do not exceed the range of the built-
in perl time functions. For dates that B<do> exceed these ranges, this
option specifies the default calculation method. When set, if the 'ncal'
or 'cal' command is available on your system, that will be used rather
than the Date::Calc or Date::Manip modules. This can be an issue since
the date modules blindly extrapolate the Gregorian calendar, whereas
ncal/cal will revert to the Julian calendar during September 1752. If
either ncal or cal are not available on your system, this attribute is
meaningless. Defaults to 1.
=back
lib/HTML/CalendarMonth.pm view on Meta::CPAN
Returns a list of all headers (month, year, dayheaders)
=item items()
Returns a list of all item symbols (day number, header values) in
the calendar.
=item last_col()
Returns the index of the last column of the calendar (note that this
could be the week-of-year column if head_week is enabled).
=item last_day_col()
Returns the index of the last column of the calendar containing days of
the month (same as last_col() unless week-of-year is enabled).
=item first_week_row()
Returns the index of the first row of the calendar containing day items
(ie, the first week).
=item last_row()
Returns the index of the last row of the calendar.
=item today()
Returns the day of month for 'today', if present in the current
calendar.
=item past_days()
Returns a list of days prior to 'today'. If 'today' is in a future
month, all days are returned. If 'today' is in a past month, no days
lib/HTML/CalendarMonth.pm view on Meta::CPAN
=back
=head2 Glob Methods
Glob methods return references that are functionally equivalent to an
individual calendar cell. Mostly, they provide item based analogues to
the glob methods provided in HTML::ElementTable. In methods dealing with
rows, columns, and boxes, the globs include empty calendar cells (which
would otherwise need to be accessed through native HTML::ElementTable
methods). The row and column numbers returned by the item methods above
are compatible with the grid based methods in HTML::ElementTable.
For details on how these globs work, check out L<HTML::ElementTable> and
lib/HTML/CalendarMonth.pm view on Meta::CPAN
Returns all non header cells, including empty cells.
=item all()
Returns all cells in the calendar, including empty cells.
=back
=head2 Transformation Methods
lib/HTML/CalendarMonth.pm view on Meta::CPAN
that day (Su..Sa).
=item daytime(day)
Returns the number in seconds since the epoch for a given day. The day
must be present in the current calendar.
=back
=head2 Other Methods
view release on metacpan or search on metacpan
CalendarMonthDB.pm view on Meta::CPAN
# HTML::CalendarMonthDB.pm
# Generate persistant or non-persistant HTML calendars. 
# An alternative to HTML::CalendarMonth and HTML::CalendarMonthSimple
# Herein, the symbol $self is used to refer to the object that's being passed around.
package HTML::CalendarMonthDB;
my $VERSION     = "1.0";
CalendarMonthDB.pm view on Meta::CPAN
   if ($self->{'dbname'}) {
	use DBI;
   	# det defaults	
   	($self->{'dbuser'}) || ($self->{'dbuser'} = 'nobody');
	($self->{'dbpass'}) || ($self->{'dbpass'} = '');
  	($self->{'dbcalendar'}) || ($self->{'dbcalendar'} = '');
        ($self->{'dbclient'}) || ($self->{'dbclient'} = '');
	($self->{'dbhost'}) || ($self->{'dbhost'} = '');
   }
   # Set the default calendar header
   $self->{'header'} = sprintf("<center><font size=+2>%s %d</font></center>",
                               Date::Calc::Month_to_Text($self->{'month'}),$self->{'year'});
   # Get the monthname now so monthname() is fast and efficient
   $self->{'monthname'} = Date::Calc::Month_to_Text($self->{'month'});
CalendarMonthDB.pm view on Meta::CPAN
        $content = ' '; 
	}
  	$html .= "<tr><td width=\"2%\"><b>$thisday</b>";
	# Add admin links if specified in function call 
        if ($addurl) {
	        my $calid = $self->calendarid();
       		my $mdate = $self->month().'_'.$thisday.'_'.$self->year();
                $html .= "<br><font size=\"1\"><a href=\"#\" onclick=popup(\"$addurl?date=$mdate&calid=$calid&view=list\")>[Add]</a></font>";
                }
        if ($editurl) {
        	my $calid = $self->calendarid();
        	my $mdate = $self->month().'_'.$thisday.'_'.$self->year();
                $html .= "<br><font size=\"1\"><a href=\"#\" onclick=popup(\"$editurl?date=$mdate&calid=$calid&view=list\")>[Edit]</a></font>";
	}
	$html .= "</td><td bgcolor=\"$thisbgcolor\" bordercolor=\"$thisbordercolor\" align=\"$cellalignment\"><font color=\"$thiscontentcolor\">$content</font></td></tr>\n"; 
  	} 
CalendarMonthDB.pm view on Meta::CPAN
            if ($self->showdatenumbers()) { 
                $thiscontent = "<p><b>$thisday</b>";
	
		# Add admin links if specified in function call	
		if ($addurl) {
			my $calid = $self->calendarid();
                        my $mdate = $self->month().'_'.$thisday.'_'.$self->year();
                        $thiscontent .= " <font size=\"1\"><a href=\"#\" onclick=popup(\"$addurl?date=$mdate&calid=$calid&view=standard\")>[Add]</a></font>";
                }
		if ($editurl) {
                        my $calid = $self->calendarid();
                        my $mdate = $self->month().'_'.$thisday.'_'.$self->year();                        
			$thiscontent .= " <font size=\"1\"><a href=\"#\" onclick=popup(\"$editurl?date=$mdate&calid=$calid&view=standard\")>[Edit]</a></font>";
                }
		$thiscontent .= "</p>\n";
            }
CalendarMonthDB.pm view on Meta::CPAN
sub getdbevent {
   my $self = shift;
   my $date = shift;
   my $month = $self->month();
   my $year = $self->year();	
   my $calendarid = $self->calendarid();
   my $dbname = $self->dbname();
   my $dbuser = $self->dbuser();
   my $dbpass = $self->dbpass();
   my $dbhost = $self->dbhost();
   $dbhost = ":host=$dbhost" if (!($dbhost eq ''));   
   my $dbclient = $self->dbclient();
   my %content;
   my $dbh = DBI->connect("dbi:Pg:dbname=$dbname$dbhost", $dbuser, $dbpass) || return;
   my($getContent)=$dbh->prepare("select eventid, eventday, eventmonth, eventyear, eventtime, eventname, eventdesc,eventlink from event where eventday= ? and eventmonth=? and eventyear=? and calendarid=? order by eventtime, eventid");
   $getContent->execute($date,$month,$year,$calendarid) || return $dbh->errstr();
   while (my($eventid,$eventday,$eventmonth,$eventyear,$eventtime,$eventname,$eventdesc,$eventlink) = $getContent->fetchrow_array()) {
	$content{$eventid}{'eventtime'} = $eventtime if $eventtime;
	$content{$eventid}{'eventday'} = $eventday if $eventday;
	$content{$eventid}{'eventmonth'} = $eventmonth if $eventmonth;
	$content{$eventid}{'eventyear'} = $eventyear if $eventyear;
CalendarMonthDB.pm view on Meta::CPAN
   $dbh->disconnect();
   return %content;
}
sub getdbcalendar {
   my $self = shift;
   my $dbname = $self->dbname();
   my $dbuser = $self->dbuser();
   my $dbpass = $self->dbpass();
   my $dbhost = $self->dbhost();
   $dbhost = ":host=$dbhost" if (!($dbhost eq ''));
   my $calendarid = $self->calendarid();
   my $dbclient = $self->dbclient();
   my $dbh = DBI->connect("dbi:Pg:dbname=$dbname$dbhost", $dbuser, $dbpass) || return;
   my($getCalendarInfo)=$dbh->prepare("select border,width,bgcolor,weekdaycolor,weekendcolor,todaycolor,bordercolor,weekdaybordercolor,weekendbordercolor,todaybordercolor,contentcolor,weekdaycontentcolor,weekendcontentcolor,todaycontentcolor,headerco...
   $getCalendarInfo->execute($calendarid) ||print $dbh->errstr();
   # load calendar formatting data from database and set values.
   while (my($border,$width,$bgcolor,$weekdaycolor,$weekendcolor,$todaycolor, $bordercolor,$weekdaybordercolor,$weekendbordercolor,$todaybordercolor,$contentcolor,$weekdaycontentcolor,$weekendcontentcolor,$todaycontentcolor,$headercolor,$weekdayheade...
	$self->border($border) if $border;
	$self->width($width) if $width;
	$self->bgcolor($bgcolor) if $bgcolor;
	$self->weekdaycolor($weekdaycolor) if $weekdaycolor;
CalendarMonthDB.pm view on Meta::CPAN
}  
   $dbh->disconnect();
}
sub editdbcalendar {
   my $self = shift;
   my $self1 = {}; %$self1 = @_; # Load ourselves up from the args
   my $dbname = $self->dbname();
   my $dbuser = $self->dbuser();
   my $dbpass = $self->dbpass();
   my $dbhost = $self->dbhost();
   $dbhost = ":host=$dbhost" if (!($dbhost eq ''));
   my $calendarid = $self->calendarid();
   if ($self1->{'border'} && !($self1->{'border'} =~ /\d+/)) {
	$self1->{'border'} =1;
   }
   my $query = "update calendar set calendarid = ?";
   $query .= ", border = '".$self1->{'border'}."'" if $self1->{'border'}; 
   $query .= ", width = '".$self1->{'width'}."'" if $self1->{'width'};    $query .= ", bgcolor = '".$self1->{'bgcolor'}."'" if $self1->{'bgcolor'};
   $query .= ", weekdaycolor = '".$self1->{'weekdaycolor'}."'" if $self1->{'weekdaycolor'};
   $query .= ", weekendcolor = '".$self1->{'weekendcolor'}."'" if $self1->{'weekendcolor'};
   $query .= ", todaycolor = '".$self1->{'todaycolor'}."'" if $self1->{'todaycolor'};
CalendarMonthDB.pm view on Meta::CPAN
   $query .= ", headercolor = '".$self1->{'headercolor'}."'" if $self1->{'headercolor'};
   $query .= ", weekdayheadercolor = '".$self1->{'weekdayheadercolor'}."'" if $self1->{'weekdayheadercolor'};
   $query .= ", weekendheadercolor = '".$self1->{'weekendheadercolor'}."'" if $self1->{'weekendheadercolor'};
   $query .= ", header = '".$self1->{'header'}."'" if $self1->{'header'};
   $query .= ", cellalignment = '".$self1->{'cellalignment'}."'" if $self1->{'cellalignment'};
   $query .= " where calendarID = ?";
   my $dbh = DBI->connect("dbi:Pg:dbname=$dbname$dbhost", $dbuser, $dbpass) || return;
   my $updateCal = $dbh->prepare($query);
   $updateCal->execute($calendarid, $calendarid) ||print $dbh->errstr();
   $dbh->disconnect();
    
   return(1);
}
CalendarMonthDB.pm view on Meta::CPAN
   my $dbname = $self->dbname();
   my $dbuser = $self->dbuser();
   my $dbpass = $self->dbpass();
   my $dbhost = $self->dbhost();
   $dbhost = ":host=$dbhost" if (!($dbhost eq ''));   
   my $calendarid = $self->calendarid();
   my $dbclient = $self->dbclient();
   my $month = $self->month();
   my $year = $self->year(); 
   my $jsDescs='';
   my $dbh = DBI->connect("dbi:Pg:dbname=$dbname$dbhost", $dbuser, $dbpass) || return;
   my($getContent)=$dbh->prepare("select eventID, eventTime, eventDay, eventName, eventDesc, eventLink from event where calendarID = ? and eventMonth = ? and eventYear = ? order by eventDay, eventTime");
 
   $getContent->execute($calendarid, $month, $year) ||print $dbh->errstr();
   while (my($eventID, $eventTime, $eventDay, $eventName, $eventDesc, $eventLink) = $getContent->fetchrow_array()) {
	$eventLink = '#' if !$eventLink;	
	$self->{'content'}->{$eventDay} .= "$eventTime:" if $eventTime;
  	$self->{'content'}->{$eventDay} .= "<a href='$eventLink' onMouseOver='popLayer($eventID)' onMouseOut='hideLayer(-50000)'>$eventName</a><br><br>"; 
CalendarMonthDB.pm view on Meta::CPAN
   my $dbname = $self->dbname();
   my $dbuser = $self->dbuser();
   my $dbpass = $self->dbpass();
   my $dbhost = $self->dbhost();
   $dbhost = ":host=$dbhost" if (!($dbhost eq '')); 
   my $dbcalendar = $self->dbcalendar();
   my $month = $self->month();
   my $year = $self->year();
   my $calendarID=$self->calendarid();
   my $date = $self1->{'date'};
   my $eventname = $self1->{'eventname'};
   my $eventdesc = $self1->{'eventdesc'};
   $eventdesc =~ s/\s+/ /g;
   my $eventlink = $self1->{'eventlink'};
   my $eventtime = $self1->{'eventtime'};
   my $dbh = DBI->connect("dbi:Pg:dbname=$dbname$dbhost", $dbuser, $dbpass) || return;
   my $addContent= $dbh->prepare("insert into event (calendarid, eventday, eventmonth, eventyear, eventname, eventdesc, eventlink, eventtime) values(?, ?, ?, ?, ?, ?, ?, ?)");
   $addContent->execute($calendarID, $date, $month, $year, $eventname, $eventdesc, $eventlink, $eventtime)||print $dbh->errstr();
   $dbh->disconnect();
   return(1);
}
sub deldbevent {
CalendarMonthDB.pm view on Meta::CPAN
   $editEvent->execute($eventid, $eventid) ||print $dbh->errstr();
   $dbh->disconnect();
   return(1);
}
sub calendarid {
my $self = shift;
my $dbname = $self->dbname();
my $dbuser = $self->dbuser();
my $dbpass = $self->dbpass();
my $dbhost = $self->dbhost();
$dbhost = ":host=$dbhost" if (!($dbhost eq ''));
my $dbcalendar = $self->dbcalendar();
my $dbclient = $self->dbclient();
my $dbh = DBI->connect("dbi:Pg:dbname=$dbname$dbhost", $dbuser, $dbpass) || return;
  
my($getCalendarID)=$dbh->prepare("select calendar.calendarID from calendar, client where calendar.name= ? and calendar.clientID=client.clientID and client.clientName= ?");
   
$getCalendarID->execute($dbcalendar, $dbclient) ||print $dbh->errstr();
my $calendarID=$getCalendarID->fetchrow_array();
   
$getCalendarID->finish();
$dbh->disconnect();
$self->{'calendarid'} = $calendarID;
return $self->{'calendarid'};
}
sub border {
   my $self = shift;
   my $newvalue = shift;
CalendarMonthDB.pm view on Meta::CPAN
sub dbpass {
   my $self = shift;
   return $self->{'dbpass'};
}
sub dbcalendar {
   my $self = shift;
   return $self->{'dbcalendar'};
}
sub dbclient {
   my $self = shift;
   return $self->{'dbclient'};
CalendarMonthDB.pm view on Meta::CPAN
    HTML::CalendarMonthDB - Perl Module for Generating Persistant HTML
    Calendars
=head1 SYNOPSIS
       use HTML::CalendarMonthDB;
       $cal = new HTML::CalendarMonthDB('year'=>2001,'month'=>2, 'dbname'=>'test', 'dbuser'=>'postgres', 'dbpass'=>'', 'dbcalendar'=>'testcal', 'dbclient'=>'testClient');
       $cal->width('50%'); # non-persistant
       $cal->border(10);   # non-persistant
       $cal->header('Text at the top of the Grid'); # non-persistant
       $cal->bgcolor('pink');
       $cal->editdbcalendar('width'=>'50%', 'border'=>10, 'header'=>'Text at the top of the Grid', 'bgcolor'=>'pink'); # persistant, stored in DB.
       $cal->setcontent(14,"Don't forget to buy flowers"); # non-persistant
       $cal->addcontent(13,"Guess what's tomorrow?"); # non-persistant
       $cal->adddbevent('date'=>'14', 'eventname'=>'Don't forget to buy flowers'); # persistant, stored in db
       $cal->adddbevent('date'=>'13', 'eventname'=>'Guess what's tomorrow?', 'eventdesc'=>'A big surprise is happening tommorrow.  Click here to see more!!', 'eventlink'=>'http://www.surprise.com'); # persistant, stored in db
       print $cal->as_HTML; # print standard 7 column calendar
       print $cal->as_HTML_list; # print HTML calendar as list
=head1 DESCRIPTION
    HTML::CalendarMonthDB is a Perl module for generating, manipulating, and
    printing a HTML calendar grid for a specified month. It is intended as a
    faster and easier-to-use alternative to HTML::CalendarMonth. It is based
    on HTML::CalendarMonthSimple, but can store persistant data into a
    database, as well as adding features like per-event links, descriptions,
    and times.
CalendarMonthDB.pm view on Meta::CPAN
    CPAN.
=head1 INTERFACE METHODS
=head2 new(ARGUMENTS)
    Naturally, new() returns a newly constructed calendar object. Recognized
    arguments include 'year' and 'month', to specify which month's calendar
    will be used. If either is omitted, the current value is used. An
    important note is that the month and the year are NOT the standard C or
    Perl -- use a month in the range 1-12 and a real year, e.g. 2001. If
    this is to be a persistant calendar (you wish to store info in a
    database), there are other arguments:
    * 'dbname' (name of database to use, required if you wish to use a
    database)
    * 'dbuser' (database user, default 'nobody')
    * 'dbpass' (database user password, default '')
    * 'dbcalendar' (database calendar name, default '')
    * 'dbclient' (database calendar client name, default '')
    * 'dbhost' (database host name, default '')
       # Examples:
       # Create a calendar for this month.
       $cal = new HTML::CalendarMonthSimple(); # not persistant
       # One for a specific month/year
       $cal = new HTML::CalendarMonthSimple('month'=>2,'year'=>2000); # not persistant
       # One for "the current month" in 1997
       $cal = new HTML::CalendarMonthSimple('year'=>1997); # not persistant
   
       # One for a specific month/year, to use database specified
       $cal = new HTML::CalendarMonthSimple('month'=>2,'year'=>2000,'dbname'=>'test','dbuser'=>postgres,'dbcalendar'=>'testcal','dbclient'=>'testClient');
=head2 deldbevent (EVENTID)
    Permanently deletes record from database associated with the event id
    passed in.
CalendarMonthDB.pm view on Meta::CPAN
    * 'eventtime' (event time, optional)
=head2 addevent(DATE,STRING)
=head2 getcontent(DATE)
    These methods are used to control the content of date cells within the
    calendar grid. The DATE argument may be a numeric date or it may be a
    string describing a certain occurrence of a weekday, e.g. "3MONDAY" to
    represent "the third Monday of the month being worked with", or it may
    be the plural of a weekday name, e.g. "wednesdays" to represent all
    occurrences of the given weekday. The weekdays are case-insensitive.
CalendarMonthDB.pm view on Meta::CPAN
       $cal->getcontent('Fridays');
=head2 as_HTML(ARGUMENTS)
=head2 as_HTML_list(ARGUMENTS)
    These methods return a string containing the HTML calendar for the
    month. as_HTML() returns a standard 7 column table, while as_HTML_list()
    returns a two-column list format calendar.
       # Examples:
       print $cal->as_HTML();
       print $cal->as_HTML_list('editurl'=>'editcal.cgi', 'addurl'=>'addcal.cgi');
    Two optional arguments may be passed, in order to ease the integration
    of adminitrative front-ends: 'editurl' (Will add a [edit] link in each
    day's cell to specified url like so-
    http://editurl?date=month_day_year&calid=calendarid.) 'addurl' (Will add
    a [add] link in each day's cell to specified url like so-
    http://addurl?date=month_day_year&calid=calendarid.)
=head2 year()
=head2 month()
=head2 monthname()
    These methods simply return the year/month of the calendar. monthname()
    returns the text name of the month, e.g. "December".
=head2 getdbcontent()
    Loads calendar event content from database.
=head2 getdbcalendar()
    Loads calendar formatting data from database.
=head2 editdbcalendar(ARGUMENTS)
    Edits calendar formatting attributes stored in database. Takes any or
    all of the following arguments:
    * 'border' (size of calendar border, integer)
    * 'width' (width of calendar, should be in pixels or %)
    * 'bgcolor' (background color of calendar)
    * 'weekdaycolor' (background color of weekday cells)
    * 'weekendcolor' (background color of weekend cells)
    * 'todaycolor' (background color of today's cell)
    * 'bordercolor' (border color of calendar)
    * 'weekdaybordercolor' (border color of weekday cells)
    * 'weekendbordercolor' (border color of weekend cells)
    * 'todaybordercolor' (border color of today's cell)
    * 'contentcolor' (color of cell content)
    * 'weekdaycontentcolor' (color of weekday cell content)
CalendarMonthDB.pm view on Meta::CPAN
    Useful as a function to be used in admin tools.
=head2 border([INTEGER])
    This specifies the value of the border attribute to the <TABLE>
    declaration for the calendar. As such, this controls the thickness of
    the border around the calendar table. The default value is 5.
    If a value is not specified, the current value is returned. If a value
    is specified, the border value is changed and the new value is returned.
=head2 width([INTEGER][%])
    This sets the value of the width attribute to the <TABLE> declaration
    for the calendar. As such, this controls the horizintal width of the
    calendar.
    The width value can be either an integer (e.g. 600) or a percentage
    string (e.g. "80%"). Most web browsers take an integer to be the table's
    width in pixels and a percentage to be the table width relative to the
    screen's width. The default width is "100%".
CalendarMonthDB.pm view on Meta::CPAN
    The date numbers are shown in boldface, normal size font. If you want to
    change this, consider setting showdatenumbers() to 0 and using
    setcontent()/addcontent() instead.
=head2 showweekdayheaders([1 or 0])
    If showweekdayheaders() is set to 1 (the default) then calendars
    rendered via as_HTML() will display the names of the days of the week.
    If set to 0, the days' names will not be displayed.
    If no value is specified, the current value is returned.
CalendarMonthDB.pm view on Meta::CPAN
    By default, cells are aligned to the left.
=head2 header([STRING])
    By default, the current month and year are displayed at the top of the
    calendar grid. This is called the "header".
    The header() method allows you to set the header to whatever you like.
    If no new header is specified, the current header is returned.
    If the header is set to an empty string, then no header will be printed
CalendarMonthDB.pm view on Meta::CPAN
    The bgcolor defines the color of all cells. The weekdaycolor overrides
    the bgcolor for weekdays (Monday through Friday), the weekendcolor
    overrides the bgcolor for weekend days (Saturday and Sunday), and the
    todaycolor overrides the bgcolor for today's date. (Which may not mean a
    lot if you're looking at a calendar other than the current month.)
    The weekdayheadercolor overrides the bgcolor for the weekday headers
    that appear at the top of the calendar if showweekdayheaders() is true,
    and weekendheadercolor does the same thing for the weekend headers. The
    headercolor overrides the bgcolor for the month/year header at the top
    of the calendar.
    The colors of the cell borders may be set: bordercolor determines the
    color of the calendar grid's outside border, and is the default color of
    the inner border for individual cells. The inner bordercolor may be
    overridden for the various types of cells via weekdaybordercolor,
    weekendbordercolor, and todaybordercolor.
    Finally, the color of the cells' contents may be set with contentcolor,
CalendarMonthDB.pm view on Meta::CPAN
       $cal->weekendheadercolor('pink');       # Set the color of weekends' headers
       $cal->weekendcolor('palegreen');        # Override weekends' cell color
       $cal->weekendcontentcolor('blue');      # Override weekends' content color
       $cal->todaycolor('red');                # Override today's cell color
       $cal->todaycontentcolor('yellow');      # Override today's content color
       print $cal->as_HTML;                    # Print a really ugly calendar!
=head1 BUGS, TODO, CHANGES
    No known bugs, though contributions and improvements are welcome, this
    is currently a first run.
view release on metacpan or search on metacpan
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
# HTML::CalendarMonthSimple.pm
# Generate HTML calendars. An alternative to HTML::CalendarMonth
# Herein, the symbol $self is used to refer to the object that's being passed around.
package HTML::CalendarMonthSimple;
our $VERSION = "1.27";
use strict;
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
   $self->{'weekdays'} = [qw/Monday Tuesday Wednesday Thursday Friday/];
   $self->{'sunday'}   = "Sunday";
   $self->{'saturday'} = "Saturday";
   # Set the default calendar header
   $self->{'header'} = sprintf("<center><font size=\"+2\">%s %d</font></center>",
                               Date::Calc::Month_to_Text($self->{'month'}),$self->{'year'});
   # Initialize the (empty) cell content so the keys are representative of the month
   bless $self,$class;
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
=head1 DESCRIPTION
Note: This package is no longer being maintained by Gregor Mosheh <stigmata@blackangel.net>.  It is recommended that new development be built against L<HTML::CalendarMonth>.
HTML::CalendarMonthSimple is a Perl module for generating, manipulating, and printing a HTML calendar grid for a specified month. It is intended as a faster and easier-to-use alternative to HTML::CalendarMonth.
This module requires the Date::Calc module, which is available from CPAN if you don't already have it.
=head1 INTERFACE METHODS
=head2 new(ARGUMENTS)
Naturally, new() returns a newly constructed calendar object.
The optional constructor arguments 'year' and 'month' can specify which month's calendar will be used. If either is omitted, the current value (e.g. "today") is used. An important note is that the month and the year are NOT the standard C or Perl -- ...
The arguments 'today_year', 'today_month', and 'today_date' may also be specified, to specify what "today" is. If not specified, the system clock will be used. This is particularly useful when the todaycolor() et al methods are used, and/or if you're...
   # Examples:
   # Create a calendar for this month.
   $cal = new HTML::CalendarMonthSimple();
   # A calendar for a specific month/year
   $cal = new HTML::CalendarMonthSimple('month'=>2,'year'=>2000);
   # Pretend that today is June 10, 2000 and display the "current" calendar
   $cal = new HTML::CalendarMonthSimple('today_year'=>2000,'today_month'=>6,'today_date'=>10);
=head2 year
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
=head2 today_date
=head2 monthname
These methods simply return the year/month/date of the calendar, as specified in the constructor.
monthname() returns the text name of the month, e.g. "December".
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
  $cal->highlight(1,10,22);
=head2 getcontent(DATE)
These methods are used to control the content of date cells within the calendar grid. The DATE argument may be a numeric date or it may be a string describing a certain occurrence of a weekday, e.g. "3MONDAY" to represent "the third Monday of the mon...
Since plural weekdays (e.g. 'wednesdays') is not a single date, getcontent() will return the content only for the first occurrence of that day within a month.
   # Examples:
   # The cell for the 15th of the month will now say something.
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
This method returns a string containing the HTML table for the month.
   # Example:
   print $cal->as_HTML();
It's okay to continue modifying the calendar after calling as_HTML(). My guess is that you'd want to call as_HTML() again to print the further-modified calendar, but that's your business...
=head2 weekstartsonmonday([1|0])
By default, calendars are displayed with Sunday as the first day of the week (American style). Most of the world prefers for calendars to start the week on Monday. This method selects which type is used: 1 specifies that the week starts on Monday, 0 ...
   # Example:
   $cal->weekstartsonmonday(1); # switch over to weeks starting on Monday
   $cal->weekstartsonmonday(0); # switch back to the default, where weeks start on Sunday
   # Example:
   print "The week starts on " . ($cal->weekstartsonmonday() ? 'Sunday' : 'Monday') . "\n";
=head2 Days_in_Month
This function returns the number of days on the current calendar.
  foreach my $day (1 .. $cal->Days_in_Month) {
    $cal->setdatehref($day, &make_url($cal->year, $cal->month, $day));
  }
=head2 setdatehref(DATE,URL_STRING)
=head2 getdatehref(DATE)
These allow the date-number in a calendar cell to become a hyperlink to the specified URL. The DATE may be either a numeric date or any of the weekday formats described in setcontent(), et al. If plural weekdays (e.g. 'wednesdays') are used with getd...
   # Example:
   # The date number in the cell for the 15th of the month will be a link
   # then we change our mind and delete the link by assigning a null string
   $cal->setdatehref(15,"http://sourceforge.net/");
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
contentfontsize() sets the font size for the contents of the cell, overriding the browser's default. Can be expressed as an absolute (1 .. 6) or relative (-3 .. +3) size.
=head2 border([INTEGER])
This specifies the value of the border attribute to the <TABLE> declaration for the calendar. As such, this controls the thickness of the border around the calendar table. The default value is 5.
If a value is not specified, the current value is returned. If a value is specified, the border value is changed and the new value is returned.
=head2 cellpadding
=head2 cellspacing
=head2 width([INTEGER][%])
This sets the value of the width attribute to the <TABLE> declaration for the calendar. As such, this controls the horizontal width of the calendar.
The width value can be either an integer (e.g. 600) or a percentage string (e.g. "80%"). Most web browsers take an integer to be the table's width in pixels and a percentage to be the table width relative to the screen's width. The default width is "...
If a value is not specified, the current value is returned. If a value is specified, the border value is changed and the new value is returned.
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
=head2 showweekdayheaders([1 or 0])
=head2 weekdayheadersbig([1 or 0])
If showweekdayheaders() is set to 1 (the default) then calendars rendered via as_HTML() will display the names of the days of the week. If set to 0, the days' names will not be displayed.
If weekdayheadersbig() is set to 1 (the default) then the weekday headers will be in <th> cells. The effect in most web browsers is that they will be boldfaced and centered. If set to 0, the weekday headers will be in <td> cells and in normal text.
For both functions, if no value is specified, the current value is returned.
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
Any value can be used, if you think the web browser will find it interesting. Some useful alignments are: left, right, center, top, and bottom.
=head2 header([STRING])
By default, the current month and year are displayed at the top of the calendar grid. This is called the "header".
The header() method allows you to set the header to whatever you like. If no new header is specified, the current header is returned.
If the header is set to an empty string, then no header will be printed at all. (No, you won't be stuck with a big empty cell!)
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
=head2 weekendheadercontentcolor([STRING])
These define the colors of the cells. If a string (which should be either a HTML color-code like '#000000' or a color-word like 'yellow') is supplied as an argument, then the color is set to that specified. Otherwise, the current value is returned. T...
The bgcolor defines the color of all cells. The weekdaycolor overrides the bgcolor for weekdays (Monday through Friday), the weekendcolor overrides the bgcolor for weekend days (Saturday and Sunday), and the todaycolor overrides the bgcolor for today...
The weekdayheadercolor overrides the bgcolor for the weekday headers that appear at the top of the calendar if showweekdayheaders() is true, and weekendheadercolor does the same thing for the weekend headers. The headercolor overrides the bgcolor for...
The colors of the cell borders may be set: bordercolor determines the color of the calendar grid's outside border, and is the default color of the inner border for individual cells. The inner bordercolor may be overridden for the various types of cel...
Finally, the color of the cells' contents may be set with contentcolor, weekdaycontentcolor, weekendcontentcolor, and todaycontentcolor. The contentcolor is the default color of cell content, and the other methods override this for the appropriate da...
   # Example:
   $cal->bgcolor('white');                  # Set the default cell bgcolor
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
   $cal->weekdayheadercontentcolor('blue'); # Set the color of weekend headers' contents
   $cal->weekendcolor('palegreen');         # Override weekends' cell bgcolor
   $cal->weekendcontentcolor('blue');       # Override weekends' content color
   $cal->todaycolor('red');                 # Override today's cell bgcolor
   $cal->todaycontentcolor('yellow');       # Override today's content color
   print $cal->as_HTML;                     # Print a really ugly calendar!
=head2 datecolor(DATE,[STRING])
=head2 datecontentcolor(DATE,[STRING])
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
   $cal->datecolor('tuesdays','green');
   $cal->datecontentcolor('tuesdays','yellow');
=head2 nowrap([1 or 0])
If set to 1, then calendar cells will have the NOWRAP attribute set, preventing their content from wrapping. If set to 0 (the default) then NOWRAP is not used and very long content may cause cells to become stretched out.
=head2 sharpborders([1 or 0])
If set to 1, this gives very crisp edges between the table cells. If set to 0 (the default) standard HTML cells are used. If neither value is specified, the current value is returned.
FYI: To accomplish the crisp border, the entire calendar table is wrapped inside a table cell.
=head2 cellheight([NUMBER])
This specifies the height in pixels of each cell in the calendar. By default, no height is defined and the web browser usually chooses a reasonable default.
If no value is given, the current value is returned.
To unspecify a height, try specifying a height of 0 or undef.
lib/HTML/CalendarMonthSimple.pm view on Meta::CPAN
=head2 datecellclass(DATE,[STRING])
=head2 headerclass([STRING])
These specify which CSS class will be attributed to the calendar's table and the calendar's cells. By default, no classes are specified or used.
tableclass() sets the CSS class for the calendar table.
cellclass() is used for all calendar cells. weekdaycellclass(), weekendcellclass(), and todaycellclass() override the cellclass() for the corresponding types of cells. headerclass() is used for the calendar's header.
datecellclass() sets the CSS class for the cell for the specified date. This setting will override any of the other cell class settings, even todaycellclass()  This date must be numeric; it cannot be a string such as "2wednesday"
If no value is given, the current value is returned.
view release on metacpan or search on metacpan
t/0_in.html view on Meta::CPAN
<style>
a.calendar_link  {
color: #060;
font-weight:bold;
}
a.calendar_link:hover {
color:#000;
}
</style>
<img width="240" height="31" border="0" src="/img/title_rental.gif" /><br />
t/0_in.html view on Meta::CPAN
<strong>Gymnasium (Katie Fitz)</strong><br />
<br>
<div align="left"><u>Yearly Rental Rates:</u><strong> <em><br /> $60.00 per Hour</em></strong><br /> <em><br /> <br /> </em><u></u> <strong><em><br /></em></strong><br /> <em></em> </div>
<p>View availability <a href="calendar_kf_gym.htm" class="calendar_link">Calendar</a></p>
<p> </p>
<blockquote> ** Rental Times during Non-School Hours </blockquote> 
<blockquote>*** Rental Hours begin after 12 Noon on Sundays</blockquote>
<p> </p>
view release on metacpan or search on metacpan
t/data/about.html view on Meta::CPAN
<div id="col1"> 
<div id="newsCalendar">
	
<h2><a href="http://iainstitute.org/calendar/">Events Calendar</a></h2>
		<p>April 17, 2013<br />	
		
	<h3><a href="http://iainstitute.org/calendar/001419.php#001419">ASI 2013 Annual Conference</a></h3><br />
		<p>April 18, 2013<br />	
		
	<h3><a href="http://iainstitute.org/calendar/001413.php#001413">TOGAF 9 and ArchiMate Foundation</a></h3><br />
		<p>April 22, 2013<br />	
		
	<h3><a href="http://iainstitute.org/calendar/001423.php#001423">WebVisions Portland</a></h3><br />
		<p>May 15, 2013<br />	
		
	<h3><a href="http://iainstitute.org/calendar/001395.php#001395">UX-LX: User Experience Lisbon</a></h3><br />
		<p>May 16, 2013<br />	
		
	<h3><a href="http://iainstitute.org/calendar/001424.php#001424">TOGAF 9.1 and ArchiMate Foundation</a></h3><br />
		<p>July 09, 2013<br />	
		
	<h3><a href="http://iainstitute.org/calendar/001420.php#001420">UXPA Conference DC 2013</a></h3><br />
<p>[<a href="http://iainstitute.org/calendar/">more events</a>]</p>
<h2><a href="http://iainstitute.org/news/">News</a></h2>
		<p>April 13, 2013<br />	
view release on metacpan or search on metacpan
lib/HTML/Dojo/src.pm view on Meta::CPAN
dojo.hostenv.packageLoaded({depends:[["require", "dojo.cal.iCalendar"]], definePackage:function (dojo) {
	dojo.require("dojo.cal.iCalendar");
	dojo.deprecated("dojo.icalendar", "use dojo.cal.iCalendar isntead", "0.5");
}});
__CPAN_FILE__ src/debug.xd.js
/*
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
dojo.require("dojo.cal.iCalendar");
dojo.deprecated("dojo.icalendar", "use dojo.cal.iCalendar isntead", "0.5");
__CPAN_FILE__ src/profile.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.widget.TimePicker"], ["require", "dojo.widget.*"], ["require", "dojo.widget.HtmlWidget"], ["require", "dojo.event.*"], ["require", "dojo.date.serialize"], ["require", "dojo.date.format"], ["requi...
	dojo.provide("dojo.widget.TimePicker");
	dojo.require("dojo.widget.*");
	dojo.require("dojo.widget.HtmlWidget");
	dojo.require("dojo.event.*");
	dojo.require("dojo.date.serialize");
lib/HTML/Dojo/src.pm view on Meta::CPAN
		this.classNames = {selectedTime:"selectedItem"};
		this.any = "any";
		this.selectedTime = {hour:"", minute:"", amPm:"", anyTime:false};
		this.hourIndexMap = ["", 2, 4, 6, 8, 10, 1, 3, 5, 7, 9, 11, 0];
		this.minuteIndexMap = [0, 2, 4, 6, 8, 10, 1, 3, 5, 7, 9, 11];
	}, {isContainer:false, templateString:"<div class=\"timePickerContainer\" dojoAttachPoint=\"timePickerContainerNode\">\n\t<table class=\"timeContainer\" cellspacing=\"0\" >\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<td class=\"timeCorner cornerTopLeft\" val...
		dojo.widget.TimePicker.superclass.postMixInProperties.apply(this, arguments);
		this.calendar = dojo.i18n.getLocalization("dojo.i18n.calendar", "gregorian", this.lang);
		this.widgetStrings = dojo.i18n.getLocalization("dojo.widget", "TimePicker", this.lang);
	}, fillInTemplate:function (args, frag) {
		var source = this.getFragNodeRef(frag);
		dojo.html.copyStyle(this.domNode, source);
		if (args.value) {
lib/HTML/Dojo/src.pm view on Meta::CPAN
	dojo.event.connect(this.datePicker, "onValueChanged", this, "_updateText");
	dojo.event.connect(this.inputNode, "onChange", this, "_updateText");
	if (this.value) {
		this._updateText();
	}
	this.containerNode.explodeClassName = "calendarBodyContainer";
	this.valueNode.name = this.name;
}, getValue:function () {
	return this.valueNode.value;
}, getDate:function () {
	return this.datePicker.value;
lib/HTML/Dojo/src.pm view on Meta::CPAN
	dojo.require("dojo.widget.DatePicker");
	dojo.require("dojo.event.*");
	dojo.require("dojo.html.*");
	dojo.require("dojo.experimental");
	dojo.experimental("dojo.widget.MonthlyCalendar");
	dojo.widget.defineWidget("dojo.widget.MonthlyCalendar", dojo.widget.DatePicker, {dayWidth:"wide", templateString:"<div class=\"datePickerContainer\" dojoAttachPoint=\"datePickerContainerNode\">\n\t<h3 class=\"monthLabel\">\n\t<!--\n\t<span \n\t\tdoj...
		this.iCalendars = [];
	}, addCalendar:function (cal) {
		dojo.debug("Adding Calendar");
		this.iCalendars.push(cal);
		dojo.debug("Starting init");
lib/HTML/Dojo/src.pm view on Meta::CPAN
		}
		this.selectedIsUsed = false;
		this.currentIsUsed = false;
		var currentClassName = "";
		var previousDate = new Date();
		var calendarNodes = this.calendarDatesContainerNode.getElementsByTagName("td");
		var currentCalendarNode;
		previousDate.setHours(8);
		var nextDate = new Date(this.firstSaturday.year, this.firstSaturday.month, this.firstSaturday.date, 8);
		var lastDay = new Date(this.firstSaturday.year, this.firstSaturday.month, this.firstSaturday.date + 42, 8);
		if (this.iCalendars.length > 0) {
lib/HTML/Dojo/src.pm view on Meta::CPAN
			}
		}
		if (this.firstSaturday.date < 7) {
			var dayInWeek = 6;
			for (var i = this.firstSaturday.date; i > 0; i--) {
				currentCalendarNode = calendarNodes.item(dayInWeek);
				this.createDayContents(currentCalendarNode, nextDate);
				dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "current"));
				dayInWeek--;
				previousDate = nextDate;
				nextDate = this.incrementDate(nextDate, false);
			}
			for (var i = dayInWeek; i > -1; i--) {
				currentCalendarNode = calendarNodes.item(i);
				this.createDayContents(currentCalendarNode, nextDate);
				dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "previous"));
				previousDate = nextDate;
				nextDate = this.incrementDate(nextDate, false);
			}
		} else {
			nextDate.setDate(1);
			for (var i = 0; i < 7; i++) {
				currentCalendarNode = calendarNodes.item(i);
				this.createDayContents(currentCalendarNode, nextDate);
				dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "current"));
				previousDate = nextDate;
				nextDate = this.incrementDate(nextDate, true);
			}
lib/HTML/Dojo/src.pm view on Meta::CPAN
		previousDate.setDate(this.firstSaturday.date);
		previousDate.setMonth(this.firstSaturday.month);
		previousDate.setFullYear(this.firstSaturday.year);
		nextDate = this.incrementDate(previousDate, true);
		var count = 7;
		currentCalendarNode = calendarNodes.item(count);
		while ((nextDate.getMonth() == previousDate.getMonth()) && (count < 42)) {
			this.createDayContents(currentCalendarNode, nextDate);
			dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "current"));
			currentCalendarNode = calendarNodes.item(++count);
			previousDate = nextDate;
			nextDate = this.incrementDate(nextDate, true);
		}
		while (count < 42) {
			this.createDayContents(currentCalendarNode, nextDate);
			dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "next"));
			currentCalendarNode = calendarNodes.item(++count);
			previousDate = nextDate;
			nextDate = this.incrementDate(nextDate, true);
		}
		this.setMonthLabel(this.firstSaturday.month);
		this.setYearLabels(this.firstSaturday.year);
lib/HTML/Dojo/src.pm view on Meta::CPAN
		dojo.event.connect(this.datePicker, "onValueChanged", this, "_updateText");
		dojo.event.connect(this.inputNode, "onChange", this, "_updateText");
		if (this.value) {
			this._updateText();
		}
		this.containerNode.explodeClassName = "calendarBodyContainer";
		this.valueNode.name = this.name;
	}, getValue:function () {
		return this.valueNode.value;
	}, getDate:function () {
		return this.datePicker.value;
lib/HTML/Dojo/src.pm view on Meta::CPAN
dojo.require("dojo.widget.DatePicker");
dojo.require("dojo.event.*");
dojo.require("dojo.html.*");
dojo.require("dojo.experimental");
dojo.experimental("dojo.widget.MonthlyCalendar");
dojo.widget.defineWidget("dojo.widget.MonthlyCalendar", dojo.widget.DatePicker, {dayWidth:"wide", templateString:"<div class=\"datePickerContainer\" dojoAttachPoint=\"datePickerContainerNode\">\n\t<h3 class=\"monthLabel\">\n\t<!--\n\t<span \n\t\tdojo...
	this.iCalendars = [];
}, addCalendar:function (cal) {
	dojo.debug("Adding Calendar");
	this.iCalendars.push(cal);
	dojo.debug("Starting init");
lib/HTML/Dojo/src.pm view on Meta::CPAN
	}
	this.selectedIsUsed = false;
	this.currentIsUsed = false;
	var currentClassName = "";
	var previousDate = new Date();
	var calendarNodes = this.calendarDatesContainerNode.getElementsByTagName("td");
	var currentCalendarNode;
	previousDate.setHours(8);
	var nextDate = new Date(this.firstSaturday.year, this.firstSaturday.month, this.firstSaturday.date, 8);
	var lastDay = new Date(this.firstSaturday.year, this.firstSaturday.month, this.firstSaturday.date + 42, 8);
	if (this.iCalendars.length > 0) {
lib/HTML/Dojo/src.pm view on Meta::CPAN
		}
	}
	if (this.firstSaturday.date < 7) {
		var dayInWeek = 6;
		for (var i = this.firstSaturday.date; i > 0; i--) {
			currentCalendarNode = calendarNodes.item(dayInWeek);
			this.createDayContents(currentCalendarNode, nextDate);
			dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "current"));
			dayInWeek--;
			previousDate = nextDate;
			nextDate = this.incrementDate(nextDate, false);
		}
		for (var i = dayInWeek; i > -1; i--) {
			currentCalendarNode = calendarNodes.item(i);
			this.createDayContents(currentCalendarNode, nextDate);
			dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "previous"));
			previousDate = nextDate;
			nextDate = this.incrementDate(nextDate, false);
		}
	} else {
		nextDate.setDate(1);
		for (var i = 0; i < 7; i++) {
			currentCalendarNode = calendarNodes.item(i);
			this.createDayContents(currentCalendarNode, nextDate);
			dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "current"));
			previousDate = nextDate;
			nextDate = this.incrementDate(nextDate, true);
		}
lib/HTML/Dojo/src.pm view on Meta::CPAN
	previousDate.setDate(this.firstSaturday.date);
	previousDate.setMonth(this.firstSaturday.month);
	previousDate.setFullYear(this.firstSaturday.year);
	nextDate = this.incrementDate(previousDate, true);
	var count = 7;
	currentCalendarNode = calendarNodes.item(count);
	while ((nextDate.getMonth() == previousDate.getMonth()) && (count < 42)) {
		this.createDayContents(currentCalendarNode, nextDate);
		dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "current"));
		currentCalendarNode = calendarNodes.item(++count);
		previousDate = nextDate;
		nextDate = this.incrementDate(nextDate, true);
	}
	while (count < 42) {
		this.createDayContents(currentCalendarNode, nextDate);
		dojo.html.setClass(currentCalendarNode, this.getDateClassName(nextDate, "next"));
		currentCalendarNode = calendarNodes.item(++count);
		previousDate = nextDate;
		nextDate = this.incrementDate(nextDate, true);
	}
	this.setMonthLabel(this.firstSaturday.month);
	this.setYearLabels(this.firstSaturday.year);
lib/HTML/Dojo/src.pm view on Meta::CPAN
dojo.require("dojo.widget.*");
dojo.require("dojo.widget.HtmlWidget");
dojo.require("dojo.event.*");
dojo.require("dojo.dom");
dojo.require("dojo.html.style");
dojo.widget.defineWidget("dojo.widget.DatePicker", dojo.widget.HtmlWidget, {value:"", name:"", displayWeeks:6, adjustWeeks:false, startDate:"1492-10-12", endDate:"2941-10-12", weekStartsOn:"", staticDisplay:false, dayWidth:"narrow", classNames:{previ...
	dojo.widget.DatePicker.superclass.postMixInProperties.apply(this, arguments);
	if (!this.weekStartsOn) {
		this.weekStartsOn = dojo.date.getFirstDayOfWeek(this.lang);
	}
	this.today = new Date();
lib/HTML/Dojo/src.pm view on Meta::CPAN
	}
}, fillInTemplate:function (args, frag) {
	dojo.widget.DatePicker.superclass.fillInTemplate.apply(this, arguments);
	var source = this.getFragNodeRef(frag);
	dojo.html.copyStyle(this.domNode, source);
	this.weekTemplate = dojo.dom.removeNode(this.calendarWeekTemplate);
	this._preInitUI(this.value ? this.value : this.today, false, true);
	var dayLabels = dojo.lang.unnest(dojo.date.getNames("days", this.dayWidth, "standAlone", this.lang));
	if (this.weekStartsOn > 0) {
		for (var i = 0; i < this.weekStartsOn; i++) {
			dayLabels.push(dayLabels.shift());
lib/HTML/Dojo/src.pm view on Meta::CPAN
	}
	if (initUI) {
		this._initUI(days);
	}
}, _initUI:function (days) {
	dojo.dom.removeChildren(this.calendarDatesContainerNode);
	for (var i = 0; i < this.displayWeeks; i++) {
		this.calendarDatesContainerNode.appendChild(this.weekTemplate.cloneNode(true));
	}
	var nextDate = new Date(this.firstDay);
	this._setMonthLabel(this.curMonth.getMonth());
	this._setYearLabels(this.curMonth.getFullYear());
	var calendarNodes = this.calendarDatesContainerNode.getElementsByTagName("td");
	var calendarRows = this.calendarDatesContainerNode.getElementsByTagName("tr");
	var currentCalendarNode;
	for (i = 0; i < days; i++) {
		currentCalendarNode = calendarNodes.item(i);
		currentCalendarNode.innerHTML = nextDate.getDate();
		currentCalendarNode.setAttribute("djDateValue", nextDate.valueOf());
		var curClass = (nextDate.getMonth() != this.curMonth.getMonth() && Number(nextDate) < Number(this.curMonth)) ? "previous" : (nextDate.getMonth() == this.curMonth.getMonth()) ? "current" : "next";
		var mappedClass = curClass;
		if (this._isDisabledDate(nextDate)) {
lib/HTML/Dojo/src.pm view on Meta::CPAN
	dojo.require("dojo.widget.*");
	dojo.require("dojo.widget.HtmlWidget");
	dojo.require("dojo.event.*");
	dojo.require("dojo.dom");
	dojo.require("dojo.html.style");
	dojo.widget.defineWidget("dojo.widget.DatePicker", dojo.widget.HtmlWidget, {value:"", name:"", displayWeeks:6, adjustWeeks:false, startDate:"1492-10-12", endDate:"2941-10-12", weekStartsOn:"", staticDisplay:false, dayWidth:"narrow", classNames:{prev...
		dojo.widget.DatePicker.superclass.postMixInProperties.apply(this, arguments);
		if (!this.weekStartsOn) {
			this.weekStartsOn = dojo.date.getFirstDayOfWeek(this.lang);
		}
		this.today = new Date();
lib/HTML/Dojo/src.pm view on Meta::CPAN
		}
	}, fillInTemplate:function (args, frag) {
		dojo.widget.DatePicker.superclass.fillInTemplate.apply(this, arguments);
		var source = this.getFragNodeRef(frag);
		dojo.html.copyStyle(this.domNode, source);
		this.weekTemplate = dojo.dom.removeNode(this.calendarWeekTemplate);
		this._preInitUI(this.value ? this.value : this.today, false, true);
		var dayLabels = dojo.lang.unnest(dojo.date.getNames("days", this.dayWidth, "standAlone", this.lang));
		if (this.weekStartsOn > 0) {
			for (var i = 0; i < this.weekStartsOn; i++) {
				dayLabels.push(dayLabels.shift());
lib/HTML/Dojo/src.pm view on Meta::CPAN
		}
		if (initUI) {
			this._initUI(days);
		}
	}, _initUI:function (days) {
		dojo.dom.removeChildren(this.calendarDatesContainerNode);
		for (var i = 0; i < this.displayWeeks; i++) {
			this.calendarDatesContainerNode.appendChild(this.weekTemplate.cloneNode(true));
		}
		var nextDate = new Date(this.firstDay);
		this._setMonthLabel(this.curMonth.getMonth());
		this._setYearLabels(this.curMonth.getFullYear());
		var calendarNodes = this.calendarDatesContainerNode.getElementsByTagName("td");
		var calendarRows = this.calendarDatesContainerNode.getElementsByTagName("tr");
		var currentCalendarNode;
		for (i = 0; i < days; i++) {
			currentCalendarNode = calendarNodes.item(i);
			currentCalendarNode.innerHTML = nextDate.getDate();
			currentCalendarNode.setAttribute("djDateValue", nextDate.valueOf());
			var curClass = (nextDate.getMonth() != this.curMonth.getMonth() && Number(nextDate) < Number(this.curMonth)) ? "previous" : (nextDate.getMonth() == this.curMonth.getMonth()) ? "current" : "next";
			var mappedClass = curClass;
			if (this._isDisabledDate(nextDate)) {
lib/HTML/Dojo/src.pm view on Meta::CPAN
dojo.require("dojo.event.*");
dojo.require("dojo.date.serialize");
dojo.require("dojo.date.format");
dojo.require("dojo.dom");
dojo.require("dojo.html.style");
dojo.requireLocalization("dojo.i18n.calendar", "gregorian", null, "ko,zh-cn,zh,sv,ja,en,zh-tw,it,hu,nl,fi,zh-hk,fr,pt,ROOT,es,de,pt-br");
dojo.requireLocalization("dojo.widget", "TimePicker", null, "ROOT");
dojo.widget.defineWidget("dojo.widget.TimePicker", dojo.widget.HtmlWidget, function () {
	this.time = "";
	this.useDefaultTime = false;
	this.useDefaultMinutes = false;
lib/HTML/Dojo/src.pm view on Meta::CPAN
	this.classNames = {selectedTime:"selectedItem"};
	this.any = "any";
	this.selectedTime = {hour:"", minute:"", amPm:"", anyTime:false};
	this.hourIndexMap = ["", 2, 4, 6, 8, 10, 1, 3, 5, 7, 9, 11, 0];
	this.minuteIndexMap = [0, 2, 4, 6, 8, 10, 1, 3, 5, 7, 9, 11];
}, {isContainer:false, templateString:"<div class=\"timePickerContainer\" dojoAttachPoint=\"timePickerContainerNode\">\n\t<table class=\"timeContainer\" cellspacing=\"0\" >\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<td class=\"timeCorner cornerTopLeft\" vali...
	dojo.widget.TimePicker.superclass.postMixInProperties.apply(this, arguments);
	this.calendar = dojo.i18n.getLocalization("dojo.i18n.calendar", "gregorian", this.lang);
	this.widgetStrings = dojo.i18n.getLocalization("dojo.widget", "TimePicker", this.lang);
}, fillInTemplate:function (args, frag) {
	var source = this.getFragNodeRef(frag);
	dojo.html.copyStyle(this.domNode, source);
	if (args.value) {
lib/HTML/Dojo/src.pm view on Meta::CPAN
.selectedItem {
	background-color:#3a3a3a;
	color:#ffffff;
}
.calendarContainer {
	border-collapse:collapse;
	border-spacing:0;
	border-bottom:1px solid #e6e6e6;
	overflow: hidden;
	text-align: right;
}
.calendarContainer thead{
	border-bottom:1px solid #e6e6e6;
}
.calendarContainer tbody * td {
        height: 100px;
        border: 1px solid gray;
}
.calendarContainer td {
        width: 100px;
        padding: 2px;
	vertical-align: top;
}
lib/HTML/Dojo/src.pm view on Meta::CPAN
<div class="timePickerContainer" dojoAttachPoint="timePickerContainerNode">
	<table class="timeContainer" cellspacing="0" >
		<thead>
			<tr>
				<td class="timeCorner cornerTopLeft" valign="top"> </td>
				<td class="timeLabelContainer hourSelector">${this.calendar.field-hour}</td>
				<td class="timeLabelContainer minutesHeading">${this.calendar.field-minute}</td>
				<td class="timeCorner cornerTopRight" valign="top"> </td>
			</tr>
		</thead>
		<tbody>
			<tr>
lib/HTML/Dojo/src.pm view on Meta::CPAN
				<td valign="top" class="timeOptions">
					<table class="amPmContainer">
						<tbody dojoAttachPoint="amPmContainerNode" 
							dojoAttachEvent="onClick: onSetSelectedAmPm;">
							<tr>
								<td id="am">${this.calendar.am}</td>
								<td id="pm">${this.calendar.pm}</td>
							</tr>
						</tbody>
					</table>
				</td>
				<td class="timeOptions">
lib/HTML/Dojo/src.pm view on Meta::CPAN
	cursor: n-resize;
}
__CPAN_FILE__ src/widget/templates/DatePicker.html
<div class="datePickerContainer" dojoAttachPoint="datePickerContainerNode">
	<table cellspacing="0" cellpadding="0" class="calendarContainer">
		<thead>
			<tr>
				<td class="monthWrapper" valign="top">
					<table class="monthContainer" cellspacing="0" cellpadding="0" border="0">
						<tr>
lib/HTML/Dojo/src.pm view on Meta::CPAN
			</tr>
		</thead>
		<tbody>
			<tr>
				<td colspan="3">
					<table class="calendarBodyContainer" cellspacing="0" cellpadding="0" border="0">
						<thead>
							<tr dojoAttachPoint="dayLabelsRow">
								<td></td>
								<td></td>
								<td></td>
lib/HTML/Dojo/src.pm view on Meta::CPAN
								<td></td>
								<td></td>
								<td></td>
							</tr>
						</thead>
						<tbody dojoAttachPoint="calendarDatesContainerNode" 
							dojoAttachEvent="onClick: _handleUiClick;">
							<tr dojoAttachPoint="calendarWeekTemplate">
								<td></td>
								<td></td>
								<td></td>
								<td></td>
								<td></td>
lib/HTML/Dojo/src.pm view on Meta::CPAN
			<img src="${dojoWidgetModuleUri}templates/incrementWeek.gif" 
			alt="↓" />
		</span>
	-->
	</h3>
	<table class="calendarContainer">
		<thead>
			<tr dojoAttachPoint="dayLabelsRow">
				<td></td>
				<td></td>
				<td></td>
lib/HTML/Dojo/src.pm view on Meta::CPAN
				<td></td>
				<td></td>
				<td></td>
			</tr>
		</thead>
		<tbody dojoAttachPoint="calendarDatesContainerNode" 
			dojoAttachEvent="onClick: onSetDate;">
			<tr dojoAttachPoint="calendarRow0">
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
			</tr>
			<tr dojoAttachPoint="calendarRow1">
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
			</tr>
			<tr dojoAttachPoint="calendarRow2">
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
			</tr>
			<tr dojoAttachPoint="calendarRow3">
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
			</tr>
			<tr dojoAttachPoint="calendarRow4">
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
			</tr>
			<tr dojoAttachPoint="calendarRow5">
				<td></td>
				<td></td>
				<td></td>
				<td></td>
				<td></td>
lib/HTML/Dojo/src.pm view on Meta::CPAN
__CPAN_FILE__ src/widget/templates/DatePicker.css
.datePickerContainer {
	width:164px; /* needed for proper user styling */
}
.calendarContainer {
/*	border:1px solid #566f8f;*/
}
.calendarBodyContainer {
	width:100%; /* needed for the explode effect (explain?) */
	background: #7591bc url("images/dpBg.gif") top left repeat-x;
}
.calendarBodyContainer thead tr td {
	color:#293a4b;
	font:bold 0.75em Helvetica, Arial, Verdana, sans-serif;
	text-align:center;
	padding:0.25em;
	background: url("images/dpHorizLine.gif") bottom left repeat-x;
}
.calendarBodyContainer tbody tr td {
	color:#fff;
	font:bold 0.7em Helvetica, Arial, Verdana, sans-serif;
	text-align:center;
	padding:0.4em;
	background: url("images/dpVertLine.gif") top right repeat-y;
lib/HTML/Dojo/src.pm view on Meta::CPAN
	}
	return data;
};
__CPAN_DIR__ src/i18n/calendar
__CPAN_DIR__ src/i18n/calendar/nls
__CPAN_FILE__ src/i18n/calendar/nls/gregorianExtras.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"dateFormat-yearOnly":"yyyy"})
__CPAN_FILE__ src/i18n/calendar/nls/README
All files within this directory and subdirectories were manually derived from http://unicode.org/cldr
See terms of use: http://www.unicode.org/copyright.html#Exhibit1
Eventually, this data should be generated directly from the XML in the CLDR repository to provide
accurate and full support for the full set of locales.
__CPAN_FILE__ src/i18n/calendar/nls/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-weekday":"Day of the Week", "dateFormat-medium":"yyyy MMM d", "field-second":"Second", "field-week":"Week", "pm":"PM", "timeFormat-full":"HH:mm:ss z", "months-standAlone-narrow":["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"]...
__CPAN_FILE__ src/i18n/calendar/nls/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "", ({"field-weekday":"Day of the Week", "dateFormat-medium":"yyyy MMM d", "field-second":"Second", "field-week":"Week", "pm":"PM", "timeFormat-full":"HH:mm:ss z", "months-standAl...
}})
__CPAN_FILE__ src/i18n/calendar/nls/gregorianExtras.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.gregorianExtras"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.gregorianExtras");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorianExtras", "", ({"dateFormat-yearOnly":"yyyy"}));
}})
__CPAN_DIR__ src/i18n/calendar/nls/es
__CPAN_FILE__ src/i18n/calendar/nls/es/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-weekday":"d\xeda de la semana", "dateFormat-medium":"dd-MMM-yy", "field-second":"segundo", "field-week":"semana", "pm":"p.m.", "timeFormat-full":"HH'H'mm''ss\" z", "months-standAlone-narrow":["E", "F", "M", "A", "M", "J", "J", "A", "S", "O",...
__CPAN_FILE__ src/i18n/calendar/nls/es/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.es.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.es.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "es", ({"field-weekday":"d\xeda de la semana", "dateFormat-medium":"dd-MMM-yy", "field-second":"segundo", "field-week":"semana", "pm":"p.m.", "timeFormat-full":"HH'H'mm''ss\" z", ...
}})
__CPAN_DIR__ src/i18n/calendar/nls/de
__CPAN_FILE__ src/i18n/calendar/nls/de/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-weekday":"Wochentag", "dateFormat-medium":"dd.MM.yyyy", "field-second":"Sekunde", "field-week":"Woche", "pm":"nachm.", "timeFormat-full":"H:mm' Uhr 'z", "months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],...
__CPAN_FILE__ src/i18n/calendar/nls/de/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.de.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.de.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "de", ({"field-weekday":"Wochentag", "dateFormat-medium":"dd.MM.yyyy", "field-second":"Sekunde", "field-week":"Woche", "pm":"nachm.", "timeFormat-full":"H:mm' Uhr 'z", "months-sta...
}})
__CPAN_DIR__ src/i18n/calendar/nls/zh
__CPAN_FILE__ src/i18n/calendar/nls/zh/gregorianExtras.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"dateFormat-yearOnly":"yyyy'\u5e74'"})
__CPAN_FILE__ src/i18n/calendar/nls/zh/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"days-standAlone-narrow":["\u65e5", "\u4e00", "\u4e8c", "\u4e09", "\u56db", "\u4e94", "\u516d"], "eras":["\u516c\u5143\u524d", "\u516c\u5143"], "am":"\u4e0a\u5348", "months-format-abbr":["\u4e00\u6708", "\u4e8c\u6708", "\u4e09\u6708", "\u56db\u6708...
__CPAN_FILE__ src/i18n/calendar/nls/zh/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.zh.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.zh.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "zh", ({"days-standAlone-narrow":["\u65e5", "\u4e00", "\u4e8c", "\u4e09", "\u56db", "\u4e94", "\u516d"], "eras":["\u516c\u5143\u524d", "\u516c\u5143"], "am":"\u4e0a\u5348", "month...
}})
__CPAN_FILE__ src/i18n/calendar/nls/zh/gregorianExtras.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.zh.gregorianExtras"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.zh.gregorianExtras");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorianExtras", "zh", ({"dateFormat-yearOnly":"yyyy'\u5e74'"}));
}})
__CPAN_DIR__ src/i18n/calendar/nls/ja
__CPAN_FILE__ src/i18n/calendar/nls/ja/gregorianExtras.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"dateFormat-yearOnly":"yyyy\u5e74"})
__CPAN_FILE__ src/i18n/calendar/nls/ja/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"days-standAlone-narrow":["\u65e5", "\u6708", "\u706b", "\u6c34", "\u6728", "\u91d1", "\u571f"], "timeFormat-full":"H'\u6642'mm'\u5206'ss'\u79d2'z", "eras":["\u7d00\u5143\u524d", "\u897f\u66a6"], "timeFormat-medium":"H:mm:ss", "dateFormat-medium":"...
__CPAN_FILE__ src/i18n/calendar/nls/ja/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.ja.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.ja.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "ja", ({"days-standAlone-narrow":["\u65e5", "\u6708", "\u706b", "\u6c34", "\u6728", "\u91d1", "\u571f"], "timeFormat-full":"H'\u6642'mm'\u5206'ss'\u79d2'z", "eras":["\u7d00\u5143\...
}})
__CPAN_FILE__ src/i18n/calendar/nls/ja/gregorianExtras.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.ja.gregorianExtras"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.ja.gregorianExtras");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorianExtras", "ja", ({"dateFormat-yearOnly":"yyyy\u5e74"}));
}})
__CPAN_DIR__ src/i18n/calendar/nls/fi
__CPAN_FILE__ src/i18n/calendar/nls/fi/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-weekday":"viikonp\xe4iv\xe4", "dateFormat-medium":"d.M.yyyy", "field-second":"sekunti", "field-week":"viikko", "pm":"ip.", "timeFormat-full":"H.mm.ss v", "months-standAlone-narrow":["T", "H", "M", "H", "T", "K", "H", "E", "S", "L", "M", "J"]...
__CPAN_FILE__ src/i18n/calendar/nls/fi/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.fi.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.fi.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "fi", ({"field-weekday":"viikonp\xe4iv\xe4", "dateFormat-medium":"d.M.yyyy", "field-second":"sekunti", "field-week":"viikko", "pm":"ip.", "timeFormat-full":"H.mm.ss v", "months-st...
}})
__CPAN_DIR__ src/i18n/calendar/nls/zh-cn
__CPAN_FILE__ src/i18n/calendar/nls/zh-cn/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"dateFormat-medium":"yyyy-M-d", "field-second":"\u79d2\u949f", "field-week":"\u5468", "timeFormat-full":"ahh'\u65f6'mm'\u5206'ss'\u79d2' z", "field-year":"\u5e74", "field-minute":"\u5206\u949f", "timeFormat-medium":"ahh:mm:ss", "field-hour":"\u5c0f...
__CPAN_FILE__ src/i18n/calendar/nls/zh-cn/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.zh-cn.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.zh-cn.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "zh-cn", ({"dateFormat-medium":"yyyy-M-d", "field-second":"\u79d2\u949f", "field-week":"\u5468", "timeFormat-full":"ahh'\u65f6'mm'\u5206'ss'\u79d2' z", "field-year":"\u5e74", "fie...
}})
__CPAN_DIR__ src/i18n/calendar/nls/ko
__CPAN_FILE__ src/i18n/calendar/nls/ko/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"months-standAlone-narrow":["1\uc6d4", "2\uc6d4", "3\uc6d4", "4\uc6d4", "5\uc6d4", "6\uc6d4", "7\uc6d4", "8\uc6d4", "9\uc6d4", "10\uc6d4", "11\uc6d4", "12\uc6d4"], "dateFormat-long":"yyyy'\ub144' M'\uc6d4' d'\uc77c'", "timeFormat-full":"a hh'\uc2dc...
__CPAN_FILE__ src/i18n/calendar/nls/ko/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.ko.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.ko.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "ko", ({"months-standAlone-narrow":["1\uc6d4", "2\uc6d4", "3\uc6d4", "4\uc6d4", "5\uc6d4", "6\uc6d4", "7\uc6d4", "8\uc6d4", "9\uc6d4", "10\uc6d4", "11\uc6d4", "12\uc6d4"], "dateFo...
}})
__CPAN_DIR__ src/i18n/calendar/nls/sv
__CPAN_FILE__ src/i18n/calendar/nls/sv/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-weekday":"veckodag", "dateFormat-medium":"d MMM yyyy", "field-second":"sekund", "field-week":"vecka", "pm":"em", "timeFormat-full":"'kl. 'HH.mm.ss z", "months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], "...
__CPAN_FILE__ src/i18n/calendar/nls/sv/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.sv.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.sv.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "sv", ({"field-weekday":"veckodag", "dateFormat-medium":"d MMM yyyy", "field-second":"sekund", "field-week":"vecka", "pm":"em", "timeFormat-full":"'kl. 'HH.mm.ss z", "months-stand...
}})
__CPAN_DIR__ src/i18n/calendar/nls/en
__CPAN_FILE__ src/i18n/calendar/nls/en/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], "dateFormat-long":"MMMM d, yyyy", "timeFormat-full":"h:mm:ss a v", "eras":["BC", "AD"], "timeFormat-medium":"h:mm:ss a", "dateFormat-medium":"MMM d, yyyy", "mo...
__CPAN_FILE__ src/i18n/calendar/nls/en/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.en.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.en.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "en", ({"months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], "dateFormat-long":"MMMM d, yyyy", "timeFormat-full":"h:mm:ss a v", "eras":["BC", "...
}})
__CPAN_DIR__ src/i18n/calendar/nls/zh-hk
__CPAN_FILE__ src/i18n/calendar/nls/zh-hk/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"timeFormat-full":"ahh'\u6642'mm'\u5206'ss'\u79d2' z", "eras":["\u897f\u5143\u524d", "\u897f\u5143"], "timeFormat-medium":"a h:mm:ss", "dateFormat-medium":"yyyy/M/d", "dateFormat-full":"yyyy'\u5e74'M'\u6708'd'\u65e5'EEEE", "days-format-abbr":["\u90...
__CPAN_FILE__ src/i18n/calendar/nls/zh-hk/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.zh-hk.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.zh-hk.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "zh-hk", ({"timeFormat-full":"ahh'\u6642'mm'\u5206'ss'\u79d2' z", "eras":["\u897f\u5143\u524d", "\u897f\u5143"], "timeFormat-medium":"a h:mm:ss", "dateFormat-medium":"yyyy/M/d", "...
}})
__CPAN_DIR__ src/i18n/calendar/nls/zh-tw
__CPAN_FILE__ src/i18n/calendar/nls/zh-tw/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"dateFormat-medium":"yyyy'\u5e74'M'\u6708'd'\u65e5'", "field-second":"\u79d2", "field-week":"\u9031", "timeFormat-full":"ahh'\u6642'mm'\u5206'ss'\u79d2' z", "eras":["\u897f\u5143\u524d", "\u897f\u5143"], "field-year":"\u5e74", "field-minute":"\u520...
__CPAN_FILE__ src/i18n/calendar/nls/zh-tw/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.zh-tw.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.zh-tw.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "zh-tw", ({"dateFormat-medium":"yyyy'\u5e74'M'\u6708'd'\u65e5'", "field-second":"\u79d2", "field-week":"\u9031", "timeFormat-full":"ahh'\u6642'mm'\u5206'ss'\u79d2' z", "eras":["\u...
}})
__CPAN_DIR__ src/i18n/calendar/nls/pt
__CPAN_FILE__ src/i18n/calendar/nls/pt/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], "dateFormat-long":"d' de 'MMMM' de 'yyyy", "timeFormat-full":"HH'H'mm'm'ss's' z", "eras":["a.C.", "d.C."], "dateFormat-medium":"d/MMM/yyyy", "months-format-abb...
__CPAN_FILE__ src/i18n/calendar/nls/pt/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.pt.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.pt.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "pt", ({"months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], "dateFormat-long":"d' de 'MMMM' de 'yyyy", "timeFormat-full":"HH'H'mm'm'ss's' z", ...
}})
__CPAN_DIR__ src/i18n/calendar/nls/it
__CPAN_FILE__ src/i18n/calendar/nls/it/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-weekday":"giorno della settimana", "dateFormat-medium":"dd/MMM/yy", "field-second":"secondo", "field-week":"settimana", "pm":"p.", "months-standAlone-narrow":["G", "F", "M", "A", "M", "G", "L", "A", "S", "O", "N", "D"], "am":"m.", "days-stan...
__CPAN_FILE__ src/i18n/calendar/nls/it/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.it.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.it.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "it", ({"field-weekday":"giorno della settimana", "dateFormat-medium":"dd/MMM/yy", "field-second":"secondo", "field-week":"settimana", "pm":"p.", "months-standAlone-narrow":["G", ...
}})
__CPAN_DIR__ src/i18n/calendar/nls/hu
__CPAN_FILE__ src/i18n/calendar/nls/hu/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-weekday":"h\xe9t napja", "dateFormat-medium":"yyyy MMM d", "field-second":"m\xe1sodperc", "field-week":"h\xe9t", "pm":"d.u.", "timeFormat-full":"h:mm:ss a v", "months-standAlone-narrow":["J", "F", "M", "\xc1", "M", "J", "J", "A", "S", "O", "...
__CPAN_FILE__ src/i18n/calendar/nls/hu/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.hu.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.hu.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "hu", ({"field-weekday":"h\xe9t napja", "dateFormat-medium":"yyyy MMM d", "field-second":"m\xe1sodperc", "field-week":"h\xe9t", "pm":"d.u.", "timeFormat-full":"h:mm:ss a v", "mont...
}})
__CPAN_DIR__ src/i18n/calendar/nls/pt-br
__CPAN_FILE__ src/i18n/calendar/nls/pt-br/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-hour":"Hora", "field-dayperiod":"Per\xedodo do dia", "field-minute":"Minuto", "timeFormat-full":"HH'h'mm'min'ss's' z", "field-weekday":"Dia da semana", "field-week":"Semana", "field-second":"Segundo", "dateFormat-medium":"dd/MM/yyyy", "field...
__CPAN_FILE__ src/i18n/calendar/nls/pt-br/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.pt-br.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.pt-br.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "pt-br", ({"field-hour":"Hora", "field-dayperiod":"Per\xedodo do dia", "field-minute":"Minuto", "timeFormat-full":"HH'h'mm'min'ss's' z", "field-weekday":"Dia da semana", "field-we...
}})
__CPAN_DIR__ src/i18n/calendar/nls/fr
__CPAN_FILE__ src/i18n/calendar/nls/fr/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"field-weekday":"jour de la semaine", "dateFormat-medium":"d MMM yy", "field-second":"seconde", "field-week":"semaine", "pm":"ap. m.", "timeFormat-full":"HH' h 'mm z", "months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N...
__CPAN_FILE__ src/i18n/calendar/nls/fr/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.fr.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.fr.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "fr", ({"field-weekday":"jour de la semaine", "dateFormat-medium":"d MMM yy", "field-second":"seconde", "field-week":"semaine", "pm":"ap. m.", "timeFormat-full":"HH' h 'mm z", "mo...
}})
__CPAN_DIR__ src/i18n/calendar/nls/nl
__CPAN_FILE__ src/i18n/calendar/nls/nl/gregorian.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
*/
({"dateFormat-medium":"d MMM yyyy", "field-second":"Seconde", "timeFormat-full":"HH:mm:ss v", "months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], "days-standAlone-narrow":["Z", "M", "D", "W", "D", "V", "Z"], "fiel...
__CPAN_FILE__ src/i18n/calendar/nls/nl/gregorian.xd.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
	All Rights Reserved.
	Licensed under the Academic Free License version 2.1 or above OR the
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.i18n.calendar.nls.nl.gregorian"]], definePackage:function (dojo) {
	dojo.provide("dojo.i18n.calendar.nls.nl.gregorian");
	dojo.hostenv.xdLoadFlattenedBundle("dojo.i18n.calendar", "gregorian", "nl", ({"dateFormat-medium":"d MMM yyyy", "field-second":"Seconde", "timeFormat-full":"HH:mm:ss v", "months-standAlone-narrow":["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "...
}})
__CPAN_DIR__ src/i18n/currency
__CPAN_FILE__ src/i18n/currency/common.js
/*
	Copyright (c) 2004-2006, The Dojo Foundation
lib/HTML/Dojo/src.pm view on Meta::CPAN
	dojo.require("dojo.cal.textDirectory");
	dojo.require("dojo.date.common");
	dojo.require("dojo.date.serialize");
	dojo.cal.iCalendar.fromText = function (text) {
		var properties = dojo.cal.textDirectory.tokenise(text);
		var calendars = [];
		for (var i = 0, begun = false; i < properties.length; i++) {
			var prop = properties[i];
			if (!begun) {
				if (prop.name == "BEGIN" && prop.value == "VCALENDAR") {
					begun = true;
					var calbody = [];
				}
			} else {
				if (prop.name == "END" && prop.value == "VCALENDAR") {
					calendars.push(new dojo.cal.iCalendar.VCalendar(calbody));
					begun = false;
				} else {
					calbody.push(prop);
				}
			}
		}
		return calendars;
	};
	dojo.cal.iCalendar.Component = function (body) {
		if (!this.name) {
			this.name = "COMPONENT";
		}
lib/HTML/Dojo/src.pm view on Meta::CPAN
dojo.require("dojo.cal.textDirectory");
dojo.require("dojo.date.common");
dojo.require("dojo.date.serialize");
dojo.cal.iCalendar.fromText = function (text) {
	var properties = dojo.cal.textDirectory.tokenise(text);
	var calendars = [];
	for (var i = 0, begun = false; i < properties.length; i++) {
		var prop = properties[i];
		if (!begun) {
			if (prop.name == "BEGIN" && prop.value == "VCALENDAR") {
				begun = true;
				var calbody = [];
			}
		} else {
			if (prop.name == "END" && prop.value == "VCALENDAR") {
				calendars.push(new dojo.cal.iCalendar.VCalendar(calbody));
				begun = false;
			} else {
				calbody.push(prop);
			}
		}
	}
	return calendars;
};
dojo.cal.iCalendar.Component = function (body) {
	if (!this.name) {
		this.name = "COMPONENT";
	}
lib/HTML/Dojo/src.pm view on Meta::CPAN
dojo.require("dojo.lang.array");
dojo.require("dojo.lang.common");
dojo.require("dojo.lang.func");
dojo.require("dojo.string.common");
dojo.require("dojo.i18n.common");
dojo.requireLocalization("dojo.i18n.calendar", "gregorian", null, "ko,zh-cn,zh,sv,ja,en,zh-tw,it,hu,nl,fi,zh-hk,fr,pt,ROOT,es,de,pt-br");
dojo.requireLocalization("dojo.i18n.calendar", "gregorianExtras", null, "zh,ROOT,ja");
(function () {
	dojo.date.format = function (dateObject, options) {
		if (typeof options == "string") {
			dojo.deprecated("dojo.date.format", "To format dates with POSIX-style strings, please use dojo.date.strftime instead", "0.5");
			return dojo.date.strftime(dateObject, options);
lib/HTML/Dojo/src.pm view on Meta::CPAN
			gregorian = dojo.lang.mixin(gregorian, bundle);
		}, this);
		return gregorian;
	};
})();
dojo.date.addCustomFormats("dojo.i18n.calendar", "gregorian");
dojo.date.addCustomFormats("dojo.i18n.calendar", "gregorianExtras");
dojo.date.getNames = function (item, type, use, locale) {
	var label;
	var lookup = dojo.date._getGregorianBundle(locale);
	var props = [item, use, type];
	if (use == "standAlone") {
lib/HTML/Dojo/src.pm view on Meta::CPAN
		http://dojotoolkit.org/community/licensing.shtml
*/
dojo.hostenv.packageLoaded({depends:[["provide", "dojo.date.format"], ["require", "dojo.date.common"], ["require", "dojo.date.supplemental"], ["require", "dojo.lang.array"], ["require", "dojo.lang.common"], ["require", "dojo.lang.func"], ["require", ...
	dojo.provide("dojo.date.format");
	dojo.require("dojo.date.common");
	dojo.require("dojo.date.supplemental");
	dojo.require("dojo.lang.array");
	dojo.require("dojo.lang.common");
lib/HTML/Dojo/src.pm view on Meta::CPAN
				gregorian = dojo.lang.mixin(gregorian, bundle);
			}, this);
			return gregorian;
		};
	})();
	dojo.date.addCustomFormats("dojo.i18n.calendar", "gregorian");
	dojo.date.addCustomFormats("dojo.i18n.calendar", "gregorianExtras");
	dojo.date.getNames = function (item, type, use, locale) {
		var label;
		var lookup = dojo.date._getGregorianBundle(locale);
		var props = [item, use, type];
		if (use == "standAlone") {
view release on metacpan or search on metacpan
lib/HTML/EditableTable.pm view on Meta::CPAN
       'uniquifierField' => 'part_id',
     },
     {
       'dbfield' => 'addition_date',
       'label' => 'Available From',
       'formElement' => 'calendar',
       'uniquifierField' => 'part_id',
     },
     {
       'dbfield' => 'part_name',
       'label' => 'Part Name',
lib/HTML/EditableTable.pm view on Meta::CPAN
       'uniquifierField' => 'part_id',
     },
     {
       'dbfield' => 'last_order_date',
       'label' => 'Last Ordered',
       'formElement' => 'calendar',
       'uniquifierField' => 'part_id',
     },     
    );
 ######## CGI Controller ##########
lib/HTML/EditableTable.pm view on Meta::CPAN
- uniquification of form element data to support processing of html form submissions of table data
- support for rowspanning
- methods to generate javascript for dynamic addition and remove of rows and commonly needed features such as 'click-to-expand' text display, calendar widget date entry, and sorting
- support for callbacks when data need to be pre-processed prior to display
For the Horizontal table, data are provided to tables in an array-of-hashes (most common case) or a hash-of-hashes.  For the Vertical table, a single hash of data produces a single column of data while a hash-of-hashes supports muliple data columns.
lib/HTML/EditableTable.pm view on Meta::CPAN
    # flag to auto-display javascript if required
    $self->{javascriptDisplayed} = 0;
    # default directory for jsCaldendar when this feature is used
    $self->{calendarDir} = 'jscalendar';
    # table field parameter validation is on by default
    $self->{validateTableFieldKeys} = 1;
    # flag set when stdout is rerouted to avoid multiple acts of this
lib/HTML/EditableTable.pm view on Meta::CPAN
    if (exists $initData->{'noheader'}) { $self->setNoheader(delete $initData->{'noheader'}); }
    if (exists $initData->{'rowspannedEdit'}) { $self->setRowspannedEdit(delete $initData->{'rowspannedEdit'}); }
    if (exists $initData->{'sortOrder'}) { $self->setSortOrder(delete $initData->{'sortOrder'}); }
    if (exists $initData->{'border'}) { $self->setBorder(delete $initData->{'border'}); }
    if (exists $initData->{'suppressUndefinedFields'}) {$self->setSuppressUndefinedFields(delete $initData->{'setSuppressUndefinedFields'}); }
    if (exists $initData->{'calendarDir'}) {$self->setCalendarDir(delete $initData->{'calendarDir'}); }
    if (exists $initData->{'validateTableFieldKeys'}) {$self->setValidateTableFieldKeys(delete $initData->{'validateTableFieldKeys'}); }
    if (exists $initData->{'stringOutput'}) { $self->setStringOutput(delete $initData->{'stringOutput'}); }
    
    my @remainingInitKeys = keys %$initData;
    
lib/HTML/EditableTable.pm view on Meta::CPAN
    $self->{'suppressUndefinedFields'} = $self->checkBool($suppressUndefinedFields);
}
=head2 getCalendarDir (public)
Returns the directory for installation of www.dynarch.com jscalendar-1.0, which is supported in the 'calendar' formElement.  Defaults to 'jscalendar'  if not set.
 
 $self->getCalendarDir();
=cut
sub getCalendarDir {
  my $self = shift @_;
  return $self->{calendarDir};
}
=head2 setCalendarDir (public)
Directory for installation of www.dynarch.com jscalendar-1.0, which is supported in the 'calendar' formElement.  Defaults to 'jscalendar'  if not set.
 
 $self->setCalendarDir('jscal_10');
=cut
sub setCalendarDir {
  my $self = shift @_;
  my $calendarDir = shift @_ || confess "missing calendar directory";
  $self->{calendarDir} = $calendarDir;
}
=head2 htmlDisplay (public)
This method renders the html to STDOUT.  If table requirements are not met, an exception will occur when this method is called.
lib/HTML/EditableTable.pm view on Meta::CPAN
	my $checked = '';
	if ($colSpec->{'checkBehavior'} eq 'checked' ) { $checked = 'checked' }	
	print "<input type=checkbox name='$name' id='$id'  $checked/>";
      }
      
      # dynarch jscalendar-1.0 support
      
      elsif($colSpec->{'formElement'} eq 'calendar') {
	
	# script credit to www.dynarch.com
	
	my $spanText = 'Click here to add date';
	
lib/HTML/EditableTable.pm view on Meta::CPAN
	print hidden(-id=>$name, -name=>$name, -id=>$name, -value=>$cellValue);
	print $cellValue;
	print "</td>";
      }
      # depends on the calendar being loaded in the header
      elsif($colSpec->{'formElement'} eq 'html5Calendar') {
	print "<td $tdFormat>";
	print "<input id=\"$name\" name=\"$name\" type=date value=\"$cellValue\"/>";
	print "</td>";
      }
      # dynarch jscalendar-1.0 support
      elsif($colSpec->{'formElement'} eq 'calendar') {
	# script credit to www.dynarch.com
	my $spanText;
lib/HTML/EditableTable.pm view on Meta::CPAN
=over
=item *
calendar - Implements popup calendar using www.dynarch.com jscalendar 1.0.  Requires this javascript library to be accessible.  See L</"JAVASCRIPT INTEGRATION"> for details.
=item *
checkbox - Implements checkbox html element
lib/HTML/EditableTable.pm view on Meta::CPAN
deleteRowButton - Combine with jsAddRow Table-level feature.  Provides button to delete a table row.
=item *
html5Calendar - Alternative to calendar.  Implements HTML5 'date' input type.  Tested with Opera, which is the only browser supporting this HTML5 input as of this writing. 
=item *
hidden - Implements hidden element type.
lib/HTML/EditableTable.pm view on Meta::CPAN
    'formElement' => 'deleteRowButton'
 }
=head2 Calendar Input Widget
Date entry is very common in the target applications of EditableTable.  A formElement of type 'calendar' is provided by impementing dynarch.com's jscalendar-1.0 widget.  The jscalendar library must be available to the webserver.  The default director...
 Calendar.setup(
   inputField     :    $name,
   ifFormat       :    "%Y-%m-%d",
   displayArea    :    "showD_$name",
   daFormat       :    "%Y-%m-%d",
   cache          :    true
 )
To provide a jscalendar input, use the formElement type 'calendar',
 my $tablField = {
  'dbfield' => 'addition_date',
  'label' => 'Available From',
  'formElement' => 'calendar',
 },
Note also that html5 provides a (much appreciated) date entry input type.  This is supported by using the formElement type 'html5calendar'.  As of this writing only Opera supported this html5 feature, however, so the jscalendar integration will be us...
=head1 SORTING
There are four techniques available to sort HTML::EditableTable::Horizontal tables and one for multi-column HTML::EditableTable::Vertical.  Each is described below along with examples.
view release on metacpan or search on metacpan
t/html/washingtonpost.html view on Meta::CPAN
			<meta name="twitter:site" value="@postpolitics" />
		<link rel="shortcut icon" href="http://www.washingtonpost.com/favicon.ico"/>
	<link rel="next" href="http://www.washingtonpost.com/politics/officials-obama-to-nominate-hagel-for-defense-brennan-for-cia/2013/01/07/22db7d4e-58c2-11e2-beee-6e38f5215402_story_1.html" />
		<link rel="canonical" href="http://www.washingtonpost.com/politics/officials-obama-to-nominate-hagel-for-defense-brennan-for-cia/2013/01/07/22db7d4e-58c2-11e2-beee-6e38f5215402_story.html"/><link rel="stylesheet" type="text/css" href="http://css.wa...
				<link rel="stylesheet" type="text/css" href="http://css.washingtonpost.com/wpost/css/combo?token=20121226144300&inttoken=20121104222800&context=eidos&c=true&m=true&r=/2.0.0/reset.css&r=/2.0.0/structure.css&r=/2.0.0/header.css&r=/2.0.0/footer.css&...
				<link rel="stylesheet" type="text/css" href="http://css.washingtonpost.com/wpost/css/combo?token=20121226144300&inttoken=20121104222800&context=eidos&c=true&m=true&r=/2.0.0/modules.css&r=/jcarousel/jcarousel-skin-hero-slideshow.css&r=/2.0.0/epape...
				<script type="text/javascript">
		
	if(typeof TWP_Debug == 'undefined') {
		var TWP_Debug = {};
		TWP_Debug.initialTime = new Date();
view release on metacpan or search on metacpan
FormEngine/Checks.pm view on Meta::CPAN
=head2 date
Returns I<invalid> if the field value seems to be incompatible to
common date formats or the date doesn't exist in the Gregorian
calendar.  The following formats are allowed:
dd.mm.yyyy dd-mm-yyyy dd/mm/yyyy yyyy-mm-dd yyyy/mm/dd yyyy.mm.dd
The C<check_date> method of the I<Date::Pcalc> package is used to
prove the dates existence.
view release on metacpan or search on metacpan
lib/HTML/FormHandlerX/JQueryRemoteValidator.pm view on Meta::CPAN
=head1 See also
=over 4
=item L<http://www.catalystframework.org/calendar/2012/23>
=item L<http://alittlecode.com/wp-content/uploads/jQuery-Validate-Demo/index.html>
=item L<http://jqueryvalidation.org>
view release on metacpan or search on metacpan
lib/HTML/JQuery.pm view on Meta::CPAN
    $CLASS->jquery_remove($sel);
}
=head2 datepicker
Binds a fancy calendar to a specific element (Usually an input field).
If you pass C<<auto =>>> 1 in the hash then it will append C<dateFormat: 'dd/mm/yy', changeMonth: true, changeYear: true> to 
the datepicker options plus anything you specify.
    datepicker '.datefield' => ( dateFormat => 'mm-dd-yy', currentText => 'Now' );
view release on metacpan or search on metacpan
examples/calendar.pl view on Meta::CPAN
#!/home/ben/software/install/bin/perl
use warnings;
use strict;
use HTML::Make::Calendar 'calendar';
my $out = calendar (year => 2021, month => 1);
print $out->text ();
view release on metacpan or search on metacpan
lib/HTML/Make.pod view on Meta::CPAN
=item L<HTML::Make::Calendar>
Make a calendar in HTML format.
=item L<HTML::Make::Page>
view release on metacpan or search on metacpan
httpdocs/style/Crystal/128/mimetypes/ttf.png
httpdocs/style/Crystal/128/mimetypes/txt.png
httpdocs/style/Crystal/128/mimetypes/txt2.png
httpdocs/style/Crystal/128/mimetypes/umbrellofile.png
httpdocs/style/Crystal/128/mimetypes/unknown.png
httpdocs/style/Crystal/128/mimetypes/vcalendar.png
httpdocs/style/Crystal/128/mimetypes/vcard.png
httpdocs/style/Crystal/128/mimetypes/vectorgfx.png
httpdocs/style/Crystal/128/mimetypes/video.png
httpdocs/style/Crystal/128/mimetypes/widget_doc.png
httpdocs/style/Crystal/128/mimetypes/wordprocessing.png
httpdocs/style/Crystal/22/mimetypes/txt.png
httpdocs/style/Crystal/22/mimetypes/txt2.png
httpdocs/style/Crystal/22/mimetypes/umbrellofile.png
httpdocs/style/Crystal/22/mimetypes/unknown.png
httpdocs/style/Crystal/22/mimetypes/up.png
httpdocs/style/Crystal/22/mimetypes/vcalendar.png
httpdocs/style/Crystal/22/mimetypes/vcard.png
httpdocs/style/Crystal/22/mimetypes/vectorgfx.png
httpdocs/style/Crystal/22/mimetypes/video.png
httpdocs/style/Crystal/22/mimetypes/widget_doc.png
httpdocs/style/Crystal/22/mimetypes/wordprocessing.png
httpdocs/style/Crystal/32/mimetypes/txt.png
httpdocs/style/Crystal/32/mimetypes/txt2.png
httpdocs/style/Crystal/32/mimetypes/umbrellofile.png
httpdocs/style/Crystal/32/mimetypes/unknown.png
httpdocs/style/Crystal/32/mimetypes/up.png
httpdocs/style/Crystal/32/mimetypes/vcalendar.png
httpdocs/style/Crystal/32/mimetypes/vcard.png
httpdocs/style/Crystal/32/mimetypes/vectorgfx.png
httpdocs/style/Crystal/32/mimetypes/video.png
httpdocs/style/Crystal/32/mimetypes/widget_doc.png
httpdocs/style/Crystal/32/mimetypes/wordprocessing.png
httpdocs/style/Crystal/48/mimetypes/txt.png
httpdocs/style/Crystal/48/mimetypes/txt2.png
httpdocs/style/Crystal/48/mimetypes/umbrellofile.png
httpdocs/style/Crystal/48/mimetypes/unknown.png
httpdocs/style/Crystal/48/mimetypes/up.png
httpdocs/style/Crystal/48/mimetypes/vcalendar.png
httpdocs/style/Crystal/48/mimetypes/vcard.png
httpdocs/style/Crystal/48/mimetypes/vectorgfx.png
httpdocs/style/Crystal/48/mimetypes/video.png
httpdocs/style/Crystal/48/mimetypes/widget_doc.png
httpdocs/style/Crystal/48/mimetypes/wordprocessing.png
httpdocs/style/Crystal/64/mimetypes/ttf.png
httpdocs/style/Crystal/64/mimetypes/txt.png
httpdocs/style/Crystal/64/mimetypes/txt2.png
httpdocs/style/Crystal/64/mimetypes/umbrellofile.png
httpdocs/style/Crystal/64/mimetypes/unknown.png
httpdocs/style/Crystal/64/mimetypes/vcalendar.png
httpdocs/style/Crystal/64/mimetypes/vcard.png
httpdocs/style/Crystal/64/mimetypes/vectorgfx.png
httpdocs/style/Crystal/64/mimetypes/video.png
httpdocs/style/Crystal/64/mimetypes/widget_doc.png
httpdocs/style/Crystal/64/mimetypes/wordprocessing.png
view release on metacpan or search on metacpan
sketch/sketch.pl view on Meta::CPAN
use HTML::Microdata;
my $microdata = HTML::Microdata->extract(<<EOF);
<body itemscope itemtype="http://microformats.org/profile/hcalendar#vevent">
 ...
 <h1 itemprop="summary">Bluesday Tuesday: Money Road</h1>
 ...
 <time itemprop="dtstart" datetime="2009-05-05T19:00:00Z">May 5th @ 7pm</time>
 (until <time itemprop="dtend" datetime="2009-05-05T21:00:00Z">9pm</time>)
view release on metacpan or search on metacpan
examples/misc/example5.pl view on Meta::CPAN
		<p class="vcard author"><a href="mailto:eve\@example.com" class="fn url">Eve</a></p>
		<a rel="tag" href="test">Test</a>
		<span class="updated published">2010-03-01T15:00:00+0000</span>
		<a rev="vote-against" href="http://evil.com/">I don't like Evil</a>.
	</div>
	<div class="vcalendar">
		<p class="vevent" id="bar">
			<span class="dtstart">2010-02-03</span>
			<span class="summary">3 Feb 2010</span>
			<span class="rrule">
				<i class="freq">Yearly</i>,
examples/misc/example5.pl view on Meta::CPAN
		<ul class="vtodo-list">
			<li id="a">Do this</li>
			<li id="b">Do that
				<ol>
					<li id="b1">Do that: part 1</li>
					<li id="b2">Do that: part 2 <a href="foo" rel="vcalendar-parent">p</a></li>
				</ol>
			</li>
		</ul>
		<p class="vevent">
			<b class="dtstart">
view release on metacpan or search on metacpan
lib/HTML/Obj2HTML/Plugin/SemanticUIForms.pm view on Meta::CPAN
    delete($obj->{readonly});
    if ($readonly) {
      return HTML::Obj2HTML::gen(commonfield($obj, [ span => $obj->{value} ] ));
    } else {
      return HTML::Obj2HTML::gen(commonfield($obj, [
          div => { class => "ui calendar ".$obj->{class}, _ => [
            div => { class => "ui input left icon", _ => [
              i => { class => "calendar icon", _ => [] },
              input => { type => "text", name => $obj->{name}, placeholder => $obj->{placeholder}, value => $obj->{value} }
            ]}
          ]}
      ]));
    }
lib/HTML/Obj2HTML/Plugin/SemanticUIForms.pm view on Meta::CPAN
    my $obj = shift;
    if (ref $obj ne "HASH") { return ""; }
    return HTML::Obj2HTML::gen([
      div => { class => "ui calendar dateonly", _ => [
        div => { class => "ui input left icon", _ => [
          i => { class => "calendar icon", _ => [] },
          labeledinput => $obj
        ]}
      ]}
    ]);
  }
view release on metacpan or search on metacpan
lib/HTML/Pen.pm view on Meta::CPAN
set, in parent-child relationships.  Each block recurses by calling
C<iterate()> with the common iterator and the name of the child 
block.
L<HTML::Pen::Iterator> illustrates a relatively sophisticated example of a 
4 dimensional data set calendar to be presented as a table.  The iterator data 
consists of an array of weeks; each week consists of an array of days; each 
day consists of an array of times; each time consists of an array of events.  
Each event is represented by an event object that is a blessed hash reference.
With a Pen iterator, the rendering code is a few simple lines of HTML.  The
view release on metacpan or search on metacpan
lib/HTML/QuickTable.pm view on Meta::CPAN
    labels => 'LT'
Would alter the table so that both the first row AND first column
had C<< <th> >> instead of C<< <td> >> elements. This is useful
for creating tables that have two axes, such as calendars.
=item null => $string
If set, then null (undef) fields will be set to that string instead.
This is useful if pulling a bunch of records out of a database and
view release on metacpan or search on metacpan
- Converted HTML tags in lowercase.
- Changed tests to lowercase tags
- Added validation for day/month/year fields
- Added prerequisites for Class::Builder and Tie::IxHash.
- Add Changes file
- Remove a bug in DATE.pm that opens the calendar instead of submit form if you press the "enter" key in whatever form field.
00.01 (2005-09-12)
- First public release
view release on metacpan or search on metacpan
lib/HTML/Widget/Factory.pm view on Meta::CPAN
#pod =item * fixed_args for args that are fixed, like (type => 'checkbox')
#pod
#pod =item * a simple way to say "only include this output if you haven't before"
#pod
#pod This will make it easy to do JavaScript inclusions: if you've already made a
#pod calendar (or whatever) widget, don't bother including this hunk of JS, for
#pod example.
#pod
#pod =item * giving the constructor a data store
#pod
#pod Create a factory that has a CGI.pm object and let it default values to the
lib/HTML/Widget/Factory.pm view on Meta::CPAN
=item * fixed_args for args that are fixed, like (type => 'checkbox')
=item * a simple way to say "only include this output if you haven't before"
This will make it easy to do JavaScript inclusions: if you've already made a
calendar (or whatever) widget, don't bother including this hunk of JS, for
example.
=item * giving the constructor a data store
Create a factory that has a CGI.pm object and let it default values to the
view release on metacpan or search on metacpan
lib/HTML/Widget/Plugin/Calendar.pm view on Meta::CPAN
use strict;
use warnings;
package HTML::Widget::Plugin::Calendar;
# ABSTRACT: simple construction of jscalendar inputs
$HTML::Widget::Plugin::Calendar::VERSION = '0.022';
use parent qw(HTML::Widget::Plugin Class::Data::Inheritable);
use HTML::Element;
use HTML::TreeBuilder;
use Data::JavaScript::Anon;
#pod =head1 SYNOPSIS
#pod
#pod   $factory->calendar({
#pod     name   => 'date_of_birth',
#pod     format => '%Y-%m-%d',
#pod     value  => $user->date_of_birth,
#pod   });
#pod
#pod =head1 DESCRIPTION
#pod
#pod This module plugs in to HTML::Widget::Factory and provides a calendar widget
#pod using the excellent jscalendar.
#pod
#pod =head1 METHODS
#pod
#pod =head2 C< provided_widgets >
#pod
#pod This plugin provides the following widgets: calendar, calendar_js
#pod
#pod =cut
sub provided_widgets { qw(calendar calendar_js) }
#pod =head2 calendar
#pod
#pod =cut
sub calendar {
  my ($self, $factory, $arg) = @_;
  $arg->{attr}{name} ||= $arg->{attr}{id};
  Carp::croak "you must supply a widget id for calendar"
    unless $arg->{attr}{id};
  $arg->{jscalendar} ||= {};
  $arg->{jscalendar}{showsTime} = 1 if $arg->{time};
  $arg->{format}
    ||= '%Y-%m-%d' . ($arg->{jscalendar}{showsTime} ? ' %H:%M' : '');
  my $widget = HTML::Element->new('input');
  $widget->attr($_ => $arg->{attr}{$_}) for keys %{ $arg->{attr} };
  $widget->attr(value => $arg->{value}) if exists $arg->{value};
lib/HTML/Widget/Plugin/Calendar.pm view on Meta::CPAN
    = sprintf "Calendar.setup(%s);",
      Data::JavaScript::Anon->anon_dump({
        inputField => $widget->attr('id'),
        ifFormat   => $arg->{format},
        ($arg->{no_button} ? () : (button => $button->attr('id'))),
        %{ $arg->{jscalendar} },
      })
    ;
  # we need to make this an HTML::Element literal to avoid escaping the JS
  $js = HTML::Element->new('~literal', text => $js);
  $script->push_content($js);
  return join q{},
    $self->calendar_js($factory, $arg),
    map { $_->as_XML } ($widget, ($arg->{no_button} ? () : $button), $script),
  ;
}
#pod =head2 C< calendar_js >
#pod
#pod This method returns the JavaScript needed to use the calendar.  It will only
#pod return the JavaScript the first time it's called.
#pod
#pod Normally it's called when the calendar widget is used, but it may be called
#pod manually to force the JavaScript to be placed in your document at the location
#pod of your choosing.
#pod
#pod =cut
sub calendar_js {
  my ($self, $factory, $arg) = @_;
  return '' if $factory->{$self}->{output_js}++;
  my $base = $self->calendar_baseurl;
  Carp::croak "calendar_baseurl is not defined" if not defined $base;
  $base =~ s{/\z}{}; # to avoid baseurl//yourface or baseurlyourface
  my $scripts = <<END_HTML;
  <script type="text/javascript" src="$base/calendar.js"></script>
  <script type="text/javascript" src="$base/lang/calendar-en.js"></script>
  <script type="text/javascript" src="$base/calendar-setup.js"></script>
END_HTML
}
#pod =head2 C< calendar_baseurl >
#pod
#pod This method sets or returns the plugin's base URL for the jscalendar files.
#pod This must be set or calendar plugin creation will throw an exception.
#pod
#pod =cut
__PACKAGE__->mk_classdata( qw(calendar_baseurl) );
1;
__END__
lib/HTML/Widget/Plugin/Calendar.pm view on Meta::CPAN
=encoding UTF-8
=head1 NAME
HTML::Widget::Plugin::Calendar - simple construction of jscalendar inputs
=head1 VERSION
version 0.022
=head1 SYNOPSIS
  $factory->calendar({
    name   => 'date_of_birth',
    format => '%Y-%m-%d',
    value  => $user->date_of_birth,
  });
=head1 DESCRIPTION
This module plugs in to HTML::Widget::Factory and provides a calendar widget
using the excellent jscalendar.
=head1 METHODS
=head2 C< provided_widgets >
This plugin provides the following widgets: calendar, calendar_js
=head2 calendar
=head2 C< calendar_js >
This method returns the JavaScript needed to use the calendar.  It will only
return the JavaScript the first time it's called.
Normally it's called when the calendar widget is used, but it may be called
manually to force the JavaScript to be placed in your document at the location
of your choosing.
=head2 C< calendar_baseurl >
This method sets or returns the plugin's base URL for the jscalendar files.
This must be set or calendar plugin creation will throw an exception.
=head1 AUTHOR
Ricardo SIGNES
view release on metacpan or search on metacpan
lib/HTTP/Promise/MIME.pm view on Meta::CPAN
}
sub _data
{
    my $data = <<'EOT';
{"application/vnd.is-xpr":["xpr"],"application/vnd.groove-help":["ghf"],"application/vnd.curl.pcurl":["pcurl"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/x-authorware-map":["aam"],"application/x-texinfo":["texinfo","tex...
EOT
    return( \$data );
}
# NOTE: sub FREEZE is inherited
view release on metacpan or search on metacpan
lib/HTTP/Proxy/Selective.pm view on Meta::CPAN
    msh => "model/mesh",
    mesh => "model/mesh",
    silo => "model/mesh",
    wrl => "model/vrml",
    vrml => "model/vrml",
    ics => "text/calendar",
    icz => "text/calendar",
    css => "text/css",
    csv => "text/csv",
    323 => "text/h323",
    html => "text/html",
    htm => "text/html",
lib/HTTP/Proxy/Selective.pm view on Meta::CPAN
    tk => "text/x-tcl",
    tex => "text/x-tex",
    ltx => "text/x-tex",
    sty => "text/x-tex",
    cls => "text/x-tex",
    vcs => "text/x-vcalendar",
    vcf => "text/x-vcard",
    '3gp' => "video/3gpp",
    dl => "video/dl",
    dif => "video/dv",
    dv => "video/dv",
view release on metacpan or search on metacpan
Word/noun.txt view on Meta::CPAN
cal,cals
calamity,calamities
calcite,calcites
calculation,calculations
calculator,calculators
calendar,calendars
calf,calves
calibration,calibrations
californian,californians
caliper,calipers
call,calls
view release on metacpan or search on metacpan
lib/Hobocamp/Calendar.pm view on Meta::CPAN
}
use v5.10;
use warnings;
# ABSTRACT: calendar widget
use Moose;
with qw(Hobocamp::Role::Widget Hobocamp::Role::Window);
lib/Hobocamp/Calendar.pm view on Meta::CPAN
);
sub run {
    my ($self) = @_;
    my $retcode = Hobocamp::Dialog::dialog_calendar($self->title, $self->prompt, $self->width, $self->height, $self->day, $self->month, $self->year);
    $self->value($self->_get_user_input_result());
    return $retcode;
}
lib/Hobocamp/Calendar.pm view on Meta::CPAN
__END__
=pod
=head1 NAME
Hobocamp::Calendar - calendar widget
=head1 VERSION
version 0.600
view release on metacpan or search on metacpan
share/root/static/yui/build/assets/skins/sam/autocomplete.css
share/root/static/yui/build/assets/skins/sam/bg-h.gif
share/root/static/yui/build/assets/skins/sam/bg-v.gif
share/root/static/yui/build/assets/skins/sam/blankimage.png
share/root/static/yui/build/assets/skins/sam/button.css
share/root/static/yui/build/assets/skins/sam/calendar.css
share/root/static/yui/build/assets/skins/sam/carousel.css
share/root/static/yui/build/assets/skins/sam/colorpicker.css
share/root/static/yui/build/assets/skins/sam/container.css
share/root/static/yui/build/assets/skins/sam/datatable.css
share/root/static/yui/build/assets/skins/sam/desc.gif
share/root/static/yui/build/button/assets/skins/sam/split-button-arrow-hover.png
share/root/static/yui/build/button/assets/skins/sam/split-button-arrow.png
share/root/static/yui/build/button/button-debug.js
share/root/static/yui/build/button/button-min.js
share/root/static/yui/build/button/button.js
share/root/static/yui/build/calendar/assets/calendar-core.css
share/root/static/yui/build/calendar/assets/calendar.css
share/root/static/yui/build/calendar/assets/calgrad.png
share/root/static/yui/build/calendar/assets/callt.gif
share/root/static/yui/build/calendar/assets/calrt.gif
share/root/static/yui/build/calendar/assets/calx.gif
share/root/static/yui/build/calendar/assets/skins/sam/calendar-skin.css
share/root/static/yui/build/calendar/assets/skins/sam/calendar.css
share/root/static/yui/build/calendar/calendar-debug.js
share/root/static/yui/build/calendar/calendar-min.js
share/root/static/yui/build/calendar/calendar.js
share/root/static/yui/build/carousel/assets/ajax-loader.gif
share/root/static/yui/build/carousel/assets/carousel-core.css
share/root/static/yui/build/carousel/assets/skins/sam/ajax-loader.gif
share/root/static/yui/build/carousel/assets/skins/sam/carousel-skin.css
share/root/static/yui/build/carousel/assets/skins/sam/carousel.css