Index: openacs-4/packages/calendar/www/mini-calendar.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/calendar/www/mini-calendar.tcl,v
diff -u -r1.8 -r1.9
--- openacs-4/packages/calendar/www/mini-calendar.tcl 16 Oct 2003 13:20:06 -0000 1.8
+++ openacs-4/packages/calendar/www/mini-calendar.tcl 14 Feb 2004 18:40:55 -0000 1.9
@@ -22,14 +22,15 @@
}
# Create row with existing views
-multirow create views name text active_p
+multirow create views name text active_p url
foreach viewname {list day week month} {
if { [string equal $viewname $view] } {
set active_p t
} else {
set active_p f
}
- multirow append views [lang::util::localize $message_key_array($viewname)] $viewname $active_p
+ multirow append views [lang::util::localize $message_key_array($viewname)] $viewname $active_p \
+ "[export_vars -base $base_url {date {view $viewname}}]$page_num"
}
set list_of_vars [list]
@@ -56,12 +57,12 @@
set curr_year [clock format $now -format "%Y"]
set prev_year [clock format [clock scan "1 year ago" -base $now] -format "%Y-%m-%d"]
set next_year [clock format [clock scan "1 year" -base $now] -format "%Y-%m-%d"]
- set prev_year_url ""
- set next_year_url ""
+ set prev_year_url "$base_url?view=$view&date=[ad_urlencode $prev_year]$page_num"
+ set next_year_url "$base_url?view=$view&date=[ad_urlencode $next_year]$page_num"
set now [clock scan $date]
- multirow create months name current_month_p new_row_p target_date
+ multirow create months name current_month_p new_row_p target_date url
for {set i 0} {$i < 12} {incr i} {
@@ -84,15 +85,16 @@
[clock scan "[expr $i-$curr_month_idx] month" -base $now] -format "%Y-%m-%d"]
set encoded_target_date [ad_urlencode $target_date]
}
- multirow append months $month $current_month_p $new_row_p $encoded_target_date
+ multirow append months $month $current_month_p $new_row_p $encoded_target_date \
+ "[export_vars -base $base_url {{date $target_date} view}]$page_num"
}
} else {
set curr_month [lindex $months_list $curr_month_idx ]
set prev_month [clock format [clock scan "1 month ago" -base $now] -format "%Y-%m-%d"]
set next_month [clock format [clock scan "1 month" -base $now] -format "%Y-%m-%d"]
- set prev_month_url ""
- set next_month_url ""
+ set prev_month_url "$base_url?view=$view&date=[ad_urlencode $prev_month]$page_num"
+ set next_month_url "$base_url?view=$view&date=[ad_urlencode $next_month]$page_num"
set first_day_of_week [lc_get firstdayofweek]
set week_days [lc_get abday]
@@ -102,29 +104,29 @@
}
- multirow create days day_number ansi_date beginning_of_week_p end_of_week_p today_p greyed_p
+ multirow create days day_number ansi_date beginning_of_week_p end_of_week_p today_p active_p url
set day_of_week 1
- # Calculate number of greyed days
- set greyed_days_before_month [expr [expr [dt_first_day_of_month $year $month]] -1 ]
+ # Calculate number of active days
+ set active_days_before_month [expr [expr [dt_first_day_of_month $year $month]] -1 ]
# Adjust for i18n
- set greyed_days_before_month [expr [expr $greyed_days_before_month + 7 - $first_day_of_week] % 7]
+ set active_days_before_month [expr [expr $active_days_before_month + 7 - $first_day_of_week] % 7]
- set calendar_starts_with_julian_date [expr $first_julian_date_of_month - $greyed_days_before_month]
- set day_number [expr $days_in_last_month - $greyed_days_before_month + 1]
+ set calendar_starts_with_julian_date [expr $first_julian_date_of_month - $active_days_before_month]
+ set day_number [expr $days_in_last_month - $active_days_before_month + 1]
for {set julian_date $calendar_starts_with_julian_date} {$julian_date <= [expr $last_julian_date + 7]} {incr julian_date} {
if {$julian_date > $last_julian_date_in_month && [string equal $end_of_week_p t] } {
break
}
set today_p f
- set greyed_p f
+ set active_p t
if {$julian_date < $first_julian_date_of_month} {
- set greyed_p t
+ set active_p f
} elseif {$julian_date > $last_julian_date_in_month} {
- set greyed_p t
+ set active_p f
}
set ansi_date [dt_julian_to_ansi $julian_date]
@@ -150,7 +152,9 @@
} else {
set end_of_week_p f
}
- multirow append days $day_number [ad_urlencode $ansi_date] $beginning_of_week_p $end_of_week_p $today_p $greyed_p
+
+ multirow append days $day_number [ad_urlencode $ansi_date] $beginning_of_week_p $end_of_week_p $today_p $active_p \
+ "[export_vars -base $base_url {{date $ansi_date} view}]$page_num"
incr day_number
incr day_of_week
}