moved directory structure
diff --git a/erpnext/accounts/DocType Mapper/Delivery Note-Sales Invoice/Delivery Note-Sales Invoice.txt b/accounts/DocType Mapper/Delivery Note-Sales Invoice/Delivery Note-Sales Invoice.txt
similarity index 100%
rename from erpnext/accounts/DocType Mapper/Delivery Note-Sales Invoice/Delivery Note-Sales Invoice.txt
rename to accounts/DocType Mapper/Delivery Note-Sales Invoice/Delivery Note-Sales Invoice.txt
diff --git a/erpnext/accounts/DocType Mapper/Project-Sales Invoice/Project-Sales Invoice.txt b/accounts/DocType Mapper/Project-Sales Invoice/Project-Sales Invoice.txt
similarity index 100%
rename from erpnext/accounts/DocType Mapper/Project-Sales Invoice/Project-Sales Invoice.txt
rename to accounts/DocType Mapper/Project-Sales Invoice/Project-Sales Invoice.txt
diff --git a/erpnext/accounts/DocType Mapper/Purchase Order-Purchase Invoice/Purchase Order-Purchase Invoice.txt b/accounts/DocType Mapper/Purchase Order-Purchase Invoice/Purchase Order-Purchase Invoice.txt
similarity index 100%
rename from erpnext/accounts/DocType Mapper/Purchase Order-Purchase Invoice/Purchase Order-Purchase Invoice.txt
rename to accounts/DocType Mapper/Purchase Order-Purchase Invoice/Purchase Order-Purchase Invoice.txt
diff --git a/erpnext/accounts/DocType Mapper/Purchase Receipt-Purchase Invoice/Purchase Receipt-Purchase Invoice.txt b/accounts/DocType Mapper/Purchase Receipt-Purchase Invoice/Purchase Receipt-Purchase Invoice.txt
similarity index 100%
rename from erpnext/accounts/DocType Mapper/Purchase Receipt-Purchase Invoice/Purchase Receipt-Purchase Invoice.txt
rename to accounts/DocType Mapper/Purchase Receipt-Purchase Invoice/Purchase Receipt-Purchase Invoice.txt
diff --git a/erpnext/accounts/DocType Mapper/Sales Order-Sales Invoice/Sales Order-Sales Invoice.txt b/accounts/DocType Mapper/Sales Order-Sales Invoice/Sales Order-Sales Invoice.txt
similarity index 100%
rename from erpnext/accounts/DocType Mapper/Sales Order-Sales Invoice/Sales Order-Sales Invoice.txt
rename to accounts/DocType Mapper/Sales Order-Sales Invoice/Sales Order-Sales Invoice.txt
diff --git a/erpnext/accounts/GL Mapper/Journal Voucher/Journal Voucher.txt b/accounts/GL Mapper/Journal Voucher/Journal Voucher.txt
similarity index 100%
rename from erpnext/accounts/GL Mapper/Journal Voucher/Journal Voucher.txt
rename to accounts/GL Mapper/Journal Voucher/Journal Voucher.txt
diff --git a/erpnext/accounts/GL Mapper/POS with write off/POS with write off.txt b/accounts/GL Mapper/POS with write off/POS with write off.txt
similarity index 100%
rename from erpnext/accounts/GL Mapper/POS with write off/POS with write off.txt
rename to accounts/GL Mapper/POS with write off/POS with write off.txt
diff --git a/erpnext/accounts/GL Mapper/POS/POS.txt b/accounts/GL Mapper/POS/POS.txt
similarity index 100%
rename from erpnext/accounts/GL Mapper/POS/POS.txt
rename to accounts/GL Mapper/POS/POS.txt
diff --git a/erpnext/accounts/GL Mapper/Purchase Invoice with write off/Purchase Invoice with write off.txt b/accounts/GL Mapper/Purchase Invoice with write off/Purchase Invoice with write off.txt
similarity index 100%
rename from erpnext/accounts/GL Mapper/Purchase Invoice with write off/Purchase Invoice with write off.txt
rename to accounts/GL Mapper/Purchase Invoice with write off/Purchase Invoice with write off.txt
diff --git a/erpnext/accounts/GL Mapper/Purchase Invoice/Purchase Invoice.txt b/accounts/GL Mapper/Purchase Invoice/Purchase Invoice.txt
similarity index 100%
rename from erpnext/accounts/GL Mapper/Purchase Invoice/Purchase Invoice.txt
rename to accounts/GL Mapper/Purchase Invoice/Purchase Invoice.txt
diff --git a/erpnext/accounts/GL Mapper/Sales Invoice/Sales Invoice.txt b/accounts/GL Mapper/Sales Invoice/Sales Invoice.txt
similarity index 100%
rename from erpnext/accounts/GL Mapper/Sales Invoice/Sales Invoice.txt
rename to accounts/GL Mapper/Sales Invoice/Sales Invoice.txt
diff --git a/erpnext/accounts/Print Format/Cheque Printing Format/Cheque Printing Format.txt b/accounts/Print Format/Cheque Printing Format/Cheque Printing Format.txt
similarity index 100%
rename from erpnext/accounts/Print Format/Cheque Printing Format/Cheque Printing Format.txt
rename to accounts/Print Format/Cheque Printing Format/Cheque Printing Format.txt
diff --git a/erpnext/accounts/Print Format/Form 16A Print Format/Form 16A Print Format.txt b/accounts/Print Format/Form 16A Print Format/Form 16A Print Format.txt
similarity index 100%
rename from erpnext/accounts/Print Format/Form 16A Print Format/Form 16A Print Format.txt
rename to accounts/Print Format/Form 16A Print Format/Form 16A Print Format.txt
diff --git a/erpnext/accounts/Print Format/POS Invoice/POS Invoice.txt b/accounts/Print Format/POS Invoice/POS Invoice.txt
similarity index 100%
rename from erpnext/accounts/Print Format/POS Invoice/POS Invoice.txt
rename to accounts/Print Format/POS Invoice/POS Invoice.txt
diff --git a/erpnext/accounts/Print Format/Payment Receipt Voucher/Payment Receipt Voucher.txt b/accounts/Print Format/Payment Receipt Voucher/Payment Receipt Voucher.txt
similarity index 100%
rename from erpnext/accounts/Print Format/Payment Receipt Voucher/Payment Receipt Voucher.txt
rename to accounts/Print Format/Payment Receipt Voucher/Payment Receipt Voucher.txt
diff --git a/erpnext/accounts/Print Format/Sales Invoice Classic/Sales Invoice Classic.txt b/accounts/Print Format/Sales Invoice Classic/Sales Invoice Classic.txt
similarity index 100%
rename from erpnext/accounts/Print Format/Sales Invoice Classic/Sales Invoice Classic.txt
rename to accounts/Print Format/Sales Invoice Classic/Sales Invoice Classic.txt
diff --git a/erpnext/accounts/Print Format/Sales Invoice Modern/Sales Invoice Modern.txt b/accounts/Print Format/Sales Invoice Modern/Sales Invoice Modern.txt
similarity index 100%
rename from erpnext/accounts/Print Format/Sales Invoice Modern/Sales Invoice Modern.txt
rename to accounts/Print Format/Sales Invoice Modern/Sales Invoice Modern.txt
diff --git a/erpnext/accounts/Print Format/Sales Invoice Spartan/Sales Invoice Spartan.txt b/accounts/Print Format/Sales Invoice Spartan/Sales Invoice Spartan.txt
similarity index 100%
rename from erpnext/accounts/Print Format/Sales Invoice Spartan/Sales Invoice Spartan.txt
rename to accounts/Print Format/Sales Invoice Spartan/Sales Invoice Spartan.txt
diff --git "a/erpnext/accounts/TDS Rate Chart/Rate chart \05001-07-2010\051/Rate chart \05001-07-2010\051.txt" "b/accounts/TDS Rate Chart/Rate chart \05001-07-2010\051/Rate chart \05001-07-2010\051.txt"
similarity index 100%
rename from "erpnext/accounts/TDS Rate Chart/Rate chart \05001-07-2010\051/Rate chart \05001-07-2010\051.txt"
rename to "accounts/TDS Rate Chart/Rate chart \05001-07-2010\051/Rate chart \05001-07-2010\051.txt"
diff --git a/erpnext/accounts/TDS Rate Chart/TDS Rate Chart October 2009 Onwards/TDS Rate Chart October 2009 Onwards.txt b/accounts/TDS Rate Chart/TDS Rate Chart October 2009 Onwards/TDS Rate Chart October 2009 Onwards.txt
similarity index 100%
rename from erpnext/accounts/TDS Rate Chart/TDS Rate Chart October 2009 Onwards/TDS Rate Chart October 2009 Onwards.txt
rename to accounts/TDS Rate Chart/TDS Rate Chart October 2009 Onwards/TDS Rate Chart October 2009 Onwards.txt
diff --git a/erpnext/accounts/TDS Rate Chart/TDS Rate Chart for 2009-10/TDS Rate Chart for 2009-10.txt b/accounts/TDS Rate Chart/TDS Rate Chart for 2009-10/TDS Rate Chart for 2009-10.txt
similarity index 100%
rename from erpnext/accounts/TDS Rate Chart/TDS Rate Chart for 2009-10/TDS Rate Chart for 2009-10.txt
rename to accounts/TDS Rate Chart/TDS Rate Chart for 2009-10/TDS Rate Chart for 2009-10.txt
diff --git a/erpnext/accounts/__init__.py b/accounts/__init__.py
similarity index 100%
rename from erpnext/accounts/__init__.py
rename to accounts/__init__.py
diff --git a/erpnext/accounts/doctype/__init__.py b/accounts/doctype/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/__init__.py
rename to accounts/doctype/__init__.py
diff --git a/erpnext/accounts/doctype/account/__init__.py b/accounts/doctype/account/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/account/__init__.py
rename to accounts/doctype/account/__init__.py
diff --git a/erpnext/accounts/doctype/account/account.js b/accounts/doctype/account/account.js
similarity index 100%
rename from erpnext/accounts/doctype/account/account.js
rename to accounts/doctype/account/account.js
diff --git a/erpnext/accounts/doctype/account/account.py b/accounts/doctype/account/account.py
similarity index 100%
rename from erpnext/accounts/doctype/account/account.py
rename to accounts/doctype/account/account.py
diff --git a/erpnext/accounts/doctype/account/account.txt b/accounts/doctype/account/account.txt
similarity index 100%
rename from erpnext/accounts/doctype/account/account.txt
rename to accounts/doctype/account/account.txt
diff --git a/erpnext/accounts/doctype/account_balance/__init__.py b/accounts/doctype/account_balance/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/account_balance/__init__.py
rename to accounts/doctype/account_balance/__init__.py
diff --git a/erpnext/accounts/doctype/account_balance/account_balance.txt b/accounts/doctype/account_balance/account_balance.txt
similarity index 100%
rename from erpnext/accounts/doctype/account_balance/account_balance.txt
rename to accounts/doctype/account_balance/account_balance.txt
diff --git a/erpnext/accounts/doctype/bank_reconciliation/__init__.py b/accounts/doctype/bank_reconciliation/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/bank_reconciliation/__init__.py
rename to accounts/doctype/bank_reconciliation/__init__.py
diff --git a/erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.js b/accounts/doctype/bank_reconciliation/bank_reconciliation.js
similarity index 100%
rename from erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.js
rename to accounts/doctype/bank_reconciliation/bank_reconciliation.js
diff --git a/erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.py b/accounts/doctype/bank_reconciliation/bank_reconciliation.py
similarity index 100%
rename from erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.py
rename to accounts/doctype/bank_reconciliation/bank_reconciliation.py
diff --git a/erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.txt b/accounts/doctype/bank_reconciliation/bank_reconciliation.txt
similarity index 100%
rename from erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.txt
rename to accounts/doctype/bank_reconciliation/bank_reconciliation.txt
diff --git a/erpnext/accounts/doctype/bank_reconciliation_detail/__init__.py b/accounts/doctype/bank_reconciliation_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/bank_reconciliation_detail/__init__.py
rename to accounts/doctype/bank_reconciliation_detail/__init__.py
diff --git a/erpnext/accounts/doctype/bank_reconciliation_detail/bank_reconciliation_detail.txt b/accounts/doctype/bank_reconciliation_detail/bank_reconciliation_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/bank_reconciliation_detail/bank_reconciliation_detail.txt
rename to accounts/doctype/bank_reconciliation_detail/bank_reconciliation_detail.txt
diff --git a/erpnext/accounts/doctype/budget_control/__init__.py b/accounts/doctype/budget_control/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/budget_control/__init__.py
rename to accounts/doctype/budget_control/__init__.py
diff --git a/erpnext/accounts/doctype/budget_control/budget_control.py b/accounts/doctype/budget_control/budget_control.py
similarity index 100%
rename from erpnext/accounts/doctype/budget_control/budget_control.py
rename to accounts/doctype/budget_control/budget_control.py
diff --git a/erpnext/accounts/doctype/budget_control/budget_control.txt b/accounts/doctype/budget_control/budget_control.txt
similarity index 100%
rename from erpnext/accounts/doctype/budget_control/budget_control.txt
rename to accounts/doctype/budget_control/budget_control.txt
diff --git a/erpnext/accounts/doctype/budget_detail/__init__.py b/accounts/doctype/budget_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/budget_detail/__init__.py
rename to accounts/doctype/budget_detail/__init__.py
diff --git a/erpnext/accounts/doctype/budget_detail/budget_detail.txt b/accounts/doctype/budget_detail/budget_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/budget_detail/budget_detail.txt
rename to accounts/doctype/budget_detail/budget_detail.txt
diff --git a/erpnext/accounts/doctype/budget_distribution/__init__.py b/accounts/doctype/budget_distribution/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/budget_distribution/__init__.py
rename to accounts/doctype/budget_distribution/__init__.py
diff --git a/erpnext/accounts/doctype/budget_distribution/budget_distribution.js b/accounts/doctype/budget_distribution/budget_distribution.js
similarity index 100%
rename from erpnext/accounts/doctype/budget_distribution/budget_distribution.js
rename to accounts/doctype/budget_distribution/budget_distribution.js
diff --git a/erpnext/accounts/doctype/budget_distribution/budget_distribution.py b/accounts/doctype/budget_distribution/budget_distribution.py
similarity index 100%
rename from erpnext/accounts/doctype/budget_distribution/budget_distribution.py
rename to accounts/doctype/budget_distribution/budget_distribution.py
diff --git a/erpnext/accounts/doctype/budget_distribution/budget_distribution.txt b/accounts/doctype/budget_distribution/budget_distribution.txt
similarity index 100%
rename from erpnext/accounts/doctype/budget_distribution/budget_distribution.txt
rename to accounts/doctype/budget_distribution/budget_distribution.txt
diff --git a/erpnext/accounts/doctype/budget_distribution_detail/__init__.py b/accounts/doctype/budget_distribution_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/budget_distribution_detail/__init__.py
rename to accounts/doctype/budget_distribution_detail/__init__.py
diff --git a/erpnext/accounts/doctype/budget_distribution_detail/budget_distribution_detail.txt b/accounts/doctype/budget_distribution_detail/budget_distribution_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/budget_distribution_detail/budget_distribution_detail.txt
rename to accounts/doctype/budget_distribution_detail/budget_distribution_detail.txt
diff --git a/erpnext/accounts/doctype/c_form/__init__.py b/accounts/doctype/c_form/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/c_form/__init__.py
rename to accounts/doctype/c_form/__init__.py
diff --git a/erpnext/accounts/doctype/c_form/c_form.js b/accounts/doctype/c_form/c_form.js
similarity index 100%
rename from erpnext/accounts/doctype/c_form/c_form.js
rename to accounts/doctype/c_form/c_form.js
diff --git a/erpnext/accounts/doctype/c_form/c_form.py b/accounts/doctype/c_form/c_form.py
similarity index 100%
rename from erpnext/accounts/doctype/c_form/c_form.py
rename to accounts/doctype/c_form/c_form.py
diff --git a/erpnext/accounts/doctype/c_form/c_form.txt b/accounts/doctype/c_form/c_form.txt
similarity index 100%
rename from erpnext/accounts/doctype/c_form/c_form.txt
rename to accounts/doctype/c_form/c_form.txt
diff --git a/erpnext/accounts/doctype/c_form_invoice_detail/__init__.py b/accounts/doctype/c_form_invoice_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/c_form_invoice_detail/__init__.py
rename to accounts/doctype/c_form_invoice_detail/__init__.py
diff --git a/erpnext/accounts/doctype/c_form_invoice_detail/c_form_invoice_detail.txt b/accounts/doctype/c_form_invoice_detail/c_form_invoice_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/c_form_invoice_detail/c_form_invoice_detail.txt
rename to accounts/doctype/c_form_invoice_detail/c_form_invoice_detail.txt
diff --git a/erpnext/accounts/doctype/cost_center/__init__.py b/accounts/doctype/cost_center/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/cost_center/__init__.py
rename to accounts/doctype/cost_center/__init__.py
diff --git a/erpnext/accounts/doctype/cost_center/cost_center.js b/accounts/doctype/cost_center/cost_center.js
similarity index 100%
rename from erpnext/accounts/doctype/cost_center/cost_center.js
rename to accounts/doctype/cost_center/cost_center.js
diff --git a/erpnext/accounts/doctype/cost_center/cost_center.py b/accounts/doctype/cost_center/cost_center.py
similarity index 100%
rename from erpnext/accounts/doctype/cost_center/cost_center.py
rename to accounts/doctype/cost_center/cost_center.py
diff --git a/erpnext/accounts/doctype/cost_center/cost_center.txt b/accounts/doctype/cost_center/cost_center.txt
similarity index 100%
rename from erpnext/accounts/doctype/cost_center/cost_center.txt
rename to accounts/doctype/cost_center/cost_center.txt
diff --git a/erpnext/accounts/doctype/fiscal_year/__init__.py b/accounts/doctype/fiscal_year/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/fiscal_year/__init__.py
rename to accounts/doctype/fiscal_year/__init__.py
diff --git a/erpnext/accounts/doctype/fiscal_year/fiscal_year.js b/accounts/doctype/fiscal_year/fiscal_year.js
similarity index 100%
rename from erpnext/accounts/doctype/fiscal_year/fiscal_year.js
rename to accounts/doctype/fiscal_year/fiscal_year.js
diff --git a/erpnext/accounts/doctype/fiscal_year/fiscal_year.py b/accounts/doctype/fiscal_year/fiscal_year.py
similarity index 100%
rename from erpnext/accounts/doctype/fiscal_year/fiscal_year.py
rename to accounts/doctype/fiscal_year/fiscal_year.py
diff --git a/erpnext/accounts/doctype/fiscal_year/fiscal_year.txt b/accounts/doctype/fiscal_year/fiscal_year.txt
similarity index 100%
rename from erpnext/accounts/doctype/fiscal_year/fiscal_year.txt
rename to accounts/doctype/fiscal_year/fiscal_year.txt
diff --git a/erpnext/accounts/doctype/form_16a/__init__.py b/accounts/doctype/form_16a/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/form_16a/__init__.py
rename to accounts/doctype/form_16a/__init__.py
diff --git a/erpnext/accounts/doctype/form_16a/form_16a.js b/accounts/doctype/form_16a/form_16a.js
similarity index 100%
rename from erpnext/accounts/doctype/form_16a/form_16a.js
rename to accounts/doctype/form_16a/form_16a.js
diff --git a/erpnext/accounts/doctype/form_16a/form_16a.py b/accounts/doctype/form_16a/form_16a.py
similarity index 100%
rename from erpnext/accounts/doctype/form_16a/form_16a.py
rename to accounts/doctype/form_16a/form_16a.py
diff --git a/erpnext/accounts/doctype/form_16a/form_16a.txt b/accounts/doctype/form_16a/form_16a.txt
similarity index 100%
rename from erpnext/accounts/doctype/form_16a/form_16a.txt
rename to accounts/doctype/form_16a/form_16a.txt
diff --git a/erpnext/accounts/doctype/form_16a_ack_detail/__init__.py b/accounts/doctype/form_16a_ack_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/form_16a_ack_detail/__init__.py
rename to accounts/doctype/form_16a_ack_detail/__init__.py
diff --git a/erpnext/accounts/doctype/form_16a_ack_detail/form_16a_ack_detail.txt b/accounts/doctype/form_16a_ack_detail/form_16a_ack_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/form_16a_ack_detail/form_16a_ack_detail.txt
rename to accounts/doctype/form_16a_ack_detail/form_16a_ack_detail.txt
diff --git a/erpnext/accounts/doctype/form_16a_tax_detail/__init__.py b/accounts/doctype/form_16a_tax_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/form_16a_tax_detail/__init__.py
rename to accounts/doctype/form_16a_tax_detail/__init__.py
diff --git a/erpnext/accounts/doctype/form_16a_tax_detail/form_16a_tax_detail.txt b/accounts/doctype/form_16a_tax_detail/form_16a_tax_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/form_16a_tax_detail/form_16a_tax_detail.txt
rename to accounts/doctype/form_16a_tax_detail/form_16a_tax_detail.txt
diff --git a/erpnext/accounts/doctype/gl_control/__init__.py b/accounts/doctype/gl_control/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/gl_control/__init__.py
rename to accounts/doctype/gl_control/__init__.py
diff --git a/erpnext/accounts/doctype/gl_control/gl_control.py b/accounts/doctype/gl_control/gl_control.py
similarity index 100%
rename from erpnext/accounts/doctype/gl_control/gl_control.py
rename to accounts/doctype/gl_control/gl_control.py
diff --git a/erpnext/accounts/doctype/gl_control/gl_control.txt b/accounts/doctype/gl_control/gl_control.txt
similarity index 100%
rename from erpnext/accounts/doctype/gl_control/gl_control.txt
rename to accounts/doctype/gl_control/gl_control.txt
diff --git a/erpnext/accounts/doctype/gl_entry/__init__.py b/accounts/doctype/gl_entry/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/gl_entry/__init__.py
rename to accounts/doctype/gl_entry/__init__.py
diff --git a/erpnext/accounts/doctype/gl_entry/gl_entry.py b/accounts/doctype/gl_entry/gl_entry.py
similarity index 100%
rename from erpnext/accounts/doctype/gl_entry/gl_entry.py
rename to accounts/doctype/gl_entry/gl_entry.py
diff --git a/erpnext/accounts/doctype/gl_entry/gl_entry.txt b/accounts/doctype/gl_entry/gl_entry.txt
similarity index 100%
rename from erpnext/accounts/doctype/gl_entry/gl_entry.txt
rename to accounts/doctype/gl_entry/gl_entry.txt
diff --git a/erpnext/accounts/doctype/journal_voucher/__init__.py b/accounts/doctype/journal_voucher/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/journal_voucher/__init__.py
rename to accounts/doctype/journal_voucher/__init__.py
diff --git a/erpnext/accounts/doctype/journal_voucher/journal_voucher.js b/accounts/doctype/journal_voucher/journal_voucher.js
similarity index 100%
rename from erpnext/accounts/doctype/journal_voucher/journal_voucher.js
rename to accounts/doctype/journal_voucher/journal_voucher.js
diff --git a/erpnext/accounts/doctype/journal_voucher/journal_voucher.py b/accounts/doctype/journal_voucher/journal_voucher.py
similarity index 100%
rename from erpnext/accounts/doctype/journal_voucher/journal_voucher.py
rename to accounts/doctype/journal_voucher/journal_voucher.py
diff --git a/erpnext/accounts/doctype/journal_voucher/journal_voucher.txt b/accounts/doctype/journal_voucher/journal_voucher.txt
similarity index 100%
rename from erpnext/accounts/doctype/journal_voucher/journal_voucher.txt
rename to accounts/doctype/journal_voucher/journal_voucher.txt
diff --git a/erpnext/accounts/doctype/journal_voucher/journal_voucher_list.js b/accounts/doctype/journal_voucher/journal_voucher_list.js
similarity index 100%
rename from erpnext/accounts/doctype/journal_voucher/journal_voucher_list.js
rename to accounts/doctype/journal_voucher/journal_voucher_list.js
diff --git a/erpnext/accounts/doctype/journal_voucher_detail/__init__.py b/accounts/doctype/journal_voucher_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/journal_voucher_detail/__init__.py
rename to accounts/doctype/journal_voucher_detail/__init__.py
diff --git a/erpnext/accounts/doctype/journal_voucher_detail/journal_voucher_detail.txt b/accounts/doctype/journal_voucher_detail/journal_voucher_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/journal_voucher_detail/journal_voucher_detail.txt
rename to accounts/doctype/journal_voucher_detail/journal_voucher_detail.txt
diff --git a/erpnext/accounts/doctype/lease_agreement/__init__.py b/accounts/doctype/lease_agreement/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/lease_agreement/__init__.py
rename to accounts/doctype/lease_agreement/__init__.py
diff --git a/erpnext/accounts/doctype/lease_agreement/lease_agreement.js b/accounts/doctype/lease_agreement/lease_agreement.js
similarity index 100%
rename from erpnext/accounts/doctype/lease_agreement/lease_agreement.js
rename to accounts/doctype/lease_agreement/lease_agreement.js
diff --git a/erpnext/accounts/doctype/lease_agreement/lease_agreement.py b/accounts/doctype/lease_agreement/lease_agreement.py
similarity index 100%
rename from erpnext/accounts/doctype/lease_agreement/lease_agreement.py
rename to accounts/doctype/lease_agreement/lease_agreement.py
diff --git a/erpnext/accounts/doctype/lease_agreement/lease_agreement.txt b/accounts/doctype/lease_agreement/lease_agreement.txt
similarity index 100%
rename from erpnext/accounts/doctype/lease_agreement/lease_agreement.txt
rename to accounts/doctype/lease_agreement/lease_agreement.txt
diff --git a/erpnext/accounts/doctype/lease_installment/__init__.py b/accounts/doctype/lease_installment/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/lease_installment/__init__.py
rename to accounts/doctype/lease_installment/__init__.py
diff --git a/erpnext/accounts/doctype/lease_installment/lease_installment.txt b/accounts/doctype/lease_installment/lease_installment.txt
similarity index 100%
rename from erpnext/accounts/doctype/lease_installment/lease_installment.txt
rename to accounts/doctype/lease_installment/lease_installment.txt
diff --git a/erpnext/accounts/doctype/mis_control/__init__.py b/accounts/doctype/mis_control/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/mis_control/__init__.py
rename to accounts/doctype/mis_control/__init__.py
diff --git a/erpnext/accounts/doctype/mis_control/mis_control.py b/accounts/doctype/mis_control/mis_control.py
similarity index 100%
rename from erpnext/accounts/doctype/mis_control/mis_control.py
rename to accounts/doctype/mis_control/mis_control.py
diff --git a/erpnext/accounts/doctype/mis_control/mis_control.txt b/accounts/doctype/mis_control/mis_control.txt
similarity index 100%
rename from erpnext/accounts/doctype/mis_control/mis_control.txt
rename to accounts/doctype/mis_control/mis_control.txt
diff --git a/erpnext/accounts/doctype/mode_of_payment/__init__.py b/accounts/doctype/mode_of_payment/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/mode_of_payment/__init__.py
rename to accounts/doctype/mode_of_payment/__init__.py
diff --git a/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.js b/accounts/doctype/mode_of_payment/mode_of_payment.js
similarity index 100%
rename from erpnext/accounts/doctype/mode_of_payment/mode_of_payment.js
rename to accounts/doctype/mode_of_payment/mode_of_payment.js
diff --git a/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.txt b/accounts/doctype/mode_of_payment/mode_of_payment.txt
similarity index 100%
rename from erpnext/accounts/doctype/mode_of_payment/mode_of_payment.txt
rename to accounts/doctype/mode_of_payment/mode_of_payment.txt
diff --git a/erpnext/accounts/doctype/multi_ledger_report/__init__.py b/accounts/doctype/multi_ledger_report/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/multi_ledger_report/__init__.py
rename to accounts/doctype/multi_ledger_report/__init__.py
diff --git a/erpnext/accounts/doctype/multi_ledger_report/multi_ledger_report.js b/accounts/doctype/multi_ledger_report/multi_ledger_report.js
similarity index 100%
rename from erpnext/accounts/doctype/multi_ledger_report/multi_ledger_report.js
rename to accounts/doctype/multi_ledger_report/multi_ledger_report.js
diff --git a/erpnext/accounts/doctype/multi_ledger_report/multi_ledger_report.py b/accounts/doctype/multi_ledger_report/multi_ledger_report.py
similarity index 100%
rename from erpnext/accounts/doctype/multi_ledger_report/multi_ledger_report.py
rename to accounts/doctype/multi_ledger_report/multi_ledger_report.py
diff --git a/erpnext/accounts/doctype/multi_ledger_report/multi_ledger_report.txt b/accounts/doctype/multi_ledger_report/multi_ledger_report.txt
similarity index 100%
rename from erpnext/accounts/doctype/multi_ledger_report/multi_ledger_report.txt
rename to accounts/doctype/multi_ledger_report/multi_ledger_report.txt
diff --git a/erpnext/accounts/doctype/multi_ledger_report_detail/__init__.py b/accounts/doctype/multi_ledger_report_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/multi_ledger_report_detail/__init__.py
rename to accounts/doctype/multi_ledger_report_detail/__init__.py
diff --git a/erpnext/accounts/doctype/multi_ledger_report_detail/multi_ledger_report_detail.txt b/accounts/doctype/multi_ledger_report_detail/multi_ledger_report_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/multi_ledger_report_detail/multi_ledger_report_detail.txt
rename to accounts/doctype/multi_ledger_report_detail/multi_ledger_report_detail.txt
diff --git a/erpnext/accounts/doctype/payment_to_invoice_matching_tool/__init__.py b/accounts/doctype/payment_to_invoice_matching_tool/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/payment_to_invoice_matching_tool/__init__.py
rename to accounts/doctype/payment_to_invoice_matching_tool/__init__.py
diff --git a/erpnext/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.js b/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.js
similarity index 100%
rename from erpnext/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.js
rename to accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.js
diff --git a/erpnext/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.py b/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.py
similarity index 100%
rename from erpnext/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.py
rename to accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.py
diff --git a/erpnext/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.txt b/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.txt
similarity index 100%
rename from erpnext/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.txt
rename to accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.txt
diff --git a/erpnext/accounts/doctype/payment_to_invoice_matching_tool/test_ir.py b/accounts/doctype/payment_to_invoice_matching_tool/test_ir.py
similarity index 100%
rename from erpnext/accounts/doctype/payment_to_invoice_matching_tool/test_ir.py
rename to accounts/doctype/payment_to_invoice_matching_tool/test_ir.py
diff --git a/erpnext/accounts/doctype/payment_to_invoice_matching_tool_detail/__init__.py b/accounts/doctype/payment_to_invoice_matching_tool_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/payment_to_invoice_matching_tool_detail/__init__.py
rename to accounts/doctype/payment_to_invoice_matching_tool_detail/__init__.py
diff --git a/erpnext/accounts/doctype/payment_to_invoice_matching_tool_detail/payment_to_invoice_matching_tool_detail.txt b/accounts/doctype/payment_to_invoice_matching_tool_detail/payment_to_invoice_matching_tool_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/payment_to_invoice_matching_tool_detail/payment_to_invoice_matching_tool_detail.txt
rename to accounts/doctype/payment_to_invoice_matching_tool_detail/payment_to_invoice_matching_tool_detail.txt
diff --git a/erpnext/accounts/doctype/period_closing_voucher/__init__.py b/accounts/doctype/period_closing_voucher/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/period_closing_voucher/__init__.py
rename to accounts/doctype/period_closing_voucher/__init__.py
diff --git a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.js b/accounts/doctype/period_closing_voucher/period_closing_voucher.js
similarity index 100%
rename from erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.js
rename to accounts/doctype/period_closing_voucher/period_closing_voucher.js
diff --git a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py b/accounts/doctype/period_closing_voucher/period_closing_voucher.py
similarity index 100%
rename from erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py
rename to accounts/doctype/period_closing_voucher/period_closing_voucher.py
diff --git a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.txt b/accounts/doctype/period_closing_voucher/period_closing_voucher.txt
similarity index 100%
rename from erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.txt
rename to accounts/doctype/period_closing_voucher/period_closing_voucher.txt
diff --git a/erpnext/accounts/doctype/pos_setting/__init__.py b/accounts/doctype/pos_setting/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/pos_setting/__init__.py
rename to accounts/doctype/pos_setting/__init__.py
diff --git a/erpnext/accounts/doctype/pos_setting/pos_setting.js b/accounts/doctype/pos_setting/pos_setting.js
similarity index 100%
rename from erpnext/accounts/doctype/pos_setting/pos_setting.js
rename to accounts/doctype/pos_setting/pos_setting.js
diff --git a/erpnext/accounts/doctype/pos_setting/pos_setting.py b/accounts/doctype/pos_setting/pos_setting.py
similarity index 100%
rename from erpnext/accounts/doctype/pos_setting/pos_setting.py
rename to accounts/doctype/pos_setting/pos_setting.py
diff --git a/erpnext/accounts/doctype/pos_setting/pos_setting.txt b/accounts/doctype/pos_setting/pos_setting.txt
similarity index 100%
rename from erpnext/accounts/doctype/pos_setting/pos_setting.txt
rename to accounts/doctype/pos_setting/pos_setting.txt
diff --git a/erpnext/accounts/doctype/purchase_invoice/__init__.py b/accounts/doctype/purchase_invoice/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice/__init__.py
rename to accounts/doctype/purchase_invoice/__init__.py
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js b/accounts/doctype/purchase_invoice/purchase_invoice.js
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js
rename to accounts/doctype/purchase_invoice/purchase_invoice.js
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py b/accounts/doctype/purchase_invoice/purchase_invoice.py
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
rename to accounts/doctype/purchase_invoice/purchase_invoice.py
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.txt b/accounts/doctype/purchase_invoice/purchase_invoice.txt
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice/purchase_invoice.txt
rename to accounts/doctype/purchase_invoice/purchase_invoice.txt
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice_list.js b/accounts/doctype/purchase_invoice/purchase_invoice_list.js
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice/purchase_invoice_list.js
rename to accounts/doctype/purchase_invoice/purchase_invoice_list.js
diff --git a/erpnext/accounts/doctype/purchase_invoice_advance/__init__.py b/accounts/doctype/purchase_invoice_advance/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice_advance/__init__.py
rename to accounts/doctype/purchase_invoice_advance/__init__.py
diff --git a/erpnext/accounts/doctype/purchase_invoice_advance/purchase_invoice_advance.txt b/accounts/doctype/purchase_invoice_advance/purchase_invoice_advance.txt
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice_advance/purchase_invoice_advance.txt
rename to accounts/doctype/purchase_invoice_advance/purchase_invoice_advance.txt
diff --git a/erpnext/accounts/doctype/purchase_invoice_item/__init__.py b/accounts/doctype/purchase_invoice_item/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice_item/__init__.py
rename to accounts/doctype/purchase_invoice_item/__init__.py
diff --git a/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.txt b/accounts/doctype/purchase_invoice_item/purchase_invoice_item.txt
similarity index 100%
rename from erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.txt
rename to accounts/doctype/purchase_invoice_item/purchase_invoice_item.txt
diff --git a/erpnext/accounts/doctype/purchase_taxes_and_charges/__init__.py b/accounts/doctype/purchase_taxes_and_charges/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/purchase_taxes_and_charges/__init__.py
rename to accounts/doctype/purchase_taxes_and_charges/__init__.py
diff --git a/erpnext/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.txt b/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.txt
similarity index 100%
rename from erpnext/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.txt
rename to accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.txt
diff --git a/erpnext/accounts/doctype/purchase_taxes_and_charges_master/__init__.py b/accounts/doctype/purchase_taxes_and_charges_master/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/purchase_taxes_and_charges_master/__init__.py
rename to accounts/doctype/purchase_taxes_and_charges_master/__init__.py
diff --git a/erpnext/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.js b/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.js
similarity index 100%
rename from erpnext/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.js
rename to accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.js
diff --git a/erpnext/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.py b/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.py
similarity index 100%
rename from erpnext/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.py
rename to accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.py
diff --git a/erpnext/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.txt b/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.txt
similarity index 100%
rename from erpnext/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.txt
rename to accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.txt
diff --git a/erpnext/accounts/doctype/sales_invoice/__init__.py b/accounts/doctype/sales_invoice/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice/__init__.py
rename to accounts/doctype/sales_invoice/__init__.py
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js b/accounts/doctype/sales_invoice/sales_invoice.js
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice/sales_invoice.js
rename to accounts/doctype/sales_invoice/sales_invoice.js
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.py b/accounts/doctype/sales_invoice/sales_invoice.py
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice/sales_invoice.py
rename to accounts/doctype/sales_invoice/sales_invoice.py
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.txt b/accounts/doctype/sales_invoice/sales_invoice.txt
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice/sales_invoice.txt
rename to accounts/doctype/sales_invoice/sales_invoice.txt
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.js b/accounts/doctype/sales_invoice/sales_invoice_list.js
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice/sales_invoice_list.js
rename to accounts/doctype/sales_invoice/sales_invoice_list.js
diff --git a/erpnext/accounts/doctype/sales_invoice_advance/__init__.py b/accounts/doctype/sales_invoice_advance/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice_advance/__init__.py
rename to accounts/doctype/sales_invoice_advance/__init__.py
diff --git a/erpnext/accounts/doctype/sales_invoice_advance/sales_invoice_advance.txt b/accounts/doctype/sales_invoice_advance/sales_invoice_advance.txt
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice_advance/sales_invoice_advance.txt
rename to accounts/doctype/sales_invoice_advance/sales_invoice_advance.txt
diff --git a/erpnext/accounts/doctype/sales_invoice_item/__init__.py b/accounts/doctype/sales_invoice_item/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice_item/__init__.py
rename to accounts/doctype/sales_invoice_item/__init__.py
diff --git a/erpnext/accounts/doctype/sales_invoice_item/sales_invoice_item.txt b/accounts/doctype/sales_invoice_item/sales_invoice_item.txt
similarity index 100%
rename from erpnext/accounts/doctype/sales_invoice_item/sales_invoice_item.txt
rename to accounts/doctype/sales_invoice_item/sales_invoice_item.txt
diff --git a/erpnext/accounts/doctype/sales_taxes_and_charges/__init__.py b/accounts/doctype/sales_taxes_and_charges/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/sales_taxes_and_charges/__init__.py
rename to accounts/doctype/sales_taxes_and_charges/__init__.py
diff --git a/erpnext/accounts/doctype/sales_taxes_and_charges/sales_taxes_and_charges.txt b/accounts/doctype/sales_taxes_and_charges/sales_taxes_and_charges.txt
similarity index 100%
rename from erpnext/accounts/doctype/sales_taxes_and_charges/sales_taxes_and_charges.txt
rename to accounts/doctype/sales_taxes_and_charges/sales_taxes_and_charges.txt
diff --git a/erpnext/accounts/doctype/sales_taxes_and_charges_master/__init__.py b/accounts/doctype/sales_taxes_and_charges_master/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/sales_taxes_and_charges_master/__init__.py
rename to accounts/doctype/sales_taxes_and_charges_master/__init__.py
diff --git a/erpnext/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.js b/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.js
similarity index 100%
rename from erpnext/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.js
rename to accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.js
diff --git a/erpnext/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.py b/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.py
similarity index 100%
rename from erpnext/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.py
rename to accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.py
diff --git a/erpnext/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.txt b/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.txt
similarity index 100%
rename from erpnext/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.txt
rename to accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.txt
diff --git a/erpnext/accounts/doctype/tds_category/__init__.py b/accounts/doctype/tds_category/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_category/__init__.py
rename to accounts/doctype/tds_category/__init__.py
diff --git a/erpnext/accounts/doctype/tds_category/tds_category.js b/accounts/doctype/tds_category/tds_category.js
similarity index 100%
rename from erpnext/accounts/doctype/tds_category/tds_category.js
rename to accounts/doctype/tds_category/tds_category.js
diff --git a/erpnext/accounts/doctype/tds_category/tds_category.py b/accounts/doctype/tds_category/tds_category.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_category/tds_category.py
rename to accounts/doctype/tds_category/tds_category.py
diff --git a/erpnext/accounts/doctype/tds_category/tds_category.txt b/accounts/doctype/tds_category/tds_category.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_category/tds_category.txt
rename to accounts/doctype/tds_category/tds_category.txt
diff --git a/erpnext/accounts/doctype/tds_category_account/__init__.py b/accounts/doctype/tds_category_account/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_category_account/__init__.py
rename to accounts/doctype/tds_category_account/__init__.py
diff --git a/erpnext/accounts/doctype/tds_category_account/tds_category_account.txt b/accounts/doctype/tds_category_account/tds_category_account.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_category_account/tds_category_account.txt
rename to accounts/doctype/tds_category_account/tds_category_account.txt
diff --git a/erpnext/accounts/doctype/tds_control/__init__.py b/accounts/doctype/tds_control/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_control/__init__.py
rename to accounts/doctype/tds_control/__init__.py
diff --git a/erpnext/accounts/doctype/tds_control/tds_control.py b/accounts/doctype/tds_control/tds_control.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_control/tds_control.py
rename to accounts/doctype/tds_control/tds_control.py
diff --git a/erpnext/accounts/doctype/tds_control/tds_control.txt b/accounts/doctype/tds_control/tds_control.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_control/tds_control.txt
rename to accounts/doctype/tds_control/tds_control.txt
diff --git a/erpnext/accounts/doctype/tds_detail/__init__.py b/accounts/doctype/tds_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_detail/__init__.py
rename to accounts/doctype/tds_detail/__init__.py
diff --git a/erpnext/accounts/doctype/tds_detail/tds_detail.txt b/accounts/doctype/tds_detail/tds_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_detail/tds_detail.txt
rename to accounts/doctype/tds_detail/tds_detail.txt
diff --git a/erpnext/accounts/doctype/tds_payment/__init__.py b/accounts/doctype/tds_payment/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_payment/__init__.py
rename to accounts/doctype/tds_payment/__init__.py
diff --git a/erpnext/accounts/doctype/tds_payment/tds_payment.js b/accounts/doctype/tds_payment/tds_payment.js
similarity index 100%
rename from erpnext/accounts/doctype/tds_payment/tds_payment.js
rename to accounts/doctype/tds_payment/tds_payment.js
diff --git a/erpnext/accounts/doctype/tds_payment/tds_payment.py b/accounts/doctype/tds_payment/tds_payment.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_payment/tds_payment.py
rename to accounts/doctype/tds_payment/tds_payment.py
diff --git a/erpnext/accounts/doctype/tds_payment/tds_payment.txt b/accounts/doctype/tds_payment/tds_payment.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_payment/tds_payment.txt
rename to accounts/doctype/tds_payment/tds_payment.txt
diff --git a/erpnext/accounts/doctype/tds_payment_detail/__init__.py b/accounts/doctype/tds_payment_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_payment_detail/__init__.py
rename to accounts/doctype/tds_payment_detail/__init__.py
diff --git a/erpnext/accounts/doctype/tds_payment_detail/tds_payment_detail.txt b/accounts/doctype/tds_payment_detail/tds_payment_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_payment_detail/tds_payment_detail.txt
rename to accounts/doctype/tds_payment_detail/tds_payment_detail.txt
diff --git a/erpnext/accounts/doctype/tds_rate_chart/__init__.py b/accounts/doctype/tds_rate_chart/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_rate_chart/__init__.py
rename to accounts/doctype/tds_rate_chart/__init__.py
diff --git a/erpnext/accounts/doctype/tds_rate_chart/tds_rate_chart.txt b/accounts/doctype/tds_rate_chart/tds_rate_chart.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_rate_chart/tds_rate_chart.txt
rename to accounts/doctype/tds_rate_chart/tds_rate_chart.txt
diff --git a/erpnext/accounts/doctype/tds_rate_detail/__init__.py b/accounts/doctype/tds_rate_detail/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_rate_detail/__init__.py
rename to accounts/doctype/tds_rate_detail/__init__.py
diff --git a/erpnext/accounts/doctype/tds_rate_detail/tds_rate_detail.txt b/accounts/doctype/tds_rate_detail/tds_rate_detail.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_rate_detail/tds_rate_detail.txt
rename to accounts/doctype/tds_rate_detail/tds_rate_detail.txt
diff --git a/erpnext/accounts/doctype/tds_return_acknowledgement/__init__.py b/accounts/doctype/tds_return_acknowledgement/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/tds_return_acknowledgement/__init__.py
rename to accounts/doctype/tds_return_acknowledgement/__init__.py
diff --git a/erpnext/accounts/doctype/tds_return_acknowledgement/tds_return_acknowledgement.js b/accounts/doctype/tds_return_acknowledgement/tds_return_acknowledgement.js
similarity index 100%
rename from erpnext/accounts/doctype/tds_return_acknowledgement/tds_return_acknowledgement.js
rename to accounts/doctype/tds_return_acknowledgement/tds_return_acknowledgement.js
diff --git a/erpnext/accounts/doctype/tds_return_acknowledgement/tds_return_acknowledgement.txt b/accounts/doctype/tds_return_acknowledgement/tds_return_acknowledgement.txt
similarity index 100%
rename from erpnext/accounts/doctype/tds_return_acknowledgement/tds_return_acknowledgement.txt
rename to accounts/doctype/tds_return_acknowledgement/tds_return_acknowledgement.txt
diff --git a/erpnext/accounts/doctype/trend_analyzer_control/__init__.py b/accounts/doctype/trend_analyzer_control/__init__.py
similarity index 100%
rename from erpnext/accounts/doctype/trend_analyzer_control/__init__.py
rename to accounts/doctype/trend_analyzer_control/__init__.py
diff --git a/erpnext/accounts/doctype/trend_analyzer_control/trend_analyzer_control.py b/accounts/doctype/trend_analyzer_control/trend_analyzer_control.py
similarity index 100%
rename from erpnext/accounts/doctype/trend_analyzer_control/trend_analyzer_control.py
rename to accounts/doctype/trend_analyzer_control/trend_analyzer_control.py
diff --git a/erpnext/accounts/doctype/trend_analyzer_control/trend_analyzer_control.txt b/accounts/doctype/trend_analyzer_control/trend_analyzer_control.txt
similarity index 100%
rename from erpnext/accounts/doctype/trend_analyzer_control/trend_analyzer_control.txt
rename to accounts/doctype/trend_analyzer_control/trend_analyzer_control.txt
diff --git a/erpnext/accounts/page/__init__.py b/accounts/page/__init__.py
similarity index 100%
rename from erpnext/accounts/page/__init__.py
rename to accounts/page/__init__.py
diff --git a/erpnext/accounts/page/accounts_browser/__init__.py b/accounts/page/accounts_browser/__init__.py
similarity index 100%
rename from erpnext/accounts/page/accounts_browser/__init__.py
rename to accounts/page/accounts_browser/__init__.py
diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.css b/accounts/page/accounts_browser/accounts_browser.css
similarity index 100%
rename from erpnext/accounts/page/accounts_browser/accounts_browser.css
rename to accounts/page/accounts_browser/accounts_browser.css
diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.html b/accounts/page/accounts_browser/accounts_browser.html
similarity index 100%
rename from erpnext/accounts/page/accounts_browser/accounts_browser.html
rename to accounts/page/accounts_browser/accounts_browser.html
diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.js b/accounts/page/accounts_browser/accounts_browser.js
similarity index 100%
rename from erpnext/accounts/page/accounts_browser/accounts_browser.js
rename to accounts/page/accounts_browser/accounts_browser.js
diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.py b/accounts/page/accounts_browser/accounts_browser.py
similarity index 100%
rename from erpnext/accounts/page/accounts_browser/accounts_browser.py
rename to accounts/page/accounts_browser/accounts_browser.py
diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.txt b/accounts/page/accounts_browser/accounts_browser.txt
similarity index 100%
rename from erpnext/accounts/page/accounts_browser/accounts_browser.txt
rename to accounts/page/accounts_browser/accounts_browser.txt
diff --git a/erpnext/accounts/page/accounts_home/__init__.py b/accounts/page/accounts_home/__init__.py
similarity index 100%
rename from erpnext/accounts/page/accounts_home/__init__.py
rename to accounts/page/accounts_home/__init__.py
diff --git a/erpnext/accounts/page/accounts_home/accounts_home.html b/accounts/page/accounts_home/accounts_home.html
similarity index 100%
rename from erpnext/accounts/page/accounts_home/accounts_home.html
rename to accounts/page/accounts_home/accounts_home.html
diff --git a/erpnext/accounts/page/accounts_home/accounts_home.js b/accounts/page/accounts_home/accounts_home.js
similarity index 100%
rename from erpnext/accounts/page/accounts_home/accounts_home.js
rename to accounts/page/accounts_home/accounts_home.js
diff --git a/erpnext/accounts/page/accounts_home/accounts_home.txt b/accounts/page/accounts_home/accounts_home.txt
similarity index 100%
rename from erpnext/accounts/page/accounts_home/accounts_home.txt
rename to accounts/page/accounts_home/accounts_home.txt
diff --git a/erpnext/accounts/page/financial_analytics/__init__.py b/accounts/page/financial_analytics/__init__.py
similarity index 100%
rename from erpnext/accounts/page/financial_analytics/__init__.py
rename to accounts/page/financial_analytics/__init__.py
diff --git a/erpnext/accounts/page/financial_analytics/financial_analytics.js b/accounts/page/financial_analytics/financial_analytics.js
similarity index 99%
rename from erpnext/accounts/page/financial_analytics/financial_analytics.js
rename to accounts/page/financial_analytics/financial_analytics.js
index 95350a0..20632de 100644
--- a/erpnext/accounts/page/financial_analytics/financial_analytics.js
+++ b/accounts/page/financial_analytics/financial_analytics.js
@@ -14,7 +14,7 @@
 // You should have received a copy of the GNU General Public License
 // along with this program.	If not, see <http://www.gnu.org/licenses/>.
 
-wn.require("js/app/account_tree_grid.js");
+wn.require("app/js/account_tree_grid.js");
 
 wn.pages['financial-analytics'].onload = function(wrapper) { 
 	wn.ui.make_app_page({
diff --git a/erpnext/accounts/page/financial_analytics/financial_analytics.txt b/accounts/page/financial_analytics/financial_analytics.txt
similarity index 100%
rename from erpnext/accounts/page/financial_analytics/financial_analytics.txt
rename to accounts/page/financial_analytics/financial_analytics.txt
diff --git a/erpnext/accounts/page/financial_statements/__init__.py b/accounts/page/financial_statements/__init__.py
similarity index 100%
rename from erpnext/accounts/page/financial_statements/__init__.py
rename to accounts/page/financial_statements/__init__.py
diff --git a/erpnext/accounts/page/financial_statements/financial_statements.html b/accounts/page/financial_statements/financial_statements.html
similarity index 100%
rename from erpnext/accounts/page/financial_statements/financial_statements.html
rename to accounts/page/financial_statements/financial_statements.html
diff --git a/erpnext/accounts/page/financial_statements/financial_statements.js b/accounts/page/financial_statements/financial_statements.js
similarity index 100%
rename from erpnext/accounts/page/financial_statements/financial_statements.js
rename to accounts/page/financial_statements/financial_statements.js
diff --git a/erpnext/accounts/page/financial_statements/financial_statements.txt b/accounts/page/financial_statements/financial_statements.txt
similarity index 100%
rename from erpnext/accounts/page/financial_statements/financial_statements.txt
rename to accounts/page/financial_statements/financial_statements.txt
diff --git a/erpnext/accounts/page/general_ledger/__init__.py b/accounts/page/general_ledger/__init__.py
similarity index 100%
rename from erpnext/accounts/page/general_ledger/__init__.py
rename to accounts/page/general_ledger/__init__.py
diff --git a/erpnext/accounts/page/general_ledger/general_ledger.css b/accounts/page/general_ledger/general_ledger.css
similarity index 100%
rename from erpnext/accounts/page/general_ledger/general_ledger.css
rename to accounts/page/general_ledger/general_ledger.css
diff --git a/erpnext/accounts/page/general_ledger/general_ledger.html b/accounts/page/general_ledger/general_ledger.html
similarity index 100%
rename from erpnext/accounts/page/general_ledger/general_ledger.html
rename to accounts/page/general_ledger/general_ledger.html
diff --git a/erpnext/accounts/page/general_ledger/general_ledger.js b/accounts/page/general_ledger/general_ledger.js
similarity index 100%
rename from erpnext/accounts/page/general_ledger/general_ledger.js
rename to accounts/page/general_ledger/general_ledger.js
diff --git a/erpnext/accounts/page/general_ledger/general_ledger.txt b/accounts/page/general_ledger/general_ledger.txt
similarity index 100%
rename from erpnext/accounts/page/general_ledger/general_ledger.txt
rename to accounts/page/general_ledger/general_ledger.txt
diff --git a/erpnext/accounts/page/trial_balance/__init__.py b/accounts/page/trial_balance/__init__.py
similarity index 100%
rename from erpnext/accounts/page/trial_balance/__init__.py
rename to accounts/page/trial_balance/__init__.py
diff --git a/erpnext/accounts/page/trial_balance/trial_balance.js b/accounts/page/trial_balance/trial_balance.js
similarity index 95%
rename from erpnext/accounts/page/trial_balance/trial_balance.js
rename to accounts/page/trial_balance/trial_balance.js
index 071af67..3504ae0 100644
--- a/erpnext/accounts/page/trial_balance/trial_balance.js
+++ b/accounts/page/trial_balance/trial_balance.js
@@ -14,7 +14,7 @@
 // You should have received a copy of the GNU General Public License
 // along with this program.	If not, see <http://www.gnu.org/licenses/>.
 
-wn.require("js/app/account_tree_grid.js");
+wn.require("app/js/account_tree_grid.js");
 
 wn.pages['trial-balance'].onload = function(wrapper) { 
 	wn.ui.make_app_page({
diff --git a/erpnext/accounts/page/trial_balance/trial_balance.txt b/accounts/page/trial_balance/trial_balance.txt
similarity index 100%
rename from erpnext/accounts/page/trial_balance/trial_balance.txt
rename to accounts/page/trial_balance/trial_balance.txt
diff --git a/erpnext/accounts/search_criteria/__init__.py b/accounts/search_criteria/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/__init__.py
rename to accounts/search_criteria/__init__.py
diff --git a/erpnext/accounts/search_criteria/accounts_payable/__init__.py b/accounts/search_criteria/accounts_payable/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_payable/__init__.py
rename to accounts/search_criteria/accounts_payable/__init__.py
diff --git a/erpnext/accounts/search_criteria/accounts_payable/accounts_payable.js b/accounts/search_criteria/accounts_payable/accounts_payable.js
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_payable/accounts_payable.js
rename to accounts/search_criteria/accounts_payable/accounts_payable.js
diff --git a/erpnext/accounts/search_criteria/accounts_payable/accounts_payable.py b/accounts/search_criteria/accounts_payable/accounts_payable.py
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_payable/accounts_payable.py
rename to accounts/search_criteria/accounts_payable/accounts_payable.py
diff --git a/erpnext/accounts/search_criteria/accounts_payable/accounts_payable.sql b/accounts/search_criteria/accounts_payable/accounts_payable.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_payable/accounts_payable.sql
rename to accounts/search_criteria/accounts_payable/accounts_payable.sql
diff --git a/erpnext/accounts/search_criteria/accounts_payable/accounts_payable.txt b/accounts/search_criteria/accounts_payable/accounts_payable.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_payable/accounts_payable.txt
rename to accounts/search_criteria/accounts_payable/accounts_payable.txt
diff --git a/erpnext/accounts/search_criteria/accounts_receivable/__init__.py b/accounts/search_criteria/accounts_receivable/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_receivable/__init__.py
rename to accounts/search_criteria/accounts_receivable/__init__.py
diff --git a/erpnext/accounts/search_criteria/accounts_receivable/accounts_receivable.js b/accounts/search_criteria/accounts_receivable/accounts_receivable.js
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_receivable/accounts_receivable.js
rename to accounts/search_criteria/accounts_receivable/accounts_receivable.js
diff --git a/erpnext/accounts/search_criteria/accounts_receivable/accounts_receivable.py b/accounts/search_criteria/accounts_receivable/accounts_receivable.py
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_receivable/accounts_receivable.py
rename to accounts/search_criteria/accounts_receivable/accounts_receivable.py
diff --git a/erpnext/accounts/search_criteria/accounts_receivable/accounts_receivable.sql b/accounts/search_criteria/accounts_receivable/accounts_receivable.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_receivable/accounts_receivable.sql
rename to accounts/search_criteria/accounts_receivable/accounts_receivable.sql
diff --git a/erpnext/accounts/search_criteria/accounts_receivable/accounts_receivable.txt b/accounts/search_criteria/accounts_receivable/accounts_receivable.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/accounts_receivable/accounts_receivable.txt
rename to accounts/search_criteria/accounts_receivable/accounts_receivable.txt
diff --git a/erpnext/accounts/search_criteria/bank_clearance_report/__init__.py b/accounts/search_criteria/bank_clearance_report/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/bank_clearance_report/__init__.py
rename to accounts/search_criteria/bank_clearance_report/__init__.py
diff --git a/erpnext/accounts/search_criteria/bank_clearance_report/bank_clearance_report.js b/accounts/search_criteria/bank_clearance_report/bank_clearance_report.js
similarity index 100%
rename from erpnext/accounts/search_criteria/bank_clearance_report/bank_clearance_report.js
rename to accounts/search_criteria/bank_clearance_report/bank_clearance_report.js
diff --git a/erpnext/accounts/search_criteria/bank_clearance_report/bank_clearance_report.txt b/accounts/search_criteria/bank_clearance_report/bank_clearance_report.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/bank_clearance_report/bank_clearance_report.txt
rename to accounts/search_criteria/bank_clearance_report/bank_clearance_report.txt
diff --git a/erpnext/accounts/search_criteria/bank_reconciliation_statement/__init__.py b/accounts/search_criteria/bank_reconciliation_statement/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/bank_reconciliation_statement/__init__.py
rename to accounts/search_criteria/bank_reconciliation_statement/__init__.py
diff --git a/erpnext/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.js b/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.js
similarity index 100%
rename from erpnext/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.js
rename to accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.js
diff --git a/erpnext/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.py b/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.py
similarity index 100%
rename from erpnext/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.py
rename to accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.py
diff --git a/erpnext/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.txt b/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.txt
rename to accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.txt
diff --git a/erpnext/accounts/search_criteria/budget_variance_report/__init__.py b/accounts/search_criteria/budget_variance_report/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/budget_variance_report/__init__.py
rename to accounts/search_criteria/budget_variance_report/__init__.py
diff --git a/erpnext/accounts/search_criteria/budget_variance_report/budget_variance_report.js b/accounts/search_criteria/budget_variance_report/budget_variance_report.js
similarity index 100%
rename from erpnext/accounts/search_criteria/budget_variance_report/budget_variance_report.js
rename to accounts/search_criteria/budget_variance_report/budget_variance_report.js
diff --git a/erpnext/accounts/search_criteria/budget_variance_report/budget_variance_report.py b/accounts/search_criteria/budget_variance_report/budget_variance_report.py
similarity index 100%
rename from erpnext/accounts/search_criteria/budget_variance_report/budget_variance_report.py
rename to accounts/search_criteria/budget_variance_report/budget_variance_report.py
diff --git a/erpnext/accounts/search_criteria/budget_variance_report/budget_variance_report.sql b/accounts/search_criteria/budget_variance_report/budget_variance_report.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/budget_variance_report/budget_variance_report.sql
rename to accounts/search_criteria/budget_variance_report/budget_variance_report.sql
diff --git a/erpnext/accounts/search_criteria/budget_variance_report/budget_variance_report.txt b/accounts/search_criteria/budget_variance_report/budget_variance_report.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/budget_variance_report/budget_variance_report.txt
rename to accounts/search_criteria/budget_variance_report/budget_variance_report.txt
diff --git a/erpnext/accounts/search_criteria/business_associate_commission_report/__init__.py b/accounts/search_criteria/business_associate_commission_report/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/business_associate_commission_report/__init__.py
rename to accounts/search_criteria/business_associate_commission_report/__init__.py
diff --git a/erpnext/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.js b/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.js
similarity index 100%
rename from erpnext/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.js
rename to accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.js
diff --git a/erpnext/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.py b/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.py
similarity index 100%
rename from erpnext/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.py
rename to accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.py
diff --git a/erpnext/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.txt b/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.txt
rename to accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.txt
diff --git a/erpnext/accounts/search_criteria/cash_flow_statement/__init__.py b/accounts/search_criteria/cash_flow_statement/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/cash_flow_statement/__init__.py
rename to accounts/search_criteria/cash_flow_statement/__init__.py
diff --git a/erpnext/accounts/search_criteria/cash_flow_statement/cash_flow_statement.py b/accounts/search_criteria/cash_flow_statement/cash_flow_statement.py
similarity index 100%
rename from erpnext/accounts/search_criteria/cash_flow_statement/cash_flow_statement.py
rename to accounts/search_criteria/cash_flow_statement/cash_flow_statement.py
diff --git a/erpnext/accounts/search_criteria/collection_report/__init__.py b/accounts/search_criteria/collection_report/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/collection_report/__init__.py
rename to accounts/search_criteria/collection_report/__init__.py
diff --git a/erpnext/accounts/search_criteria/collection_report/collection_report.js b/accounts/search_criteria/collection_report/collection_report.js
similarity index 100%
rename from erpnext/accounts/search_criteria/collection_report/collection_report.js
rename to accounts/search_criteria/collection_report/collection_report.js
diff --git a/erpnext/accounts/search_criteria/collection_report/collection_report.py b/accounts/search_criteria/collection_report/collection_report.py
similarity index 100%
rename from erpnext/accounts/search_criteria/collection_report/collection_report.py
rename to accounts/search_criteria/collection_report/collection_report.py
diff --git a/erpnext/accounts/search_criteria/collection_report/collection_report.sql b/accounts/search_criteria/collection_report/collection_report.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/collection_report/collection_report.sql
rename to accounts/search_criteria/collection_report/collection_report.sql
diff --git a/erpnext/accounts/search_criteria/collection_report/collection_report.txt b/accounts/search_criteria/collection_report/collection_report.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/collection_report/collection_report.txt
rename to accounts/search_criteria/collection_report/collection_report.txt
diff --git a/erpnext/accounts/search_criteria/cost_center_wise_expense/__init__.py b/accounts/search_criteria/cost_center_wise_expense/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/cost_center_wise_expense/__init__.py
rename to accounts/search_criteria/cost_center_wise_expense/__init__.py
diff --git a/erpnext/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.js b/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.js
similarity index 100%
rename from erpnext/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.js
rename to accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.js
diff --git a/erpnext/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.py b/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.py
similarity index 100%
rename from erpnext/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.py
rename to accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.py
diff --git a/erpnext/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.sql b/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.sql
rename to accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.sql
diff --git a/erpnext/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.txt b/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.txt
rename to accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.txt
diff --git a/erpnext/accounts/search_criteria/creditors_ledger/__init__.py b/accounts/search_criteria/creditors_ledger/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/creditors_ledger/__init__.py
rename to accounts/search_criteria/creditors_ledger/__init__.py
diff --git a/erpnext/accounts/search_criteria/creditors_ledger/creditors_ledger.js b/accounts/search_criteria/creditors_ledger/creditors_ledger.js
similarity index 100%
rename from erpnext/accounts/search_criteria/creditors_ledger/creditors_ledger.js
rename to accounts/search_criteria/creditors_ledger/creditors_ledger.js
diff --git a/erpnext/accounts/search_criteria/creditors_ledger/creditors_ledger.py b/accounts/search_criteria/creditors_ledger/creditors_ledger.py
similarity index 100%
rename from erpnext/accounts/search_criteria/creditors_ledger/creditors_ledger.py
rename to accounts/search_criteria/creditors_ledger/creditors_ledger.py
diff --git a/erpnext/accounts/search_criteria/creditors_ledger/creditors_ledger.sql b/accounts/search_criteria/creditors_ledger/creditors_ledger.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/creditors_ledger/creditors_ledger.sql
rename to accounts/search_criteria/creditors_ledger/creditors_ledger.sql
diff --git a/erpnext/accounts/search_criteria/creditors_ledger/creditors_ledger.txt b/accounts/search_criteria/creditors_ledger/creditors_ledger.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/creditors_ledger/creditors_ledger.txt
rename to accounts/search_criteria/creditors_ledger/creditors_ledger.txt
diff --git a/erpnext/accounts/search_criteria/debtors_ledger/__init__.py b/accounts/search_criteria/debtors_ledger/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/debtors_ledger/__init__.py
rename to accounts/search_criteria/debtors_ledger/__init__.py
diff --git a/erpnext/accounts/search_criteria/debtors_ledger/debtors_ledger.js b/accounts/search_criteria/debtors_ledger/debtors_ledger.js
similarity index 100%
rename from erpnext/accounts/search_criteria/debtors_ledger/debtors_ledger.js
rename to accounts/search_criteria/debtors_ledger/debtors_ledger.js
diff --git a/erpnext/accounts/search_criteria/debtors_ledger/debtors_ledger.py b/accounts/search_criteria/debtors_ledger/debtors_ledger.py
similarity index 100%
rename from erpnext/accounts/search_criteria/debtors_ledger/debtors_ledger.py
rename to accounts/search_criteria/debtors_ledger/debtors_ledger.py
diff --git a/erpnext/accounts/search_criteria/debtors_ledger/debtors_ledger.sql b/accounts/search_criteria/debtors_ledger/debtors_ledger.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/debtors_ledger/debtors_ledger.sql
rename to accounts/search_criteria/debtors_ledger/debtors_ledger.sql
diff --git a/erpnext/accounts/search_criteria/debtors_ledger/debtors_ledger.txt b/accounts/search_criteria/debtors_ledger/debtors_ledger.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/debtors_ledger/debtors_ledger.txt
rename to accounts/search_criteria/debtors_ledger/debtors_ledger.txt
diff --git a/erpnext/accounts/search_criteria/general_ledger/__init__.py b/accounts/search_criteria/general_ledger/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/general_ledger/__init__.py
rename to accounts/search_criteria/general_ledger/__init__.py
diff --git a/erpnext/accounts/search_criteria/general_ledger/general_ledger.js b/accounts/search_criteria/general_ledger/general_ledger.js
similarity index 100%
rename from erpnext/accounts/search_criteria/general_ledger/general_ledger.js
rename to accounts/search_criteria/general_ledger/general_ledger.js
diff --git a/erpnext/accounts/search_criteria/general_ledger/general_ledger.py b/accounts/search_criteria/general_ledger/general_ledger.py
similarity index 100%
rename from erpnext/accounts/search_criteria/general_ledger/general_ledger.py
rename to accounts/search_criteria/general_ledger/general_ledger.py
diff --git a/erpnext/accounts/search_criteria/general_ledger/general_ledger.sql b/accounts/search_criteria/general_ledger/general_ledger.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/general_ledger/general_ledger.sql
rename to accounts/search_criteria/general_ledger/general_ledger.sql
diff --git a/erpnext/accounts/search_criteria/general_ledger/general_ledger.txt b/accounts/search_criteria/general_ledger/general_ledger.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/general_ledger/general_ledger.txt
rename to accounts/search_criteria/general_ledger/general_ledger.txt
diff --git a/erpnext/accounts/search_criteria/invoices_overdue/__init__.py b/accounts/search_criteria/invoices_overdue/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/invoices_overdue/__init__.py
rename to accounts/search_criteria/invoices_overdue/__init__.py
diff --git a/erpnext/accounts/search_criteria/invoices_overdue/invoices_overdue.txt b/accounts/search_criteria/invoices_overdue/invoices_overdue.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/invoices_overdue/invoices_overdue.txt
rename to accounts/search_criteria/invoices_overdue/invoices_overdue.txt
diff --git a/erpnext/accounts/search_criteria/itemwise_purchase_register/__init__.py b/accounts/search_criteria/itemwise_purchase_register/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/itemwise_purchase_register/__init__.py
rename to accounts/search_criteria/itemwise_purchase_register/__init__.py
diff --git a/erpnext/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js b/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
similarity index 100%
rename from erpnext/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
rename to accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
diff --git a/erpnext/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt b/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
rename to accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
diff --git a/erpnext/accounts/search_criteria/itemwise_sales_register/__init__.py b/accounts/search_criteria/itemwise_sales_register/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/itemwise_sales_register/__init__.py
rename to accounts/search_criteria/itemwise_sales_register/__init__.py
diff --git a/erpnext/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js b/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
similarity index 100%
rename from erpnext/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
rename to accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
diff --git a/erpnext/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt b/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
rename to accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
diff --git a/erpnext/accounts/search_criteria/monthly_transaction_summary/__init__.py b/accounts/search_criteria/monthly_transaction_summary/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/monthly_transaction_summary/__init__.py
rename to accounts/search_criteria/monthly_transaction_summary/__init__.py
diff --git a/erpnext/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.js b/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.js
similarity index 100%
rename from erpnext/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.js
rename to accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.js
diff --git a/erpnext/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.py b/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.py
similarity index 100%
rename from erpnext/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.py
rename to accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.py
diff --git a/erpnext/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.sql b/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.sql
rename to accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.sql
diff --git a/erpnext/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt b/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
rename to accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
diff --git a/erpnext/accounts/search_criteria/payment_receipt_report/__init__.py b/accounts/search_criteria/payment_receipt_report/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/payment_receipt_report/__init__.py
rename to accounts/search_criteria/payment_receipt_report/__init__.py
diff --git a/erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.py b/accounts/search_criteria/payment_receipt_report/payment_receipt_report.py
similarity index 100%
rename from erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.py
rename to accounts/search_criteria/payment_receipt_report/payment_receipt_report.py
diff --git a/erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.sql b/accounts/search_criteria/payment_receipt_report/payment_receipt_report.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.sql
rename to accounts/search_criteria/payment_receipt_report/payment_receipt_report.sql
diff --git a/erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt b/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
rename to accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
diff --git a/erpnext/accounts/search_criteria/purchase_register/__init__.py b/accounts/search_criteria/purchase_register/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/purchase_register/__init__.py
rename to accounts/search_criteria/purchase_register/__init__.py
diff --git a/erpnext/accounts/search_criteria/purchase_register/purchase_register.py b/accounts/search_criteria/purchase_register/purchase_register.py
similarity index 100%
rename from erpnext/accounts/search_criteria/purchase_register/purchase_register.py
rename to accounts/search_criteria/purchase_register/purchase_register.py
diff --git a/erpnext/accounts/search_criteria/purchase_register/purchase_register.txt b/accounts/search_criteria/purchase_register/purchase_register.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/purchase_register/purchase_register.txt
rename to accounts/search_criteria/purchase_register/purchase_register.txt
diff --git a/erpnext/accounts/search_criteria/sales_register/__init__.py b/accounts/search_criteria/sales_register/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/sales_register/__init__.py
rename to accounts/search_criteria/sales_register/__init__.py
diff --git a/erpnext/accounts/search_criteria/sales_register/sales_register.js b/accounts/search_criteria/sales_register/sales_register.js
similarity index 100%
rename from erpnext/accounts/search_criteria/sales_register/sales_register.js
rename to accounts/search_criteria/sales_register/sales_register.js
diff --git a/erpnext/accounts/search_criteria/sales_register/sales_register.py b/accounts/search_criteria/sales_register/sales_register.py
similarity index 100%
rename from erpnext/accounts/search_criteria/sales_register/sales_register.py
rename to accounts/search_criteria/sales_register/sales_register.py
diff --git a/erpnext/accounts/search_criteria/sales_register/sales_register.txt b/accounts/search_criteria/sales_register/sales_register.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/sales_register/sales_register.txt
rename to accounts/search_criteria/sales_register/sales_register.txt
diff --git a/erpnext/accounts/search_criteria/tds_return/__init__.py b/accounts/search_criteria/tds_return/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/tds_return/__init__.py
rename to accounts/search_criteria/tds_return/__init__.py
diff --git a/erpnext/accounts/search_criteria/tds_return/tds_return.js b/accounts/search_criteria/tds_return/tds_return.js
similarity index 100%
rename from erpnext/accounts/search_criteria/tds_return/tds_return.js
rename to accounts/search_criteria/tds_return/tds_return.js
diff --git a/erpnext/accounts/search_criteria/tds_return/tds_return.py b/accounts/search_criteria/tds_return/tds_return.py
similarity index 100%
rename from erpnext/accounts/search_criteria/tds_return/tds_return.py
rename to accounts/search_criteria/tds_return/tds_return.py
diff --git a/erpnext/accounts/search_criteria/tds_return/tds_return.sql b/accounts/search_criteria/tds_return/tds_return.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/tds_return/tds_return.sql
rename to accounts/search_criteria/tds_return/tds_return.sql
diff --git a/erpnext/accounts/search_criteria/tds_return/tds_return.txt b/accounts/search_criteria/tds_return/tds_return.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/tds_return/tds_return.txt
rename to accounts/search_criteria/tds_return/tds_return.txt
diff --git a/erpnext/accounts/search_criteria/trend_analyzer/__init__.py b/accounts/search_criteria/trend_analyzer/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/trend_analyzer/__init__.py
rename to accounts/search_criteria/trend_analyzer/__init__.py
diff --git a/erpnext/accounts/search_criteria/trend_analyzer/trend_analyzer.js b/accounts/search_criteria/trend_analyzer/trend_analyzer.js
similarity index 100%
rename from erpnext/accounts/search_criteria/trend_analyzer/trend_analyzer.js
rename to accounts/search_criteria/trend_analyzer/trend_analyzer.js
diff --git a/erpnext/accounts/search_criteria/trend_analyzer/trend_analyzer.py b/accounts/search_criteria/trend_analyzer/trend_analyzer.py
similarity index 100%
rename from erpnext/accounts/search_criteria/trend_analyzer/trend_analyzer.py
rename to accounts/search_criteria/trend_analyzer/trend_analyzer.py
diff --git a/erpnext/accounts/search_criteria/trend_analyzer/trend_analyzer.txt b/accounts/search_criteria/trend_analyzer/trend_analyzer.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/trend_analyzer/trend_analyzer.txt
rename to accounts/search_criteria/trend_analyzer/trend_analyzer.txt
diff --git a/erpnext/accounts/search_criteria/trial_balance/__init__.py b/accounts/search_criteria/trial_balance/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/trial_balance/__init__.py
rename to accounts/search_criteria/trial_balance/__init__.py
diff --git a/erpnext/accounts/search_criteria/trial_balance/trial_balance.js b/accounts/search_criteria/trial_balance/trial_balance.js
similarity index 100%
rename from erpnext/accounts/search_criteria/trial_balance/trial_balance.js
rename to accounts/search_criteria/trial_balance/trial_balance.js
diff --git a/erpnext/accounts/search_criteria/trial_balance/trial_balance.py b/accounts/search_criteria/trial_balance/trial_balance.py
similarity index 100%
rename from erpnext/accounts/search_criteria/trial_balance/trial_balance.py
rename to accounts/search_criteria/trial_balance/trial_balance.py
diff --git a/erpnext/accounts/search_criteria/trial_balance/trial_balance.txt b/accounts/search_criteria/trial_balance/trial_balance.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/trial_balance/trial_balance.txt
rename to accounts/search_criteria/trial_balance/trial_balance.txt
diff --git a/erpnext/accounts/search_criteria/voucher_wise_tax_details/__init__.py b/accounts/search_criteria/voucher_wise_tax_details/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/voucher_wise_tax_details/__init__.py
rename to accounts/search_criteria/voucher_wise_tax_details/__init__.py
diff --git a/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.js b/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.js
similarity index 100%
rename from erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.js
rename to accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.js
diff --git a/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.py b/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.py
similarity index 100%
rename from erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.py
rename to accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.py
diff --git a/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt b/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt
rename to accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt
diff --git a/erpnext/accounts/search_criteria/yearly_transaction_summary/__init__.py b/accounts/search_criteria/yearly_transaction_summary/__init__.py
similarity index 100%
rename from erpnext/accounts/search_criteria/yearly_transaction_summary/__init__.py
rename to accounts/search_criteria/yearly_transaction_summary/__init__.py
diff --git a/erpnext/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.js b/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.js
similarity index 100%
rename from erpnext/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.js
rename to accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.js
diff --git a/erpnext/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.py b/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.py
similarity index 100%
rename from erpnext/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.py
rename to accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.py
diff --git a/erpnext/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.sql b/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.sql
similarity index 100%
rename from erpnext/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.sql
rename to accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.sql
diff --git a/erpnext/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt b/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
similarity index 100%
rename from erpnext/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
rename to accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
diff --git a/erpnext/accounts/utils/__init__.py b/accounts/utils/__init__.py
similarity index 100%
rename from erpnext/accounts/utils/__init__.py
rename to accounts/utils/__init__.py
diff --git a/build.json b/build.json
deleted file mode 100644
index 420e5f4..0000000
--- a/build.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-	"public/css/all-web.css": [
-		"erpnext/startup/startup.css",
-		"erpnext/website/css/website.css"	
-	],
-	"public/css/all-app.css": [
-		"erpnext/startup/startup.css"
-	],
-	"public/js/all-web.js": [
-		"erpnext/startup/startup.js",
-		"conf.js"
-	],
-	"public/js/all-app.js": [
-		"erpnext/startup/startup.js",
-		"erpnext/startup/js/modules.js",
-		"erpnext/startup/js/toolbar.js",
-		"erpnext/startup/js/feature_setup.js",
-		"conf.js"
-	],
-}
\ No newline at end of file
diff --git a/erpnext/buying/DocType Mapper/Purchase Request-Purchase Order/Purchase Request-Purchase Order.txt b/buying/DocType Mapper/Purchase Request-Purchase Order/Purchase Request-Purchase Order.txt
similarity index 100%
rename from erpnext/buying/DocType Mapper/Purchase Request-Purchase Order/Purchase Request-Purchase Order.txt
rename to buying/DocType Mapper/Purchase Request-Purchase Order/Purchase Request-Purchase Order.txt
diff --git a/erpnext/buying/DocType Mapper/Purchase Request-Supplier Quotation/Purchase Request-Supplier Quotation.txt b/buying/DocType Mapper/Purchase Request-Supplier Quotation/Purchase Request-Supplier Quotation.txt
similarity index 100%
rename from erpnext/buying/DocType Mapper/Purchase Request-Supplier Quotation/Purchase Request-Supplier Quotation.txt
rename to buying/DocType Mapper/Purchase Request-Supplier Quotation/Purchase Request-Supplier Quotation.txt
diff --git a/erpnext/buying/DocType Mapper/Sales Order-Purchase Request/Sales Order-Purchase Request.txt b/buying/DocType Mapper/Sales Order-Purchase Request/Sales Order-Purchase Request.txt
similarity index 100%
rename from erpnext/buying/DocType Mapper/Sales Order-Purchase Request/Sales Order-Purchase Request.txt
rename to buying/DocType Mapper/Sales Order-Purchase Request/Sales Order-Purchase Request.txt
diff --git a/erpnext/buying/DocType Mapper/Supplier Quotation-Purchase Order/Supplier Quotation-Purchase Order.txt b/buying/DocType Mapper/Supplier Quotation-Purchase Order/Supplier Quotation-Purchase Order.txt
similarity index 100%
rename from erpnext/buying/DocType Mapper/Supplier Quotation-Purchase Order/Supplier Quotation-Purchase Order.txt
rename to buying/DocType Mapper/Supplier Quotation-Purchase Order/Supplier Quotation-Purchase Order.txt
diff --git a/erpnext/buying/Print Format/Purchase Order Classic/Purchase Order Classic.txt b/buying/Print Format/Purchase Order Classic/Purchase Order Classic.txt
similarity index 100%
rename from erpnext/buying/Print Format/Purchase Order Classic/Purchase Order Classic.txt
rename to buying/Print Format/Purchase Order Classic/Purchase Order Classic.txt
diff --git a/erpnext/buying/Print Format/Purchase Order Modern/Purchase Order Modern.txt b/buying/Print Format/Purchase Order Modern/Purchase Order Modern.txt
similarity index 100%
rename from erpnext/buying/Print Format/Purchase Order Modern/Purchase Order Modern.txt
rename to buying/Print Format/Purchase Order Modern/Purchase Order Modern.txt
diff --git a/erpnext/buying/Print Format/Purchase Order Spartan/Purchase Order Spartan.txt b/buying/Print Format/Purchase Order Spartan/Purchase Order Spartan.txt
similarity index 100%
rename from erpnext/buying/Print Format/Purchase Order Spartan/Purchase Order Spartan.txt
rename to buying/Print Format/Purchase Order Spartan/Purchase Order Spartan.txt
diff --git a/erpnext/buying/__init__.py b/buying/__init__.py
similarity index 100%
rename from erpnext/buying/__init__.py
rename to buying/__init__.py
diff --git a/erpnext/buying/doctype/__init__.py b/buying/doctype/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/__init__.py
rename to buying/doctype/__init__.py
diff --git a/erpnext/buying/doctype/purchase_common/__init__.py b/buying/doctype/purchase_common/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_common/__init__.py
rename to buying/doctype/purchase_common/__init__.py
diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.js b/buying/doctype/purchase_common/purchase_common.js
similarity index 100%
rename from erpnext/buying/doctype/purchase_common/purchase_common.js
rename to buying/doctype/purchase_common/purchase_common.js
diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.py b/buying/doctype/purchase_common/purchase_common.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_common/purchase_common.py
rename to buying/doctype/purchase_common/purchase_common.py
diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.txt b/buying/doctype/purchase_common/purchase_common.txt
similarity index 100%
rename from erpnext/buying/doctype/purchase_common/purchase_common.txt
rename to buying/doctype/purchase_common/purchase_common.txt
diff --git a/erpnext/buying/doctype/purchase_order/__init__.py b/buying/doctype/purchase_order/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_order/__init__.py
rename to buying/doctype/purchase_order/__init__.py
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.js b/buying/doctype/purchase_order/purchase_order.js
similarity index 100%
rename from erpnext/buying/doctype/purchase_order/purchase_order.js
rename to buying/doctype/purchase_order/purchase_order.js
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/buying/doctype/purchase_order/purchase_order.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_order/purchase_order.py
rename to buying/doctype/purchase_order/purchase_order.py
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.txt b/buying/doctype/purchase_order/purchase_order.txt
similarity index 100%
rename from erpnext/buying/doctype/purchase_order/purchase_order.txt
rename to buying/doctype/purchase_order/purchase_order.txt
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order_list.js b/buying/doctype/purchase_order/purchase_order_list.js
similarity index 100%
rename from erpnext/buying/doctype/purchase_order/purchase_order_list.js
rename to buying/doctype/purchase_order/purchase_order_list.js
diff --git a/erpnext/buying/doctype/purchase_order_item/__init__.py b/buying/doctype/purchase_order_item/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_order_item/__init__.py
rename to buying/doctype/purchase_order_item/__init__.py
diff --git a/erpnext/buying/doctype/purchase_order_item/purchase_order_item.txt b/buying/doctype/purchase_order_item/purchase_order_item.txt
similarity index 100%
rename from erpnext/buying/doctype/purchase_order_item/purchase_order_item.txt
rename to buying/doctype/purchase_order_item/purchase_order_item.txt
diff --git a/erpnext/buying/doctype/purchase_order_item_supplied/__init__.py b/buying/doctype/purchase_order_item_supplied/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_order_item_supplied/__init__.py
rename to buying/doctype/purchase_order_item_supplied/__init__.py
diff --git a/erpnext/buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.txt b/buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.txt
similarity index 100%
rename from erpnext/buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.txt
rename to buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.txt
diff --git a/erpnext/buying/doctype/purchase_receipt_item_supplied/__init__.py b/buying/doctype/purchase_receipt_item_supplied/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_receipt_item_supplied/__init__.py
rename to buying/doctype/purchase_receipt_item_supplied/__init__.py
diff --git a/erpnext/buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.txt b/buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.txt
similarity index 100%
rename from erpnext/buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.txt
rename to buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.txt
diff --git a/erpnext/buying/doctype/purchase_request/__init__.py b/buying/doctype/purchase_request/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_request/__init__.py
rename to buying/doctype/purchase_request/__init__.py
diff --git a/erpnext/buying/doctype/purchase_request/purchase_request.js b/buying/doctype/purchase_request/purchase_request.js
similarity index 100%
rename from erpnext/buying/doctype/purchase_request/purchase_request.js
rename to buying/doctype/purchase_request/purchase_request.js
diff --git a/erpnext/buying/doctype/purchase_request/purchase_request.py b/buying/doctype/purchase_request/purchase_request.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_request/purchase_request.py
rename to buying/doctype/purchase_request/purchase_request.py
diff --git a/erpnext/buying/doctype/purchase_request/purchase_request.txt b/buying/doctype/purchase_request/purchase_request.txt
similarity index 100%
rename from erpnext/buying/doctype/purchase_request/purchase_request.txt
rename to buying/doctype/purchase_request/purchase_request.txt
diff --git a/erpnext/buying/doctype/purchase_request/purchase_request_list.js b/buying/doctype/purchase_request/purchase_request_list.js
similarity index 100%
rename from erpnext/buying/doctype/purchase_request/purchase_request_list.js
rename to buying/doctype/purchase_request/purchase_request_list.js
diff --git a/erpnext/buying/doctype/purchase_request_item/__init__.py b/buying/doctype/purchase_request_item/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/purchase_request_item/__init__.py
rename to buying/doctype/purchase_request_item/__init__.py
diff --git a/erpnext/buying/doctype/purchase_request_item/purchase_request_item.txt b/buying/doctype/purchase_request_item/purchase_request_item.txt
similarity index 100%
rename from erpnext/buying/doctype/purchase_request_item/purchase_request_item.txt
rename to buying/doctype/purchase_request_item/purchase_request_item.txt
diff --git a/erpnext/buying/doctype/quality_inspection/__init__.py b/buying/doctype/quality_inspection/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/quality_inspection/__init__.py
rename to buying/doctype/quality_inspection/__init__.py
diff --git a/erpnext/buying/doctype/quality_inspection/quality_inspection.js b/buying/doctype/quality_inspection/quality_inspection.js
similarity index 100%
rename from erpnext/buying/doctype/quality_inspection/quality_inspection.js
rename to buying/doctype/quality_inspection/quality_inspection.js
diff --git a/erpnext/buying/doctype/quality_inspection/quality_inspection.py b/buying/doctype/quality_inspection/quality_inspection.py
similarity index 100%
rename from erpnext/buying/doctype/quality_inspection/quality_inspection.py
rename to buying/doctype/quality_inspection/quality_inspection.py
diff --git a/erpnext/buying/doctype/quality_inspection/quality_inspection.txt b/buying/doctype/quality_inspection/quality_inspection.txt
similarity index 100%
rename from erpnext/buying/doctype/quality_inspection/quality_inspection.txt
rename to buying/doctype/quality_inspection/quality_inspection.txt
diff --git a/erpnext/buying/doctype/quality_inspection_reading/__init__.py b/buying/doctype/quality_inspection_reading/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/quality_inspection_reading/__init__.py
rename to buying/doctype/quality_inspection_reading/__init__.py
diff --git a/erpnext/buying/doctype/quality_inspection_reading/quality_inspection_reading.txt b/buying/doctype/quality_inspection_reading/quality_inspection_reading.txt
similarity index 100%
rename from erpnext/buying/doctype/quality_inspection_reading/quality_inspection_reading.txt
rename to buying/doctype/quality_inspection_reading/quality_inspection_reading.txt
diff --git a/erpnext/buying/doctype/supplier/__init__.py b/buying/doctype/supplier/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/supplier/__init__.py
rename to buying/doctype/supplier/__init__.py
diff --git a/erpnext/buying/doctype/supplier/supplier.js b/buying/doctype/supplier/supplier.js
similarity index 100%
rename from erpnext/buying/doctype/supplier/supplier.js
rename to buying/doctype/supplier/supplier.js
diff --git a/erpnext/buying/doctype/supplier/supplier.py b/buying/doctype/supplier/supplier.py
similarity index 100%
rename from erpnext/buying/doctype/supplier/supplier.py
rename to buying/doctype/supplier/supplier.py
diff --git a/erpnext/buying/doctype/supplier/supplier.txt b/buying/doctype/supplier/supplier.txt
similarity index 100%
rename from erpnext/buying/doctype/supplier/supplier.txt
rename to buying/doctype/supplier/supplier.txt
diff --git a/erpnext/buying/doctype/supplier/supplier_list.js b/buying/doctype/supplier/supplier_list.js
similarity index 100%
rename from erpnext/buying/doctype/supplier/supplier_list.js
rename to buying/doctype/supplier/supplier_list.js
diff --git a/erpnext/buying/doctype/supplier_quotation/__init__.py b/buying/doctype/supplier_quotation/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/supplier_quotation/__init__.py
rename to buying/doctype/supplier_quotation/__init__.py
diff --git a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js b/buying/doctype/supplier_quotation/supplier_quotation.js
similarity index 100%
rename from erpnext/buying/doctype/supplier_quotation/supplier_quotation.js
rename to buying/doctype/supplier_quotation/supplier_quotation.js
diff --git a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.py b/buying/doctype/supplier_quotation/supplier_quotation.py
similarity index 100%
rename from erpnext/buying/doctype/supplier_quotation/supplier_quotation.py
rename to buying/doctype/supplier_quotation/supplier_quotation.py
diff --git a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.txt b/buying/doctype/supplier_quotation/supplier_quotation.txt
similarity index 100%
rename from erpnext/buying/doctype/supplier_quotation/supplier_quotation.txt
rename to buying/doctype/supplier_quotation/supplier_quotation.txt
diff --git a/erpnext/buying/doctype/supplier_quotation/supplier_quotation_list.js b/buying/doctype/supplier_quotation/supplier_quotation_list.js
similarity index 100%
rename from erpnext/buying/doctype/supplier_quotation/supplier_quotation_list.js
rename to buying/doctype/supplier_quotation/supplier_quotation_list.js
diff --git a/erpnext/buying/doctype/supplier_quotation_item/__init__.py b/buying/doctype/supplier_quotation_item/__init__.py
similarity index 100%
rename from erpnext/buying/doctype/supplier_quotation_item/__init__.py
rename to buying/doctype/supplier_quotation_item/__init__.py
diff --git a/erpnext/buying/doctype/supplier_quotation_item/supplier_quotation_item.txt b/buying/doctype/supplier_quotation_item/supplier_quotation_item.txt
similarity index 100%
rename from erpnext/buying/doctype/supplier_quotation_item/supplier_quotation_item.txt
rename to buying/doctype/supplier_quotation_item/supplier_quotation_item.txt
diff --git a/erpnext/buying/page/__init__.py b/buying/page/__init__.py
similarity index 100%
rename from erpnext/buying/page/__init__.py
rename to buying/page/__init__.py
diff --git a/erpnext/buying/page/buying_home/__init__.py b/buying/page/buying_home/__init__.py
similarity index 100%
rename from erpnext/buying/page/buying_home/__init__.py
rename to buying/page/buying_home/__init__.py
diff --git a/erpnext/buying/page/buying_home/buying_home.html b/buying/page/buying_home/buying_home.html
similarity index 100%
rename from erpnext/buying/page/buying_home/buying_home.html
rename to buying/page/buying_home/buying_home.html
diff --git a/erpnext/buying/page/buying_home/buying_home.js b/buying/page/buying_home/buying_home.js
similarity index 100%
rename from erpnext/buying/page/buying_home/buying_home.js
rename to buying/page/buying_home/buying_home.js
diff --git a/erpnext/buying/page/buying_home/buying_home.txt b/buying/page/buying_home/buying_home.txt
similarity index 100%
rename from erpnext/buying/page/buying_home/buying_home.txt
rename to buying/page/buying_home/buying_home.txt
diff --git a/erpnext/buying/page/purchase_analytics/__init__.py b/buying/page/purchase_analytics/__init__.py
similarity index 100%
rename from erpnext/buying/page/purchase_analytics/__init__.py
rename to buying/page/purchase_analytics/__init__.py
diff --git a/erpnext/buying/page/purchase_analytics/purchase_analytics.js b/buying/page/purchase_analytics/purchase_analytics.js
similarity index 100%
rename from erpnext/buying/page/purchase_analytics/purchase_analytics.js
rename to buying/page/purchase_analytics/purchase_analytics.js
diff --git a/erpnext/buying/page/purchase_analytics/purchase_analytics.txt b/buying/page/purchase_analytics/purchase_analytics.txt
similarity index 100%
rename from erpnext/buying/page/purchase_analytics/purchase_analytics.txt
rename to buying/page/purchase_analytics/purchase_analytics.txt
diff --git a/erpnext/buying/report/supplier_quotations/supplier_quotations.txt b/buying/report/supplier_quotations/supplier_quotations.txt
similarity index 100%
rename from erpnext/buying/report/supplier_quotations/supplier_quotations.txt
rename to buying/report/supplier_quotations/supplier_quotations.txt
diff --git a/erpnext/buying/search_criteria/__init__.py b/buying/search_criteria/__init__.py
similarity index 100%
rename from erpnext/buying/search_criteria/__init__.py
rename to buying/search_criteria/__init__.py
diff --git a/erpnext/buying/search_criteria/itemwise_purchase_details/__init__.py b/buying/search_criteria/itemwise_purchase_details/__init__.py
similarity index 100%
rename from erpnext/buying/search_criteria/itemwise_purchase_details/__init__.py
rename to buying/search_criteria/itemwise_purchase_details/__init__.py
diff --git a/erpnext/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.js b/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.js
similarity index 100%
rename from erpnext/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.js
rename to buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.js
diff --git a/erpnext/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt b/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
similarity index 100%
rename from erpnext/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
rename to buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
diff --git a/erpnext/buying/search_criteria/pending_po_items_to_bill/__init__.py b/buying/search_criteria/pending_po_items_to_bill/__init__.py
similarity index 100%
rename from erpnext/buying/search_criteria/pending_po_items_to_bill/__init__.py
rename to buying/search_criteria/pending_po_items_to_bill/__init__.py
diff --git a/erpnext/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.js b/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.js
similarity index 100%
rename from erpnext/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.js
rename to buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.js
diff --git a/erpnext/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt b/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
similarity index 100%
rename from erpnext/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
rename to buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
diff --git a/erpnext/buying/search_criteria/pending_po_items_to_receive/__init__.py b/buying/search_criteria/pending_po_items_to_receive/__init__.py
similarity index 100%
rename from erpnext/buying/search_criteria/pending_po_items_to_receive/__init__.py
rename to buying/search_criteria/pending_po_items_to_receive/__init__.py
diff --git a/erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.js b/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.js
similarity index 100%
rename from erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.js
rename to buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.js
diff --git a/erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.py b/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.py
similarity index 100%
rename from erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.py
rename to buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.py
diff --git a/erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt b/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
similarity index 100%
rename from erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
rename to buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
diff --git a/erpnext/buying/search_criteria/purchase_in_transit/__init__.py b/buying/search_criteria/purchase_in_transit/__init__.py
similarity index 100%
rename from erpnext/buying/search_criteria/purchase_in_transit/__init__.py
rename to buying/search_criteria/purchase_in_transit/__init__.py
diff --git a/erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.js b/buying/search_criteria/purchase_in_transit/purchase_in_transit.js
similarity index 100%
rename from erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.js
rename to buying/search_criteria/purchase_in_transit/purchase_in_transit.js
diff --git a/erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.py b/buying/search_criteria/purchase_in_transit/purchase_in_transit.py
similarity index 100%
rename from erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.py
rename to buying/search_criteria/purchase_in_transit/purchase_in_transit.py
diff --git a/erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt b/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
similarity index 100%
rename from erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
rename to buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
diff --git a/data/master.sql.gz b/data/master.sql.gz
deleted file mode 100644
index e9896e4..0000000
--- a/data/master.sql.gz
+++ /dev/null
Binary files differ
diff --git a/erpnext/.no_timestamps b/erpnext/.no_timestamps
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/.no_timestamps
+++ /dev/null
diff --git a/erpnext/home/page/.DS_Store b/erpnext/home/page/.DS_Store
deleted file mode 100644
index 5008ddf..0000000
--- a/erpnext/home/page/.DS_Store
+++ /dev/null
Binary files differ
diff --git a/erpnext/selling/page/sales_dashboard/__init__.py b/erpnext/selling/page/sales_dashboard/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/erpnext/selling/page/sales_dashboard/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/erpnext/selling/page/sales_dashboard/sales_dashboard.html b/erpnext/selling/page/sales_dashboard/sales_dashboard.html
deleted file mode 100644
index ec76d44..0000000
--- a/erpnext/selling/page/sales_dashboard/sales_dashboard.html
+++ /dev/null
@@ -1,6 +0,0 @@
-<div class="layout_wrapper">
-<div id="pt_header"></div>
-<div id="pt_filters"></div>
-<p>&nbsp;</p>
-<div id="plot_test"></div>
-</div>
\ No newline at end of file
diff --git a/erpnext/selling/page/sales_dashboard/sales_dashboard.js b/erpnext/selling/page/sales_dashboard/sales_dashboard.js
deleted file mode 100644
index e7d1e61..0000000
--- a/erpnext/selling/page/sales_dashboard/sales_dashboard.js
+++ /dev/null
@@ -1,316 +0,0 @@
-// ERPNext - web based ERP (http://erpnext.com)
-// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-// 
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-// 
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-// 
-// You should have received a copy of the GNU General Public License
-// along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-pscript['onload_Sales Dashboard'] = function() {
-  var h = new PageHeader('pt_header','Sales Dashboard');
-  
-  pscript.make_filters(); 
-  $dh(pscript.mnt_div);
-  $dh(pscript.mnt_div1);
-  //pscript.dx_axis = [];
-
-	wn.require('js/lib/jqplot/css/jqplot.css');
-	wn.require('js/lib/jqplot/jquery.jqplot.min.js');
-	pscript.all_onchnge();
-}
-//=======================================================================
-pscript.make_filters = function(){
-  this.tab = make_table('pt_filters', 2, 4, '800px', ['200px','200px','200px','200px'], {padding: '2px'});
-  pscript.fiscal_year();
-  pscript.report_type();
-  pscript.item_grp();
-  pscript.month_lst();
-}
-//=======================================================================
-
-pscript.fiscal_year=function(){
-  var me = this;
-  $td(this.tab,0,0).innerHTML = "Select Year";
-  this.sel_fy = $a($td(this.tab,1,0), 'select', null, {width:'120px'});
-  $c_obj('Plot Control', 'get_fiscal_year', '', function(r,rt){
-    if(r.message)  fy_lst = r.message;
-    else  fy_lst = [];
-    empty_select(me.sel_fy);
-    add_sel_options(me.sel_fy,fy_lst);
-    me.sel_fy.value = sys_defaults.fiscal_year;
-  });
-  
-}
-
-//=======================================================================
-
-pscript.report_type=function(){
-  $td(this.tab,0,1).innerHTML = "Select Report";
-  this.sel_rpt = $a($td(this.tab,1,1), 'select', null, {width:'120px'});
-  rpt_lst = ['Monthly','Weekly']; 
-  add_sel_options(this.sel_rpt,rpt_lst);
-}
-
-//=======================================================================
-
-pscript.item_grp=function(){
-  var me = this;
-  
-  $td(this.tab,0,2).innerHTML = "Select Item Group";
-  
-  this.sel_grp = $a($td(this.tab,1,2), 'select', null, {width:'120px'});
-  $c_obj('Plot Control', 'get_item_groups', '', function(r,rt){
-    
-    itg_lst = r.message;
-    itg_lst.push('All');
-    
-    empty_select(me.sel_grp);
-    add_sel_options(me.sel_grp, itg_lst.reverse());
-  });
-  
-}
-
-//=======================================================================
-
-pscript.month_lst=function(){
-  pscript.mnt_div1 = $a($td(this.tab,0,3));
-  pscript.mnt_div1.innerHTML = "Select Month";
-  pscript.mnt_div = $a($td(this.tab,1,3));
-  this.sel_mnt = $a(pscript.mnt_div, 'select', null, {width:'120px'});
-  mnt_lst = ['All','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']; 
-  add_sel_options(this.sel_mnt,mnt_lst);
-}
-
-//=======================================================================
-pscript.all_onchnge = function(){
-  pscript.report_change();
-  pscript.fiscal_year_onchnage();
-  pscript.month_onchange();
-  pscript.item_grp_onchange();
-  pscript.monthly();
-}
-
-//=======================================================================
-pscript.report_change = function(){
-  var me = this;
-  this.sel_rpt.onchange = function(){
-    
-    $dh(pscript.mnt_div);
-    $dh(pscript.mnt_div1);
-    if(me.sel_rpt.value == 'Monthly'){
-      
-      pscript.monthly();
-    }
-    
-    else if(me.sel_rpt.value == 'Weekly'){
-      $ds(pscript.mnt_div); 
-      $ds(pscript.mnt_div1);
-      me.sel_mnt.value = 'All';
-      pscript.get_x_dates();
-
-    }
-    
-    else{
-      me.sel_mnt.value = 'All';
-      $i('plot_test').innerHTML = '';
-    }
-  }
-
-}
-//=======================================================================
-pscript.fiscal_year_onchnage = function(){
-  var me = this;
-  this.sel_fy.onchange = function(){ 
-
-    if(me.sel_rpt.value == 'Monthly'){
-      
-      me.sel_mnt.value = 'All';
-      $dh(pscript.mnt_div); 
-      $dh(pscript.mnt_div1);     
-      pscript.monthly();
-    }
-    else if(me.sel_rpt.value == 'Weekly' && me.sel_mnt.value){
-    
-      pscript.get_x_dates();
-      
-    }
-    
-    else{
-      me.sel_mnt.value = 'All';
-      me.sel_rpt.value == '';
-      $i('plot_test').innerHTML = '';
-      
-    }
-  }
-
-}
-//=======================================================================
-pscript.month_onchange = function(){
-  this.sel_mnt.onchange = function(){
-    pscript.get_x_dates();
-    
-  }
-}
-//=======================================================================
-
-pscript.item_grp_onchange=function(){
-  var me = this;
-  this.sel_grp.onchange = function(){
-  
-    if(me.sel_rpt.value == 'Monthly'){
-      
-      me.sel_mnt.value = 'All';
-      $dh(pscript.mnt_div); 
-      $dh(pscript.mnt_div1);     
-      pscript.monthly();
-    }
-    else if(me.sel_rpt.value == 'Weekly' && me.sel_mnt.value){
-    
-      pscript.get_x_dates();
-      
-    }
-    
-    else{
-      me.sel_mnt.value = 'All';
-      me.sel_rpt.value == '';
-      $i('plot_test').innerHTML = '';
-      
-    }
-  }
-    
-  }
-
-//=======================================================================
-
-pscript.get_x_dates=function(){
-  
-  if(this.sel_mnt.value !='All'){
-    
-    pscript.weekly();
-  }
-  else{ 
-    
-    $c_obj('Plot Control','yr_wk_dates',this.sel_fy.value,
-      function(r,rt){
-        
-        pscript.dx_axis = r.message[0];
-        
-        pscript.x_axis = r.message[1];
-        
-        pscript.yearly();
-      }
-    );
-    
-  }
-}
-
-//=======================================================================
-pscript.draw_graph1 = function(x_axis,line1,t) {
-  
-  t = t + " ("+sys_defaults.currency +")";
-  $i('plot_test').innerHTML = '';
-  // div plot_test contains the container div
-  $.jqplot('plot_test',  [line1],{
-    title:t,
-    axesDefaults: {
-      min:0  
-    },
-    
-    axes:{ 
-      xaxis:{ticks:x_axis}
-    }
-  });
-}
-//=======================================================================
-pscript.monthly = function(){
-  var callback = function(r,rt){
-    x_axis = r.message.x_axis;
-    msg_data = r.message.msg_data; 
-    
-    var line1 = [];
-    for(var i=0; i<x_axis.length;i++){
-      var f =0
-      for(var j=0; j<msg_data.length;j++){
-        if(msg_data[j] && x_axis[i]){
-          if(x_axis[i][1] == msg_data[j][1])
-          { 
-            line1.push([i+1,flt(msg_data[j][0])]);
-            f = 1
-          }
-          
-        }
-      }
-      if(f == 0){
-        line1.push([i+1,0]);
-      }
-    }
-    pscript.draw_graph1(x_axis,line1,'Monthly Sales');
-  }
-  var val2 = '';
-  if(this.sel_grp.value != 'All') val2 = this.sel_grp.value;
-  $c_obj('Plot Control','get_monthwise_amount',[this.sel_fy.value,val2],callback);
-}
-
-//=======================================================================
-
-pscript.weekly = function(){
-  
-  var callback = function(r,rt){
-    
-    x_axis =[[1,'Week1'],[2,'Week2'],[3,'Week3'],[4,'Week4'],[5,'Week5'],[6,'Week6']];
-    var line1 = [];
-    for(var i=0; i<x_axis.length;i++){
-      var f = 0;
-      for(var j=0; j<r.message.length;j++){
-        if(r.message[j]){
-          if(r.message[j][1] == x_axis[i][1]){ line1.push([i+1,flt(r.message[j][0])]); f=1;}}
-      }
-      if(f == 0){
-        line1.push([i+1,0]);
-      }
-    }
-    
-    pscript.draw_graph1(x_axis,line1,'Weekly Sales');
-  }
-  dict_mnt={'Jan':1,'Feb':2,'Mar':3,'Apr':4,'May':5,'Jun':6,'Jul':7,'Aug':8,'Sep':9,'Oct':10,'Nov':11,'Dec':12};
-  var val3 = '';
-  if(this.sel_grp.value != 'All') val3 = this.sel_grp.value;
-  $c_obj('Plot Control','get_weekwise_amount',[dict_mnt[this.sel_mnt.value],this.sel_fy.value,val3],callback);
-}
-
-//=======================================================================
-
-pscript.yearly = function(){
-  
-  var callback = function(r,rt){
-      
-    var line1 = [];
-    for(var i=0; i<pscript.x_axis.length;i++){
-      var f = 0
-      for(var j=0; j<r.message.length;j++){
-        if(r.message[j]){
-
-          if((r.message[j][1] == pscript.x_axis[i][1]) && (r.message[j][2] == pscript.x_axis[i][2])){ line1.push([pscript.x_axis[i][0],r.message[j][0]]); break; f =1;}
-      }
-      }
-      if(f == 0){
-        line1.push([pscript.x_axis[i][0],0]);
-      }
-    }
-    
-    pscript.draw_graph1(pscript.dx_axis,line1,'Year-Weekly Sales');
-  }
-  var val2 = '';
-  if(this.sel_grp.value != 'All') val2 = this.sel_grp.value;
-  
-  
-  $c_obj('Plot Control','get_year_weekwise_amount',[this.sel_fy.value,val2],callback);
-} 
\ No newline at end of file
diff --git a/erpnext/selling/page/sales_dashboard/sales_dashboard.txt b/erpnext/selling/page/sales_dashboard/sales_dashboard.txt
deleted file mode 100644
index 1e80e2c..0000000
--- a/erpnext/selling/page/sales_dashboard/sales_dashboard.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-# Page, Sales Dashboard
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-10-12 15:19:32',
-		'docstatus': 0,
-		'modified': '2010-09-25 00:00:00',
-		'modified_by': 'Administrator',
-		'owner': 'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': 'Selling',
-		'name': '__common__',
-		'page_name': 'Sales Dashboard',
-		'show_in_menu': 0,
-		'standard': 'Yes'
-	},
-
-	# These values are common for all Page Role
-	{
-		'doctype': 'Page Role',
-		'idx': 1,
-		'name': '__common__',
-		'parent': 'Sales Dashboard',
-		'parentfield': 'roles',
-		'parenttype': 'Page',
-		'role': 'Sales Manager'
-	},
-
-	# Page, Sales Dashboard
-	{
-		'doctype': 'Page',
-		'name': 'Sales Dashboard'
-	},
-
-	# Page Role
-	{
-		'doctype': 'Page Role'
-	}
-]
\ No newline at end of file
diff --git a/erpnext/home/__init__.py b/home/__init__.py
similarity index 100%
rename from erpnext/home/__init__.py
rename to home/__init__.py
diff --git a/erpnext/home/doctype/__init__.py b/home/doctype/__init__.py
similarity index 100%
rename from erpnext/home/doctype/__init__.py
rename to home/doctype/__init__.py
diff --git a/erpnext/home/doctype/company_control/__init__.py b/home/doctype/company_control/__init__.py
similarity index 100%
rename from erpnext/home/doctype/company_control/__init__.py
rename to home/doctype/company_control/__init__.py
diff --git a/erpnext/home/doctype/company_control/company_control.py b/home/doctype/company_control/company_control.py
similarity index 100%
rename from erpnext/home/doctype/company_control/company_control.py
rename to home/doctype/company_control/company_control.py
diff --git a/erpnext/home/doctype/company_control/company_control.txt b/home/doctype/company_control/company_control.txt
similarity index 100%
rename from erpnext/home/doctype/company_control/company_control.txt
rename to home/doctype/company_control/company_control.txt
diff --git a/erpnext/home/doctype/feed/__init__.py b/home/doctype/feed/__init__.py
similarity index 100%
rename from erpnext/home/doctype/feed/__init__.py
rename to home/doctype/feed/__init__.py
diff --git a/erpnext/home/doctype/feed/feed.py b/home/doctype/feed/feed.py
similarity index 100%
rename from erpnext/home/doctype/feed/feed.py
rename to home/doctype/feed/feed.py
diff --git a/erpnext/home/doctype/feed/feed.txt b/home/doctype/feed/feed.txt
similarity index 100%
rename from erpnext/home/doctype/feed/feed.txt
rename to home/doctype/feed/feed.txt
diff --git a/erpnext/home/doctype/home_control/__init__.py b/home/doctype/home_control/__init__.py
similarity index 100%
rename from erpnext/home/doctype/home_control/__init__.py
rename to home/doctype/home_control/__init__.py
diff --git a/erpnext/home/doctype/home_control/home_control.py b/home/doctype/home_control/home_control.py
similarity index 100%
rename from erpnext/home/doctype/home_control/home_control.py
rename to home/doctype/home_control/home_control.py
diff --git a/erpnext/home/doctype/home_control/home_control.txt b/home/doctype/home_control/home_control.txt
similarity index 100%
rename from erpnext/home/doctype/home_control/home_control.txt
rename to home/doctype/home_control/home_control.txt
diff --git a/erpnext/home/page/__init__.py b/home/page/__init__.py
similarity index 100%
rename from erpnext/home/page/__init__.py
rename to home/page/__init__.py
diff --git a/erpnext/home/page/activity/__init__.py b/home/page/activity/__init__.py
similarity index 100%
rename from erpnext/home/page/activity/__init__.py
rename to home/page/activity/__init__.py
diff --git a/erpnext/home/page/activity/activity.css b/home/page/activity/activity.css
similarity index 100%
rename from erpnext/home/page/activity/activity.css
rename to home/page/activity/activity.css
diff --git a/erpnext/home/page/activity/activity.html b/home/page/activity/activity.html
similarity index 100%
rename from erpnext/home/page/activity/activity.html
rename to home/page/activity/activity.html
diff --git a/erpnext/home/page/activity/activity.js b/home/page/activity/activity.js
similarity index 100%
rename from erpnext/home/page/activity/activity.js
rename to home/page/activity/activity.js
diff --git a/erpnext/home/page/activity/activity.py b/home/page/activity/activity.py
similarity index 100%
rename from erpnext/home/page/activity/activity.py
rename to home/page/activity/activity.py
diff --git a/erpnext/home/page/activity/activity.txt b/home/page/activity/activity.txt
similarity index 100%
rename from erpnext/home/page/activity/activity.txt
rename to home/page/activity/activity.txt
diff --git a/erpnext/home/page/attributions/__init__.py b/home/page/attributions/__init__.py
similarity index 100%
rename from erpnext/home/page/attributions/__init__.py
rename to home/page/attributions/__init__.py
diff --git a/erpnext/home/page/attributions/attributions.css b/home/page/attributions/attributions.css
similarity index 100%
rename from erpnext/home/page/attributions/attributions.css
rename to home/page/attributions/attributions.css
diff --git a/erpnext/home/page/attributions/attributions.html b/home/page/attributions/attributions.html
similarity index 100%
rename from erpnext/home/page/attributions/attributions.html
rename to home/page/attributions/attributions.html
diff --git a/erpnext/home/page/attributions/attributions.js b/home/page/attributions/attributions.js
similarity index 100%
rename from erpnext/home/page/attributions/attributions.js
rename to home/page/attributions/attributions.js
diff --git a/erpnext/home/page/attributions/attributions.py b/home/page/attributions/attributions.py
similarity index 100%
rename from erpnext/home/page/attributions/attributions.py
rename to home/page/attributions/attributions.py
diff --git a/erpnext/home/page/attributions/attributions.txt b/home/page/attributions/attributions.txt
similarity index 100%
rename from erpnext/home/page/attributions/attributions.txt
rename to home/page/attributions/attributions.txt
diff --git a/erpnext/home/page/dashboard/__init__.py b/home/page/dashboard/__init__.py
similarity index 100%
rename from erpnext/home/page/dashboard/__init__.py
rename to home/page/dashboard/__init__.py
diff --git a/erpnext/home/page/dashboard/dashboard.css b/home/page/dashboard/dashboard.css
similarity index 100%
rename from erpnext/home/page/dashboard/dashboard.css
rename to home/page/dashboard/dashboard.css
diff --git a/erpnext/home/page/dashboard/dashboard.html b/home/page/dashboard/dashboard.html
similarity index 100%
rename from erpnext/home/page/dashboard/dashboard.html
rename to home/page/dashboard/dashboard.html
diff --git a/erpnext/home/page/dashboard/dashboard.js b/home/page/dashboard/dashboard.js
similarity index 91%
rename from erpnext/home/page/dashboard/dashboard.js
rename to home/page/dashboard/dashboard.js
index fba3cd7..743f84e 100644
--- a/erpnext/home/page/dashboard/dashboard.js
+++ b/home/page/dashboard/dashboard.js
@@ -16,12 +16,12 @@
 
 pscript.onload_dashboard = function() {
 	// load jqplot
-	wn.require('js/lib/jqplot/css/jqplot.css');
-	wn.require('js/lib/jqplot/jquery.jqplot.min.js');
-	wn.require('js/lib/jqplot/jqplot-plugins/jqplot.barRenderer.js'); 
-	wn.require('js/lib/jqplot/jqplot-plugins/jqplot.canvasAxisTickRenderer.min.js');
-	wn.require('js/lib/jqplot/jqplot-plugins/jqplot.canvasTextRenderer.min.js');
-	wn.require('js/lib/jqplot/jqplot-plugins/jqplot.categoryAxisRenderer.min.js');
+	wn.require('lib/js/lib/jqplot/css/jqplot.css');
+	wn.require('lib/js/lib/jqplot/jquery.jqplot.min.js');
+	wn.require('lib/js/lib/jqplot/jqplot-plugins/jqplot.barRenderer.js'); 
+	wn.require('lib/js/lib/jqplot/jqplot-plugins/jqplot.canvasAxisTickRenderer.min.js');
+	wn.require('lib/js/lib/jqplot/jqplot-plugins/jqplot.canvasTextRenderer.min.js');
+	wn.require('lib/js/lib/jqplot/jqplot-plugins/jqplot.categoryAxisRenderer.min.js');
 
 
 	pscript.dashboard_settings = {
diff --git a/erpnext/home/page/dashboard/dashboard.py b/home/page/dashboard/dashboard.py
similarity index 100%
rename from erpnext/home/page/dashboard/dashboard.py
rename to home/page/dashboard/dashboard.py
diff --git a/erpnext/home/page/dashboard/dashboard.txt b/home/page/dashboard/dashboard.txt
similarity index 100%
rename from erpnext/home/page/dashboard/dashboard.txt
rename to home/page/dashboard/dashboard.txt
diff --git a/erpnext/home/page/desktop/__init__.py b/home/page/desktop/__init__.py
similarity index 100%
rename from erpnext/home/page/desktop/__init__.py
rename to home/page/desktop/__init__.py
diff --git a/erpnext/home/page/desktop/desktop.css b/home/page/desktop/desktop.css
similarity index 100%
rename from erpnext/home/page/desktop/desktop.css
rename to home/page/desktop/desktop.css
diff --git a/erpnext/home/page/desktop/desktop.html b/home/page/desktop/desktop.html
similarity index 100%
rename from erpnext/home/page/desktop/desktop.html
rename to home/page/desktop/desktop.html
diff --git a/erpnext/home/page/desktop/desktop.js b/home/page/desktop/desktop.js
similarity index 100%
rename from erpnext/home/page/desktop/desktop.js
rename to home/page/desktop/desktop.js
diff --git a/erpnext/home/page/desktop/desktop.txt b/home/page/desktop/desktop.txt
similarity index 100%
rename from erpnext/home/page/desktop/desktop.txt
rename to home/page/desktop/desktop.txt
diff --git a/erpnext/home/page/profile_settings/__init__.py b/home/page/profile_settings/__init__.py
similarity index 100%
rename from erpnext/home/page/profile_settings/__init__.py
rename to home/page/profile_settings/__init__.py
diff --git a/erpnext/home/page/profile_settings/profile_settings.html b/home/page/profile_settings/profile_settings.html
similarity index 100%
rename from erpnext/home/page/profile_settings/profile_settings.html
rename to home/page/profile_settings/profile_settings.html
diff --git a/erpnext/home/page/profile_settings/profile_settings.js b/home/page/profile_settings/profile_settings.js
similarity index 100%
rename from erpnext/home/page/profile_settings/profile_settings.js
rename to home/page/profile_settings/profile_settings.js
diff --git a/erpnext/home/page/profile_settings/profile_settings.py b/home/page/profile_settings/profile_settings.py
similarity index 100%
rename from erpnext/home/page/profile_settings/profile_settings.py
rename to home/page/profile_settings/profile_settings.py
diff --git a/erpnext/home/page/profile_settings/profile_settings.txt b/home/page/profile_settings/profile_settings.txt
similarity index 100%
rename from erpnext/home/page/profile_settings/profile_settings.txt
rename to home/page/profile_settings/profile_settings.txt
diff --git a/erpnext/hr/Deduction Type/Income Tax/Income Tax.txt b/hr/Deduction Type/Income Tax/Income Tax.txt
similarity index 100%
rename from erpnext/hr/Deduction Type/Income Tax/Income Tax.txt
rename to hr/Deduction Type/Income Tax/Income Tax.txt
diff --git a/erpnext/hr/Deduction Type/Professional Tax/Professional Tax.txt b/hr/Deduction Type/Professional Tax/Professional Tax.txt
similarity index 100%
rename from erpnext/hr/Deduction Type/Professional Tax/Professional Tax.txt
rename to hr/Deduction Type/Professional Tax/Professional Tax.txt
diff --git a/erpnext/hr/Deduction Type/Provident Fund/Provident Fund.txt b/hr/Deduction Type/Provident Fund/Provident Fund.txt
similarity index 100%
rename from erpnext/hr/Deduction Type/Provident Fund/Provident Fund.txt
rename to hr/Deduction Type/Provident Fund/Provident Fund.txt
diff --git a/erpnext/hr/DocType Mapper/Appraisal Template-Appraisal/Appraisal Template-Appraisal.txt b/hr/DocType Mapper/Appraisal Template-Appraisal/Appraisal Template-Appraisal.txt
similarity index 100%
rename from erpnext/hr/DocType Mapper/Appraisal Template-Appraisal/Appraisal Template-Appraisal.txt
rename to hr/DocType Mapper/Appraisal Template-Appraisal/Appraisal Template-Appraisal.txt
diff --git a/erpnext/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt b/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
similarity index 100%
rename from erpnext/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
rename to hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
diff --git a/erpnext/hr/Earning Type/Basic/Basic.txt b/hr/Earning Type/Basic/Basic.txt
similarity index 100%
rename from erpnext/hr/Earning Type/Basic/Basic.txt
rename to hr/Earning Type/Basic/Basic.txt
diff --git a/erpnext/hr/Earning Type/House Rent Allowance/House Rent Allowance.txt b/hr/Earning Type/House Rent Allowance/House Rent Allowance.txt
similarity index 100%
rename from erpnext/hr/Earning Type/House Rent Allowance/House Rent Allowance.txt
rename to hr/Earning Type/House Rent Allowance/House Rent Allowance.txt
diff --git a/erpnext/hr/Expense Type/Calls/Calls.txt b/hr/Expense Type/Calls/Calls.txt
similarity index 100%
rename from erpnext/hr/Expense Type/Calls/Calls.txt
rename to hr/Expense Type/Calls/Calls.txt
diff --git a/erpnext/hr/Expense Type/Food/Food.txt b/hr/Expense Type/Food/Food.txt
similarity index 100%
rename from erpnext/hr/Expense Type/Food/Food.txt
rename to hr/Expense Type/Food/Food.txt
diff --git a/erpnext/hr/Expense Type/Medical/Medical.txt b/hr/Expense Type/Medical/Medical.txt
similarity index 100%
rename from erpnext/hr/Expense Type/Medical/Medical.txt
rename to hr/Expense Type/Medical/Medical.txt
diff --git a/erpnext/hr/Expense Type/Others/Others.txt b/hr/Expense Type/Others/Others.txt
similarity index 100%
rename from erpnext/hr/Expense Type/Others/Others.txt
rename to hr/Expense Type/Others/Others.txt
diff --git a/erpnext/hr/Expense Type/Travel/Travel.txt b/hr/Expense Type/Travel/Travel.txt
similarity index 100%
rename from erpnext/hr/Expense Type/Travel/Travel.txt
rename to hr/Expense Type/Travel/Travel.txt
diff --git a/erpnext/hr/Leave Type/Casual Leave/Casual Leave.txt b/hr/Leave Type/Casual Leave/Casual Leave.txt
similarity index 100%
rename from erpnext/hr/Leave Type/Casual Leave/Casual Leave.txt
rename to hr/Leave Type/Casual Leave/Casual Leave.txt
diff --git a/erpnext/hr/Leave Type/Compensatory Off/Compensatory Off.txt b/hr/Leave Type/Compensatory Off/Compensatory Off.txt
similarity index 100%
rename from erpnext/hr/Leave Type/Compensatory Off/Compensatory Off.txt
rename to hr/Leave Type/Compensatory Off/Compensatory Off.txt
diff --git a/erpnext/hr/Leave Type/Leave Without Pay/Leave Without Pay.txt b/hr/Leave Type/Leave Without Pay/Leave Without Pay.txt
similarity index 100%
rename from erpnext/hr/Leave Type/Leave Without Pay/Leave Without Pay.txt
rename to hr/Leave Type/Leave Without Pay/Leave Without Pay.txt
diff --git a/erpnext/hr/Leave Type/Privilege Leave/Privilege Leave.txt b/hr/Leave Type/Privilege Leave/Privilege Leave.txt
similarity index 100%
rename from erpnext/hr/Leave Type/Privilege Leave/Privilege Leave.txt
rename to hr/Leave Type/Privilege Leave/Privilege Leave.txt
diff --git a/erpnext/hr/Leave Type/Sick Leave/Sick Leave.txt b/hr/Leave Type/Sick Leave/Sick Leave.txt
similarity index 100%
rename from erpnext/hr/Leave Type/Sick Leave/Sick Leave.txt
rename to hr/Leave Type/Sick Leave/Sick Leave.txt
diff --git a/erpnext/hr/__init__.py b/hr/__init__.py
similarity index 100%
rename from erpnext/hr/__init__.py
rename to hr/__init__.py
diff --git a/erpnext/hr/doctype/__init__.py b/hr/doctype/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/__init__.py
rename to hr/doctype/__init__.py
diff --git a/erpnext/hr/doctype/appraisal/__init__.py b/hr/doctype/appraisal/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/appraisal/__init__.py
rename to hr/doctype/appraisal/__init__.py
diff --git a/erpnext/hr/doctype/appraisal/appraisal.js b/hr/doctype/appraisal/appraisal.js
similarity index 100%
rename from erpnext/hr/doctype/appraisal/appraisal.js
rename to hr/doctype/appraisal/appraisal.js
diff --git a/erpnext/hr/doctype/appraisal/appraisal.py b/hr/doctype/appraisal/appraisal.py
similarity index 100%
rename from erpnext/hr/doctype/appraisal/appraisal.py
rename to hr/doctype/appraisal/appraisal.py
diff --git a/erpnext/hr/doctype/appraisal/appraisal.txt b/hr/doctype/appraisal/appraisal.txt
similarity index 100%
rename from erpnext/hr/doctype/appraisal/appraisal.txt
rename to hr/doctype/appraisal/appraisal.txt
diff --git a/erpnext/hr/doctype/appraisal/appraisal_list.js b/hr/doctype/appraisal/appraisal_list.js
similarity index 100%
rename from erpnext/hr/doctype/appraisal/appraisal_list.js
rename to hr/doctype/appraisal/appraisal_list.js
diff --git a/erpnext/hr/doctype/appraisal_goal/__init__.py b/hr/doctype/appraisal_goal/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/appraisal_goal/__init__.py
rename to hr/doctype/appraisal_goal/__init__.py
diff --git a/erpnext/hr/doctype/appraisal_goal/appraisal_goal.txt b/hr/doctype/appraisal_goal/appraisal_goal.txt
similarity index 100%
rename from erpnext/hr/doctype/appraisal_goal/appraisal_goal.txt
rename to hr/doctype/appraisal_goal/appraisal_goal.txt
diff --git a/erpnext/hr/doctype/appraisal_template/__init__.py b/hr/doctype/appraisal_template/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/appraisal_template/__init__.py
rename to hr/doctype/appraisal_template/__init__.py
diff --git a/erpnext/hr/doctype/appraisal_template/appraisal_template.txt b/hr/doctype/appraisal_template/appraisal_template.txt
similarity index 100%
rename from erpnext/hr/doctype/appraisal_template/appraisal_template.txt
rename to hr/doctype/appraisal_template/appraisal_template.txt
diff --git a/erpnext/hr/doctype/appraisal_template_goal/__init__.py b/hr/doctype/appraisal_template_goal/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/appraisal_template_goal/__init__.py
rename to hr/doctype/appraisal_template_goal/__init__.py
diff --git a/erpnext/hr/doctype/appraisal_template_goal/appraisal_template_goal.txt b/hr/doctype/appraisal_template_goal/appraisal_template_goal.txt
similarity index 100%
rename from erpnext/hr/doctype/appraisal_template_goal/appraisal_template_goal.txt
rename to hr/doctype/appraisal_template_goal/appraisal_template_goal.txt
diff --git a/erpnext/hr/doctype/attendance/__init__.py b/hr/doctype/attendance/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/attendance/__init__.py
rename to hr/doctype/attendance/__init__.py
diff --git a/erpnext/hr/doctype/attendance/attendance.js b/hr/doctype/attendance/attendance.js
similarity index 100%
rename from erpnext/hr/doctype/attendance/attendance.js
rename to hr/doctype/attendance/attendance.js
diff --git a/erpnext/hr/doctype/attendance/attendance.py b/hr/doctype/attendance/attendance.py
similarity index 100%
rename from erpnext/hr/doctype/attendance/attendance.py
rename to hr/doctype/attendance/attendance.py
diff --git a/erpnext/hr/doctype/attendance/attendance.txt b/hr/doctype/attendance/attendance.txt
similarity index 100%
rename from erpnext/hr/doctype/attendance/attendance.txt
rename to hr/doctype/attendance/attendance.txt
diff --git a/erpnext/hr/doctype/attendance/attendance_list.js b/hr/doctype/attendance/attendance_list.js
similarity index 100%
rename from erpnext/hr/doctype/attendance/attendance_list.js
rename to hr/doctype/attendance/attendance_list.js
diff --git a/erpnext/hr/doctype/attendance_control_panel/__init__.py b/hr/doctype/attendance_control_panel/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/attendance_control_panel/__init__.py
rename to hr/doctype/attendance_control_panel/__init__.py
diff --git a/erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.js b/hr/doctype/attendance_control_panel/attendance_control_panel.js
similarity index 100%
rename from erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.js
rename to hr/doctype/attendance_control_panel/attendance_control_panel.js
diff --git a/erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.py b/hr/doctype/attendance_control_panel/attendance_control_panel.py
similarity index 100%
rename from erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.py
rename to hr/doctype/attendance_control_panel/attendance_control_panel.py
diff --git a/erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.txt b/hr/doctype/attendance_control_panel/attendance_control_panel.txt
similarity index 100%
rename from erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.txt
rename to hr/doctype/attendance_control_panel/attendance_control_panel.txt
diff --git a/erpnext/hr/doctype/branch/__init__.py b/hr/doctype/branch/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/branch/__init__.py
rename to hr/doctype/branch/__init__.py
diff --git a/erpnext/hr/doctype/branch/branch.txt b/hr/doctype/branch/branch.txt
similarity index 100%
rename from erpnext/hr/doctype/branch/branch.txt
rename to hr/doctype/branch/branch.txt
diff --git a/erpnext/hr/doctype/deduction_type/__init__.py b/hr/doctype/deduction_type/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/deduction_type/__init__.py
rename to hr/doctype/deduction_type/__init__.py
diff --git a/erpnext/hr/doctype/deduction_type/deduction_type.txt b/hr/doctype/deduction_type/deduction_type.txt
similarity index 100%
rename from erpnext/hr/doctype/deduction_type/deduction_type.txt
rename to hr/doctype/deduction_type/deduction_type.txt
diff --git a/erpnext/hr/doctype/department/__init__.py b/hr/doctype/department/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/department/__init__.py
rename to hr/doctype/department/__init__.py
diff --git a/erpnext/hr/doctype/department/department.txt b/hr/doctype/department/department.txt
similarity index 100%
rename from erpnext/hr/doctype/department/department.txt
rename to hr/doctype/department/department.txt
diff --git a/erpnext/hr/doctype/designation/__init__.py b/hr/doctype/designation/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/designation/__init__.py
rename to hr/doctype/designation/__init__.py
diff --git a/erpnext/hr/doctype/designation/designation.txt b/hr/doctype/designation/designation.txt
similarity index 100%
rename from erpnext/hr/doctype/designation/designation.txt
rename to hr/doctype/designation/designation.txt
diff --git a/erpnext/hr/doctype/earning_type/__init__.py b/hr/doctype/earning_type/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/earning_type/__init__.py
rename to hr/doctype/earning_type/__init__.py
diff --git a/erpnext/hr/doctype/earning_type/earning_type.txt b/hr/doctype/earning_type/earning_type.txt
similarity index 100%
rename from erpnext/hr/doctype/earning_type/earning_type.txt
rename to hr/doctype/earning_type/earning_type.txt
diff --git a/erpnext/hr/doctype/employee/__init__.py b/hr/doctype/employee/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/employee/__init__.py
rename to hr/doctype/employee/__init__.py
diff --git a/erpnext/hr/doctype/employee/employee.js b/hr/doctype/employee/employee.js
similarity index 100%
rename from erpnext/hr/doctype/employee/employee.js
rename to hr/doctype/employee/employee.js
diff --git a/erpnext/hr/doctype/employee/employee.py b/hr/doctype/employee/employee.py
similarity index 100%
rename from erpnext/hr/doctype/employee/employee.py
rename to hr/doctype/employee/employee.py
diff --git a/erpnext/hr/doctype/employee/employee.txt b/hr/doctype/employee/employee.txt
similarity index 100%
rename from erpnext/hr/doctype/employee/employee.txt
rename to hr/doctype/employee/employee.txt
diff --git a/erpnext/hr/doctype/employee/employee_list.js b/hr/doctype/employee/employee_list.js
similarity index 100%
rename from erpnext/hr/doctype/employee/employee_list.js
rename to hr/doctype/employee/employee_list.js
diff --git a/erpnext/hr/doctype/employee_education/__init__.py b/hr/doctype/employee_education/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/employee_education/__init__.py
rename to hr/doctype/employee_education/__init__.py
diff --git a/erpnext/hr/doctype/employee_education/employee_education.txt b/hr/doctype/employee_education/employee_education.txt
similarity index 100%
rename from erpnext/hr/doctype/employee_education/employee_education.txt
rename to hr/doctype/employee_education/employee_education.txt
diff --git a/erpnext/hr/doctype/employee_external_work_history/__init__.py b/hr/doctype/employee_external_work_history/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/employee_external_work_history/__init__.py
rename to hr/doctype/employee_external_work_history/__init__.py
diff --git a/erpnext/hr/doctype/employee_external_work_history/employee_external_work_history.txt b/hr/doctype/employee_external_work_history/employee_external_work_history.txt
similarity index 100%
rename from erpnext/hr/doctype/employee_external_work_history/employee_external_work_history.txt
rename to hr/doctype/employee_external_work_history/employee_external_work_history.txt
diff --git a/erpnext/hr/doctype/employee_internal_work_history/__init__.py b/hr/doctype/employee_internal_work_history/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/employee_internal_work_history/__init__.py
rename to hr/doctype/employee_internal_work_history/__init__.py
diff --git a/erpnext/hr/doctype/employee_internal_work_history/employee_internal_work_history.txt b/hr/doctype/employee_internal_work_history/employee_internal_work_history.txt
similarity index 100%
rename from erpnext/hr/doctype/employee_internal_work_history/employee_internal_work_history.txt
rename to hr/doctype/employee_internal_work_history/employee_internal_work_history.txt
diff --git a/erpnext/hr/doctype/employee_training/__init__.py b/hr/doctype/employee_training/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/employee_training/__init__.py
rename to hr/doctype/employee_training/__init__.py
diff --git a/erpnext/hr/doctype/employee_training/employee_training.txt b/hr/doctype/employee_training/employee_training.txt
similarity index 100%
rename from erpnext/hr/doctype/employee_training/employee_training.txt
rename to hr/doctype/employee_training/employee_training.txt
diff --git a/erpnext/hr/doctype/employment_type/__init__.py b/hr/doctype/employment_type/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/employment_type/__init__.py
rename to hr/doctype/employment_type/__init__.py
diff --git a/erpnext/hr/doctype/employment_type/employment_type.txt b/hr/doctype/employment_type/employment_type.txt
similarity index 100%
rename from erpnext/hr/doctype/employment_type/employment_type.txt
rename to hr/doctype/employment_type/employment_type.txt
diff --git a/erpnext/hr/doctype/expense_claim/__init__.py b/hr/doctype/expense_claim/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/expense_claim/__init__.py
rename to hr/doctype/expense_claim/__init__.py
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim.js b/hr/doctype/expense_claim/expense_claim.js
similarity index 100%
rename from erpnext/hr/doctype/expense_claim/expense_claim.js
rename to hr/doctype/expense_claim/expense_claim.js
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim.py b/hr/doctype/expense_claim/expense_claim.py
similarity index 100%
rename from erpnext/hr/doctype/expense_claim/expense_claim.py
rename to hr/doctype/expense_claim/expense_claim.py
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim.txt b/hr/doctype/expense_claim/expense_claim.txt
similarity index 100%
rename from erpnext/hr/doctype/expense_claim/expense_claim.txt
rename to hr/doctype/expense_claim/expense_claim.txt
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim_list.js b/hr/doctype/expense_claim/expense_claim_list.js
similarity index 100%
rename from erpnext/hr/doctype/expense_claim/expense_claim_list.js
rename to hr/doctype/expense_claim/expense_claim_list.js
diff --git a/erpnext/hr/doctype/expense_claim_detail/__init__.py b/hr/doctype/expense_claim_detail/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/expense_claim_detail/__init__.py
rename to hr/doctype/expense_claim_detail/__init__.py
diff --git a/erpnext/hr/doctype/expense_claim_detail/expense_claim_detail.txt b/hr/doctype/expense_claim_detail/expense_claim_detail.txt
similarity index 100%
rename from erpnext/hr/doctype/expense_claim_detail/expense_claim_detail.txt
rename to hr/doctype/expense_claim_detail/expense_claim_detail.txt
diff --git a/erpnext/hr/doctype/expense_claim_type/__init__.py b/hr/doctype/expense_claim_type/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/expense_claim_type/__init__.py
rename to hr/doctype/expense_claim_type/__init__.py
diff --git a/erpnext/hr/doctype/expense_claim_type/expense_claim_type.txt b/hr/doctype/expense_claim_type/expense_claim_type.txt
similarity index 100%
rename from erpnext/hr/doctype/expense_claim_type/expense_claim_type.txt
rename to hr/doctype/expense_claim_type/expense_claim_type.txt
diff --git a/erpnext/hr/doctype/grade/__init__.py b/hr/doctype/grade/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/grade/__init__.py
rename to hr/doctype/grade/__init__.py
diff --git a/erpnext/hr/doctype/grade/grade.txt b/hr/doctype/grade/grade.txt
similarity index 100%
rename from erpnext/hr/doctype/grade/grade.txt
rename to hr/doctype/grade/grade.txt
diff --git a/erpnext/hr/doctype/holiday/__init__.py b/hr/doctype/holiday/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/holiday/__init__.py
rename to hr/doctype/holiday/__init__.py
diff --git a/erpnext/hr/doctype/holiday/holiday.txt b/hr/doctype/holiday/holiday.txt
similarity index 100%
rename from erpnext/hr/doctype/holiday/holiday.txt
rename to hr/doctype/holiday/holiday.txt
diff --git a/erpnext/hr/doctype/holiday_list/__init__.py b/hr/doctype/holiday_list/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/holiday_list/__init__.py
rename to hr/doctype/holiday_list/__init__.py
diff --git a/erpnext/hr/doctype/holiday_list/holiday_list.py b/hr/doctype/holiday_list/holiday_list.py
similarity index 100%
rename from erpnext/hr/doctype/holiday_list/holiday_list.py
rename to hr/doctype/holiday_list/holiday_list.py
diff --git a/erpnext/hr/doctype/holiday_list/holiday_list.txt b/hr/doctype/holiday_list/holiday_list.txt
similarity index 100%
rename from erpnext/hr/doctype/holiday_list/holiday_list.txt
rename to hr/doctype/holiday_list/holiday_list.txt
diff --git a/erpnext/hr/doctype/leave_allocation/__init__.py b/hr/doctype/leave_allocation/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/leave_allocation/__init__.py
rename to hr/doctype/leave_allocation/__init__.py
diff --git a/erpnext/hr/doctype/leave_allocation/leave_allocation.js b/hr/doctype/leave_allocation/leave_allocation.js
similarity index 100%
rename from erpnext/hr/doctype/leave_allocation/leave_allocation.js
rename to hr/doctype/leave_allocation/leave_allocation.js
diff --git a/erpnext/hr/doctype/leave_allocation/leave_allocation.py b/hr/doctype/leave_allocation/leave_allocation.py
similarity index 100%
rename from erpnext/hr/doctype/leave_allocation/leave_allocation.py
rename to hr/doctype/leave_allocation/leave_allocation.py
diff --git a/erpnext/hr/doctype/leave_allocation/leave_allocation.txt b/hr/doctype/leave_allocation/leave_allocation.txt
similarity index 100%
rename from erpnext/hr/doctype/leave_allocation/leave_allocation.txt
rename to hr/doctype/leave_allocation/leave_allocation.txt
diff --git a/erpnext/hr/doctype/leave_application/__init__.py b/hr/doctype/leave_application/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/leave_application/__init__.py
rename to hr/doctype/leave_application/__init__.py
diff --git a/erpnext/hr/doctype/leave_application/leave_application.js b/hr/doctype/leave_application/leave_application.js
similarity index 100%
rename from erpnext/hr/doctype/leave_application/leave_application.js
rename to hr/doctype/leave_application/leave_application.js
diff --git a/erpnext/hr/doctype/leave_application/leave_application.py b/hr/doctype/leave_application/leave_application.py
similarity index 100%
rename from erpnext/hr/doctype/leave_application/leave_application.py
rename to hr/doctype/leave_application/leave_application.py
diff --git a/erpnext/hr/doctype/leave_application/leave_application.txt b/hr/doctype/leave_application/leave_application.txt
similarity index 100%
rename from erpnext/hr/doctype/leave_application/leave_application.txt
rename to hr/doctype/leave_application/leave_application.txt
diff --git a/erpnext/hr/doctype/leave_application/leave_application_list.js b/hr/doctype/leave_application/leave_application_list.js
similarity index 100%
rename from erpnext/hr/doctype/leave_application/leave_application_list.js
rename to hr/doctype/leave_application/leave_application_list.js
diff --git a/erpnext/hr/doctype/leave_control_panel/__init__.py b/hr/doctype/leave_control_panel/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/leave_control_panel/__init__.py
rename to hr/doctype/leave_control_panel/__init__.py
diff --git a/erpnext/hr/doctype/leave_control_panel/leave_control_panel.js b/hr/doctype/leave_control_panel/leave_control_panel.js
similarity index 100%
rename from erpnext/hr/doctype/leave_control_panel/leave_control_panel.js
rename to hr/doctype/leave_control_panel/leave_control_panel.js
diff --git a/erpnext/hr/doctype/leave_control_panel/leave_control_panel.py b/hr/doctype/leave_control_panel/leave_control_panel.py
similarity index 100%
rename from erpnext/hr/doctype/leave_control_panel/leave_control_panel.py
rename to hr/doctype/leave_control_panel/leave_control_panel.py
diff --git a/erpnext/hr/doctype/leave_control_panel/leave_control_panel.txt b/hr/doctype/leave_control_panel/leave_control_panel.txt
similarity index 100%
rename from erpnext/hr/doctype/leave_control_panel/leave_control_panel.txt
rename to hr/doctype/leave_control_panel/leave_control_panel.txt
diff --git a/erpnext/hr/doctype/leave_type/__init__.py b/hr/doctype/leave_type/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/leave_type/__init__.py
rename to hr/doctype/leave_type/__init__.py
diff --git a/erpnext/hr/doctype/leave_type/leave_type.txt b/hr/doctype/leave_type/leave_type.txt
similarity index 100%
rename from erpnext/hr/doctype/leave_type/leave_type.txt
rename to hr/doctype/leave_type/leave_type.txt
diff --git a/erpnext/hr/doctype/other_income_detail/__init__.py b/hr/doctype/other_income_detail/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/other_income_detail/__init__.py
rename to hr/doctype/other_income_detail/__init__.py
diff --git a/erpnext/hr/doctype/other_income_detail/other_income_detail.txt b/hr/doctype/other_income_detail/other_income_detail.txt
similarity index 100%
rename from erpnext/hr/doctype/other_income_detail/other_income_detail.txt
rename to hr/doctype/other_income_detail/other_income_detail.txt
diff --git a/erpnext/hr/doctype/salary_manager/__init__.py b/hr/doctype/salary_manager/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/salary_manager/__init__.py
rename to hr/doctype/salary_manager/__init__.py
diff --git a/erpnext/hr/doctype/salary_manager/salary_manager.js b/hr/doctype/salary_manager/salary_manager.js
similarity index 100%
rename from erpnext/hr/doctype/salary_manager/salary_manager.js
rename to hr/doctype/salary_manager/salary_manager.js
diff --git a/erpnext/hr/doctype/salary_manager/salary_manager.py b/hr/doctype/salary_manager/salary_manager.py
similarity index 100%
rename from erpnext/hr/doctype/salary_manager/salary_manager.py
rename to hr/doctype/salary_manager/salary_manager.py
diff --git a/erpnext/hr/doctype/salary_manager/salary_manager.txt b/hr/doctype/salary_manager/salary_manager.txt
similarity index 100%
rename from erpnext/hr/doctype/salary_manager/salary_manager.txt
rename to hr/doctype/salary_manager/salary_manager.txt
diff --git a/erpnext/hr/doctype/salary_manager/test_salary_manager.py b/hr/doctype/salary_manager/test_salary_manager.py
similarity index 100%
rename from erpnext/hr/doctype/salary_manager/test_salary_manager.py
rename to hr/doctype/salary_manager/test_salary_manager.py
diff --git a/erpnext/hr/doctype/salary_slip/__init__.py b/hr/doctype/salary_slip/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/salary_slip/__init__.py
rename to hr/doctype/salary_slip/__init__.py
diff --git a/erpnext/hr/doctype/salary_slip/salary_slip.js b/hr/doctype/salary_slip/salary_slip.js
similarity index 100%
rename from erpnext/hr/doctype/salary_slip/salary_slip.js
rename to hr/doctype/salary_slip/salary_slip.js
diff --git a/erpnext/hr/doctype/salary_slip/salary_slip.py b/hr/doctype/salary_slip/salary_slip.py
similarity index 100%
rename from erpnext/hr/doctype/salary_slip/salary_slip.py
rename to hr/doctype/salary_slip/salary_slip.py
diff --git a/erpnext/hr/doctype/salary_slip/salary_slip.txt b/hr/doctype/salary_slip/salary_slip.txt
similarity index 100%
rename from erpnext/hr/doctype/salary_slip/salary_slip.txt
rename to hr/doctype/salary_slip/salary_slip.txt
diff --git a/erpnext/hr/doctype/salary_slip/salary_slip_list.js b/hr/doctype/salary_slip/salary_slip_list.js
similarity index 100%
rename from erpnext/hr/doctype/salary_slip/salary_slip_list.js
rename to hr/doctype/salary_slip/salary_slip_list.js
diff --git a/erpnext/hr/doctype/salary_slip_deduction/__init__.py b/hr/doctype/salary_slip_deduction/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/salary_slip_deduction/__init__.py
rename to hr/doctype/salary_slip_deduction/__init__.py
diff --git a/erpnext/hr/doctype/salary_slip_deduction/salary_slip_deduction.txt b/hr/doctype/salary_slip_deduction/salary_slip_deduction.txt
similarity index 100%
rename from erpnext/hr/doctype/salary_slip_deduction/salary_slip_deduction.txt
rename to hr/doctype/salary_slip_deduction/salary_slip_deduction.txt
diff --git a/erpnext/hr/doctype/salary_slip_earning/__init__.py b/hr/doctype/salary_slip_earning/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/salary_slip_earning/__init__.py
rename to hr/doctype/salary_slip_earning/__init__.py
diff --git a/erpnext/hr/doctype/salary_slip_earning/salary_slip_earning.txt b/hr/doctype/salary_slip_earning/salary_slip_earning.txt
similarity index 100%
rename from erpnext/hr/doctype/salary_slip_earning/salary_slip_earning.txt
rename to hr/doctype/salary_slip_earning/salary_slip_earning.txt
diff --git a/erpnext/hr/doctype/salary_structure/__init__.py b/hr/doctype/salary_structure/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/salary_structure/__init__.py
rename to hr/doctype/salary_structure/__init__.py
diff --git a/erpnext/hr/doctype/salary_structure/listview.js b/hr/doctype/salary_structure/listview.js
similarity index 100%
rename from erpnext/hr/doctype/salary_structure/listview.js
rename to hr/doctype/salary_structure/listview.js
diff --git a/erpnext/hr/doctype/salary_structure/salary_structure.js b/hr/doctype/salary_structure/salary_structure.js
similarity index 100%
rename from erpnext/hr/doctype/salary_structure/salary_structure.js
rename to hr/doctype/salary_structure/salary_structure.js
diff --git a/erpnext/hr/doctype/salary_structure/salary_structure.py b/hr/doctype/salary_structure/salary_structure.py
similarity index 100%
rename from erpnext/hr/doctype/salary_structure/salary_structure.py
rename to hr/doctype/salary_structure/salary_structure.py
diff --git a/erpnext/hr/doctype/salary_structure/salary_structure.txt b/hr/doctype/salary_structure/salary_structure.txt
similarity index 100%
rename from erpnext/hr/doctype/salary_structure/salary_structure.txt
rename to hr/doctype/salary_structure/salary_structure.txt
diff --git a/erpnext/hr/doctype/salary_structure_deduction/__init__.py b/hr/doctype/salary_structure_deduction/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/salary_structure_deduction/__init__.py
rename to hr/doctype/salary_structure_deduction/__init__.py
diff --git a/erpnext/hr/doctype/salary_structure_deduction/salary_structure_deduction.txt b/hr/doctype/salary_structure_deduction/salary_structure_deduction.txt
similarity index 100%
rename from erpnext/hr/doctype/salary_structure_deduction/salary_structure_deduction.txt
rename to hr/doctype/salary_structure_deduction/salary_structure_deduction.txt
diff --git a/erpnext/hr/doctype/salary_structure_earning/__init__.py b/hr/doctype/salary_structure_earning/__init__.py
similarity index 100%
rename from erpnext/hr/doctype/salary_structure_earning/__init__.py
rename to hr/doctype/salary_structure_earning/__init__.py
diff --git a/erpnext/hr/doctype/salary_structure_earning/salary_structure_earning.txt b/hr/doctype/salary_structure_earning/salary_structure_earning.txt
similarity index 100%
rename from erpnext/hr/doctype/salary_structure_earning/salary_structure_earning.txt
rename to hr/doctype/salary_structure_earning/salary_structure_earning.txt
diff --git a/erpnext/hr/page/__init__.py b/hr/page/__init__.py
similarity index 100%
rename from erpnext/hr/page/__init__.py
rename to hr/page/__init__.py
diff --git a/erpnext/hr/page/hr_home/__init__.py b/hr/page/hr_home/__init__.py
similarity index 100%
rename from erpnext/hr/page/hr_home/__init__.py
rename to hr/page/hr_home/__init__.py
diff --git a/erpnext/hr/page/hr_home/hr_home.html b/hr/page/hr_home/hr_home.html
similarity index 100%
rename from erpnext/hr/page/hr_home/hr_home.html
rename to hr/page/hr_home/hr_home.html
diff --git a/erpnext/hr/page/hr_home/hr_home.js b/hr/page/hr_home/hr_home.js
similarity index 100%
rename from erpnext/hr/page/hr_home/hr_home.js
rename to hr/page/hr_home/hr_home.js
diff --git a/erpnext/hr/page/hr_home/hr_home.txt b/hr/page/hr_home/hr_home.txt
similarity index 100%
rename from erpnext/hr/page/hr_home/hr_home.txt
rename to hr/page/hr_home/hr_home.txt
diff --git a/erpnext/hr/search_criteria/__init__.py b/hr/search_criteria/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/__init__.py
rename to hr/search_criteria/__init__.py
diff --git a/erpnext/hr/search_criteria/employee_appraisals/__init__.py b/hr/search_criteria/employee_appraisals/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/employee_appraisals/__init__.py
rename to hr/search_criteria/employee_appraisals/__init__.py
diff --git a/erpnext/hr/search_criteria/employee_appraisals/employee_appraisals.txt b/hr/search_criteria/employee_appraisals/employee_appraisals.txt
similarity index 100%
rename from erpnext/hr/search_criteria/employee_appraisals/employee_appraisals.txt
rename to hr/search_criteria/employee_appraisals/employee_appraisals.txt
diff --git a/erpnext/hr/search_criteria/employee_information/__init__.py b/hr/search_criteria/employee_information/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/employee_information/__init__.py
rename to hr/search_criteria/employee_information/__init__.py
diff --git a/erpnext/hr/search_criteria/employee_information/employee_information.py b/hr/search_criteria/employee_information/employee_information.py
similarity index 100%
rename from erpnext/hr/search_criteria/employee_information/employee_information.py
rename to hr/search_criteria/employee_information/employee_information.py
diff --git a/erpnext/hr/search_criteria/employee_information/employee_information.txt b/hr/search_criteria/employee_information/employee_information.txt
similarity index 100%
rename from erpnext/hr/search_criteria/employee_information/employee_information.txt
rename to hr/search_criteria/employee_information/employee_information.txt
diff --git a/erpnext/hr/search_criteria/employees_birthday/__init__.py b/hr/search_criteria/employees_birthday/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/employees_birthday/__init__.py
rename to hr/search_criteria/employees_birthday/__init__.py
diff --git a/erpnext/hr/search_criteria/employees_birthday/employees_birthday.txt b/hr/search_criteria/employees_birthday/employees_birthday.txt
similarity index 100%
rename from erpnext/hr/search_criteria/employees_birthday/employees_birthday.txt
rename to hr/search_criteria/employees_birthday/employees_birthday.txt
diff --git a/erpnext/hr/search_criteria/employeewise_balance_leave_report/__init__.py b/hr/search_criteria/employeewise_balance_leave_report/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/employeewise_balance_leave_report/__init__.py
rename to hr/search_criteria/employeewise_balance_leave_report/__init__.py
diff --git a/erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.js b/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.js
similarity index 100%
rename from erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.js
rename to hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.js
diff --git a/erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.py b/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.py
similarity index 100%
rename from erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.py
rename to hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.py
diff --git a/erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.sql b/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.sql
similarity index 100%
rename from erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.sql
rename to hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.sql
diff --git a/erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.txt b/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.txt
similarity index 100%
rename from erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.txt
rename to hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.txt
diff --git a/erpnext/hr/search_criteria/expense_claims/__init__.py b/hr/search_criteria/expense_claims/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/expense_claims/__init__.py
rename to hr/search_criteria/expense_claims/__init__.py
diff --git a/erpnext/hr/search_criteria/expense_claims/expense_claims.txt b/hr/search_criteria/expense_claims/expense_claims.txt
similarity index 100%
rename from erpnext/hr/search_criteria/expense_claims/expense_claims.txt
rename to hr/search_criteria/expense_claims/expense_claims.txt
diff --git a/erpnext/hr/search_criteria/monthly_attendance_details/__init__.py b/hr/search_criteria/monthly_attendance_details/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/monthly_attendance_details/__init__.py
rename to hr/search_criteria/monthly_attendance_details/__init__.py
diff --git a/erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.js b/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.js
similarity index 100%
rename from erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.js
rename to hr/search_criteria/monthly_attendance_details/monthly_attendance_details.js
diff --git a/erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.py b/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.py
similarity index 100%
rename from erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.py
rename to hr/search_criteria/monthly_attendance_details/monthly_attendance_details.py
diff --git a/erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.sql b/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.sql
similarity index 100%
rename from erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.sql
rename to hr/search_criteria/monthly_attendance_details/monthly_attendance_details.sql
diff --git a/erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt b/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
similarity index 100%
rename from erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
rename to hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
diff --git a/erpnext/hr/search_criteria/monthly_salary_register/__init__.py b/hr/search_criteria/monthly_salary_register/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/monthly_salary_register/__init__.py
rename to hr/search_criteria/monthly_salary_register/__init__.py
diff --git a/erpnext/hr/search_criteria/monthly_salary_register/monthly_salary_register.py b/hr/search_criteria/monthly_salary_register/monthly_salary_register.py
similarity index 100%
rename from erpnext/hr/search_criteria/monthly_salary_register/monthly_salary_register.py
rename to hr/search_criteria/monthly_salary_register/monthly_salary_register.py
diff --git a/erpnext/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt b/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
similarity index 100%
rename from erpnext/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
rename to hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
diff --git a/erpnext/hr/search_criteria/new_or_left_employees_for_a_month/__init__.py b/hr/search_criteria/new_or_left_employees_for_a_month/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/new_or_left_employees_for_a_month/__init__.py
rename to hr/search_criteria/new_or_left_employees_for_a_month/__init__.py
diff --git a/erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.js b/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.js
similarity index 100%
rename from erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.js
rename to hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.js
diff --git a/erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.py b/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.py
similarity index 100%
rename from erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.py
rename to hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.py
diff --git a/erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt b/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
similarity index 100%
rename from erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
rename to hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
diff --git a/erpnext/hr/search_criteria/salary_register/__init__.py b/hr/search_criteria/salary_register/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/salary_register/__init__.py
rename to hr/search_criteria/salary_register/__init__.py
diff --git a/erpnext/hr/search_criteria/salary_register/salary_register.js b/hr/search_criteria/salary_register/salary_register.js
similarity index 100%
rename from erpnext/hr/search_criteria/salary_register/salary_register.js
rename to hr/search_criteria/salary_register/salary_register.js
diff --git a/erpnext/hr/search_criteria/salary_register/salary_register.py b/hr/search_criteria/salary_register/salary_register.py
similarity index 100%
rename from erpnext/hr/search_criteria/salary_register/salary_register.py
rename to hr/search_criteria/salary_register/salary_register.py
diff --git a/erpnext/hr/search_criteria/salary_register/salary_register.txt b/hr/search_criteria/salary_register/salary_register.txt
similarity index 100%
rename from erpnext/hr/search_criteria/salary_register/salary_register.txt
rename to hr/search_criteria/salary_register/salary_register.txt
diff --git a/erpnext/hr/search_criteria/salary_slips/__init__.py b/hr/search_criteria/salary_slips/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/salary_slips/__init__.py
rename to hr/search_criteria/salary_slips/__init__.py
diff --git a/erpnext/hr/search_criteria/salary_slips/salary_slips.txt b/hr/search_criteria/salary_slips/salary_slips.txt
similarity index 100%
rename from erpnext/hr/search_criteria/salary_slips/salary_slips.txt
rename to hr/search_criteria/salary_slips/salary_slips.txt
diff --git a/erpnext/hr/search_criteria/salary_structure_details/__init__.py b/hr/search_criteria/salary_structure_details/__init__.py
similarity index 100%
rename from erpnext/hr/search_criteria/salary_structure_details/__init__.py
rename to hr/search_criteria/salary_structure_details/__init__.py
diff --git a/erpnext/hr/search_criteria/salary_structure_details/salary_structure_details.txt b/hr/search_criteria/salary_structure_details/salary_structure_details.txt
similarity index 100%
rename from erpnext/hr/search_criteria/salary_structure_details/salary_structure_details.txt
rename to hr/search_criteria/salary_structure_details/salary_structure_details.txt
diff --git a/install_erpnext.py b/install_erpnext.py
index 240eca6..0577d6a 100644
--- a/install_erpnext.py
+++ b/install_erpnext.py
@@ -72,11 +72,9 @@
 	# manipulate content
 	import re
 	
-	# set new_dbname, new_dbpassword, modules_path, files_path, backup_path, log_file_name
+	# set new_dbname, new_dbpassword, files_path, backup_path, log_file_name
 	content = re.sub("db_name.*", "db_name = '%s'" % new_dbname, content)
 	content = re.sub("db_password.*", "db_password = '%s'" % new_dbpassword, content)
-	content = re.sub("modules_path.*", "modules_path = '%s'" % \
-		os.path.join(erpnext_path, 'erpnext'), content)
 	content = re.sub("files_path.*", "files_path = '%s'" % \
 		os.path.join(erpnext_path, 'files'), content)
 	content = re.sub("backup_path.*", "backup_path = '%s'" % \
@@ -91,10 +89,9 @@
 
 # install db
 import sys
-sys.path.append(erpnext_path)
-sys.path.append(os.path.join(erpnext_path, 'lib', 'py'))
-import conf
-sys.path.append(conf.modules_path)
+sys.path.append('.')
+sys.path.append('lib')
+sys.path.append('app')
 
 from webnotes.install_lib.install import Installer
 inst = Installer('root', root_pwd)
diff --git a/erpnext/patches/__init__.py b/patches/__init__.py
similarity index 100%
rename from erpnext/patches/__init__.py
rename to patches/__init__.py
diff --git a/erpnext/patches/april_2012/__init__.py b/patches/april_2012/__init__.py
similarity index 100%
rename from erpnext/patches/april_2012/__init__.py
rename to patches/april_2012/__init__.py
diff --git a/erpnext/patches/april_2012/after_sync_cleanup.py b/patches/april_2012/after_sync_cleanup.py
similarity index 100%
rename from erpnext/patches/april_2012/after_sync_cleanup.py
rename to patches/april_2012/after_sync_cleanup.py
diff --git a/erpnext/patches/april_2012/change_cacheitem_schema.py b/patches/april_2012/change_cacheitem_schema.py
similarity index 100%
rename from erpnext/patches/april_2012/change_cacheitem_schema.py
rename to patches/april_2012/change_cacheitem_schema.py
diff --git a/erpnext/patches/april_2012/delete_about_contact.py b/patches/april_2012/delete_about_contact.py
similarity index 100%
rename from erpnext/patches/april_2012/delete_about_contact.py
rename to patches/april_2012/delete_about_contact.py
diff --git a/erpnext/patches/april_2012/naming_series_patch.py b/patches/april_2012/naming_series_patch.py
similarity index 100%
rename from erpnext/patches/april_2012/naming_series_patch.py
rename to patches/april_2012/naming_series_patch.py
diff --git a/erpnext/patches/april_2012/reload_c_form.py b/patches/april_2012/reload_c_form.py
similarity index 100%
rename from erpnext/patches/april_2012/reload_c_form.py
rename to patches/april_2012/reload_c_form.py
diff --git a/erpnext/patches/april_2012/remove_default_from_rv_detail.py b/patches/april_2012/remove_default_from_rv_detail.py
similarity index 100%
rename from erpnext/patches/april_2012/remove_default_from_rv_detail.py
rename to patches/april_2012/remove_default_from_rv_detail.py
diff --git a/erpnext/patches/april_2012/repost_stock_for_posting_time.py b/patches/april_2012/repost_stock_for_posting_time.py
similarity index 100%
rename from erpnext/patches/april_2012/repost_stock_for_posting_time.py
rename to patches/april_2012/repost_stock_for_posting_time.py
diff --git a/erpnext/patches/april_2012/serial_no_fixes.py b/patches/april_2012/serial_no_fixes.py
similarity index 100%
rename from erpnext/patches/april_2012/serial_no_fixes.py
rename to patches/april_2012/serial_no_fixes.py
diff --git a/erpnext/patches/april_2012/update_appraisal_permission.py b/patches/april_2012/update_appraisal_permission.py
similarity index 100%
rename from erpnext/patches/april_2012/update_appraisal_permission.py
rename to patches/april_2012/update_appraisal_permission.py
diff --git a/erpnext/patches/april_2012/update_permlevel_in_address.py b/patches/april_2012/update_permlevel_in_address.py
similarity index 100%
rename from erpnext/patches/april_2012/update_permlevel_in_address.py
rename to patches/april_2012/update_permlevel_in_address.py
diff --git a/erpnext/patches/april_2012/update_role_in_address.py b/patches/april_2012/update_role_in_address.py
similarity index 100%
rename from erpnext/patches/april_2012/update_role_in_address.py
rename to patches/april_2012/update_role_in_address.py
diff --git a/erpnext/patches/august_2012/__init__.py b/patches/august_2012/__init__.py
similarity index 100%
rename from erpnext/patches/august_2012/__init__.py
rename to patches/august_2012/__init__.py
diff --git a/erpnext/patches/august_2012/change_profile_permission.py b/patches/august_2012/change_profile_permission.py
similarity index 100%
rename from erpnext/patches/august_2012/change_profile_permission.py
rename to patches/august_2012/change_profile_permission.py
diff --git a/erpnext/patches/august_2012/changed_blog_date_format.py b/patches/august_2012/changed_blog_date_format.py
similarity index 100%
rename from erpnext/patches/august_2012/changed_blog_date_format.py
rename to patches/august_2012/changed_blog_date_format.py
diff --git a/erpnext/patches/august_2012/remove_cash_flow_statement.py b/patches/august_2012/remove_cash_flow_statement.py
similarity index 100%
rename from erpnext/patches/august_2012/remove_cash_flow_statement.py
rename to patches/august_2012/remove_cash_flow_statement.py
diff --git a/erpnext/patches/august_2012/report_supplier_quotations.py b/patches/august_2012/report_supplier_quotations.py
similarity index 100%
rename from erpnext/patches/august_2012/report_supplier_quotations.py
rename to patches/august_2012/report_supplier_quotations.py
diff --git a/erpnext/patches/august_2012/repost_billed_amt.py b/patches/august_2012/repost_billed_amt.py
similarity index 100%
rename from erpnext/patches/august_2012/repost_billed_amt.py
rename to patches/august_2012/repost_billed_amt.py
diff --git a/erpnext/patches/august_2012/task_allocated_to_assigned.py b/patches/august_2012/task_allocated_to_assigned.py
similarity index 100%
rename from erpnext/patches/august_2012/task_allocated_to_assigned.py
rename to patches/august_2012/task_allocated_to_assigned.py
diff --git a/erpnext/patches/before_jan_2012/Discount_purchase_cycle.py b/patches/before_jan_2012/Discount_purchase_cycle.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/Discount_purchase_cycle.py
rename to patches/before_jan_2012/Discount_purchase_cycle.py
diff --git a/erpnext/patches/before_jan_2012/__init__.py b/patches/before_jan_2012/__init__.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/__init__.py
rename to patches/before_jan_2012/__init__.py
diff --git a/erpnext/patches/before_jan_2012/accounts_default_form.py b/patches/before_jan_2012/accounts_default_form.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/accounts_default_form.py
rename to patches/before_jan_2012/accounts_default_form.py
diff --git a/erpnext/patches/before_jan_2012/auto_indent.py b/patches/before_jan_2012/auto_indent.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/auto_indent.py
rename to patches/before_jan_2012/auto_indent.py
diff --git a/erpnext/patches/before_jan_2012/c_form_patch.py b/patches/before_jan_2012/c_form_patch.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/c_form_patch.py
rename to patches/before_jan_2012/c_form_patch.py
diff --git a/erpnext/patches/before_jan_2012/delivery_billing_status_patch.py b/patches/before_jan_2012/delivery_billing_status_patch.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/delivery_billing_status_patch.py
rename to patches/before_jan_2012/delivery_billing_status_patch.py
diff --git a/erpnext/patches/before_jan_2012/deploy_email_digest.py b/patches/before_jan_2012/deploy_email_digest.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/deploy_email_digest.py
rename to patches/before_jan_2012/deploy_email_digest.py
diff --git a/erpnext/patches/before_jan_2012/edigest_enable_income_year_to_date.py b/patches/before_jan_2012/edigest_enable_income_year_to_date.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/edigest_enable_income_year_to_date.py
rename to patches/before_jan_2012/edigest_enable_income_year_to_date.py
diff --git a/erpnext/patches/before_jan_2012/employeewise_balance_leave_report.py b/patches/before_jan_2012/employeewise_balance_leave_report.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/employeewise_balance_leave_report.py
rename to patches/before_jan_2012/employeewise_balance_leave_report.py
diff --git a/erpnext/patches/before_jan_2012/erpnext_structure_cleanup.py b/patches/before_jan_2012/erpnext_structure_cleanup.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/erpnext_structure_cleanup.py
rename to patches/before_jan_2012/erpnext_structure_cleanup.py
diff --git a/erpnext/patches/before_jan_2012/index_patch.py b/patches/before_jan_2012/index_patch.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/index_patch.py
rename to patches/before_jan_2012/index_patch.py
diff --git a/erpnext/patches/before_jan_2012/install_print_formats.py b/patches/before_jan_2012/install_print_formats.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/install_print_formats.py
rename to patches/before_jan_2012/install_print_formats.py
diff --git a/erpnext/patches/before_jan_2012/lcw_patch.py b/patches/before_jan_2012/lcw_patch.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/lcw_patch.py
rename to patches/before_jan_2012/lcw_patch.py
diff --git a/erpnext/patches/before_jan_2012/p1.py b/patches/before_jan_2012/p1.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/p1.py
rename to patches/before_jan_2012/p1.py
diff --git a/erpnext/patches/before_jan_2012/packing_slip.py b/patches/before_jan_2012/packing_slip.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/packing_slip.py
rename to patches/before_jan_2012/packing_slip.py
diff --git a/erpnext/patches/before_jan_2012/price_list_patch.py b/patches/before_jan_2012/price_list_patch.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/price_list_patch.py
rename to patches/before_jan_2012/price_list_patch.py
diff --git a/erpnext/patches/before_jan_2012/print_hide_price_list.py b/patches/before_jan_2012/print_hide_price_list.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/print_hide_price_list.py
rename to patches/before_jan_2012/print_hide_price_list.py
diff --git a/erpnext/patches/before_jan_2012/profile_mark_not_in_create.py b/patches/before_jan_2012/profile_mark_not_in_create.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/profile_mark_not_in_create.py
rename to patches/before_jan_2012/profile_mark_not_in_create.py
diff --git a/erpnext/patches/before_jan_2012/project_patch.py b/patches/before_jan_2012/project_patch.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/project_patch.py
rename to patches/before_jan_2012/project_patch.py
diff --git a/erpnext/patches/before_jan_2012/reload_address.py b/patches/before_jan_2012/reload_address.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_address.py
rename to patches/before_jan_2012/reload_address.py
diff --git a/erpnext/patches/before_jan_2012/reload_bom.py b/patches/before_jan_2012/reload_bom.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_bom.py
rename to patches/before_jan_2012/reload_bom.py
diff --git a/erpnext/patches/before_jan_2012/reload_doclayer.py b/patches/before_jan_2012/reload_doclayer.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_doclayer.py
rename to patches/before_jan_2012/reload_doclayer.py
diff --git a/erpnext/patches/before_jan_2012/reload_email_digest.py b/patches/before_jan_2012/reload_email_digest.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_email_digest.py
rename to patches/before_jan_2012/reload_email_digest.py
diff --git a/erpnext/patches/before_jan_2012/reload_employeewise_balance_leave_report.py b/patches/before_jan_2012/reload_employeewise_balance_leave_report.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_employeewise_balance_leave_report.py
rename to patches/before_jan_2012/reload_employeewise_balance_leave_report.py
diff --git a/erpnext/patches/before_jan_2012/reload_flat_bom.py b/patches/before_jan_2012/reload_flat_bom.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_flat_bom.py
rename to patches/before_jan_2012/reload_flat_bom.py
diff --git a/erpnext/patches/before_jan_2012/reload_gl_mapper.py b/patches/before_jan_2012/reload_gl_mapper.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_gl_mapper.py
rename to patches/before_jan_2012/reload_gl_mapper.py
diff --git a/erpnext/patches/before_jan_2012/reload_lc_wizard.py b/patches/before_jan_2012/reload_lc_wizard.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_lc_wizard.py
rename to patches/before_jan_2012/reload_lc_wizard.py
diff --git a/erpnext/patches/before_jan_2012/reload_print_format.py b/patches/before_jan_2012/reload_print_format.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_print_format.py
rename to patches/before_jan_2012/reload_print_format.py
diff --git a/erpnext/patches/before_jan_2012/reload_project_task.py b/patches/before_jan_2012/reload_project_task.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_project_task.py
rename to patches/before_jan_2012/reload_project_task.py
diff --git a/erpnext/patches/before_jan_2012/reload_reco.py b/patches/before_jan_2012/reload_reco.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_reco.py
rename to patches/before_jan_2012/reload_reco.py
diff --git a/erpnext/patches/before_jan_2012/reload_rv.py b/patches/before_jan_2012/reload_rv.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_rv.py
rename to patches/before_jan_2012/reload_rv.py
diff --git a/erpnext/patches/before_jan_2012/reload_support_ticket.py b/patches/before_jan_2012/reload_support_ticket.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/reload_support_ticket.py
rename to patches/before_jan_2012/reload_support_ticket.py
diff --git a/erpnext/patches/before_jan_2012/remove_duplicate_table_mapper_detail.py b/patches/before_jan_2012/remove_duplicate_table_mapper_detail.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/remove_duplicate_table_mapper_detail.py
rename to patches/before_jan_2012/remove_duplicate_table_mapper_detail.py
diff --git a/erpnext/patches/before_jan_2012/remove_extra_button_from_email_digest.py b/patches/before_jan_2012/remove_extra_button_from_email_digest.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/remove_extra_button_from_email_digest.py
rename to patches/before_jan_2012/remove_extra_button_from_email_digest.py
diff --git a/erpnext/patches/before_jan_2012/remove_old_cp_email_settings.py b/patches/before_jan_2012/remove_old_cp_email_settings.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/remove_old_cp_email_settings.py
rename to patches/before_jan_2012/remove_old_cp_email_settings.py
diff --git a/erpnext/patches/before_jan_2012/remove_page_break_from_defaults.py b/patches/before_jan_2012/remove_page_break_from_defaults.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/remove_page_break_from_defaults.py
rename to patches/before_jan_2012/remove_page_break_from_defaults.py
diff --git a/erpnext/patches/before_jan_2012/remove_previous_field_property_setter.py b/patches/before_jan_2012/remove_previous_field_property_setter.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/remove_previous_field_property_setter.py
rename to patches/before_jan_2012/remove_previous_field_property_setter.py
diff --git a/erpnext/patches/before_jan_2012/repost_account_bal.py b/patches/before_jan_2012/repost_account_bal.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/repost_account_bal.py
rename to patches/before_jan_2012/repost_account_bal.py
diff --git a/erpnext/patches/before_jan_2012/repost_stock.py b/patches/before_jan_2012/repost_stock.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/repost_stock.py
rename to patches/before_jan_2012/repost_stock.py
diff --git a/erpnext/patches/before_jan_2012/sal_man_patch.py b/patches/before_jan_2012/sal_man_patch.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/sal_man_patch.py
rename to patches/before_jan_2012/sal_man_patch.py
diff --git a/erpnext/patches/before_jan_2012/task_email_notification.py b/patches/before_jan_2012/task_email_notification.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/task_email_notification.py
rename to patches/before_jan_2012/task_email_notification.py
diff --git a/erpnext/patches/before_jan_2012/update_0_idx.py b/patches/before_jan_2012/update_0_idx.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/update_0_idx.py
rename to patches/before_jan_2012/update_0_idx.py
diff --git a/erpnext/patches/before_jan_2012/update_gle_against_voucher_for_jv.py b/patches/before_jan_2012/update_gle_against_voucher_for_jv.py
similarity index 100%
rename from erpnext/patches/before_jan_2012/update_gle_against_voucher_for_jv.py
rename to patches/before_jan_2012/update_gle_against_voucher_for_jv.py
diff --git a/erpnext/patches/jan_mar_2012/__init__.py b/patches/jan_mar_2012/__init__.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/__init__.py
rename to patches/jan_mar_2012/__init__.py
diff --git a/erpnext/patches/jan_mar_2012/account_type_patch.py b/patches/jan_mar_2012/account_type_patch.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/account_type_patch.py
rename to patches/jan_mar_2012/account_type_patch.py
diff --git a/erpnext/patches/jan_mar_2012/add_roles_to_admin.py b/patches/jan_mar_2012/add_roles_to_admin.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/add_roles_to_admin.py
rename to patches/jan_mar_2012/add_roles_to_admin.py
diff --git a/erpnext/patches/jan_mar_2012/allocated_to_profile.py b/patches/jan_mar_2012/allocated_to_profile.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/allocated_to_profile.py
rename to patches/jan_mar_2012/allocated_to_profile.py
diff --git a/erpnext/patches/jan_mar_2012/apps/__init__.py b/patches/jan_mar_2012/apps/__init__.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/apps/__init__.py
rename to patches/jan_mar_2012/apps/__init__.py
diff --git a/erpnext/patches/jan_mar_2012/apps/todo_item.py b/patches/jan_mar_2012/apps/todo_item.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/apps/todo_item.py
rename to patches/jan_mar_2012/apps/todo_item.py
diff --git a/erpnext/patches/jan_mar_2012/cancel_purchase_returned.py b/patches/jan_mar_2012/cancel_purchase_returned.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/cancel_purchase_returned.py
rename to patches/jan_mar_2012/cancel_purchase_returned.py
diff --git a/erpnext/patches/jan_mar_2012/clear_session_cache.py b/patches/jan_mar_2012/clear_session_cache.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/clear_session_cache.py
rename to patches/jan_mar_2012/clear_session_cache.py
diff --git a/erpnext/patches/jan_mar_2012/convert_tables_to_utf8.py b/patches/jan_mar_2012/convert_tables_to_utf8.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/convert_tables_to_utf8.py
rename to patches/jan_mar_2012/convert_tables_to_utf8.py
diff --git a/erpnext/patches/jan_mar_2012/customer_address_contact_patch.py b/patches/jan_mar_2012/customer_address_contact_patch.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/customer_address_contact_patch.py
rename to patches/jan_mar_2012/customer_address_contact_patch.py
diff --git a/erpnext/patches/jan_mar_2012/delete_pur_of_service.py b/patches/jan_mar_2012/delete_pur_of_service.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/delete_pur_of_service.py
rename to patches/jan_mar_2012/delete_pur_of_service.py
diff --git a/erpnext/patches/jan_mar_2012/deploy_packing_slip.py b/patches/jan_mar_2012/deploy_packing_slip.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/deploy_packing_slip.py
rename to patches/jan_mar_2012/deploy_packing_slip.py
diff --git a/erpnext/patches/jan_mar_2012/doclabel_in_doclayer.py b/patches/jan_mar_2012/doclabel_in_doclayer.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/doclabel_in_doclayer.py
rename to patches/jan_mar_2012/doclabel_in_doclayer.py
diff --git a/erpnext/patches/jan_mar_2012/dt_map_fix.py b/patches/jan_mar_2012/dt_map_fix.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/dt_map_fix.py
rename to patches/jan_mar_2012/dt_map_fix.py
diff --git a/erpnext/patches/jan_mar_2012/email_settings_reload.py b/patches/jan_mar_2012/email_settings_reload.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/email_settings_reload.py
rename to patches/jan_mar_2012/email_settings_reload.py
diff --git a/erpnext/patches/jan_mar_2012/fix_packing_slip.py b/patches/jan_mar_2012/fix_packing_slip.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/fix_packing_slip.py
rename to patches/jan_mar_2012/fix_packing_slip.py
diff --git a/erpnext/patches/jan_mar_2012/jan_production_patches.py b/patches/jan_mar_2012/jan_production_patches.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/jan_production_patches.py
rename to patches/jan_mar_2012/jan_production_patches.py
diff --git a/erpnext/patches/jan_mar_2012/label_cleanup.py b/patches/jan_mar_2012/label_cleanup.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/label_cleanup.py
rename to patches/jan_mar_2012/label_cleanup.py
diff --git a/erpnext/patches/jan_mar_2012/map_conversion_rate.py b/patches/jan_mar_2012/map_conversion_rate.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/map_conversion_rate.py
rename to patches/jan_mar_2012/map_conversion_rate.py
diff --git a/erpnext/patches/jan_mar_2012/mapper_fix.py b/patches/jan_mar_2012/mapper_fix.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/mapper_fix.py
rename to patches/jan_mar_2012/mapper_fix.py
diff --git a/erpnext/patches/jan_mar_2012/navupdate.py b/patches/jan_mar_2012/navupdate.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/navupdate.py
rename to patches/jan_mar_2012/navupdate.py
diff --git a/erpnext/patches/jan_mar_2012/no_copy_patch.py b/patches/jan_mar_2012/no_copy_patch.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/no_copy_patch.py
rename to patches/jan_mar_2012/no_copy_patch.py
diff --git a/erpnext/patches/jan_mar_2012/pending_patches.py b/patches/jan_mar_2012/pending_patches.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/pending_patches.py
rename to patches/jan_mar_2012/pending_patches.py
diff --git a/erpnext/patches/jan_mar_2012/pos_setting_patch.py b/patches/jan_mar_2012/pos_setting_patch.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/pos_setting_patch.py
rename to patches/jan_mar_2012/pos_setting_patch.py
diff --git a/erpnext/patches/jan_mar_2012/print_hide_totals.py b/patches/jan_mar_2012/print_hide_totals.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/print_hide_totals.py
rename to patches/jan_mar_2012/print_hide_totals.py
diff --git a/erpnext/patches/jan_mar_2012/production_cleanup.py b/patches/jan_mar_2012/production_cleanup.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/production_cleanup.py
rename to patches/jan_mar_2012/production_cleanup.py
diff --git a/erpnext/patches/jan_mar_2012/reload_doctype.py b/patches/jan_mar_2012/reload_doctype.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/reload_doctype.py
rename to patches/jan_mar_2012/reload_doctype.py
diff --git a/erpnext/patches/jan_mar_2012/reload_item.py b/patches/jan_mar_2012/reload_item.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/reload_item.py
rename to patches/jan_mar_2012/reload_item.py
diff --git a/erpnext/patches/jan_mar_2012/reload_mapper.py b/patches/jan_mar_2012/reload_mapper.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/reload_mapper.py
rename to patches/jan_mar_2012/reload_mapper.py
diff --git a/erpnext/patches/jan_mar_2012/reload_po_pr_mapper.py b/patches/jan_mar_2012/reload_po_pr_mapper.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/reload_po_pr_mapper.py
rename to patches/jan_mar_2012/reload_po_pr_mapper.py
diff --git a/erpnext/patches/jan_mar_2012/reload_quote.py b/patches/jan_mar_2012/reload_quote.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/reload_quote.py
rename to patches/jan_mar_2012/reload_quote.py
diff --git a/erpnext/patches/jan_mar_2012/reload_table.py b/patches/jan_mar_2012/reload_table.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/reload_table.py
rename to patches/jan_mar_2012/reload_table.py
diff --git a/erpnext/patches/jan_mar_2012/remove_archive.py b/patches/jan_mar_2012/remove_archive.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/remove_archive.py
rename to patches/jan_mar_2012/remove_archive.py
diff --git a/erpnext/patches/jan_mar_2012/remove_get_tds_button.py b/patches/jan_mar_2012/remove_get_tds_button.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/remove_get_tds_button.py
rename to patches/jan_mar_2012/remove_get_tds_button.py
diff --git a/erpnext/patches/jan_mar_2012/remove_series_defval.py b/patches/jan_mar_2012/remove_series_defval.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/remove_series_defval.py
rename to patches/jan_mar_2012/remove_series_defval.py
diff --git a/erpnext/patches/jan_mar_2012/rename_dt.py b/patches/jan_mar_2012/rename_dt.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/rename_dt.py
rename to patches/jan_mar_2012/rename_dt.py
diff --git a/erpnext/patches/jan_mar_2012/serial_no_add_opt.py b/patches/jan_mar_2012/serial_no_add_opt.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/serial_no_add_opt.py
rename to patches/jan_mar_2012/serial_no_add_opt.py
diff --git a/erpnext/patches/jan_mar_2012/stable_branch_shift_09_01_12.py b/patches/jan_mar_2012/stable_branch_shift_09_01_12.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/stable_branch_shift_09_01_12.py
rename to patches/jan_mar_2012/stable_branch_shift_09_01_12.py
diff --git a/erpnext/patches/jan_mar_2012/stock_entry_others_patch.py b/patches/jan_mar_2012/stock_entry_others_patch.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/stock_entry_others_patch.py
rename to patches/jan_mar_2012/stock_entry_others_patch.py
diff --git a/erpnext/patches/jan_mar_2012/subcon_default_val.py b/patches/jan_mar_2012/subcon_default_val.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/subcon_default_val.py
rename to patches/jan_mar_2012/subcon_default_val.py
diff --git a/erpnext/patches/jan_mar_2012/sync_ref_db.py b/patches/jan_mar_2012/sync_ref_db.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/sync_ref_db.py
rename to patches/jan_mar_2012/sync_ref_db.py
diff --git a/erpnext/patches/jan_mar_2012/update_purpose_se.py b/patches/jan_mar_2012/update_purpose_se.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/update_purpose_se.py
rename to patches/jan_mar_2012/update_purpose_se.py
diff --git a/erpnext/patches/jan_mar_2012/update_se_fld_options.py b/patches/jan_mar_2012/update_se_fld_options.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/update_se_fld_options.py
rename to patches/jan_mar_2012/update_se_fld_options.py
diff --git a/erpnext/patches/jan_mar_2012/update_stockreco_perm.py b/patches/jan_mar_2012/update_stockreco_perm.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/update_stockreco_perm.py
rename to patches/jan_mar_2012/update_stockreco_perm.py
diff --git a/erpnext/patches/jan_mar_2012/website/__init__.py b/patches/jan_mar_2012/website/__init__.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/__init__.py
rename to patches/jan_mar_2012/website/__init__.py
diff --git a/erpnext/patches/jan_mar_2012/website/all.py b/patches/jan_mar_2012/website/all.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/all.py
rename to patches/jan_mar_2012/website/all.py
diff --git a/erpnext/patches/jan_mar_2012/website/allow_product_delete.py b/patches/jan_mar_2012/website/allow_product_delete.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/allow_product_delete.py
rename to patches/jan_mar_2012/website/allow_product_delete.py
diff --git a/erpnext/patches/jan_mar_2012/website/analytics.py b/patches/jan_mar_2012/website/analytics.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/analytics.py
rename to patches/jan_mar_2012/website/analytics.py
diff --git a/erpnext/patches/jan_mar_2012/website/cleanups.py b/patches/jan_mar_2012/website/cleanups.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/cleanups.py
rename to patches/jan_mar_2012/website/cleanups.py
diff --git a/erpnext/patches/jan_mar_2012/website/domain_list.py b/patches/jan_mar_2012/website/domain_list.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/domain_list.py
rename to patches/jan_mar_2012/website/domain_list.py
diff --git a/erpnext/patches/jan_mar_2012/website/feed.py b/patches/jan_mar_2012/website/feed.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/feed.py
rename to patches/jan_mar_2012/website/feed.py
diff --git a/erpnext/patches/jan_mar_2012/website/file_data_rename.py b/patches/jan_mar_2012/website/file_data_rename.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/file_data_rename.py
rename to patches/jan_mar_2012/website/file_data_rename.py
diff --git a/erpnext/patches/jan_mar_2012/website/getfile_rename.py b/patches/jan_mar_2012/website/getfile_rename.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/getfile_rename.py
rename to patches/jan_mar_2012/website/getfile_rename.py
diff --git a/erpnext/patches/jan_mar_2012/website/login.py b/patches/jan_mar_2012/website/login.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/login.py
rename to patches/jan_mar_2012/website/login.py
diff --git a/erpnext/patches/jan_mar_2012/website/website.py b/patches/jan_mar_2012/website/website.py
similarity index 100%
rename from erpnext/patches/jan_mar_2012/website/website.py
rename to patches/jan_mar_2012/website/website.py
diff --git a/erpnext/patches/july_2012/__init__.py b/patches/july_2012/__init__.py
similarity index 100%
rename from erpnext/patches/july_2012/__init__.py
rename to patches/july_2012/__init__.py
diff --git a/erpnext/patches/july_2012/address_contact_perms.py b/patches/july_2012/address_contact_perms.py
similarity index 100%
rename from erpnext/patches/july_2012/address_contact_perms.py
rename to patches/july_2012/address_contact_perms.py
diff --git a/erpnext/patches/july_2012/auth_table.py b/patches/july_2012/auth_table.py
similarity index 100%
rename from erpnext/patches/july_2012/auth_table.py
rename to patches/july_2012/auth_table.py
diff --git a/erpnext/patches/july_2012/bin_permission.py b/patches/july_2012/bin_permission.py
similarity index 100%
rename from erpnext/patches/july_2012/bin_permission.py
rename to patches/july_2012/bin_permission.py
diff --git a/erpnext/patches/july_2012/blog_guest_permission.py b/patches/july_2012/blog_guest_permission.py
similarity index 100%
rename from erpnext/patches/july_2012/blog_guest_permission.py
rename to patches/july_2012/blog_guest_permission.py
diff --git a/erpnext/patches/july_2012/default_freeze_account.py b/patches/july_2012/default_freeze_account.py
similarity index 100%
rename from erpnext/patches/july_2012/default_freeze_account.py
rename to patches/july_2012/default_freeze_account.py
diff --git a/erpnext/patches/july_2012/deprecate_bulk_rename.py b/patches/july_2012/deprecate_bulk_rename.py
similarity index 100%
rename from erpnext/patches/july_2012/deprecate_bulk_rename.py
rename to patches/july_2012/deprecate_bulk_rename.py
diff --git a/erpnext/patches/july_2012/deprecate_import_data_control.py b/patches/july_2012/deprecate_import_data_control.py
similarity index 100%
rename from erpnext/patches/july_2012/deprecate_import_data_control.py
rename to patches/july_2012/deprecate_import_data_control.py
diff --git a/erpnext/patches/july_2012/packing_list_cleanup_and_serial_no.py b/patches/july_2012/packing_list_cleanup_and_serial_no.py
similarity index 100%
rename from erpnext/patches/july_2012/packing_list_cleanup_and_serial_no.py
rename to patches/july_2012/packing_list_cleanup_and_serial_no.py
diff --git a/erpnext/patches/july_2012/project_patch_repeat.py b/patches/july_2012/project_patch_repeat.py
similarity index 100%
rename from erpnext/patches/july_2012/project_patch_repeat.py
rename to patches/july_2012/project_patch_repeat.py
diff --git a/erpnext/patches/july_2012/reload_pr_po_mapper.py b/patches/july_2012/reload_pr_po_mapper.py
similarity index 100%
rename from erpnext/patches/july_2012/reload_pr_po_mapper.py
rename to patches/july_2012/reload_pr_po_mapper.py
diff --git a/erpnext/patches/july_2012/remove_event_role_owner_match.py b/patches/july_2012/remove_event_role_owner_match.py
similarity index 100%
rename from erpnext/patches/july_2012/remove_event_role_owner_match.py
rename to patches/july_2012/remove_event_role_owner_match.py
diff --git a/erpnext/patches/july_2012/repost_stock_due_to_wrong_packing_list.py b/patches/july_2012/repost_stock_due_to_wrong_packing_list.py
similarity index 100%
rename from erpnext/patches/july_2012/repost_stock_due_to_wrong_packing_list.py
rename to patches/july_2012/repost_stock_due_to_wrong_packing_list.py
diff --git a/erpnext/patches/july_2012/supplier_quotation.py b/patches/july_2012/supplier_quotation.py
similarity index 100%
rename from erpnext/patches/july_2012/supplier_quotation.py
rename to patches/july_2012/supplier_quotation.py
diff --git a/erpnext/patches/july_2012/sync_trial_balance.py b/patches/july_2012/sync_trial_balance.py
similarity index 100%
rename from erpnext/patches/july_2012/sync_trial_balance.py
rename to patches/july_2012/sync_trial_balance.py
diff --git a/erpnext/patches/july_2012/unicode_conf.py b/patches/july_2012/unicode_conf.py
similarity index 100%
rename from erpnext/patches/july_2012/unicode_conf.py
rename to patches/july_2012/unicode_conf.py
diff --git a/erpnext/patches/july_2012/update_purchase_tax.py b/patches/july_2012/update_purchase_tax.py
similarity index 100%
rename from erpnext/patches/july_2012/update_purchase_tax.py
rename to patches/july_2012/update_purchase_tax.py
diff --git a/erpnext/patches/june_2012/__init__.py b/patches/june_2012/__init__.py
similarity index 100%
rename from erpnext/patches/june_2012/__init__.py
rename to patches/june_2012/__init__.py
diff --git a/erpnext/patches/june_2012/alter_tabsessions.py b/patches/june_2012/alter_tabsessions.py
similarity index 100%
rename from erpnext/patches/june_2012/alter_tabsessions.py
rename to patches/june_2012/alter_tabsessions.py
diff --git a/erpnext/patches/june_2012/barcode_in_feature_setup.py b/patches/june_2012/barcode_in_feature_setup.py
similarity index 100%
rename from erpnext/patches/june_2012/barcode_in_feature_setup.py
rename to patches/june_2012/barcode_in_feature_setup.py
diff --git a/erpnext/patches/june_2012/cache_item_table.py b/patches/june_2012/cache_item_table.py
similarity index 100%
rename from erpnext/patches/june_2012/cache_item_table.py
rename to patches/june_2012/cache_item_table.py
diff --git a/erpnext/patches/june_2012/cms2.py b/patches/june_2012/cms2.py
similarity index 100%
rename from erpnext/patches/june_2012/cms2.py
rename to patches/june_2012/cms2.py
diff --git a/erpnext/patches/june_2012/copy_uom_for_pur_inv_item.py b/patches/june_2012/copy_uom_for_pur_inv_item.py
similarity index 100%
rename from erpnext/patches/june_2012/copy_uom_for_pur_inv_item.py
rename to patches/june_2012/copy_uom_for_pur_inv_item.py
diff --git a/erpnext/patches/june_2012/delete_old_parent_entries.py b/patches/june_2012/delete_old_parent_entries.py
similarity index 100%
rename from erpnext/patches/june_2012/delete_old_parent_entries.py
rename to patches/june_2012/delete_old_parent_entries.py
diff --git a/erpnext/patches/june_2012/fetch_organization_from_lead.py b/patches/june_2012/fetch_organization_from_lead.py
similarity index 100%
rename from erpnext/patches/june_2012/fetch_organization_from_lead.py
rename to patches/june_2012/fetch_organization_from_lead.py
diff --git a/erpnext/patches/june_2012/reports_list_permission.py b/patches/june_2012/reports_list_permission.py
similarity index 100%
rename from erpnext/patches/june_2012/reports_list_permission.py
rename to patches/june_2012/reports_list_permission.py
diff --git a/erpnext/patches/june_2012/series_unique_patch.py b/patches/june_2012/series_unique_patch.py
similarity index 100%
rename from erpnext/patches/june_2012/series_unique_patch.py
rename to patches/june_2012/series_unique_patch.py
diff --git a/erpnext/patches/june_2012/set_recurring_type.py b/patches/june_2012/set_recurring_type.py
similarity index 100%
rename from erpnext/patches/june_2012/set_recurring_type.py
rename to patches/june_2012/set_recurring_type.py
diff --git a/erpnext/patches/june_2012/support_ticket_autoreply.py b/patches/june_2012/support_ticket_autoreply.py
similarity index 100%
rename from erpnext/patches/june_2012/support_ticket_autoreply.py
rename to patches/june_2012/support_ticket_autoreply.py
diff --git a/erpnext/patches/mar_2012/__init__.py b/patches/mar_2012/__init__.py
similarity index 100%
rename from erpnext/patches/mar_2012/__init__.py
rename to patches/mar_2012/__init__.py
diff --git a/erpnext/patches/mar_2012/add_fieldnames.py b/patches/mar_2012/add_fieldnames.py
similarity index 100%
rename from erpnext/patches/mar_2012/add_fieldnames.py
rename to patches/mar_2012/add_fieldnames.py
diff --git a/erpnext/patches/mar_2012/clean_property_setter.py b/patches/mar_2012/clean_property_setter.py
similarity index 100%
rename from erpnext/patches/mar_2012/clean_property_setter.py
rename to patches/mar_2012/clean_property_setter.py
diff --git a/erpnext/patches/mar_2012/cleanup_control_panel.py b/patches/mar_2012/cleanup_control_panel.py
similarity index 100%
rename from erpnext/patches/mar_2012/cleanup_control_panel.py
rename to patches/mar_2012/cleanup_control_panel.py
diff --git a/erpnext/patches/mar_2012/create_custom_fields.py b/patches/mar_2012/create_custom_fields.py
similarity index 100%
rename from erpnext/patches/mar_2012/create_custom_fields.py
rename to patches/mar_2012/create_custom_fields.py
diff --git a/erpnext/patches/mar_2012/delete_docformat.py b/patches/mar_2012/delete_docformat.py
similarity index 100%
rename from erpnext/patches/mar_2012/delete_docformat.py
rename to patches/mar_2012/delete_docformat.py
diff --git a/erpnext/patches/mar_2012/doctype_get_refactor.py b/patches/mar_2012/doctype_get_refactor.py
similarity index 100%
rename from erpnext/patches/mar_2012/doctype_get_refactor.py
rename to patches/mar_2012/doctype_get_refactor.py
diff --git a/erpnext/patches/mar_2012/earning_deduction_type_patch.py b/patches/mar_2012/earning_deduction_type_patch.py
similarity index 100%
rename from erpnext/patches/mar_2012/earning_deduction_type_patch.py
rename to patches/mar_2012/earning_deduction_type_patch.py
diff --git a/erpnext/patches/mar_2012/is_submittable_patch.py b/patches/mar_2012/is_submittable_patch.py
similarity index 100%
rename from erpnext/patches/mar_2012/is_submittable_patch.py
rename to patches/mar_2012/is_submittable_patch.py
diff --git a/erpnext/patches/mar_2012/pos_invoice_fix.py b/patches/mar_2012/pos_invoice_fix.py
similarity index 100%
rename from erpnext/patches/mar_2012/pos_invoice_fix.py
rename to patches/mar_2012/pos_invoice_fix.py
diff --git a/erpnext/patches/mar_2012/so_rv_mapper_fix.py b/patches/mar_2012/so_rv_mapper_fix.py
similarity index 100%
rename from erpnext/patches/mar_2012/so_rv_mapper_fix.py
rename to patches/mar_2012/so_rv_mapper_fix.py
diff --git a/erpnext/patches/mar_2012/usertags.py b/patches/mar_2012/usertags.py
similarity index 100%
rename from erpnext/patches/mar_2012/usertags.py
rename to patches/mar_2012/usertags.py
diff --git a/erpnext/patches/may_2012/__init__.py b/patches/may_2012/__init__.py
similarity index 100%
rename from erpnext/patches/may_2012/__init__.py
rename to patches/may_2012/__init__.py
diff --git a/erpnext/patches/may_2012/cleanup_notification_control.py b/patches/may_2012/cleanup_notification_control.py
similarity index 100%
rename from erpnext/patches/may_2012/cleanup_notification_control.py
rename to patches/may_2012/cleanup_notification_control.py
diff --git a/erpnext/patches/may_2012/cleanup_property_setter.py b/patches/may_2012/cleanup_property_setter.py
similarity index 100%
rename from erpnext/patches/may_2012/cleanup_property_setter.py
rename to patches/may_2012/cleanup_property_setter.py
diff --git a/erpnext/patches/may_2012/clear_session_cache.py b/patches/may_2012/clear_session_cache.py
similarity index 100%
rename from erpnext/patches/may_2012/clear_session_cache.py
rename to patches/may_2012/clear_session_cache.py
diff --git a/erpnext/patches/may_2012/create_report_manager_role.py b/patches/may_2012/create_report_manager_role.py
similarity index 100%
rename from erpnext/patches/may_2012/create_report_manager_role.py
rename to patches/may_2012/create_report_manager_role.py
diff --git a/erpnext/patches/may_2012/cs_server_readonly.py b/patches/may_2012/cs_server_readonly.py
similarity index 100%
rename from erpnext/patches/may_2012/cs_server_readonly.py
rename to patches/may_2012/cs_server_readonly.py
diff --git a/erpnext/patches/may_2012/customize_form_cleanup.py b/patches/may_2012/customize_form_cleanup.py
similarity index 100%
rename from erpnext/patches/may_2012/customize_form_cleanup.py
rename to patches/may_2012/customize_form_cleanup.py
diff --git a/erpnext/patches/may_2012/page_role_series_fix.py b/patches/may_2012/page_role_series_fix.py
similarity index 100%
rename from erpnext/patches/may_2012/page_role_series_fix.py
rename to patches/may_2012/page_role_series_fix.py
diff --git a/erpnext/patches/may_2012/profile_perm_patch.py b/patches/may_2012/profile_perm_patch.py
similarity index 100%
rename from erpnext/patches/may_2012/profile_perm_patch.py
rename to patches/may_2012/profile_perm_patch.py
diff --git a/erpnext/patches/may_2012/reload_customer_address_contact.py b/patches/may_2012/reload_customer_address_contact.py
similarity index 100%
rename from erpnext/patches/may_2012/reload_customer_address_contact.py
rename to patches/may_2012/reload_customer_address_contact.py
diff --git a/erpnext/patches/may_2012/reload_reports.py b/patches/may_2012/reload_reports.py
similarity index 100%
rename from erpnext/patches/may_2012/reload_reports.py
rename to patches/may_2012/reload_reports.py
diff --git a/erpnext/patches/may_2012/reload_sales_invoice_pf.py b/patches/may_2012/reload_sales_invoice_pf.py
similarity index 100%
rename from erpnext/patches/may_2012/reload_sales_invoice_pf.py
rename to patches/may_2012/reload_sales_invoice_pf.py
diff --git a/erpnext/patches/may_2012/reload_so_pending_items.py b/patches/may_2012/reload_so_pending_items.py
similarity index 100%
rename from erpnext/patches/may_2012/reload_so_pending_items.py
rename to patches/may_2012/reload_so_pending_items.py
diff --git a/erpnext/patches/may_2012/remove_communication_log.py b/patches/may_2012/remove_communication_log.py
similarity index 100%
rename from erpnext/patches/may_2012/remove_communication_log.py
rename to patches/may_2012/remove_communication_log.py
diff --git a/erpnext/patches/may_2012/remove_euro_currency.py b/patches/may_2012/remove_euro_currency.py
similarity index 100%
rename from erpnext/patches/may_2012/remove_euro_currency.py
rename to patches/may_2012/remove_euro_currency.py
diff --git a/erpnext/patches/may_2012/rename_prev_doctype.py b/patches/may_2012/rename_prev_doctype.py
similarity index 100%
rename from erpnext/patches/may_2012/rename_prev_doctype.py
rename to patches/may_2012/rename_prev_doctype.py
diff --git a/erpnext/patches/may_2012/renamedt_in_custom_search_criteria.py b/patches/may_2012/renamedt_in_custom_search_criteria.py
similarity index 100%
rename from erpnext/patches/may_2012/renamedt_in_custom_search_criteria.py
rename to patches/may_2012/renamedt_in_custom_search_criteria.py
diff --git a/erpnext/patches/may_2012/same_purchase_rate_patch.py b/patches/may_2012/same_purchase_rate_patch.py
similarity index 100%
rename from erpnext/patches/may_2012/same_purchase_rate_patch.py
rename to patches/may_2012/same_purchase_rate_patch.py
diff --git a/erpnext/patches/may_2012/std_pf_readonly.py b/patches/may_2012/std_pf_readonly.py
similarity index 100%
rename from erpnext/patches/may_2012/std_pf_readonly.py
rename to patches/may_2012/std_pf_readonly.py
diff --git a/erpnext/patches/may_2012/stock_reco_patch.py b/patches/may_2012/stock_reco_patch.py
similarity index 100%
rename from erpnext/patches/may_2012/stock_reco_patch.py
rename to patches/may_2012/stock_reco_patch.py
diff --git a/erpnext/patches/patch_list.py b/patches/patch_list.py
similarity index 100%
rename from erpnext/patches/patch_list.py
rename to patches/patch_list.py
diff --git a/erpnext/patches/september_2012/__init__.py b/patches/september_2012/__init__.py
similarity index 100%
rename from erpnext/patches/september_2012/__init__.py
rename to patches/september_2012/__init__.py
diff --git a/erpnext/patches/september_2012/add_stock_ledger_entry_index.py b/patches/september_2012/add_stock_ledger_entry_index.py
similarity index 100%
rename from erpnext/patches/september_2012/add_stock_ledger_entry_index.py
rename to patches/september_2012/add_stock_ledger_entry_index.py
diff --git a/erpnext/patches/september_2012/all_permissions_patch.py b/patches/september_2012/all_permissions_patch.py
similarity index 100%
rename from erpnext/patches/september_2012/all_permissions_patch.py
rename to patches/september_2012/all_permissions_patch.py
diff --git a/erpnext/patches/september_2012/communication_delete_permission.py b/patches/september_2012/communication_delete_permission.py
similarity index 100%
rename from erpnext/patches/september_2012/communication_delete_permission.py
rename to patches/september_2012/communication_delete_permission.py
diff --git a/erpnext/patches/september_2012/customer_permission_patch.py b/patches/september_2012/customer_permission_patch.py
similarity index 100%
rename from erpnext/patches/september_2012/customer_permission_patch.py
rename to patches/september_2012/customer_permission_patch.py
diff --git a/erpnext/patches/september_2012/plot_patch.py b/patches/september_2012/plot_patch.py
similarity index 100%
rename from erpnext/patches/september_2012/plot_patch.py
rename to patches/september_2012/plot_patch.py
diff --git a/erpnext/patches/september_2012/reload_criteria_stock_ledger.py b/patches/september_2012/reload_criteria_stock_ledger.py
similarity index 100%
rename from erpnext/patches/september_2012/reload_criteria_stock_ledger.py
rename to patches/september_2012/reload_criteria_stock_ledger.py
diff --git a/erpnext/patches/september_2012/stock_report_permissions_for_accounts.py b/patches/september_2012/stock_report_permissions_for_accounts.py
similarity index 100%
rename from erpnext/patches/september_2012/stock_report_permissions_for_accounts.py
rename to patches/september_2012/stock_report_permissions_for_accounts.py
diff --git a/erpnext/production/__init__.py b/production/__init__.py
similarity index 100%
rename from erpnext/production/__init__.py
rename to production/__init__.py
diff --git a/erpnext/production/doctype/__init__.py b/production/doctype/__init__.py
similarity index 100%
rename from erpnext/production/doctype/__init__.py
rename to production/doctype/__init__.py
diff --git a/erpnext/production/doctype/bom/__init__.py b/production/doctype/bom/__init__.py
similarity index 100%
rename from erpnext/production/doctype/bom/__init__.py
rename to production/doctype/bom/__init__.py
diff --git a/erpnext/production/doctype/bom/bom.js b/production/doctype/bom/bom.js
similarity index 100%
rename from erpnext/production/doctype/bom/bom.js
rename to production/doctype/bom/bom.js
diff --git a/erpnext/production/doctype/bom/bom.py b/production/doctype/bom/bom.py
similarity index 100%
rename from erpnext/production/doctype/bom/bom.py
rename to production/doctype/bom/bom.py
diff --git a/erpnext/production/doctype/bom/bom.txt b/production/doctype/bom/bom.txt
similarity index 100%
rename from erpnext/production/doctype/bom/bom.txt
rename to production/doctype/bom/bom.txt
diff --git a/erpnext/production/doctype/bom/bom_list.js b/production/doctype/bom/bom_list.js
similarity index 100%
rename from erpnext/production/doctype/bom/bom_list.js
rename to production/doctype/bom/bom_list.js
diff --git a/erpnext/production/doctype/bom_control/__init__.py b/production/doctype/bom_control/__init__.py
similarity index 100%
rename from erpnext/production/doctype/bom_control/__init__.py
rename to production/doctype/bom_control/__init__.py
diff --git a/erpnext/production/doctype/bom_control/bom_control.py b/production/doctype/bom_control/bom_control.py
similarity index 100%
rename from erpnext/production/doctype/bom_control/bom_control.py
rename to production/doctype/bom_control/bom_control.py
diff --git a/erpnext/production/doctype/bom_control/bom_control.txt b/production/doctype/bom_control/bom_control.txt
similarity index 100%
rename from erpnext/production/doctype/bom_control/bom_control.txt
rename to production/doctype/bom_control/bom_control.txt
diff --git a/erpnext/production/doctype/bom_explosion_item/__init__.py b/production/doctype/bom_explosion_item/__init__.py
similarity index 100%
rename from erpnext/production/doctype/bom_explosion_item/__init__.py
rename to production/doctype/bom_explosion_item/__init__.py
diff --git a/erpnext/production/doctype/bom_explosion_item/bom_explosion_item.txt b/production/doctype/bom_explosion_item/bom_explosion_item.txt
similarity index 100%
rename from erpnext/production/doctype/bom_explosion_item/bom_explosion_item.txt
rename to production/doctype/bom_explosion_item/bom_explosion_item.txt
diff --git a/erpnext/production/doctype/bom_item/__init__.py b/production/doctype/bom_item/__init__.py
similarity index 100%
rename from erpnext/production/doctype/bom_item/__init__.py
rename to production/doctype/bom_item/__init__.py
diff --git a/erpnext/production/doctype/bom_item/bom_item.txt b/production/doctype/bom_item/bom_item.txt
similarity index 100%
rename from erpnext/production/doctype/bom_item/bom_item.txt
rename to production/doctype/bom_item/bom_item.txt
diff --git a/erpnext/production/doctype/bom_operation/__init__.py b/production/doctype/bom_operation/__init__.py
similarity index 100%
rename from erpnext/production/doctype/bom_operation/__init__.py
rename to production/doctype/bom_operation/__init__.py
diff --git a/erpnext/production/doctype/bom_operation/bom_operation.txt b/production/doctype/bom_operation/bom_operation.txt
similarity index 100%
rename from erpnext/production/doctype/bom_operation/bom_operation.txt
rename to production/doctype/bom_operation/bom_operation.txt
diff --git a/erpnext/production/doctype/production_control/__init__.py b/production/doctype/production_control/__init__.py
similarity index 100%
rename from erpnext/production/doctype/production_control/__init__.py
rename to production/doctype/production_control/__init__.py
diff --git a/erpnext/production/doctype/production_control/production_control.py b/production/doctype/production_control/production_control.py
similarity index 100%
rename from erpnext/production/doctype/production_control/production_control.py
rename to production/doctype/production_control/production_control.py
diff --git a/erpnext/production/doctype/production_control/production_control.txt b/production/doctype/production_control/production_control.txt
similarity index 100%
rename from erpnext/production/doctype/production_control/production_control.txt
rename to production/doctype/production_control/production_control.txt
diff --git a/erpnext/production/doctype/production_order/__init__.py b/production/doctype/production_order/__init__.py
similarity index 100%
rename from erpnext/production/doctype/production_order/__init__.py
rename to production/doctype/production_order/__init__.py
diff --git a/erpnext/production/doctype/production_order/production_order.js b/production/doctype/production_order/production_order.js
similarity index 100%
rename from erpnext/production/doctype/production_order/production_order.js
rename to production/doctype/production_order/production_order.js
diff --git a/erpnext/production/doctype/production_order/production_order.py b/production/doctype/production_order/production_order.py
similarity index 100%
rename from erpnext/production/doctype/production_order/production_order.py
rename to production/doctype/production_order/production_order.py
diff --git a/erpnext/production/doctype/production_order/production_order.txt b/production/doctype/production_order/production_order.txt
similarity index 100%
rename from erpnext/production/doctype/production_order/production_order.txt
rename to production/doctype/production_order/production_order.txt
diff --git a/erpnext/production/doctype/production_order/production_order_list.js b/production/doctype/production_order/production_order_list.js
similarity index 100%
rename from erpnext/production/doctype/production_order/production_order_list.js
rename to production/doctype/production_order/production_order_list.js
diff --git a/erpnext/production/doctype/production_plan_item/__init__.py b/production/doctype/production_plan_item/__init__.py
similarity index 100%
rename from erpnext/production/doctype/production_plan_item/__init__.py
rename to production/doctype/production_plan_item/__init__.py
diff --git a/erpnext/production/doctype/production_plan_item/production_plan_item.txt b/production/doctype/production_plan_item/production_plan_item.txt
similarity index 100%
rename from erpnext/production/doctype/production_plan_item/production_plan_item.txt
rename to production/doctype/production_plan_item/production_plan_item.txt
diff --git a/erpnext/production/doctype/production_plan_sales_order/__init__.py b/production/doctype/production_plan_sales_order/__init__.py
similarity index 100%
rename from erpnext/production/doctype/production_plan_sales_order/__init__.py
rename to production/doctype/production_plan_sales_order/__init__.py
diff --git a/erpnext/production/doctype/production_plan_sales_order/production_plan_sales_order.txt b/production/doctype/production_plan_sales_order/production_plan_sales_order.txt
similarity index 100%
rename from erpnext/production/doctype/production_plan_sales_order/production_plan_sales_order.txt
rename to production/doctype/production_plan_sales_order/production_plan_sales_order.txt
diff --git a/erpnext/production/doctype/production_planning_tool/__init__.py b/production/doctype/production_planning_tool/__init__.py
similarity index 100%
rename from erpnext/production/doctype/production_planning_tool/__init__.py
rename to production/doctype/production_planning_tool/__init__.py
diff --git a/erpnext/production/doctype/production_planning_tool/production_planning_tool.js b/production/doctype/production_planning_tool/production_planning_tool.js
similarity index 100%
rename from erpnext/production/doctype/production_planning_tool/production_planning_tool.js
rename to production/doctype/production_planning_tool/production_planning_tool.js
diff --git a/erpnext/production/doctype/production_planning_tool/production_planning_tool.py b/production/doctype/production_planning_tool/production_planning_tool.py
similarity index 100%
rename from erpnext/production/doctype/production_planning_tool/production_planning_tool.py
rename to production/doctype/production_planning_tool/production_planning_tool.py
diff --git a/erpnext/production/doctype/production_planning_tool/production_planning_tool.txt b/production/doctype/production_planning_tool/production_planning_tool.txt
similarity index 100%
rename from erpnext/production/doctype/production_planning_tool/production_planning_tool.txt
rename to production/doctype/production_planning_tool/production_planning_tool.txt
diff --git a/erpnext/production/doctype/workstation/__init__.py b/production/doctype/workstation/__init__.py
similarity index 100%
rename from erpnext/production/doctype/workstation/__init__.py
rename to production/doctype/workstation/__init__.py
diff --git a/erpnext/production/doctype/workstation/workstation.js b/production/doctype/workstation/workstation.js
similarity index 100%
rename from erpnext/production/doctype/workstation/workstation.js
rename to production/doctype/workstation/workstation.js
diff --git a/erpnext/production/doctype/workstation/workstation.py b/production/doctype/workstation/workstation.py
similarity index 100%
rename from erpnext/production/doctype/workstation/workstation.py
rename to production/doctype/workstation/workstation.py
diff --git a/erpnext/production/doctype/workstation/workstation.txt b/production/doctype/workstation/workstation.txt
similarity index 100%
rename from erpnext/production/doctype/workstation/workstation.txt
rename to production/doctype/workstation/workstation.txt
diff --git a/erpnext/production/page/__init__.py b/production/page/__init__.py
similarity index 100%
rename from erpnext/production/page/__init__.py
rename to production/page/__init__.py
diff --git a/erpnext/production/page/production_home/__init__.py b/production/page/production_home/__init__.py
similarity index 100%
rename from erpnext/production/page/production_home/__init__.py
rename to production/page/production_home/__init__.py
diff --git a/erpnext/production/page/production_home/production_home.html b/production/page/production_home/production_home.html
similarity index 100%
rename from erpnext/production/page/production_home/production_home.html
rename to production/page/production_home/production_home.html
diff --git a/erpnext/production/page/production_home/production_home.js b/production/page/production_home/production_home.js
similarity index 100%
rename from erpnext/production/page/production_home/production_home.js
rename to production/page/production_home/production_home.js
diff --git a/erpnext/production/page/production_home/production_home.txt b/production/page/production_home/production_home.txt
similarity index 100%
rename from erpnext/production/page/production_home/production_home.txt
rename to production/page/production_home/production_home.txt
diff --git a/erpnext/production/search_criteria/__init__.py b/production/search_criteria/__init__.py
similarity index 100%
rename from erpnext/production/search_criteria/__init__.py
rename to production/search_criteria/__init__.py
diff --git a/erpnext/production/search_criteria/consumption_against_production/__init__.py b/production/search_criteria/consumption_against_production/__init__.py
similarity index 100%
rename from erpnext/production/search_criteria/consumption_against_production/__init__.py
rename to production/search_criteria/consumption_against_production/__init__.py
diff --git a/erpnext/production/search_criteria/consumption_against_production/consumption_against_production.txt b/production/search_criteria/consumption_against_production/consumption_against_production.txt
similarity index 100%
rename from erpnext/production/search_criteria/consumption_against_production/consumption_against_production.txt
rename to production/search_criteria/consumption_against_production/consumption_against_production.txt
diff --git a/erpnext/production/search_criteria/itemwise_production_report/__init__.py b/production/search_criteria/itemwise_production_report/__init__.py
similarity index 100%
rename from erpnext/production/search_criteria/itemwise_production_report/__init__.py
rename to production/search_criteria/itemwise_production_report/__init__.py
diff --git a/erpnext/production/search_criteria/itemwise_production_report/itemwise_production_report.js b/production/search_criteria/itemwise_production_report/itemwise_production_report.js
similarity index 100%
rename from erpnext/production/search_criteria/itemwise_production_report/itemwise_production_report.js
rename to production/search_criteria/itemwise_production_report/itemwise_production_report.js
diff --git a/erpnext/production/search_criteria/itemwise_production_report/itemwise_production_report.txt b/production/search_criteria/itemwise_production_report/itemwise_production_report.txt
similarity index 100%
rename from erpnext/production/search_criteria/itemwise_production_report/itemwise_production_report.txt
rename to production/search_criteria/itemwise_production_report/itemwise_production_report.txt
diff --git a/erpnext/production/search_criteria/production_orders_in_process/__init__.py b/production/search_criteria/production_orders_in_process/__init__.py
similarity index 100%
rename from erpnext/production/search_criteria/production_orders_in_process/__init__.py
rename to production/search_criteria/production_orders_in_process/__init__.py
diff --git a/erpnext/production/search_criteria/production_orders_in_process/production_orders_in_process.txt b/production/search_criteria/production_orders_in_process/production_orders_in_process.txt
similarity index 100%
rename from erpnext/production/search_criteria/production_orders_in_process/production_orders_in_process.txt
rename to production/search_criteria/production_orders_in_process/production_orders_in_process.txt
diff --git a/erpnext/projects/__init__.py b/projects/__init__.py
similarity index 100%
rename from erpnext/projects/__init__.py
rename to projects/__init__.py
diff --git a/erpnext/projects/doctype/__init__.py b/projects/doctype/__init__.py
similarity index 100%
rename from erpnext/projects/doctype/__init__.py
rename to projects/doctype/__init__.py
diff --git a/erpnext/projects/doctype/project/__init__.py b/projects/doctype/project/__init__.py
similarity index 100%
rename from erpnext/projects/doctype/project/__init__.py
rename to projects/doctype/project/__init__.py
diff --git a/erpnext/projects/doctype/project/help.md b/projects/doctype/project/help.md
similarity index 100%
rename from erpnext/projects/doctype/project/help.md
rename to projects/doctype/project/help.md
diff --git a/erpnext/projects/doctype/project/project.js b/projects/doctype/project/project.js
similarity index 100%
rename from erpnext/projects/doctype/project/project.js
rename to projects/doctype/project/project.js
diff --git a/erpnext/projects/doctype/project/project.py b/projects/doctype/project/project.py
similarity index 100%
rename from erpnext/projects/doctype/project/project.py
rename to projects/doctype/project/project.py
diff --git a/erpnext/projects/doctype/project/project.txt b/projects/doctype/project/project.txt
similarity index 100%
rename from erpnext/projects/doctype/project/project.txt
rename to projects/doctype/project/project.txt
diff --git a/erpnext/projects/doctype/project/project_list.js b/projects/doctype/project/project_list.js
similarity index 100%
rename from erpnext/projects/doctype/project/project_list.js
rename to projects/doctype/project/project_list.js
diff --git a/erpnext/projects/doctype/project_control/__init__.py b/projects/doctype/project_control/__init__.py
similarity index 100%
rename from erpnext/projects/doctype/project_control/__init__.py
rename to projects/doctype/project_control/__init__.py
diff --git a/erpnext/projects/doctype/project_control/project_control.py b/projects/doctype/project_control/project_control.py
similarity index 100%
rename from erpnext/projects/doctype/project_control/project_control.py
rename to projects/doctype/project_control/project_control.py
diff --git a/erpnext/projects/doctype/project_milestone/__init__.py b/projects/doctype/project_milestone/__init__.py
similarity index 100%
rename from erpnext/projects/doctype/project_milestone/__init__.py
rename to projects/doctype/project_milestone/__init__.py
diff --git a/erpnext/projects/doctype/project_milestone/project_milestone.txt b/projects/doctype/project_milestone/project_milestone.txt
similarity index 100%
rename from erpnext/projects/doctype/project_milestone/project_milestone.txt
rename to projects/doctype/project_milestone/project_milestone.txt
diff --git a/erpnext/projects/doctype/task/__init__.py b/projects/doctype/task/__init__.py
similarity index 100%
rename from erpnext/projects/doctype/task/__init__.py
rename to projects/doctype/task/__init__.py
diff --git a/erpnext/projects/doctype/task/task.js b/projects/doctype/task/task.js
similarity index 100%
rename from erpnext/projects/doctype/task/task.js
rename to projects/doctype/task/task.js
diff --git a/erpnext/projects/doctype/task/task.py b/projects/doctype/task/task.py
similarity index 100%
rename from erpnext/projects/doctype/task/task.py
rename to projects/doctype/task/task.py
diff --git a/erpnext/projects/doctype/task/task.txt b/projects/doctype/task/task.txt
similarity index 100%
rename from erpnext/projects/doctype/task/task.txt
rename to projects/doctype/task/task.txt
diff --git a/erpnext/projects/doctype/task/task_list.js b/projects/doctype/task/task_list.js
similarity index 100%
rename from erpnext/projects/doctype/task/task_list.js
rename to projects/doctype/task/task_list.js
diff --git a/erpnext/projects/doctype/timesheet/__init__.py b/projects/doctype/timesheet/__init__.py
similarity index 100%
rename from erpnext/projects/doctype/timesheet/__init__.py
rename to projects/doctype/timesheet/__init__.py
diff --git a/erpnext/projects/doctype/timesheet/timesheet.js b/projects/doctype/timesheet/timesheet.js
similarity index 100%
rename from erpnext/projects/doctype/timesheet/timesheet.js
rename to projects/doctype/timesheet/timesheet.js
diff --git a/erpnext/projects/doctype/timesheet/timesheet.py b/projects/doctype/timesheet/timesheet.py
similarity index 100%
rename from erpnext/projects/doctype/timesheet/timesheet.py
rename to projects/doctype/timesheet/timesheet.py
diff --git a/erpnext/projects/doctype/timesheet/timesheet.txt b/projects/doctype/timesheet/timesheet.txt
similarity index 100%
rename from erpnext/projects/doctype/timesheet/timesheet.txt
rename to projects/doctype/timesheet/timesheet.txt
diff --git a/erpnext/projects/doctype/timesheet/timesheet_list.js b/projects/doctype/timesheet/timesheet_list.js
similarity index 100%
rename from erpnext/projects/doctype/timesheet/timesheet_list.js
rename to projects/doctype/timesheet/timesheet_list.js
diff --git a/erpnext/projects/doctype/timesheet_detail/__init__.py b/projects/doctype/timesheet_detail/__init__.py
similarity index 100%
rename from erpnext/projects/doctype/timesheet_detail/__init__.py
rename to projects/doctype/timesheet_detail/__init__.py
diff --git a/erpnext/projects/doctype/timesheet_detail/timesheet_detail.txt b/projects/doctype/timesheet_detail/timesheet_detail.txt
similarity index 100%
rename from erpnext/projects/doctype/timesheet_detail/timesheet_detail.txt
rename to projects/doctype/timesheet_detail/timesheet_detail.txt
diff --git a/erpnext/projects/page/__init__.py b/projects/page/__init__.py
similarity index 100%
rename from erpnext/projects/page/__init__.py
rename to projects/page/__init__.py
diff --git a/erpnext/projects/page/projects/__init__.py b/projects/page/projects/__init__.py
similarity index 100%
rename from erpnext/projects/page/projects/__init__.py
rename to projects/page/projects/__init__.py
diff --git a/erpnext/projects/page/projects/projects.css b/projects/page/projects/projects.css
similarity index 100%
rename from erpnext/projects/page/projects/projects.css
rename to projects/page/projects/projects.css
diff --git a/erpnext/projects/page/projects/projects.html b/projects/page/projects/projects.html
similarity index 100%
rename from erpnext/projects/page/projects/projects.html
rename to projects/page/projects/projects.html
diff --git a/erpnext/projects/page/projects/projects.js b/projects/page/projects/projects.js
similarity index 96%
rename from erpnext/projects/page/projects/projects.js
rename to projects/page/projects/projects.js
index 8f91f12..ef81718 100644
--- a/erpnext/projects/page/projects/projects.js
+++ b/projects/page/projects/projects.js
@@ -17,7 +17,7 @@
 pscript.onload_Projects = function(wrapper) {
 	wn.ui.make_app_page({parent:wrapper, title:'Gantt Chart: All Tasks', single_column:true});
 	if(!erpnext.show_task_gantt)
-		wn.require('js/app/gantt_task.js');
+		wn.require('app/js/gantt_task.js');
 
 	var gantt_area = $('<div>').appendTo($(wrapper).find('.layout-main'));
 	erpnext.show_task_gantt(gantt_area);
diff --git a/erpnext/projects/page/projects/projects.py b/projects/page/projects/projects.py
similarity index 100%
rename from erpnext/projects/page/projects/projects.py
rename to projects/page/projects/projects.py
diff --git a/erpnext/projects/page/projects/projects.txt b/projects/page/projects/projects.txt
similarity index 100%
rename from erpnext/projects/page/projects/projects.txt
rename to projects/page/projects/projects.txt
diff --git a/erpnext/projects/page/projects_home/__init__.py b/projects/page/projects_home/__init__.py
similarity index 100%
rename from erpnext/projects/page/projects_home/__init__.py
rename to projects/page/projects_home/__init__.py
diff --git a/erpnext/projects/page/projects_home/projects_home.html b/projects/page/projects_home/projects_home.html
similarity index 100%
rename from erpnext/projects/page/projects_home/projects_home.html
rename to projects/page/projects_home/projects_home.html
diff --git a/erpnext/projects/page/projects_home/projects_home.js b/projects/page/projects_home/projects_home.js
similarity index 100%
rename from erpnext/projects/page/projects_home/projects_home.js
rename to projects/page/projects_home/projects_home.js
diff --git a/erpnext/projects/page/projects_home/projects_home.txt b/projects/page/projects_home/projects_home.txt
similarity index 100%
rename from erpnext/projects/page/projects_home/projects_home.txt
rename to projects/page/projects_home/projects_home.txt
diff --git a/erpnext/projects/search_criteria/__init__.py b/projects/search_criteria/__init__.py
similarity index 100%
rename from erpnext/projects/search_criteria/__init__.py
rename to projects/search_criteria/__init__.py
diff --git a/erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/__init__.py b/projects/search_criteria/projectwise_delivered_qty_and_costs/__init__.py
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/__init__.py
rename to projects/search_criteria/projectwise_delivered_qty_and_costs/__init__.py
diff --git a/erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.js b/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.js
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.js
rename to projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.js
diff --git a/erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt b/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
rename to projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
diff --git a/erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/__init__.py b/projects/search_criteria/projectwise_pending_qty_and_costs/__init__.py
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/__init__.py
rename to projects/search_criteria/projectwise_pending_qty_and_costs/__init__.py
diff --git a/erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.js b/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.js
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.js
rename to projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.js
diff --git a/erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt b/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
rename to projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
diff --git a/erpnext/projects/search_criteria/projectwise_purchase_details/__init__.py b/projects/search_criteria/projectwise_purchase_details/__init__.py
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_purchase_details/__init__.py
rename to projects/search_criteria/projectwise_purchase_details/__init__.py
diff --git a/erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.js b/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.js
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.js
rename to projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.js
diff --git a/erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.py b/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.py
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.py
rename to projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.py
diff --git a/erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt b/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
rename to projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
diff --git a/erpnext/projects/search_criteria/projectwise_sales_details/__init__.py b/projects/search_criteria/projectwise_sales_details/__init__.py
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_sales_details/__init__.py
rename to projects/search_criteria/projectwise_sales_details/__init__.py
diff --git a/erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.js b/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.js
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.js
rename to projects/search_criteria/projectwise_sales_details/projectwise_sales_details.js
diff --git a/erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.py b/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.py
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.py
rename to projects/search_criteria/projectwise_sales_details/projectwise_sales_details.py
diff --git a/erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt b/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
rename to projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
diff --git a/erpnext/projects/search_criteria/projectwise_sales_orders/__init__.py b/projects/search_criteria/projectwise_sales_orders/__init__.py
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_sales_orders/__init__.py
rename to projects/search_criteria/projectwise_sales_orders/__init__.py
diff --git a/erpnext/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt b/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
similarity index 100%
rename from erpnext/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
rename to projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
diff --git a/erpnext/projects/search_criteria/timesheet_report/__init__.py b/projects/search_criteria/timesheet_report/__init__.py
similarity index 100%
rename from erpnext/projects/search_criteria/timesheet_report/__init__.py
rename to projects/search_criteria/timesheet_report/__init__.py
diff --git a/erpnext/projects/search_criteria/timesheet_report/timesheet_report.js b/projects/search_criteria/timesheet_report/timesheet_report.js
similarity index 100%
rename from erpnext/projects/search_criteria/timesheet_report/timesheet_report.js
rename to projects/search_criteria/timesheet_report/timesheet_report.js
diff --git a/erpnext/projects/search_criteria/timesheet_report/timesheet_report.txt b/projects/search_criteria/timesheet_report/timesheet_report.txt
similarity index 100%
rename from erpnext/projects/search_criteria/timesheet_report/timesheet_report.txt
rename to projects/search_criteria/timesheet_report/timesheet_report.txt
diff --git a/public/app.html b/public/app.html
deleted file mode 100644
index 96a693e..0000000
--- a/public/app.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html>
-<head>
-	<meta charset="utf-8">
-	<title>ERPNext</title>
-	<meta name="author" content="">
-	<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon">
-	<link rel="icon" href="images/favicon.ico" type="image/x-icon">
-	<script type="text/javascript" src="js/lib/jquery/jquery.min.js"></script>
-	<script type="text/javascript">
-	// browser support
-	if(($.browser.mozilla && parseFloat($.browser.version)<4) ||
-		($.browser.msie && parseFloat($.browser.version)<9) ||
-		($.browser.webkit && parseFloat($.browser.version)<533) ) {
-			window.location.href= 'unsupported.html';			
-		}
-	window.app = true;
-	</script>
-	<script type="text/javascript" src="js/all-app.js"></script>
-	<link type="text/css" rel="stylesheet" href="css/all-app.css">
-</head>
-<body>
-	<header></header>
-	<div id="body_div">
-	</div>
-	<footer></footer>
-</body>
\ No newline at end of file
diff --git a/public/blank.html b/public/blank.html
deleted file mode 100644
index e69de29..0000000
--- a/public/blank.html
+++ /dev/null
diff --git a/public/build.json b/public/build.json
new file mode 100644
index 0000000..d0ad3c6
--- /dev/null
+++ b/public/build.json
@@ -0,0 +1,20 @@
+{
+	"public/css/all-web.css": [
+		"app/erpnext/startup/startup.css",
+		"app/erpnext/website/css/website.css"	
+	],
+	"public/css/all-app.css": [
+		"app/erpnext/startup/startup.css"
+	],
+	"public/js/all-web.js": [
+		"erpnext/startup/startup.js",
+		"app/public/conf.js"
+	],
+	"public/js/all-app.js": [
+		"app/erpnext/startup/startup.js",
+		"app/erpnext/startup/js/modules.js",
+		"app/erpnext/startup/js/toolbar.js",
+		"app/erpnext/startup/js/feature_setup.js",
+		"app/public/conf.js"
+	],
+}
\ No newline at end of file
diff --git a/public/css/all-app.css b/public/css/all-app.css
deleted file mode 100644
index 3d9ba3c..0000000
--- a/public/css/all-app.css
+++ /dev/null
@@ -1,4177 +0,0 @@
-
-/*
- *	lib/css/bootstrap/headings.css
- */
-/* heading from bootstrap */
-
-h1,
-h2,
-h3,
-h4,
-h5,
-h6 {
-  margin: 0;
-  font-weight: bold;
-  color: #333333;
-  text-rendering: optimizelegibility;
-}
-h1 small,
-h2 small,
-h3 small,
-h4 small,
-h5 small,
-h6 small {
-  font-weight: normal;
-  color: #999999;
-}
-h1 {
-  font-size: 280%;
-  line-height: 120%;
-}
-h1 small {
-  font-size: 150%;
-}
-h2 {
-  font-size: 200%;
-  line-height: 120%;
-}
-h2 small {
-  font-size: 150%;
-}
-h3 {
-  font-size: 210%;
-  font-size: 150%;
-}
-h3 small {
-  font-size: 130%;
-}
-h4, h5, h6 {
-  font-size: 150%;
-}
-h4 {
-  font-size: 113%;
-}
-h4 small {
-  font-size: 100%;
-}
-h5 {
-  font-size: 100%;
-}
-h6 {
-  font-size: 11px;
-  color: #999999;
-  text-transform: uppercase;
-}
-
-/*
- *	lib/css/bootstrap/buttons.css
- */
-.close {
-  font-family: Helvetica, Sans;
-  float: right;
-  font-size: 20px;
-  font-weight: bold;
-  line-height: 18px;
-  color: #000000;
-  text-shadow: 0 1px 0 #ffffff;
-  opacity: 0.2;
-  filter: alpha(opacity=20);
-}
-.close:hover {
-  color: #000000;
-  text-decoration: none;
-  opacity: 0.4;
-  filter: alpha(opacity=40);
-  cursor: pointer;
-}
-.btn {
-  display: inline-block;
-  padding: 4px 10px 4px;
-  font-size: 13px;
-  line-height: 18px;
-  color: #333333;
-  text-align: center;
-  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
-  background-color: #fafafa;
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6));
-  background-image: -webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
-  background-image: -moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6);
-  background-image: -ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
-  background-image: -o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
-  background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
-  background-repeat: no-repeat;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
-  border: 1px solid #ccc;
-  border-bottom-color: #bbb;
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  cursor: pointer;
-  *margin-left: .3em;
-}
-.btn:first-child {
-  *margin-left: 0;
-}
-.btn:hover {
-  color: #333333;
-  text-decoration: none;
-  background-color: #e6e6e6;
-  background-position: 0 -15px;
-  -webkit-transition: background-position 0.1s linear;
-  -moz-transition: background-position 0.1s linear;
-  -ms-transition: background-position 0.1s linear;
-  -o-transition: background-position 0.1s linear;
-  transition: background-position 0.1s linear;
-}
-.btn:focus {
-  outline: thin dotted;
-  outline: 5px auto -webkit-focus-ring-color;
-  outline-offset: -2px;
-}
-.btn.active, .btn:active {
-  background-image: none;
-  -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  background-color: #e6e6e6;
-  background-color: #d9d9d9 \9;
-  color: rgba(0, 0, 0, 0.5);
-  outline: 0;
-}
-.btn.disabled, .btn[disabled] {
-  cursor: default;
-  background-image: none;
-  background-color: #e6e6e6;
-  opacity: 0.65;
-  filter: alpha(opacity=65);
-  -webkit-box-shadow: none;
-  -moz-box-shadow: none;
-  box-shadow: none;
-}
-.btn-large {
-  padding: 9px 14px;
-  font-size: 15px;
-  line-height: normal;
-  -webkit-border-radius: 5px;
-  -moz-border-radius: 5px;
-  border-radius: 5px;
-}
-.btn-large .icon {
-  margin-top: 1px;
-}
-.btn-small {
-  padding: 4px 9px;
-  font-size: 11px;
-  line-height: 16px;
-}
-.btn-small .icon {
-  margin-top: -1px;
-}
-.btn-primary,
-.btn-primary:hover,
-.btn-warning,
-.btn-warning:hover,
-.btn-danger,
-.btn-danger:hover,
-.btn-success,
-.btn-success:hover,
-.btn-info,
-.btn-info:hover {
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-  color: #ffffff;
-}
-.btn-primary.active,
-.btn-warning.active,
-.btn-danger.active,
-.btn-success.active,
-.btn-info.active {
-  color: rgba(255, 255, 255, 0.75);
-}
-.btn-primary {
-  background-color: #006dcc;
-  background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
-  background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
-  background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
-  background-image: -o-linear-gradient(top, #0088cc, #0044cc);
-  background-image: linear-gradient(top, #0088cc, #0044cc);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
-  border-color: #0044cc #0044cc #002a80;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-primary:hover,
-.btn-primary:active,
-.btn-primary.active,
-.btn-primary.disabled,
-.btn-primary[disabled] {
-  background-color: #0044cc;
-}
-.btn-primary:active, .btn-primary.active {
-  background-color: #003399 \9;
-}
-.btn-warning {
-  background-color: #faa732;
-  background-image: -moz-linear-gradient(top, #fbb450, #f89406);
-  background-image: -ms-linear-gradient(top, #fbb450, #f89406);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
-  background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
-  background-image: -o-linear-gradient(top, #fbb450, #f89406);
-  background-image: linear-gradient(top, #fbb450, #f89406);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
-  border-color: #f89406 #f89406 #ad6704;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-warning:hover,
-.btn-warning:active,
-.btn-warning.active,
-.btn-warning.disabled,
-.btn-warning[disabled] {
-  background-color: #f89406;
-}
-.btn-warning:active, .btn-warning.active {
-  background-color: #c67605 \9;
-}
-.btn-danger {
-  background-color: #da4f49;
-  background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
-  background-image: -ms-linear-gradient(top, #ee5f5b, #bd362f);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
-  background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
-  background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
-  background-image: linear-gradient(top, #ee5f5b, #bd362f);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#bd362f', GradientType=0);
-  border-color: #bd362f #bd362f #802420;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-danger:hover,
-.btn-danger:active,
-.btn-danger.active,
-.btn-danger.disabled,
-.btn-danger[disabled] {
-  background-color: #bd362f;
-}
-.btn-danger:active, .btn-danger.active {
-  background-color: #942a25 \9;
-}
-.btn-success {
-  background-color: #5bb75b;
-  background-image: -moz-linear-gradient(top, #62c462, #51a351);
-  background-image: -ms-linear-gradient(top, #62c462, #51a351);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
-  background-image: -webkit-linear-gradient(top, #62c462, #51a351);
-  background-image: -o-linear-gradient(top, #62c462, #51a351);
-  background-image: linear-gradient(top, #62c462, #51a351);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#51a351', GradientType=0);
-  border-color: #51a351 #51a351 #387038;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-success:hover,
-.btn-success:active,
-.btn-success.active,
-.btn-success.disabled,
-.btn-success[disabled] {
-  background-color: #51a351;
-}
-.btn-success:active, .btn-success.active {
-  background-color: #408140 \9;
-}
-.btn-info {
-  background-color: #49afcd;
-  background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
-  background-image: -ms-linear-gradient(top, #5bc0de, #2f96b4);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
-  background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
-  background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
-  background-image: linear-gradient(top, #5bc0de, #2f96b4);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#2f96b4', GradientType=0);
-  border-color: #2f96b4 #2f96b4 #1f6377;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-info:hover,
-.btn-info:active,
-.btn-info.active,
-.btn-info.disabled,
-.btn-info[disabled] {
-  background-color: #2f96b4;
-}
-.btn-info:active, .btn-info.active {
-  background-color: #24748c \9;
-}
-button.btn, input[type="submit"].btn {
-  *padding-top: 2px;
-  *padding-bottom: 2px;
-}
-button.btn::-moz-focus-inner, input[type="submit"].btn::-moz-focus-inner {
-  padding: 0;
-  border: 0;
-}
-button.btn.large, input[type="submit"].btn.large {
-  *padding-top: 7px;
-  *padding-bottom: 7px;
-}
-button.btn.small, input[type="submit"].btn.small {
-  *padding-top: 3px;
-  *padding-bottom: 3px;
-}
-.btn-group {
-  position: relative;
-  *zoom: 1;
-  *margin-left: .3em;
-}
-.btn-group:before, .btn-group:after {
-  display: table;
-  content: "";
-}
-.btn-group:after {
-  clear: both;
-}
-.btn-group:first-child {
-  *margin-left: 0;
-}
-.btn-group + .btn-group {
-  margin-left: 5px;
-}
-.btn-toolbar {
-  margin-top: 9px;
-  margin-bottom: 9px;
-}
-.btn-toolbar .btn-group {
-  display: inline-block;
-  *display: inline;
-  /* IE7 inline-block hack */
-
-  *zoom: 1;
-}
-.btn-group .btn {
-  position: relative;
-  float: left;
-  margin-left: -1px;
-  -webkit-border-radius: 0;
-  -moz-border-radius: 0;
-  border-radius: 0;
-}
-.btn-group .btn:first-child {
-  margin-left: 0;
-  -webkit-border-top-left-radius: 4px;
-  -moz-border-radius-topleft: 4px;
-  border-top-left-radius: 4px;
-  -webkit-border-bottom-left-radius: 4px;
-  -moz-border-radius-bottomleft: 4px;
-  border-bottom-left-radius: 4px;
-}
-.btn-group .btn:last-child, .btn-group .dropdown-toggle {
-  -webkit-border-top-right-radius: 4px;
-  -moz-border-radius-topright: 4px;
-  border-top-right-radius: 4px;
-  -webkit-border-bottom-right-radius: 4px;
-  -moz-border-radius-bottomright: 4px;
-  border-bottom-right-radius: 4px;
-}
-.btn-group .btn.large:first-child {
-  margin-left: 0;
-  -webkit-border-top-left-radius: 6px;
-  -moz-border-radius-topleft: 6px;
-  border-top-left-radius: 6px;
-  -webkit-border-bottom-left-radius: 6px;
-  -moz-border-radius-bottomleft: 6px;
-  border-bottom-left-radius: 6px;
-}
-.btn-group .btn.large:last-child, .btn-group .large.dropdown-toggle {
-  -webkit-border-top-right-radius: 6px;
-  -moz-border-radius-topright: 6px;
-  border-top-right-radius: 6px;
-  -webkit-border-bottom-right-radius: 6px;
-  -moz-border-radius-bottomright: 6px;
-  border-bottom-right-radius: 6px;
-}
-.btn-group .btn:hover,
-.btn-group .btn:focus,
-.btn-group .btn:active,
-.btn-group .btn.active {
-  z-index: 2;
-}
-.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle {
-  outline: 0;
-}
-.btn-group .dropdown-toggle {
-  padding-left: 8px;
-  padding-right: 8px;
-  -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  *padding-top: 5px;
-  *padding-bottom: 5px;
-}
-.btn-group.open {
-  *z-index: 1000;
-}
-.btn-group.open .dropdown-menu {
-  display: block;
-  margin-top: 1px;
-  -webkit-border-radius: 5px;
-  -moz-border-radius: 5px;
-  border-radius: 5px;
-}
-.btn-group.open .dropdown-toggle {
-  background-image: none;
-  -webkit-box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-.btn .caret {
-  margin-top: 7px;
-  margin-left: 0;
-}
-.btn:hover .caret, .open.btn-group .caret {
-  opacity: 1;
-  filter: alpha(opacity=100);
-}
-.btn-primary .caret,
-.btn-danger .caret,
-.btn-info .caret,
-.btn-success .caret {
-  border-top-color: #ffffff;
-  opacity: 0.75;
-  filter: alpha(opacity=75);
-}
-.btn-small .caret {
-  margin-top: 4px;
-}
-
-/*
- *	lib/css/bootstrap/navbar.css
- */
-.nav {
-  margin-left: 0;
-  margin-bottom: 18px;
-  list-style: none;
-}
-.nav > li > a {
-  display: block;
-}
-.nav > li > a:hover {
-  text-decoration: none;
-  background-color: #eeeeee;
-}
-.nav-list {
-  padding-left: 14px;
-  padding-right: 14px;
-  margin-bottom: 0;
-}
-.nav-list > li > a, .nav-list .nav-header {
-  display: block;
-  padding: 3px 15px;
-  margin-left: -15px;
-  margin-right: -15px;
-  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
-}
-.nav-list .nav-header {
-  font-size: 11px;
-  font-weight: bold;
-  line-height: 18px;
-  color: #999999;
-  text-transform: uppercase;
-}
-.nav-list > li + .nav-header {
-  margin-top: 9px;
-}
-.nav-list .active > a, .nav-list .active > a:hover {
-  color: #ffffff;
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
-  background-color: #0088cc;
-}
-.nav-list [class^="icon-"] {
-  margin-right: 2px;
-}
-.nav-tabs, .nav-pills {
-  *zoom: 1;
-}
-.nav-tabs:before,
-.nav-pills:before,
-.nav-tabs:after,
-.nav-pills:after {
-  display: table;
-  content: "";
-}
-.nav-tabs:after, .nav-pills:after {
-  clear: both;
-}
-.nav-tabs > li, .nav-pills > li {
-  float: left;
-}
-.nav-tabs > li > a, .nav-pills > li > a {
-  padding-right: 12px;
-  padding-left: 12px;
-  margin-right: 2px;
-  line-height: 14px;
-}
-.nav-tabs {
-  border-bottom: 1px solid #ddd;
-}
-.nav-tabs > li {
-  margin-bottom: -1px;
-}
-.nav-tabs > li > a {
-  padding-top: 9px;
-  padding-bottom: 9px;
-  border: 1px solid transparent;
-  -webkit-border-radius: 4px 4px 0 0;
-  -moz-border-radius: 4px 4px 0 0;
-  border-radius: 4px 4px 0 0;
-}
-.nav-tabs > li > a:hover {
-  border-color: #eeeeee #eeeeee #dddddd;
-}
-.nav-tabs > .active > a, .nav-tabs > .active > a:hover {
-  color: #555555;
-  background-color: #ffffff;
-  border: 1px solid #ddd;
-  border-bottom-color: transparent;
-  cursor: default;
-}
-.nav-pills > li > a {
-  padding-top: 8px;
-  padding-bottom: 8px;
-  margin-top: 2px;
-  margin-bottom: 2px;
-  -webkit-border-radius: 5px;
-  -moz-border-radius: 5px;
-  border-radius: 5px;
-}
-.nav-pills .active > a, .nav-pills .active > a:hover {
-  color: #ffffff;
-  background-color: #0088cc;
-}
-.nav-stacked > li {
-  float: none;
-}
-.nav-stacked > li > a {
-  margin-right: 0;
-}
-.nav-tabs.nav-stacked {
-  border-bottom: 0;
-}
-.nav-tabs.nav-stacked > li > a {
-  border: 1px solid #ddd;
-  -webkit-border-radius: 0;
-  -moz-border-radius: 0;
-  border-radius: 0;
-}
-.nav-tabs.nav-stacked > li:first-child > a {
-  -webkit-border-radius: 4px 4px 0 0;
-  -moz-border-radius: 4px 4px 0 0;
-  border-radius: 4px 4px 0 0;
-}
-.nav-tabs.nav-stacked > li:last-child > a {
-  -webkit-border-radius: 0 0 4px 4px;
-  -moz-border-radius: 0 0 4px 4px;
-  border-radius: 0 0 4px 4px;
-}
-.nav-tabs.nav-stacked > li > a:hover {
-  border-color: #ddd;
-  z-index: 2;
-}
-.nav-pills.nav-stacked > li > a {
-  margin-bottom: 3px;
-}
-.nav-pills.nav-stacked > li:last-child > a {
-  margin-bottom: 1px;
-}
-.nav-tabs .dropdown-menu, .nav-pills .dropdown-menu {
-  margin-top: 1px;
-  border-width: 1px;
-}
-.nav-pills .dropdown-menu {
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-}
-.nav-tabs .dropdown-toggle .caret, .nav-pills .dropdown-toggle .caret {
-  border-top-color: #0088cc;
-  margin-top: 6px;
-}
-.nav-tabs .dropdown-toggle:hover .caret, .nav-pills .dropdown-toggle:hover .caret {
-  border-top-color: #005580;
-}
-.nav-tabs .active .dropdown-toggle .caret, .nav-pills .active .dropdown-toggle .caret {
-  border-top-color: #333333;
-}
-.nav > .dropdown.active > a:hover {
-  color: #000000;
-  cursor: pointer;
-}
-.nav-tabs .open .dropdown-toggle, .nav-pills .open .dropdown-toggle, .nav > .open.active > a:hover {
-  color: #ffffff;
-  background-color: #999999;
-  border-color: #999999;
-}
-.nav .open .caret, .nav .open.active .caret, .nav .open a:hover .caret {
-  border-top-color: #ffffff;
-  opacity: 1;
-  filter: alpha(opacity=100);
-}
-
-.navbar {
-  overflow: visible;
-  margin-bottom: 18px;
-}
-.navbar-inner {
-  padding-left: 20px;
-  padding-right: 20px;
-  background-color: #2c2c2c;
-  background-image: -moz-linear-gradient(top, #333333, #222222);
-  background-image: -ms-linear-gradient(top, #333333, #222222);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
-  background-image: -webkit-linear-gradient(top, #333333, #222222);
-  background-image: -o-linear-gradient(top, #333333, #222222);
-  background-image: linear-gradient(top, #333333, #222222);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
-  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
-  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
-}
-.btn-navbar {
-  display: none;
-  float: right;
-  padding: 7px 10px;
-  margin-left: 5px;
-  margin-right: 5px;
-  background-color: #2c2c2c;
-  background-image: -moz-linear-gradient(top, #333333, #222222);
-  background-image: -ms-linear-gradient(top, #333333, #222222);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
-  background-image: -webkit-linear-gradient(top, #333333, #222222);
-  background-image: -o-linear-gradient(top, #333333, #222222);
-  background-image: linear-gradient(top, #333333, #222222);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
-  border-color: #222222 #222222 #000000;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
-  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
-  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
-}
-.btn-navbar:hover,
-.btn-navbar:active,
-.btn-navbar.active,
-.btn-navbar.disabled,
-.btn-navbar[disabled] {
-  background-color: #222222;
-}
-.btn-navbar:active, .btn-navbar.active {
-  background-color: #080808 \9;
-}
-.btn-navbar .icon-bar {
-  display: block;
-  width: 18px;
-  height: 2px;
-  background-color: #f5f5f5;
-  -webkit-border-radius: 1px;
-  -moz-border-radius: 1px;
-  border-radius: 1px;
-  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
-  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
-  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
-}
-.btn-navbar .icon-bar + .icon-bar {
-  margin-top: 3px;
-}
-.nav-collapse.collapse {
-  height: auto;
-}
-.navbar .brand:hover {
-  text-decoration: none;
-}
-.navbar .brand {
-  float: left;
-  display: block;
-  padding: 8px 20px 12px;
-  font-size: 20px;
-  font-weight: 200;
-  line-height: 1;
-  color: #ffffff;
-}
-.navbar .navbar-text {
-  margin-bottom: 0;
-  line-height: 40px;
-  color: #999999;
-}
-.navbar .navbar-text a:hover {
-  color: #ffffff;
-  background-color: transparent;
-}
-.navbar .btn, .navbar .btn-group {
-  margin-top: 5px;
-}
-.navbar .btn-group .btn {
-  margin-top: 0;
-}
-.navbar-form {
-  margin-bottom: 0;
-  *zoom: 1;
-}
-.navbar-form:before, .navbar-form:after {
-  display: table;
-  content: "";
-}
-.navbar-form:after {
-  clear: both;
-}
-.navbar-form input, .navbar-form select {
-  display: inline-block;
-  margin-top: 5px;
-  margin-bottom: 0;
-}
-.navbar-form .radio, .navbar-form .checkbox {
-  margin-top: 5px;
-}
-.navbar-form input[type="image"], .navbar-form input[type="checkbox"], .navbar-form input[type="radio"] {
-  margin-top: 3px;
-}
-.navbar-search {
-  position: relative;
-  float: left;
-  margin-top: 6px;
-  margin-bottom: 0;
-}
-.navbar-search .search-query {
-  padding: 4px 9px;
-  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
-  font-size: 13px;
-  font-weight: normal;
-  line-height: 1;
-  color: #ffffff;
-  color: rgba(255, 255, 255, 0.75);
-  background: #666;
-  background: rgba(255, 255, 255, 0.3);
-  border: 1px solid #111;
-  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
-  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
-  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
-  -webkit-transition: none;
-  -moz-transition: none;
-  -ms-transition: none;
-  -o-transition: none;
-  transition: none;
-}
-.navbar-search .search-query :-moz-placeholder {
-  color: #eeeeee;
-}
-.navbar-search .search-query::-webkit-input-placeholder {
-  color: #eeeeee;
-}
-.navbar-search .search-query:hover {
-  color: #ffffff;
-  background-color: #999999;
-  background-color: rgba(255, 255, 255, 0.5);
-}
-.navbar-search .search-query:focus, .navbar-search .search-query.focused {
-  padding: 5px 10px;
-  color: #333333;
-  text-shadow: 0 1px 0 #ffffff;
-  background-color: #ffffff;
-  border: 0;
-  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
-  -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
-  box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
-  outline: 0;
-}
-.navbar-fixed-top {
-  position: fixed;
-  top: 0;
-  right: 0;
-  left: 0;
-  z-index: 1030;
-}
-.navbar-fixed-top .navbar-inner {
-  padding-left: 0;
-  padding-right: 0;
-  -webkit-border-radius: 0;
-  -moz-border-radius: 0;
-  border-radius: 0;
-}
-.navbar .nav {
-  position: relative;
-  left: 0;
-  display: block;
-  float: left;
-  margin: 0 10px 0 0;
-}
-.navbar .nav.pull-right {
-  float: right;
-}
-.navbar .nav > li {
-  display: block;
-  float: left;
-}
-.navbar .nav > li > a {
-  float: none;
-  padding: 10px 10px 11px;
-  line-height: 19px;
-  color: #999999;
-  text-decoration: none;
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.navbar .nav > li > a:hover {
-  background-color: transparent;
-  color: #ffffff;
-  text-decoration: none;
-}
-.navbar .nav .active > a, .navbar .nav .active > a:hover {
-  color: #ffffff;
-  text-decoration: none;
-  background-color: #222222;
-  background-color: rgba(0, 0, 0, 0.5);
-}
-.navbar .divider-vertical {
-  height: 40px;
-  width: 1px;
-  margin: 0 9px;
-  overflow: hidden;
-  background-color: #222222;
-  border-right: 1px solid #333333;
-}
-.navbar .nav.pull-right {
-  margin-left: 10px;
-  margin-right: 0;
-}
-.navbar .dropdown-menu {
-  margin-top: 1px;
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-}
-.navbar .dropdown-menu:before {
-  content: '';
-  display: inline-block;
-  border-left: 7px solid transparent;
-  border-right: 7px solid transparent;
-  border-bottom: 7px solid #ccc;
-  border-bottom-color: rgba(0, 0, 0, 0.2);
-  position: absolute;
-  top: -7px;
-  left: 9px;
-}
-.navbar .dropdown-menu:after {
-  content: '';
-  display: inline-block;
-  border-left: 6px solid transparent;
-  border-right: 6px solid transparent;
-  border-bottom: 6px solid #ffffff;
-  position: absolute;
-  top: -6px;
-  left: 10px;
-}
-.navbar .nav .dropdown-toggle .caret, .navbar .nav .open.dropdown .caret {
-  border-top-color: #ffffff;
-}
-.navbar .nav .active .caret {
-  opacity: 1;
-  filter: alpha(opacity=100);
-}
-.navbar .nav .open > .dropdown-toggle, .navbar .nav .active > .dropdown-toggle, .navbar .nav .open.active > .dropdown-toggle {
-  background-color: transparent;
-}
-.navbar .nav .active > .dropdown-toggle:hover {
-  color: #ffffff;
-}
-.navbar .nav.pull-right .dropdown-menu {
-  left: auto;
-  right: 0;
-}
-.navbar .nav.pull-right .dropdown-menu:before {
-  left: auto;
-  right: 12px;
-}
-.navbar .nav.pull-right .dropdown-menu:after {
-  left: auto;
-  right: 13px;
-}
-
-/* ajax spinner */
-.navbar #spinner {
-	display: block;
-	float: right;
-	width: 20px;
-	margin-bottom: -5px;
-	margin-top: 10px;
-	visibility: hidden;
-}
-
-.navbar-inner {
-	padding: 0px 20px;
-}
-
-
-/*
- *	lib/css/bootstrap/dropdown.css
- */
-.dropdown {
-  position: relative;
-}
-.dropdown-toggle {
-  *margin-bottom: -3px;
-}
-.dropdown-toggle:active, .open .dropdown-toggle {
-  outline: 0;
-}
-.caret {
-  display: inline-block;
-  width: 0;
-  height: 0;
-  text-indent: -99999px;
-  *text-indent: 0;
-  vertical-align: top;
-  border-left: 4px solid transparent;
-  border-right: 4px solid transparent;
-  border-top: 4px solid #000000;
-  opacity: 0.3;
-  filter: alpha(opacity=30);
-  content: "\2193";
-}
-.dropdown .caret {
-  margin-top: 8px;
-  margin-left: 2px;
-}
-.dropdown:hover .caret, .open.dropdown .caret {
-  opacity: 1;
-  filter: alpha(opacity=100);
-}
-.dropdown-menu {
-  position: absolute;
-  top: 100%;
-  left: 0;
-  z-index: 1000;
-  float: left;
-  display: none;
-  min-width: 160px;
-  max-width: 220px;
-  _width: 160px;
-  padding: 4px 0;
-  margin: 0;
-  list-style: none;
-  background-color: #ffffff;
-  border-color: #ccc;
-  border-color: rgba(0, 0, 0, 0.2);
-  border-style: solid;
-  border-width: 1px;
-  -webkit-border-radius: 0 0 5px 5px;
-  -moz-border-radius: 0 0 5px 5px;
-  border-radius: 0 0 5px 5px;
-  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-  -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-  -webkit-background-clip: padding-box;
-  -moz-background-clip: padding;
-  background-clip: padding-box;
-  *border-right-width: 2px;
-  *border-bottom-width: 2px;
-}
-.dropdown-menu.bottom-up {
-  top: auto;
-  bottom: 100%;
-  margin-bottom: 2px;
-}
-.dropdown-menu .divider {
-  height: 1px;
-  margin: 5px 1px;
-  overflow: hidden;
-  background-color: #e5e5e5;
-  border-bottom: 1px solid #ffffff;
-  *width: 100%;
-  *margin: -5px 0 5px;
-}
-.dropdown-menu a {
-  display: block;
-  padding: 3px 15px;
-  clear: both;
-  font-weight: normal;
-  line-height: 18px;
-  color: #555555;
-  white-space: nowrap;
-}
-.dropdown-menu li > a:hover, .dropdown-menu .active > a, .dropdown-menu .active > a:hover {
-  color: #ffffff;
-  text-decoration: none;
-  background-color: #0088cc;
-}
-.dropdown.open {
-  *z-index: 1000;
-}
-.dropdown.open .dropdown-toggle {
-  color: #ffffff;
-  background: #ccc;
-  background: rgba(0, 0, 0, 0.3);
-}
-.dropdown.open .dropdown-menu {
-  display: block;
-}
-
-/*
- *	lib/css/bootstrap/tooltip.css
- */
-.tooltip {
-  position: absolute;
-  z-index: 1020;
-  display: block;
-  visibility: visible;
-  padding: 5px;
-  font-size: 11px;
-  opacity: 0;
-  filter: alpha(opacity=0);
-}
-.tooltip.in {
-  opacity: 0.8;
-  filter: alpha(opacity=80);
-}
-.tooltip.top {
-  margin-top: -2px;
-}
-.tooltip.right {
-  margin-left: 2px;
-}
-.tooltip.bottom {
-  margin-top: 2px;
-}
-.tooltip.left {
-  margin-left: -2px;
-}
-.tooltip.top .tooltip-arrow {
-  bottom: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-top: 5px solid #000000;
-}
-.tooltip.left .tooltip-arrow {
-  top: 50%;
-  right: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-left: 5px solid #000000;
-}
-.tooltip.bottom .tooltip-arrow {
-  top: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-bottom: 5px solid #000000;
-}
-.tooltip.right .tooltip-arrow {
-  top: 50%;
-  left: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-right: 5px solid #000000;
-}
-.tooltip-inner {
-  max-width: 200px;
-  padding: 3px 8px;
-  color: #ffffff;
-  text-align: center;
-  text-decoration: none;
-  background-color: #000000;
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-}
-.tooltip-arrow {
-  position: absolute;
-  width: 0;
-  height: 0;
-}
-.popover {
-  position: absolute;
-  top: 0;
-  left: 0;
-  z-index: 1010;
-  display: none;
-  padding: 5px;
-}
-.popover.top {
-  margin-top: -5px;
-}
-.popover.right {
-  margin-left: 5px;
-}
-.popover.bottom {
-  margin-top: 5px;
-}
-.popover.left {
-  margin-left: -5px;
-}
-.popover.top .arrow {
-  bottom: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-top: 5px solid #000000;
-}
-.popover.right .arrow {
-  top: 50%;
-  left: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-right: 5px solid #000000;
-}
-.popover.bottom .arrow {
-  top: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-bottom: 5px solid #000000;
-}
-.popover.left .arrow {
-  top: 50%;
-  right: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-left: 5px solid #000000;
-}
-.popover .arrow {
-  position: absolute;
-  width: 0;
-  height: 0;
-}
-.popover-inner {
-  padding: 3px;
-  width: 280px;
-  overflow: hidden;
-  background: #000000;
-  background: rgba(0, 0, 0, 0.8);
-  -webkit-border-radius: 6px;
-  -moz-border-radius: 6px;
-  border-radius: 6px;
-  -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-  -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-}
-.popover-title {
-  padding: 9px 15px;
-  line-height: 1;
-  background-color: #f5f5f5;
-  border-bottom: 1px solid #eee;
-  -webkit-border-radius: 3px 3px 0 0;
-  -moz-border-radius: 3px 3px 0 0;
-  border-radius: 3px 3px 0 0;
-}
-.popover-content {
-  padding: 14px;
-  background-color: #ffffff;
-  -webkit-border-radius: 0 0 3px 3px;
-  -moz-border-radius: 0 0 3px 3px;
-  border-radius: 0 0 3px 3px;
-  -webkit-background-clip: padding-box;
-  -moz-background-clip: padding-box;
-  background-clip: padding-box;
-}
-.popover-content p, .popover-content ul, .popover-content ol {
-  margin-bottom: 0;
-}
-
-/*
- *	lib/css/bootstrap/label.css
- */
-.label {
-  padding: 2px 4px 3px;
-  font-size: 11.049999999999999px;
-  font-weight: bold;
-  color: #ffffff;
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-  background-color: #999999;
-  -webkit-border-radius: 3px;
-  -moz-border-radius: 3px;
-  border-radius: 3px;
-}
-.label:hover {
-  color: #ffffff;
-  text-decoration: none;
-}
-.label-important {
-  background-color: #b94a48;
-}
-.label-important:hover {
-  background-color: #953b39;
-}
-.label-warning {
-  background-color: #f89406;
-}
-.label-warning:hover {
-  background-color: #c67605;
-}
-.label-success {
-  background-color: #468847;
-}
-.label-success:hover {
-  background-color: #356635;
-}
-.label-info {
-  background-color: #3a87ad;
-}
-.label-info:hover {
-  background-color: #2d6987;
-}
-
-/*
- *	lib/css/bootstrap/icons.css
- */
-[class^="icon-"],
-[class*=" icon-"] {
-  display: inline-block;
-  width: 15px;
-  height: 14px;
-  *margin-right: .3em;
-  line-height: 14px;
-  vertical-align: text-top;
-  background-image: url("../images/lib/icons/glyphicons-halflings.png");
-  background-position: 14px 14px;
-  background-repeat: no-repeat;
-}
-
-[class^="icon-"]:last-child,
-[class*=" icon-"]:last-child {
-  *margin-left: 0;
-}
-
-.icon-white {
-  background-image: url("../images/lib/icons/glyphicons-halflings-white.png");
-}
-
-.icon-glass {
-  background-position: 0      0;
-}
-
-.icon-music {
-  background-position: -24px 0;
-}
-
-.icon-search {
-  background-position: -48px 0;
-}
-
-.icon-envelope {
-  background-position: -72px 0;
-}
-
-.icon-heart {
-  background-position: -96px 0;
-}
-
-.icon-star {
-  background-position: -120px 0;
-}
-
-.icon-star-empty {
-  background-position: -144px 0;
-}
-
-.icon-user {
-  background-position: -168px 0;
-}
-
-.icon-film {
-  background-position: -192px 0;
-}
-
-.icon-th-large {
-  background-position: -216px 0;
-}
-
-.icon-th {
-  background-position: -240px 0;
-}
-
-.icon-th-list {
-  background-position: -264px 0;
-}
-
-.icon-ok {
-  background-position: -288px 0;
-}
-
-.icon-remove {
-  background-position: -312px 0;
-}
-
-.icon-zoom-in {
-  background-position: -336px 0;
-}
-
-.icon-zoom-out {
-  background-position: -360px 0;
-}
-
-.icon-off {
-  background-position: -384px 0;
-}
-
-.icon-signal {
-  background-position: -408px 0;
-}
-
-.icon-cog {
-  background-position: -432px 0;
-}
-
-.icon-trash {
-  background-position: -456px 0;
-}
-
-.icon-home {
-  background-position: 0 -24px;
-}
-
-.icon-file {
-  background-position: -24px -24px;
-}
-
-.icon-time {
-  background-position: -48px -24px;
-}
-
-.icon-road {
-  background-position: -72px -24px;
-}
-
-.icon-download-alt {
-  background-position: -96px -24px;
-}
-
-.icon-download {
-  background-position: -120px -24px;
-}
-
-.icon-upload {
-  background-position: -144px -24px;
-}
-
-.icon-inbox {
-  background-position: -168px -24px;
-}
-
-.icon-play-circle {
-  background-position: -192px -24px;
-}
-
-.icon-repeat {
-  background-position: -216px -24px;
-}
-
-.icon-refresh {
-  background-position: -240px -24px;
-}
-
-.icon-list-alt {
-  background-position: -264px -24px;
-}
-
-.icon-lock {
-  background-position: -287px -24px;
-}
-
-.icon-flag {
-  background-position: -312px -24px;
-}
-
-.icon-headphones {
-  background-position: -336px -24px;
-}
-
-.icon-volume-off {
-  background-position: -360px -24px;
-}
-
-.icon-volume-down {
-  background-position: -384px -24px;
-}
-
-.icon-volume-up {
-  background-position: -408px -24px;
-}
-
-.icon-qrcode {
-  background-position: -432px -24px;
-}
-
-.icon-barcode {
-  background-position: -456px -24px;
-}
-
-.icon-tag {
-  background-position: 0 -48px;
-}
-
-.icon-tags {
-  background-position: -25px -48px;
-}
-
-.icon-book {
-  background-position: -48px -48px;
-}
-
-.icon-bookmark {
-  background-position: -72px -48px;
-}
-
-.icon-print {
-  background-position: -96px -48px;
-}
-
-.icon-camera {
-  background-position: -120px -48px;
-}
-
-.icon-font {
-  background-position: -144px -48px;
-}
-
-.icon-bold {
-  background-position: -167px -48px;
-}
-
-.icon-italic {
-  background-position: -192px -48px;
-}
-
-.icon-text-height {
-  background-position: -216px -48px;
-}
-
-.icon-text-width {
-  background-position: -240px -48px;
-}
-
-.icon-align-left {
-  background-position: -264px -48px;
-}
-
-.icon-align-center {
-  background-position: -288px -48px;
-}
-
-.icon-align-right {
-  background-position: -312px -48px;
-}
-
-.icon-align-justify {
-  background-position: -336px -48px;
-}
-
-.icon-list {
-  background-position: -360px -48px;
-}
-
-.icon-indent-left {
-  background-position: -384px -48px;
-}
-
-.icon-indent-right {
-  background-position: -408px -48px;
-}
-
-.icon-facetime-video {
-  background-position: -432px -48px;
-}
-
-.icon-picture {
-  background-position: -456px -48px;
-}
-
-.icon-pencil {
-  background-position: 0 -72px;
-}
-
-.icon-map-marker {
-  background-position: -24px -72px;
-}
-
-.icon-adjust {
-  background-position: -48px -72px;
-}
-
-.icon-tint {
-  background-position: -72px -72px;
-}
-
-.icon-edit {
-  background-position: -96px -72px;
-}
-
-.icon-share {
-  background-position: -120px -72px;
-}
-
-.icon-check {
-  background-position: -144px -72px;
-}
-
-.icon-move {
-  background-position: -168px -72px;
-}
-
-.icon-step-backward {
-  background-position: -192px -72px;
-}
-
-.icon-fast-backward {
-  background-position: -216px -72px;
-}
-
-.icon-backward {
-  background-position: -240px -72px;
-}
-
-.icon-play {
-  background-position: -264px -72px;
-}
-
-.icon-pause {
-  background-position: -288px -72px;
-}
-
-.icon-stop {
-  background-position: -312px -72px;
-}
-
-.icon-forward {
-  background-position: -336px -72px;
-}
-
-.icon-fast-forward {
-  background-position: -360px -72px;
-}
-
-.icon-step-forward {
-  background-position: -384px -72px;
-}
-
-.icon-eject {
-  background-position: -408px -72px;
-}
-
-.icon-chevron-left {
-  background-position: -432px -72px;
-}
-
-.icon-chevron-right {
-  background-position: -456px -72px;
-}
-
-.icon-plus-sign {
-  background-position: 0 -96px;
-}
-
-.icon-minus-sign {
-  background-position: -24px -96px;
-}
-
-.icon-remove-sign {
-  background-position: -48px -96px;
-}
-
-.icon-ok-sign {
-  background-position: -72px -96px;
-}
-
-.icon-question-sign {
-  background-position: -96px -96px;
-}
-
-.icon-info-sign {
-  background-position: -120px -96px;
-}
-
-.icon-screenshot {
-  background-position: -144px -96px;
-}
-
-.icon-remove-circle {
-  background-position: -168px -96px;
-}
-
-.icon-ok-circle {
-  background-position: -192px -96px;
-}
-
-.icon-ban-circle {
-  background-position: -216px -96px;
-}
-
-.icon-arrow-left {
-  background-position: -240px -96px;
-}
-
-.icon-arrow-right {
-  background-position: -264px -96px;
-}
-
-.icon-arrow-up {
-  background-position: -289px -96px;
-}
-
-.icon-arrow-down {
-  background-position: -312px -96px;
-}
-
-.icon-share-alt {
-  background-position: -336px -96px;
-}
-
-.icon-resize-full {
-  background-position: -360px -96px;
-}
-
-.icon-resize-small {
-  background-position: -384px -96px;
-}
-
-.icon-plus {
-  background-position: -408px -96px;
-}
-
-.icon-minus {
-  background-position: -433px -96px;
-}
-
-.icon-asterisk {
-  background-position: -456px -96px;
-}
-
-.icon-exclamation-sign {
-  background-position: 0 -120px;
-}
-
-.icon-gift {
-  background-position: -24px -120px;
-}
-
-.icon-leaf {
-  background-position: -48px -120px;
-}
-
-.icon-fire {
-  background-position: -72px -120px;
-}
-
-.icon-eye-open {
-  background-position: -96px -120px;
-}
-
-.icon-eye-close {
-  background-position: -120px -120px;
-}
-
-.icon-warning-sign {
-  background-position: -144px -120px;
-}
-
-.icon-plane {
-  background-position: -168px -120px;
-}
-
-.icon-calendar {
-  background-position: -192px -120px;
-}
-
-.icon-random {
-  background-position: -216px -120px;
-}
-
-.icon-comment {
-  background-position: -240px -120px;
-}
-
-.icon-magnet {
-  background-position: -264px -120px;
-}
-
-.icon-chevron-up {
-  background-position: -288px -120px;
-}
-
-.icon-chevron-down {
-  background-position: -313px -119px;
-}
-
-.icon-retweet {
-  background-position: -336px -120px;
-}
-
-.icon-shopping-cart {
-  background-position: -360px -120px;
-}
-
-.icon-folder-close {
-  background-position: -384px -120px;
-}
-
-.icon-folder-open {
-  background-position: -408px -120px;
-}
-
-.icon-resize-vertical {
-  background-position: -432px -119px;
-}
-
-.icon-resize-horizontal {
-  background-position: -456px -118px;
-}
-
-.icon-hdd {
-  background-position: 0 -144px;
-}
-
-.icon-bullhorn {
-  background-position: -24px -144px;
-}
-
-.icon-bell {
-  background-position: -48px -144px;
-}
-
-.icon-certificate {
-  background-position: -72px -144px;
-}
-
-.icon-thumbs-up {
-  background-position: -96px -144px;
-}
-
-.icon-thumbs-down {
-  background-position: -120px -144px;
-}
-
-.icon-hand-right {
-  background-position: -144px -144px;
-}
-
-.icon-hand-left {
-  background-position: -168px -144px;
-}
-
-.icon-hand-up {
-  background-position: -192px -144px;
-}
-
-.icon-hand-down {
-  background-position: -216px -144px;
-}
-
-.icon-circle-arrow-right {
-  background-position: -240px -144px;
-}
-
-.icon-circle-arrow-left {
-  background-position: -264px -144px;
-}
-
-.icon-circle-arrow-up {
-  background-position: -288px -144px;
-}
-
-.icon-circle-arrow-down {
-  background-position: -312px -144px;
-}
-
-.icon-globe {
-  background-position: -336px -144px;
-}
-
-.icon-wrench {
-  background-position: -360px -144px;
-}
-
-.icon-tasks {
-  background-position: -384px -144px;
-}
-
-.icon-filter {
-  background-position: -408px -144px;
-}
-
-.icon-briefcase {
-  background-position: -432px -144px;
-}
-
-.icon-fullscreen {
-  background-position: -456px -144px;
-}
-
-/*
- *	lib/css/bootstrap/popover.css
- */
-.popover {
-  position: absolute;
-  top: 0;
-  left: 0;
-  z-index: 1010;
-  display: none;
-  padding: 5px;
-}
-.popover.top {
-  margin-top: -5px;
-}
-.popover.right {
-  margin-left: 5px;
-}
-.popover.bottom {
-  margin-top: 5px;
-}
-.popover.left {
-  margin-left: -5px;
-}
-.popover.top .arrow {
-  bottom: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-top: 5px solid #000000;
-}
-.popover.right .arrow {
-  top: 50%;
-  left: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-right: 5px solid #000000;
-}
-.popover.bottom .arrow {
-  top: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-bottom: 5px solid #000000;
-}
-.popover.left .arrow {
-  top: 50%;
-  right: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-left: 5px solid #000000;
-}
-.popover .arrow {
-  position: absolute;
-  width: 0;
-  height: 0;
-}
-.popover-inner {
-  padding: 3px;
-  width: 280px;
-  overflow: hidden;
-  background: #000000;
-  background: rgba(0, 0, 0, 0.8);
-  -webkit-border-radius: 6px;
-  -moz-border-radius: 6px;
-  border-radius: 6px;
-  -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-  -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-}
-.popover-title {
-  padding: 9px 15px;
-  line-height: 1;
-  background-color: #f5f5f5;
-  border-bottom: 1px solid #eee;
-  -webkit-border-radius: 3px 3px 0 0;
-  -moz-border-radius: 3px 3px 0 0;
-  border-radius: 3px 3px 0 0;
-}
-.popover-content {
-  padding: 14px;
-  background-color: #ffffff;
-  -webkit-border-radius: 0 0 3px 3px;
-  -moz-border-radius: 0 0 3px 3px;
-  border-radius: 0 0 3px 3px;
-  -webkit-background-clip: padding-box;
-  -moz-background-clip: padding-box;
-  background-clip: padding-box;
-}
-.popover-content p, .popover-content ul, .popover-content ol {
-  margin-bottom: 0;
-}
-
-/*
- *	lib/css/bootstrap/progress.css
- */
-@-webkit-keyframes progress-bar-stripes {
-  from {
-    background-position: 40px 0;
-  }
-  to {
-    background-position: 0 0;
-  }
-}
-
-@-moz-keyframes progress-bar-stripes {
-  from {
-    background-position: 40px 0;
-  }
-  to {
-    background-position: 0 0;
-  }
-}
-
-@-ms-keyframes progress-bar-stripes {
-  from {
-    background-position: 40px 0;
-  }
-  to {
-    background-position: 0 0;
-  }
-}
-
-@-o-keyframes progress-bar-stripes {
-  from {
-    background-position: 0 0;
-  }
-  to {
-    background-position: 40px 0;
-  }
-}
-
-@keyframes progress-bar-stripes {
-  from {
-    background-position: 40px 0;
-  }
-  to {
-    background-position: 0 0;
-  }
-}
-
-.progress {
-  height: 20px;
-  margin-bottom: 20px;
-  overflow: hidden;
-  background-color: #f7f7f7;
-  background-image: -moz-linear-gradient(top, #f5f5f5, #f9f9f9);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9));
-  background-image: -webkit-linear-gradient(top, #f5f5f5, #f9f9f9);
-  background-image: -o-linear-gradient(top, #f5f5f5, #f9f9f9);
-  background-image: linear-gradient(to bottom, #f5f5f5, #f9f9f9);
-  background-repeat: repeat-x;
-  -webkit-border-radius: 4px;
-     -moz-border-radius: 4px;
-          border-radius: 4px;
-  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);
-  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
-     -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
-          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
-}
-
-.progress .bar {
-  float: left;
-  width: 0;
-  height: 100%;
-  font-size: 12px;
-  color: #ffffff;
-  text-align: center;
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-  background-color: #0e90d2;
-  background-image: -moz-linear-gradient(top, #149bdf, #0480be);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));
-  background-image: -webkit-linear-gradient(top, #149bdf, #0480be);
-  background-image: -o-linear-gradient(top, #149bdf, #0480be);
-  background-image: linear-gradient(to bottom, #149bdf, #0480be);
-  background-repeat: repeat-x;
-  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);
-  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-     -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-          box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-  -webkit-box-sizing: border-box;
-     -moz-box-sizing: border-box;
-          box-sizing: border-box;
-  -webkit-transition: width 0.6s ease;
-     -moz-transition: width 0.6s ease;
-       -o-transition: width 0.6s ease;
-          transition: width 0.6s ease;
-}
-
-.progress .bar + .bar {
-  -webkit-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-     -moz-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-          box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-}
-
-.progress-striped .bar {
-  background-color: #149bdf;
-  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
-  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  -webkit-background-size: 40px 40px;
-     -moz-background-size: 40px 40px;
-       -o-background-size: 40px 40px;
-          background-size: 40px 40px;
-}
-
-.progress.active .bar {
-  -webkit-animation: progress-bar-stripes 2s linear infinite;
-     -moz-animation: progress-bar-stripes 2s linear infinite;
-      -ms-animation: progress-bar-stripes 2s linear infinite;
-       -o-animation: progress-bar-stripes 2s linear infinite;
-          animation: progress-bar-stripes 2s linear infinite;
-}
-
-.progress-danger .bar,
-.progress .bar-danger {
-  background-color: #dd514c;
-  background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35));
-  background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35);
-  background-image: -o-linear-gradient(top, #ee5f5b, #c43c35);
-  background-image: linear-gradient(to bottom, #ee5f5b, #c43c35);
-  background-repeat: repeat-x;
-  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0);
-}
-
-.progress-danger.progress-striped .bar,
-.progress-striped .bar-danger {
-  background-color: #ee5f5b;
-  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
-  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-
-.progress-success .bar,
-.progress .bar-success {
-  background-color: #5eb95e;
-  background-image: -moz-linear-gradient(top, #62c462, #57a957);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957));
-  background-image: -webkit-linear-gradient(top, #62c462, #57a957);
-  background-image: -o-linear-gradient(top, #62c462, #57a957);
-  background-image: linear-gradient(to bottom, #62c462, #57a957);
-  background-repeat: repeat-x;
-  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0);
-}
-
-.progress-success.progress-striped .bar,
-.progress-striped .bar-success {
-  background-color: #62c462;
-  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
-  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-
-.progress-info .bar,
-.progress .bar-info {
-  background-color: #4bb1cf;
-  background-image: -moz-linear-gradient(top, #5bc0de, #339bb9);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9));
-  background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9);
-  background-image: -o-linear-gradient(top, #5bc0de, #339bb9);
-  background-image: linear-gradient(to bottom, #5bc0de, #339bb9);
-  background-repeat: repeat-x;
-  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0);
-}
-
-.progress-info.progress-striped .bar,
-.progress-striped .bar-info {
-  background-color: #5bc0de;
-  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
-  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-
-.progress-warning .bar,
-.progress .bar-warning {
-  background-color: #faa732;
-  background-image: -moz-linear-gradient(top, #fbb450, #f89406);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
-  background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
-  background-image: -o-linear-gradient(top, #fbb450, #f89406);
-  background-image: linear-gradient(to bottom, #fbb450, #f89406);
-  background-repeat: repeat-x;
-  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0);
-}
-
-.progress-warning.progress-striped .bar,
-.progress-striped .bar-warning {
-  background-color: #fbb450;
-  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
-  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-
-/*
- *	lib/css/legacy/body.css
- */
-html { 
-	margin: 0px;
-	padding: 0px;
-}
-
-body {	
-	margin: 0px;
-	padding: 0px;
-	font-size: 14px;
-	color: #000;
-}
-
-/* font settings */
-
-h1, h2, h3, h4, h5 {
-	font-family: Arial, sans-serif;
-	margin-top: 0.2em;
-}
-
-body {
-	font-family: Arial, sans-serif;
-	font-size: 13px;
-	background-color: #eee;
-}
-
-footer {
-	background: #b7b7b7; /* Old browsers */
-	background: -moz-linear-gradient(top,  #b7b7b7 0%, #eeeeee 36%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b7b7b7), color-stop(36%,#eeeeee)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top,  #b7b7b7 0%,#eeeeee 36%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #b7b7b7 0%,#eeeeee 36%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #b7b7b7 0%,#eeeeee 36%); /* IE10+ */
-	background: linear-gradient(top,  #b7b7b7 0%,#eeeeee 36%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b7b7b7', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */
-	border-top: 1px solid #999;
-	text-align: center;
-	color: inherit;
-	padding: 10px;
-	font-size: 12px;
-	line-height: 1.7;
-}
-
-span, div, td, input, textarea, button, select {
-	font-family: inherit;
-}
-
-
-.markdown pre {
-    background-color: #F5F5F5;
-    border: 1px solid rgba(0, 0, 0, 0.15);
-    border-radius: 4px 4px 4px 4px;
-    display: block;
-    font-size: 12.025px;
-    line-height: 18px;
-    margin: 0 0 15px;
-    padding: 8.5px;
-    white-space: pre-wrap;
-    word-wrap: break-word;
-}
-
-.markdown code, .markdown pre {
-    border-radius: 3px 3px 3px 3px;
-    color: #333333;
-    font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
-    font-size: 12px;
-}
-
-button { margin: 2px; margin-left: 0px; }
-
-label {
-	padding-top: 15px;
-	color: #404040;
-}
-
-select, input, textarea { 
-	border: 1px solid #ccc; 
-	-moz-border-radius: 4px;
-	-webkit-border-radius: 4px;
-	font-size: inherit;
-	padding: 4px;
-	color: #444;
-	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-
-textarea { 
-	font-family: inherit; 
-	height: 120px; 
-	width: 90%; 
-	font-size: inherit; 
-	white-space: normal;
-}
-
-table { padding: 0px; border-collapse: 'collapse'}
-
-td { 
-	padding:0px; 
-	margin: 0px; 
-	vertical-align: top; 
-}
-
-p {
-	margin: 0px 0px 9px 0px;
-	line-height: 1.5em;
-}
-
-li {
-	line-height: 1.5em;
-}
-
-hr {
-  clear: both;
-  margin: 18px 0;
-  border: 0;
-  border-top: 1px solid #e5e5e5;
-  border-bottom: 1px solid #ffffff;
-}
-
-/* links */
-
-a:active { outline:none; }
-
-a {
-  color: #0088cc;
-  text-decoration: none;
-}
-a:hover {
-  color: #005580;
-  text-decoration: underline;
-}
-
-.link_type {
-	padding:2px;
-	color: #0088cc;
-	cursor: pointer;
-}
-
-.link_type:hover {
-	color: #005580;
-	text-decoration: underline;
-}
-
-:focus { -moz-outline-style:none; }
-
-table.simpletable { border-collapse: collapse; margin-bottom: 10px;}
-table.simpletable td {border: 1pt solid #000; vertical-align: top; padding: 2px; }
-
-div.fix_ff_cursor { overflow: auto; }
-
-/* --- Layout --- */
-
-div.comment { color: #444; }
-
-.small {
-	font-size: 12px;
-}
-
-.help {
-	margin-bottom: 3px;
-	color: #888;
-}
-
-div#body_div {
-	padding-right: 7px;
-	padding-top: 70px;
-	padding-bottom: 50px;
-	min-height: 400px;
-}
-
-.content {
-	margin: auto;
-	width: 900px;
-}
-
-.background-fade-in {
-	-webkit-transition: background 1s ease-in; /* property duration timing-function delay */
-    -moz-transition: background 1s ease-in;
-    -o-transition: background 1s ease-in;
-    transition: background 1s ease-in;
-}
-
-header .container {
-	width: 900px;
-	margin: auto;
-}
-
-@media (max-width: 1200px) {
-	header .container, .content {
-		width: 900px;
-	}
-}
-
-@media (min-width: 1200px) and (max-width: 1599px) {
-	header .container, .content {
-		width: 1100px;
-	}
-}
-
-@media (min-width: 1600px) {
-	header .container, .content {
-		width: 1100px;
-	}
-	div#body_div {
-		min-height: 900px;
-	}
-}
-
-div.no_script {
-	display: none;
-}
-
-div.loading_div {
-	background-color: #FFFFCC;
-	z-index: 1999;
-	right: 5px;
-	width: 90px;
-	display: none;
-	text-align: center;
-	padding: 2px;
-	border: 1px solid #FF4;
-}
-
-div.std-footer {
-	margin: 13px -15px;
-	border-top: 1px solid #AAA;
-	padding: 13px;
-}
-
-div.std-footer-item {
-	margin: 0px 13px 13px 0px;
-}
-
-.shadow {
-	-moz-box-shadow: 0px 2px 2px #888;
-	-webkit-box-shadow: 0px 2px 2px #888;
- 	box-shadow: 0px 2px 2px #888;
-}
-
-.round {
-	-webkit-border-radius: 5px;
-	-moz-border-radius: 5px;
-	border-radius: 5px;	
-}
-
-.layout_wrapper, .layout-wrapper {
-	-moz-box-shadow: 0px 0px 9px rgba(0,0,0,0.5);
-	-webkit-box-shadow: 0px 0px 9px rgba(0,0,0,0.5);
-	box-shadow: 0px 0px 9px rgba(0,0,0,0.5);
-	background-color: #fff;
-	padding: 15px;
-	-webkit-border-radius: 5px;
-	-moz-border-radius: 5px;
-	border-radius: 5px;	
-	overflow: hidden;
-}
-
-.layout-wrapper-appframe {
-	padding: 0px;
-}
-
-.layout-wrapper-background {
-	background-color: #fafafa !important;
-	padding: 0px;
-}
-
-.layout-main {
-	padding: 15px;
-	background-color: #fff;
-}
-
-.layout-main-section {
-	width: 71%;
-	float: left;
-	padding: 15px;
-	background-color: #FFF;
-	min-height: 600px;
-	-moz-box-shadow:    2px 0px 1px #ddd;
-	-webkit-box-shadow: 2px 0px 1px #ddd;
-	box-shadow:         2px 0px 1px #ddd;
-}
-
-.layout-side-section {
-	width: 22%;
-	/*float: right;*/
-	color: #606060; 
-	overflow-x: hidden;
-	padding: 15px;
-	min-height: 600px;
-}
-
-/* from bootstrap */
-.container {
-  margin-left: auto;
-  margin-right: auto;
-  zoom: 1;
-}
-.container:before, .container:after {
-  display: table;
-  content: "";
-  zoom: 1;
-}
-.container:after {
-  clear: both;
-}
-
-.well {
-  min-height: 20px;
-  padding: 19px;
-  margin-bottom: 20px;
-  background-color: #f5f5f5;
-  border: 1px solid #eee;
-  border: 1px solid rgba(0, 0, 0, 0.05);
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
-}
-
-.avatar-small {
-	display: inline-block; 
-	width: 24px;
-	height: 20px;
-	vertical-align: middle;
-	overflow: hidden;
-	margin: 0px 3px;
-	border-radius: 3px;
-	-moz-border-radius: 3px;
-	-webkit-border-radius: 3px;
-}
-.avatar-small img {
-	width: 24px; 
-}
-
-.erpnext-logo {
-	position: fixed;
-	bottom: 5px;
-	left: 5px;
-	height: 30px;
-	width: 30px;
-	background: url('../images/erpnext-fade.png') no-repeat top left;
-}
-
-.markdown p {
-	font-size: 13px;
-}
-
-.markdown h1 {
-	margin-bottom: 9px;
-}
-
-.markdown h2 {
-	margin-bottom: 7px;
-}
-
-.markdown h3, .markdown h4 {
-	margin-bottom: 5px;
-}
-
-/*
- *	lib/css/legacy/messages.css
- */
-
-/* FLOATING MESSAGE */
-
-.btn-img { cursor: pointer; }
-
-div.fetching { color: #888; text-align:right; }
-
-.msgprint {
-	min-height: 60px; 
-	max-height: 500px;
-	padding: 9px;
-	color: #333;
-	overflow: auto;
-}
-
-div.notice {
-	postion: absolute;
-	background-color: #000;
-	-moz-border-radius: 5px; -webkit-border-radius: 5px;
-	opacity: 0.6;
-	right: 0;
-	top: 0;
-	margin-top: 8px;
-	z-index: -1;
-	padding: 8px;
-}
-
-/** help **/
-
-.info-box {
-    background-color: #F8F8F8;
-    border: 1px solid #CCCCCC;
-    border-radius: 3px 3px 3px 3px;
-    line-height: 1.6em;
-    overflow: auto;
-    padding: 6px 10px;
-	margin-bottom: 9px;
-}
-
-.help_box, .help-box {
-	background-color: #ffe;
-	padding: 9px 9px 9px 9px;
-	border: 1px dashed #fc7;
-	margin: 11px 0px;
-}
-
-.help-box, .help-box p, .help-box h1, .help-box h2, .help-box h3, .help-box h4 {
-	color: #643;
-}
-
-
-/*
- *	lib/css/legacy/forms.css
- */
-/* FORMS */
-
-div.form-title {
-	/*background-color: #e0eeff;*/
-	padding: 5px 19px 15px 19px;
-	margin: -15px -15px 0px -15px;
-	border-bottom: 1px solid #eee;
-}
-
-.appframe-titlebar .label {
-	vertical-align: middle;
-	margin-right: 7px;
-}
-
-div.form-intro-area {
-	padding: 9px 9px 0px 9px;
-	margin: 0px 0px 15px 0px;
-}
-
-div.form-section-head {
-	margin: 11px -15px 3px -15px;
-	border-top: 1px solid #ccc;
-	padding: 11px 23px 0px 23px;
-}
-
-div.form-layout-row:first-child .form-section-head {
-	border-top: 0px solid #ccc !important;
-	margin-top: 0px;
-	padding-top: 0px;
-}
-
-div.form-section-head h3 {
-	line-height: 20px;
-}
-
-div.form-section-head hr {
-	margin: 9px 0px;
-}
-
-
-div.frm_print_wrapper {
-	background-color:#FFF;
-	border:1px solid #444;
-	padding: 40px;
-
-	box-shadow:1px 1px 8px #229;
-	-moz-box-shadow: 1px 1px 8px #229;
-	-webkit-box-shadow: 1px 1px 8px #229;
-}
-
-div.page_break {
-	margin: 24px 0px;
-	border-top: 1px dashed #888;
-}
-
-div.dialog_frm {
-	position: relative;
-	margin: 10px;
-}
-
-
-
-/*------------------*/
-
-.top_cell {
-	height: 50px;
-}
-
-div.attach_area {
-	padding: 8px;
-	margin: 8px;
-	background-color: #EEE;
-}
-
-div.attach_area table {
-	width: 100%;
-}
-
-.tablabel_normal {
-	margin: 0 4px 0 0;
-	padding: 3px 5px;
-	line-height: 1.3em;
-	display: inline;
-	cursor: pointer;
-}
-
-.tablabel_selected {
-	margin: 0 4px 0 0;
-	padding: 3px 5px;
-	line-height: 1.3em;
-	font-weight: bold;
-	display: inline;
-	cursor: pointer;
-	color: #000;
-}
-
-.scrollhead_wrapper {
-	position: absolute;
-	z-index: 1;
-	height: 30px;
-}
-
-.treeimg {
-	cursor: pointer;
-	margin-right: 3px;
-}
-
-
-.sectionCell {
-	padding: 5px;
-	vertical-align: top;
-}
-
-.code_area {
-	width: 80%;
-	margin: 8px;
-	padding: 4px;
-	background-color: #F8F8F8;
-	border: 1px solid #CCC;
-	overflow-x: auto;
-}
-
-.code_text {
-	width: 100%;
-	height: 360px;
-	margin-top: 3px;
-	font-family: Courier, Fixed;
-	font-size: 12px;
-}
-
-div.time_field select{
-	display: inline;
-	margin: 2px;
-	width: 45px;
-}
-
-/* sidebar */
-
-div.sidebar-comment-wrapper input {
-	width: 50%;
-}
-div.sidebar-comment-message {
-	margin-top: 8px;
-	color: #777;
-}
-
-div.sidebar-comment-text {
-	font-size: 12px;
-	font-weight: bold;
-	margin-top: 8px;
-	color: #444;
-}
-div.sidebar-comment-info {
-	color: #777;
-}
-
-/*
- *	lib/css/legacy/fields.css
- */
-/* Documents */
-
-.frm_field_table {
-        width: 100%;
-        border-collapse: collapse;
-}
-
-.datalabelcell { 
-        padding: 2px 0px; 
-        width: 160px; 
-        vertical-align: top; 
-}
-.datainputcell { padding: 2px 0px; }
-
-
-.help ol {
-	padding-left: 19px;
-}
-
-.field_description_top {
-	margin-bottom: 3px;
-}
-
-.input_area input, select, textarea { 
-	font-size: 14px;
-	padding: 2px;
-
-	-webkit-border-radius: 3px;
-	-moz-border-radius: 3px;
-	border-radius: 3px;
-}
-
-.input_area input { 
-	width: 80%; 
-	margin: 0px; 
-}
-.input_area select { 
-	width: 80%; 
-}
-.input_area textarea { 
-	width: 90%; 
-}
-
-.disp_area { 
-	width: 80%; 
-	padding: 2px 0px; 
-	font-size: 12px; 
-	background-color: #eee;
-	padding: 2px;
-	border: 1px solid #ddd;
-	
-	-webkit-border-radius: 3px;
-	-moz-border-radius: 3px;
-	border-radius: 3px;	
-}
-.disp_area_no_val { 
-	min-height: 14px; 
-}
-
-.no_img {
-	padding: 40px;
-	width: 100px;
-	height: 20px;
-	color: #888;
-	text-align: center;
-	border: 1px solid #AAA;
-}
-
-.input-mandatory {
-	font-size: 14px !important;
-	font-weight: bold;
-}
-
-.field-to-update {
-	background-color:#FEE;
-}
-
-.field-has-error {
-	border: 2px solid #C00;
-}
-
-/*
- *	lib/css/legacy/grid.css
- */
-
-.grid_wrapper {
-	position: relative;
-	overflow: auto;
-	border: 1px solid #AAA;
-	width: 100%;
-	margin-bottom: 8px;
-	background-color: #f8f8f8;	
-}
-
-div.grid_tbarlinks {
-	border-bottom: 0px;
-	padding: 4px 4px 2px 4px;
-	width: 190px;
-	float: right;
-	margin-right: 12px;
-
-	-webkit-border-top-left-radius: 5px;
-	-webkit-border-top-right-radius: 5px;
-	-moz-border-radius-topleft: 5px;
-	-moz-border-radius-topright: 5px;
-	border-top-left-radius: 5px;
-	border-top-right-radius: 5px;
-
-	background: #dddddd; /* Old browsers */
-	background: -moz-linear-gradient(top,  #dddddd 0%, #bbbbbb 100%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#dddddd), color-stop(100%,#bbbbbb)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top,  #dddddd 0%,#bbbbbb 100%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #dddddd 0%,#bbbbbb 100%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #dddddd 0%,#bbbbbb 100%); /* IE10+ */
-	background: linear-gradient(to bottom,  #dddddd 0%,#bbbbbb 100%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#bbbbbb',GradientType=0 ); /* IE6-9 */
-
-}
-
-.grid_tab_wrapper {
-	position: absolute;
-	top: 40px;
-	border-bottom: 1px solid #DDD;
-}
-
-.grid_table, .grid_head_table  {
-	table-layout: fixed;
-	border-collapse: collapse;
-	/*width: 100%;*/
-}
-
-.grid_cell {
-	border-right: 1px solid #ddd;
-	padding: 0px;
-	background-color: #fff;
-}
-
-.grid_head_wrapper {
-	position: absolute;
-	z-index: 1;
-	height: 40px;
-	padding: 0px;
-	overflow: hidden;
-	/*background-color: #fff;*/
-}
-
-.grid_head_table td {
-	border-right: 1px solid #AAA;
-	border-bottom: 1px solid #AAA;
-	height: 40px;
-	padding: 0px;
-
-	background: #eeeeee; /* Old browsers */
-	background: -moz-linear-gradient(top,  #eeeeee 0%, #cccccc 100%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eeeeee), color-stop(100%,#cccccc)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* IE10+ */
-	background: linear-gradient(to bottom,  #eeeeee 0%,#cccccc 100%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#cccccc',GradientType=0 ); /* IE6-9 */
-}
-
-.grid_head_table td div {
-	color: #222;
-	font-weight: bold;
-	overflow: hidden;
-	padding: 2px 0px;
-	text-align: center;	
-}
-
-.grid_selector {
-	padding: 1px;
-	border-right: 1px solid #DDD;
-	width: 20px;
-	background-color: #fff;
-}
-
-.grid_cell_div {
-	padding: 2px;
-	cursor: pointer;
-	overflow: hidden;
-	border: 2px solid #FFF;
-}
-
-.grid_cell_div_selected {
-	border: 2px solid #88f;
-}
-
-.grid_cell_div input, .grid_cell_div select, .grid_cell_div div input {
-	margin: 0px;
-	border: 0px;
-	width: 100%;
- 	margin: 0px;
- }
-
-.grid_cell_div textarea {
-	border: 3px solid #abf;
-	height:200px;
-	width: 300px;
-	z-index: 10;
-	position:absolute;
-}
-
-.gridDivSelected option { border: 0px; }
-
-/*
- *	lib/css/legacy/listing.css
- */
-
-
-/* SRS */
-
-table.srs_result_tab {
-	border: 2px solid #AAA;
-	border-collapse: collapse;
-}
-
-/* firefox bug fix for disappering borders */
-table.srs_result_tab td, table.srs_result_tab tr, table.srs_result_tab tbody, table.srs_result_tab div {
-	position: static;
-}
-
-table.srs_result_tab td {
-	padding: 3px 2px;
-	position: static;
-}
-
-div.srs_body_area {
-}
-
-div.srs_results_area {
-}
-
-div.srs_filter_wrapper {
-	border: 1px solid #CCF;
-	
-	background-color: #EEF;
-	margin:0px 0px 8px 0px;
-
-	-moz-border-radius: 5px;
-	-webkit-border-radius: 5px;
-	border-radius: 5px;
-}
-
-div.srs_filter_area {
-	padding: 8px;
-}
-
-div.srs_filter_area td {
-	vertical-align: middle;
-}
-
-/*
- *	lib/css/legacy/report.css
- */
-
-/* Reports */
-
-div.report_grid_area {
-	position: relative;
-	padding: 8px;
-}
-
-
-div.report_tab { 
-	border: 1px solid #AAA; 
-	position: relative; 
-	overflow: auto; 
-}
-
-div.report_no_data {
-	padding: 8px;
-	background-color: #EEE;
-	border: 1px solid #DDD;
-	position: absolute;
-	margin-left: 40%;
-	margin-top: 50px;
-	display: none;	
-}
-
-div.report_htitle {
-	float: left;
-	padding: 2px;
-	font-size: 14px;
-	font-weight: bold;
-	margin-left: 4px;
-	color: #665;
-	/*font-weight: bold;*/
-}
-
-div.report_tbar {
-	background-color: #EEF;
-	border: 1px solid #CCF;
-	border-bottom: 0px;
-	height: 28px;
-}
-
-div.report_tbar table{
-	width: 100%;
-}
-div.report_tbar table td {
-	
-}
-div.report_tbar table td div {
-	position: relative;
-}
-div.report_tbar button, div.report_tbar select, div.report_tbar img {
-	font-size: 11px;
-	margin: 0px;
-}
-
-div.report_head_wrapper {
-	position: absolute;
-	height: 24px;
-	top: 0px;
-	z-index: 1;
-}
-
-div.report_tab_wrapper {
-	position: absolute;
-	border-bottom: 1px solid #AAA;
-	border-top: 1px solid #AAA;
-}
-
-div.report_tab_wrapper table, div.report_head_wrapper table {
-	table-layout: fixed;
-	border-collapse: collapse;
-	/*width: 100%;*/
-}
-
-div.report_tab_wrapper table td, div.report_head_wrapper table td {
-	border-left: 1px solid #AAA;
-	border-right: 1px solid #AAA;
-	border-bottom: 1px solid #AAA;
-	overflow: hidden;
-	padding: 0px;
-}
-
-div.report_tab_wrapper table td div, div.report_head_wrapper table td div {
-	padding: 3px;
-	overflow: hidden;
-}
-
-.report_head_cell {
-	background-color: #EEE;
-	border-bottom: 1px solid #AA9;
-	text-align: center;
-	font-weight: bold;
-}
-.report_head_cell div {
-	color:#222; 
-	height: 18px;
-}
-
-
-/* FINDER */
-
-div.finder_wrapper {
-}
-
-div.finder_body_area {
-	margin: 16px;
-}
-
-div.finder_body {
-	display: none;
-}
-
-div.finder_advanced_area table {
-	width: 80%;
-}
-
-div.finder_advanced_area textarea {
-	width: 80%;
-}
-
-div.finder_filter_area {
-	position: relative;
-}
-
-div.filter_head {
-	font-size: 14px;
-	margin-bottom: 2px;
-}
-div.filter_dt_head {
-	font-size: 14px;
-	font-weight: bold;
-	margin-bottom: 2px;
-}
-table.filter_tab {
-	width: 96%;
-	border-collapse: collapse;
-}
-
-table.filter_tab td {
-	width: 50%;
-}
-
-div.finder_picker_area {
-	
-}
-div.builder_field {
-	margin: 0px;
-}
-div.builder_dt_head {
-	font-size: 14px;
-	font-weight: bold;
-	margin-bottom: 2px;
-}
-
-div.builder_field table {
-	width: 90%;
-	border-collapse: collapse;
-}
-
-div.builder_label {
-	height: 20px;
-}
-
-div.builder_head {
-	font-size: 16px;
-	font-weight: bold;
-	color: #AB6;
-}
-
-table.builder_tab {
-	width: 96%;
-	border-collapse: collapse;
-}
-
-table.builder_tab td {
-	width: 33%;
-	padding: 2px;
-}
-
-/*
- *	lib/css/legacy/dialog.css
- */
-/***** Dialogs *******/
-
-div.dialog_wrapper {
-	position: absolute;
-	width: 440px;
-	display: none;
-	z-index: 90;
-	background-color: #FFF;
-	box-shadow:1px 1px 8px #444;
-	-moz-box-shadow: 1px 1px 8px #444;
-	-webkit-box-shadow: 1px 1px 8px #444;
-	
-	border-radius: 5px;
-	-moz-border-radius: 5px;
-	-webkit-border-radius: 5px;
-	
-	overflow: hidden;
-}
-
-div.dialog_head {
-	height: 22px;
-	padding: 4px;
-	background-color: #222;
-	color: #FFF;
-}
-
-div.dialog_body {
-	padding: 8px 8px 16px;
-	border-radius: 5px;
-	-moz-border-radius: 5px;
-	-webkit-border-radius: 5px;	
-}
-
-div.dialog_back {
-	position: fixed;
-	display: none;
-	top: 0px;
-	left: 0px;
-	bottom: 0px;
-	right: 0px;
-	background-color: #aaa;
-	opacity: 0.6;
-	z-index: 50;
-	text-align: center;
-}
-
-div.dialog_message {
-	display: none;
-	position: absolute;
-	width: 250px;
-	font-size: 12px;
-	z-index: 91;
-	background-color:#FFF;
-	padding: 12px;
-	border: 1px solid #444;
-}
-
-div.dialog_row {
-	padding: 8px 8px 0px 8px;
-}
-
-div.dialog_row table {
-	width: 100%;
-}
-
-div.dialog_row table td {
-}
-
-div.dialog_row input[type="text"], div.dialog_row input[type="password"], div.dialog_row textarea, div.dialog_row select {
-	width: 80%;
-	font-size: 14px;
-}
-
-div.dialog_row table td textarea {
-	width: 80%;
-	height: 200px;
-	font-size: 12px;
-}
-
-
-/*
- *	lib/css/legacy/tabs.css
- */
-
-/******* TABS ********/
-
-div.box_label_wrapper {
-	border-bottom: 6px solid #777;
-}
-
-div.box_label_body {
-	height: 22px;
-}
-
-ul.box_tabs {
-	margin: 0px;
-	padding: 0px;
-	list-style: none;
-}
-
-ul.box_tabs li {
-	height: 22px;
-	float:left;
-	font-size: 12px;
-	text-decoration: underline;
-	
-	background-color: #DDD;
-	
-	margin:0;
-	margin-left: 4px;
-	padding:0 0 0 9px;
-	cursor: pointer;
-}
-
-ul.box_tabs li a {
-	display:block;
-	padding:3px 15px 3px 6px;
-	text-decoration: none;
-}
-
-ul.box_tabs li.box_tab_mouseover {
-	background-color: #BBB;
-}
-
-ul.box_tabs li.box_tab_selected {	
-	background-color: #777;
-	
-	background: -webkit-gradient(linear, left top, left bottom, from(#999), to(#777));
-	background: -moz-linear-gradient(top, #999, #777);
-		
-	color: #FFF;
-	font-weight:bold;
-	
-}
-ul.box_tabs li.box_tab_selected a {
-	color: #fff;
-}
-
-/*
- *	lib/css/legacy/sidebar.css
- */
-div.psidebar {
-}
-
-div.psidebar div.head {
-	font-size: 14px;
-	font-weight: bold;
-	color: #555;
-	margin-bottom: 12px;
-}
-
-div.psidebar div.section {
-	margin-bottom: 11px;
-	overflow: hidden;
-}
-
-div.psidebar div.section-head {
-	padding: 5px 11px;
-	border-bottom: 1px solid #aaa;
-}
-
-div.psidebar div.section-body {
-	margin: 7px 11px 11px 11px;
-}
-
-div.psidebar div.section-item {
-	margin-bottom: 7px;
-}
-
-div.psidebar div.section-item, div.psidebar .section-link {
-	color: #666;
-}
-
-/*
- *	lib/css/ui/common.css
- */
-.navbar-icon-home {
-	vertical-align: middle;
-	opacity: 0.4;
-	Filter:alpha(opacity=40); /* For IE8 and earlier */
-}
-
-.navbar-icon-home:hover,
-.navbar-icon-home:focus,
-.navbar-icon-home:active,
-.navbar-icon-home-hover{
-	opacity:1;
-	Filter:alpha(opacity=100); /* For IE8 and earlier */
-}
-
-
-/*
- *	lib/css/ui/list.css
- */
-.hide {
-	display: none;
-}
-
-.list-filters {
-	margin: 7px 0px;
-}
-
-.wnlist .img-load {
-	display: none;
-	float: left;
-	margin-bottom: 8px;
-}
-
-/* list-row */
-div.list-row {
-	border-bottom: 1px solid #ddd;
-	padding: 5px 0px;
-}
-
-div.list-row .label {
-	margin-right: 4px;
-}
-
-div.list-row table {
-	table-layout: fixed;
-	border-collapse: collapse;
-	width: 100%;
-}
-
-div.list-row table td {
-	overflow: hidden;
-	/*padding-right: 3px;*/
-	padding: 0px 3px;
-	vertical-align: middle;
-	height: 24px;
-	max-height: 24px;
-	word-wrap: break-word;
-}
-
-div.paging-button {
-	text-align: center;
-	padding: 11px 0px;
-}
-
-div.show_filters {
-	display: none;
-}
-
-div.filter_list {
-	padding: 13px;
-}
-
-div.show_filters.well {
-	margin-top: 11px;
-	margin-bottom: 11px;
-}
-
-div.filter_list .run_btn {
-	text-align: right;
-}
-
-div.filter_list .add_filter {
-	margin: 3px 0px;
-}
-
-div.list_filter {
-	margin: 7px 0px;
-}
-
-div.list_filter input, div.list_filter select {
-	width: 130px;
-	margin-right: 7px;
-}
-
-/* bar */
-
-span.bar-outer {
-	display: inline-block;
-	margin: 0px 7px;
-	margin-top: 3px;
-	background-color: #fff;
-	border: 1px solid #aaa;
-	height: 10px;
-}
-
-span.bar-inner {
-	display: inline-block;
-	background-color: #bdf;
-	height: 100%;
-	margin-bottom: 2px;
-	float: left;
-}
-span.bar-complete {
-	background-color: #009900;
-}
-span.bar-empty {
-	background-color: #990000;
-}
-
-
-/* stats */
-
-div.stat-wrapper {
-	margin-bottom: 19px;
-}
-
-div.stat-grid {
-	margin-top: 9px;
-	overflow: hidden;
-}
-
-div.stat-label {
-	position: relative;
-	padding: 3px;
-	text-align: center;
-	font-size: 11px;
-}
-div.stat-label, div.stat-label a {
-	z-index: 5;
-}
-
-div.stat-item {
-	position: relative;
-	margin-bottom: 7px;
-	background-color: #fff;
-	height: 18px;
-	border: 1px solid #aaa;
-	border-radius: 9px;
-	-webkit-border-radius: 9px;
-	-moz-border-radius: 9px;
-	overflow: hidden;
-}
-
-div.stat-bar {
-	position: absolute;
-	left: 0px;
-	height: 100%;
-	z-index: 0;
-	/* So that this div is also curved like the enclosing one */
-	border-radius: 9px;
-	-webkit-border-radius: 9px;
-	-moz-border-radius: 9px;
-
-	background: #e0ff84; /* Old browsers */
-	background: -moz-linear-gradient(top,  #e0ff84 0%, #a4e567 100%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e0ff84), color-stop(100%,#a4e567)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top,  #e0ff84 0%,#a4e567 100%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #e0ff84 0%,#a4e567 100%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #e0ff84 0%,#a4e567 100%); /* IE10+ */
-	background: linear-gradient(top,  #e0ff84 0%,#a4e567 100%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e0ff84', endColorstr='#a4e567',GradientType=0 ); /* IE6-9 */
-}
-
-/*
- *	lib/css/ui/views.css
- */
-
-.breadcrumb-area, .breadcrumb-area span {
-	vertical-align: middle;
-}
-
-div.appframe-titlebar {
-	padding: 6px;
-	background: #eeeeee; /* Old browsers */
-	background: -moz-linear-gradient(top,  #eeeeee 0%, #cccccc 100%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eeeeee), color-stop(100%,#cccccc)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* IE10+ */
-	background: linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#cccccc',GradientType=0 ); /* IE6-9 */
-	border-bottom: 1px solid #aaa;
-	min-height: 1.2em;
-	border-radius: 5px 5px 0px 0px;
-	-webkit-border-radius: 5px 5px 0px 0px;
-	-moz-border-radius: 5px 5px 0px 0px;
-
-	text-shadow: 0px 1px 1px #fff;
-	color: #555;
-}
-
-span.appframe-title {
-	font-size: 160%;
-	font-weight: bold;
-}
-
-div.appframe-toolbar {
-	padding: 4px;
-	background: #eeeeee;
-	border-top: 1px solid #f8f8f8;
-	border-bottom: 1px solid #ccc;
-}
-
-div.appframe-toolbar .label {
-	margin: 2px 2px;
-}
-
-div.appframe-toolbar input, div.appframe-toolbar select {
-	font-size: 80%;
-	margin: 2px 2px;
-}
-div.appframe-toolbar button {
-	padding: 3px 7px !important;
-}
-
-
-
-/*
- *	lib/css/ui/fonts.css
- */
-@font-face {
-  font-family: 'Pontano Sans';
-  font-style: normal;
-  font-weight: 800;
-  src: url('fonts/pontanosans.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Droid Sans';
-  font-style: normal;
-  font-weight: normal;
-  src: local('Droid Sans'), local('DroidSans'), url('fonts/droidsans.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'PT Sans';
-  font-style: normal;
-  font-weight: normal;
-  src: local('PT Sans'), local('PTSans-Regular'), url('fonts/ptsans.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Open Sans';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Open Sans'), local('OpenSans'), url('fonts/opensans.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Lato';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Lato Regular'), local('Lato-Regular'), url('fonts/lato.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Cabin';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Cabin Regular'), local('Cabin-Regular'), url('fonts/cabin.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Pacifico';
-  font-style: normal;
-  font-weight: normal;
-  src: local('Pacifico Regular'), local('Pacifico-Regular'), url('fonts/pacifico.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Oleo Script';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Oleo Script'), local('OleoScript-Regular'), url('fonts/oleoscript.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Cookie';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Cookie-Regular'), url('fonts/cookie.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Marck Script';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Marck Script'), local('MarckScript-Regular'), url('fonts/marckscript.woff') format('woff');
-}
-
-
-/*
- *	lib/js/lib/Aristo/aristo.selected.css
- */
-/*
- * jQuery UI CSS Framework 1.8.7
- *
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Theming/API
- */
-
-/* Layout helpers
-----------------------------------*/
-.ui-helper-hidden { display: none; }
-.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
-.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
-.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
-.ui-helper-clearfix { display: inline-block; }
-/* required comment for clearfix to work in Opera \*/
-* html .ui-helper-clearfix { height:1%; }
-.ui-helper-clearfix { display:block; }
-/* end clearfix */
-.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
-
-
-/* Interaction Cues
-----------------------------------*/
-.ui-state-disabled { cursor: default !important; }
-
-
-/* Icons
-----------------------------------*/
-
-/* states and images */
-.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
-
-
-/* Misc visuals
-----------------------------------*/
-
-/* Overlays */
-.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
-
-
-/*
- * jQuery UI CSS Framework 1.8.7
- *
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Theming/API
- *
- * To view and modify this theme, visit http://jqueryui.com/themeroller/?ctl=themeroller
- */
-
-
-/* Component containers
-----------------------------------*/
-.ui-widget { font-family: Arial,sans-serif; font-size: 1.1em; }
-.ui-widget .ui-widget { font-size: 1em; }
-.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Arial,sans-serif; font-size: 1em; }
-.ui-widget-content { border: 1px solid #B6B6B6; background: #ffffff; color: #4F4F4F; }
-.ui-widget-content a { color: #4F4F4F; }
-.ui-widget-header { border: 1px solid #B6B6B6; color: #4F4F4F; font-weight: bold; }
-.ui-widget-header {
-	background: #ededed url(../js/lib/Aristo/images/bg_fallback.png) 0 0 repeat-x; /* Old browsers */
-		background: -moz-linear-gradient(top, #ededed 0%, #c4c4c4 100%); /* FF3.6+ */
-		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(100%,#c4c4c4)); /* Chrome,Safari4+ */
-		background: -webkit-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* Chrome10+,Safari5.1+ */
-		background: -o-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* Opera11.10+ */
-		background: -ms-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* IE10+ */
-		background: linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* W3C */
-}
-.ui-widget-header a { color: #4F4F4F; }
-
-/* Interaction states
-----------------------------------*/
-.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #B6B6B6; font-weight: normal; color: #4F4F4F; }
-.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { 
-	background: #ededed url(../js/lib/Aristo/images/bg_fallback.png) 0 0 repeat-x; /* Old browsers */
-		background: -moz-linear-gradient(top, #ededed 0%, #c4c4c4 100%); /* FF3.6+ */
-		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(100%,#c4c4c4)); /* Chrome,Safari4+ */
-		background: -webkit-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* Chrome10+,Safari5.1+ */
-		background: -o-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* Opera11.10+ */
-		background: -ms-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* IE10+ */
-		background: linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* W3C */
-	-webkit-box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset;
-	-moz-box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset;
-	box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset;
-}
-.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #4F4F4F; text-decoration: none; }
-.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #9D9D9D; font-weight: normal; color: #313131; }
-.ui-state-hover a, .ui-state-hover a:hover { color: #313131; text-decoration: none; }
-.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { 
-	outline: none;
-	color: #1c4257; border: 1px solid #7096ab;
-	background: #ededed url(../js/lib/Aristo/images/bg_fallback.png) 0 -50px repeat-x; /* Old browsers */
-		background: -moz-linear-gradient(top, #b9e0f5 0%, #92bdd6 100%); /* FF3.6+ */
-		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b9e0f5), color-stop(100%,#92bdd6)); /* Chrome,Safari4+ */
-		background: -webkit-linear-gradient(top, #b9e0f5 0%,#92bdd6 100%); /* Chrome10+,Safari5.1+ */
-		background: -o-linear-gradient(top, #b9e0f5 0%,#92bdd6 100%); /* Opera11.10+ */
-		background: -ms-linear-gradient(top, #b9e0f5 0%,#92bdd6 100%); /* IE10+ */
-		background: linear-gradient(top, #b9e0f5 0%,#92bdd6 100%); /* W3C */
-	-webkit-box-shadow: none;
-	-moz-box-shadow: none;
-	box-shadow: none;
-}
-.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #313131; text-decoration: none; }
-.ui-widget :active { outline: none; }
-
-/* Interaction Cues
-----------------------------------*/
-.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight  { border: 1px solid #d2dbf4; background: #f4f8fd; color: #0d2054; -moz-border-radius: 0 !important; -webkit-border-radius: 0 !important; border-radius: 0 !important; }
-.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
-.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error { border: 1px solid #e2d0d0; background: #fcf0f0; color: #280b0b; -moz-border-radius: 0 !important; -webkit-border-radius: 0 !important; border-radius: 0 !important; }
-.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }
-.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }
-.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
-.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
-.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
-
-/* Icons
-----------------------------------*/
-
-/* states and images */
-.ui-icon { width: 16px; height: 16px; background-image: url(../js/lib/Aristo/images/ui-icons_222222_256x240.png); }
-.ui-widget-content .ui-icon {background-image: url(../js/lib/Aristo/images/ui-icons_222222_256x240.png); }
-.ui-widget-header .ui-icon {background-image: url(../js/lib/Aristo/images/ui-icons_222222_256x240.png); }
-.ui-state-default .ui-icon { background-image: url(../js/lib/Aristo/images/ui-icons_454545_256x240.png); }
-.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(../js/lib/Aristo/images/ui-icons_454545_256x240.png); }
-.ui-state-active .ui-icon {background-image: url(../js/lib/Aristo/images/ui-icons_454545_256x240.png); }
-.ui-state-highlight .ui-icon {background-image: url(../js/lib/Aristo/images/ui-icons_454545_256x240.png); }
-.ui-state-error .ui-icon, .ui-state-error-text .ui-icon { background: url(../js/lib/Aristo/images/icon_sprite.png) -16px 0 no-repeat !important; }
-.ui-state-highlight .ui-icon, .ui-state-error .ui-icon { margin-top: -1px; }
-
-/* positioning */
-.ui-icon-carat-1-n { background-position: 0 0; }
-.ui-icon-carat-1-ne { background-position: -16px 0; }
-.ui-icon-carat-1-e { background-position: -32px 0; }
-.ui-icon-carat-1-se { background-position: -48px 0; }
-.ui-icon-carat-1-s { background-position: -64px 0; }
-.ui-icon-carat-1-sw { background-position: -80px 0; }
-.ui-icon-carat-1-w { background-position: -96px 0; }
-.ui-icon-carat-1-nw { background-position: -112px 0; }
-.ui-icon-carat-2-n-s { background-position: -128px 0; }
-.ui-icon-carat-2-e-w { background-position: -144px 0; }
-.ui-icon-triangle-1-n { background-position: 0 -16px; }
-.ui-icon-triangle-1-ne { background-position: -16px -16px; }
-.ui-icon-triangle-1-e { background-position: -32px -16px; }
-.ui-icon-triangle-1-se { background-position: -48px -16px; }
-.ui-icon-triangle-1-s { background-position: -64px -16px; }
-.ui-icon-triangle-1-sw { background-position: -80px -16px; }
-.ui-icon-triangle-1-w { background-position: -96px -16px; }
-.ui-icon-triangle-1-nw { background-position: -112px -16px; }
-.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
-.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
-.ui-icon-arrow-1-n { background-position: 0 -32px; }
-.ui-icon-arrow-1-ne { background-position: -16px -32px; }
-.ui-icon-arrow-1-e { background-position: -32px -32px; }
-.ui-icon-arrow-1-se { background-position: -48px -32px; }
-.ui-icon-arrow-1-s { background-position: -64px -32px; }
-.ui-icon-arrow-1-sw { background-position: -80px -32px; }
-.ui-icon-arrow-1-w { background-position: -96px -32px; }
-.ui-icon-arrow-1-nw { background-position: -112px -32px; }
-.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
-.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
-.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
-.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
-.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
-.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
-.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
-.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
-.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
-.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
-.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
-.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
-.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
-.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
-.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
-.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
-.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
-.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
-.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
-.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
-.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
-.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
-.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
-.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
-.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
-.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
-.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
-.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
-.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
-.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
-.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
-.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
-.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
-.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
-.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
-.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
-.ui-icon-arrow-4 { background-position: 0 -80px; }
-.ui-icon-arrow-4-diag { background-position: -16px -80px; }
-.ui-icon-extlink { background-position: -32px -80px; }
-.ui-icon-newwin { background-position: -48px -80px; }
-.ui-icon-refresh { background-position: -64px -80px; }
-.ui-icon-shuffle { background-position: -80px -80px; }
-.ui-icon-transfer-e-w { background-position: -96px -80px; }
-.ui-icon-transferthick-e-w { background-position: -112px -80px; }
-.ui-icon-folder-collapsed { background-position: 0 -96px; }
-.ui-icon-folder-open { background-position: -16px -96px; }
-.ui-icon-document { background-position: -32px -96px; }
-.ui-icon-document-b { background-position: -48px -96px; }
-.ui-icon-note { background-position: -64px -96px; }
-.ui-icon-mail-closed { background-position: -80px -96px; }
-.ui-icon-mail-open { background-position: -96px -96px; }
-.ui-icon-suitcase { background-position: -112px -96px; }
-.ui-icon-comment { background-position: -128px -96px; }
-.ui-icon-person { background-position: -144px -96px; }
-.ui-icon-print { background-position: -160px -96px; }
-.ui-icon-trash { background-position: -176px -96px; }
-.ui-icon-locked { background-position: -192px -96px; }
-.ui-icon-unlocked { background-position: -208px -96px; }
-.ui-icon-bookmark { background-position: -224px -96px; }
-.ui-icon-tag { background-position: -240px -96px; }
-.ui-icon-home { background-position: 0 -112px; }
-.ui-icon-flag { background-position: -16px -112px; }
-.ui-icon-calendar { background-position: -32px -112px; }
-.ui-icon-cart { background-position: -48px -112px; }
-.ui-icon-pencil { background-position: -64px -112px; }
-.ui-icon-clock { background-position: -80px -112px; }
-.ui-icon-disk { background-position: -96px -112px; }
-.ui-icon-calculator { background-position: -112px -112px; }
-.ui-icon-zoomin { background-position: -128px -112px; }
-.ui-icon-zoomout { background-position: -144px -112px; }
-.ui-icon-search { background-position: -160px -112px; }
-.ui-icon-wrench { background-position: -176px -112px; }
-.ui-icon-gear { background-position: -192px -112px; }
-.ui-icon-heart { background-position: -208px -112px; }
-.ui-icon-star { background-position: -224px -112px; }
-.ui-icon-link { background-position: -240px -112px; }
-.ui-icon-cancel { background-position: 0 -128px; }
-.ui-icon-plus { background-position: -16px -128px; }
-.ui-icon-plusthick { background-position: -32px -128px; }
-.ui-icon-minus { background-position: -48px -128px; }
-.ui-icon-minusthick { background-position: -64px -128px; }
-.ui-icon-close { background-position: -80px -128px; }
-.ui-icon-closethick { background-position: -96px -128px; }
-.ui-icon-key { background-position: -112px -128px; }
-.ui-icon-lightbulb { background-position: -128px -128px; }
-.ui-icon-scissors { background-position: -144px -128px; }
-.ui-icon-clipboard { background-position: -160px -128px; }
-.ui-icon-copy { background-position: -176px -128px; }
-.ui-icon-contact { background-position: -192px -128px; }
-.ui-icon-image { background-position: -208px -128px; }
-.ui-icon-video { background-position: -224px -128px; }
-.ui-icon-script { background-position: -240px -128px; }
-.ui-icon-alert { background-position: 0 -144px; }
-.ui-icon-info { background: url(../js/lib/Aristo/images/icon_sprite.png) 0 0 no-repeat !important; }
-.ui-icon-notice { background-position: -32px -144px; }
-.ui-icon-help { background-position: -48px -144px; }
-.ui-icon-check { background-position: -64px -144px; }
-.ui-icon-bullet { background-position: -80px -144px; }
-.ui-icon-radio-off { background-position: -96px -144px; }
-.ui-icon-radio-on { background-position: -112px -144px; }
-.ui-icon-pin-w { background-position: -128px -144px; }
-.ui-icon-pin-s { background-position: -144px -144px; }
-.ui-icon-play { background-position: 0 -160px; }
-.ui-icon-pause { background-position: -16px -160px; }
-.ui-icon-seek-next { background-position: -32px -160px; }
-.ui-icon-seek-prev { background-position: -48px -160px; }
-.ui-icon-seek-end { background-position: -64px -160px; }
-.ui-icon-seek-start { background-position: -80px -160px; }
-/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
-.ui-icon-seek-first { background-position: -80px -160px; }
-.ui-icon-stop { background-position: -96px -160px; }
-.ui-icon-eject { background-position: -112px -160px; }
-.ui-icon-volume-off { background-position: -128px -160px; }
-.ui-icon-volume-on { background-position: -144px -160px; }
-.ui-icon-power { background-position: 0 -176px; }
-.ui-icon-signal-diag { background-position: -16px -176px; }
-.ui-icon-signal { background-position: -32px -176px; }
-.ui-icon-battery-0 { background-position: -48px -176px; }
-.ui-icon-battery-1 { background-position: -64px -176px; }
-.ui-icon-battery-2 { background-position: -80px -176px; }
-.ui-icon-battery-3 { background-position: -96px -176px; }
-.ui-icon-circle-plus { background-position: 0 -192px; }
-.ui-icon-circle-minus { background-position: -16px -192px; }
-.ui-icon-circle-close { background-position: -32px -192px; }
-.ui-icon-circle-triangle-e { background-position: -48px -192px; }
-.ui-icon-circle-triangle-s { background-position: -64px -192px; }
-.ui-icon-circle-triangle-w { background-position: -80px -192px; }
-.ui-icon-circle-triangle-n { background-position: -96px -192px; }
-.ui-icon-circle-arrow-e { background-position: -112px -192px; }
-.ui-icon-circle-arrow-s { background-position: -128px -192px; }
-.ui-icon-circle-arrow-w { background-position: -144px -192px; }
-.ui-icon-circle-arrow-n { background-position: -160px -192px; }
-.ui-icon-circle-zoomin { background-position: -176px -192px; }
-.ui-icon-circle-zoomout { background-position: -192px -192px; }
-.ui-icon-circle-check { background-position: -208px -192px; }
-.ui-icon-circlesmall-plus { background-position: 0 -208px; }
-.ui-icon-circlesmall-minus { background-position: -16px -208px; }
-.ui-icon-circlesmall-close { background-position: -32px -208px; }
-.ui-icon-squaresmall-plus { background-position: -48px -208px; }
-.ui-icon-squaresmall-minus { background-position: -64px -208px; }
-.ui-icon-squaresmall-close { background-position: -80px -208px; }
-.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
-.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
-.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
-.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
-.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
-.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
-
-
-/* Misc visuals
-----------------------------------*/
-
-/* Corner radius */
-.ui-corner-tl { -moz-border-radius-topleft: 3px; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; }
-.ui-corner-tr { -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; }
-.ui-corner-bl { -moz-border-radius-bottomleft: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; }
-.ui-corner-br { -moz-border-radius-bottomright: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; }
-.ui-corner-top { -moz-border-radius-topleft: 3px; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; }
-.ui-corner-bottom { -moz-border-radius-bottomleft: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; -moz-border-radius-bottomright: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; }
-.ui-corner-right {  -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -moz-border-radius-bottomright: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; }
-.ui-corner-left { -moz-border-radius-topleft: 3px; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -moz-border-radius-bottomleft: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; }
-.ui-corner-all { -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; }
-
-/* Overlays */
-.ui-widget-overlay { background: #262b33; opacity: .70;filter:Alpha(Opacity=70); }
-.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #000000; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }
-
-/*
- * jQuery UI Autocomplete 1.8.7
- *
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Autocomplete#theming
- */
-.ui-autocomplete {
-	position: absolute; cursor: default; z-index: 3;
-		-moz-border-radius: 0; 
-		-webkit-border-radius: 0;
-		border-radius: 0;
-			-moz-box-shadow: 0 1px 5px rgba(0,0,0,0.3);
-			-webkit-box-shadow: 0 1px 5px rgba(0,0,0,0.3);
-			box-shadow: 0 1px 5px rgba(0,0,0,0.3);
-}	
-
-/* workarounds */
-* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
-
-/*
- * jQuery UI Menu 1.8.7
- *
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Menu#theming
- */
-.ui-menu {
-	list-style:none;
-	padding: 2px;
-	margin: 0;
-	display:block;
-	float: left;
-}
-.ui-menu .ui-menu {
-	margin-top: -3px;
-}
-.ui-menu .ui-menu-item {
-	margin:0;
-	padding: 0;
-	zoom: 1;
-	float: left;
-	clear: left;
-	width: 100%;
-}
-.ui-menu .ui-menu-item a {
-	text-decoration:none;
-	display:block;
-	padding:.2em .4em;
-	line-height:1.5;
-	zoom:1;
-}
-.ui-menu .ui-menu-item a.ui-state-hover,
-.ui-menu .ui-menu-item a.ui-state-active {
-	font-weight: normal;
-	margin: -1px;
-	background: #5f83b9;
-	color: #FFFFFF;
-	border-color: #466086;
-		-moz-border-radius: 0; 
-		-webkit-border-radius: 0;
-		border-radius: 0;
-}
-
-/*
- * jQuery UI Datepicker 1.8.7
- *
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Datepicker#theming
- */
-.ui-datepicker { width: 17em; padding: 0; display: none; border-color: #DDDDDD; }
-.ui-datepicker {
-	-moz-box-shadow: 0 4px 8px rgba(0,0,0,0.5);
-	-webkit-box-shadow: 0 4px 8px rgba(0,0,0,0.5);
-	box-shadow: 0 4px 8px rgba(0,0,0,0.5);
-}
-.ui-datepicker .ui-datepicker-header { position:relative; padding:.35em 0; border: none; border-bottom: 1px solid #B6B6B6; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; }
-.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 6px; width: 1.8em; height: 1.8em; }
-.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { border: 1px none; }
-.ui-datepicker .ui-datepicker-prev { left:2px; }
-.ui-datepicker .ui-datepicker-next { right:2px; }
-.ui-datepicker .ui-datepicker-prev span { background-position: 0px -32px !important; }
-.ui-datepicker .ui-datepicker-next span { background-position: -16px -32px !important; }
-.ui-datepicker .ui-datepicker-prev-hover span { background-position: 0px -48px !important; }
-.ui-datepicker .ui-datepicker-next-hover span { background-position: -16px -48px !important; }
-.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; background: url(../js/lib/Aristo/images/icon_sprite.png) no-repeat; }
-.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; font-size: 12px; text-shadow: 0 1px 0 rgba(255,255,255,0.6); }
-.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
-.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
-.ui-datepicker select.ui-datepicker-month, 
-.ui-datepicker select.ui-datepicker-year { width: 49%;}
-.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
-.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }
-.ui-datepicker td { border: 0; padding: 1px; }
-.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
-.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
-.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
-.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
-.ui-datepicker table .ui-state-highlight { border-color: #5F83B9; }
-.ui-datepicker table .ui-state-hover { background: #5F83B9; color: #FFF; font-weight: bold; text-shadow: 0 1px 1px #234386; -webkit-box-shadow: 0 0px 0 rgba(255,255,255,0.6) inset; -moz-box-shadow: 0 0px 0 rgba(255,255,255,0.6) inset; box-shadow: 0 0px 0 rgba(255,255,255,0.6) inset; border-color: #5F83B9; }
-.ui-datepicker-calendar .ui-state-default { background: transparent; border-color: #FFF; }
-.ui-datepicker-calendar .ui-state-active { background: #5F83B9; border-color: #5F83B9; color: #FFF; font-weight: bold; text-shadow: 0 1px 1px #234386; }
-
-/* with multiple calendars */
-.ui-datepicker.ui-datepicker-multi { width:auto; }
-.ui-datepicker-multi .ui-datepicker-group { float:left; }
-.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
-.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
-.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
-.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
-.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
-.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
-.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
-.ui-datepicker-row-break { clear:both; width:100%; }
-
-/* RTL support */
-.ui-datepicker-rtl { direction: rtl; }
-.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
-.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
-.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
-.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
-.ui-datepicker-rtl .ui-datepicker-group { float:right; }
-.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
-.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
-
-/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
-.ui-datepicker-cover {
-    display: none; /*sorry for IE5*/
-    display/**/: block; /*sorry for IE5*/
-    position: absolute; /*must have*/
-    z-index: -1; /*must have*/
-    filter: mask(); /*must have*/
-    top: -4px; /*must have*/
-    left: -4px; /*must have*/
-    width: 200px; /*must have*/
-    height: 200px; /*must have*/
-}
-
-
-
-/*
- *	erpnext/startup/startup.css
- */
-h1, h2, h3, h4, h5 {
-	font-family: Arial, Helvetica, sans-serif;
-	margin-top: 0.2em;
-}
-
-body {
-	font-family: Arial, Helvetica, sans-serif;
-	font-size: 13px;
-}
-
-span, div, td, input, textarea, button, select {
-	font-family: inherit;
-}
-
-.small {
-	font-size: 11.5px;
-}
-
-.erpnext-footer {
-	margin: 11px auto;
-	text-align: center;
-}
-
-.navbar-new-comments {
-	margin: -3px 0px;
-	padding: 2px;
-	min-width: 20px;
-	text-align: center;
-	display: inline-block;
-	border-radius: 2px;
-	color: #999999;
-	background-color: #333131;
-}
-
-.navbar-new-comments:hover,
-.navbar-new-comments:active,
-.navbar-new-comments:focus {
-	color: #fff;
-}
-
-.navbar-new-comments-true {
-	color: #fff;
-	background-color: #B00D07;
-}
-
-/*extra size menus for recent*/
-.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
-	min-width: 160px !important;
-	max-width: 260px !important;
-}
-
-.expiry-info {
-	margin-top: 40px;
-	margin-bottom: -40px;
-	text-align: center;
-	background-color: rgb(255, 255, 204);
-	padding: 7px;
-	z-index: 1;
-}
-
-.show-all-reports {
-	margin-top: 5px;
-	font-size: 11px;
-}
diff --git a/public/css/all-web.css b/public/css/all-web.css
deleted file mode 100644
index e38859e..0000000
--- a/public/css/all-web.css
+++ /dev/null
@@ -1,2794 +0,0 @@
-
-/*
- *	lib/css/bootstrap/headings.css
- */
-/* heading from bootstrap */
-
-h1,
-h2,
-h3,
-h4,
-h5,
-h6 {
-  margin: 0;
-  font-weight: bold;
-  color: #333333;
-  text-rendering: optimizelegibility;
-}
-h1 small,
-h2 small,
-h3 small,
-h4 small,
-h5 small,
-h6 small {
-  font-weight: normal;
-  color: #999999;
-}
-h1 {
-  font-size: 280%;
-  line-height: 120%;
-}
-h1 small {
-  font-size: 150%;
-}
-h2 {
-  font-size: 200%;
-  line-height: 120%;
-}
-h2 small {
-  font-size: 150%;
-}
-h3 {
-  font-size: 210%;
-  font-size: 150%;
-}
-h3 small {
-  font-size: 130%;
-}
-h4, h5, h6 {
-  font-size: 150%;
-}
-h4 {
-  font-size: 113%;
-}
-h4 small {
-  font-size: 100%;
-}
-h5 {
-  font-size: 100%;
-}
-h6 {
-  font-size: 11px;
-  color: #999999;
-  text-transform: uppercase;
-}
-
-/*
- *	lib/css/bootstrap/buttons.css
- */
-.close {
-  font-family: Helvetica, Sans;
-  float: right;
-  font-size: 20px;
-  font-weight: bold;
-  line-height: 18px;
-  color: #000000;
-  text-shadow: 0 1px 0 #ffffff;
-  opacity: 0.2;
-  filter: alpha(opacity=20);
-}
-.close:hover {
-  color: #000000;
-  text-decoration: none;
-  opacity: 0.4;
-  filter: alpha(opacity=40);
-  cursor: pointer;
-}
-.btn {
-  display: inline-block;
-  padding: 4px 10px 4px;
-  font-size: 13px;
-  line-height: 18px;
-  color: #333333;
-  text-align: center;
-  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
-  background-color: #fafafa;
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6));
-  background-image: -webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
-  background-image: -moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6);
-  background-image: -ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
-  background-image: -o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
-  background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
-  background-repeat: no-repeat;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
-  border: 1px solid #ccc;
-  border-bottom-color: #bbb;
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  cursor: pointer;
-  *margin-left: .3em;
-}
-.btn:first-child {
-  *margin-left: 0;
-}
-.btn:hover {
-  color: #333333;
-  text-decoration: none;
-  background-color: #e6e6e6;
-  background-position: 0 -15px;
-  -webkit-transition: background-position 0.1s linear;
-  -moz-transition: background-position 0.1s linear;
-  -ms-transition: background-position 0.1s linear;
-  -o-transition: background-position 0.1s linear;
-  transition: background-position 0.1s linear;
-}
-.btn:focus {
-  outline: thin dotted;
-  outline: 5px auto -webkit-focus-ring-color;
-  outline-offset: -2px;
-}
-.btn.active, .btn:active {
-  background-image: none;
-  -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  background-color: #e6e6e6;
-  background-color: #d9d9d9 \9;
-  color: rgba(0, 0, 0, 0.5);
-  outline: 0;
-}
-.btn.disabled, .btn[disabled] {
-  cursor: default;
-  background-image: none;
-  background-color: #e6e6e6;
-  opacity: 0.65;
-  filter: alpha(opacity=65);
-  -webkit-box-shadow: none;
-  -moz-box-shadow: none;
-  box-shadow: none;
-}
-.btn-large {
-  padding: 9px 14px;
-  font-size: 15px;
-  line-height: normal;
-  -webkit-border-radius: 5px;
-  -moz-border-radius: 5px;
-  border-radius: 5px;
-}
-.btn-large .icon {
-  margin-top: 1px;
-}
-.btn-small {
-  padding: 4px 9px;
-  font-size: 11px;
-  line-height: 16px;
-}
-.btn-small .icon {
-  margin-top: -1px;
-}
-.btn-primary,
-.btn-primary:hover,
-.btn-warning,
-.btn-warning:hover,
-.btn-danger,
-.btn-danger:hover,
-.btn-success,
-.btn-success:hover,
-.btn-info,
-.btn-info:hover {
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-  color: #ffffff;
-}
-.btn-primary.active,
-.btn-warning.active,
-.btn-danger.active,
-.btn-success.active,
-.btn-info.active {
-  color: rgba(255, 255, 255, 0.75);
-}
-.btn-primary {
-  background-color: #006dcc;
-  background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
-  background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
-  background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
-  background-image: -o-linear-gradient(top, #0088cc, #0044cc);
-  background-image: linear-gradient(top, #0088cc, #0044cc);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
-  border-color: #0044cc #0044cc #002a80;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-primary:hover,
-.btn-primary:active,
-.btn-primary.active,
-.btn-primary.disabled,
-.btn-primary[disabled] {
-  background-color: #0044cc;
-}
-.btn-primary:active, .btn-primary.active {
-  background-color: #003399 \9;
-}
-.btn-warning {
-  background-color: #faa732;
-  background-image: -moz-linear-gradient(top, #fbb450, #f89406);
-  background-image: -ms-linear-gradient(top, #fbb450, #f89406);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
-  background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
-  background-image: -o-linear-gradient(top, #fbb450, #f89406);
-  background-image: linear-gradient(top, #fbb450, #f89406);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
-  border-color: #f89406 #f89406 #ad6704;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-warning:hover,
-.btn-warning:active,
-.btn-warning.active,
-.btn-warning.disabled,
-.btn-warning[disabled] {
-  background-color: #f89406;
-}
-.btn-warning:active, .btn-warning.active {
-  background-color: #c67605 \9;
-}
-.btn-danger {
-  background-color: #da4f49;
-  background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
-  background-image: -ms-linear-gradient(top, #ee5f5b, #bd362f);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
-  background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
-  background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
-  background-image: linear-gradient(top, #ee5f5b, #bd362f);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#bd362f', GradientType=0);
-  border-color: #bd362f #bd362f #802420;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-danger:hover,
-.btn-danger:active,
-.btn-danger.active,
-.btn-danger.disabled,
-.btn-danger[disabled] {
-  background-color: #bd362f;
-}
-.btn-danger:active, .btn-danger.active {
-  background-color: #942a25 \9;
-}
-.btn-success {
-  background-color: #5bb75b;
-  background-image: -moz-linear-gradient(top, #62c462, #51a351);
-  background-image: -ms-linear-gradient(top, #62c462, #51a351);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
-  background-image: -webkit-linear-gradient(top, #62c462, #51a351);
-  background-image: -o-linear-gradient(top, #62c462, #51a351);
-  background-image: linear-gradient(top, #62c462, #51a351);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#51a351', GradientType=0);
-  border-color: #51a351 #51a351 #387038;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-success:hover,
-.btn-success:active,
-.btn-success.active,
-.btn-success.disabled,
-.btn-success[disabled] {
-  background-color: #51a351;
-}
-.btn-success:active, .btn-success.active {
-  background-color: #408140 \9;
-}
-.btn-info {
-  background-color: #49afcd;
-  background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
-  background-image: -ms-linear-gradient(top, #5bc0de, #2f96b4);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
-  background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
-  background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
-  background-image: linear-gradient(top, #5bc0de, #2f96b4);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#2f96b4', GradientType=0);
-  border-color: #2f96b4 #2f96b4 #1f6377;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.btn-info:hover,
-.btn-info:active,
-.btn-info.active,
-.btn-info.disabled,
-.btn-info[disabled] {
-  background-color: #2f96b4;
-}
-.btn-info:active, .btn-info.active {
-  background-color: #24748c \9;
-}
-button.btn, input[type="submit"].btn {
-  *padding-top: 2px;
-  *padding-bottom: 2px;
-}
-button.btn::-moz-focus-inner, input[type="submit"].btn::-moz-focus-inner {
-  padding: 0;
-  border: 0;
-}
-button.btn.large, input[type="submit"].btn.large {
-  *padding-top: 7px;
-  *padding-bottom: 7px;
-}
-button.btn.small, input[type="submit"].btn.small {
-  *padding-top: 3px;
-  *padding-bottom: 3px;
-}
-.btn-group {
-  position: relative;
-  *zoom: 1;
-  *margin-left: .3em;
-}
-.btn-group:before, .btn-group:after {
-  display: table;
-  content: "";
-}
-.btn-group:after {
-  clear: both;
-}
-.btn-group:first-child {
-  *margin-left: 0;
-}
-.btn-group + .btn-group {
-  margin-left: 5px;
-}
-.btn-toolbar {
-  margin-top: 9px;
-  margin-bottom: 9px;
-}
-.btn-toolbar .btn-group {
-  display: inline-block;
-  *display: inline;
-  /* IE7 inline-block hack */
-
-  *zoom: 1;
-}
-.btn-group .btn {
-  position: relative;
-  float: left;
-  margin-left: -1px;
-  -webkit-border-radius: 0;
-  -moz-border-radius: 0;
-  border-radius: 0;
-}
-.btn-group .btn:first-child {
-  margin-left: 0;
-  -webkit-border-top-left-radius: 4px;
-  -moz-border-radius-topleft: 4px;
-  border-top-left-radius: 4px;
-  -webkit-border-bottom-left-radius: 4px;
-  -moz-border-radius-bottomleft: 4px;
-  border-bottom-left-radius: 4px;
-}
-.btn-group .btn:last-child, .btn-group .dropdown-toggle {
-  -webkit-border-top-right-radius: 4px;
-  -moz-border-radius-topright: 4px;
-  border-top-right-radius: 4px;
-  -webkit-border-bottom-right-radius: 4px;
-  -moz-border-radius-bottomright: 4px;
-  border-bottom-right-radius: 4px;
-}
-.btn-group .btn.large:first-child {
-  margin-left: 0;
-  -webkit-border-top-left-radius: 6px;
-  -moz-border-radius-topleft: 6px;
-  border-top-left-radius: 6px;
-  -webkit-border-bottom-left-radius: 6px;
-  -moz-border-radius-bottomleft: 6px;
-  border-bottom-left-radius: 6px;
-}
-.btn-group .btn.large:last-child, .btn-group .large.dropdown-toggle {
-  -webkit-border-top-right-radius: 6px;
-  -moz-border-radius-topright: 6px;
-  border-top-right-radius: 6px;
-  -webkit-border-bottom-right-radius: 6px;
-  -moz-border-radius-bottomright: 6px;
-  border-bottom-right-radius: 6px;
-}
-.btn-group .btn:hover,
-.btn-group .btn:focus,
-.btn-group .btn:active,
-.btn-group .btn.active {
-  z-index: 2;
-}
-.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle {
-  outline: 0;
-}
-.btn-group .dropdown-toggle {
-  padding-left: 8px;
-  padding-right: 8px;
-  -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-  *padding-top: 5px;
-  *padding-bottom: 5px;
-}
-.btn-group.open {
-  *z-index: 1000;
-}
-.btn-group.open .dropdown-menu {
-  display: block;
-  margin-top: 1px;
-  -webkit-border-radius: 5px;
-  -moz-border-radius: 5px;
-  border-radius: 5px;
-}
-.btn-group.open .dropdown-toggle {
-  background-image: none;
-  -webkit-box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-.btn .caret {
-  margin-top: 7px;
-  margin-left: 0;
-}
-.btn:hover .caret, .open.btn-group .caret {
-  opacity: 1;
-  filter: alpha(opacity=100);
-}
-.btn-primary .caret,
-.btn-danger .caret,
-.btn-info .caret,
-.btn-success .caret {
-  border-top-color: #ffffff;
-  opacity: 0.75;
-  filter: alpha(opacity=75);
-}
-.btn-small .caret {
-  margin-top: 4px;
-}
-
-/*
- *	lib/css/bootstrap/navbar.css
- */
-.nav {
-  margin-left: 0;
-  margin-bottom: 18px;
-  list-style: none;
-}
-.nav > li > a {
-  display: block;
-}
-.nav > li > a:hover {
-  text-decoration: none;
-  background-color: #eeeeee;
-}
-.nav-list {
-  padding-left: 14px;
-  padding-right: 14px;
-  margin-bottom: 0;
-}
-.nav-list > li > a, .nav-list .nav-header {
-  display: block;
-  padding: 3px 15px;
-  margin-left: -15px;
-  margin-right: -15px;
-  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
-}
-.nav-list .nav-header {
-  font-size: 11px;
-  font-weight: bold;
-  line-height: 18px;
-  color: #999999;
-  text-transform: uppercase;
-}
-.nav-list > li + .nav-header {
-  margin-top: 9px;
-}
-.nav-list .active > a, .nav-list .active > a:hover {
-  color: #ffffff;
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
-  background-color: #0088cc;
-}
-.nav-list [class^="icon-"] {
-  margin-right: 2px;
-}
-.nav-tabs, .nav-pills {
-  *zoom: 1;
-}
-.nav-tabs:before,
-.nav-pills:before,
-.nav-tabs:after,
-.nav-pills:after {
-  display: table;
-  content: "";
-}
-.nav-tabs:after, .nav-pills:after {
-  clear: both;
-}
-.nav-tabs > li, .nav-pills > li {
-  float: left;
-}
-.nav-tabs > li > a, .nav-pills > li > a {
-  padding-right: 12px;
-  padding-left: 12px;
-  margin-right: 2px;
-  line-height: 14px;
-}
-.nav-tabs {
-  border-bottom: 1px solid #ddd;
-}
-.nav-tabs > li {
-  margin-bottom: -1px;
-}
-.nav-tabs > li > a {
-  padding-top: 9px;
-  padding-bottom: 9px;
-  border: 1px solid transparent;
-  -webkit-border-radius: 4px 4px 0 0;
-  -moz-border-radius: 4px 4px 0 0;
-  border-radius: 4px 4px 0 0;
-}
-.nav-tabs > li > a:hover {
-  border-color: #eeeeee #eeeeee #dddddd;
-}
-.nav-tabs > .active > a, .nav-tabs > .active > a:hover {
-  color: #555555;
-  background-color: #ffffff;
-  border: 1px solid #ddd;
-  border-bottom-color: transparent;
-  cursor: default;
-}
-.nav-pills > li > a {
-  padding-top: 8px;
-  padding-bottom: 8px;
-  margin-top: 2px;
-  margin-bottom: 2px;
-  -webkit-border-radius: 5px;
-  -moz-border-radius: 5px;
-  border-radius: 5px;
-}
-.nav-pills .active > a, .nav-pills .active > a:hover {
-  color: #ffffff;
-  background-color: #0088cc;
-}
-.nav-stacked > li {
-  float: none;
-}
-.nav-stacked > li > a {
-  margin-right: 0;
-}
-.nav-tabs.nav-stacked {
-  border-bottom: 0;
-}
-.nav-tabs.nav-stacked > li > a {
-  border: 1px solid #ddd;
-  -webkit-border-radius: 0;
-  -moz-border-radius: 0;
-  border-radius: 0;
-}
-.nav-tabs.nav-stacked > li:first-child > a {
-  -webkit-border-radius: 4px 4px 0 0;
-  -moz-border-radius: 4px 4px 0 0;
-  border-radius: 4px 4px 0 0;
-}
-.nav-tabs.nav-stacked > li:last-child > a {
-  -webkit-border-radius: 0 0 4px 4px;
-  -moz-border-radius: 0 0 4px 4px;
-  border-radius: 0 0 4px 4px;
-}
-.nav-tabs.nav-stacked > li > a:hover {
-  border-color: #ddd;
-  z-index: 2;
-}
-.nav-pills.nav-stacked > li > a {
-  margin-bottom: 3px;
-}
-.nav-pills.nav-stacked > li:last-child > a {
-  margin-bottom: 1px;
-}
-.nav-tabs .dropdown-menu, .nav-pills .dropdown-menu {
-  margin-top: 1px;
-  border-width: 1px;
-}
-.nav-pills .dropdown-menu {
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-}
-.nav-tabs .dropdown-toggle .caret, .nav-pills .dropdown-toggle .caret {
-  border-top-color: #0088cc;
-  margin-top: 6px;
-}
-.nav-tabs .dropdown-toggle:hover .caret, .nav-pills .dropdown-toggle:hover .caret {
-  border-top-color: #005580;
-}
-.nav-tabs .active .dropdown-toggle .caret, .nav-pills .active .dropdown-toggle .caret {
-  border-top-color: #333333;
-}
-.nav > .dropdown.active > a:hover {
-  color: #000000;
-  cursor: pointer;
-}
-.nav-tabs .open .dropdown-toggle, .nav-pills .open .dropdown-toggle, .nav > .open.active > a:hover {
-  color: #ffffff;
-  background-color: #999999;
-  border-color: #999999;
-}
-.nav .open .caret, .nav .open.active .caret, .nav .open a:hover .caret {
-  border-top-color: #ffffff;
-  opacity: 1;
-  filter: alpha(opacity=100);
-}
-
-.navbar {
-  overflow: visible;
-  margin-bottom: 18px;
-}
-.navbar-inner {
-  padding-left: 20px;
-  padding-right: 20px;
-  background-color: #2c2c2c;
-  background-image: -moz-linear-gradient(top, #333333, #222222);
-  background-image: -ms-linear-gradient(top, #333333, #222222);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
-  background-image: -webkit-linear-gradient(top, #333333, #222222);
-  background-image: -o-linear-gradient(top, #333333, #222222);
-  background-image: linear-gradient(top, #333333, #222222);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
-  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
-  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
-}
-.btn-navbar {
-  display: none;
-  float: right;
-  padding: 7px 10px;
-  margin-left: 5px;
-  margin-right: 5px;
-  background-color: #2c2c2c;
-  background-image: -moz-linear-gradient(top, #333333, #222222);
-  background-image: -ms-linear-gradient(top, #333333, #222222);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
-  background-image: -webkit-linear-gradient(top, #333333, #222222);
-  background-image: -o-linear-gradient(top, #333333, #222222);
-  background-image: linear-gradient(top, #333333, #222222);
-  background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
-  border-color: #222222 #222222 #000000;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
-  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
-  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
-}
-.btn-navbar:hover,
-.btn-navbar:active,
-.btn-navbar.active,
-.btn-navbar.disabled,
-.btn-navbar[disabled] {
-  background-color: #222222;
-}
-.btn-navbar:active, .btn-navbar.active {
-  background-color: #080808 \9;
-}
-.btn-navbar .icon-bar {
-  display: block;
-  width: 18px;
-  height: 2px;
-  background-color: #f5f5f5;
-  -webkit-border-radius: 1px;
-  -moz-border-radius: 1px;
-  border-radius: 1px;
-  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
-  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
-  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
-}
-.btn-navbar .icon-bar + .icon-bar {
-  margin-top: 3px;
-}
-.nav-collapse.collapse {
-  height: auto;
-}
-.navbar .brand:hover {
-  text-decoration: none;
-}
-.navbar .brand {
-  float: left;
-  display: block;
-  padding: 8px 20px 12px;
-  font-size: 20px;
-  font-weight: 200;
-  line-height: 1;
-  color: #ffffff;
-}
-.navbar .navbar-text {
-  margin-bottom: 0;
-  line-height: 40px;
-  color: #999999;
-}
-.navbar .navbar-text a:hover {
-  color: #ffffff;
-  background-color: transparent;
-}
-.navbar .btn, .navbar .btn-group {
-  margin-top: 5px;
-}
-.navbar .btn-group .btn {
-  margin-top: 0;
-}
-.navbar-form {
-  margin-bottom: 0;
-  *zoom: 1;
-}
-.navbar-form:before, .navbar-form:after {
-  display: table;
-  content: "";
-}
-.navbar-form:after {
-  clear: both;
-}
-.navbar-form input, .navbar-form select {
-  display: inline-block;
-  margin-top: 5px;
-  margin-bottom: 0;
-}
-.navbar-form .radio, .navbar-form .checkbox {
-  margin-top: 5px;
-}
-.navbar-form input[type="image"], .navbar-form input[type="checkbox"], .navbar-form input[type="radio"] {
-  margin-top: 3px;
-}
-.navbar-search {
-  position: relative;
-  float: left;
-  margin-top: 6px;
-  margin-bottom: 0;
-}
-.navbar-search .search-query {
-  padding: 4px 9px;
-  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
-  font-size: 13px;
-  font-weight: normal;
-  line-height: 1;
-  color: #ffffff;
-  color: rgba(255, 255, 255, 0.75);
-  background: #666;
-  background: rgba(255, 255, 255, 0.3);
-  border: 1px solid #111;
-  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
-  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
-  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
-  -webkit-transition: none;
-  -moz-transition: none;
-  -ms-transition: none;
-  -o-transition: none;
-  transition: none;
-}
-.navbar-search .search-query :-moz-placeholder {
-  color: #eeeeee;
-}
-.navbar-search .search-query::-webkit-input-placeholder {
-  color: #eeeeee;
-}
-.navbar-search .search-query:hover {
-  color: #ffffff;
-  background-color: #999999;
-  background-color: rgba(255, 255, 255, 0.5);
-}
-.navbar-search .search-query:focus, .navbar-search .search-query.focused {
-  padding: 5px 10px;
-  color: #333333;
-  text-shadow: 0 1px 0 #ffffff;
-  background-color: #ffffff;
-  border: 0;
-  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
-  -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
-  box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
-  outline: 0;
-}
-.navbar-fixed-top {
-  position: fixed;
-  top: 0;
-  right: 0;
-  left: 0;
-  z-index: 1030;
-}
-.navbar-fixed-top .navbar-inner {
-  padding-left: 0;
-  padding-right: 0;
-  -webkit-border-radius: 0;
-  -moz-border-radius: 0;
-  border-radius: 0;
-}
-.navbar .nav {
-  position: relative;
-  left: 0;
-  display: block;
-  float: left;
-  margin: 0 10px 0 0;
-}
-.navbar .nav.pull-right {
-  float: right;
-}
-.navbar .nav > li {
-  display: block;
-  float: left;
-}
-.navbar .nav > li > a {
-  float: none;
-  padding: 10px 10px 11px;
-  line-height: 19px;
-  color: #999999;
-  text-decoration: none;
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.navbar .nav > li > a:hover {
-  background-color: transparent;
-  color: #ffffff;
-  text-decoration: none;
-}
-.navbar .nav .active > a, .navbar .nav .active > a:hover {
-  color: #ffffff;
-  text-decoration: none;
-  background-color: #222222;
-  background-color: rgba(0, 0, 0, 0.5);
-}
-.navbar .divider-vertical {
-  height: 40px;
-  width: 1px;
-  margin: 0 9px;
-  overflow: hidden;
-  background-color: #222222;
-  border-right: 1px solid #333333;
-}
-.navbar .nav.pull-right {
-  margin-left: 10px;
-  margin-right: 0;
-}
-.navbar .dropdown-menu {
-  margin-top: 1px;
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-}
-.navbar .dropdown-menu:before {
-  content: '';
-  display: inline-block;
-  border-left: 7px solid transparent;
-  border-right: 7px solid transparent;
-  border-bottom: 7px solid #ccc;
-  border-bottom-color: rgba(0, 0, 0, 0.2);
-  position: absolute;
-  top: -7px;
-  left: 9px;
-}
-.navbar .dropdown-menu:after {
-  content: '';
-  display: inline-block;
-  border-left: 6px solid transparent;
-  border-right: 6px solid transparent;
-  border-bottom: 6px solid #ffffff;
-  position: absolute;
-  top: -6px;
-  left: 10px;
-}
-.navbar .nav .dropdown-toggle .caret, .navbar .nav .open.dropdown .caret {
-  border-top-color: #ffffff;
-}
-.navbar .nav .active .caret {
-  opacity: 1;
-  filter: alpha(opacity=100);
-}
-.navbar .nav .open > .dropdown-toggle, .navbar .nav .active > .dropdown-toggle, .navbar .nav .open.active > .dropdown-toggle {
-  background-color: transparent;
-}
-.navbar .nav .active > .dropdown-toggle:hover {
-  color: #ffffff;
-}
-.navbar .nav.pull-right .dropdown-menu {
-  left: auto;
-  right: 0;
-}
-.navbar .nav.pull-right .dropdown-menu:before {
-  left: auto;
-  right: 12px;
-}
-.navbar .nav.pull-right .dropdown-menu:after {
-  left: auto;
-  right: 13px;
-}
-
-/* ajax spinner */
-.navbar #spinner {
-	display: block;
-	float: right;
-	width: 20px;
-	margin-bottom: -5px;
-	margin-top: 10px;
-	visibility: hidden;
-}
-
-.navbar-inner {
-	padding: 0px 20px;
-}
-
-
-/*
- *	lib/css/bootstrap/dropdown.css
- */
-.dropdown {
-  position: relative;
-}
-.dropdown-toggle {
-  *margin-bottom: -3px;
-}
-.dropdown-toggle:active, .open .dropdown-toggle {
-  outline: 0;
-}
-.caret {
-  display: inline-block;
-  width: 0;
-  height: 0;
-  text-indent: -99999px;
-  *text-indent: 0;
-  vertical-align: top;
-  border-left: 4px solid transparent;
-  border-right: 4px solid transparent;
-  border-top: 4px solid #000000;
-  opacity: 0.3;
-  filter: alpha(opacity=30);
-  content: "\2193";
-}
-.dropdown .caret {
-  margin-top: 8px;
-  margin-left: 2px;
-}
-.dropdown:hover .caret, .open.dropdown .caret {
-  opacity: 1;
-  filter: alpha(opacity=100);
-}
-.dropdown-menu {
-  position: absolute;
-  top: 100%;
-  left: 0;
-  z-index: 1000;
-  float: left;
-  display: none;
-  min-width: 160px;
-  max-width: 220px;
-  _width: 160px;
-  padding: 4px 0;
-  margin: 0;
-  list-style: none;
-  background-color: #ffffff;
-  border-color: #ccc;
-  border-color: rgba(0, 0, 0, 0.2);
-  border-style: solid;
-  border-width: 1px;
-  -webkit-border-radius: 0 0 5px 5px;
-  -moz-border-radius: 0 0 5px 5px;
-  border-radius: 0 0 5px 5px;
-  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-  -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-  -webkit-background-clip: padding-box;
-  -moz-background-clip: padding;
-  background-clip: padding-box;
-  *border-right-width: 2px;
-  *border-bottom-width: 2px;
-}
-.dropdown-menu.bottom-up {
-  top: auto;
-  bottom: 100%;
-  margin-bottom: 2px;
-}
-.dropdown-menu .divider {
-  height: 1px;
-  margin: 5px 1px;
-  overflow: hidden;
-  background-color: #e5e5e5;
-  border-bottom: 1px solid #ffffff;
-  *width: 100%;
-  *margin: -5px 0 5px;
-}
-.dropdown-menu a {
-  display: block;
-  padding: 3px 15px;
-  clear: both;
-  font-weight: normal;
-  line-height: 18px;
-  color: #555555;
-  white-space: nowrap;
-}
-.dropdown-menu li > a:hover, .dropdown-menu .active > a, .dropdown-menu .active > a:hover {
-  color: #ffffff;
-  text-decoration: none;
-  background-color: #0088cc;
-}
-.dropdown.open {
-  *z-index: 1000;
-}
-.dropdown.open .dropdown-toggle {
-  color: #ffffff;
-  background: #ccc;
-  background: rgba(0, 0, 0, 0.3);
-}
-.dropdown.open .dropdown-menu {
-  display: block;
-}
-
-/*
- *	lib/css/bootstrap/tooltip.css
- */
-.tooltip {
-  position: absolute;
-  z-index: 1020;
-  display: block;
-  visibility: visible;
-  padding: 5px;
-  font-size: 11px;
-  opacity: 0;
-  filter: alpha(opacity=0);
-}
-.tooltip.in {
-  opacity: 0.8;
-  filter: alpha(opacity=80);
-}
-.tooltip.top {
-  margin-top: -2px;
-}
-.tooltip.right {
-  margin-left: 2px;
-}
-.tooltip.bottom {
-  margin-top: 2px;
-}
-.tooltip.left {
-  margin-left: -2px;
-}
-.tooltip.top .tooltip-arrow {
-  bottom: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-top: 5px solid #000000;
-}
-.tooltip.left .tooltip-arrow {
-  top: 50%;
-  right: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-left: 5px solid #000000;
-}
-.tooltip.bottom .tooltip-arrow {
-  top: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-bottom: 5px solid #000000;
-}
-.tooltip.right .tooltip-arrow {
-  top: 50%;
-  left: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-right: 5px solid #000000;
-}
-.tooltip-inner {
-  max-width: 200px;
-  padding: 3px 8px;
-  color: #ffffff;
-  text-align: center;
-  text-decoration: none;
-  background-color: #000000;
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-}
-.tooltip-arrow {
-  position: absolute;
-  width: 0;
-  height: 0;
-}
-.popover {
-  position: absolute;
-  top: 0;
-  left: 0;
-  z-index: 1010;
-  display: none;
-  padding: 5px;
-}
-.popover.top {
-  margin-top: -5px;
-}
-.popover.right {
-  margin-left: 5px;
-}
-.popover.bottom {
-  margin-top: 5px;
-}
-.popover.left {
-  margin-left: -5px;
-}
-.popover.top .arrow {
-  bottom: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-top: 5px solid #000000;
-}
-.popover.right .arrow {
-  top: 50%;
-  left: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-right: 5px solid #000000;
-}
-.popover.bottom .arrow {
-  top: 0;
-  left: 50%;
-  margin-left: -5px;
-  border-left: 5px solid transparent;
-  border-right: 5px solid transparent;
-  border-bottom: 5px solid #000000;
-}
-.popover.left .arrow {
-  top: 50%;
-  right: 0;
-  margin-top: -5px;
-  border-top: 5px solid transparent;
-  border-bottom: 5px solid transparent;
-  border-left: 5px solid #000000;
-}
-.popover .arrow {
-  position: absolute;
-  width: 0;
-  height: 0;
-}
-.popover-inner {
-  padding: 3px;
-  width: 280px;
-  overflow: hidden;
-  background: #000000;
-  background: rgba(0, 0, 0, 0.8);
-  -webkit-border-radius: 6px;
-  -moz-border-radius: 6px;
-  border-radius: 6px;
-  -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-  -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
-}
-.popover-title {
-  padding: 9px 15px;
-  line-height: 1;
-  background-color: #f5f5f5;
-  border-bottom: 1px solid #eee;
-  -webkit-border-radius: 3px 3px 0 0;
-  -moz-border-radius: 3px 3px 0 0;
-  border-radius: 3px 3px 0 0;
-}
-.popover-content {
-  padding: 14px;
-  background-color: #ffffff;
-  -webkit-border-radius: 0 0 3px 3px;
-  -moz-border-radius: 0 0 3px 3px;
-  border-radius: 0 0 3px 3px;
-  -webkit-background-clip: padding-box;
-  -moz-background-clip: padding-box;
-  background-clip: padding-box;
-}
-.popover-content p, .popover-content ul, .popover-content ol {
-  margin-bottom: 0;
-}
-
-/*
- *	lib/css/bootstrap/icons.css
- */
-[class^="icon-"],
-[class*=" icon-"] {
-  display: inline-block;
-  width: 15px;
-  height: 14px;
-  *margin-right: .3em;
-  line-height: 14px;
-  vertical-align: text-top;
-  background-image: url("../images/lib/icons/glyphicons-halflings.png");
-  background-position: 14px 14px;
-  background-repeat: no-repeat;
-}
-
-[class^="icon-"]:last-child,
-[class*=" icon-"]:last-child {
-  *margin-left: 0;
-}
-
-.icon-white {
-  background-image: url("../images/lib/icons/glyphicons-halflings-white.png");
-}
-
-.icon-glass {
-  background-position: 0      0;
-}
-
-.icon-music {
-  background-position: -24px 0;
-}
-
-.icon-search {
-  background-position: -48px 0;
-}
-
-.icon-envelope {
-  background-position: -72px 0;
-}
-
-.icon-heart {
-  background-position: -96px 0;
-}
-
-.icon-star {
-  background-position: -120px 0;
-}
-
-.icon-star-empty {
-  background-position: -144px 0;
-}
-
-.icon-user {
-  background-position: -168px 0;
-}
-
-.icon-film {
-  background-position: -192px 0;
-}
-
-.icon-th-large {
-  background-position: -216px 0;
-}
-
-.icon-th {
-  background-position: -240px 0;
-}
-
-.icon-th-list {
-  background-position: -264px 0;
-}
-
-.icon-ok {
-  background-position: -288px 0;
-}
-
-.icon-remove {
-  background-position: -312px 0;
-}
-
-.icon-zoom-in {
-  background-position: -336px 0;
-}
-
-.icon-zoom-out {
-  background-position: -360px 0;
-}
-
-.icon-off {
-  background-position: -384px 0;
-}
-
-.icon-signal {
-  background-position: -408px 0;
-}
-
-.icon-cog {
-  background-position: -432px 0;
-}
-
-.icon-trash {
-  background-position: -456px 0;
-}
-
-.icon-home {
-  background-position: 0 -24px;
-}
-
-.icon-file {
-  background-position: -24px -24px;
-}
-
-.icon-time {
-  background-position: -48px -24px;
-}
-
-.icon-road {
-  background-position: -72px -24px;
-}
-
-.icon-download-alt {
-  background-position: -96px -24px;
-}
-
-.icon-download {
-  background-position: -120px -24px;
-}
-
-.icon-upload {
-  background-position: -144px -24px;
-}
-
-.icon-inbox {
-  background-position: -168px -24px;
-}
-
-.icon-play-circle {
-  background-position: -192px -24px;
-}
-
-.icon-repeat {
-  background-position: -216px -24px;
-}
-
-.icon-refresh {
-  background-position: -240px -24px;
-}
-
-.icon-list-alt {
-  background-position: -264px -24px;
-}
-
-.icon-lock {
-  background-position: -287px -24px;
-}
-
-.icon-flag {
-  background-position: -312px -24px;
-}
-
-.icon-headphones {
-  background-position: -336px -24px;
-}
-
-.icon-volume-off {
-  background-position: -360px -24px;
-}
-
-.icon-volume-down {
-  background-position: -384px -24px;
-}
-
-.icon-volume-up {
-  background-position: -408px -24px;
-}
-
-.icon-qrcode {
-  background-position: -432px -24px;
-}
-
-.icon-barcode {
-  background-position: -456px -24px;
-}
-
-.icon-tag {
-  background-position: 0 -48px;
-}
-
-.icon-tags {
-  background-position: -25px -48px;
-}
-
-.icon-book {
-  background-position: -48px -48px;
-}
-
-.icon-bookmark {
-  background-position: -72px -48px;
-}
-
-.icon-print {
-  background-position: -96px -48px;
-}
-
-.icon-camera {
-  background-position: -120px -48px;
-}
-
-.icon-font {
-  background-position: -144px -48px;
-}
-
-.icon-bold {
-  background-position: -167px -48px;
-}
-
-.icon-italic {
-  background-position: -192px -48px;
-}
-
-.icon-text-height {
-  background-position: -216px -48px;
-}
-
-.icon-text-width {
-  background-position: -240px -48px;
-}
-
-.icon-align-left {
-  background-position: -264px -48px;
-}
-
-.icon-align-center {
-  background-position: -288px -48px;
-}
-
-.icon-align-right {
-  background-position: -312px -48px;
-}
-
-.icon-align-justify {
-  background-position: -336px -48px;
-}
-
-.icon-list {
-  background-position: -360px -48px;
-}
-
-.icon-indent-left {
-  background-position: -384px -48px;
-}
-
-.icon-indent-right {
-  background-position: -408px -48px;
-}
-
-.icon-facetime-video {
-  background-position: -432px -48px;
-}
-
-.icon-picture {
-  background-position: -456px -48px;
-}
-
-.icon-pencil {
-  background-position: 0 -72px;
-}
-
-.icon-map-marker {
-  background-position: -24px -72px;
-}
-
-.icon-adjust {
-  background-position: -48px -72px;
-}
-
-.icon-tint {
-  background-position: -72px -72px;
-}
-
-.icon-edit {
-  background-position: -96px -72px;
-}
-
-.icon-share {
-  background-position: -120px -72px;
-}
-
-.icon-check {
-  background-position: -144px -72px;
-}
-
-.icon-move {
-  background-position: -168px -72px;
-}
-
-.icon-step-backward {
-  background-position: -192px -72px;
-}
-
-.icon-fast-backward {
-  background-position: -216px -72px;
-}
-
-.icon-backward {
-  background-position: -240px -72px;
-}
-
-.icon-play {
-  background-position: -264px -72px;
-}
-
-.icon-pause {
-  background-position: -288px -72px;
-}
-
-.icon-stop {
-  background-position: -312px -72px;
-}
-
-.icon-forward {
-  background-position: -336px -72px;
-}
-
-.icon-fast-forward {
-  background-position: -360px -72px;
-}
-
-.icon-step-forward {
-  background-position: -384px -72px;
-}
-
-.icon-eject {
-  background-position: -408px -72px;
-}
-
-.icon-chevron-left {
-  background-position: -432px -72px;
-}
-
-.icon-chevron-right {
-  background-position: -456px -72px;
-}
-
-.icon-plus-sign {
-  background-position: 0 -96px;
-}
-
-.icon-minus-sign {
-  background-position: -24px -96px;
-}
-
-.icon-remove-sign {
-  background-position: -48px -96px;
-}
-
-.icon-ok-sign {
-  background-position: -72px -96px;
-}
-
-.icon-question-sign {
-  background-position: -96px -96px;
-}
-
-.icon-info-sign {
-  background-position: -120px -96px;
-}
-
-.icon-screenshot {
-  background-position: -144px -96px;
-}
-
-.icon-remove-circle {
-  background-position: -168px -96px;
-}
-
-.icon-ok-circle {
-  background-position: -192px -96px;
-}
-
-.icon-ban-circle {
-  background-position: -216px -96px;
-}
-
-.icon-arrow-left {
-  background-position: -240px -96px;
-}
-
-.icon-arrow-right {
-  background-position: -264px -96px;
-}
-
-.icon-arrow-up {
-  background-position: -289px -96px;
-}
-
-.icon-arrow-down {
-  background-position: -312px -96px;
-}
-
-.icon-share-alt {
-  background-position: -336px -96px;
-}
-
-.icon-resize-full {
-  background-position: -360px -96px;
-}
-
-.icon-resize-small {
-  background-position: -384px -96px;
-}
-
-.icon-plus {
-  background-position: -408px -96px;
-}
-
-.icon-minus {
-  background-position: -433px -96px;
-}
-
-.icon-asterisk {
-  background-position: -456px -96px;
-}
-
-.icon-exclamation-sign {
-  background-position: 0 -120px;
-}
-
-.icon-gift {
-  background-position: -24px -120px;
-}
-
-.icon-leaf {
-  background-position: -48px -120px;
-}
-
-.icon-fire {
-  background-position: -72px -120px;
-}
-
-.icon-eye-open {
-  background-position: -96px -120px;
-}
-
-.icon-eye-close {
-  background-position: -120px -120px;
-}
-
-.icon-warning-sign {
-  background-position: -144px -120px;
-}
-
-.icon-plane {
-  background-position: -168px -120px;
-}
-
-.icon-calendar {
-  background-position: -192px -120px;
-}
-
-.icon-random {
-  background-position: -216px -120px;
-}
-
-.icon-comment {
-  background-position: -240px -120px;
-}
-
-.icon-magnet {
-  background-position: -264px -120px;
-}
-
-.icon-chevron-up {
-  background-position: -288px -120px;
-}
-
-.icon-chevron-down {
-  background-position: -313px -119px;
-}
-
-.icon-retweet {
-  background-position: -336px -120px;
-}
-
-.icon-shopping-cart {
-  background-position: -360px -120px;
-}
-
-.icon-folder-close {
-  background-position: -384px -120px;
-}
-
-.icon-folder-open {
-  background-position: -408px -120px;
-}
-
-.icon-resize-vertical {
-  background-position: -432px -119px;
-}
-
-.icon-resize-horizontal {
-  background-position: -456px -118px;
-}
-
-.icon-hdd {
-  background-position: 0 -144px;
-}
-
-.icon-bullhorn {
-  background-position: -24px -144px;
-}
-
-.icon-bell {
-  background-position: -48px -144px;
-}
-
-.icon-certificate {
-  background-position: -72px -144px;
-}
-
-.icon-thumbs-up {
-  background-position: -96px -144px;
-}
-
-.icon-thumbs-down {
-  background-position: -120px -144px;
-}
-
-.icon-hand-right {
-  background-position: -144px -144px;
-}
-
-.icon-hand-left {
-  background-position: -168px -144px;
-}
-
-.icon-hand-up {
-  background-position: -192px -144px;
-}
-
-.icon-hand-down {
-  background-position: -216px -144px;
-}
-
-.icon-circle-arrow-right {
-  background-position: -240px -144px;
-}
-
-.icon-circle-arrow-left {
-  background-position: -264px -144px;
-}
-
-.icon-circle-arrow-up {
-  background-position: -288px -144px;
-}
-
-.icon-circle-arrow-down {
-  background-position: -312px -144px;
-}
-
-.icon-globe {
-  background-position: -336px -144px;
-}
-
-.icon-wrench {
-  background-position: -360px -144px;
-}
-
-.icon-tasks {
-  background-position: -384px -144px;
-}
-
-.icon-filter {
-  background-position: -408px -144px;
-}
-
-.icon-briefcase {
-  background-position: -432px -144px;
-}
-
-.icon-fullscreen {
-  background-position: -456px -144px;
-}
-
-/*
- *	lib/css/legacy/body.css
- */
-html { 
-	margin: 0px;
-	padding: 0px;
-}
-
-body {	
-	margin: 0px;
-	padding: 0px;
-	font-size: 14px;
-	color: #000;
-}
-
-/* font settings */
-
-h1, h2, h3, h4, h5 {
-	font-family: Arial, sans-serif;
-	margin-top: 0.2em;
-}
-
-body {
-	font-family: Arial, sans-serif;
-	font-size: 13px;
-	background-color: #eee;
-}
-
-footer {
-	background: #b7b7b7; /* Old browsers */
-	background: -moz-linear-gradient(top,  #b7b7b7 0%, #eeeeee 36%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b7b7b7), color-stop(36%,#eeeeee)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top,  #b7b7b7 0%,#eeeeee 36%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #b7b7b7 0%,#eeeeee 36%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #b7b7b7 0%,#eeeeee 36%); /* IE10+ */
-	background: linear-gradient(top,  #b7b7b7 0%,#eeeeee 36%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b7b7b7', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */
-	border-top: 1px solid #999;
-	text-align: center;
-	color: inherit;
-	padding: 10px;
-	font-size: 12px;
-	line-height: 1.7;
-}
-
-span, div, td, input, textarea, button, select {
-	font-family: inherit;
-}
-
-
-.markdown pre {
-    background-color: #F5F5F5;
-    border: 1px solid rgba(0, 0, 0, 0.15);
-    border-radius: 4px 4px 4px 4px;
-    display: block;
-    font-size: 12.025px;
-    line-height: 18px;
-    margin: 0 0 15px;
-    padding: 8.5px;
-    white-space: pre-wrap;
-    word-wrap: break-word;
-}
-
-.markdown code, .markdown pre {
-    border-radius: 3px 3px 3px 3px;
-    color: #333333;
-    font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
-    font-size: 12px;
-}
-
-button { margin: 2px; margin-left: 0px; }
-
-label {
-	padding-top: 15px;
-	color: #404040;
-}
-
-select, input, textarea { 
-	border: 1px solid #ccc; 
-	-moz-border-radius: 4px;
-	-webkit-border-radius: 4px;
-	font-size: inherit;
-	padding: 4px;
-	color: #444;
-	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-
-textarea { 
-	font-family: inherit; 
-	height: 120px; 
-	width: 90%; 
-	font-size: inherit; 
-	white-space: normal;
-}
-
-table { padding: 0px; border-collapse: 'collapse'}
-
-td { 
-	padding:0px; 
-	margin: 0px; 
-	vertical-align: top; 
-}
-
-p {
-	margin: 0px 0px 9px 0px;
-	line-height: 1.5em;
-}
-
-li {
-	line-height: 1.5em;
-}
-
-hr {
-  clear: both;
-  margin: 18px 0;
-  border: 0;
-  border-top: 1px solid #e5e5e5;
-  border-bottom: 1px solid #ffffff;
-}
-
-/* links */
-
-a:active { outline:none; }
-
-a {
-  color: #0088cc;
-  text-decoration: none;
-}
-a:hover {
-  color: #005580;
-  text-decoration: underline;
-}
-
-.link_type {
-	padding:2px;
-	color: #0088cc;
-	cursor: pointer;
-}
-
-.link_type:hover {
-	color: #005580;
-	text-decoration: underline;
-}
-
-:focus { -moz-outline-style:none; }
-
-table.simpletable { border-collapse: collapse; margin-bottom: 10px;}
-table.simpletable td {border: 1pt solid #000; vertical-align: top; padding: 2px; }
-
-div.fix_ff_cursor { overflow: auto; }
-
-/* --- Layout --- */
-
-div.comment { color: #444; }
-
-.small {
-	font-size: 12px;
-}
-
-.help {
-	margin-bottom: 3px;
-	color: #888;
-}
-
-div#body_div {
-	padding-right: 7px;
-	padding-top: 70px;
-	padding-bottom: 50px;
-	min-height: 400px;
-}
-
-.content {
-	margin: auto;
-	width: 900px;
-}
-
-.background-fade-in {
-	-webkit-transition: background 1s ease-in; /* property duration timing-function delay */
-    -moz-transition: background 1s ease-in;
-    -o-transition: background 1s ease-in;
-    transition: background 1s ease-in;
-}
-
-header .container {
-	width: 900px;
-	margin: auto;
-}
-
-@media (max-width: 1200px) {
-	header .container, .content {
-		width: 900px;
-	}
-}
-
-@media (min-width: 1200px) and (max-width: 1599px) {
-	header .container, .content {
-		width: 1100px;
-	}
-}
-
-@media (min-width: 1600px) {
-	header .container, .content {
-		width: 1100px;
-	}
-	div#body_div {
-		min-height: 900px;
-	}
-}
-
-div.no_script {
-	display: none;
-}
-
-div.loading_div {
-	background-color: #FFFFCC;
-	z-index: 1999;
-	right: 5px;
-	width: 90px;
-	display: none;
-	text-align: center;
-	padding: 2px;
-	border: 1px solid #FF4;
-}
-
-div.std-footer {
-	margin: 13px -15px;
-	border-top: 1px solid #AAA;
-	padding: 13px;
-}
-
-div.std-footer-item {
-	margin: 0px 13px 13px 0px;
-}
-
-.shadow {
-	-moz-box-shadow: 0px 2px 2px #888;
-	-webkit-box-shadow: 0px 2px 2px #888;
- 	box-shadow: 0px 2px 2px #888;
-}
-
-.round {
-	-webkit-border-radius: 5px;
-	-moz-border-radius: 5px;
-	border-radius: 5px;	
-}
-
-.layout_wrapper, .layout-wrapper {
-	-moz-box-shadow: 0px 0px 9px rgba(0,0,0,0.5);
-	-webkit-box-shadow: 0px 0px 9px rgba(0,0,0,0.5);
-	box-shadow: 0px 0px 9px rgba(0,0,0,0.5);
-	background-color: #fff;
-	padding: 15px;
-	-webkit-border-radius: 5px;
-	-moz-border-radius: 5px;
-	border-radius: 5px;	
-	overflow: hidden;
-}
-
-.layout-wrapper-appframe {
-	padding: 0px;
-}
-
-.layout-wrapper-background {
-	background-color: #fafafa !important;
-	padding: 0px;
-}
-
-.layout-main {
-	padding: 15px;
-	background-color: #fff;
-}
-
-.layout-main-section {
-	width: 71%;
-	float: left;
-	padding: 15px;
-	background-color: #FFF;
-	min-height: 600px;
-	-moz-box-shadow:    2px 0px 1px #ddd;
-	-webkit-box-shadow: 2px 0px 1px #ddd;
-	box-shadow:         2px 0px 1px #ddd;
-}
-
-.layout-side-section {
-	width: 22%;
-	/*float: right;*/
-	color: #606060; 
-	overflow-x: hidden;
-	padding: 15px;
-	min-height: 600px;
-}
-
-/* from bootstrap */
-.container {
-  margin-left: auto;
-  margin-right: auto;
-  zoom: 1;
-}
-.container:before, .container:after {
-  display: table;
-  content: "";
-  zoom: 1;
-}
-.container:after {
-  clear: both;
-}
-
-.well {
-  min-height: 20px;
-  padding: 19px;
-  margin-bottom: 20px;
-  background-color: #f5f5f5;
-  border: 1px solid #eee;
-  border: 1px solid rgba(0, 0, 0, 0.05);
-  -webkit-border-radius: 4px;
-  -moz-border-radius: 4px;
-  border-radius: 4px;
-  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
-  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
-  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
-}
-
-.avatar-small {
-	display: inline-block; 
-	width: 24px;
-	height: 20px;
-	vertical-align: middle;
-	overflow: hidden;
-	margin: 0px 3px;
-	border-radius: 3px;
-	-moz-border-radius: 3px;
-	-webkit-border-radius: 3px;
-}
-.avatar-small img {
-	width: 24px; 
-}
-
-.erpnext-logo {
-	position: fixed;
-	bottom: 5px;
-	left: 5px;
-	height: 30px;
-	width: 30px;
-	background: url('../images/erpnext-fade.png') no-repeat top left;
-}
-
-.markdown p {
-	font-size: 13px;
-}
-
-.markdown h1 {
-	margin-bottom: 9px;
-}
-
-.markdown h2 {
-	margin-bottom: 7px;
-}
-
-.markdown h3, .markdown h4 {
-	margin-bottom: 5px;
-}
-
-/*
- *	lib/css/legacy/messages.css
- */
-
-/* FLOATING MESSAGE */
-
-.btn-img { cursor: pointer; }
-
-div.fetching { color: #888; text-align:right; }
-
-.msgprint {
-	min-height: 60px; 
-	max-height: 500px;
-	padding: 9px;
-	color: #333;
-	overflow: auto;
-}
-
-div.notice {
-	postion: absolute;
-	background-color: #000;
-	-moz-border-radius: 5px; -webkit-border-radius: 5px;
-	opacity: 0.6;
-	right: 0;
-	top: 0;
-	margin-top: 8px;
-	z-index: -1;
-	padding: 8px;
-}
-
-/** help **/
-
-.info-box {
-    background-color: #F8F8F8;
-    border: 1px solid #CCCCCC;
-    border-radius: 3px 3px 3px 3px;
-    line-height: 1.6em;
-    overflow: auto;
-    padding: 6px 10px;
-	margin-bottom: 9px;
-}
-
-.help_box, .help-box {
-	background-color: #ffe;
-	padding: 9px 9px 9px 9px;
-	border: 1px dashed #fc7;
-	margin: 11px 0px;
-}
-
-.help-box, .help-box p, .help-box h1, .help-box h2, .help-box h3, .help-box h4 {
-	color: #643;
-}
-
-
-/*
- *	lib/css/legacy/dialog.css
- */
-/***** Dialogs *******/
-
-div.dialog_wrapper {
-	position: absolute;
-	width: 440px;
-	display: none;
-	z-index: 90;
-	background-color: #FFF;
-	box-shadow:1px 1px 8px #444;
-	-moz-box-shadow: 1px 1px 8px #444;
-	-webkit-box-shadow: 1px 1px 8px #444;
-	
-	border-radius: 5px;
-	-moz-border-radius: 5px;
-	-webkit-border-radius: 5px;
-	
-	overflow: hidden;
-}
-
-div.dialog_head {
-	height: 22px;
-	padding: 4px;
-	background-color: #222;
-	color: #FFF;
-}
-
-div.dialog_body {
-	padding: 8px 8px 16px;
-	border-radius: 5px;
-	-moz-border-radius: 5px;
-	-webkit-border-radius: 5px;	
-}
-
-div.dialog_back {
-	position: fixed;
-	display: none;
-	top: 0px;
-	left: 0px;
-	bottom: 0px;
-	right: 0px;
-	background-color: #aaa;
-	opacity: 0.6;
-	z-index: 50;
-	text-align: center;
-}
-
-div.dialog_message {
-	display: none;
-	position: absolute;
-	width: 250px;
-	font-size: 12px;
-	z-index: 91;
-	background-color:#FFF;
-	padding: 12px;
-	border: 1px solid #444;
-}
-
-div.dialog_row {
-	padding: 8px 8px 0px 8px;
-}
-
-div.dialog_row table {
-	width: 100%;
-}
-
-div.dialog_row table td {
-}
-
-div.dialog_row input[type="text"], div.dialog_row input[type="password"], div.dialog_row textarea, div.dialog_row select {
-	width: 80%;
-	font-size: 14px;
-}
-
-div.dialog_row table td textarea {
-	width: 80%;
-	height: 200px;
-	font-size: 12px;
-}
-
-
-/*
- *	lib/css/ui/common.css
- */
-.navbar-icon-home {
-	vertical-align: middle;
-	opacity: 0.4;
-	Filter:alpha(opacity=40); /* For IE8 and earlier */
-}
-
-.navbar-icon-home:hover,
-.navbar-icon-home:focus,
-.navbar-icon-home:active,
-.navbar-icon-home-hover{
-	opacity:1;
-	Filter:alpha(opacity=100); /* For IE8 and earlier */
-}
-
-
-/*
- *	lib/css/ui/fonts.css
- */
-@font-face {
-  font-family: 'Pontano Sans';
-  font-style: normal;
-  font-weight: 800;
-  src: url('fonts/pontanosans.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Droid Sans';
-  font-style: normal;
-  font-weight: normal;
-  src: local('Droid Sans'), local('DroidSans'), url('fonts/droidsans.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'PT Sans';
-  font-style: normal;
-  font-weight: normal;
-  src: local('PT Sans'), local('PTSans-Regular'), url('fonts/ptsans.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Open Sans';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Open Sans'), local('OpenSans'), url('fonts/opensans.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Lato';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Lato Regular'), local('Lato-Regular'), url('fonts/lato.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Cabin';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Cabin Regular'), local('Cabin-Regular'), url('fonts/cabin.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Pacifico';
-  font-style: normal;
-  font-weight: normal;
-  src: local('Pacifico Regular'), local('Pacifico-Regular'), url('fonts/pacifico.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Oleo Script';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Oleo Script'), local('OleoScript-Regular'), url('fonts/oleoscript.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Cookie';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Cookie-Regular'), url('fonts/cookie.woff') format('woff');
-}
-
-@font-face {
-  font-family: 'Marck Script';
-  font-style: normal;
-  font-weight: 400;
-  src: local('Marck Script'), local('MarckScript-Regular'), url('fonts/marckscript.woff') format('woff');
-}
-
-
-/*
- *	lib/css/ui/list.css
- */
-.hide {
-	display: none;
-}
-
-.list-filters {
-	margin: 7px 0px;
-}
-
-.wnlist .img-load {
-	display: none;
-	float: left;
-	margin-bottom: 8px;
-}
-
-/* list-row */
-div.list-row {
-	border-bottom: 1px solid #ddd;
-	padding: 5px 0px;
-}
-
-div.list-row .label {
-	margin-right: 4px;
-}
-
-div.list-row table {
-	table-layout: fixed;
-	border-collapse: collapse;
-	width: 100%;
-}
-
-div.list-row table td {
-	overflow: hidden;
-	/*padding-right: 3px;*/
-	padding: 0px 3px;
-	vertical-align: middle;
-	height: 24px;
-	max-height: 24px;
-	word-wrap: break-word;
-}
-
-div.paging-button {
-	text-align: center;
-	padding: 11px 0px;
-}
-
-div.show_filters {
-	display: none;
-}
-
-div.filter_list {
-	padding: 13px;
-}
-
-div.show_filters.well {
-	margin-top: 11px;
-	margin-bottom: 11px;
-}
-
-div.filter_list .run_btn {
-	text-align: right;
-}
-
-div.filter_list .add_filter {
-	margin: 3px 0px;
-}
-
-div.list_filter {
-	margin: 7px 0px;
-}
-
-div.list_filter input, div.list_filter select {
-	width: 130px;
-	margin-right: 7px;
-}
-
-/* bar */
-
-span.bar-outer {
-	display: inline-block;
-	margin: 0px 7px;
-	margin-top: 3px;
-	background-color: #fff;
-	border: 1px solid #aaa;
-	height: 10px;
-}
-
-span.bar-inner {
-	display: inline-block;
-	background-color: #bdf;
-	height: 100%;
-	margin-bottom: 2px;
-	float: left;
-}
-span.bar-complete {
-	background-color: #009900;
-}
-span.bar-empty {
-	background-color: #990000;
-}
-
-
-/* stats */
-
-div.stat-wrapper {
-	margin-bottom: 19px;
-}
-
-div.stat-grid {
-	margin-top: 9px;
-	overflow: hidden;
-}
-
-div.stat-label {
-	position: relative;
-	padding: 3px;
-	text-align: center;
-	font-size: 11px;
-}
-div.stat-label, div.stat-label a {
-	z-index: 5;
-}
-
-div.stat-item {
-	position: relative;
-	margin-bottom: 7px;
-	background-color: #fff;
-	height: 18px;
-	border: 1px solid #aaa;
-	border-radius: 9px;
-	-webkit-border-radius: 9px;
-	-moz-border-radius: 9px;
-	overflow: hidden;
-}
-
-div.stat-bar {
-	position: absolute;
-	left: 0px;
-	height: 100%;
-	z-index: 0;
-	/* So that this div is also curved like the enclosing one */
-	border-radius: 9px;
-	-webkit-border-radius: 9px;
-	-moz-border-radius: 9px;
-
-	background: #e0ff84; /* Old browsers */
-	background: -moz-linear-gradient(top,  #e0ff84 0%, #a4e567 100%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e0ff84), color-stop(100%,#a4e567)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top,  #e0ff84 0%,#a4e567 100%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #e0ff84 0%,#a4e567 100%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #e0ff84 0%,#a4e567 100%); /* IE10+ */
-	background: linear-gradient(top,  #e0ff84 0%,#a4e567 100%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e0ff84', endColorstr='#a4e567',GradientType=0 ); /* IE6-9 */
-}
-
-/*
- *	lib/css/ui/views.css
- */
-
-.breadcrumb-area, .breadcrumb-area span {
-	vertical-align: middle;
-}
-
-div.appframe-titlebar {
-	padding: 6px;
-	background: #eeeeee; /* Old browsers */
-	background: -moz-linear-gradient(top,  #eeeeee 0%, #cccccc 100%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eeeeee), color-stop(100%,#cccccc)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* IE10+ */
-	background: linear-gradient(top,  #eeeeee 0%,#cccccc 100%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#cccccc',GradientType=0 ); /* IE6-9 */
-	border-bottom: 1px solid #aaa;
-	min-height: 1.2em;
-	border-radius: 5px 5px 0px 0px;
-	-webkit-border-radius: 5px 5px 0px 0px;
-	-moz-border-radius: 5px 5px 0px 0px;
-
-	text-shadow: 0px 1px 1px #fff;
-	color: #555;
-}
-
-span.appframe-title {
-	font-size: 160%;
-	font-weight: bold;
-}
-
-div.appframe-toolbar {
-	padding: 4px;
-	background: #eeeeee;
-	border-top: 1px solid #f8f8f8;
-	border-bottom: 1px solid #ccc;
-}
-
-div.appframe-toolbar .label {
-	margin: 2px 2px;
-}
-
-div.appframe-toolbar input, div.appframe-toolbar select {
-	font-size: 80%;
-	margin: 2px 2px;
-}
-div.appframe-toolbar button {
-	padding: 3px 7px !important;
-}
-
-
-
-/*
- *	erpnext/startup/startup.css
- */
-h1, h2, h3, h4, h5 {
-	font-family: Arial, Helvetica, sans-serif;
-	margin-top: 0.2em;
-}
-
-body {
-	font-family: Arial, Helvetica, sans-serif;
-	font-size: 13px;
-}
-
-span, div, td, input, textarea, button, select {
-	font-family: inherit;
-}
-
-.small {
-	font-size: 11.5px;
-}
-
-.erpnext-footer {
-	margin: 11px auto;
-	text-align: center;
-}
-
-.navbar-new-comments {
-	margin: -3px 0px;
-	padding: 2px;
-	min-width: 20px;
-	text-align: center;
-	display: inline-block;
-	border-radius: 2px;
-	color: #999999;
-	background-color: #333131;
-}
-
-.navbar-new-comments:hover,
-.navbar-new-comments:active,
-.navbar-new-comments:focus {
-	color: #fff;
-}
-
-.navbar-new-comments-true {
-	color: #fff;
-	background-color: #B00D07;
-}
-
-/*extra size menus for recent*/
-.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
-	min-width: 160px !important;
-	max-width: 260px !important;
-}
-
-.expiry-info {
-	margin-top: 40px;
-	margin-bottom: -40px;
-	text-align: center;
-	background-color: rgb(255, 255, 204);
-	padding: 7px;
-	z-index: 1;
-}
-
-.show-all-reports {
-	margin-top: 5px;
-	font-size: 11px;
-}
-
-/*
- *	erpnext/website/css/website.css
- */
-header .container, .content {
-	width: 900px;
-}
-
-div#body_div {
-	padding-top: 80px;
-	min-height: 400px;
-}
-
-p, li {
-	line-height: 1.6em;
-}
-
-pre {
-    background-color: #F8F8F8;
-    border: 1px solid #CCCCCC;
-    border-radius: 3px 3px 3px 3px;
-    font-size: 13px;
-    line-height: 19px;
-    overflow: auto;
-    padding: 6px 10px;
-	margin-bottom: 9px;
-}
-
-.web-head-section {
-	margin-bottom: 20px
-}
-
-.web-main-section {
-	width: 65%;
-	float: left;
-	margin-bottom: 20px;
-}
-
-.web-side-section {
-	width: 30%;
-	float: right;
-	margin-bottom: 20px;
-	margin-right: 15px;
-	color: #606060;
-	overflow-x: hidden;
-	font-size: 90%;
-}
-
-.web-page-status {
-	padding: 7px;
-	margin-top: -20px;
-	color: #777;
-	clear: both;
-	text-align: right;
-}
-
-.web-page-status a,
-.web-page-status a:hover,
-.web-page-status a:visited {
-	padding: 2px;
-	background-color: #777;
-	color: #FFF;
-	text-decoration: none;
-}
-
-.web-page-status a:hover {
-	background-color: #444;
-}
-
-
-footer {
-
-}
-
-.web-footer-menu {
-	margin-bottom: 7px;
-}
-
-.web-footer-menu ul {
-	list-style: none;
-	margin: 0px;
-	padding: 0px;
-}
-
-.web-footer-menu ul li {
-	display: inline;
-	padding: 2px 15px;
-	border-right: 1px solid #999;
-}
-
-.web-footer-menu ul li:first-child {
-	padding-left: 0px;
-}
-
-.web-footer-menu ul li:last-child {
-	border-right: 0px solid #777 !important;
-}
-
-.web-footer-powered {
-	color: #888;
-	float: right;
-	margin-top: -12px;
-}
-
-/* slide view */
-
-.next-slide {
-	margin: 0px -27px 100px -27px;
-	background: #ffffff; /* Old browsers */
-	background: -moz-linear-gradient(top,  #eeeeee 0%, #fff 100%); /* FF3.6+ */
-	background: -webkit-linear-gradient(top,  #eeeeee 0%, #fff 100%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #eeeeee 0%, #fff 100%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #eeeeee 0%, #fff 100%); /* IE10+ */
-	background: linear-gradient(top,  #eeeeee 0%, #fff 100%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#fff',GradientType=0 ); /* IE6-9 */
-	height: 36px;
-}
-
-.slide-shadow {
-	background: #eeeeee; /* Old browsers */
-	background: -moz-linear-gradient(top,  #bababa 0%,#eeeeee 100%); /* FF3.6+ */
-	background: -webkit-linear-gradient(top,  #bababa 0%,#eeeeee 100%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top,  #bababa 0%,#eeeeee 100%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top,  #bababa 0%,#eeeeee 100%); /* IE10+ */
-	background: linear-gradient(top,  #bababa 0%,#eeeeee 100%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bababa', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */	
-	height: 3px;
-	margin: 100px -27px 0px -27px;
-	border-top: 1px solid #bababa;
-}
-
-.two-column {
-	width: 50%;
-	float: left;
-}
-
-.clear {
-	clear: both;
-}
-
-/* */
diff --git a/public/css/fields.css b/public/css/fields.css
deleted file mode 100644
index db9f634..0000000
--- a/public/css/fields.css
+++ /dev/null
@@ -1,84 +0,0 @@
-
-/*
- *	lib/css/legacy/fields.css
- */
-/* Documents */
-
-.frm_field_table {
-        width: 100%;
-        border-collapse: collapse;
-}
-
-.datalabelcell { 
-        padding: 2px 0px; 
-        width: 160px; 
-        vertical-align: top; 
-}
-.datainputcell { padding: 2px 0px; }
-
-
-.help ol {
-	padding-left: 19px;
-}
-
-.field_description_top {
-	margin-bottom: 3px;
-}
-
-.input_area input, select, textarea { 
-	font-size: 14px;
-	padding: 2px;
-
-	-webkit-border-radius: 3px;
-	-moz-border-radius: 3px;
-	border-radius: 3px;
-}
-
-.input_area input { 
-	width: 80%; 
-	margin: 0px; 
-}
-.input_area select { 
-	width: 80%; 
-}
-.input_area textarea { 
-	width: 90%; 
-}
-
-.disp_area { 
-	width: 80%; 
-	padding: 2px 0px; 
-	font-size: 12px; 
-	background-color: #eee;
-	padding: 2px;
-	border: 1px solid #ddd;
-	
-	-webkit-border-radius: 3px;
-	-moz-border-radius: 3px;
-	border-radius: 3px;	
-}
-.disp_area_no_val { 
-	min-height: 14px; 
-}
-
-.no_img {
-	padding: 40px;
-	width: 100px;
-	height: 20px;
-	color: #888;
-	text-align: center;
-	border: 1px solid #AAA;
-}
-
-.input-mandatory {
-	font-size: 14px !important;
-	font-weight: bold;
-}
-
-.field-to-update {
-	background-color:#FEE;
-}
-
-.field-has-error {
-	border: 2px solid #C00;
-}
diff --git a/public/css/fonts/cabin.woff b/public/css/fonts/cabin.woff
deleted file mode 100644
index 6f24a8a..0000000
--- a/public/css/fonts/cabin.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/cookie.woff b/public/css/fonts/cookie.woff
deleted file mode 100644
index 454762d..0000000
--- a/public/css/fonts/cookie.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/droidsans.woff b/public/css/fonts/droidsans.woff
deleted file mode 100644
index 3807cd6..0000000
--- a/public/css/fonts/droidsans.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/lato.woff b/public/css/fonts/lato.woff
deleted file mode 100644
index ad1a467..0000000
--- a/public/css/fonts/lato.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/marckscript.woff b/public/css/fonts/marckscript.woff
deleted file mode 100644
index e5f1f0b..0000000
--- a/public/css/fonts/marckscript.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/oleoscript.woff b/public/css/fonts/oleoscript.woff
deleted file mode 100644
index feb3f96..0000000
--- a/public/css/fonts/oleoscript.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/opensans.woff b/public/css/fonts/opensans.woff
deleted file mode 100644
index 58e6cb3..0000000
--- a/public/css/fonts/opensans.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/pacifico.woff b/public/css/fonts/pacifico.woff
deleted file mode 100644
index 373c381..0000000
--- a/public/css/fonts/pacifico.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/pontanosans.woff b/public/css/fonts/pontanosans.woff
deleted file mode 100644
index d728f0c..0000000
--- a/public/css/fonts/pontanosans.woff
+++ /dev/null
Binary files differ
diff --git a/public/css/fonts/ptsans.woff b/public/css/fonts/ptsans.woff
deleted file mode 100644
index 56c598d..0000000
--- a/public/css/fonts/ptsans.woff
+++ /dev/null
Binary files differ
diff --git a/public/js/app/account_tree_grid.js b/public/js/account_tree_grid.js
similarity index 100%
rename from public/js/app/account_tree_grid.js
rename to public/js/account_tree_grid.js
diff --git a/public/js/all-app.js b/public/js/all-app.js
deleted file mode 100644
index c43d8f2..0000000
--- a/public/js/all-app.js
+++ /dev/null
@@ -1,2401 +0,0 @@
-
-/*
- *	lib/js/lib/jquery/jquery.ui.core.js
- */
-;/*!
- * jQuery UI 1.8.18
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI
- */
-(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e<d.length;e++)a.options[d[e][0]]&&d[e][1].apply(a.element,c)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(b,c){if(a(b).css("overflow")==="hidden")return!1;var d=c&&c==="left"?"scrollLeft":"scrollTop",e=!1;if(b[d]>0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a<b+c},isOver:function(b,c,d,e,f,g){return a.ui.isOverAxis(b,d,f)&&a.ui.isOverAxis(c,e,g)}}))})(jQuery);
-/*!
- * jQuery UI Widget 1.8.18
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Widget
- */
-(function(a,b){if(a.cleanData){var c=a.cleanData;a.cleanData=function(b){for(var d=0,e;(e=b[d])!=null;d++)try{a(e).triggerHandler("remove")}catch(f){}c(b)}}else{var d=a.fn.remove;a.fn.remove=function(b,c){return this.each(function(){c||(!b||a.filter(b,[this]).length)&&a("*",this).add([this]).each(function(){try{a(this).triggerHandler("remove")}catch(b){}});return d.call(a(this),b,c)})}}a.widget=function(b,c,d){var e=b.split(".")[0],f;b=b.split(".")[1],f=e+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][f]=function(c){return!!a.data(c,b)},a[e]=a[e]||{},a[e][b]=function(a,b){arguments.length&&this._createWidget(a,b)};var g=new c;g.options=a.extend(!0,{},g.options),a[e][b].prototype=a.extend(!0,g,{namespace:e,widgetName:b,widgetEventPrefix:a[e][b].prototype.widgetEventPrefix||b,widgetBaseClass:f},d),a.widget.bridge(b,a[e][b])},a.widget.bridge=function(c,d){a.fn[c]=function(e){var f=typeof e=="string",g=Array.prototype.slice.call(arguments,1),h=this;e=!f&&g.length?a.extend.apply(null,[!0,e].concat(g)):e;if(f&&e.charAt(0)==="_")return h;f?this.each(function(){var d=a.data(this,c),f=d&&a.isFunction(d[e])?d[e].apply(d,g):d;if(f!==d&&f!==b){h=f;return!1}}):this.each(function(){var b=a.data(this,c);b?b.option(e||{})._init():a.data(this,c,new d(e,this))});return h}},a.Widget=function(a,b){arguments.length&&this._createWidget(a,b)},a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:!1},_createWidget:function(b,c){a.data(c,this.widgetName,this),this.element=a(c),this.options=a.extend(!0,{},this.options,this._getCreateOptions(),b);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()}),this._create(),this._trigger("create"),this._init()},_getCreateOptions:function(){return a.metadata&&a.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName),this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled "+"ui-state-disabled")},widget:function(){return this.element},option:function(c,d){var e=c;if(arguments.length===0)return a.extend({},this.options);if(typeof c=="string"){if(d===b)return this.options[c];e={},e[c]=d}this._setOptions(e);return this},_setOptions:function(b){var c=this;a.each(b,function(a,b){c._setOption(a,b)});return this},_setOption:function(a,b){this.options[a]=b,a==="disabled"&&this.widget()[b?"addClass":"removeClass"](this.widgetBaseClass+"-disabled"+" "+"ui-state-disabled").attr("aria-disabled",b);return this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_trigger:function(b,c,d){var e,f,g=this.options[b];d=d||{},c=a.Event(c),c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase(),c.target=this.element[0],f=c.originalEvent;if(f)for(e in f)e in c||(c[e]=f[e]);this.element.trigger(c,d);return!(a.isFunction(g)&&g.call(this.element[0],c,d)===!1||c.isDefaultPrevented())}}})(jQuery);
-/*!
- * jQuery UI Mouse 1.8.18
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Mouse
- *
- * Depends:
- *	jquery.ui.widget.js
- */
-(function(a,b){var c=!1;a(document).mouseup(function(a){c=!1}),a.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var b=this;this.element.bind("mousedown."+this.widgetName,function(a){return b._mouseDown(a)}).bind("click."+this.widgetName,function(c){if(!0===a.data(c.target,b.widgetName+".preventClickEvent")){a.removeData(c.target,b.widgetName+".preventClickEvent"),c.stopImmediatePropagation();return!1}}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(b){if(!c){this._mouseStarted&&this._mouseUp(b),this._mouseDownEvent=b;var d=this,e=b.which==1,f=typeof this.options.cancel=="string"&&b.target.nodeName?a(b.target).closest(this.options.cancel).length:!1;if(!e||f||!this._mouseCapture(b))return!0;this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){d.mouseDelayMet=!0},this.options.delay));if(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)){this._mouseStarted=this._mouseStart(b)!==!1;if(!this._mouseStarted){b.preventDefault();return!0}}!0===a.data(b.target,this.widgetName+".preventClickEvent")&&a.removeData(b.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(a){return d._mouseMove(a)},this._mouseUpDelegate=function(a){return d._mouseUp(a)},a(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),b.preventDefault(),c=!0;return!0}},_mouseMove:function(b){if(a.browser.msie&&!(document.documentMode>=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery);
-/*
- * jQuery UI Position 1.8.18
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Position
- */
-(function(a,b){a.ui=a.ui||{};var c=/left|center|right/,d=/top|center|bottom/,e="center",f={},g=a.fn.position,h=a.fn.offset;a.fn.position=function(b){if(!b||!b.of)return g.apply(this,arguments);b=a.extend({},b);var h=a(b.of),i=h[0],j=(b.collision||"flip").split(" "),k=b.offset?b.offset.split(" "):[0,0],l,m,n;i.nodeType===9?(l=h.width(),m=h.height(),n={top:0,left:0}):i.setTimeout?(l=h.width(),m=h.height(),n={top:h.scrollTop(),left:h.scrollLeft()}):i.preventDefault?(b.at="left top",l=m=0,n={top:b.of.pageY,left:b.of.pageX}):(l=h.outerWidth(),m=h.outerHeight(),n=h.offset()),a.each(["my","at"],function(){var a=(b[this]||"").split(" ");a.length===1&&(a=c.test(a[0])?a.concat([e]):d.test(a[0])?[e].concat(a):[e,e]),a[0]=c.test(a[0])?a[0]:e,a[1]=d.test(a[1])?a[1]:e,b[this]=a}),j.length===1&&(j[1]=j[0]),k[0]=parseInt(k[0],10)||0,k.length===1&&(k[1]=k[0]),k[1]=parseInt(k[1],10)||0,b.at[0]==="right"?n.left+=l:b.at[0]===e&&(n.left+=l/2),b.at[1]==="bottom"?n.top+=m:b.at[1]===e&&(n.top+=m/2),n.left+=k[0],n.top+=k[1];return this.each(function(){var c=a(this),d=c.outerWidth(),g=c.outerHeight(),h=parseInt(a.curCSS(this,"marginLeft",!0))||0,i=parseInt(a.curCSS(this,"marginTop",!0))||0,o=d+h+(parseInt(a.curCSS(this,"marginRight",!0))||0),p=g+i+(parseInt(a.curCSS(this,"marginBottom",!0))||0),q=a.extend({},n),r;b.my[0]==="right"?q.left-=d:b.my[0]===e&&(q.left-=d/2),b.my[1]==="bottom"?q.top-=g:b.my[1]===e&&(q.top-=g/2),f.fractions||(q.left=Math.round(q.left),q.top=Math.round(q.top)),r={left:q.left-h,top:q.top-i},a.each(["left","top"],function(c,e){a.ui.position[j[c]]&&a.ui.position[j[c]][e](q,{targetWidth:l,targetHeight:m,elemWidth:d,elemHeight:g,collisionPosition:r,collisionWidth:o,collisionHeight:p,offset:k,my:b.my,at:b.at})}),a.fn.bgiframe&&c.bgiframe(),c.offset(a.extend(q,{using:b.using}))})},a.ui.position={fit:{left:function(b,c){var d=a(window),e=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft();b.left=e>0?b.left-e:Math.max(b.left-c.collisionPosition.left,b.left)},top:function(b,c){var d=a(window),e=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop();b.top=e>0?b.top-e:Math.max(b.top-c.collisionPosition.top,b.top)}},flip:{left:function(b,c){if(c.at[0]!==e){var d=a(window),f=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft(),g=c.my[0]==="left"?-c.elemWidth:c.my[0]==="right"?c.elemWidth:0,h=c.at[0]==="left"?c.targetWidth:-c.targetWidth,i=-2*c.offset[0];b.left+=c.collisionPosition.left<0?g+h+i:f>0?g+h+i:0}},top:function(b,c){if(c.at[1]!==e){var d=a(window),f=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop(),g=c.my[1]==="top"?-c.elemHeight:c.my[1]==="bottom"?c.elemHeight:0,h=c.at[1]==="top"?c.targetHeight:-c.targetHeight,i=-2*c.offset[1];b.top+=c.collisionPosition.top<0?g+h+i:f>0?g+h+i:0}}}},a.offset.setOffset||(a.offset.setOffset=function(b,c){/static/.test(a.curCSS(b,"position"))&&(b.style.position="relative");var d=a(b),e=d.offset(),f=parseInt(a.curCSS(b,"top",!0),10)||0,g=parseInt(a.curCSS(b,"left",!0),10)||0,h={top:c.top-e.top+f,left:c.left-e.left+g};"using"in c?c.using.call(b,h):d.css(h)},a.fn.offset=function(b){var c=this[0];if(!c||!c.ownerDocument)return null;if(b)return this.each(function(){a.offset.setOffset(this,b)});return h.call(this)}),function(){var b=document.getElementsByTagName("body")[0],c=document.createElement("div"),d,e,g,h,i;d=document.createElement(b?"div":"body"),g={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},b&&a.extend(g,{position:"absolute",left:"-1000px",top:"-1000px"});for(var j in g)d.style[j]=g[j];d.appendChild(c),e=b||document.documentElement,e.insertBefore(d,e.firstChild),c.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",h=a(c).offset(function(a,b){return b}).offset(),d.innerHTML="",e.removeChild(d),i=h.top+h.left+(b?2e3:0),f.fractions=i>21&&i<22}()})(jQuery);
-
-
-/*
- *	lib/js/lib/jquery/jquery.ui.datepicker.js
- */
-/* jQuery UI Datepicker 1.8.18
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Datepicker
- *
- * Depends:
- *	jquery.ui.core.js
- */(function($,undefined){function isArray(a){return a&&($.browser.safari&&typeof a=="object"&&a.length||a.constructor&&a.constructor.toString().match(/\Array\(\)/))}function extendRemove(a,b){$.extend(a,b);for(var c in b)if(b[c]==null||b[c]==undefined)a[c]=b[c];return a}function bindHover(a){var b="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return a.bind("mouseout",function(a){var c=$(a.target).closest(b);!c.length||c.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(c){var d=$(c.target).closest(b);!$.datepicker._isDisabledDatepicker(instActive.inline?a.parent()[0]:instActive.input[0])&&!!d.length&&(d.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),d.addClass("ui-state-hover"),d.hasClass("ui-datepicker-prev")&&d.addClass("ui-datepicker-prev-hover"),d.hasClass("ui-datepicker-next")&&d.addClass("ui-datepicker-next-hover"))})}function Datepicker(){this.debug=!1,this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},$.extend(this._defaults,this.regional[""]),this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}$.extend($.ui,{datepicker:{version:"1.8.18"}});var PROP_NAME="datepicker",dpuuid=(new Date).getTime(),instActive;$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){extendRemove(this._defaults,a||{});return this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline=nodeName=="div"||nodeName=="span";target.id||(this.uuid+=1,target.id="dp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),nodeName=="input"?this._connectDatepicker(target,inst):inline&&this._inlineDatepicker(target,inst)},_newInst:function(a,b){var c=a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:c,input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:b?bindHover($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')):this.dpDiv}},_connectDatepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]);c.hasClass(this.markerClassName)||(this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),this._autoSize(b),$.data(a,PROP_NAME,b),b.settings.disabled&&this._disableDatepicker(a))},_attachments:function(a,b){var c=this._get(b,"appendText"),d=this._get(b,"isRTL");b.append&&b.append.remove(),c&&(b.append=$('<span class="'+this._appendClass+'">'+c+"</span>"),a[d?"before":"after"](b.append)),a.unbind("focus",this._showDatepicker),b.trigger&&b.trigger.remove();var e=this._get(b,"showOn");(e=="focus"||e=="both")&&a.focus(this._showDatepicker);if(e=="button"||e=="both"){var f=this._get(b,"buttonText"),g=this._get(b,"buttonImage");b.trigger=$(this._get(b,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:g,alt:f,title:f}):$('<button type="button"></button>').addClass(this._triggerClass).html(g==""?f:$("<img/>").attr({src:g,alt:f,title:f}))),a[d?"before":"after"](b.trigger),b.trigger.click(function(){$.datepicker._datepickerShowing&&$.datepicker._lastInput==a[0]?$.datepicker._hideDatepicker():$.datepicker._datepickerShowing&&$.datepicker._lastInput!=a[0]?($.datepicker._hideDatepicker(),$.datepicker._showDatepicker(a[0])):$.datepicker._showDatepicker(a[0]);return!1})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var d=function(a){var b=0,c=0;for(var d=0;d<a.length;d++)a[d].length>b&&(b=a[d].length,c=d);return c};b.setMonth(d(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort"))),b.setDate(d(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,b){var c=$(a);c.hasClass(this.markerClassName)||(c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b),this._setDate(b,this._getDefaultDate(b),!0),this._updateDatepicker(b),this._updateAlternate(b),b.settings.disabled&&this._disableDatepicker(a),b.dpDiv.css("display","block"))},_dialogDatepicker:function(a,b,c,d,e){var f=this._dialogInst;if(!f){this.uuid+=1;var g="dp"+this.uuid;this._dialogInput=$('<input type="text" id="'+g+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>'),this._dialogInput.keydown(this._doKeyDown),$("body").append(this._dialogInput),f=this._dialogInst=this._newInst(this._dialogInput,!1),f.settings={},$.data(this._dialogInput[0],PROP_NAME,f)}extendRemove(f.settings,d||{}),b=b&&b.constructor==Date?this._formatDate(f,b):b,this._dialogInput.val(b),this._pos=e?e.length?e:[e.pageX,e.pageY]:null;if(!this._pos){var h=document.documentElement.clientWidth,i=document.documentElement.clientHeight,j=document.documentElement.scrollLeft||document.body.scrollLeft,k=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[h/2-100+j,i/2-150+k]}this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),f.settings.onSelect=c,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),$.blockUI&&$.blockUI(this.dpDiv),$.data(this._dialogInput[0],PROP_NAME,f);return this},_destroyDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!!b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();$.removeData(a,PROP_NAME),d=="input"?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):(d=="div"||d=="span")&&b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!!b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!1,c.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().removeClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b})}},_disableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!!b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!0,c.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().addClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b}),this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return!1;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return!0;return!1},_getInst:function(a){try{return $.data(a,PROP_NAME)}catch(b){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(a,b,c){var d=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?$.extend({},$.datepicker._defaults):d?b=="all"?$.extend({},d.settings):this._get(d,b):null;var e=b||{};typeof b=="string"&&(e={},e[b]=c);if(d){this._curInst==d&&this._hideDatepicker();var f=this._getDateDatepicker(a,!0),g=this._getMinMaxDate(d,"min"),h=this._getMinMaxDate(d,"max");extendRemove(d.settings,e),g!==null&&e.dateFormat!==undefined&&e.minDate===undefined&&(d.settings.minDate=this._formatDate(d,g)),h!==null&&e.dateFormat!==undefined&&e.maxDate===undefined&&(d.settings.maxDate=this._formatDate(d,h)),this._attachments($(a),d),this._autoSize(d),this._setDate(d,f),this._updateAlternate(d),this._updateDatepicker(d)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){var b=this._getInst(a);b&&this._updateDatepicker(b)},_setDateDatepicker:function(a,b){var c=this._getInst(a);c&&(this._setDate(c,b),this._updateDatepicker(c),this._updateAlternate(c))},_getDateDatepicker:function(a,b){var c=this._getInst(a);c&&!c.inline&&this._setDateFromField(c,b);return c?this._getDate(c):null},_doKeyDown:function(a){var b=$.datepicker._getInst(a.target),c=!0,d=b.dpDiv.is(".ui-datepicker-rtl");b._keyEvent=!0;if($.datepicker._datepickerShowing)switch(a.keyCode){case 9:$.datepicker._hideDatepicker(),c=!1;break;case 13:var e=$("td."+$.datepicker._dayOverClass+":not(."+$.datepicker._currentClass+")",b.dpDiv);e[0]&&$.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,e[0]);var f=$.datepicker._get(b,"onSelect");if(f){var g=$.datepicker._formatDate(b);f.apply(b.input?b.input[0]:null,[g,b])}else $.datepicker._hideDatepicker();return!1;case 27:$.datepicker._hideDatepicker();break;case 33:$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 34:$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 35:(a.ctrlKey||a.metaKey)&&$.datepicker._clearDate(a.target),c=a.ctrlKey||a.metaKey;break;case 36:(a.ctrlKey||a.metaKey)&&$.datepicker._gotoToday(a.target),c=a.ctrlKey||a.metaKey;break;case 37:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?1:-1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 38:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,-7,"D"),c=a.ctrlKey||a.metaKey;break;case 39:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?-1:1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 40:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,7,"D"),c=a.ctrlKey||a.metaKey;break;default:c=!1}else a.keyCode==36&&a.ctrlKey?$.datepicker._showDatepicker(this):c=!1;c&&(a.preventDefault(),a.stopPropagation())},_doKeyPress:function(a){var b=$.datepicker._getInst(a.target);if($.datepicker._get(b,"constrainInput")){var c=$.datepicker._possibleChars($.datepicker._get(b,"dateFormat")),d=String.fromCharCode(a.charCode==undefined?a.keyCode:a.charCode);return a.ctrlKey||a.metaKey||d<" "||!c||c.indexOf(d)>-1}},_doKeyUp:function(a){var b=$.datepicker._getInst(a.target);if(b.input.val()!=b.lastVal)try{var c=$.datepicker.parseDate($.datepicker._get(b,"dateFormat"),b.input?b.input.val():null,$.datepicker._getFormatConfig(b));c&&($.datepicker._setDateFromField(b),$.datepicker._updateAlternate(b),$.datepicker._updateDatepicker(b))}catch(a){$.datepicker.log(a)}return!0},_showDatepicker:function(a){a=a.target||a,a.nodeName.toLowerCase()!="input"&&(a=$("input",a.parentNode)[0]);if(!$.datepicker._isDisabledDatepicker(a)&&$.datepicker._lastInput!=a){var b=$.datepicker._getInst(a);$.datepicker._curInst&&$.datepicker._curInst!=b&&($.datepicker._curInst.dpDiv.stop(!0,!0),b&&$.datepicker._datepickerShowing&&$.datepicker._hideDatepicker($.datepicker._curInst.input[0]));var c=$.datepicker._get(b,"beforeShow"),d=c?c.apply(a,[a,b]):{};if(d===!1)return;extendRemove(b.settings,d),b.lastVal=null,$.datepicker._lastInput=a,$.datepicker._setDateFromField(b),$.datepicker._inDialog&&(a.value=""),$.datepicker._pos||($.datepicker._pos=$.datepicker._findPos(a),$.datepicker._pos[1]+=a.offsetHeight);var e=!1;$(a).parents().each(function(){e|=$(this).css("position")=="fixed";return!e}),e&&$.browser.opera&&($.datepicker._pos[0]-=document.documentElement.scrollLeft,$.datepicker._pos[1]-=document.documentElement.scrollTop);var f={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null,b.dpDiv.empty(),b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.datepicker._updateDatepicker(b),f=$.datepicker._checkOffset(b,f,e),b.dpDiv.css({position:$.datepicker._inDialog&&$.blockUI?"static":e?"fixed":"absolute",display:"none",left:f.left+"px",top:f.top+"px"});if(!b.inline){var g=$.datepicker._get(b,"showAnim"),h=$.datepicker._get(b,"duration"),i=function(){var a=b.dpDiv.find("iframe.ui-datepicker-cover");if(!!a.length){var c=$.datepicker._getBorders(b.dpDiv);a.css({left:-c[0],top:-c[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex($(a).zIndex()+1),$.datepicker._datepickerShowing=!0,$.effects&&$.effects[g]?b.dpDiv.show(g,$.datepicker._get(b,"showOptions"),h,i):b.dpDiv[g||"show"](g?h:null,i),(!g||!h)&&i(),b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus(),$.datepicker._curInst=b}}},_updateDatepicker:function(a){var b=this;b.maxRows=4;var c=$.datepicker._getBorders(a.dpDiv);instActive=a,a.dpDiv.empty().append(this._generateHTML(a));var d=a.dpDiv.find("iframe.ui-datepicker-cover");!d.length||d.css({left:-c[0],top:-c[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()}),a.dpDiv.find("."+this._dayOverClass+" a").mouseover();var e=this._getNumberOfMonths(a),f=e[1],g=17;a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),f>1&&a.dpDiv.addClass("ui-datepicker-multi-"+f).css("width",g*f+"em"),a.dpDiv[(e[0]!=1||e[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi"),a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),a==$.datepicker._curInst&&$.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var h=a.yearshtml;setTimeout(function(){h===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml),h=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(a){return{thin:1,medium:2,thick:3}[a]||a};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var d=a.dpDiv.outerWidth(),e=a.dpDiv.outerHeight(),f=a.input?a.input.outerWidth():0,g=a.input?a.input.outerHeight():0,h=document.documentElement.clientWidth+$(document).scrollLeft(),i=document.documentElement.clientHeight+$(document).scrollTop();b.left-=this._get(a,"isRTL")?d-f:0,b.left-=c&&b.left==a.input.offset().left?$(document).scrollLeft():0,b.top-=c&&b.top==a.input.offset().top+g?$(document).scrollTop():0,b.left-=Math.min(b.left,b.left+d>h&&h>d?Math.abs(b.left+d-h):0),b.top-=Math.min(b.top,b.top+e>i&&i>e?Math.abs(e+g):0);return b},_findPos:function(a){var b=this._getInst(a),c=this._get(b,"isRTL");while(a&&(a.type=="hidden"||a.nodeType!=1||$.expr.filters.hidden(a)))a=a[c?"previousSibling":"nextSibling"];var d=$(a).offset();return[d.left,d.top]},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=$.data(a,PROP_NAME))&&this._datepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=this,f=function(){$.datepicker._tidyDialog(b),e._curInst=null};$.effects&&$.effects[c]?b.dpDiv.hide(c,$.datepicker._get(b,"showOptions"),d,f):b.dpDiv[c=="slideDown"?"slideUp":c=="fadeIn"?"fadeOut":"hide"](c?d:null,f),c||f(),this._datepickerShowing=!1;var g=this._get(b,"onClose");g&&g.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.dpDiv))),this._inDialog=!1}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(a){if(!!$.datepicker._curInst){var b=$(a.target),c=$.datepicker._getInst(b[0]);(b[0].id!=$.datepicker._mainDivId&&b.parents("#"+$.datepicker._mainDivId).length==0&&!b.hasClass($.datepicker.markerClassName)&&!b.closest("."+$.datepicker._triggerClass).length&&$.datepicker._datepickerShowing&&(!$.datepicker._inDialog||!$.blockUI)||b.hasClass($.datepicker.markerClassName)&&$.datepicker._curInst!=c)&&$.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){var d=$(a),e=this._getInst(d[0]);this._isDisabledDatepicker(d[0])||(this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):0),c),this._updateDatepicker(e))},_gotoToday:function(a){var b=$(a),c=this._getInst(b[0]);if(this._get(c,"gotoCurrent")&&c.currentDay)c.selectedDay=c.currentDay,c.drawMonth=c.selectedMonth=c.currentMonth,c.drawYear=c.selectedYear=c.currentYear;else{var d=new Date;c.selectedDay=d.getDate(),c.drawMonth=c.selectedMonth=d.getMonth(),c.drawYear=c.selectedYear=d.getFullYear()}this._notifyChange(c),this._adjustDate(b)},_selectMonthYear:function(a,b,c){var d=$(a),e=this._getInst(d[0]);e["selected"+(c=="M"?"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10),this._notifyChange(e),this._adjustDate(d)},_selectDay:function(a,b,c,d){var e=$(a);if(!$(d).hasClass(this._unselectableClass)&&!this._isDisabledDatepicker(e[0])){var f=this._getInst(e[0]);f.selectedDay=f.currentDay=$("a",d).html(),f.selectedMonth=f.currentMonth=b,f.selectedYear=f.currentYear=c,this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))}},_clearDate:function(a){var b=$(a),c=this._getInst(b[0]);this._selectDate(b,"")},_selectDate:function(a,b){var c=$(a),d=this._getInst(c[0]);b=b!=null?b:this._formatDate(d),d.input&&d.input.val(b),this._updateAlternate(d);var e=this._get(d,"onSelect");e?e.apply(d.input?d.input[0]:null,[b,d]):d.input&&d.input.trigger("change"),d.inline?this._updateDatepicker(d):(this._hideDatepicker(),this._lastInput=d.input[0],typeof d.input[0]!="object"&&d.input.focus(),this._lastInput=null)},_updateAlternate:function(a){var b=this._get(a,"altField");if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),d=this._getDate(a),e=this.formatDate(c,d,this._getFormatConfig(a));$(b).each(function(){$(this).val(e)})}},noWeekends:function(a){var b=a.getDay();return[b>0&&b<6,""]},iso8601Week:function(a){var b=new Date(a.getTime());b.setDate(b.getDate()+4-(b.getDay()||7));var c=b.getTime();b.setMonth(0),b.setDate(1);return Math.floor(Math.round((c-b)/864e5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?b.toString():b+"";if(b=="")return null;var d=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;d=typeof d!="string"?d:(new Date).getFullYear()%100+parseInt(d,10);var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,g=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,h=(c?c.monthNames:null)||this._defaults.monthNames,i=-1,j=-1,k=-1,l=-1,m=!1,n=function(b){var c=s+1<a.length&&a.charAt(s+1)==b;c&&s++;return c},o=function(a){var c=n(a),d=a=="@"?14:a=="!"?20:a=="y"&&c?4:a=="o"?3:2,e=new RegExp("^\\d{1,"+d+"}"),f=b.substring(r).match(e);if(!f)throw"Missing number at position "+r;r+=f[0].length;return parseInt(f[0],10)},p=function(a,c,d){var e=$.map(n(a)?d:c,function(a,b){return[[b,a]]}).sort(function(a,b){return-(a[1].length-b[1].length)}),f=-1;$.each(e,function(a,c){var d=c[1];if(b.substr(r,d.length).toLowerCase()==d.toLowerCase()){f=c[0],r+=d.length;return!1}});if(f!=-1)return f+1;throw"Unknown name at position "+r},q=function(){if(b.charAt(r)!=a.charAt(s))throw"Unexpected literal at position "+r;r++},r=0;for(var s=0;s<a.length;s++)if(m)a.charAt(s)=="'"&&!n("'")?m=!1:q();else switch(a.charAt(s)){case"d":k=o("d");break;case"D":p("D",e,f);break;case"o":l=o("o");break;case"m":j=o("m");break;case"M":j=p("M",g,h);break;case"y":i=o("y");break;case"@":var t=new Date(o("@"));i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"!":var t=new Date((o("!")-this._ticksTo1970)/1e4);i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"'":n("'")?q():m=!0;break;default:q()}if(r<b.length)throw"Extra/unparsed characters found in date: "+b.substring(r);i==-1?i=(new Date).getFullYear():i<100&&(i+=(new Date).getFullYear()-(new Date).getFullYear()%100+(i<=d?0:-100));if(l>-1){j=1,k=l;for(;;){var u=this._getDaysInMonth(i,j-1);if(k<=u)break;j++,k-=u}}var t=this._daylightSavingAdjust(new Date(i,j-1,k));if(t.getFullYear()!=i||t.getMonth()+1!=j||t.getDate()!=k)throw"Invalid date";return t},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1e7,formatDate:function(a,b,c){if(!b)return"";var d=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,e=(c?c.dayNames:null)||this._defaults.dayNames,f=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,h=function(b){var c=m+1<a.length&&a.charAt(m+1)==b;c&&m++;return c},i=function(a,b,c){var d=""+b;if(h(a))while(d.length<c)d="0"+d;return d},j=function(a,b,c,d){return h(a)?d[b]:c[b]},k="",l=!1;if(b)for(var m=0;m<a.length;m++)if(l)a.charAt(m)=="'"&&!h("'")?l=!1:k+=a.charAt(m);else switch(a.charAt(m)){case"d":k+=i("d",b.getDate(),2);break;case"D":k+=j("D",b.getDay(),d,e);break;case"o":k+=i("o",Math.round(((new Date(b.getFullYear(),b.getMonth(),b.getDate())).getTime()-(new Date(b.getFullYear(),0,0)).getTime())/864e5),3);break;case"m":k+=i("m",b.getMonth()+1,2);break;case"M":k+=j("M",b.getMonth(),f,g);break;case"y":k+=h("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case"@":k+=b.getTime();break;case"!":k+=b.getTime()*1e4+this._ticksTo1970;break;case"'":h("'")?k+="'":l=!0;break;default:k+=a.charAt(m)}return k},_possibleChars:function(a){var b="",c=!1,d=function(b){var c=e+1<a.length&&a.charAt(e+1)==b;c&&e++;return c};for(var e=0;e<a.length;e++)if(c)a.charAt(e)=="'"&&!d("'")?c=!1:b+=a.charAt(e);else switch(a.charAt(e)){case"d":case"m":case"y":case"@":b+="0123456789";break;case"D":case"M":return null;case"'":d("'")?b+="'":c=!0;break;default:b+=a.charAt(e)}return b},_get:function(a,b){return a.settings[b]!==undefined?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()!=a.lastVal){var c=this._get(a,"dateFormat"),d=a.lastVal=a.input?a.input.val():null,e,f;e=f=this._getDefaultDate(a);var g=this._getFormatConfig(a);try{e=this.parseDate(c,d,g)||f}catch(h){this.log(h),d=b?"":d}a.selectedDay=e.getDate(),a.drawMonth=a.selectedMonth=e.getMonth(),a.drawYear=a.selectedYear=e.getFullYear(),a.currentDay=d?e.getDate():0,a.currentMonth=d?e.getMonth():0,a.currentYear=d?e.getFullYear():0,this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var d=function(a){var b=new Date;b.setDate(b.getDate()+a);return b},e=function(b){try{return $.datepicker.parseDate($.datepicker._get(a,"dateFormat"),b,$.datepicker._getFormatConfig(a))}catch(c){}var d=(b.toLowerCase().match(/^c/)?$.datepicker._getDate(a):null)||new Date,e=d.getFullYear(),f=d.getMonth(),g=d.getDate(),h=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,i=h.exec(b);while(i){switch(i[2]||"d"){case"d":case"D":g+=parseInt(i[1],10);break;case"w":case"W":g+=parseInt(i[1],10)*7;break;case"m":case"M":f+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f));break;case"y":case"Y":e+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f))}i=h.exec(b)}return new Date(e,f,g)},f=b==null||b===""?c:typeof b=="string"?e(b):typeof b=="number"?isNaN(b)?c:d(b):new Date(b.getTime());f=f&&f.toString()=="Invalid Date"?c:f,f&&(f.setHours(0),f.setMinutes(0),f.setSeconds(0),f.setMilliseconds(0));return this._daylightSavingAdjust(f)},_daylightSavingAdjust:function(a){if(!a)return null;a.setHours(a.getHours()>12?a.getHours()+2:0);return a},_setDate:function(a,b,c){var d=!b,e=a.selectedMonth,f=a.selectedYear,g=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=g.getDate(),a.drawMonth=a.selectedMonth=a.currentMonth=g.getMonth(),a.drawYear=a.selectedYear=a.currentYear=g.getFullYear(),(e!=a.selectedMonth||f!=a.selectedYear)&&!c&&this._notifyChange(a),this._adjustInstDate(a),a.input&&a.input.val(d?"":this._formatDate(a))},_getDate:function(a){var b=!a.currentYear||a.input&&a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return b},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),d=this._get(a,"showButtonPanel"),e=this._get(a,"hideIfNoPrevNext"),f=this._get(a,"navigationAsDateFormat"),g=this._getNumberOfMonths(a),h=this._get(a,"showCurrentAtPos"),i=this._get(a,"stepMonths"),j=g[0]!=1||g[1]!=1,k=this._daylightSavingAdjust(a.currentDay?new Date(a.currentYear,a.currentMonth,a.currentDay):new Date(9999,9,9)),l=this._getMinMaxDate(a,"min"),m=this._getMinMaxDate(a,"max"),n=a.drawMonth-h,o=a.drawYear;n<0&&(n+=12,o--);if(m){var p=this._daylightSavingAdjust(new Date(m.getFullYear(),m.getMonth()-g[0]*g[1]+1,m.getDate()));p=l&&p<l?l:p;while(this._daylightSavingAdjust(new Date(o,n,1))>p)n--,n<0&&(n=11,o--)}a.drawMonth=n,a.drawYear=o;var q=this._get(a,"prevText");q=f?this.formatDate(q,this._daylightSavingAdjust(new Date(o,n-i,1)),this._getFormatConfig(a)):q;var r=this._canAdjustMonth(a,-1,o,n)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._adjustDate('#"+a.id+"', -"+i+", 'M');\""+' title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>":e?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>",s=this._get(a,"nextText");s=f?this.formatDate(s,this._daylightSavingAdjust(new Date(o,n+i,1)),this._getFormatConfig(a)):s;var t=this._canAdjustMonth(a,1,o,n)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._adjustDate('#"+a.id+"', +"+i+", 'M');\""+' title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>":e?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>",u=this._get(a,"currentText"),v=this._get(a,"gotoCurrent")&&a.currentDay?k:b;u=f?this.formatDate(u,v,this._getFormatConfig(a)):u;var w=a.inline?"":'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+dpuuid+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>",x=d?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?w:"")+(this._isInRange(a,v)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._gotoToday('#"+a.id+"');\""+">"+u+"</button>":"")+(c?"":w)+"</div>":"",y=parseInt(this._get(a,"firstDay"),10);y=isNaN(y)?0:y;var z=this._get(a,"showWeek"),A=this._get(a,"dayNames"),B=this._get(a,"dayNamesShort"),C=this._get(a,"dayNamesMin"),D=this._get(a,"monthNames"),E=this._get(a,"monthNamesShort"),F=this._get(a,"beforeShowDay"),G=this._get(a,"showOtherMonths"),H=this._get(a,"selectOtherMonths"),I=this._get(a,"calculateWeek")||this.iso8601Week,J=this._getDefaultDate(a),K="";for(var L=0;L<g[0];L++){var M="";this.maxRows=4;for(var N=0;N<g[1];N++){var O=this._daylightSavingAdjust(new Date(o,n,a.selectedDay)),P=" ui-corner-all",Q="";if(j){Q+='<div class="ui-datepicker-group';if(g[1]>1)switch(N){case 0:Q+=" ui-datepicker-group-first",P=" ui-corner-"+(c?"right":"left");break;case g[1]-1:Q+=" ui-datepicker-group-last",P=" ui-corner-"+(c?"left":"right");break;default:Q+=" ui-datepicker-group-middle",P=""}Q+='">'}Q+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+P+'">'+(/all|left/.test(P)&&L==0?c?t:r:"")+(/all|right/.test(P)&&L==0?c?r:t:"")+this._generateMonthYearHeader(a,n,o,l,m,L>0||N>0,D,E)+'</div><table class="ui-datepicker-calendar"><thead>'+"<tr>";var R=z?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(var S=0;S<7;S++){var T=(S+y)%7;R+="<th"+((S+y+6)%7>=5?' class="ui-datepicker-week-end"':"")+">"+'<span title="'+A[T]+'">'+C[T]+"</span></th>"}Q+=R+"</tr></thead><tbody>";var U=this._getDaysInMonth(o,n);o==a.selectedYear&&n==a.selectedMonth&&(a.selectedDay=Math.min(a.selectedDay,U));var V=(this._getFirstDayOfMonth(o,n)-y+7)%7,W=Math.ceil((V+U)/7),X=j?this.maxRows>W?this.maxRows:W:W;this.maxRows=X;var Y=this._daylightSavingAdjust(new Date(o,n,1-V));for(var Z=0;Z<X;Z++){Q+="<tr>";var _=z?'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(Y)+"</td>":"";for(var S=0;S<7;S++){var ba=F?F.apply(a.input?a.input[0]:null,[Y]):[!0,""],bb=Y.getMonth()!=n,bc=bb&&!H||!ba[0]||l&&Y<l||m&&Y>m;_+='<td class="'+((S+y+6)%7>=5?" ui-datepicker-week-end":"")+(bb?" ui-datepicker-other-month":"")+(Y.getTime()==O.getTime()&&n==a.selectedMonth&&a._keyEvent||J.getTime()==Y.getTime()&&J.getTime()==O.getTime()?" "+this._dayOverClass:"")+(bc?" "+this._unselectableClass+" ui-state-disabled":"")+(bb&&!G?"":" "+ba[1]+(Y.getTime()==k.getTime()?" "+this._currentClass:"")+(Y.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!bb||G)&&ba[2]?' title="'+ba[2]+'"':"")+(bc?"":' onclick="DP_jQuery_'+dpuuid+".datepicker._selectDay('#"+a.id+"',"+Y.getMonth()+","+Y.getFullYear()+', this);return false;"')+">"+(bb&&!G?"&#xa0;":bc?'<span class="ui-state-default">'+Y.getDate()+"</span>":'<a class="ui-state-default'+(Y.getTime()==b.getTime()?" ui-state-highlight":"")+(Y.getTime()==k.getTime()?" ui-state-active":"")+(bb?" ui-priority-secondary":"")+'" href="#">'+Y.getDate()+"</a>")+"</td>",Y.setDate(Y.getDate()+1),Y=this._daylightSavingAdjust(Y)}Q+=_+"</tr>"}n++,n>11&&(n=0,o++),Q+="</tbody></table>"+(j?"</div>"+(g[0]>0&&N==g[1]-1?'<div class="ui-datepicker-row-break"></div>':""):""),M+=Q}K+=M}K+=x+($.browser.msie&&parseInt($.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':""),
-a._keyEvent=!1;return K},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i=this._get(a,"changeMonth"),j=this._get(a,"changeYear"),k=this._get(a,"showMonthAfterYear"),l='<div class="ui-datepicker-title">',m="";if(f||!i)m+='<span class="ui-datepicker-month">'+g[b]+"</span>";else{var n=d&&d.getFullYear()==c,o=e&&e.getFullYear()==c;m+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+dpuuid+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" "+">";for(var p=0;p<12;p++)(!n||p>=d.getMonth())&&(!o||p<=e.getMonth())&&(m+='<option value="'+p+'"'+(p==b?' selected="selected"':"")+">"+h[p]+"</option>");m+="</select>"}k||(l+=m+(f||!i||!j?"&#xa0;":""));if(!a.yearshtml){a.yearshtml="";if(f||!j)l+='<span class="ui-datepicker-year">'+c+"</span>";else{var q=this._get(a,"yearRange").split(":"),r=(new Date).getFullYear(),s=function(a){var b=a.match(/c[+-].*/)?c+parseInt(a.substring(1),10):a.match(/[+-].*/)?r+parseInt(a,10):parseInt(a,10);return isNaN(b)?r:b},t=s(q[0]),u=Math.max(t,s(q[1]||""));t=d?Math.max(t,d.getFullYear()):t,u=e?Math.min(u,e.getFullYear()):u,a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+dpuuid+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" "+">";for(;t<=u;t++)a.yearshtml+='<option value="'+t+'"'+(t==c?' selected="selected"':"")+">"+t+"</option>";a.yearshtml+="</select>",l+=a.yearshtml,a.yearshtml=null}}l+=this._get(a,"yearSuffix"),k&&(l+=(f||!i||!j?"&#xa0;":"")+m),l+="</div>";return l},_adjustInstDate:function(a,b,c){var d=a.drawYear+(c=="Y"?b:0),e=a.drawMonth+(c=="M"?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+(c=="D"?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),(c=="M"||c=="Y")&&this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&b<c?c:b;e=d&&e>d?d:e;return e},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return b==null?[1,1]:typeof b=="number"?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth()));return this._isInRange(a,f)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!d||b.getTime()<=d.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),$.fn.datepicker=function(a){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return $.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return $.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b));return this.each(function(){typeof a=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this].concat(b)):$.datepicker._attachDatepicker(this,a)})},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.8.18",window["DP_jQuery_"+dpuuid]=$})(jQuery);
-
-/*
- *	lib/js/lib/jquery/jquery.ui.autocomplete.js
- */
-/* jQuery UI Autocomplete 1.8.18
-*
-* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
-* Dual licensed under the MIT or GPL Version 2 licenses.
-* http://jquery.org/license
-*
-* http://docs.jquery.com/UI/Autocomplete
-*
-* Depends:
-*	jquery.ui.core.js
-*	jquery.ui.widget.js
-*	jquery.ui.position.js
-*/(function(a,b){var c=0;a.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var b=this,c=this.element[0].ownerDocument,d;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(!b.options.disabled&&!b.element.propAttr("readOnly")){d=!1;var e=a.ui.keyCode;switch(c.keyCode){case e.PAGE_UP:b._move("previousPage",c);break;case e.PAGE_DOWN:b._move("nextPage",c);break;case e.UP:b._move("previous",c),c.preventDefault();break;case e.DOWN:b._move("next",c),c.preventDefault();break;case e.ENTER:case e.NUMPAD_ENTER:b.menu.active&&(d=!0,c.preventDefault());case e.TAB:if(!b.menu.active)return;b.menu.select(c);break;case e.ESCAPE:b.element.val(b.term),b.close(c);break;default:clearTimeout(b.searching),b.searching=setTimeout(function(){b.term!=b.element.val()&&(b.selectedItem=null,b.search(null,c))},b.options.delay)}}}).bind("keypress.autocomplete",function(a){d&&(d=!1,a.preventDefault())}).bind("focus.autocomplete",function(){b.options.disabled||(b.selectedItem=null,b.previous=b.element.val())}).bind("blur.autocomplete",function(a){b.options.disabled||(clearTimeout(b.searching),b.closing=setTimeout(function(){b.close(a),b._change(a)},150))}),this._initSource(),this.response=function(){return b._response.apply(b,arguments)},this.menu=a("<ul></ul>").addClass("ui-autocomplete").appendTo(a(this.options.appendTo||"body",c)[0]).mousedown(function(c){var d=b.menu.element[0];a(c.target).closest(".ui-menu-item").length||setTimeout(function(){a(document).one("mousedown",function(c){c.target!==b.element[0]&&c.target!==d&&!a.ui.contains(d,c.target)&&b.close()})},1),setTimeout(function(){clearTimeout(b.closing)},13)}).menu({focus:function(a,c){var d=c.item.data("item.autocomplete");!1!==b._trigger("focus",a,{item:d})&&/^key/.test(a.originalEvent.type)&&b.element.val(d.value)},selected:function(a,d){var e=d.item.data("item.autocomplete"),f=b.previous;b.element[0]!==c.activeElement&&(b.element.focus(),b.previous=f,setTimeout(function(){b.previous=f,b.selectedItem=e},1)),!1!==b._trigger("select",a,{item:e})&&b.element.val(e.value),b.term=b.element.val(),b.close(a),b.selectedItem=e},blur:function(a,c){b.menu.element.is(":visible")&&b.element.val()!==b.term&&b.element.val(b.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu"),a.fn.bgiframe&&this.menu.element.bgiframe(),b.beforeunloadHandler=function(){b.element.removeAttr("autocomplete")},a(window).bind("beforeunload",b.beforeunloadHandler)},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup"),this.menu.element.remove(),a(window).unbind("beforeunload",this.beforeunloadHandler),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments),b==="source"&&this._initSource(),b==="appendTo"&&this.menu.element.appendTo(a(c||"body",this.element[0].ownerDocument)[0]),b==="disabled"&&c&&this.xhr&&this.xhr.abort()},_initSource:function(){var b=this,d,e;a.isArray(this.options.source)?(d=this.options.source,this.source=function(b,c){c(a.ui.autocomplete.filter(d,b.term))}):typeof this.options.source=="string"?(e=this.options.source,this.source=function(d,f){b.xhr&&b.xhr.abort(),b.xhr=a.ajax({url:e,data:d,dataType:"json",context:{autocompleteRequest:++c},success:function(a,b){this.autocompleteRequest===c&&f(a)},error:function(){this.autocompleteRequest===c&&f([])}})}):this.source=this.options.source},search:function(a,b){a=a!=null?a:this.element.val(),this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)!==!1)return this._search(a)},_search:function(a){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.source({term:a},this.response)},_response:function(a){!this.options.disabled&&a&&a.length?(a=this._normalize(a),this._suggest(a),this._trigger("open")):this.close(),this.pending--,this.pending||this.element.removeClass("ui-autocomplete-loading")},close:function(a){clearTimeout(this.closing),this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.deactivate(),this._trigger("close",a))},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(b){if(b.length&&b[0].label&&b[0].value)return b;return a.map(b,function(b){if(typeof b=="string")return{label:b,value:b};return a.extend({label:b.label||b.value,value:b.value||b.label},b)})},_suggest:function(b){var c=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(c,b),this.menu.deactivate(),this.menu.refresh(),c.show(),this._resizeMenu(),c.position(a.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next(new a.Event("mouseover"))},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(b,c){var d=this;a.each(c,function(a,c){d._renderItem(b,c)})},_renderItem:function(b,c){return a("<li></li>").data("item.autocomplete",c).append(a("<a></a>").text(c.label)).appendTo(b)},_move:function(a,b){if(!this.menu.element.is(":visible"))this.search(null,b);else{if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term),this.menu.deactivate();return}this.menu[a](b)}},widget:function(){return this.menu.element}}),a.extend(a.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},filter:function(b,c){var d=new RegExp(a.ui.autocomplete.escapeRegex(c),"i");return a.grep(b,function(a){return d.test(a.label||a.value||a)})}})})(jQuery),function(a){a.widget("ui.menu",{_create:function(){var b=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(c){!a(c.target).closest(".ui-menu-item a").length||(c.preventDefault(),b.select(c))}),this.refresh()},refresh:function(){var b=this,c=this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem");c.children("a").addClass("ui-corner-all").attr("tabindex",-1).mouseenter(function(c){b.activate(c,a(this).parent())}).mouseleave(function(){b.deactivate()})},activate:function(a,b){this.deactivate();if(this.hasScroll()){var c=b.offset().top-this.element.offset().top,d=this.element.scrollTop(),e=this.element.height();c<0?this.element.scrollTop(d+c):c>=e&&this.element.scrollTop(d+c-e+b.height())}this.active=b.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end(),this._trigger("focus",a,{item:b})},deactivate:function(){!this.active||(this.active.children("a").removeClass("ui-state-hover").removeAttr("id"),this._trigger("blur"),this.active=null)},next:function(a){this.move("next",".ui-menu-item:first",a)},previous:function(a){this.move("prev",".ui-menu-item:last",a)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(a,b,c){if(!this.active)this.activate(c,this.element.children(b));else{var d=this.active[a+"All"](".ui-menu-item").eq(0);d.length?this.activate(c,d):this.activate(c,this.element.children(b))}},nextPage:function(b){if(this.hasScroll()){if(!this.active||this.last()){this.activate(b,this.element.children(".ui-menu-item:first"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c-d+a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:last")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.last()?":first":":last"))},previousPage:function(b){if(this.hasScroll()){if(!this.active||this.first()){this.activate(b,this.element.children(".ui-menu-item:last"));return}var c=this.active.offset().top,d=this.element.height();result=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c+d-a(this).height();return b<10&&b>-10}),result.length||(result=this.element.children(".ui-menu-item:first")),this.activate(b,result)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.first()?":last":":first"))},hasScroll:function(){return this.element.height()<this.element[a.fn.prop?"prop":"attr"]("scrollHeight")},select:function(a){this._trigger("selected",a,{item:this.active})}})}(jQuery);
-
-/*
- *	lib/js/lib/tiny_mce_33/jquery.tinymce.js
- */
-(function(b){var e,d,a=[],c=window;b.fn.tinymce=function(j){var p=this,g,k,h,m,i,l="",n="";if(!p.length){return p}if(!j){return tinyMCE.get(p[0].id)}function o(){var r=[],q=0;if(f){f();f=null}p.each(function(t,u){var s,w=u.id,v=j.oninit;if(!w){u.id=w=tinymce.DOM.uniqueId()}s=new tinymce.Editor(w,j);r.push(s);if(v){s.onInit.add(function(){var x,y=v;if(++q==r.length){if(tinymce.is(y,"string")){x=(y.indexOf(".")===-1)?null:tinymce.resolve(y.replace(/\.\w+$/,""));y=tinymce.resolve(y)}y.apply(x||tinymce,r)}})}});b.each(r,function(t,s){s.render()})}if(!c.tinymce&&!d&&(g=j.script_url)){d=1;h=g.substring(0,g.lastIndexOf("/"));if(/_(src|dev)\.js/g.test(g)){n="_src"}m=g.lastIndexOf("?");if(m!=-1){l=g.substring(m+1)}c.tinyMCEPreInit=c.tinyMCEPreInit||{base:h,suffix:n,query:l};if(g.indexOf("gzip")!=-1){i=j.language||"en";g=g+(/\?/.test(g)?"&":"?")+"js=true&core=true&suffix="+escape(n)+"&themes="+escape(j.theme)+"&plugins="+escape(j.plugins)+"&languages="+i;if(!c.tinyMCE_GZ){tinyMCE_GZ={start:function(){tinymce.suffix=n;function q(r){tinymce.ScriptLoader.markDone(tinyMCE.baseURI.toAbsolute(r))}q("langs/"+i+".js");q("themes/"+j.theme+"/editor_template"+n+".js");q("themes/"+j.theme+"/langs/"+i+".js");b.each(j.plugins.split(","),function(s,r){if(r){q("plugins/"+r+"/editor_plugin"+n+".js");q("plugins/"+r+"/langs/"+i+".js")}})},end:function(){}}}}b.ajax({type:"GET",url:g,dataType:"script",cache:true,success:function(){tinymce.dom.Event.domLoaded=1;d=2;if(j.script_loaded){j.script_loaded()}o();b.each(a,function(q,r){r()})}})}else{if(d===1){a.push(o)}else{o()}}return p};b.extend(b.expr[":"],{tinymce:function(g){return g.id&&!!tinyMCE.get(g.id)}});function f(){function i(l){if(l==="remove"){this.each(function(n,o){var m=h(o);if(m){m.remove()}})}this.find("span.mceEditor,div.mceEditor").each(function(n,o){var m=tinyMCE.get(o.id.replace(/_parent$/,""));if(m){m.remove()}})}function k(n){var m=this,l;if(n!==e){i.call(m);m.each(function(p,q){var o;if(o=tinyMCE.get(q.id)){o.setContent(n)}})}else{if(m.length>0){if(l=tinyMCE.get(m[0].id)){return l.getContent()}}}}function h(m){var l=null;(m)&&(m.id)&&(c.tinymce)&&(l=tinyMCE.get(m.id));return l}function g(l){return !!((l)&&(l.length)&&(c.tinymce)&&(l.is(":tinymce")))}var j={};b.each(["text","html","val"],function(n,l){var o=j[l]=b.fn[l],m=(l==="text");b.fn[l]=function(s){var p=this;if(!g(p)){return o.apply(p,arguments)}if(s!==e){k.call(p.filter(":tinymce"),s);o.apply(p.not(":tinymce"),arguments);return p}else{var r="";var q=arguments;(m?p:p.eq(0)).each(function(u,v){var t=h(v);r+=t?(m?t.getContent().replace(/<(?:"[^"]*"|'[^']*'|[^'">])*>/g,""):t.getContent()):o.apply(b(v),q)});return r}}});b.each(["append","prepend"],function(n,m){var o=j[m]=b.fn[m],l=(m==="prepend");b.fn[m]=function(q){var p=this;if(!g(p)){return o.apply(p,arguments)}if(q!==e){p.filter(":tinymce").each(function(s,t){var r=h(t);r&&r.setContent(l?q+r.getContent():r.getContent()+q)});o.apply(p.not(":tinymce"),arguments);return p}}});b.each(["remove","replaceWith","replaceAll","empty"],function(m,l){var n=j[l]=b.fn[l];b.fn[l]=function(){i.call(this,l);return n.apply(this,arguments)}});j.attr=b.fn.attr;b.fn.attr=function(n,q,o){var m=this;if((!n)||(n!=="value")||(!g(m))){return j.attr.call(m,n,q,o)}if(q!==e){k.call(m.filter(":tinymce"),q);j.attr.call(m.not(":tinymce"),n,q,o);return m}else{var p=m[0],l=h(p);return l?l.getContent():j.attr.call(b(p),n,q,o)}}}})(jQuery);
-
-/*
- *	lib/js/lib/bootstrap.min.js
- */
-!function(a){a(function(){"use strict",a.support.transition=function(){var b=document.body||document.documentElement,c=b.style,d=c.transition!==undefined||c.WebkitTransition!==undefined||c.MozTransition!==undefined||c.MsTransition!==undefined||c.OTransition!==undefined;return d&&{end:function(){var b="TransitionEnd";return a.browser.webkit?b="webkitTransitionEnd":a.browser.mozilla?b="transitionend":a.browser.opera&&(b="oTransitionEnd"),b}()}}()})}(window.jQuery),!function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype={constructor:c,close:function(b){function f(){e.remove(),e.trigger("closed")}var c=a(this),d=c.attr("data-target"),e;d||(d=c.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),e=a(d),e.trigger("close"),b&&b.preventDefault(),e.length||(e=c.hasClass("alert")?c:c.parent()),e.removeClass("in"),a.support.transition&&e.hasClass("fade")?e.on(a.support.transition.end,f):f()}},a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.alert.Constructor=c,a(function(){a("body").on("click.alert.data-api",b,c.prototype.close)})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype={constructor:b,setState:function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){a=="loadingText"?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},toggle:function(){var a=this.$element.parent('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")}},a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f=typeof c=="object"&&c;e||d.data("button",e=new b(this,f)),c=="toggle"?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a(function(){a("body").on("click.button.data-api","[data-toggle^=button]",function(b){a(b.target).button("toggle")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.carousel.defaults,c),this.options.slide&&this.slide(this.options.slide)};b.prototype={cycle:function(){return this.interval=setInterval(a.proxy(this.next,this),this.options.interval),this},to:function(b){var c=this.$element.find(".active"),d=c.parent().children(),e=d.index(c),f=this;if(b>d.length-1||b<0)return;return this.sliding?this.$element.one("slid",function(){f.to(b)}):e==b?this.pause().cycle():this.slide(b>e?"next":"prev",a(d[b]))},pause:function(){return clearInterval(this.interval),this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(b,c){var d=this.$element.find(".active"),e=c||d[b](),f=this.interval,g=b=="next"?"left":"right",h=b=="next"?"first":"last",i=this;return this.sliding=!0,f&&this.pause(),e=e.length?e:this.$element.find(".item")[h](),!a.support.transition&&this.$element.hasClass("slide")?(this.$element.trigger("slide"),d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")):(e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),this.$element.trigger("slide"),this.$element.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)})),f&&this.cycle(),this}},a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=typeof c=="object"&&c;e||d.data("carousel",e=new b(this,f)),typeof c=="number"?e.to(c):typeof c=="string"||(c=f.slide)?e[c]():e.cycle()})},a.fn.carousel.defaults={interval:5e3},a.fn.carousel.Constructor=b,a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!e.data("modal")&&a.extend({},e.data(),c.data());e.carousel(f),b.preventDefault()})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find(".in"),e;d&&d.length&&(e=d.data("collapse"),d.collapse("hide"),e||d.data("collapse",null)),this.$element[b](0),this.transition("addClass","show","shown"),this.$element[b](this.$element[0][c])},hide:function(){var a=this.dimension();this.reset(this.$element[a]()),this.transition("removeClass","hide","hidden"),this.$element[a](0)},reset:function(a){var b=this.dimension();this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element.addClass("collapse")},transition:function(b,c,d){var e=this,f=function(){c=="show"&&e.reset(),e.$element.trigger(d)};this.$element.trigger(c)[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=typeof c=="object"&&c;e||d.data("collapse",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c=a(this),d,e=c.attr("data-target")||b.preventDefault()||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":c.data();a(e).collapse(f)})})}(window.jQuery),!function(a){function d(){a(b).parent().removeClass("open")}"use strict";var b='[data-toggle="dropdown"]',c=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};c.prototype={constructor:c,toggle:function(b){var c=a(this),e=c.attr("data-target"),f,g;return e||(e=c.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,"")),f=a(e),f.length||(f=c.parent()),g=f.hasClass("open"),d(),!g&&f.toggleClass("open"),!1}},a.fn.dropdown=function(b){return this.each(function(){var d=a(this),e=d.data("dropdown");e||d.data("dropdown",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.dropdown.Constructor=c,a(function(){a("html").on("click.dropdown.data-api",d),a("body").on("click.dropdown.data-api",b,c.prototype.toggle)})}(window.jQuery),!function(a){function c(){var b=this,c=setTimeout(function(){b.$element.off(a.support.transition.end),d.call(b)},500);this.$element.one(a.support.transition.end,function(){clearTimeout(c),d.call(b)})}function d(a){this.$element.hide().trigger("hidden"),e.call(this)}function e(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;this.$backdrop=a('<div class="modal-backdrop '+d+'" />').appendTo(document.body),this.options.backdrop!="static"&&this.$backdrop.click(a.proxy(this.hide,this)),e&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),e?this.$backdrop.one(a.support.transition.end,b):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,a.proxy(f,this)):f.call(this)):b&&b()}function f(){this.$backdrop.remove(),this.$backdrop=null}function g(){var b=this;this.isShown&&this.options.keyboard?a(document).on("keyup.dismiss.modal",function(a){a.which==27&&b.hide()}):this.isShown||a(document).off("keyup.dismiss.modal")}"use strict";var b=function(b,c){this.options=a.extend({},a.fn.modal.defaults,c),this.$element=a(b).delegate('[data-dismiss="modal"]',"click.dismiss.modal",a.proxy(this.hide,this))};b.prototype={constructor:b,toggle:function(){return this[this.isShown?"hide":"show"]()},show:function(){var b=this;if(this.isShown)return;a("body").addClass("modal-open"),this.isShown=!0,this.$element.trigger("show"),g.call(this),e.call(this,function(){var c=a.support.transition&&b.$element.hasClass("fade");!b.$element.parent().length&&b.$element.appendTo(document.body),b.$element.show(),c&&b.$element[0].offsetWidth,b.$element.addClass("in"),c?b.$element.one(a.support.transition.end,function(){b.$element.trigger("shown")}):b.$element.trigger("shown")})},hide:function(b){b&&b.preventDefault();if(!this.isShown)return;var e=this;this.isShown=!1,a("body").removeClass("modal-open"),g.call(this),this.$element.trigger("hide").removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?c.call(this):d.call(this)}},a.fn.modal=function(c){return this.each(function(){var d=a(this),e=d.data("modal"),f=typeof c=="object"&&c;e||d.data("modal",e=new b(this,f)),typeof c=="string"?e[c]():e.show()})},a.fn.modal.defaults={backdrop:!0,keyboard:!0},a.fn.modal.Constructor=b,a(function(){a("body").on("click.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({},e.data(),c.data());b.preventDefault(),e.modal(f)})})}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("tooltip",a,b)};b.prototype={constructor:b,init:function(b,c,d){var e,f;this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.enabled=!0,this.options.trigger!="manual"&&(e=this.options.trigger=="hover"?"mouseenter":"focus",f=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(e,this.options.selector,a.proxy(this.enter,this)),this.$element.on(f,this.options.selector,a.proxy(this.leave,this))),this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(b){return b=a.extend({},a.fn[this.type].defaults,b,this.$element.data()),b.delay&&typeof b.delay=="number"&&(b.delay={show:b.delay,hide:b.delay}),b},enter:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);!c.options.delay||!c.options.delay.show?c.show():(c.hoverState="in",setTimeout(function(){c.hoverState=="in"&&c.show()},c.options.delay.show))},leave:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);!c.options.delay||!c.options.delay.hide?c.hide():(c.hoverState="out",setTimeout(function(){c.hoverState=="out"&&c.hide()},c.options.delay.hide))},show:function(){var a,b,c,d,e,f,g;if(this.hasContent()&&this.enabled){a=this.tip(),this.setContent(),this.options.animation&&a.addClass("fade"),f=typeof this.options.placement=="function"?this.options.placement.call(this,a[0],this.$element[0]):this.options.placement,b=/in/.test(f),a.remove().css({top:0,left:0,display:"block"}).appendTo(b?this.$element:document.body),c=this.getPosition(b),d=a[0].offsetWidth,e=a[0].offsetHeight;switch(b?f.split(" ")[1]:f){case"bottom":g={top:c.top+c.height,left:c.left+c.width/2-d/2};break;case"top":g={top:c.top-e,left:c.left+c.width/2-d/2};break;case"left":g={top:c.top+c.height/2-e/2,left:c.left-d};break;case"right":g={top:c.top+c.height/2-e/2,left:c.left+c.width}}a.css(g).addClass(f).addClass("in")}},setContent:function(){var a=this.tip();a.find(".tooltip-inner").html(this.getTitle()),a.removeClass("fade in top bottom left right")},hide:function(){function d(){var b=setTimeout(function(){c.off(a.support.transition.end).remove()},500);c.one(a.support.transition.end,function(){clearTimeout(b),c.remove()})}var b=this,c=this.tip();c.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d():c.remove()},fixTitle:function(){var a=this.$element;(a.attr("title")||typeof a.attr("data-original-title")!="string")&&a.attr("data-original-title",a.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(b){return a.extend({},b?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||(typeof c.title=="function"?c.title.call(b[0]):c.title),a=a.toString().replace(/(^\s*|\s*$)/,""),a},tip:function(){return this.$tip=this.$tip||a(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()}},a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("tooltip"),f=typeof c=="object"&&c;e||d.data("tooltip",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.defaults={animation:!0,delay:0,selector:!1,placement:"top",trigger:"hover",title:"",template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'}}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("popover",a,b)};b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype,{constructor:b,setContent:function(){var b=this.tip(),c=this.getTitle(),d=this.getContent();b.find(".popover-title")[a.type(c)=="object"?"append":"html"](c),b.find(".popover-content > *")[a.type(d)=="object"?"append":"html"](d),b.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-content")||(typeof c.content=="function"?c.content.call(b[0]):c.content),a=a.toString().replace(/(^\s*|\s*$)/,""),a},tip:function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip}}),a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("popover"),f=typeof c=="object"&&c;e||d.data("popover",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.defaults=a.extend({},a.fn.tooltip.defaults,{placement:"right",content:"",template:'<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'})}(window.jQuery),!function(a){function b(b,c){var d=a.proxy(this.process,this),e=a(b).is("body")?a(window):a(b),f;this.options=a.extend({},a.fn.scrollspy.defaults,c),this.$scrollElement=e.on("scroll.scroll.data-api",d),this.selector=(this.options.target||(f=a(b).attr("href"))&&f.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.$body=a("body").on("click.scroll.data-api",this.selector,d),this.refresh(),this.process()}"use strict",b.prototype={constructor:b,refresh:function(){this.targets=this.$body.find(this.selector).map(function(){var b=a(this).attr("href");return/^#\w/.test(b)&&a(b).length?b:null}),this.offsets=a.map(this.targets,function(b){return a(b).position().top})},process:function(){var a=this.$scrollElement.scrollTop()+this.options.offset,b=this.offsets,c=this.targets,d=this.activeTarget,e;for(e=b.length;e--;)d!=c[e]&&a>=b[e]&&(!b[e+1]||a<=b[e+1])&&this.activate(c[e])},activate:function(a){var b;this.activeTarget=a,this.$body.find(this.selector).parent(".active").removeClass("active"),b=this.$body.find(this.selector+'[href="'+a+'"]').parent("li").addClass("active"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active")}},a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("scrollspy"),f=typeof c=="object"&&c;e||d.data("scrollspy",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.defaults={offset:10},a(function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),!function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype={constructor:b,show:function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target"),e,f;d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,""));if(b.parent("li").hasClass("active"))return;e=c.find(".active a").last()[0],b.trigger({type:"show",relatedTarget:e}),f=a(d),this.activate(b.parent("li"),c),this.activate(f,f.parent(),function(){b.trigger({type:"shown",relatedTarget:e})})},activate:function(b,c,d){function g(){e.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),f?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var e=c.find("> .active"),f=d&&a.support.transition&&e.hasClass("fade");f?e.one(a.support.transition.end,g):g(),e.removeClass("in")}},a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("tab");e||d.data("tab",e=new b(this)),typeof c=="string"&&e[c]()})},a.fn.tab.Constructor=b,a(function(){a("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.typeahead.defaults,c),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.$menu=a(this.options.menu).appendTo("body"),this.source=this.options.source,this.shown=!1,this.listen()};b.prototype={constructor:b,select:function(){var a=this.$menu.find(".active").attr("data-value");return this.$element.val(a),this.hide()},show:function(){var b=a.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});return this.$menu.css({top:b.top+b.height,left:b.left}),this.$menu.show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(b){var c=this,d,e;return this.query=this.$element.val(),this.query?(d=a.grep(this.source,function(a){if(c.matcher(a))return a}),d=this.sorter(d),d.length?this.render(d.slice(0,this.options.items)).show():this.shown?this.hide():this):this.shown?this.hide():this},matcher:function(a){return~a.toLowerCase().indexOf(this.query.toLowerCase())},sorter:function(a){var b=[],c=[],d=[],e;while(e=a.shift())e.toLowerCase().indexOf(this.query.toLowerCase())?~e.indexOf(this.query)?c.push(e):d.push(e):b.push(e);return b.concat(c,d)},highlighter:function(a){return a.replace(new RegExp("("+this.query+")","ig"),function(a,b){return"<strong>"+b+"</strong>"})},render:function(b){var c=this;return b=a(b).map(function(b,d){return b=a(c.options.item).attr("data-value",d),b.find("a").html(c.highlighter(d)),b[0]}),b.first().addClass("active"),this.$menu.html(b),this},next:function(b){var c=this.$menu.find(".active").removeClass("active"),d=c.next();d.length||(d=a(this.$menu.find("li")[0])),d.addClass("active")},prev:function(a){var b=this.$menu.find(".active").removeClass("active"),c=b.prev();c.length||(c=this.$menu.find("li").last()),c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this)),(a.browser.webkit||a.browser.msie)&&this.$element.on("keydown",a.proxy(this.keypress,this)),this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},keyup:function(a){a.stopPropagation(),a.preventDefault();switch(a.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:this.hide();break;default:this.lookup()}},keypress:function(a){a.stopPropagation();if(!this.shown)return;switch(a.keyCode){case 9:case 13:case 27:a.preventDefault();break;case 38:a.preventDefault(),this.prev();break;case 40:a.preventDefault(),this.next()}},blur:function(a){var b=this;a.stopPropagation(),a.preventDefault(),setTimeout(function(){b.hide()},150)},click:function(a){a.stopPropagation(),a.preventDefault(),this.select()},mouseenter:function(b){this.$menu.find(".active").removeClass("active"),a(b.currentTarget).addClass("active")}},a.fn.typeahead=function(c){return this.each(function(){var d=a(this),e=d.data("typeahead"),f=typeof c=="object"&&c;e||d.data("typeahead",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.typeahead.defaults={source:[],items:8,menu:'<ul class="typeahead dropdown-menu"></ul>',item:'<li><a href="#"></a></li>'},a.fn.typeahead.Constructor=b,a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(b){var c=a(this);if(c.data("typeahead"))return;b.preventDefault(),c.typeahead(c.data())})})}(window.jQuery);
-
-/*
- *	lib/js/lib/sprintf.js
- */
-var sprintf=(function(){function get_type(variable){return Object.prototype.toString.call(variable).slice(8,-1).toLowerCase();}
-function str_repeat(input,multiplier){for(var output=[];multiplier>0;output[--multiplier]=input){}
-return output.join('');}
-var str_format=function(){if(!str_format.cache.hasOwnProperty(arguments[0])){str_format.cache[arguments[0]]=str_format.parse(arguments[0]);}
-return str_format.format.call(null,str_format.cache[arguments[0]],arguments);};str_format.format=function(parse_tree,argv){var cursor=1,tree_length=parse_tree.length,node_type='',arg,output=[],i,k,match,pad,pad_character,pad_length;for(i=0;i<tree_length;i++){node_type=get_type(parse_tree[i]);if(node_type==='string'){output.push(parse_tree[i]);}
-else if(node_type==='array'){match=parse_tree[i];if(match[2]){arg=argv[cursor];for(k=0;k<match[2].length;k++){if(!arg.hasOwnProperty(match[2][k])){arg='';}else{arg=arg[match[2][k]];}}}
-else if(match[1]){arg=argv[match[1]];}
-else{arg=argv[cursor++];}
-if(/[^s]/.test(match[8])&&(get_type(arg)!='number')){throw(sprintf('[sprintf] expecting number but found %s',get_type(arg)));}
-switch(match[8]){case'b':arg=arg.toString(2);break;case'c':arg=String.fromCharCode(arg);break;case'd':arg=parseInt(arg,10);break;case'e':arg=match[7]?arg.toExponential(match[7]):arg.toExponential();break;case'f':arg=match[7]?parseFloat(arg).toFixed(match[7]):parseFloat(arg);break;case'o':arg=arg.toString(8);break;case's':arg=((arg=String(arg))&&match[7]?arg.substring(0,match[7]):arg);break;case'u':arg=Math.abs(arg);break;case'x':arg=arg.toString(16);break;case'X':arg=arg.toString(16).toUpperCase();break;}
-arg=(/[def]/.test(match[8])&&match[3]&&arg>=0?'+'+arg:arg);pad_character=match[4]?match[4]=='0'?'0':match[4].charAt(1):' ';pad_length=match[6]-String(arg).length;pad=match[6]?str_repeat(pad_character,pad_length):'';output.push(match[5]?arg+pad:pad+arg);}}
-return output.join('');};str_format.cache={};str_format.parse=function(fmt){var _fmt=fmt,match=[],parse_tree=[],arg_names=0;while(_fmt){if((match=/^[^\x25]+/.exec(_fmt))!==null){parse_tree.push(match[0]);}
-else if((match=/^\x25{2}/.exec(_fmt))!==null){parse_tree.push('%');}
-else if((match=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(_fmt))!==null){if(match[2]){arg_names|=1;var field_list=[],replacement_field=match[2],field_match=[];if((field_match=/^([a-z_][a-z_\d]*)/i.exec(replacement_field))!==null){field_list.push(field_match[1]);while((replacement_field=replacement_field.substring(field_match[0].length))!==''){if((field_match=/^\.([a-z_][a-z_\d]*)/i.exec(replacement_field))!==null){field_list.push(field_match[1]);}
-else if((field_match=/^\[(\d+)\]/.exec(replacement_field))!==null){field_list.push(field_match[1]);}
-else{throw('[sprintf] huh?');}}}
-else{throw('[sprintf] huh?');}
-match[2]=field_list;}
-else{arg_names|=2;}
-if(arg_names===3){throw('[sprintf] mixing positional and named placeholders is not (yet) supported');}
-parse_tree.push(match);}
-else{throw('[sprintf] huh?');}
-_fmt=_fmt.substring(match[0].length);}
-return parse_tree;};return str_format;})();var vsprintf=function(fmt,argv){argv.unshift(fmt);return sprintf.apply(null,argv);};
-/*
- *	lib/js/core.min.js
- */
-
-/*
- *	lib/js/wn/class.js
- */;(function(){var initializing=false,fnTest=/xyz/.test(function(){xyz;})?/\b_super\b/:/.*/;this.Class=function(){};Class.extend=function(prop){var _super=this.prototype;initializing=true;var prototype=new this();initializing=false;for(var name in prop){prototype[name]=typeof prop[name]=="function"&&typeof _super[name]=="function"&&fnTest.test(prop[name])?(function(name,fn){return function(){var tmp=this._super;this._super=_super[name];var ret=fn.apply(this,arguments);this._super=tmp;return ret;};})(name,prop[name]):prop[name];}
-function Class(){if(!initializing&&this.init)
-this.init.apply(this,arguments);}
-Class.prototype=prototype;Class.prototype.constructor=Class;Class.extend=arguments.callee;return Class;};})();
-/*
- *	lib/js/wn/provide.js
- */
-if(!window.wn)wn={}
-wn.provide=function(namespace){var nsl=namespace.split('.');var l=nsl.length;var parent=window;for(var i=0;i<l;i++){var n=nsl[i];if(!parent[n]){parent[n]={}}
-parent=parent[n];}}
-wn.provide('wn.settings');wn.provide('wn.ui');
-/*
- *	lib/js/wn/assets.js
- */
-wn.require=function(items){if(typeof items==="string"){items=[items];}
-var l=items.length;for(var i=0;i<l;i++){var src=items[i];wn.assets.execute(src);}}
-wn.assets={executed_:{},check:function(){if(window._version_number!=localStorage.getItem("_version_number")){localStorage.clear();localStorage.setItem("_version_number",window._version_number)}},exists:function(src){if('localStorage'in window&&localStorage.getItem(src)&&!wn.boot.developer_mode)
-return true},add:function(src,txt){if('localStorage'in window){localStorage.setItem(src,txt);}},get:function(src){return localStorage.getItem(src);},extn:function(src){if(src.indexOf('?')!=-1){src=src.split('?').slice(-1)[0];}
-return src.split('.').slice(-1)[0];},load:function(src){var t=src;$.ajax({url:t,data:{q:Math.floor(Math.random()*1000)},dataType:'text',success:function(txt){wn.assets.add(src,txt);},async:false})},execute:function(src){if(!wn.assets.exists(src)){wn.assets.load(src);}
-var type=wn.assets.extn(src);if(wn.assets.handler[type]){wn.assets.handler[type](wn.assets.get(src),src);wn.assets.executed_[src]=1;}},handler:{js:function(txt,src){wn.dom.eval(txt);},css:function(txt,src){wn.dom.set_style(txt);}}}
-/*
- *	lib/js/wn/dom.js
- */
-wn.provide('wn.dom');wn.dom={id_count:0,by_id:function(id){return document.getElementById(id);},set_unique_id:function(ele){var id='unique-'+wn.dom.id_count;if(ele)
-ele.setAttribute('id',id);wn.dom.id_count++;return id;},eval:function(txt){if(!txt)return;var el=document.createElement('script');el.appendChild(document.createTextNode(txt));document.getElementsByTagName('head')[0].appendChild(el);},set_style:function(txt){if(!txt)return;var se=document.createElement('style');se.type="text/css";if(se.styleSheet){se.styleSheet.cssText=txt;}else{se.appendChild(document.createTextNode(txt));}
-document.getElementsByTagName('head')[0].appendChild(se);},add:function(parent,newtag,className,cs,innerHTML,onclick){if(parent&&parent.substr)parent=wn.dom.by_id(parent);var c=document.createElement(newtag);if(parent)
-parent.appendChild(c);if(className){if(newtag.toLowerCase()=='img')
-c.src=className
-else
-c.className=className;}
-if(cs)wn.dom.css(c,cs);if(innerHTML)c.innerHTML=innerHTML;if(onclick)c.onclick=onclick;return c;},css:function(ele,s){if(ele&&s){for(var i in s)ele.style[i]=s[i];};return ele;},placeholder:function(dim,letter){function getsinglecol(){return Math.min(Math.round(Math.random()*9)*Math.round(Math.random()*1)+3,9)}
-function getcol(){return''+getsinglecol()+getsinglecol()+getsinglecol();}
-args={width:Math.round(flt(dim)*0.7)+'px',height:Math.round(flt(dim)*0.7)+'px',padding:Math.round(flt(dim)*0.15)+'px','font-size':Math.round(flt(dim)*0.6)+'px',col1:getcol(),col2:getcol(),letter:letter.substr(0,1).toUpperCase()}
-return repl('<div style="\
-   height: %(height)s; \
-   width: %(width)s; \
-   font-size: %(font-size)s; \
-   color: #fff; \
-   text-align: center; \
-   padding: %(padding)s; \
-   background: -moz-linear-gradient(top,  #%(col1)s 0%, #%(col2)s 99%); /* FF3.6+ */\
-   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#%(col1)s), color-stop(99%,#%(col2)s)); /* Chrome,Safari4+ */\
-   background: -webkit-linear-gradient(top,  #%(col1)s 0%,#%(col2)s 99%); /* Chrome10+,Safari5.1+ */\
-   background: -o-linear-gradient(top,  #%(col1)s 0%,#%(col2)s 99%); /* Opera 11.10+ */\
-   background: -ms-linear-gradient(top,  #%(col1)s 0%,#%(col2)s 99%); /* IE10+ */\
-   background: linear-gradient(top,  #%(col1)s 0%,#%(col2)s 99%); /* W3C */\
-   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\'#%(col1)s\', endColorstr=\'#%(col2)s\',GradientType=0 ); /* IE6-9 */\
-   ">%(letter)s</div>',args);}}
-wn.get_cookie=function(c){var clist=(document.cookie+'').split(';');var cookies={};for(var i=0;i<clist.length;i++){var tmp=clist[i].split('=');cookies[strip(tmp[0])]=strip(tmp[1]);}
-return cookies[c];}
-wn.dom.set_box_shadow=function(ele,spread){$(ele).css('-moz-box-shadow','0px 0px '+spread+'px rgba(0,0,0,0.3);')
-$(ele).css('-webkit-box-shadow','0px 0px '+spread+'px rgba(0,0,0,0.3);')
-$(ele).css('-box-shadow','0px 0px '+spread+'px rgba(0,0,0,0.3);')};(function($){$.fn.add_options=function(options_list){for(var i=0;i<options_list.length;i++){var v=options_list[i];value=v.value||v;label=v.label||v;$('<option>').html(label).attr('value',value).appendTo(this);}
-this.selectedIndex=0;return $(this);}
-$.fn.set_working=function(){var ele=this.get(0);$(ele).attr('disabled','disabled');if(ele.loading_img){$(ele.loading_img).toggle(true);}else{ele.loading_img=$('<img src="images/lib/ui/button-load.gif" \
-    style="margin-left: 4px; margin-bottom: -2px; display: inline;" />').insertAfter(ele);}}
-$.fn.done_working=function(){var ele=this.get(0);$(ele).attr('disabled',null);if(ele.loading_img){$(ele.loading_img).toggle(false);};}})(jQuery);wn.to_csv=function(data){var res=[];$.each(data,function(i,row){row=$.map(row,function(col){return typeof(col)==="string"?('"'+col.replace(/"/g,'\"')+'"'):col;});res.push(row.join(","));});return res.join("\n");}
-/*
- *	lib/js/wn/model.js
- */
-wn.provide('wn.model');wn.model={no_value_type:['Section Break','Column Break','HTML','Table','Button','Image'],new_names:{},with_doctype:function(doctype,callback){if(locals.DocType[doctype]){callback();}else{wn.call({method:'webnotes.widgets.form.load.getdoctype',args:{doctype:doctype},callback:callback});}},with_doc:function(doctype,name,callback){if(!name)name=doctype;if(locals[doctype]&&locals[doctype][name]){callback(name);}else{wn.call({method:'webnotes.widgets.form.load.getdoc',args:{doctype:doctype,name:name},callback:function(r){callback(name,r);}});}},can_delete:function(doctype){if(!doctype)return false;return wn.boot.profile.can_cancel.indexOf(doctype)!=-1;},has_value:function(dt,dn,fn){var val=locals[dt]&&locals[dt][dn]&&locals[dt][dn][fn];var df=wn.meta.get_docfield(dt,fn,dn);if(df.fieldtype=='Table'){var ret=false;$.each(locals[df.options]||{},function(k,d){if(d.parent==dn&&d.parenttype==dt&&d.parentfield==df.fieldname){ret=true;}});}else{var ret=!is_null(val);}
-return ret?true:false;}}
-/*
- *	lib/js/wn/meta.js
- */
-wn.provide('wn.meta.docfield_map');wn.provide('wn.meta.docfield_list');wn.provide('wn.meta.doctypes');$.extend(wn.meta,{add_field:function(df){wn.provide('wn.meta.docfield_map.'+df.parent);wn.meta.docfield_map[df.parent][df.fieldname||df.label]=df;if(!wn.meta.docfield_list[df.parent])
-wn.meta.docfield_list[df.parent]=[];for(var i in wn.meta.docfield_list[df.parent]){var d=wn.meta.docfield_list[df.parent][i];if(df.fieldname==d.fieldname)
-return;}
-wn.meta.docfield_list[df.parent].push(df);},get_docfield:function(dt,fn,dn){if(dn&&local_dt[dt]&&local_dt[dt][dn]){return local_dt[dt][dn][fn];}else{return wn.meta.docfield_map[dt][fn];}}});
-/*
- *	lib/js/wn/misc/tools.js
- */
-wn.markdown=function(txt){if(!wn.md2html){wn.require('js/lib/showdown.js');wn.md2html=new Showdown.converter();}
-return'<div class="markdown">'+wn.md2html.makeHtml(txt)+'</div>';}
-/*
- *	lib/js/wn/misc/user.js
- */
-wn.user_info=function(uid){var def={'fullname':uid,'image':'images/lib/ui/no_img_m.gif'}
-if(!wn.boot.user_info)return def
-if(!wn.boot.user_info[uid])return def
-if(!wn.boot.user_info[uid].fullname)
-wn.boot.user_info[uid].fullname=uid;if(!wn.boot.user_info[uid].image)
-wn.boot.user_info[uid].image=def.image;return wn.boot.user_info[uid];}
-wn.provide('wn.user');$.extend(wn.user,{name:(wn.boot?wn.boot.profile.name:'Guest'),has_role:function(rl){if(typeof rl=='string')
-rl=[rl];for(var i in rl){if((wn.boot?wn.boot.profile.roles:['Guest']).indexOf(rl[i])!=-1)
-return true;}},is_report_manager:function(){return wn.user.has_role(['Administrator','System Manager','Report Manager']);}})
-wn.session_alive=true;$(document).bind('mousemove',function(){wn.session_alive=true;if(wn.session_alive_timeout)
-clearTimeout(wn.session_alive_timeout);wn.session_alive_timeout=setTimeout('wn.session_alive=false;',30000);})
-/*
- *	lib/js/lib/json2.js
- */
-var JSON;if(!JSON){JSON={};}
-(function(){"use strict";function f(n){return n<10?'0'+n:n;}
-if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+
-f(this.getUTCMonth()+1)+'-'+
-f(this.getUTCDate())+'T'+
-f(this.getUTCHours())+':'+
-f(this.getUTCMinutes())+':'+
-f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
-var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
-function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
-if(typeof rep==='function'){value=rep.call(holder,key,value);}
-switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
-gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
-v=partial.length===0?'[]':gap?'[\n'+gap+partial.join(',\n'+gap)+'\n'+mind+']':'['+partial.join(',')+']';gap=mind;return v;}
-if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){if(typeof rep[i]==='string'){k=rep[i];v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
-v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
-if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
-rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
-return str('',{'':value});};}
-if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
-return reviver.call(holder,key,value);}
-text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
-('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
-if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
-throw new SyntaxError('JSON.parse');};}}());
-/*
- *	lib/js/wn/router.js
- */
-wn.re_route={}
-wn.route=function(){if(wn.re_route[window.location.hash]){var re_route_val=wn.get_route_str(wn.re_route[window.location.hash]);var cur_route_val=wn.get_route_str(wn._cur_route);if(decodeURIComponent(re_route_val)===decodeURIComponent(cur_route_val)){window.history.back();return;}else{window.location.hash=wn.re_route[window.location.hash];}}
-wn._cur_route=window.location.hash;route=wn.get_route();switch(route[0]){case"List":wn.views.doclistview.show(route[1]);break;case"Form":if(route.length>3){route[2]=route.splice(2).join('/');}
-wn.views.formview.show(route[1],route[2]);break;case"Report":wn.views.reportview.show(route[1],route[2]);break;case"Report2":wn.views.reportview2.show();break;default:wn.views.pageview.show(route[0]);}}
-wn.get_route=function(route){return $.map(wn.get_route_str(route).split('/'),function(r){return decodeURIComponent(r);});}
-wn.get_route_str=function(route){if(!route)
-route=window.location.hash;if(route.substr(0,1)=='#')route=route.substr(1);if(route.substr(0,1)=='!')route=route.substr(1);return route;}
-wn.set_route=function(){route=$.map(arguments,function(a){return encodeURIComponent(a)}).join('/');window.location.hash=route;wn.app.set_favicon();}
-wn._cur_route=null;$(window).bind('hashchange',function(){if(location.hash==wn._cur_route)
-return;wn.route();});
-/*
- *	lib/js/wn/ui/listing.js
- */
-wn.provide('wn.ui');wn.ui.Listing=Class.extend({init:function(opts){this.opts=opts||{};this.page_length=20;this.start=0;this.data=[];if(opts){this.make();}},prepare_opts:function(){if(this.opts.new_doctype){if(wn.boot.profile.can_create.indexOf(this.opts.new_doctype)==-1){this.opts.new_doctype=null;}else{this.opts.new_doctype=get_doctype_label(this.opts.new_doctype);}}
-if(!this.opts.no_result_message){this.opts.no_result_message='Nothing to show'}},make:function(opts){if(opts){this.opts=opts;}
-this.prepare_opts();$.extend(this,this.opts);$(this.parent).html(repl('\
-   <div class="wnlist">\
-    <h3 class="title hide">%(title)s</h3>\
-    \
-    <div class="list-filters hide">\
-     <div class="show_filters well">\
-      <div class="filter_area"></div>\
-      <div>\
-       <button class="btn btn-small btn-info search-btn">\
-        <i class="icon-refresh icon-white"></i> Search</button>\
-       <button class="btn btn-small add-filter-btn">\
-        <i class="icon-plus"></i> Add Filter</button>\
-      </div>\
-     </div>\
-    </div>\
-    \
-    <div style="margin-bottom:9px" class="list-toolbar-wrapper">\
-     <div class="list-toolbar" style="display:inline-block; margin-right: 10px;">\
-     </div>\
-     <div style="display:inline-block; width: 24px; margin-left: 4px">\
-      <img src="images/lib/ui/button-load.gif" \
-      class="img-load"/></div>\
-    </div><div style="clear:both"></div>\
-    \
-    <div class="no-result help hide">\
-     %(no_result_message)s\
-    </div>\
-    \
-    <div class="result">\
-     <div class="result-list"></div>\
-    </div>\
-    \
-    <div class="paging-button">\
-     <button class="btn btn-small btn-more hide">More...</div>\
-    </div>\
-   </div>\
-  ',this.opts));this.$w=$(this.parent).find('.wnlist');this.set_events();if(this.appframe){this.$w.find('.list-toolbar-wrapper').toggle(false);}
-if(this.show_filters){this.make_filters();}},add_button:function(label,click,icon){if(this.appframe){return this.appframe.add_button(label,click,icon)}else{$button=$('<button class="btn btn-small"></button>').appendTo(this.$w.find('.list-toolbar'))
-if(icon){$('<i>').addClass(icon).appendTo($button);}
-$button.html(label).click(click);return $button}},show_view:function($btn,$div,$btn_unsel,$div_unsel){$btn_unsel.removeClass('btn-info');$btn_unsel.find('i').removeClass('icon-white');$div_unsel.toggle(false);$btn.addClass('btn-info');$btn.find('i').addClass('icon-white');$div.toggle(true);},set_events:function(){var me=this;this.$w.find('.btn-more').click(function(){me.run({append:true});});if(this.title){this.$w.find('h3').html(this.title).toggle(true);}
-if(!(this.hide_refresh||this.no_refresh)){this.add_button('Refresh',function(){me.run();},'icon-refresh');}
-if(this.new_doctype){this.add_button('New '+this.new_doctype,function(){(me.custom_new_doc||me.make_new_doc)(me.new_doctype);},'icon-plus');}
-if(me.show_filters){this.add_button('Show Filters',function(){me.filter_list.show_filters();},'icon-search').addClass('btn-filter');}
-if(me.no_toolbar||me.hide_toolbar){me.$w.find('.list-toolbar-wrapper').toggle(false);}},make_new_doc:function(new_doctype){new_doc(new_doctype);},make_filters:function(){this.filter_list=new wn.ui.FilterList({listobj:this,$parent:this.$w.find('.list-filters').toggle(true),doctype:this.doctype,filter_fields:this.filter_fields});},clear:function(){this.data=[];this.$w.find('.result-list').empty();this.$w.find('.result').toggle(true);this.$w.find('.no-result').toggle(false);this.start=0;},run:function(){var me=this;var a0=arguments[0];var a1=arguments[1];if(a0&&typeof a0=='function')
-this.onrun=a0;if(a0&&a0.callback)
-this.onrun=a0.callback;if(!a1&&!(a0&&a0.append))
-this.start=0;me.set_working(true);wn.call({method:this.opts.method||'webnotes.widgets.query_builder.runquery',args:this.get_call_args(a0),callback:function(r){me.set_working(false);me.render_results(r)},no_spinner:this.opts.no_loading});},set_working:function(flag){this.$w.find('.img-load').toggle(flag);},get_call_args:function(opts){if(!this.method){var query=this.get_query?this.get_query():this.query;query=this.add_limits(query);var args={query_max:this.query_max,as_dict:1}
-args.simple_query=query;}else{var args={limit_start:this.start,limit_page_length:this.page_length}}
-if(this.args)
-$.extend(args,this.args)
-if(this.get_args){$.extend(args,this.get_args(opts));}
-return args;},render_results:function(r){if(this.start==0)this.clear();this.$w.find('.btn-more').toggle(false);if(r.message)r.values=r.message;if(r.values&&r.values.length){this.data=this.data.concat(r.values);this.render_list(r.values);this.update_paging(r.values);}else{if(this.start==0){this.$w.find('.result').toggle(false);this.$w.find('.no-result').toggle(true);}}
-if(this.onrun)this.onrun();if(this.callback)this.callback(r);},render_list:function(values){var m=Math.min(values.length,this.page_length);for(var i=0;i<m;i++){this.render_row(this.add_row(),values[i],this,i);}},update_paging:function(values){if(values.length>=this.page_length){this.$w.find('.btn-more').toggle(true);this.start+=this.page_length;}},add_row:function(){return $('<div class="list-row">').appendTo(this.$w.find('.result-list')).get(0);},refresh:function(){this.run();},add_limits:function(query){query+=' LIMIT '+this.start+','+(this.page_length+1);return query}});
-/*
- *	lib/js/wn/ui/filters.js
- */
-wn.ui.FilterList=Class.extend({init:function(opts){wn.require('js/fields.js');$.extend(this,opts);this.filters=[];this.$w=this.$parent;this.set_events();},set_events:function(){var me=this;this.$w.find('.add-filter-btn').bind('click',function(){me.add_filter();});this.$w.find('.search-btn').bind('click',function(){me.listobj.run();});},show_filters:function(){this.$w.find('.show_filters').toggle();if(!this.filters.length)
-this.add_filter();},add_filter:function(tablename,fieldname,condition,value){this.push_new_filter(tablename,fieldname,condition,value);if(fieldname){this.$w.find('.show_filters').toggle(true);}},push_new_filter:function(tablename,fieldname,condition,value){this.filters.push(new wn.ui.Filter({flist:this,tablename:tablename,fieldname:fieldname,condition:condition,value:value}));},get_filters:function(){var values=[];$.each(this.filters,function(i,f){if(f.field)
-values.push(f.get_value());})
-return values;},update_filters:function(){var fl=[];$.each(this.filters,function(i,f){if(f.field)fl.push(f);})
-this.filters=fl;},get_filter:function(fieldname){for(var i in this.filters){if(this.filters[i].field.df.fieldname==fieldname)
-return this.filters[i];}}});wn.ui.Filter=Class.extend({init:function(opts){$.extend(this,opts);this.doctype=this.flist.doctype;this.make();this.make_select();this.set_events();},make:function(){this.flist.$w.find('.filter_area').append('<div class="list_filter">\
-  <span class="fieldname_select_area"></span>\
-  <select class="condition">\
-   <option value="=">Equals</option>\
-   <option value="like">Like</option>\
-   <option value=">=">Greater or equals</option>\
-   <option value="<=">Less or equals</option>\
-   <option value=">">Greater than</option>\
-   <option value="<">Less than</option>\
-   <option value="in">In</option>\
-   <option value="!=">Not equals</option>\
-  </select>\
-  <span class="filter_field"></span>\
-  <a class="close">&times;</a>\
-  </div>');this.$w=this.flist.$w.find('.list_filter:last-child');},make_select:function(){this.fieldselect=new wn.ui.FieldSelect(this.$w.find('.fieldname_select_area'),this.doctype,this.filter_fields);},set_events:function(){var me=this;this.fieldselect.$select.bind('change',function(){var $selected=$(this).find("option:selected")
-me.set_field($selected.attr("table"),$selected.attr("fieldname"));});this.$w.find('a.close').bind('click',function(){me.$w.css('display','none');var value=me.field.get_value();me.field=null;if(!me.flist.get_filters().length){me.flist.$w.find('.set_filters').toggle(true);me.flist.$w.find('.show_filters').toggle(false);}
-if(value){me.flist.listobj.run();}
-me.flist.update_filters();return false;});me.$w.find('.condition').change(function(){if($(this).val()=='in'){me.set_field(me.field.df.parent,me.field.df.fieldname,'Data');if(!me.field.desc_area)
-me.field.desc_area=$a(me.field.wrapper,'span','help',null,'values separated by comma');}else{me.set_field(me.field.df.parent,me.field.df.fieldname);}});if(me.fieldname){this.set_values(me.tablename,me.fieldname,me.condition,me.value);}else{me.set_field(me.doctype,'name');}},set_values:function(tablename,fieldname,condition,value){this.set_field(tablename,fieldname);if(condition)this.$w.find('.condition').val(condition).change();if(value)this.field.set_input(value)},set_field:function(tablename,fieldname,fieldtype){var me=this;var cur=me.field?{fieldname:me.field.df.fieldname,fieldtype:me.field.df.fieldtype,parent:me.field.df.parent,}:{}
-var df=me.fieldselect.fields_by_name[tablename][fieldname];this.set_fieldtype(df,fieldtype);if(me.field&&cur.fieldname==fieldname&&df.fieldtype==cur.fieldtype&&df.parent==cur.parent){return;}
-me.fieldselect.$select.val(tablename+"."+fieldname);var field_area=me.$w.find('.filter_field').empty().get(0);f=make_field(df,null,field_area,null,0,1);f.df.single_select=1;f.not_in_form=1;f.with_label=0;f.refresh();me.field=f;this.set_default_condition(df,fieldtype);$(me.field.wrapper).find(':input').keydown(function(ev){if(ev.which==13){me.flist.listobj.run();}})},set_fieldtype:function(df,fieldtype){if(df.original_type)
-df.fieldtype=df.original_type;else
-df.original_type=df.fieldtype;df.description='';df.reqd=0;if(fieldtype){df.fieldtype=fieldtype;return;}
-if(df.fieldtype=='Check'){df.fieldtype='Select';df.options='No\nYes';}else if(['Text','Text Editor','Code','Link'].indexOf(df.fieldtype)!=-1){df.fieldtype='Data';}},set_default_condition:function(df,fieldtype){if(!fieldtype){if(df.fieldtype=='Data'){this.$w.find('.condition').val('like');}else{this.$w.find('.condition').val('=');}}},get_value:function(){var me=this;var val=me.field.get_value();var cond=me.$w.find('.condition').val();if(me.field.df.original_type=='Check'){val=(val=='Yes'?1:0);}
-if(cond=='like'){if((val.length===0)||(val.lastIndexOf("%")!==(val.length-1))){val=(val||"")+'%';}}
-return[me.fieldselect.$select.find('option:selected').attr('table'),me.field.df.fieldname,me.$w.find('.condition').val(),cstr(val)];}});wn.ui.FieldSelect=Class.extend({init:function(parent,doctype,filter_fields,with_blank){this.doctype=doctype;this.fields_by_name={};this.with_blank=with_blank;this.$select=$('<select>').appendTo(parent);if(filter_fields){for(var i in filter_fields)
-this.add_field_option(this.filter_fields[i])}else{this.build_options();}},build_options:function(){var me=this;me.table_fields=[];var std_filters=[{fieldname:'name',fieldtype:'Data',label:'ID',parent:me.doctype},{fieldname:'modified',fieldtype:'Date',label:'Last Modified',parent:me.doctype},{fieldname:'owner',fieldtype:'Data',label:'Created By',parent:me.doctype},{fieldname:'creation',fieldtype:'Date',label:'Created On',parent:me.doctype},{fieldname:'_user_tags',fieldtype:'Data',label:'Tags',parent:me.doctype},{fieldname:'docstatus',fieldtype:'Int',label:'Doc Status',parent:me.doctype},];var doctype_obj=locals['DocType'][me.doctype];if(doctype_obj&&cint(doctype_obj.istable)){std_filters=std_filters.concat([{fieldname:'parent',fieldtype:'Data',label:'Parent',parent:me.doctype}]);}
-if(this.with_blank){this.$select.append($('<option>',{value:''}).text(''));}
-$.each(std_filters.concat(wn.meta.docfield_list[me.doctype]),function(i,df){me.add_field_option(df);});$.each(me.table_fields,function(i,table_df){if(table_df.options){$.each(wn.meta.docfield_list[table_df.options],function(i,df){me.add_field_option(df);});}});},add_field_option:function(df){var me=this;if(me.doctype&&df.parent==me.doctype){var label=df.label;var table=me.doctype;if(df.fieldtype=='Table')me.table_fields.push(df);}else{var label=df.label+' ('+df.parent+')';var table=df.parent;}
-if(wn.model.no_value_type.indexOf(df.fieldtype)==-1&&!(me.fields_by_name[df.parent]&&me.fields_by_name[df.parent][df.fieldname])){this.$select.append($('<option>',{value:table+"."+df.fieldname,fieldname:df.fieldname,table:df.parent}).text(label));if(!me.fields_by_name[df.parent])me.fields_by_name[df.parent]={};me.fields_by_name[df.parent][df.fieldname]=df;}}})
-/*
- *	lib/js/wn/views/container.js
- */
-wn.provide('wn.pages');wn.provide('wn.views');wn.views.Container=Class.extend({init:function(){this.container=$('#body_div').get(0);this.page=null;this.pagewidth=$('#body_div').width();this.pagemargin=50;},add_page:function(label,onshow,onhide){var page=$('<div class="content"></div>').attr('id',"page-"+label).appendTo(this.container).get(0);if(onshow)
-$(page).bind('show',onshow);if(onshow)
-$(page).bind('hide',onhide);page.label=label;wn.pages[label]=page;return page;},change_to:function(label){if(this.page&&this.page.label==label){$(this.page).trigger('show');return;}
-var me=this;if(label.tagName){var page=label;}else{var page=wn.pages[label];}
-if(!page){console.log('Page not found '+label);return;}
-if(this.page&&this.page!=page){$(this.page).toggle(false);$(this.page).trigger('hide');}
-if(!this.page||this.page!=page){this.page=page;$(this.page).toggle(true);}
-this.page._route=window.location.hash;document.title=this.page.label;$(this.page).trigger('show');scroll(0,0);return this.page;}});wn.views.add_module_btn=function(parent,module){$(parent).append(repl('<span class="label" style="margin-right: 8px; cursor: pointer;"\
-     onclick="wn.set_route(\'%(module_small)s-home\')">\
-     <i class="icon-home icon-white"></i> %(module)s Home\
-    </span>',{module:module,module_small:module.toLowerCase()}));}
-wn.views.add_list_btn=function(parent,doctype){$(parent).append(repl('<span class="label" style="margin-right: 8px; cursor: pointer;"\
-     onclick="wn.set_route(\'List\', \'%(doctype)s\')">\
-     <i class="icon-list icon-white"></i> %(doctype)s List\
-    </span>',{doctype:doctype}));}
-/*
- *	lib/js/wn/views/pageview.js
- */
-wn.provide('wn.views.pageview');wn.views.pageview={with_page:function(name,callback){if((locals.Page&&locals.Page[name])||name==window.page_name){callback();}else{wn.call({method:'webnotes.widgets.page.getpage',args:{'name':name},callback:callback});}},show:function(name){if(!name)name=(wn.boot?wn.boot.home_page:window.page_name);wn.views.pageview.with_page(name,function(r){if(r&&r.exc){if(!r['403'])wn.container.change_to('404');}else if(!wn.pages[name]){new wn.views.Page(name);}
-wn.container.change_to(name);});}}
-wn.views.Page=Class.extend({init:function(name,wrapper){this.name=name;var me=this;if(name==window.page_name){this.wrapper=document.getElementById('page-'+name);this.wrapper.label=document.title||window.page_name;this.wrapper.page_name=window.page_name;wn.pages[window.page_name]=this.wrapper;}else{this.pagedoc=locals.Page[this.name];this.wrapper=wn.container.add_page(this.name);this.wrapper.label=this.pagedoc.title||this.pagedoc.name;this.wrapper.page_name=this.pagedoc.name;this.wrapper.innerHTML=this.pagedoc.content;wn.dom.eval(this.pagedoc.__script||this.pagedoc.script||'');wn.dom.set_style(this.pagedoc.style||'');}
-this.trigger('onload');$(this.wrapper).bind('show',function(){cur_frm=null;me.trigger('onshow');me.trigger('refresh');});},trigger:function(eventname){var me=this;try{if(pscript[eventname+'_'+this.name]){pscript[eventname+'_'+this.name](me.wrapper);}else if(me.wrapper[eventname]){me.wrapper[eventname](me.wrapper);}}catch(e){console.log(e);}}})
-wn.views.make_404=function(){var page=wn.container.add_page('404');$(page).html('<div class="layout-wrapper">\
-  <h1>Not Found</h1><br>\
-  <p>Sorry we were unable to find what you were looking for.</p>\
-  <p><a href="#">Go back to home</a></p>\
-  </div>').toggle(false);};wn.views.make_403=function(){var page=wn.container.add_page('403');$(page).html('<div class="layout-wrapper">\
-  <h1>Not Permitted</h1><br>\
-  <p>Sorry you are not permitted to view this page.</p>\
-  <p><a href="#">Go back to home</a></p>\
-  </div>').toggle(false);};
-/*
- *	lib/js/wn/request.js
- */
-wn.provide('wn.request');wn.request.url='server.py';wn.request.prepare=function(opts){if(opts.btn)$(opts.btn).set_working();if(opts.show_spinner)set_loading();if(opts.freeze)freeze();if(!opts.args.cmd){console.log(opts)
-throw"Incomplete Request";}}
-wn.request.cleanup=function(opts,r){if(opts.btn)$(opts.btn).done_working();if(opts.show_spinner)hide_loading();if(opts.freeze)unfreeze();if(wn.boot&&wn.boot.sid&&wn.get_cookie('sid')!=wn.boot.sid){if(!wn.app.logged_out){msgprint('Session Expired. Logging you out');wn.app.logout();}
-return;}
-if(r.server_messages){r.server_messages=JSON.parse(r.server_messages)
-msgprint(r.server_messages);}
-if(r.exc){r.exc=JSON.parse(r.exc);if(r.exc instanceof Array){$.each(r.exc,function(i,v){if(v)console.log(v);})}else{console.log(r.exc);}};if(r['403']){wn.container.change_to('403');}
-if(r.docs){LocalDB.sync(r.docs);}
-wn.last_response=r;}
-wn.request.call=function(opts){wn.request.prepare(opts);var ajax_args={url:opts.url||wn.request.url,data:opts.args,type:opts.type||'POST',dataType:opts.dataType||'json',success:function(r,xhr){wn.request.cleanup(opts,r);opts.success&&opts.success(r,xhr.responseText);},error:function(xhr,textStatus){wn.request.cleanup(opts,{});show_alert('Unable to complete request: '+textStatus)
-opts.error&&opts.error(xhr)}};if(opts.progress_bar){var interval=null;$.extend(ajax_args,{xhr:function(){var xhr=jQuery.ajaxSettings.xhr();interval=setInterval(function(){if(xhr.readyState>2){var total=parseInt(xhr.getResponseHeader('Original-Length')||0)||parseInt(xhr.getResponseHeader('Content-Length'));var completed=parseInt(xhr.responseText.length);var percent=(100.0/total*completed).toFixed(2);opts.progress_bar.css('width',(percent<10?10:percent)+'%');}},50);wn.last_xhr=xhr;return xhr;},complete:function(){opts.progress_bar.css('width','100%');clearInterval(interval);}})}
-$.ajax(ajax_args);}
-wn.call=function(opts){var args=$.extend({},opts.args)
-if(opts.module&&opts.page){args.cmd=opts.module+'.page.'+opts.page+'.'+opts.page+'.'+opts.method}else if(opts.method){args.cmd=opts.method;}
-for(key in args){if(args[key]&&typeof args[key]!='string'){args[key]=JSON.stringify(args[key]);}}
-wn.request.call({args:args,success:opts.callback,error:opts.error,btn:opts.btn,freeze:opts.freeze,show_spinner:!opts.no_spinner,progress_bar:opts.progress_bar});}
-/*
- *	lib/js/core.js
- */
-if(!console){var console={log:function(txt){}}}
-window._version_number="%(_version_number)s";$(document).ready(function(){wn.assets.check();wn.provide('wn.app');$.extend(wn.app,new wn.Application());});
-
-/*
- *	lib/js/legacy/globals.js
- */
-wn.provide('wn.widgets.form');wn.provide('wn.widgets.report');wn.provide('wn.utils');wn.provide('wn.model');wn.provide('wn.profile');wn.provide('wn.session');wn.provide('_f');wn.provide('_p');wn.provide('_r');wn.provide('_c');wn.provide('_e');wn.provide('_startup_data')
-wn.settings.no_history=1;var NEWLINE='\n';var profile=null;var user=null;var user_defaults=null;var user_roles=null;var user_fullname=null;var user_email=null;var user_img={};var pscript={};var selector=null;var top_index=91;var _f={};var _p={};var _e={};var _r={};var FILTER_SEP='\1';var frms={};var cur_frm=null;var pscript={};var validated=true;var validation_message='';var tinymce_loaded=null;
-/*
- *	lib/js/legacy/utils/datatype.js
- */
-wn.utils.full_name=function(fn,ln){return fn+(ln?' ':'')+(ln?ln:'')}
-function fmt_money(v){if(v==null||v=='')return'0.00';v=(v+'').replace(/,/g,'');v=parseFloat(v);if(isNaN(v)){return'';}else{var val=2;if(wn.boot.sysdefaults.currency_format=='Millions')val=3;v=v.toFixed(2);var delimiter=",";amount=v+'';var a=amount.split('.',2)
-var d=a[1];var i=parseInt(a[0]);if(isNaN(i)){return'';}
-var minus='';if(v<0){minus='-';}
-i=Math.abs(i);var n=new String(i);var a=[];if(n.length>3)
-{var nn=n.substr(n.length-3);a.unshift(nn);n=n.substr(0,n.length-3);while(n.length>val)
-{var nn=n.substr(n.length-val);a.unshift(nn);n=n.substr(0,n.length-val);}}
-if(n.length>0){a.unshift(n);}
-n=a.join(delimiter);if(d.length<1){amount=n;}
-else{amount=n+'.'+d;}
-amount=minus+amount;return amount;}}
-function toTitle(str){var word_in=str.split(" ");var word_out=[];for(w in word_in){word_out[w]=word_in[w].charAt(0).toUpperCase()+word_in[w].slice(1);}
-return word_out.join(" ");}
-function is_null(v){if(v==null){return 1}else if(v==0){if((v+'').length>=1)return 0;else return 1;}else{return 0}}
-function $s(ele,v,ftype,fopt){if(v==null)v='';if(ftype=='Text'||ftype=='Small Text'){ele.innerHTML=v?v.replace(/\n/g,'<br>'):'';}else if(ftype=='Date'){v=dateutil.str_to_user(v);if(v==null)v=''
-ele.innerHTML=v;}else if(ftype=='Link'&&fopt){ele.innerHTML='';doc_link(ele,fopt,v);}else if(ftype=='Currency'){ele.style.textAlign='right';if(is_null(v))
-ele.innerHTML='';else
-ele.innerHTML=fmt_money(v);}else if(ftype=='Int'){ele.style.textAlign='right';ele.innerHTML=v;}else if(ftype=='Check'){if(v)ele.innerHTML='<img src="images/lib/ui/tick.gif">';else ele.innerHTML='';}else{ele.innerHTML=v;}}
-function clean_smart_quotes(s){if(s){s=s.replace(/\u2018/g,"'");s=s.replace(/\u2019/g,"'");s=s.replace(/\u201c/g,'"');s=s.replace(/\u201d/g,'"');s=s.replace(/\u2013/g,'-');s=s.replace(/\u2014/g,'--');}
-return s;}
-function copy_dict(d){var n={};for(var k in d)n[k]=d[k];return n;}
-function $p(ele,top,left){ele.style.position='absolute';ele.style.top=top+'px';ele.style.left=left+'px';}
-function replace_newlines(t){return t?t.replace(/\n/g,'<br>'):'';}
-function cstr(s){if(s==null)return'';return s+'';}
-function nth(number){number=cint(number);var s='th';if((number+'').substr(-1)=='1')s='st';if((number+'').substr(-1)=='2')s='nd';if((number+'').substr(-1)=='3')s='rd';return number+s;}
-function flt(v,decimals){if(v==null||v=='')return 0;v=(v+'').replace(/,/g,'');v=parseFloat(v);if(isNaN(v))
-v=0;if(decimals!=null)
-return parseFloat(v.toFixed(decimals));return v;}
-function esc_quotes(s){if(s==null)s='';return s.replace(/'/,"\'");}
-var crop=function(s,len){if(s.length>len)
-return s.substr(0,len-3)+'...';else
-return s;}
-var strip=function(s,chars){var s=lstrip(s,chars)
-s=rstrip(s,chars);return s;}
-var lstrip=function(s,chars){if(!chars)chars=['\n','\t',' '];var first_char=s.substr(0,1);while(in_list(chars,first_char)){var s=s.substr(1);first_char=s.substr(0,1);}
-return s;}
-var rstrip=function(s,chars){if(!chars)chars=['\n','\t',' '];var last_char=s.substr(s.length-1);while(in_list(chars,last_char)){var s=s.substr(0,s.length-1);last_char=s.substr(s.length-1);}
-return s;}
-function repl_all(s,s1,s2){var idx=s.indexOf(s1);while(idx!=-1){s=s.replace(s1,s2);idx=s.indexOf(s1);}
-return s;}
-function repl(s,dict){if(s==null)return'';for(key in dict)s=repl_all(s,'%('+key+')s',dict[key]);return s;}
-function keys(obj){var mykeys=[];for(key in obj)mykeys[mykeys.length]=key;return mykeys;}
-function values(obj){var myvalues=[];for(key in obj)myvalues[myvalues.length]=obj[key];return myvalues;}
-function in_list(list,item){for(var i=0;i<list.length;i++)
-if(list[i]==item)return true;return false;}
-function has_common(list1,list2){if(!list1||!list2)return false;for(var i=0;i<list1.length;i++){if(in_list(list2,list1[i]))return true;}
-return false;}
-var inList=in_list;function add_lists(l1,l2){var l=[];for(var k in l1)l.push(l1[k]);for(var k in l2)l.push(l2[k]);return l;}
-function docstring(obj){return JSON.stringify(obj);}
-function DocLink(p,doctype,name,onload){var a=$a(p,'span','link_type');a.innerHTML=a.dn=name;a.dt=doctype;a.onclick=function(){loaddoc(this.dt,this.dn,onload)};return a;}
-var doc_link=DocLink;function roundNumber(num,dec){var result=Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);return result;}
-/*
- *	lib/js/legacy/utils/datetime.js
- */
-function same_day(d1,d2){if(d1.getFullYear()==d2.getFullYear()&&d1.getMonth()==d2.getMonth()&&d1.getDate()==d2.getDate())return true;else return false;}
-var month_list=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];var month_last={1:31,2:28,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31}
-var month_list_full=['January','February','March','April','May','June','July','August','September','October','November','December'];var week_list=['Sun','Mon','Tue','Wed','Thu','Fri','Sat'];var week_list_full=['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];function int_to_str(i,len){i=''+i;if(i.length<len)for(c=0;c<(len-i.length);c++)i='0'+i;return i}
-wn.datetime={str_to_obj:function(d){if(typeof d=="object")return d;if(!d)return new Date();var tm=[null,null];if(d.search(' ')!=-1){var tm=d.split(' ')[1].split(':');var d=d.split(' ')[0];}
-if(d.search('-')!=-1){var t=d.split('-');return new Date(t[0],t[1]-1,t[2],tm[0],tm[1]);}else if(d.search('/')!=-1){var t=d.split('/');return new Date(t[0],t[1]-1,t[2],tm[0],tm[1]);}else{return new Date();}},obj_to_str:function(d){if(typeof d=='string')return d;return d.getFullYear()+'-'+int_to_str(d.getMonth()+1,2)+'-'+int_to_str(d.getDate(),2);},obj_to_user:function(d){return dateutil.str_to_user(dateutil.obj_to_str(d));},get_diff:function(d1,d2){if(typeof d1=='string')d1=dateutil.str_to_obj(d1);if(typeof d2=='string')d2=dateutil.str_to_obj(d2);return((d1-d2)/86400000);},get_day_diff:function(d1,d2){return dateutil.get_diff(new Date(d1.getYear(),d1.getMonth(),d1.getDate(),0,0),new Date(d2.getYear(),d2.getMonth(),d2.getDate(),0,0))},add_days:function(d,days){var dt=dateutil.str_to_obj(d);var new_dt=new Date(dt.getTime()+(days*24*60*60*1000));return dateutil.obj_to_str(new_dt);},add_months:function(d,months){dt=dateutil.str_to_obj(d)
-new_dt=new Date(dt.getFullYear(),dt.getMonth()+months,dt.getDate())
-if(new_dt.getDate()!=dt.getDate()){return dateutil.month_end(new Date(dt.getFullYear(),dt.getMonth()+months,1))}
-return dateutil.obj_to_str(new_dt);},month_start:function(){var d=new Date();return d.getFullYear()+'-'+int_to_str(d.getMonth()+1,2)+'-01';},month_end:function(d){if(!d)var d=new Date();var m=d.getMonth()+1;var y=d.getFullYear();last_date=month_last[m];if(m==2&&(y%4)==0&&((y%100)!=0||(y%400)==0))
-last_date=29;return y+'-'+int_to_str(m,2)+'-'+last_date;},get_user_fmt:function(){var t=sys_defaults.date_format;if(!t)t='dd-mm-yyyy';return t;},str_to_user:function(val,no_time_str){var user_fmt=dateutil.get_user_fmt();var time_str='';if(val==null||val=='')return null;if(val.search(':')!=-1){var tmp=val.split(' ');if(tmp[1])
-time_str=' '+tmp[1];var d=tmp[0];}else{var d=val;}
-if(no_time_str)time_str='';d=d.split('-');if(d.length==3){if(user_fmt=='dd-mm-yyyy')
-val=d[2]+'-'+d[1]+'-'+d[0]+time_str;else if(user_fmt=='dd/mm/yyyy')
-val=d[2]+'/'+d[1]+'/'+d[0]+time_str;else if(user_fmt=='yyyy-mm-dd')
-val=d[0]+'-'+d[1]+'-'+d[2]+time_str;else if(user_fmt=='mm/dd/yyyy')
-val=d[1]+'/'+d[2]+'/'+d[0]+time_str;else if(user_fmt=='mm-dd-yyyy')
-val=d[1]+'-'+d[2]+'-'+d[0]+time_str;}
-return val;},full_str:function(){var d=new Date();return d.getFullYear()+'-'+(d.getMonth()+1)+'-'+d.getDate()+' '
-+d.getHours()+':'+d.getMinutes()+':'+d.getSeconds();},user_to_str:function(d){var user_fmt=this.get_user_fmt();var time_str='';if(d.search(/ /)!=-1){time_str=" "+d.split(" ")[1];d=d.split(" ")[0];}
-if(user_fmt=='dd-mm-yyyy'){var d=d.split('-');var val=d[2]+'-'+d[1]+'-'+d[0];}
-else if(user_fmt=='dd/mm/yyyy'){var d=d.split('/');var val=d[2]+'-'+d[1]+'-'+d[0];}
-else if(user_fmt=='yyyy-mm-dd'){var val=d;}
-else if(user_fmt=='mm/dd/yyyy'){var d=d.split('/');var val=d[2]+'-'+d[0]+'-'+d[1];}
-else if(user_fmt=='mm-dd-yyyy'){var d=d.split('-');var val=d[2]+'-'+d[0]+'-'+d[1];}
-return val+time_str;},user_to_obj:function(d){return dateutil.str_to_obj(dateutil.user_to_str(d));},global_date_format:function(d){if(d.substr)d=this.str_to_obj(d);return nth(d.getDate())+' '+month_list_full[d.getMonth()]+' '+d.getFullYear();},get_today:function(){var today=new Date();var m=(today.getMonth()+1)+'';if(m.length==1)m='0'+m;var d=today.getDate()+'';if(d.length==1)d='0'+d;return today.getFullYear()+'-'+m+'-'+d;},get_cur_time:function(){var d=new Date();var hh=d.getHours()+''
-var mm=cint(d.getMinutes()/5)*5+''
-return(hh.length==1?'0'+hh:hh)+':'+(mm.length==1?'0'+mm:mm);}}
-wn.datetime.only_date=function(val){if(val==null||val=='')return null;if(val.search(':')!=-1){var tmp=val.split(' ');var d=tmp[0].split('-');}else{var d=val.split('-');}
-if(d.length==3)
-val=d[2]+'-'+d[1]+'-'+d[0];return val;}
-wn.datetime.time_to_ampm=function(v){if(!v){var d=new Date();var t=[d.getHours(),cint(d.getMinutes()/5)*5+'']}else{var t=v.split(':');}
-if(t.length!=2){show_alert('[set_time] Incorect time format');return;}
-if(t[1].length==1)t[1]='0'+t[1];if(cint(t[0])==0)var ret=['12',t[1],'AM'];else if(cint(t[0])<12)var ret=[cint(t[0])+'',t[1],'AM'];else if(cint(t[0])==12)var ret=['12',t[1],'PM'];else var ret=[(cint(t[0])-12)+'',t[1],'PM'];return ret;}
-wn.datetime.time_to_hhmm=function(hh,mm,am){if(am=='AM'&&hh=='12'){hh='00';}else if(am=='PM'&&hh!='12'){hh=cint(hh)+12;}
-if(!mm)mm='00';if(!hh)hh='00';return hh+':'+mm;}
-function prettyDate(time){if(!time)return''
-var date=time;if(typeof(time)=="string")
-date=new Date((time||"").replace(/-/g,"/").replace(/[TZ]/g," ").replace(/\.[0-9]*/,""));var diff=(((new Date()).getTime()-date.getTime())/1000),day_diff=Math.floor(diff/86400);if(isNaN(day_diff)||day_diff<0)
-return'';return day_diff==0&&(diff<60&&"just now"||diff<120&&"1 minute ago"||diff<3600&&Math.floor(diff/60)+" minutes ago"||diff<7200&&"1 hour ago"||diff<86400&&Math.floor(diff/3600)+" hours ago")||day_diff==1&&"Yesterday"||day_diff<7&&day_diff+" days ago"||day_diff<31&&Math.ceil(day_diff/7)+" weeks ago"||day_diff<365&&Math.ceil(day_diff/30)+" months ago"||"more than "+Math.floor(day_diff/365)+" year(s) ago";}
-if(typeof jQuery!="undefined")
-jQuery.fn.prettyDate=function(){return this.each(function(){var date=prettyDate(this.title);if(date)
-jQuery(this).text(date);});};var comment_when=prettyDate;wn.datetime.comment_when=prettyDate;var date=dateutil=wn.datetime;var get_today=wn.datetime.get_today
-var time_to_ampm=wn.datetime.time_to_ampm;var time_to_hhmm=wn.datetime.time_to_hhmm;var only_date=wn.datetime.only_date;
-/*
- *	lib/js/legacy/utils/dom.js
- */
-wn.tinymce={add_simple:function(ele,height){if(ele.myid){tinyMCE.execCommand('mceAddControl',true,ele.myid);return;}
-ele.myid=wn.dom.set_unique_id(ele);$(ele).tinymce({script_url:'js/lib/tiny_mce_33/tiny_mce.js',height:height?height:'200px',theme:"advanced",theme_advanced_buttons1:"bold,italic,underline,separator,strikethrough,justifyleft,justifycenter,justifyright,justifyfull,bullist,numlist,outdent,indent,link,unlink,forecolor,backcolor,code,",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"left",theme_advanced_path:false,theme_advanced_resizing:false});},remove:function(ele){tinyMCE.execCommand('mceRemoveControl',true,ele.myid);},get_value:function(ele){return tinymce.get(ele.myid).getContent();}}
-wn.ele={link:function(args){var span=$a(args.parent,'span','link_type',args.style);span.loading_img=$a(args.parent,'img','',{margin:'0px 4px -2px 4px',display:'none'});span.loading_img.src='images/lib/ui/button-load.gif';span.innerHTML=args.label;span.user_onclick=args.onclick;span.onclick=function(){if(!this.disabled)this.user_onclick(this);}
-span.set_working=function(){this.disabled=1;$di(this.loading_img);}
-span.done_working=function(){this.disabled=0;$dh(this.loading_img);}
-return span;}}
-function $ln(parent,label,onclick,style){return wn.ele.link({parent:parent,label:label,onclick:onclick,style:style})}
-function $btn(parent,label,onclick,style,css_class,is_ajax){if(css_class==='green')css_class='btn-info';return new wn.ui.Button({parent:parent,label:label,onclick:onclick,style:style,is_ajax:is_ajax,css_class:css_class}).btn;}
-$item_normal=function(ele){$y(ele,{padding:'6px 8px',cursor:'pointer',marginRight:'8px',whiteSpace:'nowrap',overflow:'hidden',borderBottom:'1px solid #DDD'});$bg(ele,'#FFF');$fg(ele,'#000');}
-$item_active=function(ele){$bg(ele,'#FE8');$fg(ele,'#000');}
-$item_selected=function(ele){$bg(ele,'#777');$fg(ele,'#FFF');}
-$item_pressed=function(ele){$bg(ele,'#F90');$fg(ele,'#FFF');};function set_opacity(ele,ieop){var op=ieop/100;if(ele.filters){try{ele.filters.item("DXImageTransform.Microsoft.Alpha").opacity=ieop;}catch(e){ele.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+ieop+')';}}else{ele.style.opacity=op;}}
-$br=function(ele,r,corners){if(corners){var cl=['top-left','top-right','bottom-right','bottom-left'];for(var i=0;i<4;i++){if(corners[i]){$(ele).css('-moz-border-radius-'+cl[i].replace('-',''),r).css('-webkit-'+cl[i]+'-border-radius',r);}}}else{$(ele).css('-moz-border-radius',r).css('-webkit-border-radius',r).css('border-radius',r);}}
-$bs=function(ele,r){$(ele).css('-moz-box-shadow',r).css('-webkit-box-shadow',r).css('box-shadow',r);}
-function SelectWidget(parent,options,width,editable,bg_color){var me=this;this.inp=$a(parent,'select');if(options)add_sel_options(this.inp,options);if(width)$y(this.inp,{width:width});this.set_width=function(w){$y(this.inp,{width:w})};this.set_options=function(o){add_sel_options(this.inp,o);}
-this.inp.onchange=function(){if(me.onchange)me.onchange(this);}
-return;}
-function empty_select(s){if(s.custom_select){s.empty();return;}
-if(s.inp)s=s.inp;if(s){var tmplen=s.length;for(var i=0;i<tmplen;i++)s.options[0]=null;}}
-function sel_val(s){if(s.custom_select){return s.inp.value?s.inp.value:'';}
-if(s.inp)s=s.inp;try{if(s.selectedIndex<s.options.length)return s.options[s.selectedIndex].value;else return'';}catch(err){return'';}}
-function add_sel_options(s,list,sel_val,o_style){if(s.custom_select){s.set_options(list)
-if(sel_val)s.inp.value=sel_val;return;}
-if(s.inp)s=s.inp;for(var i=0,len=list.length;i<len;i++){var o=new Option(list[i],list[i],false,(list[i]==sel_val?true:false));if(o_style)$y(o,o_style);s.options[s.options.length]=o;}}
-function cint(v,def){v=v+'';v=lstrip(v,['0']);v=parseInt(v);if(isNaN(v))v=def?def:0;return v;}
-function validate_email(id){if(strip(id.toLowerCase()).search("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?")==-1)return 0;else return 1;}
-function validate_spl_chars(txt){if(txt.search(/^[a-zA-Z0-9_\- ]*$/)==-1)return 1;else return 0;}
-function d2h(d){return cint(d).toString(16);}
-function h2d(h){return parseInt(h,16);}
-var $n='\n';function set_title(t){document.title=(wn.title_prefix?(wn.title_prefix+' - '):'')+t;}
-function $a(parent,newtag,className,cs,innerHTML,onclick){if(parent&&parent.substr)parent=$i(parent);var c=document.createElement(newtag);if(parent)
-parent.appendChild(c);if(className){if(newtag.toLowerCase()=='img')
-c.src=className
-else
-c.className=className;}
-if(cs)$y(c,cs);if(innerHTML)c.innerHTML=innerHTML;if(onclick)c.onclick=onclick;return c;}
-function $a_input(p,in_type,attributes,cs){if(!attributes)attributes={};var $input=$(p).append('<input type="'+in_type+'">').find('input:last');for(key in attributes)
-$input.attr(key,attributes[key]);var input=$input.get(0);if(cs)
-$y(input,cs);return input;}
-function $dh(d){if(d&&d.substr)d=$i(d);if(d&&d.style.display.toLowerCase()!='none')d.style.display='none';}
-function $ds(d){if(d&&d.substr)d=$i(d);var t='block';if(d&&in_list(['span','img','button'],d.tagName.toLowerCase()))
-t='inline'
-if(d&&d.style.display.toLowerCase()!=t)
-d.style.display=t;}
-function $di(d){if(d&&d.substr)d=$i(d);if(d)d.style.display='inline';}
-function $i(id){if(!id)return null;if(id&&id.appendChild)return id;return document.getElementById(id);}
-function $w(e,w){if(e&&e.style&&w)e.style.width=w;}
-function $h(e,h){if(e&&e.style&&h)e.style.height=h;}
-function $bg(e,w){if(e&&e.style&&w)e.style.backgroundColor=w;}
-function $y(ele,s){if(ele&&s){for(var i in s)ele.style[i]=s[i];};return ele;}
-function $yt(tab,r,c,s){var rmin=r;var rmax=r;if(r=='*'){rmin=0;rmax=tab.rows.length-1;}
-if(r.search&&r.search('-')!=-1){r=r.split('-');rmin=cint(r[0]);rmax=cint(r[1]);}
-var cmin=c;var cmax=c;if(c=='*'){cmin=0;cmax=tab.rows[0].cells.length-1;}
-if(c.search&&c.search('-')!=-1){c=c.split('-');rmin=cint(c[0]);rmax=cint(c[1]);}
-for(var ri=rmin;ri<=rmax;ri++){for(var ci=cmin;ci<=cmax;ci++)
-$y($td(tab,ri,ci),s);}}
-function set_style(txt){wn.dom.set_style(txt);}
-function make_table(parent,nr,nc,table_width,widths,cell_style,table_style){var t=$a(parent,'table');t.style.borderCollapse='collapse';if(table_width)t.style.width=table_width;if(cell_style)t.cell_style=cell_style;for(var ri=0;ri<nr;ri++){var r=t.insertRow(ri);for(var ci=0;ci<nc;ci++){var c=r.insertCell(ci);if(ri==0&&widths&&widths[ci]){c.style.width=widths[ci];}
-if(cell_style){for(var s in cell_style)c.style[s]=cell_style[s];}}}
-t.append_row=function(){return append_row(this);}
-if(table_style)$y(t,table_style);return t;}
-function append_row(t,at,style){var r=t.insertRow(at?at:t.rows.length);if(t.rows.length>1){for(var i=0;i<t.rows[0].cells.length;i++){var c=r.insertCell(i);if(style)$y(c,style);}}
-return r}
-function $td(t,r,c){if(r<0)r=t.rows.length+r;if(c<0)c=t.rows[0].cells.length+c;return t.rows[r].cells[c];}
-wn.urllib={get_arg:function(name){name=name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regexS="[\\?&]"+name+"=([^&#]*)";var regex=new RegExp(regexS);var results=regex.exec(window.location.href);if(results==null)
-return"";else
-return decodeURIComponent(results[1]);},get_dict:function(){var d={}
-var t=window.location.href.split('?')[1];if(!t)return d;if(t.indexOf('#')!=-1)t=t.split('#')[0];if(!t)return d;t=t.split('&');for(var i=0;i<t.length;i++){var a=t[i].split('=');d[decodeURIComponent(a[0])]=decodeURIComponent(a[1]);}
-return d;},get_base_url:function(){var url=window.location.href.split('#')[0].split('?')[0].split('app.html')[0];if(url.substr(url.length-1,1)=='/')url=url.substr(0,url.length-1)
-return url},get_file_url:function(file_id){return repl('files/%(fn)s',{fn:file_id})}}
-get_url_arg=wn.urllib.get_arg;get_url_dict=wn.urllib.get_dict;
-/*
- *	lib/js/legacy/utils/handler.js
- */
-function $c(command,args,callback,error,no_spinner,freeze_msg,btn){wn.request.call({args:$.extend(args,{cmd:command}),success:callback,error:error,btn:btn,freeze:freeze_msg,show_spinner:!no_spinner})}
-function $c_obj(doclist,method,arg,callback,no_spinner,freeze_msg,btn){if(arg&&typeof arg!='string')arg=JSON.stringify(arg);args={cmd:'runserverobj',arg:arg,method:method};if(typeof doclist=='string')
-args.doctype=doclist;else
-args.docs=compress_doclist(doclist)
-wn.request.call({args:args,success:callback,btn:btn,freeze:freeze_msg,show_spinner:!no_spinner});}
-function $c_page(module,page,method,arg,callback,no_spinner,freeze_msg,btn){if(arg&&typeof arg!='string')arg=JSON.stringify(arg);wn.request.call({args:{cmd:module+'.page.'+page+'.'+page+'.'+method,arg:arg,method:method},success:callback,btn:btn,freeze:freeze_msg,show_spinner:!no_spinner});}
-function $c_obj_csv(doclist,method,arg){var args={}
-args.cmd='runserverobj';args.as_csv=1;args.method=method;args.arg=arg;if(doclist.substr)
-args.doctype=doclist;else
-args.docs=compress_doclist(doclist);open_url_post(wn.request.url,args);}
-function open_url_post(URL,PARAMS,new_window){var temp=document.createElement("form");temp.action=URL;temp.method="POST";temp.style.display="none";if(new_window){temp.target='_blank';}
-for(var x in PARAMS){var opt=document.createElement("textarea");opt.name=x;var val=PARAMS[x];if(typeof val!='string')
-val=JSON.stringify(val);opt.value=val;temp.appendChild(opt);}
-document.body.appendChild(temp);temp.submit();return temp;}
-/*
- *	lib/js/legacy/utils/msgprint.js
- */
-var msg_dialog;function msgprint(msg,title){if(!msg)return;if(msg instanceof Array){$.each(msg,function(i,v){if(v){msgprint(v);}})
-return;}
-if(typeof(msg)!='string')
-msg=JSON.stringify(msg);if(msg.substr(0,8)=='__small:'){show_alert(msg.substr(8));return;}
-if(!msg_dialog){msg_dialog=new wn.ui.Dialog({title:"Message",onhide:function(){msg_dialog.msg_area.empty();}});msg_dialog.msg_area=$('<div class="msgprint">').appendTo(msg_dialog.body);}
-if(msg.search(/<br>|<p>|<li>/)==-1)
-msg=replace_newlines(msg);msg_dialog.set_title(title||'Message')
-if(msg_dialog.msg_area.html())msg_dialog.msg_area.append("<hr>");msg_dialog.msg_area.append(msg);msg_dialog.show();return msg_dialog;}
-var growl_area;function show_alert(txt,id){if(!growl_area){if(!$('#dialog-container').length){$('<div id="dialog-container">').appendTo('body');}
-growl_area=$a($i('dialog-container'),'div','',{position:'fixed',bottom:'8px',right:'8px',width:'320px',zIndex:10});}
-var wrapper=$a(growl_area,'div','',{position:'relative'});var body=$a(wrapper,'div','notice');var c=$a(body,'i','icon-remove-sign',{cssFloat:'right',cursor:'pointer'});$(c).click(function(){$dh(this.wrapper)});c.wrapper=wrapper;var t=$a(body,'div','',{color:'#FFF'});$(t).html(txt);if(id){$(t).attr('id',id);}
-$(wrapper).hide().fadeIn(1000);}
-/*
- *	lib/js/legacy/utils/printElement.js
- */;(function(window,undefined){var document=window["document"];var $=window["jQuery"];$.fn["printElement"]=function(options){var mainOptions=$.extend({},$.fn["printElement"]["defaults"],options);if(mainOptions["printMode"]=='iframe'){if($.browser.opera||(/chrome/.test(navigator.userAgent.toLowerCase())))
-mainOptions["printMode"]='popup';}
-$("[id^='printElement_']").remove();return this.each(function(){var opts=$.meta?$.extend({},mainOptions,$(this).data()):mainOptions;_printElement($(this),opts);});};$.fn["printElement"]["defaults"]={"printMode":'iframe',"pageTitle":'',"overrideElementCSS":null,"printBodyOptions":{"styleToAdd":'padding:10px;margin:10px;',"classNameToAdd":''},"leaveOpen":false,"iframeElementOptions":{"styleToAdd":'border:none;position:absolute;width:0px;height:0px;bottom:0px;left:0px;',"classNameToAdd":''}};$.fn["printElement"]["cssElement"]={"href":'',"media":''};function _printElement(element,opts){var html=_getMarkup(element,opts);var popupOrIframe=null;var documentToWriteTo=null;if(opts["printMode"].toLowerCase()=='popup'){popupOrIframe=window.open('about:blank','printElementWindow','width=650,height=440,scrollbars=yes');documentToWriteTo=popupOrIframe.document;}
-else{var printElementID="printElement_"+(Math.round(Math.random()*99999)).toString();var iframe=document.createElement('IFRAME');$(iframe).attr({style:opts["iframeElementOptions"]["styleToAdd"],id:printElementID,className:opts["iframeElementOptions"]["classNameToAdd"],frameBorder:0,scrolling:'no',src:'about:blank'});document.body.appendChild(iframe);documentToWriteTo=(iframe.contentWindow||iframe.contentDocument);if(documentToWriteTo.document)
-documentToWriteTo=documentToWriteTo.document;iframe=document.frames?document.frames[printElementID]:document.getElementById(printElementID);popupOrIframe=iframe.contentWindow||iframe;}
-focus();documentToWriteTo.open();documentToWriteTo.write(html);documentToWriteTo.close();_callPrint(popupOrIframe);};function _callPrint(element){if(element&&element["printPage"])
-element["printPage"]();else
-setTimeout(function(){_callPrint(element);},50);}
-function _getElementHTMLIncludingFormElements(element){var $element=$(element);var elementHtml=$('<div></div>').append($element.clone()).html();return elementHtml;}
-function _getBaseHref(){var port=(window.location.port)?':'+window.location.port:'';return window.location.protocol+'//'+window.location.hostname+port+window.location.pathname;}
-function _getMarkup(element,opts){var $element=$(element);var elementHtml=_getElementHTMLIncludingFormElements(element);var html=new Array();html.push('<html><head><title>'+opts["pageTitle"]+'</title>');if(opts["overrideElementCSS"]){if(opts["overrideElementCSS"].length>0){for(var x=0;x<opts["overrideElementCSS"].length;x++){var current=opts["overrideElementCSS"][x];if(typeof(current)=='string')
-html.push('<link type="text/css" rel="stylesheet" href="'+current+'" >');else
-html.push('<link type="text/css" rel="stylesheet" href="'+current["href"]+'" media="'+current["media"]+'" >');}}}
-else{$("link",document).filter(function(){return $(this).attr("rel").toLowerCase()=="stylesheet";}).each(function(){html.push('<link type="text/css" rel="stylesheet" href="'+$(this).attr("href")+'" media="'+$(this).attr('media')+'" >');});}
-html.push('<base href="'+_getBaseHref()+'" />');html.push('</head><body style="'+opts["printBodyOptions"]["styleToAdd"]+'" class="'+opts["printBodyOptions"]["classNameToAdd"]+'">');html.push('<div class="'+$element.attr('class')+'">'+elementHtml+'</div>');html.push('<script type="text/javascript">function printPage(){focus();print();'+((!$.browser.opera&&!opts["leaveOpen"]&&opts["printMode"].toLowerCase()=='popup')?'close();':'')+'}</script>');html.push('</body></html>');return html.join('');};})(window);
-/*
- *	lib/js/legacy/widgets/form/fields.js
- */
-var no_value_fields=['Section Break','Column Break','HTML','Table','FlexTable','Button','Image'];var codeid=0;var code_editors={};function Field(){this.with_label=1;}
-Field.prototype.make_body=function(){var ischk=(this.df.fieldtype=='Check'?1:0);if(this.parent)
-this.wrapper=$a(this.parent,(this.with_label?'div':'span'));else
-this.wrapper=document.createElement((this.with_label?'div':'span'));this.label_area=$a(this.wrapper,'div','',{margin:'0px 0px 2px 0px',minHeight:'1em'});if(ischk&&!this.in_grid){this.input_area=$a(this.label_area,'span','',{marginRight:'4px'});this.disp_area=$a(this.label_area,'span','',{marginRight:'4px'});}
-if(this.with_label){this.label_span=$a(this.label_area,'span','small',{cssFloat:'left'})
-this.label_icon=$('<i class="icon icon-warning-sign">').toggle(false).appendTo(this.label_area).css('float','left').css('margin-left','7px').attr("title","This field is mandatory.");this.suggest_icon=$('<i class="icon icon-chevron-down">').toggle(false).appendTo(this.label_area).css('float','left').css('margin-left','7px').attr("title","will show suggestions as you type.");}else{this.label_span=$a(this.label_area,'span','',{marginRight:'4px'})
-$dh(this.label_area);}
-if(!this.input_area){this.input_area=$a(this.wrapper,(this.with_label?'div':'span'));this.disp_area=$a(this.wrapper,(this.with_label?'div':'span'));}
-if(this.in_grid){if(this.label_area)$dh(this.label_area);}else{this.input_area.className='input_area';$y(this.wrapper,{marginBottom:'9px'});this.set_description();}
-if(this.onmake)this.onmake();}
-Field.prototype.set_max_width=function(){var no_max=['Code','Text Editor','Text','Table','HTML']
-if(this.wrapper&&this.layout_cell&&this.layout_cell.parentNode.cells&&this.layout_cell.parentNode.cells.length==1&&!in_list(no_max,this.df.fieldtype)){$y(this.wrapper,{paddingRight:'50%'});}}
-Field.prototype.set_label=function(){if(this.with_label&&this.label_area&&this.label!=this.df.label){this.label_span.innerHTML=this.df.label;this.label=this.df.label;}}
-Field.prototype.set_description=function(){if(this.df.description){var p=in_list(['Text Editor','Code','Check'],this.df.fieldtype)?this.label_area:this.wrapper;this.desc_area=$a(p,'div','help small','',this.df.description)
-if(in_list(['Text Editor','Code'],this.df.fieldtype))
-$(this.desc_area).addClass('help small');}}
-Field.prototype.get_status=function(){if(this.in_filter)
-this.not_in_form=this.in_filter;if(this.not_in_form){return'Write';}
-if(!this.df.permlevel)this.df.permlevel=0;var p=this.perm[this.df.permlevel];var ret;if(cur_frm.editable&&p&&p[WRITE]&&!this.df.disabled)ret='Write';else if(p&&p[READ])ret='Read';else ret='None';if(this.df.fieldtype=='Binary')
-ret='None';if(cint(this.df.hidden))
-ret='None';if(ret=='Write'&&cint(cur_frm.doc.docstatus)>0)ret='Read';var a_o_s=cint(this.df.allow_on_submit);if(a_o_s&&(this.in_grid||(this.frm&&this.frm.not_in_container))){a_o_s=null;if(this.in_grid)a_o_s=this.grid.field.df.allow_on_submit;if(this.frm&&this.frm.not_in_container){a_o_s=cur_grid.field.df.allow_on_submit;}}
-if(cur_frm.editable&&a_o_s&&cint(cur_frm.doc.docstatus)>0&&!this.df.hidden){tmp_perm=get_perm(cur_frm.doctype,cur_frm.docname,1);if(tmp_perm[this.df.permlevel]&&tmp_perm[this.df.permlevel][WRITE]){ret='Write';}}
-return ret;}
-Field.prototype.set_style_mandatory=function(add){if(add){$(this.txt?this.txt:this.input).addClass('input-mandatory');if(this.disp_area)$(this.disp_area).addClass('input-mandatory');}else{$(this.txt?this.txt:this.input).removeClass('input-mandatory');if(this.disp_area)$(this.disp_area).removeClass('input-mandatory');}}
-Field.prototype.refresh_mandatory=function(){if(this.in_filter)return;if(this.df.reqd){if(this.label_area)this.label_area.style.color="#d22";this.set_style_mandatory(1);}else{if(this.label_area)this.label_area.style.color="#222";this.set_style_mandatory(0);}
-this.refresh_label_icon()
-this.set_reqd=this.df.reqd;}
-Field.prototype.refresh_display=function(){if(!this.current_status||this.current_status!=this.disp_status){if(this.disp_status=='Write'){if(this.make_input&&(!this.input)){this.make_input();if(this.onmake_input)this.onmake_input();}
-if(this.show)this.show()
-else{$ds(this.wrapper);}
-if(this.input){$ds(this.input_area);$dh(this.disp_area);if(this.input.refresh)this.input.refresh();}else{$dh(this.input_area);$ds(this.disp_area);}}else if(this.disp_status=='Read'){if(this.show)this.show()
-else{$ds(this.wrapper);}
-$dh(this.input_area);$ds(this.disp_area);}else{if(this.hide)this.hide();else $dh(this.wrapper);}
-this.current_status=this.disp_status;}}
-Field.prototype.refresh=function(){this.disp_status=this.get_status();if(this.in_grid&&this.table_refresh&&this.disp_status=='Write')
-{this.table_refresh();return;}
-this.set_label();this.refresh_display();if(this.onrefresh)
-this.onrefresh();if(this.input){if(this.input.refresh)this.input.refresh(this.df);}
-if(this.wrapper){this.wrapper.fieldobj=this;$(this.wrapper).trigger('refresh');}
-if(!this.not_in_form)
-this.set_input(_f.get_value(this.doctype,this.docname,this.df.fieldname));this.refresh_mandatory();this.set_max_width();}
-Field.prototype.refresh_label_icon=function(){var to_update=false;if(this.df.reqd&&this.get_value&&is_null(this.get_value()))
-to_update=true;if(!to_update&&this.df.has_error)this.df.has_error=false;if(this.label_icon)this.label_icon.toggle(to_update);$(this.txt?this.txt:this.input).toggleClass('field-to-update',to_update);$(this.txt?this.txt:this.input).toggleClass('field-has-error',this.df.has_error?true:false);}
-Field.prototype.set=function(val){if(this.not_in_form)
-return;if((!this.docname)&&this.grid){this.docname=this.grid.add_newrow();}
-if(this.validate)
-val=this.validate(val);cur_frm.set_value_in_locals(this.doctype,this.docname,this.df.fieldname,val);this.value=val;}
-Field.prototype.set_input=function(val){this.value=val;if(this.input&&this.input.set_input){if(val==null)this.input.set_input('');else this.input.set_input(val);}
-var disp_val=val;if(val==null)disp_val='';this.set_disp(disp_val);}
-Field.prototype.run_trigger=function(){this.refresh_label_icon();if(this.not_in_form){return;}
-if(cur_frm.cscript[this.df.fieldname])
-cur_frm.runclientscript(this.df.fieldname,this.doctype,this.docname);cur_frm.refresh_dependency();}
-Field.prototype.set_disp_html=function(t){if(this.disp_area){$(this.disp_area).addClass('disp_area');this.disp_area.innerHTML=(t==null?'':t);if(!t)$(this.disp_area).addClass('disp_area_no_val');}}
-Field.prototype.set_disp=function(val){this.set_disp_html(val);}
-Field.prototype.activate=function(docname){this.docname=docname;this.refresh();if(this.input){var v=_f.get_value(this.doctype,this.docname,this.df.fieldname);this.last_value=v;if(this.input.onchange&&this.input.get_value&&this.input.get_value()!=v){if(this.validate)
-this.input.set_value(this.validate(v));else
-this.input.set_value((v==null)?'':v);if(this.format_input)
-this.format_input();}
-if(this.input.focus){try{this.input.focus();}catch(e){}}}
-if(this.txt){try{this.txt.focus();}catch(e){}
-this.txt.field_object=this;}}
-function DataField(){}DataField.prototype=new Field();DataField.prototype.make_input=function(){var me=this;this.input=$a_input(this.input_area,this.df.fieldtype=='Password'?'password':'text');this.get_value=function(){var v=this.input.value;if(this.validate)
-v=this.validate(v);return v;}
-this.input.name=this.df.fieldname;$(this.input).change(function(){me.set_value(me.get_value?me.get_value():$(this.input).val());});this.set_value=function(val){if(!me.last_value)me.last_value='';if(me.validate){val=me.validate(val);me.input.value=val==undefined?'':val;}
-me.set(val);if(me.format_input)
-me.format_input();if(in_list(['Currency','Float','Int'],me.df.fieldtype)){if(flt(me.last_value)==flt(val)){me.last_value=val;return;}}
-me.last_value=val;me.run_trigger();}
-this.input.set_input=function(val){if(val==null)val='';me.input.value=val;if(me.format_input)me.format_input();}
-if(this.df.options=='Suggest'){if(this.suggest_icon)this.suggest_icon.toggle(true);$(me.input).autocomplete({source:function(request,response){wn.call({method:'webnotes.widgets.search.search_link',args:{'txt':request.term,'dt':me.df.options,'query':repl('SELECT DISTINCT `%(fieldname)s` FROM \
-       `tab%(dt)s` WHERE `%(fieldname)s` LIKE "%s" LIMIT 50',{fieldname:me.df.fieldname,dt:me.df.parent})},callback:function(r){response(r.results);}});},select:function(event,ui){me.set(ui.item.value);}});}}
-DataField.prototype.validate=function(v){if(this.df.options=='Phone'){if(v+''=='')return'';v1=''
-v=v.replace(/ /g,'').replace(/-/g,'').replace(/\(/g,'').replace(/\)/g,'');if(v&&v.substr(0,1)=='+'){v1='+';v=v.substr(1);}
-if(v&&v.substr(0,2)=='00'){v1+='00';v=v.substr(2);}
-if(v&&v.substr(0,1)=='0'){v1+='0';v=v.substr(1);}
-v1+=cint(v)+'';return v1;}else if(this.df.options=='Email'){if(v+''=='')return'';if(!validate_email(v)){msgprint(this.df.label+': '+v+' is not a valid email id');return'';}else
-return v;}else{return v;}}
-function ReadOnlyField(){}
-ReadOnlyField.prototype=new Field();function HTMLField(){}
-HTMLField.prototype=new Field();HTMLField.prototype.with_label=0;HTMLField.prototype.set_disp=function(val){if(this.disp_area)this.disp_area.innerHTML=val;}
-HTMLField.prototype.set_input=function(val){if(val)this.set_disp(val);}
-HTMLField.prototype.onrefresh=function(){if(this.df.options)this.set_disp(this.df.options);}
-var datepicker_active=0;function DateField(){}DateField.prototype=new Field();DateField.prototype.make_input=function(){var me=this;this.user_fmt=sys_defaults.date_format;if(!this.user_fmt)this.user_fmt='dd-mm-yy';this.input=$a(this.input_area,'input');$(this.input).datepicker({dateFormat:me.user_fmt.replace('yyyy','yy'),altFormat:'yy-mm-dd',changeYear:true,beforeShow:function(input,inst){datepicker_active=1},onClose:function(dateText,inst){datepicker_active=0;if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();}});var me=this;me.input.onchange=function(){if(this.value==null)this.value='';if(!this.not_in_form)
-me.set(dateutil.user_to_str(me.input.value));me.run_trigger();}
-me.input.set_input=function(val){if(val==null)val='';else val=dateutil.str_to_user(val);me.input.value=val;}
-me.get_value=function(){if(me.input.value)
-return dateutil.user_to_str(me.input.value);}}
-DateField.prototype.set_disp=function(val){var v=dateutil.str_to_user(val);if(v==null)v='';this.set_disp_html(v);}
-DateField.prototype.validate=function(v){if(!v)return;var me=this;this.clear=function(){msgprint("Date must be in format "+this.user_fmt);me.input.set_input('');return'';}
-var t=v.split('-');if(t.length!=3){return this.clear();}
-else if(cint(t[1])>12||cint(t[1])<1){return this.clear();}
-else if(cint(t[2])>31||cint(t[2])<1){return this.clear();}
-return v;};function LinkField(){}LinkField.prototype=new Field();LinkField.prototype.make_input=function(){var me=this;if(me.df.no_buttons){this.txt=$a(this.input_area,'input');this.input=this.txt;}else{makeinput_popup(this,'icon-search','icon-play','icon-plus');me.setup_buttons();me.onrefresh=function(){if(me.can_create)
-$(me.btn2).css('display','inline-block');else $dh(me.btn2);}}
-me.txt.field_object=this;me.input.set_input=function(val){if(val==undefined)val='';me.txt.value=val;}
-me.get_value=function(){return me.txt.value;}
-$(me.txt).autocomplete({source:function(request,response){wn.call({method:'webnotes.widgets.search.search_link',args:{'txt':request.term,'dt':me.df.options,'query':me.get_custom_query()},callback:function(r){response(r.results);},});},select:function(event,ui){me.set_input_value(ui.item.value);}}).data('autocomplete')._renderItem=function(ul,item){return $('<li></li>').data('item.autocomplete',item).append(repl('<a>%(label)s<br><span style="font-size:10px">%(info)s</span></a>',item)).appendTo(ul);};$(this.txt).change(function(){var val=$(this).val();me.set_input_value_executed=false;if(!val){if(selector&&selector.display)
-return;me.set_input_value('');}else{setTimeout(function(){if(!me.set_input_value_executed){me.set_input_value(val);}},1000);}})}
-LinkField.prototype.get_custom_query=function(){this.set_get_query();if(this.get_query){if(cur_frm)
-var doc=locals[cur_frm.doctype][cur_frm.docname];return this.get_query(doc,this.doctype,this.docname);}}
-LinkField.prototype.setup_buttons=function(){var me=this;me.btn.onclick=function(){selector.set(me,me.df.options,me.df.label);selector.show(me.txt);}
-if(me.btn1)me.btn1.onclick=function(){if(me.txt.value&&me.df.options){loaddoc(me.df.options,me.txt.value);}}
-me.can_create=0;if((!me.not_in_form)&&in_list(profile.can_create,me.df.options)){me.can_create=1;me.btn2.onclick=function(){var on_save_callback=function(new_rec){if(new_rec){var d=_f.calling_doc_stack.pop();locals[d[0]][d[1]][me.df.fieldname]=new_rec;me.refresh();if(me.grid)me.grid.refresh();me.run_trigger();}}
-_f.calling_doc_stack.push([me.doctype,me.docname]);new_doc(me.df.options);}}else{$dh(me.btn2);$y($td(me.tab,0,2),{width:'0px'});}}
-LinkField.prototype.set_input_value=function(val){var me=this;me.set_input_value_executed=true;var from_selector=false;if(selector&&selector.display)from_selector=true;me.refresh_label_icon();if(me.not_in_form){$(this.txt).val(val);return;}
-if(cur_frm){if(val==locals[me.doctype][me.docname][me.df.fieldname]){me.run_trigger();return;}}
-me.set(val);if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();if(locals[me.doctype][me.docname][me.df.fieldname]&&!val){me.run_trigger();return;}
-if(val){me.validate_link(val,from_selector);}}
-LinkField.prototype.validate_link=function(val,from_selector){var me=this;var fetch='';if(cur_frm.fetch_dict[me.df.fieldname])
-fetch=cur_frm.fetch_dict[me.df.fieldname].columns.join(', ');$c('webnotes.widgets.form.utils.validate_link',{'value':val,'options':me.df.options,'fetch':fetch},function(r,rt){if(r.message=='Ok'){if($(me.txt).val()!=val){if((me.grid&&!from_selector)||(!me.grid)){$(me.txt).val(val);}}
-if(r.fetch_values)
-me.set_fetch_values(r.fetch_values);me.run_trigger();}else{var astr='';if(in_list(profile.can_create,me.df.options))astr=repl('<br><br><span class="link_type" onclick="newdoc(\'%(dt)s\')">Click here</span> to create a new %(dtl)s',{dt:me.df.options,dtl:get_doctype_label(me.df.options)})
-msgprint(repl('error:<b>%(val)s</b> is not a valid %(dt)s.<br><br>You must first create a new %(dt)s <b>%(val)s</b> and then select its value. To find an existing %(dt)s, click on the magnifying glass next to the field.%(add)s',{val:me.txt.value,dt:get_doctype_label(me.df.options),add:astr}));me.txt.value='';me.set('');}});}
-LinkField.prototype.set_fetch_values=function(fetch_values){var fl=cur_frm.fetch_dict[this.df.fieldname].fields;var changed_fields=[];for(var i=0;i<fl.length;i++){if(locals[this.doctype][this.docname][fl[i]]!=fetch_values[i]){locals[this.doctype][this.docname][fl[i]]=fetch_values[i];if(!this.grid){refresh_field(fl[i]);changed_fields.push(fl[i]);}}}
-for(i=0;i<changed_fields.length;i++){if(cur_frm.fields_dict[changed_fields[i]])
-cur_frm.fields_dict[changed_fields[i]].run_trigger();}
-if(this.grid)this.grid.refresh();}
-LinkField.prototype.set_get_query=function(){if(this.get_query)return;if(this.grid){var f=this.grid.get_field(this.df.fieldname);if(f.get_query)this.get_query=f.get_query;}}
-LinkField.prototype.set_disp=function(val){var t=null;if(val)t="<a href=\'javascript:loaddoc(\""+this.df.options+"\", \""+val+"\")\'>"+val+"</a>";this.set_disp_html(t);}
-function IntField(){}IntField.prototype=new DataField();IntField.prototype.validate=function(v){if(isNaN(parseInt(v)))return null;return cint(v);};IntField.prototype.format_input=function(){if(this.input.value==null)this.input.value='';}
-function FloatField(){}FloatField.prototype=new DataField();FloatField.prototype.validate=function(v){var v=parseFloat(v);if(isNaN(v))
-return null;return v;};FloatField.prototype.format_input=function(){if(this.input.value==null)this.input.value='';}
-function CurrencyField(){}CurrencyField.prototype=new DataField();CurrencyField.prototype.format_input=function(){var v=fmt_money(this.input.value);if(this.not_in_form){if(!flt(this.input.value))v='';}
-this.input.value=v;}
-CurrencyField.prototype.validate=function(v){if(v==null||v=='')
-return 0;return flt(v,2);}
-CurrencyField.prototype.set_disp=function(val){var v=fmt_money(val);this.set_disp_html(v);}
-CurrencyField.prototype.onmake_input=function(){if(!this.input)return;this.input.onfocus=function(){if(flt(this.value)==0)this.select();}}
-function CheckField(){}CheckField.prototype=new Field();CheckField.prototype.validate=function(v){var v=parseInt(v);if(isNaN(v))return 0;return v;};CheckField.prototype.onmake=function(){this.checkimg=$a(this.disp_area,'div');var img=$a(this.checkimg,'img');img.src='images/lib/ui/tick.gif';$dh(this.checkimg);}
-CheckField.prototype.make_input=function(){var me=this;this.input=$a_input(this.input_area,'checkbox');$y(this.input,{width:"16px",border:'0px',margin:'2px'});$(this.input).click(function(){me.set(this.checked?1:0);me.run_trigger();})
-this.input.set_input=function(v){v=parseInt(v);if(isNaN(v))v=0;if(v)me.input.checked=true;else me.input.checked=false;}
-this.get_value=function(){return this.input.checked?1:0;}}
-CheckField.prototype.set_disp=function(val){if(val){$ds(this.checkimg);}
-else{$dh(this.checkimg);}}
-function TextField(){}TextField.prototype=new Field();TextField.prototype.set_disp=function(val){this.disp_area.innerHTML=replace_newlines(val);}
-TextField.prototype.make_input=function(){var me=this;if(this.in_grid)
-return;this.input=$a(this.input_area,'textarea');if(this.df.fieldtype=='Small Text')
-this.input.style.height="80px";this.input.set_input=function(v){me.input.value=v;}
-this.input.onchange=function(){me.set(me.input.value);me.run_trigger();}
-this.get_value=function(){return this.input.value;}}
-var text_dialog;function make_text_dialog(){var d=new Dialog(520,410,'Edit Text');d.make_body([['Text','Enter Text'],['HTML','Description'],['Button','Update']]);d.widgets['Update'].onclick=function(){var t=this.dialog;t.field.set(t.widgets['Enter Text'].value);t.hide();}
-d.onshow=function(){this.widgets['Enter Text'].style.height='300px';var v=_f.get_value(this.field.doctype,this.field.docname,this.field.df.fieldname);this.widgets['Enter Text'].value=v==null?'':v;this.widgets['Enter Text'].focus();this.widgets['Description'].innerHTML=''
-if(this.field.df.description)
-$a(this.widgets['Description'],'div','help small','',this.field.df.description);}
-d.onhide=function(){if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();}
-text_dialog=d;}
-TextField.prototype.table_refresh=function(){if(!this.text_dialog)
-make_text_dialog();text_dialog.set_title('Enter text for "'+this.df.label+'"');text_dialog.field=this;text_dialog.show();}
-function SelectField(){}SelectField.prototype=new Field();SelectField.prototype.make_input=function(){var me=this;var opt=[];if(this.in_filter&&(!this.df.single_select)){this.input=$a(this.input_area,'select');this.input.multiple=true;this.input.style.height='4em';this.input.lab=$a(this.input_area,'div',{fontSize:'9px',color:'#999'});this.input.lab.innerHTML='(Use Ctrl+Click to select multiple or de-select)'}else{this.input=$a(this.input_area,'select');this.input.onchange=function(){if(me.validate)
-me.validate();me.set(sel_val(this));me.run_trigger();}
-if(this.df.options=='attach_files:'){this.file_attach=true;}}
-this.set_as_single=function(){var i=this.input;i.multiple=false;i.style.height=null;if(i.lab)$dh(i.lab)}
-this.refresh_options=function(options){if(options)
-me.df.options=options;if(this.file_attach)
-this.set_attach_options();me.options_list=me.df.options?me.df.options.split('\n'):[''];empty_select(this.input);if(me.in_filter&&me.options_list[0]!=''){me.options_list=add_lists([''],me.options_list);}
-add_sel_options(this.input,me.options_list);}
-this.onrefresh=function(){this.refresh_options();if(this.not_in_form){this.input.value='';return;}
-if(_f.get_value)
-var v=_f.get_value(this.doctype,this.docname,this.df.fieldname);else{if(this.options_list&&this.options_list.length)
-var v=this.options_list[0];else
-var v=null;}
-this.input.set_input(v);}
-this.input.set_input=function(v){if(!v){if(!me.input.multiple){if(me.docname){if(me.options_list&&me.options_list.length){me.set(me.options_list[0]);me.input.value=me.options_list[0];}else{me.input.value='';}}}}else{if(me.options_list){if(me.input.multiple){for(var i=0;i<me.input.options.length;i++){me.input.options[i].selected=0;if(me.input.options[i].value&&inList(typeof(v)=='string'?v.split(","):v,me.input.options[i].value))
-me.input.options[i].selected=1;}}else if(in_list(me.options_list,v)){me.input.value=v;}}}}
-this.get_value=function(){if(me.input.multiple){var l=[];for(var i=0;i<me.input.options.length;i++){if(me.input.options[i].selected)l[l.length]=me.input.options[i].value;}
-return l;}else{if(me.input.options){var val=sel_val(me.input);if(!val&&!me.input.selectedIndex)
-val=me.input.options[0].value;return val;}
-return me.input.value;}}
-this.set_attach_options=function(){if(!cur_frm)return;var fl=cur_frm.doc.file_list;if(fl){this.df.options='';var fl=fl.split('\n');for(var i in fl){this.df.options+='\n'+fl[i].split(',')[1];}}else{this.df.options=''}}
-this.refresh();}
-function TimeField(){}TimeField.prototype=new Field();TimeField.prototype.get_time=function(){return time_to_hhmm(sel_val(this.input_hr),sel_val(this.input_mn),sel_val(this.input_am));}
-TimeField.prototype.set_time=function(v){ret=time_to_ampm(v);this.input_hr.inp.value=ret[0];this.input_mn.inp.value=ret[1];this.input_am.inp.value=ret[2];}
-TimeField.prototype.set_style_mandatory=function(){}
-TimeField.prototype.make_input=function(){var me=this;this.input=$a(this.input_area,'div','time_field');var t=make_table(this.input,1,3,'200px');var opt_hr=['1','2','3','4','5','6','7','8','9','10','11','12'];var opt_mn=['00','05','10','15','20','25','30','35','40','45','50','55'];var opt_am=['AM','PM'];this.input_hr=new SelectWidget($td(t,0,0),opt_hr,'50px');this.input_mn=new SelectWidget($td(t,0,1),opt_mn,'50px');this.input_am=new SelectWidget($td(t,0,2),opt_am,'50px');var onchange_fn=function(){me.set(me.get_time());me.run_trigger();}
-this.input_hr.inp.onchange=onchange_fn;this.input_mn.inp.onchange=onchange_fn;this.input_am.inp.onchange=onchange_fn;this.onrefresh=function(){var v=_f.get_value?_f.get_value(me.doctype,me.docname,me.df.fieldname):null;me.set_time(v);if(!v)
-me.set(me.get_time());}
-this.input.set_input=function(v){if(v==null)v='';me.set_time(v);}
-this.get_value=function(){return this.get_time();}
-this.refresh();}
-TimeField.prototype.set_disp=function(v){var t=time_to_ampm(v);var t=t[0]+':'+t[1]+' '+t[2];this.set_disp_html(t);}
-function makeinput_popup(me,iconsrc,iconsrc1,iconsrc2){var icon_style={cursor:'pointer',width:'16px',verticalAlign:'middle',marginBottom:'-3px'};me.input=$a(me.input_area,'div');if(!me.not_in_form)
-$y(me.input,{width:'80%'});me.input.set_width=function(w){$y(me.input,{width:(w-2)+'px'});}
-var tab=$a(me.input,'table');me.tab=tab;$y(tab,{width:'100%',borderCollapse:'collapse',tableLayout:'fixed'});var c0=tab.insertRow(0).insertCell(0);var c1=tab.rows[0].insertCell(1);$y(c1,{width:'20px'});me.txt=$a($a($a(c0,'div','',{paddingRight:'8px'}),'div'),'input','',{width:'100%'});me.btn=$a(c1,'i',iconsrc,icon_style)
-if(iconsrc1)
-me.btn.setAttribute('title','Search');else
-me.btn.setAttribute('title','Select Date');if(iconsrc1){var c2=tab.rows[0].insertCell(2);$y(c2,{width:'20px'});me.btn1=$a(c2,'i',iconsrc1,icon_style)
-me.btn1.setAttribute('title','Open Link');}
-if(iconsrc2){var c3=tab.rows[0].insertCell(3);$y(c3,{width:'20px'});me.btn2=$a(c3,'i',iconsrc2,icon_style)
-me.btn2.setAttribute('title','Create New');$dh(me.btn2);}
-me.txt.name=me.df.fieldname;me.setdisabled=function(tf){me.txt.disabled=tf;}}
-var tmpid=0;_f.ButtonField=function(){};_f.ButtonField.prototype=new Field();_f.ButtonField.prototype.with_label=0;_f.ButtonField.prototype.init=function(){this.prev_button=null;if(!this.frm)return;if(cur_frm&&cur_frm.fields[cur_frm.fields.length-1]&&cur_frm.fields[cur_frm.fields.length-1].df.fieldtype=='Button'){this.make_body=function(){this.prev_button=cur_frm.fields[cur_frm.fields.length-1];if(!this.prev_button.prev_button){this.prev_button.button_area=$a(this.prev_button.input_area,'span');}
-this.wrapper=this.prev_button.wrapper;this.input_area=this.prev_button.input_area;this.disp_area=this.prev_button.disp_area;this.button_area=$a(this.prev_button.input_area,'span');}}}
-_f.ButtonField.prototype.make_input=function(){var me=this;if(!this.prev_button){$y(this.input_area,{marginTop:'4px',marginBottom:'4px'});}
-if(!this.button_area)
-this.button_area=$a(this.input_area,'span','',{marginRight:'4px'});this.input=$btn(this.button_area,me.df.label,null,{fontWeight:'bold'},null,1)
-$(this.input).click(function(){if(me.not_in_form)return;if(cur_frm.cscript[me.df.fieldname]&&(!me.in_filter)){cur_frm.runclientscript(me.df.fieldname,me.doctype,me.docname);}else{cur_frm.runscript(me.df.options,me);}});}
-_f.ButtonField.prototype.hide=function(){$dh(this.button_area);};_f.ButtonField.prototype.show=function(){$ds(this.button_area);};_f.ButtonField.prototype.set=function(v){};_f.ButtonField.prototype.set_disp=function(val){}
-function make_field(docfield,doctype,parent,frm,in_grid,hide_label){switch(docfield.fieldtype.toLowerCase()){case'data':var f=new DataField();break;case'password':var f=new DataField();break;case'int':var f=new IntField();break;case'float':var f=new FloatField();break;case'currency':var f=new CurrencyField();break;case'read only':var f=new ReadOnlyField();break;case'link':var f=new LinkField();break;case'date':var f=new DateField();break;case'time':var f=new TimeField();break;case'html':var f=new HTMLField();break;case'check':var f=new CheckField();break;case'text':var f=new TextField();break;case'small text':var f=new TextField();break;case'select':var f=new SelectField();break;case'button':var f=new _f.ButtonField();break;case'code':var f=new _f.CodeField();break;case'text editor':var f=new _f.CodeField();break;case'table':var f=new _f.TableField();break;case'section break':var f=new _f.SectionBreak();break;case'column break':var f=new _f.ColumnBreak();break;case'image':var f=new _f.ImageField();break;}
-f.parent=parent;f.doctype=doctype;f.df=docfield;f.perm=frm?frm.perm:[[1,1,1]];if(_f)
-f.col_break_width=_f.cur_col_break_width;if(in_grid){f.in_grid=true;f.with_label=0;}
-if(hide_label){f.with_label=0;}
-if(frm){f.frm=frm;if(parent)
-f.layout_cell=parent.parentNode;}
-if(f.init)f.init();f.make_body();return f;}
-/*
- *	lib/js/wn/ui/appframe.js
- */
-wn.ui.AppFrame=Class.extend({init:function(parent,title){this.buttons={};this.$w=$('<div></div>').appendTo(parent);this.$titlebar=$('<div class="appframe-titlebar">\
-   <span class="appframe-title"></span>\
-   <span class="close">&times;</span>\
-  </div>').appendTo(this.$w);this.$w.find('.close').click(function(){window.history.back();})
-if(title)this.title(title);},title:function(txt){this.clear_breadcrumbs();this.add_breadcrumb(txt);},add_button:function(label,click,icon){this.add_toolbar();args={label:label,icon:''};if(icon){args.icon='<i class="icon '+icon+'"></i>';}
-this.buttons[label]=$(repl('<button class="btn btn-small">\
-   %(icon)s %(label)s</button>',args)).click(click).appendTo(this.toolbar);return this.buttons[label];},add_help_button:function(txt){this.add_toolbar();$('<button class="btn btn-small" style="float:right;" button-type="help">\
-   <b>?</b></button>').data('help-text',txt).click(function(){msgprint($(this).data('help-text'),'Help');}).appendTo(this.toolbar);},clear_buttons:function(){this.toolbar&&this.toolbar.empty();},add_breadcrumb:function(html){if(!this.$breadcrumbs)
-this.$breadcrumbs=$('</span>\
-    <span class="breadcrumb-area"></span>').appendTo(this.$titlebar);var crumb=$('<span>').html(html);if(!this.$breadcrumbs.find('span').length){crumb.addClass('appframe-title');}
-crumb.appendTo(this.$breadcrumbs);},clear_breadcrumbs:function(){this.$breadcrumbs&&this.$breadcrumbs.empty();},add_toolbar:function(){if(!this.toolbar)
-this.$w.append('<div class="appframe-toolbar"></div>');this.toolbar=this.$w.find('.appframe-toolbar');},add_label:function(label){return $("<span class='label'>"+label+" </span>").appendTo(this.toolbar);},add_select:function(label,options){this.add_toolbar();return $("<select style='width: 100px;'>").add_options(options).appendTo(this.toolbar);},add_data:function(label){this.add_toolbar();return $("<input style='width: 100px;' placeholder='"+label+"'>").appendTo(this.toolbar);},add_date:function(label,date){this.add_toolbar();return $("<input style='width: 80px;'>").datepicker({dateFormat:sys_defaults.date_format.replace("yyyy","yy"),changeYear:true,}).val(dateutil.str_to_user(date)||"").appendTo(this.toolbar);},});wn.ui.make_app_page=function(opts){if(opts.single_column){$(opts.parent).html('<div class="layout-wrapper layout-wrapper-appframe">\
-   <div class="layout-appframe"></div>\
-   <div class="layout-main"></div>\
-  </div>');}else{$(opts.parent).html('<div class="layout-wrapper layout-wrapper-background">\
-   <div class="layout-appframe"></div>\
-   <div class="layout-main-section"></div>\
-   <div class="layout-side-section"></div>\
-   <div class="clear"></div>\
-  </div>');}
-opts.parent.appframe=new wn.ui.AppFrame($(opts.parent).find('.layout-appframe'));if(opts.title)opts.parent.appframe.title(opts.title);}
-/*
- *	lib/js/wn/ui/dialog.js
- */
-wn.widgets.FieldGroup=function(){this.first_button=false;this.make_fields=function(body,fl){if(!window.make_field){wn.require('css/fields.css');wn.require('js/fields.js');}
-$y(this.body,{padding:'11px'});this.fields_dict={};for(var i=0;i<fl.length;i++){var df=fl[i];if(!df.fieldname&&df.label){df.fieldname=df.label.replace(/ /g,'_').toLowerCase();}
-var div=$a(body,'div','',{margin:'6px 0px'})
-f=make_field(df,null,div,null);f.not_in_form=1;this.fields_dict[df.fieldname]=f
-f.refresh();if(df.fieldtype=='Button'&&!this.first_button){$(f.input).addClass('btn-info');this.first_button=true;}}}
-this.catch_enter_as_submit=function(){var me=this;$(this.body).find(':input[type="text"], :input[type="password"]').keypress(function(e){if(e.which==13){$(me.body).find('.btn-info:first').click();}})}
-this.get_values=function(){var ret={};var errors=[];for(var key in this.fields_dict){var f=this.fields_dict[key];var v=f.get_value?f.get_value():null;if(f.df.reqd&&!v)
-errors.push(f.df.label+' is mandatory');if(v)ret[f.df.fieldname]=v;}
-if(errors.length){msgprint('<b>Please check the following Errors</b>\n'+errors.join('\n'));return null;}
-return ret;}
-this.set_value=function(key,val){var f=this.fields_dict[key];if(f){f.set_input(val);f.refresh_mandatory();}}
-this.set_values=function(dict){for(var key in dict){if(this.fields_dict[key]){this.set_value(key,dict[key]);}}}
-this.clear=function(){for(key in this.fields_dict){var f=this.fields_dict[key];if(f){f.set_input(f.df['default']||'');}}}}
-wn.widgets.Dialog=function(opts){this.display=false;this.make=function(opts){if(opts){this.opts=opts;$.extend(this,opts);}
-if(!this.opts.width)this.opts.width=480;if(!$('#dialog-container').length){$('<div id="dialog-container">').appendTo('body');}
-this.wrapper=$('<div class="dialog_wrapper">').appendTo('#dialog-container').get(0);if(this.opts.width)
-this.wrapper.style.width=this.opts.width+'px';this.make_head();this.body=$a(this.wrapper,'div','dialog_body');if(this.opts.fields){this.make_fields(this.body,this.opts.fields);this.catch_enter_as_submit();}}
-this.make_head=function(){var me=this;this.appframe=new wn.ui.AppFrame(this.wrapper);this.appframe.$titlebar.find('.close').unbind('click').click(function(){if(me.oncancel)me.oncancel();me.hide();});this.set_title(this.opts.title);}
-this.set_title=function(t){this.appframe.$titlebar.find('.appframe-title').html(t||'');}
-this.set_postion=function(){this.wrapper.style.left=(($(window).width()-cint(this.wrapper.style.width))/2)+'px';this.wrapper.style.top=($(window).scrollTop()+60)+'px';top_index++;$y(this.wrapper,{zIndex:top_index});}
-this.show=function(){if(this.display)return;this.set_postion()
-$ds(this.wrapper);freeze();this.display=true;cur_dialog=this;if(this.onshow)this.onshow();$(this.wrapper).find(':input:first').focus();}
-this.hide=function(){if(this.onhide)this.onhide();unfreeze();$dh(this.wrapper);this.display=false;cur_dialog=null;}
-this.no_cancel=function(){this.appframe.$titlebar.find('.close').toggle(false);}
-if(opts)this.make(opts);}
-wn.widgets.Dialog.prototype=new wn.widgets.FieldGroup();wn.provide('wn.ui');wn.ui.Dialog=wn.widgets.Dialog
-$(document).bind('keydown',function(e){if(cur_dialog&&!cur_dialog.no_cancel_flag&&e.which==27){cur_dialog.hide();}});
-/*
- *	lib/js/wn/ui/button.js
- */
-wn.ui.Button=function(args){var me=this;$.extend(this,{make:function(){me.btn=wn.dom.add(args.parent,'button','btn btn-small '+(args.css_class||''));me.btn.args=args;me.loading_img=wn.dom.add(me.btn.args.parent,'img','',{margin:'0px 4px -2px 4px',display:'none'});me.loading_img.src='images/lib/ui/button-load.gif';me.btn.innerHTML=args.label;me.btn.user_onclick=args.onclick;$(me.btn).bind('click',function(){if(!this.disabled&&this.user_onclick)
-this.user_onclick(this);})
-me.btn.set_working=me.set_working;me.btn.done_working=me.done_working;if(me.btn.args.style)
-wn.dom.css(me.btn,args.style);},set_working:function(){me.btn.disabled='disabled';$(me.loading_img).css('display','inline');},done_working:function(){me.btn.disabled=false;$(me.loading_img).toggle(false);}});this.make();}
-/*
- *	lib/js/wn/ui/search.js
- */
-wn.ui.Search=Class.extend({init:function(opts){$.extend(this,opts);var me=this;wn.model.with_doctype(this.doctype,function(r){me.make();me.dialog.show();me.list.$w.find('.list-filters input[type="text"]').focus();});},make:function(){var me=this;this.dialog=new wn.ui.Dialog({title:this.doctype+' Search',width:500});this.list=new wn.ui.Listing({parent:$(this.dialog.body),appframe:this.dialog.appframe,new_doctype:this.doctype,doctype:this.doctype,method:'webnotes.widgets.doclistview.get',show_filters:true,style:'compact',get_args:function(){if(me.query){me.page_length=50;return{query:me.query}}else{return{doctype:me.doctype,fields:['`tab'+me.doctype+'`.name'],filters:me.list.filter_list.get_filters(),docstatus:['0','1']}}},render_row:function(parent,data){$ln=$('<a style="cursor: pointer;" data-name="'+data.name+'">'
-+data.name+'</a>').appendTo(parent).click(function(){var val=$(this).attr('data-name');me.dialog.hide();if(me.callback)
-me.callback(val);else
-wn.set_route('Form',me.doctype,val);});}});this.list.filter_list.add_filter(this.doctype,'name','like');this.list.run();}})
-/*
- *	lib/js/wn/ui/tree.js
- */
-wn.ui.Tree=Class.extend({init:function(args){$.extend(this,args);this.nodes={};this.$w=$('<div class="tree">').appendTo(this.parent);this.rootnode=new wn.ui.TreeNode({tree:this,parent:this.$w,label:this.label,expandable:true});this.set_style();},set_style:function(){wn.dom.set_style("\
-   .tree li { list-style: none; }\
-   .tree ul { margin-top: 2px; }\
-   .tree-link { cursor: pointer; }\
-  ")}})
-wn.ui.TreeNode=Class.extend({init:function(args){var me=this;$.extend(this,args);this.loaded=false;this.expanded=false;this.tree.nodes[this.label]=this;this.$a=$('<a class="tree-link">').click(function(){if(me.expandable&&me.tree.method&&!me.loaded){me.load()}else{me.selectnode();}
-if(me.tree.click)me.tree.click(this);}).bind('reload',function(){me.reload();}).data('label',this.label).appendTo(this.parent);if(this.expandable){this.$a.append('<i class="icon-folder-close"></i> '+this.label);}else{this.$a.append('<i class="icon-file"></i> '+this.label);}
-if(this.tree.onrender){this.tree.onrender(this);}},selectnode:function(){if(this.$ul){this.$ul.toggle();this.$a.find('i').removeClass();if(this.$ul.css('display').toLowerCase()=='block'){this.$a.find('i').addClass('icon-folder-open');}else{this.$a.find('i').addClass('icon-folder-close');}}
-this.tree.$w.find('a.selected').removeClass('selected');this.$a.toggleClass('selected');this.expanded=!this.expanded;},reload:function(){if(this.expanded){this.$a.click();}
-if(this.$ul){this.$ul.empty();}
-this.load();},addnode:function(data){if(!this.$ul){this.$ul=$('<ul>').toggle(false).appendTo(this.parent);}
-return new wn.ui.TreeNode({tree:this.tree,parent:$('<li>').appendTo(this.$ul),label:data.value,expandable:data.expandable,data:data});},load:function(){var me=this;args=$.extend(this.tree.args,{parent:this.label});$(me.$a).set_working();wn.call({method:this.tree.method,args:args,callback:function(r){$(me.$a).done_working();$.each(r.message,function(i,v){node=me.addnode(v);node.$a.data('node-data',v);});me.loaded=true;me.selectnode();}})}})
-/*
- *	lib/js/wn/upload.js
- */
-wn.upload={make:function(opts){var id=wn.dom.set_unique_id();$(opts.parent).append(repl('<iframe id="%(id)s" name="%(id)s" src="blank.html" \
-    style="width:0px; height:0px; border:0px"></iframe>\
-   <form method="POST" enctype="multipart/form-data" \
-    action="%(action)s" target="%(id)s">\
-    <input type="file" name="filedata" /><br><br>\
-    <input type="submit" class="btn btn-small" value="Upload" />\
-   </form>',{id:id,action:wn.request.url}));opts.args.cmd='uploadfile';opts.args._id=id;for(key in opts.args){if(opts.args[key]){$('<input type="hidden">').attr('name',key).attr('value',opts.args[key]).appendTo($(opts.parent).find('form'));}}
-$('#'+id).get(0).callback=opts.callback},callback:function(id,file_id,args){$('#'+id).get(0).callback(file_id,args);}}
-/*
- *	lib/js/wn/misc/about.js
- */
-wn.provide('wn.ui.misc');wn.ui.misc.about=function(){if(!wn.ui.misc.about_dialog){var d=new wn.widgets.Dialog({title:'About wnframework'})
-$(d.body).html(repl("<div style='padding: 20px'<p><b>Application Name:</b> %(name)s</p>\
-  <p><b>Version:</b> %(version)s</p>\
-  <p><b>License:</b> %(license)s</p>\
-  <p><b>Source Code:</b> %(source)s</p>\
-  <p><b>Publisher:</b> %(publisher)s</p>\
-  <p><b>Copyright:</b> %(copyright)s</p></div>",wn.app));wn.ui.misc.about_dialog=d;}
-wn.ui.misc.about_dialog.show();}
-/*
- *	lib/js/wn/views/doclistview.js
- */
-wn.provide('wn.views.doclistview');wn.provide('wn.doclistviews');wn.views.doclistview.show=function(doctype){var page_name=wn.get_route_str();if(wn.pages[page_name]){wn.container.change_to(wn.pages[page_name]);}else{var route=wn.get_route();if(route[1]){wn.model.with_doctype(route[1],function(r){if(r&&r['403']){return;}
-new wn.views.DocListView(route[1]);});}}}
-wn.views.DocListView=wn.ui.Listing.extend({init:function(doctype){this.doctype=doctype;this.label=get_doctype_label(doctype);this.label=(this.label.toLowerCase().substr(-4)=='list')?this.label:(this.label+' List');this.make_page();this.setup();},make_page:function(){var me=this;var page_name=wn.get_route_str();var page=wn.container.add_page(page_name);wn.container.change_to(page_name);this.$page=$(page);this.$page.html('<div class="layout-wrapper layout-wrapper-background">\
-   <div class="appframe-area"></div>\
-   <div class="layout-main-section">\
-    <div class="wnlist-area"><div class="help">Loading...</div></div>\
-   </div>\
-   <div class="layout-side-section">\
-    <div class="show-docstatus hide" style="margin-bottom: 19px">\
-     <h4>Show</h4>\
-     <div><input data-docstatus="0" type="checkbox" checked="checked" /> Drafts</div>\
-     <div><input data-docstatus="1" type="checkbox" checked="checked" /> Submitted</div>\
-     <div><input data-docstatus="2" type="checkbox" /> Cancelled</div>\
-    </div>\
-   </div>\
-   <div style="clear: both"></div>\
-  </div>');this.appframe=new wn.ui.AppFrame(this.$page.find('.appframe-area'));wn.views.breadcrumbs(this.appframe,locals.DocType[this.doctype].module,this.doctype);},setup:function(){var me=this;me.can_delete=wn.model.can_delete(me.doctype);me.meta=locals.DocType[me.doctype];me.$page.find('.wnlist-area').empty(),me.setup_docstatus_filter();me.setup_listview();me.init_list();me.init_stats();me.make_report_button();me.add_delete_option();me.make_help();},make_report_button:function(){var me=this;if(wn.boot.profile.can_get_report.indexOf(this.doctype)!=-1){this.appframe.add_button('Build Report',function(){wn.set_route('Report2',me.doctype);},'icon-th')}},make_help:function(){if(this.meta.description){this.appframe.add_help_button(wn.markdown('## '+this.meta.name+'\n\n'
-+this.meta.description));}},setup_docstatus_filter:function(){var me=this;this.can_submit=$.map(locals.DocPerm,function(d){if(d.parent==me.meta.name&&d.submit)return 1
-else return null;}).length;if(this.can_submit){this.$page.find('.show-docstatus').removeClass('hide');this.$page.find('.show-docstatus input').click(function(){me.run();})}},setup_listview:function(){if(this.meta.__listjs){eval(this.meta.__listjs);this.listview=new wn.doclistviews[this.doctype](this);}else{this.listview=new wn.views.ListView(this);}
-this.listview.parent=this;this.wrapper=this.$page.find('.wnlist-area');this.page_length=20;this.allow_delete=true;},init_list:function(auto_run){var me=this;this.make({method:'webnotes.widgets.doclistview.get',get_args:this.get_args,parent:this.wrapper,start:0,page_length:this.page_length,show_filters:true,show_grid:true,new_doctype:this.doctype,allow_delete:this.allow_delete,no_result_message:this.make_no_result(),columns:this.listview.fields,custom_new_doc:me.listview.make_new_doc||undefined,});$(this.wrapper).find('button[list_view_doc="'+me.doctype+'"]').click(function(){(me.listview.make_new_doc||me.make_new_doc)(me.doctype);});if((auto_run!==false)&&(auto_run!==0))this.run();},make_no_result:function(){var no_result_message=repl('<div class="well">\
-  <p>No %(doctype_label)s found</p>\
-  <hr>\
-  <p><button class="btn btn-info btn-small" list_view_doc="%(doctype)s">\
-   Make a new %(doctype_label)s</button>\
-  </p></div>',{doctype_label:get_doctype_label(this.doctype),doctype:this.doctype});return no_result_message;},render_row:function(row,data){data.doctype=this.doctype;this.listview.render(row,data,this);},get_query_fields:function(){return this.listview.fields;},get_args:function(){return{doctype:this.doctype,fields:this.get_query_fields(),filters:this.filter_list.get_filters(),docstatus:this.can_submit?$.map(this.$page.find('.show-docstatus :checked'),function(inp){return $(inp).attr('data-docstatus')}):[],order_by:this.listview.order_by||undefined,group_by:this.listview.group_by||undefined,}},add_delete_option:function(){var me=this;if(this.can_delete){this.add_button('Delete',function(){me.delete_items();},'icon-remove');$('<div style="padding: 4px"><input type="checkbox" name="select-all" />\
-     Select all</div>').insertBefore(this.$page.find('.result-list'));this.$page.find('[name="select-all"]').click(function(){me.$page.find('.list-delete').attr('checked',$(this).attr('checked')||false);})}},delete_items:function(){var me=this;var dl=$.map(me.$page.find('.list-delete:checked'),function(e){return $(e).data('name');});if(!dl.length)
-return;if(!confirm('This is PERMANENT action and you cannot undo. Continue?')){return;}
-me.set_working(true);wn.call({method:'webnotes.widgets.doclistview.delete_items',args:{items:dl,doctype:me.doctype},callback:function(){me.set_working(false);me.refresh();}})},init_stats:function(){var me=this
-wn.call({method:'webnotes.widgets.doclistview.get_stats',args:{stats:me.listview.stats,doctype:me.doctype},callback:function(r){$.each(me.listview.stats,function(i,v){me.render_stat(v,r.message[v]);});if(me.listview.stats.length){$('<button class="btn btn-small"><i class="refresh"></i> Refresh</button>').click(function(){me.reload_stats();}).appendTo($('<div class="stat-wrapper">').appendTo(me.$page.find('.layout-side-section')))}}});},render_stat:function(field,stat){var me=this;if(!stat||!stat.length){if(field=='_user_tags'){this.$page.find('.layout-side-section').append('<div class="stat-wrapper"><h4>Tags</h4>\
-      <div class="help small"><i>No records tagged.</i><br><br> \
-      To add a tag, open the document and click on \
-      "Add Tag" on the sidebar</div></div>');}
-return;}
-var label=wn.meta.docfield_map[this.doctype][field]?wn.meta.docfield_map[this.doctype][field].label:field;if(label=='_user_tags')label='Tags';var $w=$('<div class="stat-wrapper">\
-   <h4>'+label+'</h4>\
-   <div class="stat-grid">\
-   </div>\
-  </div>');stat=stat.sort(function(a,b){return b[1]-a[1]});var sum=0;$.each(stat,function(i,v){sum=sum+v[1];})
-$.each(stat,function(i,v){me.render_stat_item(i,v,sum,field).appendTo($w.find('.stat-grid'));});$w.appendTo(this.$page.find('.layout-side-section'));},render_stat_item:function(i,v,max,field){var me=this;var args={}
-args.label=v[0];args.width=flt(v[1])/max*100;args.count=v[1];args.field=field;$item=$(repl('<div class="stat-item">\
-   <div class="stat-bar" style="width: %(width)s%"></div>\
-   <div class="stat-label">\
-    <a href="#" data-label="%(label)s" data-field="%(field)s">\
-     %(label)s</a> \
-    (%(count)s)</div>\
-  </div>',args));this.setup_stat_item_click($item);return $item;},reload_stats:function(){this.$page.find('.layout-side-section .stat-wrapper').remove();this.init_stats();},setup_stat_item_click:function($item){var me=this;$item.find('a').click(function(){var fieldname=$(this).attr('data-field');var label=$(this).attr('data-label');me.set_filter(fieldname,label);return false;});},set_filter:function(fieldname,label){var filter=this.filter_list.get_filter(fieldname);if(filter){var v=filter.field.get_value();if(v.indexOf(label)!=-1){return false;}else{if(fieldname=='_user_tags'){this.filter_list.add_filter(this.doctype,fieldname,'like','%'+label);}else{filter.set_values(this.doctype,fieldname,'in',v+', '+label);}}}else{if(fieldname=='_user_tags'){this.filter_list.add_filter(this.doctype,fieldname,'like','%'+label);}else{this.filter_list.add_filter(this.doctype,fieldname,'=',label);}}
-this.run();}});wn.views.ListView=Class.extend({init:function(doclistview){this.doclistview=doclistview;this.doctype=doclistview.doctype;var t="`tab"+this.doctype+"`.";this.fields=[t+'name',t+'owner',t+'docstatus',t+'_user_tags',t+'modified'];this.stats=['_user_tags'];this.show_hide_check_column();},columns:[{width:'3%',content:'check'},{width:'4%',content:'avatar'},{width:'3%',content:'docstatus',css:{"text-align":"center"}},{width:'35%',content:'name'},{width:'40%',content:'tags',css:{'color':'#aaa'}},{width:'15%',content:'modified',css:{'text-align':'right','color':'#222'}}],render_column:function(data,parent,opts){var me=this;if(opts.css){$.each(opts.css,function(k,v){$(parent).css(k,v)});}
-if(opts.content.indexOf&&opts.content.indexOf('+')!=-1){$.map(opts.content.split('+'),function(v){me.render_column(data,parent,{content:v});});return;}
-if(typeof opts.content=='function'){opts.content(parent,data,me);}
-else if(opts.content=='name'){$(parent).append(repl('<a href="#!Form/%(doctype)s/%(name)s">%(name)s</a>',data));}
-else if(opts.content=='avatar'){$(parent).append(repl('<span class="avatar-small"><img src="%(avatar)s" \
-    title="%(fullname)s"/></span>',data));}
-else if(opts.content=='check'){$(parent).append('<input class="list-delete" type="checkbox">');$(parent).find('input').data('name',data.name);}
-else if(opts.content=='docstatus'){$(parent).append(repl('<span class="docstatus"><i class="%(docstatus_icon)s" \
-    title="%(docstatus_title)s"></i></span>',data));}
-else if(opts.content=='tags'){this.add_user_tags(parent,data);}
-else if(opts.content=='modified'){$(parent).append(data.when);}
-else if(opts.type=='bar-graph'){this.render_bar_graph(parent,data,opts.content,opts.label);}
-else if(opts.type=='link'&&opts.doctype){$(parent).append(repl('<a href="#!Form/'+opts.doctype+'/'
-+data[opts.content]+'">'+data[opts.content]+'</a>',data));}
-else if(opts.template){$(parent).append(repl(opts.template,data));}
-else if(data[opts.content]){if(opts.type=="date"){data[opts.content]=wn.datetime.str_to_user(data[opts.content])}
-$(parent).append(repl('<span title="%(title)s"> %(content)s</span>',{"title":opts.title||opts.content,"content":data[opts.content]}));}},render:function(row,data){var me=this;this.prepare_data(data);rowhtml='';$.each(this.columns,function(i,v){rowhtml+=repl('<td style="width: %(width)s"></td>',v);});var tr=$(row).html('<table><tbody><tr>'+rowhtml+'</tr></tbody></table>').find('tr').get(0);$.each(this.columns,function(i,v){me.render_column(data,tr.cells[i],v);});},prepare_data:function(data){data.fullname=wn.user_info(data.owner).fullname;data.avatar=wn.user_info(data.owner).image;if(data.modified)
-this.prepare_when(data,data.modified);if(data.docstatus==0||data.docstatus==null){data.docstatus_icon='icon-pencil';data.docstatus_title='Editable';}else if(data.docstatus==1){data.docstatus_icon='icon-lock';data.docstatus_title='Submitted';}else if(data.docstatus==2){data.docstatus_icon='icon-remove';data.docstatus_title='Cancelled';}
-for(key in data){if(data[key]==null){data[key]='';}}},prepare_when:function(data,date_str){if(!date_str)date_str=data.modified;data.when=(dateutil.str_to_user(date_str)).split(' ')[0];var diff=dateutil.get_diff(dateutil.get_today(),date_str.split(' ')[0]);if(diff==0){data.when=dateutil.comment_when(date_str);}
-if(diff==1){data.when='Yesterday'}
-if(diff==2){data.when='2 days ago'}},add_user_tags:function(parent,data){var me=this;if(data._user_tags){if($(parent).html().length>0){$(parent).append('<br />');}
-$.each(data._user_tags.split(','),function(i,t){if(t){$('<span class="label label-info" style="cursor: pointer; line-height: 200%">'
-+strip(t)+'</span>').click(function(){me.doclistview.set_filter('_user_tags',$(this).text())}).appendTo(parent);}});}},show_hide_check_column:function(){if(!this.doclistview.can_delete){this.columns=$.map(this.columns,function(v,i){if(v.content!='check')return v});}},render_bar_graph:function(parent,data,field,label){var args={percent:data[field],fully_delivered:(data[field]>99?'bar-complete':''),label:label}
-$(parent).append(repl('<span class="bar-outer" style="width: 30px; float: right" \
-   title="%(percent)s% %(label)s">\
-   <span class="bar-inner %(fully_delivered)s" \
-    style="width: %(percent)s%;"></span>\
-  </span>',args));},render_icon:function(parent,icon_class,label){var icon_html="<i class='%(icon_class)s' title='%(label)s'></i>";$(parent).append(repl(icon_html,{icon_class:icon_class,label:label||''}));}});wn.provide('wn.views.RecordListView');wn.views.RecordListView=wn.views.DocListView.extend({init:function(doctype,wrapper,ListView){this.doctype=doctype;this.wrapper=wrapper;this.listview=new ListView(this);this.listview.parent=this;this.setup();},setup:function(){var me=this;me.page_length=10;$(me.wrapper).empty();me.init_list();},get_args:function(){var args=this._super();$.each((this.default_filters||[]),function(i,f){args.filters.push(f);});args.docstatus=args.docstatus.concat((this.default_docstatus||[]));return args;},});
-/*
- *	lib/js/wn/views/formview.js
- */
-wn.provide('wn.views.formview');wn.views.formview={show:function(dt,dn){if(wn.model.new_names[dn])
-dn=wn.model.new_names[dn];wn.model.with_doctype(dt,function(){wn.model.with_doc(dt,dn,function(dn,r){if(r&&r['403'])return;if(!(locals[dt]&&locals[dt][dn])){wn.container.change_to('404');return;}
-if(!wn.views.formview[dt]){wn.views.formview[dt]=wn.container.add_page('Form - '+dt);wn.views.formview[dt].frm=new _f.Frm(dt,wn.views.formview[dt],true);}
-wn.container.change_to('Form - '+dt);wn.views.formview[dt].frm.refresh(dn);});})},create:function(dt){var new_name=LocalDB.create(dt);wn.set_route('Form',dt,new_name);}}
-/*
- *	lib/js/wn/views/reportview.js
- */
-wn.views.reportview={show:function(dt,rep_name){wn.require('js/report-legacy.js');dt=get_label_doctype(dt);if(!_r.rb_con){_r.rb_con=new _r.ReportContainer();}
-_r.rb_con.set_dt(dt,function(rb){if(rep_name){var route_changed=(rb.current_route!=wn.get_route_str())
-rb.load_criteria(rep_name);if(rb.dt&&route_changed){rb.dt.run();}}
-if(!rb.forbidden){wn.container.change_to('Report Builder');}});}}
-wn.views.reportview2={show:function(dt){var page_name=wn.get_route_str();if(wn.pages[page_name]){wn.container.change_to(wn.pages[page_name]);}else{var route=wn.get_route();if(route[1]){new wn.views.ReportViewPage(route[1],route[2]);}else{wn.set_route('404');}}}}
-wn.views.ReportViewPage=Class.extend({init:function(doctype,docname){this.doctype=doctype;this.docname=docname;this.page_name=wn.get_route_str();this.make_page();var me=this;wn.model.with_doctype(doctype,function(){me.make_report_view();if(docname){wn.model.with_doc('Report',docname,function(r){me.reportview.set_columns_and_filters(JSON.parse(locals['Report'][docname].json));me.reportview.run();});}else{me.reportview.run();}});},make_page:function(){this.page=wn.container.add_page(this.page_name);wn.ui.make_app_page({parent:this.page,single_column:true});wn.container.change_to(this.page_name);},make_report_view:function(){this.page.appframe.add_breadcrumb(locals.DocType[this.doctype].module);this.reportview=new wn.views.ReportView(this.doctype,this.docname,this.page)}})
-wn.views.ReportView=wn.ui.Listing.extend({init:function(doctype,docname,page){var me=this;$(page).find('.layout-main').html('Loading Report...');this.import_slickgrid();$(page).find('.layout-main').empty();this.doctype=doctype;this.docname=docname;this.page=page;this.tab_name='`tab'+doctype+'`';this.setup();},import_slickgrid:function(){wn.require('js/lib/slickgrid/slick.grid.css');wn.require('js/lib/slickgrid/slick-default-theme.css');wn.require('js/lib/slickgrid/jquery.event.drag.min.js');wn.require('js/lib/slickgrid/slick.core.js');wn.require('js/lib/slickgrid/slick.grid.js');wn.dom.set_style('.slick-cell { font-size: 12px; }');},set_init_columns:function(){var columns=[['name'],['owner']];$.each(wn.meta.docfield_list[this.doctype],function(i,df){if(df.in_filter&&df.fieldname!='naming_series'&&df.fieldtype!='Table'){columns.push([df.fieldname]);}});this.columns=columns;},setup:function(){var me=this;this.make({title:'Report: '+(this.docname?(this.doctype+' - '+this.docname):this.doctype),appframe:this.page.appframe,method:'webnotes.widgets.doclistview.get',get_args:this.get_args,parent:$(this.page).find('.layout-main'),start:0,page_length:20,show_filters:true,new_doctype:this.doctype,allow_delete:true,});this.make_column_picker();this.make_sorter();this.make_export();this.set_init_columns();this.make_save();},set_columns_and_filters:function(opts){var me=this;if(opts.columns)this.columns=opts.columns;if(opts.filters)$.each(opts.filters,function(i,f){me.filter_list.add_filter(f[0],f[1],f[2],f[3]);});if(opts.sort_by)this.sort_by_select.val(opts.sort_by);if(opts.sort_order)this.sort_order_select.val(opts.sort_order);if(opts.sort_by_next)this.sort_by_next_select.val(opts.sort_by_next);if(opts.sort_order_next)this.sort_order_next_select.val(opts.sort_order_next);},get_args:function(){var me=this;return{doctype:this.doctype,fields:$.map(this.columns,function(v){return me.get_full_column_name(v)}),order_by:this.get_order_by(),filters:this.filter_list.get_filters(),docstatus:['0','1','2']}},get_order_by:function(){var order_by=this.get_selected_table_and_column(this.sort_by_select)
-+' '+this.sort_order_select.val();if(this.sort_by_next_select.val()){order_by+=', '+this.get_selected_table_and_column(this.sort_by_next_select)
-+' '+this.sort_order_next_select.val();}
-return order_by;},get_selected_table_and_column:function($select){return this.get_full_column_name([$select.find('option:selected').attr('fieldname'),$select.find('option:selected').attr('table')])},get_full_column_name:function(v){return(v[1]?('`tab'+v[1]+'`'):this.tab_name)+'.'+v[0];},build_columns:function(){var me=this;return $.map(this.columns,function(c){var docfield=wn.meta.docfield_map[c[1]||me.doctype][c[0]];coldef={id:c[0],field:c[0],docfield:docfield,name:(docfield?docfield.label:toTitle(c[0])),width:(docfield?cint(docfield.width):120)||120}
-if(c[0]=='name'){coldef.formatter=function(row,cell,value,columnDef,dataContext){return repl("<a href='#!Form/%(doctype)s/%(name)s'>%(name)s</a>",{doctype:me.doctype,name:value});}}else if(docfield&&docfield.fieldtype=='Link'){coldef.formatter=function(row,cell,value,columnDef,dataContext){if(value){return repl("<a href='#!Form/%(doctype)s/%(name)s'>%(name)s</a>",{doctype:columnDef.docfield.options,name:value});}else{return'';}}}
-return coldef;});},render_list:function(){var me=this;var columns=[{id:'_idx',field:'_idx',name:'Sr.',width:40}].concat(this.build_columns());$.each(this.data,function(i,v){v._idx=i+1;});var options={enableCellNavigation:true,enableColumnReorder:false};var grid=new Slick.Grid(this.$w.find('.result-list').css('border','1px solid grey').css('height','500px').get(0),this.data,columns,options);},make_column_picker:function(){var me=this;this.column_picker=new wn.ui.ColumnPicker(this);this.page.appframe.add_button('Pick Columns',function(){me.column_picker.show(me.columns);},'icon-th-list');},make_sorter:function(){var me=this;this.sort_dialog=new wn.ui.Dialog({title:'Sorting Preferences'});$(this.sort_dialog.body).html('<p class="help">Sort By</p>\
-   <div class="sort-column"></div>\
-   <div><select class="sort-order" style="margin-top: 10px; width: 60%;">\
-    <option value="asc">Ascending</option>\
-    <option value="desc">Descending</option>\
-   </select></div>\
-   <hr><p class="help">Then By (optional)</p>\
-   <div class="sort-column-1"></div>\
-   <div><select class="sort-order-1" style="margin-top: 10px; width: 60%;">\
-    <option value="asc">Ascending</option>\
-    <option value="desc">Descending</option>\
-   </select></div><hr>\
-   <div><button class="btn btn-small btn-info">Update</div>');this.sort_by_select=new wn.ui.FieldSelect($(this.sort_dialog.body).find('.sort-column'),this.doctype).$select;this.sort_by_select.css('width','60%');this.sort_order_select=$(this.sort_dialog.body).find('.sort-order');this.sort_by_next_select=new wn.ui.FieldSelect($(this.sort_dialog.body).find('.sort-column-1'),this.doctype,null,true).$select;this.sort_by_next_select.css('width','60%');this.sort_order_next_select=$(this.sort_dialog.body).find('.sort-order-1');this.sort_by_select.val('modified');this.sort_order_select.val('desc');this.sort_by_next_select.val('');this.sort_order_next_select.val('desc');this.page.appframe.add_button('Sort By',function(){me.sort_dialog.show();},'icon-arrow-down');$(this.sort_dialog.body).find('.btn-info').click(function(){me.sort_dialog.hide();me.run();});},make_export:function(){var me=this;if(wn.user.is_report_manager()){this.page.appframe.add_button('Export',function(){var args=me.get_args();args.cmd='webnotes.widgets.doclistview.export_query'
-open_url_post(wn.request.url,args);},'icon-download-alt');}},make_save:function(){var me=this;if(wn.user.is_report_manager()){this.page.appframe.add_button('Save',function(){if(me.docname){var name=me.docname}else{var name=prompt('Select Report Name');if(!name){return;}}
-wn.call({method:'webnotes.widgets.doclistview.save_report',args:{name:name,doctype:me.doctype,json:JSON.stringify({filters:me.filter_list.get_filters(),columns:me.columns,sort_by:me.sort_by_select.val(),sort_order:me.sort_order_select.val(),sort_by_next:me.sort_by_next_select.val(),sort_order_next:me.sort_order_next_select.val()})},callback:function(r){if(r.exc)return;if(r.message!=me.docname)
-wn.set_route('Report2',me.doctype,r.message);}});},'icon-upload');}}});wn.ui.ColumnPicker=Class.extend({init:function(list){this.list=list;this.doctype=list.doctype;this.selects={};},show:function(columns){wn.require('js/lib/jquery/jquery.ui.sortable.js');var me=this;if(!this.dialog){this.dialog=new wn.ui.Dialog({title:'Pick Columns',width:'400'});}
-$(this.dialog.body).html('<div class="help">Drag to sort columns</div>\
-   <div class="column-list"></div>\
-   <div><button class="btn btn-small btn-add"><i class="icon-plus"></i>\
-    Add Column</button></div>\
-   <hr>\
-   <div><button class="btn btn-small btn-info">Update</div>');$.each(columns,function(i,c){me.add_column(c);});$(this.dialog.body).find('.column-list').sortable();$(this.dialog.body).find('.btn-add').click(function(){me.add_column(['name']);});$(this.dialog.body).find('.btn-info').click(function(){me.dialog.hide();me.list.columns=[];$(me.dialog.body).find('select').each(function(){var $selected=$(this).find('option:selected');me.list.columns.push([$selected.attr('fieldname'),$selected.attr('table')]);})
-me.list.run();});this.dialog.show();},add_column:function(c){var w=$('<div style="padding: 5px 5px 5px 35px; background-color: #eee; width: 70%; \
-   margin-bottom: 10px; border-radius: 3px; cursor: move;">\
-   <a class="close" style="margin-top: 5px;">&times</a>\
-   </div>').appendTo($(this.dialog.body).find('.column-list'));var fieldselect=new wn.ui.FieldSelect(w,this.doctype);fieldselect.$select.css('width','90%').val((c[1]||this.doctype)+"."+c[0]);w.find('.close').click(function(){$(this).parent().remove();});}});
-/*
- *	lib/js/wn/views/grid_report.js
- */
-wn.provide("wn.report_dump");$.extend(wn.report_dump,{data:{},with_data:function(doctypes,callback,progress_bar){var missing=[];$.each(doctypes,function(i,v){if(!wn.report_dump.data[v])missing.push(v);})
-if(missing.length){wn.call({method:"webnotes.widgets.report_dump.get_data",args:{doctypes:doctypes,missing:missing},callback:function(r){$.each(r.message,function(doctype,doctype_data){var data=[];$.each(doctype_data.data,function(i,d){var row={};$.each(doctype_data.columns,function(idx,col){row[col]=d[idx];});row.id=row.name||doctype+"-"+i;row.doctype=doctype;data.push(row);});wn.report_dump.data[doctype]=data;});$.each(r.message,function(doctype,doctype_data){if(doctype_data.links){$.each(wn.report_dump.data[doctype],function(row_idx,row){$.each(doctype_data.links,function(link_key,link){if(wn.report_dump.data[link[0]][row[link_key]]){row[link_key]=wn.report_dump.data[link[0]][row[link_key]][link[1]];}else{row[link_key]=null;}})})}});callback();},progress_bar:progress_bar})}else{callback();}}});wn.provide("wn.views");wn.views.GridReport=Class.extend({init:function(opts){this.filter_inputs={};this.preset_checks=[];this.tree_grid={show:false};$.extend(this,opts);this.wrapper=$('<div>').appendTo(this.parent);if(this.filters){this.make_filters();}
-this.make_waiting();this.import_slickgrid();var me=this;this.get_data();},bind_show:function(){var me=this;$(this.page).bind('show',function(){wn.cur_grid_report=me;me.apply_filters_from_route();me.refresh();});},get_data:function(){var me=this;wn.report_dump.with_data(this.doctypes,function(){me.setup_filters();me.init_filter_values();me.refresh();},this.wrapper.find(".progress .bar"));},setup_filters:function(){var me=this;$.each(me.filter_inputs,function(i,v){var opts=v.get(0).opts;if(opts.fieldtype=="Select"&&inList(me.doctypes,opts.link)){$(v).add_options($.map(wn.report_dump.data[opts.link],function(d){return d.name;}));}});this.filter_inputs.refresh&&this.filter_inputs.refresh.click(function(){me.set_route();});this.filter_inputs.reset_filters&&this.filter_inputs.reset_filters.click(function(){me.init_filter_values();me.set_route();});this.filter_inputs.range&&this.filter_inputs.range.change(function(){me.set_route();});},init_filter_values:function(){var me=this;$.each(this.filter_inputs,function(key,filter){var opts=filter.get(0).opts;if(sys_defaults[key]){filter.val(sys_defaults[key]);}else if(opts.fieldtype=='Select'){filter.get(0).selectedIndex=0;}else if(opts.fieldtype=='Data'){filter.val("");}})
-if(this.filter_inputs.from_date)
-this.filter_inputs.from_date.val(dateutil.str_to_user(sys_defaults.year_start_date));if(this.filter_inputs.to_date)
-this.filter_inputs.to_date.val(dateutil.str_to_user(sys_defaults.year_end_date));},make_filters:function(){var me=this;$.each(this.filters,function(i,v){v.fieldname=v.fieldname||v.label.replace(/ /g,'_').toLowerCase();var input=null;if(v.fieldtype=='Select'){input=me.appframe.add_select(v.label,v.options||[v.default_value]);}else if(v.fieldtype=='Button'){input=me.appframe.add_button(v.label);if(v.icon){$('<i class="icon '+v.icon+'"></i>').prependTo(input);}}else if(v.fieldtype=='Date'){input=me.appframe.add_date(v.label);}else if(v.fieldtype=='Label'){input=me.appframe.add_label(v.label);}else if(v.fieldtype=='Data'){input=me.appframe.add_data(v.label);}
-if(input){input&&(input.get(0).opts=v);if(v.cssClass){input.addClass(v.cssClass);}
-input.keypress(function(e){if(e.which==13){me.set_route();}})}
-me.filter_inputs[v.fieldname]=input;});},make_waiting:function(){this.waiting=$('<div class="well" style="width: 63%; margin: 30px auto;">\
-   <p style="text-align: center;">Loading Report...</p>\
-   <div class="progress progress-striped active">\
-    <div class="bar" style="width: 10%"></div></div>').appendTo(this.wrapper);},load_filter_values:function(){var me=this;$.each(this.filter_inputs,function(i,f){var opts=f.get(0).opts;if(opts.fieldtype!='Button'){me[opts.fieldname]=f.val();if(opts.fieldtype=="Date"){me[opts.fieldname]=dateutil.user_to_str(me[opts.fieldname]);}else if(opts.fieldtype=="Select"){me[opts.fieldname+'_default']=opts.default_value;}}});if(this.filter_inputs.from_date&&this.filter_inputs.to_date&&(this.to_date<this.from_date)){msgprint("From Date must be before To Date");return;}},make_name_map:function(data,key){var map={};key=key||"name";$.each(data,function(i,v){map[v[key]]=v;})
-return map;},reset_item_values:function(item){var me=this;$.each(this.columns,function(i,col){if(col.formatter==me.currency_formatter){item[col.id]=0;}});},import_slickgrid:function(){wn.require('js/lib/slickgrid/slick.grid.css');wn.require('js/lib/slickgrid/slick-default-theme.css');wn.require('js/lib/slickgrid/jquery.event.drag.min.js');wn.require('js/lib/slickgrid/slick.core.js');wn.require('js/lib/slickgrid/slick.grid.js');wn.require('js/lib/slickgrid/slick.dataview.js');wn.dom.set_style('.slick-cell { font-size: 12px; }');if(this.tree_grid.show)wn.require("js/app/tree_grid.css");},refresh:function(){this.waiting.toggle(false);if(!this.grid_wrapper)
-this.make();this.show_zero=$('.show-zero input:checked').length;this.load_filter_values();this.setup_columns();this.setup_dataview_columns();this.apply_link_formatters();this.prepare_data();this.prepare_data_view();this.wrapper.find(".processing").toggle(true);this.wrapper.find(".processing").delay(2000).fadeOut(300);this.render();this.render_plot();},setup_dataview_columns:function(){this.dataview_columns=$.map(this.columns,function(col){return!col.hidden?col:null;});},make:function(){this.plot_area=$('<div class="plot" style="margin-bottom: 15px; display: none; \
-   height: 300px; width: 100%;"></div>').appendTo(this.wrapper);$('<div style="text-align: right;"> \
-   <div class="processing" style="background-color: #fec; display: none; float: left; margin: 2px"> \
-    Updated! </div>\
-   <a href="#" class="grid-report-print"><i class="icon icon-print"></i> Print</a> \
-   <span style="color: #aaa; margin: 0px 10px;"> | </span> \
-   <a href="#" class="grid-report-export"><i class="icon icon-download-alt"></i> Export</a> \
-  </div>').appendTo(this.wrapper);this.wrapper.find(".grid-report-export").click(function(){return me.export();});this.wrapper.find(".grid-report-print").click(function(){msgprint("Coming Soon");return false;});this.grid_wrapper=$("<div style='height: 500px; border: 1px solid #aaa; \
-   background-color: #eee; margin-top: 15px;'>").appendTo(this.wrapper);this.id=wn.dom.set_unique_id(this.grid_wrapper.get(0));$('<div style="margin: 10px 0px; text-align: right; display: none" class="show-zero">\
-    <input type="checkbox"> Show rows with zero values\
-   </div>').appendTo(this.wrapper);this.bind_show();wn.cur_grid_report=this;this.apply_filters_from_route();$(this.wrapper).trigger('make');},apply_filters_from_route:function(){var hash=decodeURIComponent(window.location.hash);var me=this;if(hash.indexOf('/')!=-1){$.each(hash.split('/').splice(1).join('/').split('&'),function(i,f){var f=f.split("=");if(me.filter_inputs[f[0]]){me.filter_inputs[f[0]].val(decodeURIComponent(f[1]));}else{console.log("Invalid filter: "+f[0]);}});}else{this.init_filter_values();}},set_route:function(){wn.set_route(wn.container.page.page_name,$.map(this.filter_inputs,function(v){var val=v.val();var opts=v.get(0).opts;if(val&&val!=opts.default_value)
-return encodeURIComponent(opts.fieldname)
-+'='+encodeURIComponent(val);}).join('&'))},options:{editable:false,enableColumnReorder:false},render:function(){this.grid=new Slick.Grid("#"+this.id,this.dataView,this.dataview_columns,this.options);var me=this;this.dataView.onRowsChanged.subscribe(function(e,args){me.grid.invalidateRows(args.rows);me.grid.render();});this.dataView.onRowCountChanged.subscribe(function(e,args){me.grid.updateRowCount();me.grid.render();});this.tree_grid.show&&this.add_tree_grid_events();},prepare_data_view:function(){this.dataView=new Slick.Data.DataView({inlineFilters:true});this.dataView.beginUpdate();this.dataView.setItems(this.data);if(this.dataview_filter)this.dataView.setFilter(this.dataview_filter);if(this.tree_grid.show)this.dataView.setFilter(this.tree_dataview_filter);this.dataView.endUpdate();},export:function(){var me=this;var res=[$.map(this.columns,function(v){return v.name;})].concat(this.get_view_data());wn.require("js/lib/downloadify/downloadify.min.js");wn.require("js/lib/downloadify/swfobject.js");var id=wn.dom.set_unique_id();var msgobj=msgprint('<p id="'+id+'">You must have Flash 10 installed to download this file.</p>');Downloadify.create(id,{filename:function(){return me.title+'.csv';},data:function(){return wn.to_csv(res);},swf:'js/lib/downloadify/downloadify.swf',downloadImage:'js/lib/downloadify/download.png',onComplete:function(){msgobj.hide();},onCancel:function(){msgobj.hide();},onError:function(){msgobj.hide();},width:100,height:30,transparent:true,append:false});return false;},apply_filters:function(item){var filters=this.filter_inputs;if(item._show)return true;for(i in filters){if(!this.apply_filter(item,i))return false;}
-return true;},apply_filter:function(item,fieldname){var filter=this.filter_inputs[fieldname].get(0);if(filter.opts.filter){if(!filter.opts.filter(this[filter.opts.fieldname],item,filter.opts,this)){return false;}}
-return true;},apply_zero_filter:function(val,item,opts,me){if(!me.show_zero){for(var i=0,j=me.columns.length;i<j;i++){var col=me.columns[i];if(col.formatter==me.currency_formatter&&!col.hidden){if(flt(item[col.field])>0.001||flt(item[col.field])<-0.001){return true;}}}
-return false;}
-return true;},show_zero_check:function(){var me=this;this.wrapper.bind('make',function(){me.wrapper.find('.show-zero').toggle(true).find('input').click(function(){me.refresh();});});},is_default:function(fieldname){return this[fieldname]==this[fieldname+"_default"];},date_formatter:function(row,cell,value,columnDef,dataContext){return dateutil.str_to_user(value);},currency_formatter:function(row,cell,value,columnDef,dataContext){return repl('<div style="text-align: right; %(_style)s">%(value)s</div>',{_style:dataContext._style||"",value:fmt_money(value)});},text_formatter:function(row,cell,value,columnDef,dataContext){return repl('<span style="%(_style)s" title="%(esc_value)s">%(value)s</span>',{_style:dataContext._style||"",esc_value:cstr(value).replace(/"/g,'\"'),value:cstr(value)});},check_formatter:function(row,cell,value,columnDef,dataContext){return repl("<input type='checkbox' data-id='%(id)s' \
-   class='plot-check' %(checked)s>",{"id":dataContext.id,"checked":dataContext.checked?"checked":""})},apply_link_formatters:function(){var me=this;$.each(this.dataview_columns,function(i,col){if(col.link_formatter){col.formatter=function(row,cell,value,columnDef,dataContext){if(!value)return"";var me=wn.cur_grid_report;if(dataContext._show){return repl('<span style="%(_style)s">%(value)s</span>',{_style:dataContext._style||"",value:value});}
-var link_formatter=me.dataview_columns[cell].link_formatter;var html=repl('<a href="#" \
-      onclick="wn.cur_grid_report.filter_inputs.%(col_name)s.val(\'%(value)s\'); \
-       wn.cur_grid_report.set_route(); return false;">\
-      %(value)s</a>',{value:value,col_name:link_formatter.filter_input,page_name:wn.container.page.page_name})
-if(link_formatter.open_btn){var doctype=link_formatter.doctype?eval(link_formatter.doctype):dataContext.doctype;html+=me.get_link_open_icon(doctype,value);}
-return html;}}})},get_link_open_icon:function(doctype,name){return repl(' <i class="icon icon-share" style="cursor: pointer;"\
-   onclick="wn.set_route(\'Form\', \'%(doctype)s\', \'%(name)s\');">\
-  </i>',{name:name,doctype:doctype});},make_date_range_columns:function(){this.columns=[];var me=this;var range=this.filter_inputs.range.val();this.from_date=dateutil.user_to_str(this.filter_inputs.from_date.val());this.to_date=dateutil.user_to_str(this.filter_inputs.to_date.val());var date_diff=dateutil.get_diff(this.to_date,this.from_date);me.column_map={};var add_column=function(date){me.columns.push({id:date,name:dateutil.str_to_user(date),field:date,formatter:me.currency_formatter,width:100});}
-var build_columns=function(condition){for(var i=0;i<date_diff;i++){var date=dateutil.add_days(me.from_date,i);if(!condition)condition=function(){return true;}
-if(condition(date))add_column(date);me.last_date=date;if(me.columns.length){me.column_map[date]=me.columns[me.columns.length-1];}}}
-if(range=='Daily'){build_columns();}else if(range=='Weekly'){build_columns(function(date){if(!me.last_date)return true;return!(dateutil.get_diff(date,me.from_date)%7)});}else if(range=='Monthly'){build_columns(function(date){if(!me.last_date)return true;return dateutil.str_to_obj(me.last_date).getMonth()!=dateutil.str_to_obj(date).getMonth()});}else if(range=='Quarterly'){build_columns(function(date){if(!me.last_date)return true;return dateutil.str_to_obj(date).getDate()==1&&in_list([0,3,6,9],dateutil.str_to_obj(date).getMonth())});}else if(range=='Yearly'){build_columns(function(date){if(!me.last_date)return true;return $.map(wn.report_dump.data['Fiscal Year'],function(v){return date==v.year_start_date?true:null;}).length;});}
-$.each(this.columns,function(i,col){col.name=me.columns[i+1]?dateutil.str_to_user(dateutil.add_days(me.columns[i+1].id,-1)):dateutil.str_to_user(me.to_date);});},});wn.views.GridReportWithPlot=wn.views.GridReport.extend({render_plot:function(){var plot_data=this.get_plot_data?this.get_plot_data():null;if(!plot_data){this.plot_area.toggle(false);return;}
-wn.require('js/lib/flot/jquery.flot.js');this.plot=$.plot(this.plot_area.toggle(true),plot_data,this.get_plot_options());this.setup_plot_hover();},setup_plot_check:function(){var me=this;me.wrapper.bind('make',function(){me.wrapper.on("click",".plot-check",function(){var checked=$(this).attr("checked");me.item_by_name[$(this).attr("data-id")].checked=checked?true:false;me.render_plot();});});},setup_plot_hover:function(){var me=this;this.tooltip_id=wn.dom.set_unique_id();function showTooltip(x,y,contents){$('<div id="'+me.tooltip_id+'">'+contents+'</div>').css({position:'absolute',display:'none',top:y+5,left:x+5,border:'1px solid #fdd',padding:'2px','background-color':'#fee',opacity:0.80}).appendTo("body").fadeIn(200);}
-this.previousPoint=null;this.wrapper.find('.plot').bind("plothover",function(event,pos,item){if(item){if(me.previousPoint!=item.dataIndex){me.previousPoint=item.dataIndex;$("#"+me.tooltip_id).remove();showTooltip(item.pageX,item.pageY,me.get_tooltip_text(item.series.label,item.datapoint[0],item.datapoint[1]));}}
-else{$("#"+me.tooltip_id).remove();me.previousPoint=null;}});},get_tooltip_text:function(label,x,y){var date=dateutil.obj_to_user(new Date(x));var value=fmt_money(y);return value+" on "+date;},get_view_data:function(){var res=[];var col_map=$.map(this.columns,function(v){return v.field;});for(var i=0,len=this.dataView.getLength();i<len;i++){var d=this.dataView.getItem(i);var row=[];$.each(col_map,function(i,col){var val=d[col];if(val===null||val===undefined){val=""}
-row.push(val);})
-res.push(row);}
-return res;},get_plot_data:function(){var data=[];var me=this;$.each(this.data,function(i,item){if(item.checked){data.push({label:item.name,data:$.map(me.columns,function(col,idx){if(col.formatter==me.currency_formatter&&!col.hidden&&col.plot!==false){return me.get_plot_points(item,col,idx)}}),points:{show:true},lines:{show:true,fill:true},});data[data.length-1].data=[[dateutil.str_to_obj(me.from_date).getTime(),item.opening]].concat(data[data.length-1].data);}});return data.length?data:false;},get_plot_options:function(){return{grid:{hoverable:true,clickable:true},xaxis:{mode:"time",min:dateutil.str_to_obj(this.from_date).getTime(),max:dateutil.str_to_obj(this.to_date).getTime()}}}});wn.views.TreeGridReport=wn.views.GridReportWithPlot.extend({make_transaction_list:function(parent_doctype,doctype){var me=this;var tmap={};$.each(wn.report_dump.data[doctype],function(i,v){if(!tmap[v.parent])tmap[v.parent]=[];tmap[v.parent].push(v);});this.tl=[];$.each(wn.report_dump.data[parent_doctype],function(i,parent){if(tmap[parent.name]){$.each(tmap[parent.name],function(i,d){me.tl.push($.extend(copy_dict(parent),d));});}});},add_tree_grid_events:function(){var me=this;this.grid.onClick.subscribe(function(e,args){if($(e.target).hasClass("toggle")){var item=me.dataView.getItem(args.row);if(item){if(!item._collapsed){item._collapsed=true;}else{item._collapsed=false;}
-me.dataView.updateItem(item.id,item);}
-e.stopImmediatePropagation();}});},tree_formatter:function(row,cell,value,columnDef,dataContext){var me=wn.cur_grid_report;value=value.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");var data=me.data;var spacer="<span style='display:inline-block;height:1px;width:"+
-(15*dataContext["indent"])+"px'></span>";var idx=me.dataView.getIdxById(dataContext.id);var link=me.tree_grid.formatter(dataContext);if(dataContext.doctype){link+=me.get_link_open_icon(dataContext.doctype,value);}
-if(data[idx+1]&&data[idx+1].indent>data[idx].indent){if(dataContext._collapsed){return spacer+" <span class='toggle expand'></span>&nbsp;"+link;}else{return spacer+" <span class='toggle collapse'></span>&nbsp;"+link;}}else{return spacer+" <span class='toggle'></span>&nbsp;"+link;}},tree_dataview_filter:function(item){var me=wn.cur_grid_report;if(!me.apply_filters(item))return false;var parent=item[me.tree_grid.parent_field];while(parent){if(me.item_by_name[parent]._collapsed){return false;}
-parent=me.parent_map[parent];}
-return true;},prepare_tree:function(item_dt,group_dt){var group_data=wn.report_dump.data[group_dt];var item_data=wn.report_dump.data[item_dt];var me=this;var item_group_map={};var group_ids=$.map(group_data,function(v){return v.id;});$.each(item_data,function(i,item){var parent=item[me.tree_grid.parent_field];if(!item_group_map[parent])item_group_map[parent]=[];if(group_ids.indexOf(item.name)==-1){item_group_map[parent].push(item);}else{msgprint("Ignoring Item "+item.name.bold()+", because a group exists with the same name!");}});var items=[];$.each(group_data,function(i,group){group.is_group=true;items.push(group);items=items.concat(item_group_map[group.name]||[]);});return items;},set_indent:function(){var me=this;$.each(this.data,function(i,d){var indent=0;var parent=me.parent_map[d.name];if(parent){while(parent){indent++;parent=me.parent_map[parent];}}
-d.indent=indent;});},});
-/*
- *	lib/js/legacy/widgets/dialog.js
- */
-var cur_dialog;var top_index=91;function Dialog(w,h,title,content){this.make({width:w,title:title});if(content)this.make_body(content);this.onshow='';this.oncancel='';this.no_cancel_flag=0;this.display=false;this.first_button=false;}
-Dialog.prototype=new wn.widgets.Dialog()
-Dialog.prototype.make_body=function(content){this.rows={};this.widgets={};for(var i in content)this.make_row(content[i]);}
-Dialog.prototype.clear_inputs=function(d){for(var wid in this.widgets){var w=this.widgets[wid];var tn=w.tagName?w.tagName.toLowerCase():'';if(tn=='input'||tn=='textarea'){w.value='';}else if(tn=='select'){sel_val(w.options[0].value);}else if(w.txt){w.txt.value='';}else if(w.input){w.input.value='';}}}
-Dialog.prototype.make_row=function(d){var me=this;this.rows[d[1]]=$a(this.body,'div','dialog_row');var row=this.rows[d[1]];if(d[0]!='HTML'){var t=make_table(row,1,2,'100%',['30%','70%']);row.tab=t;var c1=$td(t,0,0);var c2=$td(t,0,1);if(d[0]!='Check'&&d[0]!='Button')
-$(c1).text(d[1]);}
-if(d[0]=='HTML'){if(d[2])row.innerHTML=d[2];this.widgets[d[1]]=row;}
-else if(d[0]=='Check'){var i=$a_input(c2,'checkbox','',{width:'20px'});c1.innerHTML=d[1];this.widgets[d[1]]=i;}
-else if(d[0]=='Data'){c1.innerHTML=d[1];c2.style.overflow='auto';this.widgets[d[1]]=$a_input(c2,'text');if(d[2])$a(c2,'div','field_description').innerHTML=d[2];}
-else if(d[0]=='Link'){c1.innerHTML=d[1];var f=make_field({fieldtype:'Link','label':d[1],'options':d[2]},'',c2,this,0,1);f.not_in_form=1;f.dialog=this;f.refresh();this.widgets[d[1]]=f.input;}
-else if(d[0]=='Date'){c1.innerHTML=d[1];var f=make_field({fieldtype:'Date','label':d[1],'options':d[2]},'',c2,this,0,1);f.not_in_form=1;f.refresh();f.dialog=this;this.widgets[d[1]]=f.input;}
-else if(d[0]=='Password'){c1.innerHTML=d[1];c2.style.overflow='auto';this.widgets[d[1]]=$a_input(c2,'password');if(d[3])$a(c2,'div','field_description').innerHTML=d[3];}
-else if(d[0]=='Select'){c1.innerHTML=d[1];this.widgets[d[1]]=$a(c2,'select','',{width:'160px'})
-if(d[2])$a(c2,'div','field_description').innerHTML=d[2];if(d[3])add_sel_options(this.widgets[d[1]],d[3],d[3][0]);}
-else if(d[0]=='Text'){c1.innerHTML=d[1];c2.style.overflow='auto';this.widgets[d[1]]=$a(c2,'textarea');if(d[2])$a(c2,'div','field_description').innerHTML=d[2];}
-else if(d[0]=='Button'){c2.style.height='32px';var b=$btn(c2,d[1],function(btn){if(btn._onclick)btn._onclick(me)},null,null,1);b.dialog=me;if(!this.first_button){$(b).addClass('btn-info');this.first_button=true;}
-if(d[2]){b._onclick=d[2];}
-this.widgets[d[1]]=b;}}
-/*
- *	lib/js/legacy/widgets/layout.js
- */
-function Layout(parent,width){if(parent&&parent.substr){parent=$i(parent);}
-this.wrapper=$a(parent,'div','',{display:'none'});if(width){this.width=this.wrapper.style.width;}
-this.myrows=[];}
-Layout.prototype.addrow=function(){this.cur_row=new LayoutRow(this,this.wrapper);this.myrows[this.myrows.length]=this.cur_row;return this.cur_row}
-Layout.prototype.addsubrow=function(){this.cur_row=new LayoutRow(this,this.cur_row.main_body);this.myrows[this.myrows.length]=this.cur_row;return this.cur_row}
-Layout.prototype.addcell=function(width){return this.cur_row.addCell(width);}
-Layout.prototype.setcolour=function(col){$bg(cc,col);}
-Layout.prototype.show=function(){$ds(this.wrapper);}
-Layout.prototype.hide=function(){$dh(this.wrapper);}
-Layout.prototype.close_borders=function(){if(this.with_border){this.myrows[this.myrows.length-1].wrapper.style.borderBottom='1px solid #000';}}
-function LayoutRow(layout,parent){this.layout=layout;this.wrapper=$a(parent,'div','form-layout-row');this.main_head=$a(this.wrapper,'div');this.main_body=$a(this.wrapper,'div');if(layout.with_border){this.wrapper.style.border='1px solid #000';this.wrapper.style.borderBottom='0px';}
-this.header=$a(this.main_body,'div','',{padding:(layout.with_border?'0px 8px':'0px')});this.body=$a(this.main_body,'div');this.table=$a(this.body,'table','',{width:'100%',borderCollapse:'collapse',tableLayout:'fixed'});this.row=this.table.insertRow(0);this.mycells=[];}
-LayoutRow.prototype.hide=function(){$dh(this.wrapper);}
-LayoutRow.prototype.show=function(){$ds(this.wrapper);}
-LayoutRow.prototype.addCell=function(wid){var lc=new LayoutCell(this.layout,this,wid);this.mycells[this.mycells.length]=lc;return lc;}
-function LayoutCell(layout,layoutRow,width){if(width){var w=width+'';if(w.substr(w.length-2,2)!='px'){if(w.substr(w.length-1,1)!="%"){width=width+'%'};}}
-this.width=width;this.layout=layout;var cidx=layoutRow.row.cells.length;this.cell=layoutRow.row.insertCell(cidx);this.cell.style.verticalAlign='top';this.set_width(layoutRow.row,width);var h=$a(this.cell,'div','',{padding:(layout.with_border?'0px 8px':'0px')});this.wrapper=$a(this.cell,'div','',{padding:(layout.with_border?'8px':'0px')});layout.cur_cell=this.wrapper;layout.cur_cell.header=h;}
-LayoutCell.prototype.set_width=function(row,width){var w=100;var n_cells=row.cells.length;var cells_with_no_width=n_cells;if(width){$y(row.cells[n_cells-1],{width:cint(width)+'%'})}else{row.cells[n_cells-1].estimated_width=1;}
-for(var i=0;i<n_cells;i++){if(!row.cells[i].estimated_width){w=w-cint(row.cells[i].style.width);cells_with_no_width--;}}
-for(var i=0;i<n_cells;i++){if(row.cells[i].estimated_width)
-$y(row.cells[i],{width:cint(w/cells_with_no_width)+'%'})}}
-LayoutCell.prototype.show=function(){$ds(this.wrapper);}
-LayoutCell.prototype.hide=function(){$dh(this.wrapper);}
-/*
- *	lib/js/legacy/widgets/tabbedpage.js
- */
-function TabbedPage(parent,only_labels){this.tabs={};this.items=this.tabs
-this.cur_tab=null;this.label_wrapper=$a(parent,'div','box_label_wrapper',{marginTop:'16px'});this.label_body=$a(this.label_wrapper,'div','box_label_body');this.label_area=$a(this.label_body,'ul','box_tabs');if(!only_labels)this.body_area=$a(parent,'div','',{backgroundColor:'#FFF'});else this.body_area=null;this.add_item=function(label,onclick,no_body,with_heading){this.add_tab(label,onclick,no_body,with_heading);return this.items[label];}}
-TabbedPage.prototype.add_tab=function(n,onshow,no_body,with_heading){var tab=$a(this.label_area,'li');tab.label=$a(tab,'a');tab.label.innerHTML=n;if(this.body_area&&!no_body){tab.tab_body=$a(this.body_area,'div');$dh(tab.tab_body);tab.body=tab.tab_body;}else{tab.tab_body=null;}
-tab.onshow=onshow;var me=this;tab.collapse=function(){if(this.tab_body)$dh(this.tab_body);this.className='';}
-tab.set_selected=function(){if(me.cur_tab)me.cur_tab.collapse();this.className='box_tab_selected';$(this).css('opacity',1);me.cur_tab=this;}
-tab.expand=function(arg){this.set_selected();if(this.tab_body)$ds(this.tab_body);if(this.onshow)this.onshow(arg);}
-tab.onmouseover=function(){if(me.cur_tab!=this)this.className='box_tab_mouseover';}
-tab.onmouseout=function(){if(me.cur_tab!=this)this.className=''}
-tab.hide=function(){this.collapse();$dh(this);}
-tab.show=function(){$ds(this);}
-tab.onclick=function(){this.expand();}
-this.tabs[n]=tab;return tab;}
-function TrayPage(parent,height,width,width_body){var me=this;if(!width)width=(100/8)+'%';this.body_style={margin:'4px 8px'}
-this.cur_item=null;this.items={};this.tabs=this.items
-this.tab=make_table($a(parent,'div'),1,2,'100%',[width,width_body]);$y($td(this.tab,0,0),{backgroundColor:this.tray_bg,width:width});this.body=$a($td(this.tab,0,1),'div');if(height){$y(this.body,{height:height,overflow:'auto'});}
-this.add_item=function(label,onclick,no_body,with_heading){this.items[label]=new TrayItem(me,label,onclick,no_body,with_heading);return this.items[label];}}
-function TrayItem(tray,label,onclick,no_body,with_heading){this.label=label;this.onclick=onclick;var me=this;this.ldiv=$a($td(tray.tab,0,0),'div');$item_normal(this.ldiv);if(!no_body){this.wrapper=$a(tray.body,'div','',tray.body_style);if(with_heading){this.header=$a(this.wrapper,'div','sectionHeading',{marginBottom:'16px',paddingBottom:'0px'});this.header.innerHTML=label;}
-this.body=$a(this.wrapper,'div');this.tab_body=this.body;$dh(this.wrapper);}
-$(this.ldiv).html(label).hover(function(){if(tray.cur_item.label!=this.label)$item_active(this);},function(){if(tray.cur_item.label!=this.label)$item_normal(this);}).click(function(){me.expand();})
-this.ldiv.label=label;this.ldiv.setAttribute('title',label);this.ldiv.onmousedown=function(){$item_pressed(this);}
-this.ldiv.onmouseup=function(){$item_selected(this);}
-this.expand=function(){if(tray.cur_item)tray.cur_item.collapse();if(me.wrapper)$ds(me.wrapper);if(me.onclick)me.onclick(me.label);me.show_as_expanded();}
-this.show_as_expanded=function(){$item_selected(me.ldiv);tray.cur_item=me;}
-this.collapse=function(){if(me.wrapper)$dh(me.wrapper);$item_normal(me.ldiv);}
-this.hide=function(){me.collapse();$dh(me.ldiv);}
-this.show=function(){$ds(me.ldiv);}}
-/*
- *	lib/js/legacy/webpage/page_header.js
- */
-var def_ph_style={wrapper:{marginBottom:'16px',backgroundColor:'#EEE'},main_heading:{},sub_heading:{marginBottom:'8px',color:'#555',display:'none'},separator:{borderTop:'1px solid #ddd'},toolbar_area:{padding:'3px 0px',display:'none',borderBottom:'1px solid #ddd'}}
-function PageHeader(parent,main_text,sub_text){this.wrapper=$a(parent,'div','page_header');this.close_btn=$a(this.wrapper,'a','close',{},'&times;');this.close_btn.onclick=function(){window.history.back();};this.breadcrumbs=$a(this.wrapper,'div','breadcrumbs-area');this.main_head=$a(this.wrapper,'h1','',def_ph_style.main_heading);this.sub_head=$a(this.wrapper,'h4','',def_ph_style.sub_heading);this.separator=$a(this.wrapper,'div','',def_ph_style.separator);this.toolbar_area=$a(this.wrapper,'div','',def_ph_style.toolbar_area);this.padding_area=$a(this.wrapper,'div','',{padding:'3px'});if(main_text)this.main_head.innerHTML=main_text;if(sub_text)this.sub_head.innerHTML=sub_text;this.buttons={};this.buttons2={};}
-PageHeader.prototype.add_button=function(label,fn,bold,icon,green){var tb=this.toolbar_area;if(this.buttons[label])return;iconhtml=icon?('<i class="'+icon+'"></i> '):'';var $button=$('<button class="btn btn-small">'+iconhtml+label+'</button>').click(fn).appendTo(tb);if(green){$button.addClass('btn-info');$button.find('i').addClass('icon-white');}
-if(bold)$button.css('font-weight','bold');this.buttons[label]=$button.get(0);$ds(this.toolbar_area);return this.buttons[label];}
-PageHeader.prototype.clear_toolbar=function(){this.toolbar_area.innerHTML='';this.buttons={};}
-PageHeader.prototype.make_buttonset=function(){$(this.toolbar_area).buttonset();}
-/*
- *	lib/js/legacy/widgets/tags.js
- */
-_tags={dialog:null,color_map:{},all_tags:[],colors:{'Default':'#add8e6'}}
-TagList=function(parent,start_list,dt,dn,static,onclick){this.start_list=start_list?start_list:[];this.tag_list=[];this.dt=dt;this.onclick=onclick;this.dn=dn;this.static;this.parent=parent;this.make_body();}
-TagList.prototype.make=function(parent){for(var i=0;i<this.start_list.length;i++){if(this.start_list[i])
-new SingleTag({parent:this.body,label:this.start_list[i],dt:this.dt,dn:this.dn,fieldname:'_user_tags',static:this.static,taglist:this,onclick:this.onclick});}}
-TagList.prototype.make_body=function(){var div=$a(this.parent,'span','',{margin:'3px 0px',padding:'3px 0px'});this.body=$a(div,'span','',{marginRight:'4px'});this.add_tag_area=$a(div,'span');this.make_add_tag();this.make();}
-TagList.prototype.add_tag=function(label,static,fieldname,color){if(!label)return;if(in_list(this.tag_list,label))return;var tag=new SingleTag({parent:this.body,label:label,dt:this.dt,dn:this.dn,fieldname:fieldname,static:static,taglist:this,color:color,onclick:this.onclick});}
-TagList.prototype.make_add_tag=function(){var me=this;this.add_tag_span=$a(this.add_tag_area,'span','',{color:'#888',textDecoration:'underline',cursor:'pointer',marginLeft:'4px',fontSize:'11px'});this.add_tag_span.innerHTML='Add tag';this.add_tag_span.onclick=function(){me.new_tag();}}
-TagList.prototype.make_tag_dialog=function(){var me=this;var d=new wn.widgets.Dialog({title:'Add a tag',width:400,fields:[{fieldtype:'Link',fieldname:'tag',label:'Tag',options:'Tag',reqd:1,description:'Max chars (20)',no_buttons:1},{fieldtype:'Button',fieldname:'add',label:'Add'}]})
-$(d.fields_dict.tag.input).attr('maxlength',20);d.fields_dict.add.input.onclick=function(){me.save_tag(d);}
-return d;}
-TagList.prototype.is_text_okay=function(val){if(!val){msgprint("Please type something");return;}
-if(validate_spl_chars(val)){msgprint("Special charaters, commas etc not allowed in tags");return;}
-return 1}
-TagList.prototype.add_to_locals=function(tag){if(locals[this.dt]&&locals[this.dt][this.dn]){var doc=locals[this.dt][this.dn];if(!doc._user_tags){doc._user_tags=''}
-var tl=doc._user_tags.split(',')
-tl.push(tag)
-doc._user_tags=tl.join(',');}}
-TagList.prototype.remove_from_locals=function(tag){if(locals[this.dt]&&locals[this.dt][this.dn]){var doc=locals[this.dt][this.dn];var tl=doc._user_tags.split(',');var new_tl=[];for(var i=0;i<tl.length;i++){if(tl[i]!=tag)new_tl.push(tl[i]);}
-doc._user_tags=new_tl.join(',');}}
-TagList.prototype.save_tag=function(d){var val=d.get_values();if(val)val=val.tag;var me=this;if(!this.is_text_okay(val))return;var callback=function(r,rt){var d=me.dialog;d.fields_dict.add.input.done_working();d.fields_dict.tag.input.set_input('');d.hide();me.add_to_locals(val)
-if(!r.message)return;me.add_tag(r.message,0,'_user_tags');}
-me.dialog.fields_dict.add.input.set_working();$c('webnotes.widgets.tags.add_tag',{'dt':me.dt,'dn':me.dn,'tag':val,'color':'na'},callback);}
-TagList.prototype.new_tag=function(){var me=this;if(!this.dialog){this.dialog=this.make_tag_dialog();}
-this.dialog.show();}
-TagList.prototype.refresh_tags=function(){}
-function SingleTag(opts){$.extend(this,opts);if(!this.color)this.color='#add8e6';if(this.taglist&&!in_list(this.taglist.tag_list,this.label))
-this.taglist.tag_list.push(this.label);this.make_body(this.parent);}
-SingleTag.prototype.make_body=function(parent){var me=this;this.body=$a(parent,'span','',{padding:'2px 4px',backgroundColor:this.color,color:'#226',marginRight:'4px'});$br(this.body,'3px');if(this.onclick)$y(this.body,{cursor:'pointer'});$(this.body).hover(function(){$(this).css('opacity',0.6);},function(){$(this).css('opacity',1);});this.make_label();if(!this.static)this.make_remove_btn();_tags.all_tags.push(this);}
-SingleTag.prototype.make_remove_btn=function(){var me=this;var span=$a(this.body,'span');span.innerHTML+=' |';var span=$a(this.body,'span','',{cursor:'pointer'});span.innerHTML=' x'
-span.onclick=function(){me.remove(me);}}
-SingleTag.prototype.make_label=function(){var me=this;this.label_span=$a(this.body,'span','social',null,this.label);this.label_span.onclick=function(){if(me.onclick)me.onclick(me);}}
-SingleTag.prototype.remove_tag_body=function(){$dh(this.body);var nl=[];for(var i in this.tag_list)
-if(this.tag_list[i]!=this.label)
-nl.push(this.tag_list[i]);if(this.taglist)
-this.taglist.tag_list=nl;}
-SingleTag.prototype.remove=function(){var me=this;var callback=function(r,rt){me.remove_tag_body()
-me.taglist.remove_from_locals(me.label);}
-$c('webnotes.widgets.tags.remove_tag',{'dt':me.dt,'dn':me.dn,'tag':me.label},callback)
-$bg(me.body,'#DDD');}
-wn.widgets.TagCloud=function(parent,doctype,onclick){var me=this;this.make=function(r,rt){parent.innerHTML='';if(r.message&&r.message.length){me.tab=make_table(parent,r.message.length,2,'100%',['40px',null],{padding:'5px 3px 5px 0px'})
-$y($td(me.tab,0,0),{textAlign:'right'});for(var i=0;i<r.message.length;i++){new wn.widgets.TagCloud.Tag({parent:$td(me.tab,i,1),label:r.message[i][0],onclick:onclick,fieldname:r.message[i][2]},$td(me.tab,i,0),r.message[i])}}else{me.set_no_tags();}
-me.refresh=$ln($a(parent,'div'),'refresh',function(){me.refresh.set_working();me.render(1);},{fontSize:'11px',margin:'3px 0px',color:'#888'},1);}
-this.set_no_tags=function(){$a(parent,'div','social comment',{fontSize:'11px',margin:'3px 0px'},'<i>No tags yet!, please start tagging</i>');}
-this.render=function(refresh){$c('webnotes.widgets.tags.get_top_tags',{doctype:doctype,refresh:(refresh?1:0)},this.make);}
-this.render();}
-wn.widgets.TagCloud.Tag=function(args,count_cell,det){$(count_cell).css('text-align','right').html(det[1]+' x');args.static=1;this.tag=new SingleTag(args)}
-/*
- *	lib/js/legacy/widgets/export_query.js
- */
-var export_dialog;function export_query(query,callback){if(!export_dialog){var d=new Dialog(400,300,"Export...");d.make_body([['Data','Max rows','Blank to export all rows'],['Button','Go'],]);d.widgets['Go'].onclick=function(){export_dialog.hide();n=export_dialog.widgets['Max rows'].value;if(cint(n))
-export_dialog.query+=' LIMIT 0,'+cint(n);callback(export_dialog.query);}
-d.onshow=function(){this.widgets['Max rows'].value='500';}
-export_dialog=d;}
-export_dialog.query=query;export_dialog.show();}
-function export_csv(q,report_name,sc_id,is_simple,filter_values,colnames){var args={}
-args.cmd='webnotes.widgets.query_builder.runquery_csv';if(is_simple)
-args.simple_query=q;else
-args.query=q;args.sc_id=sc_id?sc_id:'';args.filter_values=filter_values?filter_values:'';if(colnames)
-args.colnames=colnames.join(',');args.report_name=report_name?report_name:'';open_url_post(wn.request.url,args);}
-/*
- *	lib/js/legacy/webpage/search.js
- */
-search_fields={};function setlinkvalue(name){selector.input.set_input_value(name);selector.hide();}
-function makeselector(){var d=new Dialog(540,440,'Search');d.make_body([['HTML','Help'],['Data','Beginning With','Tip: You can use wildcard "%"'],['Select','Search By'],['Button','Search'],['HTML','Result']]);var inp=d.widgets['Beginning With'];var field_sel=d.widgets['Search By'];var btn=d.widgets['Search'];d.sel_type='';d.values_len=0;d.set=function(input,type,label){d.sel_type=type;d.input=input;if(d.style!='Link'){d.rows['Result'].innerHTML='';d.values_len=0;}
-d.style='Link';d.set_query_description()
-if(!d.sel_type)d.sel_type='Value';d.set_title("Select");d.set_query_description('Select a "'+d.sel_type+'" for field "'+label+'"');}
-d.set_search=function(dt){if(d.style!='Search'){d.rows['Result'].innerHTML='';d.values_len=0;}
-d.style='Search';if(d.input){d.input=null;sel_type=null;}
-d.sel_type=get_label_doctype(dt);d.set_title('Quick Search for '+dt);}
-$(inp).keydown(function(e){if(e.which==13){if(!btn.disabled)btn.onclick();}})
-d.set_query_description=function(txt){txt=d.input&&d.input.query_description||txt;if(txt){d.rows['Help'].innerHTML='<div class="help-box" style="margin-top:0px">'+txt+'</div>';}else{d.rows['Help'].innerHTML=''}}
-d.onshow=function(){if(d.set_doctype!=d.sel_type){d.rows['Result'].innerHTML='';d.values_len=0;}
-inp.value='';if(d.input&&d.input.txt.value){inp.value=d.input.txt.value;}
-try{inp.focus();}catch(e){}
-if(d.input)d.input.set_get_query();var get_sf_list=function(dt){var l=[];var lf=search_fields[dt];for(var i=0;i<lf.length;i++)l.push(lf[i][1]);return l;}
-$ds(d.rows['Search By']);if(search_fields[d.sel_type]){empty_select(field_sel);add_sel_options(field_sel,get_sf_list(d.sel_type),'ID');}else{empty_select(field_sel);add_sel_options(field_sel,['ID'],'ID');$c('webnotes.widgets.search.getsearchfields',{'doctype':d.sel_type},function(r,rt){search_fields[d.sel_type]=r.searchfields;empty_select(field_sel);add_sel_options(field_sel,get_sf_list(d.sel_type));field_sel.selectedIndex=0;});}}
-d.onhide=function(){}
-btn.onclick=function(){if(this.disabled)return;this.args.is_ajax=true;this.set_working();d.set_doctype=d.sel_type;var q='';args={};if(d.input&&d.input.get_query){var doc={};args.is_simple=1;if(cur_frm)doc=locals[cur_frm.doctype][cur_frm.docname];var q=d.input.get_query(doc,d.input.doctype,d.input.docname);if(!q){return'';}}
-var get_sf_fieldname=function(v){var lf=search_fields[d.sel_type];if(!lf)
-return'name'
-for(var i=0;i<lf.length;i++)if(lf[i][1]==v)return lf[i][0];}
-$.extend(args,{'txt':strip(inp.value),'doctype':d.sel_type,'query':q,'searchfield':get_sf_fieldname(sel_val(field_sel))});$c('webnotes.widgets.search.search_widget',args,function(r,rtxt){btn.done_working();if(r.coltypes)r.coltypes[0]='Link';d.values_len=r.values.length;d.set_result(r);},function(){btn.done_working();});}
-d.set_result=function(r){d.rows['Result'].innerHTML='';var c=$a(d.rows['Result'],'div','comment',{paddingBottom:'4px',marginBottom:'4px',borderBottom:'1px solid #CCC',marginLeft:'4px'});if(r.values.length==50)
-c.innerHTML='Showing max 50 results. Use filters to narrow down your search';else
-c.innerHTML='Showing '+r.values.length+' resuts.';var w=$a(d.rows['Result'],'div','',{height:'240px',overflow:'auto',margin:'4px'});for(var i=0;i<r.values.length;i++){var div=$a(w,'div','',{marginBottom:'4px',paddingBottom:'4px',borderBottom:'1px dashed #CCC'});var l=$a($a(div,'div'),'span','link_type');l.innerHTML=r.values[i][0];l.link_name=r.values[i][0];l.dt=r.coloptions[0];if(d.input)
-l.onclick=function(){setlinkvalue(this.link_name);}
-else
-l.onclick=function(){loaddoc(this.dt,this.link_name);d.hide();}
-var cl=[]
-for(var j=1;j<r.values[i].length;j++)cl.push(r.values[i][j]);var c=$a(div,'div','comment',{marginTop:'2px'});c.innerHTML=cl.join(', ');}}
-selector=d;}
-/*
- *	lib/js/legacy/webpage/spinner.js
- */
-var pending_req=0;var fcount=0;var dialog_back;function set_loading(){pending_req++;$('#spinner').css('visibility','visible');$('body').css('cursor','progress');}
-function hide_loading(){pending_req--;if(!pending_req){$('body').css('cursor','default');$('#spinner').css('visibility','hidden');}}
-function freeze(){if(!dialog_back){dialog_back=$a($i('body_div'),'div','dialog_back');$(dialog_back).css('opacity',0.6);}
-$ds(dialog_back);fcount++;}
-function unfreeze(){if(!fcount)return;fcount--;if(!fcount){$dh(dialog_back);}}
-/*
- *	lib/js/legacy/webpage/loaders.js
- */
-function loadreport(dt,rep_name,onload){if(rep_name)
-wn.set_route('Report',dt,rep_name);else
-wn.set_route('Report',dt);}
-function loaddoc(doctype,name,onload){wn.model.with_doctype(doctype,function(){if(locals.DocType[doctype].in_dialog){_f.edit_record(doctype,name);}else{wn.set_route('Form',doctype,name);}})}
-var load_doc=loaddoc;function new_doc(doctype,in_form){doctype=get_label_doctype(doctype);wn.model.with_doctype(doctype,function(){if(!in_form&&locals.DocType[doctype].in_dialog){var new_name=LocalDB.create(doctype);_f.edit_record(doctype,new_name);}else{wn.views.formview.create(doctype);}})}
-var newdoc=new_doc;var pscript={};function loadpage(page_name,call_back,no_history){wn.set_route(page_name);}
-function loaddocbrowser(dt){wn.set_route('List',dt);}
-/*
- *	lib/js/legacy/wn/page_layout.js
- */
-wn.PageLayout=function(args){$.extend(this,args)
-this.wrapper=$a(this.parent,'div','layout-wrapper layout-wrapper-background');this.head=$a(this.wrapper,'div');this.main=$a(this.wrapper,'div','layout-main-section');this.sidebar_area=$a(this.wrapper,'div','layout-side-section');$a(this.wrapper,'div','',{clear:'both'});this.body=$a(this.main,'div');this.footer=$a(this.main,'div');if(this.heading){this.page_head=new PageHeader(this.head,this.heading);}}
-/*
- *	lib/js/legacy/wn/widgets/page_sidebar.js
- */
-wn.widgets.PageSidebar=function(parent,opts){this.opts=opts
-this.sections={}
-this.wrapper=$a(parent,'div','psidebar')
-this.refresh=function(){this.wrapper.innerHTML=''
-if(this.opts.title)
-this.make_head();for(var i=0;i<this.opts.sections.length;i++){var section=this.opts.sections[i];if((section.display&&section.display())||!section.display){this.sections[section.title]=new wn.widgets.PageSidebarSection(this,section);}}
-if(this.opts.onrefresh){this.opts.onrefresh(this)}}
-this.make_head=function(){this.head=$a(this.wrapper,'div','head','',this.opts.title);}
-this.refresh();}
-wn.widgets.PageSidebarSection=function(sidebar,opts){this.items=[];this.sidebar=sidebar;this.wrapper=$a(sidebar.wrapper,'div','section');this.head=$a(this.wrapper,'div','section-head','',opts.title);this.body=$a(this.wrapper,'div','section-body');$br(this.wrapper,'5px');this.opts=opts;this.make_items=function(){for(var i=0;i<this.opts.items.length;i++){var item=this.opts.items[i];if((item.display&&item.display())||!item.display){var div=$a(this.body,'div','section-item small');this.make_one_item(item,div);}}}
-this.make_one_item=function(item,div){if(item.type.toLowerCase()=='link')
-this.items[item.label]=new wn.widgets.PageSidebarLink(this,item,div);else if(item.type.toLowerCase()=='button')
-this.items[item.label]=new wn.widgets.PageSidebarButton(this,this.opts.items[i],div);else if(item.type.toLowerCase()=='html')
-this.items[item.label]=new wn.widgets.PageSidebarHTML(this,this.opts.items[i],div);}
-this.add_icon=function(parent,icon){var img=$a(parent,'i',icon,{marginRight:'7px',marginBottom:'-3px'});}
-this.refresh=function(){this.body.innerHTML='';if(this.opts.render){this.opts.render(this.body);}
-else
-this.make_items();}
-this.refresh();}
-wn.widgets.PageSidebarLink=function(section,opts,wrapper){this.wrapper=wrapper;this.section=section;this.opts=opts;var me=this;if(opts.icon){section.add_icon(this.wrapper,opts.icon);}
-this.ln=$a(this.wrapper,'span','link_type section-link small',opts.style,opts.label);this.ln.onclick=function(){me.opts.onclick(me)};}
-wn.widgets.PageSidebarButton=function(section,opts,wrapper){this.wrapper=wrapper;this.section=section;this.opts=opts;var me=this;this.btn=$btn(this.wrapper,opts.label,opts.onclick,opts.style,opts.color);}
-wn.widgets.PageSidebarHTML=function(section,opts,wrapper){wrapper.innerHTML=opts.content}
-/*
- *	lib/js/legacy/wn/widgets/footer.js
- */
-wn.widgets.Footer=function(args){$.extend(this,args);this.make=function(){this.wrapper=$a(this.parent,'div','std-footer');this.table=make_table(this.wrapper,1,this.columns,[],{width:100/this.columns+'%'});this.render_items();}
-this.render_items=function(){for(var i=0;i<this.items.length;i++){var item=this.items[i];var div=$a($td(this.table,0,item.column),'div','std-footer-item');div.label=$a($a(div,'div'),'span','link_type','',item.label);div.label.onclick=item.onclick;if(item.description){div.description=$a(div,'div','field_description','',item.description);}}}
-if(this.items)
-this.make();}
-/*
- *	lib/js/legacy/model/local_data.js
- */
-var locals={'DocType':{}};var LocalDB={};var READ=0;var WRITE=1;var CREATE=2;var SUBMIT=3;var CANCEL=4;var AMEND=5;LocalDB.getchildren=function(child_dt,parent,parentfield,parenttype){var l=[];for(var key in locals[child_dt]){var d=locals[child_dt][key];if((d.parent==parent)&&(d.parentfield==parentfield)){if(parenttype){if(d.parenttype==parenttype)l.push(d);}else{l.push(d);}}}
-l.sort(function(a,b){return(cint(a.idx)-cint(b.idx))});return l;}
-LocalDB.add=function(dt,dn){if(!locals[dt])locals[dt]={};if(locals[dt][dn])delete locals[dt][dn];locals[dt][dn]={'name':dn,'doctype':dt,'docstatus':0};return locals[dt][dn];}
-LocalDB.delete_doc=function(dt,dn){var doc=get_local(dt,dn);for(var ndt in locals){if(locals[ndt]){for(var ndn in locals[ndt]){var doc=locals[ndt][ndn];if(doc&&doc.parenttype==dt&&(doc.parent==dn||doc.__oldparent==dn)){delete locals[ndt][ndn];}}}}
-delete locals[dt][dn];}
-function get_local(dt,dn){return locals[dt]?locals[dt][dn]:null;}
-LocalDB.sync=function(list){if(list._kl)list=expand_doclist(list);if(list){LocalDB.clear_locals(list[0].doctype,list[0].name);}
-for(var i=0;i<list.length;i++){var d=list[i];if(!d.name)
-d.name=LocalDB.get_localname(d.doctype);LocalDB.add(d.doctype,d.name);locals[d.doctype][d.name]=d;if(cur_frm&&cur_frm.doctype==d.doctype&&cur_frm.docname==d.name){cur_frm.doc=d;}
-if(d.doctype=='DocField')
-wn.meta.add_field(d);if(d.localname){wn.model.new_names[d.localname]=d.name;$(document).trigger('rename',[d.doctype,d.localname,d.name]);delete locals[d.doctype][d.localname];}}}
-LocalDB.clear_locals=function(dt,dn){var doclist=make_doclist(dt,dn,1);$.each(doclist,function(i,v){v&&delete locals[v.doctype][v.name];});}
-local_name_idx={};LocalDB.get_localname=function(doctype){if(!local_name_idx[doctype])local_name_idx[doctype]=1;var n='New '+get_doctype_label(doctype)+' '+local_name_idx[doctype];local_name_idx[doctype]++;return n;}
-LocalDB.set_default_values=function(doc){var doctype=doc.doctype;var docfields=wn.meta.docfield_list[doctype];if(!docfields){return;}
-var fields_to_refresh=[];for(var fid=0;fid<docfields.length;fid++){var f=docfields[fid];if(!in_list(no_value_fields,f.fieldtype)&&doc[f.fieldname]==null){var v=LocalDB.get_default_value(f.fieldname,f.fieldtype,f['default']);if(v){doc[f.fieldname]=v;fields_to_refresh.push(f.fieldname);}}}
-return fields_to_refresh;}
-function check_perm_match(p,dt,dn){if(!dn)return true;var out=false;if(p.match){if(user_defaults[p.match]){for(var i=0;i<user_defaults[p.match].length;i++){if(user_defaults[p.match][i]==locals[dt][dn][p.match]){return true;}}
-return false;}else if(!locals[dt][dn][p.match]){return true;}else{return false;}}else{return true;}}
-function get_perm(doctype,dn,ignore_submit){var perm=[[0,0],];if(in_list(user_roles,'Administrator'))perm[0][READ]=1;var plist=getchildren('DocPerm',doctype,'permissions','DocType');for(var pidx in plist){var p=plist[pidx];var pl=cint(p.permlevel?p.permlevel:0);if(in_list(user_roles,p.role)){if(check_perm_match(p,doctype,dn)){if(!perm[pl])perm[pl]=[];if(!perm[pl][READ]){if(cint(p.read))perm[pl][READ]=1;else perm[pl][READ]=0;}
-if(!perm[pl][WRITE]){if(cint(p.write)){perm[pl][WRITE]=1;perm[pl][READ]=1;}else perm[pl][WRITE]=0;}
-if(!perm[pl][CREATE]){if(cint(p.create))perm[pl][CREATE]=1;else perm[pl][CREATE]=0;}
-if(!perm[pl][SUBMIT]){if(cint(p.submit))perm[pl][SUBMIT]=1;else perm[pl][SUBMIT]=0;}
-if(!perm[pl][CANCEL]){if(cint(p.cancel))perm[pl][CANCEL]=1;else perm[pl][CANCEL]=0;}
-if(!perm[pl][AMEND]){if(cint(p.amend))perm[pl][AMEND]=1;else perm[pl][AMEND]=0;}}}}
-if((!ignore_submit)&&dn&&locals[doctype][dn].docstatus>0){for(pl in perm)
-perm[pl][WRITE]=0;}
-return perm;}
-LocalDB.create=function(doctype,n){if(!n)n=LocalDB.get_localname(doctype);var doc=LocalDB.add(doctype,n)
-doc.__islocal=1;doc.owner=user;LocalDB.set_default_values(doc);return n;}
-LocalDB.delete_record=function(dt,dn){delete locals[dt][dn];}
-LocalDB.get_default_value=function(fn,ft,df){if(df=='_Login'||df=='__user')
-return user;else if(df=='_Full Name')
-return user_fullname;else if(ft=='Date'&&(df=='Today'||df=='__today')){return get_today();}
-else if(df)
-return df;else if(user_defaults[fn])
-return user_defaults[fn][0];else if(sys_defaults[fn])
-return sys_defaults[fn];}
-LocalDB.add_child=function(doc,childtype,parentfield){var n=LocalDB.create(childtype);var d=locals[childtype][n];d.parent=doc.name;d.parentfield=parentfield;d.parenttype=doc.doctype;return d;}
-LocalDB.no_copy_list=['amended_from','amendment_date','cancel_reason'];LocalDB.copy=function(dt,dn,from_amend){var newdoc=LocalDB.create(dt);for(var key in locals[dt][dn]){var df=wn.meta.get_docfield(dt,key);if(key!=='name'&&key.substr(0,2)!='__'&&!(df&&((!from_amend&&cint(df.no_copy)==1)||in_list(LocalDB.no_copy_list,df.fieldname)))){locals[dt][newdoc][key]=locals[dt][dn][key];}}
-return locals[dt][newdoc];}
-function make_doclist(dt,dn){if(!locals[dt]){return[];}
-var dl=[];dl[0]=locals[dt][dn];for(var ndt in locals){if(locals[ndt]){for(var ndn in locals[ndt]){var doc=locals[ndt][ndn];if(doc&&doc.parenttype==dt&&doc.parent==dn){dl.push(doc)}}}}
-return dl;}
-var Meta={};var local_dt={};Meta.make_local_dt=function(dt,dn){var dl=make_doclist('DocType',dt);if(!local_dt[dt])local_dt[dt]={};if(!local_dt[dt][dn])local_dt[dt][dn]={};for(var i=0;i<dl.length;i++){var d=dl[i];if(d.doctype=='DocField'){var key=d.fieldname?d.fieldname:d.label;local_dt[dt][dn][key]=copy_dict(d);}}}
-Meta.set_field_property=function(fn,key,val,doc){if(!doc&&(cur_frm.doc))doc=cur_frm.doc;try{local_dt[doc.doctype][doc.name][fn][key]=val;refresh_field(fn);}catch(e){alert("Client Script Error: Unknown values for "+doc.name+','+fn+'.'+key+'='+val);}}
-Meta.get_field=function(dt,fn,dn){try{return local_dt[dt][dn][fn];}catch(e){return null;}}
-function get_doctype_label(dt){return dt}
-function get_label_doctype(label){return label}
-var getchildren=LocalDB.getchildren;var createLocal=LocalDB.create;
-/*
- *	lib/js/legacy/model/doclist.js
- */
-function compress_doclist(list){var kl={};var vl=[];var flx={};for(var i=0;i<list.length;i++){var o=list[i];var fl=[];if(!kl[o.doctype]){var tfl=['doctype','name','docstatus','owner','parent','parentfield','parenttype','idx','creation','modified','modified_by','__islocal','__newname','__modified','_user_tags','__temp'];var fl=[].concat(tfl);for(key in wn.meta.docfield_map[o.doctype]){if(!in_list(fl,key)&&!in_list(no_value_fields,wn.meta.docfield_map[o.doctype][key].fieldtype)&&!wn.meta.docfield_map[o.doctype][key].no_column){fl[fl.length]=key;tfl[tfl.length]=key}}
-flx[o.doctype]=fl;kl[o.doctype]=tfl}
-var nl=[];var fl=flx[o.doctype];for(var j=0;j<fl.length;j++){var v=o[fl[j]];nl.push(v);}
-vl.push(nl);}
-return JSON.stringify({'_vl':vl,'_kl':kl});}
-function expand_doclist(docs){var l=[];for(var i=0;i<docs._vl.length;i++)
-l[l.length]=zip(docs._kl[docs._vl[i][0]],docs._vl[i]);return l;}
-function zip(k,v){var obj={};for(var i=0;i<k.length;i++){obj[k[i]]=v[i];}
-return obj;}
-function save_doclist(dt,dn,save_action,onsave,onerr){var doc=locals[dt][dn];var doctype=locals['DocType'][dt];var tmplist=[];var doclist=make_doclist(dt,dn,1);var all_reqd_ok=true;if(save_action!='Cancel'){for(var n in doclist){var reqd_ok=check_required(doclist[n].doctype,doclist[n].name,doclist[0].doctype);if(doclist[n].docstatus+''!='2'&&all_reqd_ok)
-all_reqd_ok=reqd_ok;}}
-if(!all_reqd_ok){onerr()
-return;}
-var _save=function(){$c('webnotes.widgets.form.save.savedocs',{'docs':compress_doclist(doclist),'docname':dn,'action':save_action,'user':user},function(r,rtxt){if(f){f.savingflag=false;}
-if(r.saved){if(onsave)onsave(r);}else{if(onerr)onerr(r);}},function(){if(f){f.savingflag=false;}},0,(f?'Saving...':''));}
-if(doc.__islocal&&(doctype&&doctype.autoname&&doctype.autoname.toLowerCase()=='prompt')){var newname=prompt('Enter the name of the new '+dt,'');if(newname){doc.__newname=strip(newname);_save();}else{msgprint('Not Saved');onerr();}}else{_save();}}
-function check_required(dt,dn,parent_dt){var doc=locals[dt][dn];if(doc.docstatus>1)return true;var fl=wn.meta.docfield_list[dt];if(!fl)return true;var all_clear=true;var errfld=[];for(var i=0;i<fl.length;i++){var key=fl[i].fieldname;var df=wn.meta.get_docfield(dt,key,dn);var has_value=wn.model.has_value(dt,dn,key);if(df.reqd&&!has_value){errfld[errfld.length]=df.label;if(cur_frm){var f=cur_frm.fields_dict[df.fieldname];if(f){f.df.has_error=true;f.refresh_label_icon();if(all_clear){$(document).scrollTop($(f.wrapper).offset().top-100);}
-if(f.df.hidden){msgprint('Oops, field "'+f.df.label+'" is both hidden and mandatory. \
-       Please contact your admin for help.');}}}
-if(all_clear)all_clear=false;}}
-if(errfld.length)msgprint('<b>Mandatory fields required in '+
-(doc.parenttype?(wn.meta.docfield_map[doc.parenttype][doc.parentfield].label+' (Table)'):doc.doctype)+':</b>\n'+errfld.join('\n'));return all_clear;}
-/*
- *	lib/js/wn/ui/toolbar.min.js
- */
-
-/*
- *	lib/js/wn/ui/toolbar/selector_dialog.js
- */
-wn.provide('wn.ui.toolbar');wn.ui.toolbar.SelectorDialog=Class.extend({init:function(opts){this.opts=opts;try{this.make_dialog();}catch(e){console.log(e);}
-this.bind_events();},make_dialog:function(){this.dialog=new wn.widgets.Dialog({title:this.opts.title,width:300,fields:[{fieldtype:'Select',fieldname:'doctype',options:'Select...',label:'Select Type'},{fieldtype:'Button',label:'Go',fieldname:'go'}]});},bind_events:function(){var me=this;$(this.dialog.fields_dict.go.input).click(function(){if(!me.dialog.display)return;me.dialog.hide();me.opts.execute(me.dialog.fields_dict.doctype.get_value());});$(this.dialog.fields_dict.doctype.input).change(function(){me.dialog.fields_dict.go.input.click();}).keypress(function(ev){if(ev.which==13){me.dialog.fields_dict.go.input.click();}});},show:function(){this.dialog.show();this.dialog.fields_dict.doctype.input.focus();return false;},set_values:function(lst){for(var i=0;i<lst.length;i++)
-lst[i]=get_doctype_label(lst[i]);var sel=this.dialog.fields_dict.doctype.input;$(sel).empty();add_sel_options(sel,lst.sort());}})
-/*
- *	lib/js/wn/ui/toolbar/new.js
- */
-wn.ui.toolbar.NewDialog=wn.ui.toolbar.SelectorDialog.extend({init:function(){this._super({title:"New Record",execute:function(val){new_doc(val);},});this.set_values(profile.can_create.join(',').split(','));}});
-/*
- *	lib/js/wn/ui/toolbar/search.js
- */
-wn.ui.toolbar.Search=wn.ui.toolbar.SelectorDialog.extend({init:function(){this._super({title:"Search",execute:function(val){new wn.ui.Search({doctype:val});},});this.set_values(wn.boot.profile.can_search.join(',').split(','));makeselector();}});
-/*
- *	lib/js/wn/ui/toolbar/report.js
- */
-wn.ui.toolbar.Report=wn.ui.toolbar.SelectorDialog.extend({init:function(){this._super({title:"Start Report For",execute:function(val){wn.set_route('Report2',val);},});this.set_values(profile.can_get_report.join(',').split(','));}});
-/*
- *	lib/js/wn/ui/toolbar/recent.js
- */
-wn.ui.toolbar.RecentDocs=Class.extend({init:function(){$('.navbar .nav:first').append('<li class="dropdown">\
-   <a class="dropdown-toggle" data-toggle="dropdown" href="#" \
-    onclick="return false;">Recent<b class="caret"></b></a>\
-   <ul class="dropdown-menu" id="toolbar-recent"></ul>\
-  </li>');this.setup();this.bind_events();},bind_events:function(){var me=this;$(document).bind('rename',function(event,dt,old_name,new_name){me.rename_notify(dt,old_name,new_name)});},rename_notify:function(dt,old,name){this.remove(dt,old);this.add(dt,name,1);},add:function(dt,dn,on_top){if(this.istable(dt))return;this.remove(dt,dn);var html=repl('<li data-docref="%(dt)s/%(dn)s">\
-   <a href="#Form/%(dt)s/%(dn)s">\
-    %(dn)s <span style="font-size: 10px">(%(dt)s)</span>\
-   </a></li>',{dt:dt,dn:dn});if(on_top){$('#toolbar-recent').prepend(html);}else{$('#toolbar-recent').append(html);}},istable:function(dt){return locals.DocType[dt]&&locals.DocType[dt].istable||false;},remove:function(dt,dn){$(repl('#toolbar-recent li[data-docref="%(dt)s/%(dn)s"]',{dt:dt,dn:dn})).remove();},setup:function(){var rlist=JSON.parse(profile.recent||"[]");var m=rlist.length;if(m>15)m=15;for(var i=0;i<m;i++){var rd=rlist[i]
-if(rd[1]){var dt=rd[0];var dn=rd[1];this.add(dt,dn,0);}}}});
-/*
- *	lib/js/wn/ui/toolbar/toolbar.js
- */
-wn.ui.toolbar.Toolbar=Class.extend({init:function(){this.make();this.make_home();this.make_document();wn.ui.toolbar.recent=new wn.ui.toolbar.RecentDocs();this.make_tools();this.set_user_name();this.make_logout();$('.dropdown-toggle').dropdown();$(document).trigger('toolbar_setup');},make:function(){$('header').append('<div class="navbar navbar-fixed-top">\
-   <div class="navbar-inner">\
-   <div class="container">\
-    <a class="brand"></a>\
-    <ul class="nav">\
-    </ul>\
-    <img src="images/lib/ui/spinner.gif" id="spinner"/>\
-    <ul class="nav pull-right">\
-     <li class="dropdown">\
-      <a class="dropdown-toggle" data-toggle="dropdown" href="#" \
-       onclick="return false;" id="toolbar-user-link"></a>\
-      <ul class="dropdown-menu" id="toolbar-user">\
-      </ul>\
-     </li>\
-    </ul>\
-   </div>\
-   </div>\
-   </div>');},make_home:function(){$('.navbar .brand').attr('href',"#");},make_document:function(){wn.ui.toolbar.new_dialog=new wn.ui.toolbar.NewDialog();wn.ui.toolbar.search=new wn.ui.toolbar.Search();wn.ui.toolbar.report=new wn.ui.toolbar.Report();$('.navbar .nav:first').append('<li class="dropdown">\
-   <a class="dropdown-toggle" href="#"  data-toggle="dropdown"\
-    onclick="return false;">Document<b class="caret"></b></a>\
-   <ul class="dropdown-menu" id="toolbar-document">\
-    <li><a href="#" onclick="return wn.ui.toolbar.new_dialog.show();">\
-     <i class="icon-plus"></i> New</a></li>\
-    <li><a href="#" onclick="return wn.ui.toolbar.search.show();">\
-     <i class="icon-search"></i> Search</a></li>\
-    <li><a href="#" onclick="return wn.ui.toolbar.report.show();">\
-     <i class="icon-list"></i> Report</a></li>\
-   </ul>\
-  </li>');},make_tools:function(){$('.navbar .nav:first').append('<li class="dropdown">\
-   <a class="dropdown-toggle" data-toggle="dropdown" href="#" \
-    onclick="return false;">Tools<b class="caret"></b></a>\
-   <ul class="dropdown-menu" id="toolbar-tools">\
-    <li><a href="#" onclick="return wn.ui.toolbar.clear_cache();">Clear Cache & Refresh</a></li>\
-    <li><a href="#" onclick="return wn.ui.toolbar.show_about();">About</a></li>\
-   </ul>\
-  </li>');if(has_common(user_roles,['Administrator','System Manager'])){$('#toolbar-tools').append('<li><a href="#" \
-    onclick="return wn.ui.toolbar.download_backup();">\
-    Download Backup</a></li>');}},set_user_name:function(){var fn=user_fullname;if(fn.length>15)fn=fn.substr(0,12)+'...';$('#toolbar-user-link').html(fn+'<b class="caret"></b>');},make_logout:function(){$('#toolbar-user').append('<li><a href="#" onclick="return wn.app.logout();">Logout</a></li>');}});wn.ui.toolbar.clear_cache=function(){localStorage&&localStorage.clear();$c('webnotes.session_cache.clear',{},function(r,rt){if(!r.exc){show_alert(r.message);location.reload();}});return false;}
-wn.ui.toolbar.download_backup=function(){$c('webnotes.utils.backups.get_backup',{},function(r,rt){});return false;}
-wn.ui.toolbar.show_about=function(){try{wn.ui.misc.about();}catch(e){console.log(e);}
-return false;}
-
-/*
- *	lib/js/wn/views/breadcrumbs.js
- */
-wn.provide('wn.views');wn.views.breadcrumbs=function(appframe,module,doctype,name){appframe.clear_breadcrumbs();if(name){appframe.add_breadcrumb(name);}else if(doctype){appframe.add_breadcrumb(doctype+' List');}else if(module){appframe.add_breadcrumb(module);}
-if(name&&doctype&&(!locals['DocType'][doctype].issingle)){appframe.add_breadcrumb(repl(' in <a href="#!List/%(doctype)s">%(doctype)s List</a>',{doctype:doctype}))};if(doctype&&module&&wn.modules&&wn.modules[module]){appframe.add_breadcrumb(repl(' in <a href="#!%(module_page)s">%(module)s</a>',{module:module,module_page:wn.modules[module]}))}}
-/*
- *	lib/js/legacy/widgets/form/fields.js
- */
-var no_value_fields=['Section Break','Column Break','HTML','Table','FlexTable','Button','Image'];var codeid=0;var code_editors={};function Field(){this.with_label=1;}
-Field.prototype.make_body=function(){var ischk=(this.df.fieldtype=='Check'?1:0);if(this.parent)
-this.wrapper=$a(this.parent,(this.with_label?'div':'span'));else
-this.wrapper=document.createElement((this.with_label?'div':'span'));this.label_area=$a(this.wrapper,'div','',{margin:'0px 0px 2px 0px',minHeight:'1em'});if(ischk&&!this.in_grid){this.input_area=$a(this.label_area,'span','',{marginRight:'4px'});this.disp_area=$a(this.label_area,'span','',{marginRight:'4px'});}
-if(this.with_label){this.label_span=$a(this.label_area,'span','small',{cssFloat:'left'})
-this.label_icon=$('<i class="icon icon-warning-sign">').toggle(false).appendTo(this.label_area).css('float','left').css('margin-left','7px').attr("title","This field is mandatory.");this.suggest_icon=$('<i class="icon icon-chevron-down">').toggle(false).appendTo(this.label_area).css('float','left').css('margin-left','7px').attr("title","will show suggestions as you type.");}else{this.label_span=$a(this.label_area,'span','',{marginRight:'4px'})
-$dh(this.label_area);}
-if(!this.input_area){this.input_area=$a(this.wrapper,(this.with_label?'div':'span'));this.disp_area=$a(this.wrapper,(this.with_label?'div':'span'));}
-if(this.in_grid){if(this.label_area)$dh(this.label_area);}else{this.input_area.className='input_area';$y(this.wrapper,{marginBottom:'9px'});this.set_description();}
-if(this.onmake)this.onmake();}
-Field.prototype.set_max_width=function(){var no_max=['Code','Text Editor','Text','Table','HTML']
-if(this.wrapper&&this.layout_cell&&this.layout_cell.parentNode.cells&&this.layout_cell.parentNode.cells.length==1&&!in_list(no_max,this.df.fieldtype)){$y(this.wrapper,{paddingRight:'50%'});}}
-Field.prototype.set_label=function(){if(this.with_label&&this.label_area&&this.label!=this.df.label){this.label_span.innerHTML=this.df.label;this.label=this.df.label;}}
-Field.prototype.set_description=function(){if(this.df.description){var p=in_list(['Text Editor','Code','Check'],this.df.fieldtype)?this.label_area:this.wrapper;this.desc_area=$a(p,'div','help small','',this.df.description)
-if(in_list(['Text Editor','Code'],this.df.fieldtype))
-$(this.desc_area).addClass('help small');}}
-Field.prototype.get_status=function(){if(this.in_filter)
-this.not_in_form=this.in_filter;if(this.not_in_form){return'Write';}
-if(!this.df.permlevel)this.df.permlevel=0;var p=this.perm[this.df.permlevel];var ret;if(cur_frm.editable&&p&&p[WRITE]&&!this.df.disabled)ret='Write';else if(p&&p[READ])ret='Read';else ret='None';if(this.df.fieldtype=='Binary')
-ret='None';if(cint(this.df.hidden))
-ret='None';if(ret=='Write'&&cint(cur_frm.doc.docstatus)>0)ret='Read';var a_o_s=cint(this.df.allow_on_submit);if(a_o_s&&(this.in_grid||(this.frm&&this.frm.not_in_container))){a_o_s=null;if(this.in_grid)a_o_s=this.grid.field.df.allow_on_submit;if(this.frm&&this.frm.not_in_container){a_o_s=cur_grid.field.df.allow_on_submit;}}
-if(cur_frm.editable&&a_o_s&&cint(cur_frm.doc.docstatus)>0&&!this.df.hidden){tmp_perm=get_perm(cur_frm.doctype,cur_frm.docname,1);if(tmp_perm[this.df.permlevel]&&tmp_perm[this.df.permlevel][WRITE]){ret='Write';}}
-return ret;}
-Field.prototype.set_style_mandatory=function(add){if(add){$(this.txt?this.txt:this.input).addClass('input-mandatory');if(this.disp_area)$(this.disp_area).addClass('input-mandatory');}else{$(this.txt?this.txt:this.input).removeClass('input-mandatory');if(this.disp_area)$(this.disp_area).removeClass('input-mandatory');}}
-Field.prototype.refresh_mandatory=function(){if(this.in_filter)return;if(this.df.reqd){if(this.label_area)this.label_area.style.color="#d22";this.set_style_mandatory(1);}else{if(this.label_area)this.label_area.style.color="#222";this.set_style_mandatory(0);}
-this.refresh_label_icon()
-this.set_reqd=this.df.reqd;}
-Field.prototype.refresh_display=function(){if(!this.current_status||this.current_status!=this.disp_status){if(this.disp_status=='Write'){if(this.make_input&&(!this.input)){this.make_input();if(this.onmake_input)this.onmake_input();}
-if(this.show)this.show()
-else{$ds(this.wrapper);}
-if(this.input){$ds(this.input_area);$dh(this.disp_area);if(this.input.refresh)this.input.refresh();}else{$dh(this.input_area);$ds(this.disp_area);}}else if(this.disp_status=='Read'){if(this.show)this.show()
-else{$ds(this.wrapper);}
-$dh(this.input_area);$ds(this.disp_area);}else{if(this.hide)this.hide();else $dh(this.wrapper);}
-this.current_status=this.disp_status;}}
-Field.prototype.refresh=function(){this.disp_status=this.get_status();if(this.in_grid&&this.table_refresh&&this.disp_status=='Write')
-{this.table_refresh();return;}
-this.set_label();this.refresh_display();if(this.onrefresh)
-this.onrefresh();if(this.input){if(this.input.refresh)this.input.refresh(this.df);}
-if(this.wrapper){this.wrapper.fieldobj=this;$(this.wrapper).trigger('refresh');}
-if(!this.not_in_form)
-this.set_input(_f.get_value(this.doctype,this.docname,this.df.fieldname));this.refresh_mandatory();this.set_max_width();}
-Field.prototype.refresh_label_icon=function(){var to_update=false;if(this.df.reqd&&this.get_value&&is_null(this.get_value()))
-to_update=true;if(!to_update&&this.df.has_error)this.df.has_error=false;if(this.label_icon)this.label_icon.toggle(to_update);$(this.txt?this.txt:this.input).toggleClass('field-to-update',to_update);$(this.txt?this.txt:this.input).toggleClass('field-has-error',this.df.has_error?true:false);}
-Field.prototype.set=function(val){if(this.not_in_form)
-return;if((!this.docname)&&this.grid){this.docname=this.grid.add_newrow();}
-if(this.validate)
-val=this.validate(val);cur_frm.set_value_in_locals(this.doctype,this.docname,this.df.fieldname,val);this.value=val;}
-Field.prototype.set_input=function(val){this.value=val;if(this.input&&this.input.set_input){if(val==null)this.input.set_input('');else this.input.set_input(val);}
-var disp_val=val;if(val==null)disp_val='';this.set_disp(disp_val);}
-Field.prototype.run_trigger=function(){this.refresh_label_icon();if(this.not_in_form){return;}
-if(cur_frm.cscript[this.df.fieldname])
-cur_frm.runclientscript(this.df.fieldname,this.doctype,this.docname);cur_frm.refresh_dependency();}
-Field.prototype.set_disp_html=function(t){if(this.disp_area){$(this.disp_area).addClass('disp_area');this.disp_area.innerHTML=(t==null?'':t);if(!t)$(this.disp_area).addClass('disp_area_no_val');}}
-Field.prototype.set_disp=function(val){this.set_disp_html(val);}
-Field.prototype.activate=function(docname){this.docname=docname;this.refresh();if(this.input){var v=_f.get_value(this.doctype,this.docname,this.df.fieldname);this.last_value=v;if(this.input.onchange&&this.input.get_value&&this.input.get_value()!=v){if(this.validate)
-this.input.set_value(this.validate(v));else
-this.input.set_value((v==null)?'':v);if(this.format_input)
-this.format_input();}
-if(this.input.focus){try{this.input.focus();}catch(e){}}}
-if(this.txt){try{this.txt.focus();}catch(e){}
-this.txt.field_object=this;}}
-function DataField(){}DataField.prototype=new Field();DataField.prototype.make_input=function(){var me=this;this.input=$a_input(this.input_area,this.df.fieldtype=='Password'?'password':'text');this.get_value=function(){var v=this.input.value;if(this.validate)
-v=this.validate(v);return v;}
-this.input.name=this.df.fieldname;$(this.input).change(function(){me.set_value(me.get_value?me.get_value():$(this.input).val());});this.set_value=function(val){if(!me.last_value)me.last_value='';if(me.validate){val=me.validate(val);me.input.value=val==undefined?'':val;}
-me.set(val);if(me.format_input)
-me.format_input();if(in_list(['Currency','Float','Int'],me.df.fieldtype)){if(flt(me.last_value)==flt(val)){me.last_value=val;return;}}
-me.last_value=val;me.run_trigger();}
-this.input.set_input=function(val){if(val==null)val='';me.input.value=val;if(me.format_input)me.format_input();}
-if(this.df.options=='Suggest'){if(this.suggest_icon)this.suggest_icon.toggle(true);$(me.input).autocomplete({source:function(request,response){wn.call({method:'webnotes.widgets.search.search_link',args:{'txt':request.term,'dt':me.df.options,'query':repl('SELECT DISTINCT `%(fieldname)s` FROM \
-       `tab%(dt)s` WHERE `%(fieldname)s` LIKE "%s" LIMIT 50',{fieldname:me.df.fieldname,dt:me.df.parent})},callback:function(r){response(r.results);}});},select:function(event,ui){me.set(ui.item.value);}});}}
-DataField.prototype.validate=function(v){if(this.df.options=='Phone'){if(v+''=='')return'';v1=''
-v=v.replace(/ /g,'').replace(/-/g,'').replace(/\(/g,'').replace(/\)/g,'');if(v&&v.substr(0,1)=='+'){v1='+';v=v.substr(1);}
-if(v&&v.substr(0,2)=='00'){v1+='00';v=v.substr(2);}
-if(v&&v.substr(0,1)=='0'){v1+='0';v=v.substr(1);}
-v1+=cint(v)+'';return v1;}else if(this.df.options=='Email'){if(v+''=='')return'';if(!validate_email(v)){msgprint(this.df.label+': '+v+' is not a valid email id');return'';}else
-return v;}else{return v;}}
-function ReadOnlyField(){}
-ReadOnlyField.prototype=new Field();function HTMLField(){}
-HTMLField.prototype=new Field();HTMLField.prototype.with_label=0;HTMLField.prototype.set_disp=function(val){if(this.disp_area)this.disp_area.innerHTML=val;}
-HTMLField.prototype.set_input=function(val){if(val)this.set_disp(val);}
-HTMLField.prototype.onrefresh=function(){if(this.df.options)this.set_disp(this.df.options);}
-var datepicker_active=0;function DateField(){}DateField.prototype=new Field();DateField.prototype.make_input=function(){var me=this;this.user_fmt=sys_defaults.date_format;if(!this.user_fmt)this.user_fmt='dd-mm-yy';this.input=$a(this.input_area,'input');$(this.input).datepicker({dateFormat:me.user_fmt.replace('yyyy','yy'),altFormat:'yy-mm-dd',changeYear:true,beforeShow:function(input,inst){datepicker_active=1},onClose:function(dateText,inst){datepicker_active=0;if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();}});var me=this;me.input.onchange=function(){if(this.value==null)this.value='';if(!this.not_in_form)
-me.set(dateutil.user_to_str(me.input.value));me.run_trigger();}
-me.input.set_input=function(val){if(val==null)val='';else val=dateutil.str_to_user(val);me.input.value=val;}
-me.get_value=function(){if(me.input.value)
-return dateutil.user_to_str(me.input.value);}}
-DateField.prototype.set_disp=function(val){var v=dateutil.str_to_user(val);if(v==null)v='';this.set_disp_html(v);}
-DateField.prototype.validate=function(v){if(!v)return;var me=this;this.clear=function(){msgprint("Date must be in format "+this.user_fmt);me.input.set_input('');return'';}
-var t=v.split('-');if(t.length!=3){return this.clear();}
-else if(cint(t[1])>12||cint(t[1])<1){return this.clear();}
-else if(cint(t[2])>31||cint(t[2])<1){return this.clear();}
-return v;};function LinkField(){}LinkField.prototype=new Field();LinkField.prototype.make_input=function(){var me=this;if(me.df.no_buttons){this.txt=$a(this.input_area,'input');this.input=this.txt;}else{makeinput_popup(this,'icon-search','icon-play','icon-plus');me.setup_buttons();me.onrefresh=function(){if(me.can_create)
-$(me.btn2).css('display','inline-block');else $dh(me.btn2);}}
-me.txt.field_object=this;me.input.set_input=function(val){if(val==undefined)val='';me.txt.value=val;}
-me.get_value=function(){return me.txt.value;}
-$(me.txt).autocomplete({source:function(request,response){wn.call({method:'webnotes.widgets.search.search_link',args:{'txt':request.term,'dt':me.df.options,'query':me.get_custom_query()},callback:function(r){response(r.results);},});},select:function(event,ui){me.set_input_value(ui.item.value);}}).data('autocomplete')._renderItem=function(ul,item){return $('<li></li>').data('item.autocomplete',item).append(repl('<a>%(label)s<br><span style="font-size:10px">%(info)s</span></a>',item)).appendTo(ul);};$(this.txt).change(function(){var val=$(this).val();me.set_input_value_executed=false;if(!val){if(selector&&selector.display)
-return;me.set_input_value('');}else{setTimeout(function(){if(!me.set_input_value_executed){me.set_input_value(val);}},1000);}})}
-LinkField.prototype.get_custom_query=function(){this.set_get_query();if(this.get_query){if(cur_frm)
-var doc=locals[cur_frm.doctype][cur_frm.docname];return this.get_query(doc,this.doctype,this.docname);}}
-LinkField.prototype.setup_buttons=function(){var me=this;me.btn.onclick=function(){selector.set(me,me.df.options,me.df.label);selector.show(me.txt);}
-if(me.btn1)me.btn1.onclick=function(){if(me.txt.value&&me.df.options){loaddoc(me.df.options,me.txt.value);}}
-me.can_create=0;if((!me.not_in_form)&&in_list(profile.can_create,me.df.options)){me.can_create=1;me.btn2.onclick=function(){var on_save_callback=function(new_rec){if(new_rec){var d=_f.calling_doc_stack.pop();locals[d[0]][d[1]][me.df.fieldname]=new_rec;me.refresh();if(me.grid)me.grid.refresh();me.run_trigger();}}
-_f.calling_doc_stack.push([me.doctype,me.docname]);new_doc(me.df.options);}}else{$dh(me.btn2);$y($td(me.tab,0,2),{width:'0px'});}}
-LinkField.prototype.set_input_value=function(val){var me=this;me.set_input_value_executed=true;var from_selector=false;if(selector&&selector.display)from_selector=true;me.refresh_label_icon();if(me.not_in_form){$(this.txt).val(val);return;}
-if(cur_frm){if(val==locals[me.doctype][me.docname][me.df.fieldname]){me.run_trigger();return;}}
-me.set(val);if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();if(locals[me.doctype][me.docname][me.df.fieldname]&&!val){me.run_trigger();return;}
-if(val){me.validate_link(val,from_selector);}}
-LinkField.prototype.validate_link=function(val,from_selector){var me=this;var fetch='';if(cur_frm.fetch_dict[me.df.fieldname])
-fetch=cur_frm.fetch_dict[me.df.fieldname].columns.join(', ');$c('webnotes.widgets.form.utils.validate_link',{'value':val,'options':me.df.options,'fetch':fetch},function(r,rt){if(r.message=='Ok'){if($(me.txt).val()!=val){if((me.grid&&!from_selector)||(!me.grid)){$(me.txt).val(val);}}
-if(r.fetch_values)
-me.set_fetch_values(r.fetch_values);me.run_trigger();}else{var astr='';if(in_list(profile.can_create,me.df.options))astr=repl('<br><br><span class="link_type" onclick="newdoc(\'%(dt)s\')">Click here</span> to create a new %(dtl)s',{dt:me.df.options,dtl:get_doctype_label(me.df.options)})
-msgprint(repl('error:<b>%(val)s</b> is not a valid %(dt)s.<br><br>You must first create a new %(dt)s <b>%(val)s</b> and then select its value. To find an existing %(dt)s, click on the magnifying glass next to the field.%(add)s',{val:me.txt.value,dt:get_doctype_label(me.df.options),add:astr}));me.txt.value='';me.set('');}});}
-LinkField.prototype.set_fetch_values=function(fetch_values){var fl=cur_frm.fetch_dict[this.df.fieldname].fields;var changed_fields=[];for(var i=0;i<fl.length;i++){if(locals[this.doctype][this.docname][fl[i]]!=fetch_values[i]){locals[this.doctype][this.docname][fl[i]]=fetch_values[i];if(!this.grid){refresh_field(fl[i]);changed_fields.push(fl[i]);}}}
-for(i=0;i<changed_fields.length;i++){if(cur_frm.fields_dict[changed_fields[i]])
-cur_frm.fields_dict[changed_fields[i]].run_trigger();}
-if(this.grid)this.grid.refresh();}
-LinkField.prototype.set_get_query=function(){if(this.get_query)return;if(this.grid){var f=this.grid.get_field(this.df.fieldname);if(f.get_query)this.get_query=f.get_query;}}
-LinkField.prototype.set_disp=function(val){var t=null;if(val)t="<a href=\'javascript:loaddoc(\""+this.df.options+"\", \""+val+"\")\'>"+val+"</a>";this.set_disp_html(t);}
-function IntField(){}IntField.prototype=new DataField();IntField.prototype.validate=function(v){if(isNaN(parseInt(v)))return null;return cint(v);};IntField.prototype.format_input=function(){if(this.input.value==null)this.input.value='';}
-function FloatField(){}FloatField.prototype=new DataField();FloatField.prototype.validate=function(v){var v=parseFloat(v);if(isNaN(v))
-return null;return v;};FloatField.prototype.format_input=function(){if(this.input.value==null)this.input.value='';}
-function CurrencyField(){}CurrencyField.prototype=new DataField();CurrencyField.prototype.format_input=function(){var v=fmt_money(this.input.value);if(this.not_in_form){if(!flt(this.input.value))v='';}
-this.input.value=v;}
-CurrencyField.prototype.validate=function(v){if(v==null||v=='')
-return 0;return flt(v,2);}
-CurrencyField.prototype.set_disp=function(val){var v=fmt_money(val);this.set_disp_html(v);}
-CurrencyField.prototype.onmake_input=function(){if(!this.input)return;this.input.onfocus=function(){if(flt(this.value)==0)this.select();}}
-function CheckField(){}CheckField.prototype=new Field();CheckField.prototype.validate=function(v){var v=parseInt(v);if(isNaN(v))return 0;return v;};CheckField.prototype.onmake=function(){this.checkimg=$a(this.disp_area,'div');var img=$a(this.checkimg,'img');img.src='images/lib/ui/tick.gif';$dh(this.checkimg);}
-CheckField.prototype.make_input=function(){var me=this;this.input=$a_input(this.input_area,'checkbox');$y(this.input,{width:"16px",border:'0px',margin:'2px'});$(this.input).click(function(){me.set(this.checked?1:0);me.run_trigger();})
-this.input.set_input=function(v){v=parseInt(v);if(isNaN(v))v=0;if(v)me.input.checked=true;else me.input.checked=false;}
-this.get_value=function(){return this.input.checked?1:0;}}
-CheckField.prototype.set_disp=function(val){if(val){$ds(this.checkimg);}
-else{$dh(this.checkimg);}}
-function TextField(){}TextField.prototype=new Field();TextField.prototype.set_disp=function(val){this.disp_area.innerHTML=replace_newlines(val);}
-TextField.prototype.make_input=function(){var me=this;if(this.in_grid)
-return;this.input=$a(this.input_area,'textarea');if(this.df.fieldtype=='Small Text')
-this.input.style.height="80px";this.input.set_input=function(v){me.input.value=v;}
-this.input.onchange=function(){me.set(me.input.value);me.run_trigger();}
-this.get_value=function(){return this.input.value;}}
-var text_dialog;function make_text_dialog(){var d=new Dialog(520,410,'Edit Text');d.make_body([['Text','Enter Text'],['HTML','Description'],['Button','Update']]);d.widgets['Update'].onclick=function(){var t=this.dialog;t.field.set(t.widgets['Enter Text'].value);t.hide();}
-d.onshow=function(){this.widgets['Enter Text'].style.height='300px';var v=_f.get_value(this.field.doctype,this.field.docname,this.field.df.fieldname);this.widgets['Enter Text'].value=v==null?'':v;this.widgets['Enter Text'].focus();this.widgets['Description'].innerHTML=''
-if(this.field.df.description)
-$a(this.widgets['Description'],'div','help small','',this.field.df.description);}
-d.onhide=function(){if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();}
-text_dialog=d;}
-TextField.prototype.table_refresh=function(){if(!this.text_dialog)
-make_text_dialog();text_dialog.set_title('Enter text for "'+this.df.label+'"');text_dialog.field=this;text_dialog.show();}
-function SelectField(){}SelectField.prototype=new Field();SelectField.prototype.make_input=function(){var me=this;var opt=[];if(this.in_filter&&(!this.df.single_select)){this.input=$a(this.input_area,'select');this.input.multiple=true;this.input.style.height='4em';this.input.lab=$a(this.input_area,'div',{fontSize:'9px',color:'#999'});this.input.lab.innerHTML='(Use Ctrl+Click to select multiple or de-select)'}else{this.input=$a(this.input_area,'select');this.input.onchange=function(){if(me.validate)
-me.validate();me.set(sel_val(this));me.run_trigger();}
-if(this.df.options=='attach_files:'){this.file_attach=true;}}
-this.set_as_single=function(){var i=this.input;i.multiple=false;i.style.height=null;if(i.lab)$dh(i.lab)}
-this.refresh_options=function(options){if(options)
-me.df.options=options;if(this.file_attach)
-this.set_attach_options();me.options_list=me.df.options?me.df.options.split('\n'):[''];empty_select(this.input);if(me.in_filter&&me.options_list[0]!=''){me.options_list=add_lists([''],me.options_list);}
-add_sel_options(this.input,me.options_list);}
-this.onrefresh=function(){this.refresh_options();if(this.not_in_form){this.input.value='';return;}
-if(_f.get_value)
-var v=_f.get_value(this.doctype,this.docname,this.df.fieldname);else{if(this.options_list&&this.options_list.length)
-var v=this.options_list[0];else
-var v=null;}
-this.input.set_input(v);}
-this.input.set_input=function(v){if(!v){if(!me.input.multiple){if(me.docname){if(me.options_list&&me.options_list.length){me.set(me.options_list[0]);me.input.value=me.options_list[0];}else{me.input.value='';}}}}else{if(me.options_list){if(me.input.multiple){for(var i=0;i<me.input.options.length;i++){me.input.options[i].selected=0;if(me.input.options[i].value&&inList(typeof(v)=='string'?v.split(","):v,me.input.options[i].value))
-me.input.options[i].selected=1;}}else if(in_list(me.options_list,v)){me.input.value=v;}}}}
-this.get_value=function(){if(me.input.multiple){var l=[];for(var i=0;i<me.input.options.length;i++){if(me.input.options[i].selected)l[l.length]=me.input.options[i].value;}
-return l;}else{if(me.input.options){var val=sel_val(me.input);if(!val&&!me.input.selectedIndex)
-val=me.input.options[0].value;return val;}
-return me.input.value;}}
-this.set_attach_options=function(){if(!cur_frm)return;var fl=cur_frm.doc.file_list;if(fl){this.df.options='';var fl=fl.split('\n');for(var i in fl){this.df.options+='\n'+fl[i].split(',')[1];}}else{this.df.options=''}}
-this.refresh();}
-function TimeField(){}TimeField.prototype=new Field();TimeField.prototype.get_time=function(){return time_to_hhmm(sel_val(this.input_hr),sel_val(this.input_mn),sel_val(this.input_am));}
-TimeField.prototype.set_time=function(v){ret=time_to_ampm(v);this.input_hr.inp.value=ret[0];this.input_mn.inp.value=ret[1];this.input_am.inp.value=ret[2];}
-TimeField.prototype.set_style_mandatory=function(){}
-TimeField.prototype.make_input=function(){var me=this;this.input=$a(this.input_area,'div','time_field');var t=make_table(this.input,1,3,'200px');var opt_hr=['1','2','3','4','5','6','7','8','9','10','11','12'];var opt_mn=['00','05','10','15','20','25','30','35','40','45','50','55'];var opt_am=['AM','PM'];this.input_hr=new SelectWidget($td(t,0,0),opt_hr,'50px');this.input_mn=new SelectWidget($td(t,0,1),opt_mn,'50px');this.input_am=new SelectWidget($td(t,0,2),opt_am,'50px');var onchange_fn=function(){me.set(me.get_time());me.run_trigger();}
-this.input_hr.inp.onchange=onchange_fn;this.input_mn.inp.onchange=onchange_fn;this.input_am.inp.onchange=onchange_fn;this.onrefresh=function(){var v=_f.get_value?_f.get_value(me.doctype,me.docname,me.df.fieldname):null;me.set_time(v);if(!v)
-me.set(me.get_time());}
-this.input.set_input=function(v){if(v==null)v='';me.set_time(v);}
-this.get_value=function(){return this.get_time();}
-this.refresh();}
-TimeField.prototype.set_disp=function(v){var t=time_to_ampm(v);var t=t[0]+':'+t[1]+' '+t[2];this.set_disp_html(t);}
-function makeinput_popup(me,iconsrc,iconsrc1,iconsrc2){var icon_style={cursor:'pointer',width:'16px',verticalAlign:'middle',marginBottom:'-3px'};me.input=$a(me.input_area,'div');if(!me.not_in_form)
-$y(me.input,{width:'80%'});me.input.set_width=function(w){$y(me.input,{width:(w-2)+'px'});}
-var tab=$a(me.input,'table');me.tab=tab;$y(tab,{width:'100%',borderCollapse:'collapse',tableLayout:'fixed'});var c0=tab.insertRow(0).insertCell(0);var c1=tab.rows[0].insertCell(1);$y(c1,{width:'20px'});me.txt=$a($a($a(c0,'div','',{paddingRight:'8px'}),'div'),'input','',{width:'100%'});me.btn=$a(c1,'i',iconsrc,icon_style)
-if(iconsrc1)
-me.btn.setAttribute('title','Search');else
-me.btn.setAttribute('title','Select Date');if(iconsrc1){var c2=tab.rows[0].insertCell(2);$y(c2,{width:'20px'});me.btn1=$a(c2,'i',iconsrc1,icon_style)
-me.btn1.setAttribute('title','Open Link');}
-if(iconsrc2){var c3=tab.rows[0].insertCell(3);$y(c3,{width:'20px'});me.btn2=$a(c3,'i',iconsrc2,icon_style)
-me.btn2.setAttribute('title','Create New');$dh(me.btn2);}
-me.txt.name=me.df.fieldname;me.setdisabled=function(tf){me.txt.disabled=tf;}}
-var tmpid=0;_f.ButtonField=function(){};_f.ButtonField.prototype=new Field();_f.ButtonField.prototype.with_label=0;_f.ButtonField.prototype.init=function(){this.prev_button=null;if(!this.frm)return;if(cur_frm&&cur_frm.fields[cur_frm.fields.length-1]&&cur_frm.fields[cur_frm.fields.length-1].df.fieldtype=='Button'){this.make_body=function(){this.prev_button=cur_frm.fields[cur_frm.fields.length-1];if(!this.prev_button.prev_button){this.prev_button.button_area=$a(this.prev_button.input_area,'span');}
-this.wrapper=this.prev_button.wrapper;this.input_area=this.prev_button.input_area;this.disp_area=this.prev_button.disp_area;this.button_area=$a(this.prev_button.input_area,'span');}}}
-_f.ButtonField.prototype.make_input=function(){var me=this;if(!this.prev_button){$y(this.input_area,{marginTop:'4px',marginBottom:'4px'});}
-if(!this.button_area)
-this.button_area=$a(this.input_area,'span','',{marginRight:'4px'});this.input=$btn(this.button_area,me.df.label,null,{fontWeight:'bold'},null,1)
-$(this.input).click(function(){if(me.not_in_form)return;if(cur_frm.cscript[me.df.fieldname]&&(!me.in_filter)){cur_frm.runclientscript(me.df.fieldname,me.doctype,me.docname);}else{cur_frm.runscript(me.df.options,me);}});}
-_f.ButtonField.prototype.hide=function(){$dh(this.button_area);};_f.ButtonField.prototype.show=function(){$ds(this.button_area);};_f.ButtonField.prototype.set=function(v){};_f.ButtonField.prototype.set_disp=function(val){}
-function make_field(docfield,doctype,parent,frm,in_grid,hide_label){switch(docfield.fieldtype.toLowerCase()){case'data':var f=new DataField();break;case'password':var f=new DataField();break;case'int':var f=new IntField();break;case'float':var f=new FloatField();break;case'currency':var f=new CurrencyField();break;case'read only':var f=new ReadOnlyField();break;case'link':var f=new LinkField();break;case'date':var f=new DateField();break;case'time':var f=new TimeField();break;case'html':var f=new HTMLField();break;case'check':var f=new CheckField();break;case'text':var f=new TextField();break;case'small text':var f=new TextField();break;case'select':var f=new SelectField();break;case'button':var f=new _f.ButtonField();break;case'code':var f=new _f.CodeField();break;case'text editor':var f=new _f.CodeField();break;case'table':var f=new _f.TableField();break;case'section break':var f=new _f.SectionBreak();break;case'column break':var f=new _f.ColumnBreak();break;case'image':var f=new _f.ImageField();break;}
-f.parent=parent;f.doctype=doctype;f.df=docfield;f.perm=frm?frm.perm:[[1,1,1]];if(_f)
-f.col_break_width=_f.cur_col_break_width;if(in_grid){f.in_grid=true;f.with_label=0;}
-if(hide_label){f.with_label=0;}
-if(frm){f.frm=frm;if(parent)
-f.layout_cell=parent.parentNode;}
-if(f.init)f.init();f.make_body();return f;}
-/*
- *	lib/js/legacy/widgets/form/form_dialog.js
- */
-_f.frm_dialog=null;_f.calling_doc_stack=[];_f.temp_access={};_f.FrmDialog=function(){var me=this;this.last_displayed=null;var d=new Dialog(640,null,'Edit Row');this.body=$a(d.body,'div','dialog_frm');d.done_btn_area=$a(d.body,'div','',{margin:'8px'});me.on_complete=function(){if(me.table_form){me.dialog.hide();}else{var callback=function(r){var dn=cur_frm.docname;if(!r.exc){me.dialog.hide();}
-if(me.on_save_callback)
-me.on_save_callback(dn);}
-cur_frm.save('Save',callback);}}
-d.onshow=function(){d.done_btn_area.innerHTML='';d.done_btn=$btn(d.done_btn_area,'Save',null,null,'green');d.done_btn.onclick=function(){me.on_complete()};if(me.table_form){d.set_title("Editing Row #"+(_f.cur_grid_ridx+1));d.done_btn.innerHTML='Done Editing';}else{d.set_title(cur_frm.doctype==cur_frm.doctype?(cur_frm.doctype):(cur_frm.doctype+': '+cur_frm.docname));d.done_btn.innerHTML='Save';}}
-d.onhide=function(){if(_f.cur_grid){_f.cur_grid.refresh_row(_f.cur_grid_ridx,me.dn);}
-if(wn.container.page.frm){cur_frm=wn.container.page.frm;}
-if(me.cur_frm.cscript.hide_dialog){me.cur_frm.cscript.hide_dialog();}
-$(me.cur_frm.page_layout.wrapper).toggle(false);}
-this.dialog=d;}
-_f.edit_record=function(dt,dn){if(!_f.frm_dialog){_f.frm_dialog=new _f.FrmDialog();}
-var d=_f.frm_dialog;wn.model.with_doctype(dt,function(){wn.model.with_doc(dt,dn,function(dn){if(!_f.frms[dt]){_f.frms[dt]=new _f.Frm(dt,d.body);}
-var f=_f.frms[dt];if(f.meta.istable){f.parent_doctype=cur_frm.doctype;f.parent_docname=cur_frm.docname;}
-d.cur_frm=f;d.dn=dn;d.table_form=f.meta.istable;f.refresh(dn);$(f.page_layout.wrapper).removeClass('layout-wrapper').removeClass('layout-wrapper-background').toggle(true);d.dialog.show();})})}
-/*
- *	lib/js/legacy/widgets/form/form_header.js
- */
-_f.FrmHeader=Class.extend({init:function(parent,frm){this.appframe=new wn.ui.AppFrame(parent)
-this.$w=this.appframe.$w;},refresh:function(){if(cur_frm.cscript.set_breadcrumbs){this.appframe.clear_breadcrumbs();cur_frm.cscript.set_breadcrumbs();}else{wn.views.breadcrumbs(this.appframe,cur_frm.meta.module,cur_frm.meta.name,cur_frm.docname);}
-this.refresh_labels();this.refresh_toolbar();},refresh_labels:function(){cur_frm.doc=get_local(cur_frm.doc.doctype,cur_frm.doc.name);var labinfo={0:['Saved','label-success'],1:['Submitted','label-info'],2:['Cancelled','label-important']}[cint(cur_frm.doc.docstatus)];if(labinfo[0]=='Saved'&&cur_frm.meta.is_submittable){labinfo[0]='Saved, to Submit';}
-if(cur_frm.doc.__unsaved||cur_frm.doc.__islocal){labinfo[0]='Not Saved';labinfo[1]='label-warning'}
-this.set_label(labinfo);if(cur_frm.doc.__unsaved&&cint(cur_frm.doc.docstatus)==1&&this.appframe.buttons['Update']){this.appframe.buttons['Update'].toggle(true);}},set_label:function(labinfo){this.$w.find('.label').remove();$(repl('<span class="label %(lab_class)s">\
-   %(lab_status)s</span>',{lab_status:labinfo[0],lab_class:labinfo[1]})).insertBefore(this.$w.find('.breadcrumb-area'))},refresh_toolbar:function(){if(cur_frm.meta.hide_toolbar){$('.appframe-toolbar').toggle(false);return;}
-this.appframe.clear_buttons();var p=cur_frm.get_doc_perms();if(cur_frm.meta.read_only_onload&&!cur_frm.doc.__islocal){if(!cur_frm.editable)
-this.appframe.add_button('Edit',function(){cur_frm.edit_doc();},'icon-pencil');else
-this.appframe.add_button('Print View',function(){cur_frm.is_editable[cur_frm.docname]=0;cur_frm.refresh();},'icon-print');}
-var docstatus=cint(cur_frm.doc.docstatus);if(docstatus==0&&p[WRITE]){this.appframe.add_button('Save',function(){cur_frm.save('Save');},'');this.appframe.buttons['Save'].addClass('btn-info');}
-if(docstatus==0&&p[SUBMIT]&&(!cur_frm.doc.__islocal))
-this.appframe.add_button('Submit',function(){cur_frm.savesubmit();},'icon-lock');if(docstatus==1&&p[SUBMIT]){this.appframe.add_button('Update',function(){cur_frm.saveupdate();},'');if(!cur_frm.doc.__unsaved)this.appframe.buttons['Update'].toggle(false);}
-if(docstatus==1&&p[CANCEL])
-this.appframe.add_button('Cancel',function(){cur_frm.savecancel()},'icon-remove');if(docstatus==2&&p[AMEND])
-this.appframe.add_button('Amend',function(){cur_frm.amend_doc()},'icon-pencil');if(cur_frm.meta.description){this.appframe.add_help_button(wn.markdown('## '+cur_frm.doctype+'\n\n'
-+cur_frm.meta.description));}},show:function(){},hide:function(){},hide_close:function(){this.$w.find('.close').toggle(false);}})
-/*
- *	lib/js/legacy/widgets/form/form.js
- */
-wn.provide('_f');_f.frms={};_f.Frm=function(doctype,parent,in_form){this.docname='';this.doctype=doctype;this.display=0;var me=this;this.is_editable={};this.opendocs={};this.sections=[];this.grids=[];this.cscript={};this.pformat={};this.fetch_dict={};this.parent=parent;this.tinymce_id_list=[];this.setup_meta(doctype);this.in_form=in_form?true:false;var me=this;$(document).bind('rename',function(event,dt,old_name,new_name){if(dt==me.doctype)
-me.rename_notify(dt,old_name,new_name)});}
-_f.Frm.prototype.check_doctype_conflict=function(docname){var me=this;if(this.doctype=='DocType'&&docname=='DocType'){msgprint('Allowing DocType, DocType. Be careful!')}else if(this.doctype=='DocType'){if(wn.views.formview[docname]||wn.pages['List/'+docname]){msgprint("Cannot open DocType when its instance is open")
-throw'doctype open conflict'}}else{if(wn.views.formview.DocType&&wn.views.formview.DocType.frm.opendocs[this.doctype]){msgprint("Cannot open instance when its DocType is open")
-throw'doctype open conflict'}}}
-_f.Frm.prototype.setup=function(){var me=this;this.fields=[];this.fields_dict={};this.wrapper=this.parent;this.setup_print_layout();this.saved_wrapper=$a(this.wrapper,'div');this.setup_std_layout();this.setup_client_script();this.setup_done=true;}
-_f.Frm.prototype.setup_print_layout=function(){this.print_wrapper=$a(this.wrapper,'div');this.print_head=$a(this.print_wrapper,'div');this.print_body=$a(this.print_wrapper,'div','layout_wrapper',{padding:'23px',minHeight:'800px'});var t=make_table(this.print_head,1,2,'100%',[],{padding:'6px'});this.view_btn_wrapper=$a($td(t,0,0),'span','green_buttons');this.view_btn=$btn(this.view_btn_wrapper,'View Details',function(){cur_frm.edit_doc()},{marginRight:'4px'},'green');this.print_btn=$btn($td(t,0,0),'Print',function(){cur_frm.print_doc()});$y($td(t,0,1),{textAlign:'right'});this.print_close_btn=$btn($td(t,0,1),'Close',function(){window.history.back();});}
-_f.Frm.prototype.onhide=function(){if(_f.cur_grid_cell)_f.cur_grid_cell.grid.cell_deselect();}
-_f.Frm.prototype.setup_std_layout=function(){this.page_layout=new wn.PageLayout({parent:this.wrapper,main_width:(this.meta.in_dialog&&!this.in_form)?'100%':'75%',sidebar_width:(this.meta.in_dialog&&!this.in_form)?'0%':'25%'})
-this.meta.section_style='Simple';this.layout=new Layout(this.page_layout.body,'100%');if(this.meta.in_dialog&&!this.in_form){$(this.page_layout.wrapper).removeClass('layout-wrapper-background');$(this.page_layout.main).removeClass('layout-main-section');$(this.page_layout.sidebar_area).toggle(false);}else{this.setup_sidebar();}
-this.setup_footer();if(!(this.meta.istable||user=='Guest'||(this.meta.in_dialog&&!this.in_form)))
-this.frm_head=new _f.FrmHeader(this.page_layout.head,this);this.setup_fields_std();}
-_f.Frm.prototype.setup_print=function(){var l=[]
-this.default_format='Standard';for(var key in locals['Print Format']){if(locals['Print Format'][key].doc_type==this.meta.name){l.push(locals['Print Format'][key].name);}}
-if(this.meta.default_print_format)
-this.default_format=this.meta.default_print_format;l.push('Standard');this.print_sel=$a(null,'select','',{width:'160px'});add_sel_options(this.print_sel,l);this.print_sel.value=this.default_format;}
-_f.Frm.prototype.print_doc=function(){if(this.doc.docstatus==2){msgprint("Cannot Print Cancelled Documents.");return;}
-_p.show_dialog();}
-_f.Frm.prototype.email_doc=function(){if(!_e.dialog)_e.make();_e.dialog.widgets['To'].value='';if(cur_frm.doc&&cur_frm.doc.contact_email){_e.dialog.widgets['To'].value=cur_frm.doc.contact_email;}
-sel=this.print_sel;var c=$td(_e.dialog.rows['Format'].tab,0,1);if(c.cur_sel){c.removeChild(c.cur_sel);c.cur_sel=null;}
-c.appendChild(this.print_sel);c.cur_sel=this.print_sel;_e.dialog.widgets['Send With Attachments'].checked=0;if(cur_frm.doc.file_list){$ds(_e.dialog.rows['Send With Attachments']);}else{$dh(_e.dialog.rows['Send With Attachments']);}
-_e.dialog.widgets['Subject'].value=get_doctype_label(this.meta.name)+': '+this.docname;_e.dialog.show();}
-_f.Frm.prototype.rename_notify=function(dt,old,name){if(this.meta.in_dialog&&!this.in_form)
-return;if(this.docname==old)
-this.docname=name;else
-return;this.is_editable[name]=this.is_editable[old];delete this.is_editable[old];if(this&&this.opendocs[old]){local_dt[dt][name]=local_dt[dt][old];local_dt[dt][old]=null;}
-delete this.opendocs[old];this.opendocs[name]=true;wn.re_route[window.location.hash]='#Form/'+encodeURIComponent(this.doctype)+'/'+encodeURIComponent(name);wn.set_route('Form',this.doctype,name);}
-_f.Frm.prototype.setup_meta=function(doctype){this.meta=get_local('DocType',this.doctype);this.perm=get_perm(this.doctype);if(this.meta.istable){this.meta.in_dialog=1}
-this.setup_print();}
-_f.Frm.prototype.setup_sidebar=function(){this.sidebar=new wn.widgets.form.sidebar.Sidebar(this);}
-_f.Frm.prototype.setup_footer=function(){var me=this;var f=this.page_layout.footer;f.save_area=$a(this.page_layout.footer,'div','',{display:'none',marginTop:'11px'});f.help_area=$a(this.page_layout.footer,'div');var b=$btn(f.save_area,'Save',function(){cur_frm.save('Save');},{marginLeft:'0px'},'green');f.show_save=function(){$ds(me.page_layout.footer.save_area);}
-f.hide_save=function(){$dh(me.page_layout.footer.save_area);}}
-_f.Frm.prototype.set_intro=function(txt){if(!this.intro_area){this.intro_area=$('<div class="help-box form-intro-area">').insertBefore(this.page_layout.body.firstChild);}
-if(txt){if(txt.search(/<p>/)==-1)txt='<p>'+txt+'</p>';this.intro_area.html(txt);}else{this.intro_area.remove();this.intro_area=null;}}
-_f.Frm.prototype.set_footnote=function(txt){if(!this.footnote_area){this.footnote_area=$('<div class="help-box form-intro-area">').insertAfter(this.page_layout.body.lastChild);}
-if(txt){if(txt.search(/<p>/)==-1)txt='<p>'+txt+'</p>';this.footnote_area.html(txt);}else{this.footnote_area.remove();this.footnote_area=null;}}
-_f.Frm.prototype.setup_fields_std=function(){var fl=wn.meta.docfield_list[this.doctype];fl.sort(function(a,b){return a.idx-b.idx});if(fl[0]&&fl[0].fieldtype!="Section Break"||get_url_arg('embed')){this.layout.addrow();if(fl[0].fieldtype!="Column Break"){var c=this.layout.addcell();$y(c.wrapper,{padding:'8px'});}}
-var sec;for(var i=0;i<fl.length;i++){var f=fl[i];if(f.fieldtype=='Section Break'&&fl[i+1]&&fl[i+1].fieldtype=='Section Break')
-continue;var fn=f.fieldname?f.fieldname:f.label;var fld=make_field(f,this.doctype,this.layout.cur_cell,this);this.fields[this.fields.length]=fld;this.fields_dict[fn]=fld;if(sec&&['Section Break','Column Break'].indexOf(f.fieldtype)==-1){fld.parent_section=sec;sec.fields.push(fld);}
-if(f.fieldtype=='Section Break'){sec=fld;this.sections.push(fld);}
-if((f.fieldtype=='Section Break')&&(fl[i+1])&&(fl[i+1].fieldtype!='Column Break')){var c=this.layout.addcell();$y(c.wrapper,{padding:'8px'});}}}
-_f.Frm.prototype.add_custom_button=function(label,fn,icon){this.frm_head.appframe.add_button(label,fn,icon);}
-_f.Frm.prototype.clear_custom_buttons=function(){this.frm_head.refresh_toolbar()}
-_f.Frm.prototype.add_fetch=function(link_field,src_field,tar_field){if(!this.fetch_dict[link_field]){this.fetch_dict[link_field]={'columns':[],'fields':[]}}
-this.fetch_dict[link_field].columns.push(src_field);this.fetch_dict[link_field].fields.push(tar_field);}
-_f.Frm.prototype.setup_client_script=function(){if(this.meta.client_script_core||this.meta.client_script||this.meta.__js){this.runclientscript('setup',this.doctype,this.docname);}}
-_f.Frm.prototype.refresh_print_layout=function(){$ds(this.print_wrapper);$dh(this.page_layout.wrapper);var me=this;var print_callback=function(print_html){me.print_body.innerHTML=print_html;}
-if(cur_frm.doc.select_print_heading)
-cur_frm.set_print_heading(cur_frm.doc.select_print_heading)
-if(user!='Guest'){$di(this.view_btn_wrapper);if(cur_frm.doc.__archived){$dh(this.view_btn_wrapper);}}else{$dh(this.view_btn_wrapper);$dh(this.print_close_btn);}
-_p.build(this.default_format,print_callback,null,1);}
-_f.Frm.prototype.show_the_frm=function(){if(this.meta.in_dialog&&!this.parent.dialog.display){if(!this.meta.istable)
-this.parent.table_form=false;this.parent.dialog.show();}}
-_f.Frm.prototype.set_print_heading=function(txt){this.pformat[cur_frm.docname]=txt;}
-_f.Frm.prototype.defocus_rest=function(){if(_f.cur_grid_cell)_f.cur_grid_cell.grid.cell_deselect();}
-_f.Frm.prototype.get_doc_perms=function(){var p=[0,0,0,0,0,0];for(var i=0;i<this.perm.length;i++){if(this.perm[i]){if(this.perm[i][READ])p[READ]=1;if(this.perm[i][WRITE])p[WRITE]=1;if(this.perm[i][SUBMIT])p[SUBMIT]=1;if(this.perm[i][CANCEL])p[CANCEL]=1;if(this.perm[i][AMEND])p[AMEND]=1;}}
-return p;}
-_f.Frm.prototype.refresh_header=function(){if(!this.meta.in_dialog||this.in_form){set_title(this.meta.issingle?this.doctype:this.docname);}
-if(this.frm_head)this.frm_head.refresh();if(wn.ui.toolbar.recent)
-wn.ui.toolbar.recent.add(this.doctype,this.docname,1);}
-_f.Frm.prototype.check_doc_perm=function(){var dt=this.parent_doctype?this.parent_doctype:this.doctype;var dn=this.parent_docname?this.parent_docname:this.docname;this.perm=get_perm(dt,dn);this.orig_perm=get_perm(dt,dn,1);if(!this.perm[0][READ]){if(user=='Guest'){if(_f.temp_access[dt]&&_f.temp_access[dt][dn]){this.perm=[[1,0,0]]
-return 1;}}
-window.history.back();return 0;}
-return 1}
-_f.Frm.prototype.refresh=function(docname){if(docname){if(this.docname!=docname&&(!this.meta.in_dialog||this.in_form)&&!this.meta.istable)
-scroll(0,0);this.docname=docname;}
-if(!this.meta.istable){cur_frm=this;this.parent.cur_frm=this;}
-if(this.docname){if(!this.check_doc_perm())return;if(!this.opendocs[this.docname]){this.check_doctype_conflict(this.docname);}
-this.doc=get_local(this.doctype,this.docname);if(!this.setup_done)this.setup();this.runclientscript('set_perm',this.doctype,this.docname);cur_frm.cscript.is_onload=false;if(!this.opendocs[this.docname]){cur_frm.cscript.is_onload=true;this.setnewdoc(this.docname);}
-if(this.doc.__islocal)
-this.is_editable[this.docname]=1;this.editable=this.is_editable[this.docname];if(!this.doc.__archived&&(this.editable||(!this.editable&&this.meta.istable))){if(this.print_wrapper){$dh(this.print_wrapper);$ds(this.page_layout.wrapper);}
-if(!this.meta.istable){this.refresh_header();this.sidebar&&this.sidebar.refresh();}
-this.runclientscript('refresh');$(document).trigger('form_refresh');this.refresh_fields();this.refresh_dependency();this.refresh_footer();if(this.layout)this.layout.show();if(cur_frm.cscript.is_onload){this.runclientscript('onload_post_render',this.doctype,this.docname);}
-if(this.doc.docstatus==0){$(this.wrapper).find('.form-layout-row :input:first').focus();}}else{this.refresh_header();if(this.print_wrapper){this.refresh_print_layout();}
-this.runclientscript('edit_status_changed');}
-$(cur_frm.wrapper).trigger('render_complete');}}
-_f.Frm.prototype.refresh_footer=function(){var f=this.page_layout.footer;if(f.save_area){if(this.editable&&(!this.meta.in_dialog||this.in_form)&&this.doc.docstatus==0&&!this.meta.istable&&this.get_doc_perms()[WRITE]&&(this.fields&&this.fields.length>7)){f.show_save();}else{f.hide_save();}}}
-_f.Frm.prototype.refresh_field=function(fname){cur_frm.fields_dict[fname]&&cur_frm.fields_dict[fname].refresh&&cur_frm.fields_dict[fname].refresh();}
-_f.Frm.prototype.refresh_fields=function(){for(var i=0;i<this.fields.length;i++){var f=this.fields[i];f.perm=this.perm;f.docname=this.docname;var fn=f.df.fieldname||f.df.label;if(fn)
-f.df=wn.meta.get_docfield(this.doctype,fn,this.docname);if(f.df.fieldtype!='Section Break'&&f.refresh){f.refresh();}}
-$.each(this.sections,function(i,f){f.refresh(true);})
-this.cleanup_refresh(this);}
-_f.Frm.prototype.cleanup_refresh=function(){var me=this;if(me.fields_dict['amended_from']){if(me.doc.amended_from){unhide_field('amended_from');unhide_field('amendment_date');}else{hide_field('amended_from');hide_field('amendment_date');}}
-if(me.fields_dict['trash_reason']){if(me.doc.trash_reason&&me.doc.docstatus==2){unhide_field('trash_reason');}else{hide_field('trash_reason');}}
-if(me.meta.autoname&&me.meta.autoname.substr(0,6)=='field:'&&!me.doc.__islocal){var fn=me.meta.autoname.substr(6);cur_frm.toggle_display(fn,false);}}
-_f.Frm.prototype.refresh_dependency=function(){var me=this;var doc=locals[this.doctype][this.docname];var has_dep=false;for(fkey in me.fields){var f=me.fields[fkey];f.dependencies_clear=true;if(f.df.depends_on){has_dep=true;}}
-if(!has_dep)return;for(var i=me.fields.length-1;i>=0;i--){var f=me.fields[i];f.guardian_has_value=true;if(f.df.depends_on){var v=doc[f.df.depends_on];if(f.df.depends_on.substr(0,5)=='eval:'){f.guardian_has_value=eval(f.df.depends_on.substr(5));}else if(f.df.depends_on.substr(0,3)=='fn:'){f.guardian_has_value=me.runclientscript(f.df.depends_on.substr(3),me.doctype,me.docname);}else{if(v||(v==0&&!v.substr)){}else{f.guardian_has_value=false;}}
-if(f.guardian_has_value){f.df.hidden=0;f.refresh()}else{f.df.hidden=1;f.refresh()}}}}
-_f.Frm.prototype.setnewdoc=function(docname){if(this.opendocs[docname]){this.docname=docname;return;}
-Meta.make_local_dt(this.doctype,docname);this.docname=docname;var me=this;var viewname=docname;if(this.meta.issingle)viewname=this.doctype;this.runclientscript('onload',this.doctype,this.docname);this.is_editable[docname]=1;if(this.meta.read_only_onload)this.is_editable[docname]=0;this.opendocs[docname]=true;}
-_f.Frm.prototype.edit_doc=function(){this.is_editable[this.docname]=true;this.refresh();}
-_f.Frm.prototype.show_doc=function(dn){this.refresh(dn);}
-var validated;_f.Frm.prototype.save=function(save_action,call_back){if(!save_action)save_action='Save';var me=this;if(this.savingflag){msgprint("Document is currently saving....");return;}
-if(save_action=='Submit'){locals[this.doctype][this.docname].submitted_on=dateutil.full_str();locals[this.doctype][this.docname].submitted_by=user;}
-if(save_action=='Trash'){var reason=prompt('Reason for trash (mandatory)','');if(!strip(reason)){msgprint('Reason is mandatory, not trashed');return;}
-locals[this.doctype][this.docname].trash_reason=reason;}
-if(save_action=='Cancel'){var reason=prompt('Reason for cancellation (mandatory)','');if(!strip(reason)){msgprint('Reason is mandatory, not cancelled');return;}
-locals[this.doctype][this.docname].cancel_reason=reason;locals[this.doctype][this.docname].cancelled_on=dateutil.full_str();locals[this.doctype][this.docname].cancelled_by=user;}else if(save_action=='Update'){}else{validated=true;if(this.cscript.validate)
-this.runclientscript('validate');if(!validated){this.savingflag=false;return'Error';}}
-var ret_fn=function(r){me.savingflag=false;if(!me.meta.istable&&r){me.refresh(r.docname);}
-if(call_back){call_back(r);}}
-var me=this;var ret_fn_err=function(r){var doc=locals[me.doctype][me.docname];me.savingflag=false;ret_fn(r);}
-this.savingflag=true;if(this.docname&&validated){scroll(0,0);return this.savedoc(save_action,ret_fn,ret_fn_err);}}
-_f.Frm.prototype.runscript=function(scriptname,callingfield,onrefresh){var me=this;if(this.docname){var doclist=compress_doclist(make_doclist(this.doctype,this.docname));if(callingfield)
-$(callingfield.input).set_working();$c('runserverobj',{'docs':doclist,'method':scriptname},function(r,rtxt){if(onrefresh)
-onrefresh(r,rtxt);me.refresh_fields();me.refresh_dependency();if(callingfield)
-$(callingfield.input).done_working();});}}
-_f.Frm.prototype.runclientscript=function(caller,cdt,cdn){if(!cdt)cdt=this.doctype;if(!cdn)cdn=this.docname;var ret=null;var doc=locals[cur_frm.doc.doctype][cur_frm.doc.name];try{if(this.cscript[caller])
-ret=this.cscript[caller](doc,cdt,cdn);if(this.cscript['custom_'+caller])
-ret+=this.cscript['custom_'+caller](doc,cdt,cdn);}catch(e){console.log(e);}
-if(caller&&caller.toLowerCase()=='setup'){var doctype=get_local('DocType',this.doctype);var cs=doctype.__js||(doctype.client_script_core+doctype.client_script);if(cs){try{var tmp=eval(cs);}catch(e){console.log(e);}}
-if(doctype.__css)set_style(doctype.__css)
-if(doctype.client_string){this.cstring={};var elist=doctype.client_string.split('---');for(var i=1;i<elist.length;i=i+2){this.cstring[strip(elist[i])]=elist[i+1];}}}
-return ret;}
-_f.Frm.prototype.copy_doc=function(onload,from_amend){if(!this.perm[0][CREATE]){msgprint('You are not allowed to create '+this.meta.name);return;}
-var dn=this.docname;var newdoc=LocalDB.copy(this.doctype,dn,from_amend);if(this.meta.allow_attach&&newdoc.file_list&&!from_amend)
-newdoc.file_list=null;var dl=make_doclist(this.doctype,dn);var tf_dict={};for(var d in dl){d1=dl[d];if(d1.parentfield&&!tf_dict[d1.parentfield]){tf_dict[d1.parentfield]=wn.meta.get_docfield(d1.parenttype,d1.parentfield);}
-if(d1.parent==dn&&cint(tf_dict[d1.parentfield].no_copy)!=1){var ch=LocalDB.copy(d1.doctype,d1.name,from_amend);ch.parent=newdoc.name;ch.docstatus=0;ch.owner=user;ch.creation='';ch.modified_by=user;ch.modified='';}}
-newdoc.__islocal=1;newdoc.docstatus=0;newdoc.owner=user;newdoc.creation='';newdoc.modified_by=user;newdoc.modified='';if(onload)onload(newdoc);loaddoc(newdoc.doctype,newdoc.name);}
-_f.Frm.prototype.reload_doc=function(){this.check_doctype_conflict(this.docname);var me=this;var ret_fn=function(r,rtxt){me.runclientscript('setup',me.doctype,me.docname);me.refresh();}
-if(me.doc.__islocal){$c('webnotes.widgets.form.load.getdoctype',{'doctype':me.doctype},ret_fn,null,null,'Refreshing '+me.doctype+'...');}else{$c('webnotes.widgets.form.load.getdoc',{'name':me.docname,'doctype':me.doctype,'getdoctype':1,'user':user},ret_fn,null,null,'Refreshing '+me.docname+'...');}}
-_f.Frm.prototype.savedoc=function(save_action,onsave,onerr){save_doclist(this.doctype,this.docname,save_action,onsave,onerr);}
-_f.Frm.prototype.saveupdate=function(){this.save('Update');}
-_f.Frm.prototype.savesubmit=function(){var answer=confirm("Permanently Submit "+this.docname+"?");var me=this;if(answer){this.save('Submit',function(r){if(!r.exc&&me.cscript.on_submit){me.runclientscript('on_submit',me.doctype,me.docname);}});}}
-_f.Frm.prototype.savecancel=function(){var answer=confirm("Permanently Cancel "+this.docname+"?");if(answer)this.save('Cancel');}
-_f.Frm.prototype.savetrash=function(){var me=this;var answer=confirm("Permanently Delete "+this.docname+"? This action cannot be reversed");if(answer){$c('webnotes.model.delete_doc',{dt:this.doctype,dn:this.docname},function(r,rt){if(r.message=='okay'){LocalDB.delete_doc(me.doctype,me.docname);if(wn.ui.toolbar.recent)wn.ui.toolbar.recent.remove(me.doctype,me.docname);window.history.back();}})}}
-_f.Frm.prototype.amend_doc=function(){if(!this.fields_dict['amended_from']){alert('"amended_from" field must be present to do an amendment.');return;}
-var me=this;var fn=function(newdoc){newdoc.amended_from=me.docname;if(me.fields_dict&&me.fields_dict['amendment_date'])
-newdoc.amendment_date=dateutil.obj_to_str(new Date());}
-this.copy_doc(fn,1);}
-_f.get_value=function(dt,dn,fn){if(locals[dt]&&locals[dt][dn])
-return locals[dt][dn][fn];}
-_f.Frm.prototype.set_value_in_locals=function(dt,dn,fn,v){var d=locals[dt][dn];if(!d)return;var changed=d[fn]!=v;if(changed&&(d[fn]==null||v==null)&&(cstr(d[fn])==cstr(v)))
-changed=false;if(changed){d[fn]=v;if(d.parenttype)
-d.__unsaved=1;this.set_unsaved();}}
-_f.Frm.prototype.set_unsaved=function(){if(cur_frm.doc.__unsaved)return;cur_frm.doc.__unsaved=1;cur_frm.frm_head.refresh_labels()}
-_f.Frm.prototype.show_comments=function(){if(!cur_frm.comments){cur_frm.comments=new Dialog(540,400,'Comments');cur_frm.comments.comment_body=$a(cur_frm.comments.body,'div','dialog_frm');$y(cur_frm.comments.body,{backgroundColor:'#EEE'});cur_frm.comments.list=new CommentList(cur_frm.comments.comment_body);}
-cur_frm.comments.list.dt=cur_frm.doctype;cur_frm.comments.list.dn=cur_frm.docname;cur_frm.comments.show();cur_frm.comments.list.run();}
-_f.Frm.prototype.get_doc=function(){return locals[this.doctype][this.docname];}
-_f.Frm.prototype.get_doclist=function(){return make_doclist(this.doctype,this.docname);}
-_f.Frm.prototype.field_map=function(fnames,fn){if(typeof fnames=='string'){if(fnames=='*'){fnames=keys(this.fields_dict);}else{fnames=[fnames];}}
-$.each(fnames,function(i,f){var field=wn.meta.get_docfield(cur_frm.doctype,f,cur_frm.docname)
-if(field){fn(field);cur_frm.refresh_field(f);};})}
-_f.Frm.prototype.set_df_property=function(fieldname,property,value){var field=wn.meta.get_docfield(cur_frm.doctype,fieldname,cur_frm.docname)
-if(field){field[property]=value;cur_frm.refresh_field(fieldname);};}
-_f.Frm.prototype.toggle_enable=function(fnames,enable){cur_frm.field_map(fnames,function(field){field.disabled=enable?false:true;});}
-_f.Frm.prototype.toggle_reqd=function(fnames,mandatory){cur_frm.field_map(fnames,function(field){field.reqd=mandatory?true:false;});}
-_f.Frm.prototype.toggle_display=function(fnames,show){cur_frm.field_map(fnames,function(field){field.hidden=show?false:true;});}
-_f.Frm.prototype.call_server=function(method,args,callback){$c_obj(cur_frm.get_doclist(),method,args,callback);}
-_f.Frm.prototype.set_value=function(field,value){cur_frm.get_doc()[field]=value;cur_frm.fields_dict[field].refresh();}
-/*
- *	lib/js/legacy/widgets/form/form_fields.js
- */
-_f.ColumnBreak=function(){this.set_input=function(){};}
-_f.ColumnBreak.prototype.make_body=function(){this.cell=this.frm.layout.addcell(this.df.width);$y(this.cell.wrapper,{padding:'8px'});_f.cur_col_break_width=this.df.width;var fn=this.df.fieldname?this.df.fieldname:this.df.label;if(this.df&&this.df.label){this.label=$a(this.cell.wrapper,'h4','','',this.df.label);}}
-_f.ColumnBreak.prototype.refresh=function(layout){var hidden=0;if((!this.perm[this.df.permlevel])||(!this.perm[this.df.permlevel][READ])||this.df.hidden){hidden=1;}
-if(this.set_hidden!=hidden){if(hidden)
-this.cell.hide();else
-this.cell.show();this.set_hidden=hidden;}}
-_f.SectionBreak=function(){this.fields=[];this.set_input=function(){};this.make_row=function(){this.row=this.df.label?this.frm.layout.addrow():this.frm.layout.addsubrow();}}
-_f.SectionBreak.prototype.make_body=function(){var me=this;this.make_row();if(this.df.label){if(!this.df.description)
-this.df.description='';$(this.row.main_head).html(repl('<div class="form-section-head">\
-    <h3 class="head">%(label)s</h3>\
-    <div class="help small" \
-     style="margin-top: 4px; margin-bottom: 8px;">%(description)s</div>\
-   </div>',this.df));}else{$(this.wrapper).html('<div class="form-section-head"></div>');}
-this.section_collapse=function(){$(me.row.main_head).find('.head').html('<i class="icon-chevron-right"></i> \
-    <a href="#" onclick="return false;">Show "'+me.df.label+'"</a>');$(me.row.main_body).toggle(false);}
-this.section_expand=function(no_animation){$(me.row.main_head).find('.head').html('<h3><i class="icon-chevron-down" style="vertical-align: middle; margin-bottom: 2px"></i> '
-+me.df.label+'</h3>');if(no_animation)
-$(me.row.main_body).toggle(true);else
-$(me.row.main_body).slideDown();}}
-_f.SectionBreak.prototype.has_data=function(){var me=this;for(var i in me.fields){var f=me.fields[i];var v=f.get_value?f.get_value():null;defaultval=f.df['default']||sys_defaults[f.fieldname]||user_defaults[f.fieldname];if(v&&v!=defaultval){return true;}
-if(f.df.reqd&&!v){return true;}
-if(f.df.fieldtype=='Table'){if(f.grid.get_children().length||f.df.reqd){return true;}}}
-return false;}
-_f.SectionBreak.prototype.refresh=function(from_form){var hidden=0;if((!this.perm[this.df.permlevel])||(!this.perm[this.df.permlevel][READ])||this.df.hidden){hidden=1;}
-if(hidden){if(this.row)this.row.hide();}else{if(this.row)this.row.show();}}
-_f.ImageField=function(){this.images={};}
-_f.ImageField.prototype=new Field();_f.ImageField.prototype.onmake=function(){this.no_img=$a(this.wrapper,'div','no_img');this.no_img.innerHTML="No Image";$dh(this.no_img);}
-_f.ImageField.prototype.get_image_src=function(doc){if(doc.file_list){file=doc.file_list.split(',');extn=file[0].split('.');extn=extn[extn.length-1].toLowerCase();var img_extn_list=['gif','jpg','bmp','jpeg','jp2','cgm','ief','jpm','jpx','png','tiff','jpe','tif'];if(in_list(img_extn_list,extn)){var src=wn.request.url+"?cmd=downloadfile&file_id="+file[1];}}else{var src="";}
-return src;}
-_f.ImageField.prototype.onrefresh=function(){var me=this;if(!this.images[this.docname])this.images[this.docname]=$a(this.wrapper,'img');else $di(this.images[this.docname]);var img=this.images[this.docname]
-for(var dn in this.images)if(dn!=this.docname)$dh(this.images[dn]);var doc=locals[this.frm.doctype][this.frm.docname];if(!this.df.options)var src=this.get_image_src(doc);else var src=wn.request.url+'?cmd=get_file&fname='+this.df.options+"&__account="+account_id+(__sid150?("&sid150="+__sid150):'');if(src){$dh(this.no_img);if(img.getAttribute('src')!=src)img.setAttribute('src',src);canvas=this.wrapper;canvas.img=this.images[this.docname];canvas.style.overflow="auto";$w(canvas,"100%");if(!this.col_break_width)this.col_break_width='100%';var allow_width=cint(1000*(cint(this.col_break_width)-10)/100);if((!img.naturalWidth)||cint(img.naturalWidth)>allow_width)
-$w(img,allow_width+'px');}else{$ds(this.no_img);}}
-_f.ImageField.prototype.set_disp=function(val){}
-_f.ImageField.prototype.set=function(val){}
-_f.TableField=function(){};_f.TableField.prototype=new Field();_f.TableField.prototype.with_label=0;_f.TableField.prototype.make_body=function(){if(this.perm[this.df.permlevel]&&this.perm[this.df.permlevel][READ]){this.grid=new _f.FormGrid(this);if(this.frm)this.frm.grids[this.frm.grids.length]=this;this.grid.make_buttons();if(this.df.description){this.desc_area=$a(this.parent,'div','help small',{marginBottom:'9px',marginTop:'0px'},this.df.description)}}}
-_f.TableField.prototype.refresh=function(){if(!this.grid)return;var st=this.get_status();if(!this.df['default'])
-this.df['default']='';this.grid.can_add_rows=false;this.grid.can_edit=false
-if(st=='Write'){if(cur_frm.editable&&this.perm[this.df.permlevel]&&this.perm[this.df.permlevel][WRITE]){this.grid.can_edit=true;if(this.df['default'].toLowerCase()!='no toolbar')
-this.grid.can_add_rows=true;}
-if(cur_frm.editable&&cur_frm.doc.docstatus>0){if(this.df.allow_on_submit&&cur_frm.doc.docstatus==1){this.grid.can_edit=true;if(this.df['default'].toLowerCase()=='no toolbar'){this.grid.can_add_rows=false;}else{this.grid.can_add_rows=true;}}else{this.grid.can_add_rows=false;this.grid.can_edit=false;}}
-if(this.df['default'].toLowerCase()=='no add rows'){this.grid.can_add_rows=false;}}
-if(st=='Write'){this.grid.show();}else if(st=='Read'){this.grid.show();}else{this.grid.hide();}
-this.grid.refresh();}
-_f.TableField.prototype.set=function(v){};_f.TableField.prototype.set_input=function(v){};_f.CodeField=function(){};_f.CodeField.prototype=new Field();_f.CodeField.prototype.make_input=function(){var me=this;this.label_span.innerHTML=this.df.label;if(this.df.fieldtype=='Text Editor'){this.input=$a(this.input_area,'text_area','',{fontSize:'12px'});this.myid=wn.dom.set_unique_id(this.input);$(me.input).tinymce({script_url:'js/lib/tiny_mce_33/tiny_mce.js',theme:"advanced",plugins:"style,inlinepopups,table,advimage",extended_valid_elements:"div[id|dir|class|align|style]",width:'100%',height:'360px',theme_advanced_buttons1:"bold,italic,underline,strikethrough,hr,|,justifyleft,justifycenter,justifyright,|,formatselect,fontselect,fontsizeselect,|,image",theme_advanced_buttons2:"bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,code,|,forecolor,backcolor,|,tablecontrols",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"left",content_css:"js/lib/tiny_mce_33/custom_content.css?q=1",oninit:function(){me.init_editor();}});this.input.set_input=function(v){if(me.editor){me.editor.setContent(v);}else{$(me.input).val(v);}}
-this.input.onchange=function(){me.set(me.editor.getContent());me.run_trigger();}
-this.get_value=function(){return me.editor.getContent();}}else{wn.require('js/lib/ace/ace.js');$(this.input_area).css('border','1px solid #aaa');this.pre=$a(this.input_area,'pre','',{position:'relative',height:'400px',width:'100%'});this.input={};this.myid=wn.dom.set_unique_id(this.pre);this.editor=ace.edit(this.myid);if(me.df.options=='Markdown'||me.df.options=='HTML'){wn.require('js/lib/ace/mode-html.js');var HTMLMode=require("ace/mode/html").Mode;me.editor.getSession().setMode(new HTMLMode());}
-else if(me.df.options=='Javascript'){wn.require('js/lib/ace/mode-javascript.js');var JavascriptMode=require("ace/mode/javascript").Mode;me.editor.getSession().setMode(new JavascriptMode());}
-else if(me.df.options=='Python'){wn.require('js/lib/ace/mode-python.js');var PythonMode=require("ace/mode/python").Mode;me.editor.getSession().setMode(new PythonMode());}
-this.input.set_input=function(v){me.setting_value=true;me.editor.getSession().setValue(v);me.setting_value=false;}
-this.get_value=function(){return me.editor.getSession().getValue();}
-$(cur_frm.wrapper).bind('render_complete',function(){me.editor.resize();me.editor.getSession().on('change',function(){if(me.setting_value)return;var val=me.get_value();if(locals[cur_frm.doctype][cur_frm.docname][me.df.fieldname]!=val){me.set(me.get_value());me.run_trigger();}})});}}
-_f.CodeField.prototype.init_editor=function(){var me=this;this.editor=tinymce.get(this.myid);this.editor.onKeyUp.add(function(ed,e){me.set(ed.getContent());});this.editor.onPaste.add(function(ed,e){me.set(ed.getContent());});this.editor.onSetContent.add(function(ed,e){me.set(ed.getContent());});var c=locals[cur_frm.doctype][cur_frm.docname][this.df.fieldname];if(cur_frm&&c){this.editor.setContent(c);}}
-_f.CodeField.prototype.set_disp=function(val){$y(this.disp_area,{width:'90%'})
-if(this.df.fieldtype=='Text Editor'){this.disp_area.innerHTML=val;}else{this.disp_area.innerHTML='<textarea class="code_text" readonly=1>'+val+'</textarea>';}}
-/*
- *	lib/js/legacy/widgets/form/grid.js
- */
-_f.cur_grid_cell=null;_f.Grid=function(parent){}
-_f.Grid.prototype.init=function(parent,row_height){var me=this;this.col_idx_by_name={}
-this.alt_row_bg='#F2F2FF';this.row_height=row_height;if(!row_height)this.row_height='26px';this.make_ui(parent);this.insert_column('','','Int','Sr','50px','',[1,0,0]);if(this.oninit)this.oninit();$(this.wrapper).bind('keydown',function(e){me.notify_keypress(e,e.which);})
-$(cur_frm.wrapper).bind('render_complete',function(){me.set_ht();});}
-_f.Grid.prototype.make_ui=function(parent){var ht=make_table($a(parent,'div'),1,2,'100%',['55%','45%']);this.main_title=$td(ht,0,0);this.main_title.className='columnHeading';$td(ht,0,1).style.textAlign='right';this.tbar_div=$a($td(ht,0,1),'div','grid_tbarlinks');this.tbar_tab=make_table(this.tbar_div,1,4,'100%',['25%','25%','25%','25%']);this.wrapper=$a(parent,'div','grid_wrapper round');this.head_wrapper=$a(this.wrapper,'div','grid_head_wrapper');this.head_tab=$a(this.head_wrapper,'table','grid_head_table');this.head_row=this.head_tab.insertRow(0);this.tab_wrapper=$a(this.wrapper,'div','grid_tab_wrapper');this.tab=$a(this.tab_wrapper,'table','grid_table');var me=this;this.wrapper.onscroll=function(){me.head_wrapper.style.top=me.wrapper.scrollTop+'px';}}
-_f.Grid.prototype.show=function(){if(this.can_edit&&this.field.df['default'].toLowerCase()!='no toolbar'){$ds(this.tbar_div);if(this.can_add_rows){$td(this.tbar_tab,0,0).style.display='table-cell';$td(this.tbar_tab,0,1).style.display='table-cell';}else{$td(this.tbar_tab,0,0).style.display='none';$td(this.tbar_tab,0,1).style.display='none';}}else{$dh(this.tbar_div);}
-$ds(this.wrapper);}
-_f.Grid.prototype.hide=function(){$dh(this.wrapper);$dh(this.tbar_div);}
-_f.Grid.prototype.insert_column=function(doctype,fieldname,fieldtype,label,width,options,perm,reqd){var idx=this.head_row.cells.length;if(!width)width='100px';if((width+'').slice(-2)!='px'){width=width+'px';}
-var col=this.head_row.insertCell(idx);col.doctype=doctype;col.fieldname=fieldname;col.fieldtype=fieldtype;col.innerHTML='<div data-grid-fieldname = "'+doctype+'-'+fieldname+'">'+label+'</div>';col.label=label;if(reqd)
-col.childNodes[0].style.color="#D22";col.style.width=width;col.options=options;col.perm=perm;this.col_idx_by_name[fieldname]=idx;}
-_f.Grid.prototype.reset_table_width=function(){var w=0;$.each(this.head_row.cells,function(i,cell){if((cell.style.display||'').toLowerCase()!='none')
-w+=cint(cell.style.width);})
-this.head_tab.style.width=w+'px';this.tab.style.width=w+'px';}
-_f.Grid.prototype.set_column_disp=function(fieldname,show){var cidx=this.col_idx_by_name[fieldname];if(!cidx){msgprint('Trying to hide unknown column: '+fieldname);return;}
-var disp=show?'table-cell':'none';this.head_row.cells[cidx].style.display=disp;for(var i=0,len=this.tab.rows.length;i<len;i++){var cell=this.tab.rows[i].cells[cidx];cell.style.display=disp;}
-this.reset_table_width();}
-_f.Grid.prototype.append_row=function(idx,docname){if(!idx)idx=this.tab.rows.length;var row=this.tab.insertRow(idx);row.docname=docname;if(idx%2)var odd=true;else var odd=false;var me=this;for(var i=0;i<this.head_row.cells.length;i++){var cell=row.insertCell(i);var hc=this.head_row.cells[i];cell.style.width=hc.style.width;cell.style.display=hc.style.display;cell.row=row;cell.grid=this;cell.className='grid_cell';cell.div=$a(cell,'div','grid_cell_div');if(this.row_height){cell.div.style.height=this.row_height;}
-cell.div.cell=cell;cell.div.onclick=function(e){me.cell_select(this.cell);}
-if(odd){$bg(cell,this.alt_row_bg);cell.is_odd=1;cell.div.style.border='2px solid '+this.alt_row_bg;}else $bg(cell,'#FFF');if(!hc.fieldname)cell.div.style.cursor='default';}
-this.set_ht();return row;}
-_f.Grid.prototype.refresh_cell=function(docname,fieldname){for(var r=0;r<this.tab.rows.length;r++){if(this.tab.rows[r].docname==docname){for(var c=0;c<this.head_row.cells.length;c++){var hc=this.head_row.cells[c];if(hc.fieldname==fieldname){this.set_cell_value(this.tab.rows[r].cells[c]);}}}}}
-_f.cur_grid;_f.cur_grid_ridx;_f.Grid.prototype.set_cell_value=function(cell){if(cell.row.is_newrow)return;var hc=this.head_row.cells[cell.cellIndex];if(hc.fieldname&&locals[hc.doctype][cell.row.docname]){var v=locals[hc.doctype][cell.row.docname][hc.fieldname];}else{var v=(cell.row.rowIndex+1);}
-if(v==null){v='';}
-var me=this;if(cell.cellIndex){var ft=hc.fieldtype;if(ft=='Link'&&cur_frm.doc.docstatus<1)ft='Data';$s(cell.div,v,ft,hc.options);}else{cell.div.style.padding='2px';cell.div.style.textAlign='left';cell.innerHTML='';var t=make_table(cell,1,3,'60px',['20px','20px','20px'],{verticalAlign:'middle',padding:'2px'});$y($td(t,0,0),{paddingLeft:'4px'});$td(t,0,0).innerHTML=cell.row.rowIndex+1;if(cur_frm.editable&&this.can_edit){var ed=$a($td(t,0,1),'i','icon-edit',{cursor:'pointer'});ed.cell=cell;ed.title='Edit Row';ed.onclick=function(){_f.cur_grid=me;_f.cur_grid_ridx=this.cell.row.rowIndex;_f.edit_record(me.doctype,this.cell.row.docname,1);}}else{cell.div.innerHTML=(cell.row.rowIndex+1);cell.div.style.cursor='default';cell.div.onclick=function(){}}}}
-$(document).bind('click',function(e){var me=this;var is_target_toolbar=function(){return $(e.target).parents('.grid_tbarlinks').length;}
-var is_target_input=function(){if(e.target.tagName.toLowerCase()=='option')return true;return $(e.target).parents().get().indexOf(_f.cur_grid_cell)!=-1;}
-if(_f.cur_grid_cell&&!is_target_input()&&!is_target_toolbar()){if(!(text_dialog&&text_dialog.display)&&!datepicker_active&&!(selector&&selector.display)){setTimeout('_f.cur_grid_cell.grid.cell_deselect()',500);return false;}}});_f.Grid.prototype.cell_deselect=function(){if(_f.cur_grid_cell){var c=_f.cur_grid_cell;c.grid.remove_template(c);c.div.className='grid_cell_div';if(c.is_odd)c.div.style.border='2px solid '+c.grid.alt_row_bg;else c.div.style.border='2px solid #FFF';_f.cur_grid_cell=null;}}
-_f.Grid.prototype.cell_select=function(cell,ri,ci){if(cell&&_f.cur_grid_cell==cell&&cell.hc)return;if(ri!=null&&ci!=null)
-cell=this.tab.rows[ri].cells[ci];var hc=this.head_row.cells[cell.cellIndex];if(!hc.template){this.make_template(hc);}
-hc.template.perm=this.field?this.field.perm:hc.perm;if(hc.fieldname&&hc.template.get_status()=='Write'){this.cell_deselect();cell.div.style.border='2px solid #88F';_f.cur_grid_cell=cell;this.add_template(cell);}}
-_f.Grid.prototype.add_template=function(cell){if(!cell.row.docname&&this.add_newrow){this.add_newrow();this.cell_select(cell);}else{var hc=this.head_row.cells[cell.cellIndex];cell.div.innerHTML='';cell.div.appendChild(hc.template.wrapper);hc.template.activate(cell.row.docname);hc.template.activated=1;cell.hc=hc;if(hc.template.input&&hc.template.input.set_width){hc.template.input.set_width($(cell).width());}}}
-_f.Grid.prototype.get_field=function(fieldname){for(var i=0;i<this.head_row.cells.length;i++){var hc=this.head_row.cells[i];if(hc.fieldname==fieldname){if(!hc.template){this.make_template(hc);}
-return hc.template;}}
-return{}}
-_f.grid_date_cell='';_f.grid_refresh_date=function(){_f.grid_date_cell.grid.set_cell_value(_f.grid_date_cell);}
-_f.grid_refresh_field=function(temp,input){if($(input).val()!=_f.get_value(temp.doctype,temp.docname,temp.df.fieldname))
-$(input).trigger('change');}
-_f.Grid.prototype.remove_template=function(cell){var hc=this.head_row.cells[cell.cellIndex];if(!hc.template)return;if(!hc.template.activated)return;if(hc.template&&hc.template.wrapper.parentNode)
-cell.div.removeChild(hc.template.wrapper);this.set_cell_value(cell);hc.template.activated=0;}
-_f.Grid.prototype.notify_keypress=function(e,keycode){if(keycode>=37&&keycode<=40&&e.shiftKey){if(text_dialog&&text_dialog.display){return;}}else
-return;if(!_f.cur_grid_cell)return;if(_f.cur_grid_cell.grid!=this)return;var ri=_f.cur_grid_cell.row.rowIndex;var ci=_f.cur_grid_cell.cellIndex;switch(keycode){case 38:if(ri>0){this.cell_select('',ri-1,ci);}break;case 40:if(ri<(this.tab.rows.length-1)){this.cell_select('',ri+1,ci);}break;case 39:if(ci<(this.head_row.cells.length-1)){this.cell_select('',ri,ci+1);}break;case 37:if(ci>1){this.cell_select('',ri,ci-1);}break;}}
-_f.Grid.prototype.make_template=function(hc){hc.template=make_field(wn.meta.get_docfield(hc.doctype,hc.fieldname),hc.doctype,'',this.field.frm,true);hc.template.grid=this;}
-_f.Grid.prototype.append_rows=function(n){for(var i=0;i<n;i++)this.append_row();}
-_f.Grid.prototype.truncate_rows=function(n){for(var i=0;i<n;i++)this.tab.deleteRow(this.tab.rows.length-1);}
-_f.Grid.prototype.set_data=function(data){this.cell_deselect();this.reset_table_width();if(data.length>this.tab.rows.length)
-this.append_rows(data.length-this.tab.rows.length);if(data.length<this.tab.rows.length)
-this.truncate_rows(this.tab.rows.length-data.length);for(var ridx=0;ridx<data.length;ridx++){this.refresh_row(ridx,data[ridx]);}
-if(this.can_add_rows&&this.make_newrow){this.make_newrow();}
-if(this.wrapper.onscroll)this.wrapper.onscroll();}
-_f.Grid.prototype.set_ht=function(){var max_ht=cint(0.37*screen.width);var ht=$(this.tab).height()+$(this.head_tab).height()+30;if(ht<100)
-ht=100;if(ht>max_ht)ht=max_ht;ht+=4;$y(this.wrapper,{height:ht+'px'});}
-_f.Grid.prototype.refresh_row=function(ridx,docname){var row=this.tab.rows[ridx];row.docname=docname;row.is_newrow=false;for(var cidx=0;cidx<row.cells.length;cidx++){this.set_cell_value(row.cells[cidx]);}}
-/*
- *	lib/js/legacy/widgets/form/form_grid.js
- */
-_f.FormGrid=function(field){this.field=field;this.doctype=field.df.options;if(!this.doctype){show_alert('No Options for table '+field.df.label);}
-this.col_break_width=cint(this.field.col_break_width);if(!this.col_break_width)this.col_break_width=100;$y(field.parent,{marginTop:'8px'});this.init(field.parent,field.df.width);this.setup();}
-_f.FormGrid.prototype=new _f.Grid();_f.FormGrid.prototype.setup=function(){this.make_columns();}
-_f.FormGrid.prototype.make_buttons=function(){var me=this;this.tbar_btns={};this.tbar_btns['Del']=this.make_tbar_link($td(this.tbar_tab,0,0),'Del',function(){me.delete_row();},'icon-remove-sign');this.tbar_btns['Ins']=this.make_tbar_link($td(this.tbar_tab,0,1),'Ins',function(){me.insert_row();},'icon-plus');this.tbar_btns['Up']=this.make_tbar_link($td(this.tbar_tab,0,2),'Up',function(){me.move_row(true);},'icon-arrow-up');this.tbar_btns['Dn']=this.make_tbar_link($td(this.tbar_tab,0,3),'Dn',function(){me.move_row(false);},'icon-arrow-down');for(var i in this.btns)
-this.btns[i].isactive=true;}
-_f.FormGrid.prototype.make_tbar_link=function(parent,label,fn,icon){var div=$a(parent,'div','',{cursor:'pointer'});var t=make_table(div,1,2,'90%',['20px',null]);var img=$a($td(t,0,0),'i',icon);$y($td(t,0,0),{textAlign:'right'});var l=$a($td(t,0,1),'span','link_type',{color:'#333'});l.style.fontSize='11px';l.innerHTML=label;div.onclick=fn;div.show=function(){$ds(this);}
-div.hide=function(){$dh(this);}
-$td(t,0,0).isactive=1;$td(t,0,1).isactive=1;l.isactive=1;div.isactive=1;img.isactive=1;return div;}
-_f.FormGrid.prototype.make_columns=function(){var gl=wn.meta.docfield_list[this.field.df.options];if(!gl){alert('Table details not found "'+this.field.df.options+'"');}
-gl.sort(function(a,b){return a.idx-b.idx});var p=this.field.perm;for(var i=0;i<gl.length;i++){if(p[this.field.df.permlevel]&&p[this.field.df.permlevel][READ]){this.insert_column(this.field.df.options,gl[i].fieldname,gl[i].fieldtype,gl[i].label,gl[i].width,gl[i].options,this.field.perm,gl[i].reqd);if(gl[i].hidden){this.set_column_disp(gl[i].fieldname,false);}}}}
-_f.FormGrid.prototype.set_column_label=function(fieldname,label){for(var i=0;i<this.head_row.cells.length;i++){var c=this.head_row.cells[i];if(c.fieldname==fieldname){c.innerHTML='<div class="grid_head_div">'+label+'</div>';c.cur_label=label;break;}}}
-_f.FormGrid.prototype.get_children=function(){return getchildren(this.doctype,this.field.frm.docname,this.field.df.fieldname,this.field.frm.doctype);}
-_f.FormGrid.prototype.refresh=function(){var docset=this.get_children();var data=[];for(var i=0;i<docset.length;i++){locals[this.doctype][docset[i].name].idx=i+1;data[data.length]=docset[i].name;}
-this.set_data(data);if(_f.frm_dialog&&_f.frm_dialog.dialog.display&&_f.frm_dialog.cur_frm){_f.frm_dialog.cur_frm.refresh();}}
-_f.FormGrid.prototype.set_unsaved=function(){cur_frm.set_unsaved();}
-_f.FormGrid.prototype.insert_row=function(){var d=this.new_row_doc();var ci=_f.cur_grid_cell.cellIndex;var row_idx=_f.cur_grid_cell.row.rowIndex;d.idx=row_idx+1;for(var ri=row_idx;ri<this.tab.rows.length;ri++){var r=this.tab.rows[ri];if(r.docname)
-locals[this.doctype][r.docname].idx++;}
-this.refresh();this.cell_select('',row_idx,ci);}
-_f.FormGrid.prototype.new_row_doc=function(){var n=LocalDB.create(this.doctype);var d=locals[this.doctype][n];d.parent=this.field.frm.docname;d.parentfield=this.field.df.fieldname;d.parenttype=this.field.frm.doctype;this.set_unsaved();return d;}
-_f.FormGrid.prototype.add_newrow=function(){var r=this.tab.rows[this.tab.rows.length-1];if(!r.is_newrow)
-show_alert('fn: add_newrow: Adding a row which is not flagged as new');var d=this.new_row_doc();d.idx=r.rowIndex+1;r.docname=d.name;r.is_newrow=false;this.set_cell_value(r.cells[0]);this.make_newrow();this.refresh_row(r.rowIndex,d.name);if(this.onrowadd)this.onrowadd(cur_frm.doc,d.doctype,d.name);return d.name;}
-_f.FormGrid.prototype.make_newrow=function(from_add_btn){if(!this.can_add_rows)
-return;if(this.tab.rows.length){var r=this.tab.rows[this.tab.rows.length-1];if(r.is_newrow)
-return;}
-var r=this.append_row();r.cells[0].div.innerHTML='<b style="font-size: 18px;">*</b>';r.is_newrow=true;}
-_f.FormGrid.prototype.check_selected=function(){if(!_f.cur_grid_cell){show_alert('Select a cell first');return false;}
-if(_f.cur_grid_cell.grid!=this){show_alert('Select a cell first');return false;}
-return true;}
-_f.FormGrid.prototype.delete_row=function(dt,dn){if(dt&&dn){LocalDB.delete_record(dt,dn);this.refresh();}else{if(!this.check_selected())return;var r=_f.cur_grid_cell.row;if(r.is_newrow)return;var ci=_f.cur_grid_cell.cellIndex;var ri=_f.cur_grid_cell.row.rowIndex;LocalDB.delete_record(this.doctype,r.docname);this.refresh();if(ri<(this.tab.rows.length-1))
-this.cell_select(null,ri,ci);else _f.cur_grid_cell=null;}
-this.set_unsaved();}
-_f.FormGrid.prototype.move_row=function(up){if(!this.check_selected())return;var r=_f.cur_grid_cell.row;if(r.is_newrow)return;if(up&&r.rowIndex>0){var swap_row=this.tab.rows[r.rowIndex-1];}else if(!up){var len=this.tab.rows.length;if(this.tab.rows[len-1].is_newrow)
-len=len-1;if(r.rowIndex<(len-1))
-var swap_row=this.tab.rows[r.rowIndex+1];}
-if(swap_row){var cidx=_f.cur_grid_cell.cellIndex;this.cell_deselect();var aidx=locals[this.doctype][r.docname].idx;locals[this.doctype][r.docname].idx=locals[this.doctype][swap_row.docname].idx;locals[this.doctype][swap_row.docname].idx=aidx;var adocname=swap_row.docname;this.refresh_row(swap_row.rowIndex,r.docname);this.refresh_row(r.rowIndex,adocname);this.cell_select(this.tab.rows[swap_row.rowIndex].cells[cidx]);this.set_unsaved();}}
-/*
- *	lib/js/legacy/widgets/form/print_format.js
- */
-_p.def_print_style_body="html, body, div, span, td { font-family: Arial, Helvetica; font-size: 12px; }"+"\npre { margin:0; padding:0;}"
-_p.def_print_style_other="\n.simpletable, .noborder { border-collapse: collapse; margin-bottom: 10px;}"
-+"\n.simpletable td {border: 1pt solid #000; vertical-align: top; padding: 2px; }"
-+"\n.noborder td { vertical-align: top; }"
-_p.go=function(html){var d=document.createElement('div')
-d.innerHTML=html
-$(d).printElement();}
-_p.preview=function(html){var w=window.open('');if(!w)return;w.document.write(html)
-w.document.close();}
-$.extend(_p,{show_dialog:function(){if(!_p.dialog){_p.make_dialog();}
-_p.dialog.show();},make_dialog:function(){var d=new Dialog(360,140,'Print Formats',[['HTML','Select'],['Check','No Letterhead'],['HTML','Buttons']]);$btn(d.widgets.Buttons,'Print',function(){_p.build(sel_val(cur_frm.print_sel),_p.go,d.widgets['No Letterhead'].checked);},{cssFloat:'right',marginBottom:'16px',marginLeft:'7px'},'green');$btn(d.widgets.Buttons,'Preview',function(){_p.build(sel_val(cur_frm.print_sel),_p.preview,d.widgets['No Letterhead'].checked);},{cssFloat:'right',marginBottom:'16px'},'');d.onshow=function(){var c=_p.dialog.widgets['Select'];if(c.cur_sel&&c.cur_sel.parentNode==c){c.removeChild(c.cur_sel);}
-c.appendChild(cur_frm.print_sel);c.cur_sel=cur_frm.print_sel;}
-_p.dialog=d;},formats:{},build:function(fmtname,onload,no_letterhead,only_body){args={fmtname:fmtname,onload:onload,no_letterhead:no_letterhead,only_body:only_body};if(!cur_frm){alert('No Document Selected');return;}
-var doc=locals[cur_frm.doctype][cur_frm.docname];if(args.fmtname=='Standard'){args.onload(_p.render({body:_p.print_std(args.no_letterhead),style:_p.print_style,doc:doc,title:doc.name,no_letterhead:args.no_letterhead,only_body:args.only_body}));}else{if(!_p.formats[args.fmtname]){var build_args=args;$c(command='webnotes.widgets.form.print_format.get',args={'name':build_args.fmtname},fn=function(r,rt){_p.formats[build_args.fmtname]=r.message;build_args.onload(_p.render({body:_p.formats[build_args.fmtname],style:'',doc:doc,title:doc.name,no_letterhead:build_args.no_letterhead,only_body:build_args.only_body}));});}else{args.onload(_p.render({body:_p.formats[args.fmtname],style:'',doc:doc,title:doc.name,no_letterhead:args.no_letterhead,only_body:args.only_body}));}}},render:function(args){var container=document.createElement('div');var stat='';stat+=_p.show_draft(args);stat+=_p.show_archived(args);stat+=_p.show_cancelled(args);container.innerHTML=args.body;_p.show_letterhead(container,args);_p.run_embedded_js(container,args.doc);var style=_p.consolidate_css(container,args);_p.render_header_on_break(container,args);return _p.render_final(style,stat,container,args);},head_banner_format:function(){return"\
-   <div style = '\
-     text-align: center; \
-     padding: 8px; \
-     background-color: #CCC;'> \
-    <div style = '\
-      font-size: 20px; \
-      font-weight: bold;'>\
-     {{HEAD}}\
-    </div>\
-    {{DESCRIPTION}}\
-   </div>"},show_draft:function(args){var is_doctype_submittable=0;var plist=locals['DocPerm'];for(var perm in plist){var p=plist[perm];if((p.parent==args.doc.doctype)&&(p.submit==1)){is_doctype_submittable=1;break;}}
-if(args.doc&&cint(args.doc.docstatus)==0&&is_doctype_submittable){draft=_p.head_banner_format();draft=draft.replace("{{HEAD}}","DRAFT");draft=draft.replace("{{DESCRIPTION}}","This box will go away after the document is submitted.");return draft;}else{return"";}},show_archived:function(args){if(args.doc&&args.doc.__archived){archived=_p.head_banner_format();archived=archived.replace("{{HEAD}}","ARCHIVED");archived=archived.replace("{{DESCRIPTION}}","You must restore this document to make it editable.");return archived;}else{return"";}},show_cancelled:function(args){if(args.doc&&args.doc.docstatus==2){cancelled=_p.head_banner_format();cancelled=cancelled.replace("{{HEAD}}","CANCELLED");cancelled=cancelled.replace("{{DESCRIPTION}}","You must amend this document to make it editable.");return cancelled;}else{return"";}},consolidate_css:function(container,args){var body_style='';var style_list=container.getElementsByTagName('style');while(style_list&&style_list.length>0){for(i in style_list){if(style_list[i]&&style_list[i].innerHTML){body_style+=style_list[i].innerHTML;var parent=style_list[i].parentNode;if(parent){parent.removeChild(style_list[i]);}else{container.removeChild(style_list[i]);}}}
-style_list=container.getElementsByTagName('style');}
-style_concat=(args.only_body?'':_p.def_print_style_body)
-+_p.def_print_style_other+args.style+body_style;return style_concat;},run_embedded_js:function(container,doc){var jslist=container.getElementsByTagName('script');while(jslist&&jslist.length>0){for(i in jslist){if(jslist[i]&&jslist[i].innerHTML){var code=jslist[i].innerHTML;var parent=jslist[i].parentNode;var span=$a(parent,'span');parent.replaceChild(span,jslist[i]);var val=code?eval(code):'';if(!val||typeof(val)=='object'){val='';}
-span.innerHTML=val;}}
-jslist=container.getElementsByTagName('script');}},show_letterhead:function(container,args){if(!(args.no_letterhead||args.only_body)){container.innerHTML='<div>'+_p.get_letter_head()+'</div>'
-+container.innerHTML;}},render_header_on_break:function(container,args){var page_set=container.getElementsByClassName('page-settings');if(page_set.length){for(var i=0;i<page_set.length;i++){var tmp='';tmp+=_p.show_draft(args);tmp+=_p.show_archived(args);_p.show_letterhead(page_set[i],args);page_set[i].innerHTML=tmp+page_set[i].innerHTML;}}},render_final:function(style,stat,container,args){var header='<div class="page-settings">\n';var footer='\n</div>';if(!args.only_body){header='<!DOCTYPE html>\n\
-     <html>\
-      <head>\
-       <title>'+args.title+'</title>\
-       <style>'+style+'</style>\
-      </head>\
-      <body>\n'+header;footer=footer+'\n</body>\n\
-     </html>';}
-var finished=header
-+stat
-+container.innerHTML.replace(/<div/g,'\n<div').replace(/<td/g,'\n<td')
-+footer;return finished;},get_letter_head:function(){var cp=wn.control_panel;var lh='';if(cur_frm.doc.letter_head){lh=cstr(wn.boot.letter_heads[cur_frm.doc.letter_head]);}else if(cp.letter_head){lh=cp.letter_head;}
-return lh;},print_style:"\
-  .datalabelcell { \
-   padding: 2px 0px; \
-   width: 38%; \
-   vertical-align: top; \
-   } \
-  .datainputcell { \
-   padding: 2px 0px; \
-   width: 62%; \
-   text-align: left; \
-   }\
-  .sectionHeading { \
-   font-size: 16px; \
-   font-weight: bold; \
-   margin: 8px 0px; \
-   } \
-  .columnHeading { \
-   font-size: 14px; \
-   font-weight: bold; \
-   margin: 8px 0px; \
-   }",print_std:function(no_letterhead){var docname=cur_frm.docname;var doctype=cur_frm.doctype;var data=getchildren('DocField',doctype,'fields','DocType');var layout=_p.add_layout(doctype);this.pf_list=[layout];var me=this;me.layout=layout;$.extend(this,{build_head:function(data,doctype,docname){var h1_style={fontSize:'22px',marginBottom:'8px'}
-var h1=$a(me.layout.cur_row.header,'h1','',h1_style);if(cur_frm.pformat[docname]){h1.innerHTML=cur_frm.pformat[docname];}else{var val=null;for(var i=0;i<data.length;i++){if(data[i].fieldname==='select_print_heading'){val=_f.get_value(doctype,docname,data[i].fieldname);break;}}
-h1.innerHTML=val?val:get_doctype_label(doctype);}
-var h2_style={fontSize:'16px',color:'#888',marginBottom:'8px',paddingBottom:'8px',borderBottom:(me.layout.with_border?'0px':'1px solid #000')}
-var h2=$a(me.layout.cur_row.header,'div','',h2_style);h2.innerHTML=docname;},build_data:function(data,doctype,docname){if(data[0]&&data[0].fieldtype!="Section Break"){me.layout.addrow();if(data[0].fieldtype!="Column Break"){me.layout.addcell();}}
-$.extend(this,{generate_custom_html:function(field,doctype,docname){var container=$a(me.layout.cur_cell,'div');container.innerHTML=cur_frm.pformat[field.fieldname](locals[doctype][docname]);},render_normal:function(field,data,i){switch(field.fieldtype){case'Section Break':me.layout.addrow();if(data[i+1]&&data[i+1].fieldtype!='Column Break'){me.layout.addcell();}
-break;case'Column Break':me.layout.addcell(field.width,field.label);break;case'Table':var table=print_table(doctype,docname,field.fieldname,field.options,null,null,null,null);me.layout=_p.print_std_add_table(table,me.layout,me.pf_list,doctype,no_letterhead);break;case'HTML':var div=$a(me.layout.cur_cell,'div');div.innerHTML=field.options;break;case'Code':var div=$a(me.layout.cur_cell,'div');var val=_f.get_value(doctype,docname,field.fieldname);div.innerHTML='<div>'+field.label+': </div><pre style="font-family: Courier, Fixed;">'+(val?val:'')+'</pre>';break;case'Text Editor':var div=$a(me.layout.cur_cell,'div');var val=_f.get_value(doctype,docname,field.fieldname);div.innerHTML=val?val:'';break;default:_p.print_std_add_field(doctype,docname,field,me.layout);break;}}});for(var i=0;i<data.length;i++){var fieldname=data[i].fieldname?data[i].fieldname:data[i].label;var field=fieldname?wn.meta.get_docfield(doctype,fieldname,docname):data[i];if(!field.print_hide){if(cur_frm.pformat[field.fieldname]){this.generate_custom_html(field,doctype,docname);}else{this.render_normal(field,data,i);}}}
-me.layout.close_borders();},build_html:function(){var html='';for(var i=0;i<me.pf_list.length;i++){if(me.pf_list[i].wrapper){html+=me.pf_list[i].wrapper.innerHTML;}else if(me.pf_list[i].innerHTML){html+=me.pf_list[i].innerHTML;}else{html+=me.pf_list[i];}}
-this.pf_list=[];return html;}});this.build_head(data,doctype,docname);this.build_data(data,doctype,docname);var html=this.build_html();return html;},add_layout:function(doctype){var layout=new Layout();layout.addrow();if(locals['DocType'][doctype].print_outline=='Yes'){layout.with_border=1}
-return layout;},print_std_add_table:function(t,layout,pf_list,dt,no_letterhead){if(t.appendChild){layout.cur_cell.appendChild(t);}else{page_break='\n\
-    <div style = "page-break-after: always;" \
-    class = "page_break"></div><div class="page-settings"></div>';for(var i=0;i<t.length-1;i++){layout.cur_cell.appendChild(t[i]);layout.close_borders();pf_list.push(page_break);layout=_p.add_layout(dt,no_letterhead);pf_list.push(layout);layout.addrow();layout.addcell();var div=$a(layout.cur_cell,'div');div.innerHTML='Continued from previous page...';div.style.padding='4px';}
-layout.cur_cell.appendChild(t[t.length-1]);}
-return layout;},print_std_add_field:function(dt,dn,f,layout){var val=_f.get_value(dt,dn,f.fieldname);if(f.fieldtype!='Button'){if(val||in_list(['Float','Int','Currency'],f.fieldtype)){row=_p.field_tab(layout.cur_cell);row.cells[0].innerHTML=f.label?f.label:f.fieldname;$s(row.cells[1],val,f.fieldtype);if(f.fieldtype=='Currency'){$y(row.cells[1],{textAlign:'left'});}}}},field_tab:function(layout_cell){var tab=$a(layout_cell,'table','',{width:'100%'});var row=tab.insertRow(0);_p.row=row;row.insertCell(0);row.insertCell(1);row.cells[0].className='datalabelcell';row.cells[1].className='datainputcell';return row;}});print_table=function(dt,dn,fieldname,tabletype,cols,head_labels,widths,condition,cssClass,modifier,hide_empty){var me=this;$.extend(this,{flist:(function(){var f_list=[];var fl=wn.meta.docfield_list[tabletype];if(fl){for(var i=0;i<fl.length;i++){f_list.push(copy_dict(fl[i]));}}
-return f_list;})(),data:function(){var children=getchildren(tabletype,dn,fieldname,dt);var data=[]
-for(var i=0;i<children.length;i++){data.push(copy_dict(children[i]));}
-return data;}(),cell_style:{border:'1px solid #000',padding:'2px',verticalAlign:'top'},head_cell_style:{border:'1px solid #000',padding:'2px',verticalAlign:'top',backgroundColor:'#ddd',fontWeight:'bold'},table_style:{width:'100%',borderCollapse:'collapse',marginBottom:'10px'},remove_empty_cols:function(flist){var non_empty_cols=[]
-for(var i=0;i<me.data.length;i++){for(var c=0;c<flist.length;c++){if(flist[c].print_hide||!inList(['',null],me.data[i][flist[c].fieldname])){if(!inList(non_empty_cols,flist[c])){non_empty_cols.push(flist[c]);}}}}
-for(var c=0;c<flist.length;c++){if(!inList(non_empty_cols,flist[c])){flist.splice(c,1);c=c-1;}}},prepare_col_heads:function(flist){var new_flist=[];if(!cols||(cols&&cols.length&&hide_empty)){me.remove_empty_cols(flist);}
-if(cols&&cols.length){if(cols[0]=='SR'){new_flist.push('SR')}
-for(var i=0;i<cols.length;i++){for(var j=0;j<flist.length;j++){if(flist[j].fieldname==cols[i]){new_flist.push(flist[j]);break;}}}}else{new_flist.push('SR');for(var i=0;i<flist.length;i++){if(!flist[i].print_hide){new_flist.push(flist[i]);}}}
-me.flist=new_flist;},make_print_table:function(flist){var wrapper=document.createElement('div');var table=$a(wrapper,'table','',me.table_style);table.wrapper=wrapper;table.insertRow(0);var col_start=0;if(flist[0]=='SR'){var cell=table.rows[0].insertCell(0);cell.innerHTML=head_labels?head_labels[0]:'<b>SR</b>';$y(cell,{width:'30px'});$y(cell,me.head_cell_style);col_start++;}
-for(var c=col_start;c<flist.length;c++){var cell=table.rows[0].insertCell(c);$y(cell,me.head_cell_style);cell.innerHTML=head_labels?head_labels[c]:flist[c].label;if(flist[c].width){$y(cell,{width:flist[c].width});}
-if(widths){$y(cell,{width:widths[c]});}
-if(in_list(['Currency','Float'],flist[c].fieldtype)){$y(cell,{textAlign:'right'});}}
-return table;},populate_table:function(table,data){for(var r=0;r<data.length;r++){if((!condition)||(condition(data[r]))){if(data[r].page_break){table=me.make_print_table(me.flist);me.table_list.push(table.wrapper);}
-var row=table.insertRow(table.rows.length);if(me.flist[0]=='SR'){var cell=row.insertCell(0);cell.innerHTML=r+1;$y(cell,me.cell_style);}
-for(var c=me.flist.indexOf('SR')+1;c<me.flist.length;c++){var cell=row.insertCell(c);$y(cell,me.cell_style);if(modifier&&me.flist[c].fieldname in modifier){data[r][me.flist[c].fieldname]=modifier[me.flist[c].fieldname](data[r]);}
-$s(cell,data[r][me.flist[c].fieldname],me.flist[c].fieldtype);if(in_list(['Currency','Float'],me.flist[c].fieldtype)){cell.style.textAlign='right';}}}}}});if(!this.data.length){return document.createElement('div');}
-this.prepare_col_heads(this.flist);var table=me.make_print_table(this.flist);this.table_list=[table.wrapper];this.populate_table(table,this.data);return(me.table_list.length>1)?me.table_list:me.table_list[0];}
-/*
- *	lib/js/legacy/widgets/form/email.js
- */
-_e.email_as_field='email_id';_e.email_as_dt='Contact';_e.email_as_in='email_id,contact_name';sendmail=function(emailto,emailfrom,cc,subject,message,fmt,with_attachments){var fn=function(html){$c('webnotes.utils.email_lib.send_form',{'sendto':emailto,'sendfrom':emailfrom?emailfrom:'','cc':cc?cc:'','subject':subject,'message':replace_newlines(message),'body':html,'full_domain':wn.urllib.get_base_url(),'with_attachments':with_attachments?1:0,'dt':cur_frm.doctype,'dn':cur_frm.docname,'customer':cur_frm.doc.customer||'','supplier':cur_frm.doc.supplier||''},function(r,rtxt){});}
-_p.build(fmt,fn);}
-_e.make=function(){var d=new Dialog(440,440,"Send Email");var email_go=function(){var emailfrom=d.widgets['From'].value;var emailto=d.widgets['To'].value;if(!emailfrom)
-emailfrom=user_email;emailto=emailto.replace(/ /g,"");var email_list=emailto.split(/[,|;]/);var valid=1;for(var i=0;i<email_list.length;i++){if(!email_list[i]){email_list.splice(i,1);}else if(!validate_email(email_list[i])){msgprint('error:'+email_list[i]+' is not a valid email id');valid=0;}}
-emailto=email_list.join(",");if(emailfrom&&!validate_email(emailfrom)){msgprint('error:'+emailfrom+' is not a valid email id. To change the default please click on Profile on the top right of the screen and change it.');return;}
-if(!valid)return;var cc=emailfrom;if(!emailfrom){emailfrom=wn.control_panel.auto_email_id;cc='';}
-sendmail(emailto,emailfrom,emailfrom,d.widgets['Subject'].value,d.widgets['Message'].value,sel_val(cur_frm.print_sel),d.widgets['Send With Attachments'].checked);_e.dialog.hide();}
-d.onhide=function(){}
-d.make_body([['Data','To','Example: abc@hotmail.com, xyz@yahoo.com'],['Select','Format'],['Data','Subject'],['Data','From','Optional'],['Check','Send With Attachments','Will send all attached documents (if any)'],['Text','Message'],['Button','Send',email_go]]);d.widgets['From'].value=(user_email?user_email:'');$td(d.rows['Format'].tab,0,1).cur_sel=d.widgets['Format'];function split(val){return val.split(/,\s*/);}
-function extractLast(term){return split(term).pop();}
-$(d.widgets['To']).bind("keydown",function(event){if(event.keyCode===$.ui.keyCode.TAB&&$(this).data("autocomplete").menu.active){event.preventDefault();}}).autocomplete({source:function(request,response){wn.call({method:'webnotes.utils.email_lib.get_contact_list',args:{'select':_e.email_as_field,'from':_e.email_as_dt,'where':_e.email_as_in,'txt':extractLast(request.term).value||'%'},callback:function(r){response($.ui.autocomplete.filter(r.cl||[],extractLast(request.term)));}});},focus:function(){return false;},select:function(event,ui){var terms=split(this.value);terms.pop();terms.push(ui.item.value);terms.push("");this.value=terms.join(", ");return false;}});_e.dialog=d;}
-/*
- *	lib/js/legacy/widgets/form/clientscriptAPI.js
- */
-$c_get_values=function(args,doc,dt,dn,user_callback){var call_back=function(r,rt){if(!r.message)return;if(user_callback)user_callback(r.message);var fl=args.fields.split(',');for(var i in fl){locals[dt][dn][fl[i]]=r.message[fl[i]];if(args.table_field)
-refresh_field(fl[i],dn,args.table_field);else
-refresh_field(fl[i]);}}
-$c('webnotes.widgets.form.utils.get_fields',args,call_back);}
-get_server_fields=function(method,arg,table_field,doc,dt,dn,allow_edit,call_back){if(!allow_edit)freeze('Fetching Data...');$c('runserverobj',args={'method':method,'docs':compress_doclist(make_doclist(doc.doctype,doc.name)),'arg':arg},function(r,rt){if(r.message){var d=locals[dt][dn];var field_dict=r.message;for(var key in field_dict){d[key]=field_dict[key];if(table_field)refresh_field(key,d.name,table_field);else refresh_field(key);}}
-if(call_back){doc=locals[doc.doctype][doc.name];call_back(doc,dt,dn);}
-if(!allow_edit)unfreeze();});}
-set_multiple=function(dt,dn,dict,table_field){var d=locals[dt][dn];for(var key in dict){d[key]=dict[key];if(table_field)refresh_field(key,d.name,table_field);else refresh_field(key);}}
-refresh_many=function(flist,dn,table_field){for(var i in flist){if(table_field)refresh_field(flist[i],dn,table_field);else refresh_field(flist[i]);}}
-set_field_tip=function(n,txt){var df=wn.meta.get_docfield(cur_frm.doctype,n,cur_frm.docname);if(df)df.description=txt;if(cur_frm&&cur_frm.fields_dict){if(cur_frm.fields_dict[n])
-cur_frm.fields_dict[n].comment_area.innerHTML=replace_newlines(txt);else
-console.log('[set_field_tip] Unable to set field tip: '+n);}}
-refresh_field=function(n,docname,table_field){if(typeof n==typeof[])refresh_many(n,docname,table_field);if(table_field){if(_f.frm_dialog&&_f.frm_dialog.display){_f.frm_dialog.cur_frm.refresh_field(n);}else{var g=_f.cur_grid_cell;if(g)var hc=g.grid.head_row.cells[g.cellIndex];if(g&&hc&&hc.fieldname==n&&g.row.docname==docname){hc.template.refresh();}else{cur_frm.fields_dict[table_field].grid.refresh_cell(docname,n);}}}else if(cur_frm){cur_frm.refresh_field(n)}}
-set_field_options=function(n,txt){cur_frm.set_df_property(n,'options',txt)}
-set_field_permlevel=function(n,level){cur_frm.set_df_property(n,'permlevel',level)}
-toggle_field=function(n,hidden){var df=Meta.get_field(cur_frm.doctype,n,cur_frm.docname);if(df){df.hidden=hidden;refresh_field(n);}
-else{console.log((hidden?"hide_field":"unhide_field")+" cannot find field "+n);}}
-hide_field=function(n){if(cur_frm){if(n.substr)toggle_field(n,1);else{for(var i in n)toggle_field(n[i],1)}}}
-unhide_field=function(n){if(cur_frm){if(n.substr)toggle_field(n,0);else{for(var i in n)toggle_field(n[i],0)}}}
-get_field_obj=function(fn){return cur_frm.fields_dict[fn];}
-set_missing_values=function(doc,dict){var fields_to_set={};$.each(dict,function(i,v){if(!doc[i]){fields_to_set[i]=v;}});if(fields_to_set){set_multiple(doc.doctype,doc.name,fields_to_set);}}
-/*
- *	lib/js/legacy/widgets/form/form_comments.js
- */
-wn.widgets.form.comments={n_comments:{},comment_list:{},sync:function(dt,dn,r){var f=wn.widgets.form.comments;f.n_comments[dn]=r.n_comments;f.comment_list[dn]=r.comment_list;},add:function(input,dt,dn,callback){$c('webnotes.widgets.form.comments.add_comment',wn.widgets.form.comments.get_args(input,dt,dn),function(r,rt){wn.widgets.form.comments.update_comment_list(input,dt,dn);input.value='';callback(input,dt,dn);});},remove:function(dt,dn,comment_id,callback){$c('webnotes.widgets.form.comments.remove_comment',{id:comment_id,dt:dt,dn:dn},callback);},get_args:function(input,dt,dn){return{comment:input.value,comment_by:user,comment_by_fullname:user_fullname,comment_doctype:dt,comment_docname:dn}},update_comment_list:function(input,dt,dn){var f=wn.widgets.form.comments;f.n_comments[dn]=cint(f.n_comments[dn])+1;f.comment_list[dn]=add_lists([f.get_args(input,dt,dn)],f.comment_list[dn]);}}
-CommentList=function(parent,dt,dn){this.wrapper=$a(parent,'div','',{margin:'16px'});this.input_area=$a(this.wrapper,'div','',{margin:'2px'});this.lst_area=$a(this.wrapper,'div','',{margin:'2px'});this.make_input();this.make_lst();this.dt;this.dn;}
-CommentList.prototype.run=function(){this.lst.run();}
-CommentList.prototype.make_input=function(){var me=this;this.input=$a(this.input_area,'textarea','',{height:'60px',width:'300px',fontSize:'14px'});this.btn=$btn($a(this.input_area,'div'),'Post',function(){me.add_comment();},{marginTop:'8px'});}
-CommentList.prototype.add_comment=function(){var me=this;var callback=function(input,dt,dn){me.lst.run();}
-wn.widgets.form.comments.add(this.input,cur_frm.docname,cur_frm.doctype,callback)}
-CommentList.prototype.make_lst=function(){if(!this.lst){wn.require('js/listing.js');var l=new Listing('Comments',1);var me=this;l.colwidths=['100%'];l.opts.hide_export=1;l.opts.hide_print=1;l.opts.hide_refresh=1;l.opts.no_border=1;l.opts.hide_rec_label=0;l.opts.show_calc=0;l.opts.round_corners=0;l.opts.alt_cell_style={};l.opts.cell_style={padding:'3px'};l.no_rec_message='No comments yet. Be the first one to comment!';l.get_query=function(){this.query=repl("select t1.name, t1.comment, t1.comment_by, '', \
-   t1.creation, t1.comment_doctype, t1.comment_docname, \
-   ifnull(concat_ws(' ',ifnull(t2.first_name,''),ifnull(t2.middle_name,''),\
-   ifnull(t2.last_name,'')),''), '', \
-   DAYOFMONTH(t1.creation), MONTHNAME(t1.creation), YEAR(t1.creation), \
-   hour(t1.creation), minute(t1.creation), second(t1.creation) \
-   from `tabComment` t1, `tabProfile` t2 \
-   where t1.comment_doctype = '%(dt)s' and t1.comment_docname = '%(dn)s' \
-   and t1.comment_by = t2.name order by t1.creation desc",{dt:me.dt,dn:me.dn});this.query_max=repl("select count(name) from `tabComment` where \
-  comment_doctype='%(dt)s' and comment_docname='%(dn)s'",{'dt':me.dt,'dn':me.dn});}
-l.show_cell=function(cell,ri,ci,d){new CommentItem(cell,ri,ci,d,me)}
-this.lst=l;this.lst.make(this.lst_area);}}
-CommentItem=function(cell,ri,ci,d,comment){this.comment=comment;$y(cell,{padding:'4px 0px'})
-var t=make_table(cell,1,3,'100%',['15%','65%','20%'],{padding:'4px'});this.img=$a($td(t,0,0),'img','',{width:'40px'});this.cmt_by=$a($td(t,0,0),'div');this.set_picture(d,ri);this.cmt_dtl=$a($td(t,0,1),'div','comment',{fontSize:'11px'});this.cmt=$a($td(t,0,1),'div','',{fontSize:'14px'});this.show_cmt($td(t,0,1),ri,ci,d);this.cmt_delete($td(t,0,2),ri,ci,d);}
-CommentItem.prototype.set_picture=function(d,ri){this.user.src=wn.user_info(d[ri][2]).image;this.cmt_by.innerHTML=d[ri][7]?d[ri][7]:d[ri][2];}
-CommentItem.prototype.show_cmt=function(cell,ri,ci,d){if(d[ri][4]){hr=d[ri][12];min=d[ri][13];sec=d[ri][14];if(parseInt(hr)>12){time=(parseInt(hr)-12)+':'+min+' PM'}
-else{time=hr+':'+min+' AM'}}
-this.cmt_dtl.innerHTML='On '+d[ri][10].substring(0,3)+' '+d[ri][9]+', '+d[ri][11]+' at '+time;this.cmt.innerHTML=replace_newlines(d[ri][1]);}
-CommentItem.prototype.cmt_delete=function(cell,ri,ci,d){var me=this;if(d[ri][2]==user||d[ri][3]==user){del=$a(cell,'i','icon-remove-sign',{cursor:'pointer'});del.cmt_id=d[ri][0];del.onclick=function(){wn.widgets.form.comments.remove(cur_frm.doctype,cur_frm.docname,this.cmt_id,function(){me.comment.lst.run();})}}}
-/*
- *	lib/js/legacy/wn/widgets/form/sidebar.js
- */
-wn.widgets.form.sidebar={Sidebar:function(form){var me=this;this.form=form;this.opts={sections:[{title:'Actions',items:[{type:'link',label:'New',icon:'icon-plus',display:function(){return in_list(profile.can_create,form.doctype)},onclick:function(){new_doc(me.form.doctype)}},{type:'link',label:'List',icon:'icon-list',display:function(){return!me.form.meta.issingle&&!me.form.meta.read_only;},onclick:function(){window.location.href="#!List/"+me.form.doctype}},{type:'link',label:'Refresh',icon:'icon-refresh',onclick:function(){me.form.reload_doc()}},{type:'link',label:'Print',display:function(){return!(me.form.doc.__islocal||me.form.meta.allow_print);},icon:'icon-print',onclick:function(){me.form.print_doc()}},{type:'link',label:'Email',display:function(){return!(me.form.doc.__islocal||me.form.meta.allow_email);},icon:'icon-envelope',onclick:function(){me.form.email_doc()}},{type:'link',label:'Copy',display:function(){return in_list(profile.can_create,me.form.doctype)&&!me.form.meta.allow_copy},icon:'icon-file',onclick:function(){me.form.copy_doc()}},{type:'link',label:'Delete',display:function(){return(cint(me.form.doc.docstatus)!=1)&&!me.form.doc.__islocal&&wn.model.can_delete(me.form.doctype);},icon:'icon-remove-sign',onclick:function(){me.form.savetrash()}}],display:function(){return me.form.meta.hide_toolbar?false:true;}},{title:'Assign To',render:function(wrapper){me.form.assign_to=new wn.widgets.form.sidebar.AssignTo(wrapper,me,me.form.doctype,me.form.docname);},display:function(){return!me.form.doc.__islocal}},{title:'Attachments',render:function(wrapper){me.form.attachments=new wn.widgets.form.sidebar.Attachments(wrapper,me,me.form.doctype,me.form.docname);},display:function(){return me.form.meta.allow_attach}},{title:'Comments',render:function(wrapper){new wn.widgets.form.sidebar.Comments(wrapper,me,me.form.doctype,me.form.docname);},display:function(){return!me.form.doc.__islocal}},{title:'Tags',render:function(wrapper){me.form.taglist=new TagList(wrapper,me.form.doc._user_tags?me.form.doc._user_tags.split(','):[],me.form.doctype,me.form.docname,0,function(){});},display:function(){return!me.form.doc.__islocal}},{title:'Users',render:function(wrapper){var doc=cur_frm.doc;var scrub_date=function(d){if(d)t=d.split(' ');else return'';return dateutil.str_to_user(t[0])+' '+t[1];}
-$(wrapper).html(repl('<p>Created:<br> <span class="avatar-small">\
-       <img title="%(created_by)s" src="%(avatar_created)s" /></span> \
-       <span class="help small">%(creation)s</span></p>\
-       <p>Modified:<br> <span class="avatar-small">\
-       <img title="%(modified_by)s" src="%(avatar_modified)s" /></span> \
-       <span class="help small">%(modified)s</span></p>',{created_by:wn.user_info(doc.owner).fullname,avatar_created:wn.user_info(doc.owner).image,creation:scrub_date(doc.creation),modified_by:wn.user_info(doc.modified_by).fullname,avatar_modified:wn.user_info(doc.modified_by).image,modified:scrub_date(doc.modified)}));},display:function(){return!me.form.doc.__islocal}}]}
-this.refresh=function(){var parent=this.form.page_layout.sidebar_area;if(!this.sidebar){this.sidebar=new wn.widgets.PageSidebar(parent,this.opts);}else{this.sidebar.refresh();}}}}
-/*
- *	lib/js/legacy/wn/widgets/form/comments.js
- */
-wn.widgets.form.sidebar.Comments=function(parent,sidebar,doctype,docname){var me=this;this.sidebar=sidebar;this.doctype=doctype;this.docname=docname;this.refresh=function(){$c('webnotes.widgets.form.comments.get_comments',{dt:me.doctype,dn:me.docname,limit:5},function(r,rt){wn.widgets.form.comments.sync(me.doctype,me.docname,r);me.make_body();});}
-this.make_body=function(){if(this.wrapper)this.wrapper.innerHTML='';else this.wrapper=$a(parent,'div','sidebar-comment-wrapper');this.input=$a_input(this.wrapper,'text');this.btn=$btn(this.wrapper,'Post',function(){me.add_comment()},{marginLeft:'8px'});this.render_comments()}
-this.render_comments=function(){var f=wn.widgets.form.comments;var cl=f.comment_list[me.docname]
-this.msg=$a(this.wrapper,'div','help small');if(cl){this.msg.innerHTML=cl.length+' out of '+f.n_comments[me.docname]+' comments';if(f.n_comments[me.docname]>cl.length){this.msg.innerHTML+=' <span class="link_type" \
-     onclick="cur_frm.show_comments()">Show all</span>'}
-for(var i=0;i<cl.length;i++){this.render_one_comment(cl[i]);}}else{this.msg.innerHTML='Be the first one to comment.'}}
-this.render_one_comment=function(det){$a(this.wrapper,'div','social sidebar-comment-text','',det.comment);$a(this.wrapper,'div','sidebar-comment-info','',comment_when(det.creation)+' by '+det.comment_by_fullname);}
-this.add_comment=function(){if(!this.input.value)return;this.btn.set_working();wn.widgets.form.comments.add(this.input,me.doctype,me.docname,function(){me.btn.done_working();me.make_body();});}
-this.refresh();}
-/*
- *	lib/js/legacy/wn/widgets/form/attachments.js
- */
-wn.widgets.form.sidebar.Attachments=function(parent,sidebar,doctype,docname){var me=this;this.frm=sidebar.form;this.make=function(){if(this.wrapper)this.wrapper.innerHTML='';else this.wrapper=$a(parent,'div','sidebar-comment-wrapper');this.attach_wrapper=$a(this.wrapper,'div');if(this.frm.doc.__islocal){this.attach_wrapper.innerHTML='<div class="help">Attachments can be \
-    uploaded after saving</div>';return;}
-var n=this.frm.doc.file_list?this.frm.doc.file_list.split('\n').length:0;if(n<this.frm.meta.max_attachments||!this.frm.meta.max_attachments){this.btn=$btn($a(this.wrapper,'div','sidebar-comment-message'),'Add',function(){me.add_attachment()});}
-this.render();}
-this.render=function(){this.attach_wrapper.innerHTML=''
-var doc=locals[me.frm.doctype][me.frm.docname];var fl=doc.file_list?doc.file_list.split('\n'):[];for(var i=0;i<fl.length;i++){new wn.widgets.form.sidebar.Attachment(this.attach_wrapper,fl[i],me.frm)}}
-this.add_attachment=function(){if(!this.dialog){this.dialog=new wn.widgets.Dialog({title:'Add Attachment',width:400})
-$y(this.dialog.body,{margin:'13px'})
-this.dialog.make();}
-this.dialog.body.innerHTML='';this.dialog.show();wn.upload.make({parent:this.dialog.body,args:{from_form:1,doctype:doctype,docname:docname},callback:wn.widgets.form.file_upload_done});}
-this.make();}
-wn.widgets.form.sidebar.Attachment=function(parent,filedet,frm){filedet=filedet.split(',')
-this.filename=filedet[0];this.fileid=filedet[1];this.frm=frm;var me=this;this.wrapper=$a(parent,'div','sidebar-comment-message');this.remove_fileid=function(){var doc=locals[me.frm.doctype][me.frm.docname];var fl=doc.file_list.split('\n');new_fl=[];for(var i=0;i<fl.length;i++){if(fl[i].split(',')[1]!=me.fileid)new_fl.push(fl[i]);}
-doc.file_list=new_fl.join('\n');}
-var display_name=this.fileid;if(this.fileid&&this.fileid.substr(0,8)=='FileData')
-display_name=this.filename;this.ln=$a(this.wrapper,'a','link_type small',{},display_name);this.ln.href='files/'+this.fileid;this.ln.target='_blank';this.del=$a(this.wrapper,'span','close','','&#215;');this.del.onclick=function(){var yn=confirm("Are you sure you want to delete the attachment?")
-if(yn){var callback=function(r,rt){locals[me.frm.doctype][me.frm.docname].modified=r.message;$dh(me.wrapper);me.remove_fileid();frm.refresh();}
-$c('webnotes.widgets.form.utils.remove_attach',args={'fid':me.fileid,dt:me.frm.doctype,dn:me.frm.docname},callback);}}}
-wn.widgets.form.file_upload_done=function(doctype,docname,fileid,filename,at_id,new_timestamp){var doc=locals[doctype][docname];if(doc.file_list){var fl=doc.file_list.split('\n')
-fl.push(filename+','+fileid)
-doc.file_list=fl.join('\n');}
-else
-doc.file_list=filename+','+fileid;doc.modified=new_timestamp;var frm=wn.views.formview[doctype].frm;frm.attachments.dialog.hide();msgprint('File Uploaded Sucessfully.');frm.refresh();}
-/*
- *	lib/js/legacy/wn/widgets/form/assign_to.js
- */
-wn.widgets.form.sidebar.AssignTo=Class.extend({init:function(parent,sidebar,doctype,docname){var me=this;this.doctype=doctype;this.name=docname;this.wrapper=$a(parent,'div','sidebar-comment-wrapper');this.body=$a(this.wrapper,'div');this.add_btn=$btn($a(this.wrapper,'div','sidebar-comment-message'),'Assign',function(){me.add();})
-this.refresh();},refresh:function(){var me=this;$c('webnotes.widgets.form.assign_to.get',{doctype:me.doctype,name:me.name},function(r,rt){me.render(r.message)})},render:function(d){var me=this;$(this.body).empty();if(this.dialog){this.dialog.hide();}
-for(var i=0;i<d.length;i++){$(this.body).append(repl('<div>%(owner)s \
-    <a class="close" href="#" data-owner="%(owner)s">&#215</a></div>',d[i]))}
-$(this.body).find('a.close').click(function(){$c('webnotes.widgets.form.assign_to.remove',{doctype:me.doctype,name:me.name,assign_to:$(this).attr('data-owner')},function(r,rt){me.render(r.message);});return false;});},add:function(){var me=this;if(!me.dialog){me.dialog=new wn.widgets.Dialog({title:'Add to To Do',width:350,fields:[{fieldtype:'Link',fieldname:'assign_to',options:'Profile',label:'Assign To',description:'Add to To Do List of',reqd:true},{fieldtype:'Data',fieldname:'description',label:'Comment'},{fieldtype:'Date',fieldname:'date',label:'Complete By'},{fieldtype:'Select',fieldname:'priority',label:'Priority',options:'Low\nMedium\nHigh','default':'Medium'},{fieldtype:'Check',fieldname:'notify',label:'Notify By Email'},{fieldtype:'Button',label:'Add',fieldname:'add_btn'}]});me.dialog.fields_dict.add_btn.input.onclick=function(){var assign_to=me.dialog.fields_dict.assign_to.get_value();if(assign_to){$c('webnotes.widgets.form.assign_to.add',{doctype:me.doctype,name:me.name,assign_to:assign_to,description:me.dialog.fields_dict.description.get_value(),priority:me.dialog.fields_dict.priority.get_value(),date:me.dialog.fields_dict.date.get_value(),notify:me.dialog.fields_dict.notify.get_value()},function(r,rt){me.render(r.message);});}}}
-me.dialog.clear();me.dialog.show();}});
-/*
- *	lib/js/wn/app.js
- */
-wn.Application=Class.extend({init:function(){var me=this;if(window.app){wn.call({method:'startup',callback:function(r,rt){wn.provide('wn.boot');wn.boot=r;if(wn.boot.profile.name=='Guest'){window.location='index.html';return;}
-me.startup();}})}else{this.startup();}},startup:function(){this.load_bootinfo();this.make_page_container();this.make_nav_bar();this.set_favicon();$(document).trigger('startup');if(wn.boot){wn.route();}
-$(document).trigger('app_ready');},load_bootinfo:function(){if(wn.boot){LocalDB.sync(wn.boot.docs);wn.control_panel=wn.boot.control_panel;this.set_globals();if(wn.boot.developer_mode){console.log("LocalStorage is OFF for developer mode. Please build before going live.");}}else{this.set_as_guest();}},set_globals:function(){profile=wn.boot.profile;user=wn.boot.profile.name;user_fullname=wn.user_info(user).fullname;user_defaults=profile.defaults;user_roles=profile.roles;user_email=profile.email;sys_defaults=wn.boot.sysdefaults;},set_as_guest:function(){profile={name:'Guest'};user='Guest';user_fullname='Guest';user_defaults={};user_roles=['Guest'];user_email='';sys_defaults={};},make_page_container:function(){wn.container=new wn.views.Container();wn.views.make_403();wn.views.make_404();},make_nav_bar:function(){if(wn.boot){wn.container.wntoolbar=new wn.ui.toolbar.Toolbar();}},logout:function(){var me=this;me.logged_out=true;wn.call({method:'logout',callback:function(r){if(r.exc){console.log(r.exc);}
-me.redirect_to_login();}})},redirect_to_login:function(){window.location.href='index.html';},set_favicon:function(){var link=$('link[type="image/x-icon"]').remove().attr("href");var favicon='\
-   <link rel="shortcut icon" href="'+link+'" type="image/x-icon"> \
-   <link rel="icon" href="'+link+'" type="image/x-icon">'
-$(favicon).appendTo('head');}})
-/*
- *	erpnext/startup/startup.js
- */
-var current_module;var is_system_manager=0;wn.provide('erpnext.startup');erpnext.modules={'Selling':'selling-home','Accounts':'accounts-home','Stock':'stock-home','Buying':'buying-home','Support':'support-home','Projects':'projects-home','Production':'production-home','Website':'website-home','HR':'hr-home','Setup':'Setup','Activity':'activity','To Do':'todo','Calendar':'calendar','Messages':'messages','Knowledge Base':'questions','Dashboard':'dashboard'}
-wn.provide('wn.modules');$.extend(wn.modules,erpnext.modules);wn.modules['Core']='Setup';erpnext.startup.set_globals=function(){if(inList(user_roles,'System Manager'))is_system_manager=1;}
-erpnext.startup.start=function(){console.log('Starting up...');$('#startup_div').html('Starting up...').toggle(true);erpnext.startup.set_globals();if(user!='Guest'){if(wn.boot.user_background){erpnext.set_user_background(wn.boot.user_background);}
-wn.boot.profile.allow_modules=wn.boot.profile.allow_modules.concat(['To Do','Knowledge Base','Calendar','Activity','Messages'])
-erpnext.toolbar.setup();erpnext.startup.set_periodic_updates();$('footer').html('<div class="web-footer erpnext-footer">\
-   <a href="#!attributions">ERPNext | Attributions and License</a></div>');if(in_list(user_roles,'System Manager')&&(wn.boot.setup_complete=='No')){wn.require("js/app/complete_setup.js");erpnext.complete_setup.show();}
-if(wn.boot.expires_on&&in_list(user_roles,'System Manager')){var today=dateutil.str_to_obj(dateutil.get_today());var expires_on=dateutil.str_to_obj(wn.boot.expires_on);var diff=dateutil.get_diff(expires_on,today);if(0<=diff&&diff<=15){var expiry_string=diff==0?"today":repl("in %(diff)s day(s)",{diff:diff});$('header').append(repl('<div class="expiry-info"> \
-     Your ERPNext subscription will <b>expire %(expiry_string)s</b>. \
-     Please renew your subscription to continue using ERPNext \
-     (and remove this annoying banner). \
-    </div>',{expiry_string:expiry_string}));}else if(diff<0){$('header').append(repl('<div class="expiry-info"> \
-     This ERPNext subscription <b>has expired</b>. \
-    </div>',{expiry_string:expiry_string}));}}
-erpnext.set_about();if(wn.control_panel.custom_startup_code)
-eval(wn.control_panel.custom_startup_code);}}
-erpnext.update_messages=function(reset){if(inList(['Guest'],user)||!wn.session_alive){return;}
-if(!reset){var set_messages=function(r){if(!r.exc){erpnext.toolbar.set_new_comments(r.message.unread_messages);var show_in_circle=function(parent_id,msg){var parent=$('#'+parent_id);if(parent){if(msg){parent.find('span:first').text(msg);parent.toggle(true);}else{parent.toggle(false);}}}
-show_in_circle('unread_messages',r.message.unread_messages.length);show_in_circle('open_support_tickets',r.message.open_support_tickets);show_in_circle('things_todo',r.message.things_todo);show_in_circle('todays_events',r.message.todays_events);show_in_circle('open_tasks',r.message.open_tasks);show_in_circle('unanswered_questions',r.message.unanswered_questions);}else{clearInterval(wn.updates.id);}}
-wn.call({method:'startup.startup.get_global_status_messages',callback:set_messages});}else{erpnext.toolbar.set_new_comments(0);$('#unread_messages').toggle(false);}}
-erpnext.startup.set_periodic_updates=function(){wn.updates={};if(wn.updates.id){clearInterval(wn.updates.id);}
-wn.updates.id=setInterval(erpnext.update_messages,60000);}
-erpnext.set_user_background=function(src){set_style(repl('#body_div { background: url("files/%(src)s") repeat;}',{src:src}))}
-$(document).bind('startup',function(){erpnext.startup.start();});erpnext.send_message=function(opts){if(opts.btn){$(opts.btn).start_working();}
-wn.call({method:'website.send_message',args:opts,callback:function(r){if(opts.btn){$(opts.btn).done_working();}
-if(opts.callback)opts.callback(r)}});}
-erpnext.hide_naming_series=function(){if(cur_frm.fields_dict.naming_series){hide_field('naming_series');if(cur_frm.doc.__islocal){unhide_field('naming_series');}}}
-/*
- *	erpnext/startup/js/modules.js
- */
-wn.provide('erpnext.module_page');erpnext.module_page.setup_page=function(module,wrapper){erpnext.module_page.hide_links(wrapper);erpnext.module_page.make_list(module,wrapper);$(wrapper).find("a[title]").tooltip({delay:{show:500,hide:100}});}
-erpnext.module_page.hide_links=function(wrapper){$(wrapper).find('[href*="List/"]').each(function(){var href=$(this).attr('href');var dt=href.split('/')[1];if(wn.boot.profile.all_read.indexOf(get_label_doctype(dt))==-1){var txt=$(this).text();$(this).parent().css('color','#999').html(txt);}});$(wrapper).find('[data-doctype]').each(function(){var dt=$(this).attr('data-doctype');if(wn.boot.profile.all_read.indexOf(dt)==-1){var txt=$(this).text();$(this).parent().css('color','#999').html(txt);}});$(wrapper).find('[href*="Form/"]').each(function(){var href=$(this).attr('href');var dt=href.split('/')[1];if(wn.boot.profile.all_read.indexOf(get_label_doctype(dt))==-1){var txt=$(this).text();$(this).parent().css('color','#999').html(txt);}});$(wrapper).find('[data-role]').each(function(){if(!has_common(user_roles,[$(this).attr("data-role"),"System Manager"])){var html=$(this).html();$(this).parent().css('color','#999');$(this).replaceWith(html);}});}
-erpnext.module_page.make_list=function(module,wrapper){var $w=$(wrapper).find('.reports-list');var $parent1=$('<div style="width: 45%; float: left; margin-right: 4.5%"></div>').appendTo($w);var $parent2=$('<div style="width: 45%; float: left;"></div>').appendTo($w);wrapper.list1=new wn.ui.Listing({parent:$parent1,method:'utilities.get_sc_list',render_row:function(row,data){if(!data.parent_doc_type)data.parent_doc_type=data.doc_type;$(row).html(repl('<a href="#!Report/%(doc_type)s/%(criteria_name)s" \
-    data-doctype="%(parent_doc_type)s">\
-    %(criteria_name)s</a>',data))},args:{module:module},no_refresh:true,callback:function(r){erpnext.module_page.hide_links($parent1)}});wrapper.list1.run();wrapper.list2=new wn.ui.Listing({parent:$parent2,method:'utilities.get_report_list',render_row:function(row,data){$(row).html(repl('<a href="#!Report2/%(ref_doctype)s/%(name)s" \
-    data-doctype="%(ref_doctype)s">\
-    %(name)s</a>',data))},args:{module:module},no_refresh:true,callback:function(r){erpnext.module_page.hide_links($parent2)}});wrapper.list2.run();$parent1.find('.list-toolbar-wrapper').prepend("<div class=\"show-all-reports\">\
-   <a href=\"#List/Search Criteria\"> [ List Of All Reports ]</a></div>");$parent2.find('.list-toolbar-wrapper').prepend("<div class=\"show-all-reports\">\
-   <a href=\"#List/Report\"> [ List Of All Reports (New) ]</a></div>");}
-/*
- *	erpnext/startup/js/toolbar.js
- */
-wn.provide('erpnext.toolbar');erpnext.toolbar.setup=function(){erpnext.toolbar.add_modules();$('#toolbar-user').append('<li><a href="#!profile-settings">Profile Settings</a></li>');$('.navbar .pull-right').append('\
-  <li><a href="#!messages" title="Unread Messages"><span class="navbar-new-comments"></span></a></li>');$('.navbar .pull-right').prepend('<li class="dropdown">\
-  <a class="dropdown-toggle" data-toggle="dropdown" href="#" \
-   onclick="return false;">Help<b class="caret"></b></a>\
-  <ul class="dropdown-menu" id="toolbar-help">\
-  </ul></li>')
-$('#toolbar-help').append('<li><a href="https://erpnext.com/manual" target="_blank">\
-  Documentation</a></li>')
-$('#toolbar-help').append('<li><a href="http://groups.google.com/group/erpnext-user-forum" target="_blank">\
-  Forum</a></li>')
-$('#toolbar-help').append('<li><a href="http://www.providesupport.com?messenger=iwebnotes" target="_blank">\
-  Live Chat (Office Hours)</a></li>')
-erpnext.toolbar.set_new_comments();}
-erpnext.toolbar.add_modules=function(){$('<li class="dropdown">\
-  <a class="dropdown-toggle" data-toggle="dropdown" href="#"\
-   onclick="return false;">Modules<b class="caret"></b></a>\
-  <ul class="dropdown-menu modules">\
-  </ul>\
-  </li>').prependTo('.navbar .nav:first');if(wn.boot.modules_list&&typeof(wn.boot.modules_list)=='string'){wn.boot.modules_list=JSON.parse(wn.boot.modules_list);}
-else
-wn.boot.modules_list=keys(erpnext.modules).sort();for(var i in wn.boot.modules_list){var m=wn.boot.modules_list[i]
-if(m!='Setup'&&wn.boot.profile.allow_modules.indexOf(m)!=-1){args={module:m,module_page:erpnext.modules[m],module_label:m=='HR'?'Human Resources':m}
-$('.navbar .modules').append(repl('<li><a href="#!%(module_page)s" \
-    data-module="%(module)s">%(module_label)s</a></li>',args));}}
-if(user_roles.indexOf("Accounts Manager")!=-1){$('.navbar .modules').append('<li><a href="#!dashboard" \
-   data-module="Dashboard">Dashboard</a></li>');}
-if(user_roles.indexOf("System Manager")!=-1){$('.navbar .modules').append('<li class="divider"></li>\
-  <li><a href="#!Setup" data-module="Setup">Setup</a></li>');}}
-erpnext.toolbar.set_new_comments=function(new_comments){var navbar_nc=$('.navbar-new-comments');if(new_comments&&new_comments.length>0){navbar_nc.text(new_comments.length);navbar_nc.addClass('navbar-new-comments-true')
-$.each(new_comments,function(i,v){var msg='New Message: '+(v[1].length<=100?v[1]:(v[1].substr(0,100)+"..."));var id=v[0].replace('/','-');if(!$('#'+id)[0]){show_alert(msg,id);}})}else{navbar_nc.removeClass('navbar-new-comments-true');navbar_nc.text(0);}}
-/*
- *	erpnext/startup/js/feature_setup.js
- */
-pscript.feature_dict={'fs_projects':{'BOM':{'fields':['project_name']},'Delivery Note':{'fields':['project_name']},'Purchase Invoice':{'entries':['project_name']},'Production Order':{'fields':['project_name']},'Purchase Order':{'po_details':['project_name']},'Purchase Receipt':{'purchase_receipt_details':['project_name']},'Sales Invoice':{'fields':['project_name']},'Sales Order':{'fields':['project_name']},'Stock Entry':{'fields':['project_name']},'Timesheet':{'timesheet_details':['project_name']}},'fs_packing_details':{},'fs_discounts':{'Delivery Note':{'delivery_note_details':['adj_rate']},'Quotation':{'quotation_details':['adj_rate']},'Sales Invoice':{'entries':['adj_rate']},'Sales Order':{'sales_order_details':['adj_rate','ref_rate']}},'fs_purchase_discounts':{'Purchase Order':{'po_details':['purchase_ref_rate','discount_rate','import_ref_rate']},'Purchase Receipt':{'purchase_receipt_details':['purchase_ref_rate','discount_rate','import_ref_rate']},'Purchase Invoice':{'entries':['purchase_ref_rate','discount_rate','import_ref_rate']}},'fs_brands':{'Delivery Note':{'delivery_note_details':['brand']},'Purchase Request':{'indent_details':['brand']},'Item':{'fields':['brand']},'Purchase Order':{'po_details':['brand']},'Purchase Invoice':{'entries':['brand']},'Quotation':{'quotation_details':['brand']},'Sales Invoice':{'entries':['brand']},'Sales BOM':{'fields':['new_item_brand']},'Sales Order':{'sales_order_details':['brand']},'Serial No':{'fields':['brand']}},'fs_after_sales_installations':{'Delivery Note':{'fields':['installation_status','per_installed'],'delivery_note_details':['installed_qty']}},'fs_item_batch_nos':{'Delivery Note':{'delivery_note_details':['batch_no']},'Item':{'fields':['has_batch_no']},'Purchase Receipt':{'purchase_receipt_details':['batch_no']},'Quality Inspection':{'fields':['batch_no']},'Sales and Pruchase Return Wizard':{'return_details':['batch_no']},'Sales Invoice':{'entries':['batch_no']},'Stock Entry':{'mtn_details':['batch_no']},'Stock Ledger Entry':{'fields':['batch_no']}},'fs_item_serial_nos':{'Customer Issue':{'fields':['serial_no']},'Delivery Note':{'delivery_note_details':['serial_no'],'packing_details':['serial_no']},'Installation Note':{'installed_item_details':['serial_no']},'Item':{'fields':['has_serial_no']},'Maintenance Schedule':{'item_maintenance_detail':['serial_no'],'maintenance_schedule_detail':['serial_no']},'Maintenance Visit':{'maintenance_visit_details':['serial_no']},'Purchase Receipt':{'purchase_receipt_details':['serial_no']},'Quality Inspection':{'fields':['item_serial_no']},'Sales and Pruchase Return Wizard':{'return_details':['serial_no']},'Sales Invoice':{'entries':['serial_no']},'Stock Entry':{'mtn_details':['serial_no']},'Stock Ledger Entry':{'fields':['serial_no']}},'fs_item_barcode':{'Item':{'fields':['barcode']},'Delivery Note':{'delivery_note_details':['barcode']},'Sales Invoice':{'entries':['barcode']}},'fs_item_group_in_details':{'Delivery Note':{'delivery_note_details':['item_group']},'Opportunity':{'enquiry_details':['item_group']},'Purchase Request':{'indent_details':['item_group']},'Item':{'fields':['item_group']},'Global Defaults':{'fields':['default_item_group']},'Purchase Order':{'po_details':['item_group']},'Purchase Receipt':{'purchase_receipt_details':['item_group']},'Purchase Voucher':{'entries':['item_group']},'Quotation':{'quotation_details':['item_group']},'Sales Invoice':{'entries':['item_group']},'Sales BOM':{'fields':['serial_no']},'Sales Order':{'sales_order_details':['item_group']},'Serial No':{'fields':['item_group']},'Sales Partner':{'partner_target_details':['item_group']},'Sales Person':{'target_details':['item_group']},'Territory':{'target_details':['item_group']}},'fs_page_break':{'Delivery Note':{'delivery_note_details':['page_break'],'packing_details':['page_break']},'Purchase Request':{'indent_details':['page_break']},'Purchase Order':{'po_details':['page_break']},'Purchase Receipt':{'purchase_receipt_details':['page_break']},'Purchase Voucher':{'entries':['page_break']},'Quotation':{'quotation_details':['page_break']},'Sales Invoice':{'entries':['page_break']},'Sales Order':{'sales_order_details':['page_break']}},'fs_exports':{'Delivery Note':{'fields':['Note','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'delivery_note_details':['base_ref_rate','amount','basic_rate']},'POS Setting':{'fields':['conversion_rate','currency']},'Quotation':{'fields':['Note HTML','OT Notes','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'quotation_details':['base_ref_rate','amount','basic_rate']},'Sales Invoice':{'fields':['conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'entries':['base_ref_rate','amount','basic_rate']},'Item':{'ref_rate_details':['ref_currency']},'Sales BOM':{'fields':['currency']},'Sales Order':{'fields':['Note1','OT Notes','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'sales_order_details':['base_ref_rate','amount','basic_rate']}},'fs_imports':{'Purchase Invoice':{'fields':['conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'entries':['purchase_ref_rate','amount','rate']},'Purchase Order':{'fields':['Note HTML','conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'po_details':['purchase_ref_rate','amount','purchase_rate']},'Purchase Receipt':{'fields':['conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'purchase_receipt_details':['purchase_ref_rate','amount','purchase_rate']},'Supplier Quotation':{'fields':['conversion_rate','currency']}},'fs_item_advanced':{'Item':{'fields':['item_customer_details']}},'fs_sales_extras':{'Address':{'fields':['sales_partner']},'Contact':{'fields':['sales_partner']},'Customer':{'fields':['sales_team']},'Delivery Note':{'fields':['sales_team','Packing List']},'Item':{'fields':['item_customer_details']},'Sales Invoice':{'fields':['sales_team']},'Sales Order':{'fields':['sales_team','Packing List']}},'fs_more_info':{'Delivery Note':{'fields':['More Info']},'Opportunity':{'fields':['More Info']},'Purchase Request':{'fields':['More Info']},'Lead':{'fields':['More Info']},'Purchase Invoice':{'fields':['More Info']},'Purchase Order':{'fields':['More Info']},'Purchase Receipt':{'fields':['More Info']},'Quotation':{'fields':['More Info']},'Sales Invoice':{'fields':['More Info']},'Sales Order':{'fields':['More Info']},},'fs_quality':{'Item':{'fields':['Item Inspection Criteria','inspection_required']},'Purchase Receipt':{'purchase_receipt_details':['qa_no']}},'fs_manufacturing':{'Item':{'fields':['Manufacturing']}},'fs_pos':{'Sales Invoice':{'fields':['is_pos']}},'fs_recurring_invoice':{'Sales Invoice':{'fields':['Recurring Invoice']}}}
-$(document).bind('form_refresh',function(){for(sys_feat in sys_defaults)
-{if(sys_defaults[sys_feat]=='0'&&(sys_feat in pscript.feature_dict))
-{if(cur_frm.doc.doctype in pscript.feature_dict[sys_feat])
-{for(fort in pscript.feature_dict[sys_feat][cur_frm.doc.doctype])
-{if(fort=='fields')
-hide_field(pscript.feature_dict[sys_feat][cur_frm.doc.doctype][fort]);else if(cur_frm.fields_dict[fort])
-{for(grid_field in pscript.feature_dict[sys_feat][cur_frm.doc.doctype][fort])
-cur_frm.fields_dict[fort].grid.set_column_disp(pscript.feature_dict[sys_feat][cur_frm.doc.doctype][fort][grid_field],false);}
-else
-msgprint('Grid "'+fort+'" does not exists');}}}}})
-/*
- *	conf.js
- */
-wn.provide('erpnext');erpnext.set_about=function(){wn.provide('wn.app');$.extend(wn.app,{name:'ERPNext',license:'GNU/GPL - Usage Condition: All "erpnext" branding must be kept as it is',source:'https://github.com/webnotes/erpnext',publisher:'Web Notes Technologies Pvt Ltd, Mumbai',copyright:'&copy; Web Notes Technologies Pvt Ltd',version:'2'});}
-wn.modules_path='erpnext';$(document).bind('toolbar_setup',function(){$('.brand').html((wn.boot.website_settings.brand_html||'erpnext')+' <i class="icon-home icon-white navbar-icon-home" ></i>').css('max-width','200px').css('overflow','hidden').hover(function(){$(this).find('.icon-home').addClass('navbar-icon-home-hover');},function(){$(this).find('.icon-home').removeClass('navbar-icon-home-hover');});});
\ No newline at end of file
diff --git a/public/js/all-web.js b/public/js/all-web.js
deleted file mode 100644
index 4a22d2d..0000000
--- a/public/js/all-web.js
+++ /dev/null
@@ -1,743 +0,0 @@
-
-/*
- *	lib/js/lib/bootstrap.min.js
- */
-!function(a){a(function(){"use strict",a.support.transition=function(){var b=document.body||document.documentElement,c=b.style,d=c.transition!==undefined||c.WebkitTransition!==undefined||c.MozTransition!==undefined||c.MsTransition!==undefined||c.OTransition!==undefined;return d&&{end:function(){var b="TransitionEnd";return a.browser.webkit?b="webkitTransitionEnd":a.browser.mozilla?b="transitionend":a.browser.opera&&(b="oTransitionEnd"),b}()}}()})}(window.jQuery),!function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype={constructor:c,close:function(b){function f(){e.remove(),e.trigger("closed")}var c=a(this),d=c.attr("data-target"),e;d||(d=c.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),e=a(d),e.trigger("close"),b&&b.preventDefault(),e.length||(e=c.hasClass("alert")?c:c.parent()),e.removeClass("in"),a.support.transition&&e.hasClass("fade")?e.on(a.support.transition.end,f):f()}},a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.alert.Constructor=c,a(function(){a("body").on("click.alert.data-api",b,c.prototype.close)})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype={constructor:b,setState:function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){a=="loadingText"?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},toggle:function(){var a=this.$element.parent('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")}},a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f=typeof c=="object"&&c;e||d.data("button",e=new b(this,f)),c=="toggle"?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a(function(){a("body").on("click.button.data-api","[data-toggle^=button]",function(b){a(b.target).button("toggle")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.carousel.defaults,c),this.options.slide&&this.slide(this.options.slide)};b.prototype={cycle:function(){return this.interval=setInterval(a.proxy(this.next,this),this.options.interval),this},to:function(b){var c=this.$element.find(".active"),d=c.parent().children(),e=d.index(c),f=this;if(b>d.length-1||b<0)return;return this.sliding?this.$element.one("slid",function(){f.to(b)}):e==b?this.pause().cycle():this.slide(b>e?"next":"prev",a(d[b]))},pause:function(){return clearInterval(this.interval),this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(b,c){var d=this.$element.find(".active"),e=c||d[b](),f=this.interval,g=b=="next"?"left":"right",h=b=="next"?"first":"last",i=this;return this.sliding=!0,f&&this.pause(),e=e.length?e:this.$element.find(".item")[h](),!a.support.transition&&this.$element.hasClass("slide")?(this.$element.trigger("slide"),d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")):(e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),this.$element.trigger("slide"),this.$element.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)})),f&&this.cycle(),this}},a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=typeof c=="object"&&c;e||d.data("carousel",e=new b(this,f)),typeof c=="number"?e.to(c):typeof c=="string"||(c=f.slide)?e[c]():e.cycle()})},a.fn.carousel.defaults={interval:5e3},a.fn.carousel.Constructor=b,a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!e.data("modal")&&a.extend({},e.data(),c.data());e.carousel(f),b.preventDefault()})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find(".in"),e;d&&d.length&&(e=d.data("collapse"),d.collapse("hide"),e||d.data("collapse",null)),this.$element[b](0),this.transition("addClass","show","shown"),this.$element[b](this.$element[0][c])},hide:function(){var a=this.dimension();this.reset(this.$element[a]()),this.transition("removeClass","hide","hidden"),this.$element[a](0)},reset:function(a){var b=this.dimension();this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element.addClass("collapse")},transition:function(b,c,d){var e=this,f=function(){c=="show"&&e.reset(),e.$element.trigger(d)};this.$element.trigger(c)[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=typeof c=="object"&&c;e||d.data("collapse",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c=a(this),d,e=c.attr("data-target")||b.preventDefault()||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":c.data();a(e).collapse(f)})})}(window.jQuery),!function(a){function d(){a(b).parent().removeClass("open")}"use strict";var b='[data-toggle="dropdown"]',c=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};c.prototype={constructor:c,toggle:function(b){var c=a(this),e=c.attr("data-target"),f,g;return e||(e=c.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,"")),f=a(e),f.length||(f=c.parent()),g=f.hasClass("open"),d(),!g&&f.toggleClass("open"),!1}},a.fn.dropdown=function(b){return this.each(function(){var d=a(this),e=d.data("dropdown");e||d.data("dropdown",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.dropdown.Constructor=c,a(function(){a("html").on("click.dropdown.data-api",d),a("body").on("click.dropdown.data-api",b,c.prototype.toggle)})}(window.jQuery),!function(a){function c(){var b=this,c=setTimeout(function(){b.$element.off(a.support.transition.end),d.call(b)},500);this.$element.one(a.support.transition.end,function(){clearTimeout(c),d.call(b)})}function d(a){this.$element.hide().trigger("hidden"),e.call(this)}function e(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;this.$backdrop=a('<div class="modal-backdrop '+d+'" />').appendTo(document.body),this.options.backdrop!="static"&&this.$backdrop.click(a.proxy(this.hide,this)),e&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),e?this.$backdrop.one(a.support.transition.end,b):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,a.proxy(f,this)):f.call(this)):b&&b()}function f(){this.$backdrop.remove(),this.$backdrop=null}function g(){var b=this;this.isShown&&this.options.keyboard?a(document).on("keyup.dismiss.modal",function(a){a.which==27&&b.hide()}):this.isShown||a(document).off("keyup.dismiss.modal")}"use strict";var b=function(b,c){this.options=a.extend({},a.fn.modal.defaults,c),this.$element=a(b).delegate('[data-dismiss="modal"]',"click.dismiss.modal",a.proxy(this.hide,this))};b.prototype={constructor:b,toggle:function(){return this[this.isShown?"hide":"show"]()},show:function(){var b=this;if(this.isShown)return;a("body").addClass("modal-open"),this.isShown=!0,this.$element.trigger("show"),g.call(this),e.call(this,function(){var c=a.support.transition&&b.$element.hasClass("fade");!b.$element.parent().length&&b.$element.appendTo(document.body),b.$element.show(),c&&b.$element[0].offsetWidth,b.$element.addClass("in"),c?b.$element.one(a.support.transition.end,function(){b.$element.trigger("shown")}):b.$element.trigger("shown")})},hide:function(b){b&&b.preventDefault();if(!this.isShown)return;var e=this;this.isShown=!1,a("body").removeClass("modal-open"),g.call(this),this.$element.trigger("hide").removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?c.call(this):d.call(this)}},a.fn.modal=function(c){return this.each(function(){var d=a(this),e=d.data("modal"),f=typeof c=="object"&&c;e||d.data("modal",e=new b(this,f)),typeof c=="string"?e[c]():e.show()})},a.fn.modal.defaults={backdrop:!0,keyboard:!0},a.fn.modal.Constructor=b,a(function(){a("body").on("click.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({},e.data(),c.data());b.preventDefault(),e.modal(f)})})}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("tooltip",a,b)};b.prototype={constructor:b,init:function(b,c,d){var e,f;this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.enabled=!0,this.options.trigger!="manual"&&(e=this.options.trigger=="hover"?"mouseenter":"focus",f=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(e,this.options.selector,a.proxy(this.enter,this)),this.$element.on(f,this.options.selector,a.proxy(this.leave,this))),this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(b){return b=a.extend({},a.fn[this.type].defaults,b,this.$element.data()),b.delay&&typeof b.delay=="number"&&(b.delay={show:b.delay,hide:b.delay}),b},enter:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);!c.options.delay||!c.options.delay.show?c.show():(c.hoverState="in",setTimeout(function(){c.hoverState=="in"&&c.show()},c.options.delay.show))},leave:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);!c.options.delay||!c.options.delay.hide?c.hide():(c.hoverState="out",setTimeout(function(){c.hoverState=="out"&&c.hide()},c.options.delay.hide))},show:function(){var a,b,c,d,e,f,g;if(this.hasContent()&&this.enabled){a=this.tip(),this.setContent(),this.options.animation&&a.addClass("fade"),f=typeof this.options.placement=="function"?this.options.placement.call(this,a[0],this.$element[0]):this.options.placement,b=/in/.test(f),a.remove().css({top:0,left:0,display:"block"}).appendTo(b?this.$element:document.body),c=this.getPosition(b),d=a[0].offsetWidth,e=a[0].offsetHeight;switch(b?f.split(" ")[1]:f){case"bottom":g={top:c.top+c.height,left:c.left+c.width/2-d/2};break;case"top":g={top:c.top-e,left:c.left+c.width/2-d/2};break;case"left":g={top:c.top+c.height/2-e/2,left:c.left-d};break;case"right":g={top:c.top+c.height/2-e/2,left:c.left+c.width}}a.css(g).addClass(f).addClass("in")}},setContent:function(){var a=this.tip();a.find(".tooltip-inner").html(this.getTitle()),a.removeClass("fade in top bottom left right")},hide:function(){function d(){var b=setTimeout(function(){c.off(a.support.transition.end).remove()},500);c.one(a.support.transition.end,function(){clearTimeout(b),c.remove()})}var b=this,c=this.tip();c.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d():c.remove()},fixTitle:function(){var a=this.$element;(a.attr("title")||typeof a.attr("data-original-title")!="string")&&a.attr("data-original-title",a.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(b){return a.extend({},b?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||(typeof c.title=="function"?c.title.call(b[0]):c.title),a=a.toString().replace(/(^\s*|\s*$)/,""),a},tip:function(){return this.$tip=this.$tip||a(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()}},a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("tooltip"),f=typeof c=="object"&&c;e||d.data("tooltip",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.defaults={animation:!0,delay:0,selector:!1,placement:"top",trigger:"hover",title:"",template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'}}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("popover",a,b)};b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype,{constructor:b,setContent:function(){var b=this.tip(),c=this.getTitle(),d=this.getContent();b.find(".popover-title")[a.type(c)=="object"?"append":"html"](c),b.find(".popover-content > *")[a.type(d)=="object"?"append":"html"](d),b.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-content")||(typeof c.content=="function"?c.content.call(b[0]):c.content),a=a.toString().replace(/(^\s*|\s*$)/,""),a},tip:function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip}}),a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("popover"),f=typeof c=="object"&&c;e||d.data("popover",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.defaults=a.extend({},a.fn.tooltip.defaults,{placement:"right",content:"",template:'<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'})}(window.jQuery),!function(a){function b(b,c){var d=a.proxy(this.process,this),e=a(b).is("body")?a(window):a(b),f;this.options=a.extend({},a.fn.scrollspy.defaults,c),this.$scrollElement=e.on("scroll.scroll.data-api",d),this.selector=(this.options.target||(f=a(b).attr("href"))&&f.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.$body=a("body").on("click.scroll.data-api",this.selector,d),this.refresh(),this.process()}"use strict",b.prototype={constructor:b,refresh:function(){this.targets=this.$body.find(this.selector).map(function(){var b=a(this).attr("href");return/^#\w/.test(b)&&a(b).length?b:null}),this.offsets=a.map(this.targets,function(b){return a(b).position().top})},process:function(){var a=this.$scrollElement.scrollTop()+this.options.offset,b=this.offsets,c=this.targets,d=this.activeTarget,e;for(e=b.length;e--;)d!=c[e]&&a>=b[e]&&(!b[e+1]||a<=b[e+1])&&this.activate(c[e])},activate:function(a){var b;this.activeTarget=a,this.$body.find(this.selector).parent(".active").removeClass("active"),b=this.$body.find(this.selector+'[href="'+a+'"]').parent("li").addClass("active"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active")}},a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("scrollspy"),f=typeof c=="object"&&c;e||d.data("scrollspy",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.defaults={offset:10},a(function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),!function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype={constructor:b,show:function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target"),e,f;d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,""));if(b.parent("li").hasClass("active"))return;e=c.find(".active a").last()[0],b.trigger({type:"show",relatedTarget:e}),f=a(d),this.activate(b.parent("li"),c),this.activate(f,f.parent(),function(){b.trigger({type:"shown",relatedTarget:e})})},activate:function(b,c,d){function g(){e.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),f?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var e=c.find("> .active"),f=d&&a.support.transition&&e.hasClass("fade");f?e.one(a.support.transition.end,g):g(),e.removeClass("in")}},a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("tab");e||d.data("tab",e=new b(this)),typeof c=="string"&&e[c]()})},a.fn.tab.Constructor=b,a(function(){a("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.typeahead.defaults,c),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.$menu=a(this.options.menu).appendTo("body"),this.source=this.options.source,this.shown=!1,this.listen()};b.prototype={constructor:b,select:function(){var a=this.$menu.find(".active").attr("data-value");return this.$element.val(a),this.hide()},show:function(){var b=a.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});return this.$menu.css({top:b.top+b.height,left:b.left}),this.$menu.show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(b){var c=this,d,e;return this.query=this.$element.val(),this.query?(d=a.grep(this.source,function(a){if(c.matcher(a))return a}),d=this.sorter(d),d.length?this.render(d.slice(0,this.options.items)).show():this.shown?this.hide():this):this.shown?this.hide():this},matcher:function(a){return~a.toLowerCase().indexOf(this.query.toLowerCase())},sorter:function(a){var b=[],c=[],d=[],e;while(e=a.shift())e.toLowerCase().indexOf(this.query.toLowerCase())?~e.indexOf(this.query)?c.push(e):d.push(e):b.push(e);return b.concat(c,d)},highlighter:function(a){return a.replace(new RegExp("("+this.query+")","ig"),function(a,b){return"<strong>"+b+"</strong>"})},render:function(b){var c=this;return b=a(b).map(function(b,d){return b=a(c.options.item).attr("data-value",d),b.find("a").html(c.highlighter(d)),b[0]}),b.first().addClass("active"),this.$menu.html(b),this},next:function(b){var c=this.$menu.find(".active").removeClass("active"),d=c.next();d.length||(d=a(this.$menu.find("li")[0])),d.addClass("active")},prev:function(a){var b=this.$menu.find(".active").removeClass("active"),c=b.prev();c.length||(c=this.$menu.find("li").last()),c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this)),(a.browser.webkit||a.browser.msie)&&this.$element.on("keydown",a.proxy(this.keypress,this)),this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},keyup:function(a){a.stopPropagation(),a.preventDefault();switch(a.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:this.hide();break;default:this.lookup()}},keypress:function(a){a.stopPropagation();if(!this.shown)return;switch(a.keyCode){case 9:case 13:case 27:a.preventDefault();break;case 38:a.preventDefault(),this.prev();break;case 40:a.preventDefault(),this.next()}},blur:function(a){var b=this;a.stopPropagation(),a.preventDefault(),setTimeout(function(){b.hide()},150)},click:function(a){a.stopPropagation(),a.preventDefault(),this.select()},mouseenter:function(b){this.$menu.find(".active").removeClass("active"),a(b.currentTarget).addClass("active")}},a.fn.typeahead=function(c){return this.each(function(){var d=a(this),e=d.data("typeahead"),f=typeof c=="object"&&c;e||d.data("typeahead",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.typeahead.defaults={source:[],items:8,menu:'<ul class="typeahead dropdown-menu"></ul>',item:'<li><a href="#"></a></li>'},a.fn.typeahead.Constructor=b,a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(b){var c=a(this);if(c.data("typeahead"))return;b.preventDefault(),c.typeahead(c.data())})})}(window.jQuery);
-
-/*
- *	lib/js/core.min.js
- */
-
-/*
- *	lib/js/wn/class.js
- */;(function(){var initializing=false,fnTest=/xyz/.test(function(){xyz;})?/\b_super\b/:/.*/;this.Class=function(){};Class.extend=function(prop){var _super=this.prototype;initializing=true;var prototype=new this();initializing=false;for(var name in prop){prototype[name]=typeof prop[name]=="function"&&typeof _super[name]=="function"&&fnTest.test(prop[name])?(function(name,fn){return function(){var tmp=this._super;this._super=_super[name];var ret=fn.apply(this,arguments);this._super=tmp;return ret;};})(name,prop[name]):prop[name];}
-function Class(){if(!initializing&&this.init)
-this.init.apply(this,arguments);}
-Class.prototype=prototype;Class.prototype.constructor=Class;Class.extend=arguments.callee;return Class;};})();
-/*
- *	lib/js/wn/provide.js
- */
-if(!window.wn)wn={}
-wn.provide=function(namespace){var nsl=namespace.split('.');var l=nsl.length;var parent=window;for(var i=0;i<l;i++){var n=nsl[i];if(!parent[n]){parent[n]={}}
-parent=parent[n];}}
-wn.provide('wn.settings');wn.provide('wn.ui');
-/*
- *	lib/js/wn/assets.js
- */
-wn.require=function(items){if(typeof items==="string"){items=[items];}
-var l=items.length;for(var i=0;i<l;i++){var src=items[i];wn.assets.execute(src);}}
-wn.assets={executed_:{},check:function(){if(window._version_number!=localStorage.getItem("_version_number")){localStorage.clear();localStorage.setItem("_version_number",window._version_number)}},exists:function(src){if('localStorage'in window&&localStorage.getItem(src)&&!wn.boot.developer_mode)
-return true},add:function(src,txt){if('localStorage'in window){localStorage.setItem(src,txt);}},get:function(src){return localStorage.getItem(src);},extn:function(src){if(src.indexOf('?')!=-1){src=src.split('?').slice(-1)[0];}
-return src.split('.').slice(-1)[0];},load:function(src){var t=src;$.ajax({url:t,data:{q:Math.floor(Math.random()*1000)},dataType:'text',success:function(txt){wn.assets.add(src,txt);},async:false})},execute:function(src){if(!wn.assets.exists(src)){wn.assets.load(src);}
-var type=wn.assets.extn(src);if(wn.assets.handler[type]){wn.assets.handler[type](wn.assets.get(src),src);wn.assets.executed_[src]=1;}},handler:{js:function(txt,src){wn.dom.eval(txt);},css:function(txt,src){wn.dom.set_style(txt);}}}
-/*
- *	lib/js/wn/dom.js
- */
-wn.provide('wn.dom');wn.dom={id_count:0,by_id:function(id){return document.getElementById(id);},set_unique_id:function(ele){var id='unique-'+wn.dom.id_count;if(ele)
-ele.setAttribute('id',id);wn.dom.id_count++;return id;},eval:function(txt){if(!txt)return;var el=document.createElement('script');el.appendChild(document.createTextNode(txt));document.getElementsByTagName('head')[0].appendChild(el);},set_style:function(txt){if(!txt)return;var se=document.createElement('style');se.type="text/css";if(se.styleSheet){se.styleSheet.cssText=txt;}else{se.appendChild(document.createTextNode(txt));}
-document.getElementsByTagName('head')[0].appendChild(se);},add:function(parent,newtag,className,cs,innerHTML,onclick){if(parent&&parent.substr)parent=wn.dom.by_id(parent);var c=document.createElement(newtag);if(parent)
-parent.appendChild(c);if(className){if(newtag.toLowerCase()=='img')
-c.src=className
-else
-c.className=className;}
-if(cs)wn.dom.css(c,cs);if(innerHTML)c.innerHTML=innerHTML;if(onclick)c.onclick=onclick;return c;},css:function(ele,s){if(ele&&s){for(var i in s)ele.style[i]=s[i];};return ele;},placeholder:function(dim,letter){function getsinglecol(){return Math.min(Math.round(Math.random()*9)*Math.round(Math.random()*1)+3,9)}
-function getcol(){return''+getsinglecol()+getsinglecol()+getsinglecol();}
-args={width:Math.round(flt(dim)*0.7)+'px',height:Math.round(flt(dim)*0.7)+'px',padding:Math.round(flt(dim)*0.15)+'px','font-size':Math.round(flt(dim)*0.6)+'px',col1:getcol(),col2:getcol(),letter:letter.substr(0,1).toUpperCase()}
-return repl('<div style="\
-   height: %(height)s; \
-   width: %(width)s; \
-   font-size: %(font-size)s; \
-   color: #fff; \
-   text-align: center; \
-   padding: %(padding)s; \
-   background: -moz-linear-gradient(top,  #%(col1)s 0%, #%(col2)s 99%); /* FF3.6+ */\
-   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#%(col1)s), color-stop(99%,#%(col2)s)); /* Chrome,Safari4+ */\
-   background: -webkit-linear-gradient(top,  #%(col1)s 0%,#%(col2)s 99%); /* Chrome10+,Safari5.1+ */\
-   background: -o-linear-gradient(top,  #%(col1)s 0%,#%(col2)s 99%); /* Opera 11.10+ */\
-   background: -ms-linear-gradient(top,  #%(col1)s 0%,#%(col2)s 99%); /* IE10+ */\
-   background: linear-gradient(top,  #%(col1)s 0%,#%(col2)s 99%); /* W3C */\
-   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\'#%(col1)s\', endColorstr=\'#%(col2)s\',GradientType=0 ); /* IE6-9 */\
-   ">%(letter)s</div>',args);}}
-wn.get_cookie=function(c){var clist=(document.cookie+'').split(';');var cookies={};for(var i=0;i<clist.length;i++){var tmp=clist[i].split('=');cookies[strip(tmp[0])]=strip(tmp[1]);}
-return cookies[c];}
-wn.dom.set_box_shadow=function(ele,spread){$(ele).css('-moz-box-shadow','0px 0px '+spread+'px rgba(0,0,0,0.3);')
-$(ele).css('-webkit-box-shadow','0px 0px '+spread+'px rgba(0,0,0,0.3);')
-$(ele).css('-box-shadow','0px 0px '+spread+'px rgba(0,0,0,0.3);')};(function($){$.fn.add_options=function(options_list){for(var i=0;i<options_list.length;i++){var v=options_list[i];value=v.value||v;label=v.label||v;$('<option>').html(label).attr('value',value).appendTo(this);}
-this.selectedIndex=0;return $(this);}
-$.fn.set_working=function(){var ele=this.get(0);$(ele).attr('disabled','disabled');if(ele.loading_img){$(ele.loading_img).toggle(true);}else{ele.loading_img=$('<img src="images/lib/ui/button-load.gif" \
-    style="margin-left: 4px; margin-bottom: -2px; display: inline;" />').insertAfter(ele);}}
-$.fn.done_working=function(){var ele=this.get(0);$(ele).attr('disabled',null);if(ele.loading_img){$(ele.loading_img).toggle(false);};}})(jQuery);wn.to_csv=function(data){var res=[];$.each(data,function(i,row){row=$.map(row,function(col){return typeof(col)==="string"?('"'+col.replace(/"/g,'\"')+'"'):col;});res.push(row.join(","));});return res.join("\n");}
-/*
- *	lib/js/wn/model.js
- */
-wn.provide('wn.model');wn.model={no_value_type:['Section Break','Column Break','HTML','Table','Button','Image'],new_names:{},with_doctype:function(doctype,callback){if(locals.DocType[doctype]){callback();}else{wn.call({method:'webnotes.widgets.form.load.getdoctype',args:{doctype:doctype},callback:callback});}},with_doc:function(doctype,name,callback){if(!name)name=doctype;if(locals[doctype]&&locals[doctype][name]){callback(name);}else{wn.call({method:'webnotes.widgets.form.load.getdoc',args:{doctype:doctype,name:name},callback:function(r){callback(name,r);}});}},can_delete:function(doctype){if(!doctype)return false;return wn.boot.profile.can_cancel.indexOf(doctype)!=-1;},has_value:function(dt,dn,fn){var val=locals[dt]&&locals[dt][dn]&&locals[dt][dn][fn];var df=wn.meta.get_docfield(dt,fn,dn);if(df.fieldtype=='Table'){var ret=false;$.each(locals[df.options]||{},function(k,d){if(d.parent==dn&&d.parenttype==dt&&d.parentfield==df.fieldname){ret=true;}});}else{var ret=!is_null(val);}
-return ret?true:false;}}
-/*
- *	lib/js/wn/meta.js
- */
-wn.provide('wn.meta.docfield_map');wn.provide('wn.meta.docfield_list');wn.provide('wn.meta.doctypes');$.extend(wn.meta,{add_field:function(df){wn.provide('wn.meta.docfield_map.'+df.parent);wn.meta.docfield_map[df.parent][df.fieldname||df.label]=df;if(!wn.meta.docfield_list[df.parent])
-wn.meta.docfield_list[df.parent]=[];for(var i in wn.meta.docfield_list[df.parent]){var d=wn.meta.docfield_list[df.parent][i];if(df.fieldname==d.fieldname)
-return;}
-wn.meta.docfield_list[df.parent].push(df);},get_docfield:function(dt,fn,dn){if(dn&&local_dt[dt]&&local_dt[dt][dn]){return local_dt[dt][dn][fn];}else{return wn.meta.docfield_map[dt][fn];}}});
-/*
- *	lib/js/wn/misc/tools.js
- */
-wn.markdown=function(txt){if(!wn.md2html){wn.require('js/lib/showdown.js');wn.md2html=new Showdown.converter();}
-return'<div class="markdown">'+wn.md2html.makeHtml(txt)+'</div>';}
-/*
- *	lib/js/wn/misc/user.js
- */
-wn.user_info=function(uid){var def={'fullname':uid,'image':'images/lib/ui/no_img_m.gif'}
-if(!wn.boot.user_info)return def
-if(!wn.boot.user_info[uid])return def
-if(!wn.boot.user_info[uid].fullname)
-wn.boot.user_info[uid].fullname=uid;if(!wn.boot.user_info[uid].image)
-wn.boot.user_info[uid].image=def.image;return wn.boot.user_info[uid];}
-wn.provide('wn.user');$.extend(wn.user,{name:(wn.boot?wn.boot.profile.name:'Guest'),has_role:function(rl){if(typeof rl=='string')
-rl=[rl];for(var i in rl){if((wn.boot?wn.boot.profile.roles:['Guest']).indexOf(rl[i])!=-1)
-return true;}},is_report_manager:function(){return wn.user.has_role(['Administrator','System Manager','Report Manager']);}})
-wn.session_alive=true;$(document).bind('mousemove',function(){wn.session_alive=true;if(wn.session_alive_timeout)
-clearTimeout(wn.session_alive_timeout);wn.session_alive_timeout=setTimeout('wn.session_alive=false;',30000);})
-/*
- *	lib/js/lib/json2.js
- */
-var JSON;if(!JSON){JSON={};}
-(function(){"use strict";function f(n){return n<10?'0'+n:n;}
-if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+
-f(this.getUTCMonth()+1)+'-'+
-f(this.getUTCDate())+'T'+
-f(this.getUTCHours())+':'+
-f(this.getUTCMinutes())+':'+
-f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
-var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
-function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
-if(typeof rep==='function'){value=rep.call(holder,key,value);}
-switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
-gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
-v=partial.length===0?'[]':gap?'[\n'+gap+partial.join(',\n'+gap)+'\n'+mind+']':'['+partial.join(',')+']';gap=mind;return v;}
-if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){if(typeof rep[i]==='string'){k=rep[i];v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
-v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
-if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
-rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
-return str('',{'':value});};}
-if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
-return reviver.call(holder,key,value);}
-text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
-('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
-if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
-throw new SyntaxError('JSON.parse');};}}());
-/*
- *	lib/js/wn/router.js
- */
-wn.re_route={}
-wn.route=function(){if(wn.re_route[window.location.hash]){var re_route_val=wn.get_route_str(wn.re_route[window.location.hash]);var cur_route_val=wn.get_route_str(wn._cur_route);if(decodeURIComponent(re_route_val)===decodeURIComponent(cur_route_val)){window.history.back();return;}else{window.location.hash=wn.re_route[window.location.hash];}}
-wn._cur_route=window.location.hash;route=wn.get_route();switch(route[0]){case"List":wn.views.doclistview.show(route[1]);break;case"Form":if(route.length>3){route[2]=route.splice(2).join('/');}
-wn.views.formview.show(route[1],route[2]);break;case"Report":wn.views.reportview.show(route[1],route[2]);break;case"Report2":wn.views.reportview2.show();break;default:wn.views.pageview.show(route[0]);}}
-wn.get_route=function(route){return $.map(wn.get_route_str(route).split('/'),function(r){return decodeURIComponent(r);});}
-wn.get_route_str=function(route){if(!route)
-route=window.location.hash;if(route.substr(0,1)=='#')route=route.substr(1);if(route.substr(0,1)=='!')route=route.substr(1);return route;}
-wn.set_route=function(){route=$.map(arguments,function(a){return encodeURIComponent(a)}).join('/');window.location.hash=route;wn.app.set_favicon();}
-wn._cur_route=null;$(window).bind('hashchange',function(){if(location.hash==wn._cur_route)
-return;wn.route();});
-/*
- *	lib/js/wn/ui/listing.js
- */
-wn.provide('wn.ui');wn.ui.Listing=Class.extend({init:function(opts){this.opts=opts||{};this.page_length=20;this.start=0;this.data=[];if(opts){this.make();}},prepare_opts:function(){if(this.opts.new_doctype){if(wn.boot.profile.can_create.indexOf(this.opts.new_doctype)==-1){this.opts.new_doctype=null;}else{this.opts.new_doctype=get_doctype_label(this.opts.new_doctype);}}
-if(!this.opts.no_result_message){this.opts.no_result_message='Nothing to show'}},make:function(opts){if(opts){this.opts=opts;}
-this.prepare_opts();$.extend(this,this.opts);$(this.parent).html(repl('\
-   <div class="wnlist">\
-    <h3 class="title hide">%(title)s</h3>\
-    \
-    <div class="list-filters hide">\
-     <div class="show_filters well">\
-      <div class="filter_area"></div>\
-      <div>\
-       <button class="btn btn-small btn-info search-btn">\
-        <i class="icon-refresh icon-white"></i> Search</button>\
-       <button class="btn btn-small add-filter-btn">\
-        <i class="icon-plus"></i> Add Filter</button>\
-      </div>\
-     </div>\
-    </div>\
-    \
-    <div style="margin-bottom:9px" class="list-toolbar-wrapper">\
-     <div class="list-toolbar" style="display:inline-block; margin-right: 10px;">\
-     </div>\
-     <div style="display:inline-block; width: 24px; margin-left: 4px">\
-      <img src="images/lib/ui/button-load.gif" \
-      class="img-load"/></div>\
-    </div><div style="clear:both"></div>\
-    \
-    <div class="no-result help hide">\
-     %(no_result_message)s\
-    </div>\
-    \
-    <div class="result">\
-     <div class="result-list"></div>\
-    </div>\
-    \
-    <div class="paging-button">\
-     <button class="btn btn-small btn-more hide">More...</div>\
-    </div>\
-   </div>\
-  ',this.opts));this.$w=$(this.parent).find('.wnlist');this.set_events();if(this.appframe){this.$w.find('.list-toolbar-wrapper').toggle(false);}
-if(this.show_filters){this.make_filters();}},add_button:function(label,click,icon){if(this.appframe){return this.appframe.add_button(label,click,icon)}else{$button=$('<button class="btn btn-small"></button>').appendTo(this.$w.find('.list-toolbar'))
-if(icon){$('<i>').addClass(icon).appendTo($button);}
-$button.html(label).click(click);return $button}},show_view:function($btn,$div,$btn_unsel,$div_unsel){$btn_unsel.removeClass('btn-info');$btn_unsel.find('i').removeClass('icon-white');$div_unsel.toggle(false);$btn.addClass('btn-info');$btn.find('i').addClass('icon-white');$div.toggle(true);},set_events:function(){var me=this;this.$w.find('.btn-more').click(function(){me.run({append:true});});if(this.title){this.$w.find('h3').html(this.title).toggle(true);}
-if(!(this.hide_refresh||this.no_refresh)){this.add_button('Refresh',function(){me.run();},'icon-refresh');}
-if(this.new_doctype){this.add_button('New '+this.new_doctype,function(){(me.custom_new_doc||me.make_new_doc)(me.new_doctype);},'icon-plus');}
-if(me.show_filters){this.add_button('Show Filters',function(){me.filter_list.show_filters();},'icon-search').addClass('btn-filter');}
-if(me.no_toolbar||me.hide_toolbar){me.$w.find('.list-toolbar-wrapper').toggle(false);}},make_new_doc:function(new_doctype){new_doc(new_doctype);},make_filters:function(){this.filter_list=new wn.ui.FilterList({listobj:this,$parent:this.$w.find('.list-filters').toggle(true),doctype:this.doctype,filter_fields:this.filter_fields});},clear:function(){this.data=[];this.$w.find('.result-list').empty();this.$w.find('.result').toggle(true);this.$w.find('.no-result').toggle(false);this.start=0;},run:function(){var me=this;var a0=arguments[0];var a1=arguments[1];if(a0&&typeof a0=='function')
-this.onrun=a0;if(a0&&a0.callback)
-this.onrun=a0.callback;if(!a1&&!(a0&&a0.append))
-this.start=0;me.set_working(true);wn.call({method:this.opts.method||'webnotes.widgets.query_builder.runquery',args:this.get_call_args(a0),callback:function(r){me.set_working(false);me.render_results(r)},no_spinner:this.opts.no_loading});},set_working:function(flag){this.$w.find('.img-load').toggle(flag);},get_call_args:function(opts){if(!this.method){var query=this.get_query?this.get_query():this.query;query=this.add_limits(query);var args={query_max:this.query_max,as_dict:1}
-args.simple_query=query;}else{var args={limit_start:this.start,limit_page_length:this.page_length}}
-if(this.args)
-$.extend(args,this.args)
-if(this.get_args){$.extend(args,this.get_args(opts));}
-return args;},render_results:function(r){if(this.start==0)this.clear();this.$w.find('.btn-more').toggle(false);if(r.message)r.values=r.message;if(r.values&&r.values.length){this.data=this.data.concat(r.values);this.render_list(r.values);this.update_paging(r.values);}else{if(this.start==0){this.$w.find('.result').toggle(false);this.$w.find('.no-result').toggle(true);}}
-if(this.onrun)this.onrun();if(this.callback)this.callback(r);},render_list:function(values){var m=Math.min(values.length,this.page_length);for(var i=0;i<m;i++){this.render_row(this.add_row(),values[i],this,i);}},update_paging:function(values){if(values.length>=this.page_length){this.$w.find('.btn-more').toggle(true);this.start+=this.page_length;}},add_row:function(){return $('<div class="list-row">').appendTo(this.$w.find('.result-list')).get(0);},refresh:function(){this.run();},add_limits:function(query){query+=' LIMIT '+this.start+','+(this.page_length+1);return query}});
-/*
- *	lib/js/wn/ui/filters.js
- */
-wn.ui.FilterList=Class.extend({init:function(opts){wn.require('js/fields.js');$.extend(this,opts);this.filters=[];this.$w=this.$parent;this.set_events();},set_events:function(){var me=this;this.$w.find('.add-filter-btn').bind('click',function(){me.add_filter();});this.$w.find('.search-btn').bind('click',function(){me.listobj.run();});},show_filters:function(){this.$w.find('.show_filters').toggle();if(!this.filters.length)
-this.add_filter();},add_filter:function(tablename,fieldname,condition,value){this.push_new_filter(tablename,fieldname,condition,value);if(fieldname){this.$w.find('.show_filters').toggle(true);}},push_new_filter:function(tablename,fieldname,condition,value){this.filters.push(new wn.ui.Filter({flist:this,tablename:tablename,fieldname:fieldname,condition:condition,value:value}));},get_filters:function(){var values=[];$.each(this.filters,function(i,f){if(f.field)
-values.push(f.get_value());})
-return values;},update_filters:function(){var fl=[];$.each(this.filters,function(i,f){if(f.field)fl.push(f);})
-this.filters=fl;},get_filter:function(fieldname){for(var i in this.filters){if(this.filters[i].field.df.fieldname==fieldname)
-return this.filters[i];}}});wn.ui.Filter=Class.extend({init:function(opts){$.extend(this,opts);this.doctype=this.flist.doctype;this.make();this.make_select();this.set_events();},make:function(){this.flist.$w.find('.filter_area').append('<div class="list_filter">\
-  <span class="fieldname_select_area"></span>\
-  <select class="condition">\
-   <option value="=">Equals</option>\
-   <option value="like">Like</option>\
-   <option value=">=">Greater or equals</option>\
-   <option value="<=">Less or equals</option>\
-   <option value=">">Greater than</option>\
-   <option value="<">Less than</option>\
-   <option value="in">In</option>\
-   <option value="!=">Not equals</option>\
-  </select>\
-  <span class="filter_field"></span>\
-  <a class="close">&times;</a>\
-  </div>');this.$w=this.flist.$w.find('.list_filter:last-child');},make_select:function(){this.fieldselect=new wn.ui.FieldSelect(this.$w.find('.fieldname_select_area'),this.doctype,this.filter_fields);},set_events:function(){var me=this;this.fieldselect.$select.bind('change',function(){var $selected=$(this).find("option:selected")
-me.set_field($selected.attr("table"),$selected.attr("fieldname"));});this.$w.find('a.close').bind('click',function(){me.$w.css('display','none');var value=me.field.get_value();me.field=null;if(!me.flist.get_filters().length){me.flist.$w.find('.set_filters').toggle(true);me.flist.$w.find('.show_filters').toggle(false);}
-if(value){me.flist.listobj.run();}
-me.flist.update_filters();return false;});me.$w.find('.condition').change(function(){if($(this).val()=='in'){me.set_field(me.field.df.parent,me.field.df.fieldname,'Data');if(!me.field.desc_area)
-me.field.desc_area=$a(me.field.wrapper,'span','help',null,'values separated by comma');}else{me.set_field(me.field.df.parent,me.field.df.fieldname);}});if(me.fieldname){this.set_values(me.tablename,me.fieldname,me.condition,me.value);}else{me.set_field(me.doctype,'name');}},set_values:function(tablename,fieldname,condition,value){this.set_field(tablename,fieldname);if(condition)this.$w.find('.condition').val(condition).change();if(value)this.field.set_input(value)},set_field:function(tablename,fieldname,fieldtype){var me=this;var cur=me.field?{fieldname:me.field.df.fieldname,fieldtype:me.field.df.fieldtype,parent:me.field.df.parent,}:{}
-var df=me.fieldselect.fields_by_name[tablename][fieldname];this.set_fieldtype(df,fieldtype);if(me.field&&cur.fieldname==fieldname&&df.fieldtype==cur.fieldtype&&df.parent==cur.parent){return;}
-me.fieldselect.$select.val(tablename+"."+fieldname);var field_area=me.$w.find('.filter_field').empty().get(0);f=make_field(df,null,field_area,null,0,1);f.df.single_select=1;f.not_in_form=1;f.with_label=0;f.refresh();me.field=f;this.set_default_condition(df,fieldtype);$(me.field.wrapper).find(':input').keydown(function(ev){if(ev.which==13){me.flist.listobj.run();}})},set_fieldtype:function(df,fieldtype){if(df.original_type)
-df.fieldtype=df.original_type;else
-df.original_type=df.fieldtype;df.description='';df.reqd=0;if(fieldtype){df.fieldtype=fieldtype;return;}
-if(df.fieldtype=='Check'){df.fieldtype='Select';df.options='No\nYes';}else if(['Text','Text Editor','Code','Link'].indexOf(df.fieldtype)!=-1){df.fieldtype='Data';}},set_default_condition:function(df,fieldtype){if(!fieldtype){if(df.fieldtype=='Data'){this.$w.find('.condition').val('like');}else{this.$w.find('.condition').val('=');}}},get_value:function(){var me=this;var val=me.field.get_value();var cond=me.$w.find('.condition').val();if(me.field.df.original_type=='Check'){val=(val=='Yes'?1:0);}
-if(cond=='like'){if((val.length===0)||(val.lastIndexOf("%")!==(val.length-1))){val=(val||"")+'%';}}
-return[me.fieldselect.$select.find('option:selected').attr('table'),me.field.df.fieldname,me.$w.find('.condition').val(),cstr(val)];}});wn.ui.FieldSelect=Class.extend({init:function(parent,doctype,filter_fields,with_blank){this.doctype=doctype;this.fields_by_name={};this.with_blank=with_blank;this.$select=$('<select>').appendTo(parent);if(filter_fields){for(var i in filter_fields)
-this.add_field_option(this.filter_fields[i])}else{this.build_options();}},build_options:function(){var me=this;me.table_fields=[];var std_filters=[{fieldname:'name',fieldtype:'Data',label:'ID',parent:me.doctype},{fieldname:'modified',fieldtype:'Date',label:'Last Modified',parent:me.doctype},{fieldname:'owner',fieldtype:'Data',label:'Created By',parent:me.doctype},{fieldname:'creation',fieldtype:'Date',label:'Created On',parent:me.doctype},{fieldname:'_user_tags',fieldtype:'Data',label:'Tags',parent:me.doctype},{fieldname:'docstatus',fieldtype:'Int',label:'Doc Status',parent:me.doctype},];var doctype_obj=locals['DocType'][me.doctype];if(doctype_obj&&cint(doctype_obj.istable)){std_filters=std_filters.concat([{fieldname:'parent',fieldtype:'Data',label:'Parent',parent:me.doctype}]);}
-if(this.with_blank){this.$select.append($('<option>',{value:''}).text(''));}
-$.each(std_filters.concat(wn.meta.docfield_list[me.doctype]),function(i,df){me.add_field_option(df);});$.each(me.table_fields,function(i,table_df){if(table_df.options){$.each(wn.meta.docfield_list[table_df.options],function(i,df){me.add_field_option(df);});}});},add_field_option:function(df){var me=this;if(me.doctype&&df.parent==me.doctype){var label=df.label;var table=me.doctype;if(df.fieldtype=='Table')me.table_fields.push(df);}else{var label=df.label+' ('+df.parent+')';var table=df.parent;}
-if(wn.model.no_value_type.indexOf(df.fieldtype)==-1&&!(me.fields_by_name[df.parent]&&me.fields_by_name[df.parent][df.fieldname])){this.$select.append($('<option>',{value:table+"."+df.fieldname,fieldname:df.fieldname,table:df.parent}).text(label));if(!me.fields_by_name[df.parent])me.fields_by_name[df.parent]={};me.fields_by_name[df.parent][df.fieldname]=df;}}})
-/*
- *	lib/js/wn/views/container.js
- */
-wn.provide('wn.pages');wn.provide('wn.views');wn.views.Container=Class.extend({init:function(){this.container=$('#body_div').get(0);this.page=null;this.pagewidth=$('#body_div').width();this.pagemargin=50;},add_page:function(label,onshow,onhide){var page=$('<div class="content"></div>').attr('id',"page-"+label).appendTo(this.container).get(0);if(onshow)
-$(page).bind('show',onshow);if(onshow)
-$(page).bind('hide',onhide);page.label=label;wn.pages[label]=page;return page;},change_to:function(label){if(this.page&&this.page.label==label){$(this.page).trigger('show');return;}
-var me=this;if(label.tagName){var page=label;}else{var page=wn.pages[label];}
-if(!page){console.log('Page not found '+label);return;}
-if(this.page&&this.page!=page){$(this.page).toggle(false);$(this.page).trigger('hide');}
-if(!this.page||this.page!=page){this.page=page;$(this.page).toggle(true);}
-this.page._route=window.location.hash;document.title=this.page.label;$(this.page).trigger('show');scroll(0,0);return this.page;}});wn.views.add_module_btn=function(parent,module){$(parent).append(repl('<span class="label" style="margin-right: 8px; cursor: pointer;"\
-     onclick="wn.set_route(\'%(module_small)s-home\')">\
-     <i class="icon-home icon-white"></i> %(module)s Home\
-    </span>',{module:module,module_small:module.toLowerCase()}));}
-wn.views.add_list_btn=function(parent,doctype){$(parent).append(repl('<span class="label" style="margin-right: 8px; cursor: pointer;"\
-     onclick="wn.set_route(\'List\', \'%(doctype)s\')">\
-     <i class="icon-list icon-white"></i> %(doctype)s List\
-    </span>',{doctype:doctype}));}
-/*
- *	lib/js/wn/views/pageview.js
- */
-wn.provide('wn.views.pageview');wn.views.pageview={with_page:function(name,callback){if((locals.Page&&locals.Page[name])||name==window.page_name){callback();}else{wn.call({method:'webnotes.widgets.page.getpage',args:{'name':name},callback:callback});}},show:function(name){if(!name)name=(wn.boot?wn.boot.home_page:window.page_name);wn.views.pageview.with_page(name,function(r){if(r&&r.exc){if(!r['403'])wn.container.change_to('404');}else if(!wn.pages[name]){new wn.views.Page(name);}
-wn.container.change_to(name);});}}
-wn.views.Page=Class.extend({init:function(name,wrapper){this.name=name;var me=this;if(name==window.page_name){this.wrapper=document.getElementById('page-'+name);this.wrapper.label=document.title||window.page_name;this.wrapper.page_name=window.page_name;wn.pages[window.page_name]=this.wrapper;}else{this.pagedoc=locals.Page[this.name];this.wrapper=wn.container.add_page(this.name);this.wrapper.label=this.pagedoc.title||this.pagedoc.name;this.wrapper.page_name=this.pagedoc.name;this.wrapper.innerHTML=this.pagedoc.content;wn.dom.eval(this.pagedoc.__script||this.pagedoc.script||'');wn.dom.set_style(this.pagedoc.style||'');}
-this.trigger('onload');$(this.wrapper).bind('show',function(){cur_frm=null;me.trigger('onshow');me.trigger('refresh');});},trigger:function(eventname){var me=this;try{if(pscript[eventname+'_'+this.name]){pscript[eventname+'_'+this.name](me.wrapper);}else if(me.wrapper[eventname]){me.wrapper[eventname](me.wrapper);}}catch(e){console.log(e);}}})
-wn.views.make_404=function(){var page=wn.container.add_page('404');$(page).html('<div class="layout-wrapper">\
-  <h1>Not Found</h1><br>\
-  <p>Sorry we were unable to find what you were looking for.</p>\
-  <p><a href="#">Go back to home</a></p>\
-  </div>').toggle(false);};wn.views.make_403=function(){var page=wn.container.add_page('403');$(page).html('<div class="layout-wrapper">\
-  <h1>Not Permitted</h1><br>\
-  <p>Sorry you are not permitted to view this page.</p>\
-  <p><a href="#">Go back to home</a></p>\
-  </div>').toggle(false);};
-/*
- *	lib/js/wn/request.js
- */
-wn.provide('wn.request');wn.request.url='server.py';wn.request.prepare=function(opts){if(opts.btn)$(opts.btn).set_working();if(opts.show_spinner)set_loading();if(opts.freeze)freeze();if(!opts.args.cmd){console.log(opts)
-throw"Incomplete Request";}}
-wn.request.cleanup=function(opts,r){if(opts.btn)$(opts.btn).done_working();if(opts.show_spinner)hide_loading();if(opts.freeze)unfreeze();if(wn.boot&&wn.boot.sid&&wn.get_cookie('sid')!=wn.boot.sid){if(!wn.app.logged_out){msgprint('Session Expired. Logging you out');wn.app.logout();}
-return;}
-if(r.server_messages){r.server_messages=JSON.parse(r.server_messages)
-msgprint(r.server_messages);}
-if(r.exc){r.exc=JSON.parse(r.exc);if(r.exc instanceof Array){$.each(r.exc,function(i,v){if(v)console.log(v);})}else{console.log(r.exc);}};if(r['403']){wn.container.change_to('403');}
-if(r.docs){LocalDB.sync(r.docs);}
-wn.last_response=r;}
-wn.request.call=function(opts){wn.request.prepare(opts);var ajax_args={url:opts.url||wn.request.url,data:opts.args,type:opts.type||'POST',dataType:opts.dataType||'json',success:function(r,xhr){wn.request.cleanup(opts,r);opts.success&&opts.success(r,xhr.responseText);},error:function(xhr,textStatus){wn.request.cleanup(opts,{});show_alert('Unable to complete request: '+textStatus)
-opts.error&&opts.error(xhr)}};if(opts.progress_bar){var interval=null;$.extend(ajax_args,{xhr:function(){var xhr=jQuery.ajaxSettings.xhr();interval=setInterval(function(){if(xhr.readyState>2){var total=parseInt(xhr.getResponseHeader('Original-Length')||0)||parseInt(xhr.getResponseHeader('Content-Length'));var completed=parseInt(xhr.responseText.length);var percent=(100.0/total*completed).toFixed(2);opts.progress_bar.css('width',(percent<10?10:percent)+'%');}},50);wn.last_xhr=xhr;return xhr;},complete:function(){opts.progress_bar.css('width','100%');clearInterval(interval);}})}
-$.ajax(ajax_args);}
-wn.call=function(opts){var args=$.extend({},opts.args)
-if(opts.module&&opts.page){args.cmd=opts.module+'.page.'+opts.page+'.'+opts.page+'.'+opts.method}else if(opts.method){args.cmd=opts.method;}
-for(key in args){if(args[key]&&typeof args[key]!='string'){args[key]=JSON.stringify(args[key]);}}
-wn.request.call({args:args,success:opts.callback,error:opts.error,btn:opts.btn,freeze:opts.freeze,show_spinner:!opts.no_spinner,progress_bar:opts.progress_bar});}
-/*
- *	lib/js/core.js
- */
-if(!console){var console={log:function(txt){}}}
-window._version_number="%(_version_number)s";$(document).ready(function(){wn.assets.check();wn.provide('wn.app');$.extend(wn.app,new wn.Application());});
-
-/*
- *	lib/js/legacy/globals.js
- */
-wn.provide('wn.widgets.form');wn.provide('wn.widgets.report');wn.provide('wn.utils');wn.provide('wn.model');wn.provide('wn.profile');wn.provide('wn.session');wn.provide('_f');wn.provide('_p');wn.provide('_r');wn.provide('_c');wn.provide('_e');wn.provide('_startup_data')
-wn.settings.no_history=1;var NEWLINE='\n';var profile=null;var user=null;var user_defaults=null;var user_roles=null;var user_fullname=null;var user_email=null;var user_img={};var pscript={};var selector=null;var top_index=91;var _f={};var _p={};var _e={};var _r={};var FILTER_SEP='\1';var frms={};var cur_frm=null;var pscript={};var validated=true;var validation_message='';var tinymce_loaded=null;
-/*
- *	lib/js/legacy/utils/datatype.js
- */
-wn.utils.full_name=function(fn,ln){return fn+(ln?' ':'')+(ln?ln:'')}
-function fmt_money(v){if(v==null||v=='')return'0.00';v=(v+'').replace(/,/g,'');v=parseFloat(v);if(isNaN(v)){return'';}else{var val=2;if(wn.boot.sysdefaults.currency_format=='Millions')val=3;v=v.toFixed(2);var delimiter=",";amount=v+'';var a=amount.split('.',2)
-var d=a[1];var i=parseInt(a[0]);if(isNaN(i)){return'';}
-var minus='';if(v<0){minus='-';}
-i=Math.abs(i);var n=new String(i);var a=[];if(n.length>3)
-{var nn=n.substr(n.length-3);a.unshift(nn);n=n.substr(0,n.length-3);while(n.length>val)
-{var nn=n.substr(n.length-val);a.unshift(nn);n=n.substr(0,n.length-val);}}
-if(n.length>0){a.unshift(n);}
-n=a.join(delimiter);if(d.length<1){amount=n;}
-else{amount=n+'.'+d;}
-amount=minus+amount;return amount;}}
-function toTitle(str){var word_in=str.split(" ");var word_out=[];for(w in word_in){word_out[w]=word_in[w].charAt(0).toUpperCase()+word_in[w].slice(1);}
-return word_out.join(" ");}
-function is_null(v){if(v==null){return 1}else if(v==0){if((v+'').length>=1)return 0;else return 1;}else{return 0}}
-function $s(ele,v,ftype,fopt){if(v==null)v='';if(ftype=='Text'||ftype=='Small Text'){ele.innerHTML=v?v.replace(/\n/g,'<br>'):'';}else if(ftype=='Date'){v=dateutil.str_to_user(v);if(v==null)v=''
-ele.innerHTML=v;}else if(ftype=='Link'&&fopt){ele.innerHTML='';doc_link(ele,fopt,v);}else if(ftype=='Currency'){ele.style.textAlign='right';if(is_null(v))
-ele.innerHTML='';else
-ele.innerHTML=fmt_money(v);}else if(ftype=='Int'){ele.style.textAlign='right';ele.innerHTML=v;}else if(ftype=='Check'){if(v)ele.innerHTML='<img src="images/lib/ui/tick.gif">';else ele.innerHTML='';}else{ele.innerHTML=v;}}
-function clean_smart_quotes(s){if(s){s=s.replace(/\u2018/g,"'");s=s.replace(/\u2019/g,"'");s=s.replace(/\u201c/g,'"');s=s.replace(/\u201d/g,'"');s=s.replace(/\u2013/g,'-');s=s.replace(/\u2014/g,'--');}
-return s;}
-function copy_dict(d){var n={};for(var k in d)n[k]=d[k];return n;}
-function $p(ele,top,left){ele.style.position='absolute';ele.style.top=top+'px';ele.style.left=left+'px';}
-function replace_newlines(t){return t?t.replace(/\n/g,'<br>'):'';}
-function cstr(s){if(s==null)return'';return s+'';}
-function nth(number){number=cint(number);var s='th';if((number+'').substr(-1)=='1')s='st';if((number+'').substr(-1)=='2')s='nd';if((number+'').substr(-1)=='3')s='rd';return number+s;}
-function flt(v,decimals){if(v==null||v=='')return 0;v=(v+'').replace(/,/g,'');v=parseFloat(v);if(isNaN(v))
-v=0;if(decimals!=null)
-return parseFloat(v.toFixed(decimals));return v;}
-function esc_quotes(s){if(s==null)s='';return s.replace(/'/,"\'");}
-var crop=function(s,len){if(s.length>len)
-return s.substr(0,len-3)+'...';else
-return s;}
-var strip=function(s,chars){var s=lstrip(s,chars)
-s=rstrip(s,chars);return s;}
-var lstrip=function(s,chars){if(!chars)chars=['\n','\t',' '];var first_char=s.substr(0,1);while(in_list(chars,first_char)){var s=s.substr(1);first_char=s.substr(0,1);}
-return s;}
-var rstrip=function(s,chars){if(!chars)chars=['\n','\t',' '];var last_char=s.substr(s.length-1);while(in_list(chars,last_char)){var s=s.substr(0,s.length-1);last_char=s.substr(s.length-1);}
-return s;}
-function repl_all(s,s1,s2){var idx=s.indexOf(s1);while(idx!=-1){s=s.replace(s1,s2);idx=s.indexOf(s1);}
-return s;}
-function repl(s,dict){if(s==null)return'';for(key in dict)s=repl_all(s,'%('+key+')s',dict[key]);return s;}
-function keys(obj){var mykeys=[];for(key in obj)mykeys[mykeys.length]=key;return mykeys;}
-function values(obj){var myvalues=[];for(key in obj)myvalues[myvalues.length]=obj[key];return myvalues;}
-function in_list(list,item){for(var i=0;i<list.length;i++)
-if(list[i]==item)return true;return false;}
-function has_common(list1,list2){if(!list1||!list2)return false;for(var i=0;i<list1.length;i++){if(in_list(list2,list1[i]))return true;}
-return false;}
-var inList=in_list;function add_lists(l1,l2){var l=[];for(var k in l1)l.push(l1[k]);for(var k in l2)l.push(l2[k]);return l;}
-function docstring(obj){return JSON.stringify(obj);}
-function DocLink(p,doctype,name,onload){var a=$a(p,'span','link_type');a.innerHTML=a.dn=name;a.dt=doctype;a.onclick=function(){loaddoc(this.dt,this.dn,onload)};return a;}
-var doc_link=DocLink;function roundNumber(num,dec){var result=Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);return result;}
-/*
- *	lib/js/legacy/utils/datetime.js
- */
-function same_day(d1,d2){if(d1.getFullYear()==d2.getFullYear()&&d1.getMonth()==d2.getMonth()&&d1.getDate()==d2.getDate())return true;else return false;}
-var month_list=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];var month_last={1:31,2:28,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31}
-var month_list_full=['January','February','March','April','May','June','July','August','September','October','November','December'];var week_list=['Sun','Mon','Tue','Wed','Thu','Fri','Sat'];var week_list_full=['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];function int_to_str(i,len){i=''+i;if(i.length<len)for(c=0;c<(len-i.length);c++)i='0'+i;return i}
-wn.datetime={str_to_obj:function(d){if(typeof d=="object")return d;if(!d)return new Date();var tm=[null,null];if(d.search(' ')!=-1){var tm=d.split(' ')[1].split(':');var d=d.split(' ')[0];}
-if(d.search('-')!=-1){var t=d.split('-');return new Date(t[0],t[1]-1,t[2],tm[0],tm[1]);}else if(d.search('/')!=-1){var t=d.split('/');return new Date(t[0],t[1]-1,t[2],tm[0],tm[1]);}else{return new Date();}},obj_to_str:function(d){if(typeof d=='string')return d;return d.getFullYear()+'-'+int_to_str(d.getMonth()+1,2)+'-'+int_to_str(d.getDate(),2);},obj_to_user:function(d){return dateutil.str_to_user(dateutil.obj_to_str(d));},get_diff:function(d1,d2){if(typeof d1=='string')d1=dateutil.str_to_obj(d1);if(typeof d2=='string')d2=dateutil.str_to_obj(d2);return((d1-d2)/86400000);},get_day_diff:function(d1,d2){return dateutil.get_diff(new Date(d1.getYear(),d1.getMonth(),d1.getDate(),0,0),new Date(d2.getYear(),d2.getMonth(),d2.getDate(),0,0))},add_days:function(d,days){var dt=dateutil.str_to_obj(d);var new_dt=new Date(dt.getTime()+(days*24*60*60*1000));return dateutil.obj_to_str(new_dt);},add_months:function(d,months){dt=dateutil.str_to_obj(d)
-new_dt=new Date(dt.getFullYear(),dt.getMonth()+months,dt.getDate())
-if(new_dt.getDate()!=dt.getDate()){return dateutil.month_end(new Date(dt.getFullYear(),dt.getMonth()+months,1))}
-return dateutil.obj_to_str(new_dt);},month_start:function(){var d=new Date();return d.getFullYear()+'-'+int_to_str(d.getMonth()+1,2)+'-01';},month_end:function(d){if(!d)var d=new Date();var m=d.getMonth()+1;var y=d.getFullYear();last_date=month_last[m];if(m==2&&(y%4)==0&&((y%100)!=0||(y%400)==0))
-last_date=29;return y+'-'+int_to_str(m,2)+'-'+last_date;},get_user_fmt:function(){var t=sys_defaults.date_format;if(!t)t='dd-mm-yyyy';return t;},str_to_user:function(val,no_time_str){var user_fmt=dateutil.get_user_fmt();var time_str='';if(val==null||val=='')return null;if(val.search(':')!=-1){var tmp=val.split(' ');if(tmp[1])
-time_str=' '+tmp[1];var d=tmp[0];}else{var d=val;}
-if(no_time_str)time_str='';d=d.split('-');if(d.length==3){if(user_fmt=='dd-mm-yyyy')
-val=d[2]+'-'+d[1]+'-'+d[0]+time_str;else if(user_fmt=='dd/mm/yyyy')
-val=d[2]+'/'+d[1]+'/'+d[0]+time_str;else if(user_fmt=='yyyy-mm-dd')
-val=d[0]+'-'+d[1]+'-'+d[2]+time_str;else if(user_fmt=='mm/dd/yyyy')
-val=d[1]+'/'+d[2]+'/'+d[0]+time_str;else if(user_fmt=='mm-dd-yyyy')
-val=d[1]+'-'+d[2]+'-'+d[0]+time_str;}
-return val;},full_str:function(){var d=new Date();return d.getFullYear()+'-'+(d.getMonth()+1)+'-'+d.getDate()+' '
-+d.getHours()+':'+d.getMinutes()+':'+d.getSeconds();},user_to_str:function(d){var user_fmt=this.get_user_fmt();var time_str='';if(d.search(/ /)!=-1){time_str=" "+d.split(" ")[1];d=d.split(" ")[0];}
-if(user_fmt=='dd-mm-yyyy'){var d=d.split('-');var val=d[2]+'-'+d[1]+'-'+d[0];}
-else if(user_fmt=='dd/mm/yyyy'){var d=d.split('/');var val=d[2]+'-'+d[1]+'-'+d[0];}
-else if(user_fmt=='yyyy-mm-dd'){var val=d;}
-else if(user_fmt=='mm/dd/yyyy'){var d=d.split('/');var val=d[2]+'-'+d[0]+'-'+d[1];}
-else if(user_fmt=='mm-dd-yyyy'){var d=d.split('-');var val=d[2]+'-'+d[0]+'-'+d[1];}
-return val+time_str;},user_to_obj:function(d){return dateutil.str_to_obj(dateutil.user_to_str(d));},global_date_format:function(d){if(d.substr)d=this.str_to_obj(d);return nth(d.getDate())+' '+month_list_full[d.getMonth()]+' '+d.getFullYear();},get_today:function(){var today=new Date();var m=(today.getMonth()+1)+'';if(m.length==1)m='0'+m;var d=today.getDate()+'';if(d.length==1)d='0'+d;return today.getFullYear()+'-'+m+'-'+d;},get_cur_time:function(){var d=new Date();var hh=d.getHours()+''
-var mm=cint(d.getMinutes()/5)*5+''
-return(hh.length==1?'0'+hh:hh)+':'+(mm.length==1?'0'+mm:mm);}}
-wn.datetime.only_date=function(val){if(val==null||val=='')return null;if(val.search(':')!=-1){var tmp=val.split(' ');var d=tmp[0].split('-');}else{var d=val.split('-');}
-if(d.length==3)
-val=d[2]+'-'+d[1]+'-'+d[0];return val;}
-wn.datetime.time_to_ampm=function(v){if(!v){var d=new Date();var t=[d.getHours(),cint(d.getMinutes()/5)*5+'']}else{var t=v.split(':');}
-if(t.length!=2){show_alert('[set_time] Incorect time format');return;}
-if(t[1].length==1)t[1]='0'+t[1];if(cint(t[0])==0)var ret=['12',t[1],'AM'];else if(cint(t[0])<12)var ret=[cint(t[0])+'',t[1],'AM'];else if(cint(t[0])==12)var ret=['12',t[1],'PM'];else var ret=[(cint(t[0])-12)+'',t[1],'PM'];return ret;}
-wn.datetime.time_to_hhmm=function(hh,mm,am){if(am=='AM'&&hh=='12'){hh='00';}else if(am=='PM'&&hh!='12'){hh=cint(hh)+12;}
-if(!mm)mm='00';if(!hh)hh='00';return hh+':'+mm;}
-function prettyDate(time){if(!time)return''
-var date=time;if(typeof(time)=="string")
-date=new Date((time||"").replace(/-/g,"/").replace(/[TZ]/g," ").replace(/\.[0-9]*/,""));var diff=(((new Date()).getTime()-date.getTime())/1000),day_diff=Math.floor(diff/86400);if(isNaN(day_diff)||day_diff<0)
-return'';return day_diff==0&&(diff<60&&"just now"||diff<120&&"1 minute ago"||diff<3600&&Math.floor(diff/60)+" minutes ago"||diff<7200&&"1 hour ago"||diff<86400&&Math.floor(diff/3600)+" hours ago")||day_diff==1&&"Yesterday"||day_diff<7&&day_diff+" days ago"||day_diff<31&&Math.ceil(day_diff/7)+" weeks ago"||day_diff<365&&Math.ceil(day_diff/30)+" months ago"||"more than "+Math.floor(day_diff/365)+" year(s) ago";}
-if(typeof jQuery!="undefined")
-jQuery.fn.prettyDate=function(){return this.each(function(){var date=prettyDate(this.title);if(date)
-jQuery(this).text(date);});};var comment_when=prettyDate;wn.datetime.comment_when=prettyDate;var date=dateutil=wn.datetime;var get_today=wn.datetime.get_today
-var time_to_ampm=wn.datetime.time_to_ampm;var time_to_hhmm=wn.datetime.time_to_hhmm;var only_date=wn.datetime.only_date;
-/*
- *	lib/js/legacy/utils/dom.js
- */
-wn.tinymce={add_simple:function(ele,height){if(ele.myid){tinyMCE.execCommand('mceAddControl',true,ele.myid);return;}
-ele.myid=wn.dom.set_unique_id(ele);$(ele).tinymce({script_url:'js/lib/tiny_mce_33/tiny_mce.js',height:height?height:'200px',theme:"advanced",theme_advanced_buttons1:"bold,italic,underline,separator,strikethrough,justifyleft,justifycenter,justifyright,justifyfull,bullist,numlist,outdent,indent,link,unlink,forecolor,backcolor,code,",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"left",theme_advanced_path:false,theme_advanced_resizing:false});},remove:function(ele){tinyMCE.execCommand('mceRemoveControl',true,ele.myid);},get_value:function(ele){return tinymce.get(ele.myid).getContent();}}
-wn.ele={link:function(args){var span=$a(args.parent,'span','link_type',args.style);span.loading_img=$a(args.parent,'img','',{margin:'0px 4px -2px 4px',display:'none'});span.loading_img.src='images/lib/ui/button-load.gif';span.innerHTML=args.label;span.user_onclick=args.onclick;span.onclick=function(){if(!this.disabled)this.user_onclick(this);}
-span.set_working=function(){this.disabled=1;$di(this.loading_img);}
-span.done_working=function(){this.disabled=0;$dh(this.loading_img);}
-return span;}}
-function $ln(parent,label,onclick,style){return wn.ele.link({parent:parent,label:label,onclick:onclick,style:style})}
-function $btn(parent,label,onclick,style,css_class,is_ajax){if(css_class==='green')css_class='btn-info';return new wn.ui.Button({parent:parent,label:label,onclick:onclick,style:style,is_ajax:is_ajax,css_class:css_class}).btn;}
-$item_normal=function(ele){$y(ele,{padding:'6px 8px',cursor:'pointer',marginRight:'8px',whiteSpace:'nowrap',overflow:'hidden',borderBottom:'1px solid #DDD'});$bg(ele,'#FFF');$fg(ele,'#000');}
-$item_active=function(ele){$bg(ele,'#FE8');$fg(ele,'#000');}
-$item_selected=function(ele){$bg(ele,'#777');$fg(ele,'#FFF');}
-$item_pressed=function(ele){$bg(ele,'#F90');$fg(ele,'#FFF');};function set_opacity(ele,ieop){var op=ieop/100;if(ele.filters){try{ele.filters.item("DXImageTransform.Microsoft.Alpha").opacity=ieop;}catch(e){ele.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+ieop+')';}}else{ele.style.opacity=op;}}
-$br=function(ele,r,corners){if(corners){var cl=['top-left','top-right','bottom-right','bottom-left'];for(var i=0;i<4;i++){if(corners[i]){$(ele).css('-moz-border-radius-'+cl[i].replace('-',''),r).css('-webkit-'+cl[i]+'-border-radius',r);}}}else{$(ele).css('-moz-border-radius',r).css('-webkit-border-radius',r).css('border-radius',r);}}
-$bs=function(ele,r){$(ele).css('-moz-box-shadow',r).css('-webkit-box-shadow',r).css('box-shadow',r);}
-function SelectWidget(parent,options,width,editable,bg_color){var me=this;this.inp=$a(parent,'select');if(options)add_sel_options(this.inp,options);if(width)$y(this.inp,{width:width});this.set_width=function(w){$y(this.inp,{width:w})};this.set_options=function(o){add_sel_options(this.inp,o);}
-this.inp.onchange=function(){if(me.onchange)me.onchange(this);}
-return;}
-function empty_select(s){if(s.custom_select){s.empty();return;}
-if(s.inp)s=s.inp;if(s){var tmplen=s.length;for(var i=0;i<tmplen;i++)s.options[0]=null;}}
-function sel_val(s){if(s.custom_select){return s.inp.value?s.inp.value:'';}
-if(s.inp)s=s.inp;try{if(s.selectedIndex<s.options.length)return s.options[s.selectedIndex].value;else return'';}catch(err){return'';}}
-function add_sel_options(s,list,sel_val,o_style){if(s.custom_select){s.set_options(list)
-if(sel_val)s.inp.value=sel_val;return;}
-if(s.inp)s=s.inp;for(var i=0,len=list.length;i<len;i++){var o=new Option(list[i],list[i],false,(list[i]==sel_val?true:false));if(o_style)$y(o,o_style);s.options[s.options.length]=o;}}
-function cint(v,def){v=v+'';v=lstrip(v,['0']);v=parseInt(v);if(isNaN(v))v=def?def:0;return v;}
-function validate_email(id){if(strip(id.toLowerCase()).search("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?")==-1)return 0;else return 1;}
-function validate_spl_chars(txt){if(txt.search(/^[a-zA-Z0-9_\- ]*$/)==-1)return 1;else return 0;}
-function d2h(d){return cint(d).toString(16);}
-function h2d(h){return parseInt(h,16);}
-var $n='\n';function set_title(t){document.title=(wn.title_prefix?(wn.title_prefix+' - '):'')+t;}
-function $a(parent,newtag,className,cs,innerHTML,onclick){if(parent&&parent.substr)parent=$i(parent);var c=document.createElement(newtag);if(parent)
-parent.appendChild(c);if(className){if(newtag.toLowerCase()=='img')
-c.src=className
-else
-c.className=className;}
-if(cs)$y(c,cs);if(innerHTML)c.innerHTML=innerHTML;if(onclick)c.onclick=onclick;return c;}
-function $a_input(p,in_type,attributes,cs){if(!attributes)attributes={};var $input=$(p).append('<input type="'+in_type+'">').find('input:last');for(key in attributes)
-$input.attr(key,attributes[key]);var input=$input.get(0);if(cs)
-$y(input,cs);return input;}
-function $dh(d){if(d&&d.substr)d=$i(d);if(d&&d.style.display.toLowerCase()!='none')d.style.display='none';}
-function $ds(d){if(d&&d.substr)d=$i(d);var t='block';if(d&&in_list(['span','img','button'],d.tagName.toLowerCase()))
-t='inline'
-if(d&&d.style.display.toLowerCase()!=t)
-d.style.display=t;}
-function $di(d){if(d&&d.substr)d=$i(d);if(d)d.style.display='inline';}
-function $i(id){if(!id)return null;if(id&&id.appendChild)return id;return document.getElementById(id);}
-function $w(e,w){if(e&&e.style&&w)e.style.width=w;}
-function $h(e,h){if(e&&e.style&&h)e.style.height=h;}
-function $bg(e,w){if(e&&e.style&&w)e.style.backgroundColor=w;}
-function $y(ele,s){if(ele&&s){for(var i in s)ele.style[i]=s[i];};return ele;}
-function $yt(tab,r,c,s){var rmin=r;var rmax=r;if(r=='*'){rmin=0;rmax=tab.rows.length-1;}
-if(r.search&&r.search('-')!=-1){r=r.split('-');rmin=cint(r[0]);rmax=cint(r[1]);}
-var cmin=c;var cmax=c;if(c=='*'){cmin=0;cmax=tab.rows[0].cells.length-1;}
-if(c.search&&c.search('-')!=-1){c=c.split('-');rmin=cint(c[0]);rmax=cint(c[1]);}
-for(var ri=rmin;ri<=rmax;ri++){for(var ci=cmin;ci<=cmax;ci++)
-$y($td(tab,ri,ci),s);}}
-function set_style(txt){wn.dom.set_style(txt);}
-function make_table(parent,nr,nc,table_width,widths,cell_style,table_style){var t=$a(parent,'table');t.style.borderCollapse='collapse';if(table_width)t.style.width=table_width;if(cell_style)t.cell_style=cell_style;for(var ri=0;ri<nr;ri++){var r=t.insertRow(ri);for(var ci=0;ci<nc;ci++){var c=r.insertCell(ci);if(ri==0&&widths&&widths[ci]){c.style.width=widths[ci];}
-if(cell_style){for(var s in cell_style)c.style[s]=cell_style[s];}}}
-t.append_row=function(){return append_row(this);}
-if(table_style)$y(t,table_style);return t;}
-function append_row(t,at,style){var r=t.insertRow(at?at:t.rows.length);if(t.rows.length>1){for(var i=0;i<t.rows[0].cells.length;i++){var c=r.insertCell(i);if(style)$y(c,style);}}
-return r}
-function $td(t,r,c){if(r<0)r=t.rows.length+r;if(c<0)c=t.rows[0].cells.length+c;return t.rows[r].cells[c];}
-wn.urllib={get_arg:function(name){name=name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regexS="[\\?&]"+name+"=([^&#]*)";var regex=new RegExp(regexS);var results=regex.exec(window.location.href);if(results==null)
-return"";else
-return decodeURIComponent(results[1]);},get_dict:function(){var d={}
-var t=window.location.href.split('?')[1];if(!t)return d;if(t.indexOf('#')!=-1)t=t.split('#')[0];if(!t)return d;t=t.split('&');for(var i=0;i<t.length;i++){var a=t[i].split('=');d[decodeURIComponent(a[0])]=decodeURIComponent(a[1]);}
-return d;},get_base_url:function(){var url=window.location.href.split('#')[0].split('?')[0].split('app.html')[0];if(url.substr(url.length-1,1)=='/')url=url.substr(0,url.length-1)
-return url},get_file_url:function(file_id){return repl('files/%(fn)s',{fn:file_id})}}
-get_url_arg=wn.urllib.get_arg;get_url_dict=wn.urllib.get_dict;
-/*
- *	lib/js/legacy/utils/handler.js
- */
-function $c(command,args,callback,error,no_spinner,freeze_msg,btn){wn.request.call({args:$.extend(args,{cmd:command}),success:callback,error:error,btn:btn,freeze:freeze_msg,show_spinner:!no_spinner})}
-function $c_obj(doclist,method,arg,callback,no_spinner,freeze_msg,btn){if(arg&&typeof arg!='string')arg=JSON.stringify(arg);args={cmd:'runserverobj',arg:arg,method:method};if(typeof doclist=='string')
-args.doctype=doclist;else
-args.docs=compress_doclist(doclist)
-wn.request.call({args:args,success:callback,btn:btn,freeze:freeze_msg,show_spinner:!no_spinner});}
-function $c_page(module,page,method,arg,callback,no_spinner,freeze_msg,btn){if(arg&&typeof arg!='string')arg=JSON.stringify(arg);wn.request.call({args:{cmd:module+'.page.'+page+'.'+page+'.'+method,arg:arg,method:method},success:callback,btn:btn,freeze:freeze_msg,show_spinner:!no_spinner});}
-function $c_obj_csv(doclist,method,arg){var args={}
-args.cmd='runserverobj';args.as_csv=1;args.method=method;args.arg=arg;if(doclist.substr)
-args.doctype=doclist;else
-args.docs=compress_doclist(doclist);open_url_post(wn.request.url,args);}
-function open_url_post(URL,PARAMS,new_window){var temp=document.createElement("form");temp.action=URL;temp.method="POST";temp.style.display="none";if(new_window){temp.target='_blank';}
-for(var x in PARAMS){var opt=document.createElement("textarea");opt.name=x;var val=PARAMS[x];if(typeof val!='string')
-val=JSON.stringify(val);opt.value=val;temp.appendChild(opt);}
-document.body.appendChild(temp);temp.submit();return temp;}
-/*
- *	lib/js/legacy/utils/msgprint.js
- */
-var msg_dialog;function msgprint(msg,title){if(!msg)return;if(msg instanceof Array){$.each(msg,function(i,v){if(v){msgprint(v);}})
-return;}
-if(typeof(msg)!='string')
-msg=JSON.stringify(msg);if(msg.substr(0,8)=='__small:'){show_alert(msg.substr(8));return;}
-if(!msg_dialog){msg_dialog=new wn.ui.Dialog({title:"Message",onhide:function(){msg_dialog.msg_area.empty();}});msg_dialog.msg_area=$('<div class="msgprint">').appendTo(msg_dialog.body);}
-if(msg.search(/<br>|<p>|<li>/)==-1)
-msg=replace_newlines(msg);msg_dialog.set_title(title||'Message')
-if(msg_dialog.msg_area.html())msg_dialog.msg_area.append("<hr>");msg_dialog.msg_area.append(msg);msg_dialog.show();return msg_dialog;}
-var growl_area;function show_alert(txt,id){if(!growl_area){if(!$('#dialog-container').length){$('<div id="dialog-container">').appendTo('body');}
-growl_area=$a($i('dialog-container'),'div','',{position:'fixed',bottom:'8px',right:'8px',width:'320px',zIndex:10});}
-var wrapper=$a(growl_area,'div','',{position:'relative'});var body=$a(wrapper,'div','notice');var c=$a(body,'i','icon-remove-sign',{cssFloat:'right',cursor:'pointer'});$(c).click(function(){$dh(this.wrapper)});c.wrapper=wrapper;var t=$a(body,'div','',{color:'#FFF'});$(t).html(txt);if(id){$(t).attr('id',id);}
-$(wrapper).hide().fadeIn(1000);}
-/*
- *	lib/js/wn/ui/appframe.js
- */
-wn.ui.AppFrame=Class.extend({init:function(parent,title){this.buttons={};this.$w=$('<div></div>').appendTo(parent);this.$titlebar=$('<div class="appframe-titlebar">\
-   <span class="appframe-title"></span>\
-   <span class="close">&times;</span>\
-  </div>').appendTo(this.$w);this.$w.find('.close').click(function(){window.history.back();})
-if(title)this.title(title);},title:function(txt){this.clear_breadcrumbs();this.add_breadcrumb(txt);},add_button:function(label,click,icon){this.add_toolbar();args={label:label,icon:''};if(icon){args.icon='<i class="icon '+icon+'"></i>';}
-this.buttons[label]=$(repl('<button class="btn btn-small">\
-   %(icon)s %(label)s</button>',args)).click(click).appendTo(this.toolbar);return this.buttons[label];},add_help_button:function(txt){this.add_toolbar();$('<button class="btn btn-small" style="float:right;" button-type="help">\
-   <b>?</b></button>').data('help-text',txt).click(function(){msgprint($(this).data('help-text'),'Help');}).appendTo(this.toolbar);},clear_buttons:function(){this.toolbar&&this.toolbar.empty();},add_breadcrumb:function(html){if(!this.$breadcrumbs)
-this.$breadcrumbs=$('</span>\
-    <span class="breadcrumb-area"></span>').appendTo(this.$titlebar);var crumb=$('<span>').html(html);if(!this.$breadcrumbs.find('span').length){crumb.addClass('appframe-title');}
-crumb.appendTo(this.$breadcrumbs);},clear_breadcrumbs:function(){this.$breadcrumbs&&this.$breadcrumbs.empty();},add_toolbar:function(){if(!this.toolbar)
-this.$w.append('<div class="appframe-toolbar"></div>');this.toolbar=this.$w.find('.appframe-toolbar');},add_label:function(label){return $("<span class='label'>"+label+" </span>").appendTo(this.toolbar);},add_select:function(label,options){this.add_toolbar();return $("<select style='width: 100px;'>").add_options(options).appendTo(this.toolbar);},add_data:function(label){this.add_toolbar();return $("<input style='width: 100px;' placeholder='"+label+"'>").appendTo(this.toolbar);},add_date:function(label,date){this.add_toolbar();return $("<input style='width: 80px;'>").datepicker({dateFormat:sys_defaults.date_format.replace("yyyy","yy"),changeYear:true,}).val(dateutil.str_to_user(date)||"").appendTo(this.toolbar);},});wn.ui.make_app_page=function(opts){if(opts.single_column){$(opts.parent).html('<div class="layout-wrapper layout-wrapper-appframe">\
-   <div class="layout-appframe"></div>\
-   <div class="layout-main"></div>\
-  </div>');}else{$(opts.parent).html('<div class="layout-wrapper layout-wrapper-background">\
-   <div class="layout-appframe"></div>\
-   <div class="layout-main-section"></div>\
-   <div class="layout-side-section"></div>\
-   <div class="clear"></div>\
-  </div>');}
-opts.parent.appframe=new wn.ui.AppFrame($(opts.parent).find('.layout-appframe'));if(opts.title)opts.parent.appframe.title(opts.title);}
-/*
- *	lib/js/wn/ui/dialog.js
- */
-wn.widgets.FieldGroup=function(){this.first_button=false;this.make_fields=function(body,fl){if(!window.make_field){wn.require('css/fields.css');wn.require('js/fields.js');}
-$y(this.body,{padding:'11px'});this.fields_dict={};for(var i=0;i<fl.length;i++){var df=fl[i];if(!df.fieldname&&df.label){df.fieldname=df.label.replace(/ /g,'_').toLowerCase();}
-var div=$a(body,'div','',{margin:'6px 0px'})
-f=make_field(df,null,div,null);f.not_in_form=1;this.fields_dict[df.fieldname]=f
-f.refresh();if(df.fieldtype=='Button'&&!this.first_button){$(f.input).addClass('btn-info');this.first_button=true;}}}
-this.catch_enter_as_submit=function(){var me=this;$(this.body).find(':input[type="text"], :input[type="password"]').keypress(function(e){if(e.which==13){$(me.body).find('.btn-info:first').click();}})}
-this.get_values=function(){var ret={};var errors=[];for(var key in this.fields_dict){var f=this.fields_dict[key];var v=f.get_value?f.get_value():null;if(f.df.reqd&&!v)
-errors.push(f.df.label+' is mandatory');if(v)ret[f.df.fieldname]=v;}
-if(errors.length){msgprint('<b>Please check the following Errors</b>\n'+errors.join('\n'));return null;}
-return ret;}
-this.set_value=function(key,val){var f=this.fields_dict[key];if(f){f.set_input(val);f.refresh_mandatory();}}
-this.set_values=function(dict){for(var key in dict){if(this.fields_dict[key]){this.set_value(key,dict[key]);}}}
-this.clear=function(){for(key in this.fields_dict){var f=this.fields_dict[key];if(f){f.set_input(f.df['default']||'');}}}}
-wn.widgets.Dialog=function(opts){this.display=false;this.make=function(opts){if(opts){this.opts=opts;$.extend(this,opts);}
-if(!this.opts.width)this.opts.width=480;if(!$('#dialog-container').length){$('<div id="dialog-container">').appendTo('body');}
-this.wrapper=$('<div class="dialog_wrapper">').appendTo('#dialog-container').get(0);if(this.opts.width)
-this.wrapper.style.width=this.opts.width+'px';this.make_head();this.body=$a(this.wrapper,'div','dialog_body');if(this.opts.fields){this.make_fields(this.body,this.opts.fields);this.catch_enter_as_submit();}}
-this.make_head=function(){var me=this;this.appframe=new wn.ui.AppFrame(this.wrapper);this.appframe.$titlebar.find('.close').unbind('click').click(function(){if(me.oncancel)me.oncancel();me.hide();});this.set_title(this.opts.title);}
-this.set_title=function(t){this.appframe.$titlebar.find('.appframe-title').html(t||'');}
-this.set_postion=function(){this.wrapper.style.left=(($(window).width()-cint(this.wrapper.style.width))/2)+'px';this.wrapper.style.top=($(window).scrollTop()+60)+'px';top_index++;$y(this.wrapper,{zIndex:top_index});}
-this.show=function(){if(this.display)return;this.set_postion()
-$ds(this.wrapper);freeze();this.display=true;cur_dialog=this;if(this.onshow)this.onshow();$(this.wrapper).find(':input:first').focus();}
-this.hide=function(){if(this.onhide)this.onhide();unfreeze();$dh(this.wrapper);this.display=false;cur_dialog=null;}
-this.no_cancel=function(){this.appframe.$titlebar.find('.close').toggle(false);}
-if(opts)this.make(opts);}
-wn.widgets.Dialog.prototype=new wn.widgets.FieldGroup();wn.provide('wn.ui');wn.ui.Dialog=wn.widgets.Dialog
-$(document).bind('keydown',function(e){if(cur_dialog&&!cur_dialog.no_cancel_flag&&e.which==27){cur_dialog.hide();}});
-/*
- *	lib/js/wn/ui/button.js
- */
-wn.ui.Button=function(args){var me=this;$.extend(this,{make:function(){me.btn=wn.dom.add(args.parent,'button','btn btn-small '+(args.css_class||''));me.btn.args=args;me.loading_img=wn.dom.add(me.btn.args.parent,'img','',{margin:'0px 4px -2px 4px',display:'none'});me.loading_img.src='images/lib/ui/button-load.gif';me.btn.innerHTML=args.label;me.btn.user_onclick=args.onclick;$(me.btn).bind('click',function(){if(!this.disabled&&this.user_onclick)
-this.user_onclick(this);})
-me.btn.set_working=me.set_working;me.btn.done_working=me.done_working;if(me.btn.args.style)
-wn.dom.css(me.btn,args.style);},set_working:function(){me.btn.disabled='disabled';$(me.loading_img).css('display','inline');},done_working:function(){me.btn.disabled=false;$(me.loading_img).toggle(false);}});this.make();}
-/*
- *	lib/js/legacy/widgets/dialog.js
- */
-var cur_dialog;var top_index=91;function Dialog(w,h,title,content){this.make({width:w,title:title});if(content)this.make_body(content);this.onshow='';this.oncancel='';this.no_cancel_flag=0;this.display=false;this.first_button=false;}
-Dialog.prototype=new wn.widgets.Dialog()
-Dialog.prototype.make_body=function(content){this.rows={};this.widgets={};for(var i in content)this.make_row(content[i]);}
-Dialog.prototype.clear_inputs=function(d){for(var wid in this.widgets){var w=this.widgets[wid];var tn=w.tagName?w.tagName.toLowerCase():'';if(tn=='input'||tn=='textarea'){w.value='';}else if(tn=='select'){sel_val(w.options[0].value);}else if(w.txt){w.txt.value='';}else if(w.input){w.input.value='';}}}
-Dialog.prototype.make_row=function(d){var me=this;this.rows[d[1]]=$a(this.body,'div','dialog_row');var row=this.rows[d[1]];if(d[0]!='HTML'){var t=make_table(row,1,2,'100%',['30%','70%']);row.tab=t;var c1=$td(t,0,0);var c2=$td(t,0,1);if(d[0]!='Check'&&d[0]!='Button')
-$(c1).text(d[1]);}
-if(d[0]=='HTML'){if(d[2])row.innerHTML=d[2];this.widgets[d[1]]=row;}
-else if(d[0]=='Check'){var i=$a_input(c2,'checkbox','',{width:'20px'});c1.innerHTML=d[1];this.widgets[d[1]]=i;}
-else if(d[0]=='Data'){c1.innerHTML=d[1];c2.style.overflow='auto';this.widgets[d[1]]=$a_input(c2,'text');if(d[2])$a(c2,'div','field_description').innerHTML=d[2];}
-else if(d[0]=='Link'){c1.innerHTML=d[1];var f=make_field({fieldtype:'Link','label':d[1],'options':d[2]},'',c2,this,0,1);f.not_in_form=1;f.dialog=this;f.refresh();this.widgets[d[1]]=f.input;}
-else if(d[0]=='Date'){c1.innerHTML=d[1];var f=make_field({fieldtype:'Date','label':d[1],'options':d[2]},'',c2,this,0,1);f.not_in_form=1;f.refresh();f.dialog=this;this.widgets[d[1]]=f.input;}
-else if(d[0]=='Password'){c1.innerHTML=d[1];c2.style.overflow='auto';this.widgets[d[1]]=$a_input(c2,'password');if(d[3])$a(c2,'div','field_description').innerHTML=d[3];}
-else if(d[0]=='Select'){c1.innerHTML=d[1];this.widgets[d[1]]=$a(c2,'select','',{width:'160px'})
-if(d[2])$a(c2,'div','field_description').innerHTML=d[2];if(d[3])add_sel_options(this.widgets[d[1]],d[3],d[3][0]);}
-else if(d[0]=='Text'){c1.innerHTML=d[1];c2.style.overflow='auto';this.widgets[d[1]]=$a(c2,'textarea');if(d[2])$a(c2,'div','field_description').innerHTML=d[2];}
-else if(d[0]=='Button'){c2.style.height='32px';var b=$btn(c2,d[1],function(btn){if(btn._onclick)btn._onclick(me)},null,null,1);b.dialog=me;if(!this.first_button){$(b).addClass('btn-info');this.first_button=true;}
-if(d[2]){b._onclick=d[2];}
-this.widgets[d[1]]=b;}}
-/*
- *	lib/js/legacy/webpage/page_header.js
- */
-var def_ph_style={wrapper:{marginBottom:'16px',backgroundColor:'#EEE'},main_heading:{},sub_heading:{marginBottom:'8px',color:'#555',display:'none'},separator:{borderTop:'1px solid #ddd'},toolbar_area:{padding:'3px 0px',display:'none',borderBottom:'1px solid #ddd'}}
-function PageHeader(parent,main_text,sub_text){this.wrapper=$a(parent,'div','page_header');this.close_btn=$a(this.wrapper,'a','close',{},'&times;');this.close_btn.onclick=function(){window.history.back();};this.breadcrumbs=$a(this.wrapper,'div','breadcrumbs-area');this.main_head=$a(this.wrapper,'h1','',def_ph_style.main_heading);this.sub_head=$a(this.wrapper,'h4','',def_ph_style.sub_heading);this.separator=$a(this.wrapper,'div','',def_ph_style.separator);this.toolbar_area=$a(this.wrapper,'div','',def_ph_style.toolbar_area);this.padding_area=$a(this.wrapper,'div','',{padding:'3px'});if(main_text)this.main_head.innerHTML=main_text;if(sub_text)this.sub_head.innerHTML=sub_text;this.buttons={};this.buttons2={};}
-PageHeader.prototype.add_button=function(label,fn,bold,icon,green){var tb=this.toolbar_area;if(this.buttons[label])return;iconhtml=icon?('<i class="'+icon+'"></i> '):'';var $button=$('<button class="btn btn-small">'+iconhtml+label+'</button>').click(fn).appendTo(tb);if(green){$button.addClass('btn-info');$button.find('i').addClass('icon-white');}
-if(bold)$button.css('font-weight','bold');this.buttons[label]=$button.get(0);$ds(this.toolbar_area);return this.buttons[label];}
-PageHeader.prototype.clear_toolbar=function(){this.toolbar_area.innerHTML='';this.buttons={};}
-PageHeader.prototype.make_buttonset=function(){$(this.toolbar_area).buttonset();}
-/*
- *	lib/js/legacy/webpage/spinner.js
- */
-var pending_req=0;var fcount=0;var dialog_back;function set_loading(){pending_req++;$('#spinner').css('visibility','visible');$('body').css('cursor','progress');}
-function hide_loading(){pending_req--;if(!pending_req){$('body').css('cursor','default');$('#spinner').css('visibility','hidden');}}
-function freeze(){if(!dialog_back){dialog_back=$a($i('body_div'),'div','dialog_back');$(dialog_back).css('opacity',0.6);}
-$ds(dialog_back);fcount++;}
-function unfreeze(){if(!fcount)return;fcount--;if(!fcount){$dh(dialog_back);}}
-/*
- *	lib/js/legacy/webpage/loaders.js
- */
-function loadreport(dt,rep_name,onload){if(rep_name)
-wn.set_route('Report',dt,rep_name);else
-wn.set_route('Report',dt);}
-function loaddoc(doctype,name,onload){wn.model.with_doctype(doctype,function(){if(locals.DocType[doctype].in_dialog){_f.edit_record(doctype,name);}else{wn.set_route('Form',doctype,name);}})}
-var load_doc=loaddoc;function new_doc(doctype,in_form){doctype=get_label_doctype(doctype);wn.model.with_doctype(doctype,function(){if(!in_form&&locals.DocType[doctype].in_dialog){var new_name=LocalDB.create(doctype);_f.edit_record(doctype,new_name);}else{wn.views.formview.create(doctype);}})}
-var newdoc=new_doc;var pscript={};function loadpage(page_name,call_back,no_history){wn.set_route(page_name);}
-function loaddocbrowser(dt){wn.set_route('List',dt);}
-/*
- *	lib/js/legacy/wn/widgets/footer.js
- */
-wn.widgets.Footer=function(args){$.extend(this,args);this.make=function(){this.wrapper=$a(this.parent,'div','std-footer');this.table=make_table(this.wrapper,1,this.columns,[],{width:100/this.columns+'%'});this.render_items();}
-this.render_items=function(){for(var i=0;i<this.items.length;i++){var item=this.items[i];var div=$a($td(this.table,0,item.column),'div','std-footer-item');div.label=$a($a(div,'div'),'span','link_type','',item.label);div.label.onclick=item.onclick;if(item.description){div.description=$a(div,'div','field_description','',item.description);}}}
-if(this.items)
-this.make();}
-/*
- *	lib/js/legacy/model/local_data.js
- */
-var locals={'DocType':{}};var LocalDB={};var READ=0;var WRITE=1;var CREATE=2;var SUBMIT=3;var CANCEL=4;var AMEND=5;LocalDB.getchildren=function(child_dt,parent,parentfield,parenttype){var l=[];for(var key in locals[child_dt]){var d=locals[child_dt][key];if((d.parent==parent)&&(d.parentfield==parentfield)){if(parenttype){if(d.parenttype==parenttype)l.push(d);}else{l.push(d);}}}
-l.sort(function(a,b){return(cint(a.idx)-cint(b.idx))});return l;}
-LocalDB.add=function(dt,dn){if(!locals[dt])locals[dt]={};if(locals[dt][dn])delete locals[dt][dn];locals[dt][dn]={'name':dn,'doctype':dt,'docstatus':0};return locals[dt][dn];}
-LocalDB.delete_doc=function(dt,dn){var doc=get_local(dt,dn);for(var ndt in locals){if(locals[ndt]){for(var ndn in locals[ndt]){var doc=locals[ndt][ndn];if(doc&&doc.parenttype==dt&&(doc.parent==dn||doc.__oldparent==dn)){delete locals[ndt][ndn];}}}}
-delete locals[dt][dn];}
-function get_local(dt,dn){return locals[dt]?locals[dt][dn]:null;}
-LocalDB.sync=function(list){if(list._kl)list=expand_doclist(list);if(list){LocalDB.clear_locals(list[0].doctype,list[0].name);}
-for(var i=0;i<list.length;i++){var d=list[i];if(!d.name)
-d.name=LocalDB.get_localname(d.doctype);LocalDB.add(d.doctype,d.name);locals[d.doctype][d.name]=d;if(cur_frm&&cur_frm.doctype==d.doctype&&cur_frm.docname==d.name){cur_frm.doc=d;}
-if(d.doctype=='DocField')
-wn.meta.add_field(d);if(d.localname){wn.model.new_names[d.localname]=d.name;$(document).trigger('rename',[d.doctype,d.localname,d.name]);delete locals[d.doctype][d.localname];}}}
-LocalDB.clear_locals=function(dt,dn){var doclist=make_doclist(dt,dn,1);$.each(doclist,function(i,v){v&&delete locals[v.doctype][v.name];});}
-local_name_idx={};LocalDB.get_localname=function(doctype){if(!local_name_idx[doctype])local_name_idx[doctype]=1;var n='New '+get_doctype_label(doctype)+' '+local_name_idx[doctype];local_name_idx[doctype]++;return n;}
-LocalDB.set_default_values=function(doc){var doctype=doc.doctype;var docfields=wn.meta.docfield_list[doctype];if(!docfields){return;}
-var fields_to_refresh=[];for(var fid=0;fid<docfields.length;fid++){var f=docfields[fid];if(!in_list(no_value_fields,f.fieldtype)&&doc[f.fieldname]==null){var v=LocalDB.get_default_value(f.fieldname,f.fieldtype,f['default']);if(v){doc[f.fieldname]=v;fields_to_refresh.push(f.fieldname);}}}
-return fields_to_refresh;}
-function check_perm_match(p,dt,dn){if(!dn)return true;var out=false;if(p.match){if(user_defaults[p.match]){for(var i=0;i<user_defaults[p.match].length;i++){if(user_defaults[p.match][i]==locals[dt][dn][p.match]){return true;}}
-return false;}else if(!locals[dt][dn][p.match]){return true;}else{return false;}}else{return true;}}
-function get_perm(doctype,dn,ignore_submit){var perm=[[0,0],];if(in_list(user_roles,'Administrator'))perm[0][READ]=1;var plist=getchildren('DocPerm',doctype,'permissions','DocType');for(var pidx in plist){var p=plist[pidx];var pl=cint(p.permlevel?p.permlevel:0);if(in_list(user_roles,p.role)){if(check_perm_match(p,doctype,dn)){if(!perm[pl])perm[pl]=[];if(!perm[pl][READ]){if(cint(p.read))perm[pl][READ]=1;else perm[pl][READ]=0;}
-if(!perm[pl][WRITE]){if(cint(p.write)){perm[pl][WRITE]=1;perm[pl][READ]=1;}else perm[pl][WRITE]=0;}
-if(!perm[pl][CREATE]){if(cint(p.create))perm[pl][CREATE]=1;else perm[pl][CREATE]=0;}
-if(!perm[pl][SUBMIT]){if(cint(p.submit))perm[pl][SUBMIT]=1;else perm[pl][SUBMIT]=0;}
-if(!perm[pl][CANCEL]){if(cint(p.cancel))perm[pl][CANCEL]=1;else perm[pl][CANCEL]=0;}
-if(!perm[pl][AMEND]){if(cint(p.amend))perm[pl][AMEND]=1;else perm[pl][AMEND]=0;}}}}
-if((!ignore_submit)&&dn&&locals[doctype][dn].docstatus>0){for(pl in perm)
-perm[pl][WRITE]=0;}
-return perm;}
-LocalDB.create=function(doctype,n){if(!n)n=LocalDB.get_localname(doctype);var doc=LocalDB.add(doctype,n)
-doc.__islocal=1;doc.owner=user;LocalDB.set_default_values(doc);return n;}
-LocalDB.delete_record=function(dt,dn){delete locals[dt][dn];}
-LocalDB.get_default_value=function(fn,ft,df){if(df=='_Login'||df=='__user')
-return user;else if(df=='_Full Name')
-return user_fullname;else if(ft=='Date'&&(df=='Today'||df=='__today')){return get_today();}
-else if(df)
-return df;else if(user_defaults[fn])
-return user_defaults[fn][0];else if(sys_defaults[fn])
-return sys_defaults[fn];}
-LocalDB.add_child=function(doc,childtype,parentfield){var n=LocalDB.create(childtype);var d=locals[childtype][n];d.parent=doc.name;d.parentfield=parentfield;d.parenttype=doc.doctype;return d;}
-LocalDB.no_copy_list=['amended_from','amendment_date','cancel_reason'];LocalDB.copy=function(dt,dn,from_amend){var newdoc=LocalDB.create(dt);for(var key in locals[dt][dn]){var df=wn.meta.get_docfield(dt,key);if(key!=='name'&&key.substr(0,2)!='__'&&!(df&&((!from_amend&&cint(df.no_copy)==1)||in_list(LocalDB.no_copy_list,df.fieldname)))){locals[dt][newdoc][key]=locals[dt][dn][key];}}
-return locals[dt][newdoc];}
-function make_doclist(dt,dn){if(!locals[dt]){return[];}
-var dl=[];dl[0]=locals[dt][dn];for(var ndt in locals){if(locals[ndt]){for(var ndn in locals[ndt]){var doc=locals[ndt][ndn];if(doc&&doc.parenttype==dt&&doc.parent==dn){dl.push(doc)}}}}
-return dl;}
-var Meta={};var local_dt={};Meta.make_local_dt=function(dt,dn){var dl=make_doclist('DocType',dt);if(!local_dt[dt])local_dt[dt]={};if(!local_dt[dt][dn])local_dt[dt][dn]={};for(var i=0;i<dl.length;i++){var d=dl[i];if(d.doctype=='DocField'){var key=d.fieldname?d.fieldname:d.label;local_dt[dt][dn][key]=copy_dict(d);}}}
-Meta.set_field_property=function(fn,key,val,doc){if(!doc&&(cur_frm.doc))doc=cur_frm.doc;try{local_dt[doc.doctype][doc.name][fn][key]=val;refresh_field(fn);}catch(e){alert("Client Script Error: Unknown values for "+doc.name+','+fn+'.'+key+'='+val);}}
-Meta.get_field=function(dt,fn,dn){try{return local_dt[dt][dn][fn];}catch(e){return null;}}
-function get_doctype_label(dt){return dt}
-function get_label_doctype(label){return label}
-var getchildren=LocalDB.getchildren;var createLocal=LocalDB.create;
-/*
- *	lib/js/legacy/model/doclist.js
- */
-function compress_doclist(list){var kl={};var vl=[];var flx={};for(var i=0;i<list.length;i++){var o=list[i];var fl=[];if(!kl[o.doctype]){var tfl=['doctype','name','docstatus','owner','parent','parentfield','parenttype','idx','creation','modified','modified_by','__islocal','__newname','__modified','_user_tags','__temp'];var fl=[].concat(tfl);for(key in wn.meta.docfield_map[o.doctype]){if(!in_list(fl,key)&&!in_list(no_value_fields,wn.meta.docfield_map[o.doctype][key].fieldtype)&&!wn.meta.docfield_map[o.doctype][key].no_column){fl[fl.length]=key;tfl[tfl.length]=key}}
-flx[o.doctype]=fl;kl[o.doctype]=tfl}
-var nl=[];var fl=flx[o.doctype];for(var j=0;j<fl.length;j++){var v=o[fl[j]];nl.push(v);}
-vl.push(nl);}
-return JSON.stringify({'_vl':vl,'_kl':kl});}
-function expand_doclist(docs){var l=[];for(var i=0;i<docs._vl.length;i++)
-l[l.length]=zip(docs._kl[docs._vl[i][0]],docs._vl[i]);return l;}
-function zip(k,v){var obj={};for(var i=0;i<k.length;i++){obj[k[i]]=v[i];}
-return obj;}
-function save_doclist(dt,dn,save_action,onsave,onerr){var doc=locals[dt][dn];var doctype=locals['DocType'][dt];var tmplist=[];var doclist=make_doclist(dt,dn,1);var all_reqd_ok=true;if(save_action!='Cancel'){for(var n in doclist){var reqd_ok=check_required(doclist[n].doctype,doclist[n].name,doclist[0].doctype);if(doclist[n].docstatus+''!='2'&&all_reqd_ok)
-all_reqd_ok=reqd_ok;}}
-if(!all_reqd_ok){onerr()
-return;}
-var _save=function(){$c('webnotes.widgets.form.save.savedocs',{'docs':compress_doclist(doclist),'docname':dn,'action':save_action,'user':user},function(r,rtxt){if(f){f.savingflag=false;}
-if(r.saved){if(onsave)onsave(r);}else{if(onerr)onerr(r);}},function(){if(f){f.savingflag=false;}},0,(f?'Saving...':''));}
-if(doc.__islocal&&(doctype&&doctype.autoname&&doctype.autoname.toLowerCase()=='prompt')){var newname=prompt('Enter the name of the new '+dt,'');if(newname){doc.__newname=strip(newname);_save();}else{msgprint('Not Saved');onerr();}}else{_save();}}
-function check_required(dt,dn,parent_dt){var doc=locals[dt][dn];if(doc.docstatus>1)return true;var fl=wn.meta.docfield_list[dt];if(!fl)return true;var all_clear=true;var errfld=[];for(var i=0;i<fl.length;i++){var key=fl[i].fieldname;var df=wn.meta.get_docfield(dt,key,dn);var has_value=wn.model.has_value(dt,dn,key);if(df.reqd&&!has_value){errfld[errfld.length]=df.label;if(cur_frm){var f=cur_frm.fields_dict[df.fieldname];if(f){f.df.has_error=true;f.refresh_label_icon();if(all_clear){$(document).scrollTop($(f.wrapper).offset().top-100);}
-if(f.df.hidden){msgprint('Oops, field "'+f.df.label+'" is both hidden and mandatory. \
-       Please contact your admin for help.');}}}
-if(all_clear)all_clear=false;}}
-if(errfld.length)msgprint('<b>Mandatory fields required in '+
-(doc.parenttype?(wn.meta.docfield_map[doc.parenttype][doc.parentfield].label+' (Table)'):doc.doctype)+':</b>\n'+errfld.join('\n'));return all_clear;}
-/*
- *	lib/js/wn/app.js
- */
-wn.Application=Class.extend({init:function(){var me=this;if(window.app){wn.call({method:'startup',callback:function(r,rt){wn.provide('wn.boot');wn.boot=r;if(wn.boot.profile.name=='Guest'){window.location='index.html';return;}
-me.startup();}})}else{this.startup();}},startup:function(){this.load_bootinfo();this.make_page_container();this.make_nav_bar();this.set_favicon();$(document).trigger('startup');if(wn.boot){wn.route();}
-$(document).trigger('app_ready');},load_bootinfo:function(){if(wn.boot){LocalDB.sync(wn.boot.docs);wn.control_panel=wn.boot.control_panel;this.set_globals();if(wn.boot.developer_mode){console.log("LocalStorage is OFF for developer mode. Please build before going live.");}}else{this.set_as_guest();}},set_globals:function(){profile=wn.boot.profile;user=wn.boot.profile.name;user_fullname=wn.user_info(user).fullname;user_defaults=profile.defaults;user_roles=profile.roles;user_email=profile.email;sys_defaults=wn.boot.sysdefaults;},set_as_guest:function(){profile={name:'Guest'};user='Guest';user_fullname='Guest';user_defaults={};user_roles=['Guest'];user_email='';sys_defaults={};},make_page_container:function(){wn.container=new wn.views.Container();wn.views.make_403();wn.views.make_404();},make_nav_bar:function(){if(wn.boot){wn.container.wntoolbar=new wn.ui.toolbar.Toolbar();}},logout:function(){var me=this;me.logged_out=true;wn.call({method:'logout',callback:function(r){if(r.exc){console.log(r.exc);}
-me.redirect_to_login();}})},redirect_to_login:function(){window.location.href='index.html';},set_favicon:function(){var link=$('link[type="image/x-icon"]').remove().attr("href");var favicon='\
-   <link rel="shortcut icon" href="'+link+'" type="image/x-icon"> \
-   <link rel="icon" href="'+link+'" type="image/x-icon">'
-$(favicon).appendTo('head');}})
-/*
- *	erpnext/startup/startup.js
- */
-var current_module;var is_system_manager=0;wn.provide('erpnext.startup');erpnext.modules={'Selling':'selling-home','Accounts':'accounts-home','Stock':'stock-home','Buying':'buying-home','Support':'support-home','Projects':'projects-home','Production':'production-home','Website':'website-home','HR':'hr-home','Setup':'Setup','Activity':'activity','To Do':'todo','Calendar':'calendar','Messages':'messages','Knowledge Base':'questions','Dashboard':'dashboard'}
-wn.provide('wn.modules');$.extend(wn.modules,erpnext.modules);wn.modules['Core']='Setup';erpnext.startup.set_globals=function(){if(inList(user_roles,'System Manager'))is_system_manager=1;}
-erpnext.startup.start=function(){console.log('Starting up...');$('#startup_div').html('Starting up...').toggle(true);erpnext.startup.set_globals();if(user!='Guest'){if(wn.boot.user_background){erpnext.set_user_background(wn.boot.user_background);}
-wn.boot.profile.allow_modules=wn.boot.profile.allow_modules.concat(['To Do','Knowledge Base','Calendar','Activity','Messages'])
-erpnext.toolbar.setup();erpnext.startup.set_periodic_updates();$('footer').html('<div class="web-footer erpnext-footer">\
-   <a href="#!attributions">ERPNext | Attributions and License</a></div>');if(in_list(user_roles,'System Manager')&&(wn.boot.setup_complete=='No')){wn.require("js/app/complete_setup.js");erpnext.complete_setup.show();}
-if(wn.boot.expires_on&&in_list(user_roles,'System Manager')){var today=dateutil.str_to_obj(dateutil.get_today());var expires_on=dateutil.str_to_obj(wn.boot.expires_on);var diff=dateutil.get_diff(expires_on,today);if(0<=diff&&diff<=15){var expiry_string=diff==0?"today":repl("in %(diff)s day(s)",{diff:diff});$('header').append(repl('<div class="expiry-info"> \
-     Your ERPNext subscription will <b>expire %(expiry_string)s</b>. \
-     Please renew your subscription to continue using ERPNext \
-     (and remove this annoying banner). \
-    </div>',{expiry_string:expiry_string}));}else if(diff<0){$('header').append(repl('<div class="expiry-info"> \
-     This ERPNext subscription <b>has expired</b>. \
-    </div>',{expiry_string:expiry_string}));}}
-erpnext.set_about();if(wn.control_panel.custom_startup_code)
-eval(wn.control_panel.custom_startup_code);}}
-erpnext.update_messages=function(reset){if(inList(['Guest'],user)||!wn.session_alive){return;}
-if(!reset){var set_messages=function(r){if(!r.exc){erpnext.toolbar.set_new_comments(r.message.unread_messages);var show_in_circle=function(parent_id,msg){var parent=$('#'+parent_id);if(parent){if(msg){parent.find('span:first').text(msg);parent.toggle(true);}else{parent.toggle(false);}}}
-show_in_circle('unread_messages',r.message.unread_messages.length);show_in_circle('open_support_tickets',r.message.open_support_tickets);show_in_circle('things_todo',r.message.things_todo);show_in_circle('todays_events',r.message.todays_events);show_in_circle('open_tasks',r.message.open_tasks);show_in_circle('unanswered_questions',r.message.unanswered_questions);}else{clearInterval(wn.updates.id);}}
-wn.call({method:'startup.startup.get_global_status_messages',callback:set_messages});}else{erpnext.toolbar.set_new_comments(0);$('#unread_messages').toggle(false);}}
-erpnext.startup.set_periodic_updates=function(){wn.updates={};if(wn.updates.id){clearInterval(wn.updates.id);}
-wn.updates.id=setInterval(erpnext.update_messages,60000);}
-erpnext.set_user_background=function(src){set_style(repl('#body_div { background: url("files/%(src)s") repeat;}',{src:src}))}
-$(document).bind('startup',function(){erpnext.startup.start();});erpnext.send_message=function(opts){if(opts.btn){$(opts.btn).start_working();}
-wn.call({method:'website.send_message',args:opts,callback:function(r){if(opts.btn){$(opts.btn).done_working();}
-if(opts.callback)opts.callback(r)}});}
-erpnext.hide_naming_series=function(){if(cur_frm.fields_dict.naming_series){hide_field('naming_series');if(cur_frm.doc.__islocal){unhide_field('naming_series');}}}
-/*
- *	conf.js
- */
-wn.provide('erpnext');erpnext.set_about=function(){wn.provide('wn.app');$.extend(wn.app,{name:'ERPNext',license:'GNU/GPL - Usage Condition: All "erpnext" branding must be kept as it is',source:'https://github.com/webnotes/erpnext',publisher:'Web Notes Technologies Pvt Ltd, Mumbai',copyright:'&copy; Web Notes Technologies Pvt Ltd',version:'2'});}
-wn.modules_path='erpnext';$(document).bind('toolbar_setup',function(){$('.brand').html((wn.boot.website_settings.brand_html||'erpnext')+' <i class="icon-home icon-white navbar-icon-home" ></i>').css('max-width','200px').css('overflow','hidden').hover(function(){$(this).find('.icon-home').addClass('navbar-icon-home-hover');},function(){$(this).find('.icon-home').removeClass('navbar-icon-home-hover');});});
\ No newline at end of file
diff --git a/public/js/app/complete_setup.js b/public/js/complete_setup.js
similarity index 100%
rename from public/js/app/complete_setup.js
rename to public/js/complete_setup.js
diff --git a/conf.js b/public/js/conf.js
similarity index 100%
rename from conf.js
rename to public/js/conf.js
diff --git a/public/js/fields.js b/public/js/fields.js
deleted file mode 100644
index 7d00562..0000000
--- a/public/js/fields.js
+++ /dev/null
@@ -1,210 +0,0 @@
-
-/*
- *	lib/js/legacy/widgets/form/fields.js
- */
-var no_value_fields=['Section Break','Column Break','HTML','Table','FlexTable','Button','Image'];var codeid=0;var code_editors={};function Field(){this.with_label=1;}
-Field.prototype.make_body=function(){var ischk=(this.df.fieldtype=='Check'?1:0);if(this.parent)
-this.wrapper=$a(this.parent,(this.with_label?'div':'span'));else
-this.wrapper=document.createElement((this.with_label?'div':'span'));this.label_area=$a(this.wrapper,'div','',{margin:'0px 0px 2px 0px',minHeight:'1em'});if(ischk&&!this.in_grid){this.input_area=$a(this.label_area,'span','',{marginRight:'4px'});this.disp_area=$a(this.label_area,'span','',{marginRight:'4px'});}
-if(this.with_label){this.label_span=$a(this.label_area,'span','small',{cssFloat:'left'})
-this.label_icon=$('<i class="icon icon-warning-sign">').toggle(false).appendTo(this.label_area).css('float','left').css('margin-left','7px').attr("title","This field is mandatory.");this.suggest_icon=$('<i class="icon icon-chevron-down">').toggle(false).appendTo(this.label_area).css('float','left').css('margin-left','7px').attr("title","will show suggestions as you type.");}else{this.label_span=$a(this.label_area,'span','',{marginRight:'4px'})
-$dh(this.label_area);}
-if(!this.input_area){this.input_area=$a(this.wrapper,(this.with_label?'div':'span'));this.disp_area=$a(this.wrapper,(this.with_label?'div':'span'));}
-if(this.in_grid){if(this.label_area)$dh(this.label_area);}else{this.input_area.className='input_area';$y(this.wrapper,{marginBottom:'9px'});this.set_description();}
-if(this.onmake)this.onmake();}
-Field.prototype.set_max_width=function(){var no_max=['Code','Text Editor','Text','Table','HTML']
-if(this.wrapper&&this.layout_cell&&this.layout_cell.parentNode.cells&&this.layout_cell.parentNode.cells.length==1&&!in_list(no_max,this.df.fieldtype)){$y(this.wrapper,{paddingRight:'50%'});}}
-Field.prototype.set_label=function(){if(this.with_label&&this.label_area&&this.label!=this.df.label){this.label_span.innerHTML=this.df.label;this.label=this.df.label;}}
-Field.prototype.set_description=function(){if(this.df.description){var p=in_list(['Text Editor','Code','Check'],this.df.fieldtype)?this.label_area:this.wrapper;this.desc_area=$a(p,'div','help small','',this.df.description)
-if(in_list(['Text Editor','Code'],this.df.fieldtype))
-$(this.desc_area).addClass('help small');}}
-Field.prototype.get_status=function(){if(this.in_filter)
-this.not_in_form=this.in_filter;if(this.not_in_form){return'Write';}
-if(!this.df.permlevel)this.df.permlevel=0;var p=this.perm[this.df.permlevel];var ret;if(cur_frm.editable&&p&&p[WRITE]&&!this.df.disabled)ret='Write';else if(p&&p[READ])ret='Read';else ret='None';if(this.df.fieldtype=='Binary')
-ret='None';if(cint(this.df.hidden))
-ret='None';if(ret=='Write'&&cint(cur_frm.doc.docstatus)>0)ret='Read';var a_o_s=cint(this.df.allow_on_submit);if(a_o_s&&(this.in_grid||(this.frm&&this.frm.not_in_container))){a_o_s=null;if(this.in_grid)a_o_s=this.grid.field.df.allow_on_submit;if(this.frm&&this.frm.not_in_container){a_o_s=cur_grid.field.df.allow_on_submit;}}
-if(cur_frm.editable&&a_o_s&&cint(cur_frm.doc.docstatus)>0&&!this.df.hidden){tmp_perm=get_perm(cur_frm.doctype,cur_frm.docname,1);if(tmp_perm[this.df.permlevel]&&tmp_perm[this.df.permlevel][WRITE]){ret='Write';}}
-return ret;}
-Field.prototype.set_style_mandatory=function(add){if(add){$(this.txt?this.txt:this.input).addClass('input-mandatory');if(this.disp_area)$(this.disp_area).addClass('input-mandatory');}else{$(this.txt?this.txt:this.input).removeClass('input-mandatory');if(this.disp_area)$(this.disp_area).removeClass('input-mandatory');}}
-Field.prototype.refresh_mandatory=function(){if(this.in_filter)return;if(this.df.reqd){if(this.label_area)this.label_area.style.color="#d22";this.set_style_mandatory(1);}else{if(this.label_area)this.label_area.style.color="#222";this.set_style_mandatory(0);}
-this.refresh_label_icon()
-this.set_reqd=this.df.reqd;}
-Field.prototype.refresh_display=function(){if(!this.current_status||this.current_status!=this.disp_status){if(this.disp_status=='Write'){if(this.make_input&&(!this.input)){this.make_input();if(this.onmake_input)this.onmake_input();}
-if(this.show)this.show()
-else{$ds(this.wrapper);}
-if(this.input){$ds(this.input_area);$dh(this.disp_area);if(this.input.refresh)this.input.refresh();}else{$dh(this.input_area);$ds(this.disp_area);}}else if(this.disp_status=='Read'){if(this.show)this.show()
-else{$ds(this.wrapper);}
-$dh(this.input_area);$ds(this.disp_area);}else{if(this.hide)this.hide();else $dh(this.wrapper);}
-this.current_status=this.disp_status;}}
-Field.prototype.refresh=function(){this.disp_status=this.get_status();if(this.in_grid&&this.table_refresh&&this.disp_status=='Write')
-{this.table_refresh();return;}
-this.set_label();this.refresh_display();if(this.onrefresh)
-this.onrefresh();if(this.input){if(this.input.refresh)this.input.refresh(this.df);}
-if(this.wrapper){this.wrapper.fieldobj=this;$(this.wrapper).trigger('refresh');}
-if(!this.not_in_form)
-this.set_input(_f.get_value(this.doctype,this.docname,this.df.fieldname));this.refresh_mandatory();this.set_max_width();}
-Field.prototype.refresh_label_icon=function(){var to_update=false;if(this.df.reqd&&this.get_value&&is_null(this.get_value()))
-to_update=true;if(!to_update&&this.df.has_error)this.df.has_error=false;if(this.label_icon)this.label_icon.toggle(to_update);$(this.txt?this.txt:this.input).toggleClass('field-to-update',to_update);$(this.txt?this.txt:this.input).toggleClass('field-has-error',this.df.has_error?true:false);}
-Field.prototype.set=function(val){if(this.not_in_form)
-return;if((!this.docname)&&this.grid){this.docname=this.grid.add_newrow();}
-if(this.validate)
-val=this.validate(val);cur_frm.set_value_in_locals(this.doctype,this.docname,this.df.fieldname,val);this.value=val;}
-Field.prototype.set_input=function(val){this.value=val;if(this.input&&this.input.set_input){if(val==null)this.input.set_input('');else this.input.set_input(val);}
-var disp_val=val;if(val==null)disp_val='';this.set_disp(disp_val);}
-Field.prototype.run_trigger=function(){this.refresh_label_icon();if(this.not_in_form){return;}
-if(cur_frm.cscript[this.df.fieldname])
-cur_frm.runclientscript(this.df.fieldname,this.doctype,this.docname);cur_frm.refresh_dependency();}
-Field.prototype.set_disp_html=function(t){if(this.disp_area){$(this.disp_area).addClass('disp_area');this.disp_area.innerHTML=(t==null?'':t);if(!t)$(this.disp_area).addClass('disp_area_no_val');}}
-Field.prototype.set_disp=function(val){this.set_disp_html(val);}
-Field.prototype.activate=function(docname){this.docname=docname;this.refresh();if(this.input){var v=_f.get_value(this.doctype,this.docname,this.df.fieldname);this.last_value=v;if(this.input.onchange&&this.input.get_value&&this.input.get_value()!=v){if(this.validate)
-this.input.set_value(this.validate(v));else
-this.input.set_value((v==null)?'':v);if(this.format_input)
-this.format_input();}
-if(this.input.focus){try{this.input.focus();}catch(e){}}}
-if(this.txt){try{this.txt.focus();}catch(e){}
-this.txt.field_object=this;}}
-function DataField(){}DataField.prototype=new Field();DataField.prototype.make_input=function(){var me=this;this.input=$a_input(this.input_area,this.df.fieldtype=='Password'?'password':'text');this.get_value=function(){var v=this.input.value;if(this.validate)
-v=this.validate(v);return v;}
-this.input.name=this.df.fieldname;$(this.input).change(function(){me.set_value(me.get_value?me.get_value():$(this.input).val());});this.set_value=function(val){if(!me.last_value)me.last_value='';if(me.validate){val=me.validate(val);me.input.value=val==undefined?'':val;}
-me.set(val);if(me.format_input)
-me.format_input();if(in_list(['Currency','Float','Int'],me.df.fieldtype)){if(flt(me.last_value)==flt(val)){me.last_value=val;return;}}
-me.last_value=val;me.run_trigger();}
-this.input.set_input=function(val){if(val==null)val='';me.input.value=val;if(me.format_input)me.format_input();}
-if(this.df.options=='Suggest'){if(this.suggest_icon)this.suggest_icon.toggle(true);$(me.input).autocomplete({source:function(request,response){wn.call({method:'webnotes.widgets.search.search_link',args:{'txt':request.term,'dt':me.df.options,'query':repl('SELECT DISTINCT `%(fieldname)s` FROM \
-       `tab%(dt)s` WHERE `%(fieldname)s` LIKE "%s" LIMIT 50',{fieldname:me.df.fieldname,dt:me.df.parent})},callback:function(r){response(r.results);}});},select:function(event,ui){me.set(ui.item.value);}});}}
-DataField.prototype.validate=function(v){if(this.df.options=='Phone'){if(v+''=='')return'';v1=''
-v=v.replace(/ /g,'').replace(/-/g,'').replace(/\(/g,'').replace(/\)/g,'');if(v&&v.substr(0,1)=='+'){v1='+';v=v.substr(1);}
-if(v&&v.substr(0,2)=='00'){v1+='00';v=v.substr(2);}
-if(v&&v.substr(0,1)=='0'){v1+='0';v=v.substr(1);}
-v1+=cint(v)+'';return v1;}else if(this.df.options=='Email'){if(v+''=='')return'';if(!validate_email(v)){msgprint(this.df.label+': '+v+' is not a valid email id');return'';}else
-return v;}else{return v;}}
-function ReadOnlyField(){}
-ReadOnlyField.prototype=new Field();function HTMLField(){}
-HTMLField.prototype=new Field();HTMLField.prototype.with_label=0;HTMLField.prototype.set_disp=function(val){if(this.disp_area)this.disp_area.innerHTML=val;}
-HTMLField.prototype.set_input=function(val){if(val)this.set_disp(val);}
-HTMLField.prototype.onrefresh=function(){if(this.df.options)this.set_disp(this.df.options);}
-var datepicker_active=0;function DateField(){}DateField.prototype=new Field();DateField.prototype.make_input=function(){var me=this;this.user_fmt=sys_defaults.date_format;if(!this.user_fmt)this.user_fmt='dd-mm-yy';this.input=$a(this.input_area,'input');$(this.input).datepicker({dateFormat:me.user_fmt.replace('yyyy','yy'),altFormat:'yy-mm-dd',changeYear:true,beforeShow:function(input,inst){datepicker_active=1},onClose:function(dateText,inst){datepicker_active=0;if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();}});var me=this;me.input.onchange=function(){if(this.value==null)this.value='';if(!this.not_in_form)
-me.set(dateutil.user_to_str(me.input.value));me.run_trigger();}
-me.input.set_input=function(val){if(val==null)val='';else val=dateutil.str_to_user(val);me.input.value=val;}
-me.get_value=function(){if(me.input.value)
-return dateutil.user_to_str(me.input.value);}}
-DateField.prototype.set_disp=function(val){var v=dateutil.str_to_user(val);if(v==null)v='';this.set_disp_html(v);}
-DateField.prototype.validate=function(v){if(!v)return;var me=this;this.clear=function(){msgprint("Date must be in format "+this.user_fmt);me.input.set_input('');return'';}
-var t=v.split('-');if(t.length!=3){return this.clear();}
-else if(cint(t[1])>12||cint(t[1])<1){return this.clear();}
-else if(cint(t[2])>31||cint(t[2])<1){return this.clear();}
-return v;};function LinkField(){}LinkField.prototype=new Field();LinkField.prototype.make_input=function(){var me=this;if(me.df.no_buttons){this.txt=$a(this.input_area,'input');this.input=this.txt;}else{makeinput_popup(this,'icon-search','icon-play','icon-plus');me.setup_buttons();me.onrefresh=function(){if(me.can_create)
-$(me.btn2).css('display','inline-block');else $dh(me.btn2);}}
-me.txt.field_object=this;me.input.set_input=function(val){if(val==undefined)val='';me.txt.value=val;}
-me.get_value=function(){return me.txt.value;}
-$(me.txt).autocomplete({source:function(request,response){wn.call({method:'webnotes.widgets.search.search_link',args:{'txt':request.term,'dt':me.df.options,'query':me.get_custom_query()},callback:function(r){response(r.results);},});},select:function(event,ui){me.set_input_value(ui.item.value);}}).data('autocomplete')._renderItem=function(ul,item){return $('<li></li>').data('item.autocomplete',item).append(repl('<a>%(label)s<br><span style="font-size:10px">%(info)s</span></a>',item)).appendTo(ul);};$(this.txt).change(function(){var val=$(this).val();me.set_input_value_executed=false;if(!val){if(selector&&selector.display)
-return;me.set_input_value('');}else{setTimeout(function(){if(!me.set_input_value_executed){me.set_input_value(val);}},1000);}})}
-LinkField.prototype.get_custom_query=function(){this.set_get_query();if(this.get_query){if(cur_frm)
-var doc=locals[cur_frm.doctype][cur_frm.docname];return this.get_query(doc,this.doctype,this.docname);}}
-LinkField.prototype.setup_buttons=function(){var me=this;me.btn.onclick=function(){selector.set(me,me.df.options,me.df.label);selector.show(me.txt);}
-if(me.btn1)me.btn1.onclick=function(){if(me.txt.value&&me.df.options){loaddoc(me.df.options,me.txt.value);}}
-me.can_create=0;if((!me.not_in_form)&&in_list(profile.can_create,me.df.options)){me.can_create=1;me.btn2.onclick=function(){var on_save_callback=function(new_rec){if(new_rec){var d=_f.calling_doc_stack.pop();locals[d[0]][d[1]][me.df.fieldname]=new_rec;me.refresh();if(me.grid)me.grid.refresh();me.run_trigger();}}
-_f.calling_doc_stack.push([me.doctype,me.docname]);new_doc(me.df.options);}}else{$dh(me.btn2);$y($td(me.tab,0,2),{width:'0px'});}}
-LinkField.prototype.set_input_value=function(val){var me=this;me.set_input_value_executed=true;var from_selector=false;if(selector&&selector.display)from_selector=true;me.refresh_label_icon();if(me.not_in_form){$(this.txt).val(val);return;}
-if(cur_frm){if(val==locals[me.doctype][me.docname][me.df.fieldname]){me.run_trigger();return;}}
-me.set(val);if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();if(locals[me.doctype][me.docname][me.df.fieldname]&&!val){me.run_trigger();return;}
-if(val){me.validate_link(val,from_selector);}}
-LinkField.prototype.validate_link=function(val,from_selector){var me=this;var fetch='';if(cur_frm.fetch_dict[me.df.fieldname])
-fetch=cur_frm.fetch_dict[me.df.fieldname].columns.join(', ');$c('webnotes.widgets.form.utils.validate_link',{'value':val,'options':me.df.options,'fetch':fetch},function(r,rt){if(r.message=='Ok'){if($(me.txt).val()!=val){if((me.grid&&!from_selector)||(!me.grid)){$(me.txt).val(val);}}
-if(r.fetch_values)
-me.set_fetch_values(r.fetch_values);me.run_trigger();}else{var astr='';if(in_list(profile.can_create,me.df.options))astr=repl('<br><br><span class="link_type" onclick="newdoc(\'%(dt)s\')">Click here</span> to create a new %(dtl)s',{dt:me.df.options,dtl:get_doctype_label(me.df.options)})
-msgprint(repl('error:<b>%(val)s</b> is not a valid %(dt)s.<br><br>You must first create a new %(dt)s <b>%(val)s</b> and then select its value. To find an existing %(dt)s, click on the magnifying glass next to the field.%(add)s',{val:me.txt.value,dt:get_doctype_label(me.df.options),add:astr}));me.txt.value='';me.set('');}});}
-LinkField.prototype.set_fetch_values=function(fetch_values){var fl=cur_frm.fetch_dict[this.df.fieldname].fields;var changed_fields=[];for(var i=0;i<fl.length;i++){if(locals[this.doctype][this.docname][fl[i]]!=fetch_values[i]){locals[this.doctype][this.docname][fl[i]]=fetch_values[i];if(!this.grid){refresh_field(fl[i]);changed_fields.push(fl[i]);}}}
-for(i=0;i<changed_fields.length;i++){if(cur_frm.fields_dict[changed_fields[i]])
-cur_frm.fields_dict[changed_fields[i]].run_trigger();}
-if(this.grid)this.grid.refresh();}
-LinkField.prototype.set_get_query=function(){if(this.get_query)return;if(this.grid){var f=this.grid.get_field(this.df.fieldname);if(f.get_query)this.get_query=f.get_query;}}
-LinkField.prototype.set_disp=function(val){var t=null;if(val)t="<a href=\'javascript:loaddoc(\""+this.df.options+"\", \""+val+"\")\'>"+val+"</a>";this.set_disp_html(t);}
-function IntField(){}IntField.prototype=new DataField();IntField.prototype.validate=function(v){if(isNaN(parseInt(v)))return null;return cint(v);};IntField.prototype.format_input=function(){if(this.input.value==null)this.input.value='';}
-function FloatField(){}FloatField.prototype=new DataField();FloatField.prototype.validate=function(v){var v=parseFloat(v);if(isNaN(v))
-return null;return v;};FloatField.prototype.format_input=function(){if(this.input.value==null)this.input.value='';}
-function CurrencyField(){}CurrencyField.prototype=new DataField();CurrencyField.prototype.format_input=function(){var v=fmt_money(this.input.value);if(this.not_in_form){if(!flt(this.input.value))v='';}
-this.input.value=v;}
-CurrencyField.prototype.validate=function(v){if(v==null||v=='')
-return 0;return flt(v,2);}
-CurrencyField.prototype.set_disp=function(val){var v=fmt_money(val);this.set_disp_html(v);}
-CurrencyField.prototype.onmake_input=function(){if(!this.input)return;this.input.onfocus=function(){if(flt(this.value)==0)this.select();}}
-function CheckField(){}CheckField.prototype=new Field();CheckField.prototype.validate=function(v){var v=parseInt(v);if(isNaN(v))return 0;return v;};CheckField.prototype.onmake=function(){this.checkimg=$a(this.disp_area,'div');var img=$a(this.checkimg,'img');img.src='images/lib/ui/tick.gif';$dh(this.checkimg);}
-CheckField.prototype.make_input=function(){var me=this;this.input=$a_input(this.input_area,'checkbox');$y(this.input,{width:"16px",border:'0px',margin:'2px'});$(this.input).click(function(){me.set(this.checked?1:0);me.run_trigger();})
-this.input.set_input=function(v){v=parseInt(v);if(isNaN(v))v=0;if(v)me.input.checked=true;else me.input.checked=false;}
-this.get_value=function(){return this.input.checked?1:0;}}
-CheckField.prototype.set_disp=function(val){if(val){$ds(this.checkimg);}
-else{$dh(this.checkimg);}}
-function TextField(){}TextField.prototype=new Field();TextField.prototype.set_disp=function(val){this.disp_area.innerHTML=replace_newlines(val);}
-TextField.prototype.make_input=function(){var me=this;if(this.in_grid)
-return;this.input=$a(this.input_area,'textarea');if(this.df.fieldtype=='Small Text')
-this.input.style.height="80px";this.input.set_input=function(v){me.input.value=v;}
-this.input.onchange=function(){me.set(me.input.value);me.run_trigger();}
-this.get_value=function(){return this.input.value;}}
-var text_dialog;function make_text_dialog(){var d=new Dialog(520,410,'Edit Text');d.make_body([['Text','Enter Text'],['HTML','Description'],['Button','Update']]);d.widgets['Update'].onclick=function(){var t=this.dialog;t.field.set(t.widgets['Enter Text'].value);t.hide();}
-d.onshow=function(){this.widgets['Enter Text'].style.height='300px';var v=_f.get_value(this.field.doctype,this.field.docname,this.field.df.fieldname);this.widgets['Enter Text'].value=v==null?'':v;this.widgets['Enter Text'].focus();this.widgets['Description'].innerHTML=''
-if(this.field.df.description)
-$a(this.widgets['Description'],'div','help small','',this.field.df.description);}
-d.onhide=function(){if(_f.cur_grid_cell)
-_f.cur_grid_cell.grid.cell_deselect();}
-text_dialog=d;}
-TextField.prototype.table_refresh=function(){if(!this.text_dialog)
-make_text_dialog();text_dialog.set_title('Enter text for "'+this.df.label+'"');text_dialog.field=this;text_dialog.show();}
-function SelectField(){}SelectField.prototype=new Field();SelectField.prototype.make_input=function(){var me=this;var opt=[];if(this.in_filter&&(!this.df.single_select)){this.input=$a(this.input_area,'select');this.input.multiple=true;this.input.style.height='4em';this.input.lab=$a(this.input_area,'div',{fontSize:'9px',color:'#999'});this.input.lab.innerHTML='(Use Ctrl+Click to select multiple or de-select)'}else{this.input=$a(this.input_area,'select');this.input.onchange=function(){if(me.validate)
-me.validate();me.set(sel_val(this));me.run_trigger();}
-if(this.df.options=='attach_files:'){this.file_attach=true;}}
-this.set_as_single=function(){var i=this.input;i.multiple=false;i.style.height=null;if(i.lab)$dh(i.lab)}
-this.refresh_options=function(options){if(options)
-me.df.options=options;if(this.file_attach)
-this.set_attach_options();me.options_list=me.df.options?me.df.options.split('\n'):[''];empty_select(this.input);if(me.in_filter&&me.options_list[0]!=''){me.options_list=add_lists([''],me.options_list);}
-add_sel_options(this.input,me.options_list);}
-this.onrefresh=function(){this.refresh_options();if(this.not_in_form){this.input.value='';return;}
-if(_f.get_value)
-var v=_f.get_value(this.doctype,this.docname,this.df.fieldname);else{if(this.options_list&&this.options_list.length)
-var v=this.options_list[0];else
-var v=null;}
-this.input.set_input(v);}
-this.input.set_input=function(v){if(!v){if(!me.input.multiple){if(me.docname){if(me.options_list&&me.options_list.length){me.set(me.options_list[0]);me.input.value=me.options_list[0];}else{me.input.value='';}}}}else{if(me.options_list){if(me.input.multiple){for(var i=0;i<me.input.options.length;i++){me.input.options[i].selected=0;if(me.input.options[i].value&&inList(typeof(v)=='string'?v.split(","):v,me.input.options[i].value))
-me.input.options[i].selected=1;}}else if(in_list(me.options_list,v)){me.input.value=v;}}}}
-this.get_value=function(){if(me.input.multiple){var l=[];for(var i=0;i<me.input.options.length;i++){if(me.input.options[i].selected)l[l.length]=me.input.options[i].value;}
-return l;}else{if(me.input.options){var val=sel_val(me.input);if(!val&&!me.input.selectedIndex)
-val=me.input.options[0].value;return val;}
-return me.input.value;}}
-this.set_attach_options=function(){if(!cur_frm)return;var fl=cur_frm.doc.file_list;if(fl){this.df.options='';var fl=fl.split('\n');for(var i in fl){this.df.options+='\n'+fl[i].split(',')[1];}}else{this.df.options=''}}
-this.refresh();}
-function TimeField(){}TimeField.prototype=new Field();TimeField.prototype.get_time=function(){return time_to_hhmm(sel_val(this.input_hr),sel_val(this.input_mn),sel_val(this.input_am));}
-TimeField.prototype.set_time=function(v){ret=time_to_ampm(v);this.input_hr.inp.value=ret[0];this.input_mn.inp.value=ret[1];this.input_am.inp.value=ret[2];}
-TimeField.prototype.set_style_mandatory=function(){}
-TimeField.prototype.make_input=function(){var me=this;this.input=$a(this.input_area,'div','time_field');var t=make_table(this.input,1,3,'200px');var opt_hr=['1','2','3','4','5','6','7','8','9','10','11','12'];var opt_mn=['00','05','10','15','20','25','30','35','40','45','50','55'];var opt_am=['AM','PM'];this.input_hr=new SelectWidget($td(t,0,0),opt_hr,'50px');this.input_mn=new SelectWidget($td(t,0,1),opt_mn,'50px');this.input_am=new SelectWidget($td(t,0,2),opt_am,'50px');var onchange_fn=function(){me.set(me.get_time());me.run_trigger();}
-this.input_hr.inp.onchange=onchange_fn;this.input_mn.inp.onchange=onchange_fn;this.input_am.inp.onchange=onchange_fn;this.onrefresh=function(){var v=_f.get_value?_f.get_value(me.doctype,me.docname,me.df.fieldname):null;me.set_time(v);if(!v)
-me.set(me.get_time());}
-this.input.set_input=function(v){if(v==null)v='';me.set_time(v);}
-this.get_value=function(){return this.get_time();}
-this.refresh();}
-TimeField.prototype.set_disp=function(v){var t=time_to_ampm(v);var t=t[0]+':'+t[1]+' '+t[2];this.set_disp_html(t);}
-function makeinput_popup(me,iconsrc,iconsrc1,iconsrc2){var icon_style={cursor:'pointer',width:'16px',verticalAlign:'middle',marginBottom:'-3px'};me.input=$a(me.input_area,'div');if(!me.not_in_form)
-$y(me.input,{width:'80%'});me.input.set_width=function(w){$y(me.input,{width:(w-2)+'px'});}
-var tab=$a(me.input,'table');me.tab=tab;$y(tab,{width:'100%',borderCollapse:'collapse',tableLayout:'fixed'});var c0=tab.insertRow(0).insertCell(0);var c1=tab.rows[0].insertCell(1);$y(c1,{width:'20px'});me.txt=$a($a($a(c0,'div','',{paddingRight:'8px'}),'div'),'input','',{width:'100%'});me.btn=$a(c1,'i',iconsrc,icon_style)
-if(iconsrc1)
-me.btn.setAttribute('title','Search');else
-me.btn.setAttribute('title','Select Date');if(iconsrc1){var c2=tab.rows[0].insertCell(2);$y(c2,{width:'20px'});me.btn1=$a(c2,'i',iconsrc1,icon_style)
-me.btn1.setAttribute('title','Open Link');}
-if(iconsrc2){var c3=tab.rows[0].insertCell(3);$y(c3,{width:'20px'});me.btn2=$a(c3,'i',iconsrc2,icon_style)
-me.btn2.setAttribute('title','Create New');$dh(me.btn2);}
-me.txt.name=me.df.fieldname;me.setdisabled=function(tf){me.txt.disabled=tf;}}
-var tmpid=0;_f.ButtonField=function(){};_f.ButtonField.prototype=new Field();_f.ButtonField.prototype.with_label=0;_f.ButtonField.prototype.init=function(){this.prev_button=null;if(!this.frm)return;if(cur_frm&&cur_frm.fields[cur_frm.fields.length-1]&&cur_frm.fields[cur_frm.fields.length-1].df.fieldtype=='Button'){this.make_body=function(){this.prev_button=cur_frm.fields[cur_frm.fields.length-1];if(!this.prev_button.prev_button){this.prev_button.button_area=$a(this.prev_button.input_area,'span');}
-this.wrapper=this.prev_button.wrapper;this.input_area=this.prev_button.input_area;this.disp_area=this.prev_button.disp_area;this.button_area=$a(this.prev_button.input_area,'span');}}}
-_f.ButtonField.prototype.make_input=function(){var me=this;if(!this.prev_button){$y(this.input_area,{marginTop:'4px',marginBottom:'4px'});}
-if(!this.button_area)
-this.button_area=$a(this.input_area,'span','',{marginRight:'4px'});this.input=$btn(this.button_area,me.df.label,null,{fontWeight:'bold'},null,1)
-$(this.input).click(function(){if(me.not_in_form)return;if(cur_frm.cscript[me.df.fieldname]&&(!me.in_filter)){cur_frm.runclientscript(me.df.fieldname,me.doctype,me.docname);}else{cur_frm.runscript(me.df.options,me);}});}
-_f.ButtonField.prototype.hide=function(){$dh(this.button_area);};_f.ButtonField.prototype.show=function(){$ds(this.button_area);};_f.ButtonField.prototype.set=function(v){};_f.ButtonField.prototype.set_disp=function(val){}
-function make_field(docfield,doctype,parent,frm,in_grid,hide_label){switch(docfield.fieldtype.toLowerCase()){case'data':var f=new DataField();break;case'password':var f=new DataField();break;case'int':var f=new IntField();break;case'float':var f=new FloatField();break;case'currency':var f=new CurrencyField();break;case'read only':var f=new ReadOnlyField();break;case'link':var f=new LinkField();break;case'date':var f=new DateField();break;case'time':var f=new TimeField();break;case'html':var f=new HTMLField();break;case'check':var f=new CheckField();break;case'text':var f=new TextField();break;case'small text':var f=new TextField();break;case'select':var f=new SelectField();break;case'button':var f=new _f.ButtonField();break;case'code':var f=new _f.CodeField();break;case'text editor':var f=new _f.CodeField();break;case'table':var f=new _f.TableField();break;case'section break':var f=new _f.SectionBreak();break;case'column break':var f=new _f.ColumnBreak();break;case'image':var f=new _f.ImageField();break;}
-f.parent=parent;f.doctype=doctype;f.df=docfield;f.perm=frm?frm.perm:[[1,1,1]];if(_f)
-f.col_break_width=_f.cur_col_break_width;if(in_grid){f.in_grid=true;f.with_label=0;}
-if(hide_label){f.with_label=0;}
-if(frm){f.frm=frm;if(parent)
-f.layout_cell=parent.parentNode;}
-if(f.init)f.init();f.make_body();return f;}
\ No newline at end of file
diff --git a/public/js/app/gantt_task.js b/public/js/gantt_task.js
similarity index 95%
rename from public/js/app/gantt_task.js
rename to public/js/gantt_task.js
index aa3adbb..4cf25b3 100644
--- a/public/js/app/gantt_task.js
+++ b/public/js/gantt_task.js
@@ -16,8 +16,8 @@
 
 // gantt chart for project tasks
 
-wn.require('js/lib/jQuery.Gantt/css/style.css');
-wn.require('js/lib/jQuery.Gantt/js/jquery.fn.gantt.min.js');
+wn.require('lib/js/lib/jQuery.Gantt/css/style.css');
+wn.require('lib/js/lib/jQuery.Gantt/js/jquery.fn.gantt.min.js');
 
 erpnext.show_task_gantt = function(parent, project) {
 	
diff --git a/public/js/app/kb_common.js b/public/js/kb_common.js
similarity index 100%
rename from public/js/app/kb_common.js
rename to public/js/kb_common.js
diff --git a/public/js/listing.js b/public/js/listing.js
deleted file mode 100644
index d40c72f..0000000
--- a/public/js/listing.js
+++ /dev/null
@@ -1,91 +0,0 @@
-
-/*
- *	lib/js/legacy/widgets/listing.js
- */
-list_opts={cell_style:{padding:'3px 2px'},alt_cell_style:{},head_style:{height:'20px',overflow:'hidden',verticalAlign:'middle',fontWeight:'bold',padding:'1px',fontSize:'13px'},head_main_style:{padding:'0px'},hide_export:1,hide_print:1,hide_refresh:0,hide_rec_label:0,show_calc:1,show_empty_tab:0,no_border:1,append_records:1,table_width:null};function Listing(head_text,no_index,no_loading){this.start=0;this.page_len=20;this.filters_per_line=7;this.cell_idx=0;this.head_text=head_text?head_text:'Result';this.keyword='records';this.no_index=no_index;this.underline=1;this.no_rec_message='No Result';this.show_cell=null;this.show_result=null;this.colnames=null;this.colwidths=null;this.coltypes=null;this.coloptions=null;this.filters={};this.sort_list={};this.sort_order_dict={};this.sort_heads={};this.is_std_query=false;this.server_call=null;this.no_loading=no_loading;this.opts=copy_dict(list_opts);}
-Listing.prototype.make=function(parent){var me=this;this.wrapper=parent;this.filter_wrapper=$a(parent,'div','srs_filter_wrapper');this.filter_area=$a(this.filter_wrapper,'div','srs_filter_area');$dh(this.filter_wrapper);this.btn_area=$a(parent,'div','',{margin:'8px 0px'});this.body_area=$a(parent,'div','srs_body_area');if(!this.opts.hide_rec_label)
-this.rec_label=$a(this.body_area,'div','',{margin:'4px 0px',color:'#888'});this.results=$a($a(this.body_area,'div','srs_results_area'),'div');this.fetching_area=$a(this.body_area,'div','',{height:'120px',background:'url("images/lib/ui/square_loading.gif") center no-repeat',display:'none'});this.show_no_records=$a(this.body_area,'div','',{margin:'200px 0px',textAlign:'center',fontSize:'14px',color:'#888',display:'none'});this.show_no_records.innerHTML='No Result';if(this.opts.show_empty_tab)
-this.make_result_tab();this.bottom_div=$a(this.body_area,'div','',{paddingTop:'8px'});this.make_toolbar();}
-Listing.prototype.make_toolbar=function(){var me=this;this.buttons={};var make_btn=function(label,icon,onclick,bold){var btn=$btn(me.btn_area,label,onclick,{marginRight:'4px'});if(bold)$y(btn,{fontWeight:'bold'});me.buttons[label]=btn;}
-if(!this.opts.hide_refresh){make_btn('Refresh','ui-icon-refresh',function(btn){me.start=0;me.run();},1);}
-if(this.opts.show_new){make_btn('New ','ui-icon-document',function(){new_doc(me.dt);},1);}
-if(this.opts.show_report){make_btn('Report Builder','ui-icon-clipboard',function(){loadreport(me.dt,null,null,null,1);},0);}
-if(!this.opts.hide_export){make_btn('Export','ui-icon-circle-arrow-e',function(){me.do_export();});}
-if(this.opts.show_calc){make_btn('Calc','ui-icon-calculator',function(){me.do_calc();});$dh(me.buttons['Calc'])}
-this.loading_img=$a(this.btn_area,'img','',{display:'none',marginBottom:'-2px'});this.loading_img.src='images/lib/ui/button-load.gif';if(!keys(this.buttons).length)
-$dh(this.btn_area);}
-Listing.prototype.do_calc=function(){show_calc(this.result_tab,this.colnames,this.coltypes,0)}
-Listing.prototype.add_filter=function(label,ftype,options,tname,fname,cond){if(!this.filter_area){alert('[Listing] make() must be called before add_filter');}
-var me=this;if(!this.filter_set){var h=$a(this.filter_area,'div','',{fontSize:'14px',fontWeight:'bold',marginBottom:'4px'});h.innerHTML='Filter your search';this.filter_area.div=$a(this.filter_area,'div');this.perm=[[1,1],]
-this.filters={};}
-$ds(this.filter_wrapper);if((!this.inp_tab)||(this.cell_idx==this.filters_per_line)){this.inp_tab=$a(this.filter_area.div,'table','',{width:'100%',tableLayout:'fixed'});this.inp_tab.insertRow(0);for(var i=0;i<this.filters_per_line;i++){this.inp_tab.rows[0].insertCell(i);}
-this.cell_idx=0;}
-var c=this.inp_tab.rows[0].cells[this.cell_idx];this.cell_idx++;$y(c,{width:cint(100/this.filters_per_line)+'%',textAlign:'left',verticalAlign:'top'});var d1=$a(c,'div','',{fontSize:'11px',marginBottom:'2px'});d1.innerHTML=label;if(ftype=='Link')d1.innerHTML+=' <img src="images/lib/icons/link.png" style="margin-bottom:-5px" title="Link">';var d2=$a(c,'div');if(in_list(['Text','Small Text','Code','Text Editor','Read Only'],ftype))
-ftype='Data';if(ftype=='Select'&&!in_list(options.split('\n'),''))options='\n'+options
-var inp=make_field({fieldtype:ftype,'label':label,'options':options,no_buttons:1},'',d2,this,0,1);inp.not_in_form=1;inp.report=this;inp.df.single_select=1;inp.parent_cell=c;inp.parent_tab=this.input_tab;$y(inp.wrapper,{width:'95%'});inp.refresh();inp.tn=tname;inp.fn=fname;inp.condition=ftype=='Data'?'like':cond;var me=this;inp.onchange=function(){me.start=0;}
-this.filters[label]=inp;this.filter_set=1;}
-Listing.prototype.remove_filter=function(label){var inp=this.filters[label];inp.parent_tab.rows[0].deleteCell(inp.parent_cell.cellIndex);delete this.filters[label];}
-Listing.prototype.remove_all_filters=function(){for(var k in this.filters)this.remove_filter(k);$dh(this.filter_wrapper);}
-Listing.prototype.add_sort=function(ci,fname){this.sort_list[ci]=fname;}
-Listing.prototype.has_data=function(){return this.n_records;}
-Listing.prototype.set_default_sort=function(fname,sort_order){this.sort_order=sort_order;this.sort_order_dict[fname]=sort_order;this.sort_by=fname;if(this.sort_heads[fname])
-this.sort_heads[fname].set_sorting_as(sort_order);}
-Listing.prototype.set_sort=function(cell,ci,fname){var me=this;$y(cell.sort_cell,{width:'18px'});cell.sort_img=$a(cell.sort_cell,'img');cell.fname=fname;$dh(cell.sort_img);cell.set_sort_img=function(order){var t='images/icons/sort_desc.gif';if(order=='ASC'){t='images/icons/sort_asc.gif';}
-this.sort_img.src=t;}
-cell.set_sorting_as=function(order){me.sort_order=order;me.sort_by=this.fname
-me.sort_order_dict[this.fname]=order;this.set_sort_img(order)
-if(me.cur_sort){$y(me.cur_sort,{backgroundColor:"#FFF"});$dh(me.cur_sort.sort_img);}
-me.cur_sort=this;$y(this,{backgroundColor:"#DDF"});$di(this.sort_img);}
-$y(cell.label_cell,{color:'#44A',cursor:'pointer'});cell.set_sort_img(me.sort_order_dict[fname]?me.sort_order_dict[fname]:'ASC');cell.onmouseover=function(){$di(this.sort_img);}
-cell.onmouseout=function(){if(this!=me.cur_sort)
-$dh(this.sort_img);}
-cell.onclick=function(){this.set_sorting_as((me.sort_order_dict[fname]=='ASC')?'DESC':'ASC');me.run();}
-this.sort_heads[fname]=cell;}
-Listing.prototype.do_export=function(){this.build_query();var me=this;me.cn=[];if(this.no_index)
-me.cn=this.colnames;else{for(var i=1;i<this.colnames.length;i++)
-me.cn.push(this.colnames[i]);}
-var q=export_query(this.query,function(query){export_csv(query,me.head_text,null,1,null,me.cn);});}
-Listing.prototype.build_query=function(){if(this.get_query)this.get_query(this);if(!this.query){alert('No Query!');return;}
-if(!this.prefix)this.prefix='tab';var cond=[];for(var i in this.filters){var f=this.filters[i];var val=f.get_value();var c=f.condition;if(!c)c='=';if(val&&c.toLowerCase()=='like')val+='%';if(f.tn&&val&&!in_list(['All','Select...',''],val))
-cond.push(repl(' AND `%(prefix)s%(dt)s`.%(fn)s %(condition)s "%(val)s"',{prefix:this.prefix,dt:f.tn,fn:f.fn,condition:c,val:val}));}
-if(cond){this.query+=NEWLINE+cond.join(NEWLINE)
-if(this.query_max)
-this.query_max+=NEWLINE+cond.join(NEWLINE)}
-if(this.group_by)
-this.query+=' '+this.group_by+' ';if(this.sort_by&&this.sort_order){this.query+=NEWLINE+' ORDER BY `'+this.sort_by+'` '+this.sort_order;}
-if(this.show_query)msgprint(this.query);}
-Listing.prototype.set_rec_label=function(total,cur_page_len){if(this.opts.hide_rec_label)
-return;else if(total==-1)
-this.rec_label.innerHTML='Fetching...'
-else if(total>0)
-this.rec_label.innerHTML=repl('Total %(total)s %(keyword)s. Showing %(start)s to %(end)s',{total:total,start:cint(this.start)+1,end:cint(this.start)+cint(cur_page_len),keyword:this.keyword});else if(total==null)
-this.rec_label.innerHTML=''
-else if(total==0)
-this.rec_label.innerHTML=this.no_rec_message;}
-Listing.prototype.run=function(run_callback){this.build_query();var q=this.query;var me=this;if(this.max_len&&this.start>=this.max_len)this.start-=this.page_len;q+=' LIMIT '+this.start+','+this.page_len;var call_back=function(r,rt){$dh(me.loading_img);me.max_len=r.n_values;if(r.values&&r.values.length){me.n_records=r.values.length;var nc=r.values[0].length;if(me.colwidths)nc=me.colwidths.length-(me.no_index?0:1);if(me.opts.append_records&&me.start!=0){me.append_rows(r.values.length);}else{me.clear_tab();if(!me.show_empty_tab){me.remove_result_tab();me.make_result_tab(r.values.length);}}
-me.refresh(r.values.length,nc,r.values,r.n_values);me.total_records=r.n_values;me.set_rec_label(r.n_values,r.values.length);}else{me.n_records=0;me.set_rec_label(0);me.clear_tab();if(!me.opts.append_records){if(me.show_empty_tab){me.clear_tab();}else{me.remove_result_tab();me.make_result_tab(0);if(me.opts.show_no_records_label){$ds(me.show_no_records);}}}}
-$ds(me.results);if(run_callback)run_callback();if(me.onrun)me.onrun();}
-$dh(me.show_no_records);this.set_rec_label(-1);$di(this.loading_img);if(this.server_call){this.server_call(this,call_back);}else{args={query_max:(this.query_max?this.query_max:'')}
-if(this.is_std_query)args.query=q;else args.simple_query=q;if(this.opts.formatted)args.formatted=1;$c('webnotes.widgets.query_builder.runquery',args,call_back,null,this.no_loading);}}
-Listing.prototype.remove_result_tab=function(){if(!this.result_tab)return;this.result_tab.parentNode.removeChild(this.result_tab);delete this.result_tab;}
-Listing.prototype.reset_tab=function(){this.remove_result_tab();this.make_result_tab();}
-Listing.prototype.make_result_tab=function(nr){if(this.result_tab)return;if(!this.colwidths)alert("Listing: Must specify column widths");var has_headrow=this.colnames?1:0;if(nr==null)nr=this.page_len;nr+=has_headrow;var nc=this.colwidths.length;var t=make_table(this.results,nr,nc,(this.opts.table_width?this.opts.table_width:'100%'),this.colwidths,{padding:'0px'});t.className='srs_result_tab';this.result_tab=t;$y(t,{borderCollapse:'collapse'});if(this.opts.table_width){$y(this.results,{overflowX:'auto'});$y(t,{tableLayout:'fixed'});}
-if(has_headrow){this.make_headings(t,nr,nc);if(this.sort_by&&this.sort_heads[this.sort_by]){this.sort_heads[this.sort_by].set_sorting_as(this.sort_order);}}
-this.set_table_style();if(this.opts.no_border==1){$y(t,{border:'0px'});}
-this.result_tab=t;}
-Listing.prototype.set_table_style=function(){var t=this.result_tab;for(var ri=(this.colnames?1:0);ri<t.rows.length;ri++){for(var ci=0;ci<t.rows[ri].cells.length;ci++){if(this.opts.cell_style)$y($td(t,ri,ci),this.opts.cell_style);if(this.opts.alt_cell_style&&(ri%2))$y($td(t,ri,ci),this.opts.alt_cell_style);if(this.opts.show_empty_tab&&!$td(t,ri,ci).innerHTML)$td(t,ri,ci).innerHTML='&nbsp;';}}}
-Listing.prototype.append_rows=function(nr){for(var i=0;i<nr;i++){append_row(this.result_tab);}
-this.set_table_style();}
-Listing.prototype.clear_tab=function(){$dh(this.results);if(this.result_tab){var nr=this.result_tab.rows.length;var nc=this.result_tab.rows[0].cells.length;for(var ri=(this.colnames?1:0);ri<nr;ri++)
-for(var ci=0;ci<nc;ci++)
-$td(this.result_tab,ri,ci).innerHTML=(this.opts.show_empty_tab?'&nbsp;':'');}}
-Listing.prototype.clear=function(){this.rec_label.innerHTML='';this.clear_tab();}
-Listing.prototype.refresh_calc=function(){if(!this.opts.show_calc)return;if(has_common(this.coltypes,['Currency','Int','Float'])){$di(this.buttons['Calc']);}else{$dh(this.buttons['Calc']);}}
-Listing.prototype.refresh=function(nr,nc,d,n_values){this.refresh_more_button(nr,n_values);this.refresh_calc();if(this.show_result)
-this.show_result();else{if(nr){var start=this.result_tab.rows.length-nr;for(var ri=start;ri<start+nr;ri++){var c0=$td(this.result_tab,ri,0);if(!this.no_index){c0.innerHTML=cint(this.start)+cint(ri-start)+1;}
-for(var ci=0;ci<nc;ci++){var c=$td(this.result_tab,ri,ci+(this.no_index?0:1));if(c){c.innerHTML='';if(this.show_cell)this.show_cell(c,ri-start,ci,d);else this.std_cell(c,ri-start,ci,d);}}}}}}
-Listing.prototype.refresh_more_button=function(nr,n_values){var me=this;if(this.more_btn){$dh(this.more_btn);}
-if((this.start+nr)==this.max_len||(!this.max_len&&nr<this.page_len)){}else if(nr){if(!this.more_btn){$y(this.bottom_div,{margin:'8px 0px 16px 0px',textAlign:'center'});this.more_btn=$btn(this.bottom_div,'Show more results...',function(){me.start=me.start+me.page_len;me.more_btn.set_working();me.run(function(){me.more_btn.done_working();});},{fontSize:'14px'},0,1);$y(this.more_btn.loading_img,{marginBottom:'0px'});}
-$di(this.more_btn);}}
-Listing.prototype.make_headings=function(t,nr,nc){for(var ci=0;ci<nc;ci++){var tmp=make_table($td(t,0,ci),1,2,'100%',['','0px'],this.opts.head_style);$y(tmp,{tableLayout:'fixed',borderCollapse:'collapse'});$y($td(t,0,ci),this.opts.head_main_style);$td(t,0,ci).sort_cell=$td(tmp,0,1);$td(t,0,ci).label_cell=$td(tmp,0,0);$td(tmp,0,1).style.padding='0px';$td(tmp,0,0).innerHTML=this.colnames[ci]?this.colnames[ci]:'&nbsp;';if(this.sort_list[ci])this.set_sort($td(t,0,ci),ci,this.sort_list[ci]);var div=$a($td(t,0,ci),'div');$td(t,0,ci).style.borderBottom='1px solid #CCC';if(this.coltypes&&this.coltypes[ci]&&in_list(['Currency','Float','Int'],this.coltypes[ci]))$y($td(t,0,ci).label_cell,{textAlign:'right'})}}
-Listing.prototype.std_cell=function(cell,ri,ci,d){var has_headrow=this.colnames?1:0;cell.div=$a(cell,'div');$s(cell.div,d[ri][ci],this.coltypes?this.coltypes[ci+(this.no_index?0:1)]:null,this.coloptions?this.coloptions[ci+(this.no_index?0:1)]:null);}
\ No newline at end of file
diff --git a/public/js/report-legacy.js b/public/js/report-legacy.js
deleted file mode 100644
index 2ab1d1c..0000000
--- a/public/js/report-legacy.js
+++ /dev/null
@@ -1,276 +0,0 @@
-
-/*
- *	lib/js/legacy/widgets/report_builder/report_builder.js
- */
-_r.ReportContainer=function(){if(user=='Guest'){msgprint("Not Allowed");return;}
-var page=wn.container.add_page("Report Builder");this.wrapper=$a(page,'div','layout-wrapper',{padding:'0px'});this.appframe=new wn.ui.AppFrame(this.wrapper);this.appframe.$titlebar.append('<span class="report-title">');this.rb_area=$a(this.wrapper,'div','',{padding:'15px'});var me=this;this.rb_dict={};var run_fn=function(){if(me.cur_rb){me.cur_rb.dt.start_rec=1;me.cur_rb.dt.run();}}
-var runbtn=this.appframe.add_button('Run',run_fn,'icon-refresh');this.appframe.add_button('Export',function(){me.cur_rb&&me.cur_rb.dt.do_export();},'icon-download-alt');this.appframe.add_button('Print',function(){me.cur_rb&&me.cur_rb.dt.do_print();},'icon-print');this.appframe.add_button('Calc',function(){me.cur_rb&&me.cur_rb.dt.do_calc();},'icon-plus');if(has_common(['Administrator','System Manager'],user_roles)){var savebtn=this.appframe.add_button('Save',function(){if(me.cur_rb)me.cur_rb.save_criteria();});var fn=function(){if(me.cur_rb){if(!me.cur_rb.current_loaded){msgprint("error:You must save the report before you can set Advanced features");return;}
-loaddoc('Search Criteria',me.cur_rb.sc_dict[me.cur_rb.current_loaded]);}};var advancedbtn=this.appframe.add_button('Advanced Settings',fn,'icon-cog');}
-this.set_dt=function(dt,onload){my_onload=function(f){if(!f.forbidden){me.cur_rb=f;me.cur_rb.mytabs.items['Result'].expand();if(onload)onload(f);}}
-if(me.cur_rb)
-me.cur_rb.hide();if(me.rb_dict[dt]){me.rb_dict[dt].show(my_onload);}else{me.rb_dict[dt]=new _r.ReportBuilder(me.rb_area,dt,my_onload);}}}
-_r.ReportBuilder=function(parent,doctype,onload){this.menuitems={};this.has_primary_filters=false;this.doctype=doctype;this.forbidden=0;this.filter_fields=[];this.filter_fields_dict={};var me=this;this.fn_list=['beforetableprint','beforerowprint','afterrowprint','aftertableprint','customize_filters','get_query'];this.wrapper=$a(parent,'div','finder_wrapper');this.make_tabs();this.current_loaded=null;this.setup_doctype(onload);this.hide=function(){$dh(me.wrapper);}
-this.show=function(my_onload){$ds(me.wrapper);this.set_main_title('Report: '+get_doctype_label(me.doctype));if(my_onload)my_onload(me);}}
-_r.ReportBuilder.prototype.make_tabs=function(){this.tab_wrapper=$a(this.wrapper,'div','finder_tab_area');this.mytabs=new TabbedPage(this.tab_wrapper);this.mytabs.add_item('Result',null,null,1);this.mytabs.add_item('More Filters',null,null,1);this.mytabs.add_item('Select Columns',null,null,1);this.mytabs.tabs=this.mytabs.items;}
-_r.ReportBuilder.prototype.make_body=function(){this.set_main_title('Report: '+get_doctype_label(this.doctype));var me=this;this.make_save_criteria();this.column_picker=new _r.ReportColumnPicker(this);this.report_filters=new _r.ReportFilters(this);}
-_r.ReportBuilder.prototype.make_save_criteria=function(){var me=this;this.sc_list=[];this.sc_dict={};for(var n in locals['Search Criteria']){var d=locals['Search Criteria'][n];if(d.doc_type==this.doctype){this.sc_list[this.sc_list.length]=d.criteria_name;this.sc_dict[d.criteria_name]=n;}}}
-_r.ReportBuilder.prototype.save_criteria=function(save_as){var overwrite=0;if(this.current_loaded&&(!save_as)){var overwrite=confirm('Do you want to overwrite the saved criteria "'+this.current_loaded+'"');if(overwrite){var doc=locals['Search Criteria'][this.sc_dict[this.current_loaded]];var criteria_name=this.current_loaded;}}
-if(!overwrite){var criteria_name=prompt('Select a name for the criteria:','');if(!criteria_name)
-return;var dn=createLocal('Search Criteria');var doc=locals['Search Criteria'][dn];doc.criteria_name=criteria_name;doc.doc_type=this.doctype;}
-var cl=[];var fl={};var t=this.column_picker.get_selected();for(var i=0;i<t.length;i++)
-cl.push(t[i].parent+'\1'+t[i].label);for(var i=0;i<this.filter_fields.length;i++){var t=this.filter_fields[i];var v=t.get_value?t.get_value():'';if(v)fl[t.df.parent+'\1'+t.df.label+(t.bound?('\1'+t.bound):'')]=v;}
-doc.columns=cl.join(',');doc.filters=JSON.stringify(fl);doc.sort_by=sel_val(this.dt.sort_sel);doc.sort_order=this.dt.sort_order;doc.page_len=this.dt.page_len;if(this.parent_dt)
-doc.parent_doc_type=this.parent_dt
-var me=this;var fn=function(r){me.sc_dict[criteria_name]=r.main_doc_name;me.set_criteria_sel(criteria_name);}
-save_doclist(doc.doctype,doc.name,'Save',fn);}
-_r.ReportBuilder.prototype.hide_all_filters=function(){for(var i=0;i<this.filter_fields.length;i++){this.filter_fields[i].df.filter_hide=1;}}
-_r.ReportBuilder.prototype.run=function(){this.dt.run();}
-_r.ReportBuilder.prototype.clear_criteria=function(){this.column_picker.clear();this.column_picker.set_defaults();for(var i=0;i<this.filter_fields.length;i++){this.filter_fields[i].df.filter_hide=0;this.filter_fields[i].df.ignore=0;if(this.filter_fields[i].is_custom){this.filter_fields[i].df.filter_hide=1;this.filter_fields[i].df.ignore=1;}
-this.filter_fields[i].set_input(null);}
-this.set_sort_options();this.set_main_title('Report: '+get_doctype_label(this.doctype));this.current_loaded=null;this.customized_filters=null;this.sc=null;this.has_index=1;this.has_headings=1;for(var i in this.fn_list)this[this.fn_list[i]]=null;}
-_r.ReportBuilder.prototype.set_main_title=function(title){_r.rb_con.appframe.$titlebar.find('.report-title').html(title);set_title(title);}
-_r.ReportBuilder.prototype.select_column=function(dt,label,value){if(value==null)value=1;this.column_picker.set(dt,label,value);}
-_r.ReportBuilder.prototype.set_filter=function(dt,label,value){if(this.filter_fields_dict[dt+'\1'+label])
-this.filter_fields_dict[dt+'\1'+label].set_input(value);}
-_r.ReportBuilder.prototype.load_criteria=function(criteria_name){this.clear_criteria();if(!this.sc_dict[criteria_name]){alert(criteria_name+' could not be loaded. Please Refresh and try again');}
-this.sc=locals['Search Criteria'][this.sc_dict[criteria_name]];var report=this;if(this.sc&&this.sc.report_script)eval(this.sc.report_script);this.large_report=0;if(report.customize_filters){try{report.customize_filters(this);}catch(err){console.log('Error in "customize_filters":\n'+err);}}
-this.report_filters.refresh();this.column_picker.clear();var cl=this.sc.columns?this.sc.columns.split(','):[];for(var c=0;c<cl.length;c++){var key=cl[c].split('\1');this.select_column(key[0],key[1],1);}
-eval('var fl='+this.sc.filters);for(var n in fl){if(fl[n]){var key=n.split('\1');if(key[1]=='docstatus'){}
-this.set_filter(key[0],key[1],fl[n]);}}
-this.set_criteria_sel(criteria_name);this.set_filters_from_route();}
-_r.ReportBuilder.prototype.set_criteria_sel=function(criteria_name){var sc=locals['Search Criteria'][this.sc_dict[criteria_name]];if(sc&&sc.add_col)
-var acl=sc.add_col.split('\n');else
-var acl=[];var new_sl=[];for(var i=0;i<acl.length;i++){var tmp=acl[i].split(' AS ');if(tmp[1]){var t=eval(tmp[1]);new_sl[new_sl.length]=[t,"`"+t+"`"];}}
-this.set_sort_options(new_sl);if(sc&&sc.sort_by){this.dt.sort_sel.value=sc.sort_by;}
-if(sc&&sc.sort_order){sc.sort_order=='ASC'?this.dt.set_asc():this.dt.set_desc();}
-if(sc&&sc.page_len){this.dt.page_len_sel.inp.value=sc.page_len;}
-this.current_loaded=criteria_name;this.set_main_title(criteria_name);}
-_r.ReportBuilder.prototype.setup_filters_and_cols=function(){function can_dt_be_submitted(dt){return locals.DocType[dt]&&locals.DocType[dt].is_submittable||0;}
-var me=this;var dt=me.parent_dt?me.parent_dt:me.doctype;var fl=[{'fieldtype':'Data','label':'ID','fieldname':'name','in_filter':1,'parent':dt},{'fieldtype':'Data','label':'Owner','fieldname':'owner','in_filter':1,'parent':dt},{'fieldtype':'Date','label':'Created on','fieldname':'creation','in_filter':0,'parent':dt},{'fieldtype':'Date','label':'Last modified on','fieldname':'modified','in_filter':0,'parent':dt},];if(can_dt_be_submitted(dt)){fl[fl.length]={'fieldtype':'Check','label':'Saved','fieldname':'docstatus','search_index':1,'in_filter':1,'def_filter':1,'parent':dt};fl[fl.length]={'fieldtype':'Check','label':'Submitted','fieldname':'docstatus','search_index':1,'in_filter':1,'def_filter':1,'parent':dt};fl[fl.length]={'fieldtype':'Check','label':'Cancelled','fieldname':'docstatus','search_index':1,'in_filter':1,'parent':dt};}
-me.make_datatable();me.orig_sort_list=[];if(me.parent_dt){me.setup_dt_filters_and_cols(fl,me.parent_dt);var fl=[];}
-me.setup_dt_filters_and_cols(fl,me.doctype);if(!this.has_primary_filters)
-$dh(this.report_filters.first_page_filter);this.column_picker.refresh();$ds(me.body);}
-_r.ReportBuilder.prototype.set_filters_from_route=function(){var route=wn.get_route();this.current_route=wn.get_route_str();if(route.length>3){for(var i=3;i<route.length;i++){var p=route[i].split('=');if(p.length==2){var dt=this.parent_dt?this.parent_dt:this.doctype;this.set_filter(dt,p[0],p[1]);}}}}
-_r.ReportBuilder.prototype.add_filter=function(f){if(this.filter_fields_dict[f.parent+'\1'+f.label]){this.filter_fields_dict[f.parent+'\1'+f.label].df=f;}else{this.report_filters.add_field(f,f.parent,null,1);}}
-_r.ReportBuilder.prototype.setup_dt_filters_and_cols=function(fl,dt){var me=this;var lab=$a(me.filter_area,'div','filter_dt_head');lab.innerHTML='Filters for '+get_doctype_label(dt);var lab=$a(me.picker_area,'div','builder_dt_head');lab.innerHTML='Select columns for '+get_doctype_label(dt);var dt_fields=wn.meta.docfield_list[dt];for(var i=0;i<dt_fields.length;i++){fl[fl.length]=dt_fields[i];}
-var sf_list=locals.DocType[dt].search_fields?locals.DocType[dt].search_fields.split(','):[];for(var i in sf_list)sf_list[i]=strip(sf_list[i]);for(var i=0;i<fl.length;i++){var f=fl[i];if(f&&cint(f.in_filter)){me.report_filters.add_field(f,dt,in_list(sf_list,f.fieldname));}
-if(f&&!in_list(no_value_fields,f.fieldtype)&&f.fieldname!='docstatus'&&(!f.report_hide)){me.column_picker.add_field(f);}}
-me.set_sort_options();}
-_r.ReportBuilder.prototype.set_sort_options=function(l){var sl=this.orig_sort_list;empty_select(this.dt.sort_sel);if(l)sl=add_lists(l,this.orig_sort_list);if(!l)l=[];if(!l.length){l.push(['ID','name'])}
-for(var i=0;i<sl.length;i++){this.dt.add_sort_option(sl[i][0],sl[i][1]);}}
-_r.ReportBuilder.prototype.validate_permissions=function(onload){this.perm=get_perm(this.parent_dt?this.parent_dt:this.doctype);if(!this.perm[0][READ]){this.forbidden=1;if(user=='Guest'){msgprint('You must log in to view this page');}else{msgprint('No Read Permission');}
-window.back();return 0;}
-return 1;}
-_r.ReportBuilder.prototype.setup_doctype=function(onload){var me=this;if(!locals['DocType'][this.doctype]){this.load_doctype_from_server(onload);}else{for(var key in locals.DocField){var f=locals.DocField[key];if(f.fieldtype=='Table'&&f.options==this.doctype)
-this.parent_dt=f.parent;}
-if(!me.validate_permissions())
-return;me.validate_permissions();me.make_body();me.setup_filters_and_cols();if(onload)onload(me);}}
-_r.ReportBuilder.prototype.load_doctype_from_server=function(onload){var me=this;$c('webnotes.widgets.form.load.getdoctype',args={'doctype':this.doctype,'with_parent':1},function(r,rt){if(r.parent_dt)me.parent_dt=r.parent_dt;if(!me.validate_permissions())
-return;me.make_body();me.setup_filters_and_cols();if(onload)onload(me);});}
-_r.ReportBuilder.prototype.reset_report=function(){this.clear_criteria();this.mytabs.items['Select Columns'].show();this.mytabs.items['More Filters'].show();this.report_filters.refresh();this.column_picker.refresh();var dt=this.parent_dt?this.parent_dt:this.doctype;this.set_filter(dt,'Saved',1);this.set_filter(dt,'Submitted',1);this.set_filter(dt,'Cancelled',0);this.column_picker.set_defaults();this.dt.clear_all();this.dt.sort_sel.value='ID';this.dt.page_len_sel.inp.value='50';this.dt.set_no_limit(0);this.dt.set_desc();this.set_filters_from_route();}
-_r.ReportBuilder.prototype.make_datatable=function(){var me=this;this.dt_area=$a(this.mytabs.items['Result'].body,'div');var clear_area=$a(this.mytabs.items['Result'].body,'div');clear_area.style.marginTop='8px';clear_area.style.textAlign='right';this.clear_btn=$a($a(clear_area,'span'),'button');this.clear_btn.innerHTML='Clear Settings';this.clear_btn.onclick=function(){me.reset_report();}
-var d=$a(clear_area,'span','',{marginLeft:'16px'});d.innerHTML='<span>Show Query: </span>';this.show_query=$a_input(d,'checkbox');this.show_query.checked=false;this.dt=new _r.DataTable(this.dt_area,'');this.dt.finder=this;this.dt.make_query=function(){var report=me;if(me.current_loaded&&me.sc_dict[me.current_loaded]){var sc=get_local('Search Criteria',me.sc_dict[me.current_loaded]);}
-if(sc)me.dt.search_criteria=sc;else me.dt.search_criteria=null;if(sc&&sc.server_script)me.dt.server_script=sc.server_script;else me.dt.server_script=null;for(var i=0;i<me.fn_list.length;i++){if(me[me.fn_list[i]])me.dt[me.fn_list[i]]=me[me.fn_list[i]];else me.dt[me.fn_list[i]]=null;}
-var fl=[];var docstatus_cl=[];var cl=[];var table_name=function(t){return'`tab'+t+'`';}
-var dis_filters_list=[];if(sc&&sc.dis_filters)
-var dis_filters_list=sc.dis_filters.split('\n');var t=me.column_picker.get_selected();for(var i=0;i<t.length;i++){fl.push(table_name(t[i].parent)+'.`'+t[i].fieldname+'` AS `'+t[i].parent+'.'+t[i].fieldname+'`');}
-me.selected_fields=fl;if(sc&&sc.add_col){var adv_fl=sc.add_col.split('\n');for(var i=0;i<adv_fl.length;i++){fl[fl.length]=adv_fl[i];}}
-me.dt.filter_vals={}
-add_to_filter=function(k,v,is_select){if(v==null)v='';if(!in_list(keys(me.dt.filter_vals),k)){me.dt.filter_vals[k]=v;}else{if(is_select)
-me.dt.filter_vals[k]+='\n'+v;else
-me.dt.filter_vals[k+'1']=v;}}
-for(var i=0;i<me.filter_fields.length;i++){var t=me.filter_fields[i];var v=t.get_value?t.get_value():'';if(t.df.fieldtype=='Select'){if(t.input.multiple){for(var sel_i=0;sel_i<v.length;sel_i++){add_to_filter(t.df.fieldname,v[sel_i],1);}
-if(!v.length)add_to_filter(t.df.fieldname,"",1);}else{add_to_filter(t.df.fieldname,v);}}else add_to_filter(t.df.fieldname,v);if(!in_list(dis_filters_list,t.df.fieldname)&&!t.df.ignore){if(t.df.fieldname=='docstatus'){if(t.df.label=='Saved'){if(t.get_value())docstatus_cl[docstatus_cl.length]=table_name(t.df.parent)+'.docstatus=0';else cl[cl.length]=table_name(t.df.parent)+'.docstatus!=0';}
-else if(t.df.label=='Submitted'){if(t.get_value())docstatus_cl[docstatus_cl.length]=table_name(t.df.parent)+'.docstatus=1';else cl[cl.length]=table_name(t.df.parent)+'.docstatus!=1';}
-else if(t.df.label=='Cancelled'){if(t.get_value())docstatus_cl[docstatus_cl.length]=table_name(t.df.parent)+'.docstatus=2';else cl[cl.length]=table_name(t.df.parent)+'.docstatus!=2';}}else{var fn='`'+t.df.fieldname+'`';var v=t.get_value?t.get_value():'';if(v){if(in_list(['Data','Link','Small Text','Text'],t.df.fieldtype)){cl[cl.length]=table_name(t.df.parent)+'.'+fn+' LIKE "'+v+'%"';}else if(t.df.fieldtype=='Select'){if(t.input.multiple){var tmp_cl=[];for(var sel_i=0;sel_i<v.length;sel_i++){if(v[sel_i]){tmp_cl[tmp_cl.length]=table_name(t.df.parent)+'.'+fn+' = "'+v[sel_i]+'"';}}
-if(tmp_cl.length)cl[cl.length]='('+tmp_cl.join(' OR ')+')';}else{cl[cl.length]=table_name(t.df.parent)+'.'+fn+' = "'+v+'"';}}else{var condition='=';if(t.sql_condition)condition=t.sql_condition;cl[cl.length]=table_name(t.df.parent)+'.'+fn+condition+'"'+v+'"';}}}}}
-me.dt.filter_vals.user=user;me.dt.filter_vals.user_email=user_email;me.filter_vals=me.dt.filter_vals;this.is_simple=0;if(sc&&sc.custom_query){this.query=repl(sc.custom_query,me.dt.filter_vals);this.is_simple=1;return}
-if(me.get_query){this.query=me.get_query();this.is_simple=1;}else{if(docstatus_cl.length)
-cl[cl.length]='('+docstatus_cl.join(' OR ')+')';if(sc&&sc.add_cond){var adv_cl=sc.add_cond.split('\n');for(var i=0;i<adv_cl.length;i++){cl[cl.length]=adv_cl[i];}}
-if(!fl.length){alert('You must select atleast one column to view');this.query='';return;}
-var tn=table_name(me.doctype);if(me.parent_dt){tn=tn+','+table_name(me.parent_dt);cl[cl.length]=table_name(me.doctype)+'.`parent` = '+table_name(me.parent_dt)+'.`name`';}
-if(sc&&sc.add_tab){var adv_tl=sc.add_tab.split('\n');tn=tn+','+adv_tl.join(',');}
-if(!cl.length)
-this.query='SELECT '+fl.join(',\n')+' FROM '+tn
-else
-this.query='SELECT '+fl.join(',')+' FROM '+tn+' WHERE '+cl.join('\n AND ');if(sc&&sc.group_by){this.query+=' GROUP BY '+sc.group_by;}
-this.query=repl(this.query,me.dt.filter_vals)}
-if(me.show_query.checked){this.show_query=1;}
-if(me.current_loaded)this.rep_name=me.current_loaded;else this.rep_name=me.doctype;}}
-_r.ReportBuilder.prototype.get_filter=function(dt,label){return this.filter_fields_dict[dt+FILTER_SEP+label];}
-_r.ReportBuilder.prototype.set_filter_properties=function(dt,label,properties){var f=this.filter_fields_dict[dt+FILTER_SEP+label];for(key in properties){f.df[key]=properties[key];}}
-_r.ReportFilters=function(rb){this.rb=rb;this.first_page_filter=$a(rb.mytabs.items['Result'].body,'div','finder_filter_area');this.filter_area=$a(rb.mytabs.items['More Filters'].body,'div','finder_filter_area');this.filter_fields_area=$a(this.filter_area,'div');}
-_r.ReportFilters.prototype.refresh=function(){var fl=this.rb.filter_fields
-for(var i=0;i<fl.length;i++){var f=fl[i];if(f.df.filter_hide){$dh(f.wrapper);}else{$ds(f.wrapper);}
-if(f.df.bold){if(f.label_cell)
-$y(f.label_cell,{fontWeight:'bold'})}else{if(f.label_cell)$y(f.label_cell,{fontWeight:'normal'})}
-if(f.df['report_default'])
-f.set_input(f.df['report_default']);if(f.df.in_first_page&&f.df.filter_cell){f.df.filter_cell.parentNode.removeChild(f.df.filter_cell);this.first_page_filter.appendChild(f.df.filter_cell);this.rb.has_primary_filters=1;$ds(this.first_page_filter);}}}
-_r.ReportFilters.prototype.add_date_field=function(cell,f,dt,is_custom){var my_div=$a(cell,'div','',{});var f1=copy_dict(f);f1.label='From '+f1.label;var tmp1=this.make_field_obj(f1,dt,my_div,is_custom);tmp1.sql_condition='>=';tmp1.bound='lower';var f2=copy_dict(f);f2.label='To '+f2.label;var tmp2=this.make_field_obj(f2,dt,my_div,is_custom);tmp2.sql_condition='<=';tmp2.bound='upper';}
-_r.ReportFilters.prototype.add_numeric_field=function(cell,f,dt,is_custom){var my_div=$a(cell,'div','',{});var f1=copy_dict(f);f1.label=f1.label+' >=';var tmp1=this.make_field_obj(f1,dt,my_div,is_custom);tmp1.sql_condition='>=';tmp1.bound='lower';var f2=copy_dict(f);f2.label=f2.label+' <=';var tmp2=this.make_field_obj(f2,dt,my_div,is_custom);tmp2.sql_condition='<=';tmp2.bound='upper';}
-_r.ReportFilters.prototype.make_field_obj=function(f,dt,parent,is_custom){var tmp=make_field(f,dt,parent,this.rb,false);tmp.not_in_form=1;tmp.in_filter=1;tmp.refresh();this.rb.filter_fields[this.rb.filter_fields.length]=tmp;this.rb.filter_fields_dict[f.parent+'\1'+f.label]=tmp;if(is_custom)tmp.is_custom=1;return tmp;}
-_r.ReportFilters.prototype.add_field=function(f,dt,in_primary,is_custom){var me=this;if(f.in_first_page)in_primary=true;var fparent=this.filter_fields_area;if(in_primary){fparent=this.first_page_filter;this.rb.has_primary_filters=1;}
-if(f.on_top){var cell=document.createElement('div');fparent.insertBefore(cell,fparent.firstChild);$y(cell,{width:'70%'});}else if(f.insert_before){var cell=document.createElement('div');fparent.insertBefore(cell,fparent[f.df.insert_before].filter_cell);$y(cell,{width:'70%'});}
-else
-var cell=$a(fparent,'div','',{width:'70%'});f.filter_cell=cell;if(f.fieldtype=='Date'){this.add_date_field(cell,f,dt);}else if(in_list(['Currency','Int','Float'],f.fieldtype)){this.add_numeric_field(cell,f,dt);}else if(!in_list(['Section Break','Column Break','Read Only','HTML','Table','Image','Button'],f.fieldtype)){var tmp=this.make_field_obj(f,dt,cell,is_custom);}
-if(f.fieldname!='docstatus')
-me.rb.orig_sort_list.push([f.label,'`tab'+f.parent+'`.`'+f.fieldname+'`']);if(f.def_filter)
-tmp.input.checked=true;}
-_r.ReportColumnPicker=function(rb){this.rb=rb;this.picker_area=$a(this.rb.mytabs.items['Select Columns'].body,'div','finder_picker_area');this.all_fields=[];this.sel_idx=0;this.make_body();}
-_r.ReportColumnPicker.prototype.make_body=function(){var t=make_table(this.picker_area,1,3,'100%',['35%','30%','35%'],{verticalAlign:'middle',textAlign:'center'});$a($td(t,0,0),'h3','',{marginBottom:'8px'}).innerHTML='Columns';this.unsel_fields=$a($td(t,0,0),'select','',{height:'200px',width:'100%',border:'1px solid #AAA'});this.unsel_fields.multiple=true;this.unsel_fields.onchange=function(){for(var i=0;i<this.options.length;i++)this.options[i].field.is_selected=this.options[i].selected;}
-var me=this;this.up_btn=$a($a($td(t,0,1),'div'),'button','',{width:'70px'});this.up_btn.innerHTML='Up &uarr;';this.up_btn.onclick=function(){me.move_up();}
-this.add_all=$a($a($td(t,0,1),'div'),'button','',{width:'40px'});this.add_all.innerHTML='&gt;&gt;';this.add_all.onclick=function(){me.move(me.unsel_fields,'add',1);}
-this.add_btn=$a($a($td(t,0,1),'div'),'button','',{width:'110px'});this.add_btn.innerHTML='<b>Add &gt;</b>';this.add_btn.onclick=function(){me.move(me.unsel_fields,'add');}
-this.remove_btn=$a($a($td(t,0,1),'div'),'button','',{width:'110px'});this.remove_btn.innerHTML='<b>&lt; Remove</b>';this.remove_btn.onclick=function(){me.move(me.sel_fields,'remove');}
-this.remove_all=$a($a($td(t,0,1),'div'),'button','',{width:'40px'});this.remove_all.innerHTML='&lt;&lt;';this.remove_all.onclick=function(){me.move(me.sel_fields,'remove',1);}
-this.dn_btn=$a($a($td(t,0,1),'div'),'button','',{width:'70px'});this.dn_btn.innerHTML='Down &darr;';this.dn_btn.onclick=function(){me.move_down();}
-$a($td(t,0,2),'h3','',{marginBottom:'8px'}).innerHTML='Selected Columns';this.sel_fields=$a($td(t,0,2),'select','',{height:'200px',width:'100%',border:'1px solid #AAA'});this.sel_fields.multiple=true;this.sel_fields.onchange=function(){for(var i=0;i<this.options.length;i++)this.options[i].field.is_selected=this.options[i].selected;}}
-_r.ReportColumnPicker.prototype.get_by_sel_idx=function(s,idx){for(var j=0;j<s.options.length;j++){if(s.options[j].field.sel_idx==idx)
-return s.options[j].field;}
-return{}}
-_r.ReportColumnPicker.prototype.move_up=function(){var s=this.sel_fields;for(var i=1;i<s.options.length;i++){if(s.options[i].selected){s.options[i].field.sel_idx--;this.get_by_sel_idx(s,i-1).sel_idx++;}}
-this.refresh();}
-_r.ReportColumnPicker.prototype.move_down=function(){var s=this.sel_fields;if(s.options.length<=1)return;for(var i=s.options.length-2;i>=0;i--){if(s.options[i].selected){this.get_by_sel_idx(s,i+1).sel_idx--;s.options[i].field.sel_idx++;}}
-this.refresh();}
-_r.ReportColumnPicker.prototype.move=function(s,type,all){for(var i=0;i<s.options.length;i++){if(s.options[i].selected||all){if(type=='add'){s.options[i].field.selected=1;s.options[i].field.sel_idx=this.sel_idx;this.sel_idx++;}else{s.options[i].field.selected=0;s.options[i].field.sel_idx=0;this.sel_idx--;}}}
-this.refresh();}
-_r.ReportColumnPicker.prototype.refresh=function(){var ul=[];var sl=[];for(var i=0;i<this.all_fields.length;i++){var o=this.all_fields[i];if(o.selected){sl.push(o);if(this.rb.dt)this.rb.dt.set_sort_option_disabled(o.df.label,0);}else{ul.push(o);if(this.rb.dt)this.rb.dt.set_sort_option_disabled(o.df.label,1);}}
-ul.sort(function(a,b){return(cint(a.df.idx)-cint(b.df.idx))});sl.sort(function(a,b){return(cint(a.sel_idx)-cint(b.sel_idx))})
-for(var i=0;i<sl.length;i++){sl[i].sel_idx=i;}
-this.set_options(this.unsel_fields,ul);this.set_options(this.sel_fields,sl);}
-_r.ReportColumnPicker.prototype.set_options=function(s,l){empty_select(s);for(var i=0;i<l.length;i++){var v=l[i].df.parent+'.'+l[i].df.label;var v_label=get_doctype_label(l[i].df.parent)+'.'+l[i].df.label;var o=new Option(v_label,v,false,false);o.field=l[i];if(o.field.is_selected)o.selected=1;s.options[s.options.length]=o;}}
-_r.ReportColumnPicker.prototype.clear=function(){this.sel_idx=0;for(var i=0;i<this.all_fields.length;i++){this.all_fields[i].selected=0;}
-this.refresh();}
-_r.ReportColumnPicker.prototype.get_selected=function(){var sl=[];for(var i=0;i<this.all_fields.length;i++){var o=this.all_fields[i];if(o.selected){sl[sl.length]=o.df;o.df.sel_idx=o.sel_idx;}}
-return sl.sort(function(a,b){return(cint(a.sel_idx)-cint(b.sel_idx))});}
-_r.ReportColumnPicker.prototype.set_defaults=function(){for(var i=0;i<this.all_fields.length;i++){if(this.all_fields[i].selected_by_default)
-this.all_fields[i].selected=1;}}
-_r.ReportColumnPicker.prototype.add_field=function(f){if(!f.label)return;var by_default=(f.in_filter)?1:0;this.all_fields.push({selected:by_default,df:f,sel_idx:(by_default?this.sel_idx:0),selected_by_default:by_default});this.sel_idx+=by_default;}
-_r.ReportColumnPicker.prototype.set=function(dt,label,selected){for(var i=0;i<this.all_fields.length;i++){if(this.all_fields[i].df.parent==dt&&this.all_fields[i].df.label==label){this.all_fields[i].selected=selected;this.all_fields[i].sel_idx=this.sel_idx;this.sel_idx+=cint(selected);this.refresh();return;}}}
-/*
- *	lib/js/legacy/widgets/report_builder/datatable.js
- */
-_r.scroll_head=function(ele){var h=ele.childNodes[0];h.style.top=cint(ele.scrollTop)+'px';}
-_r.DataTable=function(html_fieldname,dt,repname,hide_toolbar){var me=this;if(html_fieldname.substr){var html_field=cur_frm.fields_dict[html_fieldname];html_field.onrefresh=function(){if(me.docname!=cur_frm.docname){me.clear_all();me.docname=cur_frm.docname;}}
-var parent=html_field.wrapper;datatables[html_fieldname]=this;}else{var parent=html_fieldname;}
-this.start_rec=1;this.page_len=50;this.repname=repname;this.dt=dt;this.no_limit=false;this.query='';this.has_index=1;this.has_headings=1;this.disabled_options={};this.levels=[];if(this.dt){var tw=$a(parent,'div');var t=$a(tw,'div','link_type');t.style.cssFloat='right';$h(tw,'14px');t.style.margin='2px 0px';t.style.fontSize='11px';t.onclick=function(){new_doc(me.dt);}
-t.innerHTML='New '+this.dt;}
-if(!hide_toolbar)this.make_toolbar(parent);this.wrapper=$a(parent,'div','report_tab');$h(this.wrapper,cint(screen.height*0.35)+'px');this.wrapper.onscroll=function(){_r.scroll_head(this);}
-this.hwrapper=$a(this.wrapper,'div','report_head_wrapper');this.twrapper=$a(this.wrapper,'div','report_tab_wrapper');this.no_data_tag=$a(this.wrapper,'div','report_no_data');this.no_data_tag.innerHTML='No Records Found';this.fetching_tag=$a(this.wrapper,'div','',{height:'100%',background:'url("images/lib/ui/square_loading.gif") center no-repeat',display:'none'});}
-_r.DataTable.prototype.add_icon=function(parent,imgsrc){var i=$a(parent,'img');i.style.padding='2px';i.style.cursor='pointer';i.setAttribute('src','images/lib/icons/'+imgsrc+'.gif');return i;}
-_r.DataTable.prototype.set_no_limit=function(v){if(v){this.no_limit=1;$dh(this.page_len_sel.wrapper);}else{this.no_limit=0;$ds(this.page_len_sel.wrapper);}}
-_r.DataTable.prototype.make_toolbar=function(parent){var me=this;this.hbar=$a(parent,'div','',{margin:'8px 0px 16px 0px'});var ht=make_table(this.hbar,1,3,'100%',['40%','40%','20%'],{verticalAlign:'middle'});var div=$a($td(ht,0,0),'div');var t=make_table($td(ht,0,1),1,6,null,[null,null,null,'20px',null,null],{verticalAlign:'middle'});$td(t,0,0).innerHTML='Sort By:';$y($td(t,0,1),{textAlign:'right',paddingRight:'4px'});this.sort_sel=$a($td(t,0,2),'select','',{width:'100px'});this.sort_sel.onchange=function(){me.start_rec=1;me.run();}
-this.sort_icon=this.add_icon($td(t,0,3),'arrow_down');this.sort_order='DESC';this.sort_icon.onclick=function(){if(me.sort_order=='ASC')me.set_desc();else me.set_asc();me.start_rec=1;me.run();}
-$td(t,0,4).innerHTML='Per Page:';$y($td(t,0,4),{textAlign:'right',paddingRight:'4px'});var s=new SelectWidget($td(t,0,5),['50','100','500','1000'],'70px');s.inp.value='50';s.inp.onchange=function(){me.page_len=flt(this.value);}
-this.page_len_sel=s;var c1=$td(ht,0,2);c1.style.textAlign='right';var ic=this.add_icon(c1,'resultset_first');ic.onclick=function(){me.start_rec=1;me.run();}
-var ic=this.add_icon(c1,'resultset_previous');ic.onclick=function(){if(me.start_rec-me.page_len<=0)return;me.start_rec=me.start_rec-me.page_len;me.run();}
-this.has_next=false;var ic=this.add_icon(c1,'resultset_next');ic.onclick=function(){if(!me.has_next)return;me.start_rec=me.start_rec+me.page_len;me.run();}}
-_r.DataTable.prototype.set_desc=function(){this.sort_icon.src='images/lib/icons/arrow_down.gif';this.sort_order='DESC';}
-_r.DataTable.prototype.set_asc=function(icon){this.sort_icon.src='images/lib/icons/arrow_up.gif';this.sort_order='ASC';}
-_r.DataTable.prototype.set_sort_option_disabled=function(label,disabled){var s=this.sort_sel;if(disabled){for(var i=0;i<s.options.length;i++){if(s.options[i]&&s.options[i].text==label){this.disabled_options[label]=s.options[i];s.remove(i);}}}else{if(this.disabled_options[label]){try{s.add(this.disabled_options[label],s.options[s.options.length-1]);}catch(e){try{s.add(this.disabled_options[label],s.options.length-1);}catch(e){}}
-this.disabled_options[label]=null;}}}
-_r.DataTable.prototype.add_sort_option=function(label,val){var s=this.sort_sel;s.options[s.options.length]=new Option(label,val,false,s.options.length==0?true:false);}
-_r.DataTable.prototype.update_query=function(no_limit){if((_r.rb_con.cur_rb&&_r.rb_con.cur_rb.get_query)||(this.search_criteria&&this.search_criteria.custom_query)){}else{var me=this;var sort_by=null,sort_order="";if(sel_val(this.sort_sel)){sort_by=sel_val(this.sort_sel);sort_order=this.sort_order;}else if(_r.rb_con.cur_rb.sc.sort_by){sort_by=(_r.rb_con.cur_rb.sc.sort_by||"").split(",");sort_by=$.map(sort_by,function(v){return v.trim()+" "+(me.sort_order||"");}).join(", ");sort_order="";}else{this.sort_sel.selectedIndex=0;sort_by=sel_val(this.sort_sel);sort_order=this.sort_order;}
-this.query+=NEWLINE
-+' ORDER BY '+sort_by
-+' '+sort_order;}
-if(no_limit||this.no_limit){if(this.show_query)alert(this.query);return;}
-this.query+=' LIMIT '+(this.start_rec-1)+','+this.page_len;if(this.show_query)
-alert(this.query);}
-_r.DataTable.prototype._get_query=function(no_limit){$dh(this.no_data_tag);this.show_query=0;if(this.make_query)
-this.make_query();this.update_query(no_limit);}
-_r.DataTable.prototype.run=function(){if(this.validate&&!this.validate())
-return;if(_r.rb_con.cur_rb){if(_r.rb_con.cur_rb.large_report==1){msgprint("This is a very large report and cannot be shown in the browser as it is likely to make your browser very slow.<br><br>Please click on 'Export' to open in a spreadsheet");return;}
-_r.rb_con.cur_rb.mytabs.items['Result'].expand();}
-var me=this;this._get_query();if(this.set_data){this.show_result(this.set_data);this.set_data=null;return;}
-$ds(this.fetching_tag);if($.browser.mozilla)this.clear_all();var args={'query':me.query,'report_name':'_r.DataTable','show_deleted':1,'sc_id':me.search_criteria?me.search_criteria.name:'','filter_values':me.filter_vals?docstring(me.filter_vals):'','roles':'["'+user_roles.join('","')+'"]'}
-if(this.is_simple)args.is_simple=1;$c('webnotes.widgets.query_builder.runquery',args,function(r,rt){$dh(me.fetching_tag);me.show_result(r,rt);});}
-_r.DataTable.prototype.clear_all=function(){if(this.htab&&this.htab.parentNode){this.htab.parentNode.removeChild(this.htab);delete this.htab;}
-if(this.tab&&this.tab.parentNode){this.tab.parentNode.removeChild(this.tab);delete this.tab;}
-$dh(this.no_data_tag);}
-_r.DataTable.prototype.has_data=function(){if(this.htab&&this.htab.rows.length)return 1;else return 0;}
-_r.DataTable.prototype.show_result=function(r,rt){var me=this;this.clear_all();this.rset=eval(r.values);if(this.rset&&this.rset.length){if(this.has_headings){this.htab=$a(this.hwrapper,'table');$y(this.twrapper,{top:'25px',borderTop:'0px'});}
-this.tab=$a(this.twrapper,'table');this.colwidths=eval(r.colwidths);this.coltypes=eval(r.coltypes);this.coloptions=eval(r.coloptions);this.colnames=eval(r.colnames);$y(this.tab,{tableLayout:'fixed'});if(this.beforetableprint)this.beforetableprint(this);if(this.has_headings)this.make_head_tab(this.colnames);var start=this.start_rec;var rset_len=this.rset.length;if(rset_len>1000){msgprint("Showing only 1000 records out of "+rset_len+". Use 'Export' to see all records");rset_len=1000;}
-for(var vi=0;vi<rset_len;vi++){var row=this.tab.insertRow(vi);if(this.has_index){var c0=row.insertCell(0);$w(c0,'30px');$a(c0,'div','',{width:'23px'}).innerHTML=start;}
-start++;for(var ci=0;ci<this.rset[vi].length;ci++){this.make_data_cell(vi,ci,this.rset[vi][ci]);}
-if(this.afterrowprint){row.data_cells={};row.data={};for(var ci=0;ci<this.colnames.length;ci++){row.data[this.colnames[ci]]=this.rset[vi][ci];row.data_cells[this.colnames[ci]]=row.cells[ci+1];}f
-this.afterrowprint(row);}}
-if(this.rset.length&&this.rset.length>=this.page_len)this.has_next=true;if(r.style){for(var i=0;i<r.style.length;i++){$yt(this.tab,r.style[i][0],r.style[i][1],r.style[i][2]);}}
-if(this.aftertableprint)this.aftertableprint(this.tab);}else{$ds(this.no_data_tag);}}
-_r.DataTable.prototype.get_col_width=function(i){if(this.colwidths&&this.colwidths.length&&this.colwidths[i])
-return cint(this.colwidths[i])+'px';else return'100px';}
-_r.DataTable.prototype.make_head_tab=function(colnames){var r0=this.htab.insertRow(0);if(this.has_index){var c0=r0.insertCell(0);c0.className='report_head_cell';$w(c0,'30px');$a(c0,'div').innerHTML='Sr';this.total_width=30;}
-for(var i=0;i<colnames.length;i++){var w=this.get_col_width(i);this.total_width+=cint(w);var c=r0.insertCell(r0.cells.length);c.className='report_head_cell';if(w)$w(c,w);$a(c,'div').innerHTML=colnames[i];c.val=colnames[i];}
-$w(this.htab,this.total_width+'px');$w(this.tab,this.total_width+'px');}
-_r.DataTable.prototype.make_data_cell=function(ri,ci,val){var row=this.tab.rows[ri];var c=row.insertCell(row.cells.length);if(row.style.color)
-c.style.color=row.style.color;if(row.style.backgroundColor)
-c.style.backgroundColor=row.style.backgroundColor;if(row.style.fontWeight)
-c.style.fontWeight=row.style.fontWeight;if(row.style.fontSize)
-c.style.fontSize=row.style.fontSize;var w=this.get_col_width(ci);if(w)$w(c,w);c.val=val;var me=this;c.div=$a(c,'div','',{width:(cint(w)-7)+'px'});$s(c.div,val,this.coltypes[ci],this.coloptions[ci])}
-_r.DataTable.prototype.do_print=function(){this._get_query(true);args={query:this.query,title:this.rep_name?this.rep_name:this.dt,colnames:null,colwidhts:null,coltypes:null,has_index:this.has_index,has_headings:this.has_headings,check_limit:1,is_simple:(this.is_simple?'Yes':''),sc_id:(this.search_criteria?this.search_criteria.name:''),filter_values:docstring(this.filter_vals),};_p.print_query=new _p.PrintQuery();_p.print_query.show_dialog(args);}
-_r.DataTable.prototype.do_export=function(){this._get_query(true);var me=this;export_query(this.query,function(q){export_csv(q,(me.rep_name?me.rep_name:me.dt),(me.search_criteria?me.search_criteria.name:''),me.is_simple,docstring(me.filter_vals));});}
-_r.DataTable.prototype.do_calc=function(){_r.show_calc(this.tab,this.colnames,this.coltypes,1);}
-_r.DataTable.prototype.get_col_data=function(colname){var ci=0;if(!this.htab)return[];for(var i=1;i<this.htab.rows[0].cells.length;i++){var hc=this.htab.rows[0].cells[i];if(hc.val==colname){ci=i;break;}}
-var ret=[];for(var ri=0;ri<this.tab.rows.length;ri++){ret[ret.length]=this.tab.rows[ri].cells[ci].val;}
-return ret;}
-_r.DataTable.prototype.get_html=function(){var w=document.createElement('div');w=$a(w,'div');w.style.marginTop='16px';var tab=$a(w,'table');var add_head_style=function(c,w){c.style.fontWeight='bold';c.style.border='1px solid #000';c.style.padding='2px';if(w)$w(c,w);return c;}
-var add_cell_style=function(c){c.style.padding='2px';c.style.border='1px solid #000';return c;}
-tab.style.borderCollapse='collapse';var hr=tab.insertRow(0);var c0=add_head_style(hr.insertCell(0),'30px');c0.innerHTML='Sr';for(var i=1;i<this.htab.rows[0].cells.length;i++){var hc=this.htab.rows[0].cells[i];var c=add_head_style(hr.insertCell(i),hc.style.width);c.innerHTML=hc.innerHTML;}
-for(var ri=0;ri<this.tab.rows.length;ri++){var row=this.tab.rows[ri];var dt_row=tab.insertRow(tab.rows.length);for(var ci=0;ci<row.cells.length;ci++){var c=add_cell_style(dt_row.insertCell(ci));c.innerHTML=row.cells[ci].innerHTML;}}
-return w.innerHTML;}
-/*
- *	lib/js/legacy/widgets/report_builder/calculator.js
- */
-_r.calc_dialog=null;_r.show_calc=function(tab,colnames,coltypes,add_idx){if(!add_idx)add_idx=0;if(!tab||!tab.rows.length){msgprint("No Data");return;}
-if(!_r.calc_dialog){var d=new Dialog(400,400,"Calculator")
-d.make_body([['Select','Column'],['Data','Sum'],['Data','Average'],['Data','Min'],['Data','Max']])
-d.widgets['Sum'].readonly='readonly';d.widgets['Average'].readonly='readonly';d.widgets['Min'].readonly='readonly';d.widgets['Max'].readonly='readonly';d.widgets['Column'].onchange=function(){d.set_calc();}
-d.set_calc=function(){var cn=sel_val(this.widgets['Column']);var cidx=0;var sum=0;var avg=0;var minv=null;var maxv=null;for(var i=0;i<this.colnames.length;i++){if(this.colnames[i]==cn){cidx=i+add_idx;break;}}
-for(var i=0;i<this.datatab.rows.length;i++){var c=this.datatab.rows[i].cells[cidx];var v=c.div?flt(c.div.innerHTML):flt(c.innerHTML);sum+=v;if(minv==null)minv=v;if(maxv==null)maxv=v;if(v>maxv)maxv=v;if(v<minv)minv=v;}
-d.widgets['Sum'].value=fmt_money(sum);d.widgets['Average'].value=fmt_money(sum/this.datatab.rows.length);d.widgets['Min'].value=fmt_money(minv);d.widgets['Max'].value=fmt_money(maxv);_r.calc_dialog=d;}
-d.onshow=function(){var cl=[];for(var i in _r.calc_dialog.colnames){if(in_list(['Currency','Int','Float'],_r.calc_dialog.coltypes[i]))
-cl.push(_r.calc_dialog.colnames[i]);}
-if(!cl.length){this.hide();alert("No Numeric Column");return;}
-var s=this.widgets['Column'];empty_select(s);add_sel_options(s,cl);if(s.inp)s.inp.value=cl[0];else s.value=cl[0];this.set_calc();}
-_r.calc_dialog=d;}
-_r.calc_dialog.datatab=tab;_r.calc_dialog.colnames=colnames;_r.calc_dialog.coltypes=coltypes;_r.calc_dialog.show();}
-/*
- *	lib/js/legacy/widgets/print_query.js
- */
-_p.PrintQuery=function(){this.args={};}
-_p.PrintQuery.prototype.show_dialog=function(args){this.args=args;var me=this;if(!this.dialog){var d=new Dialog(400,300,"Print");d.make_body([['Data','Max rows','Blank to print all rows'],['Data','Rows per page'],['Button','Go'],]);d.widgets['Go'].onclick=function(){d.hide();me.render(cint(d.widgets['Max rows'].value),cint(d.widgets['Rows per page'].value))}
-d.onshow=function(){this.widgets['Rows per page'].value='35';this.widgets['Max rows'].value='500';}
-this.dialog=d;}
-this.dialog.show();}
-_p.PrintQuery.prototype.render=function(max_rows,page_len){var me=this;var args=me.args;if(cint(max_rows)!=0)args.query+=' LIMIT 0,'+cint(max_rows);if(!args.query)return;var callback=function(r,rt){if(!r.values){return;}
-if(!page_len)page_len=r.values.length;if(r.colnames&&r.colnames.length)
-args.colnames=args.has_index?add_lists(['Sr'],r.colnames):r.colnames;if(r.colwidths&&r.colwidths.length)
-args.colwidths=args.has_index?add_lists(['25px'],r.colwidths):r.colwidths;if(r.coltypes)
-args.coltypes=args.has_index?add_lists(['Data'],r.coltypes):r.coltypes;if(args.coltypes){for(var i in args.coltypes)
-if(args.coltypes[i]=='Link')args.coltypes[i]='Data';}
-if(args.colwidths){var tw=0;for(var i=0;i<args.colwidths.length;i++)tw+=cint(args.colwidths[i]?args.colwidths[i]:100);for(var i=0;i<args.colwidths.length;i++)args.colwidths[i]=cint(cint(args.colwidths[i]?args.colwidths[i]:100)/tw*100)+'%';}
-var has_heading=args.colnames?1:0;if(!args.has_headings)has_heading=0;var tl=[]
-for(var st=0;st<r.values.length;st=st+page_len){tl.push(me.build_table(r,st,page_len,has_heading,args.rb))}
-var html='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">'
-+'<html><head>'
-+'<title>'+args.title+'</title>'
-+'<style>'+_p.def_print_style_body+_p.def_print_style_other+'</style>'
-+'</head><body>'
-+(r.header_html?r.header_html:'')
-+tl.join('\n<div style="page-break-after: always;"></div>\n')
-+(r.footer_html?r.footer_html:'')
-+'</body></html>';_p.preview(html);}
-var out_args=copy_dict(args);if(args.is_simple){out_args.simple_query=args.query;delete out_args.query;}
-if(args.filter_values)
-out_args.filter_values=args.filter_values;$c('webnotes.widgets.query_builder.runquery',out_args,callback);}
-_p.PrintQuery.prototype.build_table=function(r,start,page_len,has_heading,rb){var div=document.createElement('div');if(!r.page_template){var head=$a(div,'div',null,{fontSize:'20px',fontWeight:'bold',margin:'16px 0px',borderBottom:'1px solid #CCC',paddingBottom:'8px'});head.innerHTML=args.title;}
-var m=start+page_len;if(m>r.values.length)m=r.values.length
-var t=make_table(div,m+has_heading-start,r.values[0].length+args.has_index,'100%',null);t.className='simpletable';if(args.colwidths)
-$y(t,{tableLayout:'fixed'});if(has_heading){for(var i=0;i<args.colnames.length;i++){$td(t,0,i).innerHTML=args.colnames[i].bold();if(args.colwidths&&args.colwidths[i]){$w($td(t,0,i),args.colwidths[i]);}}}
-for(var ri=start;ri<m;ri++){if(args.has_index)
-$td(t,ri+has_heading-start,0).innerHTML=ri+1;for(var ci=0;ci<r.values[0].length;ci++){if(ri-start==0&&args.colwidths&&args.colwidths[i]){$w($td(t,0,i),args.colwidths[i]);}
-var c=$td(t,ri+has_heading-start,ci+args.has_index)
-c.div=$a(c,'div','',{whiteSpace:'normal'});$s(c.div,r.values[ri][ci],args.coltypes?args.coltypes[ci+args.has_index]:null);}}
-if(r.style){for(var i=0;i<r.style.length;i++){$yt(t,r.style[i][0],r.style[i][1],r.style[i][2]);}}
-if(rb&&rb.aftertableprint){rb.aftertableprint(t);}
-if(r.page_template)return repl(r.page_template,{table:div.innerHTML});else return div.innerHTML;}
\ No newline at end of file
diff --git a/public/js/app/stock_grid_report.js b/public/js/stock_grid_report.js
similarity index 100%
rename from public/js/app/stock_grid_report.js
rename to public/js/stock_grid_report.js
diff --git a/public/js/app/tree_grid.css b/public/js/tree_grid.css
similarity index 100%
rename from public/js/app/tree_grid.css
rename to public/js/tree_grid.css
diff --git a/public/rss.xml b/public/rss.xml
deleted file mode 100755
index efe083e..0000000
--- a/public/rss.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/usr/bin/python
-
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-import cgi, cgitb, os, sys
-cgitb.enable()
-
-# import libs
-sys.path.append('..')
-sys.path.append('../lib/py')
-
-import webnotes
-import webnotes.auth
-
-import conf
-sys.path.append(conf.modules_path)
-
-if __name__=='__main__':
-	# webnotes.http_request = webnotes.auth.HTTPRequest()
-	webnotes.connect()
-	from webnotes.cms import feed
-	try:
-		print 'Content-Type: text/xml'
-		print
-		xml = feed.generate()
-		print xml
-	except Exception, e:
-		print 'Content-Type: text/html'
-		print
-		import webnotes.utils
-		print webnotes.utils.getTraceback()
\ No newline at end of file
diff --git a/public/server.py b/public/server.py
deleted file mode 100755
index b95ac20..0000000
--- a/public/server.py
+++ /dev/null
@@ -1,81 +0,0 @@
-#!/usr/bin/env python
-
-# Copyright (c) 2012 Web Notes Technologies Pvt Ltd (http://erpnext.com)
-# 
-# MIT License (MIT)
-# 
-# Permission is hereby granted, free of charge, to any person obtaining a 
-# copy of this software and associated documentation files (the "Software"), 
-# to deal in the Software without restriction, including without limitation 
-# the rights to use, copy, modify, merge, publish, distribute, sublicense, 
-# and/or sell copies of the Software, and to permit persons to whom the 
-# Software is furnished to do so, subject to the following conditions:
-# 
-# The above copyright notice and this permission notice shall be included in 
-# all copies or substantial portions of the Software.
-# 
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, 
-# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 
-# PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 
-# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF 
-# CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE 
-# OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-# 
-
-
-from __future__ import unicode_literals
-import cgi, cgitb, os, sys
-cgitb.enable()
-
-# import libs
-sys.path.append('..')
-
-import conf
-
-sys.path.append('../lib/py')
-sys.path.append(conf.modules_path)
-
-import webnotes
-import webnotes.handler
-import webnotes.auth
-
-from webnotes.utils import cstr
-
-def init():
-	webnotes.handler.get_cgi_fields()
-	
-	# init request
-	try:
-		webnotes.http_request = webnotes.auth.HTTPRequest()
-		return True
-	except webnotes.AuthenticationError, e:
-		return True
-	#except webnotes.UnknownDomainError, e:
-	#	print "Location: " + (conf.redirect_404)
-	except webnotes.SessionStopped, e:
-		if 'cmd' in webnotes.form_dict:
-			webnotes.handler.print_json()
-		else:
-			print "Content-Type: text/html"
-			print
-			print """<html>
-				<body style="background-color: #EEE;">
-					<h3 style="width: 900px; background-color: #FFF; border: 2px solid #AAA; padding: 20px; font-family: Arial; margin: 20px auto">
-						Updating.
-						We will be back in a few moments...
-					</h3>
-				</body>
-				</html>"""
-
-def respond():
-	import webnotes
-	if 'cmd' in webnotes.form_dict:
-		webnotes.handler.handle()
-	else:
-		print "Content-Type: text/html"
-		print
-		print "<html><head><script>window.location.href='index.html';</script></head></html>"
-
-if __name__=="__main__":
-	if init():
-		respond()
diff --git a/public/sitemap.xml b/public/sitemap.xml
deleted file mode 100755
index 09ce39a..0000000
--- a/public/sitemap.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/python
-
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-import cgi, cgitb, os, sys
-cgitb.enable()
-
-# import libs
-sys.path.append('..')
-sys.path.append('../lib/py')
-
-import webnotes
-import webnotes.auth
-
-if __name__=='__main__':
-	webnotes.http_request = webnotes.auth.HTTPRequest()
-	domain = os.environ.get('HTTP_HOST')
-	protocol = os.environ.get('HTTPS') and 'https://' or 'http://'
-	from webnotes.cms import sitemap
-	print 'Content-Type: text/xml'
-	print
-	print sitemap.generate(protocol + domain + '/')
\ No newline at end of file
diff --git a/public/unsupported.html b/public/unsupported.html
deleted file mode 100644
index 95967f6..0000000
--- a/public/unsupported.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<html>
-<head>
-	<title>Online ERP, Open Source ERP, ERPNext - Uprade your browser</title>
-</head>
-<body style="background-color: #eee">
-	<div style="width: 900px; margin: 20px auto; padding: 20px;
-	background-color: #fff; border: 2px solid #aaa; font-family: Arial">
-	<p>ERPNext is a complete easy to use web based ERP system that includes accounting
-		inventory, sales, purchase, CRM, projects and a lot more.
-	</p>
-	<h3>Upgrade Your Browser</h3>
-	<p><i>ERPNext requires a modern web browser to function correctly</i></p>
-	<p>Supported browsers are:
-		<ul>
-		<li><a href="http://mozilla.com/firefox">Mozilla Firfox 4+</a>,
-		<li><a href="http://google.com/chrome">Google Chorme 14+</a>,
-		<li><a href="http://apple.com/safari">Apple Safari 5+</a>,
-		<li><a href="http://ie.microsoft.com">Microsoft Internet Explorer 9+</a>,
-		<li><a href="http://www.opera.com/">Opera</a>
-		</ul>
-	</p>
-</body>
\ No newline at end of file
diff --git a/public/web.py b/public/web.py
deleted file mode 100755
index 119636b..0000000
--- a/public/web.py
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/usr/bin/env python
-
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-"""
-	return a dynamic page from website templates
-
-	all html pages related to website are generated here
-"""
-from __future__ import unicode_literals
-import cgi, cgitb, os, sys
-cgitb.enable()
-
-# import libs
-sys.path.append('..')
-import conf
-sys.path.append('../lib/py')
-sys.path.append(conf.modules_path)
-
-def init():
-	import webnotes.handler
-	webnotes.handler.get_cgi_fields()
-	webnotes.connect()
-
-def respond():
-	import webnotes
-	import website.utils
-	return website.utils.render(webnotes.form_dict.get('page'))
-
-if __name__=="__main__":
-	init()
-	respond()
\ No newline at end of file
diff --git a/erpnext/sandbox/__init__.py b/sandbox/__init__.py
similarity index 100%
rename from erpnext/sandbox/__init__.py
rename to sandbox/__init__.py
diff --git a/erpnext/sandbox/test_leave.py b/sandbox/test_leave.py
similarity index 100%
rename from erpnext/sandbox/test_leave.py
rename to sandbox/test_leave.py
diff --git a/erpnext/sandbox/test_stock_entry.py b/sandbox/test_stock_entry.py
similarity index 100%
rename from erpnext/sandbox/test_stock_entry.py
rename to sandbox/test_stock_entry.py
diff --git a/erpnext/sandbox/test_stock_reco.py b/sandbox/test_stock_reco.py
similarity index 100%
rename from erpnext/sandbox/test_stock_reco.py
rename to sandbox/test_stock_reco.py
diff --git a/erpnext/sandbox/testdata/__init__.py b/sandbox/testdata/__init__.py
similarity index 100%
rename from erpnext/sandbox/testdata/__init__.py
rename to sandbox/testdata/__init__.py
diff --git a/erpnext/sandbox/testdata/leaves.py b/sandbox/testdata/leaves.py
similarity index 100%
rename from erpnext/sandbox/testdata/leaves.py
rename to sandbox/testdata/leaves.py
diff --git a/erpnext/sandbox/testdata/masters.py b/sandbox/testdata/masters.py
similarity index 100%
rename from erpnext/sandbox/testdata/masters.py
rename to sandbox/testdata/masters.py
diff --git a/erpnext/sandbox/testdata/sle_data.py b/sandbox/testdata/sle_data.py
similarity index 100%
rename from erpnext/sandbox/testdata/sle_data.py
rename to sandbox/testdata/sle_data.py
diff --git a/erpnext/sandbox/testdata/stock_entry.py b/sandbox/testdata/stock_entry.py
similarity index 100%
rename from erpnext/sandbox/testdata/stock_entry.py
rename to sandbox/testdata/stock_entry.py
diff --git a/erpnext/sandbox/testdata/stock_reco.py b/sandbox/testdata/stock_reco.py
similarity index 100%
rename from erpnext/sandbox/testdata/stock_reco.py
rename to sandbox/testdata/stock_reco.py
diff --git a/erpnext/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt b/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
similarity index 100%
rename from erpnext/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
rename to selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
diff --git a/erpnext/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt b/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
similarity index 100%
rename from erpnext/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
rename to selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
diff --git a/erpnext/selling/DocType Mapper/Lead-Opportunity/Lead-Opportunity.txt b/selling/DocType Mapper/Lead-Opportunity/Lead-Opportunity.txt
similarity index 100%
rename from erpnext/selling/DocType Mapper/Lead-Opportunity/Lead-Opportunity.txt
rename to selling/DocType Mapper/Lead-Opportunity/Lead-Opportunity.txt
diff --git a/erpnext/selling/DocType Mapper/Opportunity-Quotation/Opportunity-Quotation.txt b/selling/DocType Mapper/Opportunity-Quotation/Opportunity-Quotation.txt
similarity index 100%
rename from erpnext/selling/DocType Mapper/Opportunity-Quotation/Opportunity-Quotation.txt
rename to selling/DocType Mapper/Opportunity-Quotation/Opportunity-Quotation.txt
diff --git a/erpnext/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt b/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
similarity index 100%
rename from erpnext/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
rename to selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
diff --git a/erpnext/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt b/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
similarity index 100%
rename from erpnext/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
rename to selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
diff --git a/erpnext/selling/Print Format/Quotation Classic/Quotation Classic.txt b/selling/Print Format/Quotation Classic/Quotation Classic.txt
similarity index 100%
rename from erpnext/selling/Print Format/Quotation Classic/Quotation Classic.txt
rename to selling/Print Format/Quotation Classic/Quotation Classic.txt
diff --git a/erpnext/selling/Print Format/Quotation Modern/Quotation Modern.txt b/selling/Print Format/Quotation Modern/Quotation Modern.txt
similarity index 100%
rename from erpnext/selling/Print Format/Quotation Modern/Quotation Modern.txt
rename to selling/Print Format/Quotation Modern/Quotation Modern.txt
diff --git a/erpnext/selling/Print Format/Quotation Spartan/Quotation Spartan.txt b/selling/Print Format/Quotation Spartan/Quotation Spartan.txt
similarity index 100%
rename from erpnext/selling/Print Format/Quotation Spartan/Quotation Spartan.txt
rename to selling/Print Format/Quotation Spartan/Quotation Spartan.txt
diff --git a/erpnext/selling/Print Format/Sales Order Classic/Sales Order Classic.txt b/selling/Print Format/Sales Order Classic/Sales Order Classic.txt
similarity index 100%
rename from erpnext/selling/Print Format/Sales Order Classic/Sales Order Classic.txt
rename to selling/Print Format/Sales Order Classic/Sales Order Classic.txt
diff --git a/erpnext/selling/Print Format/Sales Order Modern/Sales Order Modern.txt b/selling/Print Format/Sales Order Modern/Sales Order Modern.txt
similarity index 100%
rename from erpnext/selling/Print Format/Sales Order Modern/Sales Order Modern.txt
rename to selling/Print Format/Sales Order Modern/Sales Order Modern.txt
diff --git a/erpnext/selling/Print Format/Sales Order Spartan/Sales Order Spartan.txt b/selling/Print Format/Sales Order Spartan/Sales Order Spartan.txt
similarity index 100%
rename from erpnext/selling/Print Format/Sales Order Spartan/Sales Order Spartan.txt
rename to selling/Print Format/Sales Order Spartan/Sales Order Spartan.txt
diff --git a/erpnext/selling/__init__.py b/selling/__init__.py
similarity index 100%
rename from erpnext/selling/__init__.py
rename to selling/__init__.py
diff --git a/erpnext/selling/doctype/__init__.py b/selling/doctype/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/__init__.py
rename to selling/doctype/__init__.py
diff --git a/erpnext/selling/doctype/campaign/__init__.py b/selling/doctype/campaign/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/campaign/__init__.py
rename to selling/doctype/campaign/__init__.py
diff --git a/erpnext/selling/doctype/campaign/campaign.js b/selling/doctype/campaign/campaign.js
similarity index 100%
rename from erpnext/selling/doctype/campaign/campaign.js
rename to selling/doctype/campaign/campaign.js
diff --git a/erpnext/selling/doctype/campaign/campaign.txt b/selling/doctype/campaign/campaign.txt
similarity index 100%
rename from erpnext/selling/doctype/campaign/campaign.txt
rename to selling/doctype/campaign/campaign.txt
diff --git a/erpnext/selling/doctype/customer/__init__.py b/selling/doctype/customer/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/customer/__init__.py
rename to selling/doctype/customer/__init__.py
diff --git a/erpnext/selling/doctype/customer/customer.js b/selling/doctype/customer/customer.js
similarity index 100%
rename from erpnext/selling/doctype/customer/customer.js
rename to selling/doctype/customer/customer.js
diff --git a/erpnext/selling/doctype/customer/customer.py b/selling/doctype/customer/customer.py
similarity index 100%
rename from erpnext/selling/doctype/customer/customer.py
rename to selling/doctype/customer/customer.py
diff --git a/erpnext/selling/doctype/customer/customer.txt b/selling/doctype/customer/customer.txt
similarity index 100%
rename from erpnext/selling/doctype/customer/customer.txt
rename to selling/doctype/customer/customer.txt
diff --git a/erpnext/selling/doctype/customer/customer_list.js b/selling/doctype/customer/customer_list.js
similarity index 100%
rename from erpnext/selling/doctype/customer/customer_list.js
rename to selling/doctype/customer/customer_list.js
diff --git a/erpnext/selling/doctype/industry_type/__init__.py b/selling/doctype/industry_type/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/industry_type/__init__.py
rename to selling/doctype/industry_type/__init__.py
diff --git a/erpnext/selling/doctype/industry_type/industry_type.js b/selling/doctype/industry_type/industry_type.js
similarity index 100%
rename from erpnext/selling/doctype/industry_type/industry_type.js
rename to selling/doctype/industry_type/industry_type.js
diff --git a/erpnext/selling/doctype/industry_type/industry_type.txt b/selling/doctype/industry_type/industry_type.txt
similarity index 100%
rename from erpnext/selling/doctype/industry_type/industry_type.txt
rename to selling/doctype/industry_type/industry_type.txt
diff --git a/erpnext/selling/doctype/installation_note/__init__.py b/selling/doctype/installation_note/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/installation_note/__init__.py
rename to selling/doctype/installation_note/__init__.py
diff --git a/erpnext/selling/doctype/installation_note/installation_note.js b/selling/doctype/installation_note/installation_note.js
similarity index 100%
rename from erpnext/selling/doctype/installation_note/installation_note.js
rename to selling/doctype/installation_note/installation_note.js
diff --git a/erpnext/selling/doctype/installation_note/installation_note.py b/selling/doctype/installation_note/installation_note.py
similarity index 100%
rename from erpnext/selling/doctype/installation_note/installation_note.py
rename to selling/doctype/installation_note/installation_note.py
diff --git a/erpnext/selling/doctype/installation_note/installation_note.txt b/selling/doctype/installation_note/installation_note.txt
similarity index 100%
rename from erpnext/selling/doctype/installation_note/installation_note.txt
rename to selling/doctype/installation_note/installation_note.txt
diff --git a/erpnext/selling/doctype/installation_note_item/__init__.py b/selling/doctype/installation_note_item/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/installation_note_item/__init__.py
rename to selling/doctype/installation_note_item/__init__.py
diff --git a/erpnext/selling/doctype/installation_note_item/installation_note_item.txt b/selling/doctype/installation_note_item/installation_note_item.txt
similarity index 100%
rename from erpnext/selling/doctype/installation_note_item/installation_note_item.txt
rename to selling/doctype/installation_note_item/installation_note_item.txt
diff --git a/erpnext/selling/doctype/lead/__init__.py b/selling/doctype/lead/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/lead/__init__.py
rename to selling/doctype/lead/__init__.py
diff --git a/erpnext/selling/doctype/lead/lead.js b/selling/doctype/lead/lead.js
similarity index 100%
rename from erpnext/selling/doctype/lead/lead.js
rename to selling/doctype/lead/lead.js
diff --git a/erpnext/selling/doctype/lead/lead.py b/selling/doctype/lead/lead.py
similarity index 100%
rename from erpnext/selling/doctype/lead/lead.py
rename to selling/doctype/lead/lead.py
diff --git a/erpnext/selling/doctype/lead/lead.txt b/selling/doctype/lead/lead.txt
similarity index 100%
rename from erpnext/selling/doctype/lead/lead.txt
rename to selling/doctype/lead/lead.txt
diff --git a/erpnext/selling/doctype/lead/lead_list.js b/selling/doctype/lead/lead_list.js
similarity index 100%
rename from erpnext/selling/doctype/lead/lead_list.js
rename to selling/doctype/lead/lead_list.js
diff --git a/erpnext/selling/doctype/opportunity/__init__.py b/selling/doctype/opportunity/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/opportunity/__init__.py
rename to selling/doctype/opportunity/__init__.py
diff --git a/erpnext/selling/doctype/opportunity/opportunity.js b/selling/doctype/opportunity/opportunity.js
similarity index 100%
rename from erpnext/selling/doctype/opportunity/opportunity.js
rename to selling/doctype/opportunity/opportunity.js
diff --git a/erpnext/selling/doctype/opportunity/opportunity.py b/selling/doctype/opportunity/opportunity.py
similarity index 100%
rename from erpnext/selling/doctype/opportunity/opportunity.py
rename to selling/doctype/opportunity/opportunity.py
diff --git a/erpnext/selling/doctype/opportunity/opportunity.txt b/selling/doctype/opportunity/opportunity.txt
similarity index 100%
rename from erpnext/selling/doctype/opportunity/opportunity.txt
rename to selling/doctype/opportunity/opportunity.txt
diff --git a/erpnext/selling/doctype/opportunity/opportunity_list.js b/selling/doctype/opportunity/opportunity_list.js
similarity index 100%
rename from erpnext/selling/doctype/opportunity/opportunity_list.js
rename to selling/doctype/opportunity/opportunity_list.js
diff --git a/erpnext/selling/doctype/opportunity_item/__init__.py b/selling/doctype/opportunity_item/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/opportunity_item/__init__.py
rename to selling/doctype/opportunity_item/__init__.py
diff --git a/erpnext/selling/doctype/opportunity_item/opportunity_item.txt b/selling/doctype/opportunity_item/opportunity_item.txt
similarity index 100%
rename from erpnext/selling/doctype/opportunity_item/opportunity_item.txt
rename to selling/doctype/opportunity_item/opportunity_item.txt
diff --git a/erpnext/selling/doctype/plot_control/__init__.py b/selling/doctype/plot_control/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/plot_control/__init__.py
rename to selling/doctype/plot_control/__init__.py
diff --git a/erpnext/selling/doctype/plot_control/plot_control.py b/selling/doctype/plot_control/plot_control.py
similarity index 100%
rename from erpnext/selling/doctype/plot_control/plot_control.py
rename to selling/doctype/plot_control/plot_control.py
diff --git a/erpnext/selling/doctype/plot_control/plot_control.txt b/selling/doctype/plot_control/plot_control.txt
similarity index 100%
rename from erpnext/selling/doctype/plot_control/plot_control.txt
rename to selling/doctype/plot_control/plot_control.txt
diff --git a/erpnext/selling/doctype/quotation/__init__.py b/selling/doctype/quotation/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/quotation/__init__.py
rename to selling/doctype/quotation/__init__.py
diff --git a/erpnext/selling/doctype/quotation/quotation.js b/selling/doctype/quotation/quotation.js
similarity index 100%
rename from erpnext/selling/doctype/quotation/quotation.js
rename to selling/doctype/quotation/quotation.js
diff --git a/erpnext/selling/doctype/quotation/quotation.py b/selling/doctype/quotation/quotation.py
similarity index 100%
rename from erpnext/selling/doctype/quotation/quotation.py
rename to selling/doctype/quotation/quotation.py
diff --git a/erpnext/selling/doctype/quotation/quotation.txt b/selling/doctype/quotation/quotation.txt
similarity index 100%
rename from erpnext/selling/doctype/quotation/quotation.txt
rename to selling/doctype/quotation/quotation.txt
diff --git a/erpnext/selling/doctype/quotation/quotation_list.js b/selling/doctype/quotation/quotation_list.js
similarity index 100%
rename from erpnext/selling/doctype/quotation/quotation_list.js
rename to selling/doctype/quotation/quotation_list.js
diff --git a/erpnext/selling/doctype/quotation_item/__init__.py b/selling/doctype/quotation_item/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/quotation_item/__init__.py
rename to selling/doctype/quotation_item/__init__.py
diff --git a/erpnext/selling/doctype/quotation_item/quotation_item.txt b/selling/doctype/quotation_item/quotation_item.txt
similarity index 100%
rename from erpnext/selling/doctype/quotation_item/quotation_item.txt
rename to selling/doctype/quotation_item/quotation_item.txt
diff --git a/erpnext/selling/doctype/sales_and_purchase_return_item/__init__.py b/selling/doctype/sales_and_purchase_return_item/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/sales_and_purchase_return_item/__init__.py
rename to selling/doctype/sales_and_purchase_return_item/__init__.py
diff --git a/erpnext/selling/doctype/sales_and_purchase_return_item/sales_and_purchase_return_item.txt b/selling/doctype/sales_and_purchase_return_item/sales_and_purchase_return_item.txt
similarity index 100%
rename from erpnext/selling/doctype/sales_and_purchase_return_item/sales_and_purchase_return_item.txt
rename to selling/doctype/sales_and_purchase_return_item/sales_and_purchase_return_item.txt
diff --git a/erpnext/selling/doctype/sales_common/__init__.py b/selling/doctype/sales_common/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/sales_common/__init__.py
rename to selling/doctype/sales_common/__init__.py
diff --git a/erpnext/selling/doctype/sales_common/sales_common.js b/selling/doctype/sales_common/sales_common.js
similarity index 100%
rename from erpnext/selling/doctype/sales_common/sales_common.js
rename to selling/doctype/sales_common/sales_common.js
diff --git a/erpnext/selling/doctype/sales_common/sales_common.py b/selling/doctype/sales_common/sales_common.py
similarity index 100%
rename from erpnext/selling/doctype/sales_common/sales_common.py
rename to selling/doctype/sales_common/sales_common.py
diff --git a/erpnext/selling/doctype/sales_common/sales_common.txt b/selling/doctype/sales_common/sales_common.txt
similarity index 100%
rename from erpnext/selling/doctype/sales_common/sales_common.txt
rename to selling/doctype/sales_common/sales_common.txt
diff --git a/erpnext/selling/doctype/sales_order/__init__.py b/selling/doctype/sales_order/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/sales_order/__init__.py
rename to selling/doctype/sales_order/__init__.py
diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/selling/doctype/sales_order/sales_order.js
similarity index 100%
rename from erpnext/selling/doctype/sales_order/sales_order.js
rename to selling/doctype/sales_order/sales_order.js
diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/selling/doctype/sales_order/sales_order.py
similarity index 100%
rename from erpnext/selling/doctype/sales_order/sales_order.py
rename to selling/doctype/sales_order/sales_order.py
diff --git a/erpnext/selling/doctype/sales_order/sales_order.txt b/selling/doctype/sales_order/sales_order.txt
similarity index 100%
rename from erpnext/selling/doctype/sales_order/sales_order.txt
rename to selling/doctype/sales_order/sales_order.txt
diff --git a/erpnext/selling/doctype/sales_order/sales_order_list.js b/selling/doctype/sales_order/sales_order_list.js
similarity index 100%
rename from erpnext/selling/doctype/sales_order/sales_order_list.js
rename to selling/doctype/sales_order/sales_order_list.js
diff --git a/erpnext/selling/doctype/sales_order_item/__init__.py b/selling/doctype/sales_order_item/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/sales_order_item/__init__.py
rename to selling/doctype/sales_order_item/__init__.py
diff --git a/erpnext/selling/doctype/sales_order_item/sales_order_item.txt b/selling/doctype/sales_order_item/sales_order_item.txt
similarity index 100%
rename from erpnext/selling/doctype/sales_order_item/sales_order_item.txt
rename to selling/doctype/sales_order_item/sales_order_item.txt
diff --git a/erpnext/selling/doctype/sales_team/__init__.py b/selling/doctype/sales_team/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/sales_team/__init__.py
rename to selling/doctype/sales_team/__init__.py
diff --git a/erpnext/selling/doctype/sales_team/sales_team.txt b/selling/doctype/sales_team/sales_team.txt
similarity index 100%
rename from erpnext/selling/doctype/sales_team/sales_team.txt
rename to selling/doctype/sales_team/sales_team.txt
diff --git a/erpnext/selling/doctype/shipping_address/__init__.py b/selling/doctype/shipping_address/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/shipping_address/__init__.py
rename to selling/doctype/shipping_address/__init__.py
diff --git a/erpnext/selling/doctype/shipping_address/shipping_address.js b/selling/doctype/shipping_address/shipping_address.js
similarity index 100%
rename from erpnext/selling/doctype/shipping_address/shipping_address.js
rename to selling/doctype/shipping_address/shipping_address.js
diff --git a/erpnext/selling/doctype/shipping_address/shipping_address.py b/selling/doctype/shipping_address/shipping_address.py
similarity index 100%
rename from erpnext/selling/doctype/shipping_address/shipping_address.py
rename to selling/doctype/shipping_address/shipping_address.py
diff --git a/erpnext/selling/doctype/shipping_address/shipping_address.txt b/selling/doctype/shipping_address/shipping_address.txt
similarity index 100%
rename from erpnext/selling/doctype/shipping_address/shipping_address.txt
rename to selling/doctype/shipping_address/shipping_address.txt
diff --git a/erpnext/selling/doctype/sms_center/__init__.py b/selling/doctype/sms_center/__init__.py
similarity index 100%
rename from erpnext/selling/doctype/sms_center/__init__.py
rename to selling/doctype/sms_center/__init__.py
diff --git a/erpnext/selling/doctype/sms_center/sms_center.py b/selling/doctype/sms_center/sms_center.py
similarity index 100%
rename from erpnext/selling/doctype/sms_center/sms_center.py
rename to selling/doctype/sms_center/sms_center.py
diff --git a/erpnext/selling/doctype/sms_center/sms_center.txt b/selling/doctype/sms_center/sms_center.txt
similarity index 100%
rename from erpnext/selling/doctype/sms_center/sms_center.txt
rename to selling/doctype/sms_center/sms_center.txt
diff --git a/erpnext/selling/page/__init__.py b/selling/page/__init__.py
similarity index 100%
rename from erpnext/selling/page/__init__.py
rename to selling/page/__init__.py
diff --git a/erpnext/selling/page/sales_analytics/__init__.py b/selling/page/sales_analytics/__init__.py
similarity index 100%
rename from erpnext/selling/page/sales_analytics/__init__.py
rename to selling/page/sales_analytics/__init__.py
diff --git a/erpnext/selling/page/sales_analytics/sales_analytics.js b/selling/page/sales_analytics/sales_analytics.js
similarity index 100%
rename from erpnext/selling/page/sales_analytics/sales_analytics.js
rename to selling/page/sales_analytics/sales_analytics.js
diff --git a/erpnext/selling/page/sales_analytics/sales_analytics.txt b/selling/page/sales_analytics/sales_analytics.txt
similarity index 100%
rename from erpnext/selling/page/sales_analytics/sales_analytics.txt
rename to selling/page/sales_analytics/sales_analytics.txt
diff --git a/erpnext/selling/page/sales_browser/__init__.py b/selling/page/sales_browser/__init__.py
similarity index 100%
rename from erpnext/selling/page/sales_browser/__init__.py
rename to selling/page/sales_browser/__init__.py
diff --git a/erpnext/selling/page/sales_browser/sales_browser.css b/selling/page/sales_browser/sales_browser.css
similarity index 100%
rename from erpnext/selling/page/sales_browser/sales_browser.css
rename to selling/page/sales_browser/sales_browser.css
diff --git a/erpnext/selling/page/sales_browser/sales_browser.html b/selling/page/sales_browser/sales_browser.html
similarity index 100%
rename from erpnext/selling/page/sales_browser/sales_browser.html
rename to selling/page/sales_browser/sales_browser.html
diff --git a/erpnext/selling/page/sales_browser/sales_browser.js b/selling/page/sales_browser/sales_browser.js
similarity index 100%
rename from erpnext/selling/page/sales_browser/sales_browser.js
rename to selling/page/sales_browser/sales_browser.js
diff --git a/erpnext/selling/page/sales_browser/sales_browser.py b/selling/page/sales_browser/sales_browser.py
similarity index 100%
rename from erpnext/selling/page/sales_browser/sales_browser.py
rename to selling/page/sales_browser/sales_browser.py
diff --git a/erpnext/selling/page/sales_browser/sales_browser.txt b/selling/page/sales_browser/sales_browser.txt
similarity index 100%
rename from erpnext/selling/page/sales_browser/sales_browser.txt
rename to selling/page/sales_browser/sales_browser.txt
diff --git a/erpnext/selling/page/selling_home/__init__.py b/selling/page/selling_home/__init__.py
similarity index 100%
rename from erpnext/selling/page/selling_home/__init__.py
rename to selling/page/selling_home/__init__.py
diff --git a/erpnext/selling/page/selling_home/selling_home.html b/selling/page/selling_home/selling_home.html
similarity index 100%
rename from erpnext/selling/page/selling_home/selling_home.html
rename to selling/page/selling_home/selling_home.html
diff --git a/erpnext/selling/page/selling_home/selling_home.js b/selling/page/selling_home/selling_home.js
similarity index 100%
rename from erpnext/selling/page/selling_home/selling_home.js
rename to selling/page/selling_home/selling_home.js
diff --git a/erpnext/selling/page/selling_home/selling_home.txt b/selling/page/selling_home/selling_home.txt
similarity index 100%
rename from erpnext/selling/page/selling_home/selling_home.txt
rename to selling/page/selling_home/selling_home.txt
diff --git a/erpnext/selling/search_criteria/__init__.py b/selling/search_criteria/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/__init__.py
rename to selling/search_criteria/__init__.py
diff --git a/erpnext/selling/search_criteria/customer_address_contact/__init__.py b/selling/search_criteria/customer_address_contact/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/customer_address_contact/__init__.py
rename to selling/search_criteria/customer_address_contact/__init__.py
diff --git a/erpnext/selling/search_criteria/customer_address_contact/customer_address_contact.py b/selling/search_criteria/customer_address_contact/customer_address_contact.py
similarity index 100%
rename from erpnext/selling/search_criteria/customer_address_contact/customer_address_contact.py
rename to selling/search_criteria/customer_address_contact/customer_address_contact.py
diff --git a/erpnext/selling/search_criteria/customer_address_contact/customer_address_contact.sql b/selling/search_criteria/customer_address_contact/customer_address_contact.sql
similarity index 100%
rename from erpnext/selling/search_criteria/customer_address_contact/customer_address_contact.sql
rename to selling/search_criteria/customer_address_contact/customer_address_contact.sql
diff --git a/erpnext/selling/search_criteria/customer_address_contact/customer_address_contact.txt b/selling/search_criteria/customer_address_contact/customer_address_contact.txt
similarity index 100%
rename from erpnext/selling/search_criteria/customer_address_contact/customer_address_contact.txt
rename to selling/search_criteria/customer_address_contact/customer_address_contact.txt
diff --git a/erpnext/selling/search_criteria/delivered_items_to_be_install/__init__.py b/selling/search_criteria/delivered_items_to_be_install/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/delivered_items_to_be_install/__init__.py
rename to selling/search_criteria/delivered_items_to_be_install/__init__.py
diff --git a/erpnext/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.js b/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.js
similarity index 100%
rename from erpnext/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.js
rename to selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.js
diff --git a/erpnext/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt b/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
similarity index 100%
rename from erpnext/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
rename to selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
diff --git a/erpnext/selling/search_criteria/delivery_note_itemwise_pending_to_bill/__init__.py b/selling/search_criteria/delivery_note_itemwise_pending_to_bill/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/delivery_note_itemwise_pending_to_bill/__init__.py
rename to selling/search_criteria/delivery_note_itemwise_pending_to_bill/__init__.py
diff --git a/erpnext/selling/search_criteria/delivery_note_itemwise_pending_to_bill/delivery_note_itemwise_pending_to_bill.txt b/selling/search_criteria/delivery_note_itemwise_pending_to_bill/delivery_note_itemwise_pending_to_bill.txt
similarity index 100%
rename from erpnext/selling/search_criteria/delivery_note_itemwise_pending_to_bill/delivery_note_itemwise_pending_to_bill.txt
rename to selling/search_criteria/delivery_note_itemwise_pending_to_bill/delivery_note_itemwise_pending_to_bill.txt
diff --git a/erpnext/selling/search_criteria/draft_sales_orders/__init__.py b/selling/search_criteria/draft_sales_orders/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/draft_sales_orders/__init__.py
rename to selling/search_criteria/draft_sales_orders/__init__.py
diff --git a/erpnext/selling/search_criteria/draft_sales_orders/draft_sales_orders.js b/selling/search_criteria/draft_sales_orders/draft_sales_orders.js
similarity index 100%
rename from erpnext/selling/search_criteria/draft_sales_orders/draft_sales_orders.js
rename to selling/search_criteria/draft_sales_orders/draft_sales_orders.js
diff --git a/erpnext/selling/search_criteria/draft_sales_orders/draft_sales_orders.txt b/selling/search_criteria/draft_sales_orders/draft_sales_orders.txt
similarity index 100%
rename from erpnext/selling/search_criteria/draft_sales_orders/draft_sales_orders.txt
rename to selling/search_criteria/draft_sales_orders/draft_sales_orders.txt
diff --git a/erpnext/selling/search_criteria/follow_up_report/__init__.py b/selling/search_criteria/follow_up_report/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/follow_up_report/__init__.py
rename to selling/search_criteria/follow_up_report/__init__.py
diff --git a/erpnext/selling/search_criteria/follow_up_report/follow_up_report.js b/selling/search_criteria/follow_up_report/follow_up_report.js
similarity index 100%
rename from erpnext/selling/search_criteria/follow_up_report/follow_up_report.js
rename to selling/search_criteria/follow_up_report/follow_up_report.js
diff --git a/erpnext/selling/search_criteria/follow_up_report/follow_up_report.py b/selling/search_criteria/follow_up_report/follow_up_report.py
similarity index 100%
rename from erpnext/selling/search_criteria/follow_up_report/follow_up_report.py
rename to selling/search_criteria/follow_up_report/follow_up_report.py
diff --git a/erpnext/selling/search_criteria/follow_up_report/follow_up_report.txt b/selling/search_criteria/follow_up_report/follow_up_report.txt
similarity index 100%
rename from erpnext/selling/search_criteria/follow_up_report/follow_up_report.txt
rename to selling/search_criteria/follow_up_report/follow_up_report.txt
diff --git a/erpnext/selling/search_criteria/gross_profit/__init__.py b/selling/search_criteria/gross_profit/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/gross_profit/__init__.py
rename to selling/search_criteria/gross_profit/__init__.py
diff --git a/erpnext/selling/search_criteria/gross_profit/gross_profit.js b/selling/search_criteria/gross_profit/gross_profit.js
similarity index 100%
rename from erpnext/selling/search_criteria/gross_profit/gross_profit.js
rename to selling/search_criteria/gross_profit/gross_profit.js
diff --git a/erpnext/selling/search_criteria/gross_profit/gross_profit.py b/selling/search_criteria/gross_profit/gross_profit.py
similarity index 100%
rename from erpnext/selling/search_criteria/gross_profit/gross_profit.py
rename to selling/search_criteria/gross_profit/gross_profit.py
diff --git a/erpnext/selling/search_criteria/gross_profit/gross_profit.txt b/selling/search_criteria/gross_profit/gross_profit.txt
similarity index 100%
rename from erpnext/selling/search_criteria/gross_profit/gross_profit.txt
rename to selling/search_criteria/gross_profit/gross_profit.txt
diff --git a/erpnext/selling/search_criteria/itemwise_delivery_details/__init__.py b/selling/search_criteria/itemwise_delivery_details/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/itemwise_delivery_details/__init__.py
rename to selling/search_criteria/itemwise_delivery_details/__init__.py
diff --git a/erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.js b/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.js
similarity index 100%
rename from erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.js
rename to selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.js
diff --git a/erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.py b/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.py
similarity index 100%
rename from erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.py
rename to selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.py
diff --git a/erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt b/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
similarity index 100%
rename from erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
rename to selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
diff --git a/erpnext/selling/search_criteria/itemwise_sales_details/__init__.py b/selling/search_criteria/itemwise_sales_details/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/itemwise_sales_details/__init__.py
rename to selling/search_criteria/itemwise_sales_details/__init__.py
diff --git a/erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.js b/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.js
similarity index 100%
rename from erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.js
rename to selling/search_criteria/itemwise_sales_details/itemwise_sales_details.js
diff --git a/erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.py b/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.py
similarity index 100%
rename from erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.py
rename to selling/search_criteria/itemwise_sales_details/itemwise_sales_details.py
diff --git a/erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt b/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
similarity index 100%
rename from erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
rename to selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
diff --git a/erpnext/selling/search_criteria/lead_to_follow_up/__init__.py b/selling/search_criteria/lead_to_follow_up/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/lead_to_follow_up/__init__.py
rename to selling/search_criteria/lead_to_follow_up/__init__.py
diff --git a/erpnext/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.js b/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.js
similarity index 100%
rename from erpnext/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.js
rename to selling/search_criteria/lead_to_follow_up/lead_to_follow_up.js
diff --git a/erpnext/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.txt b/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
similarity index 100%
rename from erpnext/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
rename to selling/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
diff --git a/erpnext/selling/search_criteria/lead_to_follow_up/sales_order_overdue.js b/selling/search_criteria/lead_to_follow_up/sales_order_overdue.js
similarity index 100%
rename from erpnext/selling/search_criteria/lead_to_follow_up/sales_order_overdue.js
rename to selling/search_criteria/lead_to_follow_up/sales_order_overdue.js
diff --git a/erpnext/selling/search_criteria/opportunity_to_follow_up/__init__.py b/selling/search_criteria/opportunity_to_follow_up/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/opportunity_to_follow_up/__init__.py
rename to selling/search_criteria/opportunity_to_follow_up/__init__.py
diff --git a/erpnext/selling/search_criteria/opportunity_to_follow_up/opportunity_to_follow_up.txt b/selling/search_criteria/opportunity_to_follow_up/opportunity_to_follow_up.txt
similarity index 100%
rename from erpnext/selling/search_criteria/opportunity_to_follow_up/opportunity_to_follow_up.txt
rename to selling/search_criteria/opportunity_to_follow_up/opportunity_to_follow_up.txt
diff --git a/erpnext/selling/search_criteria/sales_order_pending_items/__init__.py b/selling/search_criteria/sales_order_pending_items/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/sales_order_pending_items/__init__.py
rename to selling/search_criteria/sales_order_pending_items/__init__.py
diff --git a/erpnext/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.js b/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.js
similarity index 100%
rename from erpnext/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.js
rename to selling/search_criteria/sales_order_pending_items/sales_order_pending_items.js
diff --git a/erpnext/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt b/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
similarity index 100%
rename from erpnext/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
rename to selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
diff --git a/erpnext/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/__init__.py b/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/__init__.py
rename to selling/search_criteria/sales_orderwise_booking_&_delivery_summary/__init__.py
diff --git a/erpnext/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt b/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
similarity index 100%
rename from erpnext/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
rename to selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
diff --git a/erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/__init__.py b/selling/search_criteria/sales_orderwise_pending_amount_to_bill/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/__init__.py
rename to selling/search_criteria/sales_orderwise_pending_amount_to_bill/__init__.py
diff --git a/erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.js b/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.js
similarity index 100%
rename from erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.js
rename to selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.js
diff --git a/erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt b/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
similarity index 100%
rename from erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
rename to selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
diff --git a/erpnext/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/__init__.py b/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/__init__.py
rename to selling/search_criteria/sales_orderwise_pending_qty_to_deliver/__init__.py
diff --git a/erpnext/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt b/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
similarity index 100%
rename from erpnext/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
rename to selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
diff --git a/erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/__init__.py b/selling/search_criteria/sales_persons_target_variance_item_group_wise/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/__init__.py
rename to selling/search_criteria/sales_persons_target_variance_item_group_wise/__init__.py
diff --git a/erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.js b/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.js
similarity index 100%
rename from erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.js
rename to selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.js
diff --git a/erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.py b/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.py
similarity index 100%
rename from erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.py
rename to selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.py
diff --git a/erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt b/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
similarity index 100%
rename from erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
rename to selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
diff --git a/erpnext/selling/search_criteria/sales_personwise_transaction_summary/__init__.py b/selling/search_criteria/sales_personwise_transaction_summary/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/sales_personwise_transaction_summary/__init__.py
rename to selling/search_criteria/sales_personwise_transaction_summary/__init__.py
diff --git a/erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.js b/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.js
similarity index 100%
rename from erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.js
rename to selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.js
diff --git a/erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.py b/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.py
similarity index 100%
rename from erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.py
rename to selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.py
diff --git a/erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt b/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
similarity index 100%
rename from erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
rename to selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
diff --git a/erpnext/selling/search_criteria/serial_no_amc_expiring_this_month/__init__.py b/selling/search_criteria/serial_no_amc_expiring_this_month/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/serial_no_amc_expiring_this_month/__init__.py
rename to selling/search_criteria/serial_no_amc_expiring_this_month/__init__.py
diff --git a/erpnext/selling/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt b/selling/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
similarity index 100%
rename from erpnext/selling/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
rename to selling/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
diff --git a/erpnext/selling/search_criteria/serial_no_warranty_expiring_this_month/__init__.py b/selling/search_criteria/serial_no_warranty_expiring_this_month/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/serial_no_warranty_expiring_this_month/__init__.py
rename to selling/search_criteria/serial_no_warranty_expiring_this_month/__init__.py
diff --git a/erpnext/selling/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt b/selling/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
similarity index 100%
rename from erpnext/selling/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
rename to selling/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
diff --git a/erpnext/selling/search_criteria/target_variance_report/__init__.py b/selling/search_criteria/target_variance_report/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/target_variance_report/__init__.py
rename to selling/search_criteria/target_variance_report/__init__.py
diff --git a/erpnext/selling/search_criteria/target_variance_report/target_variance_report.js b/selling/search_criteria/target_variance_report/target_variance_report.js
similarity index 100%
rename from erpnext/selling/search_criteria/target_variance_report/target_variance_report.js
rename to selling/search_criteria/target_variance_report/target_variance_report.js
diff --git a/erpnext/selling/search_criteria/target_variance_report/target_variance_report.py b/selling/search_criteria/target_variance_report/target_variance_report.py
similarity index 100%
rename from erpnext/selling/search_criteria/target_variance_report/target_variance_report.py
rename to selling/search_criteria/target_variance_report/target_variance_report.py
diff --git a/erpnext/selling/search_criteria/target_variance_report/target_variance_report.txt b/selling/search_criteria/target_variance_report/target_variance_report.txt
similarity index 100%
rename from erpnext/selling/search_criteria/target_variance_report/target_variance_report.txt
rename to selling/search_criteria/target_variance_report/target_variance_report.txt
diff --git a/erpnext/selling/search_criteria/territories_target_variance_item_group_wise/__init__.py b/selling/search_criteria/territories_target_variance_item_group_wise/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/territories_target_variance_item_group_wise/__init__.py
rename to selling/search_criteria/territories_target_variance_item_group_wise/__init__.py
diff --git a/erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.js b/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.js
similarity index 100%
rename from erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.js
rename to selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.js
diff --git a/erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.py b/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.py
similarity index 100%
rename from erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.py
rename to selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.py
diff --git a/erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt b/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
similarity index 100%
rename from erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
rename to selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
diff --git a/erpnext/selling/search_criteria/territory_sales___variance_report/__init__.py b/selling/search_criteria/territory_sales___variance_report/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/territory_sales___variance_report/__init__.py
rename to selling/search_criteria/territory_sales___variance_report/__init__.py
diff --git a/erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.js b/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.js
similarity index 100%
rename from erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.js
rename to selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.js
diff --git a/erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.py b/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.py
similarity index 100%
rename from erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.py
rename to selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.py
diff --git a/erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt b/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
similarity index 100%
rename from erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
rename to selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
diff --git a/erpnext/selling/search_criteria/total_target_variance_report/__init__.py b/selling/search_criteria/total_target_variance_report/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/total_target_variance_report/__init__.py
rename to selling/search_criteria/total_target_variance_report/__init__.py
diff --git a/erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.js b/selling/search_criteria/total_target_variance_report/total_target_variance_report.js
similarity index 100%
rename from erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.js
rename to selling/search_criteria/total_target_variance_report/total_target_variance_report.js
diff --git a/erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.py b/selling/search_criteria/total_target_variance_report/total_target_variance_report.py
similarity index 100%
rename from erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.py
rename to selling/search_criteria/total_target_variance_report/total_target_variance_report.py
diff --git a/erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.sql b/selling/search_criteria/total_target_variance_report/total_target_variance_report.sql
similarity index 100%
rename from erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.sql
rename to selling/search_criteria/total_target_variance_report/total_target_variance_report.sql
diff --git a/erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt b/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
similarity index 100%
rename from erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
rename to selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
diff --git a/erpnext/selling/search_criteria/variance_report/__init__.py b/selling/search_criteria/variance_report/__init__.py
similarity index 100%
rename from erpnext/selling/search_criteria/variance_report/__init__.py
rename to selling/search_criteria/variance_report/__init__.py
diff --git a/erpnext/selling/search_criteria/variance_report/variance_report.js b/selling/search_criteria/variance_report/variance_report.js
similarity index 100%
rename from erpnext/selling/search_criteria/variance_report/variance_report.js
rename to selling/search_criteria/variance_report/variance_report.js
diff --git a/erpnext/selling/search_criteria/variance_report/variance_report.py b/selling/search_criteria/variance_report/variance_report.py
similarity index 100%
rename from erpnext/selling/search_criteria/variance_report/variance_report.py
rename to selling/search_criteria/variance_report/variance_report.py
diff --git a/erpnext/selling/search_criteria/variance_report/variance_report.sql b/selling/search_criteria/variance_report/variance_report.sql
similarity index 100%
rename from erpnext/selling/search_criteria/variance_report/variance_report.sql
rename to selling/search_criteria/variance_report/variance_report.sql
diff --git a/erpnext/selling/search_criteria/variance_report/variance_report.txt b/selling/search_criteria/variance_report/variance_report.txt
similarity index 100%
rename from erpnext/selling/search_criteria/variance_report/variance_report.txt
rename to selling/search_criteria/variance_report/variance_report.txt
diff --git a/erpnext/setup/__init__.py b/setup/__init__.py
similarity index 100%
rename from erpnext/setup/__init__.py
rename to setup/__init__.py
diff --git a/erpnext/setup/doctype/__init__.py b/setup/doctype/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/__init__.py
rename to setup/doctype/__init__.py
diff --git a/erpnext/setup/doctype/authorization_control/__init__.py b/setup/doctype/authorization_control/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/authorization_control/__init__.py
rename to setup/doctype/authorization_control/__init__.py
diff --git a/erpnext/setup/doctype/authorization_control/authorization_control.py b/setup/doctype/authorization_control/authorization_control.py
similarity index 100%
rename from erpnext/setup/doctype/authorization_control/authorization_control.py
rename to setup/doctype/authorization_control/authorization_control.py
diff --git a/erpnext/setup/doctype/authorization_control/authorization_control.txt b/setup/doctype/authorization_control/authorization_control.txt
similarity index 100%
rename from erpnext/setup/doctype/authorization_control/authorization_control.txt
rename to setup/doctype/authorization_control/authorization_control.txt
diff --git a/erpnext/setup/doctype/authorization_rule/__init__.py b/setup/doctype/authorization_rule/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/authorization_rule/__init__.py
rename to setup/doctype/authorization_rule/__init__.py
diff --git a/erpnext/setup/doctype/authorization_rule/authorization_rule.js b/setup/doctype/authorization_rule/authorization_rule.js
similarity index 100%
rename from erpnext/setup/doctype/authorization_rule/authorization_rule.js
rename to setup/doctype/authorization_rule/authorization_rule.js
diff --git a/erpnext/setup/doctype/authorization_rule/authorization_rule.py b/setup/doctype/authorization_rule/authorization_rule.py
similarity index 100%
rename from erpnext/setup/doctype/authorization_rule/authorization_rule.py
rename to setup/doctype/authorization_rule/authorization_rule.py
diff --git a/erpnext/setup/doctype/authorization_rule/authorization_rule.txt b/setup/doctype/authorization_rule/authorization_rule.txt
similarity index 100%
rename from erpnext/setup/doctype/authorization_rule/authorization_rule.txt
rename to setup/doctype/authorization_rule/authorization_rule.txt
diff --git a/erpnext/setup/doctype/brand/__init__.py b/setup/doctype/brand/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/brand/__init__.py
rename to setup/doctype/brand/__init__.py
diff --git a/erpnext/setup/doctype/brand/brand.js b/setup/doctype/brand/brand.js
similarity index 100%
rename from erpnext/setup/doctype/brand/brand.js
rename to setup/doctype/brand/brand.js
diff --git a/erpnext/setup/doctype/brand/brand.txt b/setup/doctype/brand/brand.txt
similarity index 100%
rename from erpnext/setup/doctype/brand/brand.txt
rename to setup/doctype/brand/brand.txt
diff --git a/erpnext/setup/doctype/company/__init__.py b/setup/doctype/company/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/company/__init__.py
rename to setup/doctype/company/__init__.py
diff --git a/erpnext/setup/doctype/company/company.js b/setup/doctype/company/company.js
similarity index 100%
rename from erpnext/setup/doctype/company/company.js
rename to setup/doctype/company/company.js
diff --git a/erpnext/setup/doctype/company/company.py b/setup/doctype/company/company.py
similarity index 100%
rename from erpnext/setup/doctype/company/company.py
rename to setup/doctype/company/company.py
diff --git a/erpnext/setup/doctype/company/company.txt b/setup/doctype/company/company.txt
similarity index 100%
rename from erpnext/setup/doctype/company/company.txt
rename to setup/doctype/company/company.txt
diff --git a/erpnext/setup/doctype/contact_control/__init__.py b/setup/doctype/contact_control/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/contact_control/__init__.py
rename to setup/doctype/contact_control/__init__.py
diff --git a/erpnext/setup/doctype/contact_control/contact_control.js b/setup/doctype/contact_control/contact_control.js
similarity index 100%
rename from erpnext/setup/doctype/contact_control/contact_control.js
rename to setup/doctype/contact_control/contact_control.js
diff --git a/erpnext/setup/doctype/contact_control/contact_control.py b/setup/doctype/contact_control/contact_control.py
similarity index 100%
rename from erpnext/setup/doctype/contact_control/contact_control.py
rename to setup/doctype/contact_control/contact_control.py
diff --git a/erpnext/setup/doctype/contact_control/contact_control.txt b/setup/doctype/contact_control/contact_control.txt
similarity index 100%
rename from erpnext/setup/doctype/contact_control/contact_control.txt
rename to setup/doctype/contact_control/contact_control.txt
diff --git a/erpnext/setup/doctype/country/__init__.py b/setup/doctype/country/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/country/__init__.py
rename to setup/doctype/country/__init__.py
diff --git a/erpnext/setup/doctype/country/country.txt b/setup/doctype/country/country.txt
similarity index 100%
rename from erpnext/setup/doctype/country/country.txt
rename to setup/doctype/country/country.txt
diff --git a/erpnext/setup/doctype/currency/__init__.py b/setup/doctype/currency/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/currency/__init__.py
rename to setup/doctype/currency/__init__.py
diff --git a/erpnext/setup/doctype/currency/currency.js b/setup/doctype/currency/currency.js
similarity index 100%
rename from erpnext/setup/doctype/currency/currency.js
rename to setup/doctype/currency/currency.js
diff --git a/erpnext/setup/doctype/currency/currency.txt b/setup/doctype/currency/currency.txt
similarity index 100%
rename from erpnext/setup/doctype/currency/currency.txt
rename to setup/doctype/currency/currency.txt
diff --git a/erpnext/setup/doctype/customer_group/__init__.py b/setup/doctype/customer_group/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/customer_group/__init__.py
rename to setup/doctype/customer_group/__init__.py
diff --git a/erpnext/setup/doctype/customer_group/customer_group.js b/setup/doctype/customer_group/customer_group.js
similarity index 100%
rename from erpnext/setup/doctype/customer_group/customer_group.js
rename to setup/doctype/customer_group/customer_group.js
diff --git a/erpnext/setup/doctype/customer_group/customer_group.py b/setup/doctype/customer_group/customer_group.py
similarity index 100%
rename from erpnext/setup/doctype/customer_group/customer_group.py
rename to setup/doctype/customer_group/customer_group.py
diff --git a/erpnext/setup/doctype/customer_group/customer_group.txt b/setup/doctype/customer_group/customer_group.txt
similarity index 100%
rename from erpnext/setup/doctype/customer_group/customer_group.txt
rename to setup/doctype/customer_group/customer_group.txt
diff --git a/erpnext/setup/doctype/email_digest/__init__.py b/setup/doctype/email_digest/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/email_digest/__init__.py
rename to setup/doctype/email_digest/__init__.py
diff --git a/erpnext/setup/doctype/email_digest/email_digest.css b/setup/doctype/email_digest/email_digest.css
similarity index 100%
rename from erpnext/setup/doctype/email_digest/email_digest.css
rename to setup/doctype/email_digest/email_digest.css
diff --git a/erpnext/setup/doctype/email_digest/email_digest.js b/setup/doctype/email_digest/email_digest.js
similarity index 100%
rename from erpnext/setup/doctype/email_digest/email_digest.js
rename to setup/doctype/email_digest/email_digest.js
diff --git a/erpnext/setup/doctype/email_digest/email_digest.py b/setup/doctype/email_digest/email_digest.py
similarity index 100%
rename from erpnext/setup/doctype/email_digest/email_digest.py
rename to setup/doctype/email_digest/email_digest.py
diff --git a/erpnext/setup/doctype/email_digest/email_digest.txt b/setup/doctype/email_digest/email_digest.txt
similarity index 100%
rename from erpnext/setup/doctype/email_digest/email_digest.txt
rename to setup/doctype/email_digest/email_digest.txt
diff --git a/erpnext/setup/doctype/email_settings/__init__.py b/setup/doctype/email_settings/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/email_settings/__init__.py
rename to setup/doctype/email_settings/__init__.py
diff --git a/erpnext/setup/doctype/email_settings/email_settings.py b/setup/doctype/email_settings/email_settings.py
similarity index 100%
rename from erpnext/setup/doctype/email_settings/email_settings.py
rename to setup/doctype/email_settings/email_settings.py
diff --git a/erpnext/setup/doctype/email_settings/email_settings.txt b/setup/doctype/email_settings/email_settings.txt
similarity index 100%
rename from erpnext/setup/doctype/email_settings/email_settings.txt
rename to setup/doctype/email_settings/email_settings.txt
diff --git a/erpnext/setup/doctype/features_setup/__init__.py b/setup/doctype/features_setup/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/features_setup/__init__.py
rename to setup/doctype/features_setup/__init__.py
diff --git a/erpnext/setup/doctype/features_setup/features_setup.py b/setup/doctype/features_setup/features_setup.py
similarity index 100%
rename from erpnext/setup/doctype/features_setup/features_setup.py
rename to setup/doctype/features_setup/features_setup.py
diff --git a/erpnext/setup/doctype/features_setup/features_setup.txt b/setup/doctype/features_setup/features_setup.txt
similarity index 100%
rename from erpnext/setup/doctype/features_setup/features_setup.txt
rename to setup/doctype/features_setup/features_setup.txt
diff --git a/erpnext/setup/doctype/global_defaults/__init__.py b/setup/doctype/global_defaults/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/global_defaults/__init__.py
rename to setup/doctype/global_defaults/__init__.py
diff --git a/erpnext/setup/doctype/global_defaults/global_defaults.js b/setup/doctype/global_defaults/global_defaults.js
similarity index 100%
rename from erpnext/setup/doctype/global_defaults/global_defaults.js
rename to setup/doctype/global_defaults/global_defaults.js
diff --git a/erpnext/setup/doctype/global_defaults/global_defaults.py b/setup/doctype/global_defaults/global_defaults.py
similarity index 100%
rename from erpnext/setup/doctype/global_defaults/global_defaults.py
rename to setup/doctype/global_defaults/global_defaults.py
diff --git a/erpnext/setup/doctype/global_defaults/global_defaults.txt b/setup/doctype/global_defaults/global_defaults.txt
similarity index 100%
rename from erpnext/setup/doctype/global_defaults/global_defaults.txt
rename to setup/doctype/global_defaults/global_defaults.txt
diff --git a/erpnext/setup/doctype/item_group/__init__.py b/setup/doctype/item_group/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/item_group/__init__.py
rename to setup/doctype/item_group/__init__.py
diff --git a/erpnext/setup/doctype/item_group/item_group.js b/setup/doctype/item_group/item_group.js
similarity index 100%
rename from erpnext/setup/doctype/item_group/item_group.js
rename to setup/doctype/item_group/item_group.js
diff --git a/erpnext/setup/doctype/item_group/item_group.py b/setup/doctype/item_group/item_group.py
similarity index 100%
rename from erpnext/setup/doctype/item_group/item_group.py
rename to setup/doctype/item_group/item_group.py
diff --git a/erpnext/setup/doctype/item_group/item_group.txt b/setup/doctype/item_group/item_group.txt
similarity index 100%
rename from erpnext/setup/doctype/item_group/item_group.txt
rename to setup/doctype/item_group/item_group.txt
diff --git a/erpnext/setup/doctype/market_segment/__init__.py b/setup/doctype/market_segment/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/market_segment/__init__.py
rename to setup/doctype/market_segment/__init__.py
diff --git a/erpnext/setup/doctype/market_segment/market_segment.txt b/setup/doctype/market_segment/market_segment.txt
similarity index 100%
rename from erpnext/setup/doctype/market_segment/market_segment.txt
rename to setup/doctype/market_segment/market_segment.txt
diff --git a/erpnext/setup/doctype/naming_series/__init__.py b/setup/doctype/naming_series/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/naming_series/__init__.py
rename to setup/doctype/naming_series/__init__.py
diff --git a/erpnext/setup/doctype/naming_series/naming_series.js b/setup/doctype/naming_series/naming_series.js
similarity index 100%
rename from erpnext/setup/doctype/naming_series/naming_series.js
rename to setup/doctype/naming_series/naming_series.js
diff --git a/erpnext/setup/doctype/naming_series/naming_series.py b/setup/doctype/naming_series/naming_series.py
similarity index 100%
rename from erpnext/setup/doctype/naming_series/naming_series.py
rename to setup/doctype/naming_series/naming_series.py
diff --git a/erpnext/setup/doctype/naming_series/naming_series.txt b/setup/doctype/naming_series/naming_series.txt
similarity index 100%
rename from erpnext/setup/doctype/naming_series/naming_series.txt
rename to setup/doctype/naming_series/naming_series.txt
diff --git a/erpnext/setup/doctype/naming_series_options/__init__.py b/setup/doctype/naming_series_options/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/naming_series_options/__init__.py
rename to setup/doctype/naming_series_options/__init__.py
diff --git a/erpnext/setup/doctype/naming_series_options/naming_series_options.txt b/setup/doctype/naming_series_options/naming_series_options.txt
similarity index 100%
rename from erpnext/setup/doctype/naming_series_options/naming_series_options.txt
rename to setup/doctype/naming_series_options/naming_series_options.txt
diff --git a/erpnext/setup/doctype/notification_control/__init__.py b/setup/doctype/notification_control/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/notification_control/__init__.py
rename to setup/doctype/notification_control/__init__.py
diff --git a/erpnext/setup/doctype/notification_control/notification_control.js b/setup/doctype/notification_control/notification_control.js
similarity index 100%
rename from erpnext/setup/doctype/notification_control/notification_control.js
rename to setup/doctype/notification_control/notification_control.js
diff --git a/erpnext/setup/doctype/notification_control/notification_control.py b/setup/doctype/notification_control/notification_control.py
similarity index 100%
rename from erpnext/setup/doctype/notification_control/notification_control.py
rename to setup/doctype/notification_control/notification_control.py
diff --git a/erpnext/setup/doctype/notification_control/notification_control.txt b/setup/doctype/notification_control/notification_control.txt
similarity index 100%
rename from erpnext/setup/doctype/notification_control/notification_control.txt
rename to setup/doctype/notification_control/notification_control.txt
diff --git a/erpnext/setup/doctype/period/__init__.py b/setup/doctype/period/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/period/__init__.py
rename to setup/doctype/period/__init__.py
diff --git a/erpnext/setup/doctype/period/period.js b/setup/doctype/period/period.js
similarity index 100%
rename from erpnext/setup/doctype/period/period.js
rename to setup/doctype/period/period.js
diff --git a/erpnext/setup/doctype/period/period.txt b/setup/doctype/period/period.txt
similarity index 100%
rename from erpnext/setup/doctype/period/period.txt
rename to setup/doctype/period/period.txt
diff --git a/erpnext/setup/doctype/period_control/__init__.py b/setup/doctype/period_control/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/period_control/__init__.py
rename to setup/doctype/period_control/__init__.py
diff --git a/erpnext/setup/doctype/period_control/period_control.py b/setup/doctype/period_control/period_control.py
similarity index 100%
rename from erpnext/setup/doctype/period_control/period_control.py
rename to setup/doctype/period_control/period_control.py
diff --git a/erpnext/setup/doctype/period_control/period_control.txt b/setup/doctype/period_control/period_control.txt
similarity index 100%
rename from erpnext/setup/doctype/period_control/period_control.txt
rename to setup/doctype/period_control/period_control.txt
diff --git a/erpnext/setup/doctype/permission_control/__init__.py b/setup/doctype/permission_control/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/permission_control/__init__.py
rename to setup/doctype/permission_control/__init__.py
diff --git a/erpnext/setup/doctype/permission_control/permission_control.py b/setup/doctype/permission_control/permission_control.py
similarity index 100%
rename from erpnext/setup/doctype/permission_control/permission_control.py
rename to setup/doctype/permission_control/permission_control.py
diff --git a/erpnext/setup/doctype/permission_control/permission_control.txt b/setup/doctype/permission_control/permission_control.txt
similarity index 100%
rename from erpnext/setup/doctype/permission_control/permission_control.txt
rename to setup/doctype/permission_control/permission_control.txt
diff --git a/erpnext/setup/doctype/price_list/__init__.py b/setup/doctype/price_list/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/price_list/__init__.py
rename to setup/doctype/price_list/__init__.py
diff --git a/erpnext/setup/doctype/price_list/price_list.js b/setup/doctype/price_list/price_list.js
similarity index 100%
rename from erpnext/setup/doctype/price_list/price_list.js
rename to setup/doctype/price_list/price_list.js
diff --git a/erpnext/setup/doctype/price_list/price_list.py b/setup/doctype/price_list/price_list.py
similarity index 100%
rename from erpnext/setup/doctype/price_list/price_list.py
rename to setup/doctype/price_list/price_list.py
diff --git a/erpnext/setup/doctype/price_list/price_list.txt b/setup/doctype/price_list/price_list.txt
similarity index 100%
rename from erpnext/setup/doctype/price_list/price_list.txt
rename to setup/doctype/price_list/price_list.txt
diff --git a/erpnext/setup/doctype/print_heading/__init__.py b/setup/doctype/print_heading/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/print_heading/__init__.py
rename to setup/doctype/print_heading/__init__.py
diff --git a/erpnext/setup/doctype/print_heading/print_heading.js b/setup/doctype/print_heading/print_heading.js
similarity index 100%
rename from erpnext/setup/doctype/print_heading/print_heading.js
rename to setup/doctype/print_heading/print_heading.js
diff --git a/erpnext/setup/doctype/print_heading/print_heading.py b/setup/doctype/print_heading/print_heading.py
similarity index 100%
rename from erpnext/setup/doctype/print_heading/print_heading.py
rename to setup/doctype/print_heading/print_heading.py
diff --git a/erpnext/setup/doctype/print_heading/print_heading.txt b/setup/doctype/print_heading/print_heading.txt
similarity index 100%
rename from erpnext/setup/doctype/print_heading/print_heading.txt
rename to setup/doctype/print_heading/print_heading.txt
diff --git a/erpnext/setup/doctype/quotation_lost_reason/__init__.py b/setup/doctype/quotation_lost_reason/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/quotation_lost_reason/__init__.py
rename to setup/doctype/quotation_lost_reason/__init__.py
diff --git a/erpnext/setup/doctype/quotation_lost_reason/quotation_lost_reason.js b/setup/doctype/quotation_lost_reason/quotation_lost_reason.js
similarity index 100%
rename from erpnext/setup/doctype/quotation_lost_reason/quotation_lost_reason.js
rename to setup/doctype/quotation_lost_reason/quotation_lost_reason.js
diff --git a/erpnext/setup/doctype/quotation_lost_reason/quotation_lost_reason.txt b/setup/doctype/quotation_lost_reason/quotation_lost_reason.txt
similarity index 100%
rename from erpnext/setup/doctype/quotation_lost_reason/quotation_lost_reason.txt
rename to setup/doctype/quotation_lost_reason/quotation_lost_reason.txt
diff --git a/erpnext/setup/doctype/sales_browser_control/__init__.py b/setup/doctype/sales_browser_control/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/sales_browser_control/__init__.py
rename to setup/doctype/sales_browser_control/__init__.py
diff --git a/erpnext/setup/doctype/sales_browser_control/sales_browser_control.py b/setup/doctype/sales_browser_control/sales_browser_control.py
similarity index 100%
rename from erpnext/setup/doctype/sales_browser_control/sales_browser_control.py
rename to setup/doctype/sales_browser_control/sales_browser_control.py
diff --git a/erpnext/setup/doctype/sales_browser_control/sales_browser_control.txt b/setup/doctype/sales_browser_control/sales_browser_control.txt
similarity index 100%
rename from erpnext/setup/doctype/sales_browser_control/sales_browser_control.txt
rename to setup/doctype/sales_browser_control/sales_browser_control.txt
diff --git a/erpnext/setup/doctype/sales_partner/__init__.py b/setup/doctype/sales_partner/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/sales_partner/__init__.py
rename to setup/doctype/sales_partner/__init__.py
diff --git a/erpnext/setup/doctype/sales_partner/sales_partner.js b/setup/doctype/sales_partner/sales_partner.js
similarity index 100%
rename from erpnext/setup/doctype/sales_partner/sales_partner.js
rename to setup/doctype/sales_partner/sales_partner.js
diff --git a/erpnext/setup/doctype/sales_partner/sales_partner.py b/setup/doctype/sales_partner/sales_partner.py
similarity index 100%
rename from erpnext/setup/doctype/sales_partner/sales_partner.py
rename to setup/doctype/sales_partner/sales_partner.py
diff --git a/erpnext/setup/doctype/sales_partner/sales_partner.txt b/setup/doctype/sales_partner/sales_partner.txt
similarity index 100%
rename from erpnext/setup/doctype/sales_partner/sales_partner.txt
rename to setup/doctype/sales_partner/sales_partner.txt
diff --git a/erpnext/setup/doctype/sales_person/__init__.py b/setup/doctype/sales_person/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/sales_person/__init__.py
rename to setup/doctype/sales_person/__init__.py
diff --git a/erpnext/setup/doctype/sales_person/sales_person.js b/setup/doctype/sales_person/sales_person.js
similarity index 100%
rename from erpnext/setup/doctype/sales_person/sales_person.js
rename to setup/doctype/sales_person/sales_person.js
diff --git a/erpnext/setup/doctype/sales_person/sales_person.py b/setup/doctype/sales_person/sales_person.py
similarity index 100%
rename from erpnext/setup/doctype/sales_person/sales_person.py
rename to setup/doctype/sales_person/sales_person.py
diff --git a/erpnext/setup/doctype/sales_person/sales_person.txt b/setup/doctype/sales_person/sales_person.txt
similarity index 100%
rename from erpnext/setup/doctype/sales_person/sales_person.txt
rename to setup/doctype/sales_person/sales_person.txt
diff --git a/erpnext/setup/doctype/series_detail/__init__.py b/setup/doctype/series_detail/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/series_detail/__init__.py
rename to setup/doctype/series_detail/__init__.py
diff --git a/erpnext/setup/doctype/series_detail/series_detail.txt b/setup/doctype/series_detail/series_detail.txt
similarity index 100%
rename from erpnext/setup/doctype/series_detail/series_detail.txt
rename to setup/doctype/series_detail/series_detail.txt
diff --git a/erpnext/setup/doctype/setup_control/__init__.py b/setup/doctype/setup_control/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/setup_control/__init__.py
rename to setup/doctype/setup_control/__init__.py
diff --git a/erpnext/setup/doctype/setup_control/setup_control.py b/setup/doctype/setup_control/setup_control.py
similarity index 100%
rename from erpnext/setup/doctype/setup_control/setup_control.py
rename to setup/doctype/setup_control/setup_control.py
diff --git a/erpnext/setup/doctype/setup_control/setup_control.txt b/setup/doctype/setup_control/setup_control.txt
similarity index 100%
rename from erpnext/setup/doctype/setup_control/setup_control.txt
rename to setup/doctype/setup_control/setup_control.txt
diff --git a/erpnext/setup/doctype/sms_parameter/__init__.py b/setup/doctype/sms_parameter/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/sms_parameter/__init__.py
rename to setup/doctype/sms_parameter/__init__.py
diff --git a/erpnext/setup/doctype/sms_parameter/sms_parameter.txt b/setup/doctype/sms_parameter/sms_parameter.txt
similarity index 100%
rename from erpnext/setup/doctype/sms_parameter/sms_parameter.txt
rename to setup/doctype/sms_parameter/sms_parameter.txt
diff --git a/erpnext/setup/doctype/sms_settings/__init__.py b/setup/doctype/sms_settings/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/sms_settings/__init__.py
rename to setup/doctype/sms_settings/__init__.py
diff --git a/erpnext/setup/doctype/sms_settings/sms_settings.txt b/setup/doctype/sms_settings/sms_settings.txt
similarity index 100%
rename from erpnext/setup/doctype/sms_settings/sms_settings.txt
rename to setup/doctype/sms_settings/sms_settings.txt
diff --git a/erpnext/setup/doctype/state/__init__.py b/setup/doctype/state/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/state/__init__.py
rename to setup/doctype/state/__init__.py
diff --git a/erpnext/setup/doctype/state/state.js b/setup/doctype/state/state.js
similarity index 100%
rename from erpnext/setup/doctype/state/state.js
rename to setup/doctype/state/state.js
diff --git a/erpnext/setup/doctype/state/state.txt b/setup/doctype/state/state.txt
similarity index 100%
rename from erpnext/setup/doctype/state/state.txt
rename to setup/doctype/state/state.txt
diff --git a/erpnext/setup/doctype/supplier_type/__init__.py b/setup/doctype/supplier_type/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/supplier_type/__init__.py
rename to setup/doctype/supplier_type/__init__.py
diff --git a/erpnext/setup/doctype/supplier_type/supplier_type.js b/setup/doctype/supplier_type/supplier_type.js
similarity index 100%
rename from erpnext/setup/doctype/supplier_type/supplier_type.js
rename to setup/doctype/supplier_type/supplier_type.js
diff --git a/erpnext/setup/doctype/supplier_type/supplier_type.txt b/setup/doctype/supplier_type/supplier_type.txt
similarity index 100%
rename from erpnext/setup/doctype/supplier_type/supplier_type.txt
rename to setup/doctype/supplier_type/supplier_type.txt
diff --git a/erpnext/setup/doctype/target_detail/__init__.py b/setup/doctype/target_detail/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/target_detail/__init__.py
rename to setup/doctype/target_detail/__init__.py
diff --git a/erpnext/setup/doctype/target_detail/target_detail.txt b/setup/doctype/target_detail/target_detail.txt
similarity index 100%
rename from erpnext/setup/doctype/target_detail/target_detail.txt
rename to setup/doctype/target_detail/target_detail.txt
diff --git a/erpnext/setup/doctype/terms_and_conditions/__init__.py b/setup/doctype/terms_and_conditions/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/terms_and_conditions/__init__.py
rename to setup/doctype/terms_and_conditions/__init__.py
diff --git a/erpnext/setup/doctype/terms_and_conditions/terms_and_conditions.js b/setup/doctype/terms_and_conditions/terms_and_conditions.js
similarity index 100%
rename from erpnext/setup/doctype/terms_and_conditions/terms_and_conditions.js
rename to setup/doctype/terms_and_conditions/terms_and_conditions.js
diff --git a/erpnext/setup/doctype/terms_and_conditions/terms_and_conditions.txt b/setup/doctype/terms_and_conditions/terms_and_conditions.txt
similarity index 100%
rename from erpnext/setup/doctype/terms_and_conditions/terms_and_conditions.txt
rename to setup/doctype/terms_and_conditions/terms_and_conditions.txt
diff --git a/erpnext/setup/doctype/territory/__init__.py b/setup/doctype/territory/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/territory/__init__.py
rename to setup/doctype/territory/__init__.py
diff --git a/erpnext/setup/doctype/territory/territory.js b/setup/doctype/territory/territory.js
similarity index 100%
rename from erpnext/setup/doctype/territory/territory.js
rename to setup/doctype/territory/territory.js
diff --git a/erpnext/setup/doctype/territory/territory.py b/setup/doctype/territory/territory.py
similarity index 100%
rename from erpnext/setup/doctype/territory/territory.py
rename to setup/doctype/territory/territory.py
diff --git a/erpnext/setup/doctype/territory/territory.txt b/setup/doctype/territory/territory.txt
similarity index 100%
rename from erpnext/setup/doctype/territory/territory.txt
rename to setup/doctype/territory/territory.txt
diff --git a/erpnext/setup/doctype/uom/__init__.py b/setup/doctype/uom/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/uom/__init__.py
rename to setup/doctype/uom/__init__.py
diff --git a/erpnext/setup/doctype/uom/uom.js b/setup/doctype/uom/uom.js
similarity index 100%
rename from erpnext/setup/doctype/uom/uom.js
rename to setup/doctype/uom/uom.js
diff --git a/erpnext/setup/doctype/uom/uom.txt b/setup/doctype/uom/uom.txt
similarity index 100%
rename from erpnext/setup/doctype/uom/uom.txt
rename to setup/doctype/uom/uom.txt
diff --git a/erpnext/setup/doctype/warehouse_type/__init__.py b/setup/doctype/warehouse_type/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/warehouse_type/__init__.py
rename to setup/doctype/warehouse_type/__init__.py
diff --git a/erpnext/setup/doctype/warehouse_type/warehouse_type.js b/setup/doctype/warehouse_type/warehouse_type.js
similarity index 100%
rename from erpnext/setup/doctype/warehouse_type/warehouse_type.js
rename to setup/doctype/warehouse_type/warehouse_type.js
diff --git a/erpnext/setup/doctype/warehouse_type/warehouse_type.txt b/setup/doctype/warehouse_type/warehouse_type.txt
similarity index 100%
rename from erpnext/setup/doctype/warehouse_type/warehouse_type.txt
rename to setup/doctype/warehouse_type/warehouse_type.txt
diff --git a/erpnext/setup/doctype/workflow_action_detail/__init__.py b/setup/doctype/workflow_action_detail/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/workflow_action_detail/__init__.py
rename to setup/doctype/workflow_action_detail/__init__.py
diff --git a/erpnext/setup/doctype/workflow_action_detail/workflow_action_detail.txt b/setup/doctype/workflow_action_detail/workflow_action_detail.txt
similarity index 100%
rename from erpnext/setup/doctype/workflow_action_detail/workflow_action_detail.txt
rename to setup/doctype/workflow_action_detail/workflow_action_detail.txt
diff --git a/erpnext/setup/doctype/workflow_engine/__init__.py b/setup/doctype/workflow_engine/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/workflow_engine/__init__.py
rename to setup/doctype/workflow_engine/__init__.py
diff --git a/erpnext/setup/doctype/workflow_engine/workflow_engine.py b/setup/doctype/workflow_engine/workflow_engine.py
similarity index 100%
rename from erpnext/setup/doctype/workflow_engine/workflow_engine.py
rename to setup/doctype/workflow_engine/workflow_engine.py
diff --git a/erpnext/setup/doctype/workflow_engine/workflow_engine.txt b/setup/doctype/workflow_engine/workflow_engine.txt
similarity index 100%
rename from erpnext/setup/doctype/workflow_engine/workflow_engine.txt
rename to setup/doctype/workflow_engine/workflow_engine.txt
diff --git a/erpnext/setup/doctype/workflow_rule/__init__.py b/setup/doctype/workflow_rule/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/workflow_rule/__init__.py
rename to setup/doctype/workflow_rule/__init__.py
diff --git a/erpnext/setup/doctype/workflow_rule/workflow_rule.js b/setup/doctype/workflow_rule/workflow_rule.js
similarity index 100%
rename from erpnext/setup/doctype/workflow_rule/workflow_rule.js
rename to setup/doctype/workflow_rule/workflow_rule.js
diff --git a/erpnext/setup/doctype/workflow_rule/workflow_rule.py b/setup/doctype/workflow_rule/workflow_rule.py
similarity index 100%
rename from erpnext/setup/doctype/workflow_rule/workflow_rule.py
rename to setup/doctype/workflow_rule/workflow_rule.py
diff --git a/erpnext/setup/doctype/workflow_rule/workflow_rule.txt b/setup/doctype/workflow_rule/workflow_rule.txt
similarity index 100%
rename from erpnext/setup/doctype/workflow_rule/workflow_rule.txt
rename to setup/doctype/workflow_rule/workflow_rule.txt
diff --git a/erpnext/setup/doctype/workflow_rule_detail/__init__.py b/setup/doctype/workflow_rule_detail/__init__.py
similarity index 100%
rename from erpnext/setup/doctype/workflow_rule_detail/__init__.py
rename to setup/doctype/workflow_rule_detail/__init__.py
diff --git a/erpnext/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt b/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
similarity index 100%
rename from erpnext/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
rename to setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
diff --git a/erpnext/setup/page/__init__.py b/setup/page/__init__.py
similarity index 100%
rename from erpnext/setup/page/__init__.py
rename to setup/page/__init__.py
diff --git a/erpnext/setup/page/modules_setup/__init__.py b/setup/page/modules_setup/__init__.py
similarity index 100%
rename from erpnext/setup/page/modules_setup/__init__.py
rename to setup/page/modules_setup/__init__.py
diff --git a/erpnext/setup/page/modules_setup/modules_setup.css b/setup/page/modules_setup/modules_setup.css
similarity index 100%
rename from erpnext/setup/page/modules_setup/modules_setup.css
rename to setup/page/modules_setup/modules_setup.css
diff --git a/erpnext/setup/page/modules_setup/modules_setup.html b/setup/page/modules_setup/modules_setup.html
similarity index 100%
rename from erpnext/setup/page/modules_setup/modules_setup.html
rename to setup/page/modules_setup/modules_setup.html
diff --git a/erpnext/setup/page/modules_setup/modules_setup.js b/setup/page/modules_setup/modules_setup.js
similarity index 96%
rename from erpnext/setup/page/modules_setup/modules_setup.js
rename to setup/page/modules_setup/modules_setup.js
index 79f4ebc..71fed93 100644
--- a/erpnext/setup/page/modules_setup/modules_setup.js
+++ b/setup/page/modules_setup/modules_setup.js
@@ -1,4 +1,4 @@
-wn.require('js/lib/jquery/jquery.ui.sortable.js');
+wn.require('lib/js/lib/jquery/jquery.ui.sortable.js');
 
 $.extend(wn.pages.modules_setup, {
 	modules: ['Activity', 'Accounts', 'Selling', 'Buying', 'Stock', 'Production', 'Projects', 
diff --git a/erpnext/setup/page/modules_setup/modules_setup.py b/setup/page/modules_setup/modules_setup.py
similarity index 100%
rename from erpnext/setup/page/modules_setup/modules_setup.py
rename to setup/page/modules_setup/modules_setup.py
diff --git a/erpnext/setup/page/modules_setup/modules_setup.txt b/setup/page/modules_setup/modules_setup.txt
similarity index 100%
rename from erpnext/setup/page/modules_setup/modules_setup.txt
rename to setup/page/modules_setup/modules_setup.txt
diff --git a/erpnext/setup/page/permission_engine/__init__.py b/setup/page/permission_engine/__init__.py
similarity index 100%
rename from erpnext/setup/page/permission_engine/__init__.py
rename to setup/page/permission_engine/__init__.py
diff --git a/erpnext/setup/page/permission_engine/permission_engine.html b/setup/page/permission_engine/permission_engine.html
similarity index 100%
rename from erpnext/setup/page/permission_engine/permission_engine.html
rename to setup/page/permission_engine/permission_engine.html
diff --git a/erpnext/setup/page/permission_engine/permission_engine.js b/setup/page/permission_engine/permission_engine.js
similarity index 100%
rename from erpnext/setup/page/permission_engine/permission_engine.js
rename to setup/page/permission_engine/permission_engine.js
diff --git a/erpnext/setup/page/permission_engine/permission_engine.txt b/setup/page/permission_engine/permission_engine.txt
similarity index 100%
rename from erpnext/setup/page/permission_engine/permission_engine.txt
rename to setup/page/permission_engine/permission_engine.txt
diff --git a/erpnext/setup/page/setup/__init__.py b/setup/page/setup/__init__.py
similarity index 100%
rename from erpnext/setup/page/setup/__init__.py
rename to setup/page/setup/__init__.py
diff --git a/erpnext/setup/page/setup/setup.css b/setup/page/setup/setup.css
similarity index 100%
rename from erpnext/setup/page/setup/setup.css
rename to setup/page/setup/setup.css
diff --git a/erpnext/setup/page/setup/setup.html b/setup/page/setup/setup.html
similarity index 100%
rename from erpnext/setup/page/setup/setup.html
rename to setup/page/setup/setup.html
diff --git a/erpnext/setup/page/setup/setup.js b/setup/page/setup/setup.js
similarity index 100%
rename from erpnext/setup/page/setup/setup.js
rename to setup/page/setup/setup.js
diff --git a/erpnext/setup/page/setup/setup.txt b/setup/page/setup/setup.txt
similarity index 100%
rename from erpnext/setup/page/setup/setup.txt
rename to setup/page/setup/setup.txt
diff --git a/erpnext/setup/page/webforms/__init__.py b/setup/page/webforms/__init__.py
similarity index 100%
rename from erpnext/setup/page/webforms/__init__.py
rename to setup/page/webforms/__init__.py
diff --git a/erpnext/setup/page/webforms/webforms.html b/setup/page/webforms/webforms.html
similarity index 100%
rename from erpnext/setup/page/webforms/webforms.html
rename to setup/page/webforms/webforms.html
diff --git a/erpnext/setup/page/webforms/webforms.js b/setup/page/webforms/webforms.js
similarity index 100%
rename from erpnext/setup/page/webforms/webforms.js
rename to setup/page/webforms/webforms.js
diff --git a/erpnext/setup/page/webforms/webforms.txt b/setup/page/webforms/webforms.txt
similarity index 100%
rename from erpnext/setup/page/webforms/webforms.txt
rename to setup/page/webforms/webforms.txt
diff --git a/erpnext/setup/page/webforms/webforms_static.html b/setup/page/webforms/webforms_static.html
similarity index 100%
rename from erpnext/setup/page/webforms/webforms_static.html
rename to setup/page/webforms/webforms_static.html
diff --git a/erpnext/startup/__init__.py b/startup/__init__.py
similarity index 100%
rename from erpnext/startup/__init__.py
rename to startup/__init__.py
diff --git a/erpnext/startup/event_handlers.py b/startup/event_handlers.py
similarity index 100%
rename from erpnext/startup/event_handlers.py
rename to startup/event_handlers.py
diff --git a/erpnext/startup/js/feature_setup.js b/startup/js/feature_setup.js
similarity index 100%
rename from erpnext/startup/js/feature_setup.js
rename to startup/js/feature_setup.js
diff --git a/erpnext/startup/js/modules.js b/startup/js/modules.js
similarity index 100%
rename from erpnext/startup/js/modules.js
rename to startup/js/modules.js
diff --git a/erpnext/startup/js/toolbar.js b/startup/js/toolbar.js
similarity index 100%
rename from erpnext/startup/js/toolbar.js
rename to startup/js/toolbar.js
diff --git a/erpnext/startup/report_data_map.py b/startup/report_data_map.py
similarity index 100%
rename from erpnext/startup/report_data_map.py
rename to startup/report_data_map.py
diff --git a/erpnext/startup/schedule_handlers.py b/startup/schedule_handlers.py
similarity index 100%
rename from erpnext/startup/schedule_handlers.py
rename to startup/schedule_handlers.py
diff --git a/erpnext/startup/startup.css b/startup/startup.css
similarity index 100%
rename from erpnext/startup/startup.css
rename to startup/startup.css
diff --git a/erpnext/startup/startup.js b/startup/startup.js
similarity index 98%
rename from erpnext/startup/startup.js
rename to startup/startup.js
index 7fb48c1..9a6a526 100644
--- a/erpnext/startup/startup.js
+++ b/startup/startup.js
@@ -76,7 +76,7 @@
 
 		// complete registration
 		if(in_list(user_roles,'System Manager') && (wn.boot.setup_complete=='No')) { 
-			wn.require("js/app/complete_setup.js");
+			wn.require("app/js/complete_setup.js");
 			erpnext.complete_setup.show(); 
 		}
 		if(wn.boot.expires_on && in_list(user_roles, 'System Manager')) {
diff --git a/erpnext/startup/startup.py b/startup/startup.py
similarity index 100%
rename from erpnext/startup/startup.py
rename to startup/startup.py
diff --git a/erpnext/stock/DocType Mapper/Delivery Note-Packing Slip/Delivery Note-Packing Slip.txt b/stock/DocType Mapper/Delivery Note-Packing Slip/Delivery Note-Packing Slip.txt
similarity index 100%
rename from erpnext/stock/DocType Mapper/Delivery Note-Packing Slip/Delivery Note-Packing Slip.txt
rename to stock/DocType Mapper/Delivery Note-Packing Slip/Delivery Note-Packing Slip.txt
diff --git a/erpnext/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt b/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
similarity index 100%
rename from erpnext/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
rename to stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
diff --git a/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt b/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
similarity index 100%
rename from erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
rename to stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
diff --git a/erpnext/stock/DocType Mapper/Sales Invoice-Delivery Note/Sales Invoice-Delivery Note.txt b/stock/DocType Mapper/Sales Invoice-Delivery Note/Sales Invoice-Delivery Note.txt
similarity index 100%
rename from erpnext/stock/DocType Mapper/Sales Invoice-Delivery Note/Sales Invoice-Delivery Note.txt
rename to stock/DocType Mapper/Sales Invoice-Delivery Note/Sales Invoice-Delivery Note.txt
diff --git a/erpnext/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt b/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
similarity index 100%
rename from erpnext/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
rename to stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
diff --git a/erpnext/stock/Item Group/All Item Groups/All Item Groups.txt b/stock/Item Group/All Item Groups/All Item Groups.txt
similarity index 100%
rename from erpnext/stock/Item Group/All Item Groups/All Item Groups.txt
rename to stock/Item Group/All Item Groups/All Item Groups.txt
diff --git a/erpnext/stock/Item Group/Default/Default.txt b/stock/Item Group/Default/Default.txt
similarity index 100%
rename from erpnext/stock/Item Group/Default/Default.txt
rename to stock/Item Group/Default/Default.txt
diff --git a/erpnext/stock/Print Format/Delivery Note Classic/Delivery Note Classic.txt b/stock/Print Format/Delivery Note Classic/Delivery Note Classic.txt
similarity index 100%
rename from erpnext/stock/Print Format/Delivery Note Classic/Delivery Note Classic.txt
rename to stock/Print Format/Delivery Note Classic/Delivery Note Classic.txt
diff --git a/erpnext/stock/Print Format/Delivery Note Modern/Delivery Note Modern.txt b/stock/Print Format/Delivery Note Modern/Delivery Note Modern.txt
similarity index 100%
rename from erpnext/stock/Print Format/Delivery Note Modern/Delivery Note Modern.txt
rename to stock/Print Format/Delivery Note Modern/Delivery Note Modern.txt
diff --git a/erpnext/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt b/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
similarity index 100%
rename from erpnext/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
rename to stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
diff --git a/erpnext/stock/Print Format/Delivery Note Spartan/Delivery Note Spartan.txt b/stock/Print Format/Delivery Note Spartan/Delivery Note Spartan.txt
similarity index 100%
rename from erpnext/stock/Print Format/Delivery Note Spartan/Delivery Note Spartan.txt
rename to stock/Print Format/Delivery Note Spartan/Delivery Note Spartan.txt
diff --git a/erpnext/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt b/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
similarity index 100%
rename from erpnext/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
rename to stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
diff --git a/erpnext/stock/__init__.py b/stock/__init__.py
similarity index 100%
rename from erpnext/stock/__init__.py
rename to stock/__init__.py
diff --git a/erpnext/stock/doctype/__init__.py b/stock/doctype/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/__init__.py
rename to stock/doctype/__init__.py
diff --git a/erpnext/stock/doctype/batch/__init__.py b/stock/doctype/batch/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/batch/__init__.py
rename to stock/doctype/batch/__init__.py
diff --git a/erpnext/stock/doctype/batch/batch.txt b/stock/doctype/batch/batch.txt
similarity index 100%
rename from erpnext/stock/doctype/batch/batch.txt
rename to stock/doctype/batch/batch.txt
diff --git a/erpnext/stock/doctype/batch/batch_list.js b/stock/doctype/batch/batch_list.js
similarity index 100%
rename from erpnext/stock/doctype/batch/batch_list.js
rename to stock/doctype/batch/batch_list.js
diff --git a/erpnext/stock/doctype/bin/__init__.py b/stock/doctype/bin/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/bin/__init__.py
rename to stock/doctype/bin/__init__.py
diff --git a/erpnext/stock/doctype/bin/bin.py b/stock/doctype/bin/bin.py
similarity index 100%
rename from erpnext/stock/doctype/bin/bin.py
rename to stock/doctype/bin/bin.py
diff --git a/erpnext/stock/doctype/bin/bin.txt b/stock/doctype/bin/bin.txt
similarity index 100%
rename from erpnext/stock/doctype/bin/bin.txt
rename to stock/doctype/bin/bin.txt
diff --git a/erpnext/stock/doctype/delivery_note/__init__.py b/stock/doctype/delivery_note/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/delivery_note/__init__.py
rename to stock/doctype/delivery_note/__init__.py
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.js b/stock/doctype/delivery_note/delivery_note.js
similarity index 100%
rename from erpnext/stock/doctype/delivery_note/delivery_note.js
rename to stock/doctype/delivery_note/delivery_note.js
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.py b/stock/doctype/delivery_note/delivery_note.py
similarity index 100%
rename from erpnext/stock/doctype/delivery_note/delivery_note.py
rename to stock/doctype/delivery_note/delivery_note.py
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.txt b/stock/doctype/delivery_note/delivery_note.txt
similarity index 100%
rename from erpnext/stock/doctype/delivery_note/delivery_note.txt
rename to stock/doctype/delivery_note/delivery_note.txt
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note_list.js b/stock/doctype/delivery_note/delivery_note_list.js
similarity index 100%
rename from erpnext/stock/doctype/delivery_note/delivery_note_list.js
rename to stock/doctype/delivery_note/delivery_note_list.js
diff --git a/erpnext/stock/doctype/delivery_note_item/__init__.py b/stock/doctype/delivery_note_item/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/delivery_note_item/__init__.py
rename to stock/doctype/delivery_note_item/__init__.py
diff --git a/erpnext/stock/doctype/delivery_note_item/delivery_note_item.txt b/stock/doctype/delivery_note_item/delivery_note_item.txt
similarity index 100%
rename from erpnext/stock/doctype/delivery_note_item/delivery_note_item.txt
rename to stock/doctype/delivery_note_item/delivery_note_item.txt
diff --git a/erpnext/stock/doctype/delivery_note_packing_item/__init__.py b/stock/doctype/delivery_note_packing_item/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/delivery_note_packing_item/__init__.py
rename to stock/doctype/delivery_note_packing_item/__init__.py
diff --git a/erpnext/stock/doctype/delivery_note_packing_item/delivery_note_packing_item.txt b/stock/doctype/delivery_note_packing_item/delivery_note_packing_item.txt
similarity index 100%
rename from erpnext/stock/doctype/delivery_note_packing_item/delivery_note_packing_item.txt
rename to stock/doctype/delivery_note_packing_item/delivery_note_packing_item.txt
diff --git a/erpnext/stock/doctype/item/__init__.py b/stock/doctype/item/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/item/__init__.py
rename to stock/doctype/item/__init__.py
diff --git a/erpnext/stock/doctype/item/item.js b/stock/doctype/item/item.js
similarity index 100%
rename from erpnext/stock/doctype/item/item.js
rename to stock/doctype/item/item.js
diff --git a/erpnext/stock/doctype/item/item.py b/stock/doctype/item/item.py
similarity index 100%
rename from erpnext/stock/doctype/item/item.py
rename to stock/doctype/item/item.py
diff --git a/erpnext/stock/doctype/item/item.txt b/stock/doctype/item/item.txt
similarity index 100%
rename from erpnext/stock/doctype/item/item.txt
rename to stock/doctype/item/item.txt
diff --git a/erpnext/stock/doctype/item/item_list.js b/stock/doctype/item/item_list.js
similarity index 100%
rename from erpnext/stock/doctype/item/item_list.js
rename to stock/doctype/item/item_list.js
diff --git a/erpnext/stock/doctype/item/test_item.py b/stock/doctype/item/test_item.py
similarity index 100%
rename from erpnext/stock/doctype/item/test_item.py
rename to stock/doctype/item/test_item.py
diff --git a/erpnext/stock/doctype/item_customer_detail/__init__.py b/stock/doctype/item_customer_detail/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/item_customer_detail/__init__.py
rename to stock/doctype/item_customer_detail/__init__.py
diff --git a/erpnext/stock/doctype/item_customer_detail/item_customer_detail.txt b/stock/doctype/item_customer_detail/item_customer_detail.txt
similarity index 100%
rename from erpnext/stock/doctype/item_customer_detail/item_customer_detail.txt
rename to stock/doctype/item_customer_detail/item_customer_detail.txt
diff --git a/erpnext/stock/doctype/item_price/__init__.py b/stock/doctype/item_price/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/item_price/__init__.py
rename to stock/doctype/item_price/__init__.py
diff --git a/erpnext/stock/doctype/item_price/item_price.txt b/stock/doctype/item_price/item_price.txt
similarity index 100%
rename from erpnext/stock/doctype/item_price/item_price.txt
rename to stock/doctype/item_price/item_price.txt
diff --git a/erpnext/stock/doctype/item_quality_inspection_parameter/__init__.py b/stock/doctype/item_quality_inspection_parameter/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/item_quality_inspection_parameter/__init__.py
rename to stock/doctype/item_quality_inspection_parameter/__init__.py
diff --git a/erpnext/stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.txt b/stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.txt
similarity index 100%
rename from erpnext/stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.txt
rename to stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.txt
diff --git a/erpnext/stock/doctype/item_supplier/__init__.py b/stock/doctype/item_supplier/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/item_supplier/__init__.py
rename to stock/doctype/item_supplier/__init__.py
diff --git a/erpnext/stock/doctype/item_supplier/item_supplier.txt b/stock/doctype/item_supplier/item_supplier.txt
similarity index 100%
rename from erpnext/stock/doctype/item_supplier/item_supplier.txt
rename to stock/doctype/item_supplier/item_supplier.txt
diff --git a/erpnext/stock/doctype/item_tax/__init__.py b/stock/doctype/item_tax/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/item_tax/__init__.py
rename to stock/doctype/item_tax/__init__.py
diff --git a/erpnext/stock/doctype/item_tax/item_tax.txt b/stock/doctype/item_tax/item_tax.txt
similarity index 100%
rename from erpnext/stock/doctype/item_tax/item_tax.txt
rename to stock/doctype/item_tax/item_tax.txt
diff --git a/erpnext/stock/doctype/landed_cost_item/__init__.py b/stock/doctype/landed_cost_item/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_item/__init__.py
rename to stock/doctype/landed_cost_item/__init__.py
diff --git a/erpnext/stock/doctype/landed_cost_item/landed_cost_item.txt b/stock/doctype/landed_cost_item/landed_cost_item.txt
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_item/landed_cost_item.txt
rename to stock/doctype/landed_cost_item/landed_cost_item.txt
diff --git a/erpnext/stock/doctype/landed_cost_master/__init__.py b/stock/doctype/landed_cost_master/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_master/__init__.py
rename to stock/doctype/landed_cost_master/__init__.py
diff --git a/erpnext/stock/doctype/landed_cost_master/landed_cost_master.js b/stock/doctype/landed_cost_master/landed_cost_master.js
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_master/landed_cost_master.js
rename to stock/doctype/landed_cost_master/landed_cost_master.js
diff --git a/erpnext/stock/doctype/landed_cost_master/landed_cost_master.txt b/stock/doctype/landed_cost_master/landed_cost_master.txt
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_master/landed_cost_master.txt
rename to stock/doctype/landed_cost_master/landed_cost_master.txt
diff --git a/erpnext/stock/doctype/landed_cost_master_detail/__init__.py b/stock/doctype/landed_cost_master_detail/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_master_detail/__init__.py
rename to stock/doctype/landed_cost_master_detail/__init__.py
diff --git a/erpnext/stock/doctype/landed_cost_master_detail/landed_cost_master_detail.txt b/stock/doctype/landed_cost_master_detail/landed_cost_master_detail.txt
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_master_detail/landed_cost_master_detail.txt
rename to stock/doctype/landed_cost_master_detail/landed_cost_master_detail.txt
diff --git a/erpnext/stock/doctype/landed_cost_purchase_receipt/__init__.py b/stock/doctype/landed_cost_purchase_receipt/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_purchase_receipt/__init__.py
rename to stock/doctype/landed_cost_purchase_receipt/__init__.py
diff --git a/erpnext/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.txt b/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.txt
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.txt
rename to stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.txt
diff --git a/erpnext/stock/doctype/landed_cost_wizard/__init__.py b/stock/doctype/landed_cost_wizard/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_wizard/__init__.py
rename to stock/doctype/landed_cost_wizard/__init__.py
diff --git a/erpnext/stock/doctype/landed_cost_wizard/landed_cost_wizard.js b/stock/doctype/landed_cost_wizard/landed_cost_wizard.js
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_wizard/landed_cost_wizard.js
rename to stock/doctype/landed_cost_wizard/landed_cost_wizard.js
diff --git a/erpnext/stock/doctype/landed_cost_wizard/landed_cost_wizard.py b/stock/doctype/landed_cost_wizard/landed_cost_wizard.py
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_wizard/landed_cost_wizard.py
rename to stock/doctype/landed_cost_wizard/landed_cost_wizard.py
diff --git a/erpnext/stock/doctype/landed_cost_wizard/landed_cost_wizard.txt b/stock/doctype/landed_cost_wizard/landed_cost_wizard.txt
similarity index 100%
rename from erpnext/stock/doctype/landed_cost_wizard/landed_cost_wizard.txt
rename to stock/doctype/landed_cost_wizard/landed_cost_wizard.txt
diff --git a/erpnext/stock/doctype/packing_slip/__init__.py b/stock/doctype/packing_slip/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/packing_slip/__init__.py
rename to stock/doctype/packing_slip/__init__.py
diff --git a/erpnext/stock/doctype/packing_slip/packing_slip.js b/stock/doctype/packing_slip/packing_slip.js
similarity index 100%
rename from erpnext/stock/doctype/packing_slip/packing_slip.js
rename to stock/doctype/packing_slip/packing_slip.js
diff --git a/erpnext/stock/doctype/packing_slip/packing_slip.py b/stock/doctype/packing_slip/packing_slip.py
similarity index 100%
rename from erpnext/stock/doctype/packing_slip/packing_slip.py
rename to stock/doctype/packing_slip/packing_slip.py
diff --git a/erpnext/stock/doctype/packing_slip/packing_slip.txt b/stock/doctype/packing_slip/packing_slip.txt
similarity index 100%
rename from erpnext/stock/doctype/packing_slip/packing_slip.txt
rename to stock/doctype/packing_slip/packing_slip.txt
diff --git a/erpnext/stock/doctype/packing_slip_item/__init__.py b/stock/doctype/packing_slip_item/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/packing_slip_item/__init__.py
rename to stock/doctype/packing_slip_item/__init__.py
diff --git a/erpnext/stock/doctype/packing_slip_item/packing_slip_item.py b/stock/doctype/packing_slip_item/packing_slip_item.py
similarity index 100%
rename from erpnext/stock/doctype/packing_slip_item/packing_slip_item.py
rename to stock/doctype/packing_slip_item/packing_slip_item.py
diff --git a/erpnext/stock/doctype/packing_slip_item/packing_slip_item.txt b/stock/doctype/packing_slip_item/packing_slip_item.txt
similarity index 100%
rename from erpnext/stock/doctype/packing_slip_item/packing_slip_item.txt
rename to stock/doctype/packing_slip_item/packing_slip_item.txt
diff --git a/erpnext/stock/doctype/purchase_receipt/__init__.py b/stock/doctype/purchase_receipt/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/purchase_receipt/__init__.py
rename to stock/doctype/purchase_receipt/__init__.py
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js b/stock/doctype/purchase_receipt/purchase_receipt.js
similarity index 100%
rename from erpnext/stock/doctype/purchase_receipt/purchase_receipt.js
rename to stock/doctype/purchase_receipt/purchase_receipt.js
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/stock/doctype/purchase_receipt/purchase_receipt.py
similarity index 100%
rename from erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
rename to stock/doctype/purchase_receipt/purchase_receipt.py
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.txt b/stock/doctype/purchase_receipt/purchase_receipt.txt
similarity index 100%
rename from erpnext/stock/doctype/purchase_receipt/purchase_receipt.txt
rename to stock/doctype/purchase_receipt/purchase_receipt.txt
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt_list.js b/stock/doctype/purchase_receipt/purchase_receipt_list.js
similarity index 100%
rename from erpnext/stock/doctype/purchase_receipt/purchase_receipt_list.js
rename to stock/doctype/purchase_receipt/purchase_receipt_list.js
diff --git a/erpnext/stock/doctype/purchase_receipt_item/__init__.py b/stock/doctype/purchase_receipt_item/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/purchase_receipt_item/__init__.py
rename to stock/doctype/purchase_receipt_item/__init__.py
diff --git a/erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.txt b/stock/doctype/purchase_receipt_item/purchase_receipt_item.txt
similarity index 100%
rename from erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.txt
rename to stock/doctype/purchase_receipt_item/purchase_receipt_item.txt
diff --git a/erpnext/stock/doctype/sales_and_purchase_return_tool/__init__.py b/stock/doctype/sales_and_purchase_return_tool/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/sales_and_purchase_return_tool/__init__.py
rename to stock/doctype/sales_and_purchase_return_tool/__init__.py
diff --git a/erpnext/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.js b/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.js
similarity index 100%
rename from erpnext/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.js
rename to stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.js
diff --git a/erpnext/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.py b/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.py
similarity index 100%
rename from erpnext/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.py
rename to stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.py
diff --git a/erpnext/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.txt b/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.txt
similarity index 100%
rename from erpnext/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.txt
rename to stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.txt
diff --git a/erpnext/stock/doctype/sales_bom/__init__.py b/stock/doctype/sales_bom/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/sales_bom/__init__.py
rename to stock/doctype/sales_bom/__init__.py
diff --git a/erpnext/stock/doctype/sales_bom/sales_bom.js b/stock/doctype/sales_bom/sales_bom.js
similarity index 100%
rename from erpnext/stock/doctype/sales_bom/sales_bom.js
rename to stock/doctype/sales_bom/sales_bom.js
diff --git a/erpnext/stock/doctype/sales_bom/sales_bom.py b/stock/doctype/sales_bom/sales_bom.py
similarity index 100%
rename from erpnext/stock/doctype/sales_bom/sales_bom.py
rename to stock/doctype/sales_bom/sales_bom.py
diff --git a/erpnext/stock/doctype/sales_bom/sales_bom.txt b/stock/doctype/sales_bom/sales_bom.txt
similarity index 100%
rename from erpnext/stock/doctype/sales_bom/sales_bom.txt
rename to stock/doctype/sales_bom/sales_bom.txt
diff --git a/erpnext/stock/doctype/sales_bom_item/__init__.py b/stock/doctype/sales_bom_item/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/sales_bom_item/__init__.py
rename to stock/doctype/sales_bom_item/__init__.py
diff --git a/erpnext/stock/doctype/sales_bom_item/sales_bom_item.txt b/stock/doctype/sales_bom_item/sales_bom_item.txt
similarity index 100%
rename from erpnext/stock/doctype/sales_bom_item/sales_bom_item.txt
rename to stock/doctype/sales_bom_item/sales_bom_item.txt
diff --git a/erpnext/stock/doctype/serial_no/__init__.py b/stock/doctype/serial_no/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/serial_no/__init__.py
rename to stock/doctype/serial_no/__init__.py
diff --git a/erpnext/stock/doctype/serial_no/serial_no.js b/stock/doctype/serial_no/serial_no.js
similarity index 100%
rename from erpnext/stock/doctype/serial_no/serial_no.js
rename to stock/doctype/serial_no/serial_no.js
diff --git a/erpnext/stock/doctype/serial_no/serial_no.py b/stock/doctype/serial_no/serial_no.py
similarity index 100%
rename from erpnext/stock/doctype/serial_no/serial_no.py
rename to stock/doctype/serial_no/serial_no.py
diff --git a/erpnext/stock/doctype/serial_no/serial_no.txt b/stock/doctype/serial_no/serial_no.txt
similarity index 100%
rename from erpnext/stock/doctype/serial_no/serial_no.txt
rename to stock/doctype/serial_no/serial_no.txt
diff --git a/erpnext/stock/doctype/serial_no/serial_no_list.js b/stock/doctype/serial_no/serial_no_list.js
similarity index 100%
rename from erpnext/stock/doctype/serial_no/serial_no_list.js
rename to stock/doctype/serial_no/serial_no_list.js
diff --git a/erpnext/stock/doctype/stock_entry/__init__.py b/stock/doctype/stock_entry/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/stock_entry/__init__.py
rename to stock/doctype/stock_entry/__init__.py
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.js b/stock/doctype/stock_entry/stock_entry.js
similarity index 100%
rename from erpnext/stock/doctype/stock_entry/stock_entry.js
rename to stock/doctype/stock_entry/stock_entry.js
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.py b/stock/doctype/stock_entry/stock_entry.py
similarity index 100%
rename from erpnext/stock/doctype/stock_entry/stock_entry.py
rename to stock/doctype/stock_entry/stock_entry.py
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.txt b/stock/doctype/stock_entry/stock_entry.txt
similarity index 100%
rename from erpnext/stock/doctype/stock_entry/stock_entry.txt
rename to stock/doctype/stock_entry/stock_entry.txt
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry_list.js b/stock/doctype/stock_entry/stock_entry_list.js
similarity index 100%
rename from erpnext/stock/doctype/stock_entry/stock_entry_list.js
rename to stock/doctype/stock_entry/stock_entry_list.js
diff --git a/erpnext/stock/doctype/stock_entry_detail/__init__.py b/stock/doctype/stock_entry_detail/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/stock_entry_detail/__init__.py
rename to stock/doctype/stock_entry_detail/__init__.py
diff --git a/erpnext/stock/doctype/stock_entry_detail/stock_entry_detail.txt b/stock/doctype/stock_entry_detail/stock_entry_detail.txt
similarity index 100%
rename from erpnext/stock/doctype/stock_entry_detail/stock_entry_detail.txt
rename to stock/doctype/stock_entry_detail/stock_entry_detail.txt
diff --git a/erpnext/stock/doctype/stock_ledger/__init__.py b/stock/doctype/stock_ledger/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/stock_ledger/__init__.py
rename to stock/doctype/stock_ledger/__init__.py
diff --git a/erpnext/stock/doctype/stock_ledger/stock_ledger.py b/stock/doctype/stock_ledger/stock_ledger.py
similarity index 100%
rename from erpnext/stock/doctype/stock_ledger/stock_ledger.py
rename to stock/doctype/stock_ledger/stock_ledger.py
diff --git a/erpnext/stock/doctype/stock_ledger/stock_ledger.txt b/stock/doctype/stock_ledger/stock_ledger.txt
similarity index 100%
rename from erpnext/stock/doctype/stock_ledger/stock_ledger.txt
rename to stock/doctype/stock_ledger/stock_ledger.txt
diff --git a/erpnext/stock/doctype/stock_ledger_entry/__init__.py b/stock/doctype/stock_ledger_entry/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/stock_ledger_entry/__init__.py
rename to stock/doctype/stock_ledger_entry/__init__.py
diff --git a/erpnext/stock/doctype/stock_ledger_entry/stock_ledger_entry.py b/stock/doctype/stock_ledger_entry/stock_ledger_entry.py
similarity index 100%
rename from erpnext/stock/doctype/stock_ledger_entry/stock_ledger_entry.py
rename to stock/doctype/stock_ledger_entry/stock_ledger_entry.py
diff --git a/erpnext/stock/doctype/stock_ledger_entry/stock_ledger_entry.txt b/stock/doctype/stock_ledger_entry/stock_ledger_entry.txt
similarity index 100%
rename from erpnext/stock/doctype/stock_ledger_entry/stock_ledger_entry.txt
rename to stock/doctype/stock_ledger_entry/stock_ledger_entry.txt
diff --git a/erpnext/stock/doctype/stock_reconciliation/__init__.py b/stock/doctype/stock_reconciliation/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/stock_reconciliation/__init__.py
rename to stock/doctype/stock_reconciliation/__init__.py
diff --git a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.js b/stock/doctype/stock_reconciliation/stock_reconciliation.js
similarity index 100%
rename from erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.js
rename to stock/doctype/stock_reconciliation/stock_reconciliation.js
diff --git a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py b/stock/doctype/stock_reconciliation/stock_reconciliation.py
similarity index 100%
rename from erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
rename to stock/doctype/stock_reconciliation/stock_reconciliation.py
diff --git a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.txt b/stock/doctype/stock_reconciliation/stock_reconciliation.txt
similarity index 100%
rename from erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.txt
rename to stock/doctype/stock_reconciliation/stock_reconciliation.txt
diff --git a/erpnext/stock/doctype/stock_uom_replace_utility/__init__.py b/stock/doctype/stock_uom_replace_utility/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/stock_uom_replace_utility/__init__.py
rename to stock/doctype/stock_uom_replace_utility/__init__.py
diff --git a/erpnext/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.js b/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.js
similarity index 100%
rename from erpnext/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.js
rename to stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.js
diff --git a/erpnext/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.py b/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.py
similarity index 100%
rename from erpnext/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.py
rename to stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.py
diff --git a/erpnext/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.txt b/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.txt
similarity index 100%
rename from erpnext/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.txt
rename to stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.txt
diff --git a/erpnext/stock/doctype/uom_conversion_detail/__init__.py b/stock/doctype/uom_conversion_detail/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/uom_conversion_detail/__init__.py
rename to stock/doctype/uom_conversion_detail/__init__.py
diff --git a/erpnext/stock/doctype/uom_conversion_detail/uom_conversion_detail.txt b/stock/doctype/uom_conversion_detail/uom_conversion_detail.txt
similarity index 100%
rename from erpnext/stock/doctype/uom_conversion_detail/uom_conversion_detail.txt
rename to stock/doctype/uom_conversion_detail/uom_conversion_detail.txt
diff --git a/erpnext/stock/doctype/valuation_control/__init__.py b/stock/doctype/valuation_control/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/valuation_control/__init__.py
rename to stock/doctype/valuation_control/__init__.py
diff --git a/erpnext/stock/doctype/valuation_control/valuation_control.py b/stock/doctype/valuation_control/valuation_control.py
similarity index 100%
rename from erpnext/stock/doctype/valuation_control/valuation_control.py
rename to stock/doctype/valuation_control/valuation_control.py
diff --git a/erpnext/stock/doctype/valuation_control/valuation_control.py~ b/stock/doctype/valuation_control/valuation_control.py~
similarity index 100%
rename from erpnext/stock/doctype/valuation_control/valuation_control.py~
rename to stock/doctype/valuation_control/valuation_control.py~
diff --git a/erpnext/stock/doctype/valuation_control/valuation_control.txt b/stock/doctype/valuation_control/valuation_control.txt
similarity index 100%
rename from erpnext/stock/doctype/valuation_control/valuation_control.txt
rename to stock/doctype/valuation_control/valuation_control.txt
diff --git a/erpnext/stock/doctype/warehouse/__init__.py b/stock/doctype/warehouse/__init__.py
similarity index 100%
rename from erpnext/stock/doctype/warehouse/__init__.py
rename to stock/doctype/warehouse/__init__.py
diff --git a/erpnext/stock/doctype/warehouse/warehouse.js b/stock/doctype/warehouse/warehouse.js
similarity index 100%
rename from erpnext/stock/doctype/warehouse/warehouse.js
rename to stock/doctype/warehouse/warehouse.js
diff --git a/erpnext/stock/doctype/warehouse/warehouse.py b/stock/doctype/warehouse/warehouse.py
similarity index 100%
rename from erpnext/stock/doctype/warehouse/warehouse.py
rename to stock/doctype/warehouse/warehouse.py
diff --git a/erpnext/stock/doctype/warehouse/warehouse.txt b/stock/doctype/warehouse/warehouse.txt
similarity index 100%
rename from erpnext/stock/doctype/warehouse/warehouse.txt
rename to stock/doctype/warehouse/warehouse.txt
diff --git a/erpnext/stock/doctype/warehouse/warehouse_list.js b/stock/doctype/warehouse/warehouse_list.js
similarity index 100%
rename from erpnext/stock/doctype/warehouse/warehouse_list.js
rename to stock/doctype/warehouse/warehouse_list.js
diff --git a/erpnext/stock/page/__init__.py b/stock/page/__init__.py
similarity index 100%
rename from erpnext/stock/page/__init__.py
rename to stock/page/__init__.py
diff --git a/erpnext/stock/page/stock_ageing/__init__.py b/stock/page/stock_ageing/__init__.py
similarity index 100%
rename from erpnext/stock/page/stock_ageing/__init__.py
rename to stock/page/stock_ageing/__init__.py
diff --git a/erpnext/stock/page/stock_ageing/stock_ageing.js b/stock/page/stock_ageing/stock_ageing.js
similarity index 98%
rename from erpnext/stock/page/stock_ageing/stock_ageing.js
rename to stock/page/stock_ageing/stock_ageing.js
index 39c2613..3295700 100644
--- a/erpnext/stock/page/stock_ageing/stock_ageing.js
+++ b/stock/page/stock_ageing/stock_ageing.js
@@ -26,7 +26,7 @@
 	
 }
 
-wn.require("js/app/stock_grid_report.js");
+wn.require("app/js/stock_grid_report.js");
 
 erpnext.StockAgeing = erpnext.StockGridReport.extend({
 	init: function(wrapper) {
diff --git a/erpnext/stock/page/stock_ageing/stock_ageing.txt b/stock/page/stock_ageing/stock_ageing.txt
similarity index 100%
rename from erpnext/stock/page/stock_ageing/stock_ageing.txt
rename to stock/page/stock_ageing/stock_ageing.txt
diff --git a/erpnext/stock/page/stock_analytics/__init__.py b/stock/page/stock_analytics/__init__.py
similarity index 100%
rename from erpnext/stock/page/stock_analytics/__init__.py
rename to stock/page/stock_analytics/__init__.py
diff --git a/erpnext/stock/page/stock_analytics/stock_analytics.js b/stock/page/stock_analytics/stock_analytics.js
similarity index 98%
rename from erpnext/stock/page/stock_analytics/stock_analytics.js
rename to stock/page/stock_analytics/stock_analytics.js
index 1989043..9b0309f 100644
--- a/erpnext/stock/page/stock_analytics/stock_analytics.js
+++ b/stock/page/stock_analytics/stock_analytics.js
@@ -24,7 +24,7 @@
 	new erpnext.StockAnalytics(wrapper);
 }
 
-wn.require("js/app/stock_grid_report.js");
+wn.require("app/js/stock_grid_report.js");
 
 erpnext.StockAnalytics = erpnext.StockGridReport.extend({
 	init: function(wrapper) {
diff --git a/erpnext/stock/page/stock_analytics/stock_analytics.txt b/stock/page/stock_analytics/stock_analytics.txt
similarity index 100%
rename from erpnext/stock/page/stock_analytics/stock_analytics.txt
rename to stock/page/stock_analytics/stock_analytics.txt
diff --git a/erpnext/stock/page/stock_home/__init__.py b/stock/page/stock_home/__init__.py
similarity index 100%
rename from erpnext/stock/page/stock_home/__init__.py
rename to stock/page/stock_home/__init__.py
diff --git a/erpnext/stock/page/stock_home/stock_home.html b/stock/page/stock_home/stock_home.html
similarity index 100%
rename from erpnext/stock/page/stock_home/stock_home.html
rename to stock/page/stock_home/stock_home.html
diff --git a/erpnext/stock/page/stock_home/stock_home.js b/stock/page/stock_home/stock_home.js
similarity index 100%
rename from erpnext/stock/page/stock_home/stock_home.js
rename to stock/page/stock_home/stock_home.js
diff --git a/erpnext/stock/page/stock_home/stock_home.txt b/stock/page/stock_home/stock_home.txt
similarity index 100%
rename from erpnext/stock/page/stock_home/stock_home.txt
rename to stock/page/stock_home/stock_home.txt
diff --git a/erpnext/stock/page/stock_ledger/__init__.py b/stock/page/stock_ledger/__init__.py
similarity index 100%
rename from erpnext/stock/page/stock_ledger/__init__.py
rename to stock/page/stock_ledger/__init__.py
diff --git a/erpnext/stock/page/stock_ledger/stock_ledger.js b/stock/page/stock_ledger/stock_ledger.js
similarity index 99%
rename from erpnext/stock/page/stock_ledger/stock_ledger.js
rename to stock/page/stock_ledger/stock_ledger.js
index f3b7a66..a930c23 100644
--- a/erpnext/stock/page/stock_ledger/stock_ledger.js
+++ b/stock/page/stock_ledger/stock_ledger.js
@@ -24,7 +24,7 @@
 	new erpnext.StockLedger(wrapper);
 }
 
-wn.require("js/app/stock_grid_report.js");
+wn.require("app/js/stock_grid_report.js");
 
 erpnext.StockLedger = erpnext.StockGridReport.extend({
 	init: function(wrapper) {
diff --git a/erpnext/stock/page/stock_ledger/stock_ledger.txt b/stock/page/stock_ledger/stock_ledger.txt
similarity index 100%
rename from erpnext/stock/page/stock_ledger/stock_ledger.txt
rename to stock/page/stock_ledger/stock_ledger.txt
diff --git a/erpnext/stock/report/stock_ledger/stock_ledger.txt b/stock/report/stock_ledger/stock_ledger.txt
similarity index 100%
rename from erpnext/stock/report/stock_ledger/stock_ledger.txt
rename to stock/report/stock_ledger/stock_ledger.txt
diff --git a/erpnext/stock/search_criteria/__init__.py b/stock/search_criteria/__init__.py
similarity index 100%
rename from erpnext/stock/search_criteria/__init__.py
rename to stock/search_criteria/__init__.py
diff --git a/erpnext/stock/search_criteria/itemwise_price_list/__init__.py b/stock/search_criteria/itemwise_price_list/__init__.py
similarity index 100%
rename from erpnext/stock/search_criteria/itemwise_price_list/__init__.py
rename to stock/search_criteria/itemwise_price_list/__init__.py
diff --git a/erpnext/stock/search_criteria/itemwise_price_list/itemwise_price_list.js b/stock/search_criteria/itemwise_price_list/itemwise_price_list.js
similarity index 100%
rename from erpnext/stock/search_criteria/itemwise_price_list/itemwise_price_list.js
rename to stock/search_criteria/itemwise_price_list/itemwise_price_list.js
diff --git a/erpnext/stock/search_criteria/itemwise_price_list/itemwise_price_list.txt b/stock/search_criteria/itemwise_price_list/itemwise_price_list.txt
similarity index 100%
rename from erpnext/stock/search_criteria/itemwise_price_list/itemwise_price_list.txt
rename to stock/search_criteria/itemwise_price_list/itemwise_price_list.txt
diff --git a/erpnext/stock/search_criteria/itemwise_receipt_details/__init__.py b/stock/search_criteria/itemwise_receipt_details/__init__.py
similarity index 100%
rename from erpnext/stock/search_criteria/itemwise_receipt_details/__init__.py
rename to stock/search_criteria/itemwise_receipt_details/__init__.py
diff --git a/erpnext/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.js b/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.js
similarity index 100%
rename from erpnext/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.js
rename to stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.js
diff --git a/erpnext/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt b/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
similarity index 100%
rename from erpnext/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
rename to stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
diff --git a/erpnext/stock/search_criteria/shortage_to_purchase_request/__init__.py b/stock/search_criteria/shortage_to_purchase_request/__init__.py
similarity index 100%
rename from erpnext/stock/search_criteria/shortage_to_purchase_request/__init__.py
rename to stock/search_criteria/shortage_to_purchase_request/__init__.py
diff --git a/erpnext/stock/search_criteria/shortage_to_purchase_request/shortage_to_purchase_request.txt b/stock/search_criteria/shortage_to_purchase_request/shortage_to_purchase_request.txt
similarity index 100%
rename from erpnext/stock/search_criteria/shortage_to_purchase_request/shortage_to_purchase_request.txt
rename to stock/search_criteria/shortage_to_purchase_request/shortage_to_purchase_request.txt
diff --git a/erpnext/stock/search_criteria/stock_aging_report/__init__.py b/stock/search_criteria/stock_aging_report/__init__.py
similarity index 100%
rename from erpnext/stock/search_criteria/stock_aging_report/__init__.py
rename to stock/search_criteria/stock_aging_report/__init__.py
diff --git a/erpnext/stock/search_criteria/stock_aging_report/stock_aging_report.js b/stock/search_criteria/stock_aging_report/stock_aging_report.js
similarity index 100%
rename from erpnext/stock/search_criteria/stock_aging_report/stock_aging_report.js
rename to stock/search_criteria/stock_aging_report/stock_aging_report.js
diff --git a/erpnext/stock/search_criteria/stock_aging_report/stock_aging_report.py b/stock/search_criteria/stock_aging_report/stock_aging_report.py
similarity index 100%
rename from erpnext/stock/search_criteria/stock_aging_report/stock_aging_report.py
rename to stock/search_criteria/stock_aging_report/stock_aging_report.py
diff --git a/erpnext/stock/search_criteria/stock_aging_report/stock_aging_report.txt b/stock/search_criteria/stock_aging_report/stock_aging_report.txt
similarity index 100%
rename from erpnext/stock/search_criteria/stock_aging_report/stock_aging_report.txt
rename to stock/search_criteria/stock_aging_report/stock_aging_report.txt
diff --git a/erpnext/stock/search_criteria/stock_ledger/__init__.py b/stock/search_criteria/stock_ledger/__init__.py
similarity index 100%
rename from erpnext/stock/search_criteria/stock_ledger/__init__.py
rename to stock/search_criteria/stock_ledger/__init__.py
diff --git a/erpnext/stock/search_criteria/stock_ledger/stock_ledger.js b/stock/search_criteria/stock_ledger/stock_ledger.js
similarity index 100%
rename from erpnext/stock/search_criteria/stock_ledger/stock_ledger.js
rename to stock/search_criteria/stock_ledger/stock_ledger.js
diff --git a/erpnext/stock/search_criteria/stock_ledger/stock_ledger.txt b/stock/search_criteria/stock_ledger/stock_ledger.txt
similarity index 100%
rename from erpnext/stock/search_criteria/stock_ledger/stock_ledger.txt
rename to stock/search_criteria/stock_ledger/stock_ledger.txt
diff --git a/erpnext/stock/search_criteria/stock_level/__init__.py b/stock/search_criteria/stock_level/__init__.py
similarity index 100%
rename from erpnext/stock/search_criteria/stock_level/__init__.py
rename to stock/search_criteria/stock_level/__init__.py
diff --git a/erpnext/stock/search_criteria/stock_level/stock_level.js b/stock/search_criteria/stock_level/stock_level.js
similarity index 100%
rename from erpnext/stock/search_criteria/stock_level/stock_level.js
rename to stock/search_criteria/stock_level/stock_level.js
diff --git a/erpnext/stock/search_criteria/stock_level/stock_level.py b/stock/search_criteria/stock_level/stock_level.py
similarity index 100%
rename from erpnext/stock/search_criteria/stock_level/stock_level.py
rename to stock/search_criteria/stock_level/stock_level.py
diff --git a/erpnext/stock/search_criteria/stock_level/stock_level.txt b/stock/search_criteria/stock_level/stock_level.txt
similarity index 100%
rename from erpnext/stock/search_criteria/stock_level/stock_level.txt
rename to stock/search_criteria/stock_level/stock_level.txt
diff --git a/erpnext/stock/search_criteria/stock_report/__init__.py b/stock/search_criteria/stock_report/__init__.py
similarity index 100%
rename from erpnext/stock/search_criteria/stock_report/__init__.py
rename to stock/search_criteria/stock_report/__init__.py
diff --git a/erpnext/stock/search_criteria/stock_report/stock_report.js b/stock/search_criteria/stock_report/stock_report.js
similarity index 100%
rename from erpnext/stock/search_criteria/stock_report/stock_report.js
rename to stock/search_criteria/stock_report/stock_report.js
diff --git a/erpnext/stock/search_criteria/stock_report/stock_report.py b/stock/search_criteria/stock_report/stock_report.py
similarity index 100%
rename from erpnext/stock/search_criteria/stock_report/stock_report.py
rename to stock/search_criteria/stock_report/stock_report.py
diff --git a/erpnext/stock/search_criteria/stock_report/stock_report.txt b/stock/search_criteria/stock_report/stock_report.txt
similarity index 100%
rename from erpnext/stock/search_criteria/stock_report/stock_report.txt
rename to stock/search_criteria/stock_report/stock_report.txt
diff --git a/erpnext/stock/tests.py b/stock/tests.py
similarity index 100%
rename from erpnext/stock/tests.py
rename to stock/tests.py
diff --git a/erpnext/support/DocType Mapper/Customer Issue-Maintenance Visit/Customer Issue-Maintenance Visit.txt b/support/DocType Mapper/Customer Issue-Maintenance Visit/Customer Issue-Maintenance Visit.txt
similarity index 100%
rename from erpnext/support/DocType Mapper/Customer Issue-Maintenance Visit/Customer Issue-Maintenance Visit.txt
rename to support/DocType Mapper/Customer Issue-Maintenance Visit/Customer Issue-Maintenance Visit.txt
diff --git a/erpnext/support/DocType Mapper/Maintenance Schedule-Maintenance Visit/Maintenance Schedule-Maintenance Visit.txt b/support/DocType Mapper/Maintenance Schedule-Maintenance Visit/Maintenance Schedule-Maintenance Visit.txt
similarity index 100%
rename from erpnext/support/DocType Mapper/Maintenance Schedule-Maintenance Visit/Maintenance Schedule-Maintenance Visit.txt
rename to support/DocType Mapper/Maintenance Schedule-Maintenance Visit/Maintenance Schedule-Maintenance Visit.txt
diff --git a/erpnext/support/DocType Mapper/Sales Order-Maintenance Schedule/Sales Order-Maintenance Schedule.txt b/support/DocType Mapper/Sales Order-Maintenance Schedule/Sales Order-Maintenance Schedule.txt
similarity index 100%
rename from erpnext/support/DocType Mapper/Sales Order-Maintenance Schedule/Sales Order-Maintenance Schedule.txt
rename to support/DocType Mapper/Sales Order-Maintenance Schedule/Sales Order-Maintenance Schedule.txt
diff --git a/erpnext/support/DocType Mapper/Sales Order-Maintenance Visit/Sales Order-Maintenance Visit.txt b/support/DocType Mapper/Sales Order-Maintenance Visit/Sales Order-Maintenance Visit.txt
similarity index 100%
rename from erpnext/support/DocType Mapper/Sales Order-Maintenance Visit/Sales Order-Maintenance Visit.txt
rename to support/DocType Mapper/Sales Order-Maintenance Visit/Sales Order-Maintenance Visit.txt
diff --git a/erpnext/support/__init__.py b/support/__init__.py
similarity index 100%
rename from erpnext/support/__init__.py
rename to support/__init__.py
diff --git a/erpnext/support/doctype/__init__.py b/support/doctype/__init__.py
similarity index 100%
rename from erpnext/support/doctype/__init__.py
rename to support/doctype/__init__.py
diff --git a/erpnext/support/doctype/communication/__init__.py b/support/doctype/communication/__init__.py
similarity index 100%
rename from erpnext/support/doctype/communication/__init__.py
rename to support/doctype/communication/__init__.py
diff --git a/erpnext/support/doctype/communication/communication.js b/support/doctype/communication/communication.js
similarity index 100%
rename from erpnext/support/doctype/communication/communication.js
rename to support/doctype/communication/communication.js
diff --git a/erpnext/support/doctype/communication/communication.py b/support/doctype/communication/communication.py
similarity index 100%
rename from erpnext/support/doctype/communication/communication.py
rename to support/doctype/communication/communication.py
diff --git a/erpnext/support/doctype/communication/communication.txt b/support/doctype/communication/communication.txt
similarity index 100%
rename from erpnext/support/doctype/communication/communication.txt
rename to support/doctype/communication/communication.txt
diff --git a/erpnext/support/doctype/communication/communication_list.js b/support/doctype/communication/communication_list.js
similarity index 100%
rename from erpnext/support/doctype/communication/communication_list.js
rename to support/doctype/communication/communication_list.js
diff --git a/erpnext/support/doctype/customer_issue/__init__.py b/support/doctype/customer_issue/__init__.py
similarity index 100%
rename from erpnext/support/doctype/customer_issue/__init__.py
rename to support/doctype/customer_issue/__init__.py
diff --git a/erpnext/support/doctype/customer_issue/customer_issue.js b/support/doctype/customer_issue/customer_issue.js
similarity index 100%
rename from erpnext/support/doctype/customer_issue/customer_issue.js
rename to support/doctype/customer_issue/customer_issue.js
diff --git a/erpnext/support/doctype/customer_issue/customer_issue.py b/support/doctype/customer_issue/customer_issue.py
similarity index 100%
rename from erpnext/support/doctype/customer_issue/customer_issue.py
rename to support/doctype/customer_issue/customer_issue.py
diff --git a/erpnext/support/doctype/customer_issue/customer_issue.txt b/support/doctype/customer_issue/customer_issue.txt
similarity index 100%
rename from erpnext/support/doctype/customer_issue/customer_issue.txt
rename to support/doctype/customer_issue/customer_issue.txt
diff --git a/erpnext/support/doctype/customer_issue/customer_issue_list.js b/support/doctype/customer_issue/customer_issue_list.js
similarity index 100%
rename from erpnext/support/doctype/customer_issue/customer_issue_list.js
rename to support/doctype/customer_issue/customer_issue_list.js
diff --git a/erpnext/support/doctype/maintenance_schedule/__init__.py b/support/doctype/maintenance_schedule/__init__.py
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule/__init__.py
rename to support/doctype/maintenance_schedule/__init__.py
diff --git a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.js b/support/doctype/maintenance_schedule/maintenance_schedule.js
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule/maintenance_schedule.js
rename to support/doctype/maintenance_schedule/maintenance_schedule.js
diff --git a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py b/support/doctype/maintenance_schedule/maintenance_schedule.py
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py
rename to support/doctype/maintenance_schedule/maintenance_schedule.py
diff --git a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.txt b/support/doctype/maintenance_schedule/maintenance_schedule.txt
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule/maintenance_schedule.txt
rename to support/doctype/maintenance_schedule/maintenance_schedule.txt
diff --git a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule_list.js b/support/doctype/maintenance_schedule/maintenance_schedule_list.js
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule/maintenance_schedule_list.js
rename to support/doctype/maintenance_schedule/maintenance_schedule_list.js
diff --git a/erpnext/support/doctype/maintenance_schedule_detail/__init__.py b/support/doctype/maintenance_schedule_detail/__init__.py
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule_detail/__init__.py
rename to support/doctype/maintenance_schedule_detail/__init__.py
diff --git a/erpnext/support/doctype/maintenance_schedule_detail/maintenance_schedule_detail.txt b/support/doctype/maintenance_schedule_detail/maintenance_schedule_detail.txt
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule_detail/maintenance_schedule_detail.txt
rename to support/doctype/maintenance_schedule_detail/maintenance_schedule_detail.txt
diff --git a/erpnext/support/doctype/maintenance_schedule_item/__init__.py b/support/doctype/maintenance_schedule_item/__init__.py
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule_item/__init__.py
rename to support/doctype/maintenance_schedule_item/__init__.py
diff --git a/erpnext/support/doctype/maintenance_schedule_item/maintenance_schedule_item.txt b/support/doctype/maintenance_schedule_item/maintenance_schedule_item.txt
similarity index 100%
rename from erpnext/support/doctype/maintenance_schedule_item/maintenance_schedule_item.txt
rename to support/doctype/maintenance_schedule_item/maintenance_schedule_item.txt
diff --git a/erpnext/support/doctype/maintenance_visit/__init__.py b/support/doctype/maintenance_visit/__init__.py
similarity index 100%
rename from erpnext/support/doctype/maintenance_visit/__init__.py
rename to support/doctype/maintenance_visit/__init__.py
diff --git a/erpnext/support/doctype/maintenance_visit/maintenance_visit.js b/support/doctype/maintenance_visit/maintenance_visit.js
similarity index 100%
rename from erpnext/support/doctype/maintenance_visit/maintenance_visit.js
rename to support/doctype/maintenance_visit/maintenance_visit.js
diff --git a/erpnext/support/doctype/maintenance_visit/maintenance_visit.py b/support/doctype/maintenance_visit/maintenance_visit.py
similarity index 100%
rename from erpnext/support/doctype/maintenance_visit/maintenance_visit.py
rename to support/doctype/maintenance_visit/maintenance_visit.py
diff --git a/erpnext/support/doctype/maintenance_visit/maintenance_visit.txt b/support/doctype/maintenance_visit/maintenance_visit.txt
similarity index 100%
rename from erpnext/support/doctype/maintenance_visit/maintenance_visit.txt
rename to support/doctype/maintenance_visit/maintenance_visit.txt
diff --git a/erpnext/support/doctype/maintenance_visit/maintenance_visit_list.js b/support/doctype/maintenance_visit/maintenance_visit_list.js
similarity index 100%
rename from erpnext/support/doctype/maintenance_visit/maintenance_visit_list.js
rename to support/doctype/maintenance_visit/maintenance_visit_list.js
diff --git a/erpnext/support/doctype/maintenance_visit_purpose/__init__.py b/support/doctype/maintenance_visit_purpose/__init__.py
similarity index 100%
rename from erpnext/support/doctype/maintenance_visit_purpose/__init__.py
rename to support/doctype/maintenance_visit_purpose/__init__.py
diff --git a/erpnext/support/doctype/maintenance_visit_purpose/maintenance_visit_purpose.txt b/support/doctype/maintenance_visit_purpose/maintenance_visit_purpose.txt
similarity index 100%
rename from erpnext/support/doctype/maintenance_visit_purpose/maintenance_visit_purpose.txt
rename to support/doctype/maintenance_visit_purpose/maintenance_visit_purpose.txt
diff --git a/erpnext/support/doctype/newsletter/__init__.py b/support/doctype/newsletter/__init__.py
similarity index 100%
rename from erpnext/support/doctype/newsletter/__init__.py
rename to support/doctype/newsletter/__init__.py
diff --git a/erpnext/support/doctype/newsletter/newsletter.js b/support/doctype/newsletter/newsletter.js
similarity index 100%
rename from erpnext/support/doctype/newsletter/newsletter.js
rename to support/doctype/newsletter/newsletter.js
diff --git a/erpnext/support/doctype/newsletter/newsletter.py b/support/doctype/newsletter/newsletter.py
similarity index 100%
rename from erpnext/support/doctype/newsletter/newsletter.py
rename to support/doctype/newsletter/newsletter.py
diff --git a/erpnext/support/doctype/newsletter/newsletter.txt b/support/doctype/newsletter/newsletter.txt
similarity index 100%
rename from erpnext/support/doctype/newsletter/newsletter.txt
rename to support/doctype/newsletter/newsletter.txt
diff --git a/erpnext/support/doctype/newsletter/newsletter_list.js b/support/doctype/newsletter/newsletter_list.js
similarity index 100%
rename from erpnext/support/doctype/newsletter/newsletter_list.js
rename to support/doctype/newsletter/newsletter_list.js
diff --git a/erpnext/support/doctype/support_ticket/__init__.py b/support/doctype/support_ticket/__init__.py
similarity index 100%
rename from erpnext/support/doctype/support_ticket/__init__.py
rename to support/doctype/support_ticket/__init__.py
diff --git a/erpnext/support/doctype/support_ticket/support_ticket.css b/support/doctype/support_ticket/support_ticket.css
similarity index 100%
rename from erpnext/support/doctype/support_ticket/support_ticket.css
rename to support/doctype/support_ticket/support_ticket.css
diff --git a/erpnext/support/doctype/support_ticket/support_ticket.js b/support/doctype/support_ticket/support_ticket.js
similarity index 100%
rename from erpnext/support/doctype/support_ticket/support_ticket.js
rename to support/doctype/support_ticket/support_ticket.js
diff --git a/erpnext/support/doctype/support_ticket/support_ticket.py b/support/doctype/support_ticket/support_ticket.py
similarity index 100%
rename from erpnext/support/doctype/support_ticket/support_ticket.py
rename to support/doctype/support_ticket/support_ticket.py
diff --git a/erpnext/support/doctype/support_ticket/support_ticket.txt b/support/doctype/support_ticket/support_ticket.txt
similarity index 100%
rename from erpnext/support/doctype/support_ticket/support_ticket.txt
rename to support/doctype/support_ticket/support_ticket.txt
diff --git a/erpnext/support/doctype/support_ticket/support_ticket_list.js b/support/doctype/support_ticket/support_ticket_list.js
similarity index 100%
rename from erpnext/support/doctype/support_ticket/support_ticket_list.js
rename to support/doctype/support_ticket/support_ticket_list.js
diff --git a/erpnext/support/doctype/support_ticket_response/__init__.py b/support/doctype/support_ticket_response/__init__.py
similarity index 100%
rename from erpnext/support/doctype/support_ticket_response/__init__.py
rename to support/doctype/support_ticket_response/__init__.py
diff --git a/erpnext/support/doctype/support_ticket_response/support_ticket_response.txt b/support/doctype/support_ticket_response/support_ticket_response.txt
similarity index 100%
rename from erpnext/support/doctype/support_ticket_response/support_ticket_response.txt
rename to support/doctype/support_ticket_response/support_ticket_response.txt
diff --git a/erpnext/support/page/__init__.py b/support/page/__init__.py
similarity index 100%
rename from erpnext/support/page/__init__.py
rename to support/page/__init__.py
diff --git a/erpnext/support/page/support_home/__init__.py b/support/page/support_home/__init__.py
similarity index 100%
rename from erpnext/support/page/support_home/__init__.py
rename to support/page/support_home/__init__.py
diff --git a/erpnext/support/page/support_home/support_home.html b/support/page/support_home/support_home.html
similarity index 100%
rename from erpnext/support/page/support_home/support_home.html
rename to support/page/support_home/support_home.html
diff --git a/erpnext/support/page/support_home/support_home.js b/support/page/support_home/support_home.js
similarity index 100%
rename from erpnext/support/page/support_home/support_home.js
rename to support/page/support_home/support_home.js
diff --git a/erpnext/support/page/support_home/support_home.txt b/support/page/support_home/support_home.txt
similarity index 100%
rename from erpnext/support/page/support_home/support_home.txt
rename to support/page/support_home/support_home.txt
diff --git a/erpnext/support/search_criteria/__init__.py b/support/search_criteria/__init__.py
similarity index 100%
rename from erpnext/support/search_criteria/__init__.py
rename to support/search_criteria/__init__.py
diff --git a/erpnext/support/search_criteria/amc_summary/__init__.py b/support/search_criteria/amc_summary/__init__.py
similarity index 100%
rename from erpnext/support/search_criteria/amc_summary/__init__.py
rename to support/search_criteria/amc_summary/__init__.py
diff --git a/erpnext/support/search_criteria/amc_summary/amc_summary.js b/support/search_criteria/amc_summary/amc_summary.js
similarity index 100%
rename from erpnext/support/search_criteria/amc_summary/amc_summary.js
rename to support/search_criteria/amc_summary/amc_summary.js
diff --git a/erpnext/support/search_criteria/amc_summary/amc_summary.py b/support/search_criteria/amc_summary/amc_summary.py
similarity index 100%
rename from erpnext/support/search_criteria/amc_summary/amc_summary.py
rename to support/search_criteria/amc_summary/amc_summary.py
diff --git a/erpnext/support/search_criteria/amc_summary/amc_summary.txt b/support/search_criteria/amc_summary/amc_summary.txt
similarity index 100%
rename from erpnext/support/search_criteria/amc_summary/amc_summary.txt
rename to support/search_criteria/amc_summary/amc_summary.txt
diff --git a/erpnext/support/search_criteria/customer_issues/__init__.py b/support/search_criteria/customer_issues/__init__.py
similarity index 100%
rename from erpnext/support/search_criteria/customer_issues/__init__.py
rename to support/search_criteria/customer_issues/__init__.py
diff --git a/erpnext/support/search_criteria/customer_issues/customer_issues.js b/support/search_criteria/customer_issues/customer_issues.js
similarity index 100%
rename from erpnext/support/search_criteria/customer_issues/customer_issues.js
rename to support/search_criteria/customer_issues/customer_issues.js
diff --git a/erpnext/support/search_criteria/customer_issues/customer_issues.txt b/support/search_criteria/customer_issues/customer_issues.txt
similarity index 100%
rename from erpnext/support/search_criteria/customer_issues/customer_issues.txt
rename to support/search_criteria/customer_issues/customer_issues.txt
diff --git a/erpnext/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/__init__.py b/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/__init__.py
similarity index 100%
rename from erpnext/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/__init__.py
rename to support/search_criteria/maintenance_orderwise_pending_amount_to_bill/__init__.py
diff --git a/erpnext/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.js b/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.js
similarity index 100%
rename from erpnext/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.js
rename to support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.js
diff --git a/erpnext/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.txt b/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.txt
similarity index 100%
rename from erpnext/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.txt
rename to support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.txt
diff --git a/erpnext/support/search_criteria/maintenance_schedule_details/__init__.py b/support/search_criteria/maintenance_schedule_details/__init__.py
similarity index 100%
rename from erpnext/support/search_criteria/maintenance_schedule_details/__init__.py
rename to support/search_criteria/maintenance_schedule_details/__init__.py
diff --git a/erpnext/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.js b/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.js
similarity index 100%
rename from erpnext/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.js
rename to support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.js
diff --git a/erpnext/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.txt b/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.txt
similarity index 100%
rename from erpnext/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.txt
rename to support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.txt
diff --git a/erpnext/support/search_criteria/warranty_amc_expiry_details/__init__.py b/support/search_criteria/warranty_amc_expiry_details/__init__.py
similarity index 100%
rename from erpnext/support/search_criteria/warranty_amc_expiry_details/__init__.py
rename to support/search_criteria/warranty_amc_expiry_details/__init__.py
diff --git a/erpnext/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.js b/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.js
similarity index 100%
rename from erpnext/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.js
rename to support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.js
diff --git a/erpnext/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.txt b/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.txt
similarity index 100%
rename from erpnext/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.txt
rename to support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.txt
diff --git a/erpnext/support/search_criteria/warranty_amc_summary/__init__.py b/support/search_criteria/warranty_amc_summary/__init__.py
similarity index 100%
rename from erpnext/support/search_criteria/warranty_amc_summary/__init__.py
rename to support/search_criteria/warranty_amc_summary/__init__.py
diff --git a/erpnext/support/search_criteria/warranty_amc_summary/warranty_amc_summary.js b/support/search_criteria/warranty_amc_summary/warranty_amc_summary.js
similarity index 100%
rename from erpnext/support/search_criteria/warranty_amc_summary/warranty_amc_summary.js
rename to support/search_criteria/warranty_amc_summary/warranty_amc_summary.js
diff --git a/erpnext/support/search_criteria/warranty_amc_summary/warranty_amc_summary.py b/support/search_criteria/warranty_amc_summary/warranty_amc_summary.py
similarity index 100%
rename from erpnext/support/search_criteria/warranty_amc_summary/warranty_amc_summary.py
rename to support/search_criteria/warranty_amc_summary/warranty_amc_summary.py
diff --git a/erpnext/support/search_criteria/warranty_amc_summary/warranty_amc_summary.sql b/support/search_criteria/warranty_amc_summary/warranty_amc_summary.sql
similarity index 100%
rename from erpnext/support/search_criteria/warranty_amc_summary/warranty_amc_summary.sql
rename to support/search_criteria/warranty_amc_summary/warranty_amc_summary.sql
diff --git a/erpnext/support/search_criteria/warranty_amc_summary/warranty_amc_summary.txt b/support/search_criteria/warranty_amc_summary/warranty_amc_summary.txt
similarity index 100%
rename from erpnext/support/search_criteria/warranty_amc_summary/warranty_amc_summary.txt
rename to support/search_criteria/warranty_amc_summary/warranty_amc_summary.txt
diff --git a/erpnext/utilities/__init__.py b/utilities/__init__.py
similarity index 100%
rename from erpnext/utilities/__init__.py
rename to utilities/__init__.py
diff --git a/erpnext/utilities/cleanup_data.py b/utilities/cleanup_data.py
similarity index 100%
rename from erpnext/utilities/cleanup_data.py
rename to utilities/cleanup_data.py
diff --git a/erpnext/utilities/doctype/__init__.py b/utilities/doctype/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/__init__.py
rename to utilities/doctype/__init__.py
diff --git a/erpnext/utilities/doctype/address/__init__.py b/utilities/doctype/address/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/address/__init__.py
rename to utilities/doctype/address/__init__.py
diff --git a/erpnext/utilities/doctype/address/address.js b/utilities/doctype/address/address.js
similarity index 100%
rename from erpnext/utilities/doctype/address/address.js
rename to utilities/doctype/address/address.js
diff --git a/erpnext/utilities/doctype/address/address.py b/utilities/doctype/address/address.py
similarity index 100%
rename from erpnext/utilities/doctype/address/address.py
rename to utilities/doctype/address/address.py
diff --git a/erpnext/utilities/doctype/address/address.txt b/utilities/doctype/address/address.txt
similarity index 100%
rename from erpnext/utilities/doctype/address/address.txt
rename to utilities/doctype/address/address.txt
diff --git a/erpnext/utilities/doctype/address/address_list.js b/utilities/doctype/address/address_list.js
similarity index 100%
rename from erpnext/utilities/doctype/address/address_list.js
rename to utilities/doctype/address/address_list.js
diff --git a/erpnext/utilities/doctype/answer/__init__.py b/utilities/doctype/answer/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/answer/__init__.py
rename to utilities/doctype/answer/__init__.py
diff --git a/erpnext/utilities/doctype/answer/answer.txt b/utilities/doctype/answer/answer.txt
similarity index 100%
rename from erpnext/utilities/doctype/answer/answer.txt
rename to utilities/doctype/answer/answer.txt
diff --git a/erpnext/utilities/doctype/contact/__init__.py b/utilities/doctype/contact/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/contact/__init__.py
rename to utilities/doctype/contact/__init__.py
diff --git a/erpnext/utilities/doctype/contact/contact.js b/utilities/doctype/contact/contact.js
similarity index 100%
rename from erpnext/utilities/doctype/contact/contact.js
rename to utilities/doctype/contact/contact.js
diff --git a/erpnext/utilities/doctype/contact/contact.py b/utilities/doctype/contact/contact.py
similarity index 100%
rename from erpnext/utilities/doctype/contact/contact.py
rename to utilities/doctype/contact/contact.py
diff --git a/erpnext/utilities/doctype/contact/contact.txt b/utilities/doctype/contact/contact.txt
similarity index 100%
rename from erpnext/utilities/doctype/contact/contact.txt
rename to utilities/doctype/contact/contact.txt
diff --git a/erpnext/utilities/doctype/contact/contact_list.js b/utilities/doctype/contact/contact_list.js
similarity index 100%
rename from erpnext/utilities/doctype/contact/contact_list.js
rename to utilities/doctype/contact/contact_list.js
diff --git a/erpnext/utilities/doctype/gl_mapper/__init__.py b/utilities/doctype/gl_mapper/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/gl_mapper/__init__.py
rename to utilities/doctype/gl_mapper/__init__.py
diff --git a/erpnext/utilities/doctype/gl_mapper/gl_mapper.txt b/utilities/doctype/gl_mapper/gl_mapper.txt
similarity index 100%
rename from erpnext/utilities/doctype/gl_mapper/gl_mapper.txt
rename to utilities/doctype/gl_mapper/gl_mapper.txt
diff --git a/erpnext/utilities/doctype/gl_mapper_detail/__init__.py b/utilities/doctype/gl_mapper_detail/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/gl_mapper_detail/__init__.py
rename to utilities/doctype/gl_mapper_detail/__init__.py
diff --git a/erpnext/utilities/doctype/gl_mapper_detail/gl_mapper_detail.txt b/utilities/doctype/gl_mapper_detail/gl_mapper_detail.txt
similarity index 100%
rename from erpnext/utilities/doctype/gl_mapper_detail/gl_mapper_detail.txt
rename to utilities/doctype/gl_mapper_detail/gl_mapper_detail.txt
diff --git a/erpnext/utilities/doctype/profile_control/__init__.py b/utilities/doctype/profile_control/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/profile_control/__init__.py
rename to utilities/doctype/profile_control/__init__.py
diff --git a/erpnext/utilities/doctype/profile_control/profile_control.py b/utilities/doctype/profile_control/profile_control.py
similarity index 100%
rename from erpnext/utilities/doctype/profile_control/profile_control.py
rename to utilities/doctype/profile_control/profile_control.py
diff --git a/erpnext/utilities/doctype/profile_control/profile_control.txt b/utilities/doctype/profile_control/profile_control.txt
similarity index 100%
rename from erpnext/utilities/doctype/profile_control/profile_control.txt
rename to utilities/doctype/profile_control/profile_control.txt
diff --git a/erpnext/utilities/doctype/question/__init__.py b/utilities/doctype/question/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/question/__init__.py
rename to utilities/doctype/question/__init__.py
diff --git a/erpnext/utilities/doctype/question/question.py b/utilities/doctype/question/question.py
similarity index 100%
rename from erpnext/utilities/doctype/question/question.py
rename to utilities/doctype/question/question.py
diff --git a/erpnext/utilities/doctype/question/question.txt b/utilities/doctype/question/question.txt
similarity index 100%
rename from erpnext/utilities/doctype/question/question.txt
rename to utilities/doctype/question/question.txt
diff --git a/erpnext/utilities/doctype/rename_tool/__init__.py b/utilities/doctype/rename_tool/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/rename_tool/__init__.py
rename to utilities/doctype/rename_tool/__init__.py
diff --git a/erpnext/utilities/doctype/rename_tool/rename_tool.js b/utilities/doctype/rename_tool/rename_tool.js
similarity index 100%
rename from erpnext/utilities/doctype/rename_tool/rename_tool.js
rename to utilities/doctype/rename_tool/rename_tool.js
diff --git a/erpnext/utilities/doctype/rename_tool/rename_tool.py b/utilities/doctype/rename_tool/rename_tool.py
similarity index 100%
rename from erpnext/utilities/doctype/rename_tool/rename_tool.py
rename to utilities/doctype/rename_tool/rename_tool.py
diff --git a/erpnext/utilities/doctype/rename_tool/rename_tool.txt b/utilities/doctype/rename_tool/rename_tool.txt
similarity index 100%
rename from erpnext/utilities/doctype/rename_tool/rename_tool.txt
rename to utilities/doctype/rename_tool/rename_tool.txt
diff --git a/erpnext/utilities/doctype/reposting_tool/__init__.py b/utilities/doctype/reposting_tool/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/reposting_tool/__init__.py
rename to utilities/doctype/reposting_tool/__init__.py
diff --git a/erpnext/utilities/doctype/reposting_tool/reposting_tool.js b/utilities/doctype/reposting_tool/reposting_tool.js
similarity index 100%
rename from erpnext/utilities/doctype/reposting_tool/reposting_tool.js
rename to utilities/doctype/reposting_tool/reposting_tool.js
diff --git a/erpnext/utilities/doctype/reposting_tool/reposting_tool.py b/utilities/doctype/reposting_tool/reposting_tool.py
similarity index 100%
rename from erpnext/utilities/doctype/reposting_tool/reposting_tool.py
rename to utilities/doctype/reposting_tool/reposting_tool.py
diff --git a/erpnext/utilities/doctype/reposting_tool/reposting_tool.txt b/utilities/doctype/reposting_tool/reposting_tool.txt
similarity index 100%
rename from erpnext/utilities/doctype/reposting_tool/reposting_tool.txt
rename to utilities/doctype/reposting_tool/reposting_tool.txt
diff --git a/erpnext/utilities/doctype/sms_control/__init__.py b/utilities/doctype/sms_control/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/sms_control/__init__.py
rename to utilities/doctype/sms_control/__init__.py
diff --git a/erpnext/utilities/doctype/sms_control/sms_control.js b/utilities/doctype/sms_control/sms_control.js
similarity index 100%
rename from erpnext/utilities/doctype/sms_control/sms_control.js
rename to utilities/doctype/sms_control/sms_control.js
diff --git a/erpnext/utilities/doctype/sms_control/sms_control.py b/utilities/doctype/sms_control/sms_control.py
similarity index 100%
rename from erpnext/utilities/doctype/sms_control/sms_control.py
rename to utilities/doctype/sms_control/sms_control.py
diff --git a/erpnext/utilities/doctype/sms_control/sms_control.txt b/utilities/doctype/sms_control/sms_control.txt
similarity index 100%
rename from erpnext/utilities/doctype/sms_control/sms_control.txt
rename to utilities/doctype/sms_control/sms_control.txt
diff --git a/erpnext/utilities/doctype/sms_log/__init__.py b/utilities/doctype/sms_log/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/sms_log/__init__.py
rename to utilities/doctype/sms_log/__init__.py
diff --git a/erpnext/utilities/doctype/sms_log/sms_log.txt b/utilities/doctype/sms_log/sms_log.txt
similarity index 100%
rename from erpnext/utilities/doctype/sms_log/sms_log.txt
rename to utilities/doctype/sms_log/sms_log.txt
diff --git a/erpnext/utilities/doctype/sms_receiver/__init__.py b/utilities/doctype/sms_receiver/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/sms_receiver/__init__.py
rename to utilities/doctype/sms_receiver/__init__.py
diff --git a/erpnext/utilities/doctype/sms_receiver/sms_receiver.txt b/utilities/doctype/sms_receiver/sms_receiver.txt
similarity index 100%
rename from erpnext/utilities/doctype/sms_receiver/sms_receiver.txt
rename to utilities/doctype/sms_receiver/sms_receiver.txt
diff --git a/erpnext/utilities/doctype/trash_control/__init__.py b/utilities/doctype/trash_control/__init__.py
similarity index 100%
rename from erpnext/utilities/doctype/trash_control/__init__.py
rename to utilities/doctype/trash_control/__init__.py
diff --git a/erpnext/utilities/doctype/trash_control/trash_control.py b/utilities/doctype/trash_control/trash_control.py
similarity index 100%
rename from erpnext/utilities/doctype/trash_control/trash_control.py
rename to utilities/doctype/trash_control/trash_control.py
diff --git a/erpnext/utilities/doctype/trash_control/trash_control.txt b/utilities/doctype/trash_control/trash_control.txt
similarity index 100%
rename from erpnext/utilities/doctype/trash_control/trash_control.txt
rename to utilities/doctype/trash_control/trash_control.txt
diff --git a/erpnext/utilities/page/__init__.py b/utilities/page/__init__.py
similarity index 100%
rename from erpnext/utilities/page/__init__.py
rename to utilities/page/__init__.py
diff --git a/erpnext/utilities/page/calendar/__init__.py b/utilities/page/calendar/__init__.py
similarity index 100%
rename from erpnext/utilities/page/calendar/__init__.py
rename to utilities/page/calendar/__init__.py
diff --git a/erpnext/utilities/page/calendar/calendar.css b/utilities/page/calendar/calendar.css
similarity index 100%
rename from erpnext/utilities/page/calendar/calendar.css
rename to utilities/page/calendar/calendar.css
diff --git a/erpnext/utilities/page/calendar/calendar.html b/utilities/page/calendar/calendar.html
similarity index 100%
rename from erpnext/utilities/page/calendar/calendar.html
rename to utilities/page/calendar/calendar.html
diff --git a/erpnext/utilities/page/calendar/calendar.js b/utilities/page/calendar/calendar.js
similarity index 100%
rename from erpnext/utilities/page/calendar/calendar.js
rename to utilities/page/calendar/calendar.js
diff --git a/erpnext/utilities/page/calendar/calendar.py b/utilities/page/calendar/calendar.py
similarity index 100%
rename from erpnext/utilities/page/calendar/calendar.py
rename to utilities/page/calendar/calendar.py
diff --git a/erpnext/utilities/page/calendar/calendar.txt b/utilities/page/calendar/calendar.txt
similarity index 100%
rename from erpnext/utilities/page/calendar/calendar.txt
rename to utilities/page/calendar/calendar.txt
diff --git a/erpnext/utilities/page/markdown_reference/__init__.py b/utilities/page/markdown_reference/__init__.py
similarity index 100%
rename from erpnext/utilities/page/markdown_reference/__init__.py
rename to utilities/page/markdown_reference/__init__.py
diff --git a/erpnext/utilities/page/markdown_reference/markdown_reference.css b/utilities/page/markdown_reference/markdown_reference.css
similarity index 100%
rename from erpnext/utilities/page/markdown_reference/markdown_reference.css
rename to utilities/page/markdown_reference/markdown_reference.css
diff --git a/erpnext/utilities/page/markdown_reference/markdown_reference.html b/utilities/page/markdown_reference/markdown_reference.html
similarity index 100%
rename from erpnext/utilities/page/markdown_reference/markdown_reference.html
rename to utilities/page/markdown_reference/markdown_reference.html
diff --git a/erpnext/utilities/page/markdown_reference/markdown_reference.js b/utilities/page/markdown_reference/markdown_reference.js
similarity index 100%
rename from erpnext/utilities/page/markdown_reference/markdown_reference.js
rename to utilities/page/markdown_reference/markdown_reference.js
diff --git a/erpnext/utilities/page/markdown_reference/markdown_reference.py b/utilities/page/markdown_reference/markdown_reference.py
similarity index 100%
rename from erpnext/utilities/page/markdown_reference/markdown_reference.py
rename to utilities/page/markdown_reference/markdown_reference.py
diff --git a/erpnext/utilities/page/markdown_reference/markdown_reference.txt b/utilities/page/markdown_reference/markdown_reference.txt
similarity index 100%
rename from erpnext/utilities/page/markdown_reference/markdown_reference.txt
rename to utilities/page/markdown_reference/markdown_reference.txt
diff --git a/erpnext/utilities/page/messages/__init__.py b/utilities/page/messages/__init__.py
similarity index 100%
rename from erpnext/utilities/page/messages/__init__.py
rename to utilities/page/messages/__init__.py
diff --git a/erpnext/utilities/page/messages/messages.css b/utilities/page/messages/messages.css
similarity index 100%
rename from erpnext/utilities/page/messages/messages.css
rename to utilities/page/messages/messages.css
diff --git a/erpnext/utilities/page/messages/messages.html b/utilities/page/messages/messages.html
similarity index 100%
rename from erpnext/utilities/page/messages/messages.html
rename to utilities/page/messages/messages.html
diff --git a/erpnext/utilities/page/messages/messages.js b/utilities/page/messages/messages.js
similarity index 100%
rename from erpnext/utilities/page/messages/messages.js
rename to utilities/page/messages/messages.js
diff --git a/erpnext/utilities/page/messages/messages.py b/utilities/page/messages/messages.py
similarity index 100%
rename from erpnext/utilities/page/messages/messages.py
rename to utilities/page/messages/messages.py
diff --git a/erpnext/utilities/page/messages/messages.txt b/utilities/page/messages/messages.txt
similarity index 100%
rename from erpnext/utilities/page/messages/messages.txt
rename to utilities/page/messages/messages.txt
diff --git a/erpnext/utilities/page/question_view/__init__.py b/utilities/page/question_view/__init__.py
similarity index 100%
rename from erpnext/utilities/page/question_view/__init__.py
rename to utilities/page/question_view/__init__.py
diff --git a/erpnext/utilities/page/question_view/question_view.css b/utilities/page/question_view/question_view.css
similarity index 100%
rename from erpnext/utilities/page/question_view/question_view.css
rename to utilities/page/question_view/question_view.css
diff --git a/erpnext/utilities/page/question_view/question_view.html b/utilities/page/question_view/question_view.html
similarity index 100%
rename from erpnext/utilities/page/question_view/question_view.html
rename to utilities/page/question_view/question_view.html
diff --git a/erpnext/utilities/page/question_view/question_view.js b/utilities/page/question_view/question_view.js
similarity index 100%
rename from erpnext/utilities/page/question_view/question_view.js
rename to utilities/page/question_view/question_view.js
diff --git a/erpnext/utilities/page/question_view/question_view.py b/utilities/page/question_view/question_view.py
similarity index 100%
rename from erpnext/utilities/page/question_view/question_view.py
rename to utilities/page/question_view/question_view.py
diff --git a/erpnext/utilities/page/question_view/question_view.txt b/utilities/page/question_view/question_view.txt
similarity index 100%
rename from erpnext/utilities/page/question_view/question_view.txt
rename to utilities/page/question_view/question_view.txt
diff --git a/erpnext/utilities/page/questions/__init__.py b/utilities/page/questions/__init__.py
similarity index 100%
rename from erpnext/utilities/page/questions/__init__.py
rename to utilities/page/questions/__init__.py
diff --git a/erpnext/utilities/page/questions/questions.css b/utilities/page/questions/questions.css
similarity index 100%
rename from erpnext/utilities/page/questions/questions.css
rename to utilities/page/questions/questions.css
diff --git a/erpnext/utilities/page/questions/questions.html b/utilities/page/questions/questions.html
similarity index 100%
rename from erpnext/utilities/page/questions/questions.html
rename to utilities/page/questions/questions.html
diff --git a/erpnext/utilities/page/questions/questions.js b/utilities/page/questions/questions.js
similarity index 99%
rename from erpnext/utilities/page/questions/questions.js
rename to utilities/page/questions/questions.js
index e2e7ed5..1c208a8 100644
--- a/erpnext/utilities/page/questions/questions.js
+++ b/utilities/page/questions/questions.js
@@ -215,4 +215,4 @@
 	this.make()
 }
 
-wn.require('js/app/kb_common.js');
+wn.require('app/js/kb_common.js');
diff --git a/erpnext/utilities/page/questions/questions.py b/utilities/page/questions/questions.py
similarity index 100%
rename from erpnext/utilities/page/questions/questions.py
rename to utilities/page/questions/questions.py
diff --git a/erpnext/utilities/page/questions/questions.txt b/utilities/page/questions/questions.txt
similarity index 100%
rename from erpnext/utilities/page/questions/questions.txt
rename to utilities/page/questions/questions.txt
diff --git a/erpnext/utilities/page/todo/__init__.py b/utilities/page/todo/__init__.py
similarity index 100%
rename from erpnext/utilities/page/todo/__init__.py
rename to utilities/page/todo/__init__.py
diff --git a/erpnext/utilities/page/todo/todo.css b/utilities/page/todo/todo.css
similarity index 100%
rename from erpnext/utilities/page/todo/todo.css
rename to utilities/page/todo/todo.css
diff --git a/erpnext/utilities/page/todo/todo.html b/utilities/page/todo/todo.html
similarity index 100%
rename from erpnext/utilities/page/todo/todo.html
rename to utilities/page/todo/todo.html
diff --git a/erpnext/utilities/page/todo/todo.js b/utilities/page/todo/todo.js
similarity index 100%
rename from erpnext/utilities/page/todo/todo.js
rename to utilities/page/todo/todo.js
diff --git a/erpnext/utilities/page/todo/todo.py b/utilities/page/todo/todo.py
similarity index 100%
rename from erpnext/utilities/page/todo/todo.py
rename to utilities/page/todo/todo.py
diff --git a/erpnext/utilities/page/todo/todo.txt b/utilities/page/todo/todo.txt
similarity index 100%
rename from erpnext/utilities/page/todo/todo.txt
rename to utilities/page/todo/todo.txt
diff --git a/erpnext/utilities/page/trash/__init__.py b/utilities/page/trash/__init__.py
similarity index 100%
rename from erpnext/utilities/page/trash/__init__.py
rename to utilities/page/trash/__init__.py
diff --git a/erpnext/utilities/page/trash/trash.html b/utilities/page/trash/trash.html
similarity index 100%
rename from erpnext/utilities/page/trash/trash.html
rename to utilities/page/trash/trash.html
diff --git a/erpnext/utilities/page/trash/trash.js b/utilities/page/trash/trash.js
similarity index 100%
rename from erpnext/utilities/page/trash/trash.js
rename to utilities/page/trash/trash.js
diff --git a/erpnext/utilities/page/trash/trash.txt b/utilities/page/trash/trash.txt
similarity index 100%
rename from erpnext/utilities/page/trash/trash.txt
rename to utilities/page/trash/trash.txt
diff --git a/erpnext/utilities/page/users/__init__.py b/utilities/page/users/__init__.py
similarity index 100%
rename from erpnext/utilities/page/users/__init__.py
rename to utilities/page/users/__init__.py
diff --git a/erpnext/utilities/page/users/users.css b/utilities/page/users/users.css
similarity index 100%
rename from erpnext/utilities/page/users/users.css
rename to utilities/page/users/users.css
diff --git a/erpnext/utilities/page/users/users.html b/utilities/page/users/users.html
similarity index 100%
rename from erpnext/utilities/page/users/users.html
rename to utilities/page/users/users.html
diff --git a/erpnext/utilities/page/users/users.js b/utilities/page/users/users.js
similarity index 100%
rename from erpnext/utilities/page/users/users.js
rename to utilities/page/users/users.js
diff --git a/erpnext/utilities/page/users/users.py b/utilities/page/users/users.py
similarity index 100%
rename from erpnext/utilities/page/users/users.py
rename to utilities/page/users/users.py
diff --git a/erpnext/utilities/page/users/users.txt b/utilities/page/users/users.txt
similarity index 100%
rename from erpnext/utilities/page/users/users.txt
rename to utilities/page/users/users.txt
diff --git a/erpnext/utilities/page/wip_monitor/__init__.py b/utilities/page/wip_monitor/__init__.py
similarity index 100%
rename from erpnext/utilities/page/wip_monitor/__init__.py
rename to utilities/page/wip_monitor/__init__.py
diff --git a/erpnext/utilities/page/wip_monitor/wip_monitor.html b/utilities/page/wip_monitor/wip_monitor.html
similarity index 100%
rename from erpnext/utilities/page/wip_monitor/wip_monitor.html
rename to utilities/page/wip_monitor/wip_monitor.html
diff --git a/erpnext/utilities/page/wip_monitor/wip_monitor.js b/utilities/page/wip_monitor/wip_monitor.js
similarity index 100%
rename from erpnext/utilities/page/wip_monitor/wip_monitor.js
rename to utilities/page/wip_monitor/wip_monitor.js
diff --git a/erpnext/utilities/page/wip_monitor/wip_monitor.txt b/utilities/page/wip_monitor/wip_monitor.txt
similarity index 100%
rename from erpnext/utilities/page/wip_monitor/wip_monitor.txt
rename to utilities/page/wip_monitor/wip_monitor.txt
diff --git a/erpnext/utilities/transaction_base.py b/utilities/transaction_base.py
similarity index 100%
rename from erpnext/utilities/transaction_base.py
rename to utilities/transaction_base.py
diff --git a/erpnext/website/__init__.py b/website/__init__.py
similarity index 100%
rename from erpnext/website/__init__.py
rename to website/__init__.py
diff --git a/erpnext/website/blog.py b/website/blog.py
similarity index 100%
rename from erpnext/website/blog.py
rename to website/blog.py
diff --git a/erpnext/website/css/website.css b/website/css/website.css
similarity index 100%
rename from erpnext/website/css/website.css
rename to website/css/website.css
diff --git a/erpnext/website/doctype/__init__.py b/website/doctype/__init__.py
similarity index 100%
rename from erpnext/website/doctype/__init__.py
rename to website/doctype/__init__.py
diff --git a/erpnext/website/doctype/blog/__init__.py b/website/doctype/blog/__init__.py
similarity index 100%
rename from erpnext/website/doctype/blog/__init__.py
rename to website/doctype/blog/__init__.py
diff --git a/erpnext/website/doctype/blog/blog.js b/website/doctype/blog/blog.js
similarity index 100%
rename from erpnext/website/doctype/blog/blog.js
rename to website/doctype/blog/blog.js
diff --git a/erpnext/website/doctype/blog/blog.py b/website/doctype/blog/blog.py
similarity index 100%
rename from erpnext/website/doctype/blog/blog.py
rename to website/doctype/blog/blog.py
diff --git a/erpnext/website/doctype/blog/blog.txt b/website/doctype/blog/blog.txt
similarity index 100%
rename from erpnext/website/doctype/blog/blog.txt
rename to website/doctype/blog/blog.txt
diff --git a/erpnext/website/doctype/related_page/__init__.py b/website/doctype/related_page/__init__.py
similarity index 100%
rename from erpnext/website/doctype/related_page/__init__.py
rename to website/doctype/related_page/__init__.py
diff --git a/erpnext/website/doctype/related_page/related_page.txt b/website/doctype/related_page/related_page.txt
similarity index 100%
rename from erpnext/website/doctype/related_page/related_page.txt
rename to website/doctype/related_page/related_page.txt
diff --git a/erpnext/website/doctype/style_settings/__init__.py b/website/doctype/style_settings/__init__.py
similarity index 100%
rename from erpnext/website/doctype/style_settings/__init__.py
rename to website/doctype/style_settings/__init__.py
diff --git a/erpnext/website/doctype/style_settings/custom_template.css b/website/doctype/style_settings/custom_template.css
similarity index 100%
rename from erpnext/website/doctype/style_settings/custom_template.css
rename to website/doctype/style_settings/custom_template.css
diff --git a/erpnext/website/doctype/style_settings/style_settings.js b/website/doctype/style_settings/style_settings.js
similarity index 94%
rename from erpnext/website/doctype/style_settings/style_settings.js
rename to website/doctype/style_settings/style_settings.js
index 64fa496..0d0bf9e 100644
--- a/erpnext/website/doctype/style_settings/style_settings.js
+++ b/website/doctype/style_settings/style_settings.js
@@ -14,7 +14,7 @@
 // You should have received a copy of the GNU General Public License
 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-wn.require('js/lib/jscolor/jscolor.js');
+wn.require('lib/js/lib/jscolor/jscolor.js');
 
 cur_frm.cscript.onload_post_render = function() {
 	cur_frm.fields_dict.background_color.input.className = 'color';
diff --git a/erpnext/website/doctype/style_settings/style_settings.py b/website/doctype/style_settings/style_settings.py
similarity index 100%
rename from erpnext/website/doctype/style_settings/style_settings.py
rename to website/doctype/style_settings/style_settings.py
diff --git a/erpnext/website/doctype/style_settings/style_settings.txt b/website/doctype/style_settings/style_settings.txt
similarity index 100%
rename from erpnext/website/doctype/style_settings/style_settings.txt
rename to website/doctype/style_settings/style_settings.txt
diff --git a/erpnext/website/doctype/top_bar_item/__init__.py b/website/doctype/top_bar_item/__init__.py
similarity index 100%
rename from erpnext/website/doctype/top_bar_item/__init__.py
rename to website/doctype/top_bar_item/__init__.py
diff --git a/erpnext/website/doctype/top_bar_item/top_bar_item.txt b/website/doctype/top_bar_item/top_bar_item.txt
similarity index 100%
rename from erpnext/website/doctype/top_bar_item/top_bar_item.txt
rename to website/doctype/top_bar_item/top_bar_item.txt
diff --git a/erpnext/website/doctype/web_cache/__init__.py b/website/doctype/web_cache/__init__.py
similarity index 100%
rename from erpnext/website/doctype/web_cache/__init__.py
rename to website/doctype/web_cache/__init__.py
diff --git a/erpnext/website/doctype/web_cache/web_cache.txt b/website/doctype/web_cache/web_cache.txt
similarity index 100%
rename from erpnext/website/doctype/web_cache/web_cache.txt
rename to website/doctype/web_cache/web_cache.txt
diff --git a/erpnext/website/doctype/web_page/__init__.py b/website/doctype/web_page/__init__.py
similarity index 100%
rename from erpnext/website/doctype/web_page/__init__.py
rename to website/doctype/web_page/__init__.py
diff --git a/erpnext/website/doctype/web_page/web_page.js b/website/doctype/web_page/web_page.js
similarity index 100%
rename from erpnext/website/doctype/web_page/web_page.js
rename to website/doctype/web_page/web_page.js
diff --git a/erpnext/website/doctype/web_page/web_page.py b/website/doctype/web_page/web_page.py
similarity index 100%
rename from erpnext/website/doctype/web_page/web_page.py
rename to website/doctype/web_page/web_page.py
diff --git a/erpnext/website/doctype/web_page/web_page.txt b/website/doctype/web_page/web_page.txt
similarity index 100%
rename from erpnext/website/doctype/web_page/web_page.txt
rename to website/doctype/web_page/web_page.txt
diff --git a/erpnext/website/doctype/website_settings/__init__.py b/website/doctype/website_settings/__init__.py
similarity index 100%
rename from erpnext/website/doctype/website_settings/__init__.py
rename to website/doctype/website_settings/__init__.py
diff --git a/erpnext/website/doctype/website_settings/website_settings.js b/website/doctype/website_settings/website_settings.js
similarity index 100%
rename from erpnext/website/doctype/website_settings/website_settings.js
rename to website/doctype/website_settings/website_settings.js
diff --git a/erpnext/website/doctype/website_settings/website_settings.py b/website/doctype/website_settings/website_settings.py
similarity index 100%
rename from erpnext/website/doctype/website_settings/website_settings.py
rename to website/doctype/website_settings/website_settings.py
diff --git a/erpnext/website/doctype/website_settings/website_settings.txt b/website/doctype/website_settings/website_settings.txt
similarity index 100%
rename from erpnext/website/doctype/website_settings/website_settings.txt
rename to website/doctype/website_settings/website_settings.txt
diff --git a/erpnext/website/page/__init__.py b/website/page/__init__.py
similarity index 100%
rename from erpnext/website/page/__init__.py
rename to website/page/__init__.py
diff --git a/erpnext/website/page/unsubscribe/unsubscribe.py b/website/page/unsubscribe/unsubscribe.py
similarity index 100%
rename from erpnext/website/page/unsubscribe/unsubscribe.py
rename to website/page/unsubscribe/unsubscribe.py
diff --git a/erpnext/website/page/website_home/__init__.py b/website/page/website_home/__init__.py
similarity index 100%
rename from erpnext/website/page/website_home/__init__.py
rename to website/page/website_home/__init__.py
diff --git a/erpnext/website/page/website_home/website_home.html b/website/page/website_home/website_home.html
similarity index 100%
rename from erpnext/website/page/website_home/website_home.html
rename to website/page/website_home/website_home.html
diff --git a/erpnext/website/page/website_home/website_home.js b/website/page/website_home/website_home.js
similarity index 100%
rename from erpnext/website/page/website_home/website_home.js
rename to website/page/website_home/website_home.js
diff --git a/erpnext/website/page/website_home/website_home.txt b/website/page/website_home/website_home.txt
similarity index 100%
rename from erpnext/website/page/website_home/website_home.txt
rename to website/page/website_home/website_home.txt
diff --git a/erpnext/website/product.py b/website/product.py
similarity index 100%
rename from erpnext/website/product.py
rename to website/product.py
diff --git a/erpnext/website/templates/__init__.py b/website/templates/__init__.py
similarity index 100%
rename from erpnext/website/templates/__init__.py
rename to website/templates/__init__.py
diff --git a/erpnext/website/templates/css/blog.css b/website/templates/css/blog.css
similarity index 100%
rename from erpnext/website/templates/css/blog.css
rename to website/templates/css/blog.css
diff --git a/erpnext/website/templates/css/blog_page.css b/website/templates/css/blog_page.css
similarity index 100%
rename from erpnext/website/templates/css/blog_page.css
rename to website/templates/css/blog_page.css
diff --git a/erpnext/website/templates/css/login.css b/website/templates/css/login.css
similarity index 100%
rename from erpnext/website/templates/css/login.css
rename to website/templates/css/login.css
diff --git a/erpnext/website/templates/css/product_page.css b/website/templates/css/product_page.css
similarity index 100%
rename from erpnext/website/templates/css/product_page.css
rename to website/templates/css/product_page.css
diff --git a/erpnext/website/templates/css/products.css b/website/templates/css/products.css
similarity index 100%
rename from erpnext/website/templates/css/products.css
rename to website/templates/css/products.css
diff --git a/erpnext/website/templates/html/base.html b/website/templates/html/base.html
similarity index 74%
rename from erpnext/website/templates/html/base.html
rename to website/templates/html/base.html
index 8639a8f..c684b25 100644
--- a/erpnext/website/templates/html/base.html
+++ b/website/templates/html/base.html
@@ -3,7 +3,7 @@
 	<meta charset="utf-8">
 	<title>{% block title %}{% endblock %}</title>
 	<meta name="generator" content="wnframework">
-	<script type="text/javascript" src="js/lib/jquery/jquery.min.js"></script>
+	<script type="text/javascript" src="lib/js/lib/jquery/jquery.min.js"></script>
 	<script type="text/javascript" src="js/all-web.js"></script>
 	<script type="text/javascript" src="js/wn-web.js"></script>
 	<link type="text/css" rel="stylesheet" href="css/all-web.css">
@@ -13,8 +13,8 @@
 	<link rel="shortcut icon" href="files/{{ favicon }}" type="image/x-icon">
 	<link rel="icon" href="files/{{ favicon }}" type="image/x-icon">
 	{% else %}
-	<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon">
-	<link rel="icon" href="images/favicon.ico" type="image/x-icon">
+	<link rel="shortcut icon" href="app/images/favicon.ico" type="image/x-icon">
+	<link rel="icon" href="app/images/favicon.ico" type="image/x-icon">
 	{% endif %}
 	
 	
diff --git a/erpnext/website/templates/html/blog_page.html b/website/templates/html/blog_page.html
similarity index 100%
rename from erpnext/website/templates/html/blog_page.html
rename to website/templates/html/blog_page.html
diff --git a/erpnext/website/templates/html/blog_subscribe.html b/website/templates/html/blog_subscribe.html
similarity index 100%
rename from erpnext/website/templates/html/blog_subscribe.html
rename to website/templates/html/blog_subscribe.html
diff --git a/erpnext/website/templates/html/comment.html b/website/templates/html/comment.html
similarity index 100%
rename from erpnext/website/templates/html/comment.html
rename to website/templates/html/comment.html
diff --git a/erpnext/website/templates/html/outer.html b/website/templates/html/outer.html
similarity index 100%
rename from erpnext/website/templates/html/outer.html
rename to website/templates/html/outer.html
diff --git a/erpnext/website/templates/html/page.html b/website/templates/html/page.html
similarity index 100%
rename from erpnext/website/templates/html/page.html
rename to website/templates/html/page.html
diff --git a/erpnext/website/templates/html/product_page.html b/website/templates/html/product_page.html
similarity index 100%
rename from erpnext/website/templates/html/product_page.html
rename to website/templates/html/product_page.html
diff --git a/erpnext/website/templates/html/web_page.html b/website/templates/html/web_page.html
similarity index 100%
rename from erpnext/website/templates/html/web_page.html
rename to website/templates/html/web_page.html
diff --git a/erpnext/website/templates/js/blog.js b/website/templates/js/blog.js
similarity index 100%
rename from erpnext/website/templates/js/blog.js
rename to website/templates/js/blog.js
diff --git a/erpnext/website/templates/js/blog_page.js b/website/templates/js/blog_page.js
similarity index 100%
rename from erpnext/website/templates/js/blog_page.js
rename to website/templates/js/blog_page.js
diff --git a/erpnext/website/templates/js/blog_subscribe.js b/website/templates/js/blog_subscribe.js
similarity index 100%
rename from erpnext/website/templates/js/blog_subscribe.js
rename to website/templates/js/blog_subscribe.js
diff --git a/erpnext/website/templates/js/login.js b/website/templates/js/login.js
similarity index 100%
rename from erpnext/website/templates/js/login.js
rename to website/templates/js/login.js
diff --git a/erpnext/website/templates/js/product_category.js b/website/templates/js/product_category.js
similarity index 100%
rename from erpnext/website/templates/js/product_category.js
rename to website/templates/js/product_category.js
diff --git a/erpnext/website/templates/js/product_page.js b/website/templates/js/product_page.js
similarity index 100%
rename from erpnext/website/templates/js/product_page.js
rename to website/templates/js/product_page.js
diff --git a/erpnext/website/templates/js/products.js b/website/templates/js/products.js
similarity index 100%
rename from erpnext/website/templates/js/products.js
rename to website/templates/js/products.js
diff --git a/erpnext/website/templates/pages/404.html b/website/templates/pages/404.html
similarity index 100%
rename from erpnext/website/templates/pages/404.html
rename to website/templates/pages/404.html
diff --git a/erpnext/website/templates/pages/blog.html b/website/templates/pages/blog.html
similarity index 100%
rename from erpnext/website/templates/pages/blog.html
rename to website/templates/pages/blog.html
diff --git a/erpnext/website/templates/pages/index.html b/website/templates/pages/index.html
similarity index 100%
rename from erpnext/website/templates/pages/index.html
rename to website/templates/pages/index.html
diff --git a/erpnext/website/templates/pages/login.html b/website/templates/pages/login.html
similarity index 100%
rename from erpnext/website/templates/pages/login.html
rename to website/templates/pages/login.html
diff --git a/erpnext/website/templates/pages/products.html b/website/templates/pages/products.html
similarity index 100%
rename from erpnext/website/templates/pages/products.html
rename to website/templates/pages/products.html
diff --git a/erpnext/website/templates/pages/unsubscribed.html b/website/templates/pages/unsubscribed.html
similarity index 100%
rename from erpnext/website/templates/pages/unsubscribed.html
rename to website/templates/pages/unsubscribed.html
diff --git a/erpnext/website/utils.py b/website/utils.py
similarity index 100%
rename from erpnext/website/utils.py
rename to website/utils.py
diff --git a/erpnext/website/web_cache.py b/website/web_cache.py
similarity index 96%
rename from erpnext/website/web_cache.py
rename to website/web_cache.py
index 9892dac..cde5217 100644
--- a/erpnext/website/web_cache.py
+++ b/website/web_cache.py
@@ -82,7 +82,7 @@
 	import conf
 	import website.utils
 	
-	pages_path = os.path.join(conf.modules_path, 'website', 'templates', 'pages')
+	pages_path = os.path.join(os.path.dirname(conf.__file__), 'app', 'website', 'templates', 'pages')
 	
 	page_list = []
 	
@@ -176,7 +176,7 @@
 	"""
 	import os
 	import conf
-	templates_path = os.path.join(conf.modules_path, 'website', 'templates')
+	templates_path = os.path.join(os.path.dirname(conf.__file__), 'app', 'website', 'templates')
 	
 	from jinja2 import Environment, FileSystemLoader
 	jenv = Environment(loader = FileSystemLoader(templates_path))
diff --git a/erpnext/website/web_page.py b/website/web_page.py
similarity index 100%
rename from erpnext/website/web_page.py
rename to website/web_page.py