3 from openobject.tools import expose, ast
4 from openerp.controllers import actions
5 from openerp.utils import rpc
7 import openerp.controllers
12 class ShareWizardController(openerp.controllers.SecuredController):
16 def index(self, domain, search_domain, context, view_id):
17 context = ast.literal_eval(context)
19 action_id = rpc.RPCProxy('ir.actions.act_window').search(
20 [('view_id','=',int(view_id))], context=context)
21 if not action_id: return ""
23 domain = ast.literal_eval(domain)
24 domain.extend(ast.literal_eval(search_domain))
26 action_id = action_id[0]
27 share_model = 'share.wizard'
29 scheme, netloc, _, _, _ = urlparse.urlsplit(cherrypy.request.base)
30 share_root_url = urlparse.urlunsplit((
31 scheme, netloc, '/openerp/login',
32 'db=%(dbname)s&user=%(login)s&password=%(password)s', ''))
34 share_wiz_id = rpc.RPCProxy('ir.ui.menu').search(
35 [('name','=', 'Share Wizard')])
37 active_ids=share_wiz_id,
38 active_id=share_wiz_id[0],
39 _terp_view_name='Share Wizard',
40 share_root_url=share_root_url)
41 sharing_view_id = rpc.RPCProxy(share_model).create({
42 'domain': str(domain),
45 return actions.execute(
46 rpc.session.execute('object', 'execute', share_model, 'go_step_1',
47 [sharing_view_id], context),
48 ids=[sharing_view_id], context=context)