[refactor] frappe.widgets > frappe.desk

This commit is contained in:
Rushabh Mehta 2014-09-09 14:47:10 +05:30
parent f153dbd2cf
commit 5a0a9aac66
112 changed files with 424 additions and 492 deletions

View file

@ -598,8 +598,8 @@ def respond_as_web_page(title, html, success=None, http_status_code=None):
local.response['http_status_code'] = http_status_code
def build_match_conditions(doctype, as_condition=True):
import frappe.widgets.reportview
return frappe.widgets.reportview.build_match_conditions(doctype, as_condition)
import frappe.desk.reportview
return frappe.desk.reportview.build_match_conditions(doctype, as_condition)
def get_list(doctype, filters=None, fields=None, or_filters=None, docstatus=None,
group_by=None, order_by=None, limit_start=0, limit_page_length=None,

View file

@ -5,7 +5,7 @@ import json
import frappe
import frappe.handler
import frappe.client
import frappe.widgets.reportview
import frappe.desk.reportview
from frappe.utils.response import build_response
from frappe import _
@ -90,7 +90,7 @@ def handle():
if frappe.local.form_dict.get('fields'):
frappe.local.form_dict['fields'] = json.loads(frappe.local.form_dict['fields'])
frappe.local.response.update({
"data": frappe.call(frappe.widgets.reportview.execute,
"data": frappe.call(frappe.desk.reportview.execute,
doctype, **frappe.local.form_dict)})
if frappe.local.request.method=="POST":

View file

@ -8,7 +8,7 @@ bootstrap client session
import frappe
import frappe.defaults
import frappe.widgets.page
import frappe.desk.page
from frappe.utils import get_gravatar
def get_bootinfo():
@ -132,10 +132,10 @@ def add_home_page(bootinfo, docs):
return
home_page = frappe.db.get_default("desktop:home_page")
try:
page = frappe.widgets.page.get(home_page)
page = frappe.desk.page.get(home_page)
except (frappe.DoesNotExistError, frappe.PermissionError):
frappe.message_log.pop()
page = frappe.widgets.page.get('desktop')
page = frappe.desk.page.get('desktop')
bootinfo['home_page'] = page.name
docs.append(page)

View file

@ -1,5 +1,5 @@
from frappe import _
from frappe.widgets.moduleview import add_setup_section
from frappe.desk.moduleview import add_setup_section
def get_data():
data = [

View file

@ -1,84 +0,0 @@
{
"autoname": "field:letter_head_name",
"creation": "2012-11-22 17:45:46",
"docstatus": 0,
"doctype": "DocType",
"fields": [
{
"fieldname": "letter_head_name",
"fieldtype": "Data",
"in_filter": 0,
"in_list_view": 1,
"label": "Letter Head Name",
"oldfieldname": "letter_head_name",
"oldfieldtype": "Data",
"permlevel": 0,
"reqd": 1
},
{
"depends_on": "letter_head_name",
"fieldname": "disabled",
"fieldtype": "Check",
"in_list_view": 1,
"label": "Disabled",
"oldfieldname": "disabled",
"oldfieldtype": "Check",
"permlevel": 0
},
{
"depends_on": "letter_head_name",
"description": "Check this to make this the default letter head in all prints",
"fieldname": "is_default",
"fieldtype": "Check",
"in_list_view": 1,
"label": "Is Default",
"oldfieldname": "is_default",
"oldfieldtype": "Check",
"permlevel": 0,
"search_index": 1
},
{
"depends_on": "letter_head_name",
"description": "Letter Head in HTML",
"fieldname": "content",
"fieldtype": "Text Editor",
"in_list_view": 1,
"label": "Content",
"oldfieldname": "content",
"oldfieldtype": "Text Editor",
"permlevel": 0
}
],
"icon": "icon-font",
"idx": 1,
"max_attachments": 3,
"modified": "2014-07-21 05:57:56.052191",
"modified_by": "Administrator",
"module": "Core",
"name": "Letter Head",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"delete": 1,
"email": 1,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"submit": 0,
"write": 1
},
{
"apply_user_permissions": 1,
"delete": 0,
"email": 0,
"permlevel": 0,
"print": 0,
"read": 1,
"report": 0,
"role": "All"
}
]
}

View file

@ -1,183 +0,0 @@
{
"allow_copy": 0,
"allow_rename": 0,
"autoname": "Prompt",
"creation": "2013-01-23 19:54:43",
"docstatus": 0,
"doctype": "DocType",
"fields": [
{
"description": "Belongs to",
"fieldname": "doc_type",
"fieldtype": "Link",
"in_filter": 1,
"in_list_view": 1,
"label": "DocType",
"options": "DocType",
"permlevel": 0,
"reqd": 1,
"search_index": 0
},
{
"allow_on_submit": 0,
"fieldname": "module",
"fieldtype": "Link",
"hidden": 0,
"in_filter": 1,
"in_list_view": 1,
"label": "Module",
"no_copy": 0,
"oldfieldname": "module",
"oldfieldtype": "Select",
"options": "Module Def",
"permlevel": 0,
"print_hide": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 1
},
{
"fieldname": "column_break_3",
"fieldtype": "Column Break",
"permlevel": 0
},
{
"allow_on_submit": 0,
"default": "No",
"fieldname": "standard",
"fieldtype": "Select",
"hidden": 0,
"in_filter": 1,
"in_list_view": 1,
"label": "Standard",
"no_copy": 1,
"oldfieldname": "standard",
"oldfieldtype": "Select",
"options": "No\nYes",
"permlevel": 1,
"print_hide": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 1
},
{
"default": "Server",
"description": "Client-side formats are now deprecated",
"fieldname": "print_format_type",
"fieldtype": "Select",
"in_list_view": 1,
"label": "Print Format Type",
"options": "Server\nClient",
"permlevel": 0,
"read_only": 0
},
{
"fieldname": "disabled",
"fieldtype": "Check",
"label": "Disabled",
"permlevel": 0
},
{
"fieldname": "section_break_6",
"fieldtype": "Section Break",
"permlevel": 0
},
{
"allow_on_submit": 0,
"depends_on": "",
"fieldname": "html",
"fieldtype": "Code",
"hidden": 0,
"in_filter": 0,
"label": "HTML",
"no_copy": 0,
"oldfieldname": "html",
"oldfieldtype": "Text Editor",
"options": "HTML",
"permlevel": 0,
"print_hide": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0
},
{
"fieldname": "print_format_help",
"fieldtype": "HTML",
"label": "Print Format Help",
"options": "<h3>Print Format Help</h3>\n<hr>\n<h4>Introduction</h4>\n<p>Print Formats are rendered on the server side using the Jinja Templating Language. All forms have access to the <code>doc</code> object which contains information about the document that is being formatted. You can also access common utilities via the <code>frappe</code> module.</p>\n<p>For styling, the Boostrap CSS framework is provided and you can enjoy the full range of classes.</p>\n<hr>\n<h4>References</h4>\n<ol>\n\t<li><a href=\"http://jinja.pocoo.org/docs/templates/\" target=\"_blank\">Jinja Tempalting Language: Reference</a></li>\n\t<li><a href=\"http://getbootstrap.com\" target=\"_blank\">Bootstrap CSS Framework</a></li>\n</ol>\n<hr>\n<h4>Example</h4>\n<pre><code>&lt;h3&gt;{{ doc.select_print_heading or \"Invoice\" }}&lt;/h3&gt;\n&lt;div class=\"row\"&gt;\n\t&lt;div class=\"col-md-3 text-right\"&gt;Customer Name&lt;/div&gt;\n\t&lt;div class=\"col-md-9\"&gt;{{ doc.customer_name }}&lt;/div&gt;\n&lt;/div&gt;\n&lt;div class=\"row\"&gt;\n\t&lt;div class=\"col-md-3 text-right\"&gt;Date&lt;/div&gt;\n\t&lt;div class=\"col-md-9\"&gt;{{ doc.get_formatted(\"invoice_date\") }}&lt;/div&gt;\n&lt;/div&gt;\n&lt;table class=\"table table-bordered\"&gt;\n\t&lt;tbody&gt;\n\t\t&lt;tr&gt;\n\t\t\t&lt;th&gt;Sr&lt;/th&gt;\n\t\t\t&lt;th&gt;Item Name&lt;/th&gt;\n\t\t\t&lt;th&gt;Description&lt;/th&gt;\n\t\t\t&lt;th class=\"text-right\"&gt;Qty&lt;/th&gt;\n\t\t\t&lt;th class=\"text-right\"&gt;Rate&lt;/th&gt;\n\t\t\t&lt;th class=\"text-right\"&gt;Amount&lt;/th&gt;\n\t\t&lt;/tr&gt;\n\t\t{%- for row in doc.entries -%}\n\t\t&lt;tr&gt;\n\t\t\t&lt;td style=\"width: 3%;\"&gt;{{ row.idx }}&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 20%;\"&gt;\n\t\t\t\t{{ row.item_name }}\n\t\t\t\t{% if row.item_code != row.item_name -%}\n\t\t\t\t&lt;br&gt;Item Code: {{ row.item_code}}\n\t\t\t\t{%- endif %}\n\t\t\t&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 37%;\"&gt;\n\t\t\t\t&lt;div style=\"border: 0px;\"&gt;{{ row.description }}&lt;/div&gt;&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 10%; text-align: right;\"&gt;{{ row.qty }} {{ row.uom or row.stock_uom }}&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 15%; text-align: right;\"&gt;{{\n\t\t\t\trow.get_formatted(\"rate\", doc) }}&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 15%; text-align: right;\"&gt;{{\n\t\t\t\trow.get_formatted(\"amount\", doc) }}&lt;/td&gt;\n\t\t&lt;/tr&gt;\n\t\t{%- endfor -%}\n\t&lt;/tbody&gt;\n&lt;/table&gt;</code></pre>\n<hr>\n<h4>Common Functions</h4>\n<table class=\"table table-bordered\">\n\t<tbody>\n\t\t<tr>\n\t\t\t<td style=\"width: 30%\"><code>doc.get_formatted(\"[fieldname]\", [parent_doc])</code></td>\n\t\t\t<td>Get document value formatted as Date, Currency etc. Pass parent <code>doc</code> for curreny type fields.</td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td style=\"width: 30%\"><code>frappe.db.get_value(\"[doctype]\", \"[name]\", \"fieldname\")</code></td>\n\t\t\t<td>Get value from another document.</td>\n\t\t</tr>\n\t</tbody>\n</table>\n",
"permlevel": 0
}
],
"hide_heading": 0,
"hide_toolbar": 0,
"icon": "icon-print",
"idx": 1,
"in_create": 0,
"in_dialog": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2014-07-31 03:39:35.898711",
"modified_by": "Administrator",
"module": "Core",
"name": "Print Format",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "Administrator",
"submit": 0,
"write": 1
},
{
"amend": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"submit": 0,
"write": 1
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"permlevel": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"submit": 0
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"permlevel": 1,
"read": 1,
"report": 1,
"role": "Administrator",
"submit": 0,
"write": 1
}
],
"read_only": 0,
"read_only_onload": 0,
"sort_field": "modified",
"sort_order": "DESC"
}

View file

@ -1,96 +0,0 @@
{
"creation": "2014-07-17 06:54:20.782907",
"docstatus": 0,
"doctype": "DocType",
"document_type": "System",
"fields": [
{
"fieldname": "pdf_settings",
"fieldtype": "Section Break",
"label": "PDF Settings",
"permlevel": 0
},
{
"default": "1",
"description": "Send Email Print Attachments as PDF (Recommended)",
"fieldname": "send_print_as_pdf",
"fieldtype": "Check",
"label": "Send Print as PDF",
"permlevel": 0
},
{
"default": "A4",
"fieldname": "pdf_page_size",
"fieldtype": "Select",
"label": "PDF Page Size",
"options": "A4\nLetter",
"permlevel": 0
},
{
"fieldname": "print_style_section",
"fieldtype": "Section Break",
"label": "Print Style",
"permlevel": 0
},
{
"default": "",
"fieldname": "print_style",
"fieldtype": "Select",
"in_list_view": 1,
"label": "Print Style",
"options": "Modern\nClassic\nStandard\nMonochrome",
"permlevel": 0
},
{
"fieldname": "column_break_6",
"fieldtype": "Column Break",
"permlevel": 0
},
{
"description": "In points. Default is 9.",
"fieldname": "font_size",
"fieldtype": "Float",
"label": "Font Size",
"permlevel": 0
},
{
"default": "1",
"description": "Print with Letterhead, unless unchecked in a particular Document",
"fieldname": "with_letterhead",
"fieldtype": "Check",
"label": "With Letterhead",
"permlevel": 0,
"reqd": 0
},
{
"fieldname": "section_break_8",
"fieldtype": "Section Break",
"permlevel": 0
},
{
"fieldname": "print_style_preview",
"fieldtype": "HTML",
"label": "Print Style Preview",
"permlevel": 0
}
],
"icon": "icon-cog",
"issingle": 1,
"modified": "2014-08-05 09:03:02.337355",
"modified_by": "Administrator",
"module": "Core",
"name": "Print Settings",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"permlevel": 0,
"read": 1,
"role": "System Manager",
"write": 1
}
],
"sort_field": "modified",
"sort_order": "DESC"
}

View file

@ -356,7 +356,7 @@ def reset_password(user):
return _("User {0} does not exist").format(user)
def user_query(doctype, txt, searchfield, start, page_len, filters):
from frappe.widgets.reportview import get_match_cond
from frappe.desk.reportview import get_match_cond
txt = "%{}%".format(txt)
return frappe.db.sql("""select name, concat_ws(' ', first_name, middle_name, last_name)
from `tabUser`

View file

@ -29,7 +29,7 @@ def get_things_todo():
def get_todays_events():
"""Returns a count of todays events in calendar"""
from frappe.desk_apps.doctype.event.event import get_events
from frappe.desk.doctype.event.event import get_events
from frappe.utils import nowdate
today = nowdate()
return len(get_events(today, today))

View file

@ -4,7 +4,7 @@
from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.widgets.reportview import execute as runreport
from frappe.desk.reportview import execute as runreport
from frappe.utils import getdate
def execute(filters=None):

View file

@ -248,7 +248,7 @@
"in_create": 1,
"modified": "2014-06-20 06:40:05.415415",
"modified_by": "Administrator",
"module": "Desk Apps",
"module": "Desk",
"name": "Event",
"owner": "Administrator",
"permissions": [

View file

@ -11,5 +11,5 @@ frappe.views.calendar["Event"] = {
"Public": "success",
"Private": "info"
},
get_events_method: "frappe.desk_apps.doctype.event.event.get_events"
get_events_method: "frappe.desk.doctype.event.event.get_events"
}

View file

@ -55,7 +55,7 @@ class TestEvent(unittest.TestCase):
self.assertEquals(ev.name, name)
def test_assign(self):
from frappe.widgets.form.assign_to import add
from frappe.desk.form.assign_to import add
ev = frappe.get_doc(test_records[0]).insert()

View file

@ -21,7 +21,7 @@
"istable": 1,
"modified": "2013-12-20 19:23:12.000001",
"modified_by": "Administrator",
"module": "Desk Apps",
"module": "Desk",
"name": "Event Role",
"owner": "Administrator"
}

View file

@ -22,7 +22,7 @@
"istable": 1,
"modified": "2014-05-09 02:12:32.374018",
"modified_by": "Administrator",
"module": "Desk Apps",
"module": "Desk",
"name": "Event User",
"owner": "Administrator",
"permissions": [],

View file

@ -172,7 +172,7 @@
"max_attachments": 0,
"modified": "2014-06-30 05:40:15.471435",
"modified_by": "Administrator",
"module": "Desk Apps",
"module": "Desk",
"name": "ToDo",
"owner": "Administrator",
"permissions": [

View file

@ -7,7 +7,7 @@ from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.utils import cint
from frappe.widgets.form.load import get_docinfo
from frappe.desk.form.load import get_docinfo
def get(args=None):
"""get assigned to"""

View file

@ -5,7 +5,7 @@ from __future__ import unicode_literals
import frappe, json
import frappe.utils
import frappe.defaults
import frappe.widgets.form.meta
import frappe.desk.form.meta
from frappe.permissions import get_doc_permissions
from frappe import _
@ -69,10 +69,10 @@ def getdoctype(doctype, with_parent=False, cached_timestamp=None):
frappe.response.docs.extend(docs)
def get_meta_bundle(doctype):
bundle = [frappe.widgets.form.meta.get_meta(doctype)]
bundle = [frappe.desk.form.meta.get_meta(doctype)]
for df in bundle[0].fields:
if df.fieldtype=="Table":
bundle.append(frappe.widgets.form.meta.get_meta(df.options))
bundle.append(frappe.desk.form.meta.get_meta(df.options))
return bundle
def get_docinfo(doc):

View file

@ -3,7 +3,7 @@
from __future__ import unicode_literals
import frappe, json
from frappe.widgets.form.load import run_onload
from frappe.desk.form.load import run_onload
@frappe.whitelist()
def savedocs():

View file

@ -4,7 +4,7 @@
from __future__ import unicode_literals
import frappe, unittest
from frappe.widgets.form.utils import get_linked_docs
from frappe.desk.form.utils import get_linked_docs
class TestForm(unittest.TestCase):
def test_linked_with(self):

View file

@ -3,8 +3,8 @@
from __future__ import unicode_literals
import frappe, json
import frappe.widgets.form.meta
import frappe.widgets.form.load
import frappe.desk.form.meta
import frappe.desk.form.load
from frappe import _
@ -67,7 +67,7 @@ def add_comment(doc):
@frappe.whitelist()
def get_next(doctype, value, prev, filters=None, order_by="modified desc"):
import frappe.widgets.reportview
import frappe.desk.reportview
prev = not int(prev)
sort_field, sort_order = order_by.split(" ")
@ -89,7 +89,7 @@ def get_next(doctype, value, prev, filters=None, order_by="modified desc"):
if not order_by[0] in [f[1] for f in filters]:
filters.append([doctype, sort_field, condition, value])
res = frappe.widgets.reportview.execute(doctype,
res = frappe.desk.reportview.execute(doctype,
fields = ["name"],
filters = filters,
order_by = sort_field + " " + sort_order,
@ -104,12 +104,12 @@ def get_next(doctype, value, prev, filters=None, order_by="modified desc"):
@frappe.whitelist()
def get_linked_docs(doctype, name, metadata_loaded=None, no_metadata=False):
if not metadata_loaded: metadata_loaded = []
meta = frappe.widgets.form.meta.get_meta(doctype)
meta = frappe.desk.form.meta.get_meta(doctype)
linkinfo = meta.get("__linked_with")
results = {}
for dt, link in linkinfo.items():
link["doctype"] = dt
link_meta_bundle = frappe.widgets.form.load.get_meta_bundle(dt)
link_meta_bundle = frappe.desk.form.load.get_meta_bundle(dt)
linkmeta = link_meta_bundle[0]
if not linkmeta.get("issingle"):
fields = [d.fieldname for d in linkmeta.get("fields", {"in_list_view":1,

View file

@ -3,7 +3,7 @@
from __future__ import unicode_literals
import frappe
from frappe.widgets import reportview
from frappe.desk import reportview
from frappe.utils import cint
from frappe import _

View file

@ -6,7 +6,7 @@
"idx": 1,
"modified": "2013-12-23 11:01:52.000001",
"modified_by": "Administrator",
"module": "Desk Apps",
"module": "Desk",
"name": "applications",
"owner": "Administrator",
"page_name": "applications",

View file

@ -56,7 +56,7 @@ def get_sql_meta(tl):
return meta
def add_match_conditions(q, tl):
from frappe.widgets.reportview import build_match_conditions
from frappe.desk.reportview import build_match_conditions
sl = []
for dt in tl:
s = build_match_conditions(dt)

View file

@ -10,7 +10,7 @@ from frappe import _
from frappe.modules import scrub, get_module_path
from frappe.utils import flt, cint, get_html_format
from frappe.translate import send_translations
import frappe.widgets.reportview
import frappe.desk.reportview
def get_report_doc(report_name):
doc = frappe.get_doc("Report", report_name)
@ -208,7 +208,7 @@ def get_user_match_filters(doctypes, ref_doctype):
match_filters = {}
for dt in doctypes:
filter_list = frappe.widgets.reportview.build_match_conditions(dt, False)
filter_list = frappe.desk.reportview.build_match_conditions(dt, False)
if filter_list:
match_filters[dt] = filter_list

View file

@ -4,7 +4,7 @@
# Search
from __future__ import unicode_literals
import frappe
import frappe.widgets.reportview
import frappe.desk.reportview
from frappe.utils import cstr, unique
# this is called by the Link Field
@ -77,7 +77,7 @@ def search_widget(doctype, txt, query=None, searchfield=None, start=0,
fields.append("""locate("{_txt}", `tab{doctype}`.`name`) as `_relevance`""".format(
_txt=frappe.db.escape((txt or "").replace("%", "")), doctype=doctype))
values = frappe.widgets.reportview.execute(doctype,
values = frappe.desk.reportview.execute(doctype,
filters=filters, fields=fields,
or_filters = or_filters, limit_start = start,
limit_page_length=page_len,

View file

@ -7,7 +7,7 @@ from frappe import _
import frappe.utils
import frappe.sessions
import frappe.utils.file_manager
import frappe.widgets.form.run_method
import frappe.desk.form.run_method
from frappe.utils.response import build_response
@frappe.whitelist(allow_guest=True)
@ -16,7 +16,7 @@ def startup():
@frappe.whitelist()
def runserverobj(method, docs=None, dt=None, dn=None, arg=None, args=None):
frappe.widgets.form.run_method.runserverobj(method, docs=docs, dt=dt, dn=dn, arg=arg, args=args)
frappe.desk.form.run_method.runserverobj(method, docs=docs, dt=dt, dn=dn, arg=arg, args=args)
@frappe.whitelist(allow_guest=True)
def logout():

View file

@ -38,14 +38,14 @@ website_generators = ["Web Page", "Blog Post", "Website Group", "Blog Category",
# permissions
permission_query_conditions = {
"Event": "frappe.desk_apps.doctype.event.event.get_permission_query_conditions",
"ToDo": "frappe.desk_apps.doctype.todo.todo.get_permission_query_conditions",
"Event": "frappe.desk.doctype.event.event.get_permission_query_conditions",
"ToDo": "frappe.desk.doctype.todo.todo.get_permission_query_conditions",
"User": "frappe.core.doctype.user.user.get_permission_query_conditions"
}
has_permission = {
"Event": "frappe.desk_apps.doctype.event.event.has_permission",
"ToDo": "frappe.desk_apps.doctype.todo.todo.has_permission",
"Event": "frappe.desk.doctype.event.event.has_permission",
"ToDo": "frappe.desk.doctype.todo.todo.has_permission",
"User": "frappe.core.doctype.user.user.has_permission"
}
@ -75,7 +75,7 @@ scheduler_events = {
"daily": [
"frappe.email.bulk.clear_outbox",
"frappe.core.doctype.notification_count.notification_count.clear_notifications",
"frappe.desk_apps.doctype.event.event.send_event_digest",
"frappe.desk.doctype.event.event.send_event_digest",
"frappe.sessions.clear_expired_sessions",
"frappe.email.doctype.email_alert.email_alert.trigger_daily_alerts",
],

View file

@ -4,4 +4,5 @@ Workflow
Email
Custom
Geo
Desk Apps
Desk Apps
Print

View file

@ -0,0 +1,84 @@
{
"autoname": "field:letter_head_name",
"creation": "2012-11-22 17:45:46",
"docstatus": 0,
"doctype": "DocType",
"fields": [
{
"fieldname": "letter_head_name",
"fieldtype": "Data",
"in_filter": 0,
"in_list_view": 1,
"label": "Letter Head Name",
"oldfieldname": "letter_head_name",
"oldfieldtype": "Data",
"permlevel": 0,
"reqd": 1
},
{
"depends_on": "letter_head_name",
"fieldname": "disabled",
"fieldtype": "Check",
"in_list_view": 1,
"label": "Disabled",
"oldfieldname": "disabled",
"oldfieldtype": "Check",
"permlevel": 0
},
{
"depends_on": "letter_head_name",
"description": "Check this to make this the default letter head in all prints",
"fieldname": "is_default",
"fieldtype": "Check",
"in_list_view": 1,
"label": "Is Default",
"oldfieldname": "is_default",
"oldfieldtype": "Check",
"permlevel": 0,
"search_index": 1
},
{
"depends_on": "letter_head_name",
"description": "Letter Head in HTML",
"fieldname": "content",
"fieldtype": "Text Editor",
"in_list_view": 1,
"label": "Content",
"oldfieldname": "content",
"oldfieldtype": "Text Editor",
"permlevel": 0
}
],
"icon": "icon-font",
"idx": 1,
"max_attachments": 3,
"modified": "2014-07-21 05:57:56.052192",
"modified_by": "Administrator",
"module": "Print",
"name": "Letter Head",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"delete": 1,
"email": 1,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"submit": 0,
"write": 1
},
{
"apply_user_permissions": 1,
"delete": 0,
"email": 0,
"permlevel": 0,
"print": 0,
"read": 1,
"report": 0,
"role": "All"
}
]
}

View file

@ -0,0 +1,157 @@
{
"allow_copy": 0,
"allow_rename": 0,
"autoname": "Prompt",
"creation": "2013-01-23 19:54:43",
"docstatus": 0,
"doctype": "DocType",
"fields": [
{
"description": "Belongs to",
"fieldname": "doc_type",
"fieldtype": "Link",
"in_filter": 1,
"in_list_view": 1,
"label": "DocType",
"options": "DocType",
"permlevel": 0,
"reqd": 1,
"search_index": 0
},
{
"allow_on_submit": 0,
"fieldname": "module",
"fieldtype": "Link",
"hidden": 0,
"in_filter": 1,
"in_list_view": 1,
"label": "Module",
"no_copy": 0,
"oldfieldname": "module",
"oldfieldtype": "Select",
"options": "Module Def",
"permlevel": 0,
"print_hide": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 1
},
{
"fieldname": "column_break_3",
"fieldtype": "Column Break",
"permlevel": 0
},
{
"allow_on_submit": 0,
"default": "No",
"fieldname": "standard",
"fieldtype": "Select",
"hidden": 0,
"in_filter": 1,
"in_list_view": 1,
"label": "Standard",
"no_copy": 1,
"oldfieldname": "standard",
"oldfieldtype": "Select",
"options": "No\nYes",
"permlevel": 1,
"print_hide": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 1
},
{
"default": "Server",
"description": "Client-side formats are now deprecated",
"fieldname": "print_format_type",
"fieldtype": "Select",
"in_list_view": 1,
"label": "Print Format Type",
"options": "Server\nClient",
"permlevel": 0,
"read_only": 0
},
{
"fieldname": "disabled",
"fieldtype": "Check",
"label": "Disabled",
"permlevel": 0
},
{
"fieldname": "section_break_6",
"fieldtype": "Section Break",
"permlevel": 0
},
{
"allow_on_submit": 0,
"depends_on": "",
"fieldname": "html",
"fieldtype": "Code",
"hidden": 0,
"in_filter": 0,
"label": "HTML",
"no_copy": 0,
"oldfieldname": "html",
"oldfieldtype": "Text Editor",
"options": "HTML",
"permlevel": 0,
"print_hide": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0
},
{
"fieldname": "print_format_help",
"fieldtype": "HTML",
"label": "Print Format Help",
"options": "<h3>Print Format Help</h3>\n<hr>\n<h4>Introduction</h4>\n<p>Print Formats are rendered on the server side using the Jinja Templating Language. All forms have access to the <code>doc</code> object which contains information about the document that is being formatted. You can also access common utilities via the <code>frappe</code> module.</p>\n<p>For styling, the Boostrap CSS framework is provided and you can enjoy the full range of classes.</p>\n<hr>\n<h4>References</h4>\n<ol>\n\t<li><a href=\"http://jinja.pocoo.org/docs/templates/\" target=\"_blank\">Jinja Tempalting Language: Reference</a></li>\n\t<li><a href=\"http://getbootstrap.com\" target=\"_blank\">Bootstrap CSS Framework</a></li>\n</ol>\n<hr>\n<h4>Example</h4>\n<pre><code>&lt;h3&gt;{{ doc.select_print_heading or \"Invoice\" }}&lt;/h3&gt;\n&lt;div class=\"row\"&gt;\n\t&lt;div class=\"col-md-3 text-right\"&gt;Customer Name&lt;/div&gt;\n\t&lt;div class=\"col-md-9\"&gt;{{ doc.customer_name }}&lt;/div&gt;\n&lt;/div&gt;\n&lt;div class=\"row\"&gt;\n\t&lt;div class=\"col-md-3 text-right\"&gt;Date&lt;/div&gt;\n\t&lt;div class=\"col-md-9\"&gt;{{ doc.get_formatted(\"invoice_date\") }}&lt;/div&gt;\n&lt;/div&gt;\n&lt;table class=\"table table-bordered\"&gt;\n\t&lt;tbody&gt;\n\t\t&lt;tr&gt;\n\t\t\t&lt;th&gt;Sr&lt;/th&gt;\n\t\t\t&lt;th&gt;Item Name&lt;/th&gt;\n\t\t\t&lt;th&gt;Description&lt;/th&gt;\n\t\t\t&lt;th class=\"text-right\"&gt;Qty&lt;/th&gt;\n\t\t\t&lt;th class=\"text-right\"&gt;Rate&lt;/th&gt;\n\t\t\t&lt;th class=\"text-right\"&gt;Amount&lt;/th&gt;\n\t\t&lt;/tr&gt;\n\t\t{%- for row in doc.entries -%}\n\t\t&lt;tr&gt;\n\t\t\t&lt;td style=\"width: 3%;\"&gt;{{ row.idx }}&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 20%;\"&gt;\n\t\t\t\t{{ row.item_name }}\n\t\t\t\t{% if row.item_code != row.item_name -%}\n\t\t\t\t&lt;br&gt;Item Code: {{ row.item_code}}\n\t\t\t\t{%- endif %}\n\t\t\t&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 37%;\"&gt;\n\t\t\t\t&lt;div style=\"border: 0px;\"&gt;{{ row.description }}&lt;/div&gt;&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 10%; text-align: right;\"&gt;{{ row.qty }} {{ row.uom or row.stock_uom }}&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 15%; text-align: right;\"&gt;{{\n\t\t\t\trow.get_formatted(\"rate\", doc) }}&lt;/td&gt;\n\t\t\t&lt;td style=\"width: 15%; text-align: right;\"&gt;{{\n\t\t\t\trow.get_formatted(\"amount\", doc) }}&lt;/td&gt;\n\t\t&lt;/tr&gt;\n\t\t{%- endfor -%}\n\t&lt;/tbody&gt;\n&lt;/table&gt;</code></pre>\n<hr>\n<h4>Common Functions</h4>\n<table class=\"table table-bordered\">\n\t<tbody>\n\t\t<tr>\n\t\t\t<td style=\"width: 30%\"><code>doc.get_formatted(\"[fieldname]\", [parent_doc])</code></td>\n\t\t\t<td>Get document value formatted as Date, Currency etc. Pass parent <code>doc</code> for curreny type fields.</td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td style=\"width: 30%\"><code>frappe.db.get_value(\"[doctype]\", \"[name]\", \"fieldname\")</code></td>\n\t\t\t<td>Get value from another document.</td>\n\t\t</tr>\n\t</tbody>\n</table>\n",
"permlevel": 0
}
],
"hide_heading": 0,
"hide_toolbar": 0,
"icon": "icon-print",
"idx": 1,
"in_create": 0,
"in_dialog": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2014-07-31 03:39:35.898712",
"modified_by": "Administrator",
"module": "Print",
"name": "Print Format",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"submit": 0,
"write": 1
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"permlevel": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"submit": 0
},
],
"read_only": 0,
"read_only_onload": 0,
"sort_field": "modified",
"sort_order": "DESC"
}

View file

@ -0,0 +1,96 @@
{
"creation": "2014-07-17 06:54:20.782907",
"docstatus": 0,
"doctype": "DocType",
"document_type": "System",
"fields": [
{
"fieldname": "pdf_settings",
"fieldtype": "Section Break",
"label": "PDF Settings",
"permlevel": 0
},
{
"default": "1",
"description": "Send Email Print Attachments as PDF (Recommended)",
"fieldname": "send_print_as_pdf",
"fieldtype": "Check",
"label": "Send Print as PDF",
"permlevel": 0
},
{
"default": "A4",
"fieldname": "pdf_page_size",
"fieldtype": "Select",
"label": "PDF Page Size",
"options": "A4\nLetter",
"permlevel": 0
},
{
"fieldname": "print_style_section",
"fieldtype": "Section Break",
"label": "Print Style",
"permlevel": 0
},
{
"default": "",
"fieldname": "print_style",
"fieldtype": "Select",
"in_list_view": 1,
"label": "Print Style",
"options": "Modern\nClassic\nStandard\nMonochrome",
"permlevel": 0
},
{
"fieldname": "column_break_6",
"fieldtype": "Column Break",
"permlevel": 0
},
{
"description": "In points. Default is 9.",
"fieldname": "font_size",
"fieldtype": "Float",
"label": "Font Size",
"permlevel": 0
},
{
"default": "1",
"description": "Print with Letterhead, unless unchecked in a particular Document",
"fieldname": "with_letterhead",
"fieldtype": "Check",
"label": "With Letterhead",
"permlevel": 0,
"reqd": 0
},
{
"fieldname": "section_break_8",
"fieldtype": "Section Break",
"permlevel": 0
},
{
"fieldname": "print_style_preview",
"fieldtype": "HTML",
"label": "Print Style Preview",
"permlevel": 0
}
],
"icon": "icon-cog",
"issingle": 1,
"modified": "2014-08-05 09:03:02.337356",
"modified_by": "Administrator",
"module": "Print",
"name": "Print Settings",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"permlevel": 0,
"read": 1,
"role": "System Manager",
"write": 1
}
],
"sort_field": "modified",
"sort_order": "DESC"
}

View file

@ -105,7 +105,7 @@ frappe.ui.form.AssignTo = Class.extend({
var args = me.dialog.get_values();
if(args && assign_to) {
return frappe.call({
method:'frappe.widgets.form.assign_to.add',
method:'frappe.desk.form.assign_to.add',
args: $.extend(args, {
doctype: me.frm.doctype,
name: me.frm.docname,
@ -135,7 +135,7 @@ frappe.ui.form.AssignTo = Class.extend({
remove: function(owner) {
var me = this;
frappe.call({
method:'frappe.widgets.form.assign_to.remove',
method:'frappe.desk.form.assign_to.remove',
args: {
doctype: me.frm.doctype,
name: me.frm.docname,

View file

@ -132,7 +132,7 @@ frappe.ui.form.Attachments = Class.extend({
var me = this;
return frappe.call({
method: 'frappe.widgets.form.utils.remove_attach',
method: 'frappe.desk.form.utils.remove_attach',
args: {
fid: fileid,
dt: me.frm.doctype,

View file

@ -144,7 +144,7 @@ frappe.ui.form.Comments = Class.extend({
insert_comment: function(comment_type, comment, btn) {
var me = this;
return frappe.call({
method: "frappe.widgets.form.utils.add_comment",
method: "frappe.desk.form.utils.add_comment",
args: {
doc:{
doctype: "Comment",

View file

@ -894,7 +894,7 @@ frappe.ui.form.ControlLink = frappe.ui.form.ControlData.extend({
return frappe.call({
type: "GET",
method:'frappe.widgets.search.search_link',
method:'frappe.desk.search.search_link',
no_spinner: true,
args: args,
callback: function(r) {

View file

@ -130,7 +130,7 @@ frappe.ui.form.InfoBar = Class.extend({
}
return frappe.call({
method: "frappe.widgets.form.utils.get_next",
method: "frappe.desk.form.utils.get_next",
args: {
doctype: me.frm.doctype,
value: me.frm.doc[order_by.split(" ")[0]],

View file

@ -65,7 +65,7 @@ frappe.ui.form.LinkSelector = Class.extend({
}
return frappe.call({
method: "frappe.widgets.search.search_widget",
method: "frappe.desk.search.search_widget",
type: "GET",
args: args,
callback: function(r) {

View file

@ -50,7 +50,7 @@ frappe.ui.form.LinkedWith = Class.extend({
</div></div>');
frappe.call({
method:"frappe.widgets.form.utils.get_linked_docs",
method:"frappe.desk.form.utils.get_linked_docs",
args: {
doctype: me.frm.doctype,
name: me.frm.docname,

View file

@ -10,7 +10,7 @@ frappe.ui.form.save = function(frm, action, callback, btn) {
check_name();
if(check_mandatory()) {
_call({
method: "frappe.widgets.form.save.savedocs",
method: "frappe.desk.form.save.savedocs",
args: { doc: frm.doc, action:action},
callback: function(r) {
$(document).trigger("save", [frm.doc]);
@ -25,7 +25,7 @@ frappe.ui.form.save = function(frm, action, callback, btn) {
var cancel = function() {
_call({
method: "frappe.widgets.form.save.cancel",
method: "frappe.desk.form.save.cancel",
args: { doctype: frm.doc.doctype, name: frm.doc.name },
callback: function(r) {
$(document).trigger("save", [frm.doc]);

View file

@ -94,7 +94,7 @@ frappe.ui.form.ScriptManager = Class.extend({
fetch = this.frm.fetch_dict[df.fieldname].columns.join(', ');
return frappe.call({
method:'frappe.widgets.form.utils.validate_link',
method:'frappe.desk.form.utils.validate_link',
type: "GET",
args: {
'value': value,

View file

@ -54,7 +54,7 @@ $.extend(frappe.model, {
cached_timestamp = cached_doc.modified;
}
return frappe.call({
method:'frappe.widgets.form.load.getdoctype',
method:'frappe.desk.form.load.getdoctype',
type: "GET",
args: {
doctype: doctype,
@ -99,7 +99,7 @@ $.extend(frappe.model, {
callback(name);
} else {
return frappe.call({
method: 'frappe.widgets.form.load.getdoc',
method: 'frappe.desk.form.load.getdoc',
type: "GET",
args: {
doctype: doctype,

View file

@ -232,7 +232,7 @@ frappe.ui.Listing = Class.extend({
me.set_working(true);
return frappe.call({
method: this.opts.method || 'frappe.widgets.query_builder.runquery',
method: this.opts.method || 'frappe.desk.query_builder.runquery',
type: "GET",
args: this.get_call_args(),
callback: function(r) {

View file

@ -22,7 +22,7 @@ frappe.ui.TagEditor = Class.extend({
if(me.initialized && !me.refreshing) {
var tag = tag.find('.tagit-label').text();
return frappe.call({
method: 'frappe.widgets.tags.add_tag',
method: 'frappe.desk.tags.add_tag',
args: me.get_args(tag),
callback: function(r) {
var user_tags = me.user_tags.split(",");
@ -37,7 +37,7 @@ frappe.ui.TagEditor = Class.extend({
if(!me.refreshing) {
var tag = tag.find('.tagit-label').text();
return frappe.call({
method: 'frappe.widgets.tags.remove_tag',
method: 'frappe.desk.tags.remove_tag',
args: me.get_args(tag),
callback: function(r) {
var user_tags = me.user_tags.split(",");

View file

@ -97,7 +97,7 @@ frappe.views.Calendar = Class.extend({
selectHelper: true,
events: function(start, end, callback) {
return frappe.call({
method: me.get_events_method || "frappe.widgets.calendar.get_events",
method: me.get_events_method || "frappe.desk.calendar.get_events",
type: "GET",
args: me.get_args(start, end),
callback: function(r) {
@ -185,7 +185,7 @@ frappe.views.Calendar = Class.extend({
var me = this;
frappe.model.remove_from_locals(me.doctype, event.name);
return frappe.call({
method: me.update_event_method || "frappe.widgets.calendar.update_event",
method: me.update_event_method || "frappe.desk.calendar.update_event",
args: me.get_update_args(event),
callback: function(r) {
if(r.exc) {

Some files were not shown because too many files have changed in this diff Show more