import rt 3.2.2
[freeside.git] / rt / html / index.html
index 928efb8..8c64b5a 100644 (file)
@@ -1,8 +1,40 @@
-%# BEGIN LICENSE BLOCK
+<!--
+% $m->out('--'.'>');
+% if (0) {
+%# -->
+<html><head>
+<META HTTP-EQUIV=Refresh CONTENT="3; URL=http://bestpractical.com/rt/rt-broken-install.html">
+<title>Almost there!</title></head>
+<body>
+
+<img src="http://www.bestpractical.com/images/unconfigured-rtlogo.jpg">
+<br><br>
+<h1>You're almost there!</h1>
+You haven't yet configured your webserver to run RT.
+
+You appear to have installed RT's web interface correctly, but haven't yet configured your web
+server to "run" the RT server which powers the web interface.
+
+The next step is to edit your webserver's configuration file to instruct it to use
+RT's <b>mod_perl</b>, <b>fastcgi</b> or <b>speedycgi</b> handler.
+
+If you need commercial support, please contact us at sales@bestpractical.com.
+
+
+<!--
+% }
+
+%# {{{ BEGIN BPS TAGGED BLOCK
 %# 
-%# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
+%# COPYRIGHT:
+%#  
+%# This software is Copyright (c) 1996-2004 Best Practical Solutions, LLC 
+%#                                          <jesse@bestpractical.com>
 %# 
-%# (Except where explictly superceded by other copyright notices)
+%# (Except where explicitly superseded by other copyright notices)
+%# 
+%# 
+%# LICENSE:
 %# 
 %# This work is made available to you under the terms of Version 2 of
 %# the GNU General Public License. A copy of that license should have
 %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 %# General Public License for more details.
 %# 
-%# Unless otherwise specified, all modifications, corrections or
-%# extensions to this work which alter its source code become the
-%# property of Best Practical Solutions, LLC when submitted for
-%# inclusion in the work.
+%# You should have received a copy of the GNU General Public License
+%# along with this program; if not, write to the Free Software
+%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+%# 
+%# 
+%# CONTRIBUTION SUBMISSION POLICY:
 %# 
+%# (The following paragraph is not intended to limit the rights granted
+%# to you to modify and distribute this software under the terms of
+%# the GNU General Public License and is only of importance to you if
+%# you choose to contribute your changes and enhancements to the
+%# community by submitting them to Best Practical Solutions, LLC.)
 %# 
-%# END LICENSE BLOCK
+%# By intentionally submitting any modifications, corrections or
+%# derivatives to this work, or any other work intended for use with
+%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
+%# you are the copyright holder for those contributions and you grant
+%# Best Practical Solutions,  LLC a nonexclusive, worldwide, irrevocable,
+%# royalty-free, perpetual, license to use, copy, create derivative
+%# works based on those contributions, and sublicense and distribute
+%# those contributions and any derivatives thereof.
+%# 
+%# }}} END BPS TAGGED BLOCK
 <& /Elements/Header, Title=>loc("RT at a glance"), Refresh => $session{'home_refresh_interval'} &>
 <& /Elements/Tabs, 
     current_toptab => '', 
     Title=>loc("RT at a glance") &>
+<& /Elements/ListActions, actions => \@results &>    
 <TABLE BORDER=0 WIDTH=100%>
 <TR VALIGN=TOP>
-<TD WIDTH=70%>
+<TD WIDTH=70% class="boxcontainer">
 <& /Elements/MyTickets &>
 <BR>
 <& /Elements/MyRequests &>
+<BR>
+<& /Elements/QuickCreate &>
 </TD>
-<TD>
+<TD class="boxcontainer">
 <& /Elements/Quicksearch &>
 <BR>
-<form method=get action="index.html">
+<form method=get action="<%$RT::WebPath%>/index.html">
 <& /Elements/Refresh, Name => 'HomeRefreshInterval', Default => $session {'home_refresh_interval'} &>
 <div align=right><input type=submit value="<&|/l&>Go!</&>"></div>
 </form>
 </TR>
 </TABLE>
 <%init>
+
+my @results;
+
+if ($ARGS{'QuickCreate'} ) {
+    my $ticket = RT::Ticket->new($session{'CurrentUser'});
+    my ($tid, $trans, $tmsg) = $ticket->Create(Queue => $ARGS{'Queue'},
+                    Owner => $ARGS{'Owner'},
+                    Subject => $ARGS{'Subject'});
+
+
+    push (@results, $tmsg);
+}
+
+
 if ( $ARGS{'q'} ) {
     my $query = $ARGS{'q'};
 
-    if ( $query =~ m/^\s*(\d+)\s*$/ ) {
+   if ( $query =~ m/^\s*(\d+)\s*$/ ) {
         $m->comp("/Ticket/Display.html" , id=> $1);
         return();
     }
 
+    if ($m->comp('/Elements/Callback', _CallbackName => 'SearchPreFilter', 
+                query => $query, %ARGS)) {
+       return();
+    }
+
     $session{'tickets'} = RT::Tickets->new( $session{'CurrentUser'} );
 
     if ( $query =~ m/\@/ ) {
-        $session{'tickets'}->LimitWatcher( VALUE    => $query,
-                                            TYPE => 'Requestor',
-                                             OPERATOR => '=', );
-        $m->comp("/Search/Listing.html");
+        $m->comp("/Search/Results.html", Query => "Requestor = '$query'");
 
         return();
     }
@@ -67,24 +134,15 @@ if ( $ARGS{'q'} ) {
     # only.
     #
 
-    $session{'tickets'}->LimitStatus( VALUE    => $_,
-                                      OPERATOR => '=', ) for qw(open new);
-
-
+    my $status = "Status = 'new' OR Status = 'open'";
 
     my $queue = RT::Queue->new( $session{'CurrentUser'} );
     if ( $queue->Load($query) && $queue->Id ) {
-        $session{'tickets'}->LimitQueue( VALUE    => $queue->Id,
-                                         OPERATOR => '=', );
-
-
-        $m->comp("/Search/Listing.html");
+        $m->comp("/Search/Results.html", Query => "Queue = '" . $queue->Id . "' AND ($status)");
         return();
     }
-    $session{'tickets'}->LimitSubject( VALUE    =>  $query, 
-                                       OPERATOR => 'LIKE' );
-        $m->comp("/Search/Listing.html");
 
+    $m->comp("/Search/Results.html", Query => "Subject LIKE '$query' AND ($status)");
     return();
 
 }
@@ -94,3 +152,5 @@ if ($ARGS{'HomeRefreshInterval'}) {
 }
 
 </%init>
+
+%# --></body></html>