Carbon ads, adding filter for tags in API, working on adams theme
parent
bf21af8dcf
commit
7c1b06891e
1
.kick
1
.kick
|
@ -4,6 +4,7 @@ process do |files|
|
|||
when %r{^(.+).scss$}
|
||||
execute "scss -t compressed media/css/style.scss media/css/style.css"
|
||||
execute "scss -t compressed media/css/blog-themes/default/style.scss media/css/blog-themes/default/style.css"
|
||||
execute "scss -t compressed media/css/blog-themes/pro-adams/style.scss media/css/blog-themes/pro-adams/style.css"
|
||||
execute "media/css/compile-css.sh"
|
||||
when %r{^(.+).js$}
|
||||
execute "media/js/compile-js.sh"
|
||||
|
|
|
@ -1,22 +1,45 @@
|
|||
{% extends "base.html" %}
|
||||
{% load snipt_tags %}
|
||||
|
||||
{% block body-class %}blog-site{% endblock %}
|
||||
{% block html-class %}blog-site{% endblock %}
|
||||
<!DOCTYPE html>
|
||||
<html lang="en" class="{% block html-class %}{% endblock %}">
|
||||
<head>
|
||||
|
||||
{% block page-title %}{% if blog_user.username == 'nick' %}// Nick Sergeant {% elif blog_user.username == 'blog' %}// Snipt Blog{% else %}// {{ blog_user.username }}{% endif %}{% endblock %}
|
||||
<title>{% block page-title %}{% if blog_user.username == 'nick' %}// Nick Sergeant {% elif blog_user.username == 'blog' %}// Snipt Blog{% else %}// {{ blog_user.username }}{% endif %}{% endblock %}</title>
|
||||
<meta charset="utf-8" />
|
||||
{% if 'page' in request.GET %}
|
||||
<meta name="robots" content="noindex, follow" />
|
||||
{% endif %}
|
||||
|
||||
{% block page-description %}{% endblock %}
|
||||
{% block rochester-made %}{% endblock %}
|
||||
{% block keyboard-shortcuts %}{% endblock %}
|
||||
{% block intercom %}{% endblock %}
|
||||
{% block js %}
|
||||
{{ block.super }}
|
||||
window.blog_post = true;
|
||||
{% endblock %}
|
||||
<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>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/blog-themes/pro-adams/style.css?1" />
|
||||
|
||||
{% if has_snipts and not detail %}
|
||||
<link rel="alternate" type="application/rss+xml" title="RSS" href="{{ request.path }}?rss{% if not public %}&api_key={{ request.user.api_key.key }}{% endif %}" />
|
||||
{% endif %}
|
||||
|
||||
<!--[if IE]>
|
||||
<style type="text/css">
|
||||
.group {
|
||||
display: block;
|
||||
zoom: 1;
|
||||
}
|
||||
</style>
|
||||
<![endif]-->
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="https://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
</head>
|
||||
|
||||
<body class="{% block body-class %}{% endblock %}">
|
||||
|
||||
<div class="frame">
|
||||
|
||||
{% block header %}
|
||||
<header class="main">
|
||||
<div class="inner group">
|
||||
<h1>
|
||||
<a href="/">
|
||||
{% if blog_user.username == 'nick' %}
|
||||
|
@ -28,34 +51,37 @@
|
|||
{% endif %}
|
||||
</a>
|
||||
</h1>
|
||||
</div>
|
||||
</header>
|
||||
{% endblock %}
|
||||
{% block sub-header %}
|
||||
<header class="sub">
|
||||
<div class="inner group">
|
||||
<ul class="bcrumb">
|
||||
<li class="prompt">//</li>
|
||||
<li><a href="/">blog</a></li>
|
||||
{% block breadcrumb %}{% endblock %}
|
||||
<li class="rss">
|
||||
<a href="/?rss">RSS</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</header>
|
||||
{% endblock %}
|
||||
{% block aside %}
|
||||
<aside class="main">
|
||||
{% if sidebar %}
|
||||
<section class="sidebar">
|
||||
{{ sidebar.stylized|safe }}
|
||||
</section>
|
||||
|
||||
{% if not debug %}
|
||||
<script type="text/javascript">
|
||||
var _gauges = _gauges || [];
|
||||
(function() {
|
||||
var t = document.createElement('script');
|
||||
t.type = 'text/javascript';
|
||||
t.async = true;
|
||||
t.id = 'gauges-tracker';
|
||||
t.setAttribute('data-site-id', '4ed65ee7f5a1f530f1000001');
|
||||
t.src = '//secure.gaug.es/track.js';
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(t, s);
|
||||
})();
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
window._idl = {};
|
||||
_idl.variant = 'modal';
|
||||
(function() {
|
||||
var idl = document.createElement('script');
|
||||
idl.type = 'text/javascript';
|
||||
idl.async = true;
|
||||
idl.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'members.internetdefenseleague.org/include/?url=' + (_idl.url || '') + '&campaign=' + (_idl.campaign || '') + '&variant=' + (_idl.variant || 'banner');
|
||||
document.getElementsByTagName('body')[0].appendChild(idl);
|
||||
})();
|
||||
</script>
|
||||
{% endif %}
|
||||
<nav class="footer {% if sidebar %}with-sidebar{% endif %}">
|
||||
<ul class="powered">
|
||||
<li class="snipt"><a href="https://snipt.net/">Blog powered by Snipt</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
</aside>
|
||||
{% endblock %}
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -28,9 +28,11 @@ def blog_list(request, username_or_custom_slug=None):
|
|||
context['snipts'] = context['snipts'][:20]
|
||||
return rss(request, context)
|
||||
|
||||
if request.blog_user.profile.is_pro:
|
||||
template = 'blogs/themes/pro-adams/list.html'
|
||||
else:
|
||||
#if request.blog_user.profile.is_pro:
|
||||
#template = 'blogs/themes/pro-adams/list.html'
|
||||
#else:
|
||||
#template = 'blogs/themes/default/list.html'
|
||||
|
||||
template = 'blogs/themes/default/list.html'
|
||||
|
||||
return render_to_response(
|
||||
|
@ -60,9 +62,11 @@ def blog_post(request, username_or_custom_slug):
|
|||
'snipt': snipt,
|
||||
}
|
||||
|
||||
if request.blog_user.profile.is_pro:
|
||||
template = 'blogs/themes/pro-adams/post.html'
|
||||
else:
|
||||
#if request.blog_user.profile.is_pro:
|
||||
#template = 'blogs/themes/pro-adams/post.html'
|
||||
#else:
|
||||
#template = 'blogs/themes/default/post.html'
|
||||
|
||||
template = 'blogs/themes/default/post.html'
|
||||
|
||||
return render_to_response(
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
html,body{background:#F2F2F2;margin:0;padding:0}body{color:#666;font:normal 14px/16px "Helvetica Neue",Helvetica,Arial,"Liberation Sans",FreeSans,sans-serif;text-rendering:optimizeLegibility}.group:after{content:".";display:block;height:0;clear:both;visibility:hidden}.hidden{display:none}
|
|
@ -0,0 +1,85 @@
|
|||
// Fonts
|
||||
$Helvetica: 'Helvetica Neue', Helvetica, Arial, 'Liberation Sans', FreeSans, sans-serif;
|
||||
$Consolas: Consolas, Menlo, "Courier New", monospace;
|
||||
|
||||
// Mixins
|
||||
@mixin border-radius($radius: 5px) {
|
||||
-webkit-background-clip: padding-box;
|
||||
-webkit-border-radius: $radius;
|
||||
-moz-background-clip: padding-box;
|
||||
-moz-border-radius: $radius;
|
||||
border-radius: $radius;
|
||||
background-clip: padding-box;
|
||||
}
|
||||
@mixin box-shadow($horizontal: 0px, $vertical: 1px, $blur: 2px, $color: #CCC) {
|
||||
-webkit-box-shadow: $horizontal $vertical $blur $color;
|
||||
-moz-box-shadow: $horizontal $vertical $blur $color;
|
||||
box-shadow: $horizontal $vertical $blur $color;
|
||||
}
|
||||
@mixin inset-box-shadow($horizontal: 0px, $vertical: 1px, $blur: 2px, $color: #CCC) {
|
||||
-webkit-box-shadow: inset $horizontal $vertical $blur $color;
|
||||
-moz-box-shadow: inset $horizontal $vertical $blur $color;
|
||||
box-shadow: inset $horizontal $vertical $blur $color;
|
||||
}
|
||||
@mixin multi-color-border($top, $sides, $bottom) {
|
||||
border-top: 1px solid $top;
|
||||
border-left: 1px solid $sides;
|
||||
border-right: 1px solid $sides;
|
||||
border-bottom: 1px solid $bottom;
|
||||
}
|
||||
@mixin multi-border-radius($topLeft: 5px, $topRight: 5px, $bottomRight: 5px, $bottomLeft: 5px) {
|
||||
-webkit-border-top-left-radius: $topLeft;
|
||||
-webkit-border-top-right-radius: $topRight;
|
||||
-webkit-border-bottom-right-radius: $bottomRight;
|
||||
-webkit-border-bottom-left-radius: $bottomLeft;
|
||||
-moz-border-radius-topleft: $topLeft;
|
||||
-moz-border-radius-topright: $topRight;
|
||||
-moz-border-radius-bottomright: $bottomRight;
|
||||
-moz-border-radius-bottomleft: $bottomLeft;
|
||||
border-top-left-radius: $topLeft;
|
||||
border-top-right-radius: $topRight;
|
||||
border-bottom-right-radius: $bottomRight;
|
||||
border-bottom-left-radius: $bottomLeft;
|
||||
}
|
||||
@mixin vertical-gradient($start: #000, $stop: #FFF) { background: ($start + $stop) / 2;
|
||||
background: -webkit-gradient(linear, left top, left bottom, from($start), to($stop));
|
||||
background: -moz-linear-gradient(center top, $start 0%, $stop 100%);
|
||||
background: -moz-gradient(center top, $start 0%, $stop 100%);
|
||||
}
|
||||
@mixin vertical-gradient-with-image($image, $start: #000, $stop: #FFF) {
|
||||
background: ($start + $stop) / 2 $image;
|
||||
background: $image, -webkit-gradient(linear, left top, left bottom, from($start), to($stop));
|
||||
background: $image, -moz-linear-gradient(center top, $start 0%, $stop 100%);
|
||||
background: $image, -moz-gradient(center top, $start 0%, $stop 100%);
|
||||
}
|
||||
@mixin opacity($op) {
|
||||
-khtml-opacity: $op;
|
||||
-moz-opacity: $op;
|
||||
opacity: $op;
|
||||
}
|
||||
|
||||
// Page
|
||||
html, body {
|
||||
background: #F2F2F2;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
body {
|
||||
color: #666;
|
||||
font: normal 14px/16px $Helvetica;
|
||||
text-rendering: optimizeLegibility;
|
||||
}
|
||||
|
||||
// Utils
|
||||
.group:after {
|
||||
content: ".";
|
||||
display: block;
|
||||
height: 0;
|
||||
clear: both;
|
||||
visibility: hidden;
|
||||
}
|
||||
.hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
// Global
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1358,8 +1358,7 @@ div.empty-snipts {
|
|||
@include border-radius(8px);
|
||||
}
|
||||
div.site-notice {
|
||||
margin: 20px;
|
||||
margin-right: 30px;
|
||||
margin: 30px;
|
||||
padding-right: 14px;
|
||||
text-align: center;
|
||||
|
||||
|
|
|
@ -57,6 +57,17 @@ class PublicTagResource(ModelResource):
|
|||
allowed_methods = ['get']
|
||||
cache = SimpleCache()
|
||||
|
||||
def build_filters(self, filters=None):
|
||||
if filters is None:
|
||||
filters = {}
|
||||
|
||||
orm_filters = super(PublicTagResource, self).build_filters(filters)
|
||||
|
||||
if 'q' in filters:
|
||||
orm_filters['slug'] = filters['q']
|
||||
|
||||
return orm_filters
|
||||
|
||||
def dehydrate(self, bundle):
|
||||
bundle.data['absolute_url'] = '/public/tag/%s/' % bundle.obj.slug
|
||||
bundle.data['snipts'] = '/api/public/snipt/?tag=%d' % bundle.obj.id
|
||||
|
@ -134,6 +145,16 @@ class PrivateTagResource(ModelResource):
|
|||
always_return_data = True
|
||||
cache = SimpleCache()
|
||||
|
||||
def build_filters(self, filters=None):
|
||||
if filters is None:
|
||||
filters = {}
|
||||
|
||||
orm_filters = super(PublicTagResource, self).build_filters(filters)
|
||||
|
||||
if 'q' in filters:
|
||||
orm_filters['slug'] = filters['q']
|
||||
|
||||
return orm_filters
|
||||
def dehydrate(self, bundle):
|
||||
bundle.data['absolute_url'] = '/%s/tag/%s/' % (bundle.request.user.username,
|
||||
bundle.obj.slug)
|
||||
|
|
|
@ -11,5 +11,8 @@
|
|||
{% endblock %}
|
||||
|
||||
{% block aside-top %}
|
||||
{% if not request.user.profile.is_pro %}
|
||||
{% include 'carbon.html' %}
|
||||
{% endif %}
|
||||
{% include "snipts/tags-public.html" %}
|
||||
{% endblock %}
|
||||
|
|
|
@ -13,6 +13,9 @@
|
|||
{% endblock %}
|
||||
|
||||
{% block aside-top %}
|
||||
{% if not request.user.profile.is_pro %}
|
||||
{% include 'carbon.html' %}
|
||||
{% endif %}
|
||||
<div class="profile group">
|
||||
<span class="avatar" title="Manage your avatar at Gravatar.com" style="background-image: url('https://secure.gravatar.com/avatar/{{ user.email|md5 }}?s=50');"></span>
|
||||
<div class="meta">
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
<section class="ad">
|
||||
<div id="carbonads-container">
|
||||
<div class="carbonad">
|
||||
<div id="azcarbon"></div>
|
||||
<script type="text/javascript">
|
||||
var z = document.createElement("script");
|
||||
z.type = "text/javascript";
|
||||
z.async = true;
|
||||
z.src = "https://engine.carbonads.com/z/12124/azcarbon_2_1_0_VERT";
|
||||
var s = document.getElementsByTagName("script")[0];
|
||||
s.parentNode.insertBefore(z, s);
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="go-pro">
|
||||
<a href="/pro/">Get rid of these annoying ads »</a>
|
||||
</div>
|
Loading…
Reference in New Issue