5f95f06aa944b4ee88196ef53c6dfb841562c7a4
[odoo/odoo.git] / doc / howtos / backend / exercise-state-basic
1 # HG changeset patch
2 # Parent 8c721171aa16a41e94059f53d6780c67b5ef2dfc
3
4 Index: doc-backend/openacademy/course.py
5 ===================================================================
6 --- doc-backend.orig/openacademy/course.py      2014-08-22 17:04:08.103107858 +0200
7 +++ doc-backend/openacademy/course.py   2014-08-22 17:04:08.099107857 +0200
8 @@ -67,6 +67,24 @@
9      attendees_count = fields.Integer(
10          string="Attendees count", compute='_get_attendees_count', store=True)
11  
12 +    state = fields.Selection([
13 +         ('draft', "Draft"),
14 +         ('confirmed', "Confirmed"),
15 +         ('done', "Done"),
16 +    ], default='draft')
17 +
18 +    @api.one
19 +    def action_draft(self):
20 +        self.state = 'draft'
21 +
22 +    @api.one
23 +    def action_confirm(self):
24 +        self.state = 'confirmed'
25 +
26 +    @api.one
27 +    def action_done(self):
28 +        self.state = 'done'
29 +
30      @api.one
31      @api.depends('seats', 'attendee_ids')
32      def _taken_seats(self):
33 Index: doc-backend/openacademy/views/openacademy.xml
34 ===================================================================
35 --- doc-backend.orig/openacademy/views/openacademy.xml  2014-08-22 17:04:08.103107858 +0200
36 +++ doc-backend/openacademy/views/openacademy.xml       2014-08-22 17:04:30.939108696 +0200
37 @@ -91,22 +91,37 @@
38              <field name="model">openacademy.session</field>
39              <field name="arch" type="xml">
40                  <form string="Session Form">
41 -                    <group colspan="2" col="2">
42 -                        <separator string="General" colspan="2"/>
43 -                        <field name="course_id"/>
44 -                        <field name="name"/>
45 -                        <field name="instructor_id"/>
46 -                        <field name="active"/>
47 -                    </group>
48 -                    <group colspan="2" col="2">
49 -                        <separator string="Schedule" colspan="2"/>
50 -                        <field name="start_date"/>
51 -                        <field name="duration"/>
52 -                        <field name="seats"/>
53 -                        <field name="taken_seats" widget="progressbar"/>
54 -                    </group>
55 -                    <separator string="Attendees" colspan="4"/>
56 -                    <field name="attendee_ids" colspan="4" nolabel="1"/>
57 +                    <header>
58 +                        <button name="action_draft" type="object"
59 +                                string="Reset to draft"
60 +                                states="confirmed,done"/>
61 +                        <button name="action_confirm" type="object"
62 +                                string="Confirm" states="draft"
63 +                                class="oe_highlight"/>
64 +                        <button name="action_done" type="object"
65 +                                string="Mark as done" states="confirmed"
66 +                                class="oe_highlight"/>
67 +                        <field name="state" widget="statusbar"/>
68 +                    </header>
69 +
70 +                    <sheet>
71 +                        <group colspan="2" col="2">
72 +                            <separator string="General" colspan="2"/>
73 +                            <field name="course_id"/>
74 +                            <field name="name"/>
75 +                            <field name="instructor_id"/>
76 +                            <field name="active"/>
77 +                        </group>
78 +                        <group colspan="2" col="2">
79 +                            <separator string="Schedule" colspan="2"/>
80 +                            <field name="start_date"/>
81 +                            <field name="duration"/>
82 +                            <field name="seats"/>
83 +                            <field name="taken_seats" widget="progressbar"/>
84 +                        </group>
85 +                        <separator string="Attendees" colspan="4"/>
86 +                        <field name="attendee_ids" colspan="4" nolabel="1"/>
87 +                    </sheet>
88                  </form>
89              </field>
90          </record>