start #807
This commit is contained in:
parent
6b73d35b07
commit
0a7da0795b
15 changed files with 666 additions and 3 deletions
|
|
@ -16,6 +16,11 @@ def get_data():
|
|||
"name": "Blog Post",
|
||||
"description": _("Single Post (article)."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Web Form",
|
||||
"description": _("User editable form on Website."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Blogger",
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ notification_config = "frappe.core.notifications.get_notification_config"
|
|||
|
||||
before_tests = "frappe.utils.install.before_tests"
|
||||
|
||||
website_generators = ["Web Page", "Blog Post", "Website Group", "Blog Category"]
|
||||
website_generators = ["Web Page", "Blog Post", "Website Group", "Blog Category", "Web Form"]
|
||||
|
||||
# permissions
|
||||
|
||||
|
|
|
|||
|
|
@ -13,6 +13,10 @@ frappe.ui.form.on = frappe.ui.form.on_change = function(doctype, fieldname, hand
|
|||
frappe.ui.form.handlers[doctype][fieldname].push(handler)
|
||||
}
|
||||
|
||||
frappe.ui.form.trigger = function(doctype, fieldname, callback) {
|
||||
cur_frm.script_manager.trigger(fieldname, doctype, null, callback);
|
||||
}
|
||||
|
||||
frappe.ui.form.ScriptManager = Class.extend({
|
||||
init: function(opts) {
|
||||
$.extend(this, opts);
|
||||
|
|
|
|||
116
frappe/templates/generators/web_form.html
Normal file
116
frappe/templates/generators/web_form.html
Normal file
|
|
@ -0,0 +1,116 @@
|
|||
{% block title %}{{ title }}{% endblock %}
|
||||
|
||||
{% block header %}
|
||||
{{ title }}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% if login_required and user=="Guest" %}
|
||||
<div class="alert alert-warning">{{ _("Please login to create a new {0}").format(_(doc_type)) }}</div>
|
||||
|
||||
{% else %}
|
||||
<div class="form-message alert alert-info hide"></div>
|
||||
<form class="form-horizontal" role="form"
|
||||
data-web-form="{{ name }}">
|
||||
<input type="hidden" name="web_form" value="{{ name }}">
|
||||
<input type="hidden" name="doctype" value="{{ doc_type }}">
|
||||
{% if params.name -%}
|
||||
<input type="hidden" name="name" value="{{ params.name }}">
|
||||
{%- endif %}
|
||||
{% for field in web_form_fields %}
|
||||
{% if field.fieldtype=="Data" %}
|
||||
<div class="form-group">
|
||||
<label for="{{ field.fieldname }}" class="col-sm-3 control-label">
|
||||
{{ field.label }}</label>
|
||||
<div class="col-sm-9">
|
||||
<input type="text" class="form-control" name="{{ field.fieldname }}"
|
||||
id="{{ field.fieldname }}" placeholder="{{ field.placeholder or '' }}">
|
||||
{% if field.description -%}
|
||||
<span class="help-block">{{ field.description }}</span>
|
||||
{%- endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% elif field.fieldtype=="Select" %}
|
||||
<div class="form-group">
|
||||
<label for="{{ field.fieldname }}" class="col-sm-3 control-label">
|
||||
{{ field.label }}</label>
|
||||
<div class="col-sm-9">
|
||||
<select class="form-control" name="{{ field.fieldname }}"
|
||||
id="{{ field.fieldname }}">
|
||||
{% for option in field.options.split("\n") %}
|
||||
<option value="{{ option }}">{{ option }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
{% if field.description -%}
|
||||
<span class="help-block">{{ field.description }}</span>
|
||||
{%- endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% elif field.fieldtype=="Text" %}
|
||||
<div class="form-group">
|
||||
<label for="{{ field.fieldname }}" class="col-sm-3 control-label">
|
||||
{{ field.label }}</label>
|
||||
<div class="col-sm-9">
|
||||
<textarea class="form-control" name="{{ field.fieldname }}"
|
||||
id="{{ field.fieldname }}" style="height: 100px;"></textarea>
|
||||
{% if field.description -%}
|
||||
<span class="help-block">{{ field.description }}</span>
|
||||
{%- endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% elif field.fieldtype=="Check" %}
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-3 col-sm-9">
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" id="{{ field.fieldname }}"
|
||||
name="{{ field.fieldname }}"> {{ field.label }}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-3 col-sm-9">
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
{% block script %}
|
||||
<script>
|
||||
frappe.ready(function() {
|
||||
var args = {},
|
||||
$form = $("form[data-web-form='{{ name }}']");
|
||||
$form.find("[name]").each(function() {
|
||||
args[$(this).attr("name")] = $(this).val();
|
||||
});
|
||||
|
||||
$("form[data-web-form='{{ name }}']").on("submit", function() {
|
||||
args =
|
||||
frappe.call({
|
||||
type: "POST",
|
||||
method: "frappe.website.doctype.web_form.web_form.accept",
|
||||
args: args,
|
||||
btn: $form.find("[type='submit']"),
|
||||
callback: function(data) {
|
||||
if(!data.exc) {
|
||||
$form.addClass("hide");
|
||||
$(".form-message")
|
||||
.html("{{ success_message or 'Thank You!' }}")
|
||||
.removeClass("hide");
|
||||
{% if success_url -%}
|
||||
window.location.href = "{{ success_url }}"
|
||||
{%- endif %};
|
||||
}
|
||||
}
|
||||
})
|
||||
return false;
|
||||
})
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
|
@ -51,7 +51,8 @@ def get_allowed_functions_for_jenv():
|
|||
"get_meta": frappe.get_meta,
|
||||
"get_doc": frappe.get_doc,
|
||||
"get_list": frappe.get_list,
|
||||
"utils": datautils
|
||||
"utils": datautils,
|
||||
"user": frappe.session.user
|
||||
},
|
||||
"get_visible_columns": \
|
||||
frappe.get_attr("frappe.templates.pages.print.get_visible_columns"),
|
||||
|
|
|
|||
0
frappe/website/doctype/web_form/__init__.py
Normal file
0
frappe/website/doctype/web_form/__init__.py
Normal file
6
frappe/website/doctype/web_form/test_records.json
Normal file
6
frappe/website/doctype/web_form/test_records.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
[
|
||||
{
|
||||
"doctype": "Web Form",
|
||||
"name": "_Test Web Form 1"
|
||||
}
|
||||
]
|
||||
10
frappe/website/doctype/web_form/test_web_form.py
Normal file
10
frappe/website/doctype/web_form/test_web_form.py
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors
|
||||
# See license.txt
|
||||
|
||||
import frappe
|
||||
import unittest
|
||||
|
||||
test_records = frappe.get_test_records('Web Form')
|
||||
|
||||
class TestWebForm(unittest.TestCase):
|
||||
pass
|
||||
47
frappe/website/doctype/web_form/web_form.js
Normal file
47
frappe/website/doctype/web_form/web_form.js
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
frappe.web_form = {
|
||||
set_fieldname_select: function(frm) {
|
||||
var me = this,
|
||||
doc = frm.doc;
|
||||
if(doc.doc_type) {
|
||||
frappe.model.with_doctype(doc.doc_type, function() {
|
||||
var fields = $.map(frappe.get_doc("DocType", frm.doc.doc_type).fields, function(d) {
|
||||
return frappe.model.no_value_type.indexOf(d.fieldtype)===-1 ?
|
||||
d.fieldname : null;
|
||||
})
|
||||
frappe.meta.get_docfield("Web Form Field", "fieldname", frm.doc.name).options
|
||||
= [""].concat(fields);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
frappe.ui.form.on("Web Form", "refresh", function(frm) {
|
||||
frappe.web_form.set_fieldname_select(frm);
|
||||
|
||||
if (!frm.doc.__islocal && frm.doc.published) {
|
||||
cur_frm.set_intro(__("Published on website at: {0}",
|
||||
[repl('<a href="/%(website_route)s" target="_blank">/%(website_route)s</a>',
|
||||
frm.doc.__onload)]));
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
frappe.ui.form.on("Web Form", "doc_type", function(frm) {
|
||||
frappe.web_form.set_fieldname_select(frm);
|
||||
});
|
||||
|
||||
frappe.ui.form.on("Web Form Field", "fieldname", function(frm, doctype, name) {
|
||||
var doc = frappe.get_doc(doctype, name);
|
||||
df = $.map(frappe.get_doc("DocType", frm.doc.doc_type).fields, function(d) {
|
||||
return doc.fieldname==d.fieldname ? d : null; })[0];
|
||||
|
||||
doc.label = df.label;
|
||||
doc.reqd = df.reqd;
|
||||
doc.options = df.options;
|
||||
doc.fieldtype = frappe.meta.get_docfield("Web Form Field", "fieldtype")
|
||||
.options.split("\n").indexOf(df.fieldtype)===-1 ? "Data" : df.fieldtype;
|
||||
doc.description = df.description;
|
||||
doc["default"] = df["default"];
|
||||
|
||||
frm.refresh_field("web_form_fields");
|
||||
});
|
||||
219
frappe/website/doctype/web_form/web_form.json
Normal file
219
frappe/website/doctype/web_form/web_form.json
Normal file
|
|
@ -0,0 +1,219 @@
|
|||
{
|
||||
"allow_copy": 0,
|
||||
"allow_import": 0,
|
||||
"allow_rename": 0,
|
||||
"autoname": "field:title",
|
||||
"creation": "2014-09-01 14:08:48.624556",
|
||||
"custom": 0,
|
||||
"docstatus": 0,
|
||||
"doctype": "DocType",
|
||||
"document_type": "Transaction",
|
||||
"fields": [
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "title",
|
||||
"fieldtype": "Data",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Title",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 1,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"description": "Website URL",
|
||||
"fieldname": "page_name",
|
||||
"fieldtype": "Data",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Page Name",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 1,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "doc_type",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Select DocType",
|
||||
"no_copy": 0,
|
||||
"options": "DocType",
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 1,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "column_break_4",
|
||||
"fieldtype": "Column Break",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"fieldname": "published",
|
||||
"fieldtype": "Check",
|
||||
"label": "Published",
|
||||
"permlevel": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "login_required",
|
||||
"fieldtype": "Check",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Login Required",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"depends_on": "login_required",
|
||||
"fieldname": "allow_edit",
|
||||
"fieldtype": "Check",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 0,
|
||||
"label": "Allow Edit",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"depends_on": "login_required",
|
||||
"fieldname": "allow_multiple",
|
||||
"fieldtype": "Check",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 0,
|
||||
"label": "Allow Multiple",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"fieldname": "actions",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Actions",
|
||||
"permlevel": 0
|
||||
},
|
||||
{
|
||||
"description": "Message to be displayed on successful completion",
|
||||
"fieldname": "success_message",
|
||||
"fieldtype": "Text",
|
||||
"label": "Success Message",
|
||||
"permlevel": 0
|
||||
},
|
||||
{
|
||||
"description": "Go to this url after completing the form.",
|
||||
"fieldname": "success_url",
|
||||
"fieldtype": "Data",
|
||||
"label": "Success URL",
|
||||
"permlevel": 0
|
||||
},
|
||||
{
|
||||
"fieldname": "fields",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Fields",
|
||||
"permlevel": 0
|
||||
},
|
||||
{
|
||||
"fieldname": "web_form_fields",
|
||||
"fieldtype": "Table",
|
||||
"label": "Web Form Fields",
|
||||
"options": "Web Form Field",
|
||||
"permlevel": 0
|
||||
}
|
||||
],
|
||||
"hide_heading": 0,
|
||||
"hide_toolbar": 0,
|
||||
"icon": "icon-edit",
|
||||
"in_create": 0,
|
||||
"in_dialog": 0,
|
||||
"is_submittable": 0,
|
||||
"issingle": 0,
|
||||
"istable": 0,
|
||||
"modified": "2014-09-01 18:12:25.643567",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Website",
|
||||
"name": "Web Form",
|
||||
"name_case": "",
|
||||
"owner": "Administrator",
|
||||
"permissions": [
|
||||
{
|
||||
"amend": 0,
|
||||
"apply_user_permissions": 0,
|
||||
"cancel": 0,
|
||||
"create": 1,
|
||||
"delete": 1,
|
||||
"email": 0,
|
||||
"export": 0,
|
||||
"import": 0,
|
||||
"permlevel": 0,
|
||||
"print": 0,
|
||||
"read": 1,
|
||||
"report": 1,
|
||||
"role": "Website Manager",
|
||||
"set_user_permissions": 0,
|
||||
"submit": 0,
|
||||
"write": 1
|
||||
}
|
||||
],
|
||||
"read_only": 0,
|
||||
"read_only_onload": 0,
|
||||
"sort_field": "modified",
|
||||
"sort_order": "DESC"
|
||||
}
|
||||
50
frappe/website/doctype/web_form/web_form.py
Normal file
50
frappe/website/doctype/web_form/web_form.py
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and contributors
|
||||
# For license information, please see license.txt
|
||||
|
||||
from __future__ import unicode_literals
|
||||
import frappe
|
||||
from frappe.website.website_generator import WebsiteGenerator
|
||||
|
||||
# parameters
|
||||
# name (edit)
|
||||
# new
|
||||
|
||||
class WebForm(WebsiteGenerator):
|
||||
template = "templates/generators/web_form.html"
|
||||
condition_field = "published"
|
||||
page_title_field = "title"
|
||||
no_cache = 1
|
||||
|
||||
def get_context(self, context):
|
||||
context.params = frappe.form_dict
|
||||
if frappe.form_dict.name:
|
||||
context.doc = frappe.get_doc(self.doc_type, frappe.form_dict.name)
|
||||
|
||||
return context
|
||||
|
||||
@frappe.whitelist(allow_guest=True)
|
||||
def accept():
|
||||
args = frappe.form_dict
|
||||
if args.name:
|
||||
doc = frappe.get_doc(args.doctype, args.name)
|
||||
else:
|
||||
doc = frappe.new_doc(args.doctype)
|
||||
|
||||
for fieldname, value in args.iteritems():
|
||||
if fieldname not in ("web_form", "cmd"):
|
||||
doc.set(fieldname, value)
|
||||
|
||||
if args.name:
|
||||
if doc.owner==frappe.session.user:
|
||||
doc.update(ignore_permissions=True)
|
||||
else:
|
||||
# only if permissions are present
|
||||
doc.update()
|
||||
|
||||
else:
|
||||
# insert
|
||||
web_form = frappe.get_doc("Web Form", args.web_form)
|
||||
if web_form.login_required and frappe.session.user=="Guest":
|
||||
frappe.throw(_("You must login to submit this form"))
|
||||
|
||||
doc.insert(ignore_permissions = True)
|
||||
0
frappe/website/doctype/web_form_field/__init__.py
Normal file
0
frappe/website/doctype/web_form_field/__init__.py
Normal file
196
frappe/website/doctype/web_form_field/web_form_field.json
Normal file
196
frappe/website/doctype/web_form_field/web_form_field.json
Normal file
|
|
@ -0,0 +1,196 @@
|
|||
{
|
||||
"allow_copy": 0,
|
||||
"allow_import": 0,
|
||||
"allow_rename": 0,
|
||||
"creation": "2014-09-01 14:14:14.292173",
|
||||
"custom": 0,
|
||||
"docstatus": 0,
|
||||
"doctype": "DocType",
|
||||
"document_type": "",
|
||||
"fields": [
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "fieldname",
|
||||
"fieldtype": "Select",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Fieldname",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "fieldtype",
|
||||
"fieldtype": "Select",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Fieldtype",
|
||||
"no_copy": 0,
|
||||
"options": "Attach\nCheck\nData\nHTML\nSelect\nText",
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "label",
|
||||
"fieldtype": "Data",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Label",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 1,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"fieldname": "reqd",
|
||||
"fieldtype": "Check",
|
||||
"label": "Mandatory",
|
||||
"permlevel": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "column_break_4",
|
||||
"fieldtype": "Column Break",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "options",
|
||||
"fieldtype": "Text",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 1,
|
||||
"label": "Options",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "section_break_6",
|
||||
"fieldtype": "Section Break",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "description",
|
||||
"fieldtype": "Text",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 0,
|
||||
"label": "Description",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "column_break_8",
|
||||
"fieldtype": "Column Break",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
},
|
||||
{
|
||||
"allow_on_submit": 0,
|
||||
"fieldname": "default",
|
||||
"fieldtype": "Data",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"in_filter": 0,
|
||||
"in_list_view": 0,
|
||||
"label": "Default",
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"read_only": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0
|
||||
}
|
||||
],
|
||||
"hide_heading": 0,
|
||||
"hide_toolbar": 0,
|
||||
"in_create": 0,
|
||||
"in_dialog": 0,
|
||||
"is_submittable": 0,
|
||||
"issingle": 0,
|
||||
"istable": 1,
|
||||
"modified": "2014-09-01 14:14:40.425829",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Website",
|
||||
"name": "Web Form Field",
|
||||
"name_case": "",
|
||||
"owner": "Administrator",
|
||||
"permissions": [],
|
||||
"read_only": 0,
|
||||
"read_only_onload": 0,
|
||||
"sort_field": "modified",
|
||||
"sort_order": "DESC"
|
||||
}
|
||||
9
frappe/website/doctype/web_form_field/web_form_field.py
Normal file
9
frappe/website/doctype/web_form_field/web_form_field.py
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and contributors
|
||||
# For license information, please see license.txt
|
||||
|
||||
from __future__ import unicode_literals
|
||||
import frappe
|
||||
from frappe.model.document import Document
|
||||
|
||||
class WebFormField(Document):
|
||||
pass
|
||||
|
|
@ -96,7 +96,7 @@ def clear_sitemap():
|
|||
if meta.get_field("parent_website_route"):
|
||||
query = "select page_name, parent_website_route from `tab{0}`"
|
||||
else:
|
||||
query = "select page_name, "" from `tab{0}`"
|
||||
query = "select page_name, '' from `tab{0}`"
|
||||
|
||||
for r in frappe.db.sql(query.format(doctype)):
|
||||
if r[0]:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue