diff --git a/frappe/change_log/current/web_forms.md b/frappe/change_log/current/web_forms.md new file mode 100644 index 0000000000..95e07f30e8 --- /dev/null +++ b/frappe/change_log/current/web_forms.md @@ -0,0 +1,6 @@ +#### Updates to Web Forms + +- Web Forms list now is a standard portal list and includes paging and other extensions +- Section, Column Breaks in Web Forms +- Consistent User Interface +- Cleanup of Portal Pages diff --git a/frappe/commands.py b/frappe/commands.py index d0fac47d07..46023ee508 100644 --- a/frappe/commands.py +++ b/frappe/commands.py @@ -483,7 +483,7 @@ def export_json(context, doctype, name, path): try: frappe.init(site=site) frappe.connect() - data_import_tool.export_json(doctype, name, path) + data_import_tool.export_json(doctype, path, name=name) finally: frappe.destroy() diff --git a/frappe/core/doctype/user/user.js b/frappe/core/doctype/user/user.js index b96d591fc8..9e6afe4d41 100644 --- a/frappe/core/doctype/user/user.js +++ b/frappe/core/doctype/user/user.js @@ -46,9 +46,7 @@ cur_frm.cscript.refresh = function(doc) { window.location.reload(); } - cur_frm.toggle_display('change_password', !doc.__islocal); - - cur_frm.toggle_display(['sb1', 'sb3'], false); + cur_frm.toggle_display(['sb1', 'sb3', 'modules_access'], false); if(!doc.__islocal){ cur_frm.add_custom_button(__("Set User Permissions"), function() { @@ -59,7 +57,7 @@ cur_frm.cscript.refresh = function(doc) { }, null, "btn-default") if(has_common(user_roles, ["Administrator", "System Manager"])) { - cur_frm.toggle_display(['sb1', 'sb3'], true); + cur_frm.toggle_display(['sb1', 'sb3', 'modules_access'], true); } cur_frm.cscript.enabled(doc); @@ -77,7 +75,7 @@ cur_frm.cscript.refresh = function(doc) { cur_frm.cscript.enabled = function(doc) { if(!doc.__islocal && has_common(user_roles, ["Administrator", "System Manager"])) { - cur_frm.toggle_display(['sb1', 'sb3'], doc.enabled); + cur_frm.toggle_display(['sb1', 'sb3', 'modules_access'], doc.enabled); cur_frm.toggle_enable('*', doc.enabled); cur_frm.set_df_property('enabled', 'read_only', 0); } diff --git a/frappe/core/doctype/user/user.json b/frappe/core/doctype/user/user.json index 22e99cf76b..51fc55df99 100644 --- a/frappe/core/doctype/user/user.json +++ b/frappe/core/doctype/user/user.json @@ -115,6 +115,7 @@ "permlevel": 0 }, { + "depends_on": "eval:!doc.__islocal", "fieldname": "change_password", "fieldtype": "Section Break", "label": "", @@ -127,6 +128,14 @@ "no_copy": 1, "permlevel": 0 }, + { + "depends_on": "", + "fieldname": "send_password_update_notification", + "fieldtype": "Check", + "label": "Send Password Update Notification", + "permlevel": 0, + "precision": "" + }, { "fieldname": "reset_password_key", "fieldtype": "Data", @@ -473,7 +482,7 @@ "issingle": 0, "istable": 0, "max_attachments": 5, - "modified": "2015-04-24 14:37:26.430454", + "modified": "2015-06-01 01:00:32.901851", "modified_by": "Administrator", "module": "Core", "name": "User", diff --git a/frappe/core/doctype/user/user.py b/frappe/core/doctype/user/user.py index dbe0463d20..415a6c71ac 100644 --- a/frappe/core/doctype/user/user.py +++ b/frappe/core/doctype/user/user.py @@ -76,8 +76,9 @@ class User(Document): if new_password and not self.in_insert: _update_password(self.name, new_password) - self.password_update_mail(new_password) - frappe.msgprint(_("New password emailed")) + if self.send_password_update_notification: + self.password_update_mail(new_password) + frappe.msgprint(_("New password emailed")) def on_update(self): # clear new password @@ -324,12 +325,16 @@ def get_perm_info(arg=None): and docstatus<2 order by parent, permlevel""", (frappe.form_dict['role'],), as_dict=1) @frappe.whitelist(allow_guest=True) -def update_password(new_password, key=None): +def update_password(new_password, key=None, old_password=None): # verify old password if key: user = frappe.db.get_value("User", {"reset_password_key":key}) if not user: return _("Cannot Update: Incorrect / Expired Link.") + elif old_password: + # verify old password + frappe.local.login_manager.check_password(frappe.session.user, old_password) + user = frappe.session.user _update_password(user, new_password) diff --git a/frappe/core/page/data_import_tool/data_import_tool.py b/frappe/core/page/data_import_tool/data_import_tool.py index 9a1ebe2b44..39f80a2aef 100644 --- a/frappe/core/page/data_import_tool/data_import_tool.py +++ b/frappe/core/page/data_import_tool/data_import_tool.py @@ -3,7 +3,7 @@ from __future__ import unicode_literals -import frappe, json, os +import frappe, os from frappe import _ import frappe.modules.import_file @@ -43,7 +43,7 @@ def export_csv(doctype, path): get_template(doctype=doctype, all_doctypes="Yes", with_data="Yes") csvfile.write(frappe.response.result.encode("utf-8")) -def export_json(doctype, path, filters=None): +def export_json(doctype, path, filters=None, name=None): def post_process(out): del_keys = ('parent', 'parentfield', 'parenttype', 'modified_by', 'creation', 'owner', 'idx') for doc in out: @@ -57,9 +57,10 @@ def export_json(doctype, path, filters=None): if key in child: del child[key] - from frappe.utils.response import json_handler out = [] - if frappe.db.get_value("DocType", doctype, "issingle"): + if name: + out.append(frappe.get_doc(doctype, name).as_dict()) + elif frappe.db.get_value("DocType", doctype, "issingle"): out.append(frappe.get_doc(doctype).as_dict()) else: for doc in frappe.get_all(doctype, fields=["name"], filters=filters, limit_page_length=0, order_by="creation asc"): @@ -85,7 +86,6 @@ def import_doc(path, overwrite=False, ignore_links=False, ignore_insert=False, i else: files = [path] - for f in files: if f.endswith(".json"): frappe.flags.mute_emails = True diff --git a/frappe/database.py b/frappe/database.py index 2d572cecbd..6fd3d5712d 100644 --- a/frappe/database.py +++ b/frappe/database.py @@ -511,6 +511,10 @@ class Database: tabSingles where doctype=%s and field=%s""", (doctype, fieldname)) return val[0][0] if val else None + def get_singles_value(self, *args, **kwargs): + """Alias for get_single_value""" + return self.get_single_value(*args, **kwargs) + def _get_values_from_table(self, fields, filters, doctype, as_dict, debug, order_by=None, update=None): fl = [] if isinstance(fields, (list, tuple)): diff --git a/frappe/handler.py b/frappe/handler.py index 821d7cc591..25e28a063d 100755 --- a/frappe/handler.py +++ b/frappe/handler.py @@ -31,8 +31,7 @@ def logout(): def web_logout(): frappe.local.login_manager.logout() frappe.db.commit() - frappe.respond_as_web_page("Logged Out", """
You have been logged out.
- """) + frappe.respond_as_web_page("Logged Out", """""") @frappe.whitelist(allow_guest=True) def run_custom_method(doctype, name, custom_method): diff --git a/frappe/model/meta.py b/frappe/model/meta.py index f58b290fa0..025dbd21a3 100644 --- a/frappe/model/meta.py +++ b/frappe/model/meta.py @@ -114,6 +114,9 @@ class Meta(Document): list_fields.append(self.title_field) return list_fields + def get_title_field(self): + return self.title_field or "name" + def process(self): # don't process for special doctypes # prevent's circular dependency diff --git a/frappe/public/css/shepherd/shepherd-theme-arrows-plain-buttons.css b/frappe/public/css/shepherd/shepherd-theme-arrows-plain-buttons.css new file mode 100755 index 0000000000..4b07981756 --- /dev/null +++ b/frappe/public/css/shepherd/shepherd-theme-arrows-plain-buttons.css @@ -0,0 +1,185 @@ +.shepherd-element, .shepherd-element:after, .shepherd-element:before, .shepherd-element *, .shepherd-element *:after, .shepherd-element *:before { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } + +.shepherd-element { + position: absolute; + display: none; } + .shepherd-element.shepherd-open { + display: block; } + +.shepherd-element.shepherd-theme-arrows-plain-buttons { + max-width: 100%; + max-height: 100%; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content { + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + position: relative; + font-family: inherit; + background: #fff; + color: #444; + padding: 1em; + font-size: 1.1em; + line-height: 1.5em; + -moz-transform: translateZ(0); + -ms-transform: translateZ(0); + -webkit-transform: translateZ(0); + transform: translateZ(0); + -webkit-filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2)); + filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2)); } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content:before { + content: ""; + display: block; + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-width: 16px; + border-style: solid; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content:before { + top: 100%; + left: 50%; + margin-left: -16px; + border-top-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content:before { + bottom: 100%; + left: 50%; + margin-left: -16px; + border-bottom-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content:before { + left: 100%; + top: 50%; + margin-top: -16px; + border-left-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content:before { + right: 100%; + top: 50%; + margin-top: -16px; + border-right-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + left: 16px; + border-bottom-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + right: 16px; + border-bottom-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + left: 16px; + border-top-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + right: 16px; + border-top-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + top: 16px; + left: 100%; + border-left-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + top: 16px; + right: 100%; + border-right-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + bottom: 16px; + left: 100%; + border-left-color: #fff; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + bottom: 16px; + right: 100%; + border-right-color: #fff; } + +.shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before { + border-bottom-color: #eee; } +.shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-has-title .shepherd-content header { + background: #eee; + padding: 1em; } + .shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-has-title .shepherd-content header a.shepherd-cancel-link { + padding: 0; + margin-bottom: 0; } +.shepherd-element.shepherd-theme-arrows-plain-buttons.shepherd-has-cancel-link .shepherd-content header h3 { + float: left; } +.shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content { + padding: 0; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content header { + *zoom: 1; + -moz-border-radius: 5px 5px 0 0; + -webkit-border-radius: 5px; + border-radius: 5px 5px 0 0; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content header:after { + content: ""; + display: table; + clear: both; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content header h3 { + margin: 0; + line-height: 1; + font-weight: normal; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content header a.shepherd-cancel-link { + float: right; + text-decoration: none; + font-size: 1.25em; + line-height: 0.8em; + font-weight: normal; + color: rgba(0, 0, 0, 0.5); + opacity: 0.25; + position: relative; + top: 0.1em; + padding: 0.8em; + margin-bottom: -0.8em; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content header a.shepherd-cancel-link:hover { + opacity: 1; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content .shepherd-text { + padding: 1em; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content .shepherd-text p { + margin: 0 0 0.5em 0; + line-height: 1.3em; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content .shepherd-text p:last-child { + margin-bottom: 0; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content footer { + padding: 0 1em 1em; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content footer .shepherd-buttons { + text-align: right; + list-style: none; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content footer .shepherd-buttons li { + display: inline; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content footer .shepherd-buttons li .shepherd-button { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + cursor: pointer; + margin: 0 0.5em 0 0; + text-decoration: none; } + .shepherd-element.shepherd-theme-arrows-plain-buttons .shepherd-content footer .shepherd-buttons li:last-child .shepherd-button { + margin-right: 0; } diff --git a/frappe/public/css/shepherd/shepherd-theme-arrows.css b/frappe/public/css/shepherd/shepherd-theme-arrows.css new file mode 100755 index 0000000000..5091c726ce --- /dev/null +++ b/frappe/public/css/shepherd/shepherd-theme-arrows.css @@ -0,0 +1,201 @@ +.shepherd-element, .shepherd-element:after, .shepherd-element:before, .shepherd-element *, .shepherd-element *:after, .shepherd-element *:before { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } + +.shepherd-element { + position: absolute; + display: none; } + .shepherd-element.shepherd-open { + display: block; } + +.shepherd-element.shepherd-theme-arrows { + max-width: 100%; + max-height: 100%; } + .shepherd-element.shepherd-theme-arrows .shepherd-content { + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + position: relative; + font-family: inherit; + background: #fff; + /*color: #444;*/ + padding: 1em; + /*font-size: 1.1em;*/ + /*line-height: 1.5em;*/ + -moz-transform: translateZ(0); + -ms-transform: translateZ(0); + -webkit-transform: translateZ(0); + transform: translateZ(0); + -webkit-filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2)); + filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2)); } + .shepherd-element.shepherd-theme-arrows .shepherd-content:before { + content: ""; + display: block; + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-width: 16px; + border-style: solid; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content:before { + top: 100%; + left: 50%; + margin-left: -16px; + border-top-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content:before { + bottom: 100%; + left: 50%; + margin-left: -16px; + border-bottom-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content:before { + left: 100%; + top: 50%; + margin-top: -16px; + border-left-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content:before { + right: 100%; + top: 50%; + margin-top: -16px; + border-right-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + left: 16px; + border-bottom-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + right: 16px; + border-bottom-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + left: 16px; + border-top-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + right: 16px; + border-top-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + top: 16px; + left: 100%; + border-left-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + top: 16px; + right: 100%; + border-right-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + bottom: 16px; + left: 100%; + border-left-color: #fff; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + bottom: 16px; + right: 100%; + border-right-color: #fff; } + +.shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-arrows.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before { + border-bottom-color: #eee; } +.shepherd-element.shepherd-theme-arrows.shepherd-has-title .shepherd-content header { + background: #eee; + padding: 1em; } + .shepherd-element.shepherd-theme-arrows.shepherd-has-title .shepherd-content header a.shepherd-cancel-link { + padding: 0; + margin-bottom: 0; } +.shepherd-element.shepherd-theme-arrows.shepherd-has-cancel-link .shepherd-content header h3 { + float: left; } +.shepherd-element.shepherd-theme-arrows .shepherd-content { + padding: 0; } + .shepherd-element.shepherd-theme-arrows .shepherd-content * { + font-size: inherit; } + .shepherd-element.shepherd-theme-arrows .shepherd-content header { + *zoom: 1; + -moz-border-radius: 5px 5px 0 0; + -webkit-border-radius: 5px; + border-radius: 5px 5px 0 0; } + .shepherd-element.shepherd-theme-arrows .shepherd-content header:after { + content: ""; + display: table; + clear: both; } + .shepherd-element.shepherd-theme-arrows .shepherd-content header h3 { + margin: 0; + line-height: 1; + font-weight: normal; } + .shepherd-element.shepherd-theme-arrows .shepherd-content header a.shepherd-cancel-link { + float: right; + text-decoration: none; + font-size: 1.25em; + line-height: 0.8em; + font-weight: normal; + color: rgba(0, 0, 0, 0.5); + opacity: 0.25; + position: relative; + top: 0.1em; + padding: 0.8em; + margin-bottom: -0.8em; } + .shepherd-element.shepherd-theme-arrows .shepherd-content header a.shepherd-cancel-link:hover { + opacity: 1; } + .shepherd-element.shepherd-theme-arrows .shepherd-content .shepherd-text { + padding: 1em; } + .shepherd-element.shepherd-theme-arrows .shepherd-content .shepherd-text p { + margin: 0 0 0.5em 0; + line-height: 1.3em; } + .shepherd-element.shepherd-theme-arrows .shepherd-content .shepherd-text p:last-child { + margin-bottom: 0; } + .shepherd-element.shepherd-theme-arrows .shepherd-content footer { + padding: 0 1em 1em; } + .shepherd-element.shepherd-theme-arrows .shepherd-content footer .shepherd-buttons { + text-align: right; + list-style: none; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-arrows .shepherd-content footer .shepherd-buttons li { + display: inline; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-arrows .shepherd-content footer .shepherd-buttons li .shepherd-button { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } + .shepherd-element.shepherd-theme-arrows .shepherd-content footer .shepherd-buttons li .shepherd-button.shepherd-button-secondary { + background: #eee; + color: #888; } + .shepherd-element.shepherd-theme-arrows .shepherd-content footer .shepherd-buttons li:last-child .shepherd-button { + margin-right: 0; } diff --git a/frappe/public/css/shepherd/shepherd-theme-dark.css b/frappe/public/css/shepherd/shepherd-theme-dark.css new file mode 100755 index 0000000000..d079dc7139 --- /dev/null +++ b/frappe/public/css/shepherd/shepherd-theme-dark.css @@ -0,0 +1,223 @@ +.shepherd-element, .shepherd-element:after, .shepherd-element:before, .shepherd-element *, .shepherd-element *:after, .shepherd-element *:before { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } + +.shepherd-element { + position: absolute; + display: none; } + .shepherd-element.shepherd-open { + display: block; } + +.shepherd-element.shepherd-theme-dark { + max-width: 100%; + max-height: 100%; } + .shepherd-element.shepherd-theme-dark .shepherd-content { + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + position: relative; + font-family: inherit; + background: #232323; + color: #eee; + padding: 1em; + font-size: 1.1em; + line-height: 1.5em; } + .shepherd-element.shepherd-theme-dark .shepherd-content:before { + content: ""; + display: block; + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-width: 16px; + border-style: solid; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content:before { + top: 100%; + left: 50%; + margin-left: -16px; + border-top-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content:before { + bottom: 100%; + left: 50%; + margin-left: -16px; + border-bottom-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content:before { + left: 100%; + top: 50%; + margin-top: -16px; + border-left-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content:before { + right: 100%; + top: 50%; + margin-top: -16px; + border-right-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + left: 16px; + border-bottom-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + right: 16px; + border-bottom-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + left: 16px; + border-top-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + right: 16px; + border-top-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + top: 16px; + left: 100%; + border-left-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + top: 16px; + right: 100%; + border-right-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + bottom: 16px; + left: 100%; + border-left-color: #232323; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + bottom: 16px; + right: 100%; + border-right-color: #232323; } + +.shepherd-element.shepherd-theme-dark { + z-index: 9999; + max-width: 24em; + font-size: 1em; } + .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before { + border-bottom-color: #303030; } + .shepherd-element.shepherd-theme-dark.shepherd-has-title .shepherd-content header { + background: #303030; + padding: 1em; } + .shepherd-element.shepherd-theme-dark.shepherd-has-title .shepherd-content header a.shepherd-cancel-link { + padding: 0; + margin-bottom: 0; } + .shepherd-element.shepherd-theme-dark.shepherd-has-cancel-link .shepherd-content header h3 { + float: left; } + .shepherd-element.shepherd-theme-dark .shepherd-content { + -moz-box-shadow: 0 0 1em rgba(0, 0, 0, 0.2); + -webkit-box-shadow: 0 0 1em rgba(0, 0, 0, 0.2); + box-shadow: 0 0 1em rgba(0, 0, 0, 0.2); + padding: 0; } + .shepherd-element.shepherd-theme-dark .shepherd-content * { + font-size: inherit; } + .shepherd-element.shepherd-theme-dark .shepherd-content header { + *zoom: 1; + -moz-border-radius: 5px 5px 0 0; + -webkit-border-radius: 5px; + border-radius: 5px 5px 0 0; } + .shepherd-element.shepherd-theme-dark .shepherd-content header:after { + content: ""; + display: table; + clear: both; } + .shepherd-element.shepherd-theme-dark .shepherd-content header h3 { + margin: 0; + line-height: 1; + font-weight: normal; } + .shepherd-element.shepherd-theme-dark .shepherd-content header a.shepherd-cancel-link { + float: right; + text-decoration: none; + font-size: 1.25em; + line-height: 0.8em; + font-weight: normal; + color: rgba(0, 0, 0, 0.5); + opacity: 0.25; + position: relative; + top: 0.1em; + padding: 0.8em; + margin-bottom: -0.8em; } + .shepherd-element.shepherd-theme-dark .shepherd-content header a.shepherd-cancel-link:hover { + opacity: 1; } + .shepherd-element.shepherd-theme-dark .shepherd-content .shepherd-text { + padding: 1em; } + .shepherd-element.shepherd-theme-dark .shepherd-content .shepherd-text p { + margin: 0 0 0.5em 0; + line-height: 1.3em; } + .shepherd-element.shepherd-theme-dark .shepherd-content .shepherd-text p:last-child { + margin-bottom: 0; } + .shepherd-element.shepherd-theme-dark .shepherd-content footer { + padding: 0 1em 1em; } + .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons { + text-align: right; + list-style: none; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons li { + display: inline; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons li .shepherd-button { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } + .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons li .shepherd-button.shepherd-button-secondary { + background: #eee; + color: #888; } + .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons li:last-child .shepherd-button { + margin-right: 0; } + +.shepherd-start-tour-button.shepherd-theme-dark { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } diff --git a/frappe/public/css/shepherd/shepherd-theme-default.css b/frappe/public/css/shepherd/shepherd-theme-default.css new file mode 100755 index 0000000000..b6ab7e766a --- /dev/null +++ b/frappe/public/css/shepherd/shepherd-theme-default.css @@ -0,0 +1,223 @@ +.shepherd-element, .shepherd-element:after, .shepherd-element:before, .shepherd-element *, .shepherd-element *:after, .shepherd-element *:before { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } + +.shepherd-element { + position: absolute; + display: none; } + .shepherd-element.shepherd-open { + display: block; } + +.shepherd-element.shepherd-theme-default { + max-width: 100%; + max-height: 100%; } + .shepherd-element.shepherd-theme-default .shepherd-content { + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + position: relative; + font-family: inherit; + background: #f6f6f6; + color: #444; + padding: 1em; + font-size: 1.1em; + line-height: 1.5em; } + .shepherd-element.shepherd-theme-default .shepherd-content:before { + content: ""; + display: block; + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-width: 16px; + border-style: solid; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content:before { + top: 100%; + left: 50%; + margin-left: -16px; + border-top-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content:before { + bottom: 100%; + left: 50%; + margin-left: -16px; + border-bottom-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content:before { + left: 100%; + top: 50%; + margin-top: -16px; + border-left-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content:before { + right: 100%; + top: 50%; + margin-top: -16px; + border-right-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + left: 16px; + border-bottom-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + right: 16px; + border-bottom-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + left: 16px; + border-top-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + right: 16px; + border-top-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + top: 16px; + left: 100%; + border-left-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + top: 16px; + right: 100%; + border-right-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + bottom: 16px; + left: 100%; + border-left-color: #f6f6f6; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + bottom: 16px; + right: 100%; + border-right-color: #f6f6f6; } + +.shepherd-element.shepherd-theme-default { + z-index: 9999; + max-width: 24em; + font-size: 1em; } + .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-default.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before { + border-bottom-color: #e6e6e6; } + .shepherd-element.shepherd-theme-default.shepherd-has-title .shepherd-content header { + background: #e6e6e6; + padding: 1em; } + .shepherd-element.shepherd-theme-default.shepherd-has-title .shepherd-content header a.shepherd-cancel-link { + padding: 0; + margin-bottom: 0; } + .shepherd-element.shepherd-theme-default.shepherd-has-cancel-link .shepherd-content header h3 { + float: left; } + .shepherd-element.shepherd-theme-default .shepherd-content { + -moz-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + padding: 0; } + .shepherd-element.shepherd-theme-default .shepherd-content * { + font-size: inherit; } + .shepherd-element.shepherd-theme-default .shepherd-content header { + *zoom: 1; + -moz-border-radius: 5px 5px 0 0; + -webkit-border-radius: 5px; + border-radius: 5px 5px 0 0; } + .shepherd-element.shepherd-theme-default .shepherd-content header:after { + content: ""; + display: table; + clear: both; } + .shepherd-element.shepherd-theme-default .shepherd-content header h3 { + margin: 0; + line-height: 1; + font-weight: normal; } + .shepherd-element.shepherd-theme-default .shepherd-content header a.shepherd-cancel-link { + float: right; + text-decoration: none; + font-size: 1.25em; + line-height: 0.8em; + font-weight: normal; + color: rgba(0, 0, 0, 0.5); + opacity: 0.25; + position: relative; + top: 0.1em; + padding: 0.8em; + margin-bottom: -0.8em; } + .shepherd-element.shepherd-theme-default .shepherd-content header a.shepherd-cancel-link:hover { + opacity: 1; } + .shepherd-element.shepherd-theme-default .shepherd-content .shepherd-text { + padding: 1em; } + .shepherd-element.shepherd-theme-default .shepherd-content .shepherd-text p { + margin: 0 0 0.5em 0; + line-height: 1.3em; } + .shepherd-element.shepherd-theme-default .shepherd-content .shepherd-text p:last-child { + margin-bottom: 0; } + .shepherd-element.shepherd-theme-default .shepherd-content footer { + padding: 0 1em 1em; } + .shepherd-element.shepherd-theme-default .shepherd-content footer .shepherd-buttons { + text-align: right; + list-style: none; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-default .shepherd-content footer .shepherd-buttons li { + display: inline; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-default .shepherd-content footer .shepherd-buttons li .shepherd-button { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } + .shepherd-element.shepherd-theme-default .shepherd-content footer .shepherd-buttons li .shepherd-button.shepherd-button-secondary { + background: #eee; + color: #888; } + .shepherd-element.shepherd-theme-default .shepherd-content footer .shepherd-buttons li:last-child .shepherd-button { + margin-right: 0; } + +.shepherd-start-tour-button.shepherd-theme-default { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } diff --git a/frappe/public/css/shepherd/shepherd-theme-square-dark.css b/frappe/public/css/shepherd/shepherd-theme-square-dark.css new file mode 100755 index 0000000000..c941280510 --- /dev/null +++ b/frappe/public/css/shepherd/shepherd-theme-square-dark.css @@ -0,0 +1,229 @@ +.shepherd-element, .shepherd-element:after, .shepherd-element:before, .shepherd-element *, .shepherd-element *:after, .shepherd-element *:before { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } + +.shepherd-element { + position: absolute; + display: none; } + .shepherd-element.shepherd-open { + display: block; } + +.shepherd-element.shepherd-theme-square-dark { + max-width: 100%; + max-height: 100%; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content { + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + position: relative; + font-family: inherit; + background: #232323; + color: #eee; + padding: 1em; + font-size: 1.1em; + line-height: 1.5em; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content:before { + content: ""; + display: block; + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-width: 16px; + border-style: solid; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content:before { + top: 100%; + left: 50%; + margin-left: -16px; + border-top-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content:before { + bottom: 100%; + left: 50%; + margin-left: -16px; + border-bottom-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content:before { + left: 100%; + top: 50%; + margin-top: -16px; + border-left-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content:before { + right: 100%; + top: 50%; + margin-top: -16px; + border-right-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + left: 16px; + border-bottom-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + right: 16px; + border-bottom-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + left: 16px; + border-top-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + right: 16px; + border-top-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + top: 16px; + left: 100%; + border-left-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + top: 16px; + right: 100%; + border-right-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + bottom: 16px; + left: 100%; + border-left-color: #232323; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + bottom: 16px; + right: 100%; + border-right-color: #232323; } + +.shepherd-element.shepherd-theme-square-dark { + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + z-index: 9999; + max-width: 24em; + font-size: 1em; } + .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-square-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before { + border-bottom-color: #303030; } + .shepherd-element.shepherd-theme-square-dark.shepherd-has-title .shepherd-content header { + background: #303030; + padding: 1em; } + .shepherd-element.shepherd-theme-square-dark.shepherd-has-title .shepherd-content header a.shepherd-cancel-link { + padding: 0; + margin-bottom: 0; } + .shepherd-element.shepherd-theme-square-dark.shepherd-has-cancel-link .shepherd-content header h3 { + float: left; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content { + -moz-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + padding: 0; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content * { + font-size: inherit; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content header { + *zoom: 1; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content header:after { + content: ""; + display: table; + clear: both; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content header h3 { + margin: 0; + line-height: 1; + font-weight: normal; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content header a.shepherd-cancel-link { + float: right; + text-decoration: none; + font-size: 1.25em; + line-height: 0.8em; + font-weight: normal; + color: rgba(0, 0, 0, 0.5); + opacity: 0.25; + position: relative; + top: 0.1em; + padding: 0.8em; + margin-bottom: -0.8em; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content header a.shepherd-cancel-link:hover { + opacity: 1; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content .shepherd-text { + padding: 1em; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content .shepherd-text p { + margin: 0 0 0.5em 0; + line-height: 1.3em; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content .shepherd-text p:last-child { + margin-bottom: 0; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content footer { + padding: 0 1em 1em; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content footer .shepherd-buttons { + text-align: right; + list-style: none; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content footer .shepherd-buttons li { + display: inline; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content footer .shepherd-buttons li .shepherd-button { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content footer .shepherd-buttons li .shepherd-button.shepherd-button-secondary { + background: #eee; + color: #888; } + .shepherd-element.shepherd-theme-square-dark .shepherd-content footer .shepherd-buttons li:last-child .shepherd-button { + margin-right: 0; } + +.shepherd-start-tour-button.shepherd-theme-square-dark { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } diff --git a/frappe/public/css/shepherd/shepherd-theme-square.css b/frappe/public/css/shepherd/shepherd-theme-square.css new file mode 100755 index 0000000000..4faba44d9b --- /dev/null +++ b/frappe/public/css/shepherd/shepherd-theme-square.css @@ -0,0 +1,229 @@ +.shepherd-element, .shepherd-element:after, .shepherd-element:before, .shepherd-element *, .shepherd-element *:after, .shepherd-element *:before { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } + +.shepherd-element { + position: absolute; + display: none; } + .shepherd-element.shepherd-open { + display: block; } + +.shepherd-element.shepherd-theme-square { + max-width: 100%; + max-height: 100%; } + .shepherd-element.shepherd-theme-square .shepherd-content { + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + position: relative; + font-family: inherit; + background: #f6f6f6; + color: #444; + padding: 1em; + font-size: 1.1em; + line-height: 1.5em; } + .shepherd-element.shepherd-theme-square .shepherd-content:before { + content: ""; + display: block; + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-width: 16px; + border-style: solid; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content:before { + top: 100%; + left: 50%; + margin-left: -16px; + border-top-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content:before { + bottom: 100%; + left: 50%; + margin-left: -16px; + border-bottom-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content:before { + left: 100%; + top: 50%; + margin-top: -16px; + border-left-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content:before { + right: 100%; + top: 50%; + margin-top: -16px; + border-right-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + left: 16px; + border-bottom-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content { + margin-top: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content:before { + bottom: 100%; + right: 16px; + border-bottom-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + left: 16px; + border-top-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content { + margin-bottom: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content:before { + top: 100%; + right: 16px; + border-top-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + top: 16px; + left: 100%; + border-left-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + top: 16px; + right: 100%; + border-right-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content { + margin-right: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before { + bottom: 16px; + left: 100%; + border-left-color: #f6f6f6; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content { + margin-left: 16px; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before { + bottom: 16px; + right: 100%; + border-right-color: #f6f6f6; } + +.shepherd-element.shepherd-theme-square { + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + z-index: 9999; + max-width: 24em; + font-size: 1em; } + .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-square.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before { + border-bottom-color: #e6e6e6; } + .shepherd-element.shepherd-theme-square.shepherd-has-title .shepherd-content header { + background: #e6e6e6; + padding: 1em; } + .shepherd-element.shepherd-theme-square.shepherd-has-title .shepherd-content header a.shepherd-cancel-link { + padding: 0; + margin-bottom: 0; } + .shepherd-element.shepherd-theme-square.shepherd-has-cancel-link .shepherd-content header h3 { + float: left; } + .shepherd-element.shepherd-theme-square .shepherd-content { + -moz-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.17); + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + padding: 0; } + .shepherd-element.shepherd-theme-square .shepherd-content * { + font-size: inherit; } + .shepherd-element.shepherd-theme-square .shepherd-content header { + *zoom: 1; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; } + .shepherd-element.shepherd-theme-square .shepherd-content header:after { + content: ""; + display: table; + clear: both; } + .shepherd-element.shepherd-theme-square .shepherd-content header h3 { + margin: 0; + line-height: 1; + font-weight: normal; } + .shepherd-element.shepherd-theme-square .shepherd-content header a.shepherd-cancel-link { + float: right; + text-decoration: none; + font-size: 1.25em; + line-height: 0.8em; + font-weight: normal; + color: rgba(0, 0, 0, 0.5); + opacity: 0.25; + position: relative; + top: 0.1em; + padding: 0.8em; + margin-bottom: -0.8em; } + .shepherd-element.shepherd-theme-square .shepherd-content header a.shepherd-cancel-link:hover { + opacity: 1; } + .shepherd-element.shepherd-theme-square .shepherd-content .shepherd-text { + padding: 1em; } + .shepherd-element.shepherd-theme-square .shepherd-content .shepherd-text p { + margin: 0 0 0.5em 0; + line-height: 1.3em; } + .shepherd-element.shepherd-theme-square .shepherd-content .shepherd-text p:last-child { + margin-bottom: 0; } + .shepherd-element.shepherd-theme-square .shepherd-content footer { + padding: 0 1em 1em; } + .shepherd-element.shepherd-theme-square .shepherd-content footer .shepherd-buttons { + text-align: right; + list-style: none; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-square .shepherd-content footer .shepherd-buttons li { + display: inline; + padding: 0; + margin: 0; } + .shepherd-element.shepherd-theme-square .shepherd-content footer .shepherd-buttons li .shepherd-button { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } + .shepherd-element.shepherd-theme-square .shepherd-content footer .shepherd-buttons li .shepherd-button.shepherd-button-secondary { + background: #eee; + color: #888; } + .shepherd-element.shepherd-theme-square .shepherd-content footer .shepherd-buttons li:last-child .shepherd-button { + margin-right: 0; } + +.shepherd-start-tour-button.shepherd-theme-square { + display: inline-block; + vertical-align: middle; + *vertical-align: auto; + *zoom: 1; + *display: inline; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + cursor: pointer; + border: 0; + margin: 0 0.5em 0 0; + font-family: inherit; + text-transform: uppercase; + letter-spacing: 0.1em; + font-size: 0.8em; + line-height: 1em; + padding: 0.75em 2em; + background: #3288e6; + color: #fff; } diff --git a/frappe/public/css/website.css b/frappe/public/css/website.css index f3b3ad1c44..994002dd0a 100644 --- a/frappe/public/css/website.css +++ b/frappe/public/css/website.css @@ -459,6 +459,10 @@ body { .panel-body { padding-left: 15px; } +.page-header-actions-block { + padding-top: 20px; + text-align: right; +} fieldset { margin-bottom: 20px; } @@ -529,8 +533,18 @@ fieldset { border-top: 1px solid #d1d8dd; } /* post and post list */ +.list-group-item { + border-radius: 0px !important; +} +.website-list { + min-height: 200px; + padding-bottom: 15px; +} +.website-list .result { + border: 1px solid #d1d8dd; +} .web-list-item { - padding: 5px 0px; + padding: 10px; border-bottom: 1px solid #d1d8dd; } .web-list-item h1, @@ -547,9 +561,8 @@ fieldset { color: inherit !important; text-decoration: none; } -.web-list-item:first-child { - margin-top: -1px; - border-top: 1px solid #d1d8dd; +.web-list-item:hover { + background: #f7fafc; } .web-list-item:last-child { border-bottom: none; @@ -559,8 +572,17 @@ fieldset { border-top: 1px solid #d1d8dd; margin: 0px -15px -20px -15px; } +.blog-list-content .website-list .result { + border: 0px; +} +.blog-list-content .web-list-item { + padding: 0px; +} .longform { padding: 15px 0px; + line-height: 1.5; + font-size: 1.1em; + max-width: 700px; } .longform p { margin-bottom: 30px; @@ -586,6 +608,7 @@ fieldset { } .blog-comment-row:last-child { margin-bottom: 30px; + border-bottom: 0px; } textarea { resize: vertical; diff --git a/frappe/public/js/lib/shepherd.min.js b/frappe/public/js/lib/shepherd.min.js new file mode 100755 index 0000000000..bf80265569 --- /dev/null +++ b/frappe/public/js/lib/shepherd.min.js @@ -0,0 +1,2 @@ +/*! shepherd 0.7.1 */ +!function(t,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e(require,exports,module):t.Tether=e()}(this,function(){return function(){var t,e,i,o,n,s,r,h,l,a,p,u,f,c,d,g,m,v={}.hasOwnProperty,b=[].indexOf||function(t){for(var e=0,i=this.length;i>e;e++)if(e in this&&this[e]===t)return e;return-1},y=[].slice;null==this.Tether&&(this.Tether={modules:[]}),p=function(t){var e,i,o,n,s;if(i=getComputedStyle(t).position,"fixed"===i)return t;for(o=void 0,e=t;e=e.parentNode;){try{n=getComputedStyle(e)}catch(r){}if(null==n)return e;if(/(auto|scroll)/.test(n.overflow+n["overflow-y"]+n["overflow-x"])&&("absolute"!==i||"relative"===(s=n.position)||"absolute"===s||"fixed"===s))return e}return document.body},d=function(){var t;return t=0,function(){return t++}}(),m={},l=function(t){var e,o,s,r,h;if(s=t._tetherZeroElement,null==s&&(s=t.createElement("div"),s.setAttribute("data-tether-id",d()),n(s.style,{top:0,left:0,position:"absolute"}),t.body.appendChild(s),t._tetherZeroElement=s),e=s.getAttribute("data-tether-id"),null==m[e]){m[e]={},h=s.getBoundingClientRect();for(o in h)r=h[o],m[e][o]=r;i(function(){return m[e]=void 0})}return m[e]},f=null,r=function(t){var e,i,o,n,s,r,h;t===document?(i=document,t=document.documentElement):i=t.ownerDocument,o=i.documentElement,e={},h=t.getBoundingClientRect();for(n in h)r=h[n],e[n]=r;return s=l(i),e.top-=s.top,e.left-=s.left,null==e.width&&(e.width=document.body.scrollWidth-e.left-e.right),null==e.height&&(e.height=document.body.scrollHeight-e.top-e.bottom),e.top=e.top-o.clientTop,e.left=e.left-o.clientLeft,e.right=i.body.clientWidth-e.width-e.left,e.bottom=i.body.clientHeight-e.height-e.top,e},h=function(t){return t.offsetParent||document.documentElement},a=function(){var t,e,i,o,s;return t=document.createElement("div"),t.style.width="100%",t.style.height="200px",e=document.createElement("div"),n(e.style,{position:"absolute",top:0,left:0,pointerEvents:"none",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),e.appendChild(t),document.body.appendChild(e),o=t.offsetWidth,e.style.overflow="scroll",s=t.offsetWidth,o===s&&(s=e.clientWidth),document.body.removeChild(e),i=o-s,{width:i,height:i}},n=function(t){var e,i,o,n,s,r,h;for(null==t&&(t={}),e=[],Array.prototype.push.apply(e,arguments),h=e.slice(1),s=0,r=h.length;r>s;s++)if(o=h[s])for(i in o)v.call(o,i)&&(n=o[i],t[i]=n);return t},c=function(t,e){var i,o,n,s,r;if(null!=t.classList){for(s=e.split(" "),r=[],o=0,n=s.length;n>o;o++)i=s[o],i.trim()&&r.push(t.classList.remove(i));return r}return t.className=t.className.replace(new RegExp("(^| )"+e.split(" ").join("|")+"( |$)","gi")," ")},e=function(t,e){var i,o,n,s,r;if(null!=t.classList){for(s=e.split(" "),r=[],o=0,n=s.length;n>o;o++)i=s[o],i.trim()&&r.push(t.classList.add(i));return r}return c(t,e),t.className+=" "+e},u=function(t,e){return null!=t.classList?t.classList.contains(e):new RegExp("(^| )"+e+"( |$)","gi").test(t.className)},g=function(t,i,o){var n,s,r,h,l,a;for(s=0,h=o.length;h>s;s++)n=o[s],b.call(i,n)<0&&u(t,n)&&c(t,n);for(a=[],r=0,l=i.length;l>r;r++)n=i[r],a.push(u(t,n)?void 0:e(t,n));return a},o=[],i=function(t){return o.push(t)},s=function(){var t,e;for(e=[];t=o.pop();)e.push(t());return e},t=function(){function t(){}return t.prototype.on=function(t,e,i,o){var n;return null==o&&(o=!1),null==this.bindings&&(this.bindings={}),null==(n=this.bindings)[t]&&(n[t]=[]),this.bindings[t].push({handler:e,ctx:i,once:o})},t.prototype.once=function(t,e,i){return this.on(t,e,i,!0)},t.prototype.off=function(t,e){var i,o,n;if(null!=(null!=(o=this.bindings)?o[t]:void 0)){if(null==e)return delete this.bindings[t];for(i=0,n=[];i"+l+"
";o.appendChild(p)}if(n=document.createElement("footer"),this.options.buttons){for(e=r(""),m=this.options.buttons,f=0,d=m.length;d>f;f++)i=m[f],t=r("- - {{ _("New {0}").format(_(doc_type)) }} - -
-
+
+
+ {{ doc.get(field.fieldname) }}
+
+
+
+ +
+ {{ help(field) }} +