From bbbceb617cdfd057aa97cbfb9595620f0aa03f66 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Mon, 11 Mar 2013 16:12:56 +0530 Subject: [PATCH 1/6] website, blog: style fixes --- website/doctype/style_settings/custom_template.css | 10 +++------- website/templates/js/blog.js | 5 +++-- website/templates/pages/blog.html | 3 +++ 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/website/doctype/style_settings/custom_template.css b/website/doctype/style_settings/custom_template.css index 4925837c59..a67c9f1746 100644 --- a/website/doctype/style_settings/custom_template.css +++ b/website/doctype/style_settings/custom_template.css @@ -64,20 +64,16 @@ div.web-footer { } .navbar-inverse .brand, +.navbar-inverse .brand:hover, +.navbar-inverse .brand:focus, .navbar-inverse .nav > li > a { color: #{{ doc.top_bar_foreground or "fff"}}; text-shadow: none; } -.navbar-inverse .brand:hover, .navbar-inverse .nav > li > a:hover, -.navbar-inverse .brand:focus, .navbar-inverse .nav > li > a:focus { - color: #{{ doc.top_bar_background or "aaa"}}; -} - -.navbar-inverse .brand { - color: #{{ doc.top_bar_foreground or "fff"}}; + color: #{{ doc.top_bar_background or "000"}}; } .navbar-inverse .navbar-text { diff --git a/website/templates/js/blog.js b/website/templates/js/blog.js index 3cfb234549..91d3ead65a 100644 --- a/website/templates/js/blog.js +++ b/website/templates/js/blog.js @@ -48,6 +48,7 @@ var blog = { }, dataType: "json", success: function(data) { + $(".progress").toggle(false); if(data.exc) console.log(data.exc); blog.render(data.message); } @@ -81,10 +82,10 @@ var blog = {
', b)).appendTo($wrap); }); blog.start += (data.length || 0); - if(!data.length) { + if(!data.length || data.length < 20) { if(blog.start) { $("#next-page").toggle(false) - .parent().append("
Nothing more to show.
"); + .parent().append("
Nothing more to show.
"); } else { $("#next-page").toggle(false) .parent().append("
No blogs written yet.
"); diff --git a/website/templates/pages/blog.html b/website/templates/pages/blog.html index 05302c63de..cfdd536696 100644 --- a/website/templates/pages/blog.html +++ b/website/templates/pages/blog.html @@ -14,6 +14,9 @@

Blog


+
+
+
From b33693db359c4d4fba2c8c0fde4121ffd3831c28 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Mon, 11 Mar 2013 17:57:57 +0530 Subject: [PATCH 2/6] added blog settings and metadata --- website/doctype/blog_post/blog_post.py | 4 ++- .../doctype/style_settings/style_settings.py | 3 ++ website/doctype/web_page/web_page.txt | 30 ++++++++++++++----- website/helpers/blog.py | 11 +++++-- website/page/website_home/website_home.js | 6 ++++ website/templates/html/base.html | 3 ++ website/templates/html/blog_page.html | 9 ++++-- website/templates/html/blogger.html | 2 +- website/templates/html/comment.html | 19 +++++++----- website/templates/js/blog.js | 4 +-- website/templates/pages/blog.html | 6 +++- website/templates/pages/writers.html | 3 ++ 12 files changed, 74 insertions(+), 26 deletions(-) diff --git a/website/doctype/blog_post/blog_post.py b/website/doctype/blog_post/blog_post.py index 1664b4fca5..ff6cc9931e 100644 --- a/website/doctype/blog_post/blog_post.py +++ b/website/doctype/blog_post/blog_post.py @@ -74,13 +74,15 @@ class DocType: # temp fields from webnotes.utils import global_date_format, get_fullname self.doc.full_name = get_fullname(self.doc.owner) - self.doc.updated = global_date_format(self.doc.creation) + self.doc.updated = global_date_format(self.doc.published_on) self.doc.content_html = self.doc.content if self.doc.blogger: self.doc.blogger_info = webnotes.doc("Blogger", self.doc.blogger).fields if self.doc.blogger_info.avatar and not "/" in self.doc.blogger_info.avatar: self.doc.blogger_info.avatar = "files/" + self.doc.blogger_info.avatar + self.doc.description = self.doc.blog_intro or self.doc.content[:140] + self.doc.categories = webnotes.conn.sql_list("select name from `tabBlog Category` order by name") self.doc.texts = { diff --git a/website/doctype/style_settings/style_settings.py b/website/doctype/style_settings/style_settings.py index 434f4b546d..ba003ae594 100644 --- a/website/doctype/style_settings/style_settings.py +++ b/website/doctype/style_settings/style_settings.py @@ -39,6 +39,9 @@ class DocType: from webnotes.sessions import clear_cache clear_cache('Guest') + + from website.utils import clear_cache + clear_cache() for f in ["small_font_size", "at_import", "heading_text_style"]: if f in self.doc.fields: diff --git a/website/doctype/web_page/web_page.txt b/website/doctype/web_page/web_page.txt index 861ac86e39..eed7d2b63b 100644 --- a/website/doctype/web_page/web_page.txt +++ b/website/doctype/web_page/web_page.txt @@ -1,8 +1,8 @@ [ { - "creation": "2013-01-27 16:31:21", + "creation": "2013-02-12 13:19:11", "docstatus": 0, - "modified": "2013-02-12 09:33:47", + "modified": "2013-03-11 17:41:11", "modified_by": "Administrator", "owner": "Administrator" }, @@ -24,18 +24,16 @@ "permlevel": 0 }, { - "create": 1, + "amend": 0, "doctype": "DocPerm", "name": "__common__", "parent": "Web Page", "parentfield": "permissions", "parenttype": "DocType", - "permlevel": 0, "read": 1, "report": 1, "role": "Website Manager", - "submit": 0, - "write": 1 + "submit": 0 }, { "doctype": "DocType", @@ -85,6 +83,13 @@ "label": "Slideshow", "options": "Website Slideshow" }, + { + "description": "Description for page header.", + "doctype": "DocField", + "fieldname": "description", + "fieldtype": "Small Text", + "label": "Description" + }, { "description": "Content in markdown format that appears on the main side of your page", "doctype": "DocField", @@ -143,6 +148,17 @@ "print_hide": 1 }, { - "doctype": "DocPerm" + "cancel": 1, + "create": 1, + "doctype": "DocPerm", + "permlevel": 0, + "write": 1 + }, + { + "cancel": 0, + "create": 0, + "doctype": "DocPerm", + "permlevel": 1, + "write": 0 } ] \ No newline at end of file diff --git a/website/helpers/blog.py b/website/helpers/blog.py index ec57105e35..de2a3373ae 100644 --- a/website/helpers/blog.py +++ b/website/helpers/blog.py @@ -127,9 +127,11 @@ def get_blog_content(blog_page_name): return content def get_blog_template_args(): - return { + args = { "categories": webnotes.conn.sql_list("select name from `tabBlog Category` order by name") } + args.update(webnotes.doc("Blog Settings", "Blog Settings").fields) + return args def get_writers_args(): bloggers = webnotes.conn.sql("""select * from `tabBlogger` @@ -138,10 +140,13 @@ def get_writers_args(): if blogger.avatar and not "/" in blogger.avatar: blogger.avatar = "files/" + blogger.avatar - return { + args = { "bloggers": bloggers, "texts": { "all_posts_by": _("All posts by") }, "categories": webnotes.conn.sql_list("select name from `tabBlog Category` order by name") - } \ No newline at end of file + } + + args.update(webnotes.doc("Blog Settings", "Blog Settings").fields) + return args \ No newline at end of file diff --git a/website/page/website_home/website_home.js b/website/page/website_home/website_home.js index bb3d14f04a..e1122071dd 100644 --- a/website/page/website_home/website_home.js +++ b/website/page/website_home/website_home.js @@ -37,6 +37,12 @@ wn.module_page["Website"] = [ description: wn._("Categorize blog posts."), doctype:"Blog Category" }, + { + label: wn._("Blog Settings"), + description: wn._("Write titles and introductions to your blog."), + doctype:"Blog Settings", + route: "Form/Blog Settings" + }, ] }, diff --git a/website/templates/html/base.html b/website/templates/html/base.html index fa01f8aad7..2719f8db36 100644 --- a/website/templates/html/base.html +++ b/website/templates/html/base.html @@ -19,6 +19,9 @@ {% endif %} + {% if description %} + + {% endif %} {% block header %} {% endblock %} diff --git a/website/templates/html/blog_page.html b/website/templates/html/blog_page.html index e605a12248..270d427f7f 100644 --- a/website/templates/html/blog_page.html +++ b/website/templates/html/blog_page.html @@ -9,14 +9,17 @@ {% endblock %} {% block content %} -
-

{{ title }}

+
+

{{ title }}

- {{ blogger_info and blogger_info.full_name or full_name }} / {{ updated }}
+ / + {{ updated }}

+
{{ content_html }} +
{% if blogger_info %}
diff --git a/website/templates/html/blogger.html b/website/templates/html/blogger.html index eab371e45b..e18f86a4dd 100644 --- a/website/templates/html/blogger.html +++ b/website/templates/html/blogger.html @@ -1,7 +1,7 @@
- +
diff --git a/website/templates/html/comment.html b/website/templates/html/comment.html index 1323e094d2..27baaad54d 100644 --- a/website/templates/html/comment.html +++ b/website/templates/html/comment.html @@ -3,12 +3,15 @@ it is to be included in the blog/blog.html template #} -{% for comment in comment_list %} -
-
- {{ comment.comment_by_fullname }} - {{ comment.comment_date }}: +
+ {% for comment in comment_list %} +
+
+ {{ comment.comment_by_fullname }} / + {{ comment.comment_date }}: +
+

{{ comment.comment }}

+
-

{{ comment.comment }}

-
-
-{% endfor %} \ No newline at end of file + {% endfor %} +
\ No newline at end of file diff --git a/website/templates/js/blog.js b/website/templates/js/blog.js index 91d3ead65a..61e1b657f2 100644 --- a/website/templates/js/blog.js +++ b/website/templates/js/blog.js @@ -25,11 +25,11 @@ $(document).ready(function() { }) if(get_url_arg("by_name")) { - $("#blog-title").html("Posts by " + get_url_arg("by_name")); + $("#blot-subtitle").html("Posts by " + get_url_arg("by_name")).toggle(true); } if(get_url_arg("category")) { - $("#blog-title").html("Posts filed under " + get_url_arg("category")); + $("#blot-subtitle").html("Posts filed under " + get_url_arg("category")).toggle(true); } }); diff --git a/website/templates/pages/blog.html b/website/templates/pages/blog.html index cfdd536696..df258e138f 100644 --- a/website/templates/pages/blog.html +++ b/website/templates/pages/blog.html @@ -12,7 +12,11 @@ {% block content %}
-

Blog

+

{{ blog_title }}

+ {% if blog_introduction %} +

{{ blog_introduction }}

+ {% endif %} +
diff --git a/website/templates/pages/writers.html b/website/templates/pages/writers.html index 0ae8549f97..bba374946c 100644 --- a/website/templates/pages/writers.html +++ b/website/templates/pages/writers.html @@ -5,6 +5,9 @@ {% block content %}

Blog Writers

+ {% if writers_introduction %} +

{{ writers_introduction }}

+ {% endif %}
{% for blogger_info in bloggers %} {% include "html/blogger.html" %} From 770e7938d94e745891ff47b3d2af44d5f5cad6a7 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Mon, 11 Mar 2013 18:30:05 +0530 Subject: [PATCH 3/6] added footer subscribe and blog settings --- website/doctype/blog_settings/__init__.py | 0 .../doctype/blog_settings/blog_settings.py | 8 ++ .../doctype/blog_settings/blog_settings.txt | 61 ++++++++++++ website/helpers/blog.py | 9 +- website/helpers/blog_feed.py | 2 +- website/templates/html/footer.html | 66 +++++++++++++ website/templates/html/navbar.html | 57 +++++++++++ website/templates/html/outer.html | 97 +------------------ 8 files changed, 198 insertions(+), 102 deletions(-) create mode 100644 website/doctype/blog_settings/__init__.py create mode 100644 website/doctype/blog_settings/blog_settings.py create mode 100644 website/doctype/blog_settings/blog_settings.txt create mode 100644 website/templates/html/footer.html create mode 100644 website/templates/html/navbar.html diff --git a/website/doctype/blog_settings/__init__.py b/website/doctype/blog_settings/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/website/doctype/blog_settings/blog_settings.py b/website/doctype/blog_settings/blog_settings.py new file mode 100644 index 0000000000..928aa9ff9f --- /dev/null +++ b/website/doctype/blog_settings/blog_settings.py @@ -0,0 +1,8 @@ +# For license information, please see license.txt + +from __future__ import unicode_literals +import webnotes + +class DocType: + def __init__(self, d, dl): + self.doc, self.doclist = d, dl \ No newline at end of file diff --git a/website/doctype/blog_settings/blog_settings.txt b/website/doctype/blog_settings/blog_settings.txt new file mode 100644 index 0000000000..09740eb78f --- /dev/null +++ b/website/doctype/blog_settings/blog_settings.txt @@ -0,0 +1,61 @@ +[ + { + "creation": "2013-03-11 17:48:16", + "docstatus": 0, + "modified": "2013-03-11 17:48:16", + "modified_by": "Administrator", + "owner": "Administrator" + }, + { + "description": "Blog Settings", + "doctype": "DocType", + "issingle": 1, + "module": "Website", + "name": "__common__" + }, + { + "doctype": "DocField", + "name": "__common__", + "parent": "Blog Settings", + "parentfield": "fields", + "parenttype": "DocType", + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "name": "__common__", + "parent": "Blog Settings", + "parentfield": "permissions", + "parenttype": "DocType", + "permlevel": 0, + "read": 1, + "role": "Website Manager", + "write": 1 + }, + { + "doctype": "DocType", + "name": "Blog Settings" + }, + { + "doctype": "DocField", + "fieldname": "blog_title", + "fieldtype": "Data", + "label": "Blog Title" + }, + { + "doctype": "DocField", + "fieldname": "blog_introduction", + "fieldtype": "Small Text", + "label": "Blog Introduction" + }, + { + "doctype": "DocField", + "fieldname": "writers_introduction", + "fieldtype": "Small Text", + "label": "Writers Introduction" + }, + { + "doctype": "DocPerm" + } +] \ No newline at end of file diff --git a/website/helpers/blog.py b/website/helpers/blog.py index de2a3373ae..5ee3451956 100644 --- a/website/helpers/blog.py +++ b/website/helpers/blog.py @@ -99,10 +99,8 @@ def add_comment(args=None): return comment_html @webnotes.whitelist(allow_guest=True) -def add_subscriber(): +def add_subscriber(name, email_id): """add blog subscriber to lead""" - full_name = webnotes.form_dict.get('your_name') - email = webnotes.form_dict.get('your_email_address') name = webnotes.conn.sql("""select name from tabLead where email_id=%s""", email) from webnotes.model.doc import Document @@ -114,14 +112,13 @@ def add_subscriber(): if not lead.source: lead.source = 'Blog' lead.unsubscribed = 0 lead.blog_subscriber = 1 - lead.lead_name = full_name + lead.lead_name = name lead.email_id = email lead.save() - + def get_blog_content(blog_page_name): import website.utils content = website.utils.get_html(blog_page_name) - content = split_blog_content(content) import webnotes.utils content = webnotes.utils.escape_html(content) return content diff --git a/website/helpers/blog_feed.py b/website/helpers/blog_feed.py index 19fc5d8ec6..c59a419fc6 100644 --- a/website/helpers/blog_feed.py +++ b/website/helpers/blog_feed.py @@ -59,7 +59,7 @@ def generate(): blog_list = webnotes.conn.sql("""\ select page_name as name, modified, creation, title from `tabBlog Post` where ifnull(published,0)=1 - order by creation desc, modified desc, name asc limit 100""", as_dict=1) + order by creation desc, modified desc, name asc limit 20""", as_dict=1) for blog in blog_list: blog.link = host + '/' + blog.name + '.html' diff --git a/website/templates/html/footer.html b/website/templates/html/footer.html new file mode 100644 index 0000000000..19aeabef65 --- /dev/null +++ b/website/templates/html/footer.html @@ -0,0 +1,66 @@ +
+
diff --git a/website/templates/html/navbar.html b/website/templates/html/navbar.html new file mode 100644 index 0000000000..5a30c6a6f1 --- /dev/null +++ b/website/templates/html/navbar.html @@ -0,0 +1,57 @@ + + diff --git a/website/templates/html/outer.html b/website/templates/html/outer.html index e582d0a9ce..9c8cd9f8d4 100644 --- a/website/templates/html/outer.html +++ b/website/templates/html/outer.html @@ -5,106 +5,13 @@
- - + {% include "html/navbar.html" %}
{% block content %} {% endblock %}
-
-
+ {% include "html/footer.html" %} {% endblock %} \ No newline at end of file From 758131b853b4efc56623d02458e341daa8a74388 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Tue, 12 Mar 2013 11:07:45 +0530 Subject: [PATCH 4/6] fixed slideshow --- home/page/attributions/attributions.html | 4 +++ .../style_settings/custom_template.css | 4 +-- website/templates/html/slideshow.html | 6 ++-- website/templates/pages/attributions.html | 36 +++++++++++++++++-- 4 files changed, 44 insertions(+), 6 deletions(-) diff --git a/home/page/attributions/attributions.html b/home/page/attributions/attributions.html index 07da9fd89d..2d08c79dd0 100644 --- a/home/page/attributions/attributions.html +++ b/home/page/attributions/attributions.html @@ -26,6 +26,10 @@ Apache HTTPD web server The Number One HTTP Server On The Internet. + + Memcached + Free & open source, high-performance, distributed memory object caching system. + Python Programming Language The "batteries included" language that lets you write elegant code, quickly.

Python Libraries: diff --git a/website/doctype/style_settings/custom_template.css b/website/doctype/style_settings/custom_template.css index a67c9f1746..00c02bb2b3 100644 --- a/website/doctype/style_settings/custom_template.css +++ b/website/doctype/style_settings/custom_template.css @@ -12,7 +12,7 @@ body { background-color: #edede7; {% endif %} {% if doc.font or doc.google_web_font_for_text %} - font-family: '{{ doc.google_web_font_for_text or doc.font }}', Verdana, Sans !important; + font-family: '{{ doc.google_web_font_for_text or doc.font }}', 'Helvetica Neue', Arial, Sans !important; {% endif %} {% if doc.font_size %} font-size: {{ doc.font_size }} !important; @@ -31,7 +31,7 @@ div.outer { {% if doc.google_web_font_for_heading or doc.heading_font %} h1, h2, h3, h4, h5 { - font-family: '{{ doc.google_web_font_for_heading or doc.heading_font }}', Arial, 'Helvetica Neue' !important; + font-family: '{{ doc.google_web_font_for_heading or doc.heading_font }}', 'Helvetica Neue', Arial !important; } {% endif %} {% if doc.heading_text_style %} diff --git a/website/templates/html/slideshow.html b/website/templates/html/slideshow.html index 86417245b7..e0e9038d9f 100644 --- a/website/templates/html/slideshow.html +++ b/website/templates/html/slideshow.html @@ -5,10 +5,12 @@ {% for slide in obj.slides %}
+ {% if slide.heading or slide.description %} + {% endif %}
{% endfor %}
diff --git a/website/templates/pages/attributions.html b/website/templates/pages/attributions.html index 2d195ba9cd..9e4b50ddce 100644 --- a/website/templates/pages/attributions.html +++ b/website/templates/pages/attributions.html @@ -12,7 +12,7 @@ {% block content %}
-

This website is made using these Awesome Open Source Projects

+

This website is made using these awesome Open Source projects


@@ -37,6 +37,10 @@ + + + + + + + + @@ -96,13 +104,37 @@ + + + +
Apache HTTPD web server The Number One HTTP Server On The Internet.
MemcachedFree & open source, high-performance, distributed memory object caching system.
Python Programming Language The "batteries included" language that lets you write elegant code, quickly.

Python Libraries: @@ -80,6 +84,10 @@
SlickGrid A lightning fast JavaScript grid/spreadsheet.
FullCalendarFullCalendar is a jQuery plugin that provides a full-sized, drag and drop calendar.
Flot Charting Library Attractive JavaScript plotting for jQuery.JSColor - Color Picker HTML/Javascript Color Picker.
QUnitA JavaScript Unit Testing framework.
Downloadify - Flash Download Widget A tiny javascript + Flash library that enables the creation and download of text files without server interaction.
+ +
+

ERPNext License: GNU/General Public License

+
+

ERPNext - Open Source, web based ERP

+

Copyright © 2012, Web Notes Technologies Pvt Ltd, India

-

Note: A link to this page must be easily accessible.

+

This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version.

+ +

This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details.

+ +

For complete license see http://www.gnu.org/licenses/

+
+

Note: A link to this page must be easily accessible and all other ERPNext branding must remain as it is.

+
+

For more information please write to us at support@erpnext.com

{% endblock %} \ No newline at end of file From 1aff4c384d54939e39859c46de1d1f5379b2f57c Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Tue, 12 Mar 2013 11:22:30 +0530 Subject: [PATCH 5/6] website added banner --- .../website_settings/website_settings.txt | 29 ++++++++++++------- website/templates/html/navbar.html | 4 +-- website/templates/html/outer.html | 3 ++ website/utils.py | 9 ++---- 4 files changed, 25 insertions(+), 20 deletions(-) diff --git a/website/doctype/website_settings/website_settings.txt b/website/doctype/website_settings/website_settings.txt index 6af0575a36..5bc4f71f68 100644 --- a/website/doctype/website_settings/website_settings.txt +++ b/website/doctype/website_settings/website_settings.txt @@ -1,8 +1,8 @@ [ { - "creation": "2013-01-25 11:35:10", + "creation": "2013-03-07 11:55:11", "docstatus": 0, - "modified": "2013-02-21 10:05:09", + "modified": "2013-03-12 11:17:11", "modified_by": "Administrator", "owner": "Administrator" }, @@ -72,24 +72,31 @@ "label": "Home Page is Products" }, { + "description": "Add a banner to the site. (small banners are usually good)", + "doctype": "DocField", + "fieldname": "banner", + "fieldtype": "Section Break", + "label": "Banner" + }, + { + "description": "Banner is above the Top Menu Bar.", + "doctype": "DocField", + "fieldname": "banner_html", + "fieldtype": "Small Text", + "label": "Banner HTML" + }, + { + "description": "Menu items in the Top Bar. For setting the color of the Top Bar, go to Style Settings", "doctype": "DocField", "fieldname": "top_bar", "fieldtype": "Section Break", "label": "Top Bar" }, - { - "description": "Background shade of the top menu bar", - "doctype": "DocField", - "fieldname": "top_bar_background", - "fieldtype": "Select", - "label": "Top Bar Background", - "options": "Black\nWhite" - }, { "description": "Brand is what appears on the top-right of the toolbar. If it is an image, make sure it\nhas a transparent background and use the <img /> tag. Keep size as 200px x 30px", "doctype": "DocField", "fieldname": "brand_html", - "fieldtype": "Text", + "fieldtype": "Small Text", "label": "Brand HTML" }, { diff --git a/website/templates/html/navbar.html b/website/templates/html/navbar.html index 5a30c6a6f1..8112499c04 100644 --- a/website/templates/html/navbar.html +++ b/website/templates/html/navbar.html @@ -1,7 +1,7 @@ -