X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Fshare%2Fhtml%2FSearch%2FSchedule.html;h=34ba142bdf0e24345c56cb210dfe97d7027fda05;hb=2cb16bcb5d43d9194ca1eaf95fe5e59ec9076b76;hp=bbbfffdc930907d055d9dc16fa81a85e7f226613;hpb=3741fe34d3a6d1daa216ee460e9fd3c79c7e480e;p=freeside.git
diff --git a/rt/share/html/Search/Schedule.html b/rt/share/html/Search/Schedule.html
index bbbfffdc9..34ba142bd 100644
--- a/rt/share/html/Search/Schedule.html
+++ b/rt/share/html/Search/Schedule.html
@@ -5,17 +5,95 @@
%}
+
+
+
+
<& /Search/Calendar.html,
@_,
- Embed => 'Schedule.html',
- DayDisplay => 'Schedule',
- DayDisplayArgs => [ username => $ARGS{username} ],
+ Query => "( Status = 'new' OR Status = 'open' OR Status = 'stalled')
+ AND ( Type = 'reminder' OR 'Type' = 'ticket' )",
+ #XXX and we have the magic custom field
+ slots => scalar(@usernames),
+ Embed => 'Schedule.html',
+ DimPast => 1,
+ Display => 'Schedule',
+ DisplayArgs => [ username => \@usernames,
+ LengthMin => $LengthMin,
+ #oops, more freeside abstraction-leaking
+ custnum => $ARGS{custnum},
+ pkgnum => $ARGS{pkgnum},
+ ],
&>
+<%ONCE>
+
+my $timestep = RT->Config->Get('CalendarWeeklySizeMin') || 30; #1/2h
+
+%ONCE>
<%init>
+
my @files = ();
#if ( ! $initialized ) {
push @files, map "overlibmws$_", ( '', qw( _iframe _draggable _crossframe ) );
push @files, map { "${_}contentmws" } qw( iframe ajax );
#%}
+
+my @usernames = ();
+if ( ref($ARGS{username}) ) {
+ @usernames = @{ $ARGS{username} };
+} elsif ( $ARGS{username} ) {
+ @usernames = ( $ARGS{username} );
+} else {
+ #XXX shouldn't even get offered the link in the first place rather than perl
+ # barf, but this is better than erroring out later or empty @username
+ die "Can't schedule an appointment - no employees are configured as installers";
+}
+
+( my $LengthMin = $ARGS{LengthMin} ) =~ /^\d+$/ or die 'non-numeric LengthMin';
+
+my $cells = int($LengthMin / $timestep);
+$cells++ if $LengthMin % $timestep;
+
%init>