[FIX] pad, share, wiki: update import to openobject.rpc instead of openerp.utils...
[odoo/odoo.git] / addons / pad / web / controllers.py
1 import urlparse
2
3 import cherrypy
4
5 from openobject import rpc
6 from openobject.tools import expose
7
8 import openerp.controllers
9 from openerp.utils import TinyDict
10
11 class Piratepad(openerp.controllers.SecuredController):
12     _cp_path = "/piratepad"
13
14     def get_root(self):
15         return rpc.RPCProxy('res.company').read(
16                 [rpc.get_session().company_id], ['pad_index'])[0]['pad_index']
17
18     def make_url(self, pad_name):
19         return urlparse.urljoin(
20             self.get_root(), '-'.join(pad_name.split())
21         )
22
23     @expose('json', methods=('POST',))
24     def link(self, pad_name):
25         params, data = TinyDict.split(cherrypy.session['params'])
26         ctx = dict(rpc.get_session().context,
27                    default_res_model=params.model, default_res_id=params.id,
28                    active_id=False, active_ids=[])
29
30         pad_name = pad_name.decode('utf8')
31         pad_link = self.make_url(pad_name)
32         attachment_id = rpc.RPCProxy('ir.attachment').create({
33             'name': pad_name,
34             'url': pad_link,
35             'type': 'url'
36             }, ctx)
37         return {'id': attachment_id, 'name': pad_name, 'url': pad_link}