#!/usr/bin/perl -w
# -*- perl -*-
use P4CGI ;
use strict ;
#
#################################################################
# CONFIGURATION INFORMATION
# All config info should be in the config file
#
#################################################################
#
# P4 view job
# View a job
#
#################################################################
# Get file spec argument
my $job = P4CGI::cgi()->param("JOB") ;
&P4CGI::bail("No job specified") unless defined $job ;
# Create title
print "", &P4CGI::start_page("Job $job","") ;
my @fields ;
my %fieldData ;
@fields = &P4CGI::p4readform("job -o $job",\%fieldData);
# Check that job exist
if($fieldData{"Description"} =~ /<enter description here>/) {
&P4CGI::signalError("Job $job does not exist") ;
}
# Fix user field
if(exists $fieldData{"User"}) {
$fieldData{"User"} = &P4CGI::ahref(-url => "userView.cgi",
"USER=$fieldData{User}",
$fieldData{"User"}) ;
}
# Fix description field
if(exists $fieldData{"Description"}) {
my $d = &P4CGI::fixSpecChar($fieldData{"Description"}) ;
$d =~ s/\n/<br>/g ;
$fieldData{"Description"} = "<tt>$d</tt>" ;
}
my @fixes ;
&P4CGI::p4call(\@fixes,"fixes -j $job") ;
if(@fixes > 0) {
push @fields,"Fixed by" ;
$fieldData{"Fixed by"} = join("<br>\n",
map {/change (\d+) on (\S+) by (\S+)\@(\S+)/ ;
my ($ch,$date,$user,$client) = ($1,$2,$3,$4) ;
$ch = &P4CGI::ahref(-url => "changeView.cgi",
"CH=$ch",
$ch) ;
$user = &P4CGI::ahref(-url => "userView.cgi",
"USER=$user",
$user) ;
$client = &P4CGI::ahref(-url => "clientView.cgi",
"CLIENT=$client",
$client) ;
"Change $ch on $date by $user\@$client" ; } @fixes ) ;
}
print
"",
&P4CGI::start_table("") ;
my $f ;
foreach $f (@fields) {
print &P4CGI::table_row({-align => "right",
-valign => "top",
-type => "th",
-text => $f},
$fieldData{$f}) ;
} ;
print &P4CGI::end_table("") ;
print &P4CGI::end_page();
#
# That's all folks
#
# |
Change |
User |
Description |
Committed |
|
#1
|
1985 |
Sean Nolan |
my initial branch |
|
|
//guest/perforce_software/utils/p4db/P4DB_2.01/jobView.cgi |
#1
|
1884 |
rmg |
Update to the current (2.01) P4DB. |
|
|