Merge branch 'master' of github.com:webnotes/erpnext
diff --git a/patches/december_2012/clear_web_cache.py b/patches/december_2012/clear_web_cache.py
deleted file mode 100644
index b92f4bd..0000000
--- a/patches/december_2012/clear_web_cache.py
+++ /dev/null
@@ -1,13 +0,0 @@
-import webnotes
-def execute():
- webnotes.reload_doc("website", "doctype", "web_page")
- webnotes.reload_doc("website", "doctype", "blog")
- webnotes.reload_doc("stock", "doctype", "item")
- webnotes.reload_doc("setup", "doctype", "item_group")
-
- # build wn-web.js and wn-web.css
- from website.helpers.make_web_include_files import make
- make()
-
- import website.utils
- website.utils.clear_cache()
\ No newline at end of file
diff --git a/patches/patch_list.py b/patches/patch_list.py
index 5a504f8..3f51209 100644
--- a/patches/patch_list.py
+++ b/patches/patch_list.py
@@ -132,7 +132,6 @@
"patches.december_2012.fix_default_print_format",
"patches.december_2012.file_list_rename",
"patches.december_2012.replace_createlocal",
- "patches.december_2012.clear_web_cache",
"patches.december_2012.remove_quotation_next_contact",
"patches.december_2012.stock_entry_cleanup",
"patches.december_2012.production_order_naming_series",
diff --git a/setup/page/setup/setup.js b/setup/page/setup/setup.js
index 394a5f6..a9df459 100644
--- a/setup/page/setup/setup.js
+++ b/setup/page/setup/setup.js
@@ -45,7 +45,7 @@
},
{
"doctype":"Workflow",
- label:wn._("Workfow"),
+ label:wn._("Workflow"),
"description":wn._("Set workflow rules.")
},
{
diff --git a/website/doctype/about_us_settings/about_us_settings.txt b/website/doctype/about_us_settings/about_us_settings.txt
index 6a27f73..b846d2b 100644
--- a/website/doctype/about_us_settings/about_us_settings.txt
+++ b/website/doctype/about_us_settings/about_us_settings.txt
@@ -2,7 +2,7 @@
{
"creation": "2013-03-07 15:53:15",
"docstatus": 0,
- "modified": "2013-03-12 13:51:29",
+ "modified": "2013-03-12 14:48:34",
"modified_by": "Administrator",
"owner": "Administrator"
},
@@ -46,7 +46,7 @@
"fieldname": "help",
"fieldtype": "HTML",
"label": "Help",
- "options": "<div class=\"alert\">Link for About Us Page is \"about.html\"</div>"
+ "options": "<div class=\"alert\">Link for About Us Page is \"/about\"</div>"
},
{
"description": "Introduce your company to the website visitor.",
diff --git a/website/doctype/contact_us_settings/contact_us_settings.txt b/website/doctype/contact_us_settings/contact_us_settings.txt
index 1bc7b05..ef2da02 100644
--- a/website/doctype/contact_us_settings/contact_us_settings.txt
+++ b/website/doctype/contact_us_settings/contact_us_settings.txt
@@ -1,8 +1,8 @@
[
{
- "creation": "2012-12-27 19:04:50",
+ "creation": "2013-02-21 20:12:42",
"docstatus": 0,
- "modified": "2013-02-21 16:49:33",
+ "modified": "2013-03-12 14:49:01",
"modified_by": "Administrator",
"owner": "Administrator"
},
@@ -44,7 +44,7 @@
"fieldname": "help",
"fieldtype": "HTML",
"label": "Help",
- "options": "<div class=\"alert\">Link for Contact Page is \"contact.html\"</div>"
+ "options": "<div class=\"alert\">Link for Contact Page is \"/contact\"</div>"
},
{
"description": "Address to be displayed on the Contact Page",
diff --git a/website/doctype/style_settings/custom_template.css b/website/doctype/style_settings/custom_template.css
index 24353f9..208c7dd 100644
--- a/website/doctype/style_settings/custom_template.css
+++ b/website/doctype/style_settings/custom_template.css
@@ -29,7 +29,7 @@
{% endif %}
div.outer {
- background-color: #{{ doc.page_background or "fff" }};
+ background-color: #{{ doc.page_background or "fffffff" }};
}
{% if doc.google_web_font_for_heading or doc.heading_font %}h1, h2, h3, h4, h5 {
@@ -54,14 +54,14 @@
}
{% else %}
div.web-footer {
- border-top: 1px solid #eee;
+ border-top: 1px solid #{{ get_hex_shade(doc.page_background or "ffffff", 15) }};
padding-top: 10px;
}
{% endif %}
/* Bootstrap Navbar */
.navbar-inverse .navbar-inner {
- background-color: #{{ doc.top_bar_background or "444"}};
+ background-color: #{{ doc.top_bar_background or "444444"}};
background-repeat: repeat-x;
border-color: transparent;
background-image: none;
@@ -71,13 +71,13 @@
.navbar-inverse .brand:hover,
.navbar-inverse .brand:focus,
.navbar-inverse .nav > li > a {
- color: #{{ doc.top_bar_foreground or "fff"}};
+ color: #{{ doc.top_bar_foreground or "fffffff"}};
text-shadow: none;
}
.navbar-inverse .nav > li > a:hover,
.navbar-inverse .nav > li > a:focus {
- color: #{{ doc.top_bar_background or "000"}};
+ color: #{{ doc.top_bar_background or "0000000"}};
}
.navbar-inverse .navbar-text {
@@ -86,14 +86,14 @@
.navbar-inverse .nav > li > a:focus,
.navbar-inverse .nav > li > a:hover {
- color: #{{ doc.top_bar_foreground or "fff"}};
+ color: #{{ doc.top_bar_foreground or "fffffff"}};
background-color: transparent;
}
.navbar-inverse .nav .active > a,
.navbar-inverse .nav .active > a:hover,
.navbar-inverse .nav .active > a:focus {
- color: #{{ doc.top_bar_foreground or "fff"}};
+ color: #{{ doc.top_bar_foreground or "fffffff"}};
background-color: transparent;
}
@@ -103,7 +103,7 @@
.navbar-inverse .navbar-link:hover,
.navbar-inverse .navbar-link:focus {
- color: #{{ doc.top_bar_foreground or "fff"}};
+ color: #{{ doc.top_bar_foreground or "fffffff"}};
}
.navbar-fixed-top .navbar-inner,
@@ -126,47 +126,90 @@
.navbar-inverse .nav li.dropdown > .dropdown-toggle .caret,
.navbar-inverse .nav li.dropdown > .dropdown-toggle:hover .caret {
- border-top-color: #{{ doc.top_bar_foreground or "fff"}};
- border-bottom-color: #{{ doc.top_bar_foreground or "fff"}};
+ border-top-color: #{{ doc.top_bar_foreground or "fffffff"}};
+ border-bottom-color: #{{ doc.top_bar_foreground or "fffffff"}};
}
.navbar-inverse .nav li.dropdown.open > .dropdown-toggle .caret,
.navbar-inverse .nav li.dropdown.open > .dropdown-toggle:hover .caret {
- border-top-color: #{{ doc.top_bar_background or "000"}};
- border-bottom-color: #{{ doc.top_bar_background or "000"}};
+ border-top-color: #{{ doc.top_bar_background or "0000000"}};
+ border-bottom-color: #{{ doc.top_bar_background or "0000000"}};
}
.navbar-inverse .nav li.dropdown.open > .dropdown-toggle {
- color: #{{ doc.top_bar_background or "000"}};
- background-color: #{{ doc.top_bar_foreground or "fff"}};
+ color: #{{ doc.top_bar_background or "0000000"}};
+ background-color: #{{ doc.top_bar_foreground or "fffffff"}};
}
@media (max-width: 800px) {
.navbar-inverse .nav-collapse .nav > li > a,
.navbar-inverse .nav-collapse .dropdown-menu a {
- background-color: #{{ doc.top_bar_background or "000"}};
- color: #{{ doc.top_bar_foreground or "fff"}};
+ background-color: #{{ doc.top_bar_background or "0000000"}};
+ color: #{{ doc.top_bar_foreground or "fffffff"}};
}
.navbar-inverse .nav-collapse .nav > li > a:hover,
.navbar-inverse .nav-collapse .dropdown-menu a:hover {
- background-color: #{{ doc.top_bar_foreground or "fff"}};
- color: #{{ doc.top_bar_background or "000"}};
+ background-color: #{{ doc.top_bar_foreground or "fffffff"}};
+ color: #{{ doc.top_bar_background or "0000000"}};
}
.navbar-inverse .nav li.dropdown > .dropdown-toggle .caret {
- border-top-color: #{{ doc.top_bar_foreground or "fff" }};
- border-bottom-color: #{{ doc.top_bar_foreground or "fff" }};
+ border-top-color: #{{ doc.top_bar_foreground or "fffffff" }};
+ border-bottom-color: #{{ doc.top_bar_foreground or "fffffff" }};
}
.navbar-inverse .nav li.dropdown > .dropdown-toggle:hover .caret {
- border-top-color: #{{ doc.top_bar_background or "000" }};
- border-bottom-color: #{{ doc.top_bar_background or "000" }};
+ border-top-color: #{{ doc.top_bar_background or "0000000" }};
+ border-bottom-color: #{{ doc.top_bar_background or "0000000" }};
}
.navbar-inverse .nav li.dropdown.open > .dropdown-toggle .caret,
.navbar-inverse .nav li.dropdown.open > .dropdown-toggle:hover .caret {
- border-top-color: #{{ doc.top_bar_background or "000" }};
- border-bottom-color: #{{ doc.top_bar_background or "000" }};
+ border-top-color: #{{ doc.top_bar_background or "0000000" }};
+ border-bottom-color: #{{ doc.top_bar_background or "0000000" }};
}
}
+
+.breadcrumb {
+ background-color: #{{ get_hex_shade(doc.page_background or "ffffff", 5) }};
+}
+
+.table-striped tbody > tr:nth-child(odd) > td,
+.table-striped tbody > tr:nth-child(odd) > th {
+ background-color: #{{ get_hex_shade(doc.page_background or "ffffff", 5) }};
+}
+
+.table-hover tbody tr:hover td,
+.table-hover tbody tr:hover th {
+ background-color: #{{ get_hex_shade(doc.page_background or "ffffff", 10) }};
+}
+
+.table-bordered {
+ border: 1px solid #{{ get_hex_shade(doc.page_background or "ffffff", 15) }};
+}
+
+.table th,
+.table td {
+ border-top: 1px solid #{{ get_hex_shade(doc.page_background or "ffffff", 15) }};
+}
+
+.table-bordered th,
+.table-bordered td {
+ border-left: 1px solid #{{ get_hex_shade(doc.page_background or "ffffff", 15) }};
+}
+
+
+
+.hero-unit {
+ background-color: #{{ get_hex_shade(doc.page_background or "ffffff", 15) }};
+}
+
+pre, code {
+ background-color: #{{ get_hex_shade(doc.page_background or "ffffff", 5) }};
+}
+
+hr {
+ border-top: 1px solid #{{ get_hex_shade(doc.page_background or "ffffff", 15) }};
+ border-bottom: 1px solid #{{ get_hex_shade(doc.page_background or "ffffff", 5) }};
+}
diff --git a/website/doctype/style_settings/style_settings.py b/website/doctype/style_settings/style_settings.py
index 91ca0a5..1cc3467 100644
--- a/website/doctype/style_settings/style_settings.py
+++ b/website/doctype/style_settings/style_settings.py
@@ -27,6 +27,7 @@
def validate(self):
"""make custom css"""
from jinja2 import Template
+ from website.utils import get_hex_shade
import os
self.validate_colors()
@@ -38,7 +39,7 @@
self.prepare()
- self.doc.custom_css = temp.render(doc = self.doc)
+ self.doc.custom_css = temp.render(doc = self.doc, get_hex_shade=get_hex_shade)
if self.doc.add_css:
self.doc.custom_css += '\n\n/* User CSS */\n\n' + self.doc.add_css
diff --git a/website/templates/pages/about.html b/website/templates/pages/about.html
index 28fb1f6..380c543 100644
--- a/website/templates/pages/about.html
+++ b/website/templates/pages/about.html
@@ -9,7 +9,7 @@
<h3>{{ obj.doc.company_history_heading or "Company History" }}</h3>
{% for d in obj.doclist.get({"doctype":"Company History"}) %}
<div class="row">
- <span class="span2" style="text-align: right"><h4 style="margin:0px;">{{ d.year }}</h4></span>
+ <span class="span2"><h4 style="margin:0px;">{{ d.year }}</h4></span>
<span class="span10"><p>{{ d.highlight }}</p></span>
</div>
{% endfor %}
@@ -20,11 +20,11 @@
<div class="row" itemscope itemtype="http://schema.org/Person">
<span class="span2">
<div class="avatar avatar-large">
- <img class="avatar" src="{{ d.image }}" style="" itemprop="image">
+ <img class="avatar" src="{{ d.image_link }}" style="" itemprop="image">
</div>
</span>
<span class="span10"><h4 itemprop="name">{{ d.full_name }}</h4>
- <div itemprop="description">{{ d.bio }}</div>
+ <p itemprop="description">{{ d.bio }}</p>
</span>
</div>
{% endfor %}
diff --git a/website/utils.py b/website/utils.py
index 0f62d26..b38d2b3 100644
--- a/website/utils.py
+++ b/website/utils.py
@@ -302,4 +302,27 @@
if url and not url.lower().startswith("http"):
return "files/" + url
else:
- return url
\ No newline at end of file
+ return url
+
+def get_hex_shade(color, percent):
+ # switch dark and light shades
+ if int(color, 16) > int("808080", 16):
+ percent = -percent
+
+ # stronger diff for darker shades
+ if int(color, 16) < int("333333", 16):
+ percent = percent * 2
+
+ def p(c):
+ v = int(c, 16) + int(int('ff', 16) * (float(percent)/100))
+ if v < 0:
+ v=0
+ if v > 255:
+ v=255
+ h = hex(v)[2:]
+ if len(h) < 2:
+ h = "0" + h
+ return h
+
+ r, g, b = color[0:2], color[2:4], color[4:6]
+ return p(r) + p(g) + p(b)
\ No newline at end of file