The View Period User Interface need to have the ability for the user to select the year for both the start and end. For example, consider trying to run a report for December 1 2000 through January 30 2001. It can not be done currently.
Here is a set of context diffs that fix the problem.
- Marc <marc@NoSpAm.destek.net
diff -rc baseline/globals.inc calendar/globals.inc *** baseline/globals.inc Wed Mar 15 22:27:40 2000 --- calendar/globals.inc Tue May 16 07:27:37 2000 *************** *** 547,552 **** --- 547,561 ---- } echo "</select></td>"; echo "<tr><td valign = top><font color = BLUE>Start Day</td><td valign = top><input type = text name = \&quot;startday\&quot; value = 1 size = 4></td>\n"; + echo "<tr><td valign = top><font color = BLUE>Start Year</td><td valign = top><select name = \&quot;startyear\&quot;>\n"; + for ($x = 2000; $x <= 2005; $x++) { + if ($year == $x) { + echo "<option value = \&quot;$x\&quot; selected>$x\n"; + } else { + echo "<option value = \&quot;$x\&quot;>$x\n"; + } + } + echo "</select></td>"; echo "<tr><td valign = top><font color = BLUE>End Month</td><td valign = top><select name = \&quot;endmonth\&quot;>\n"; for ($x = 1; $x <= 12; $x++) { *************** *** 557,564 **** } echo "</select></td>"; echo "<tr><td valign = top><font color = BLUE>End Day</td><td valign = top><input type = text name = \&quot;endday\&quot; value = 1 size = 4></td>\n"; ! echo "<input type = hidden name = \&quot;year\&quot; value = \&quot;2000\&quot;>\n"; ! echo "</select>"; echo "<tr><td colspan = 2 valign = top><center><input type = submit value = \&quot;Go\&quot;></center></td>\n"; echo "</form>\n</table>"; } --- 566,580 ---- } echo "</select></td>"; echo "<tr><td valign = top><font color = BLUE>End Day</td><td valign = top><input type = text name = \&quot;endday\&quot; value = 1 size = 4></td>\n"; ! echo "<tr><td valign = top><font color = BLUE>End Year</td><td valign = top><select name = \&quot;endyear\&quot;>\n"; ! for ($x = 2000; $x <= 2005; $x++) { ! if ($year == $x) { ! echo "<option value = \&quot;$x\&quot; selected>$x\n"; ! } else { ! echo "<option value = \&quot;$x\&quot;>$x\n"; ! } ! } ! echo "</select></td>"; echo "<tr><td colspan = 2 valign = top><center><input type = submit value = \&quot;Go\&quot;></center></td>\n"; echo "</form>\n</table>"; } diff -rc baseline/index.php calendar/index.php *** baseline/index.php Wed Mar 15 21:22:46 2000 --- calendar/index.php Tue May 16 09:50:33 2000 *************** *** 384,419 **** } elseif (isset($VIEWPERIOD)) { if ($VIEWPERIOD == 1) { $sid = session_id(); ! print_header("myPHPCalendar: View Period of $monthnames[$startmonth] $startday to $monthnames[$endmonth] $endday"); echo "<table border = 1><tr bgcolor = TEAL><td width = 40>Time</td>\n"; echo "<td width = 400>Title</td>\n"; ! for ($x = $startmonth; $x <= $endmonth; $x++) { ! if ($startmonth < $endmonth && $x < $endmonth && $x > $startmonth) { ! $startday1 = 1; ! $max = date("t", mktime(0, 0, 0, $x, 1, $year));! $endday1 = $max; ! } elseif ($startmonth < $endmonth && $x == $startmonth) { ! $startday1 = $startday; ! $max = date("t", mktime(0, 0, 0, $x, 1, $year));! $endday1 = $max; ! } elseif ($startmonth < $endmonth && $x == $endmonth) { ! $startday1 = 1; ! $endday1 = $endday; ! } else { ! $startday1 = $startday; ! $endday1 = $endday; ! } ! for ($d = $startday1; $d <= $endday1; $d++) { $date[mon] = $x; $date[year] = $year; $date[month] = $monthnames[$x]; $date[mday] = $d; print_period_day($date); } } echo "</table>\n"; $date[mon] = $startmonth; ! $date[year] = $year; $date[month] = $monthnames[$startmonth]; $date[mday] = $startday; } --- 384,412 ---- } elseif (isset($VIEWPERIOD)) { if ($VIEWPERIOD == 1) { $sid = session_id(); ! print_header("myPHPCalendar: View Period of $monthnames[$startmonth] $startday $startyear to $monthnames[$endmonth] $endday $endyear"); echo "<table border = 1><tr bgcolor = TEAL><td width = 40>Time</td>\n"; echo "<td width = 400>Title</td>\n"; ! for ($year = $startyear; $year <= $endyear; $year++) { ! $sm = ($year > $startyear) ? 1 : $startmonth; ! $em = ($year < $endyear) ? 12 : $endmonth; ! for ($x = $sm; $x <= $em; $x++) { ! $sd = ($x == $startmonth && $year == $startyear) ! ? $startday : 1; ! $ed = ($x == $endmonth && $year == $endyear) ! ? $endday : date("t",mktime(0,0,0,$x,1,$year)); ! for ($d = $sd; $d <= $ed; $d++) { $date[mon] = $x; $date[year] = $year; $date[month] = $monthnames[$x]; $date[mday] = $d; print_period_day($date); } + } } echo "</table>\n"; $date[mon] = $startmonth; ! $date[year] = $startyear; $date[month] = $monthnames[$startmonth]; $date[mday] = $startday; }
Log in to post a comment.
Here is a set of context diffs that fix the problem.
- Marc <marc@NoSpAm.destek.net
diff -rc baseline/globals.inc calendar/globals.inc
*** baseline/globals.inc Wed Mar 15 22:27:40 2000
--- calendar/globals.inc Tue May 16 07:27:37 2000
***************
*** 547,552 ****
--- 547,561 ----
}
echo "</select></td>";
echo "<tr><td valign = top><font color = BLUE>Start Day</td><td valign = top><input type = text name = \&quot;startday\&quot; value = 1 size = 4></td>\n";
+ echo "<tr><td valign = top><font color = BLUE>Start Year</td><td valign
= top><select name = \&quot;startyear\&quot;>\n";
+ for ($x = 2000; $x <= 2005; $x++) {
+ if ($year == $x) {
+ echo "<option value = \&quot;$x\&quot; selected>$x\n";
+ } else {
+ echo "<option value = \&quot;$x\&quot;>$x\n";
+ }
+ }
+ echo "</select></td>";
echo "<tr><td valign = top><font color = BLUE>End Month</td><td valign = top><select name = \&quot;endmonth\&quot;>\n";
for ($x = 1; $x <= 12; $x++) {
***************
*** 557,564 ****
}
echo "</select></td>";
echo "<tr><td valign = top><font color = BLUE>End Day</td><td valign = top><input type = text name = \&quot;endday\&quot; value = 1 size = 4></td>\n";
! echo "<input type = hidden name = \&quot;year\&quot; value = \&quot;2000\&quot;>\n";
! echo "</select>";
echo "<tr><td colspan = 2 valign = top><center><input type = submit value = \&quot;Go\&quot;></center></td>\n";
echo "</form>\n</table>";
}
--- 566,580 ----
}
echo "</select></td>";
echo "<tr><td valign = top><font color = BLUE>End Day</td><td valign = top><input type = text name = \&quot;endday\&quot; value = 1 size = 4></td>\n";
! echo "<tr><td valign = top><font color = BLUE>End Year</td><td valign =
top><select name = \&quot;endyear\&quot;>\n";
! for ($x = 2000; $x <= 2005; $x++) {
! if ($year == $x) {
! echo "<option value = \&quot;$x\&quot; selected>$x\n";
! } else {
! echo "<option value = \&quot;$x\&quot;>$x\n";
! }
! }
! echo "</select></td>";
echo "<tr><td colspan = 2 valign = top><center><input type = submit value = \&quot;Go\&quot;></center></td>\n";
echo "</form>\n</table>";
}
diff -rc baseline/index.php calendar/index.php
*** baseline/index.php Wed Mar 15 21:22:46 2000
--- calendar/index.php Tue May 16 09:50:33 2000
***************
*** 384,419 ****
} elseif (isset($VIEWPERIOD)) {
if ($VIEWPERIOD == 1) {
$sid = session_id();
! print_header("myPHPCalendar: View Period of $monthnames[$startmonth] $startday to $monthnames[$endmonth] $endday");
echo "<table border = 1><tr bgcolor = TEAL><td width = 40>Time</td>\n";
echo "<td width = 400>Title</td>\n";
! for ($x = $startmonth; $x <= $endmonth; $x++) {
! if ($startmonth < $endmonth && $x < $endmonth && $x > $startmonth) {
! $startday1 = 1;
! $max = date("t", mktime(0, 0, 0, $x, 1, $year));! $endday1 = $max;
! } elseif ($startmonth < $endmonth && $x == $startmonth)
{
! $startday1 = $startday;
! $max = date("t", mktime(0, 0, 0, $x, 1, $year));! $endday1 = $max;
! } elseif ($startmonth < $endmonth && $x == $endmonth) {
! $startday1 = 1;
! $endday1 = $endday;
! } else {
! $startday1 = $startday;
! $endday1 = $endday;
! }
! for ($d = $startday1; $d <= $endday1; $d++) {
$date[mon] = $x;
$date[year] = $year;
$date[month] = $monthnames[$x];
$date[mday] = $d;
print_period_day($date);
}
}
echo "</table>\n";
$date[mon] = $startmonth;
! $date[year] = $year;
$date[month] = $monthnames[$startmonth];
$date[mday] = $startday;
}
--- 384,412 ----
} elseif (isset($VIEWPERIOD)) {
if ($VIEWPERIOD == 1) {
$sid = session_id();
! print_header("myPHPCalendar: View Period of $monthnames[$startmonth] $startday $startyear to $monthnames[$endmonth] $endday $endyear");
echo "<table border = 1><tr bgcolor = TEAL><td width = 40>Time</td>\n";
echo "<td width = 400>Title</td>\n";
! for ($year = $startyear; $year <= $endyear; $year++) {
! $sm = ($year > $startyear) ? 1 : $startmonth;
! $em = ($year < $endyear) ? 12 : $endmonth;
! for ($x = $sm; $x <= $em; $x++) {
! $sd = ($x == $startmonth && $year == $startyear)
! ? $startday : 1;
! $ed = ($x == $endmonth && $year == $endyear)
! ? $endday : date("t",mktime(0,0,0,$x,1,$year));
! for ($d = $sd; $d <= $ed; $d++) {
$date[mon] = $x;
$date[year] = $year;
$date[month] = $monthnames[$x];
$date[mday] = $d;
print_period_day($date);
}
+ }
}
echo "</table>\n";
$date[mon] = $startmonth;
! $date[year] = $startyear;
$date[month] = $monthnames[$startmonth];
$date[mday] = $startday;
}