Beispiel #1
0
 def check_connection(self):
     if self.use_pure_rest_api:
         success, resp = oc_request(self.url + '/languages',
                                    headers=self.headers)
     else:
         success, resp = oc_request(self.url + '/countries',
                                    headers=self.headers)
     return (success, resp.get('error', ''))
Beispiel #2
0
    def get_product(self, product_id):
        success, resp = oc_request(self.url + '/products/%s' % product_id,
                                   headers=self.headers)
        product = resp.get('data', {})
        product['product_id'] = product.get('product_id') or product.get('id')

        # resolving category_id
        if isinstance(product.get('category'), dict):
            for category_id, first_category in product.get('category').items():
                product['category_id'] = category_id
                break

        for i, first_description in product.get('product_description').items():
            if isinstance(first_description, list):
                for k, val in first_description[0].items():
                    product[k] = val
                break
            else:
                for k, val in first_description.items():
                    product[k] = val
            if i.isdigit():
                break
            else:
                product[i] = first_description
        return (success, product)
Beispiel #3
0
 def delete_customer(self, customer_id):
     data = {'customers': [customer_id]}
     success, resp = oc_request(self.url + '/customers',
                                headers=self.headers,
                                method='DELETE',
                                data=data)
     return (success, resp)
 def get_categories_by_level(self, level=1):
     success, resp = oc_request(self.url + '/categories/level/%s' % str(level), headers=self.headers)
     if not success:
         return
     categories_resp = resp.get('data').get('categories', {})
     for c in categories_resp:
         yield OpencartCategory(self, categories_resp.get(c)[0], level=level)
Beispiel #5
0
 def get_orders_by_customer(self, customer_id):
     success, resp = oc_request(self.url + '/orders/user/%s' % customer_id,
                                headers=self.headers)
     if not success:
         return
     for o in resp.get('data'):
         yield self.get_order(o.get('order_id'))
 def get_categories_by_parent(self, parent_id):
     success, resp = oc_request(self.url + '/categories/parent/%s' % parent_id, headers=self.headers)
     if not success:
         return
     categories_resp = resp.get('data').get('categories', {})
     for c in categories_resp:
         yield OpencartCategory(self, categories_resp.get(c)[0], parent=parent_id)
Beispiel #7
0
 def delete_order(self, order_id):
     data = {'orders': [order_id]}
     success, resp = oc_request(self.url + '/orders/%s' % order_id,
                                headers=self.headers,
                                method='DELETE',
                                data=data)
     return (success, resp)
Beispiel #8
0
 def get_products_by_category(self, category_id, limit=100, page=1):
     while True:
         success, resp = oc_request(
             self.url + '/products/category/%s/limit/%s/page/%s' %
             (category_id, str(limit), str(page)),
             headers=self.headers)
         if not success or not resp.get('data'):
             break
         page += 1
         for c in resp.get('data', {}):
             c['category_id'] = category_id
             c['product_id'] = c.get('product_id') or c.get('id')
             for i, first_description in c.get(
                     'product_description').items():
                 if isinstance(first_description, list):
                     for k, val in first_description[0].items():
                         c[k] = val
                     break
                 else:
                     for k, val in first_description.items():
                         c[k] = val
                 if i.isdigit():
                     break
                 else:
                     c[i] = first_description
             c['options_list'] = [
                 OpencartProductOptionExt(self, o) for o in c.get('options')
             ] if c.get('options') else []
             yield c
 def get_customers(self, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url + '/customers/limit/%s/page/%s' % (str(limit), str(page)), headers=self.headers)
         if not success or not resp.get('data'):
             break
         page += 1
         for c in resp.get('data'):
             yield self.get_customer(c.get('customer_id'))
 def get_all_products(self, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url + '/products/limit/%s/page/%s' % (str(limit), str(page)), headers=self.headers)
         if not success or not resp.get('data'):
             break
         page += 1
         for c in resp.get('data', {}):
             yield c
 def get_product_options(self, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url + '/product_options/limit/%s/page/%s' % (str(limit), str(page)), headers=self.headers)
         if not success or not resp.get('data'):
             break
         page += 1
         for po in resp.get('data'):
             yield OpencartProductOption(self, po)
 def get_stores(self):
     success, resp = oc_request(self.url + '/stores', headers=self.headers)
     if not success:
         return
     stores = resp.get('data')
     yield OpencartStore(self, stores)
     for i in stores:
         if i.isdigit():
             yield OpencartStore(self, stores.get(i))
 def get_customer_groups(self, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url + '/customergroups/limit/%s/page/%s' % (str(limit), str(page)), headers=self.headers)
         customer_groups = resp.get('data')
         if not success or not customer_groups:
             break
         page += 1
         for g in customer_groups:
             yield OpencartCustomerGroup(self, customer_groups.get(g)[0])
Beispiel #14
0
 def get_stores(self):
     success, resp = oc_request(self.url + '/stores', headers=self.headers)
     if not success:
         return
     stores = resp.get('data')
     yield OpencartStore(self, stores)
     for i in stores:
         if i.isdigit():
             yield OpencartStore(self, stores.get(i))
 def get_customer_group_json(self, limit=100, page=1, language_id=1):
     # for now just ignoring language_id
     while True:
         success, resp = oc_request(self.url + '/customergroups/limit/%s/page/%s' % (str(limit), str(page)), headers=self.headers)
         customer_groups = resp.get('data', {})
         if not success or not customer_groups:
             break
         page += 1
         for g in customer_groups:
             yield customer_groups.get(g)[0]
Beispiel #16
0
 def get_categories_by_level(self, level=1):
     success, resp = oc_request(self.url +
                                '/categories/level/%s' % str(level),
                                headers=self.headers)
     if not success:
         return
     categories_resp = resp.get('data').get('categories', {})
     for c in categories_resp:
         yield OpencartCategory(self,
                                categories_resp.get(c)[0],
                                level=level)
Beispiel #17
0
 def get_categories_by_parent(self, parent_id):
     success, resp = oc_request(self.url +
                                '/categories/parent/%s' % parent_id,
                                headers=self.headers)
     if not success:
         return
     categories_resp = resp.get('data').get('categories', {})
     for c in categories_resp:
         yield OpencartCategory(self,
                                categories_resp.get(c)[0],
                                parent=parent_id)
Beispiel #18
0
 def get_customers(self, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url +
                                    '/customers/limit/%s/page/%s' %
                                    (str(limit), str(page)),
                                    headers=self.headers)
         if not success or not resp.get('data'):
             break
         page += 1
         for c in resp.get('data'):
             yield self.get_customer(c.get('customer_id'))
Beispiel #19
0
 def get_product_options(self, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url +
                                    '/product_options/limit/%s/page/%s' %
                                    (str(limit), str(page)),
                                    headers=self.headers)
         if not success or not resp.get('data'):
             break
         page += 1
         for po in resp.get('data'):
             yield OpencartProductOption(self, po)
Beispiel #20
0
 def get_all_products(self, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url +
                                    '/products/limit/%s/page/%s' %
                                    (str(limit), str(page)),
                                    headers=self.headers)
         if not success or not resp.get('data'):
             break
         page += 1
         for c in resp.get('data', {}):
             yield c
Beispiel #21
0
 def get_customer_groups(self, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url +
                                    '/customergroups/limit/%s/page/%s' %
                                    (str(limit), str(page)),
                                    headers=self.headers)
         customer_groups = resp.get('data')
         if not success or not customer_groups:
             break
         page += 1
         for g in customer_groups:
             yield OpencartCustomerGroup(self, customer_groups.get(g)[0])
Beispiel #22
0
 def get_customer_group_json(self, limit=100, page=1, language_id=1):
     # for now just ignoring language_id
     while True:
         success, resp = oc_request(self.url +
                                    '/customergroups/limit/%s/page/%s' %
                                    (str(limit), str(page)),
                                    headers=self.headers)
         customer_groups = resp.get('data', {})
         if not success or not customer_groups:
             break
         page += 1
         for g in customer_groups:
             yield customer_groups.get(g)[0]
 def get_products_by_category(self, category_id, limit=100, page=1):
     while True:
         success, resp = oc_request(self.url + '/products/category/%s/limit/%s/page/%s' % (category_id, str(limit), str(page)), headers=self.headers)
         if not success or not resp.get('data'):
             break
         page += 1
         for c in resp.get('data', {}):
             c['category_id'] = category_id
             c['product_id'] = c.get('product_id') or c.get('id')
             for i, first_description in c.get('product_description').items():
                 if isinstance(first_description, list):
                     for k, val in first_description[0].items():
                         c[k] = val
                     break
                 else:
                     for k, val in first_description.items():
                         c[k] = val
                 if i.isdigit():
                     break
                 else:
                     c[i] = first_description
             c['options_list'] = [OpencartProductOptionExt(self, o) for o in c.get('options')] if c.get('options') else []
             yield c
    def get_product(self, product_id):
        success, resp = oc_request(self.url + '/products/%s' % product_id, headers=self.headers)
        product = resp.get('data', {})
        product['product_id'] = product.get('product_id') or product.get('id')

        # resolving category_id
        if isinstance(product.get('category'), dict):
            for category_id, first_category in product.get('category').items():
                product['category_id'] = category_id
                break

        for i, first_description in product.get('product_description').items():
            if isinstance(first_description, list):
                for k, val in first_description[0].items():
                    product[k] = val
                break
            else:
                for k, val in first_description.items():
                    product[k] = val
            if i.isdigit():
                break
            else:
                product[i] = first_description
        return (success, product)
 def get_payment_methods(self):
     success, resp = oc_request(self.url + '/paymentmethods', headers=self.headers)
     return (success, resp.get('data', []) if success else [])
 def get_order_statuses(self):
     success, resp = oc_request(self.url + '/order_statuses', headers=self.headers)
     return (success, resp.get('data', []) if success else [])
 def check_connection(self):
     if self.use_pure_rest_api:
         success, resp = oc_request(self.url + '/languages', headers=self.headers)
     else:
         success, resp = oc_request(self.url + '/countries', headers=self.headers)
     return (success, resp.get('error', ''))
 def get_orders_addeed_from_to(self, added_from, added_to):
     success, resp = oc_request(self.url + '/orders/details/added_from/%s/added_to/%s' % (added_from, added_to), headers=self.headers)
     return (success, resp.get('data', []) if success else [])
 def delete_order(self, order_id):
     data = {'orders': [order_id]}
     success, resp = oc_request(self.url + '/orders/%s' % order_id, headers=self.headers, method='DELETE', data=data)
     return (success, resp)
 def create_order(self, data):
     success, resp = oc_request(self.url + '/orderadmin', headers=self.headers, method='POST', data=data)
     return (success, resp)
Beispiel #31
0
 def get_payment_methods(self):
     success, resp = oc_request(self.url + '/paymentmethods',
                                headers=self.headers)
     return (success, resp.get('data', []) if success else [])
 def create_product(self, data):
     success, resp = oc_request(self.url + '/products', headers=self.headers, method='POST', data=data)
     return (success, str(resp.get('product_id', '')))
Beispiel #33
0
 def update_order(self, order_id, data):
     success, resp = oc_request(self.url + '/orders/%s' % order_id,
                                headers=self.headers,
                                method='PUT',
                                data=data)
     return (success, resp)
Beispiel #34
0
 def get_orders_addeed_from_to(self, added_from, added_to):
     success, resp = oc_request(
         self.url + '/orders/details/added_from/%s/added_to/%s' %
         (added_from, added_to),
         headers=self.headers)
     return (success, resp.get('data', []) if success else [])
Beispiel #35
0
 def get_orders(self):
     success, resp = oc_request(self.url + '/orders', headers=self.headers)
     if not success:
         return
     for o in resp.get('data'):
         yield self.get_order(o.get('order_id'))
Beispiel #36
0
 def get_init(self):
     success, resp = oc_request(self.url + '/init', headers=self.headers)
     return (success, resp.get('data', {}) if success else {})
Beispiel #37
0
 def get_order_statuses(self):
     success, resp = oc_request(self.url + '/order_statuses',
                                headers=self.headers)
     return (success, resp.get('data', []) if success else [])
Beispiel #38
0
 def delete_product(self, product_id):
     success, resp = oc_request(self.url + '/products/%s' % product_id,
                                headers=self.headers,
                                method='DELETE')
     return success
Beispiel #39
0
 def create_product(self, data):
     success, resp = oc_request(self.url + '/products',
                                headers=self.headers,
                                method='POST',
                                data=data)
     return (success, str(resp.get('product_id', '')))
 def update_product(self, product_id, data):
     success, resp = oc_request(self.url + '/products/%s' % product_id, headers=self.headers, method='PUT', data=data)
     return success
 def get_order_json(self, order_id):
     success, resp = oc_request(self.url + '/orders/%s' % order_id, headers=self.headers)
     return (success, resp.get('data', {}))
 def delete_product(self, product_id):
     success, resp = oc_request(self.url + '/products/%s' % product_id, headers=self.headers, method='DELETE')
     return success
 def update_order(self, order_id, data):
     success, resp = oc_request(self.url + '/orders/%s' % order_id, headers=self.headers, method='PUT', data=data)
     return (success, resp)
Beispiel #44
0
 def create_order(self, data):
     success, resp = oc_request(self.url + '/orderadmin',
                                headers=self.headers,
                                method='POST',
                                data=data)
     return (success, resp)
 def get_orders_by_customer(self, customer_id):
     success, resp = oc_request(self.url + '/orders/user/%s' % customer_id, headers=self.headers)
     if not success:
         return
     for o in resp.get('data'):
         yield self.get_order(o.get('order_id'))
Beispiel #46
0
 def get_order_json(self, order_id):
     success, resp = oc_request(self.url + '/orders/%s' % order_id,
                                headers=self.headers)
     return (success, resp.get('data', {}))
 def get_orders(self):
     success, resp = oc_request(self.url + '/orders', headers=self.headers)
     if not success:
         return
     for o in resp.get('data'):
         yield self.get_order(o.get('order_id'))
Beispiel #48
0
 def get_order(self, order_id):
     success, resp = oc_request(self.url + '/orders/%s' % order_id,
                                headers=self.headers)
     order = resp.get('data')
     return OpencartOrder(self, order) if order else None
 def get_init(self):
     success, resp = oc_request(self.url + '/init', headers=self.headers)
     return (success, resp.get('data', {}) if success else {})
 def get_customer(self, customer_id):
     success, resp = oc_request(self.url + '/customers/%s' % customer_id, headers=self.headers)
     return (success, resp.get('data', {}))
 def get_shipping_methods(self):
     success, resp = oc_request(self.url + '/shippingmethods', headers=self.headers)
     return (success, resp.get('data', []) if success else [])
 def create_customer(self, data):
     success, resp = oc_request(self.url + '/customers', headers=self.headers, method='POST', data=data)
     return (success, resp)
Beispiel #53
0
 def get_customer(self, customer_id):
     success, resp = oc_request(self.url + '/customers/%s' % customer_id,
                                headers=self.headers)
     return (success, resp.get('data', {}))
 def delete_customer(self, customer_id):
     data = {'customers': [customer_id]}
     success, resp = oc_request(self.url + '/customers', headers=self.headers, method='DELETE', data=data)
     return (success, resp)
Beispiel #55
0
 def update_product(self, product_id, data):
     success, resp = oc_request(self.url + '/products/%s' % product_id,
                                headers=self.headers,
                                method='PUT',
                                data=data)
     return success
Beispiel #56
0
 def create_customer(self, data):
     success, resp = oc_request(self.url + '/customers',
                                headers=self.headers,
                                method='POST',
                                data=data)
     return (success, resp)
 def get_order(self, order_id):
     success, resp = oc_request(self.url + '/orders/%s' % order_id, headers=self.headers)
     order = resp.get('data')
     return OpencartOrder(self, order) if order else None
Beispiel #58
0
 def get_shipping_methods(self):
     success, resp = oc_request(self.url + '/shippingmethods',
                                headers=self.headers)
     return (success, resp.get('data', []) if success else [])