From 19de91d4b9da23bf27b44b45bca814a5e1ad5405 Mon Sep 17 00:00:00 2001 From: "Mayur Maheshwari (OpenERP)" Date: Wed, 15 Feb 2012 17:33:31 +0530 Subject: [PATCH 001/165] [FIX]purchase: removed wait ad wait_auth which unnecessary lp bug: https://launchpad.net/bugs/932059 fixed bzr revid: mma@tinyerp.com-20120215120331-7uc0ybsv90oayfw2 --- addons/purchase/purchase.py | 1 - addons/purchase/purchase_view.xml | 3 +-- addons/purchase_requisition/purchase_requisition.py | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/addons/purchase/purchase.py b/addons/purchase/purchase.py index 5432067191d..b7c757c7468 100644 --- a/addons/purchase/purchase.py +++ b/addons/purchase/purchase.py @@ -143,7 +143,6 @@ class purchase_order(osv.osv): STATE_SELECTION = [ ('draft', 'Request for Quotation'), - ('wait', 'Waiting'), ('confirmed', 'Waiting Approval'), ('approved', 'Approved'), ('except_picking', 'Shipping Exception'), diff --git a/addons/purchase/purchase_view.xml b/addons/purchase/purchase_view.xml index ec53ae76a7a..c72c985d8fa 100644 --- a/addons/purchase/purchase_view.xml +++ b/addons/purchase/purchase_view.xml @@ -196,13 +196,12 @@ - From 4dc0440cb1900b05bf1f84e6bdd33fe6746c0b25 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Sun, 12 Aug 2012 19:43:06 +0200 Subject: [PATCH 075/165] wip options bzr revid: al@openerp.com-20120812174306-p47bfuzo2r030r3t --- addons/auth_signup/res_users.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/auth_signup/res_users.py b/addons/auth_signup/res_users.py index 46f264c6729..1b73dc2f622 100644 --- a/addons/auth_signup/res_users.py +++ b/addons/auth_signup/res_users.py @@ -5,6 +5,9 @@ class res_users(osv.Model): _inherit = 'res.users' def auth_signup_create(self, cr, uid, new_user, context=None): + # add login, email, name passowrd + # if options groups + # add groups user_template_id = self.pool.get('ir.config_parameter').get_param(cr, uid, 'auth.signup_template_user_id', 0) if user_template_id: self.pool.get('res.users').copy(cr, 1, user_template_id, new_user, context=context) From 7ff74cc4b118e317a8fc25a5a507b807deeafd26 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Mon, 13 Aug 2012 01:26:12 +0200 Subject: [PATCH 076/165] oauth wip bzr revid: al@openerp.com-20120812232612-9cib8w333no9hg3d --- addons/auth_oauth/__init__.py | 22 +-------- addons/auth_oauth/controllers/__init__.py | 3 ++ addons/auth_oauth/controllers/main.py | 39 ++++++++++++++++ addons/auth_oauth/res_users.py | 40 ++++++++++++++++ addons/auth_oauth/static/src/js/auth_oauth.js | 46 ++++++------------- 5 files changed, 97 insertions(+), 53 deletions(-) create mode 100644 addons/auth_oauth/controllers/__init__.py create mode 100644 addons/auth_oauth/controllers/main.py create mode 100644 addons/auth_oauth/res_users.py diff --git a/addons/auth_oauth/__init__.py b/addons/auth_oauth/__init__.py index a55097cb836..68bb6c79406 100644 --- a/addons/auth_oauth/__init__.py +++ b/addons/auth_oauth/__init__.py @@ -1,20 +1,2 @@ -# -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2010-2011 OpenERP s.a. (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## \ No newline at end of file +import controllers +import res_users diff --git a/addons/auth_oauth/controllers/__init__.py b/addons/auth_oauth/controllers/__init__.py new file mode 100644 index 00000000000..e11f9ba81bb --- /dev/null +++ b/addons/auth_oauth/controllers/__init__.py @@ -0,0 +1,3 @@ +import main + +# vim:expandtab:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auth_oauth/controllers/main.py b/addons/auth_oauth/controllers/main.py new file mode 100644 index 00000000000..ea50c6a23e6 --- /dev/null +++ b/addons/auth_oauth/controllers/main.py @@ -0,0 +1,39 @@ +import logging + +import werkzeug.urls + +import openerp.modules.registry +import openerp.addons.web.controllers.main +import openerp.addons.web.common.http as openerpweb + +_logger = logging.getLogger(__name__) + +class OAuthController(openerpweb.Controller): + _cp_path = '/auth_oauth' + + @openerpweb.httprequest + def signin(self, req, **kw): + dbname = kw.get("state") + registry = openerp.modules.registry.RegistryManager.get(dbname) + cr = registry.db.cursor() + try: + try: + u = registry.get('res.users') + r = u.auth_oauth(cr, 1, kw) + cr.commit() + return openerp.addons.web.controllers.main.login_and_redirect(req, *r) + # or + req.authenticate(*r) + url = "/" + except AttributeError: + # auth_signup is not installed + url = "/#action=auth_signup&error=1" + except Exception,e: + # signup error + url = "/#action=auth_signup&error=2" + finally: + cr.close() + return "" + return werkzeug.utils.redirect(url) + +# vim:expandtab:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auth_oauth/res_users.py b/addons/auth_oauth/res_users.py new file mode 100644 index 00000000000..68e9a31e3eb --- /dev/null +++ b/addons/auth_oauth/res_users.py @@ -0,0 +1,40 @@ +import urllib2 + +import openerp + +from openerp.osv import osv, fields + +class res_users(osv.Model): + _inherit = 'res.users' + + def auth_oauth(self, cr, uid, params, context=None): + print params + url = 'https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=' + params.get('access_token') + f = urllib2.urlopen(url) + validation = f.read() + print validation + r = (cr.dbname, login, password) + try: + # check for existing user + if not self.auth_signup_check(cr, uid, login, password): + print "NEW USER" + # new user + new_user = { + 'name': name, + 'login': login, + 'user_email': login, + 'password': password, + 'active': True, + } + self.auth_signup_create(cr,uid, new_user) + return r + else: + print "Existing same" + # already existing with same password + return r + except openerp.exceptions.AccessDenied: + print "Existing different" + # already existing with diffrent password + raise + +# diff --git a/addons/auth_oauth/static/src/js/auth_oauth.js b/addons/auth_oauth/static/src/js/auth_oauth.js index a49d6777e7d..057865cab4e 100644 --- a/addons/auth_oauth/static/src/js/auth_oauth.js +++ b/addons/auth_oauth/static/src/js/auth_oauth.js @@ -1,5 +1,4 @@ openerp.auth_oauth = function(instance) { - var QWeb = instance.web.qweb; instance.web.Login = instance.web.Login.extend({ @@ -8,56 +7,37 @@ openerp.auth_oauth = function(instance) { var self = this; self.$element.on('click', '.oe_login_oauth a', this.on_google_oauth); }, - on_google_oauth: function(ev) { - var url = this._oauth_url(); - window.location = url; - }, - _oauth_url: function() { + oauth_url: function(state) { var endpoint = 'https://accounts.google.com/o/oauth2/auth'; - var params = { + var params = { response_type: 'token', client_id: '108010644258-duuhmp6pu7li4tsmnqg7j9rvdeklg0ki.apps.googleusercontent.com', redirect_uri: 'https://localhost/', scope: 'https://www.googleapis.com/auth/userinfo.email', - state: 'TEST', + state: state, }; var url = endpoint + '?' + $.param(params); return url; }, - // do_warn: function(title, msg) { - // }, - // reset_error_message: function() { - // } + on_google_oauth: function(ev) { + var dbname = self.$("form [name=db]").val(); + var url = this.oauth_url(dbname); + window.location = url; + }, }); instance.web.WebClient = instance.web.WebClient.extend({ start: function() { this._super.apply(this, arguments); - // console.log($.deparam(window.location.hash)); var params = $.deparam(window.location.hash); if (params.hasOwnProperty('access_token')) { - console.log(params); - // Do login using Google User credentials - var url = { - - }; + // fix params for python marshmalling + params.state = params["#state"] + delete params["#state"] + var url = "/auth_oauth/signin" + '?' + $.param(params); + window.location = url; } }, - bind_hashchange: function() { - var state = $.bbq.getState(true); - if (state.hasOwnProperty("access_token")) { - state.action = "login"; - $.bbq.setState(state); - } - this._super(); - - }, - // on_hashchange: function(event) { - // console.log(event); - // this._super.apply(this, arguments); - // }, }); }; - -// https://accounts.google.com/o/oauth2/auth?state=%2Fprofile&redirect_uri=http%3A%2F%2Foauth2-login-demo.appspot.com%2Fcode&response_type=code&client_id=812741506391.apps.googleusercontent.com&approval_prompt=force&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile \ No newline at end of file From d946d35ee0590829b16b4403145a2b25b52be251 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Mon, 13 Aug 2012 02:01:49 +0200 Subject: [PATCH 077/165] oauth wip bzr revid: al@openerp.com-20120813000149-lslqyhszzz8axhrv --- addons/auth_signup/res_users.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/addons/auth_signup/res_users.py b/addons/auth_signup/res_users.py index 1b73dc2f622..1c9e531c180 100644 --- a/addons/auth_signup/res_users.py +++ b/addons/auth_signup/res_users.py @@ -5,9 +5,14 @@ class res_users(osv.Model): _inherit = 'res.users' def auth_signup_create(self, cr, uid, new_user, context=None): - # add login, email, name passowrd - # if options groups - # add groups + # new_user: + # login + # email + # name (optional) + # partner_id (optional) + # groups (optional) + # sign (for partner_id and groups) + # user_template_id = self.pool.get('ir.config_parameter').get_param(cr, uid, 'auth.signup_template_user_id', 0) if user_template_id: self.pool.get('res.users').copy(cr, 1, user_template_id, new_user, context=context) From db7e49ca91d483213c8ba61d4314411c899e0f23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 10:10:54 +0200 Subject: [PATCH 078/165] [FIX] project_timesheet tests: user creation should also have its partner. bzr revid: tde@openerp.com-20120813081054-csyaq8p7lf7e1nvh --- addons/mail/res_users.py | 1 - .../test/worktask_entry_to_timesheetline_entry.yml | 6 ++++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/addons/mail/res_users.py b/addons/mail/res_users.py index 3d8ed92609b..6a18560de31 100644 --- a/addons/mail/res_users.py +++ b/addons/mail/res_users.py @@ -85,7 +85,6 @@ class res_users(osv.osv): cr.execute('ALTER TABLE res_users ALTER COLUMN alias_id SET NOT NULL') except Exception: pass - def create(self, cr, uid, data, context=None): # create default alias same as the login diff --git a/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml b/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml index 214aa04d25b..8b58791f699 100644 --- a/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml +++ b/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml @@ -1,11 +1,13 @@ - Create a user 'HR Manager' - + !record {model: res.partner, id: res_partner_hrmanager0}: + name: HR Manager + lang: en_US !record {model: res.users, id: res_users_hrmanager0}: company_id: base.main_company - lang: en_US + partner_id: res_partner_hrmanager0 login: hr - name: HR Manager password: hr groups_id: - base.group_hr_manager From 55e9fdf3606f3ce79b593ceefa5a554614ee75f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 11:16:27 +0200 Subject: [PATCH 079/165] [FIX] res.users: defer onchange_type calls from partner form view to the partner. bzr revid: tde@openerp.com-20120813091627-nfv0vkfjo87jhplp --- openerp/addons/base/res/res_users.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py index ada625c6bcf..f8c745edc10 100644 --- a/openerp/addons/base/res/res_users.py +++ b/openerp/addons/base/res/res_users.py @@ -171,6 +171,14 @@ class users(osv.osv): } } + def onchange_type(self, cr, uid, ids, is_company, context=None): + """ Wrapper on the user.partner onchange_type, because some calls to the + partner form view applied to the user may trigger the + partner.onchange_type method, but applied to the user object. + """ + partner_ids = [user.partner_id.id for user in self.browse(cr, uid, ids, context=context)] + return self.pool.get('res_partner').onchange_type(cr, uid, partner_ids, is_company, context=context) + def read(self,cr, uid, ids, fields=None, context=None, load='_classic_read'): def override_password(o): if 'password' in o and ( 'id' not in o or o['id'] != uid ): From e120d9a699247c6fbdfbf21648a71e321642b2bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 11:17:19 +0200 Subject: [PATCH 080/165] [REV] Reverted last fixes. Think it comes from outer space. bzr revid: tde@openerp.com-20120813091719-6551uziq8ts4kj6a --- .../test/worktask_entry_to_timesheetline_entry.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml b/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml index 8b58791f699..8bb570bd7d8 100644 --- a/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml +++ b/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml @@ -1,9 +1,6 @@ - Create a user 'HR Manager' - - !record {model: res.partner, id: res_partner_hrmanager0}: - name: HR Manager - lang: en_US !record {model: res.users, id: res_users_hrmanager0}: company_id: base.main_company partner_id: res_partner_hrmanager0 From 659f3cc996922959ab314666909115ff829dfc04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 11:36:41 +0200 Subject: [PATCH 081/165] [FIX] Bloody res_partner should be res.partner. bzr revid: tde@openerp.com-20120813093641-ssyfm4au52nupbi1 --- openerp/addons/base/res/res_users.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py index f8c745edc10..9e0abb446cf 100644 --- a/openerp/addons/base/res/res_users.py +++ b/openerp/addons/base/res/res_users.py @@ -177,7 +177,7 @@ class users(osv.osv): partner.onchange_type method, but applied to the user object. """ partner_ids = [user.partner_id.id for user in self.browse(cr, uid, ids, context=context)] - return self.pool.get('res_partner').onchange_type(cr, uid, partner_ids, is_company, context=context) + return self.pool.get('res.partner').onchange_type(cr, uid, partner_ids, is_company, context=context) def read(self,cr, uid, ids, fields=None, context=None, load='_classic_read'): def override_password(o): From 4067f46ff7fd75966cec799fb223ec944b108a9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 11:36:56 +0200 Subject: [PATCH 082/165] [IMP] base.sql: no need to have a 'name' column on res.users I think. bzr revid: tde@openerp.com-20120813093656-ywab7wjdpc5gwl02 --- openerp/addons/base/base.sql | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/openerp/addons/base/base.sql b/openerp/addons/base/base.sql index c6ca6dbb76d..441fe536a0a 100644 --- a/openerp/addons/base/base.sql +++ b/openerp/addons/base/base.sql @@ -146,7 +146,6 @@ select setval('ir_ui_menu_id_seq', 2); CREATE TABLE res_users ( id serial NOT NULL, - name varchar(64) not null, active boolean default True, login varchar(64) NOT NULL UNIQUE, password varchar(64) default null, @@ -384,7 +383,7 @@ CREATE TABLE ir_model_relation ( -- Users --------------------------------- -insert into res_users (id,login,password,name,active,company_id,partner_id,lang) values (1,'admin','admin','Administrator',True,1,1,'en_US'); +insert into res_users (id,login,password,active,company_id,partner_id,lang) values (1,'admin','admin',True,1,1,'en_US'); insert into ir_model_data (name,module,model,noupdate,res_id) values ('user_root','base','res.users',True,1); -- Compatibility purpose, to remove V6.0 From 0e554c738d870a88ed4e426ef1ea105bfc96db77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 12:06:22 +0200 Subject: [PATCH 083/165] [FIX] Fixed last revision, about name removel in base.sql and so on. bzr revid: tde@openerp.com-20120813100622-jhqv244dskhlh2er --- openerp/addons/base/res/res_users.py | 2 +- openerp/service/web_services.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py index 9e0abb446cf..115b78d93e6 100644 --- a/openerp/addons/base/res/res_users.py +++ b/openerp/addons/base/res/res_users.py @@ -110,7 +110,7 @@ class users(osv.osv): } _name = "res.users" _description = 'Users' - _order = 'name' + _order = 'login' def _set_new_password(self, cr, uid, id, name, value, args, context=None): if value is False: diff --git a/openerp/service/web_services.py b/openerp/service/web_services.py index ccb753acdc8..7c08003bf7a 100644 --- a/openerp/service/web_services.py +++ b/openerp/service/web_services.py @@ -77,7 +77,7 @@ def _initialize_db(serv, id, db_name, demo, lang, user_password): cr.execute('UPDATE res_users SET password=%s, lang=%s, active=True WHERE login=%s', ( user_password, lang, 'admin')) - cr.execute('SELECT login, password, name ' \ + cr.execute('SELECT login, password ' \ ' FROM res_users ' \ ' ORDER BY login') serv.actions[id].update(users=cr.dictfetchall(), clean=True) From 401bbbc940100bc655a0d85f93ae49e850b6e25c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 12:18:47 +0200 Subject: [PATCH 084/165] [IMP] res.users: added a wrapper on onchange_address, for partner form view delegated to res.users. bzr revid: tde@openerp.com-20120813101847-rmctiebnhm2pmfcz --- openerp/addons/base/res/res_users.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py index 115b78d93e6..f4335357a4b 100644 --- a/openerp/addons/base/res/res_users.py +++ b/openerp/addons/base/res/res_users.py @@ -179,6 +179,14 @@ class users(osv.osv): partner_ids = [user.partner_id.id for user in self.browse(cr, uid, ids, context=context)] return self.pool.get('res.partner').onchange_type(cr, uid, partner_ids, is_company, context=context) + def onchange_address(self, cr, uid, ids, use_parent_address, parent_id, context=None): + """ Wrapper on the user.partner onchange_address, because some calls to the + partner form view applied to the user may trigger the + partner.onchange_type method, but applied to the user object. + """ + partner_ids = [user.partner_id.id for user in self.browse(cr, uid, ids, context=context)] + return self.pool.get('res.partner').onchange_address(cr, uid, partner_ids, is_company, context=context) + def read(self,cr, uid, ids, fields=None, context=None, load='_classic_read'): def override_password(o): if 'password' in o and ( 'id' not in o or o['id'] != uid ): From f4402a11445f05b33449554f3697840703cc1770 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 12:41:35 +0200 Subject: [PATCH 085/165] [FIX] Wrapper on onchange_address. bzr revid: tde@openerp.com-20120813104135-6ft7wh4ssdl7ouid --- openerp/addons/base/res/res_users.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py index f4335357a4b..573d0468f18 100644 --- a/openerp/addons/base/res/res_users.py +++ b/openerp/addons/base/res/res_users.py @@ -185,7 +185,7 @@ class users(osv.osv): partner.onchange_type method, but applied to the user object. """ partner_ids = [user.partner_id.id for user in self.browse(cr, uid, ids, context=context)] - return self.pool.get('res.partner').onchange_address(cr, uid, partner_ids, is_company, context=context) + return self.pool.get('res.partner').onchange_address(cr, uid, partner_ids, use_parent_address, parent_id, context=context) def read(self,cr, uid, ids, fields=None, context=None, load='_classic_read'): def override_password(o): From f80c2478120e4fcf4e80f5c2932328dce88218b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 12:54:20 +0200 Subject: [PATCH 086/165] [FIX] Still fixing stpid bugs. bzr revid: tde@openerp.com-20120813105420-stxm7cjc981bj8fq --- .../test/worktask_entry_to_timesheetline_entry.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml b/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml index 8bb570bd7d8..fad8e2af2c5 100644 --- a/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml +++ b/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml @@ -3,7 +3,6 @@ - !record {model: res.users, id: res_users_hrmanager0}: company_id: base.main_company - partner_id: res_partner_hrmanager0 login: hr password: hr groups_id: From c2c27b18582db97b0d17f9c32291f28c76cf8edb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 13:15:21 +0200 Subject: [PATCH 087/165] [FIX$] This time, it's the good fix. bzr revid: tde@openerp.com-20120813111521-uws1uophrd39krfg --- .../test/worktask_entry_to_timesheetline_entry.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml b/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml index fad8e2af2c5..e670f5bae06 100644 --- a/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml +++ b/addons/project_timesheet/test/worktask_entry_to_timesheetline_entry.yml @@ -3,6 +3,7 @@ - !record {model: res.users, id: res_users_hrmanager0}: company_id: base.main_company + name: HR Manager login: hr password: hr groups_id: From 7341bd30cc02a4360406864a17fd2e8b801cd6b3 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Mon, 13 Aug 2012 13:46:19 +0200 Subject: [PATCH 088/165] Added html field type bzr revid: nicolas.vanhoren@openerp.com-20120813114619-lqr9zu0rkz6737rp --- openerp/osv/fields.py | 3 +++ openerp/osv/orm.py | 1 + 2 files changed, 4 insertions(+) diff --git a/openerp/osv/fields.py b/openerp/osv/fields.py index 4ff23956050..b361ab664b6 100644 --- a/openerp/osv/fields.py +++ b/openerp/osv/fields.py @@ -227,6 +227,9 @@ class char(_column): class text(_column): _type = 'text' +class html(text): + _type = 'html' + import __builtin__ class float(_column): diff --git a/openerp/osv/orm.py b/openerp/osv/orm.py index 563c514726c..069664cfebe 100644 --- a/openerp/osv/orm.py +++ b/openerp/osv/orm.py @@ -545,6 +545,7 @@ FIELDS_TO_PGTYPES = { fields.boolean: 'bool', fields.integer: 'int4', fields.text: 'text', + fields.html: 'text', fields.date: 'date', fields.datetime: 'timestamp', fields.binary: 'bytea', From d8796d429cf0a1b1df896944445ad2c6f91a8859 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Mon, 13 Aug 2012 13:46:38 +0200 Subject: [PATCH 089/165] Now uses the html field type for cl editor bzr revid: nicolas.vanhoren@openerp.com-20120813114638-pla647nupeha1tim --- addons/web/static/src/js/view_form.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index baf8c151b83..1ee5d8477f6 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -4802,7 +4802,7 @@ instance.web.form.widgets = new instance.web.Registry({ 'email' : 'instance.web.form.FieldEmail', 'url' : 'instance.web.form.FieldUrl', 'text' : 'instance.web.form.FieldText', - 'text_html' : 'instance.web.form.FieldTextHtml', + 'html' : 'instance.web.form.FieldTextHtml', 'date' : 'instance.web.form.FieldDate', 'datetime' : 'instance.web.form.FieldDatetime', 'selection' : 'instance.web.form.FieldSelection', From f7d274850e9ff73f5ef3e572935c341a3b435a0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Mon, 13 Aug 2012 14:22:07 +0200 Subject: [PATCH 090/165] [IMP] [CLEAN] res_partner: image_medium used in view, because image_small was too small; cleaned some print statemetns in res_users. bzr revid: tde@openerp.com-20120813122207-04f91lvor03g1xek --- openerp/addons/base/res/res_partner_view.xml | 2 +- openerp/addons/base/res/res_users.py | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/openerp/addons/base/res/res_partner_view.xml b/openerp/addons/base/res/res_partner_view.xml index b5bfda2f0a0..c26987cafaa 100644 --- a/openerp/addons/base/res/res_partner_view.xml +++ b/openerp/addons/base/res/res_partner_view.xml @@ -99,7 +99,7 @@
- +