diff options
| author | Cedric Snauwaert <csn@openerp.com> | 2012-12-04 17:20:56 +0100 |
|---|---|---|
| committer | Cedric Snauwaert <csn@openerp.com> | 2012-12-04 17:20:56 +0100 |
| commit | a56f37e6f4b5207fb437db5c5ad08a3ad0e92a62 (patch) | |
| tree | 6adeb51c8be73903a5bb6ec93a039a5ffdd5fc89 /addons/fleet/security | |
| parent | 524694747b1a80e881ebdc1f33e40236ac45f8d0 (diff) | |
[ADD]access rules and groups
bzr revid: csn@openerp.com-20121204162056-cacua9dw1shg5fnv
Diffstat (limited to 'addons/fleet/security')
| -rw-r--r-- | addons/fleet/security/fleet_security.xml | 109 | ||||
| -rw-r--r-- | addons/fleet/security/ir.model.access.csv | 34 |
2 files changed, 131 insertions, 12 deletions
diff --git a/addons/fleet/security/fleet_security.xml b/addons/fleet/security/fleet_security.xml new file mode 100644 index 00000000000..6351d23b55e --- /dev/null +++ b/addons/fleet/security/fleet_security.xml @@ -0,0 +1,109 @@ +<?xml version="1.0" ?> +<openerp> + <data> + <record model="ir.module.category" id="module_fleet_category"> + <field name="name">Fleet</field> + <field name="sequence">17</field> + </record> + <record id="group_fleet_user" model="res.groups"> + <field name="name">User</field> + <field name="category_id" ref="module_fleet_category"/> + </record> + <record id="group_fleet_manager" model="res.groups"> + <field name="name">Manager</field> + <field name="implied_ids" eval="[(4, ref('group_fleet_user'))]"/> + <field name="category_id" ref="module_fleet_category"/> + </record> + <record id="fleet_user_contract_visibility" model="ir.rule"> + <field name="name">User can only see his/her contracts</field> + <field name="model_id" ref="model_fleet_vehicle_log_contract"/> + <field name="groups" eval="[(4, ref('group_fleet_user'))]"/> + <field name="perm_read" eval="True"/> + <field name="perm_write" eval="False"/> + <field name="perm_create" eval="False"/> + <field name="perm_unlink" eval="False"/> + <field name="domain_force">[('cost_id.vehicle_id.driver.id','=',user.partner_id.id)]</field> + </record> + <record id="fleet_user_cost_visibility" model="ir.rule"> + <field name="name">User can only see his/her costs</field> + <field name="model_id" ref="model_fleet_vehicle_cost"/> + <field name="groups" eval="[(4, ref('group_fleet_user'))]"/> + <field name="perm_read" eval="True"/> + <field name="perm_write" eval="True"/> + <field name="perm_create" eval="True"/> + <field name="perm_unlink" eval="False"/> + <field name="domain_force">[('vehicle_id.driver.id','=',user.partner_id.id)]</field> + </record> + <record id="fleet_user_service_visibility" model="ir.rule"> + <field name="name">User can only see his/her vehicle's services</field> + <field name="model_id" ref="model_fleet_vehicle_log_services"/> + <field name="groups" eval="[(4, ref('group_fleet_user'))]"/> + <field name="perm_read" eval="True"/> + <field name="perm_write" eval="False"/> + <field name="perm_create" eval="False"/> + <field name="perm_unlink" eval="False"/> + <field name="domain_force">[('cost_id.vehicle_id.driver.id','=',user.partner_id.id)]</field> + </record> + <record id="fleet_user_odometer_visibility" model="ir.rule"> + <field name="name">User can only see his/her vehicle's odometer</field> + <field name="model_id" ref="model_fleet_vehicle_odometer"/> + <field name="groups" eval="[(4, ref('group_fleet_user'))]"/> + <field name="perm_read" eval="True"/> + <field name="perm_write" eval="True"/> + <field name="perm_create" eval="True"/> + <field name="perm_unlink" eval="True"/> + <field name="domain_force">[('vehicle_id.driver.id','=',user.partner_id.id)]</field> + </record> + <record id="fleet_user_fuel_log_visibility" model="ir.rule"> + <field name="name">User can only see his/her vehicle's fuel log</field> + <field name="model_id" ref="model_fleet_vehicle_log_fuel"/> + <field name="groups" eval="[(4, ref('group_fleet_user'))]"/> + <field name="perm_read" eval="True"/> + <field name="perm_write" eval="True"/> + <field name="perm_create" eval="True"/> + <field name="perm_unlink" eval="True"/> + <field name="domain_force">[('cost_id.vehicle_id.driver.id','=',user.partner_id.id)]</field> + </record> + <record id="fleet_user_vehicle_visibility" model="ir.rule"> + <field name="name">User can only see his/her vehicle</field> + <field name="model_id" ref="model_fleet_vehicle"/> + <field name="groups" eval="[(4, ref('group_fleet_user'))]"/> + <field name="perm_read" eval="True"/> + <field name="perm_write" eval="True"/> + <field name="perm_create" eval="False"/> + <field name="perm_unlink" eval="False"/> + <field name="domain_force">[('driver.id','=',user.partner_id.id)]</field> + </record> + <record id="fleet_user_contract_visibility_manager" model="ir.rule"> + <field name="name">Manager has all rights on vehicle's contracts</field> + <field name="model_id" ref="model_fleet_vehicle_log_contract"/> + <field name="groups" eval="[(4, ref('group_fleet_manager'))]"/> + </record> + <record id="fleet_user_cost_visibility_manager" model="ir.rule"> + <field name="name">Manager has all rights on vehicle's costs</field> + <field name="model_id" ref="model_fleet_vehicle_cost"/> + <field name="groups" eval="[(4, ref('group_fleet_manager'))]"/> + </record> + <record id="fleet_user_service_visibility_manager" model="ir.rule"> + <field name="name">Manager has all rights on vehicle's services</field> + <field name="model_id" ref="model_fleet_vehicle_log_services"/> + <field name="groups" eval="[(4, ref('group_fleet_manager'))]"/> + </record> + <record id="fleet_user_odometer_visibility_manager" model="ir.rule"> + <field name="name">Manager has all rights on vehicle's vehicle's odometer</field> + <field name="model_id" ref="model_fleet_vehicle_odometer"/> + <field name="groups" eval="[(4, ref('group_fleet_manager'))]"/> + </record> + <record id="fleet_user_fuel_log_visibility_manager" model="ir.rule"> + <field name="name">Manager has all rights on vehicle's fuel log</field> + <field name="model_id" ref="model_fleet_vehicle_log_fuel"/> + <field name="groups" eval="[(4, ref('group_fleet_manager'))]"/> + </record> + <record id="fleet_user_vehicle_visibility_manager" model="ir.rule"> + <field name="name">Manager has all rights on vehicle</field> + <field name="model_id" ref="model_fleet_vehicle"/> + <field name="groups" eval="[(4, ref('group_fleet_manager'))]"/> + </record> + + </data> +</openerp> diff --git a/addons/fleet/security/ir.model.access.csv b/addons/fleet/security/ir.model.access.csv index 823b3cb2945..ecb8ec307b4 100644 --- a/addons/fleet/security/ir.model.access.csv +++ b/addons/fleet/security/ir.model.access.csv @@ -1,13 +1,23 @@ id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink -fleet_vehicle_model_access_right,fleet_vehicle_model_access_right,model_fleet_vehicle_model,,1,1,1,1 -fleet_vehicle_tag_access_right,fleet_vehicle_tag_access_right,model_fleet_vehicle_tag,,1,1,1,1 -fleet_vehicle_state_access_right,fleet_vehicle_state_access_right,model_fleet_vehicle_state,,1,1,1,1 -fleet_vehicle_odometer_access_right,fleet_vehicle_odometer_access_right,model_fleet_vehicle_odometer,,1,1,1,1 -fleet_vehicle_model_brand_access_right,fleet_vehicle_model_brand_access_right,model_fleet_vehicle_model_brand,,1,1,1,1 -fleet_vehicle_access_right,fleet_vehicle_access_right,model_fleet_vehicle,,1,1,1,1 -fleet_vehicle_log_fuel_access_right,fleet_vehicle_log_fuel_access_right,model_fleet_vehicle_log_fuel,,1,1,1,1 -fleet_vehicle_log_services_access_right,fleet_vehicle_log_services_access_right,model_fleet_vehicle_log_services,,1,1,1,1 -fleet_vehicle_log_contract_access_right,fleet_vehicle_log_contract_access_right,model_fleet_vehicle_log_contract,,1,1,1,1 -fleet_service_type_access_right,fleet_service_type_access_right,model_fleet_service_type,,1,1,1,1 -access_fleet_vehicle_cost,access_fleet_vehicle_cost,model_fleet_vehicle_cost,,1,1,1,1 -access_fleet_contract_state,access_fleet_contract_state,model_fleet_contract_state,,1,1,1,1 +fleet_vehicle_model_access_right_user,fleet_vehicle_model_access_right,model_fleet_vehicle_model,group_fleet_user,1,0,0,0 +fleet_vehicle_tag_access_right_user,fleet_vehicle_tag_access_right,model_fleet_vehicle_tag,group_fleet_user,1,0,0,0 +fleet_vehicle_state_access_right_user,fleet_vehicle_state_access_right,model_fleet_vehicle_state,group_fleet_user,1,0,0,0 +fleet_vehicle_model_brand_access_right_user,fleet_vehicle_model_brand_access_right,model_fleet_vehicle_model_brand,group_fleet_user,1,0,0,0 +fleet_vehicle_access_right_user,fleet_vehicle_access_right",model_fleet_vehicle,group_fleet_user,1,1,0,0 +fleet_vehicle_log_services_access_right_user,fleet_vehicle_log_services_access_right,model_fleet_vehicle_log_services,group_fleet_user,1,0,0,0 +fleet_vehicle_log_contract_access_right_user,fleet_vehicle_log_contract_access_right,model_fleet_vehicle_log_contract,group_fleet_user,1,0,0,0 +fleet_service_type_access_right_user,fleet_service_type_access_right,model_fleet_service_type,group_fleet_user,1,0,0,0 +access_fleet_vehicle_cost_user,access_fleet_vehicle_cost,model_fleet_vehicle_cost,group_fleet_user,1,1,1,0 +access_fleet_contract_state_user,access_fleet_contract_state,model_fleet_contract_state,group_fleet_user,1,0,0,0 +fleet_vehicle_model_access_right,fleet_vehicle_model_access_right,model_fleet_vehicle_model,group_fleet_manager,1,1,1,1 +fleet_vehicle_tag_access_right,fleet_vehicle_tag_access_right,model_fleet_vehicle_tag,group_fleet_manager,1,1,1,1 +fleet_vehicle_state_access_right,fleet_vehicle_state_access_right,model_fleet_vehicle_state,group_fleet_manager,1,1,1,1 +fleet_vehicle_odometer_access_right,fleet_vehicle_odometer_access_right,model_fleet_vehicle_odometer,group_fleet_user,1,1,1,1 +fleet_vehicle_model_brand_access_right,fleet_vehicle_model_brand_access_right,model_fleet_vehicle_model_brand,group_fleet_manager,1,1,1,1 +fleet_vehicle_access_right,fleet_vehicle_access_right,model_fleet_vehicle,group_fleet_manager,1,1,1,1 +fleet_vehicle_log_fuel_access_right,fleet_vehicle_log_fuel_access_right,model_fleet_vehicle_log_fuel,group_fleet_user,1,1,1,1 +fleet_vehicle_log_services_access_right,fleet_vehicle_log_services_access_right,model_fleet_vehicle_log_services,group_fleet_manager,1,1,1,1 +fleet_vehicle_log_contract_access_right,fleet_vehicle_log_contract_access_right,model_fleet_vehicle_log_contract,group_fleet_manager,1,1,1,1 +fleet_service_type_access_right,fleet_service_type_access_right,model_fleet_service_type,group_fleet_manager,1,1,1,1 +access_fleet_vehicle_cost,access_fleet_vehicle_cost,model_fleet_vehicle_cost,group_fleet_manager,1,1,1,1 +access_fleet_contract_state,access_fleet_contract_state,model_fleet_contract_state,group_fleet_manager,1,1,1,1
\ No newline at end of file |
