<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Odoo/openerp/addons/base/security/ir.model.access.csv, branch 14.0</title>
<subtitle>The current checkout of upstream Odoo</subtitle>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/'/>
<entry>
<title>[REF] openerp: move `openerp` to `odoo`</title>
<updated>2016-09-02T15:28:12+00:00</updated>
<author>
<name>Raphael Collet</name>
<email>rco@openerp.com</email>
</author>
<published>2016-09-02T13:58:39+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=9e64f9f9514194d74e166b032add8511182f2677'/>
<id>9e64f9f9514194d74e166b032add8511182f2677</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] User with 'Access Rights' rights not able to access Users menu</title>
<updated>2016-03-07T14:53:30+00:00</updated>
<author>
<name>Yannick Tivisse</name>
<email>yti@odoo.com</email>
</author>
<published>2016-03-07T09:04:16+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=abdca55ea2f5a4296ef46d3b9562a21eb955272f'/>
<id>abdca55ea2f5a4296ef46d3b9562a21eb955272f</id>
<content type='text'>
The ERP managers (users with 'Access Rights' rights) cannot even click on
the Settings app menuitem. Because of 2 things:
- The Dashboard settings is accessing the model ir_module_module. So
  we set a groups 'group_settings' on it.
- The Users view is accessing the model ir_module_category to groups
  the aggregate and display the settings. So we change the security rules
  by giving the access to the group_erp_manager instead of group_settings
- The global rules opn companies was applied to the erp managers. We
  splitted this ir.rules into three new ones on portal,public and employee
  users to allow the erp managers to access the companies
- Writing on the res_groups was calling the method _update_user_groups_view
  in all the cases. This method should be called only when the view was
  needed to be modified, i.e. when the category_id is modified for this
  group.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The ERP managers (users with 'Access Rights' rights) cannot even click on
the Settings app menuitem. Because of 2 things:
- The Dashboard settings is accessing the model ir_module_module. So
  we set a groups 'group_settings' on it.
- The Users view is accessing the model ir_module_category to groups
  the aggregate and display the settings. So we change the security rules
  by giving the access to the group_erp_manager instead of group_settings
- The global rules opn companies was applied to the erp managers. We
  splitted this ir.rules into three new ones on portal,public and employee
  users to allow the erp managers to access the companies
- Writing on the res_groups was calling the method _update_user_groups_view
  in all the cases. This method should be called only when the view was
  needed to be modified, i.e. when the category_id is modified for this
  group.
</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] ir_translation: make access rights depend on translated record</title>
<updated>2015-12-02T09:12:16+00:00</updated>
<author>
<name>Raphael Collet</name>
<email>rco@openerp.com</email>
</author>
<published>2015-11-16T10:55:34+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=2d6fd5ea65261bf99254de7ed312a56c95c0b6a0'/>
<id>2d6fd5ea65261bf99254de7ed312a56c95c0b6a0</id>
<content type='text'>
A translation of a field value for a given record can only be created/updated/
deleted if the current user has access rights for updating the record.

Access rights on translations are restricted to the group "Employee".  Those
still need create/write/delete access, in order to be able to edit records in
the user interface.  Other users (portal, etc.) simply have no explicit access
rights at all on translations.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A translation of a field value for a given record can only be created/updated/
deleted if the current user has access rights for updating the record.

Access rights on translations are restricted to the group "Employee".  Those
still need create/write/delete access, in order to be able to edit records in
the user interface.  Other users (portal, etc.) simply have no explicit access
rights at all on translations.
</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] res.users: move login_date info to extra table</title>
<updated>2015-09-30T01:02:45+00:00</updated>
<author>
<name>Olivier Dony</name>
<email>odo@openerp.com</email>
</author>
<published>2015-09-30T00:18:29+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=94a0bbed0a94e4bd34965c1466615d225ac8e509'/>
<id>94a0bbed0a94e4bd34965c1466615d225ac8e509</id>
<content type='text'>
Writing frequently to master data, and particularly to res.users
records is dangerous because it can temporarily delay/abort
concurrent transactions due to FK locking/serializability
heuristics. (Even with PostgreSQL 9.3+)

The `login_date` field updated when a user is authentiocated
is still useful but better handled in a separate table that
exclusively receives independent INSERTs (no UPDATE/DELETE).
This minimizes the chances of transactional conflicts.

This commit moves the login_date info into a separate
`res.users.log` table for this purpose, replacing it
with a related field. The user and login date info are
automatically handled by the magical fields (create_uid,
create_date) in `res.users.log`.
The related field must not be stored because that would
create the same problems as the original field.

In order to cleanup redundant entries in res.users.log
the 'auto-vacuum' cron job used for TransientModels was
extended to be a generic "internal data vacuum cleaner",
and now takes care of this as well.

The code for updating last login and vacuuming was split
up into smaller methods to make extensions easier.

Fixes #8585
Fixes #8590
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Writing frequently to master data, and particularly to res.users
records is dangerous because it can temporarily delay/abort
concurrent transactions due to FK locking/serializability
heuristics. (Even with PostgreSQL 9.3+)

The `login_date` field updated when a user is authentiocated
is still useful but better handled in a separate table that
exclusively receives independent INSERTs (no UPDATE/DELETE).
This minimizes the chances of transactional conflicts.

This commit moves the login_date info into a separate
`res.users.log` table for this purpose, replacing it
with a related field. The user and login date info are
automatically handled by the magical fields (create_uid,
create_date) in `res.users.log`.
The related field must not be stored because that would
create the same problems as the original field.

In order to cleanup redundant entries in res.users.log
the 'auto-vacuum' cron job used for TransientModels was
extended to be a generic "internal data vacuum cleaner",
and now takes care of this as well.

The code for updating last login and vacuuming was split
up into smaller methods to make extensions easier.

Fixes #8585
Fixes #8590
</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] restrict modules to system_group</title>
<updated>2015-08-21T10:59:06+00:00</updated>
<author>
<name>Xavier Morel</name>
<email>xmo@odoo.com</email>
</author>
<published>2015-08-18T14:05:49+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=2ea5c3aeefb024b185c4fac889b8f5f0f958936a'/>
<id>2ea5c3aeefb024b185c4fac889b8f5f0f958936a</id>
<content type='text'>
* listing of modules in website already bypassed session user
* altered authenticated endpoint so it does the same
* sudoed a few read accesses &amp; name_get in groups
* other accesses are list/form views, menu only accessible to
  system_user
* new-API-ified some calls &amp; unified listing of installed modules
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* listing of modules in website already bypassed session user
* altered authenticated endpoint so it does the same
* sudoed a few read accesses &amp; name_get in groups
* other accesses are list/form views, menu only accessible to
  system_user
* new-API-ified some calls &amp; unified listing of installed modules
</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] remove group_user read access to ir.cron</title>
<updated>2015-08-20T10:55:00+00:00</updated>
<author>
<name>Xavier Morel</name>
<email>xmo@odoo.com</email>
</author>
<published>2015-08-20T10:50:32+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=d4b25b278013f75878ea1329b9658c39e4a12613'/>
<id>d4b25b278013f75878ea1329b9658c39e4a12613</id>
<content type='text'>
Should not be necessary for the correct working of odoo (normal cron
lookup &amp; processing is performed using raw SQL anyway).

* fixed a few ref calls just in case
* also cleaned up a few unused imports
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Should not be necessary for the correct working of odoo (normal cron
lookup &amp; processing is performed using raw SQL anyway).

* fixed a few ref calls just in case
* also cleaned up a few unused imports
</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] ir_fields_converter: make abstract</title>
<updated>2015-08-20T09:24:00+00:00</updated>
<author>
<name>Xavier Morel</name>
<email>xmo@odoo.com</email>
</author>
<published>2015-08-17T09:31:13+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=1464f79b90019a4653c1b2d93ebe44960f2d33c7'/>
<id>1464f79b90019a4653c1b2d93ebe44960f2d33c7</id>
<content type='text'>
This is only a model in case third parties need to override stuff, it
has no field and no reason to be a "concrete" model.

Also
* remove corresponding access rule giving CRUD to every user
* remove unnecessary import
* replace set() call by set literal
* replace dict(generator_expr) by dict comprehensions
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is only a model in case third parties need to override stuff, it
has no field and no reason to be a "concrete" model.

Also
* remove corresponding access rule giving CRUD to every user
* remove unnecessary import
* replace set() call by set literal
* replace dict(generator_expr) by dict comprehensions
</pre>
</div>
</content>
</entry>
<entry>
<title>[REM] ir_default model</title>
<updated>2015-08-20T09:19:18+00:00</updated>
<author>
<name>Xavier Morel</name>
<email>xmo@odoo.com</email>
</author>
<published>2015-08-17T09:25:51+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=d2e23d0bfe108322876c5eeaa448b33e63f7ce73'/>
<id>d2e23d0bfe108322876c5eeaa448b33e63f7ce73</id>
<content type='text'>
Legacy model, doesn't seem to be used anywhere or have any point at all
yet was accessible CRUD to all...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Legacy model, doesn't seem to be used anywhere or have any point at all
yet was accessible CRUD to all...
</pre>
</div>
</content>
</entry>
<entry>
<title>[REF] base: simplified res.partner.bank and res.bank objects for a greater usability + [IMP] account: bank journals are now the bank accounts of a company</title>
<updated>2015-08-19T13:44:59+00:00</updated>
<author>
<name>qdp-odoo</name>
<email>qdp@odoo.com</email>
</author>
<published>2015-08-19T13:44:49+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=6cb6f43c2beffaccd871ac93f19e11aeeb92d131'/>
<id>6cb6f43c2beffaccd871ac93f19e11aeeb92d131</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] base: remove multi_company.default</title>
<updated>2015-07-16T12:57:27+00:00</updated>
<author>
<name>Frédéric van der Essen</name>
<email>fva@odoo.com</email>
</author>
<published>2015-07-07T14:08:08+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=343f4628345e4429014e003a3d500c35f034c2df'/>
<id>343f4628345e4429014e003a3d500c35f034c2df</id>
<content type='text'>
Multi_company.default was used to set the default company on newly created
records in a multi-company environment. We remove it because it is redundant
with User-Defined Default.

The function _company_default_get is left for backward compatibility and to
allow the creation of modules that implement more complex policies.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Multi_company.default was used to set the default company on newly created
records in a multi-company environment. We remove it because it is redundant
with User-Defined Default.

The function _company_default_get is left for backward compatibility and to
allow the creation of modules that implement more complex policies.
</pre>
</div>
</content>
</entry>
</feed>
