You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

245 lines
12 KiB

10 years ago
9 years ago
10 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
7 years ago
7 years ago
10 years ago
10 years ago
9 years ago
10 years ago
  1. <!DOCTYPE html>{% load compress i18n static hc_extras %}
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>{% block title %}{% blocktrans trimmed %}{{ site_name }} - Monitor Cron Jobs. Get Notified When Your Cron Jobs Fail{% endblocktrans %}{% endblock %}</title>
  6. {% block description %}
  7. <meta name="description" content="Monitor and Get Notified When Your Cron Jobs Fail. Free alternative to Cronitor and Dead Man's Snitch.">
  8. {% endblock %}
  9. {% block keywords %}
  10. <meta name="keywords" content="healthchecks, monitor cron jobs, cron monitoring, cron job syntax, health checks, crontab cheat sheet, crontab monitoring, cronjob monitoring, cron dashboard">
  11. {% endblock %}
  12. <meta name="viewport" content="width=device-width, initial-scale=1">
  13. <meta name="apple-mobile-web-app-title" content="{{ site_name }}">
  14. <meta name="application-name" content="{{ site_name }}">
  15. {% if request.user.is_authenticated and request.profile.theme == 'dark' %}
  16. <meta name="theme-color" content="#18181b">
  17. {% endif %}
  18. <link rel="icon" type="image/x-icon" href="{% static 'img/favicon.ico' %}">
  19. <link rel="apple-touch-icon" sizes="180x180" href="{% static 'img/apple-touch-180.png' %}">
  20. {% block head %}{% endblock %}
  21. {% compress css %}
  22. <link rel="stylesheet" href="{% static 'css/bootstrap.css' %}" type="text/css">
  23. <link rel="stylesheet" href="{% static 'css/bootstrap-select.min.css' %}" type="text/css">
  24. <link rel="stylesheet" href="{% static 'css/selectize.hc.css' %}" type="text/css">
  25. <link rel="stylesheet" href="{% static 'css/variables.css' %}" type="text/css">
  26. <link rel="stylesheet" href="{% static 'css/bootstrap-colors.css' %}" type="text/css">
  27. <link rel="stylesheet" href="{% static 'css/base.css' %}" type="text/css">
  28. <link rel="stylesheet" href="{% static 'css/add_credential.css' %}" type="text/css">
  29. <link rel="stylesheet" href="{% static 'css/add_project_modal.css' %}" type="text/css">
  30. <link rel="stylesheet" href="{% static 'css/add_pushover.css' %}" type="text/css">
  31. <link rel="stylesheet" href="{% static 'css/appearance.css' %}" type="text/css">
  32. <link rel="stylesheet" href="{% static 'css/webhook_form.css' %}" type="text/css">
  33. <link rel="stylesheet" href="{% static 'css/badges.css' %}" type="text/css">
  34. <link rel="stylesheet" href="{% static 'css/billing.css' %}" type="text/css">
  35. <link rel="stylesheet" href="{% static 'css/channel_checks.css' %}" type="text/css">
  36. <link rel="stylesheet" href="{% static 'css/channels.css' %}" type="text/css">
  37. <link rel="stylesheet" href="{% static 'css/checkbox.css' %}" type="text/css">
  38. <link rel="stylesheet" href="{% static 'css/details.css' %}" type="text/css">
  39. <link rel="stylesheet" href="{% static 'css/docs.css' %}" type="text/css">
  40. <link rel="stylesheet" href="{% static 'css/docs_cron.css' %}" type="text/css">
  41. <link rel="stylesheet" href="{% static 'css/icomoon.css' %}" type="text/css">
  42. <link rel="stylesheet" href="{% static 'css/log.css' %}" type="text/css">
  43. <link rel="stylesheet" href="{% static 'css/login.css' %}" type="text/css">
  44. <link rel="stylesheet" href="{% static 'css/my_checks.css' %}" type="text/css">
  45. <link rel="stylesheet" href="{% static 'css/my_checks_desktop.css' %}" type="text/css">
  46. <link rel="stylesheet" href="{% static 'css/nouislider.min.css' %}" type="text/css">
  47. <link rel="stylesheet" href="{% static 'css/nouislider.pips.css' %}" type="text/css">
  48. <link rel="stylesheet" href="{% static 'css/nouislider.dark.css' %}" type="text/css">
  49. <link rel="stylesheet" href="{% static 'css/ping_details.css' %}" type="text/css">
  50. <link rel="stylesheet" href="{% static 'css/pricing.css' %}" type="text/css">
  51. <link rel="stylesheet" href="{% static 'css/profile.css' %}" type="text/css">
  52. <link rel="stylesheet" href="{% static 'css/projects.css' %}" type="text/css">
  53. <link rel="stylesheet" href="{% static 'css/radio.css' %}" type="text/css">
  54. <link rel="stylesheet" href="{% static 'css/settings.css' %}" type="text/css">
  55. <link rel="stylesheet" href="{% static 'css/snippet-copy.css' %}" type="text/css">
  56. <link rel="stylesheet" href="{% static 'css/syntax.css' %}" type="text/css">
  57. <link rel="stylesheet" href="{% static 'css/welcome.css' %}" type="text/css">
  58. <link rel="stylesheet" href="{% static 'css/set_password.css' %}" type="text/css">
  59. {% endcompress %}
  60. </head>
  61. <body class="page-{{ page }}{% if request.user.is_authenticated and request.profile.theme == 'dark' %} dark{% endif%}">
  62. {% debug_warning %}
  63. <nav class="navbar navbar-default">
  64. <div class="container{% if page == "checks" or page == "details" %}-fluid{% endif %}">
  65. <div class="navbar-header">
  66. <button
  67. type="button"
  68. class="navbar-toggle collapsed"
  69. data-toggle="collapse"
  70. data-target="#navbar"
  71. aria-expanded="false"
  72. aria-controls="navbar">
  73. <span class="sr-only">{% trans "Toggle navigation" %}</span>
  74. <span class="icon-bar"></span>
  75. <span class="icon-bar"></span>
  76. <span class="icon-bar"></span>
  77. </button>
  78. <a id="base-url" class="navbar-brand" href="{% url 'hc-index' %}">
  79. {% if request.user.is_authenticated and project %}
  80. {{ project }}
  81. <span class="caret"></span>
  82. {% else %}
  83. <img
  84. id="logo"
  85. height="50"
  86. {% if site_logo_url %}
  87. src="{{ site_logo_url }}"
  88. {% else %}
  89. src="{% static 'img/logo.png' %}"
  90. {% endif %}
  91. alt="{{ site_name }}">
  92. {% endif %}
  93. </a>
  94. </div>
  95. <div id="navbar" class="navbar-collapse collapse">
  96. {% if project %}
  97. <ul id="nav-main-sections" class="nav navbar-nav">
  98. <li {% if page == 'checks' %} class="active" {% endif %}>
  99. <a href="{% url 'hc-checks' project.code %}">
  100. {% trans "Checks" %}
  101. </a>
  102. </li>
  103. {% with b=project.have_channel_issues %}
  104. <li {% if b %}id="broken-channels"{% endif %} {% if page == 'channels' %}class="active"{% endif %}>
  105. <a href="{% url 'hc-channels' project.code %}">
  106. {% trans "Integrations" %}
  107. {% if b %}<span class="ic-grace"></span>{% endif %}
  108. </a>
  109. </li>
  110. {% endwith %}
  111. <li {% if page == 'badges' %} class="active" {% endif %}>
  112. <a href="{% url 'hc-badges' project.code %}">
  113. {% trans "Badges" %}
  114. </a>
  115. </li>
  116. <li {% if page == 'project' %} class="active" {% endif %}>
  117. <a href="{% url 'hc-project-settings' project.code %}">
  118. {% trans "Settings" %}
  119. </a>
  120. </li>
  121. </ul>
  122. {% endif %}
  123. <ul id="global-links" class="nav navbar-nav navbar-right">
  124. {% if show_pricing %}
  125. <li {% if page == 'pricing' %} class="active" {% endif %}>
  126. {% if project %}
  127. <a href="{% url 'hc-p-pricing' project.code %}">
  128. {% trans "Pricing" %}
  129. </a>
  130. {% else %}
  131. <a href="{% url 'hc-pricing' %}">
  132. {% trans "Pricing" %}
  133. </a>
  134. {% endif %}
  135. </li>
  136. {% endif %}
  137. <li {% if page == 'docs' %} class="active" {% endif %}>
  138. <a href="{% url 'hc-docs' %}">
  139. {% trans "Docs" %}
  140. </a>
  141. </li>
  142. {% if request.user.is_authenticated %}
  143. <li class="dropdown">
  144. <a id="nav-email" href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">
  145. {% trans "Account" %}
  146. <span class="caret"></span>
  147. </a>
  148. <ul class="dropdown-menu">
  149. {% if request.user.is_superuser %}
  150. <li><a href="{% url 'admin:index' %}">
  151. {% trans "Site Administration" %}
  152. </a></li>
  153. <li role="separator" class="divider"></li>
  154. {% endif %}
  155. <li class="dropdown-header">
  156. {% trans "Projects" %}
  157. </li>
  158. {% for project in request.profile.annotated_projects %}
  159. <li class="project-item">
  160. <a href="{% url 'hc-checks' project.code %}">
  161. <span class="name">{{ project }}</span>
  162. {% if project.n_down %}
  163. <span class="badge badge-down pull-right">
  164. {{ project.n_down }}
  165. </span>
  166. {% endif %}
  167. </a>
  168. </li>
  169. {% endfor %}
  170. <li role="separator" class="divider"></li>
  171. <li class="dropdown-header">{{ request.user.email }}</li>
  172. <li>
  173. <a href="{% url 'hc-profile' %}">
  174. {% trans "Account Settings" %}
  175. </a>
  176. </li>
  177. <li>
  178. <a href="{% url 'hc-logout' %}">
  179. {% trans "Log Out" %}
  180. </a>
  181. </li>
  182. </ul>
  183. </li>
  184. {% elif page != "login" %}
  185. <li>
  186. <a href="{% url 'hc-login' %}">
  187. {% trans "Sign In" %}
  188. </a>
  189. </li>
  190. {% endif %}
  191. {% if registration_open %}
  192. {% if page == "welcome" or page == "login" %}
  193. <li>
  194. <a id="nav-sign-up" href="#" data-toggle="modal" data-target="#signup-modal">
  195. <span>{% trans "Sign Up" %}</span>
  196. </a>
  197. </li>
  198. {% endif %}
  199. {% endif %}
  200. </ul>
  201. </div>
  202. </div>
  203. </nav>
  204. {% block containers %}
  205. <div class="container{% if page == "checks" or page == "details" %}-fluid{% endif %}">
  206. {% block content %}{% endblock %}
  207. </div>
  208. {% endblock %}
  209. <footer class="footer">
  210. <div class="container{% if page == "checks" or page == "details" %}-fluid{% endif %}">
  211. <ul>
  212. <li>
  213. Healthchecks {% site_version %}
  214. (<a href="https://github.com/healthchecks/healthchecks">github</a>,
  215. <a href="https://healthchecks.io">healthchecks.io</a>)
  216. </li>
  217. </ul>
  218. </div>
  219. </footer>
  220. {% block scripts %}
  221. {% compress js %}
  222. <script src="{% static 'js/jquery-2.1.4.min.js' %}"></script>
  223. <script src="{% static 'js/bootstrap.min.js' %}"></script>
  224. {% endcompress %}
  225. {% endblock %}
  226. </body>
  227. </html>