5 from openobject.tools import expose
7 import openerp.controllers
8 from openerp.utils import rpc, TinyDict
10 class Piratepad(openerp.controllers.SecuredController):
11 _cp_path = "/piratepad"
14 return rpc.RPCProxy('res.company').read(
15 [rpc.session.company_id], ['pad_index'])[0]['pad_index']
17 def make_url(self, pad_name):
18 return urlparse.urljoin(
19 self.get_root(), '-'.join(pad_name.split())
22 @expose('json', methods=('POST',))
23 def link(self, pad_name):
24 params, data = TinyDict.split(cherrypy.session['params'])
25 ctx = dict(rpc.session.context,
26 default_res_model=params.model, default_res_id=params.id,
27 active_id=False, active_ids=[])
29 pad_name = pad_name.decode('utf8')
30 pad_link = self.make_url(pad_name)
31 attachment_id = rpc.RPCProxy('ir.attachment').create({
36 return {'id': attachment_id, 'name': pad_name, 'url': pad_link}