From f5794f1c0751224facb7fe88f1b384bb2497b2dc Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Mon, 3 Mar 2014 15:05:28 +0530 Subject: [PATCH] Module Home Pages using Module View --- .../accounts/page/accounts_home/__init__.py | 1 - .../page/accounts_home/accounts_home.js | 295 ----------------- .../page/accounts_home/accounts_home.txt | 22 -- erpnext/buying/page/buying_home/__init__.py | 1 - .../buying/page/buying_home/buying_home.js | 169 ---------- .../buying/page/buying_home/buying_home.txt | 22 -- erpnext/config/accounts.py | 298 ++++++++++++++++++ erpnext/config/buying.py | 164 ++++++++++ erpnext/config/desktop.py | 8 - erpnext/config/hr.py | 202 ++++++++++++ erpnext/config/manufacturing.py | 77 +++++ erpnext/config/projects.py | 66 ++++ erpnext/config/selling.py | 255 +++++++++++++++ erpnext/config/setup.py | 231 ++------------ erpnext/config/stock.py | 263 ++++++++++++++++ erpnext/config/support.py | 74 +++++ erpnext/config/website.py | 93 ++++++ erpnext/hr/page/hr_home/__init__.py | 1 - erpnext/hr/page/hr_home/hr_home.js | 212 ------------- erpnext/hr/page/hr_home/hr_home.txt | 22 -- erpnext/manufacturing/page/__init__.py | 1 - .../page/manufacturing_home/__init__.py | 1 - .../manufacturing_home/manufacturing_home.js | 93 ------ .../manufacturing_home/manufacturing_home.txt | 22 -- erpnext/patches.txt | 2 + .../patches/4_0/remove_module_home_pages.py | 10 + erpnext/projects/page/__init__.py | 1 - .../projects/page/projects_home/__init__.py | 1 - .../page/projects_home/projects_home.js | 80 ----- .../page/projects_home/projects_home.txt | 22 -- erpnext/selling/page/selling_home/__init__.py | 1 - .../selling/page/selling_home/selling_home.js | 239 -------------- .../page/selling_home/selling_home.txt | 33 -- .../website_item_group/website_item_group.txt | 5 +- erpnext/stock/page/stock_home/__init__.py | 1 - erpnext/stock/page/stock_home/stock_home.js | 257 --------------- erpnext/stock/page/stock_home/stock_home.txt | 22 -- erpnext/support/page/support_home/__init__.py | 1 - .../support/page/support_home/support_home.js | 99 ------ .../page/support_home/support_home.txt | 22 -- 40 files changed, 1535 insertions(+), 1854 deletions(-) delete mode 100644 erpnext/accounts/page/accounts_home/__init__.py delete mode 100644 erpnext/accounts/page/accounts_home/accounts_home.js delete mode 100644 erpnext/accounts/page/accounts_home/accounts_home.txt delete mode 100644 erpnext/buying/page/buying_home/__init__.py delete mode 100644 erpnext/buying/page/buying_home/buying_home.js delete mode 100644 erpnext/buying/page/buying_home/buying_home.txt create mode 100644 erpnext/config/accounts.py create mode 100644 erpnext/config/buying.py create mode 100644 erpnext/config/hr.py create mode 100644 erpnext/config/manufacturing.py create mode 100644 erpnext/config/projects.py create mode 100644 erpnext/config/selling.py create mode 100644 erpnext/config/stock.py create mode 100644 erpnext/config/support.py create mode 100644 erpnext/config/website.py delete mode 100644 erpnext/hr/page/hr_home/__init__.py delete mode 100644 erpnext/hr/page/hr_home/hr_home.js delete mode 100644 erpnext/hr/page/hr_home/hr_home.txt delete mode 100644 erpnext/manufacturing/page/__init__.py delete mode 100644 erpnext/manufacturing/page/manufacturing_home/__init__.py delete mode 100644 erpnext/manufacturing/page/manufacturing_home/manufacturing_home.js delete mode 100644 erpnext/manufacturing/page/manufacturing_home/manufacturing_home.txt create mode 100644 erpnext/patches/4_0/remove_module_home_pages.py delete mode 100644 erpnext/projects/page/__init__.py delete mode 100644 erpnext/projects/page/projects_home/__init__.py delete mode 100644 erpnext/projects/page/projects_home/projects_home.js delete mode 100644 erpnext/projects/page/projects_home/projects_home.txt delete mode 100644 erpnext/selling/page/selling_home/__init__.py delete mode 100644 erpnext/selling/page/selling_home/selling_home.js delete mode 100644 erpnext/selling/page/selling_home/selling_home.txt delete mode 100644 erpnext/stock/page/stock_home/__init__.py delete mode 100644 erpnext/stock/page/stock_home/stock_home.js delete mode 100644 erpnext/stock/page/stock_home/stock_home.txt delete mode 100644 erpnext/support/page/support_home/__init__.py delete mode 100644 erpnext/support/page/support_home/support_home.js delete mode 100644 erpnext/support/page/support_home/support_home.txt diff --git a/erpnext/accounts/page/accounts_home/__init__.py b/erpnext/accounts/page/accounts_home/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/accounts/page/accounts_home/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/accounts/page/accounts_home/accounts_home.js b/erpnext/accounts/page/accounts_home/accounts_home.js deleted file mode 100644 index f3c309884e..0000000000 --- a/erpnext/accounts/page/accounts_home/accounts_home.js +++ /dev/null @@ -1,295 +0,0 @@ -// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors -// License: GNU General Public License v3. See license.txt" - -frappe.module_page["Accounts"] = [ - { - top: true, - title: frappe._("Documents"), - icon: "icon-copy", - items: [ - { - label: frappe._("Journal Voucher"), - description: frappe._("Accounting journal entries."), - doctype:"Journal Voucher" - }, - { - label: frappe._("Sales Invoice"), - description: frappe._("Bills raised to Customers."), - doctype:"Sales Invoice" - }, - { - label: frappe._("Purchase Invoice"), - description: frappe._("Bills raised by Suppliers."), - doctype:"Purchase Invoice" - }, - ] - }, - { - title: frappe._("Masters"), - icon: "icon-book", - items: [ - { - label: frappe._("Chart of Accounts"), - route: "Accounts Browser/Account", - description: frappe._("Structure of books of accounts."), - doctype:"Account" - }, - { - label: frappe._("Chart of Cost Centers"), - route: "Accounts Browser/Cost Center", - description: frappe._("Structure cost centers for budgeting."), - doctype:"Cost Center" - }, - { - label: frappe._("Customer"), - description: frappe._("Customer database."), - doctype:"Customer" - }, - { - label: frappe._("Supplier"), - description: frappe._("Supplier database."), - doctype:"Supplier" - }, - ] - }, - { - title: frappe._("Setup"), - icon: "icon-wrench", - items: [ - { - label: frappe._("Company"), - description: frappe._("Company Master."), - doctype:"Company" - }, - { - label: frappe._("Fiscal Year"), - description: frappe._("Accounting Year."), - doctype:"Fiscal Year" - }, - ] - }, - { - title: frappe._("Tools"), - icon: "icon-wrench", - items: [ - { - "route":"Form/Bank Reconciliation/Bank Reconciliation", - "label": frappe._("Bank Reconciliation"), - "description": frappe._("Update bank payment dates with journals."), - doctype: "Bank Reconciliation" - }, - { - "route":"Form/Payment to Invoice Matching Tool/Payment to Invoice Matching Tool", - "label": frappe._("Payment Reconciliation"), - "description": frappe._("Match non-linked Invoices and Payments."), - doctype: "Payment to Invoice Matching Tool" - - }, - { - "label": frappe._("Period Closing Voucher"), - "doctype": "Period Closing Voucher", - description: frappe._("Close Balance Sheet and book Profit or Loss.") - }, - ] - }, - { - title: frappe._("Setup"), - icon: "icon-cog", - items: [ - { - "label": frappe._("Accounts Settings"), - "route": "Form/Accounts Settings", - "doctype":"Accounts Settings", - "description": frappe._("Settings for Accounts") - }, - { - "label": frappe._("Sales Taxes and Charges Master"), - "doctype":"Sales Taxes and Charges Master", - "description": frappe._("Tax Template for Sales") - }, - { - "label": frappe._("Purchase Taxes and Charges Master"), - "doctype":"Purchase Taxes and Charges Master", - "description": frappe._("Tax Template for Purchase") - }, - { - "label": frappe._("Shipping Rules"), - "doctype":"Shipping Rule", - "description": frappe._("Rules to calculate shipping amount for a sale") - }, - { - "label": frappe._("Currency Exchange"), - "doctype":"Currency Exchange", - "description": frappe._("Manage exchange rates for currency conversion") - }, - { - "label": frappe._("Point-of-Sale Setting"), - "doctype":"POS Setting", - "description": frappe._("User settings for Point-of-sale (POS)") - }, - { - "doctype":"Budget Distribution", - "label": frappe._("Budget Distribution"), - "description": frappe._("Seasonality for setting budgets.") - }, - { - "doctype":"Terms and Conditions", - "label": frappe._("Terms and Conditions Template"), - description: frappe._("Template of terms or contract.") - }, - { - "doctype":"Mode of Payment", - "label": frappe._("Mode of Payment"), - description: frappe._("e.g. Bank, Cash, Credit Card") - }, - { - "doctype":"C-Form", - "label": frappe._("C-Form"), - description: frappe._("C-Form records"), - country: "India" - } - ] - }, - { - title: frappe._("Main Reports"), - right: true, - icon: "icon-table", - items: [ - { - "label":frappe._("General Ledger"), - doctype: "GL Entry", - route: "query-report/General Ledger" - }, - { - "label":frappe._("Trial Balance"), - page: "trial-balance" - }, - { - "page":"Financial Statements", - "label": frappe._("Financial Statements") - }, - { - "label":frappe._("Accounts Receivable"), - route: "query-report/Accounts Receivable", - doctype: "Sales Invoice" - }, - { - "label":frappe._("Accounts Payable"), - route: "query-report/Accounts Payable", - doctype: "Purchase Invoice" - }, - { - "label":frappe._("Sales Register"), - route: "query-report/Sales Register", - doctype: "Sales Invoice" - }, - { - "label":frappe._("Purchase Register"), - route: "query-report/Purchase Register", - doctype: "Purchase Invoice" - }, - ] - }, - { - title: frappe._("Analytics"), - right: true, - icon: "icon-bar-chart", - items: [ - { - "label":frappe._("Financial Analytics"), - page: "financial-analytics" - }, - { - "label":frappe._("Gross Profit"), - route: "query-report/Gross Profit", - doctype: "Sales Invoice" - }, - ] - }, - { - title: frappe._("Reports"), - right: true, - icon: "icon-list", - items: [ - { - "label":frappe._("Bank Reconciliation Statement"), - route: "query-report/Bank Reconciliation Statement", - doctype: "Journal Voucher" - }, - { - "label":frappe._("Ordered Items To Be Billed"), - route: "query-report/Ordered Items To Be Billed", - doctype: "Sales Invoice" - }, - { - "label":frappe._("Delivered Items To Be Billed"), - route: "query-report/Delivered Items To Be Billed", - doctype: "Sales Invoice" - }, - { - "label":frappe._("Purchase Order Items To Be Billed"), - route: "query-report/Purchase Order Items To Be Billed", - doctype: "Purchase Invoice" - }, - { - "label":frappe._("Received Items To Be Billed"), - route: "query-report/Received Items To Be Billed", - doctype: "Purchase Invoice" - }, - { - "label":frappe._("Bank Clearance Summary"), - route: "query-report/Bank Clearance Summary", - doctype: "Journal Voucher" - }, - { - "label":frappe._("Payment Period Based On Invoice Date"), - route: "query-report/Payment Period Based On Invoice Date", - doctype: "Journal Voucher" - }, - { - "label":frappe._("Sales Partners Commission"), - route: "query-report/Sales Partners Commission", - doctype: "Sales Invoice" - }, - { - "label":frappe._("Customer Account Head"), - route: "query-report/Customer Account Head", - doctype: "Account" - }, - { - "label":frappe._("Supplier Account Head"), - route: "query-report/Supplier Account Head", - doctype: "Account" - }, - { - "label":frappe._("Item-wise Sales Register"), - route: "query-report/Item-wise Sales Register", - doctype: "Sales Invoice" - }, - { - "label":frappe._("Item-wise Purchase Register"), - route: "query-report/Item-wise Purchase Register", - doctype: "Purchase Invoice" - }, - { - "label":frappe._("Budget Variance Report"), - route: "query-report/Budget Variance Report", - doctype: "Cost Center" - }, - { - "label":frappe._("Purchase Invoice Trends"), - route: "query-report/Purchase Invoice Trends", - doctype: "Purchase Invoice" - }, - { - "label":frappe._("Sales Invoice Trends"), - route: "query-report/Sales Invoice Trends", - doctype: "Sales Invoice" - }, - ] - } -] - -pscript['onload_accounts-home'] = function(wrapper) { - frappe.views.moduleview.make(wrapper, "Accounts"); -} \ No newline at end of file diff --git a/erpnext/accounts/page/accounts_home/accounts_home.txt b/erpnext/accounts/page/accounts_home/accounts_home.txt deleted file mode 100644 index 3753617339..0000000000 --- a/erpnext/accounts/page/accounts_home/accounts_home.txt +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "creation": "2012-06-14 15:07:28", - "docstatus": 0, - "modified": "2013-07-11 14:40:16", - "modified_by": "Administrator", - "owner": "Administrator" - }, - { - "doctype": "Page", - "icon": "icon-th", - "module": "Accounts", - "name": "__common__", - "page_name": "accounts-home", - "standard": "Yes", - "title": "Accounts Home" - }, - { - "doctype": "Page", - "name": "accounts-home" - } -] \ No newline at end of file diff --git a/erpnext/buying/page/buying_home/__init__.py b/erpnext/buying/page/buying_home/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/buying/page/buying_home/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/buying/page/buying_home/buying_home.js b/erpnext/buying/page/buying_home/buying_home.js deleted file mode 100644 index 2ba476121a..0000000000 --- a/erpnext/buying/page/buying_home/buying_home.js +++ /dev/null @@ -1,169 +0,0 @@ -// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors -// License: GNU General Public License v3. See license.txt" - -frappe.module_page["Buying"] = [ - { - title: frappe._("Documents"), - top: true, - icon: "icon-copy", - items: [ - { - label: frappe._("Supplier"), - description: frappe._("Supplier database."), - doctype:"Supplier" - }, - { - label: frappe._("Material Request"), - description: frappe._("Request for purchase."), - doctype:"Material Request" - }, - { - label: frappe._("Supplier Quotation"), - description: frappe._("Quotations received from Suppliers."), - doctype:"Supplier Quotation" - }, - { - label: frappe._("Purchase Order"), - description: frappe._("Purchase Orders given to Suppliers."), - doctype:"Purchase Order" - }, - ] - }, - { - title: frappe._("Masters"), - icon: "icon-book", - items: [ - { - label: frappe._("Contact"), - description: frappe._("All Contacts."), - doctype:"Contact" - }, - { - label: frappe._("Address"), - description: frappe._("All Addresses."), - doctype:"Address" - }, - { - label: frappe._("Item"), - description: frappe._("All Products or Services."), - doctype:"Item" - }, - ] - }, - { - title: frappe._("Setup"), - icon: "icon-cog", - items: [ - { - "label": frappe._("Buying Settings"), - "route": "Form/Buying Settings", - "doctype":"Buying Settings", - "description": frappe._("Settings for Buying Module") - }, - { - "label": frappe._("Purchase Taxes and Charges Master"), - "doctype":"Purchase Taxes and Charges Master", - "description": frappe._("Tax Template for Purchase") - }, - { - label: frappe._("Price List"), - description: frappe._("Multiple Price list."), - doctype:"Price List" - }, - { - label: frappe._("Item Price"), - description: frappe._("Multiple Item prices."), - doctype:"Item Price" - }, - { - "doctype":"Supplier Type", - "label": frappe._("Supplier Type"), - "description": frappe._("Supplier classification.") - }, - { - "route":"Sales Browser/Item Group", - "label":frappe._("Item Group"), - "description": frappe._("Tree of item classification"), - doctype:"Item Group" - }, - { - label: frappe._("Terms and Conditions"), - description: frappe._("Template of terms or contract."), - doctype:"Terms and Conditions" - }, - ] - }, - { - title: frappe._("Tools"), - icon: "icon-wrench", - items: [ - ] - }, - { - title: frappe._("Analytics"), - right: true, - icon: "icon-bar-chart", - items: [ - { - "label":frappe._("Purchase Analytics"), - page: "purchase-analytics" - }, - ] - }, - { - title: frappe._("Reports"), - right: true, - icon: "icon-list", - items: [ - { - "label":frappe._("Items To Be Requested"), - route: "query-report/Items To Be Requested", - doctype: "Item" - }, - { - "label":frappe._("Requested Items To Be Ordered"), - route: "query-report/Requested Items To Be Ordered", - doctype: "Material Request" - }, - { - "label":frappe._("Material Requests for which Supplier Quotations are not created"), - route: "query-report/Material Requests for which Supplier Quotations are not created", - doctype: "Material Request" - }, - { - "label":frappe._("Purchase In Transit"), - route: "query-report/Purchase In Transit", - doctype: "Purchase Order" - }, - { - "label":frappe._("Item-wise Purchase History"), - route: "query-report/Item-wise Purchase History", - doctype: "Item" - }, - { - "label":frappe._("Item-wise Last Purchase Rate"), - route: "query-report/Item-wise Last Purchase Rate", - doctype: "Item" - }, - { - "label":frappe._("Purchase Order Trends"), - route: "query-report/Purchase Order Trends", - doctype: "Purchase Order" - }, - { - "label":frappe._("Supplier Addresses And Contacts"), - route: "query-report/Supplier Addresses and Contacts", - doctype: "Supplier" - }, - { - "label":frappe._("Supplier-Wise Sales Analytics"), - route: "query-report/Supplier-Wise Sales Analytics", - doctype: "Stock Ledger Entry" - } - ] - } -] - -pscript['onload_buying-home'] = function(wrapper) { - frappe.views.moduleview.make(wrapper, "Buying"); -} diff --git a/erpnext/buying/page/buying_home/buying_home.txt b/erpnext/buying/page/buying_home/buying_home.txt deleted file mode 100644 index 49a782fff8..0000000000 --- a/erpnext/buying/page/buying_home/buying_home.txt +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "creation": "2012-02-21 13:22:54", - "docstatus": 0, - "modified": "2013-07-11 14:41:50", - "modified_by": "Administrator", - "owner": "Administrator" - }, - { - "doctype": "Page", - "icon": "icon-th", - "module": "Buying", - "name": "__common__", - "page_name": "buying-home", - "standard": "Yes", - "title": "Buying Home" - }, - { - "doctype": "Page", - "name": "buying-home" - } -] \ No newline at end of file diff --git a/erpnext/config/accounts.py b/erpnext/config/accounts.py new file mode 100644 index 0000000000..7ae67fa18b --- /dev/null +++ b/erpnext/config/accounts.py @@ -0,0 +1,298 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Journal Voucher", + "description": _("Accounting journal entries.") + }, + { + "type": "doctype", + "name": "Sales Invoice", + "description": _("Bills raised to Customers.") + }, + { + "type": "doctype", + "name": "Purchase Invoice", + "description": _("Bills raised by Suppliers.") + }, + { + "type": "doctype", + "name": "Customer", + "description": _("Customer database.") + }, + { + "type": "doctype", + "name": "Supplier", + "description": _("Supplier database.") + }, + ] + }, + { + "label": _("Tools"), + "icon": "icon-wrench", + "items": [ + { + "type": "doctype", + "name": "Bank Reconciliation", + "description": _("Update bank payment dates with journals.") + }, + { + "type": "doctype", + "name": "Payment to Invoice Matching Tool", + "description": _("Match non-linked Invoices and Payments.") + }, + { + "type": "doctype", + "name": "Period Closing Voucher", + "description": _("Close Balance Sheet and book Profit or Loss.") + }, + ] + }, + { + "label": _("Setup"), + "icon": "icon-cog", + "items": [ + { + "type": "doctype", + "name": "Fiscal Year", + "description": _("Financial / accounting year.") + }, + { + "type": "page", + "name": "Accounts Browser", + "icon": "icon-sitemap", + "label": _("Chart of Accounts"), + "route": "Accounts Browser/Account", + "description": _("Tree of finanial accounts."), + "doctype": "Account", + }, + { + "type": "page", + "name": "Accounts Browser", + "icon": "icon-sitemap", + "label": _("Chart of Cost Centers"), + "route": "Accounts Browser/Cost Center", + "description": _("Tree of finanial Cost Centers."), + "doctype": "Cost Center", + }, + { + "type": "doctype", + "name": "Accounts Settings", + "description": _("Default settings for accounting transactions.") + }, + { + "type": "doctype", + "name": "Sales Taxes and Charges Master", + "description": _("Tax template for selling transactions.") + }, + { + "type": "doctype", + "name": "Purchase Taxes and Charges Master", + "description": _("Tax template for buying transactions.") + }, + { + "type": "doctype", + "name": "POS Setting", + "label": _("Point-of-Sale Setting"), + "description": _("Rules to calculate shipping amount for a sale") + }, + { + "type": "doctype", + "name": "Shipping Rules", + "description": _("Rules for adding shipping costs.") + }, + { + "type": "doctype", + "name": "Currency", + "description": _("Enable / disable currencies.") + }, + { + "type": "doctype", + "name": "Currency Exchange", + "description": _("Currency exchange rate master.") + }, + { + "type":"doctype", + "name": "Budget Distribution", + "description": _("Seasonality for setting budgets.") + }, + { + "type": "doctype", + "name":"Terms and Conditions", + "label": _("Terms and Conditions Template"), + "description": _("Template of terms or contract.") + }, + { + "type": "doctype", + "name":"Mode of Payment", + "description": _("e.g. Bank, Cash, Credit Card") + }, + { + "type": "doctype", + "name":"C-Form", + "description": _("C-Form records"), + "country": "India" + } + ] + }, + { + "label": _("Main Reports"), + "icon": "icon-table", + "items": [ + { + "type": "report", + "name":"General Ledger", + "doctype": "GL Entry", + "is_query_report": True, + }, + { + "type": "page", + "name": "trial-balance", + "label": _("Trial Balance"), + "icon": "icon-table" + }, + { + "type": "page", + "name":"Financial Statements", + "icon": "icon-table" + }, + { + "type": "report", + "name": "Accounts Receivable", + "doctype": "Sales Invoice", + "is_query_report": True + }, + { + "type": "report", + "name": "Accounts Payable", + "doctype": "Purchase Invoice", + "is_query_report": True + }, + { + "type": "report", + "name": "Sales Register", + "doctype": "Sales Invoice", + "is_query_report": True + }, + { + "type": "report", + "name": "Purchase Register", + "doctype": "Purchase Invoice", + "is_query_report": True + }, + { + "type": "page", + "name": "financial-analytics", + "label": _("Financial Analytics"), + "icon": "icon-bar-chart", + }, + { + "type": "report", + "name": "Gross Profit", + "doctype": "Sales Invoice", + "is_query_report": True + }, + ] + }, + { + "label": _("Standard Reports"), + "icon": "icon-list", + "items": [ + { + "type": "report", + "name": "Bank Reconciliation Statement", + "is_query_report": True, + "doctype": "Journal Voucher" + }, + { + "type": "report", + "name": "Ordered Items To Be Billed", + "is_query_report": True, + "doctype": "Sales Invoice" + }, + { + "type": "report", + "name": "Delivered Items To Be Billed", + "is_query_report": True, + "doctype": "Sales Invoice" + }, + { + "type": "report", + "name": "Purchase Order Items To Be Billed", + "is_query_report": True, + "doctype": "Purchase Invoice" + }, + { + "type": "report", + "name": "Received Items To Be Billed", + "is_query_report": True, + "doctype": "Purchase Invoice" + }, + { + "type": "report", + "name": "Bank Clearance Summary", + "is_query_report": True, + "doctype": "Journal Voucher" + }, + { + "type": "report", + "name": "Payment Period Based On Invoice Date", + "is_query_report": True, + "doctype": "Journal Voucher" + }, + { + "type": "report", + "name": "Sales Partners Commission", + "is_query_report": True, + "doctype": "Sales Invoice" + }, + { + "type": "report", + "name": "Customer Account Head", + "is_query_report": True, + "doctype": "Account" + }, + { + "type": "report", + "name": "Supplier Account Head", + "is_query_report": True, + "doctype": "Account" + }, + { + "type": "report", + "name": "Item-wise Sales Register", + "is_query_report": True, + "doctype": "Sales Invoice" + }, + { + "type": "report", + "name": "Item-wise Purchase Register", + "is_query_report": True, + "doctype": "Purchase Invoice" + }, + { + "type": "report", + "name": "Budget Variance Report", + "is_query_report": True, + "doctype": "Cost Center" + }, + { + "type": "report", + "name": "Purchase Invoice Trends", + "is_query_report": True, + "doctype": "Purchase Invoice" + }, + { + "type": "report", + "name": "Sales Invoice Trends", + "is_query_report": True, + "doctype": "Sales Invoice" + }, + ] + }, +] \ No newline at end of file diff --git a/erpnext/config/buying.py b/erpnext/config/buying.py new file mode 100644 index 0000000000..41f689f287 --- /dev/null +++ b/erpnext/config/buying.py @@ -0,0 +1,164 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Supplier", + "description": _("Supplier database."), + }, + { + "type": "doctype", + "name": "Material Request", + "description": _("Request for purchase."), + }, + { + "type": "doctype", + "name": "Supplier Quotation", + "description": _("Quotations received from Suppliers."), + }, + { + "type": "doctype", + "name": "Purchase Order", + "description": _("Purchase Orders given to Suppliers."), + }, + { + "type": "doctype", + "name": "Contact", + "description": _("All Contacts."), + }, + { + "type": "doctype", + "name": "Address", + "description": _("All Addresses."), + }, + { + "type": "doctype", + "name": "Item", + "description": _("All Products or Services."), + }, + ] + }, + { + "label": _("Setup"), + "icon": "icon-cog", + "items": [ + { + "type": "doctype", + "name": "Buying Settings", + "description": _("Default settings for buying transactions.") + }, + { + "type": "doctype", + "name": "Supplier Type", + "description": _("Supplier Type master.") + }, + { + "type": "page", + "name": "Sales Browser", + "icon": "icon-sitemap", + "label": _("Item Group Tree"), + "link": "Sales Browser/Item Group", + "description": _("Tree of Item Groups."), + "doctype": "Item Group", + }, + { + "type": "doctype", + "name":"Terms and Conditions", + "label": _("Terms and Conditions Template"), + "description": _("Template of terms or contract.") + }, + { + "type": "doctype", + "name": "Purchase Taxes and Charges Master", + "description": _("Tax template for buying transactions.") + }, + { + "type": "doctype", + "name": "Price List", + "description": _("Price List master.") + }, + { + "type": "doctype", + "name": "Item Price", + "description": _("Multiple Item prices."), + "route": "Report/Item Price" + }, + ] + }, + { + "label": _("Main Reports"), + "icon": "icon-table", + "items": [ + { + "type": "page", + "name": "purchase-analytics", + "label": _("Purchase Analytics"), + "icon": "icon-bar-chart", + }, + ] + }, + { + "label": _("Standard Reports"), + "icon": "icon-list", + "items": [ + { + "type": "report", + "is_query_report": True, + "name": "Items To Be Requested", + "doctype": "Item" + }, + { + "type": "report", + "is_query_report": True, + "name": "Requested Items To Be Ordered", + "doctype": "Material Request" + }, + { + "type": "report", + "is_query_report": True, + "name": "Material Requests for which Supplier Quotations are not created", + "doctype": "Material Request" + }, + { + "type": "report", + "is_query_report": True, + "name": "Purchase In Transit", + "doctype": "Purchase Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Item-wise Purchase History", + "doctype": "Item" + }, + { + "type": "report", + "is_query_report": True, + "name": "Item-wise Last Purchase Rate", + "doctype": "Item" + }, + { + "type": "report", + "is_query_report": True, + "name": "Purchase Order Trends", + "doctype": "Purchase Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Supplier Addresses And Contacts", + "doctype": "Supplier" + }, + { + "type": "report", + "is_query_report": True, + "name": "Supplier-Wise Sales Analytics", + "doctype": "Stock Ledger Entry" + } + ] + }, +] \ No newline at end of file diff --git a/erpnext/config/desktop.py b/erpnext/config/desktop.py index 7aeff66899..700013fcd9 100644 --- a/erpnext/config/desktop.py +++ b/erpnext/config/desktop.py @@ -4,7 +4,6 @@ data = { "Accounts": { "color": "#3498db", "icon": "icon-money", - "link": "accounts-home", "type": "module" }, "Activity": { @@ -17,20 +16,17 @@ data = { "Buying": { "color": "#c0392b", "icon": "icon-shopping-cart", - "link": "buying-home", "type": "module" }, "HR": { "color": "#2ecc71", "icon": "icon-group", "label": _("Human Resources"), - "link": "hr-home", "type": "module" }, "Manufacturing": { "color": "#7f8c8d", "icon": "icon-cogs", - "link": "manufacturing-home", "type": "module" }, "Notes": { @@ -44,25 +40,21 @@ data = { "Projects": { "color": "#8e44ad", "icon": "icon-puzzle-piece", - "link": "projects-home", "type": "module" }, "Selling": { "color": "#1abc9c", "icon": "icon-tag", - "link": "selling-home", "type": "module" }, "Stock": { "color": "#f39c12", "icon": "icon-truck", - "link": "stock-home", "type": "module" }, "Support": { "color": "#2c3e50", "icon": "icon-phone", - "link": "support-home", "type": "module" } } \ No newline at end of file diff --git a/erpnext/config/hr.py b/erpnext/config/hr.py new file mode 100644 index 0000000000..6739893d8a --- /dev/null +++ b/erpnext/config/hr.py @@ -0,0 +1,202 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Employee", + "description": _("Employee records."), + }, + { + "type": "doctype", + "name": "Salary Slip", + "description": _("Monthly salary statement."), + }, + { + "type": "doctype", + "name": "Leave Application", + "description": _("Applications for leave."), + }, + { + "type": "doctype", + "name": "Attendance", + "description": _("Attendance record."), + }, + { + "type": "doctype", + "name": "Expense Claim", + "description": _("Claims for company expense."), + }, + { + "type": "doctype", + "name": "Appraisal", + "description": _("Performance appraisal."), + }, + { + "type": "doctype", + "name": "Job Applicant", + "description": _("Applicant for a Job."), + }, + { + "type": "doctype", + "name": "Job Opening", + "description": _("Opening for a Job."), + }, + ] + }, + { + "label": _("Tools"), + "icon": "icon-wrench", + "items": [ + { + "type": "doctype", + "name": "Salary Manager", + "label": _("Process Payroll"), + "description":_("Generate Salary Slips"), + "hide_count": True + }, + { + "type": "doctype", + "name": "Upload Attendance", + "description":_("Upload attendance from a .csv file"), + "hide_count": True + }, + { + "type": "doctype", + "name": "Leave Control Panel", + "label": _("Leave Allocation Tool"), + "description":_("Allocate leaves for the year."), + "hide_count": True + }, + ] + }, + { + "label": _("Setup"), + "icon": "icon-cog", + "items": [ + { + "type": "doctype", + "name": "HR Settings", + "description": _("Settings for HR Module") + }, + { + "type": "doctype", + "name": "Employee", + "description": _("Employee master.") + }, + { + "type": "doctype", + "name": "Employment Type", + "description": _("Types of employment (permanent, contract, intern etc.).") + }, + { + "type": "doctype", + "name": "Branch", + "description": _("Organization branch master.") + }, + { + "type": "doctype", + "name": "Department", + "description": _("Organization unit (department) master.") + }, + { + "type": "doctype", + "name": "Grade", + "description": _("Employee grade.") + }, + { + "type": "doctype", + "name": "Designation", + "description": _("Employee designation (e.g. CEO, Director etc.).") + }, + { + "type": "doctype", + "name": "Salary Structure", + "description": _("Salary template master.") + }, + { + "type": "doctype", + "name": "Earning Type", + "description": _("Salary components.") + }, + { + "type": "doctype", + "name": "Deduction Type", + "description": _("Tax and other salary deductions.") + }, + { + "type": "doctype", + "name": "Leave Allocation", + "description": _("Allocate leaves for a period.") + }, + { + "type": "doctype", + "name":"Leave Type", + "description": _("Type of leaves like casual, sick etc."), + }, + { + "type": "doctype", + "name": "Holiday List", + "description": _("Holiday master.") + }, + { + "type": "doctype", + "name": "Leave Block List", + "description": _("Block leave applications by department.") + }, + { + "type": "doctype", + "name": "Appraisal Template", + "description": _("Template for performance appraisals.") + }, + { + "type": "doctype", + "name": "Expense Claim Type", + "description": _("Types of Expense Claim.") + }, + { + "type": "doctype", + "name": "Jobs Email Settings", + "description": _("Setup incoming server for jobs email id. (e.g. jobs@example.com)") + }, + ] + }, + { + "label": _("Standard Reports"), + "icon": "icon-list", + "items": [ + { + "type": "report", + "is_query_report": True, + "name": "Employee Leave Balance", + "doctype": "Leave Application" + }, + { + "type": "report", + "is_query_report": True, + "name": "Employee Birthday", + "doctype": "Employee" + }, + { + "type": "report", + "name": "Employee Information", + "doctype": "Employee" + }, + { + "type": "report", + "is_query_report": True, + "name": "Monthly Salary Register", + "doctype": "Salary Slip" + }, + { + "type": "report", + "is_query_report": True, + "name": "Monthly Attendance Sheet", + "doctype": "Attendance" + }, + ] + }, +] \ No newline at end of file diff --git a/erpnext/config/manufacturing.py b/erpnext/config/manufacturing.py new file mode 100644 index 0000000000..618fa14d17 --- /dev/null +++ b/erpnext/config/manufacturing.py @@ -0,0 +1,77 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Bill of Materials", + "description": _("Bill of Materials (BOM)"), + }, + { + "type": "doctype", + "name": "Production Order", + "description": _("Orders released for production."), + }, + { + "type": "doctype", + "name": "Item", + "description": _("All Products or Services."), + }, + { + "type": "doctype", + "name": "Workstation", + "description": _("Where manufacturing operations are carried out."), + }, + + ] + }, + { + "label": _("Tools"), + "icon": "icon-wrench", + "items": [ + { + "type": "doctype", + "name": "Production Planning Tool", + "description": _("Generate Material Requests (MRP) and Production Orders."), + }, + { + "type": "doctype", + "name": "BOM Replace Tool", + "description": _("Replace Item / BOM in all BOMs"), + }, + ] + }, + { + "label": _("Standard Reports"), + "icon": "icon-list", + "items": [ + { + "type": "report", + "is_query_report": True, + "name": "Open Production Orders", + "doctype": "Production Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Production Orders in Progress", + "doctype": "Production Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Issued Items Against Production Order", + "doctype": "Production Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Completed Production Orders", + "doctype": "Production Order" + }, + ] + }, +] \ No newline at end of file diff --git a/erpnext/config/projects.py b/erpnext/config/projects.py new file mode 100644 index 0000000000..0785a4b0a6 --- /dev/null +++ b/erpnext/config/projects.py @@ -0,0 +1,66 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Task",, + "description": _("Project activity / task."), + }, + { + "type": "doctype", + "name": "Project",, + "description": _("Project master."), + }, + { + "type": "doctype", + "name": "Time Log",, + "description": _("Time Log for tasks."), + }, + { + "type": "doctype", + "name": "Time Log Batch",, + "description": _("Batch Time Logs for billing."), + }, + { + "type": "doctype", + "name": "Activity Type", + "description": _("Types of activities for Time Sheets"), + }, + ] + }, + { + "label": _("Tools"), + "icon": "icon-wrench", + "items": [ + { + "type": "report", + "route": "Gantt/Task", + "doctype": "Task" + "name": "Gantt Chart", + "description": _("Gantt chart of all tasks.") + }, + ] + }, + { + "label": _("Standard Reports"), + "icon": "icon-list", + "items": [ + { + "type": "report", + "is_query_report": True, + "name": "Daily Time Log Summary", + "doctype": "Time Log" + }, + { + "type": "report", + "is_query_report": True, + "name": "Project wise Stock Tracking", + "doctype": "Project" + }, + ] + }, +] \ No newline at end of file diff --git a/erpnext/config/selling.py b/erpnext/config/selling.py new file mode 100644 index 0000000000..2646167f3a --- /dev/null +++ b/erpnext/config/selling.py @@ -0,0 +1,255 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Lead", + "description": _("Database of potential customers."), + }, + { + "type": "doctype", + "name": "Customer", + "description": _("Customer database."), + }, + { + "type": "doctype", + "name": "Opportunity", + "description": _("Potential opportunities for selling."), + }, + { + "type": "doctype", + "name": "Quotation", + "description": _("Quotes to Leads or Customers."), + }, + { + "type": "doctype", + "name": "Sales Order", + "description": _("Confirmed orders from Customers."), + }, + { + "type": "doctype", + "name": "Contact", + "description": _("All Contacts."), + }, + { + "type": "doctype", + "name": "Address", + "description": _("All Addresses."), + }, + { + "type": "doctype", + "name": "Item", + "description": _("All Products or Services."), + }, + ] + }, + { + "label": _("Tools"), + "icon": "icon-wrench", + "items": [ + { + "type": "doctype", + "name": "SMS Center", + "description":_("Send mass SMS to your contacts"), + }, + ] + }, + { + "label": _("Setup"), + "icon": "icon-cog", + "items": [ + { + "type": "doctype", + "name": "Selling Settings", + "description": _("Default settings for selling transactions.") + }, + { + "type": "doctype", + "name": "Campaign", + "description": _("Sales campaigns."), + }, + { + "type": "page", + "label": _("Customer Group"), + "name": "Sales Browser", + "icon": "icon-sitemap", + "link": "Sales Browser/Customer Group", + "description": _("Manage Customer Group Tree."), + "doctype": "Customer Group", + }, + { + "type": "page", + "label": _("Territory"), + "name": "Sales Browser", + "icon": "icon-sitemap", + "link": "Sales Browser/Territory", + "description": _("Manage Territory Tree."), + "doctype": "Territory", + }, + { + "type": "page", + "label": _("Sales Person"), + "name": "Sales Browser", + "icon": "icon-sitemap", + "link": "Sales Browser/Sales Person", + "description": _("Manage Sales Person Tree."), + "doctype": "Sales Person", + }, + { + "type": "page", + "name": "Sales Browser", + "icon": "icon-sitemap", + "label": _("Item Group Tree"), + "link": "Sales Browser/Item Group", + "description": _("Tree of Item Groups."), + "doctype": "Item Group", + }, + { + "type": "doctype", + "name":"Terms and Conditions", + "label": _("Terms and Conditions Template"), + "description": _("Template of terms or contract.") + }, + { + "type": "doctype", + "name": "Sales Taxes and Charges Master", + "description": _("Tax template for selling transactions.") + }, + { + "type": "doctype", + "name": "Shipping Rules", + "description": _("Rules for adding shipping costs.") + }, + { + "type": "doctype", + "name": "Price List", + "description": _("Price List master.") + }, + { + "type": "doctype", + "name": "Item Price", + "description": _("Multiple Item prices."), + "route": "Report/Item Price" + }, + { + "type": "doctype", + "name": "Sales BOM", + "description": _("Bundle items at time of sale."), + }, + { + "type": "doctype", + "name": "Sales Email Settings", + "description": _("Setup incoming server for sales email id. (e.g. sales@example.com)") + }, + ] + }, + { + "label": _("Main Reports"), + "icon": "icon-table", + "items": [ + { + "type": "page", + "name": "sales-analytics", + "label": _("Sales Analytics"), + "icon": "icon-bar-chart", + }, + { + "type": "page", + "name": "sales-funnel", + "label": _("Sales Funnel"), + "icon": "icon-bar-chart", + }, + { + "type": "report", + "is_query_report": True, + "name": "Customer Acquisition and Loyalty", + "doctype": "Customer", + "icon": "icon-bar-chart", + }, + ] + }, + { + "label": _("Standard Reports"), + "icon": "icon-list", + "items": [ + { + "type": "report", + "is_query_report": True, + "name": "Lead Details", + "doctype": "Lead" + }, + { + "type": "report", + "is_query_report": True, + "name": "Customer Addresses And Contacts", + "doctype": "Contact" + }, + { + "type": "report", + "is_query_report": True, + "name": "Ordered Items To Be Delivered", + "doctype": "Sales Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Sales Person-wise Transaction Summary", + "doctype": "Sales Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Item-wise Sales History", + "doctype": "Item" + }, + { + "type": "report", + "is_query_report": True, + "name": "Territory Target Variance (Item Group-Wise)", + "route": "query-report/Territory Target Variance Item Group-Wise", + "doctype": "Territory" + }, + { + "type": "report", + "is_query_report": True, + "name": "Sales Person Target Variance (Item Group-Wise)", + "route": "query-report/Sales Person Target Variance Item Group-Wise", + "doctype": "Sales Person", + }, + { + "type": "report", + "is_query_report": True, + "name": "Customers Not Buying Since Long Time", + "doctype": "Sales Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Quotation Trend", + "doctype": "Quotation" + }, + { + "type": "report", + "is_query_report": True, + "name": "Sales Order Trends", + "doctype": "Sales Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Available Stock for Packing Items", + "doctype": "Item", + }, + { + "type": "report", + "is_query_report": True, + "name": "Pending SO Items For Purchase Request", + "doctype": "Sales Order" + }, + ] + }, +] \ No newline at end of file diff --git a/erpnext/config/setup.py b/erpnext/config/setup.py index be096d81c3..8c2b377d20 100644 --- a/erpnext/config/setup.py +++ b/erpnext/config/setup.py @@ -1,4 +1,5 @@ from frappe import _ +from frappe.widgets.moduleview import get_config data = [ { @@ -85,207 +86,31 @@ data = [ }, ] }, - { - "label": _("Accounts"), - "icon": "icon-money", - "items": [ - { - "type": "page", - "name": "Accounts Browser", - "icon": "icon-sitemap", - "label": _("Chart of Accounts"), - "link": "Accounts Browser/Account", - "description": _("Tree of finanial accounts.") - }, - { - "type": "page", - "name": "Accounts Browser", - "icon": "icon-sitemap", - "label": _("Chart of Cost Centers"), - "link": "Accounts Browser/Cost Center", - "description": _("Tree of finanial Cost Centers.") - }, - { - "type": "doctype", - "name": "Accounts Settings", - "description": _("Default settings for accounting transactions.") - }, - { - "type": "doctype", - "name": "Fiscal Year", - "description": _("Financial / accounting year.") - }, - { - "type": "doctype", - "name": "Sales Taxes and Charges Master", - "description": _("Tax template for selling transactions.") - }, - { - "type": "doctype", - "name": "Purchase Taxes and Charges Master", - "description": _("Tax template for buying transactions.") - }, - { - "type": "doctype", - "name": "Currency", - "description": _("Enable / disable currencies.") - }, - { - "type": "doctype", - "name": "Shipping Rules", - "description": _("Rules for adding shipping costs.") - }, - { - "type": "doctype", - "name": "Currency Exchange", - "description": _("Currency exchange rate master.") - }, - ] - }, - { - "label": _("Stock"), - "icon": "icon-truck", - "items": [ - { - "type": "page", - "name": "Sales Browser", - "icon": "icon-sitemap", - "label": _("Item Group Tree"), - "link": "Sales Browser/Item Group", - "description": _("Tree of Item Groups.") - }, - { - "type": "doctype", - "name": "Stock Settings", - "description": _("Default settings for stock transactions.") - }, - { - "type": "doctype", - "name": "Warehouse", - "description": _("Warehouses.") - }, - { - "type": "doctype", - "name": "Brand", - "description": _("Brand master.") - }, - { - "type": "doctype", - "name": "Price List", - "description": _("Price List master.") - }, - { - "type": "doctype", - "name": "Stock Reconciliation", - "description": _("Upload actual stock for a warehouse.") - }, - ] - }, - { - "label": _("Selling"), - "icon": "icon-tag", - "items": [ - { - "type": "doctype", - "name": "Selling Settings", - "description": _("Default settings for selling transactions.") - }, - { - "type": "page", - "label": _("Customer Group"), - "name": "Sales Browser", - "icon": "icon-sitemap", - "link": "Sales Browser/Customer Group", - "description": _("Manage Customer Group Tree.") - }, - { - "type": "page", - "label": _("Territory"), - "name": "Sales Browser", - "icon": "icon-sitemap", - "link": "Sales Browser/Territory", - "description": _("Manage Territory Tree.") - }, - { - "type": "page", - "label": _("Sales Person"), - "name": "Sales Browser", - "icon": "icon-sitemap", - "link": "Sales Browser/Sales Person", - "description": _("Manage Sales Person Tree.") - }, - ] - }, - { - "label": _("Buying"), - "icon": "icon-shopping-cart", - "items": [ - { - "type": "doctype", - "name": "Buying Settings", - "description": _("Default settings for buying transactions.") - }, - { - "type": "doctype", - "name": "Supplier Type", - "description": _("Supplier Type master.") - }, - ] - }, - { - "label": _("Human Resources"), - "icon": "icon-group", - "items": [ - { - "type": "doctype", - "name": "Employee", - "description": _("Employee master.") - }, - { - "type": "doctype", - "name": "Employment Type", - "description": _("Types of employment (permanent, contract, intern etc.).") - }, - { - "type": "doctype", - "name": "Branch", - "description": _("Organization branch master.") - }, - { - "type": "doctype", - "name": "Department", - "description": _("Organization unit (department) master.") - }, - { - "type": "doctype", - "name": "Grade", - "description": _("Employee grade.") - }, - { - "type": "doctype", - "name": "Designation", - "description": _("Employee designation (e.g. CEO, Director etc.).") - }, - { - "type": "doctype", - "name": "Holiday List", - "description": _("Holiday master.") - }, - { - "type": "doctype", - "name": "Salary Structure", - "description": _("Salary template master.") - }, - { - "type": "doctype", - "name": "Appraisal Template", - "description": _("Template for performance appraisals.") - }, - { - "type": "doctype", - "name": "Leave Allocation", - "description": _("Allocate leaves for a period.") - }, - ] - }, ] + +def get_data(): + out = list(data) + + for module, label, icon in ( + ("accounts", _("Accounts"), "icon-money"), + ("stock", _("Stock"), "icon-truck"), + ("selling", _("Selling"), "icon-tag"), + ("buying", _("Buying"), "icon-shopping-cart"), + ("hr", _("Human Resources"), "icon-group"), + ("website", _("Website"), "icon-globe")): + + try: + config = get_config("erpnext", module) + except ImportError: + continue + + for section in config: + if section.get("label")==_("Setup"): + out.append({ + "label": label, + "icon": icon, + "items": section["items"] + }) + break + + return out \ No newline at end of file diff --git a/erpnext/config/stock.py b/erpnext/config/stock.py new file mode 100644 index 0000000000..afc4ea8164 --- /dev/null +++ b/erpnext/config/stock.py @@ -0,0 +1,263 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Material Request", + "description": _("Requests for items."), + }, + { + "type": "doctype", + "name": "Stock Entry", + "description": _("Record item movement."), + }, + { + "type": "doctype", + "name": "Delivery Note", + "description": _("Shipments to customers."), + }, + { + "type": "doctype", + "name": "Purchase Receipt", + "description": _("Goods received from Suppliers."), + }, + { + "type": "doctype", + "name": "Item", + "description": _("All Products or Services."), + }, + { + "type": "doctype", + "name": "Warehouse", + "description": _("Where items are stored."), + }, + { + "type": "doctype", + "name": "Serial No", + "description": _("Single unit of an Item."), + }, + { + "type": "doctype", + "name": "Batch", + "description": _("Batch (lot) of an Item."), + }, + ] + }, + { + "label": _("Tools"), + "icon": "icon-wrench", + "items": [ + { + "type": "doctype", + "name": "Stock Reconciliation", + "description": _("Upload stock balance via csv.") + }, + { + "type": "doctype", + "name": "Installation Note", + "description": _("Installation record for a Serial No.") + }, + { + "type": "doctype", + "name": "Packing Slip", + "description": _("Split Delivery Note into packages.") + }, + { + "type": "doctype", + "name": "Quality Inspection", + "description": _("Incoming quality inspection.") + }, + { + "type": "doctype", + "name": "Landed Cost Wizard", + "description": _("Distribute transport overhead across items."), + }, + { + "type": "doctype", + "name": "Stock UOM Replace Utility", + "description": _("Change UOM for an Item."), + }, + ] + }, + { + "label": _("Setup"), + "icon": "icon-cog", + "items": [ + { + "type": "doctype", + "name": "Stock Settings", + "description": _("Default settings for stock transactions.") + }, + { + "type": "page", + "name": "Sales Browser", + "icon": "icon-sitemap", + "label": _("Item Group Tree"), + "link": "Sales Browser/Item Group", + "description": _("Tree of Item Groups."), + "doctype": "Item Group", + }, + { + "type": "doctype", + "name": "UOM", + "label": _("Unit of Measure") + " (UOM)", + "description": _("e.g. Kg, Unit, Nos, m") + }, + { + "type": "doctype", + "name": "Warehouse", + "description": _("Warehouses.") + }, + { + "type": "doctype", + "name": "Brand", + "description": _("Brand master.") + }, + { + "type": "doctype", + "name": "Price List", + "description": _("Price List master.") + }, + { + "type": "doctype", + "name": "Item Price", + "description": _("Multiple Item prices."), + "route": "Report/Item Price" + }, + ] + }, + { + "label": _("Main Reports"), + "icon": "icon-table", + "items": [ + { + "type": "report", + "is_query_report": True, + "name": "Stock Ledger", + "doctype": "Item", + }, + { + "type": "page", + "name": "stock-balance", + "label": _("Stock Balance"), + "icon": "icon-table", + }, + { + "type": "report", + "is_query_report": True, + "name": "Stock Projected Qty", + "doctype": "Item", + }, + { + "type": "report", + "is_query_report": True, + "name": "Stock Ageing", + "doctype": "Item", + }, + { + "type": "report", + "is_query_report": True, + "name": "Item-wise Price List Rate", + "doctype": "Item Price", + }, + { + "type": "page", + "name": "stock-analytics", + "label": _("Stock Analytics"), + "icon": "icon-bar-chart" + }, + ] + }, + { + "label": _("Standard Reports"), + "icon": "icon-list", + "items": [ + { + "type": "report", + "is_query_report": True, + "name": "Ordered Items To Be Delivered", + "doctype": "Delivery Note" + }, + { + "type": "report", + "is_query_report": True, + "name": "Purchase Order Items To Be Received", + "doctype": "Purchase Receipt" + }, + { + "type": "report", + "name": "Item Shortage Report", + "route": "Report/Bin/Item Shortage Report", + "doctype": "Purchase Receipt" + }, + { + "type": "report", + "is_query_report": True, + "name": "Serial No Service Contract Expiry", + "doctype": "Serial No" + }, + { + "type": "report", + "name": "Serial No Status", + "doctype": "Serial No" + }, + { + "type": "report", + "name": "Serial No Warranty Expiry", + "doctype": "Serial No" + }, + { + "type": "report", + "is_query_report": True, + "name": "Purchase In Transit", + "doctype": "Purchase Order" + }, + { + "type": "report", + "is_query_report": True, + "name": "Requested Items To Be Transferred", + "doctype": "Material Request" + }, + { + "type": "report", + "is_query_report": True, + "name": "Batch-Wise Balance History", + "doctype": "Batch" + }, + { + "type": "report", + "is_query_report": True, + "name": "Warehouse-Wise Stock Balance", + "doctype": "Warehouse" + }, + { + "type": "report", + "is_query_report": True, + "name": "Item Prices", + "doctype": "Price List" + }, + { + "type": "report", + "is_query_report": True, + "name": "Itemwise Recommended Reorder Level", + "doctype": "Item" + }, + { + "type": "report", + "is_query_report": True, + "name": "Delivery Note Trends", + "doctype": "Delivery Note" + }, + { + "type": "report", + "is_query_report": True, + "name": "Purchase Receipt Trends", + "doctype": "Purchase Receipt" + }, + ] + }, +] \ No newline at end of file diff --git a/erpnext/config/support.py b/erpnext/config/support.py new file mode 100644 index 0000000000..09143201f8 --- /dev/null +++ b/erpnext/config/support.py @@ -0,0 +1,74 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Support Ticket", + "description": _("Support queries from customers."), + }, + { + "type": "doctype", + "name": "Customer Issue", + "description": _("Customer Issue against Serial No."), + }, + { + "type": "doctype", + "name": "Maintenance Schedule", + "description": _("Plan for maintenance visits."), + }, + { + "type": "doctype", + "name": "Maintenance Visit", + "description": _("Visit report for maintenance call."), + }, + { + "type": "doctype", + "name": "Newsletter", + "description": _("Newsletters to contacts, leads."), + }, + { + "type": "doctype", + "name": "Communication", + "description": _("Communication log."), + }, + { + "type": "doctype", + "name": "Serial No", + "description": _("Single unit of an Item."), + }, + ] + }, + { + "label": _("Setup"), + "icon": "icon-cog", + "items": [ + { + "type": "doctype", + "name": "Support Email Settings", + "description": _("Setup incoming server for support email id. (e.g. support@example.com)") + }, + ] + }, + { + "label": _("Standard Reports"), + "icon": "icon-list", + "items": [ + { + "type": "page", + "name": "support-analytics", + "label": _("Support Analytics"), + "icon": "icon-bar-chart" + }, + { + "type": "report", + "name": "Maintenance Schedules", + "is_query_report": True, + "doctype": "Maintenance Schedule" + }, + ] + }, +] \ No newline at end of file diff --git a/erpnext/config/website.py b/erpnext/config/website.py new file mode 100644 index 0000000000..062747405d --- /dev/null +++ b/erpnext/config/website.py @@ -0,0 +1,93 @@ +from frappe import _ + +data = [ + { + "label": _("Documents"), + "icon": "icon-star", + "items": [ + { + "type": "doctype", + "name": "Web Page", + "description": _("Content web page."), + }, + { + "type": "doctype", + "name": "Blog Post", + "description": _("Single Post (article)."), + }, + { + "type": "doctype", + "name": "Blogger", + "description": _("Profile of a blog writer."), + }, + { + "type": "doctype", + "name": "Website Group", + "description": _("Web Site Forum Page."), + }, + { + "type": "doctype", + "name": "Post", + "description": _("List of Web Site Forum's Posts."), + }, + { + "type": "doctype", + "name": "Website Slideshow", + "description": _("Embed image slideshows in website pages."), + }, + ] + }, + { + "label": _("Setup"), + "icon": "icon-cog", + "items": [ + { + "type": "doctype", + "name": "Website Settings", + "description": _("Setup of top navigation bar, footer and logo."), + }, + { + "type": "page", + "name":"sitemap-browser", + "label": _("Sitemap Browser"), + "description": _("View or manage Website Route tree."), + "icon": "icon-sitemap" + }, + { + "type": "doctype", + "name": "Style Settings", + "description": _("Setup of fonts and background."), + }, + { + "type": "doctype", + "name": "Website Script", + "description": _("Javascript to append to the head section of the page."), + }, + { + "type": "doctype", + "name": "Blog Settings", + "description": _("Write titles and introductions to your blog."), + }, + { + "type": "doctype", + "name": "Blog Category", + "description": _("Categorize blog posts."), + }, + { + "type": "doctype", + "name": "About Us Settings", + "description": _("Settings for About Us Page."), + }, + { + "type": "doctype", + "name": "Contact Us Settings", + "description": _("Settings for Contact Us Page."), + }, + { + "type": "doctype", + "name": "Website Page Permission", + "description": _("Define read, write, admin permissions for a Website Page."), + }, + ] + }, +] \ No newline at end of file diff --git a/erpnext/hr/page/hr_home/__init__.py b/erpnext/hr/page/hr_home/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/hr/page/hr_home/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/hr/page/hr_home/hr_home.js b/erpnext/hr/page/hr_home/hr_home.js deleted file mode 100644 index af6a108419..0000000000 --- a/erpnext/hr/page/hr_home/hr_home.js +++ /dev/null @@ -1,212 +0,0 @@ -// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors -// License: GNU General Public License v3. See license.txt" - -frappe.module_page["HR"] = [ - { - title: frappe._("Top"), - top: true, - icon: "icon-copy", - items: [ - { - label: frappe._("Employee"), - description: frappe._("Employee records."), - doctype:"Employee" - }, - { - label: frappe._("Leave Application"), - description: frappe._("Applications for leave."), - doctype:"Leave Application" - }, - { - label: frappe._("Expense Claim"), - description: frappe._("Claims for company expense."), - doctype:"Expense Claim" - }, - { - label: frappe._("Salary Slip"), - description: frappe._("Monthly salary statement."), - doctype:"Salary Slip" - }, - { - label: frappe._("Attendance"), - description: frappe._("Attendance record."), - doctype:"Attendance" - }, - ] - }, - { - title: frappe._("Documents"), - icon: "icon-copy", - items: [ - { - label: frappe._("Job Applicant"), - description: frappe._("Applicant for a Job."), - doctype:"Job Applicant" - }, - { - label: frappe._("Appraisal"), - description: frappe._("Performance appraisal."), - doctype:"Appraisal" - }, - ] - }, - { - title: frappe._("Leave Setup"), - icon: "icon-cog", - items: [ - { - "route":"Form/Upload Attendance/Upload Attendance", - "label":frappe._("Upload Attendance"), - "description":frappe._("Upload attendance from a .csv file"), - doctype: "Upload Attendance" - }, - { - "route":"Form/Leave Control Panel/Leave Control Panel", - "label": frappe._("Leave Allocation Tool"), - "description": frappe._("Allocate leaves for the year."), - doctype: "Leave Control Panel" - }, - { - "label":frappe._("Leave Allocation"), - "description":frappe._("Leave allocations."), - doctype: "Leave Allocation" - }, - { - "label":frappe._("Leave Type"), - "description":frappe._("Type of leaves like casual, sick etc."), - doctype: "Leave Type" - }, - { - "label":frappe._("Holiday List"), - "description":frappe._("List of holidays."), - doctype: "Holiday List" - }, - { - "label":frappe._("Leave Block List"), - "description":frappe._("Block leave applications by department."), - doctype: "Leave Block List" - }, - ] - }, - { - title: frappe._("Payroll Setup"), - icon: "icon-cog", - items: [ - { - "label": frappe._("Salary Structure"), - "description": frappe._("Monthly salary template."), - doctype: "Salary Structure" - }, - { - "route":"Form/Salary Manager/Salary Manager", - "label":frappe._("Process Payroll"), - "description":frappe._("Generate Salary Slips"), - doctype: "Salary Manager" - }, - { - "label": frappe._("Earning Type"), - "description": frappe._("Salary components."), - doctype: "Earning Type" - }, - { - "label": frappe._("Deduction Type"), - "description": frappe._("Tax and other salary deductions."), - doctype: "Deduction Type" - }, - ] - }, - { - title: frappe._("Employee Setup"), - icon: "icon-cog", - items: [ - { - label: frappe._("Job Opening"), - description: frappe._("Opening for a Job."), - doctype:"Job Opening" - }, - { - "label": frappe._("Employment Type"), - "description": frappe._("Type of employment master."), - doctype: "Employment Type" - }, - { - "label": frappe._("Designation"), - "description": frappe._("Employee Designation."), - doctype: "Designation" - }, - { - "label": frappe._("Appraisal Template"), - "description": frappe._("Template for employee performance appraisals."), - doctype: "Appraisal Template" - }, - { - "label": frappe._("Expense Claim Type"), - "description": frappe._("Types of Expense Claim."), - doctype: "Expense Claim Type" - }, - { - "label": frappe._("Branch"), - "description": frappe._("Company branches."), - doctype: "Branch" - }, - { - "label": frappe._("Department"), - "description": frappe._("Company departments."), - doctype: "Department" - }, - { - "label": frappe._("Grade"), - "description": frappe._("Employee grades"), - doctype: "Grade" - }, - ] - }, - { - title: frappe._("Setup"), - icon: "icon-cog", - items: [ - { - "label": frappe._("HR Settings"), - "route": "Form/HR Settings", - "doctype":"HR Settings", - "description": "Settings for HR Module" - } - ] - }, - { - title: frappe._("Reports"), - right: true, - icon: "icon-list", - items: [ - { - "label":frappe._("Employee Leave Balance"), - route: "query-report/Employee Leave Balance", - doctype: "Leave Application" - }, - { - "label":frappe._("Employee Birthday"), - route: "query-report/Employee Birthday", - doctype: "Employee" - }, - { - "label":frappe._("Employee Information"), - route: "Report/Employee/Employee Information", - doctype: "Employee" - }, - { - "label":frappe._("Monthly Salary Register"), - route: "query-report/Monthly Salary Register", - doctype: "Salary Slip" - }, - { - "label":frappe._("Monthly Attendance Sheet"), - route: "query-report/Monthly Attendance Sheet", - doctype: "Attendance" - }, - ] - } -]; - -pscript['onload_hr-home'] = function(wrapper) { - frappe.views.moduleview.make(wrapper, "HR"); -} \ No newline at end of file diff --git a/erpnext/hr/page/hr_home/hr_home.txt b/erpnext/hr/page/hr_home/hr_home.txt deleted file mode 100644 index 3d53582955..0000000000 --- a/erpnext/hr/page/hr_home/hr_home.txt +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "creation": "2012-02-21 13:24:05", - "docstatus": 0, - "modified": "2013-07-11 14:42:23", - "modified_by": "Administrator", - "owner": "Administrator" - }, - { - "doctype": "Page", - "icon": "icon-th", - "module": "HR", - "name": "__common__", - "page_name": "hr-home", - "standard": "Yes", - "title": "Human Resources Home" - }, - { - "doctype": "Page", - "name": "hr-home" - } -] \ No newline at end of file diff --git a/erpnext/manufacturing/page/__init__.py b/erpnext/manufacturing/page/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/manufacturing/page/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/manufacturing/page/manufacturing_home/__init__.py b/erpnext/manufacturing/page/manufacturing_home/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/manufacturing/page/manufacturing_home/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/manufacturing/page/manufacturing_home/manufacturing_home.js b/erpnext/manufacturing/page/manufacturing_home/manufacturing_home.js deleted file mode 100644 index ab7bfe65f2..0000000000 --- a/erpnext/manufacturing/page/manufacturing_home/manufacturing_home.js +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors -// License: GNU General Public License v3. See license.txt" - -frappe.module_page["Manufacturing"] = [ - { - title: frappe._("Documents"), - top: true, - icon: "icon-copy", - items: [ - { - label: frappe._("Bill of Materials"), - description: frappe._("Bill of Materials (BOM)"), - doctype:"BOM" - }, - { - label: frappe._("Production Order"), - description: frappe._("Orders released for production."), - doctype:"Production Order" - }, - ] - }, - { - title: frappe._("Production Planning (MRP)"), - icon: "icon-wrench", - items: [ - { - "route":"Form/Production Planning Tool/Production Planning Tool", - "label":frappe._("Production Planning Tool"), - "description":frappe._("Generate Material Requests (MRP) and Production Orders."), - doctype: "Production Planning Tool" - }, - ] - }, - { - title: frappe._("Masters"), - icon: "icon-book", - items: [ - { - label: frappe._("Item"), - description: frappe._("All Products or Services."), - doctype:"Item" - }, - { - label: frappe._("Workstation"), - description: frappe._("Where manufacturing operations are carried out."), - doctype:"Workstation" - }, - ] - }, - { - title: frappe._("Utility"), - icon: "icon-wrench", - items: [ - { - "route":"Form/BOM Replace Tool/BOM Replace Tool", - "label":frappe._("BOM Replace Tool"), - "description":frappe._("Replace Item / BOM in all BOMs"), - doctype: "BOM Replace Tool" - }, - ] - }, - { - title: frappe._("Reports"), - right: true, - icon: "icon-list", - items: [ - { - "label":frappe._("Open Production Orders"), - route: "query-report/Open Production Orders", - doctype:"Production Order" - }, - { - "label":frappe._("Production Orders in Progress"), - route: "query-report/Production Orders in Progress", - doctype:"Production Order" - }, - { - "label":frappe._("Issued Items Against Production Order"), - route: "query-report/Issued Items Against Production Order", - doctype:"Production Order" - }, - { - "label":frappe._("Completed Production Orders"), - route: "query-report/Completed Production Orders", - doctype:"Production Order" - }, - ] - } -] - -pscript['onload_manufacturing-home'] = function(wrapper) { - frappe.views.moduleview.make(wrapper, "Manufacturing"); -} \ No newline at end of file diff --git a/erpnext/manufacturing/page/manufacturing_home/manufacturing_home.txt b/erpnext/manufacturing/page/manufacturing_home/manufacturing_home.txt deleted file mode 100644 index 5a946f3fc6..0000000000 --- a/erpnext/manufacturing/page/manufacturing_home/manufacturing_home.txt +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "creation": "2012-02-21 13:24:34", - "docstatus": 0, - "modified": "2013-07-11 14:43:23", - "modified_by": "Administrator", - "owner": "Administrator" - }, - { - "doctype": "Page", - "icon": "icon-th", - "module": "Manufacturing", - "name": "__common__", - "page_name": "manufacturing-home", - "standard": "Yes", - "title": "Manufacturing Home" - }, - { - "doctype": "Page", - "name": "manufacturing-home" - } -] \ No newline at end of file diff --git a/erpnext/patches.txt b/erpnext/patches.txt index 3034d36812..ffce00cb52 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -23,3 +23,5 @@ erpnext.patches.4_0.fields_to_be_renamed erpnext.patches.4_0.rename_sitemap_to_route erpnext.patches.4_0.fix_contact_address erpnext.patches.4_0.customer_discount_to_pricing_rule +execute:frappe.db.sql("""delete from `tabWebsite Item Group` where ifnull(item_group, '')=''""") +erpnext.patches.4_0.remove_module_home_pages diff --git a/erpnext/patches/4_0/remove_module_home_pages.py b/erpnext/patches/4_0/remove_module_home_pages.py new file mode 100644 index 0000000000..f7407a6c05 --- /dev/null +++ b/erpnext/patches/4_0/remove_module_home_pages.py @@ -0,0 +1,10 @@ +# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors +# License: GNU General Public License v3. See license.txt + +from __future__ import unicode_literals +import frappe + +def execute(): + for page in ("accounts-home", "website-home", "support-home", "stock-home", "selling-home", "projects-home", + "manufacturing-home", "hr-home", "buying-home"): + frappe.delete_doc("Page", page) \ No newline at end of file diff --git a/erpnext/projects/page/__init__.py b/erpnext/projects/page/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/projects/page/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/projects/page/projects_home/__init__.py b/erpnext/projects/page/projects_home/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/projects/page/projects_home/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/projects/page/projects_home/projects_home.js b/erpnext/projects/page/projects_home/projects_home.js deleted file mode 100644 index 9ee4dce746..0000000000 --- a/erpnext/projects/page/projects_home/projects_home.js +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors -// License: GNU General Public License v3. See license.txt" - -frappe.module_page["Projects"] = [ - { - title: frappe._("Top"), - icon: "icon-copy", - top: true, - items: [ - { - label: frappe._("Task"), - description: frappe._("Project activity / task."), - doctype:"Task" - }, - { - label: frappe._("Project"), - description: frappe._("Project master."), - doctype:"Project" - }, - { - label: frappe._("Time Log"), - description: frappe._("Time Log for tasks."), - doctype:"Time Log" - }, - ] - }, - { - title: frappe._("Documents"), - icon: "icon-copy", - items: [ - { - label: frappe._("Time Log Batch"), - description: frappe._("Batch Time Logs for billing."), - doctype:"Time Log Batch" - }, - ] - }, - { - title: frappe._("Tools"), - icon: "icon-wrench", - items: [ - { - route: "Gantt/Task", - label: frappe._("Gantt Chart"), - "description":frappe._("Gantt chart of all tasks.") - }, - ] - }, - { - title: frappe._("Masters"), - icon: "icon-book", - items: [ - { - label: frappe._("Activity Type"), - description: frappe._("Types of activities for Time Sheets"), - doctype:"Activity Type" - }, - ] - }, - { - title: frappe._("Reports"), - right: true, - icon: "icon-list", - items: [ - { - "label":frappe._("Daily Time Log Summary"), - route: "query-report/Daily Time Log Summary", - doctype: "Time Log" - }, - { - "label":frappe._("Project wise Stock Tracking"), - route: "query-report/Project wise Stock Tracking", - doctype: "Project" - }, - ] - }] - -pscript['onload_projects-home'] = function(wrapper) { - frappe.views.moduleview.make(wrapper, "Projects"); -} \ No newline at end of file diff --git a/erpnext/projects/page/projects_home/projects_home.txt b/erpnext/projects/page/projects_home/projects_home.txt deleted file mode 100644 index d944156cd3..0000000000 --- a/erpnext/projects/page/projects_home/projects_home.txt +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "creation": "2012-02-21 13:24:22", - "docstatus": 0, - "modified": "2013-07-11 14:43:49", - "modified_by": "Administrator", - "owner": "Administrator" - }, - { - "doctype": "Page", - "icon": "icon-th", - "module": "Projects", - "name": "__common__", - "page_name": "projects-home", - "standard": "Yes", - "title": "Projects Home" - }, - { - "doctype": "Page", - "name": "projects-home" - } -] \ No newline at end of file diff --git a/erpnext/selling/page/selling_home/__init__.py b/erpnext/selling/page/selling_home/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/selling/page/selling_home/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/selling/page/selling_home/selling_home.js b/erpnext/selling/page/selling_home/selling_home.js deleted file mode 100644 index 765ef40750..0000000000 --- a/erpnext/selling/page/selling_home/selling_home.js +++ /dev/null @@ -1,239 +0,0 @@ -// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors -// License: GNU General Public License v3. See license.txt" - -frappe.module_page["Selling"] = [ - { - top: true, - title: frappe._("Documents"), - icon: "icon-copy", - items: [ - { - label: frappe._("Customer"), - description: frappe._("Customer database."), - doctype:"Customer" - }, - { - label: frappe._("Lead"), - description: frappe._("Database of potential customers."), - doctype:"Lead" - }, - { - label: frappe._("Opportunity"), - description: frappe._("Potential opportunities for selling."), - doctype:"Opportunity" - }, - { - label: frappe._("Quotation"), - description: frappe._("Quotes to Leads or Customers."), - doctype:"Quotation" - }, - { - label: frappe._("Sales Order"), - description: frappe._("Confirmed orders from Customers."), - doctype:"Sales Order" - }, - ] - }, - { - title: frappe._("Masters"), - icon: "icon-book", - items: [ - { - label: frappe._("Contact"), - description: frappe._("All Contacts."), - doctype:"Contact" - }, - { - label: frappe._("Address"), - description: frappe._("All Addresses."), - doctype:"Address" - }, - { - label: frappe._("Item"), - description: frappe._("All Products or Services."), - doctype:"Item" - }, - ] - }, - { - title: frappe._("Setup"), - icon: "icon-cog", - items: [ - { - "label": frappe._("Selling Settings"), - "route": "Form/Selling Settings", - "doctype":"Selling Settings", - "description": frappe._("Settings for Selling Module") - }, - { - label: frappe._("Sales Taxes and Charges Master"), - description: frappe._("Sales taxes template."), - doctype:"Sales Taxes and Charges Master" - }, - { - label: frappe._("Shipping Rules"), - description: frappe._("Rules to calculate shipping amount for a sale"), - doctype:"Shipping Rule" - }, - { - label: frappe._("Price List"), - description: frappe._("Multiple Price list."), - doctype:"Price List" - }, - { - label: frappe._("Item Price"), - description: frappe._("Multiple Item prices."), - doctype:"Item Price" - }, - { - label: frappe._("Sales BOM"), - description: frappe._("Bundle items at time of sale."), - doctype:"Sales BOM" - }, - { - label: frappe._("Terms and Conditions"), - description: frappe._("Template of terms or contract."), - doctype:"Terms and Conditions" - }, - { - label: frappe._("Customer Group"), - description: frappe._("Customer classification tree."), - route: "Sales Browser/Customer Group", - doctype:"Customer Group" - }, - { - label: frappe._("Territory"), - description: frappe._("Sales territories."), - route: "Sales Browser/Territory", - doctype:"Territory" - }, - { - "route":"Sales Browser/Sales Person", - "label":frappe._("Sales Person"), - "description": frappe._("Sales persons and targets"), - doctype:"Sales Person" - }, - { - "route":"List/Sales Partner", - "label": frappe._("Sales Partner"), - "description":frappe._("Commission partners and targets"), - doctype:"Sales Partner" - }, - { - "route":"Sales Browser/Item Group", - "label":frappe._("Item Group"), - "description": frappe._("Tree of item classification"), - doctype:"Item Group" - }, - { - "route":"List/Campaign", - "label":frappe._("Campaign"), - "description":frappe._("Sales campaigns"), - doctype:"Campaign" - }, - ] - }, - { - title: frappe._("Tools"), - icon: "icon-wrench", - items: [ - { - "route":"Form/SMS Center/SMS Center", - "label":frappe._("SMS Center"), - "description":frappe._("Send mass SMS to your contacts"), - doctype:"SMS Center" - }, - ] - }, - { - title: frappe._("Analytics"), - right: true, - icon: "icon-bar-chart", - items: [ - { - "label":frappe._("Sales Analytics"), - page: "sales-analytics" - }, - { - "label":frappe._("Sales Funnel"), - page: "sales-funnel" - }, - { - "label":frappe._("Customer Acquisition and Loyalty"), - route: "query-report/Customer Acquisition and Loyalty", - doctype: "Customer" - }, - ] - }, - { - title: frappe._("Reports"), - right: true, - icon: "icon-list", - items: [ - { - "label":frappe._("Lead Details"), - route: "query-report/Lead Details", - doctype: "Lead" - }, - { - "label":frappe._("Customer Addresses And Contacts"), - route: "query-report/Customer Addresses And Contacts", - doctype: "Contact" - }, - { - "label":frappe._("Ordered Items To Be Delivered"), - route: "query-report/Ordered Items To Be Delivered", - doctype: "Sales Order" - }, - { - "label":frappe._("Sales Person-wise Transaction Summary"), - route: "query-report/Sales Person-wise Transaction Summary", - doctype: "Sales Order" - }, - { - "label":frappe._("Item-wise Sales History"), - route: "query-report/Item-wise Sales History", - doctype: "Item" - }, - { - "label":frappe._("Territory Target Variance (Item Group-Wise)"), - route: "query-report/Territory Target Variance Item Group-Wise", - doctype: "Territory" - }, - { - "label":frappe._("Sales Person Target Variance (Item Group-Wise)"), - route: "query-report/Sales Person Target Variance Item Group-Wise", - doctype: "Sales Person", - }, - { - "label":frappe._("Customers Not Buying Since Long Time"), - route: "query-report/Customers Not Buying Since Long Time", - doctype: "Sales Order" - }, - { - "label":frappe._("Quotation Trend"), - route: "query-report/Quotation Trends", - doctype: "Quotation" - }, - { - "label":frappe._("Sales Order Trend"), - route: "query-report/Sales Order Trends", - doctype: "Sales Order" - }, - { - "label":frappe._("Available Stock for Packing Items"), - route: "query-report/Available Stock for Packing Items", - doctype: "Item", - }, - { - "label":frappe._("Pending SO Items For Purchase Request"), - route: "query-report/Pending SO Items For Purchase Request", - doctype: "Sales Order" - }, - ] - } -] - -pscript['onload_selling-home'] = function(wrapper) { - frappe.views.moduleview.make(wrapper, "Selling"); -} \ No newline at end of file diff --git a/erpnext/selling/page/selling_home/selling_home.txt b/erpnext/selling/page/selling_home/selling_home.txt deleted file mode 100644 index 9cff04d8d9..0000000000 --- a/erpnext/selling/page/selling_home/selling_home.txt +++ /dev/null @@ -1,33 +0,0 @@ -[ - { - "creation": "2012-02-20 15:46:39", - "docstatus": 0, - "modified": "2013-07-11 14:44:01", - "modified_by": "Administrator", - "owner": "Administrator" - }, - { - "doctype": "Page", - "icon": "icon-th", - "module": "Selling", - "name": "__common__", - "page_name": "selling-home", - "standard": "Yes", - "title": "Selling Home" - }, - { - "doctype": "Page Role", - "name": "__common__", - "parent": "selling-home", - "parentfield": "roles", - "parenttype": "Page", - "role": "All" - }, - { - "doctype": "Page", - "name": "selling-home" - }, - { - "doctype": "Page Role" - } -] \ No newline at end of file diff --git a/erpnext/setup/doctype/website_item_group/website_item_group.txt b/erpnext/setup/doctype/website_item_group/website_item_group.txt index a2a6e7e78f..ff731a1e48 100644 --- a/erpnext/setup/doctype/website_item_group/website_item_group.txt +++ b/erpnext/setup/doctype/website_item_group/website_item_group.txt @@ -2,7 +2,7 @@ { "creation": "2013-02-22 01:28:09", "docstatus": 0, - "modified": "2013-12-20 19:21:54", + "modified": "2014-02-28 13:00:07", "modified_by": "Administrator", "owner": "Administrator" }, @@ -26,7 +26,8 @@ "parent": "Website Item Group", "parentfield": "fields", "parenttype": "DocType", - "permlevel": 0 + "permlevel": 0, + "reqd": 1 }, { "doctype": "DocType", diff --git a/erpnext/stock/page/stock_home/__init__.py b/erpnext/stock/page/stock_home/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/stock/page/stock_home/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/stock/page/stock_home/stock_home.js b/erpnext/stock/page/stock_home/stock_home.js deleted file mode 100644 index 93b7110ebd..0000000000 --- a/erpnext/stock/page/stock_home/stock_home.js +++ /dev/null @@ -1,257 +0,0 @@ -// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors -// License: GNU General Public License v3. See license.txt" - -frappe.module_page["Stock"] = [ - { - title: frappe._("Documents"), - top: true, - icon: "icon-copy", - items: [ - { - label: frappe._("Item"), - description: frappe._("All Products or Services."), - doctype: "Item" - }, - { - label: frappe._("Material Request"), - description: frappe._("Requests for items."), - doctype: "Material Request" - }, - { - label: frappe._("Stock Entry"), - description: frappe._("Record item movement."), - doctype: "Stock Entry" - }, - { - label: frappe._("Delivery Note"), - description: frappe._("Shipments to customers."), - doctype: "Delivery Note" - }, - { - label: frappe._("Purchase Receipt"), - description: frappe._("Goods received from Suppliers."), - doctype: "Purchase Receipt" - }, - ] - }, - { - title: frappe._("Masters"), - icon: "icon-book", - items: [ - { - label: frappe._("Serial No"), - description: frappe._("Single unit of an Item."), - doctype: "Serial No" - }, - { - label: frappe._("Batch"), - description: frappe._("Batch (lot) of an Item."), - doctype: "Batch" - }, - { - label: frappe._("Warehouse"), - description: frappe._("Where items are stored."), - doctype: "Warehouse" - }, - ] - }, - { - title: frappe._("Tools"), - icon: "icon-wrench", - items: [ - { - doctype: "Stock Reconciliation", - label: frappe._("Stock Reconciliation"), - description: frappe._("Upload stock balance via csv.") - }, - { - doctype: "Installation Note", - label: frappe._("Installation Note"), - description: frappe._("Installation record for a Serial No.") - }, - { - label: frappe._("Packing Slip"), - doctype: "Packing Slip", - description: frappe._("Split Delivery Note into packages.") - }, - { - doctype: "Price List", - label: frappe._("Price List"), - description: frappe._("Multiple Price list.") - }, - { - doctype: "Item Price", - label: frappe._("Item Price"), - description: frappe._("Multiple Item prices.") - }, - { - doctype: "Quality Inspection", - label: frappe._("Quality Inspection"), - description: frappe._("Incoming quality inspection.") - }, - { - route: "Form/Landed Cost Wizard/Landed Cost Wizard", - label: frappe._("Landed Cost Wizard"), - description: frappe._("Distribute transport overhead across items."), - doctype: "Landed Cost Wizard" - }, - { - route: "Form/Stock UOM Replace Utility/Stock UOM Replace Utility", - label: frappe._("UOM Replace Utility"), - description: frappe._("Change UOM for an Item."), - doctype: "Stock UOM Replace Utility" - }, - ] - }, - { - title: frappe._("Setup"), - icon: "icon-cog", - items: [ - { - label: frappe._("Stock Settings"), - route: "Form/Stock Settings", - doctype: "Stock Settings", - description: frappe._("Settings for Stock Module") - }, - { - route: "Sales Browser/Item Group", - label: frappe._("Item Group"), - doctype: "Item Group", - description: frappe._("Item classification.") - }, - { - doctype: "UOM", - label: frappe._("Unit of Measure") + " (UOM)", - description: frappe._("e.g. Kg, Unit, Nos, m") - }, - { - doctype: "Brand", - label: frappe._("Brand"), - description: frappe._("Brand master.") - } - ] - }, - { - title: frappe._("Main Reports"), - right: true, - icon: "icon-table", - items: [ - { - label: frappe._("Stock Ledger"), - doctype: "Item", - route: "query-report/Stock Ledger" - }, - { - label: frappe._("Stock Balance"), - page: "stock-balance" - }, - { - label: frappe._("Stock Projected Qty"), - doctype: "Item", - route: "query-report/Stock Projected Qty" - }, - { - label: frappe._("Stock Ageing"), - doctype: "Item", - route: "query-report/Stock Ageing" - }, - { - label: frappe._("Item-wise Price List Rate"), - route: "Report/Item Price/Item-wise Price List Rate", - doctype: "Item Price" - }, - ] - }, - { - title: frappe._("Analytics"), - right: true, - icon: "icon-bar-chart", - items: [ - { - label: frappe._("Stock Analytics"), - page: "stock-analytics" - }, - ] - }, - { - title: frappe._("Reports"), - right: true, - icon: "icon-list", - items: [ - { - label: frappe._("Ordered Items To Be Delivered"), - route: "query-report/Ordered Items To Be Delivered", - doctype: "Delivery Note" - }, - { - label: frappe._("Purchase Order Items To Be Received"), - route: "query-report/Purchase Order Items To Be Received", - doctype: "Purchase Receipt" - }, - { - label: frappe._("Item Shortage Report"), - route: "Report/Bin/Item Shortage Report", - doctype: "Purchase Receipt" - }, - { - label: frappe._("Serial No Service Contract Expiry"), - route: "Report/Serial No/Serial No Service Contract Expiry", - doctype: "Serial No" - }, - { - label: frappe._("Serial No Status"), - route: "Report/Serial No/Serial No Status", - doctype: "Serial No" - }, - { - label: frappe._("Serial No Warranty Expiry"), - route: "Report/Serial No/Serial No Warranty Expiry", - doctype: "Serial No" - }, - { - label: frappe._("Purchase In Transit"), - route: "query-report/Purchase In Transit", - doctype: "Purchase Order" - }, - { - label: frappe._("Requested Items To Be Transferred"), - route: "query-report/Requested Items To Be Transferred", - doctype: "Material Request" - }, - { - label: frappe._("Batch-Wise Balance History"), - route: "query-report/Batch-Wise Balance History", - doctype: "Batch" - }, - { - label: frappe._("Warehouse-Wise Stock Balance"), - route: "query-report/Warehouse-Wise Stock Balance", - doctype: "Warehouse" - }, - { - label: frappe._("Item Prices"), - route: "query-report/Item Prices", - doctype: "Price List" - }, - { - label: frappe._("Itemwise Recommended Reorder Level"), - route: "query-report/Itemwise Recommended Reorder Level", - doctype: "Item" - }, - { - label: frappe._("Delivery Note Trends"), - route: "query-report/Delivery Note Trends", - doctype: "Delivery Note" - }, - { - label: frappe._("Purchase Receipt Trends"), - route: "query-report/Purchase Receipt Trends", - doctype: "Purchase Receipt" - }, - ] - } -] - -pscript['onload_stock-home'] = function(wrapper) { - frappe.views.moduleview.make(wrapper, "Stock"); -} \ No newline at end of file diff --git a/erpnext/stock/page/stock_home/stock_home.txt b/erpnext/stock/page/stock_home/stock_home.txt deleted file mode 100644 index 81e78bb041..0000000000 --- a/erpnext/stock/page/stock_home/stock_home.txt +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "creation": "2012-02-21 13:23:22", - "docstatus": 0, - "modified": "2013-07-11 14:44:17", - "modified_by": "Administrator", - "owner": "Administrator" - }, - { - "doctype": "Page", - "icon": "icon-th", - "module": "Stock", - "name": "__common__", - "page_name": "stock-home", - "standard": "Yes", - "title": "Stock Home" - }, - { - "doctype": "Page", - "name": "stock-home" - } -] \ No newline at end of file diff --git a/erpnext/support/page/support_home/__init__.py b/erpnext/support/page/support_home/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/erpnext/support/page/support_home/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/support/page/support_home/support_home.js b/erpnext/support/page/support_home/support_home.js deleted file mode 100644 index 38d35d9530..0000000000 --- a/erpnext/support/page/support_home/support_home.js +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors -// License: GNU General Public License v3. See license.txt" - -frappe.module_page["Support"] = [ - { - title: frappe._("Top"), - top: true, - icon: "icon-copy", - items: [ - { - label: frappe._("Support Ticket"), - description: frappe._("Support queries from customers."), - doctype:"Support Ticket" - }, - { - label: frappe._("Customer Issue"), - description: frappe._("Customer Issue against Serial No."), - doctype:"Customer Issue" - }, - ] - }, - - { - title: frappe._("Documents"), - icon: "icon-copy", - items: [ - { - label: frappe._("Maintenance Schedule"), - description: frappe._("Plan for maintenance visits."), - doctype:"Maintenance Schedule" - }, - { - label: frappe._("Maintenance Visit"), - description: frappe._("Visit report for maintenance call."), - doctype:"Maintenance Visit" - }, - { - label: frappe._("Newsletter"), - description: frappe._("Newsletters to contacts, leads."), - doctype:"Newsletter" - }, - { - label: frappe._("Communication"), - description: frappe._("Communication log."), - doctype:"Communication" - }, - ] - }, - { - title: frappe._("Masters"), - icon: "icon-book", - items: [ - { - label: frappe._("Serial No"), - description: frappe._("Single unit of an Item."), - doctype:"Serial No" - }, - ] - }, - { - title: frappe._("Setup"), - icon: "icon-cog", - items: [ - { - "route":"Form/Email Settings/Email Settings", - "label":frappe._("Email Settings"), - "description":frappe._("Setup to pull emails from support email account"), - doctype: "Email Settings" - }, - ] - }, - { - title: frappe._("Analytics"), - right: true, - icon: "icon-bar-chart", - items: [ - { - "label":frappe._("Support Analytics"), - page: "support-analytics" - }, - ] - }, - { - title: frappe._("Reports"), - right: true, - icon: "icon-list", - items: [ - { - "label":frappe._("Maintenance Schedules"), - route: "query-report/Maintenance Schedules", - doctype: "Maintenance Schedule" - } - ] - } -] - -pscript['onload_support-home'] = function(wrapper) { - frappe.views.moduleview.make(wrapper, "Support"); -} diff --git a/erpnext/support/page/support_home/support_home.txt b/erpnext/support/page/support_home/support_home.txt deleted file mode 100644 index 7d9fc9def6..0000000000 --- a/erpnext/support/page/support_home/support_home.txt +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "creation": "2012-02-21 13:23:35", - "docstatus": 0, - "modified": "2013-07-11 14:44:26", - "modified_by": "Administrator", - "owner": "Administrator" - }, - { - "doctype": "Page", - "icon": "icon-th", - "module": "Support", - "name": "__common__", - "page_name": "support-home", - "standard": "Yes", - "title": "Support Home" - }, - { - "doctype": "Page", - "name": "support-home" - } -] \ No newline at end of file