Merge branch 'latest' of github.com:webnotes/erpnext into latest
Conflicts: erpnext/accounts/doctype/receivable_voucher/receivable_voucher.py
This commit is contained in:
commit
707cd06606
@ -11,7 +11,8 @@ from webnotes.utils.scheduler import set_event, cancel_event, Scheduler
|
||||
|
||||
in_transaction = webnotes.conn.in_transaction
|
||||
convert_to_lists = webnotes.conn.convert_to_lists
|
||||
|
||||
session = webnotes.session
|
||||
|
||||
# -----------------------------------------------------------------------------------------
|
||||
|
||||
from utilities.transaction_base import TransactionBase
|
||||
|
@ -1,3 +0,0 @@
|
||||
# version info
|
||||
|
||||
version='1.0.0'
|
@ -212,7 +212,8 @@ HomeWidgetItem.prototype.delete_item = function() {
|
||||
var callback = function(r,rt) {
|
||||
$(me.wrapper).slideUp();
|
||||
}
|
||||
$c_obj('Home Control',this.widget.delete_method, this.widget.get_item_id(this.det) ,callback);
|
||||
$c_obj('Home Control',this.widget.delete_method,
|
||||
this.widget.get_item_id(this.det) ,callback);
|
||||
|
||||
}
|
||||
|
||||
@ -324,7 +325,7 @@ HomeToDo = function(widget) {
|
||||
this.widget.get_list_method = 'get_todo_list';
|
||||
this.widget.delete_method = 'remove_todo_item';
|
||||
this.widget.no_items_message = 'Nothing to do?';
|
||||
this.widget.get_item_id = function(det) { return det[0]; }
|
||||
this.widget.get_item_id = function(det) { return det.name; }
|
||||
|
||||
this.widget.decorator = this;
|
||||
|
||||
|
@ -1,9 +1,12 @@
|
||||
# website patch
|
||||
|
||||
import webnotes
|
||||
from webnotes.model.doc import Document
|
||||
|
||||
def execute():
|
||||
cleanup_file_data()
|
||||
add_website_manager()
|
||||
return
|
||||
cleanup_file_data()
|
||||
update_patch_log()
|
||||
from webnotes.modules import reload_doc
|
||||
reload_doc('website', 'Module Def', 'Website')
|
||||
@ -13,6 +16,17 @@ def execute():
|
||||
reload_doc('website', 'doctype', 'top_bar_item')
|
||||
reload_doc('website', 'page', 'home')
|
||||
|
||||
def add_website_manager():
|
||||
"""add website manager to system manager"""
|
||||
for i in webnotes.conn.sql("""select distinct parent from tabUserRole
|
||||
where role='System Manager'"""):
|
||||
if not webnotes.conn.sql("""select parent from tabUserRole
|
||||
where role='Website Manager' and parent=%s""", i[0]):
|
||||
d = Document('UserRole')
|
||||
d.parent = i[0]
|
||||
d.role = 'Website Manager'
|
||||
d.save(1)
|
||||
|
||||
def cleanup_file_data():
|
||||
webnotes.conn.commit()
|
||||
webnotes.conn.sql("""alter table `tabFile Data` drop column blob_content""")
|
||||
|
@ -145,8 +145,10 @@ SidebarItem.prototype.onclick = function() {
|
||||
// page type
|
||||
this.pointer.select();
|
||||
|
||||
$item_set_working(me.pointer.label_area);
|
||||
loadpage(this.det.module_page, function() { $item_done_working(me.pointer.label_area); });
|
||||
$(me.pointer.label_area).set_working();
|
||||
loadpage(this.det.module_page, function() {
|
||||
$(me.pointer.label_area).done_working();
|
||||
});
|
||||
|
||||
} else {
|
||||
// show sub items
|
||||
@ -190,7 +192,7 @@ SidebarItem.prototype.show_items = function() {
|
||||
this.loading = 1;
|
||||
var me = this;
|
||||
|
||||
$item_set_working(this.pointer.label_area);
|
||||
$(this.pointer.label_area).set_working();
|
||||
var callback = function(r,rt){
|
||||
me.loaded = 1;
|
||||
me.loading = 0;
|
||||
@ -199,7 +201,7 @@ SidebarItem.prototype.show_items = function() {
|
||||
var has_tools = 0;
|
||||
|
||||
// widget code
|
||||
$item_done_working(me.pointer.label_area);
|
||||
$(me.pointer.label_area).done_working();
|
||||
|
||||
if(r.message.il) {
|
||||
me.il = r.message.il;
|
||||
|
@ -1,5 +1,5 @@
|
||||
h1, h2, h3, h4 {
|
||||
font-family: Tahoma, Sans Serif;
|
||||
font-family: Tahoma, Arial, Verdana, sans-serif;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
{
|
||||
'creation': '2012-01-23 17:05:32',
|
||||
'docstatus': 0,
|
||||
'modified': '2012-01-24 15:57:51',
|
||||
'modified': '2012-01-27 10:14:58',
|
||||
'modified_by': 'Administrator',
|
||||
'owner': 'Administrator'
|
||||
},
|
||||
@ -21,6 +21,7 @@
|
||||
|
||||
# These values are common for all Module Def Item
|
||||
{
|
||||
'doc_type': 'Single DocType',
|
||||
'doctype': 'Module Def Item',
|
||||
'name': '__common__',
|
||||
'parent': 'Website',
|
||||
@ -48,7 +49,6 @@
|
||||
{
|
||||
'display_name': 'Top Bar Settings',
|
||||
'doc_name': 'Top Bar Settings',
|
||||
'doc_type': 'Single DocType',
|
||||
'doctype': 'Module Def Item'
|
||||
},
|
||||
|
||||
@ -56,7 +56,20 @@
|
||||
{
|
||||
'display_name': 'Home Settings',
|
||||
'doc_name': 'Home Settings',
|
||||
'doc_type': 'Forms',
|
||||
'doctype': 'Module Def Item'
|
||||
},
|
||||
|
||||
# Module Def Item
|
||||
{
|
||||
'display_name': 'Contact Us Settings',
|
||||
'doc_name': 'Contact Us Settings',
|
||||
'doctype': 'Module Def Item'
|
||||
},
|
||||
|
||||
# Module Def Item
|
||||
{
|
||||
'display_name': 'About Us Settings',
|
||||
'doc_name': 'About Us Settings',
|
||||
'doctype': 'Module Def Item'
|
||||
},
|
||||
|
||||
|
@ -8,6 +8,10 @@ header .topbar .container {
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.web-content input[type="text"], .web-content input[type="password"], .web-content select {
|
||||
min-width: 180px;
|
||||
}
|
||||
|
||||
.web-main-section {
|
||||
width: 65%;
|
||||
float: left;
|
||||
@ -18,4 +22,7 @@ header .topbar .container {
|
||||
width: 30%;
|
||||
float: right;
|
||||
margin-bottom: 20px;
|
||||
margin-right: 15px;
|
||||
color: #606060;
|
||||
overflow-x: hidden;
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
"""
|
||||
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'""", as_dict=1)
|
||||
|
||||
import markdown2
|
||||
for t in self.doc.about_team:
|
||||
t['bio'] = markdown2.markdown(t['bio'])
|
||||
|
||||
webnotes.conn.set_value('Page', 'about', 'content', make_template(self.doc, path))
|
106
erpnext/website/doctype/about_us_settings/about_us_settings.txt
Normal file
106
erpnext/website/doctype/about_us_settings/about_us_settings.txt
Normal file
@ -0,0 +1,106 @@
|
||||
# DocType, About Us Settings
|
||||
[
|
||||
|
||||
# These values are common in all dictionaries
|
||||
{
|
||||
'creation': '2012-01-27 10:13:16',
|
||||
'docstatus': 0,
|
||||
'modified': '2012-01-27 11:36:44',
|
||||
'modified_by': 'Administrator',
|
||||
'owner': 'Administrator'
|
||||
},
|
||||
|
||||
# These values are common for all DocType
|
||||
{
|
||||
'_last_update': '1327641155',
|
||||
'allow_attach': 1,
|
||||
'colour': 'White:FFF',
|
||||
'doctype': 'DocType',
|
||||
'issingle': 1,
|
||||
'max_attachments': 10,
|
||||
'module': 'Website',
|
||||
'name': '__common__',
|
||||
'section_style': 'Simple',
|
||||
'show_in_menu': 0,
|
||||
'version': 4
|
||||
},
|
||||
|
||||
# These values are common for all DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'name': '__common__',
|
||||
'parent': 'About Us Settings',
|
||||
'parentfield': 'fields',
|
||||
'parenttype': 'DocType',
|
||||
'permlevel': 0
|
||||
},
|
||||
|
||||
# These values are common for all DocPerm
|
||||
{
|
||||
'create': 1,
|
||||
'doctype': 'DocPerm',
|
||||
'name': '__common__',
|
||||
'parent': 'About Us Settings',
|
||||
'parentfield': 'permissions',
|
||||
'parenttype': 'DocType',
|
||||
'permlevel': 0,
|
||||
'read': 1,
|
||||
'role': 'Website Manager',
|
||||
'write': 1
|
||||
},
|
||||
|
||||
# DocType, About Us Settings
|
||||
{
|
||||
'doctype': 'DocType',
|
||||
'name': 'About Us Settings'
|
||||
},
|
||||
|
||||
# DocPerm
|
||||
{
|
||||
'doctype': 'DocPerm'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'headline',
|
||||
'fieldtype': 'Data',
|
||||
'label': 'Headline'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'main_section',
|
||||
'fieldtype': 'Code',
|
||||
'label': 'Main Section'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'team',
|
||||
'fieldtype': 'Table',
|
||||
'label': 'Team',
|
||||
'options': 'About Us Team'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'side_section',
|
||||
'fieldtype': 'Code',
|
||||
'label': 'Side Section'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'file_list',
|
||||
'fieldtype': 'Text',
|
||||
'hidden': 1,
|
||||
'label': 'File List',
|
||||
'no_copy': 1,
|
||||
'print_hide': 1
|
||||
}
|
||||
]
|
36
erpnext/website/doctype/about_us_settings/template.html
Normal file
36
erpnext/website/doctype/about_us_settings/template.html
Normal file
@ -0,0 +1,36 @@
|
||||
<div class="layout_wrapper">
|
||||
<div class="web-content" id="content-contact-us">
|
||||
{% if doc.headline %}
|
||||
<h1>{{ doc.headline }}</h1>
|
||||
{% endif %}
|
||||
<div class="web-main-section">
|
||||
{{ 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>
|
||||
<div class="comment">{{ p.designation }}</div>
|
||||
<div style="margin-bottom: 15px">{{ p.bio }}</div>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="web-side-section">
|
||||
{{ doc.side_section_html }}
|
||||
</div>
|
||||
<div style="clear: both"></div>
|
||||
</div>
|
||||
</div>
|
0
erpnext/website/doctype/about_us_team/__init__.py
Normal file
0
erpnext/website/doctype/about_us_team/__init__.py
Normal file
74
erpnext/website/doctype/about_us_team/about_us_team.txt
Normal file
74
erpnext/website/doctype/about_us_team/about_us_team.txt
Normal file
@ -0,0 +1,74 @@
|
||||
# DocType, About Us Team
|
||||
[
|
||||
|
||||
# These values are common in all dictionaries
|
||||
{
|
||||
'creation': '2012-01-27 10:14:18',
|
||||
'docstatus': 0,
|
||||
'modified': '2012-01-27 11:54:18',
|
||||
'modified_by': 'Administrator',
|
||||
'owner': 'Administrator'
|
||||
},
|
||||
|
||||
# These values are common for all DocType
|
||||
{
|
||||
'colour': 'White:FFF',
|
||||
'doctype': 'DocType',
|
||||
'istable': 1,
|
||||
'module': 'Website',
|
||||
'name': '__common__',
|
||||
'section_style': 'Simple',
|
||||
'show_in_menu': 0,
|
||||
'version': 5
|
||||
},
|
||||
|
||||
# These values are common for all DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'name': '__common__',
|
||||
'parent': 'About Us Team',
|
||||
'parentfield': 'fields',
|
||||
'parenttype': 'DocType',
|
||||
'permlevel': 0
|
||||
},
|
||||
|
||||
# DocType, About Us Team
|
||||
{
|
||||
'doctype': 'DocType',
|
||||
'name': 'About Us Team'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'person_name',
|
||||
'fieldtype': 'Data',
|
||||
'label': 'Person Name'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'designation',
|
||||
'fieldtype': 'Data',
|
||||
'label': 'Designation'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'image',
|
||||
'fieldtype': 'Select',
|
||||
'label': 'Image',
|
||||
'options': 'attach_files:'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'bio',
|
||||
'fieldtype': 'Text',
|
||||
'label': 'Bio (markdown)',
|
||||
'width': '300px'
|
||||
}
|
||||
]
|
@ -0,0 +1,16 @@
|
||||
"""
|
||||
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', 'content', make_template(self.doc, path))
|
@ -0,0 +1,100 @@
|
||||
# DocType, Contact Us Settings
|
||||
[
|
||||
|
||||
# These values are common in all dictionaries
|
||||
{
|
||||
'creation': '2012-01-25 16:01:33',
|
||||
'docstatus': 0,
|
||||
'modified': '2012-01-25 16:01:33',
|
||||
'modified_by': 'Administrator',
|
||||
'owner': 'Administrator'
|
||||
},
|
||||
|
||||
# These values are common for all DocType
|
||||
{
|
||||
'colour': 'White:FFF',
|
||||
'doctype': 'DocType',
|
||||
'document_type': 'Other',
|
||||
'issingle': 1,
|
||||
'module': 'Website',
|
||||
'name': '__common__',
|
||||
'section_style': 'Simple',
|
||||
'show_in_menu': 0,
|
||||
'version': 1
|
||||
},
|
||||
|
||||
# These values are common for all DocField
|
||||
{
|
||||
'colour': 'White:FFF',
|
||||
'doctype': 'DocField',
|
||||
'name': '__common__',
|
||||
'parent': 'Contact Us Settings',
|
||||
'parentfield': 'fields',
|
||||
'parenttype': 'DocType',
|
||||
'permlevel': 0
|
||||
},
|
||||
|
||||
# These values are common for all DocPerm
|
||||
{
|
||||
'create': 1,
|
||||
'doctype': 'DocPerm',
|
||||
'name': '__common__',
|
||||
'parent': 'Contact Us Settings',
|
||||
'parentfield': 'permissions',
|
||||
'parenttype': 'DocType',
|
||||
'permlevel': 0,
|
||||
'read': 1,
|
||||
'write': 1
|
||||
},
|
||||
|
||||
# DocType, Contact Us Settings
|
||||
{
|
||||
'doctype': 'DocType',
|
||||
'name': 'Contact Us Settings'
|
||||
},
|
||||
|
||||
# DocPerm
|
||||
{
|
||||
'doctype': 'DocPerm',
|
||||
'role': 'Website Manager'
|
||||
},
|
||||
|
||||
# DocPerm
|
||||
{
|
||||
'doctype': 'DocPerm',
|
||||
'role': 'System Manager'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'default': 'Contact Us',
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'headline',
|
||||
'fieldtype': 'Data',
|
||||
'label': 'Headline'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'send_email_notification',
|
||||
'fieldtype': 'Check',
|
||||
'label': 'Send Email Notification'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'main_section',
|
||||
'fieldtype': 'Code',
|
||||
'label': 'Main Section'
|
||||
},
|
||||
|
||||
# DocField
|
||||
{
|
||||
'doctype': 'DocField',
|
||||
'fieldname': 'side_section',
|
||||
'fieldtype': 'Code',
|
||||
'label': 'Side Section'
|
||||
}
|
||||
]
|
24
erpnext/website/doctype/contact_us_settings/template.html
Normal file
24
erpnext/website/doctype/contact_us_settings/template.html
Normal file
@ -0,0 +1,24 @@
|
||||
<div class="layout_wrapper">
|
||||
<div class="web-content" id="content-contact-us">
|
||||
{% if doc.headline %}
|
||||
<h1>{{ doc.headline }}</h1>
|
||||
{% endif %}
|
||||
<div class="web-main-section">
|
||||
<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="web-side-section">
|
||||
{{ doc.side_section_html }}
|
||||
</div>
|
||||
<div style="clear: both"></div>
|
||||
</div>
|
||||
</div>
|
@ -1,6 +1,7 @@
|
||||
"""
|
||||
generate home html
|
||||
generate html
|
||||
"""
|
||||
import webnotes
|
||||
|
||||
class DocType:
|
||||
def __init__(self, d, dl):
|
||||
@ -8,19 +9,9 @@ class DocType:
|
||||
|
||||
def on_update(self):
|
||||
"""make home html"""
|
||||
import os, jinja2, markdown2
|
||||
import webnotes
|
||||
from website.utils import make_template
|
||||
import os
|
||||
path = os.path.join(os.path.dirname(__file__), 'template.html')
|
||||
|
||||
# markdown
|
||||
self.doc.main_section_html = markdown2.markdown(self.doc.main_section or '', \
|
||||
extras=["wiki-tables"])
|
||||
self.doc.side_section_html = markdown2.markdown(self.doc.side_section or '', \
|
||||
extras=["wiki-tables"])
|
||||
|
||||
# write template
|
||||
with open(os.path.join(os.path.dirname(__file__), 'template.html'), 'r') as f:
|
||||
temp = jinja2.Template(f.read())
|
||||
|
||||
html = temp.render(doc = self.doc.fields)
|
||||
webnotes.conn.set_value('Page', 'Home', 'content', html)
|
||||
webnotes.conn.set_value('Page', 'home', 'content', make_template(self.doc, path))
|
||||
|
@ -1,5 +1,5 @@
|
||||
<div class="layout_wrapper">
|
||||
<div id="content-home">
|
||||
<div class="web-content" id="content-home">
|
||||
{% if doc.headline %}
|
||||
<h1>{{ doc.headline }}</h1>
|
||||
{% endif %}
|
||||
|
0
erpnext/website/page/about/__init__.py
Normal file
0
erpnext/website/page/about/__init__.py
Normal file
42
erpnext/website/page/about/about.txt
Normal file
42
erpnext/website/page/about/about.txt
Normal file
@ -0,0 +1,42 @@
|
||||
# Page, about
|
||||
[
|
||||
|
||||
# These values are common in all dictionaries
|
||||
{
|
||||
'creation': '2012-01-27 11:37:57',
|
||||
'docstatus': 0,
|
||||
'modified': '2012-01-27 11:37:57',
|
||||
'modified_by': 'Administrator',
|
||||
'owner': 'Administrator'
|
||||
},
|
||||
|
||||
# These values are common for all Page
|
||||
{
|
||||
'doctype': 'Page',
|
||||
'module': 'Website',
|
||||
'name': '__common__',
|
||||
'page_name': 'about',
|
||||
'standard': 'Yes'
|
||||
},
|
||||
|
||||
# These values are common for all Page Role
|
||||
{
|
||||
'doctype': 'Page Role',
|
||||
'name': '__common__',
|
||||
'parent': 'about',
|
||||
'parentfield': 'roles',
|
||||
'parenttype': 'Page',
|
||||
'role': 'Guest'
|
||||
},
|
||||
|
||||
# Page, about
|
||||
{
|
||||
'doctype': 'Page',
|
||||
'name': 'about'
|
||||
},
|
||||
|
||||
# Page Role
|
||||
{
|
||||
'doctype': 'Page Role'
|
||||
}
|
||||
]
|
0
erpnext/website/page/contact/__init__.py
Normal file
0
erpnext/website/page/contact/__init__.py
Normal file
30
erpnext/website/page/contact/contact.js
Normal file
30
erpnext/website/page/contact/contact.js
Normal file
@ -0,0 +1,30 @@
|
||||
pscript.onload_contact = function(wrapper) {
|
||||
$('#content-contact-us .btn.primary').click(function() {
|
||||
var me = this;
|
||||
var args = {};
|
||||
args.name = $('#content-contact-us [name="contact-name"]').val();
|
||||
args.email = $('#content-contact-us [name="contact-email"]').val();
|
||||
args.message = $('#content-contact-us [name="contact-message"]').val();
|
||||
|
||||
if(!validate_email(args.email)) {
|
||||
msgprint('Please enter a valid email id');
|
||||
return;
|
||||
}
|
||||
|
||||
if(args.name && args.email && args.message) {
|
||||
$(this).set_working();
|
||||
$c_page('website', 'contact', 'send', args, function(r) {
|
||||
$('#content-contact-us [name*="contact"]').val('');
|
||||
$(me).done_working();
|
||||
});
|
||||
} else {
|
||||
msgprint("Please enter info in all the fields.")
|
||||
}
|
||||
});
|
||||
|
||||
$('#content-contact-us :input').keyup(function(ev) {
|
||||
if(ev.which == 13) {
|
||||
$('#content-contact-us .btn.primary').click();
|
||||
}
|
||||
});
|
||||
}
|
15
erpnext/website/page/contact/contact.py
Normal file
15
erpnext/website/page/contact/contact.py
Normal file
@ -0,0 +1,15 @@
|
||||
import json, webnotes
|
||||
|
||||
def send(args):
|
||||
"""create support ticket"""
|
||||
args = json.loads(args)
|
||||
|
||||
from webnotes.model.doc import Document
|
||||
d = Document('Support Ticket')
|
||||
d.raised_by = args['email']
|
||||
d.description = 'From: ' + args['name'] + '\n\n' + args['message']
|
||||
d.subject = 'Website Query'
|
||||
d.status = 'Open'
|
||||
d.owner = 'Guest'
|
||||
d.save(1)
|
||||
webnotes.msgprint("Thank you for your query. We will respond as soon as we can.")
|
42
erpnext/website/page/contact/contact.txt
Normal file
42
erpnext/website/page/contact/contact.txt
Normal file
@ -0,0 +1,42 @@
|
||||
# Page, contact
|
||||
[
|
||||
|
||||
# These values are common in all dictionaries
|
||||
{
|
||||
'creation': '2012-01-25 16:02:15',
|
||||
'docstatus': 0,
|
||||
'modified': '2012-01-25 16:02:15',
|
||||
'modified_by': 'Administrator',
|
||||
'owner': 'Administrator'
|
||||
},
|
||||
|
||||
# These values are common for all Page
|
||||
{
|
||||
'doctype': 'Page',
|
||||
'module': 'Website',
|
||||
'name': '__common__',
|
||||
'page_name': 'contact',
|
||||
'standard': 'Yes'
|
||||
},
|
||||
|
||||
# These values are common for all Page Role
|
||||
{
|
||||
'doctype': 'Page Role',
|
||||
'name': '__common__',
|
||||
'parent': 'contact',
|
||||
'parentfield': 'roles',
|
||||
'parenttype': 'Page',
|
||||
'role': 'Guest'
|
||||
},
|
||||
|
||||
# Page, contact
|
||||
{
|
||||
'doctype': 'Page',
|
||||
'name': 'contact'
|
||||
},
|
||||
|
||||
# Page Role
|
||||
{
|
||||
'doctype': 'Page Role'
|
||||
}
|
||||
]
|
14
erpnext/website/utils.py
Normal file
14
erpnext/website/utils.py
Normal file
@ -0,0 +1,14 @@
|
||||
def make_template(doc, path, convert_fields = ['main_section', 'side_section']):
|
||||
"""make template"""
|
||||
import os, jinja2, markdown2
|
||||
|
||||
# markdown
|
||||
for f in convert_fields:
|
||||
doc.fields[f + '_html'] = markdown2.markdown(doc.fields[f] or '', \
|
||||
extras=["wiki-tables"])
|
||||
|
||||
# write template
|
||||
with open(path, 'r') as f:
|
||||
temp = jinja2.Template(f.read())
|
||||
|
||||
return temp.render(doc = doc.fields)
|
@ -3,7 +3,7 @@
|
||||
<meta charset="utf-8">
|
||||
<title>ERPNext</title>
|
||||
<meta name="author" content="">
|
||||
<script type="text/javascript">window._version_number="201";
|
||||
<script type="text/javascript">window._version_number="215";
|
||||
|
||||
/*
|
||||
* lib/js/wn/class.js
|
||||
|
@ -1 +1 @@
|
||||
201
|
||||
215
|
Loading…
Reference in New Issue
Block a user