3 # Copyright 2009 the Melange authors.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 """Organization Admin (Model) query functions.
21 '"Lennard de Rijk" <ljvderijk@gmail.com>',
25 from soc
.logic
.models
import role
26 from soc
.logic
.models
import organization
as org_logic
28 import soc
.models
.org_admin
29 import soc
.models
.role
32 class Logic(role
.Logic
):
33 """Logic methods for the Organization Admin model.
36 def __init__(self
, model
=soc
.models
.org_admin
.OrgAdmin
,
37 base_model
=soc
.models
.role
.Role
, scope_logic
=org_logic
):
38 """Defines the name, key_name and model for this entity.
41 super(Logic
, self
).__init
__(model
=model
, base_model
=base_model
,
42 scope_logic
=scope_logic
)
44 def _onCreate(self
, entity
):
45 """Marks the Organization for this Org Admin as active
46 if it's status is new.
49 org_entity
= entity
.scope
51 if org_entity
.status
== 'new':
52 # this org is new so mark as active
53 fields
= {'status': 'active'}
54 org_logic
.logic
.updateEntityProperties(org_entity
, fields
)
57 super(Logic
, self
)._onCreate
(entity
)