latest updates, towns and regions
[namibia] / module / User / src / User / Workflow.php
1 <?php
2 namespace User;
3
4
5
6 /**
7  * A workflow.
8  * @author andre.fourie
9  */
10 class Workflow extends \Workspace\Workflow
11 {
12
13         /**
14          * @var string
15          */
16         protected $namespace = __NAMESPACE__;
17         /**
18          * @var string
19          */
20         protected $parentFeature = false;
21         /**
22          * @var string
23          */
24         protected $initState    = 'This.Active';
25         /**
26          * @var string
27          */
28         protected $initTrigger  = 'Profile.Create';
29         /**
30          * @var string
31          */
32         protected $primaryEntity = 'Profile';
33         /**
34          * @var array
35          */
36         protected $entityMap = array(
37                         'Profile' => '\User\Entity\Profile'
38         );
39         /**
40          * @var array
41          */
42         protected $linkMap = array();
43         /**
44          * @var array
45          */
46         protected $listen = array();
47         /**
48          * @var array
49          */
50         protected $reclaim = array();
51         /**
52          * @var array
53          */
54         protected $stateMap = array(
55                         'Global' => array(
56                                 'Actions' => array(
57                                         'Profile.ForgotPassword'     => array(),
58                                         'Profile.Login'              => array(),
59                                         'Profile.Logout'             => array(),
60                                         'Profile.ActiveAccount'      => array(),
61                                         'Profile.List'               => array(),
62                                         'Profile.Grid'               => array(),
63                                         'Profile.AdminGrid'          => array(),
64                                         'Profile.Create'             => array(),
65                                         'Profile.SetSu'              => array(),
66                                         'Profile.SelectList'         => array(),
67                                         'Profile.ManagerList'        => array(),
68                                         'Profile.AdminManagerList'   => array(),
69                                         'Profile.SalesList'          => array(),
70                                         'Profile.ValuatorList'       => array(),
71                                         'Permissions.SelectList'     => array(),
72                                         'Permissions.FullSelectList' => array(),
73                                         'Permissions.Grid'           => array(),
74                                         'Permissions.Update'         => array(),
75                                         'Override.Update'            => array(),
76                                         'Registration.RegisterFull'  => array()
77                                 )
78                         ),
79                         'Active' => array(
80                                 'Init' => 'Profile.initActiveUser',
81                                 'Actions' => array(
82                                         'Profile.Update'            => array(),
83                                         'Profile.Unsubscribe'       => array(),
84                                         'Profile.UpdatePermissions' => array(),
85                                         'Profile.ChangePassword'    => array()
86                                 ),
87                                 'Routes' => array(
88                                         'Workflow.MoveToSuspended' => array(
89                                                         'Destination' => 'This.Suspended'
90                                         ),
91                                         'Workflow.MoveToArchive' => array(
92                                                         'Destination' => 'This.Archived'
93                                         )
94                                 )
95                         ),
96                         'Suspended' => array(
97                                 'Init' => 'Profile.initSuspendedUser',
98                                 'Actions' => array(
99                                         'Profile.View'   => array(),
100                                         'Profile.Update' => array()
101                                 ),
102                                 'Routes' => array(
103                                         'Workflow.MoveToActive' => array(
104                                                         'Destination' => 'This.Active'
105                                         ),
106                                         'Workflow.MoveToArchive' => array(
107                                                         'Destination' => 'This.Archived'
108                                         )
109                                 )
110                         ),
111                         'Archived' => array(
112                                 'Actions' => array(
113                                         'Profile.View'   => array(),
114                                         'Profile.Update' => array()
115                                 ),
116                                 'Routes' => array(
117                                         'Workflow.MoveToActive' => array(
118                                                         'Destination' => 'This.Active'
119                                         )
120                                 )
121                         )
122         );
123
124
125 }