зеркало из https://github.com/mozilla/gecko-dev.git
b=321265
- add user to result display and allow searching/limiting by user email (admin only) Other: - search results now validate as XHTML transitional
This commit is contained in:
Родитель
683322a8ad
Коммит
6bd65a6d5f
|
@ -81,10 +81,10 @@ Litmus::DB::Testresult->has_many(bugs => "Litmus::DB::Resultbug", {order_by => '
|
||||||
Litmus::DB::Testresult->autoinflate(dates => 'Time::Piece');
|
Litmus::DB::Testresult->autoinflate(dates => 'Time::Piece');
|
||||||
|
|
||||||
Litmus::DB::Testresult->set_sql(DefaultTestResults => qq{
|
Litmus::DB::Testresult->set_sql(DefaultTestResults => qq{
|
||||||
SELECT tr.testresult_id,tr.test_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
|
SELECT tr.testresult_id,tr.test_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, tests t, platforms p, opsyses o, branches b, products
|
FROM test_results tr, tests t, platforms p, opsyses o, branches b, products
|
||||||
pr, test_result_status_lookup trsl, test_groups tg, subgroups sg
|
pr, test_result_status_lookup trsl, test_groups tg, subgroups sg, users u
|
||||||
WHERE tr.test_id=t.test_id AND tr.platform_id=p.platform_id AND tr.opsys_id=o.opsys_id AND tr.branch_id=b.branch_id AND b.product_id=pr.product_id AND tr.result_id=trsl.result_status_id AND t.subgroup_id=sg.subgroup_id AND sg.testgroup_id=tg.testgroup_id
|
WHERE tr.test_id=t.test_id AND tr.platform_id=p.platform_id AND tr.opsys_id=o.opsys_id AND tr.branch_id=b.branch_id AND b.product_id=pr.product_id AND tr.result_id=trsl.result_status_id AND t.subgroup_id=sg.subgroup_id AND sg.testgroup_id=tg.testgroup_id AND tr.user_id=u.user_id
|
||||||
ORDER BY tr.submission_time DESC
|
ORDER BY tr.submission_time DESC
|
||||||
LIMIT $_num_results_default
|
LIMIT $_num_results_default
|
||||||
});
|
});
|
||||||
|
@ -165,7 +165,7 @@ sub istrusted {
|
||||||
sub getDefaultTestResults($) {
|
sub getDefaultTestResults($) {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my @rows = $self->search_DefaultTestResults();
|
my @rows = $self->search_DefaultTestResults();
|
||||||
my $criteria = "Default<br/>Ordered by Created<br>Limit to $_num_results_default results";
|
my $criteria = "Default<br/>Ordered by Created<br/>Limit to $_num_results_default results";
|
||||||
return $criteria, \@rows;
|
return $criteria, \@rows;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -176,11 +176,11 @@ sub getDefaultTestResults($) {
|
||||||
sub getTestResults($\@\@$) {
|
sub getTestResults($\@\@$) {
|
||||||
my ($self,$where_criteria,$order_by_criteria,$limit_value) = @_;
|
my ($self,$where_criteria,$order_by_criteria,$limit_value) = @_;
|
||||||
|
|
||||||
my $select = 'SELECT tr.testresult_id,tr.test_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 AS result_status_class,b.name AS branch_name,tg.name AS test_group_name, tr.locale_abbrev';
|
my $select = 'SELECT tr.testresult_id,tr.test_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 AS result_status_class,b.name AS branch_name,tg.name AS test_group_name, tr.locale_abbrev, u.email';
|
||||||
|
|
||||||
my $from = 'FROM test_results tr, tests t, platforms p, opsyses o, branches b, products pr, test_result_status_lookup trsl, test_groups tg, subgroups sg';
|
my $from = 'FROM test_results tr, tests t, platforms p, opsyses o, branches b, products pr, test_result_status_lookup trsl, test_groups tg, subgroups sg, users u';
|
||||||
|
|
||||||
my $where = 'WHERE tr.test_id=t.test_id AND tr.platform_id=p.platform_id AND tr.opsys_id=o.opsys_id AND tr.branch_id=b.branch_id AND b.product_id=pr.product_id AND tr.result_id=trsl.result_status_id AND t.subgroup_id=sg.subgroup_id AND sg.testgroup_id=tg.testgroup_id';
|
my $where = 'WHERE tr.test_id=t.test_id AND tr.platform_id=p.platform_id AND tr.opsys_id=o.opsys_id AND tr.branch_id=b.branch_id AND b.product_id=pr.product_id AND tr.result_id=trsl.result_status_id AND t.subgroup_id=sg.subgroup_id AND sg.testgroup_id=tg.testgroup_id AND tr.user_id=u.user_id';
|
||||||
|
|
||||||
my $limit = 'LIMIT ';
|
my $limit = 'LIMIT ';
|
||||||
|
|
||||||
|
@ -199,6 +199,8 @@ sub getTestResults($\@\@$) {
|
||||||
$where .= " AND tr.test_id='" . $criterion->{'value'} . "'";
|
$where .= " AND tr.test_id='" . $criterion->{'value'} . "'";
|
||||||
} elsif ($criterion->{'field'} eq 'summary') {
|
} elsif ($criterion->{'field'} eq 'summary') {
|
||||||
$where .= ' AND t.summary LIKE \'%%' . $criterion->{'value'} . '%%\'';
|
$where .= ' AND t.summary LIKE \'%%' . $criterion->{'value'} . '%%\'';
|
||||||
|
} elsif ($criterion->{'field'} eq 'email') {
|
||||||
|
$where .= ' AND u.email LIKE \'%%' . $criterion->{'value'} . '%%\'';
|
||||||
} elsif ($criterion->{'field'} eq 'result_status') {
|
} elsif ($criterion->{'field'} eq 'result_status') {
|
||||||
$where .= " AND trsl.class_name='" . $criterion->{'value'} . "'";
|
$where .= " AND trsl.class_name='" . $criterion->{'value'} . "'";
|
||||||
} elsif ($criterion->{'field'} eq 'trusted_only') {
|
} elsif ($criterion->{'field'} eq 'trusted_only') {
|
||||||
|
@ -259,6 +261,8 @@ sub getTestResults($\@\@$) {
|
||||||
$order_by .= "b.name $criterion->{'direction'},";
|
$order_by .= "b.name $criterion->{'direction'},";
|
||||||
} elsif ($criterion->{'field'} eq 'locale') {
|
} elsif ($criterion->{'field'} eq 'locale') {
|
||||||
$order_by .= "tr.locale_abbrev $criterion->{'direction'},";
|
$order_by .= "tr.locale_abbrev $criterion->{'direction'},";
|
||||||
|
} elsif ($criterion->{'field'} eq 'email') {
|
||||||
|
$order_by .= "u.email $criterion->{'direction'},";
|
||||||
} else {
|
} else {
|
||||||
# Skip unknown field
|
# Skip unknown field
|
||||||
}
|
}
|
||||||
|
|
|
@ -140,13 +140,6 @@ sub getBranches()
|
||||||
return _getValues($sql);
|
return _getValues($sql);
|
||||||
}
|
}
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
sub getLocales()
|
|
||||||
{
|
|
||||||
my $sql = "SELECT DISTINCT(abbrev) FROM locale_lookup ORDER BY abbrev";
|
|
||||||
return _getValues($sql);
|
|
||||||
}
|
|
||||||
|
|
||||||
#########################################################################
|
#########################################################################
|
||||||
sub getOpsyses()
|
sub getOpsyses()
|
||||||
{
|
{
|
||||||
|
@ -198,6 +191,15 @@ sub getLocales()
|
||||||
return \@locales;
|
return \@locales;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
sub getUsers()
|
||||||
|
{
|
||||||
|
my @users = Litmus::DB::User->retrieve_all(
|
||||||
|
{ order_by => 'email' }
|
||||||
|
);
|
||||||
|
return \@users;
|
||||||
|
}
|
||||||
|
|
||||||
#########################################################################
|
#########################################################################
|
||||||
sub getFields()
|
sub getFields()
|
||||||
{
|
{
|
||||||
|
@ -219,7 +221,7 @@ sub getFields()
|
||||||
{ name => 'subgroup',
|
{ name => 'subgroup',
|
||||||
display_string => "Subgroup", },
|
display_string => "Subgroup", },
|
||||||
{ name => 'email',
|
{ name => 'email',
|
||||||
display_string => "Submitter", },
|
display_string => "Submitted By", },
|
||||||
{ name => 'summary',
|
{ name => 'summary',
|
||||||
display_string => "Summary", },
|
display_string => "Summary", },
|
||||||
{ name => 'test_group',
|
{ name => 'test_group',
|
||||||
|
@ -260,24 +262,26 @@ sub getMatchCriteria()
|
||||||
sub getSortFields()
|
sub getSortFields()
|
||||||
{
|
{
|
||||||
my @sort_fields = (
|
my @sort_fields = (
|
||||||
|
{ name => "branch",
|
||||||
|
display_string => "Branch"},
|
||||||
{ name => "created",
|
{ name => "created",
|
||||||
display_string => "Date"},
|
display_string => "Date"},
|
||||||
{ name => "product",
|
{ name => "locale",
|
||||||
display_string => "Product"},
|
display_string => "Locale"},
|
||||||
{ name => "platform",
|
{ name => "platform",
|
||||||
display_string => "Platform"},
|
display_string => "Platform"},
|
||||||
{ name => "test_group",
|
{ name => "product",
|
||||||
display_string => "Testgroup"},
|
display_string => "Product"},
|
||||||
{ name => "test_id",
|
{ name => "email",
|
||||||
display_string => "Testcase ID#"},
|
display_string => "Submitted By"},
|
||||||
{ name => "summary",
|
{ name => "summary",
|
||||||
display_string => "Summary"},
|
display_string => "Summary"},
|
||||||
{ name => "result_status",
|
{ name => "result_status",
|
||||||
display_string => "Status"},
|
display_string => "Status"},
|
||||||
{ name => "branch",
|
{ name => "test_id",
|
||||||
display_string => "Branch"},
|
display_string => "Testcase ID#"},
|
||||||
{ name => "locale",
|
{ name => "test_group",
|
||||||
display_string => "Locale"},
|
display_string => "Testgroup"},
|
||||||
);
|
);
|
||||||
return \@sort_fields;
|
return \@sort_fields;
|
||||||
}
|
}
|
||||||
|
|
|
@ -92,7 +92,6 @@ if ($c->param) {
|
||||||
'search_field' => $search_field,
|
'search_field' => $search_field,
|
||||||
'match_criteria' => $match_criteria,
|
'match_criteria' => $match_criteria,
|
||||||
'value' => $value};
|
'value' => $value};
|
||||||
|
|
||||||
$where_criteria .= "$search_field $match_criteria '$value'<br/>";
|
$where_criteria .= "$search_field $match_criteria '$value'<br/>";
|
||||||
|
|
||||||
} elsif ($param eq 'start_date') {
|
} elsif ($param eq 'start_date') {
|
||||||
|
@ -131,6 +130,12 @@ if ($c->param) {
|
||||||
value => $value};
|
value => $value};
|
||||||
$where_criteria .= "Locale is \'".$c->param($param)."\'<br/>";
|
$where_criteria .= "Locale is \'".$c->param($param)."\'<br/>";
|
||||||
$defaults->{locale} = $c->param($param);
|
$defaults->{locale} = $c->param($param);
|
||||||
|
} elsif ($param eq 'email') {
|
||||||
|
my $value = $c->param($param);
|
||||||
|
push @where, {field => 'email',
|
||||||
|
value => $value};
|
||||||
|
$where_criteria .= "Submitted By is \'".$c->param($param)."\'<br/>";
|
||||||
|
$defaults->{locale} = $c->param($param);
|
||||||
} elsif ($param eq 'product') {
|
} elsif ($param eq 'product') {
|
||||||
my $value = $c->param($param);
|
my $value = $c->param($param);
|
||||||
push @where, {field => $param,
|
push @where, {field => $param,
|
||||||
|
@ -202,6 +207,7 @@ my $test_ids = Litmus::FormWidget->getTestIDs;
|
||||||
my $result_statuses = Litmus::FormWidget->getResultStatuses;
|
my $result_statuses = Litmus::FormWidget->getResultStatuses;
|
||||||
my $branches = Litmus::FormWidget->getBranches;
|
my $branches = Litmus::FormWidget->getBranches;
|
||||||
my $locales = Litmus::FormWidget->getLocales;
|
my $locales = Litmus::FormWidget->getLocales;
|
||||||
|
my $users = Litmus::FormWidget->getUsers;
|
||||||
|
|
||||||
my $fields = Litmus::FormWidget->getFields;
|
my $fields = Litmus::FormWidget->getFields;
|
||||||
my $match_criteria = Litmus::FormWidget->getMatchCriteria;
|
my $match_criteria = Litmus::FormWidget->getMatchCriteria;
|
||||||
|
@ -219,6 +225,7 @@ my $vars = {
|
||||||
result_statuses => $result_statuses,
|
result_statuses => $result_statuses,
|
||||||
branches => $branches,
|
branches => $branches,
|
||||||
locales => $locales,
|
locales => $locales,
|
||||||
|
users => $users,
|
||||||
fields => $fields,
|
fields => $fields,
|
||||||
match_criteria => $match_criteria,
|
match_criteria => $match_criteria,
|
||||||
sort_fields => $sort_fields,
|
sort_fields => $sort_fields,
|
||||||
|
|
|
@ -939,13 +939,23 @@ table.category h1 {
|
||||||
font-size: 1.1em;
|
font-size: 1.1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
input.category {
|
input.category, input.button {
|
||||||
font-size: 1em;
|
font-size: 1em;
|
||||||
margin: 5px 0px 0px 0px;
|
margin: 5px 0px 0px 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
input.textbox {
|
||||||
|
font-size: .9em;
|
||||||
|
margin: 5px 0px 0px 0px;
|
||||||
|
}
|
||||||
|
|
||||||
div.advSearchForm {
|
div.advSearchForm {
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
margin: 0px;
|
margin: 0px;
|
||||||
border: 0px;
|
border: 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div.formButtons {
|
||||||
|
padding-bottom: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -99,6 +99,11 @@ if ($c->param) {
|
||||||
push @where, {field => $param,
|
push @where, {field => $param,
|
||||||
value => $value};
|
value => $value};
|
||||||
$where_criteria .= "Summary like \'".$c->param($param)."\'<br/>";
|
$where_criteria .= "Summary like \'".$c->param($param)."\'<br/>";
|
||||||
|
} elsif ($param eq 'email') {
|
||||||
|
my $value = quotemeta($c->param($param));
|
||||||
|
push @where, {field => $param,
|
||||||
|
value => $value};
|
||||||
|
$where_criteria .= "Submitted By like \'".$c->param($param)."\'<br/>";
|
||||||
} elsif ($param eq 'result_status') {
|
} elsif ($param eq 'result_status') {
|
||||||
my $value = quotemeta($c->param($param));
|
my $value = quotemeta($c->param($param));
|
||||||
push @where, {field => $param,
|
push @where, {field => $param,
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
<input type="text" size="20" name="summary" value="-Summary-" onFocus="if(this.value=='-Summary-'){this.value = '';}">
|
<input class="textbox" type="text" size="20" name="summary" value="-Summary-" onFocus="if(this.value=='-Summary-'){this.value = '';}">
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<select name="[% name %]"[% IF size %] size="[% size %]"[% END %][% IF disabled %] disabled[% END %][% IF onChange %] onChange="[% onChange %]"[% END %]>
|
<select id="[% name %]" name="[% name %]"[% IF size %] size="[% size %]"[% END %][% IF disabled %] disabled[% END %][% IF onChange %] onChange="[% onChange %]"[% END %]>
|
||||||
[% IF placeholder %]<option value="">-Product-</option>[% END %]
|
[% IF placeholder %]<option value="">-Product-</option>[% END %]
|
||||||
[% IF products %]
|
[% IF products %]
|
||||||
[% FOREACH product=products %]
|
[% FOREACH product=products %]
|
||||||
|
|
|
@ -2,8 +2,10 @@
|
||||||
<option value="">-Field-</option>
|
<option value="">-Field-</option>
|
||||||
[% IF fields %]
|
[% IF fields %]
|
||||||
[% FOREACH field=fields %]
|
[% FOREACH field=fields %]
|
||||||
|
[% IF field.name!='email' || show_admin==1 %]
|
||||||
<option value="[% field.name | html %]">
|
<option value="[% field.name | html %]">
|
||||||
[% field.display_string | html %]</option>
|
[% field.display_string | html %]</option>
|
||||||
|
[% END %]
|
||||||
[% END %]
|
[% END %]
|
||||||
[% END %]
|
[% END %]
|
||||||
</select>
|
</select>
|
||||||
|
|
|
@ -2,8 +2,10 @@
|
||||||
<option value="">-Sort Field-</option>
|
<option value="">-Sort Field-</option>
|
||||||
[% IF sort_fields %]
|
[% IF sort_fields %]
|
||||||
[% FOREACH sort_field=sort_fields %]
|
[% FOREACH sort_field=sort_fields %]
|
||||||
|
[% IF sort_field.name!='email' || show_admin==1 %]
|
||||||
<option value="[% sort_field.name | html %]">
|
<option value="[% sort_field.name | html %]">
|
||||||
[% sort_field.display_string | html %]</option>
|
[% sort_field.display_string | html %]</option>
|
||||||
|
[% END %]
|
||||||
[% END %]
|
[% END %]
|
||||||
[% END %]
|
[% END %]
|
||||||
</select>
|
</select>
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
[% onload = "$onload selects_onload();" %]
|
[% onload = "$onload selects_onload();" %]
|
||||||
[% END %]
|
[% END %]
|
||||||
|
|
||||||
<body onLoad="init();[% IF onload %][% onload %][% END %]">
|
<body onload="init();[% IF onload %][% onload %][% END %]">
|
||||||
<script type="text/javascript">function init(){}</script>
|
<script type="text/javascript">function init(){}</script>
|
||||||
<script type="text/javascript" src="js/FormPersist.js"></script>
|
<script type="text/javascript" src="js/FormPersist.js"></script>
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
<ul class="instructions">
|
<ul class="instructions">
|
||||||
<li>click on the number in the "result id#" column to see a full
|
<li>Click on the number in the "result id#" column to see a full
|
||||||
listing of the test result, including comments</li>
|
listing of the test result, including comments.</li>
|
||||||
<li>click on the number at the start of the "testcase id#: summary"
|
<li>Click on the number at the start of the "testcase id#: summary"
|
||||||
column to see a more detailed description of that particular
|
column to see a more detailed description of that particular
|
||||||
testcase</li>
|
testcase.</li>
|
||||||
<li>results marked with the star icon ([% icon %]) have comments
|
<li>Results marked with the star icon ([% icon %]) have comments
|
||||||
associated with them. Clicking on the star will display the
|
associated with them. Clicking on the star will display the
|
||||||
comments in-page more test is required to get this to wrap</li>
|
comments in-page.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
|
|
||||||
<form id="advanced_search" name="advanced_search" method="get" action="advanced_search.cgi">
|
<form id="advanced_search" name="advanced_search" method="get" action="advanced_search.cgi">
|
||||||
|
|
||||||
<script>
|
<script type="text/javascript">
|
||||||
function init()
|
function init()
|
||||||
{
|
{
|
||||||
FormInit(document.forms['advanced_search'], document.location.search);
|
FormInit(document.forms['advanced_search'], document.location.search);
|
||||||
|
@ -48,26 +48,6 @@ Limit your search to specific values of visible fields.
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="heading">Product:</td>
|
|
||||||
<td>[% INCLUDE form_widgets/select_product.tmpl name="product" placeholder=1 %]</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="heading">Platform:</td>
|
|
||||||
<td>[% INCLUDE form_widgets/select_unique_platform.tmpl name="platform" placeholder=1 %]</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="heading">Testgroup:</td>
|
|
||||||
<td>[% INCLUDE form_widgets/select_test_group.tmpl name="test_group" placeholder=1 %]</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="heading">Testcase ID#:</td>
|
|
||||||
<td>[% INCLUDE form_widgets/select_test_id.tmpl name="test_id" placeholder=1 %]</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="heading">Status:</td>
|
|
||||||
<td>[% INCLUDE form_widgets/select_result_status.tmpl name="result_status" placeholder=1 %]</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="heading">Branch:</td>
|
<td class="heading">Branch:</td>
|
||||||
<td>[% INCLUDE form_widgets/select_branch.tmpl name="branch" placeholder=1 %]</td>
|
<td>[% INCLUDE form_widgets/select_branch.tmpl name="branch" placeholder=1 %]</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -75,6 +55,32 @@ Limit your search to specific values of visible fields.
|
||||||
<td class="heading">Locale:</td>
|
<td class="heading">Locale:</td>
|
||||||
<td>[% INCLUDE form_widgets/select_locale.tmpl name="locale" placeholder=1 %]</td>
|
<td>[% INCLUDE form_widgets/select_locale.tmpl name="locale" placeholder=1 %]</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="heading">Platform:</td>
|
||||||
|
<td>[% INCLUDE form_widgets/select_unique_platform.tmpl name="platform" placeholder=1 %]</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="heading">Product:</td>
|
||||||
|
<td>[% INCLUDE form_widgets/select_product.tmpl name="product" placeholder=1 %]</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="heading">Status:</td>
|
||||||
|
<td>[% INCLUDE form_widgets/select_result_status.tmpl name="result_status" placeholder=1 %]</td>
|
||||||
|
</tr>
|
||||||
|
[% IF show_admin==1 %]
|
||||||
|
<tr>
|
||||||
|
<td class="heading">Submitted By:</td>
|
||||||
|
<td>[% INCLUDE form_widgets/select_email.tmpl name="email" placeholder=1 %]</td>
|
||||||
|
</tr>
|
||||||
|
[% END %]
|
||||||
|
<tr>
|
||||||
|
<td class="heading">Testcase ID#:</td>
|
||||||
|
<td>[% INCLUDE form_widgets/select_test_id.tmpl name="test_id" placeholder=1 %]</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="heading">Testgroup:</td>
|
||||||
|
<td>[% INCLUDE form_widgets/select_test_group.tmpl name="test_group" placeholder=1 %]</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -86,15 +92,15 @@ Limit your search to specific values of visible fields.
|
||||||
<div class="section-content">
|
<div class="section-content">
|
||||||
<table class="advanced-search">
|
<table class="advanced-search">
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2" class="instructions">Display only results between these two dates.</p><p>NOTE: the preferred format for dates is YYYYMMDDhhmmss, although the search engine will do its best (within reason) to parse dates from whatever is submitted.</td>
|
<td colspan="2" class="instructions"><p>Display only results between these two dates.</p><p>NOTE: the preferred format for dates is YYYYMMDDhhmmss, although the search engine will do its best (within reason) to parse dates from whatever is submitted.</p></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="heading">Start Date:</td>
|
<td class="heading">Start Date:</td>
|
||||||
<td><input type="text" name="start_date" value=""></td>
|
<td><input type="text" name="start_date" value="" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="heading">End Date:</td>
|
<td class="heading">End Date:</td>
|
||||||
<td><input type="text" name="end_date" value="Now"></td>
|
<td><input type="text" name="end_date" value="Now" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
@ -114,22 +120,22 @@ Perform more elaborate pattern matching against all fields.
|
||||||
<tr>
|
<tr>
|
||||||
<td>[% INCLUDE form_widgets/select_search_field.tmpl name="search_field1" %]</td>
|
<td>[% INCLUDE form_widgets/select_search_field.tmpl name="search_field1" %]</td>
|
||||||
<td>[% INCLUDE form_widgets/select_match_criteria.tmpl name="match_criteria1" %]</td>
|
<td>[% INCLUDE form_widgets/select_match_criteria.tmpl name="match_criteria1" %]</td>
|
||||||
<td><input type="text" name="search_value1" value=""></td>
|
<td><input type="text" name="search_value1" value="" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>[% INCLUDE form_widgets/select_search_field.tmpl name="search_field2" %]</td>
|
<td>[% INCLUDE form_widgets/select_search_field.tmpl name="search_field2" %]</td>
|
||||||
<td>[% INCLUDE form_widgets/select_match_criteria.tmpl name="match_criteria2" %]</td>
|
<td>[% INCLUDE form_widgets/select_match_criteria.tmpl name="match_criteria2" %]</td>
|
||||||
<td><input type="text" name="search_value2" value=""></td>
|
<td><input type="text" name="search_value2" value="" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>[% INCLUDE form_widgets/select_search_field.tmpl name="search_field3" %]</td>
|
<td>[% INCLUDE form_widgets/select_search_field.tmpl name="search_field3" %]</td>
|
||||||
<td>[% INCLUDE form_widgets/select_match_criteria.tmpl name="match_criteria3" %]</td>
|
<td>[% INCLUDE form_widgets/select_match_criteria.tmpl name="match_criteria3" %]</td>
|
||||||
<td><input type="text" name="search_value3" value=""></td>
|
<td><input type="text" name="search_value3" value="" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>[% INCLUDE form_widgets/select_search_field.tmpl name="search_field4" %]</td>
|
<td>[% INCLUDE form_widgets/select_search_field.tmpl name="search_field4" %]</td>
|
||||||
<td>[% INCLUDE form_widgets/select_match_criteria.tmpl name="match_criteria4" %]</td>
|
<td>[% INCLUDE form_widgets/select_match_criteria.tmpl name="match_criteria4" %]</td>
|
||||||
<td><input type="text" name="search_value4" value=""></td>
|
<td><input type="text" name="search_value4" value="" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
@ -181,7 +187,8 @@ Define the sort order for your results.
|
||||||
Use this to limit the number of results displayed.
|
Use this to limit the number of results displayed.
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<td colspan="2">Limit to <input type="text" name="limit" value="15" size="5"> results</td>
|
<tr>
|
||||||
|
<td colspan="2">Limit to <input type="text" name="limit" value="15" size="5" /> results</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
@ -198,14 +205,15 @@ Use this to limit the number of results displayed.
|
||||||
Admin-specific limiting criteria go here. These criteria are not available to regular users.
|
Admin-specific limiting criteria go here. These criteria are not available to regular users.
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<td colspan="2"><input type="checkbox" name="trusted_only"> Display only test results from trusted sources</td>
|
<tr>
|
||||||
|
<td colspan="2"><input type="checkbox" name="trusted_only" /> Display only test results from trusted sources</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div class="formButtons">
|
||||||
<input class="button" type="reset" onclick="FormInit(this.parent, '');"> <input class="button" type="submit">
|
<input class="button" type="reset" onclick="FormInit(this.parent, '');" /> <input class="button" type="submit" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -28,8 +28,8 @@
|
||||||
[% icon="<img class=icon src='images/star1.gif' title='This result has comments' alt='*'>" %]
|
[% icon="<img class=icon src='images/star1.gif' title='This result has comments' alt='*'>" %]
|
||||||
|
|
||||||
[% IF results %]
|
[% IF results %]
|
||||||
<script src="js/Comments.js"></script>
|
<script type="text/javascript" src="js/Comments.js"></script>
|
||||||
<script>
|
<script type="text/javascript">
|
||||||
var comments = new Array();
|
var comments = new Array();
|
||||||
[% subscript=0 %]
|
[% subscript=0 %]
|
||||||
[% FOREACH result=results %]
|
[% FOREACH result=results %]
|
||||||
|
@ -57,13 +57,18 @@
|
||||||
<td colspan="2" class="header">Submission Date</td>
|
<td colspan="2" class="header">Submission Date</td>
|
||||||
<td class="header">Result ID#</td>
|
<td class="header">Result ID#</td>
|
||||||
<td class="header">Testcase ID#: Summary</td>
|
<td class="header">Testcase ID#: Summary</td>
|
||||||
|
[% IF show_admin==1 %]<td class="header">Submitted By</td>[% END %]
|
||||||
<td class="header">Testgroup</td>
|
<td class="header">Testgroup</td>
|
||||||
<td class="header">Product</td>
|
<td class="header">Product</td>
|
||||||
<td class="header">Platform</td>
|
<td class="header">Platform</td>
|
||||||
<td class="header">Branch</td>
|
<td class="header">Branch</td>
|
||||||
<td class="header">Locale</td>
|
<td class="header">Locale</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
|
||||||
|
[% colspan=9 %]
|
||||||
|
[% IF show_admin==1 %]
|
||||||
|
[% colspan=10 %]
|
||||||
|
[% END %]
|
||||||
|
|
||||||
[% IF results AND results.size > 0 %]
|
[% IF results AND results.size > 0 %]
|
||||||
[% subscript=0 %]
|
[% subscript=0 %]
|
||||||
|
@ -79,6 +84,7 @@
|
||||||
</td>
|
</td>
|
||||||
<td align="left"><a href="show_test.cgi?id=[% result.test_id | html | uri %]">
|
<td align="left"><a href="show_test.cgi?id=[% result.test_id | html | uri %]">
|
||||||
[% result.test_id | html %]</a>: [% result.summary | html %]</td>
|
[% result.test_id | html %]</a>: [% result.summary | html %]</td>
|
||||||
|
[% IF show_admin==1 %]<td align="center">[% result.email FILTER html | uri | email %]</td>[% END %]
|
||||||
<td align="center">[% result.test_group_name | html %]</td>
|
<td align="center">[% result.test_group_name | html %]</td>
|
||||||
<td align="center">[% result.product_name | html %]</td>
|
<td align="center">[% result.product_name | html %]</td>
|
||||||
<td align="center">[% result.platform_name | html %]</td>
|
<td align="center">[% result.platform_name | html %]</td>
|
||||||
|
@ -90,13 +96,12 @@
|
||||||
|
|
||||||
[% ELSE %]
|
[% ELSE %]
|
||||||
<tr>
|
<tr>
|
||||||
<td class="no-results" colspan="8">No test results match the search criteria.</td>
|
<td class="no-results" colspan="[% colspan %]">No test results match the search criteria.</td>
|
||||||
</tr>
|
</tr>
|
||||||
[% END %]
|
[% END %]
|
||||||
|
|
||||||
[% IF include_limit_criteria==1 %]
|
[% IF include_limit_criteria==1 %]
|
||||||
[% INCLUDE reporting/test_results_limit.tmpl %]
|
[% INCLUDE reporting/test_results_limit.tmpl %]
|
||||||
[% END %]
|
[% END %]
|
||||||
|
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
|
|
@ -27,9 +27,9 @@
|
||||||
|
|
||||||
[% PROCESS global/selects.none.tmpl %]
|
[% PROCESS global/selects.none.tmpl %]
|
||||||
|
|
||||||
<form name="search_results" method="get" action="search_results.cgi" onSubmit="if(this.summary.value=='-Summary-'){this.summary.value = '';}">
|
<form name="search_results" method="get" action="search_results.cgi" onSubmit="if(this.summary.value=='-Summary-'){this.summary.value = '';}if(this.email.value=='-Submitted By-'){this.email.value = '';}">
|
||||||
|
|
||||||
<script>
|
<script type="text/javascript">
|
||||||
function init()
|
function init()
|
||||||
{
|
{
|
||||||
FormInit(document.forms['search_results'], document.location.search);
|
FormInit(document.forms['search_results'], document.location.search);
|
||||||
|
@ -54,6 +54,16 @@ function init()
|
||||||
<option[% IF order_bys.test_id == 'DESC' %] selected[% END %] value="DESC">Z->A</option>
|
<option[% IF order_bys.test_id == 'DESC' %] selected[% END %] value="DESC">Z->A</option>
|
||||||
</select></td>
|
</select></td>
|
||||||
|
|
||||||
|
[% colspan=7 %]
|
||||||
|
[% IF show_admin==1 %]
|
||||||
|
[% colspan=8 %]
|
||||||
|
<td class="search"><select name="order_by_email">
|
||||||
|
<option value="">-Sort-</option>
|
||||||
|
<option[% IF order_bys.email == 'ASC' %] selected[% END %] value="ASC">A->Z</option>
|
||||||
|
<option[% IF order_bys.email == 'DESC' %] selected[% END %] value="DESC">Z->A</option>
|
||||||
|
</select></td>
|
||||||
|
[% END %]
|
||||||
|
|
||||||
<td class="search"><select name="order_by_test_group">
|
<td class="search"><select name="order_by_test_group">
|
||||||
<option value="">-Sort-</option>
|
<option value="">-Sort-</option>
|
||||||
<option[% IF order_bys.test_group == 'ASC' %] selected[% END %] value="ASC">A->Z</option>
|
<option[% IF order_bys.test_group == 'ASC' %] selected[% END %] value="ASC">A->Z</option>
|
||||||
|
@ -92,6 +102,7 @@ function init()
|
||||||
<td class="search">[% INCLUDE form_widgets/select_timespan.tmpl %]</td>
|
<td class="search">[% INCLUDE form_widgets/select_timespan.tmpl %]</td>
|
||||||
<td class="search"></td>
|
<td class="search"></td>
|
||||||
<td class="search">[% INCLUDE form_widgets/input_summary.tmpl %]</td>
|
<td class="search">[% INCLUDE form_widgets/input_summary.tmpl %]</td>
|
||||||
|
[% IF show_admin==1 %]<td class="search">[% INCLUDE form_widgets/input_email.tmpl %]</td>[% END %]
|
||||||
<td class="search">[% INCLUDE form_widgets/select_test_group.tmpl name="test_group" placeholder=1 %]</td>
|
<td class="search">[% INCLUDE form_widgets/select_test_group.tmpl name="test_group" placeholder=1 %]</td>
|
||||||
<td class="search">[% INCLUDE form_widgets/select_product.tmpl name="product" placeholder=1 %]</td>
|
<td class="search">[% INCLUDE form_widgets/select_product.tmpl name="product" placeholder=1 %]</td>
|
||||||
<td class="search">[% INCLUDE form_widgets/select_unique_platform.tmpl name="platform" placeholder=1 %]</td>
|
<td class="search">[% INCLUDE form_widgets/select_unique_platform.tmpl name="platform" placeholder=1 %]</td>
|
||||||
|
@ -103,10 +114,10 @@ function init()
|
||||||
<td class="search-heading" align="center">
|
<td class="search-heading" align="center">
|
||||||
Limit to</td>
|
Limit to</td>
|
||||||
<td class="search">
|
<td class="search">
|
||||||
<input type="text" name="limit" value="[% limit | html %]" size="5"> results</td>
|
<input type="text" name="limit" value="[% limit | html %]" size="5" /> results</td>
|
||||||
<td class="search-submit" colspan="7">
|
<td class="search-submit" colspan="[% colspan %]">
|
||||||
<input class="button" type="reset" onclick="FormInit(this.parent, '');">
|
<input class="button" type="reset" onclick="FormInit(this.parent, '');" />
|
||||||
<input class="button" type="submit" value="Show Results">
|
<input class="button" type="submit" value="Show Results" />
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<div class="pagetools">
|
<div class="pagetools">
|
||||||
<div>
|
<div>
|
||||||
<h3>Search Criteria</h3>
|
<h3>Search Criteria</h3>
|
||||||
<p>[% criteria | none %]</p>
|
<p>[% criteria | email %]</p>
|
||||||
[% IF results AND results.size > 0 %]
|
[% IF results AND results.size > 0 %]
|
||||||
<hr/>
|
<hr/>
|
||||||
<p># results: [% results.size %]</p>
|
<p># results: [% results.size %]</p>
|
||||||
|
|
Загрузка…
Ссылка в новой задаче