RaulAbejonDelgado / angular-odoo

Call Odoo webservices from AngularJS

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

angular-odoo

Call Odoo webservices from AngularJS

Why

Odoo is not HTTP friendly : every request shoud be POST, session_id should be added in the body, there some other stuff which should be added in each request...

This module gives you an abstraction and friendly methods in order to communicate with Odoo.

Requirements

  • OpenERP 7 or Odoo 8
  • Angular > 1.4

Install

Prefered method:

	bower install angular-odoo

Alternative :

Download dist/odoo.js or dist/odoo.min.js

Include

Add the script to your page :

<script src="path/to/angular-odoo/dist/odoo.js"></script>

Add the module odoo to your applicaiton:

	angular.module('yourApplication', ['odoo']);

Use in your services

Add jsonRpc as a dependency.

angular.module('loginCtrl', ['$scope', 'jsonRpc', function($scope, jsonRpc) {
	
	jsonRpc.getDbList().then(function (result) {
		//get databases list
		$scope.dbs = result;
	});

	$scope.login = function(creds) {
		jsonRpc.login(creds.db, creds.username, creds.password).then(function () {
			//login successfull redirect here
		}, function(reason) {
			//display error
		});
	};
}]);

High level functions :

  • login
  • isLoggedIn
  • logout
  • searchRead
  • getSessionInfo
  • getServerInfo
  • getDbList
  • syncDataImport
  • syncImportObject
  • call

Please read src/components/odoo/jsonRPC-service.js for code and detailled documentation.

At Akretion, we write Angular / Ionic applications and use this lib in all our devs when Odoo is the backend.

Tests

There is some tests in jsonRpc.spec.js

Contributors

About

Call Odoo webservices from AngularJS


Languages

Language:JavaScript 100.0%