#!!!PERL!! -w # # $Header: /home/cvs/cvsroot/freeside/rt/bin/Attic/rt,v 1.1 2002-08-12 06:17:07 ivan Exp $ # RT is (c) 1996-2001 Jesse Vincent use strict; use Carp; use Getopt::Long; use lib "!!RT_LIB_PATH!!"; use lib "!!RT_ETC_PATH!!"; use RT::Interface::CLI qw(CleanEnv LoadConfig DBConnect GetCurrentUser GetMessageContent); #Clean out all the nasties from the environment CleanEnv(); #Load etc/config.pm and drop privs LoadConfig(); #Connect to the database and get RT::SystemUser and RT::Nobody loaded DBConnect(); #Drop setgid permissions RT::DropSetGIDPermissions(); #Get the current user all loaded my $CurrentUser = GetCurrentUser(); unless ($CurrentUser->Id) { print "No RT user found. Please consult your RT administrator.\n"; exit(1); } # {{{ commandline flags my ( @id, @limit_queue, @limit_status, @limit_owner, @limit_priority, @limit_final_priority, @limit_requestor, @limit_subject, @limit_body, @limit_created, @limit_resolved, @limit_lastupdated, @limit_dependson, @limit_dependedonby, @limit_memberof, @limit_hasmember, @limit_refersto, @limit_referredtoby, @limit_keyword, @limit_due, @limit_starts, @limit_started, $limit_first, $limit_rows, $history, $summary, $create, @requestors, @cc, @admincc, $status, $subject, $owner, $steal, $queue, $time_left, $priority, $final_priority, $due, $starts, $started, $contacted, $comment, $reply, $source, $edit, @dependson, @memberof, @refersto, $mergeinto, @keywords, $time_taken, $verbose, $debug, $help, $version); # }}} # Set defaults for cli args $edit = 1; # Assume the user wants to edit replies and comments # unless they specify --noedit # {{{ args my @args =("id=s" => \@id, "limit-queue=s" => \@limit_queue, "limit-status=s" => \@limit_status, "limit-owner=s" => \@limit_owner, "limit-priority=s" => \@limit_priority, "limit-final-priority=s" => \@limit_final_priority, "limit-requestor=s" => \@limit_requestor, "limit-subject=s" => \@limit_subject, "limit-body=s", \@limit_body, "limit-created=s" => \@limit_created, "limit-due=s" => \@limit_due, "limit-last-updated=s" => \@limit_lastupdated, "limit-keyword=s" => \@limit_keyword, "limit-member-of=s" => \@limit_memberof, "limit-has-member=s" => \@limit_hasmember, "limit-depended-on-by=s" => \@limit_dependedonby, "limit-depends-on=s" => \@limit_dependson, "limit-referred-to-by=s" => \@limit_referredtoby, "limit-refers-to=s" => \@limit_refersto, "limit-starts=s" => \@limit_starts, "limit-started=s" => \@limit_started, "limit-first=i" => \$limit_first, "limit-rows=i" => \$limit_rows, "history|show" => \$history, "summary:s" => \$summary, "create" => \$create, "keywords=s" => \@keywords, "requestor|requestors=s" => \@requestors, "cc=s" => \@cc, "admincc=s" => \@admincc, "status=s" => \$status, "subject=s" => \$subject, "owner=s" => \$owner, "steal" => \$steal, "queue=s" => \$queue, "priority=i" => \$priority, "final-priority=i" => \$final_priority, "due=s" => \$due, "starts=s" => \$starts, "started=s" => \$started, "contacted=s" => \$contacted, "comment", \$comment, "reply|respond", \$reply, "source=s" => \$source, "edit!" => \$edit, "depends-on=s" => \@dependson, "member-of=s" => \@memberof, "merge-into=s" => \$mergeinto, "refers-to=s" => \@refersto, "time-left=i" => \$time_left, "time-taken=i" => \$time_taken, "verbose+" => \$verbose, "debug" => \$debug, "version" => \$version, "help|h|usage" => \$help ); # }}} GetOptions(@args); print join(':',@keywords); # {{{ If they want it, print a usage message and get out if ($help) { print < --limit-status=[!](new|open|stalled|resolved) --limit-owner=[!] --limit-priority=[starts][-][ends] --limit-final-priority=[starts][-][ends] starts is less than ends --limit-requestor=[!]| --limit-subject=[!] --limit-body=[!] --limit-keyword=[!]