12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- # -*- coding: utf-8 -*-
- from __future__ import unicode_literals
- from django.conf.urls import url
- from tastypie.resources import Resource
- from tastypie.utils import trailing_slash
- from simplejson import JSONDecodeError
- from api.utils.odoo_api import (
- randomize_port,
- check_name,
- create_folders,
- create_configuration
- )
- import simplejson as json
- class OdooResource(Resource):
- class Meta:
- pass
- '''
- '''
- def prepend_urls(self):
- return [
- url(r'^(?P<resource_name>%s)/create%s$' % (self._meta.resource_name, trailing_slash), self.wrap_view('odoo_create'), name='api_odoo_create'),
- ]
-
- '''
- '''
- def odoo_create(self, request, **kwargs):
- self.method_check(request, allowed='post')
- self.is_authenticated(request)
- name = None
- try:
- data = json.loads(request.body)
- name = data['name']
- except JSONDecodeError:
- name = None
- except KeyError:
- name = None
- if not name:
- return self.create_response(request, {
- 'error_message': 'name is required'
- })
- name_exists = check_name(name)
- if name_exists:
- return self.create_response(request, {
- 'error_message': 'name is already exists'
- })
- create_folders(name)
- create_configuration(name)
- return self.create_response(request, {
- 'message': 'ok'
- })
|