summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEvgeny Fadeev <evgeny.fadeev@gmail.com>2010-12-21 02:34:27 -0500
committerEvgeny Fadeev <evgeny.fadeev@gmail.com>2010-12-21 03:08:29 -0500
commitd5a71e2e1fa8d11cbbf26706f8ac0e03b8fe2f50 (patch)
tree8940b4a23d57bf0afc3928bde594bc7bcce81e45
parentbca2c2577b4b6997e030256e5e61cb85999afd20 (diff)
downloadaskbot-d5a71e2e1fa8d11cbbf26706f8ac0e03b8fe2f50.tar.gz
askbot-d5a71e2e1fa8d11cbbf26706f8ac0e03b8fe2f50.tar.bz2
askbot-d5a71e2e1fa8d11cbbf26706f8ac0e03b8fe2f50.zip
simplified template base.html, added options to hide default footer and the logo
-rw-r--r--askbot/conf/skin_general_settings.py26
-rw-r--r--askbot/skins/default/templates/base.html116
-rw-r--r--askbot/skins/default/templates/blocks/README2
-rw-r--r--askbot/skins/default/templates/blocks/bottom_scripts.html79
-rw-r--r--askbot/skins/default/templates/blocks/forum_body.html14
-rw-r--r--askbot/skins/default/templates/blocks/head.html25
-rw-r--r--askbot/skins/default/templates/blocks/header_meta_links.html55
-rw-r--r--askbot/skins/default/templates/header.html58
8 files changed, 208 insertions, 167 deletions
diff --git a/askbot/conf/skin_general_settings.py b/askbot/conf/skin_general_settings.py
index a3b22a0a..8d8c679f 100644
--- a/askbot/conf/skin_general_settings.py
+++ b/askbot/conf/skin_general_settings.py
@@ -32,6 +32,20 @@ settings.register(
)
settings.register(
+ BooleanValue(
+ GENERAL_SKIN_SETTINGS,
+ 'SHOW_LOGO',
+ description = _('Show logo'),
+ help_text = _(
+ 'Check if you want to show logo in the forum header '
+ 'or uncheck in the case you do not want the logo to '
+ 'appear in the default location'
+ ),
+ default = True
+ )
+)
+
+settings.register(
ImageValue(
GENERAL_SKIN_SETTINGS,
'SITE_FAVICON',
@@ -68,6 +82,18 @@ settings.register(
settings.register(
BooleanValue(
GENERAL_SKIN_SETTINGS,
+ 'SHOW_FOOTER',
+ description = _('Show footer'),
+ help_text = _(
+ 'Check if you want to show the footer on each forum page'
+ ),
+ default = True
+ )
+)
+
+settings.register(
+ BooleanValue(
+ GENERAL_SKIN_SETTINGS,
'ALWAYS_SHOW_ALL_UI_FUNCTIONS',
default = False,
description = _('Show all UI functions to all users'),
diff --git a/askbot/skins/default/templates/base.html b/askbot/skins/default/templates/base.html
index 90ea1568..22578ca0 100644
--- a/askbot/skins/default/templates/base.html
+++ b/askbot/skins/default/templates/base.html
@@ -4,121 +4,13 @@
{% spaceless %}
<head>
<title>{% block title %}{% endblock %} - {{ settings.APP_TITLE|escape }}</title>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- {% block meta_description %}
- <meta name="description" content="{{settings.APP_DESCRIPTION|escape}}" />
- {% endblock %}
- <meta name="keywords" content="{%block keywords%}{%endblock%},{{settings.APP_KEYWORDS|escape}}" />
- {% if settings.GOOGLE_SITEMAP_CODE %}
- <meta name="google-site-verification" content="{{settings.GOOGLE_SITEMAP_CODE}}" />
- {% endif %}
- <link rel="shortcut icon" href="{{ "/images/favicon.gif"|media }}" />
- <link href="{{"/style/style.css"|media }}" rel="stylesheet" type="text/css" />
- {% block forestyle %}{% endblock %}
- {% if user_messages %}
- <style type="text/css">
- body { margin-top:2.4em; }
- </style>
- {% endif %}
- <script type="text/javascript">
- var askbot = {};
- askbot['data'] = {};
- askbot['urls'] = {};
- askbot['settings'] = {};
- askbot['messages'] = {};
- </script>
- {% block forejs %}
- {% endblock %}
+ {% include "blocks/head.html" %}
+ {# avoid adding javascript here so that pages load faster #}
</head>
{% endspaceless %}
<body{% if page_class %} class="{{page_class}}"{% endif %}>
- <div class="notify" style="display:none">
- {% if user_messages %}
- {% for message in user_messages %}
- <p class="darkred">{{ message }}</p>
- {% endfor %}
- {% endif %}
- <a id="close-notify" onclick="notify.close(true)">&times;</a>
- </div>
- {% include "header.html" %}
- {% block body %}
- {% endblock %}
- {% include "footer.html" %}
- <script type="text/javascript">
- var i18nLang = '{{settings.LANGUAGE_CODE}}';
- var scriptUrl = '/{{settings.ASKBOT_URL}}'
- var askbotSkin = '{{settings.ASKBOT_DEFAULT_SKIN}}';
- var enableMathJax = {% if settings.ENABLE_MATHJAX %}true{% else %}false{% endif %};
- {% if request.user.is_authenticated() %}
- askbot['data']['userIsAuthenticated'] = true;
- askbot['data']['userId'] = {{request.user.id}};
- askbot['data']['userIsAdminOrMod'] = {% if
- request.user.is_administrator()
- or request.user.is_moderator()
- %}true{% else %}false{% endif %};
- {% else %}
- askbot['data']['userIsAuthenticated'] = false;
- {% endif %}
- </script>
- <script
- type="text/javascript"
- {% if settings.DEBUG %}
- src="{{"/js/jquery-1.4.3.js"|media}}"
- {% else %}
- src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"
- {% endif %}
- ></script>
- <script type='text/javascript' src="{{"/js/i18n.js"|media }}"></script>
- <script type='text/javascript' src="{{"/js/jquery.i18n.js"|media }}"></script>
- <script type='text/javascript' src="{{"/js/utils.js"|media }}"></script>
- {% if settings.ENABLE_MATHJAX %}
- <script type='text/javascript' src="{{settings.MATHJAX_BASE_URL}}/MathJax.js">
- MathJax.Hub.Config({
- extensions: ["tex2jax.js"],
- jax: ["input/TeX","output/HTML-CSS"],
- tex2jax: {inlineMath: [["$","$"],["\\(","\\)"]]}
- });
- </script>
- {% endif %}
- {% block endjs %}
- {% endblock %}
- <script type="text/javascript">
- {% if active_tab != "tags" and active_tab != "users" %}
- {# start asking question with title from search query #}
- $(document).ready(function(){
- $('#nav_ask').click(
- function(){
- var starting_title = $('#keywords').attr('value');
- var new_url = $(this).attr('href') + '?title=' + encodeURIComponent(starting_title);
- window.location.href = new_url;
- return false;
- }
- );
- //{# focus input on the search bar endcomment #}
- {% if active_tab != "ask" %}
- $('#keywords').focus();
- {% else %}
- $('#id_title').focus();
- {% endif %}
- });
- {% endif %}
- {% if user_messages %}
- $('#validate_email_alert').click(function(){notify.close(true)})
- notify.show();
- {% endif %}
- </script>
- {% if settings.GOOGLE_ANALYTICS_KEY %}
- <script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script>
- <script type="text/javascript">
- try {
- var pageTracker = _gat._getTracker('{{ settings.GOOGLE_ANALYTICS_KEY }}');
- pageTracker._trackPageview();
- } catch(err) {}
- </script>
- {% endif %}
+ {% include "blocks/forum_body.html" %}
+ {% include "blocks/bottom_scripts.html" %}
</body>
</html>
<!-- end template base.html -->
diff --git a/askbot/skins/default/templates/blocks/README b/askbot/skins/default/templates/blocks/README
new file mode 100644
index 00000000..88537d0a
--- /dev/null
+++ b/askbot/skins/default/templates/blocks/README
@@ -0,0 +1,2 @@
+this directory should contain block templates that
+are included within other templates
diff --git a/askbot/skins/default/templates/blocks/bottom_scripts.html b/askbot/skins/default/templates/blocks/bottom_scripts.html
new file mode 100644
index 00000000..93800b2c
--- /dev/null
+++ b/askbot/skins/default/templates/blocks/bottom_scripts.html
@@ -0,0 +1,79 @@
+{# most, if not all javascripts should go here
+ this template is included at the very bottow of the
+ main template "base.html"
+#}
+<script type="text/javascript">
+ var i18nLang = '{{settings.LANGUAGE_CODE}}';
+ var scriptUrl = '/{{settings.ASKBOT_URL}}'
+ var askbotSkin = '{{settings.ASKBOT_DEFAULT_SKIN}}';
+ var enableMathJax = {% if settings.ENABLE_MATHJAX %}true{% else %}false{% endif %};
+ {% if request.user.is_authenticated() %}
+ askbot['data']['userIsAuthenticated'] = true;
+ askbot['data']['userId'] = {{request.user.id}};
+ askbot['data']['userIsAdminOrMod'] = {% if
+ request.user.is_administrator()
+ or request.user.is_moderator()
+ %}true{% else %}false{% endif %};
+ {% else %}
+ askbot['data']['userIsAuthenticated'] = false;
+ {% endif %}
+</script>
+<script
+ type="text/javascript"
+ {% if settings.DEBUG %}
+ src="{{"/js/jquery-1.4.3.js"|media}}"
+ {% else %}
+ src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"
+ {% endif %}
+></script>
+<script type='text/javascript' src="{{"/js/i18n.js"|media }}"></script>
+<script type='text/javascript' src="{{"/js/jquery.i18n.js"|media }}"></script>
+<script type='text/javascript' src="{{"/js/utils.js"|media }}"></script>
+{% if settings.ENABLE_MATHJAX %}
+ <script type='text/javascript' src="{{settings.MATHJAX_BASE_URL}}/MathJax.js">
+ MathJax.Hub.Config({
+ extensions: ["tex2jax.js"],
+ jax: ["input/TeX","output/HTML-CSS"],
+ tex2jax: {inlineMath: [["$","$"],["\\(","\\)"]]}
+ });
+ </script>
+{% endif %}
+{% block endjs %}
+{% endblock %}
+<script type="text/javascript">
+{% if active_tab != "tags" and active_tab != "users" %}
+{# start asking question with title from search query #}
+ $(document).ready(function(){
+ $('#nav_ask').click(
+ function(){
+ var starting_title = $('#keywords').attr('value');
+ var new_url = $(this).attr('href') + '?title=' + encodeURIComponent(starting_title);
+ window.location.href = new_url;
+ return false;
+ }
+ );
+ //{# focus input on the search bar endcomment #}
+ {% if active_tab != "ask" %}
+ $('#keywords').focus();
+ {% else %}
+ $('#id_title').focus();
+ {% endif %}
+ });
+{% endif %}
+{% if user_messages %}
+ $('#validate_email_alert').click(function(){notify.close(true)})
+ notify.show();
+{% endif %}
+</script>
+{% if settings.GOOGLE_ANALYTICS_KEY %}
+<script type="text/javascript">
+ var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
+ document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
+ </script>
+ <script type="text/javascript">
+ try {
+ var pageTracker = _gat._getTracker('{{ settings.GOOGLE_ANALYTICS_KEY }}');
+ pageTracker._trackPageview();
+ } catch(err) {}
+</script>
+{% endif %}
diff --git a/askbot/skins/default/templates/blocks/forum_body.html b/askbot/skins/default/templates/blocks/forum_body.html
new file mode 100644
index 00000000..c36b48cd
--- /dev/null
+++ b/askbot/skins/default/templates/blocks/forum_body.html
@@ -0,0 +1,14 @@
+<div class="notify" style="display:none">
+ {% if user_messages %}
+ {% for message in user_messages %}
+ <p class="darkred">{{ message }}</p>
+ {% endfor %}
+ {% endif %}
+ <a id="close-notify" onclick="notify.close(true)">&times;</a>
+</div>
+{% include "header.html" %}
+{% block body %}
+{% endblock %}
+{% if settings.SHOW_FOOTER %}
+ {% include "footer.html" %}
+{% endif %}
diff --git a/askbot/skins/default/templates/blocks/head.html b/askbot/skins/default/templates/blocks/head.html
new file mode 100644
index 00000000..1e3060f3
--- /dev/null
+++ b/askbot/skins/default/templates/blocks/head.html
@@ -0,0 +1,25 @@
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+{% block meta_description %}
+<meta name="description" content="{{settings.APP_DESCRIPTION|escape}}" />
+{% endblock %}
+<meta name="keywords" content="{%block keywords%}{%endblock%},{{settings.APP_KEYWORDS|escape}}" />
+{% if settings.GOOGLE_SITEMAP_CODE %}
+<meta name="google-site-verification" content="{{settings.GOOGLE_SITEMAP_CODE}}" />
+{% endif %}
+<link rel="shortcut icon" href="{{ "/images/favicon.gif"|media }}" />
+<link href="{{"/style/style.css"|media }}" rel="stylesheet" type="text/css" />
+{% block forestyle %}{% endblock %}
+{% if user_messages %}
+<style type="text/css">
+ body { margin-top:2.4em; }
+</style>
+{% endif %}
+<script type="text/javascript">
+ var askbot = {};
+ askbot['data'] = {};
+ askbot['urls'] = {};
+ askbot['settings'] = {};
+ askbot['messages'] = {};
+</script>
+{% block forejs %}
+{% endblock %}
diff --git a/askbot/skins/default/templates/blocks/header_meta_links.html b/askbot/skins/default/templates/blocks/header_meta_links.html
new file mode 100644
index 00000000..ecdcde6a
--- /dev/null
+++ b/askbot/skins/default/templates/blocks/header_meta_links.html
@@ -0,0 +1,55 @@
+{% if request.user.is_authenticated() %}
+ <a href="{{ request.user.get_absolute_url() }}">{{ request.user.username }}</a>
+ {% spaceless %}
+ {% if request.user.new_response_count > 0 or request.user.seen_response_count > 0 %}
+ <a class='ab-responses-envelope' href="{{request.user.get_absolute_url()}}?sort=inbox&section=forum">
+ <img
+ alt="{% trans username=request.user.username %}responses for {{username}}{% endtrans %}"
+ {% if request.user.new_response_count > 0 %}
+ src="{{ "/images/mail-envelope-full.png"|media }}"
+ title="{% trans response_count=request.user.new_response_count %}you have a new response{% pluralize %}you nave {{response_count}} new responses{% endtrans %}"
+ {% elif request.user.seen_response_count > 0 %}
+ src="{{ "/images/mail-envelope-empty.png"|media }}"
+ title="{% trans %}no new responses yet{% endtrans %}"
+ {% endif %}
+ />
+ </a>
+ {% endif %}
+ {% if moderation_items %}
+ <a class="ab-responses-envelope"
+ href="{{request.user.get_absolute_url()}}?sort=inbox&section=flags"
+ >
+ {% if moderation_items['new_count'] > 0 %}
+ <img src="{{'/images/dialog-warning.png'|media}}"
+ {% if moderation_items['seen_count'] > 0 %}
+ alt="{% trans new=moderation_items['new_count'], seen=moderation_items['seen_count']%}{{new}} new flagged posts and {{seen}} previous{% endtrans %}"
+ title="{% trans new=moderation_items['new_count'], seen=moderation_items['seen_count']%}{{new}} new flagged posts and {{seen}} previous{% endtrans %}"
+ {% else %}
+ alt="{% trans new=moderation_items['new_count'] %}{{new}} new flagged posts{% endtrans %}"
+ title="{% trans new=moderation_items['new_count'] %}{{new}} new flagged posts{% endtrans %}"
+ {% endif %}
+ />
+ {% elif moderation_items['seen_count'] > 0 %}
+ <img src={{'/images/dialog-warning-off.png'|media}}
+ alt="{% trans seen=moderation_items['seen_count'] %}{{seen}} flagged posts{% endtrans %}"
+ title="{% trans seen=moderation_items['seen_count'] %}{{seen}} flagged posts{% endtrans %}"
+ />
+ {% endif %}
+ </a>
+ {% endif %}
+ {#
+ {% endif %}
+ {% else if moderation_items['seen_count'] > 0 %}
+ {% endif %}
+ {% endif %#}
+ {% endspaceless %}
+ ({{ macros.user_long_score_and_badge_summary(user) }})
+ <a href="{% url logout %}">{% trans %}logout{% endtrans %}</a>
+{% else %}
+ <a href="{% url user_signin %}">{% trans %}login{% endtrans %}</a>
+{% endif %}
+<a href="{% url about %}">{% trans %}about{% endtrans %}</a>
+<a href="{% url faq %}">{% trans %}faq{% endtrans %}</a>
+{% if request.user.is_administrator %}
+<a href="{% url site_settings %}">{% trans %}settings{% endtrans %}</a>
+{% endif %}
diff --git a/askbot/skins/default/templates/header.html b/askbot/skins/default/templates/header.html
index 6b1251f8..917e3a4f 100644
--- a/askbot/skins/default/templates/header.html
+++ b/askbot/skins/default/templates/header.html
@@ -3,64 +3,11 @@
<div id="roof">
<div id="navBar">
<div id="top">
- {% if request.user.is_authenticated() %}
- <a href="{{ request.user.get_absolute_url() }}">{{ request.user.username }}</a>
- {% spaceless %}
- {% if request.user.new_response_count > 0 or request.user.seen_response_count > 0 %}
- <a class='ab-responses-envelope' href="{{request.user.get_absolute_url()}}?sort=inbox&section=forum">
- <img
- alt="{% trans username=request.user.username %}responses for {{username}}{% endtrans %}"
- {% if request.user.new_response_count > 0 %}
- src="{{ "/images/mail-envelope-full.png"|media }}"
- title="{% trans response_count=request.user.new_response_count %}you have a new response{% pluralize %}you nave {{response_count}} new responses{% endtrans %}"
- {% elif request.user.seen_response_count > 0 %}
- src="{{ "/images/mail-envelope-empty.png"|media }}"
- title="{% trans %}no new responses yet{% endtrans %}"
- {% endif %}
- />
- </a>
- {% endif %}
- {% if moderation_items %}
- <a class="ab-responses-envelope"
- href="{{request.user.get_absolute_url()}}?sort=inbox&section=flags"
- >
- {% if moderation_items['new_count'] > 0 %}
- <img src="{{'/images/dialog-warning.png'|media}}"
- {% if moderation_items['seen_count'] > 0 %}
- alt="{% trans new=moderation_items['new_count'], seen=moderation_items['seen_count']%}{{new}} new flagged posts and {{seen}} previous{% endtrans %}"
- title="{% trans new=moderation_items['new_count'], seen=moderation_items['seen_count']%}{{new}} new flagged posts and {{seen}} previous{% endtrans %}"
- {% else %}
- alt="{% trans new=moderation_items['new_count'] %}{{new}} new flagged posts{% endtrans %}"
- title="{% trans new=moderation_items['new_count'] %}{{new}} new flagged posts{% endtrans %}"
- {% endif %}
- />
- {% elif moderation_items['seen_count'] > 0 %}
- <img src={{'/images/dialog-warning-off.png'|media}}
- alt="{% trans seen=moderation_items['seen_count'] %}{{seen}} flagged posts{% endtrans %}"
- title="{% trans seen=moderation_items['seen_count'] %}{{seen}} flagged posts{% endtrans %}"
- />
- {% endif %}
- </a>
- {% endif %}
- {#
- {% endif %}
- {% else if moderation_items['seen_count'] > 0 %}
- {% endif %}
- {% endif %#}
- {% endspaceless %}
- ({{ macros.user_long_score_and_badge_summary(user) }})
- <a href="{% url logout %}">{% trans %}logout{% endtrans %}</a>
- {% else %}
- <a href="{% url user_signin %}">{% trans %}login{% endtrans %}</a>
- {% endif %}
- <a href="{% url about %}">{% trans %}about{% endtrans %}</a>
- <a href="{% url faq %}">{% trans %}faq{% endtrans %}</a>
- {% if request.user.is_administrator %}
- <a href="{% url site_settings %}">{% trans %}settings{% endtrans %}</a>
- {% endif %}
+ {% include "blocks/header_meta_links.html" %}
</div>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
+ {% if settings.SHOW_LOGO %}
<td id="logoContainer">
<div id="logo">
<a href="{% url questions %}?start_over=true"><img
@@ -69,6 +16,7 @@
alt="{% trans site=settings.APP_SHORT_NAME %}{{site}} logo{% endtrans %}"/></a>
</div>
</td>
+ {% endif %}
<td id="navTabContainer" valign="bottom" align="left">
<div class="nav">
<a