diff --git a/erpnext/docs/assets/img/articles/twofactor/twofactor-1.png b/erpnext/docs/assets/img/articles/twofactor/twofactor-1.png
new file mode 100644
index 0000000..6dd17f0
--- /dev/null
+++ b/erpnext/docs/assets/img/articles/twofactor/twofactor-1.png
Binary files differ
diff --git a/erpnext/docs/assets/img/articles/twofactor/twofactor-2.png b/erpnext/docs/assets/img/articles/twofactor/twofactor-2.png
new file mode 100644
index 0000000..c884213
--- /dev/null
+++ b/erpnext/docs/assets/img/articles/twofactor/twofactor-2.png
Binary files differ
diff --git a/erpnext/docs/assets/img/articles/twofactor/twofactor-3.png b/erpnext/docs/assets/img/articles/twofactor/twofactor-3.png
new file mode 100644
index 0000000..56eee8c
--- /dev/null
+++ b/erpnext/docs/assets/img/articles/twofactor/twofactor-3.png
Binary files differ
diff --git a/erpnext/docs/assets/img/articles/twofactor/twofactor-4.png b/erpnext/docs/assets/img/articles/twofactor/twofactor-4.png
new file mode 100644
index 0000000..6d8ecab
--- /dev/null
+++ b/erpnext/docs/assets/img/articles/twofactor/twofactor-4.png
Binary files differ
diff --git a/erpnext/docs/assets/img/articles/twofactor/twofactor-5.png b/erpnext/docs/assets/img/articles/twofactor/twofactor-5.png
new file mode 100644
index 0000000..1c39e94
--- /dev/null
+++ b/erpnext/docs/assets/img/articles/twofactor/twofactor-5.png
Binary files differ
diff --git a/erpnext/docs/assets/img/articles/twofactor/twofactor-6.png b/erpnext/docs/assets/img/articles/twofactor/twofactor-6.png
new file mode 100644
index 0000000..d62ba53
--- /dev/null
+++ b/erpnext/docs/assets/img/articles/twofactor/twofactor-6.png
Binary files differ
diff --git a/erpnext/docs/assets/img/articles/twofactor/twofactor-8.png b/erpnext/docs/assets/img/articles/twofactor/twofactor-8.png
new file mode 100644
index 0000000..84cf5fa
--- /dev/null
+++ b/erpnext/docs/assets/img/articles/twofactor/twofactor-8.png
Binary files differ
diff --git a/erpnext/docs/assets/img/articles/twofactor/twofactor_app.jpeg b/erpnext/docs/assets/img/articles/twofactor/twofactor_app.jpeg
new file mode 100644
index 0000000..ae5e930
--- /dev/null
+++ b/erpnext/docs/assets/img/articles/twofactor/twofactor_app.jpeg
Binary files differ
diff --git a/erpnext/docs/assets/img/setup-wizard/twofactor.png b/erpnext/docs/assets/img/setup-wizard/twofactor.png
new file mode 100644
index 0000000..ada4f5b
--- /dev/null
+++ b/erpnext/docs/assets/img/setup-wizard/twofactor.png
Binary files differ
diff --git a/erpnext/docs/assets/img/setup/settings/twofactor-settings.png b/erpnext/docs/assets/img/setup/settings/twofactor-settings.png
new file mode 100644
index 0000000..c56f304
--- /dev/null
+++ b/erpnext/docs/assets/img/setup/settings/twofactor-settings.png
Binary files differ
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/index.txt b/erpnext/docs/user/manual/en/setting-up/articles/index.txt
index e6a3b85..eb4d119 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/index.txt
+++ b/erpnext/docs/user/manual/en/setting-up/articles/index.txt
@@ -9,4 +9,5 @@
 naming-series-current-value
 overwriting-data-from-data-import-tool
 rename-user
-using-custom-domain-on-erpnext
\ No newline at end of file
+using-custom-domain-on-erpnext
+setup-two-factor-authentication
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/setup-two-factor-authentication.md b/erpnext/docs/user/manual/en/setting-up/articles/setup-two-factor-authentication.md
new file mode 100644
index 0000000..cdb4e34
--- /dev/null
+++ b/erpnext/docs/user/manual/en/setting-up/articles/setup-two-factor-authentication.md
@@ -0,0 +1,41 @@
+#Setup Two Factor Authentication
+
+##Enable Two Factor Authentication (2FA)
+
+Activate two factor authentication by running the command.
+
+`bench --site [sitename] enable_two_factor_auth true` 
+
+Specify the following in System Settings
+
+* The method of OTP validation (OTP App = TOTP using Soft or Hard Token while Email/SMS = HOTP using Email or SMS
+* The expiry time for the QR Code on the server if OTP App is specified
+* The OTP Issuer Name.
+
+<img alt="Enable Two Factor Auth" class="screenshot" src="/docs/assets/img/articles/twofactor/twofactor-1.png">
+
+
+On activation of 2FA from setup, it is also activated for the Role "All". In this way, all users including the Administrator have to perform a 2nd level authentication with a token. By unchecking the "Two Factor Authentication" checkbox in the "All" role and enabling it in other roles, the need to login with a token can be limited to specific roles. 2FA does not apply to login by Web Users and API login
+
+<img alt="Role Enable Two Factor Auth" class="screenshot" src="/docs/assets/img/articles/twofactor/twofactor-2.png">
+
+If using SMS authentication, please make sure that your SMS settings are updated
+
+<img alt="SMS Settings" class="screenshot" src="/docs/assets/img/articles/twofactor/twofactor-3.png">
+
+If using Email, make sure that your outgoing Email account settings are updated
+
+<img alt="Email Settings" class="screenshot" src="/docs/assets/img/articles/twofactor/twofactor-4.png">
+
+When the new user tries to log in for the first time in a system that has two-factor authentication enabled and which has the authentication option as OTP App, an email is sent containing a link to the QR Code.
+
+<img alt="Email Notify Two Factor" class="screenshot" src="/docs/assets/img/articles/twofactor/twofactor-5.png">
+<img alt="QR Code Page" class="screenshot" src="/docs/assets/img/articles/twofactor/twofactor-6.png">
+
+Scanning the QR Code with an authentication app like Google Authenticator registers the access for the user and automatically starts to generate tokens that can be used to login
+
+<img alt="Two Factor Scan App" class="screenshot" src="/docs/assets/img/articles/twofactor/twofactor_app.jpeg">
+
+If either of Email/SMS is used as the authentication method, you get notifications also
+
+<img alt="Email and SMS" class="screenshot" src="/docs/assets/img/articles/twofactor/twofactor-8.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/settings/system-settings.md b/erpnext/docs/user/manual/en/setting-up/settings/system-settings.md
index 43f47f1..e3f7453 100644
--- a/erpnext/docs/user/manual/en/setting-up/settings/system-settings.md
+++ b/erpnext/docs/user/manual/en/setting-up/settings/system-settings.md
@@ -10,4 +10,14 @@
 
 <img class="screenshot" alt="System Settings" src="/docs/assets/img/setup/settings/system-settings.png">
 
+####Two Factor Authentication.
+Settings for Two Factor Authentication can be configured here.
+
+* Select the authentication method to be used
+* Expiry time for QRCode image if "OTP App" is selected in method
+* Issuer name of the One Time Password
+
+<img class="screenshot" alt="Two Factor Auth" src="/docs/assets/img/setup/settings/twofactor-settings.png">
+
+
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/index.txt b/erpnext/docs/user/manual/en/setting-up/setup-wizard/index.txt
index 74f6a42..dad277a 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/index.txt
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/index.txt
@@ -1,10 +1,11 @@
 step-1-language
 step-2-currency-and-timezone
 step-3-user-details
-step-4-company-details
-step-5-letterhead-and-logo
-step-6-add-users
-step-7-tax-details
-step-8-customer-names
-step-9-suppliers
-step-10-item
+step-4-two-factor-authentication
+step-5-company-details
+step-6-letterhead-and-logo
+step-7-add-users
+step-8-tax-details
+step-9-customer-names
+step-10-suppliers
+step-11-item
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-suppliers.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-suppliers.md
similarity index 91%
rename from erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-suppliers.md
rename to erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-suppliers.md
index 46bcfba..364b4d6 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-suppliers.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-suppliers.md
@@ -1,4 +1,4 @@
-# Step 8: Suppliers
+# Step 10: Suppliers
 
 Enter a few of your Suppliers' names.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-item.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-11-item.md
similarity index 94%
rename from erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-item.md
rename to erpnext/docs/user/manual/en/setting-up/setup-wizard/step-11-item.md
index 837c333..42d7e3d 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-item.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-11-item.md
@@ -1,4 +1,4 @@
-# Step 9: Item Names
+# Step 11: Item Names
 
 In this final step, please enter the names of the Items you buy or sell.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-3-user-details.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-3-user-details.md
index 5d6002a..228b972 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-3-user-details.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-3-user-details.md
@@ -2,8 +2,7 @@
 
 Enter Users Profile Details like Name, User ID and preferred password.
 
-<img alt="User" class="screenshot"
-src="/docs/assets/img/setup-wizard/step-3.png">
+<img alt="User" class="screenshot" src="/docs/assets/img/setup-wizard/step-3.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-two-factor-authentication.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-two-factor-authentication.md
new file mode 100644
index 0000000..66bbd07
--- /dev/null
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-two-factor-authentication.md
@@ -0,0 +1,13 @@
+# Step 4: Two Factor Authentication
+
+Enable Two Factor Athentication
+
+<img alt="TwoFactor" class="screenshot" src="/docs/assets/img/setup-wizard/twofactor.png">
+
+---
+###Authentication Method
+Whenevever each user logs in, based on the role set for that user,
+they will be asked for a **One Time Password** after they input 
+their login details.
+
+{next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-company-details.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-company-details.md
similarity index 85%
rename from erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-company-details.md
rename to erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-company-details.md
index 2558f16..13a87e9 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-company-details.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-company-details.md
@@ -1,9 +1,8 @@
-# Step 4: Company Details
+# Step 5: Company Details
 
 Enter Company Details like Name, Abbreviation and Financial Year Details.
 
-<img alt="Company Details" class="screenshot"
-src="/docs/assets/img/setup-wizard/step-4.png">
+<img alt="Company Details" class="screenshot" src="/docs/assets/img/setup-wizard/step-4.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-add-users.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-add-users.md
deleted file mode 100644
index 0a0cd00..0000000
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-add-users.md
+++ /dev/null
@@ -1,8 +0,0 @@
-# Step 6: Add Users
-
-Add other users and assign them roles based on their job responsibilities.
-
-<img alt="Users" class="screenshot"
-src="/docs/assets/img/setup-wizard/step-6.png">
-
-{next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-letterhead-and-logo.md
similarity index 84%
rename from erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.md
rename to erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-letterhead-and-logo.md
index 9f45642..0286a3e 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-letterhead-and-logo.md
@@ -1,9 +1,8 @@
-# Step 5: Letterhead and Logo
+# Step 6: Letterhead and Logo
 
 Attach Company Letterhead and Company Logo.
 
-<img alt="Company Logo and Letterhead" class="screenshot"
-src="/docs/assets/img/setup-wizard/step-5.png">
+<img alt="Company Logo and Letterhead" class="screenshot" src="/docs/assets/img/setup-wizard/step-5.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-add-users.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-add-users.md
new file mode 100644
index 0000000..c92721c
--- /dev/null
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-add-users.md
@@ -0,0 +1,7 @@
+# Step 7: Add Users
+
+Add other users and assign them roles based on their job responsibilities.
+
+<img alt="Users" class="screenshot" src="/docs/assets/img/setup-wizard/step-6.png">
+
+{next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-tax-details.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-tax-details.md
similarity index 91%
rename from erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-tax-details.md
rename to erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-tax-details.md
index 3b42ebe..dae88e4 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-tax-details.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-tax-details.md
@@ -1,9 +1,8 @@
-# Step 6: Tax Details
+# Step 8: Tax Details
 
 Enter any three types of taxes which you regularly pay. This wizard will create a tax master which will calculate the taxes as per the tax-type.
 
-<img alt="Tax Details" class="screenshot"
-src="/docs/assets/img/setup-wizard/step-7.png">
+<img alt="Tax Details" class="screenshot" src="/docs/assets/img/setup-wizard/step-7.png">
 
 Just set the tax name and the standard percentage levied.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-customer-names.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-customer-names.md
similarity index 84%
rename from erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-customer-names.md
rename to erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-customer-names.md
index 2b6ae0c..e348943 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-customer-names.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-customer-names.md
@@ -1,10 +1,9 @@
-# Step 7: Customers
+# Step 9: Customers
 
 Enter your Customer names and the contact person from that organisation.
 
 
-<img alt="Customers" class="screenshot"
-src="/docs/assets/img/setup-wizard/step-8.png">
+<img alt="Customers" class="screenshot" src="/docs/assets/img/setup-wizard/step-8.png">
 
 ---
 
diff --git a/erpnext/patches/v8_6/point_sms_doctype_module_to_frappe_core.py b/erpnext/patches/v8_6/point_sms_doctype_module_to_frappe_core.py
new file mode 100644
index 0000000..014a74a
--- /dev/null
+++ b/erpnext/patches/v8_6/point_sms_doctype_module_to_frappe_core.py
@@ -0,0 +1,9 @@
+# Copyright (c) 2017, Frappe and Contributors
+# License: GNU General Public License v3. See license.txt
+
+from __future__ import unicode_literals
+import frappe
+
+def execute():
+	frappe.db.sql('''UPDATE `tabDocType` SET module="Core" 
+				WHERE name IN ("SMS Parameter", "SMS Settings");''')
\ No newline at end of file
diff --git a/erpnext/public/js/sms_manager.js b/erpnext/public/js/sms_manager.js
index 13e226f..6ce8bb1 100644
--- a/erpnext/public/js/sms_manager.js
+++ b/erpnext/public/js/sms_manager.js
@@ -35,7 +35,7 @@
 
 	this.get_contact_number = function(contact, ref_doctype, ref_name) {
 		frappe.call({
-			method: "erpnext.setup.doctype.sms_settings.sms_settings.get_contact_number",
+			method: "frappe.core.doctype.sms_settings.sms_settings.get_contact_number",
 			args: {
 				contact_name: contact,
 				ref_doctype: ref_doctype,
@@ -85,7 +85,7 @@
 			if(v) {
 				$(btn).set_working();
 				frappe.call({
-					method: "erpnext.setup.doctype.sms_settings.sms_settings.send_sms",
+					method: "frappe.core.doctype.sms_settings.sms_settings.send_sms",
 					args: {
 						receiver_list: [v.number],
 						msg: v.message
diff --git a/erpnext/selling/doctype/sms_center/sms_center.py b/erpnext/selling/doctype/sms_center/sms_center.py
index ea6832b..f3674ae 100644
--- a/erpnext/selling/doctype/sms_center/sms_center.py
+++ b/erpnext/selling/doctype/sms_center/sms_center.py
@@ -9,7 +9,7 @@
 
 from frappe.model.document import Document
 
-from erpnext.setup.doctype.sms_settings.sms_settings import send_sms
+from frappe.core.doctype.sms_settings.sms_settings import send_sms
 
 class SMSCenter(Document):
 	def create_receiver_list(self):
diff --git a/erpnext/setup/doctype/sms_parameter/README.md b/erpnext/setup/doctype/sms_parameter/README.md
deleted file mode 100644
index 5935a39..0000000
--- a/erpnext/setup/doctype/sms_parameter/README.md
+++ /dev/null
@@ -1 +0,0 @@
-SMS query parameter for SMS Settings.
\ No newline at end of file
diff --git a/erpnext/setup/doctype/sms_parameter/__init__.py b/erpnext/setup/doctype/sms_parameter/__init__.py
deleted file mode 100755
index baffc48..0000000
--- a/erpnext/setup/doctype/sms_parameter/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/erpnext/setup/doctype/sms_parameter/sms_parameter.json b/erpnext/setup/doctype/sms_parameter/sms_parameter.json
deleted file mode 100755
index afcabfa..0000000
--- a/erpnext/setup/doctype/sms_parameter/sms_parameter.json
+++ /dev/null
@@ -1,85 +0,0 @@
-{
- "allow_copy": 0, 
- "allow_import": 0, 
- "allow_rename": 0, 
- "beta": 0, 
- "creation": "2013-02-22 01:27:58", 
- "custom": 0, 
- "docstatus": 0, 
- "doctype": "DocType", 
- "editable_grid": 1, 
- "fields": [
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "fieldname": "parameter", 
-   "fieldtype": "Data", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_list_view": 1, 
-   "label": "Parameter", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "print_width": "150px", 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0, 
-   "width": "150px"
-  }, 
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "fieldname": "value", 
-   "fieldtype": "Data", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_list_view": 1, 
-   "label": "Value", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "print_width": "150px", 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0, 
-   "width": "150px"
-  }
- ], 
- "hide_heading": 0, 
- "hide_toolbar": 0, 
- "idx": 1, 
- "image_view": 0, 
- "in_create": 0, 
- "in_dialog": 0, 
- "is_submittable": 0, 
- "issingle": 0, 
- "istable": 1, 
- "max_attachments": 0, 
- "modified": "2016-07-11 03:28:08.624783", 
- "modified_by": "Administrator", 
- "module": "Setup", 
- "name": "SMS Parameter", 
- "owner": "Administrator", 
- "permissions": [], 
- "quick_entry": 0, 
- "read_only": 0, 
- "read_only_onload": 0, 
- "track_seen": 0
-}
\ No newline at end of file
diff --git a/erpnext/setup/doctype/sms_parameter/sms_parameter.py b/erpnext/setup/doctype/sms_parameter/sms_parameter.py
deleted file mode 100644
index 08b220b..0000000
--- a/erpnext/setup/doctype/sms_parameter/sms_parameter.py
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
-# License: GNU General Public License v3. See license.txt
-
-from __future__ import unicode_literals
-import frappe
-
-from frappe.model.document import Document
-
-class SMSParameter(Document):
-	pass
\ No newline at end of file
diff --git a/erpnext/setup/doctype/sms_settings/README.md b/erpnext/setup/doctype/sms_settings/README.md
deleted file mode 100644
index 4fb4980..0000000
--- a/erpnext/setup/doctype/sms_settings/README.md
+++ /dev/null
@@ -1 +0,0 @@
-Settings for automatically sending SMS from the system.
\ No newline at end of file
diff --git a/erpnext/setup/doctype/sms_settings/__init__.py b/erpnext/setup/doctype/sms_settings/__init__.py
deleted file mode 100755
index baffc48..0000000
--- a/erpnext/setup/doctype/sms_settings/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/erpnext/setup/doctype/sms_settings/sms_settings.js b/erpnext/setup/doctype/sms_settings/sms_settings.js
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/setup/doctype/sms_settings/sms_settings.js
+++ /dev/null
diff --git a/erpnext/setup/doctype/sms_settings/sms_settings.json b/erpnext/setup/doctype/sms_settings/sms_settings.json
deleted file mode 100755
index 23d6fa2..0000000
--- a/erpnext/setup/doctype/sms_settings/sms_settings.json
+++ /dev/null
@@ -1,202 +0,0 @@
-{
- "allow_copy": 1, 
- "allow_import": 0, 
- "allow_rename": 0, 
- "creation": "2013-01-10 16:34:24", 
- "custom": 0, 
- "docstatus": 0, 
- "doctype": "DocType", 
- "fields": [
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "fieldname": "column_break0", 
-   "fieldtype": "Column Break", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "in_filter": 0, 
-   "in_list_view": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0, 
-   "width": "50%"
-  }, 
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "description": "Eg. smsgateway.com/api/send_sms.cgi", 
-   "fieldname": "sms_gateway_url", 
-   "fieldtype": "Data", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "in_filter": 0, 
-   "in_list_view": 1, 
-   "label": "SMS Gateway URL", 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }, 
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "description": "Enter url parameter for message", 
-   "fieldname": "message_parameter", 
-   "fieldtype": "Data", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "in_filter": 0, 
-   "in_list_view": 1, 
-   "label": "Message Parameter", 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }, 
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "description": "Enter url parameter for receiver nos", 
-   "fieldname": "receiver_parameter", 
-   "fieldtype": "Data", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "in_filter": 0, 
-   "in_list_view": 1, 
-   "label": "Receiver Parameter", 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }, 
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "fieldname": "sms_sender_name", 
-   "fieldtype": "Data", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "in_filter": 0, 
-   "in_list_view": 0, 
-   "label": "SMS Sender Name", 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }, 
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "fieldname": "static_parameters_section", 
-   "fieldtype": "Column Break", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "in_filter": 0, 
-   "in_list_view": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0, 
-   "width": "50%"
-  }, 
-  {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "description": "Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)", 
-   "fieldname": "parameters", 
-   "fieldtype": "Table", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "in_filter": 0, 
-   "in_list_view": 0, 
-   "label": "Static Parameters", 
-   "no_copy": 0, 
-   "options": "SMS Parameter", 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }
- ], 
- "hide_heading": 0, 
- "hide_toolbar": 0, 
- "icon": "fa fa-cog", 
- "idx": 1, 
- "in_create": 0, 
- "in_dialog": 0, 
- "is_submittable": 0, 
- "issingle": 1, 
- "istable": 0, 
- "modified": "2015-03-02 02:24:19.692599", 
- "modified_by": "Administrator", 
- "module": "Setup", 
- "name": "SMS Settings", 
- "owner": "Administrator", 
- "permissions": [
-  {
-   "amend": 0, 
-   "apply_user_permissions": 0, 
-   "cancel": 0, 
-   "create": 1, 
-   "delete": 0, 
-   "email": 0, 
-   "export": 0, 
-   "if_owner": 0, 
-   "import": 0, 
-   "permlevel": 0, 
-   "print": 0, 
-   "read": 1, 
-   "report": 0, 
-   "role": "System Manager", 
-   "set_user_permissions": 0, 
-   "share": 1, 
-   "submit": 0, 
-   "write": 1
-  }
- ], 
- "read_only": 0, 
- "read_only_onload": 0
-}
\ No newline at end of file
diff --git a/erpnext/setup/doctype/sms_settings/sms_settings.py b/erpnext/setup/doctype/sms_settings/sms_settings.py
deleted file mode 100644
index a8b59be..0000000
--- a/erpnext/setup/doctype/sms_settings/sms_settings.py
+++ /dev/null
@@ -1,117 +0,0 @@
-# -*- coding: utf-8 -*-
-# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
-# License: GNU General Public License v3. See license.txt
-
-from __future__ import unicode_literals
-import frappe
-
-from frappe import _, throw, msgprint
-from frappe.utils import nowdate
-
-from frappe.model.document import Document
-
-class SMSSettings(Document):
-	pass
-
-def validate_receiver_nos(receiver_list):
-	validated_receiver_list = []
-	for d in receiver_list:
-		# remove invalid character
-		for x in [' ', '+', '-', '(', ')']:
-			d = d.replace(x, '')
-
-		validated_receiver_list.append(d)
-
-	if not validated_receiver_list:
-		throw(_("Please enter valid mobile nos"))
-
-	return validated_receiver_list
-
-
-def get_sender_name():
-	"returns name as SMS sender"
-	sender_name = frappe.db.get_single_value('SMS Settings', 'sms_sender_name') or \
-		'ERPNXT'
-	if len(sender_name) > 6 and \
-			frappe.db.get_default("country") == "India":
-		throw("""As per TRAI rule, sender name must be exactly 6 characters.
-			Kindly change sender name in Setup --> Global Defaults.
-			Note: Hyphen, space, numeric digit, special characters are not allowed.""")
-	return sender_name
-
-@frappe.whitelist()
-def get_contact_number(contact_name, ref_doctype, ref_name):
-	"returns mobile number of the contact"
-	number = frappe.db.sql("""select mobile_no, phone from tabContact 
-		where name=%s 
-			and exists(
-				select name from `tabDynamic Link` where link_doctype=%s and link_name=%s
-			)
-	""", (contact_name, ref_doctype, ref_name))
-	
-	return number and (number[0][0] or number[0][1]) or ''
-
-@frappe.whitelist()
-def send_sms(receiver_list, msg, sender_name = '', success_msg = True):
-
-	import json
-	if isinstance(receiver_list, basestring):
-		receiver_list = json.loads(receiver_list)
-		if not isinstance(receiver_list, list):
-			receiver_list = [receiver_list]
-
-	receiver_list = validate_receiver_nos(receiver_list)
-
-	arg = {
-		'receiver_list' : receiver_list,
-		'message'		: unicode(msg).encode('utf-8'),
-		'sender_name'	: sender_name or get_sender_name(),
-		'success_msg'	: success_msg
-	}
-
-	if frappe.db.get_value('SMS Settings', None, 'sms_gateway_url'):
-		send_via_gateway(arg)
-	else:
-		msgprint(_("Please Update SMS Settings"))
-
-def send_via_gateway(arg):
-	ss = frappe.get_doc('SMS Settings', 'SMS Settings')
-	args = {ss.message_parameter: arg.get('message')}
-	for d in ss.get("parameters"):
-		args[d.parameter] = d.value
-
-	success_list = []
-	for d in arg.get('receiver_list'):
-		args[ss.receiver_parameter] = d
-		status = send_request(ss.sms_gateway_url, args)
-
-		if 200 <= status < 300:
-			success_list.append(d)
-
-	if len(success_list) > 0:
-		args.update(arg)
-		create_sms_log(args, success_list)
-		if arg.get('success_msg'):
-			frappe.msgprint(_("SMS sent to following numbers: {0}").format("\n" + "\n".join(success_list)))
-
-
-def send_request(gateway_url, params):
-	import requests
-	response = requests.get(gateway_url, params = params, headers={'Accept': "text/plain, text/html, */*"})
-	response.raise_for_status()
-	return response.status_code
-
-
-# Create SMS Log
-# =========================================================
-def create_sms_log(args, sent_to):
-	sl = frappe.new_doc('SMS Log')
-	sl.sender_name = args['sender_name']
-	sl.sent_on = nowdate()
-	sl.message = args['message'].decode('utf-8')
-	sl.no_of_requested_sms = len(args['receiver_list'])
-	sl.requested_numbers = "\n".join(args['receiver_list'])
-	sl.no_of_sent_sms = len(sent_to)
-	sl.sent_to = "\n".join(sent_to)
-	sl.flags.ignore_permissions = True
-	sl.save()
