[MERGE] trunk
[odoo/odoo.git] / openerp / addons / test_workflow / models.py
1 # -*- coding: utf-8 -*-
2 import openerp
3
4 class m(openerp.osv.orm.Model):
5     """ A model for which we will define a workflow (see data.xml). """
6     _name = 'test.workflow.model'
7
8     def print_(self, cr, uid, ids, s, context=None):
9         print '  Running activity `%s` for record %s' % (s, ids)
10         return True
11
12     def print_a(self, cr, uid, ids, context=None):
13         return self.print_(cr, uid, ids, 'a', context)
14
15     def print_b(self, cr, uid, ids, context=None):
16         return self.print_(cr, uid, ids, 'b', context)
17
18     def print_c(self, cr, uid, ids, context=None):
19         return self.print_(cr, uid, ids, 'c', context)
20
21     def condition(self, cr, uid, ids, context=None):
22         m = self.pool['test.workflow.trigger']
23         for r in m.browse(cr, uid, [1], context=context):
24             if not r.value:
25                 return False
26         return True
27
28     def trigger(self, cr, uid, context=None):
29         return openerp.workflow.trg_trigger(uid, 'test.workflow.trigger', 1, cr)
30
31 class n(openerp.osv.orm.Model):
32     """ A model used for the trigger feature. """
33     _name = 'test.workflow.trigger'
34     _columns = { 'value': openerp.osv.fields.boolean('Value') }
35     _defaults = { 'value': False }
36
37 class a(openerp.osv.orm.Model):
38     _name = 'test.workflow.model.a'
39     _columns = { 'value': openerp.osv.fields.integer('Value') }
40     _defaults = { 'value': 0 }
41
42 class b(openerp.osv.orm.Model):
43     _name = 'test.workflow.model.b'
44     _inherit = 'test.workflow.model.a'
45
46 class c(openerp.osv.orm.Model):
47     _name = 'test.workflow.model.c'
48     _inherit = 'test.workflow.model.a'
49
50 class d(openerp.osv.orm.Model):
51     _name = 'test.workflow.model.d'
52     _inherit = 'test.workflow.model.a'
53
54 class e(openerp.osv.orm.Model):
55     _name = 'test.workflow.model.e'
56     _inherit = 'test.workflow.model.a'
57
58 for name in 'bcdefghijkl':
59     type(
60         name,
61         (openerp.osv.orm.Model,),
62         {
63             '_name': 'test.workflow.model.%s' % name,
64             '_inherit': 'test.workflow.model.a',
65         })
66
67 # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: