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.

243 lines
11 KiB

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