replaced string_types with basestring
diff --git a/erpnext/accounts/doctype/pricing_rule/pricing_rule.py b/erpnext/accounts/doctype/pricing_rule/pricing_rule.py
index c26cb92..1087878 100644
--- a/erpnext/accounts/doctype/pricing_rule/pricing_rule.py
+++ b/erpnext/accounts/doctype/pricing_rule/pricing_rule.py
@@ -208,7 +208,7 @@
@frappe.whitelist()
def remove_pricing_rules(item_list):
- if isinstance(item_list, basestring):
+ if isinstance(item_list, string_types):
item_list = json.loads(item_list)
out = []
diff --git a/erpnext/accounts/doctype/sales_invoice/pos.py b/erpnext/accounts/doctype/sales_invoice/pos.py
index 20eb14b..be6078a 100644
--- a/erpnext/accounts/doctype/sales_invoice/pos.py
+++ b/erpnext/accounts/doctype/sales_invoice/pos.py
@@ -14,6 +14,8 @@
from frappe.core.doctype.communication.email import make
from frappe.utils import nowdate
+from six import string_types
+
@frappe.whitelist()
def get_pos_data():
@@ -196,7 +198,7 @@
def get_customers_address(customers):
customer_address = {}
- if isinstance(customers, basestring):
+ if isinstance(customers, string_types):
customers = [frappe._dict({'name': customers})]
for data in customers:
@@ -216,7 +218,7 @@
def get_contacts(customers):
customer_contact = {}
- if isinstance(customers, basestring):
+ if isinstance(customers, string_types):
customers = [frappe._dict({'name': customers})]
for data in customers:
@@ -351,13 +353,13 @@
@frappe.whitelist()
def make_invoice(doc_list={}, email_queue_list={}, customers_list={}):
- if isinstance(doc_list, basestring):
+ if isinstance(doc_list, string_types):
doc_list = json.loads(doc_list)
- if isinstance(email_queue_list, basestring):
+ if isinstance(email_queue_list, string_types):
email_queue_list = json.loads(email_queue_list)
- if isinstance(customers_list, basestring):
+ if isinstance(customers_list, string_types):
customers_list = json.loads(customers_list)
customers_list = make_customer_and_address(customers_list)
diff --git a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.py b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.py
index 97c4438..d57cd7d 100644
--- a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.py
+++ b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.py
@@ -16,6 +16,8 @@
from erpnext.controllers.buying_controller import BuyingController
from erpnext.buying.utils import validate_for_items
+from six import string_types
+
STANDARD_USERS = ("Guest", "Administrator")
class RequestforQuotation(BuyingController):
@@ -240,7 +242,7 @@
# This method is used to make supplier quotation from supplier's portal.
@frappe.whitelist()
def create_supplier_quotation(doc):
- if isinstance(doc, basestring):
+ if isinstance(doc, string_types):
doc = json.loads(doc)
try:
diff --git a/erpnext/controllers/item_variant.py b/erpnext/controllers/item_variant.py
index 5470446..e8260d9 100644
--- a/erpnext/controllers/item_variant.py
+++ b/erpnext/controllers/item_variant.py
@@ -52,7 +52,7 @@
return variant
def validate_item_variant_attributes(item, args=None):
- if isinstance(item, basestring):
+ if isinstance(item, string_types):
item = frappe.get_doc('Item', item)
if not args:
diff --git a/erpnext/selling/page/point_of_sale/point_of_sale.py b/erpnext/selling/page/point_of_sale/point_of_sale.py
index 666284f..bbfb5ad 100644
--- a/erpnext/selling/page/point_of_sale/point_of_sale.py
+++ b/erpnext/selling/page/point_of_sale/point_of_sale.py
@@ -7,6 +7,8 @@
from frappe.utils import cint
from erpnext.accounts.doctype.pos_profile.pos_profile import get_item_groups
+from six import string_types
+
@frappe.whitelist()
def get_items(start, page_length, price_list, item_group, search_value="", pos_profile=None):
serial_no = ""
@@ -90,7 +92,7 @@
@frappe.whitelist()
def submit_invoice(doc,is_saved):
- if isinstance(doc, basestring):
+ if isinstance(doc, string_types):
args = json.loads(doc)
if(cint(is_saved) == 1):
diff --git a/erpnext/setup/doctype/terms_and_conditions/terms_and_conditions.py b/erpnext/setup/doctype/terms_and_conditions/terms_and_conditions.py
index 85cf4dd..a2152a6 100644
--- a/erpnext/setup/doctype/terms_and_conditions/terms_and_conditions.py
+++ b/erpnext/setup/doctype/terms_and_conditions/terms_and_conditions.py
@@ -7,6 +7,8 @@
from frappe.model.document import Document
from frappe.utils.jinja import validate_template
+from six import string_types
+
class TermsandConditions(Document):
def validate(self):
if self.terms:
@@ -14,7 +16,7 @@
@frappe.whitelist()
def get_terms_and_conditions(template_name, doc):
- if isinstance(doc, basestring):
+ if isinstance(doc, string_types):
doc = json.loads(doc)
terms_and_conditions = frappe.get_doc("Terms and Conditions", template_name)
diff --git a/erpnext/stock/doctype/material_request/material_request.py b/erpnext/stock/doctype/material_request/material_request.py
index defce62..3287441 100644
--- a/erpnext/stock/doctype/material_request/material_request.py
+++ b/erpnext/stock/doctype/material_request/material_request.py
@@ -15,6 +15,8 @@
from erpnext.manufacturing.doctype.production_order.production_order import get_item_details
from erpnext.buying.utils import check_for_closed_status, validate_for_items
+from six import string_types
+
form_grid_templates = {
"items": "templates/form_grid/material_request_grid.html"
}
@@ -275,7 +277,7 @@
@frappe.whitelist()
def make_purchase_order_based_on_supplier(source_name, target_doc=None):
if target_doc:
- if isinstance(target_doc, basestring):
+ if isinstance(target_doc, string_types):
import json
target_doc = frappe.get_doc(json.loads(target_doc))
target_doc.set("items", [])
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.py b/erpnext/stock/doctype/stock_entry/stock_entry.py
index 4915c78..4de2002 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry.py
+++ b/erpnext/stock/doctype/stock_entry/stock_entry.py
@@ -872,7 +872,7 @@
@frappe.whitelist()
def move_sample_to_retention_warehouse(company, items):
- if isinstance(items, basestring):
+ if isinstance(items, string_types):
items = json.loads(items)
retention_warehouse = frappe.db.get_single_value('Stock Settings', 'sample_retention_warehouse')
stock_entry = frappe.new_doc("Stock Entry")
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry_utils.py b/erpnext/stock/doctype/stock_entry/stock_entry_utils.py
index 29e3eb1..8bf2610 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry_utils.py
+++ b/erpnext/stock/doctype/stock_entry/stock_entry_utils.py
@@ -4,6 +4,8 @@
import frappe, erpnext
from frappe.utils import cint, flt
+from six import string_types
+
@frappe.whitelist()
def make_stock_entry(**args):
'''Helper function to make a Stock Entry
@@ -49,7 +51,7 @@
if args.item_code:
args.item = args.item_code
- if isinstance(args.qty, basestring):
+ if isinstance(args.qty, string_types):
if '.' in args.qty:
args.qty = flt(args.qty)
else:
diff --git a/erpnext/utilities/transaction_base.py b/erpnext/utilities/transaction_base.py
index 0032e80..6594c30 100644
--- a/erpnext/utilities/transaction_base.py
+++ b/erpnext/utilities/transaction_base.py
@@ -8,6 +8,8 @@
from frappe.utils import cstr, now_datetime, cint, flt, get_time
from erpnext.controllers.status_updater import StatusUpdater
+from six import string_types
+
class UOMMustBeIntegerError(frappe.ValidationError): pass
class TransactionBase(StatusUpdater):
@@ -139,7 +141,7 @@
where ref_type=%s and ref_name=%s""", (ref_type, ref_name)), for_reload=True)
def validate_uom_is_integer(doc, uom_field, qty_fields, child_dt=None):
- if isinstance(qty_fields, basestring):
+ if isinstance(qty_fields, string_types):
qty_fields = [qty_fields]
distinct_uoms = list(set([d.get(uom_field) for d in doc.get_all_children()]))