Snipts count for user for intercom.

master
Nick Sergeant 2012-04-16 18:52:49 -04:00
parent 8d9bdff1e2
commit 94db0dd3c9
3 changed files with 78 additions and 57 deletions

View File

@ -21,21 +21,23 @@
{% with 'true' as detail %} {% with 'true' as detail %}
{% include "snipts/snipt-list.html" %} {% include "snipts/snipt-list.html" %}
{% endwith %} {% endwith %}
<div id="disqus_thread"></div> {% if not debug %}
<script type="text/javascript"> <div id="disqus_thread"></div>
var disqus_shortname = 'snipt-net'; <script type="text/javascript">
{% if debug %} var disqus_shortname = 'snipt-net';
var disqus_developer = 1; {% if debug %}
{% endif %} var disqus_developer = 1;
var disqus_url = '{{ snipt.get_full_absolute_url }}{% if not snipt.public %}?key={{ snipt.key }}{% endif %}'; {% endif %}
var disqus_title = '{{ snipt.title }}'; var disqus_url = '{{ snipt.get_full_absolute_url }}{% if not snipt.public %}?key={{ snipt.key }}{% endif %}';
var disqus_identifier = {{ snipt.id }}; var disqus_title = '{{ snipt.title }}';
var disqus_identifier = {{ snipt.id }};
(function() { (function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true; var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js'; dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})(); })();
</script> </script>
{% endif %}
</section> </section>
{% endblock %} {% endblock %}

View File

@ -3,7 +3,7 @@ from django import template
from templatetag_sugar.register import tag from templatetag_sugar.register import tag
from templatetag_sugar.parser import Variable, Constant from templatetag_sugar.parser import Variable, Constant
from snipts.models import Favorite from snipts.models import Favorite, Snipt
import hashlib import hashlib
@ -29,6 +29,19 @@ def snipt_is_favorited_by_user(context, asvar):
return '' return ''
@tag(register, [])
def snipts_count_for_user(context):
user = context['request'].user
if user.is_authenticated():
snipts = Snipt.objects.filter(user=user).values('id').count()
else:
snipts = 0
return snipts
@register.filter @register.filter
def md5(string): def md5(string):
return hashlib.md5(string.lower()).hexdigest() return hashlib.md5(string.lower()).hexdigest()

View File

@ -1,4 +1,4 @@
{% load compress %} {% load compress snipt_tags %}
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en" class="{% block html-class %}{% endblock %}"> <html lang="en" class="{% block html-class %}{% endblock %}">
@ -243,19 +243,19 @@
{% include 'snipts/snipt-edit-js-template.html' %} {% include 'snipts/snipt-edit-js-template.html' %}
</div> </div>
{% if not debug %} {% if not debug %}
<script type="text/javascript"> <script type="text/javascript">
var _gauges = _gauges || []; var _gauges = _gauges || [];
(function() { (function() {
var t = document.createElement('script'); var t = document.createElement('script');
t.type = 'text/javascript'; t.type = 'text/javascript';
t.async = true; t.async = true;
t.id = 'gauges-tracker'; t.id = 'gauges-tracker';
t.setAttribute('data-site-id', '4ed65ee7f5a1f530f1000001'); t.setAttribute('data-site-id', '4ed65ee7f5a1f530f1000001');
t.src = '//secure.gaug.es/track.js'; t.src = '//secure.gaug.es/track.js';
var s = document.getElementsByTagName('script')[0]; var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(t, s); s.parentNode.insertBefore(t, s);
})(); })();
</script> </script>
{% else %} {% else %}
<script type="text/javascript"> <script type="text/javascript">
document.write('<script src="http://' + (location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1"></' + 'script>') document.write('<script src="http://' + (location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1"></' + 'script>')
@ -263,33 +263,39 @@
{% endif %} {% endif %}
{% if request.user.is_authenticated %} {% if request.user.is_authenticated %}
<script id="IntercomSettingsScriptTag"> {% if not debug %}
var intercomSettings = { <script id="IntercomSettingsScriptTag">
app_id: 'sajf131y', var intercomSettings = {
email: '{{ request.user.email }}', app_id: 'sajf131y',
created_at: {{ request.user.date_joined|date:"U" }}, email: '{{ request.user.email }}',
widget: { created_at: {{ request.user.date_joined|date:"U" }},
activator: '#IntercomDefaultWidget', widget: {
label: 'Support' activator: '#IntercomDefaultWidget',
} label: 'Support Chat'
}; },
</script> custom_data: {
<script> 'snipts count': {% snipts_count_for_user %},
(function() { 'profile link': 'http://snipt.net/{{ request.user.username }}/'
function async_load() { }
var s = document.createElement('script'); };
s.type = 'text/javascript'; s.async = true; </script>
s.src = 'https://api.intercom.io/api/js/library.js'; <script>
var x = document.getElementsByTagName('script')[0]; (function() {
x.parentNode.insertBefore(s, x); function async_load() {
} var s = document.createElement('script');
if (window.attachEvent) { s.type = 'text/javascript'; s.async = true;
window.attachEvent('onload', async_load); s.src = 'https://api.intercom.io/api/js/library.js';
} else { var x = document.getElementsByTagName('script')[0];
window.addEventListener('load', async_load, false); x.parentNode.insertBefore(s, x);
} }
})(); if (window.attachEvent) {
</script> window.attachEvent('onload', async_load);
} else {
window.addEventListener('load', async_load, false);
}
})();
</script>
{% endif %}
{% endif %} {% endif %}
</body> </body>
</html> </html>