5 from openobject import rpc
6 from openobject.tools import expose
8 import openerp.controllers
9 from openerp.utils import TinyDict
11 class Piratepad(openerp.controllers.SecuredController):
12 _cp_path = "/piratepad"
15 return rpc.RPCProxy('res.company').read(
16 [rpc.get_session().company_id], ['pad_index'])[0]['pad_index']
18 def make_url(self, pad_name):
19 return urlparse.urljoin(
20 self.get_root(), '-'.join(pad_name.split())
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=[])
30 pad_name = pad_name.decode('utf8')
31 pad_link = self.make_url(pad_name)
32 attachment_id = rpc.RPCProxy('ir.attachment').create({
37 return {'id': attachment_id, 'name': pad_name, 'url': pad_link}