diff --git a/frappe/templates/includes/blog/hero.html b/frappe/templates/includes/blog/hero.html
new file mode 100644
index 0000000000..8ec47f3ac0
--- /dev/null
+++ b/frappe/templates/includes/blog/hero.html
@@ -0,0 +1,12 @@
+{% if blog_title and not (frappe.local.form_dict.txt or frappe.local.form_dict.by) %}
+
+
+
+ {{ blog_title }}
+
+ {% if blog_introduction -%}
+
{{ blog_introduction }}
+ {%- endif %}
+
+
+{% endif %}
diff --git a/frappe/templates/pages/list.py b/frappe/templates/pages/list.py
index e07a62bad4..7c6dc41c9a 100644
--- a/frappe/templates/pages/list.py
+++ b/frappe/templates/pages/list.py
@@ -37,28 +37,35 @@ def get(doctype, txt=None, limit_start=0, **kwargs):
# resolve additional filters from path
resolve_path(filters.pathname)
for key, val in frappe.local.form_dict.items():
- if not (key in ("doctype", "txt", "limit_start") and key in filters):
+ if key in ("cmd", "pathname", "doctype", "txt", "limit_start"):
+ if key in filters:
+ del filters[key]
+
+ elif key not in filters:
filters[key] = val
controller = get_controller(doctype)
meta = frappe.get_meta(doctype)
list_context = frappe._dict(hasattr(controller, "get_list_context") and controller.get_list_context() or {})
+ if list_context.filters:
+ filters.update(list_context.filters)
+
_get_list = list_context.get_list or get_list
+
raw_result = _get_list(doctype=doctype, txt=txt, filters=filters,
limit_start=limit_start, limit_page_length=limit_page_length)
+
show_more = (_get_list(doctype=doctype, txt=txt, filters=filters,
- limit_start=next_start, limit_page_length=1)
- and True or False)
+ limit_start=next_start, limit_page_length=1) and True or False)
result = []
row_template = list_context.row_template or "templates/includes/list/row_template.html"
for item in raw_result:
item.doctype = doctype
- item.update(list_context)
- result.append(frappe.render_template(row_template,
- { "doc": item, "meta": meta, "pathname": frappe.local.request.path.strip("/ ") },
- is_path=True))
+ new_context = { "doc": item, "meta": meta, "pathname": frappe.local.request.path.strip("/ ") }
+ new_context.update(list_context)
+ result.append(frappe.render_template(row_template, new_context, is_path=True))
return {
"result": result,
diff --git a/frappe/templates/pages/login.html b/frappe/templates/pages/login.html
index f8c33e3f5a..cdb5ef7ceb 100644
--- a/frappe/templates/pages/login.html
+++ b/frappe/templates/pages/login.html
@@ -3,7 +3,7 @@
{% block content %}
-