snipt/templates/base.html

428 lines
18 KiB
HTML
Raw Normal View History

2012-06-20 13:25:41 -07:00
{% load snipt_tags %}
2012-02-15 15:25:13 -08:00
2011-06-01 21:50:18 -07:00
<!DOCTYPE html>
<html lang="en" class="{% block html-class %}{% endblock %}">
<head>
2011-10-23 19:44:37 -07:00
2011-06-01 21:50:18 -07:00
<title>{% block page-title %}Snipt{% endblock %}</title>
<meta charset="utf-8" />
2012-06-20 08:11:46 -07:00
<meta name="google-site-verification" content="BantFMmY6nSP8wFvb_SDKwYZo08HglaCpNMXQqTyOuk" />
<link rel="author" href="/humans.txt" />
2012-05-31 22:21:28 -07:00
{% block page-description %}
<meta name="description" content="Long-term memory for coders. Share and store code snippets." />
{% endblock %}
2012-05-21 08:21:12 -07:00
2012-06-20 07:53:54 -07:00
{% if 'page' in request.GET %}
2012-06-05 20:06:58 -07:00
<meta name="robots" content="noindex, follow" />
{% endif %}
2012-05-21 08:21:12 -07:00
2013-02-13 16:18:47 -08:00
<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/snipt.css?75" />
2012-02-18 11:42:30 -08:00
2012-04-13 20:30:23 -07:00
{% if has_snipts and not detail %}
2012-08-05 21:11:12 -07:00
<link rel="alternate" type="application/rss+xml" title="RSS" href="{{ request.path }}?rss{% if not public %}&amp;api_key={{ request.user.api_key.key }}{% endif %}" />
2012-04-13 20:30:23 -07:00
{% endif %}
{% block css %}{% endblock %}
2011-06-01 21:50:18 -07:00
<!--[if IE]>
<style type="text/css">
.group {
display: block;
zoom: 1;
}
</style>
<![endif]-->
<!--[if lt IE 9]>
2012-04-23 18:41:16 -07:00
<script src="https://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
2011-06-01 21:50:18 -07:00
<![endif]-->
</head>
2012-07-19 08:36:39 -07:00
<body class="{% block body-class %}{% endblock %} {% if request.user.profile.is_pro %}is-pro{% endif %}">
2012-05-31 19:32:32 -07:00
{% block header %}
<header class="main">
<div class="inner">
<div class="shadey"></div>
<h1><a href="{% if request.user.is_authenticated %}/{{ request.user.username }}/{% else %}/{% endif %}">snip<span>t</span></a></h1>
2012-05-31 19:32:32 -07:00
<form class="search" action="/search/" method="get">
<fieldset>
<div class="fields">
<input type="text" id="search-query" name="q" value="{{ query }}" placeholder="Search snipts" />
</div>
</fieldset>
</form>
<nav class="public">
<ul>
{% if not request.user.is_authenticated %}
<li>
<a href="/public/" {% if '/public/' in request.path or public %} class="active"{% endif %}>Public snipts</a>
</li>
<li>
<a href="/login/?next={{ request.path }}" {% if '/login/' in request.path %} class="active"{% endif %}>Log in</a>
</li>
<li>
<a href="/signup/" {% if '/signup/' in request.path %} class="active"{% endif %}>Sign up</a>
</li>
2012-05-15 18:09:32 -07:00
{% else %}
2012-05-31 19:32:32 -07:00
<li>
<a href="/{{ request.user.username }}/" {% if request.user.username in request.path %} class="active"{% endif %}>My snipts</a>
</li>
<li>
<a href="/public/" {% if '/public/' in request.path or public %} class="active"{% endif %}>Public snipts</a>
</li>
2012-06-19 19:11:53 -07:00
<li class="add-snipt">
<button class="btn btn-info btn-large" id="add-snipt">
Add {% if request.user.username == 'blog' %}Post{% else %}Snipt{% endif %}
<i class="icon-search icon-plus icon-white"></i>
</button>
2012-05-31 19:32:32 -07:00
</li>
2012-05-15 18:09:32 -07:00
{% endif %}
2012-05-31 19:32:32 -07:00
</ul>
</nav>
2012-06-19 19:11:53 -07:00
{% if request.user.is_authenticated %}
<aside class="nav">
<a href="#" class="mini-profile">
2012-06-19 20:25:34 -07:00
<span class="avatar" style="background-image: url('https://secure.gravatar.com/avatar/{{ request.user.email|md5 }}?s=35');"></span>
2012-06-26 13:38:38 -07:00
<span class="info">
<span class="username">{{ request.user.username }}</span>
<i class="icon-cog icon-white"></i>
<span class="type">
{% if request.user.profile.is_pro %}
<span class="is-pro">Pro</span>
{% else %}
Basic member
{% endif %}
</span>
</span>
2012-06-19 19:11:53 -07:00
</a>
<ul>
<li>
<a href="/{{ request.user.username }}/">
<i class="icon-user icon-white"></i>
Profile
2012-06-26 13:38:38 -07:00
</a>
2012-06-19 19:11:53 -07:00
</li>
2012-09-17 19:28:47 -07:00
{% if request.user.profile.is_pro %}
<li>
<a href="/account/stats/">
2012-09-17 19:34:48 -07:00
<i class="icon-star icon-white"></i>
Stats
2012-09-17 19:28:47 -07:00
</a>
</li>
{% endif %}
2012-07-10 13:43:51 -07:00
<li>
<a href="/account/">
<i class="icon-cog icon-white"></i>
Account
2012-07-10 13:43:51 -07:00
</a>
</li>
2012-07-11 23:03:46 -07:00
{% if not request.user.profile.is_pro %}
<li>
<a href="/pro/">
<i class="icon-star-empty icon-white"></i>
Go Pro
2012-07-11 23:03:46 -07:00
</a>
</li>
2012-09-10 10:52:17 -07:00
{% endif %}
2012-06-21 11:16:19 -07:00
{% if request.user.is_superuser %}
<li>
<a href="/admin/">
2012-06-21 11:16:46 -07:00
<i class="icon-cog icon-white"></i>
2012-06-21 11:16:19 -07:00
Admin
</a>
</li>
{% endif %}
2012-06-19 19:11:53 -07:00
<li>
<a href="/logout/?next={{ request.path }}">
<i class="icon-off icon-white"></i>
Log out
</a>
</li>
</ul>
</aside>
2012-05-31 19:32:32 -07:00
{% endif %}
</div>
</header>
{% endblock %}
2012-02-12 18:13:13 -08:00
{% block sub-header %}
<header class="sub">
<div class="inner group">
<ul class="bcrumb">
<li class="prompt">/</li>
{% block breadcrumb %}{% endblock %}
</ul>
<div class="shortcuts">
2012-02-12 21:42:25 -08:00
Type "h" for KB shortcuts
2012-02-12 18:13:13 -08:00
</div>
2012-01-25 06:49:36 -08:00
</div>
2012-02-12 18:13:13 -08:00
</header>
{% endblock %}
2012-05-31 22:21:28 -07:00
{% block main %}
<section class="main group" id="main">
{% block aside %}
<aside class="main">
2013-02-13 16:17:19 -08:00
<div class="save-nate">
<a href="http://savenatenow.com/">Save Nate</a>
</div>
2012-07-08 09:25:15 -07:00
{% block aside-top %}{% endblock %}
2012-07-03 14:53:30 -07:00
{% block aside-inner %}{% endblock %}
2012-05-31 22:21:28 -07:00
<nav class="footer">
<ul>
<li class="api">
2013-01-21 15:00:10 -08:00
<a href="/api/" {% if '/api/' in request.path %}class="active"{% endif %}><span>API</span></a>
2012-05-31 22:21:28 -07:00
</li>
2013-01-16 20:34:48 -08:00
<li class="twitter">
2013-01-21 15:00:10 -08:00
<a href="https://twitter.com/#!/snipt"><span>@snipt</span></a>
2012-05-31 22:21:28 -07:00
</li>
2012-09-10 10:51:50 -07:00
{% if not request.user.profile.is_pro %}
<li class="pro">
2013-01-21 15:00:10 -08:00
<a href="/pro/"><span>Go Pro</span></a>
2012-09-10 10:51:50 -07:00
</li>
{% endif %}
2013-01-16 20:34:48 -08:00
<li class="blog">
2013-01-21 15:00:10 -08:00
<a href="https://blog.snipt.net/"><span>Snipt Blog</span></a>
2013-01-16 20:34:48 -08:00
</li>
2013-01-16 20:41:32 -08:00
<li class="blog">
2013-01-21 15:00:10 -08:00
<a href="/blogging/" {% if '/blogging/' in request.path %}class="active"{% endif %}><span>Blogging on Snipt</span></a>
2012-05-31 22:21:28 -07:00
</li>
2013-01-13 20:00:03 -08:00
<li class="roadmap">
2013-01-21 15:00:10 -08:00
<a href="https://github.com/nicksergeant/snipt/"><span>Open source on GitHub</span></a>
2013-01-13 20:00:03 -08:00
</li>
<li class="roadmap">
2013-01-21 15:00:10 -08:00
<a href="https://github.com/nicksergeant/snipt/issues?state=open"><span>Bugs & feature requests</span></a>
2013-01-13 20:00:03 -08:00
</li>
2012-05-31 22:21:28 -07:00
</ul>
</nav>
2013-01-21 16:08:08 -08:00
<div class="linode">
<a href="http://www.linode.com/" title="Linode - Xen VPS Hosting. Deploy and Manage Linux Virtual Servers in the Linode Cloud." target="blank">
<span>Proudly hosted on</span>
</a>
</div>
2012-05-31 22:21:28 -07:00
</aside>
2012-05-31 19:32:32 -07:00
{% endblock %}
<div class="inner">
{% block content %}{% endblock %}
{% block rochester-made %}
<div class="rochester-made">
2012-07-08 19:59:35 -07:00
<a href="http://rochestermade.com/" title="Proudly made in Rochester, NY, USA">
<img src="{{ STATIC_URL }}images/rochester-made.png" alt="" />
</a>
</div>
{% endblock %}
</div>
2012-05-31 22:21:28 -07:00
<div class="left-y ruler"></div>
<div class="right-y ruler"></div>
</section>
{% endblock %}
2012-04-09 10:57:27 -07:00
<section class="main group hidden" id="main-edit"></section>
2012-05-31 22:21:28 -07:00
{% block keyboard-shortcuts %}
<div class="modal hide" id="keyboard-shortcuts">
<div class="modal-header">
<a href="#" class="close">×</a>
<h3><span>Keyboard shortcuts</span></h3>
</div>
<div class="modal-body">
<table class="table table-striped table-bordered table-condensed">
<thead>
<tr>
<th>Key</th>
<th>Function</th>
</tr>
</thead>
<tbody>
<tr>
<td>h</td>
<td>Show / hide keyboard shortcuts</td>
</tr>
<tr>
<td>/</td>
<td>Focus search field</td>
</tr>
<tr>
<td>esc</td>
<td>Unfocus search field / deselect snipt</td>
</tr>
<tr>
<td>j</td>
<td>Next snipt</td>
</tr>
<tr>
<td>k</td>
<td>Previous snipt</td>
</tr>
<tr>
<td>o / return</td>
<td>Go to snipt</td>
</tr>
<tr>
<td>u</td>
<td>Go to snipt's author</td>
</tr>
<tr>
<td>e</td>
<td>Expand / collapse snipt</td>
</tr>
<tr>
<td>v</td>
<td>Embed snipt</td>
</tr>
<tr>
<td>c</td>
<td>Copy snipt</td>
</tr>
<tr>
<td>&lt;ctrl-e&gt;</td>
<td>Edit snipt</td>
</tr>
<tr>
<td>&lt;ctrl-delete&gt; or &lt;ctrl-backspace&gt;</td>
<td>Delete snipt</td>
</tr>
<tr>
2012-06-05 17:56:52 -07:00
<td>&lt;ctrl-n&gt; or &lt;alt+n&gt;</td>
2012-05-31 22:21:28 -07:00
<td>Add new snipt</td>
</tr>
<tr>
<td>&lt;ctrl-s&gt;</td>
<td>Save snipt</td>
</tr>
<tr>
<td>&lt;ctrl-c&gt;</td>
<td>Save snipt and close</td>
</tr>
<tr>
<td>n</td>
<td>Next page</td>
</tr>
<tr>
<td>p</td>
<td>Previous page</td>
</tr>
<tr>
<td>g</td>
<td>Scroll to top of page</td>
</tr>
<tr>
<td>G</td>
<td>Scroll to bottom of page</td>
</tr>
<tr>
<td>&lt;ctrl-h&gt;</td>
<td>Back</td>
</tr>
<tr>
<td>&lt;ctrl-l&gt;</td>
<td>Forward</td>
</tr>
<tr>
<td>t</td>
<td>Open new window/tab</td>
</tr>
<tr>
<td>r</td>
<td>Refresh page</td>
</tr>
</tbody>
</table>
</div>
2012-01-25 06:49:36 -08:00
</div>
2012-05-31 22:21:28 -07:00
{% endblock %}
2012-07-08 20:44:47 -07:00
2013-02-10 19:16:15 -08:00
{% block extra-scripts %}{% endblock %}
2013-02-07 07:44:49 -08:00
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script>
2013-02-11 22:04:25 -08:00
<script type="text/javascript" src="{{ STATIC_URL }}js/snipt.js?45"></script>
2013-02-07 07:44:49 -08:00
2012-07-08 20:44:47 -07:00
{% block inline-js %}
2012-07-17 22:15:16 -07:00
<script type="text/javascript">
{% block js %}
2012-07-17 22:15:16 -07:00
window.user = '{{ request.user.username }}';
window.user_id = {{ request.user.id }};
window.user_profile_id = {{ request.user.profile.id }};
2012-07-17 22:15:16 -07:00
{% if public %}
window.pub = {{ public|lower }};
{% else %}
window.pub = null;
{% endif %}
2012-07-17 22:15:16 -07:00
window.api_key = '{{ request.user.api_key.key }}';
2012-07-17 22:15:16 -07:00
{% endblock %}
{% if tag %}
2012-07-17 22:15:16 -07:00
window.tag = '{{ tag.name }}';
2012-07-17 22:15:16 -07:00
{% endif %}
2012-07-31 18:39:40 -07:00
{% if request.user.profile.is_pro %}
2012-07-31 18:39:40 -07:00
window.user_is_pro = true;
window.default_editor = '{{ request.user.profile.get_default_editor_display|lower }}';
2013-02-05 12:24:51 -08:00
window.editor_theme = '{{ request.user.profile.editor_theme }}';
2012-07-31 18:39:40 -07:00
{% else %}
2012-07-31 18:39:40 -07:00
window.user_is_pro = false;
2012-07-31 18:39:40 -07:00
{% endif %}
2012-07-17 22:15:16 -07:00
</script>
2012-07-08 20:44:47 -07:00
{% endblock %}
2012-09-17 19:41:12 -07:00
{% if has_snipts and detail %}
2012-09-17 17:31:45 -07:00
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
{% endif %}
2012-04-09 10:57:27 -07:00
<div class="hidden" id="templates">
{% include 'snipts/snipt-js-template.html' %}
{% include 'snipts/snipt-edit-js-template.html' %}
</div>
2012-04-04 14:35:38 -07:00
{% if request.user.is_authenticated %}
2012-04-16 15:52:49 -07:00
{% if not debug %}
2012-06-04 17:59:05 -07:00
{% block intercom %}
<script id="IntercomSettingsScriptTag">
var intercomSettings = {
app_id: 'sajf131y',
email: '{{ request.user.email }}',
created_at: {{ request.user.date_joined|date:"U" }},
custom_data: {
'snipts count': {% snipts_count_for_user %},
'profile link': 'https://snipt.net/{{ request.user.username }}/'
2012-08-01 10:53:11 -07:00
},
widget: {
activator: '#IntercomDefaultWidget',
label: 'Support Chat'
2012-06-04 17:59:05 -07:00
}
};
</script>
<script>
(function() {
function async_load() {
var s = document.createElement('script');
s.type = 'text/javascript'; s.async = true;
s.src = 'https://api.intercom.io/api/js/library.js';
var x = document.getElementsByTagName('script')[0];
x.parentNode.insertBefore(s, x);
}
if (window.attachEvent) {
window.attachEvent('onload', async_load);
} else {
window.addEventListener('load', async_load, false);
}
})();
2013-01-21 07:20:06 -08:00
</script>
2012-06-04 17:59:05 -07:00
{% endblock %}
2012-04-16 15:52:49 -07:00
{% endif %}
2012-07-08 20:44:47 -07:00
{% endif %}
2013-02-07 07:58:26 -08:00
{% include 'analytics.html' %}
2012-08-09 12:58:25 -07:00
2012-07-08 20:44:47 -07:00
<div class="hidden">
<img src="{{ STATIC_URL }}images/header-fixed-save.gif" alt="" />
<img src="{{ STATIC_URL }}images/chosen-sprite.png" alt="" />
<img src="{{ STATIC_URL }}images/aside-nav-open-bottom-bg.gif" alt="" />
<img src="{{ STATIC_URL }}images/aside-nav-open-top-bg.gif" alt="" />
</div>
2011-06-01 21:50:18 -07:00
</body>
</html>