more website cleanups
diff --git a/css/all-app.css b/css/all-app.css
index 66229fd..c8cd9d0 100644
--- a/css/all-app.css
+++ b/css/all-app.css
@@ -1241,384 +1241,588 @@
/*
* lib/css/bootstrap/icons.css
*/
-[class^="icon-"], [class*=" icon-"] {
+[class^="icon-"],
+[class*=" icon-"] {
display: inline-block;
- width: 14px;
+ width: 15px;
height: 14px;
+ *margin-right: .3em;
line-height: 14px;
vertical-align: text-top;
background-image: url("../lib/images/icons/glyphicons-halflings.png");
background-position: 14px 14px;
background-repeat: no-repeat;
- *margin-right: .3em;
}
-[class^="icon-"]:last-child, [class*=" icon-"]:last-child {
+
+[class^="icon-"]:last-child,
+[class*=" icon-"]:last-child {
*margin-left: 0;
}
+
.icon-white {
- background-image: url("../lib/images/icons/glyphicons-halflings-white.png");
+ background-image: url("./lib/images/icons/glyphicons-halflings-white.png");
}
+
.icon-glass {
background-position: 0 0;
}
+
.icon-music {
background-position: -24px 0;
}
+
.icon-search {
background-position: -48px 0;
}
+
.icon-envelope {
background-position: -72px 0;
}
+
.icon-heart {
background-position: -96px 0;
}
+
.icon-star {
background-position: -120px 0;
}
+
.icon-star-empty {
background-position: -144px 0;
}
+
.icon-user {
background-position: -168px 0;
}
+
.icon-film {
background-position: -192px 0;
}
+
.icon-th-large {
background-position: -216px 0;
}
+
.icon-th {
background-position: -240px 0;
}
+
.icon-th-list {
background-position: -264px 0;
}
+
.icon-ok {
background-position: -288px 0;
}
+
.icon-remove {
background-position: -312px 0;
}
+
.icon-zoom-in {
background-position: -336px 0;
}
+
.icon-zoom-out {
background-position: -360px 0;
}
+
.icon-off {
background-position: -384px 0;
}
+
.icon-signal {
background-position: -408px 0;
}
+
.icon-cog {
background-position: -432px 0;
}
+
.icon-trash {
background-position: -456px 0;
}
+
.icon-home {
background-position: 0 -24px;
}
+
.icon-file {
background-position: -24px -24px;
}
+
.icon-time {
background-position: -48px -24px;
}
+
.icon-road {
background-position: -72px -24px;
}
+
.icon-download-alt {
background-position: -96px -24px;
}
+
.icon-download {
background-position: -120px -24px;
}
+
.icon-upload {
background-position: -144px -24px;
}
+
.icon-inbox {
background-position: -168px -24px;
}
+
.icon-play-circle {
background-position: -192px -24px;
}
+
.icon-repeat {
background-position: -216px -24px;
}
+
.icon-refresh {
background-position: -240px -24px;
}
+
.icon-list-alt {
background-position: -264px -24px;
}
+
.icon-lock {
background-position: -287px -24px;
}
+
.icon-flag {
background-position: -312px -24px;
}
+
.icon-headphones {
background-position: -336px -24px;
}
+
.icon-volume-off {
background-position: -360px -24px;
}
+
.icon-volume-down {
background-position: -384px -24px;
}
+
.icon-volume-up {
background-position: -408px -24px;
}
+
.icon-qrcode {
background-position: -432px -24px;
}
+
.icon-barcode {
background-position: -456px -24px;
}
+
.icon-tag {
background-position: 0 -48px;
}
+
.icon-tags {
background-position: -25px -48px;
}
+
.icon-book {
background-position: -48px -48px;
}
+
.icon-bookmark {
background-position: -72px -48px;
}
+
.icon-print {
background-position: -96px -48px;
}
+
.icon-camera {
background-position: -120px -48px;
}
+
.icon-font {
background-position: -144px -48px;
}
+
.icon-bold {
background-position: -167px -48px;
}
+
.icon-italic {
background-position: -192px -48px;
}
+
.icon-text-height {
background-position: -216px -48px;
}
+
.icon-text-width {
background-position: -240px -48px;
}
+
.icon-align-left {
background-position: -264px -48px;
}
+
.icon-align-center {
background-position: -288px -48px;
}
+
.icon-align-right {
background-position: -312px -48px;
}
+
.icon-align-justify {
background-position: -336px -48px;
}
+
.icon-list {
background-position: -360px -48px;
}
+
.icon-indent-left {
background-position: -384px -48px;
}
+
.icon-indent-right {
background-position: -408px -48px;
}
+
.icon-facetime-video {
background-position: -432px -48px;
}
+
.icon-picture {
background-position: -456px -48px;
}
+
.icon-pencil {
background-position: 0 -72px;
}
+
.icon-map-marker {
background-position: -24px -72px;
}
+
.icon-adjust {
background-position: -48px -72px;
}
+
.icon-tint {
background-position: -72px -72px;
}
+
.icon-edit {
background-position: -96px -72px;
}
+
.icon-share {
background-position: -120px -72px;
}
+
.icon-check {
background-position: -144px -72px;
}
+
.icon-move {
background-position: -168px -72px;
}
+
.icon-step-backward {
background-position: -192px -72px;
}
+
.icon-fast-backward {
background-position: -216px -72px;
}
+
.icon-backward {
background-position: -240px -72px;
}
+
.icon-play {
background-position: -264px -72px;
}
+
.icon-pause {
background-position: -288px -72px;
}
+
.icon-stop {
background-position: -312px -72px;
}
+
.icon-forward {
background-position: -336px -72px;
}
+
.icon-fast-forward {
background-position: -360px -72px;
}
+
.icon-step-forward {
background-position: -384px -72px;
}
+
.icon-eject {
background-position: -408px -72px;
}
+
.icon-chevron-left {
background-position: -432px -72px;
}
+
.icon-chevron-right {
background-position: -456px -72px;
}
+
.icon-plus-sign {
background-position: 0 -96px;
}
+
.icon-minus-sign {
background-position: -24px -96px;
}
+
.icon-remove-sign {
background-position: -48px -96px;
}
+
.icon-ok-sign {
background-position: -72px -96px;
}
+
.icon-question-sign {
background-position: -96px -96px;
}
+
.icon-info-sign {
background-position: -120px -96px;
}
+
.icon-screenshot {
background-position: -144px -96px;
}
+
.icon-remove-circle {
background-position: -168px -96px;
}
+
.icon-ok-circle {
background-position: -192px -96px;
}
+
.icon-ban-circle {
background-position: -216px -96px;
}
+
.icon-arrow-left {
background-position: -240px -96px;
}
+
.icon-arrow-right {
background-position: -264px -96px;
}
+
.icon-arrow-up {
background-position: -289px -96px;
}
+
.icon-arrow-down {
background-position: -312px -96px;
}
+
.icon-share-alt {
background-position: -336px -96px;
}
+
.icon-resize-full {
background-position: -360px -96px;
}
+
.icon-resize-small {
background-position: -384px -96px;
}
+
.icon-plus {
background-position: -408px -96px;
}
+
.icon-minus {
background-position: -433px -96px;
}
+
.icon-asterisk {
background-position: -456px -96px;
}
+
.icon-exclamation-sign {
background-position: 0 -120px;
}
+
.icon-gift {
background-position: -24px -120px;
}
+
.icon-leaf {
background-position: -48px -120px;
}
+
.icon-fire {
background-position: -72px -120px;
}
+
.icon-eye-open {
background-position: -96px -120px;
}
+
.icon-eye-close {
background-position: -120px -120px;
}
+
.icon-warning-sign {
background-position: -144px -120px;
}
+
.icon-plane {
background-position: -168px -120px;
}
+
.icon-calendar {
background-position: -192px -120px;
}
+
.icon-random {
background-position: -216px -120px;
}
+
.icon-comment {
background-position: -240px -120px;
}
+
.icon-magnet {
background-position: -264px -120px;
}
+
.icon-chevron-up {
background-position: -288px -120px;
}
+
.icon-chevron-down {
background-position: -313px -119px;
}
+
.icon-retweet {
background-position: -336px -120px;
}
+
.icon-shopping-cart {
background-position: -360px -120px;
}
+
.icon-folder-close {
background-position: -384px -120px;
}
+
.icon-folder-open {
background-position: -408px -120px;
}
+
.icon-resize-vertical {
background-position: -432px -119px;
}
+
.icon-resize-horizontal {
background-position: -456px -118px;
}
+.icon-hdd {
+ background-position: 0 -144px;
+}
+
+.icon-bullhorn {
+ background-position: -24px -144px;
+}
+
+.icon-bell {
+ background-position: -48px -144px;
+}
+
+.icon-certificate {
+ background-position: -72px -144px;
+}
+
+.icon-thumbs-up {
+ background-position: -96px -144px;
+}
+
+.icon-thumbs-down {
+ background-position: -120px -144px;
+}
+
+.icon-hand-right {
+ background-position: -144px -144px;
+}
+
+.icon-hand-left {
+ background-position: -168px -144px;
+}
+
+.icon-hand-up {
+ background-position: -192px -144px;
+}
+
+.icon-hand-down {
+ background-position: -216px -144px;
+}
+
+.icon-circle-arrow-right {
+ background-position: -240px -144px;
+}
+
+.icon-circle-arrow-left {
+ background-position: -264px -144px;
+}
+
+.icon-circle-arrow-up {
+ background-position: -288px -144px;
+}
+
+.icon-circle-arrow-down {
+ background-position: -312px -144px;
+}
+
+.icon-globe {
+ background-position: -336px -144px;
+}
+
+.icon-wrench {
+ background-position: -360px -144px;
+}
+
+.icon-tasks {
+ background-position: -384px -144px;
+}
+
+.icon-filter {
+ background-position: -408px -144px;
+}
+
+.icon-briefcase {
+ background-position: -432px -144px;
+}
+
+.icon-fullscreen {
+ background-position: -456px -144px;
+}
+
/*
* lib/css/bootstrap/popover.css
*/
diff --git a/css/all-web.css b/css/all-web.css
index c7ab6f8..571a221 100644
--- a/css/all-web.css
+++ b/css/all-web.css
@@ -1198,384 +1198,588 @@
/*
* lib/css/bootstrap/icons.css
*/
-[class^="icon-"], [class*=" icon-"] {
+[class^="icon-"],
+[class*=" icon-"] {
display: inline-block;
- width: 14px;
+ width: 15px;
height: 14px;
+ *margin-right: .3em;
line-height: 14px;
vertical-align: text-top;
background-image: url("../lib/images/icons/glyphicons-halflings.png");
background-position: 14px 14px;
background-repeat: no-repeat;
- *margin-right: .3em;
}
-[class^="icon-"]:last-child, [class*=" icon-"]:last-child {
+
+[class^="icon-"]:last-child,
+[class*=" icon-"]:last-child {
*margin-left: 0;
}
+
.icon-white {
- background-image: url("../lib/images/icons/glyphicons-halflings-white.png");
+ background-image: url("./lib/images/icons/glyphicons-halflings-white.png");
}
+
.icon-glass {
background-position: 0 0;
}
+
.icon-music {
background-position: -24px 0;
}
+
.icon-search {
background-position: -48px 0;
}
+
.icon-envelope {
background-position: -72px 0;
}
+
.icon-heart {
background-position: -96px 0;
}
+
.icon-star {
background-position: -120px 0;
}
+
.icon-star-empty {
background-position: -144px 0;
}
+
.icon-user {
background-position: -168px 0;
}
+
.icon-film {
background-position: -192px 0;
}
+
.icon-th-large {
background-position: -216px 0;
}
+
.icon-th {
background-position: -240px 0;
}
+
.icon-th-list {
background-position: -264px 0;
}
+
.icon-ok {
background-position: -288px 0;
}
+
.icon-remove {
background-position: -312px 0;
}
+
.icon-zoom-in {
background-position: -336px 0;
}
+
.icon-zoom-out {
background-position: -360px 0;
}
+
.icon-off {
background-position: -384px 0;
}
+
.icon-signal {
background-position: -408px 0;
}
+
.icon-cog {
background-position: -432px 0;
}
+
.icon-trash {
background-position: -456px 0;
}
+
.icon-home {
background-position: 0 -24px;
}
+
.icon-file {
background-position: -24px -24px;
}
+
.icon-time {
background-position: -48px -24px;
}
+
.icon-road {
background-position: -72px -24px;
}
+
.icon-download-alt {
background-position: -96px -24px;
}
+
.icon-download {
background-position: -120px -24px;
}
+
.icon-upload {
background-position: -144px -24px;
}
+
.icon-inbox {
background-position: -168px -24px;
}
+
.icon-play-circle {
background-position: -192px -24px;
}
+
.icon-repeat {
background-position: -216px -24px;
}
+
.icon-refresh {
background-position: -240px -24px;
}
+
.icon-list-alt {
background-position: -264px -24px;
}
+
.icon-lock {
background-position: -287px -24px;
}
+
.icon-flag {
background-position: -312px -24px;
}
+
.icon-headphones {
background-position: -336px -24px;
}
+
.icon-volume-off {
background-position: -360px -24px;
}
+
.icon-volume-down {
background-position: -384px -24px;
}
+
.icon-volume-up {
background-position: -408px -24px;
}
+
.icon-qrcode {
background-position: -432px -24px;
}
+
.icon-barcode {
background-position: -456px -24px;
}
+
.icon-tag {
background-position: 0 -48px;
}
+
.icon-tags {
background-position: -25px -48px;
}
+
.icon-book {
background-position: -48px -48px;
}
+
.icon-bookmark {
background-position: -72px -48px;
}
+
.icon-print {
background-position: -96px -48px;
}
+
.icon-camera {
background-position: -120px -48px;
}
+
.icon-font {
background-position: -144px -48px;
}
+
.icon-bold {
background-position: -167px -48px;
}
+
.icon-italic {
background-position: -192px -48px;
}
+
.icon-text-height {
background-position: -216px -48px;
}
+
.icon-text-width {
background-position: -240px -48px;
}
+
.icon-align-left {
background-position: -264px -48px;
}
+
.icon-align-center {
background-position: -288px -48px;
}
+
.icon-align-right {
background-position: -312px -48px;
}
+
.icon-align-justify {
background-position: -336px -48px;
}
+
.icon-list {
background-position: -360px -48px;
}
+
.icon-indent-left {
background-position: -384px -48px;
}
+
.icon-indent-right {
background-position: -408px -48px;
}
+
.icon-facetime-video {
background-position: -432px -48px;
}
+
.icon-picture {
background-position: -456px -48px;
}
+
.icon-pencil {
background-position: 0 -72px;
}
+
.icon-map-marker {
background-position: -24px -72px;
}
+
.icon-adjust {
background-position: -48px -72px;
}
+
.icon-tint {
background-position: -72px -72px;
}
+
.icon-edit {
background-position: -96px -72px;
}
+
.icon-share {
background-position: -120px -72px;
}
+
.icon-check {
background-position: -144px -72px;
}
+
.icon-move {
background-position: -168px -72px;
}
+
.icon-step-backward {
background-position: -192px -72px;
}
+
.icon-fast-backward {
background-position: -216px -72px;
}
+
.icon-backward {
background-position: -240px -72px;
}
+
.icon-play {
background-position: -264px -72px;
}
+
.icon-pause {
background-position: -288px -72px;
}
+
.icon-stop {
background-position: -312px -72px;
}
+
.icon-forward {
background-position: -336px -72px;
}
+
.icon-fast-forward {
background-position: -360px -72px;
}
+
.icon-step-forward {
background-position: -384px -72px;
}
+
.icon-eject {
background-position: -408px -72px;
}
+
.icon-chevron-left {
background-position: -432px -72px;
}
+
.icon-chevron-right {
background-position: -456px -72px;
}
+
.icon-plus-sign {
background-position: 0 -96px;
}
+
.icon-minus-sign {
background-position: -24px -96px;
}
+
.icon-remove-sign {
background-position: -48px -96px;
}
+
.icon-ok-sign {
background-position: -72px -96px;
}
+
.icon-question-sign {
background-position: -96px -96px;
}
+
.icon-info-sign {
background-position: -120px -96px;
}
+
.icon-screenshot {
background-position: -144px -96px;
}
+
.icon-remove-circle {
background-position: -168px -96px;
}
+
.icon-ok-circle {
background-position: -192px -96px;
}
+
.icon-ban-circle {
background-position: -216px -96px;
}
+
.icon-arrow-left {
background-position: -240px -96px;
}
+
.icon-arrow-right {
background-position: -264px -96px;
}
+
.icon-arrow-up {
background-position: -289px -96px;
}
+
.icon-arrow-down {
background-position: -312px -96px;
}
+
.icon-share-alt {
background-position: -336px -96px;
}
+
.icon-resize-full {
background-position: -360px -96px;
}
+
.icon-resize-small {
background-position: -384px -96px;
}
+
.icon-plus {
background-position: -408px -96px;
}
+
.icon-minus {
background-position: -433px -96px;
}
+
.icon-asterisk {
background-position: -456px -96px;
}
+
.icon-exclamation-sign {
background-position: 0 -120px;
}
+
.icon-gift {
background-position: -24px -120px;
}
+
.icon-leaf {
background-position: -48px -120px;
}
+
.icon-fire {
background-position: -72px -120px;
}
+
.icon-eye-open {
background-position: -96px -120px;
}
+
.icon-eye-close {
background-position: -120px -120px;
}
+
.icon-warning-sign {
background-position: -144px -120px;
}
+
.icon-plane {
background-position: -168px -120px;
}
+
.icon-calendar {
background-position: -192px -120px;
}
+
.icon-random {
background-position: -216px -120px;
}
+
.icon-comment {
background-position: -240px -120px;
}
+
.icon-magnet {
background-position: -264px -120px;
}
+
.icon-chevron-up {
background-position: -288px -120px;
}
+
.icon-chevron-down {
background-position: -313px -119px;
}
+
.icon-retweet {
background-position: -336px -120px;
}
+
.icon-shopping-cart {
background-position: -360px -120px;
}
+
.icon-folder-close {
background-position: -384px -120px;
}
+
.icon-folder-open {
background-position: -408px -120px;
}
+
.icon-resize-vertical {
background-position: -432px -119px;
}
+
.icon-resize-horizontal {
background-position: -456px -118px;
}
+.icon-hdd {
+ background-position: 0 -144px;
+}
+
+.icon-bullhorn {
+ background-position: -24px -144px;
+}
+
+.icon-bell {
+ background-position: -48px -144px;
+}
+
+.icon-certificate {
+ background-position: -72px -144px;
+}
+
+.icon-thumbs-up {
+ background-position: -96px -144px;
+}
+
+.icon-thumbs-down {
+ background-position: -120px -144px;
+}
+
+.icon-hand-right {
+ background-position: -144px -144px;
+}
+
+.icon-hand-left {
+ background-position: -168px -144px;
+}
+
+.icon-hand-up {
+ background-position: -192px -144px;
+}
+
+.icon-hand-down {
+ background-position: -216px -144px;
+}
+
+.icon-circle-arrow-right {
+ background-position: -240px -144px;
+}
+
+.icon-circle-arrow-left {
+ background-position: -264px -144px;
+}
+
+.icon-circle-arrow-up {
+ background-position: -288px -144px;
+}
+
+.icon-circle-arrow-down {
+ background-position: -312px -144px;
+}
+
+.icon-globe {
+ background-position: -336px -144px;
+}
+
+.icon-wrench {
+ background-position: -360px -144px;
+}
+
+.icon-tasks {
+ background-position: -384px -144px;
+}
+
+.icon-filter {
+ background-position: -408px -144px;
+}
+
+.icon-briefcase {
+ background-position: -432px -144px;
+}
+
+.icon-fullscreen {
+ background-position: -456px -144px;
+}
+
/*
* lib/css/legacy/body.css
*/
diff --git a/erpnext/patches/april_2012/delete_about_contact.py b/erpnext/patches/april_2012/delete_about_contact.py
new file mode 100644
index 0000000..e7173d9
--- /dev/null
+++ b/erpnext/patches/april_2012/delete_about_contact.py
@@ -0,0 +1,6 @@
+def execute():
+ import webnotes
+ from webnotes.model import delete_doc
+ delete_doc('DocType', 'About Us Team')
+ delete_doc('DocType', 'About Us Settings')
+ delete_doc('DocType', 'Contact Us Settings')
\ No newline at end of file
diff --git a/erpnext/startup/event_handlers.py b/erpnext/startup/event_handlers.py
index 0527045..49f5092 100644
--- a/erpnext/startup/event_handlers.py
+++ b/erpnext/startup/event_handlers.py
@@ -63,11 +63,8 @@
bootinfo['website_menus'] = webnotes.conn.sql("""select label, url, custom_page,
parent_label, parentfield
from `tabTop Bar Item` where parent='Website Settings' order by idx asc""", as_dict=1)
- bootinfo['analytics_code'] = \
- webnotes.conn.get_value('Website Settings', None, 'analytics_code')
- bootinfo['analytics_call'] = \
- webnotes.conn.get_value('Website Settings', None, 'analytics_call')
-
+ bootinfo['startup_code'] = \
+ webnotes.conn.get_value('Website Settings', None, 'startup_code')
else:
bootinfo['letter_heads'] = get_letter_heads()
diff --git a/erpnext/startup/startup.js b/erpnext/startup/startup.js
index 9c14d2e..02a0032 100644
--- a/erpnext/startup/startup.js
+++ b/erpnext/startup/startup.js
@@ -64,6 +64,9 @@
if(wn.boot.website_settings.title_prefix) {
wn.title_prefix = wn.boot.website_settings.title_prefix;
}
+ if(wn.boot.startup_code) {
+ eval(wn.boot.startup_code);
+ }
} else {
// always allow apps
wn.boot.profile.allow_modules = wn.boot.profile.allow_modules.concat(
@@ -177,3 +180,20 @@
$(document).bind('startup', function() {
erpnext.startup.start();
});
+
+// subject, sender, description
+erpnext.send_message = function(opts) {
+ if(opts.btn) {
+ $(opts.btn).start_working();
+ }
+ wn.call({
+ method: 'website.send_message',
+ args: opts,
+ callback: function(r) {
+ if(opts.btn) {
+ $(opts.btn).done_working();
+ }
+ if(opts.callback)opts.callback(r)
+ }
+ });
+}
diff --git a/erpnext/website/__init__.py b/erpnext/website/__init__.py
index 97062cf..fbaab0d 100644
--- a/erpnext/website/__init__.py
+++ b/erpnext/website/__init__.py
@@ -2,3 +2,24 @@
{"doctype":"Role", "role_name":"Blogger", "name":"Blogger"},
{"doctype":"Role", "role_name":"Website Manager", "name":"Website Manager"},
]
+
+import webnotes
+
+@webnotes.whitelist(allow_guest=True)
+def send_message():
+ from webnotes.model.doc import Document
+ args = webnotes.form_dict
+
+ d = Document('Support Ticket')
+ d.subject = webnotes.form_dict.get('subject', 'Website Query')
+ d.description = webnotes.form_dict.get('message')
+ d.raised_by = webnotes.form_dict.get('sender')
+
+ if not d.description:
+ webnotes.msgprint('Please write something', raise_exception=True)
+
+ if not d.raised_by:
+ webnotes.msgprint('Please give us your email id so that we can write back to you', raise_exception=True)
+
+ d.save()
+ webnotes.msgprint('Thank you for your query, we will get back to you asap.')
\ No newline at end of file
diff --git a/erpnext/website/doctype/about_us_settings/__init__.py b/erpnext/website/doctype/about_us_settings/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/website/doctype/about_us_settings/__init__.py
+++ /dev/null
diff --git a/erpnext/website/doctype/about_us_settings/about_us_settings.py b/erpnext/website/doctype/about_us_settings/about_us_settings.py
deleted file mode 100644
index d3cca17..0000000
--- a/erpnext/website/doctype/about_us_settings/about_us_settings.py
+++ /dev/null
@@ -1,40 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-"""
-generate html
-"""
-import webnotes
-
-class DocType:
- def __init__(self, d, dl):
- self.doc, self.doclist = d, dl
-
- def on_update(self):
- """make home html"""
- from website.utils import make_template
- import os
- path = os.path.join(os.path.dirname(__file__), 'template.html')
-
- self.doc.about_team = webnotes.conn.sql("""select * from `tabAbout Us Team`
- where parent='About Us Settings' order by idx""", as_dict=1)
-
- import markdown2
- for t in self.doc.about_team:
- t['bio'] = markdown2.markdown(t.get('bio') or '')
-
- webnotes.conn.set_value('Page', 'about', 'title', self.doc.headline)
- webnotes.conn.set_value('Page', 'about', 'content', make_template(self.doc, path))
diff --git a/erpnext/website/doctype/about_us_settings/about_us_settings.txt b/erpnext/website/doctype/about_us_settings/about_us_settings.txt
deleted file mode 100644
index 1682ca3..0000000
--- a/erpnext/website/doctype/about_us_settings/about_us_settings.txt
+++ /dev/null
@@ -1,106 +0,0 @@
-# DocType, About Us Settings
-[
-
- # These values are common in all dictionaries
- {
- 'creation': '2012-03-27 14:36:47',
- 'docstatus': 0,
- 'modified': '2012-03-27 14:36:47',
- 'modified_by': u'Administrator',
- 'owner': u'Administrator'
- },
-
- # These values are common for all DocType
- {
- '_last_update': u'1327641155',
- 'allow_attach': 1,
- 'colour': u'White:FFF',
- 'doctype': 'DocType',
- 'issingle': 1,
- 'max_attachments': 10,
- 'module': u'Website',
- 'name': '__common__',
- 'section_style': u'Simple',
- 'show_in_menu': 0,
- 'version': 4
- },
-
- # These values are common for all DocField
- {
- 'doctype': u'DocField',
- 'name': '__common__',
- 'parent': u'About Us Settings',
- 'parentfield': u'fields',
- 'parenttype': u'DocType',
- 'permlevel': 0
- },
-
- # These values are common for all DocPerm
- {
- 'create': 1,
- 'doctype': u'DocPerm',
- 'name': '__common__',
- 'parent': u'About Us Settings',
- 'parentfield': u'permissions',
- 'parenttype': u'DocType',
- 'permlevel': 0,
- 'read': 1,
- 'role': u'Website Manager',
- 'write': 1
- },
-
- # DocType, About Us Settings
- {
- 'doctype': 'DocType',
- 'name': u'About Us Settings'
- },
-
- # DocPerm
- {
- 'doctype': u'DocPerm'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'headline',
- 'fieldtype': u'Data',
- 'label': u'Headline'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'main_section',
- 'fieldtype': u'Code',
- 'label': u'Main Section'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'team',
- 'fieldtype': u'Table',
- 'label': u'Team',
- 'options': u'About Us Team'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'side_section',
- 'fieldtype': u'Code',
- 'label': u'Side Section'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'file_list',
- 'fieldtype': u'Text',
- 'hidden': 1,
- 'label': u'File List',
- 'no_copy': 1,
- 'print_hide': 1
- }
-]
\ No newline at end of file
diff --git a/erpnext/website/doctype/about_us_settings/template.html b/erpnext/website/doctype/about_us_settings/template.html
deleted file mode 100644
index 404ebe9..0000000
--- a/erpnext/website/doctype/about_us_settings/template.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<div class="layout-wrapper layout-wrapper-background">
- <div class="web-content" id="content-about-us">
- <div class="layout-main-section">
- {% if doc.headline %}
- <h1>{{ doc.headline }}</h1>
- {% endif %}
-
- {{ doc.main_section_html }}
-
- {% if doc.about_team %}
- <h2>Team</h2>
- <table style="width: 90%">
- <tbody>
- {% for p in doc.about_team %}
- <tr>
- <td style="width: 110px">
- <img src="files/{{ p.image }}"
- style="width: 100px; margin-right: 10px;
- margin-bottom: 15px;" />
- </td>
- <td>
- <h4>{{ p.person_name }}</h4>
- <p class="field_description">{{ p.designation }}</p>
- <div style="margin-bottom: 15px">{{ p.bio }}</div>
- </td>
- </tr>
- {% endfor %}
- </tbody>
- </table>
- {% endif %}
- </div>
- <div class="layout-side-section">
- {{ doc.side_section_html }}
- </div>
- <div style="clear: both"></div>
- </div>
-</div>
\ No newline at end of file
diff --git a/erpnext/website/doctype/about_us_team/__init__.py b/erpnext/website/doctype/about_us_team/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/website/doctype/about_us_team/__init__.py
+++ /dev/null
diff --git a/erpnext/website/doctype/about_us_team/about_us_team.txt b/erpnext/website/doctype/about_us_team/about_us_team.txt
deleted file mode 100644
index 3e60290..0000000
--- a/erpnext/website/doctype/about_us_team/about_us_team.txt
+++ /dev/null
@@ -1,74 +0,0 @@
-# DocType, About Us Team
-[
-
- # These values are common in all dictionaries
- {
- 'creation': '2012-03-27 14:36:47',
- 'docstatus': 0,
- 'modified': '2012-03-27 14:36:47',
- 'modified_by': u'Administrator',
- 'owner': u'Administrator'
- },
-
- # These values are common for all DocType
- {
- 'colour': u'White:FFF',
- 'doctype': 'DocType',
- 'istable': 1,
- 'module': u'Website',
- 'name': '__common__',
- 'section_style': u'Simple',
- 'show_in_menu': 0,
- 'version': 5
- },
-
- # These values are common for all DocField
- {
- 'doctype': u'DocField',
- 'name': '__common__',
- 'parent': u'About Us Team',
- 'parentfield': u'fields',
- 'parenttype': u'DocType',
- 'permlevel': 0
- },
-
- # DocType, About Us Team
- {
- 'doctype': 'DocType',
- 'name': u'About Us Team'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'person_name',
- 'fieldtype': u'Data',
- 'label': u'Person Name'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'designation',
- 'fieldtype': u'Data',
- 'label': u'Designation'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'image',
- 'fieldtype': u'Select',
- 'label': u'Image',
- 'options': u'attach_files:'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'bio',
- 'fieldtype': u'Text',
- 'label': u'Bio (markdown)',
- 'width': u'300px'
- }
-]
\ No newline at end of file
diff --git a/erpnext/website/doctype/contact_us_settings/__init__.py b/erpnext/website/doctype/contact_us_settings/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/website/doctype/contact_us_settings/__init__.py
+++ /dev/null
diff --git a/erpnext/website/doctype/contact_us_settings/contact_us_settings.py b/erpnext/website/doctype/contact_us_settings/contact_us_settings.py
deleted file mode 100644
index 9914ade..0000000
--- a/erpnext/website/doctype/contact_us_settings/contact_us_settings.py
+++ /dev/null
@@ -1,33 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-"""
-generate html
-"""
-import webnotes
-
-class DocType:
- def __init__(self, d, dl):
- self.doc, self.doclist = d, dl
-
- def on_update(self):
- """make home html"""
- from website.utils import make_template
- import os
- path = os.path.join(os.path.dirname(__file__), 'template.html')
-
- webnotes.conn.set_value('Page', 'contact', 'title', self.doc.headline)
- webnotes.conn.set_value('Page', 'contact', 'content', make_template(self.doc, path))
diff --git a/erpnext/website/doctype/contact_us_settings/contact_us_settings.txt b/erpnext/website/doctype/contact_us_settings/contact_us_settings.txt
deleted file mode 100644
index bb518b6..0000000
--- a/erpnext/website/doctype/contact_us_settings/contact_us_settings.txt
+++ /dev/null
@@ -1,100 +0,0 @@
-# DocType, Contact Us Settings
-[
-
- # These values are common in all dictionaries
- {
- 'creation': '2012-03-27 14:36:47',
- 'docstatus': 0,
- 'modified': '2012-03-27 14:36:47',
- 'modified_by': u'Administrator',
- 'owner': u'Administrator'
- },
-
- # These values are common for all DocType
- {
- 'colour': u'White:FFF',
- 'doctype': 'DocType',
- 'document_type': u'Other',
- 'issingle': 1,
- 'module': u'Website',
- 'name': '__common__',
- 'section_style': u'Simple',
- 'show_in_menu': 0,
- 'version': 1
- },
-
- # These values are common for all DocField
- {
- 'colour': u'White:FFF',
- 'doctype': u'DocField',
- 'name': '__common__',
- 'parent': u'Contact Us Settings',
- 'parentfield': u'fields',
- 'parenttype': u'DocType',
- 'permlevel': 0
- },
-
- # These values are common for all DocPerm
- {
- 'create': 1,
- 'doctype': u'DocPerm',
- 'name': '__common__',
- 'parent': u'Contact Us Settings',
- 'parentfield': u'permissions',
- 'parenttype': u'DocType',
- 'permlevel': 0,
- 'read': 1,
- 'write': 1
- },
-
- # DocType, Contact Us Settings
- {
- 'doctype': 'DocType',
- 'name': u'Contact Us Settings'
- },
-
- # DocPerm
- {
- 'doctype': u'DocPerm',
- 'role': u'Website Manager'
- },
-
- # DocPerm
- {
- 'doctype': u'DocPerm',
- 'role': u'System Manager'
- },
-
- # DocField
- {
- 'default': u'Contact Us',
- 'doctype': u'DocField',
- 'fieldname': u'headline',
- 'fieldtype': u'Data',
- 'label': u'Headline'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'send_email_notification',
- 'fieldtype': u'Check',
- 'label': u'Send Email Notification'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'main_section',
- 'fieldtype': u'Code',
- 'label': u'Main Section'
- },
-
- # DocField
- {
- 'doctype': u'DocField',
- 'fieldname': u'side_section',
- 'fieldtype': u'Code',
- 'label': u'Side Section'
- }
-]
\ No newline at end of file
diff --git a/erpnext/website/doctype/contact_us_settings/template.html b/erpnext/website/doctype/contact_us_settings/template.html
deleted file mode 100644
index 508b534..0000000
--- a/erpnext/website/doctype/contact_us_settings/template.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<div class="layout-wrapper layout-wrapper-background">
- <div class="web-content" id="content-contact-us">
- <div class="layout-main-section">
- {% if doc.headline %}
- <h1>{{ doc.headline }}</h1>
- {% endif %}
- <label>Your Name*</label>
- <div><input name="contact-name" type="text"/></div>
- <br>
- <label>Email*</label>
- <div><input name="contact-email" type="text"/></div>
- <br>
- <label>Message*</label>
- <div><textarea name="contact-message" style="height: 200px"></textarea></div>
- <br>
- <div><button class="btn primary">Send</button></div>
- {{ doc.main_section_html }}
- </div>
- <div class="layout-side-section">
- {{ doc.side_section_html }}
- </div>
- <div style="clear: both"></div>
- </div>
-</div>
\ No newline at end of file
diff --git a/erpnext/website/doctype/website_settings/website_settings.txt b/erpnext/website/doctype/website_settings/website_settings.txt
index 32e31c0..ce2a18e 100644
--- a/erpnext/website/doctype/website_settings/website_settings.txt
+++ b/erpnext/website/doctype/website_settings/website_settings.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2012-03-27 14:36:48',
+ 'creation': '2012-04-02 16:38:02',
'docstatus': 0,
- 'modified': '2012-03-27 14:36:48',
+ 'modified': '2012-04-27 16:41:40',
'modified_by': u'Administrator',
'owner': u'Administrator'
},
@@ -23,7 +23,7 @@
'name': '__common__',
'section_style': u'Simple',
'show_in_menu': 0,
- 'version': 9
+ 'version': 11
},
# These values are common for all DocField
@@ -194,7 +194,7 @@
'doctype': u'DocField',
'fieldname': u'subdomain',
'fieldtype': u'Text',
- 'label': u'Your ERPNext provided hostname',
+ 'label': u'Subdomain',
'permlevel': 1,
'reqd': 0
},
@@ -215,29 +215,18 @@
'doctype': u'DocField',
'fieldname': u'analytics',
'fieldtype': u'Section Break',
- 'label': u'Analytics',
+ 'label': u'Startup',
'permlevel': 0
},
# DocField
{
'colour': u'White:FFF',
- 'description': u'Code pasted in the head tag to start an Analytics engine like Google Analytics',
+ 'description': u'Bind events on startup and page change',
'doctype': u'DocField',
- 'fieldname': u'analytics_code',
- 'fieldtype': u'Text',
- 'label': u'Analytics Code',
- 'permlevel': 0
- },
-
- # DocField
- {
- 'colour': u'White:FFF',
- 'description': u"Function to be called when page is changed. (_gaq.push['_trackPageview'] for Google Code)",
- 'doctype': u'DocField',
- 'fieldname': u'analytics_call',
- 'fieldtype': u'Text',
- 'label': u'Analytics Call',
+ 'fieldname': u'startup_code',
+ 'fieldtype': u'Code',
+ 'label': u'Startup Code',
'permlevel': 0
}
]
\ No newline at end of file
diff --git a/erpnext/website/page/website_home/website_home.html b/erpnext/website/page/website_home/website_home.html
index 3252282..ad8bb55 100644
--- a/erpnext/website/page/website_home/website_home.html
+++ b/erpnext/website/page/website_home/website_home.html
@@ -31,19 +31,6 @@
<div class="layout-side-section">
<div class="psidebar">
<div class="section">
- <div class="section-head">Tools</div>
- <div class="section-body">
- <div class="section-item">
- <a class="section-link"
- title = "About Us page"
- href="#!Form/About Us Settings/About Us Settings">About Us Settings</a>
- </div>
- <div class="section-item">
- <a class="section-link"
- title = "Contact Us page"
- href="#!Form/Contact Us Settings/Contact Us Settings">Contact Us Settings</a>
- </div>
- </div>
</div>
</div>
diff --git a/js/all-app.js b/js/all-app.js
index 7e5ce41..c244fab 100644
--- a/js/all-app.js
+++ b/js/all-app.js
@@ -444,7 +444,7 @@
*/
wn.provide('wn.views.pageview');wn.views.pageview={pages:{},with_page:function(name,callback){if(!locals.Page[name]){wn.call({method:'webnotes.widgets.page.getpage',args:{'name':name},callback:callback});}else{callback();}},show:function(name){if(!name)name=wn.boot.home_page;wn.views.pageview.with_page(name,function(r){if(r&&r.exc){if(!r['403'])wn.container.change_to('404');}else if(!wn.pages[name]){wn.views.pageview.pages[name]=new wn.views.Page(name);}
wn.container.change_to(name);});}}
-wn.views.Page=Class.extend({init:function(name){this.name=name;var me=this;this.pagedoc=locals.Page[this.name];this.wrapper=wn.container.add_page(this.name);this.wrapper.label=this.pagedoc.title||this.pagedoc.name;this.wrapper.innerHTML=this.pagedoc.content;wn.dom.eval(this.pagedoc.__script||this.pagedoc.script||'');wn.dom.set_style(this.pagedoc.style||'');this.trigger('onload');$(this.wrapper).bind('show',function(){cur_frm=null;me.trigger('onshow');me.trigger('refresh');});},trigger:function(eventname){var me=this;try{if(pscript[eventname+'_'+this.name]){pscript[eventname+'_'+this.name](me.wrapper);}else if(me.wrapper[eventname]){me.wrapper[eventname](me.wrapper);}}catch(e){console.log(e);}}})
+wn.views.Page=Class.extend({init:function(name){this.name=name;var me=this;this.pagedoc=locals.Page[this.name];this.wrapper=wn.container.add_page(this.name);this.wrapper.label=this.pagedoc.title||this.pagedoc.name;this.wrapper.page_name=this.pagedoc.name;this.wrapper.innerHTML=this.pagedoc.content;wn.dom.eval(this.pagedoc.__script||this.pagedoc.script||'');wn.dom.set_style(this.pagedoc.style||'');this.trigger('onload');$(this.wrapper).bind('show',function(){cur_frm=null;me.trigger('onshow');me.trigger('refresh');});},trigger:function(eventname){var me=this;try{if(pscript[eventname+'_'+this.name]){pscript[eventname+'_'+this.name](me.wrapper);}else if(me.wrapper[eventname]){me.wrapper[eventname](me.wrapper);}}catch(e){console.log(e);}}})
wn.views.make_404=function(){var page=wn.container.add_page('404');$(page).html('<div class="layout-wrapper">\
<h1>Not Found</h1><br>\
<p>Sorry we were unable to find what you were looking for.</p>\
@@ -2219,7 +2219,8 @@
wn.provide('wn.modules');$.extend(wn.modules,erpnext.modules);wn.modules['Core']='Setup';erpnext.startup.set_globals=function(){if(inList(user_roles,'System Manager'))is_system_manager=1;}
erpnext.startup.start=function(){$('#startup_div').html('Starting up...').toggle(true);erpnext.startup.set_globals();if(wn.boot.user_background){erpnext.set_user_background(wn.boot.user_background);}
if(user=='Guest'){if(wn.boot.custom_css){set_style(wn.boot.custom_css);}
-if(wn.boot.website_settings.title_prefix){wn.title_prefix=wn.boot.website_settings.title_prefix;}}else{wn.boot.profile.allow_modules=wn.boot.profile.allow_modules.concat(['To Do','Knowledge Base','Calendar','Activity','Messages'])
+if(wn.boot.website_settings.title_prefix){wn.title_prefix=wn.boot.website_settings.title_prefix;}
+if(wn.boot.startup_code){eval(wn.boot.startup_code);}}else{wn.boot.profile.allow_modules=wn.boot.profile.allow_modules.concat(['To Do','Knowledge Base','Calendar','Activity','Messages'])
if(user_roles.indexOf('Accounts Manager')!=-1){wn.boot.profile.allow_modules.push('Dashboard');}
erpnext.toolbar.setup();erpnext.startup.set_periodic_updates();if(in_list(user_roles,'System Manager')&&(wn.boot.setup_complete=='No')){wn.require("erpnext/startup/js/complete_setup.js");erpnext.complete_setup();}}
erpnext.set_about();$('#startup_div').toggle(false);}
@@ -2234,7 +2235,9 @@
erpnext.startup.set_periodic_updates=function(){wn.updates={};if(wn.updates.id){clearInterval(wn.updates.id);}
wn.updates.id=setInterval(update_messages,60000);}
erpnext.set_user_background=function(src){set_style(repl('#body_div { background: url("files/%(src)s") repeat;}',{src:src}))}
-$(document).bind('startup',function(){erpnext.startup.start();});
+$(document).bind('startup',function(){erpnext.startup.start();});erpnext.send_message=function(opts){if(opts.btn){$(opts.btn).start_working();}
+wn.call({method:'website.send_message',args:opts,callback:function(r){if(opts.btn){$(opts.btn).done_working();}
+if(opts.callback)opts.callback(r)}});}
/*
* erpnext/startup/js/modules.js
*/
diff --git a/js/all-web.js b/js/all-web.js
index 4cda922..911c1d9 100644
--- a/js/all-web.js
+++ b/js/all-web.js
@@ -331,7 +331,7 @@
*/
wn.provide('wn.views.pageview');wn.views.pageview={pages:{},with_page:function(name,callback){if(!locals.Page[name]){wn.call({method:'webnotes.widgets.page.getpage',args:{'name':name},callback:callback});}else{callback();}},show:function(name){if(!name)name=wn.boot.home_page;wn.views.pageview.with_page(name,function(r){if(r&&r.exc){if(!r['403'])wn.container.change_to('404');}else if(!wn.pages[name]){wn.views.pageview.pages[name]=new wn.views.Page(name);}
wn.container.change_to(name);});}}
-wn.views.Page=Class.extend({init:function(name){this.name=name;var me=this;this.pagedoc=locals.Page[this.name];this.wrapper=wn.container.add_page(this.name);this.wrapper.label=this.pagedoc.title||this.pagedoc.name;this.wrapper.innerHTML=this.pagedoc.content;wn.dom.eval(this.pagedoc.__script||this.pagedoc.script||'');wn.dom.set_style(this.pagedoc.style||'');this.trigger('onload');$(this.wrapper).bind('show',function(){cur_frm=null;me.trigger('onshow');me.trigger('refresh');});},trigger:function(eventname){var me=this;try{if(pscript[eventname+'_'+this.name]){pscript[eventname+'_'+this.name](me.wrapper);}else if(me.wrapper[eventname]){me.wrapper[eventname](me.wrapper);}}catch(e){console.log(e);}}})
+wn.views.Page=Class.extend({init:function(name){this.name=name;var me=this;this.pagedoc=locals.Page[this.name];this.wrapper=wn.container.add_page(this.name);this.wrapper.label=this.pagedoc.title||this.pagedoc.name;this.wrapper.page_name=this.pagedoc.name;this.wrapper.innerHTML=this.pagedoc.content;wn.dom.eval(this.pagedoc.__script||this.pagedoc.script||'');wn.dom.set_style(this.pagedoc.style||'');this.trigger('onload');$(this.wrapper).bind('show',function(){cur_frm=null;me.trigger('onshow');me.trigger('refresh');});},trigger:function(eventname){var me=this;try{if(pscript[eventname+'_'+this.name]){pscript[eventname+'_'+this.name](me.wrapper);}else if(me.wrapper[eventname]){me.wrapper[eventname](me.wrapper);}}catch(e){console.log(e);}}})
wn.views.make_404=function(){var page=wn.container.add_page('404');$(page).html('<div class="layout-wrapper">\
<h1>Not Found</h1><br>\
<p>Sorry we were unable to find what you were looking for.</p>\
@@ -826,7 +826,8 @@
wn.provide('wn.modules');$.extend(wn.modules,erpnext.modules);wn.modules['Core']='Setup';erpnext.startup.set_globals=function(){if(inList(user_roles,'System Manager'))is_system_manager=1;}
erpnext.startup.start=function(){$('#startup_div').html('Starting up...').toggle(true);erpnext.startup.set_globals();if(wn.boot.user_background){erpnext.set_user_background(wn.boot.user_background);}
if(user=='Guest'){if(wn.boot.custom_css){set_style(wn.boot.custom_css);}
-if(wn.boot.website_settings.title_prefix){wn.title_prefix=wn.boot.website_settings.title_prefix;}}else{wn.boot.profile.allow_modules=wn.boot.profile.allow_modules.concat(['To Do','Knowledge Base','Calendar','Activity','Messages'])
+if(wn.boot.website_settings.title_prefix){wn.title_prefix=wn.boot.website_settings.title_prefix;}
+if(wn.boot.startup_code){eval(wn.boot.startup_code);}}else{wn.boot.profile.allow_modules=wn.boot.profile.allow_modules.concat(['To Do','Knowledge Base','Calendar','Activity','Messages'])
if(user_roles.indexOf('Accounts Manager')!=-1){wn.boot.profile.allow_modules.push('Dashboard');}
erpnext.toolbar.setup();erpnext.startup.set_periodic_updates();if(in_list(user_roles,'System Manager')&&(wn.boot.setup_complete=='No')){wn.require("erpnext/startup/js/complete_setup.js");erpnext.complete_setup();}}
erpnext.set_about();$('#startup_div').toggle(false);}
@@ -841,7 +842,9 @@
erpnext.startup.set_periodic_updates=function(){wn.updates={};if(wn.updates.id){clearInterval(wn.updates.id);}
wn.updates.id=setInterval(update_messages,60000);}
erpnext.set_user_background=function(src){set_style(repl('#body_div { background: url("files/%(src)s") repeat;}',{src:src}))}
-$(document).bind('startup',function(){erpnext.startup.start();});
+$(document).bind('startup',function(){erpnext.startup.start();});erpnext.send_message=function(opts){if(opts.btn){$(opts.btn).start_working();}
+wn.call({method:'website.send_message',args:opts,callback:function(r){if(opts.btn){$(opts.btn).done_working();}
+if(opts.callback)opts.callback(r)}});}
/*
* erpnext/website/js/topbar.js
*/