17c91fc748e09d7e234d2806a2f94ded8d3cdd5d
[odoo/odoo.git] / doc / howtos / backend / exercise-state-workflow
1 # HG changeset patch
2 # Parent c72382bf0c5794135fa318f6ba59899b2277d8c5
3
4 Index: doc-backend/openacademy/__openerp__.py
5 ===================================================================
6 --- doc-backend.orig/openacademy/__openerp__.py 2014-08-21 15:03:56.760571446 +0200
7 +++ doc-backend/openacademy/__openerp__.py      2014-08-21 15:03:56.756571446 +0200
8 @@ -13,6 +13,7 @@
9      'data' : [
10          'views/openacademy.xml',
11          'views/partner.xml',
12 +        'views/session_workflow.xml',
13      ],
14      'demo': [
15          'demo.xml',
16 Index: doc-backend/openacademy/course.py
17 ===================================================================
18 --- doc-backend.orig/openacademy/course.py      2014-08-21 15:03:56.760571446 +0200
19 +++ doc-backend/openacademy/course.py   2014-08-21 15:03:56.756571446 +0200
20 @@ -71,7 +71,7 @@
21           ('draft', "Draft"),
22           ('confirmed', "Confirmed"),
23           ('done', "Done"),
24 -    ], default='draft')
25 +    ])
26  
27      @api.one
28      def action_draft(self):
29 Index: doc-backend/openacademy/views/openacademy.xml
30 ===================================================================
31 --- doc-backend.orig/openacademy/views/openacademy.xml  2014-08-21 15:03:56.760571446 +0200
32 +++ doc-backend/openacademy/views/openacademy.xml       2014-08-21 15:03:56.756571446 +0200
33 @@ -92,13 +92,13 @@
34              <field name="arch" type="xml">
35                  <form string="Session Form">
36                      <header>
37 -                        <button name="action_draft" type="object"
38 +                        <button name="draft" type="workflow"
39                                  string="Reset to draft"
40                                  states="confirmed,done"/>
41 -                        <button name="action_confirm" type="object"
42 +                        <button name="confirm" type="workflow"
43                                  string="Confirm" states="draft"
44                                  class="oe_highlight"/>
45 -                        <button name="action_done" type="object"
46 +                        <button name="done" type="workflow"
47                                  string="Mark as done" states="confirmed"
48                                  class="oe_highlight"/>
49                          <field name="state" widget="statusbar"/>
50 Index: doc-backend/openacademy/views/session_workflow.xml
51 ===================================================================
52 --- /dev/null   1970-01-01 00:00:00.000000000 +0000
53 +++ doc-backend/openacademy/views/session_workflow.xml  2014-08-21 15:03:56.756571446 +0200
54 @@ -0,0 +1,51 @@
55 +<openerp>
56 +  <data>
57 +    <record model="workflow" id="wkf_session">
58 +      <field name="name">OpenAcademy sessions workflow</field>
59 +      <field name="osv">openacademy.session</field>
60 +      <field name="on_create">True</field>
61 +    </record>
62 +
63 +    <record model="workflow.activity" id="draft">
64 +      <field name="name">Draft</field>
65 +      <field name="wkf_id" ref="wkf_session"/>
66 +      <field name="flow_start" eval="True"/>
67 +      <field name="kind">function</field>
68 +      <field name="action">action_draft()</field>
69 +    </record>
70 +    <record model="workflow.activity" id="confirmed">
71 +      <field name="name">Confirmed</field>
72 +      <field name="wkf_id" ref="wkf_session"/>
73 +      <field name="kind">function</field>
74 +      <field name="action">action_confirm()</field>
75 +    </record>
76 +    <record model="workflow.activity" id="done">
77 +      <field name="name">Done</field>
78 +      <field name="wkf_id" ref="wkf_session"/>
79 +      <field name="flow_stop" eval="True"/>
80 +      <field name="kind">function</field>
81 +      <field name="action">action_done()</field>
82 +    </record>
83 +
84 +    <record model="workflow.transition" id="session_draft_to_confirmed">
85 +      <field name="act_from" ref="draft"/>
86 +      <field name="act_to" ref="confirmed"/>
87 +      <field name="signal">confirm</field>
88 +    </record>
89 +    <record model="workflow.transition" id="session_confirmed_to_draft">
90 +      <field name="act_from" ref="confirmed"/>
91 +      <field name="act_to" ref="draft"/>
92 +      <field name="signal">draft</field>
93 +    </record>
94 +    <record model="workflow.transition" id="session_done_to_draft">
95 +      <field name="act_from" ref="done"/>
96 +      <field name="act_to" ref="draft"/>
97 +      <field name="signal">draft</field>
98 +    </record>
99 +    <record model="workflow.transition" id="session_confirmed_to_done">
100 +      <field name="act_from" ref="confirmed"/>
101 +      <field name="act_to" ref="done"/>
102 +      <field name="signal">done</field>
103 +    </record>
104 +  </data>
105 +</openerp>