Merge pull request #799 from rmehta/website-minor

[fixes] [website] for translator
This commit is contained in:
Rushabh Mehta 2014-08-28 12:51:55 +05:30
commit a19617cbff
7 changed files with 39 additions and 16 deletions

View file

@ -286,6 +286,9 @@ def clear_cache(user=None, doctype=None):
translate.clear_cache()
reset_metadata_version()
for fn in frappe.get_hooks("clear_cache"):
get_attr(fn)()
frappe.local.role_permissions = {}
def get_roles(username=None):

View file

@ -1,9 +1,11 @@
function prettyDate(time){
if(moment) {
var user_timezone = frappe.boot.user.time_zone;
var system_timezone = sys_defaults.time_zone;
var zones = (frappe.boot.timezone_info || {}).zones || {};
if (user_timezone && (user_timezone != system_timezone)
if(frappe.boot) {
var user_timezone = frappe.boot.user.time_zone;
var system_timezone = sys_defaults.time_zone;
var zones = (frappe.boot.timezone_info || {}).zones || {};
}
if (frappe.boot && user_timezone && (user_timezone != system_timezone)
&& zones[user_timezone] && zones[system_timezone]) {
return moment.tz(time, sys_defaults.time_zone).tz(frappe.boot.user.time_zone).fromNow();
} else {
@ -37,8 +39,10 @@ function prettyDate(time){
var comment_when = function(datetime) {
var timestamp = frappe.datetime.str_to_user ?
frappe.datetime.str_to_user(datetime) : datetime;
return '<span class="frappe-timestamp" data-timestamp="'+datetime
+'" title="'+frappe.datetime.str_to_user(datetime)+'">'
+'" title="'+timestamp+'">'
+ prettyDate(datetime) + '</span>';
};

View file

@ -1,7 +1,7 @@
{% block title %}{{ title }}{% endblock %}
{% block header %}
{% if "<" in header %}{{ header }}{% else %}<h2>{{ header }}</h2>{% endif %}
{{ header }}
{% endblock %}
{% block content %}

View file

@ -23,6 +23,8 @@ def export_fixtures():
for app in frappe.get_installed_apps():
for fixture in frappe.get_hooks("fixtures", app_name=app):
print "Exporting " + fixture
if not os.path.exists(frappe.get_app_path(app, "fixtures")):
os.mkdir(frappe.get_app_path(app, "fixtures"))
if frappe.db.get_value("DocType", fixture, "issingle"):
export_fixture(fixture, fixture, app)
else:

View file

@ -9,6 +9,7 @@ from frappe.website.router import resolve_route
from frappe.website.doctype.website_slideshow.website_slideshow import get_slideshow
from frappe.website.utils import find_first_image, get_comment_list
from markdown2 import markdown
from frappe.utils.jinja import render_template
class WebPage(WebsiteGenerator):
save_versions = True
@ -32,14 +33,13 @@ class WebPage(WebsiteGenerator):
if self.template_path:
# load content from template
context.update(get_static_content(self, self.template_path))
context.update(get_static_content(self, context))
else:
context.update({
"style": self.css or "",
"script": self.javascript or ""
})
self.render_dynamic(context)
self.set_metatags(context)
if not context.header:
@ -53,7 +53,7 @@ class WebPage(WebsiteGenerator):
def render_dynamic(self, context):
# dynamic
if context.main_section and "<!-- render-jinja -->" in context.main_section:
context["main_section"] = frappe.render_template(context.main_section,
context["main_section"] = render_template(context.main_section,
{"doc": self, "frappe": frappe})
context["no_cache"] = 1
@ -68,12 +68,12 @@ class WebPage(WebsiteGenerator):
context.metatags["image"] = image
def get_static_content(doc, template_path):
def get_static_content(doc, context):
d = frappe._dict({})
with open(template_path, "r") as contentfile:
with open(doc.template_path, "r") as contentfile:
content = unicode(contentfile.read(), 'utf-8')
if template_path.endswith(".md"):
if doc.template_path.endswith(".md"):
if content:
lines = content.splitlines()
first_line = lines[0].strip()
@ -88,8 +88,10 @@ def get_static_content(doc, template_path):
if not d.title:
d.title = doc.name.replace("-", " ").replace("_", " ").title()
doc.render_dynamic(d)
for extn in ("js", "css"):
fpath = template_path.rsplit(".", 1)[0] + "." + extn
fpath = doc.template_path.rsplit(".", 1)[0] + "." + extn
if os.path.exists(fpath):
with open(fpath, "r") as f:
d["css" if extn=="css" else "javascript"] = f.read()

View file

@ -107,6 +107,7 @@ def get_website_settings():
frappe.get_attr(update_website_context)(context)
context.web_include_js = hooks.web_include_js or []
context.web_include_css = hooks.web_include_css or []
return context

View file

@ -107,9 +107,14 @@ $.extend(frappe, {
} catch(e) {
console.log(data.exc);
}
if (opts.error_msg && data._server_messages) {
if (data._server_messages) {
var server_messages = (JSON.parse(data._server_messages || '[]')).join("<br>");
$(opts.error_msg).html(server_messages).toggle(true);
if(opts.error_msg) {
$(opts.error_msg).html(server_messages).toggle(true);
} else {
frappe.msgprint(server_messages);
}
}
} else{
if(opts.btn) {
@ -265,7 +270,12 @@ $.extend(frappe, {
history.pushState(null, null, href);
var _render = function(data) {
history.replaceState(data, data.title, href);
try {
history.replaceState(data, data.title, href);
} catch(e) {
// data too big (?)
history.replaceState(null, data.title, href);
}
scroll(0,0);
frappe.render_json(data);
};
@ -291,6 +301,7 @@ $.extend(frappe, {
var $section = $(section);
var stype = $section.attr("data-html-block");
// handle meta separately
if (stype==="meta_block") return;