OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html> |
| 2 [# This is the master header file that is included in all Monrail servlets that
render a page. |
| 3 |
| 4 Args: |
| 5 arg0: Can be "showtabs", "showusertabs" or "showusergrouptabs" to select wh
ich top-plevel tabs are shown. |
| 6 arg1: String like "t1", "t2", "t3" to identify the currently active tab. |
| 7 ] |
| 8 <html lang="en"> |
| 9 <head> |
| 10 <link rel="icon" type="image/vnd.microsoft.icon" href="/static/images/monorail
.ico"> |
| 11 [if-any link_rel_canonical] |
| 12 <link rel="canonical" href="[link_rel_canonical]"> |
| 13 [end] |
| 14 <script type="text/javascript" nonce="[nonce]"> |
| 15 [# Javascript object containing basic page data. ] |
| 16 var CS_env = { |
| 17 'absoluteBaseUrl': '[format "js"][absolute_base_url][end]', |
| 18 'app_version': '[format "js"][app_version][end]', |
| 19 'token': '[format "js"][xhr_token][end]', |
| 20 [if-any logged_in_user] |
| 21 'tokenExpiresSec': [format "js"][token_expires_sec][end], |
| 22 [end] |
| 23 'loggedInUserEmail': |
| 24 [if-any logged_in_user] |
| 25 '[format "js"][logged_in_user.email][end]' |
| 26 [else] |
| 27 null |
| 28 [end], |
| 29 'login_url': '[format "js"][login_url][end]', |
| 30 'logout_url': '[format "js"][logout_url][end]', |
| 31 'profileUrl': |
| 32 [if-any logged_in_user] |
| 33 '[format "js"][logged_in_user.profile_url][end]' |
| 34 [else] |
| 35 null |
| 36 [end], |
| 37 'projectName': '[format "js"][projectname][end]', |
| 38 }; |
| 39 </script> |
| 40 |
| 41 [# Improve the snippet that appears in search] |
| 42 [if-any show_search_metadata] |
| 43 <meta name="Description" content="Monorail is simple, reliable, and flexible
issue tracking tool."> |
| 44 <meta name="robots" content="NOODP"> |
| 45 [end] |
| 46 |
| 47 <title> |
| 48 [if-any title][title] - [end] |
| 49 [if-any projectname] |
| 50 [projectname] - |
| 51 [else] |
| 52 [if-any viewing_user_page][viewed_user.display_name] - [end] |
| 53 [end] |
| 54 [if-any title_summary][title_summary] - [else] |
| 55 [if-any project_summary][project_summary] - [end] |
| 56 [end] |
| 57 [site_name] |
| 58 </title> |
| 59 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| 60 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
| 61 <meta name="referrer" content="no-referrer"> |
| 62 [if-any robots_no_index] |
| 63 <meta name="ROBOTS" content="NOINDEX,NOARCHIVE"> |
| 64 [else] |
| 65 <meta name="ROBOTS" content="NOARCHIVE"> |
| 66 [end] |
| 67 <meta name="viewport" content="width=device-width"> |
| 68 <link type="text/css" rel="stylesheet" href="/static/css/ph_core.css?version
=[app_version]"> |
| 69 <link type="text/css" rel="stylesheet" href="/static/css/ph_mobile.css?versi
on=[app_version]"> |
| 70 [if-any category_css] |
| 71 <link type="text/css" rel="stylesheet" href="/static/[category_css]?version
=[app_version]"> |
| 72 [end] |
| 73 [if-any page_css] |
| 74 <link type="text/css" rel="stylesheet" href="/static/[page_css]?version=[ap
p_version]"> |
| 75 [end] |
| 76 [# NO MORE SCRIPTS IN HEAD, it makes page loading too slow.] |
| 77 </head> |
| 78 |
| 79 <body class="[main_tab_mode] [if-any perms.EditIssue]perms_EditIssue[end]"> |
| 80 |
| 81 [# Tiny script used sitewide. ] |
| 82 <script type="text/javascript" nonce="[nonce]"> |
| 83 function _go(url) { document.location = url; } |
| 84 function $(id) { return document.getElementById(id); } |
| 85 |
| 86 var loadQueue = []; |
| 87 function runOnLoad(fn) { loadQueue.push(fn); } |
| 88 |
| 89 window.onload = function() { |
| 90 for (var fn of loadQueue) |
| 91 fn(); |
| 92 delete loadQueue; |
| 93 }; |
| 94 </script> |
| 95 |
| 96 [include "maintabs.ezt" arg0 arg1] |
| 97 |
| 98 [include "banner_message.ezt"] |
| 99 |
| 100 <div id="maincol"> |
| 101 [include "alert.ezt"] |
OLD | NEW |