diff options
author | Frédéric Buclin <LpSolit@gmail.com> | 2014-01-07 00:02:09 +0100 |
---|---|---|
committer | Frédéric Buclin <LpSolit@gmail.com> | 2014-01-07 00:02:09 +0100 |
commit | d4f65f36b7d31d50f39264882c5440b842429bba (patch) | |
tree | 29120f1496f249acedbd047f719514bdaf699baa | |
parent | 32466314c46ac7fd87c411a4aa01691e75cab6a5 (diff) | |
download | bugzilla-d4f65f36b7d31d50f39264882c5440b842429bba.tar.gz bugzilla-d4f65f36b7d31d50f39264882c5440b842429bba.tar.xz |
Bug 390955: Add some useful standard searches to the index page
r=dkl a=sgreen
-rw-r--r-- | images/rss.png | bin | 0 -> 764 bytes | |||
-rwxr-xr-x | index.cgi | 13 | ||||
-rw-r--r-- | skins/standard/global.css | 6 | ||||
-rw-r--r-- | skins/standard/index.css | 23 | ||||
-rw-r--r-- | template/en/default/index.html.tmpl | 169 |
5 files changed, 133 insertions, 78 deletions
diff --git a/images/rss.png b/images/rss.png Binary files differnew file mode 100644 index 000000000..1679ab05b --- /dev/null +++ b/images/rss.png @@ -45,6 +45,19 @@ if ($user->in_group('admin')) { $vars->{'release'} = Bugzilla::Update::get_notifications(); } +if ($user->id) { + my $dbh = Bugzilla->dbh; + $vars->{assignee_count} = + $dbh->selectrow_array('SELECT COUNT(*) FROM bugs WHERE assigned_to = ? + AND resolution = ""', undef, $user->id); + $vars->{reporter_count} = + $dbh->selectrow_array('SELECT COUNT(*) FROM bugs WHERE reporter = ? + AND resolution = ""', undef, $user->id); + $vars->{requestee_count} = + $dbh->selectrow_array('SELECT COUNT(DISTINCT bug_id) FROM flags + WHERE requestee_id = ?', undef, $user->id); +} + # Generate and return the UI (HTML page) from the appropriate template. $template->process("index.html.tmpl", $vars) || ThrowTemplateError($template->error()); diff --git a/skins/standard/global.css b/skins/standard/global.css index d10fac026..cf4fe57bf 100644 --- a/skins/standard/global.css +++ b/skins/standard/global.css @@ -259,6 +259,12 @@ div#docslinks { margin: 0; } +.rss { + background: transparent url(../../images/rss.png) no-repeat; + padding-left: 16px; + line-height: 1.5em; +} + /**************************/ /* Bug links and statuses */ /**************************/ diff --git a/skins/standard/index.css b/skins/standard/index.css index 595692025..bfe0b2ab8 100644 --- a/skins/standard/index.css +++ b/skins/standard/index.css @@ -68,13 +68,11 @@ .bz_common_actions a:hover { text-decoration: none; } - #enter_bug { background: url(index/file-a-bug.png) no-repeat; } - #query { background: url(index/search.png) no-repeat; } - #account { - background: url(index/new-account.png) no-repeat; - margin-right: 0; - } - + #enter_bug { background: url(index/file-a-bug.png) no-repeat; } + #query { background: url(index/search.png) no-repeat; } + #account { background: url(index/new-account.png) no-repeat; } + #help { background: url(index/help.png) no-repeat; } + #quicksearchForm { clear: both; @@ -106,7 +104,16 @@ margin: 0 0 0.8em 0; padding: 0; } - + + #common_queries ul { + list-style: none; + padding-left: 1.5em; + } + + #common_queries li a { + text-decoration: none; + } + ul.additional_links { list-style: none; diff --git a/template/en/default/index.html.tmpl b/template/en/default/index.html.tmpl index b47b912c0..61d083d1b 100644 --- a/template/en/default/index.html.tmpl +++ b/template/en/default/index.html.tmpl @@ -22,9 +22,6 @@ <!-- function onLoadActions() { quicksearchHelpText('quicksearch_main', 'show'); - if( window.external.AddSearchProvider ){ - YAHOO.util.Dom.removeClass('quicksearch_plugin', 'bz_default_hidden'); - } document.getElementById('quicksearch_top').focus(); } var quicksearch_message = "Enter [% terms.abug %] # or some search terms"; @@ -101,73 +98,105 @@ YAHOO.util.Event.onDOMReady(onLoadActions); [% END %] <div id="page-index"> - <table> - <tr> - <td> - <h1 id="welcome"> Welcome to [% terms.Bugzilla %]</h1> - <div class="intro">[% Hook.process('intro') %]</div> - - <div class="bz_common_actions"> - <ul> - <li> - <a id="enter_bug" href="enter_bug.cgi"><span>File - [%= terms.aBug %]</span></a> - </li> - <li> - <a id="query" href="query.cgi"><span>Search</span></a> - </li> - <li> - <a id="account" - [% IF user.id %] - href="userprefs.cgi"><span>User Preferences</span></a> - [% ELSIF Param('createemailregexp') - && user.authorizer.user_can_create_account - %] - href="createaccount.cgi"><span>Open a New Account</span></a> - [% ELSE %] - href="?GoAheadAndLogIn=1"><span>Log In</span></a> - [% END %] - </li> - </ul> - </div> - - <form id="quicksearchForm" name="quicksearchForm" action="buglist.cgi" - onsubmit="return checkQuicksearch(this);"> - <div> - <input id="quicksearch_main" type="text" name="quicksearch" - title="Quick Search" - onfocus="quicksearchHelpText(this.id, 'hide');" - onblur="quicksearchHelpText(this.id, 'show');" - > - <input id="find" type="submit" value="Quick Search"> - <ul class="additional_links" id="quicksearch_links"> - <li> - <a href="page.cgi?id=quicksearch.html">Quick Search help</a> - </li> - <li class="bz_default_hidden" id="quicksearch_plugin"> - | - <a href="javascript:window.external.AddSearchProvider('[% urlbase FILTER html %]search_plugin.cgi')"> - Install the Quick Search plugin - </a> - </li> - </ul> - <ul class="additional_links"> - <li> - <a href="[% docs_urlbase FILTER html %]using.html"> - [%- terms.Bugzilla %] User's Guide</a> - </li> - <li> - | - <a href="page.cgi?id=release-notes.html">Release Notes</a> - </li> - [% Hook.process('additional_links') %] - </ul> - </div> - </form> - <div class="outro">[% Hook.process('outro') %]</div> - </td> - </tr> - </table> + <h1 id="welcome"> Welcome to [% terms.Bugzilla %]</h1> + <div class="intro">[% Hook.process('intro') %]</div> + + <div class="bz_common_actions"> + <ul> + <li> + <a id="enter_bug" href="enter_bug.cgi"><span>File [% terms.aBug %]</span></a> + </li> + <li> + <a id="query" href="query.cgi"><span>Search</span></a> + </li> + <li> + <a id="account" + [% IF user.id %] + href="userprefs.cgi"><span>User Preferences</span></a> + [% ELSIF Param('createemailregexp') && user.authorizer.user_can_create_account %] + href="createaccount.cgi"><span>Open a New Account</span></a> + [% ELSE %] + href="?GoAheadAndLogIn=1"><span>Log In</span></a> + [% END %] + </li> + [% IF Param("docs_urlbase") %] + <li> + <a id="help" href="[% docs_urlbase FILTER html %]using.html"><span>Documentation</span></a> + </li> + [% END %] + </ul> + </div> + + <div> + <form id="quicksearchForm" name="quicksearchForm" action="buglist.cgi" + onsubmit="return checkQuicksearch(this);"> + <input id="quicksearch_main" type="text" name="quicksearch" title="Quick Search" + onfocus="quicksearchHelpText(this.id, 'hide');" + onblur="quicksearchHelpText(this.id, 'show');"> + <input id="find" type="submit" value="Quick Search"> + <a href="page.cgi?id=quicksearch.html" title="Quick Search help">[?]</a> + </form> + + <ul class="additional_links"> + [% Hook.process('additional_links') %] + </ul> + </div> + + <div id="common_queries"> + <h4>Common Queries:</h4> + <ul> + [% IF user.id %] + <li> + [% title = BLOCK %]Open [% terms.bugs %] assigned to me[% END %] + <a href="buglist.cgi?f1=assigned_to&o1=equals&v1=%25user%25&resolution=---"> + [% title FILTER html %]</a> ([% assignee_count FILTER html %]) + <a href="buglist.cgi?f1=assigned_to&o1=equals&v1=%25user%25&resolution=---&ctype=atom&title=[% title FILTER uri %]" + class="rss"> </a> + </li> + <li> + [% title = BLOCK %]Open [% terms.bugs %] reported by me[% END %] + <a href="buglist.cgi?f1=reporter&o1=equals&v1=%25user%25&resolution=---"> + [% title FILTER html %]</a> ([% reporter_count FILTER html %]) + <a href="buglist.cgi?f1=reporter&o1=equals&v1=%25user%25&resolution=---&ctype=atom&title=[% title FILTER uri %]" + class="rss"> </a> + </li> + [% IF Bugzilla.has_flags %] + <li> + [% title = BLOCK %]Requests addressed to me[% END %] + <a href="request.cgi?action=queue&requestee=[% user.login FILTER uri %]&group=type&do_union=0"> + [% title FILTER html %]</a> ([% requestee_count FILTER html %]) + <a href="buglist.cgi?f1=requestees.login_name&o1=equals&v1=%25user%25&ctype=atom&title=[% title FILTER uri %]" + class="rss"> </a> + </li> + [% END %] + [% END %] + + <li> + [% terms.Bugs %] reported in the + <a href="buglist.cgi?chfield=[Bug%20creation]&chfieldfrom=24h">last 24 hours</a> + [% title = BLOCK %][% terms.Bugs %] reported in the last 24 hours[% END %] + <a href="buglist.cgi?chfield=[Bug%20creation]&chfieldfrom=24h&ctype=atom&title=[% title FILTER uri %]" + class="rss"> </a> + | <a href="buglist.cgi?chfield=[Bug%20creation]&chfieldfrom=7d">last 7 days</a> + [% title = BLOCK %][% terms.Bugs %] reported in the last 7 days[% END %] + <a href="buglist.cgi?chfield=[Bug%20creation]&chfieldfrom=7d&ctype=atom&title=[% title FILTER uri %]" + class="rss"> </a> + </li> + <li> + [% terms.Bugs %] changed in the + <a href="buglist.cgi?chfieldfrom=24h">last 24 hours</a> + [% title = BLOCK %][% terms.Bugs %] changed in the last 24 hours[% END %] + <a href="buglist.cgi?chfieldfrom=24h&ctype=atom&title=[% title FILTER uri %]" + class="rss"> </a> + | <a href="buglist.cgi?chfieldfrom=7d">last 7 days</a> + [% title = BLOCK %][% terms.Bugs %] changed in the last 7 days[% END %] + <a href="buglist.cgi?chfieldfrom=7d&ctype=atom&title=[% title FILTER uri %]" + class="rss"> </a> + </li> + </ul> + </div> + + <div class="outro">[% Hook.process('outro') %]</div> </div> [% PROCESS global/footer.html.tmpl %] |