From 4fdfdc48d2bdf968665d8f008b3401058a8d4c7f Mon Sep 17 00:00:00 2001 From: "zach%zachlipton.com" Date: Tue, 1 Aug 2006 20:50:15 +0000 Subject: [PATCH] Land the mod_perl branch. git-svn-id: svn://10.0.0.236/trunk@206326 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/webtools/litmus/Litmus.pm | 74 +++++++++++++------ mozilla/webtools/litmus/Litmus/Auth.pm | 12 ++- mozilla/webtools/litmus/Litmus/DB/Subgroup.pm | 2 +- mozilla/webtools/litmus/Litmus/DB/Testcase.pm | 4 +- .../webtools/litmus/Litmus/DB/Testresult.pm | 2 +- mozilla/webtools/litmus/Litmus/DBI.pm | 35 +++++++-- mozilla/webtools/litmus/Litmus/Error.pm | 2 - mozilla/webtools/litmus/Litmus/Template.pm | 10 +-- mozilla/webtools/litmus/Litmus/XML.pm | 6 ++ mozilla/webtools/litmus/advanced_search.cgi | 12 +-- mozilla/webtools/litmus/common_results.cgi | 4 +- mozilla/webtools/litmus/edit_users.cgi | 1 + mozilla/webtools/litmus/enter_test.cgi | 1 + mozilla/webtools/litmus/index.cgi | 5 +- mozilla/webtools/litmus/json.cgi | 1 + mozilla/webtools/litmus/login.cgi | 4 +- mozilla/webtools/litmus/logout.cgi | 5 +- mozilla/webtools/litmus/manage_categories.cgi | 3 +- mozilla/webtools/litmus/manage_subgroups.cgi | 1 + mozilla/webtools/litmus/manage_testcases.cgi | 1 + mozilla/webtools/litmus/manage_testgroups.cgi | 1 + mozilla/webtools/litmus/preview.cgi | 1 + mozilla/webtools/litmus/process_test.cgi | 3 +- mozilla/webtools/litmus/run_tests.cgi | 8 +- mozilla/webtools/litmus/runtests.pl | 2 +- mozilla/webtools/litmus/search_results.cgi | 3 +- mozilla/webtools/litmus/show_test.cgi | 3 +- mozilla/webtools/litmus/simpletest.cgi | 9 ++- mozilla/webtools/litmus/single_result.cgi | 1 + mozilla/webtools/litmus/stats.cgi | 1 + .../en/default/reporting/test_results.tmpl | 2 +- mozilla/webtools/litmus/testlist.cgi | 1 + .../testrunner_migration/clone_testgroup.pl | 2 +- .../import_testplan_from_testrunner.pl | 2 +- .../update_litmus_from_testrunner.pl | 2 +- 35 files changed, 154 insertions(+), 72 deletions(-) diff --git a/mozilla/webtools/litmus/Litmus.pm b/mozilla/webtools/litmus/Litmus.pm index 663fe2283ab..49f80ffaff5 100755 --- a/mozilla/webtools/litmus/Litmus.pm +++ b/mozilla/webtools/litmus/Litmus.pm @@ -25,6 +25,7 @@ # Contributor(s): # Chris Cooper # Zach Lipton + # Max Kanat-Alexander # # ***** END LICENSE BLOCK ***** @@ -38,40 +39,71 @@ use strict; use Litmus::Template; use Litmus::Config; +use Litmus::Error; use Litmus::Auth; use Litmus::CGI; -BEGIN { +our $_request_cache = {}; + +# each cgi _MUST_ call Litmus->init() prior to doing anything else. +# init() ensures that the installation has not been disabled, deals with pending +# login requests, and other essential tasks. +sub init() { if ($Litmus::Config::disabled) { my $c = new CGI(); print $c->header(); print "Litmus has been shutdown by the administrator. Please try again later."; exit; } -} - -# Global Template object -my $_template; -sub template() { - my $class = shift; - $_template ||= Litmus::Template->create(); - return $_template; -} - -# Global CGI object -my $_cgi; -sub cgi() { - my $class = shift; - $_cgi ||= Litmus::CGI->new(); - return $_cgi; -} - -# hook to handle a login in progress for any CGI script: -BEGIN { + # check for pending logins: my $c = cgi(); if ($c->param("login_type")) { Litmus::Auth::processLoginForm(); } } +# Global Template object +sub template() { + my $class = shift; + request_cache()->{template} ||= Litmus::Template->create(); + return request_cache()->{template}; +} + +# Global CGI object +sub cgi() { + my $class = shift; + request_cache()->{cgi} ||= new Litmus::CGI(); + return request_cache()->{cgi}; +} + +sub getCurrentUser { + return Litmus::Auth::getCurrentUser(); +} + +# cache of global variables for a single request only +# use me like: Litmus->request_cache->{'var'} = 'foo'; +# entries here are guarenteed to get flushed when the request ends, +# even when running under mod_perl +# from Bugzilla.pm: +sub request_cache { + if ($ENV{MOD_PERL}) { + my $request = Apache->request(); + my $cache = $request->pnotes(); + # Sometimes mod_perl doesn't properly call DESTROY on all + # the objects in pnotes(), so we register a cleanup handler + # to make sure that this happens. + if (!$cache->{cleanup_registered}) { + $request->push_handlers(PerlCleanupHandler => sub { + my $r = shift; + foreach my $key (keys %{$r->pnotes}) { + delete $r->pnotes->{$key}; + } + }); + $cache->{cleanup_registered} = 1; + } + return $cache; + } + return $_request_cache; +} + 1; diff --git a/mozilla/webtools/litmus/Litmus/Auth.pm b/mozilla/webtools/litmus/Litmus/Auth.pm index 3a598291715..5a9fb535ddc 100755 --- a/mozilla/webtools/litmus/Litmus/Auth.pm +++ b/mozilla/webtools/litmus/Litmus/Auth.pm @@ -39,12 +39,10 @@ use strict; ## header so that any required cookies can be sent. require Exporter; -use Litmus; -use Litmus::DB::User; use Litmus::Error; -use Litmus::Template; use Time::Piece; use Time::Seconds; +use Litmus::DB::User; use CGI; @@ -54,8 +52,6 @@ our @EXPORT = qw(); my $logincookiename = $Litmus::Config::user_cookiename; my $cookie_expire_days = 7; -my $curSession; - # Given a username and password, validate the login. Returns the # Litmus::DB::User object associated with the username if the login # is sucuessful. Returns false otherwise. @@ -139,7 +135,9 @@ sub getCurrentSession() { # we're actually processing the login form right now, so the cookie hasn't # been sent yet... - if ($curSession) { return $curSession } + if (Litmus->request_cache->{'curSession'}) { + return Litmus->request_cache->{'curSession'}; + } my $sessionCookie = $c->cookie($logincookiename); if (! $sessionCookie) { @@ -383,7 +381,7 @@ sub makeSession { sessioncookie => $sessioncookie, expires => $expires}); - $curSession = $session; + Litmus->request_cache->{'curSession'} = $session; return $session; } diff --git a/mozilla/webtools/litmus/Litmus/DB/Subgroup.pm b/mozilla/webtools/litmus/Litmus/DB/Subgroup.pm index 0bd898c675a..57e48f031ae 100755 --- a/mozilla/webtools/litmus/Litmus/DB/Subgroup.pm +++ b/mozilla/webtools/litmus/Litmus/DB/Subgroup.pm @@ -36,7 +36,7 @@ use strict; use base 'Litmus::DBI'; use Time::Piece::MySQL; -use Litmus::DB::Testresult; +#use Litmus::DB::Testresult; Litmus::DB::Subgroup->table('subgroups'); diff --git a/mozilla/webtools/litmus/Litmus/DB/Testcase.pm b/mozilla/webtools/litmus/Litmus/DB/Testcase.pm index 3851395ceee..f0c61fe099f 100755 --- a/mozilla/webtools/litmus/Litmus/DB/Testcase.pm +++ b/mozilla/webtools/litmus/Litmus/DB/Testcase.pm @@ -36,9 +36,9 @@ use strict; use base 'Litmus::DBI'; use Date::Manip; -use Litmus::DB::Testresult; +#use Litmus::DB::Testresult; use Memoize; -use Litmus::Error; +#use Litmus::Error; our $default_relevance_threshold = 1.0; our $default_match_limit = 25; diff --git a/mozilla/webtools/litmus/Litmus/DB/Testresult.pm b/mozilla/webtools/litmus/Litmus/DB/Testresult.pm index 4fbcebef7fb..57163f41a31 100755 --- a/mozilla/webtools/litmus/Litmus/DB/Testresult.pm +++ b/mozilla/webtools/litmus/Litmus/DB/Testresult.pm @@ -83,7 +83,7 @@ Litmus::DB::Testresult->set_sql(DefaultTestResults => qq{ SELECT tr.testresult_id,tr.testcase_id,t.summary,tr.submission_time AS created,p.name AS platform_name,pr.name as product_name,trsl.name AS result_status,trsl.class_name result_status_class,b.name AS branch_name,tg.name AS test_group_name, tr.locale_abbrev, u.email FROM test_results tr, testcases t, platforms p, opsyses o, branches b, products pr, test_result_status_lookup trsl, testgroups tg, subgroups sg, users u, testcase_subgroups tcsg, subgroup_testgroups sgtg WHERE tr.testcase_id=t.testcase_id AND tr.opsys_id=o.opsys_id AND o.platform_id=p.platform_id AND tr.branch_id=b.branch_id AND b.product_id=pr.product_id AND tr.result_status_id=trsl.result_status_id AND tcsg.testcase_id=tr.testcase_id AND tcsg.subgroup_id=sg.subgroup_id AND sg.subgroup_id=sgtg.subgroup_id AND sgtg.testgroup_id=tg.testgroup_id AND tr.user_id=u.user_id AND tr.valid=1 - ORDER BY tr.submission_time DESC + ORDER BY tr.submission_time DESC, t.testcase_id DESC LIMIT $_num_results_default }); diff --git a/mozilla/webtools/litmus/Litmus/DBI.pm b/mozilla/webtools/litmus/Litmus/DBI.pm index 621d82d00cc..01c3993e64e 100755 --- a/mozilla/webtools/litmus/Litmus/DBI.pm +++ b/mozilla/webtools/litmus/Litmus/DBI.pm @@ -32,20 +32,21 @@ package Litmus::DBI; +require Apache::DBI; use strict; use warnings; use Litmus::Config; -use Litmus::Error; use Memoize; use base 'Class::DBI::mysql'; -my $dsn = "dbi:mysql:$Litmus::Config::db_name:$Litmus::Config::db_host"; +our $dsn = "dbi:mysql:database=$Litmus::Config::db_name;host=$Litmus::Config::db_host;port=3306"; + + our %column_aliases; -Litmus::DBI->set_db('Main', - $dsn, +Litmus::DBI->connection( $dsn, $Litmus::Config::db_user, $Litmus::Config::db_pass, {AutoCommit=>1} @@ -90,7 +91,7 @@ sub AUTOLOAD { my $col = $self->find_column($name); if (!$col) { - internalEror("tried to call Litmus::DBI method $name which does not exist"); + internalError("tried to call Litmus::DBI method $name which does not exist"); } return $self->$col(@args); @@ -101,5 +102,29 @@ sub _croak { internalError($message); return; } + +# Get Class::DBI's default dbh options +my $db_options = { __PACKAGE__->_default_attributes }; + +__PACKAGE__->_remember_handle('Main'); # so dbi_commit works + +# override default to avoid using Ima::DBI closure +sub db_Main { + my $dbh; + if ( $ENV{'MOD_PERL'} and !$Apache::ServerStarting ) { + $dbh = Apache->request()->pnotes('dbh'); + } + if ( !$dbh ) { + $dbh = DBI->connect( + $dsn, $Litmus::Config::db_user, + $Litmus::Config::db_pass, $db_options + ); + if ( $ENV{'MOD_PERL'} and !$Apache::ServerStarting ) { + Apache->request()->pnotes( 'dbh', $dbh ); + } + } + return $dbh; +} + 1; diff --git a/mozilla/webtools/litmus/Litmus/Error.pm b/mozilla/webtools/litmus/Litmus/Error.pm index 8c6a9863b79..e6cdd62d2dd 100755 --- a/mozilla/webtools/litmus/Litmus/Error.pm +++ b/mozilla/webtools/litmus/Litmus/Error.pm @@ -36,8 +36,6 @@ package Litmus::Error; use strict; -use Litmus; - our @ISA = qw(Exporter); @Litmus::Error::EXPORT = qw( basicError diff --git a/mozilla/webtools/litmus/Litmus/Template.pm b/mozilla/webtools/litmus/Litmus/Template.pm index 5bc8f394f20..af6ad0b7a2c 100755 --- a/mozilla/webtools/litmus/Litmus/Template.pm +++ b/mozilla/webtools/litmus/Litmus/Template.pm @@ -64,7 +64,7 @@ sub getTemplateIncludePath () { } # Constants: -my %constants; +my %constants = {}; $constants{litmus_version} = $Litmus::Config::version; # html tag stripper: @@ -189,17 +189,17 @@ sub create { }); } -# override the process() method to sneak defaultemail into all templates' +# override the process() method to sneak defaultemail into all template # variable spaces sub process { my ($self, $template, $vars, $outstream, @opts) = @_; my %vars = %$vars; $vars{defaultemail} = $vars{defaultemail} ? $vars{defaultemail} : - Litmus::Auth::getCurrentUser(); + Litmus->getCurrentUser(); - $vars{show_admin} = Litmus::Auth::getCurrentUser() ? - Litmus::Auth::getCurrentUser()->is_admin() : 0; + $vars{show_admin} = Litmus->getCurrentUser() ? + Litmus->getCurrentUser()->is_admin() : 0; $self->SUPER::process($template, \%vars, $outstream, @opts); } diff --git a/mozilla/webtools/litmus/Litmus/XML.pm b/mozilla/webtools/litmus/Litmus/XML.pm index 109d01c91f9..95bf4a0db2a 100755 --- a/mozilla/webtools/litmus/Litmus/XML.pm +++ b/mozilla/webtools/litmus/Litmus/XML.pm @@ -31,6 +31,10 @@ package Litmus::XML; +# Litmus XML Interface +# For further details, see the web services specification at +# http://wiki.mozilla.org/Litmus:Web_Services + use strict; use XML::XPath; @@ -41,6 +45,8 @@ use Litmus::UserAgentDetect; use Date::Manip; use CGI::Carp qw(set_message fatalsToBrowser); + +# if we die for some reason, make sure we give a fatal error per spec BEGIN { set_message(sub { print "Fatal error: internal server error\n"; diff --git a/mozilla/webtools/litmus/advanced_search.cgi b/mozilla/webtools/litmus/advanced_search.cgi index 6915ff2cc76..a516144ce96 100755 --- a/mozilla/webtools/litmus/advanced_search.cgi +++ b/mozilla/webtools/litmus/advanced_search.cgi @@ -38,17 +38,18 @@ use Litmus::FormWidget; use CGI; use Time::Piece::MySQL; +Litmus->init(); my $c = Litmus->cgi(); print $c->header(); -use diagnostics; + # Hash refs for maintaining state in the search form. -my $defaults; -my $order_bys; +my $defaults = undef; +my $order_bys = undef; -our $MAX_SORT_FIELDS = 10; -our $MAX_SEARCH_FIELDS = 10; +my $MAX_SORT_FIELDS = 10; +my $MAX_SEARCH_FIELDS = 10; my $criteria = "Custom
"; my $results; @@ -58,6 +59,7 @@ my $limit; my $where_criteria = ""; my $order_by_criteria = ""; my $limit_criteria = ""; + if ($c->param) { foreach my $param ($c->param) { diff --git a/mozilla/webtools/litmus/common_results.cgi b/mozilla/webtools/litmus/common_results.cgi index e70a2e65938..eef9a169124 100755 --- a/mozilla/webtools/litmus/common_results.cgi +++ b/mozilla/webtools/litmus/common_results.cgi @@ -35,12 +35,12 @@ use Litmus::Auth; use Litmus::Error; use Litmus::DB::Testresult; use Litmus::FormWidget; -use diagnostics; + use CGI; use Time::Piece::MySQL; - +Litmus->init(); my $c = Litmus->cgi(); print $c->header(); diff --git a/mozilla/webtools/litmus/edit_users.cgi b/mozilla/webtools/litmus/edit_users.cgi index a7accbf7458..826b8d934a4 100755 --- a/mozilla/webtools/litmus/edit_users.cgi +++ b/mozilla/webtools/litmus/edit_users.cgi @@ -32,6 +32,7 @@ use Litmus::Utils; use CGI; use Time::Piece::MySQL; +Litmus->init(); my $c = Litmus->cgi(); # obviously, you need to be an admin to edit users... diff --git a/mozilla/webtools/litmus/enter_test.cgi b/mozilla/webtools/litmus/enter_test.cgi index ab4f0669adb..47450973f70 100755 --- a/mozilla/webtools/litmus/enter_test.cgi +++ b/mozilla/webtools/litmus/enter_test.cgi @@ -33,6 +33,7 @@ use CGI; use Time::Piece::MySQL; use Date::Manip; +Litmus->init(); my $c = Litmus->cgi(); # for the moment, you must be an admin to enter tests: diff --git a/mozilla/webtools/litmus/index.cgi b/mozilla/webtools/litmus/index.cgi index 34381350f3a..9217005d23b 100755 --- a/mozilla/webtools/litmus/index.cgi +++ b/mozilla/webtools/litmus/index.cgi @@ -39,10 +39,11 @@ use Litmus::Error; use Litmus::DB::Testresult; use Litmus::FormWidget; -use CGI; use Time::Piece::MySQL; -use diagnostics; + + +Litmus->init(); my ($criteria,$results) = Litmus::DB::Testresult->getDefaultTestResults; diff --git a/mozilla/webtools/litmus/json.cgi b/mozilla/webtools/litmus/json.cgi index fe5c4970337..d37b0c50297 100755 --- a/mozilla/webtools/litmus/json.cgi +++ b/mozilla/webtools/litmus/json.cgi @@ -38,6 +38,7 @@ use JSON; use CGI; use Date::Manip; +Litmus->init(); my $c = Litmus->cgi(); print $c->header('text/plain'); diff --git a/mozilla/webtools/litmus/login.cgi b/mozilla/webtools/litmus/login.cgi index 0876eecb8c2..9e166e17b36 100755 --- a/mozilla/webtools/litmus/login.cgi +++ b/mozilla/webtools/litmus/login.cgi @@ -33,8 +33,10 @@ $|++; use Litmus; use Litmus::Auth; +Litmus->init(); + use CGI; -use diagnostics; + my $title = "Log in"; diff --git a/mozilla/webtools/litmus/logout.cgi b/mozilla/webtools/litmus/logout.cgi index 510fd2fc87d..d27eae091f9 100755 --- a/mozilla/webtools/litmus/logout.cgi +++ b/mozilla/webtools/litmus/logout.cgi @@ -33,8 +33,9 @@ $|++; use Litmus; use Litmus::Auth; -use CGI; -use diagnostics; + + +Litmus->init(); my $title = "Log out"; diff --git a/mozilla/webtools/litmus/manage_categories.cgi b/mozilla/webtools/litmus/manage_categories.cgi index 21cd529cf6a..414dde75807 100755 --- a/mozilla/webtools/litmus/manage_categories.cgi +++ b/mozilla/webtools/litmus/manage_categories.cgi @@ -42,8 +42,9 @@ use Litmus::FormWidget; use CGI; use Time::Piece::MySQL; -use diagnostics; + +Litmus->init(); Litmus::Auth::requireAdmin("edit_categories.cgi"); my $c = Litmus->cgi(); diff --git a/mozilla/webtools/litmus/manage_subgroups.cgi b/mozilla/webtools/litmus/manage_subgroups.cgi index 8c2121639e4..7f773c6880f 100755 --- a/mozilla/webtools/litmus/manage_subgroups.cgi +++ b/mozilla/webtools/litmus/manage_subgroups.cgi @@ -40,6 +40,7 @@ use CGI; use Date::Manip; use JSON; +Litmus->init(); my $c = Litmus->cgi(); my $vars; diff --git a/mozilla/webtools/litmus/manage_testcases.cgi b/mozilla/webtools/litmus/manage_testcases.cgi index 3a9a6e4ce0c..692b3dcd85b 100755 --- a/mozilla/webtools/litmus/manage_testcases.cgi +++ b/mozilla/webtools/litmus/manage_testcases.cgi @@ -39,6 +39,7 @@ use Litmus::Utils; use CGI; use Date::Manip; +Litmus->init(); my $c = Litmus->cgi(); my $vars; diff --git a/mozilla/webtools/litmus/manage_testgroups.cgi b/mozilla/webtools/litmus/manage_testgroups.cgi index 715697eb990..ccc7505f07b 100755 --- a/mozilla/webtools/litmus/manage_testgroups.cgi +++ b/mozilla/webtools/litmus/manage_testgroups.cgi @@ -40,6 +40,7 @@ use CGI; use Date::Manip; use JSON; +Litmus->init(); my $c = Litmus->cgi(); my $vars; diff --git a/mozilla/webtools/litmus/preview.cgi b/mozilla/webtools/litmus/preview.cgi index 9a98ec8b0b8..e0fb43c3a4a 100755 --- a/mozilla/webtools/litmus/preview.cgi +++ b/mozilla/webtools/litmus/preview.cgi @@ -36,6 +36,7 @@ use Litmus::Error; use CGI; use Date::Manip; +Litmus->init(); my $c = Litmus->cgi(); print $c->header; diff --git a/mozilla/webtools/litmus/process_test.cgi b/mozilla/webtools/litmus/process_test.cgi index bd6beda6b02..682164a1dae 100755 --- a/mozilla/webtools/litmus/process_test.cgi +++ b/mozilla/webtools/litmus/process_test.cgi @@ -41,8 +41,9 @@ use Litmus::XML; use CGI; use Date::Manip; -use diagnostics; + +Litmus->init(); my $c = Litmus->cgi(); if ($c->param('data')) { diff --git a/mozilla/webtools/litmus/run_tests.cgi b/mozilla/webtools/litmus/run_tests.cgi index 8fdbb561262..99b15c13717 100755 --- a/mozilla/webtools/litmus/run_tests.cgi +++ b/mozilla/webtools/litmus/run_tests.cgi @@ -30,7 +30,7 @@ use strict; use Time::HiRes qw( gettimeofday tv_interval ); -my $t0 = [gettimeofday]; +our $t0 = [gettimeofday]; use Litmus; use Litmus::Error; @@ -42,9 +42,11 @@ use Litmus::Auth; use CGI; use Time::Piece::MySQL; -my $title = "Run Tests"; +Litmus->init(); -my $c = Litmus->cgi(); +our $title = "Run Tests"; + +our $c = Litmus->cgi(); if ($c->param("group")) { # display the test screen page_test(); diff --git a/mozilla/webtools/litmus/runtests.pl b/mozilla/webtools/litmus/runtests.pl index 9a367ae62f1..25d4da02f96 100755 --- a/mozilla/webtools/litmus/runtests.pl +++ b/mozilla/webtools/litmus/runtests.pl @@ -22,7 +22,7 @@ # # Make it harder for us to do dangerous things in Perl. -use diagnostics; + use strict; use Test::Harness qw(&runtests $verbose); diff --git a/mozilla/webtools/litmus/search_results.cgi b/mozilla/webtools/litmus/search_results.cgi index 19609b421b8..55b096b68cf 100755 --- a/mozilla/webtools/litmus/search_results.cgi +++ b/mozilla/webtools/litmus/search_results.cgi @@ -38,10 +38,11 @@ use Litmus::FormWidget; use CGI; use Time::Piece::MySQL; +Litmus->init(); my $c = Litmus->cgi(); print $c->header(); -use diagnostics; + my $criteria = "Custom
"; my $results; diff --git a/mozilla/webtools/litmus/show_test.cgi b/mozilla/webtools/litmus/show_test.cgi index 4e463065330..c44dbdb6878 100755 --- a/mozilla/webtools/litmus/show_test.cgi +++ b/mozilla/webtools/litmus/show_test.cgi @@ -35,8 +35,9 @@ use CGI; use Date::Manip; use Time::Piece::MySQL; -use diagnostics; + +Litmus->init(); my $c = Litmus->cgi(); print $c->header(); diff --git a/mozilla/webtools/litmus/simpletest.cgi b/mozilla/webtools/litmus/simpletest.cgi index 8f5b5490f7a..fda42428aea 100755 --- a/mozilla/webtools/litmus/simpletest.cgi +++ b/mozilla/webtools/litmus/simpletest.cgi @@ -39,13 +39,14 @@ use Litmus::Auth; use CGI; use Time::Piece::MySQL; -my $c = Litmus->cgi(); +Litmus->init(); +our $c = Litmus->cgi(); # how old of a build do we want to allow? default is 10 days -my $maxbuildage = 10; +our $maxbuildage = 10; # what branch do we accept? default is the trunk or the 1.8 branch -my $branch = Litmus::DB::Branch->retrieve(1); -my $branch2 = Litmus::DB::Branch->retrieve(2); +our $branch = Litmus::DB::Branch->retrieve(1); +our $branch2 = Litmus::DB::Branch->retrieve(2); showTest(); diff --git a/mozilla/webtools/litmus/single_result.cgi b/mozilla/webtools/litmus/single_result.cgi index cc226c647e1..8c8389f9ed0 100755 --- a/mozilla/webtools/litmus/single_result.cgi +++ b/mozilla/webtools/litmus/single_result.cgi @@ -38,6 +38,7 @@ use Litmus::DB::Resultbug; use CGI; use Date::Manip; +Litmus->init(); my $c = Litmus->cgi(); print $c->header(); diff --git a/mozilla/webtools/litmus/stats.cgi b/mozilla/webtools/litmus/stats.cgi index de350b51f95..6e872199d55 100755 --- a/mozilla/webtools/litmus/stats.cgi +++ b/mozilla/webtools/litmus/stats.cgi @@ -37,6 +37,7 @@ use Litmus::DB::Product; use CGI; use Time::Piece::MySQL; +Litmus->init(); my $c = Litmus->cgi(); print $c->header(); diff --git a/mozilla/webtools/litmus/templates/en/default/reporting/test_results.tmpl b/mozilla/webtools/litmus/templates/en/default/reporting/test_results.tmpl index cdddea82589..902faab1439 100644 --- a/mozilla/webtools/litmus/templates/en/default/reporting/test_results.tmpl +++ b/mozilla/webtools/litmus/templates/en/default/reporting/test_results.tmpl @@ -29,7 +29,7 @@ [% IF results %] - [% # ZLL 2006-06-19: Timezones are removed from the time being + [% # ZLL 2006-06-19: Timezones are removed for now # to work around a crash in Time::Piece's strftime on some platforms # (including my own) and to work around formatting nastyness when # it doesn't crash. Add  %Z to the end of the strftime string diff --git a/mozilla/webtools/litmus/testlist.cgi b/mozilla/webtools/litmus/testlist.cgi index 4982ef2b859..aaf8760552e 100755 --- a/mozilla/webtools/litmus/testlist.cgi +++ b/mozilla/webtools/litmus/testlist.cgi @@ -37,6 +37,7 @@ use Litmus::DB::Product; use CGI; use Time::Piece::MySQL; +Litmus->init(); my $c = Litmus->cgi(); print $c->header(); diff --git a/mozilla/webtools/litmus/testrunner_migration/clone_testgroup.pl b/mozilla/webtools/litmus/testrunner_migration/clone_testgroup.pl index 21b856f0223..06d81d2b169 100755 --- a/mozilla/webtools/litmus/testrunner_migration/clone_testgroup.pl +++ b/mozilla/webtools/litmus/testrunner_migration/clone_testgroup.pl @@ -37,7 +37,7 @@ use Litmus::Config; use DBI (); use Data::Dumper; -use diagnostics; + use vars qw( $litmus_dbh diff --git a/mozilla/webtools/litmus/testrunner_migration/import_testplan_from_testrunner.pl b/mozilla/webtools/litmus/testrunner_migration/import_testplan_from_testrunner.pl index 260394a4cc7..07c699f4912 100755 --- a/mozilla/webtools/litmus/testrunner_migration/import_testplan_from_testrunner.pl +++ b/mozilla/webtools/litmus/testrunner_migration/import_testplan_from_testrunner.pl @@ -37,7 +37,7 @@ use Litmus::Config; use DBI (); use Data::Dumper; -use diagnostics; + use vars qw( $tr_dbh diff --git a/mozilla/webtools/litmus/testrunner_migration/update_litmus_from_testrunner.pl b/mozilla/webtools/litmus/testrunner_migration/update_litmus_from_testrunner.pl index b1ccd8ae337..d3ef54940d9 100755 --- a/mozilla/webtools/litmus/testrunner_migration/update_litmus_from_testrunner.pl +++ b/mozilla/webtools/litmus/testrunner_migration/update_litmus_from_testrunner.pl @@ -37,7 +37,7 @@ use Litmus::Config; use DBI (); use Data::Dumper; -use diagnostics; + use vars qw( $tr_dbh