Merge branch 'KanchanChauhan-WebsiteChanges' into develop
This commit is contained in:
commit
0ce600b2f9
16 changed files with 170 additions and 112 deletions
|
|
@ -36,17 +36,24 @@ def render_include(content):
|
|||
'''render {% include "app/path/filename" in js file %}'''
|
||||
|
||||
content = cstr(content)
|
||||
if "{% include" in content:
|
||||
paths = re.findall(r'''{% include\s['"](.*)['"]\s%}''', content)
|
||||
if not paths:
|
||||
frappe.throw('Invalid include path')
|
||||
|
||||
for path in paths:
|
||||
app, app_path = path.split('/', 1)
|
||||
with open(frappe.get_app_path(app, app_path), 'r') as f:
|
||||
include = unicode(f.read(), 'utf-8')
|
||||
if path.endswith('.html'):
|
||||
include = html_to_js_template(path, include)
|
||||
content = re.sub(r'''{{% include\s['"]{0}['"]\s%}}'''.format(path), include, content)
|
||||
# try 5 levels of includes
|
||||
for i in xrange(5):
|
||||
if "{% include" in content:
|
||||
paths = re.findall(r'''{% include\s['"](.*)['"]\s%}''', content)
|
||||
if not paths:
|
||||
frappe.throw('Invalid include path')
|
||||
|
||||
for path in paths:
|
||||
app, app_path = path.split('/', 1)
|
||||
with open(frappe.get_app_path(app, app_path), 'r') as f:
|
||||
include = unicode(f.read(), 'utf-8')
|
||||
if path.endswith('.html'):
|
||||
include = html_to_js_template(path, include)
|
||||
|
||||
content = re.sub(r'''{{% include\s['"]{0}['"]\s%}}'''.format(path), include, content)
|
||||
|
||||
else:
|
||||
break
|
||||
|
||||
return content
|
||||
|
|
|
|||
|
|
@ -4,6 +4,16 @@
|
|||
width: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
.avatar-frame {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
padding: 50% 0px;
|
||||
background-size: cover;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.avatar img {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
|
|
@ -21,6 +31,9 @@
|
|||
.avatar-small .standard-image {
|
||||
font-size: 14px;
|
||||
}
|
||||
.avatar-small .avatar-frame {
|
||||
border-radius: 3px;
|
||||
}
|
||||
.avatar-medium {
|
||||
margin-right: 5px;
|
||||
width: 36px;
|
||||
|
|
@ -54,16 +67,6 @@
|
|||
height: 0;
|
||||
padding-bottom: 100%;
|
||||
}
|
||||
.avatar-frame {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
padding: 50% 0px;
|
||||
background-size: cover;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.standard-image {
|
||||
width: 100%;
|
||||
height: 0;
|
||||
|
|
|
|||
|
|
@ -226,6 +226,16 @@ a.no-decoration:active {
|
|||
width: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
.avatar-frame {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
padding: 50% 0px;
|
||||
background-size: cover;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.avatar img {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
|
|
@ -243,6 +253,9 @@ a.no-decoration:active {
|
|||
.avatar-small .standard-image {
|
||||
font-size: 14px;
|
||||
}
|
||||
.avatar-small .avatar-frame {
|
||||
border-radius: 3px;
|
||||
}
|
||||
.avatar-medium {
|
||||
margin-right: 5px;
|
||||
width: 36px;
|
||||
|
|
@ -276,16 +289,6 @@ a.no-decoration:active {
|
|||
height: 0;
|
||||
padding-bottom: 100%;
|
||||
}
|
||||
.avatar-frame {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
padding: 50% 0px;
|
||||
background-size: cover;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.standard-image {
|
||||
width: 100%;
|
||||
height: 0;
|
||||
|
|
@ -361,6 +364,23 @@ a.no-decoration:active {
|
|||
html,
|
||||
body {
|
||||
font-family: "Open Sans", "Helvetica Neue", Serif;
|
||||
color: #6c7680;
|
||||
}
|
||||
a {
|
||||
color: #6c7680;
|
||||
}
|
||||
a:hover,
|
||||
a:focus,
|
||||
a:active {
|
||||
color: #36414C;
|
||||
}
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-weight: 300;
|
||||
}
|
||||
.navbar-brand {
|
||||
max-width: none;
|
||||
|
|
@ -467,6 +487,10 @@ body {
|
|||
.panel-body {
|
||||
padding-left: 15px;
|
||||
}
|
||||
.page-head h1,
|
||||
.page-head h2 {
|
||||
margin-top: 0px;
|
||||
}
|
||||
.page-header-actions-block {
|
||||
text-align: right;
|
||||
}
|
||||
|
|
@ -915,10 +939,16 @@ li .social-child-item {
|
|||
padding-top: 30px;
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
#item-search {
|
||||
.item-search {
|
||||
border-bottom: 1px solid #d1d8dd;
|
||||
}
|
||||
.item-search .item-search-input {
|
||||
position: relative;
|
||||
outline: none;
|
||||
border: none;
|
||||
margin-right: 5px;
|
||||
padding: 7px;
|
||||
padding-left: 0px;
|
||||
}
|
||||
.vert-line {
|
||||
overflow: hidden;
|
||||
|
|
|
|||
|
|
@ -7,6 +7,17 @@
|
|||
height: 50px;
|
||||
}
|
||||
|
||||
.avatar-frame {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
padding: 50% 0px;
|
||||
background-size: cover;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.avatar img {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
|
|
@ -26,6 +37,10 @@
|
|||
.standard-image {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.avatar-frame {
|
||||
border-radius: 3px;
|
||||
}
|
||||
}
|
||||
|
||||
.avatar-medium {
|
||||
|
|
@ -68,17 +83,6 @@
|
|||
padding-bottom: 100%;
|
||||
}
|
||||
|
||||
.avatar-frame {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
padding: 50% 0px;
|
||||
background-size: cover;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.standard-image {
|
||||
width: 100%;
|
||||
height: 0;
|
||||
|
|
@ -93,4 +97,4 @@
|
|||
border: 1px solid @border-color;
|
||||
font-weight: normal;
|
||||
margin-top: -1px;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
@border-color: #d1d8dd;
|
||||
@light-border-color: #EBEFF2;
|
||||
@text-color: #36414C;
|
||||
@text-light: #6c7680;
|
||||
@text-muted: #8D99A6;
|
||||
@btn-bg: #F0F4F7;
|
||||
@panel-bg: #F7FAFC;
|
||||
|
|
|
|||
|
|
@ -5,6 +5,21 @@
|
|||
|
||||
html, body {
|
||||
font-family: "Open Sans", "Helvetica Neue", Serif;
|
||||
color: @text-light;
|
||||
}
|
||||
|
||||
a& {
|
||||
color: @text-light;
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
color: @text-color;
|
||||
}
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
|
|
@ -133,6 +148,12 @@ html, body {
|
|||
padding-left: 15px;
|
||||
}
|
||||
|
||||
.page-head {
|
||||
h1, h2 {
|
||||
margin-top: 0px;
|
||||
}
|
||||
}
|
||||
|
||||
.page-header-actions-block {
|
||||
text-align: right;
|
||||
}
|
||||
|
|
@ -523,13 +544,21 @@ li .social-child-item {
|
|||
padding-bottom:20px;
|
||||
}
|
||||
|
||||
#item-search {
|
||||
position: relative;
|
||||
outline:none;
|
||||
border:none;
|
||||
.item-search {
|
||||
border-bottom: 1px solid @border-color;
|
||||
|
||||
.item-search-input {
|
||||
position: relative;
|
||||
outline: none;
|
||||
border: none;
|
||||
margin-right: 5px;
|
||||
padding: 7px;
|
||||
padding-left: 0px;
|
||||
}
|
||||
}
|
||||
|
||||
.vert-line {overflow:hidden;}
|
||||
.vert-line>div+div{border-left:1px solid @light-border-color;}
|
||||
.vert-line>div{
|
||||
padding-bottom:2000px; margin-bottom:-2000px;}
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
{% endif %}
|
||||
|
||||
{% if footer_items -%}
|
||||
<ul class="list-unstyled navbar-nav">
|
||||
<ul class="list-unstyled navbar-nav" style="{% if facebook_share or google_plus_one or twitter_share or linked_in_share %} margin-left:65px; {%else%} margin-left:0px;{%endif%}">
|
||||
{% include "templates/includes/footer/footer_items.html" %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{% for page in footer_items %}
|
||||
{% if not page.parent_label -%}
|
||||
<li style="margin-left:65px;" data-label='{{ page.label }}' {% if page.child_items %} {% endif %}>
|
||||
<li data-label='{{ page.label }}' {% if page.child_items %} {% endif %}>
|
||||
<a {% if not page.child_items -%} href="{{ (page.url or '')|abs_url }}" {%- endif %}
|
||||
{% if page.child_items %} onclick="return false;" {% endif %}
|
||||
{{ page.target or ''}}>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,9 @@
|
|||
{% include "templates/includes/list/filters.html" %}
|
||||
{%- endif %} -->
|
||||
|
||||
{% if introduction %}<p class='lead'>{{ introduction }}{% endif %}
|
||||
{% if introduction %}<p class='lead'>{{ introduction }}{% endif %}
|
||||
|
||||
{% if result_heading_template %}{% include result_heading_template %}{% endif %}
|
||||
|
||||
<div class="result">
|
||||
{% for item in result %}
|
||||
|
|
|
|||
|
|
@ -1,30 +1,31 @@
|
|||
<div class="item-search text-muted pull-right">
|
||||
<input type="text" id="item-search" placeholder="Quick Search" autocomplete="off">
|
||||
<i class="octicon octicon-search"></i>
|
||||
<input type="text" class="item-search-input"
|
||||
placeholder="Search" autocomplete="off">
|
||||
<i class="octicon octicon-search"></i>
|
||||
</div>
|
||||
<div class="clearfix pull-right" style="width:300px;">
|
||||
<h4 class="item-search-results pull-left"></h4>
|
||||
<p class="pull-right">
|
||||
<a style="display: none; padding-left:5px;" href="javascript:history.back();" class="octicon octicon-x text-extra-muted clear" title="Clear Search" ></a>
|
||||
</p>
|
||||
<h4 class="item-search-results pull-left"></h4>
|
||||
<p class="pull-right">
|
||||
<a style="display: none; padding-left:5px;" href="javascript:history.back();" class="octicon octicon-x text-extra-muted clear" title="Clear Search" ></a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
frappe.ready(function() {
|
||||
if(get_url_arg("q")){
|
||||
var txt = get_url_arg("q");
|
||||
if(get_url_arg("search")){
|
||||
var txt = get_url_arg("search");
|
||||
$(".item-search-results").html("Search results for : " + txt);
|
||||
$(".clear").toggle(true);
|
||||
}
|
||||
var thread = null;
|
||||
function findResult(t) {
|
||||
window.location.href=document.URL + "&q=" + t;
|
||||
window.location.href=document.URL + "?search=" + t;
|
||||
}
|
||||
|
||||
$("#item-search").keyup(function() {
|
||||
$(".item-search-input").keyup(function() {
|
||||
clearTimeout(thread);
|
||||
var $this = $(this); thread = setTimeout(function(){findResult($this.val())}, 1000);
|
||||
});
|
||||
$(".form-search").on("submit", function() { return false; });
|
||||
});
|
||||
</script>
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -5,9 +5,9 @@
|
|||
<span class="user-image-sidebar"></span>
|
||||
</div>
|
||||
<div class="col-xs-10">
|
||||
<div class="web-sidebar-user text-muted">{{ fullname }}</div>
|
||||
<div class="web-sidebar-user">{{ fullname }}</div>
|
||||
<a href="/?cmd=web_logout">
|
||||
<div style="margin-top:0px;" class="text-extra-muted small">
|
||||
<div style="margin-top:0px;" class="text-muted small">
|
||||
{{ _("Logout") }}</div>
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
{% block title %}{{ title or (_("{0} List").format(_(doctype))) }}{% endblock %}
|
||||
|
||||
{% block header %}
|
||||
{{ title or (_("{0} List").format(_(doctype))) }}
|
||||
<h1>{{ title or (_("{0} List").format(_(doctype))) }}</h1>
|
||||
{% endblock %}
|
||||
|
||||
{% block breadcrumbs %}
|
||||
|
|
|
|||
|
|
@ -26,8 +26,12 @@ def get(doctype, txt=None, limit_start=0, **kwargs):
|
|||
limit_start = cint(limit_start)
|
||||
limit_page_length = 20
|
||||
next_start = limit_start + limit_page_length
|
||||
|
||||
if not txt and frappe.form_dict.search:
|
||||
txt = frappe.form_dict.search
|
||||
del frappe.form_dict['search']
|
||||
|
||||
filters = prepare_filters(kwargs)
|
||||
filters = prepare_filters(doctype, kwargs)
|
||||
meta = frappe.get_meta(doctype)
|
||||
list_context = get_list_context(frappe._dict(), doctype)
|
||||
|
||||
|
|
@ -77,19 +81,21 @@ def set_route(context):
|
|||
context.route = "{0}/{1}".format(context.pathname or quoted(context.doc.doctype),
|
||||
quoted(context.doc.name))
|
||||
|
||||
def prepare_filters(kwargs):
|
||||
def prepare_filters(doctype, kwargs):
|
||||
filters = frappe._dict(kwargs)
|
||||
|
||||
meta = frappe.get_meta(doctype)
|
||||
|
||||
if filters.pathname:
|
||||
# resolve additional filters from path
|
||||
resolve_path(filters.pathname)
|
||||
for key, val in frappe.local.form_dict.items():
|
||||
if key in ("cmd", "pathname", "doctype", "txt", "limit_start"):
|
||||
if key in filters:
|
||||
del filters[key]
|
||||
|
||||
elif key not in filters:
|
||||
if key not in filters:
|
||||
filters[key] = val
|
||||
|
||||
# filter the filters to include valid fields only
|
||||
for fieldname, val in filters.items():
|
||||
if not meta.has_field(fieldname):
|
||||
del filters[fieldname]
|
||||
|
||||
if "is_web_form" in filters:
|
||||
del filters["is_web_form"]
|
||||
|
|
|
|||
|
|
@ -15,24 +15,27 @@
|
|||
<div class="page-content-wrapper">
|
||||
<div class="row page-head">
|
||||
<div class="col-sm-8">
|
||||
{% if self.breadcrumbs() %}
|
||||
{% if not no_breadcrumbs and self.breadcrumbs() %}
|
||||
<div class="page-breadcrumbs">
|
||||
{% block breadcrumbs %}{% endblock %}
|
||||
</div>
|
||||
{% endif %}
|
||||
<h2>{% block header %}{% endblock %}</h2>
|
||||
{% block header %}{% endblock %}
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
{% if show_search %}
|
||||
<div class="page-search-block">
|
||||
{% block search %}
|
||||
{% include 'templates/includes/search_box.html' %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
<div class="page-search-block">
|
||||
{% block search %}
|
||||
{% include 'templates/includes/search_box.html' %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if self.header_actions() %}
|
||||
<div class="page-header-actions-block">
|
||||
{% block header_actions %}{% endblock %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -82,6 +82,7 @@ def build_context(context):
|
|||
|
||||
def add_sidebar_data(context):
|
||||
from frappe.utils.user import get_fullname_and_avatar
|
||||
import frappe.templates.pages.list
|
||||
|
||||
context.my_account_list = frappe.get_all('Portal Menu Item',
|
||||
fields=['title', 'route', 'reference_doctype'], filters={'enabled': 1}, order_by='idx asc')
|
||||
|
|
@ -90,7 +91,6 @@ def add_sidebar_data(context):
|
|||
if item.reference_doctype:
|
||||
item.count = len(frappe.templates.pages.list.get(item.reference_doctype).get('result'))
|
||||
|
||||
|
||||
info = get_fullname_and_avatar(frappe.session.user)
|
||||
context["fullname"] = info.fullname
|
||||
context["user_image"] = info.avatar
|
||||
|
|
|
|||
|
|
@ -58,31 +58,6 @@
|
|||
"set_only_once": 0,
|
||||
"unique": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"description": "If checked, the Home page will be the default Item Group for the website.",
|
||||
"fieldname": "home_page_is_products",
|
||||
"fieldtype": "Check",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Home Page is Products",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"unique": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
|
|
@ -984,7 +959,7 @@
|
|||
"issingle": 1,
|
||||
"istable": 0,
|
||||
"max_attachments": 10,
|
||||
"modified": "2016-04-12 23:17:55.682407",
|
||||
"modified": "2016-04-22 09:13:08.875846",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Website",
|
||||
"name": "Website Settings",
|
||||
|
|
@ -1004,8 +979,6 @@
|
|||
"print": 1,
|
||||
"read": 1,
|
||||
"report": 0,
|
||||
"restrict": 0,
|
||||
"restricted": 0,
|
||||
"role": "Website Manager",
|
||||
"set_user_permissions": 0,
|
||||
"share": 1,
|
||||
|
|
@ -1026,15 +999,14 @@
|
|||
"print": 0,
|
||||
"read": 1,
|
||||
"report": 0,
|
||||
"restrict": 0,
|
||||
"restricted": 0,
|
||||
"role": "All",
|
||||
"set_user_permissions": 0,
|
||||
"share": 1,
|
||||
"share": 0,
|
||||
"submit": 0,
|
||||
"write": 0
|
||||
}
|
||||
],
|
||||
"quick_entry": 0,
|
||||
"read_only": 0,
|
||||
"read_only_onload": 0,
|
||||
"sort_order": "ASC",
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue