From 32876beec7c3439fe1634cc77bd8e8a3e92c6839 Mon Sep 17 00:00:00 2001 From: "Richard Mathot (OpenERP)" Date: Fri, 6 Dec 2013 10:17:44 +0100 Subject: [PATCH] [IMP] Code improvements bzr revid: rim@openerp.com-20131206091744-ry1bnwisj0vwmj9o --- addons/survey/__openerp__.py | 4 +- addons/survey/controllers/main.py | 4 +- addons/survey/security/survey_security.xml | 1 - addons/survey/static/src/css/survey.css | 4 +- addons/survey/survey.py | 26 +++++---- addons/survey/views/survey_views.xml | 63 +++++++++++----------- addons/survey_crm/__openerp__.py | 7 ++- 7 files changed, 57 insertions(+), 52 deletions(-) diff --git a/addons/survey/__openerp__.py b/addons/survey/__openerp__.py index 4afb83530ad..b406fc2305c 100644 --- a/addons/survey/__openerp__.py +++ b/addons/survey/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'Survey', 'version': '2.0', - 'category': 'Survey', + 'category': 'Marketing', 'description': """ This module is used for surveying. ================================== @@ -35,7 +35,7 @@ sent mails with user name and password for the invitation of the survey. """, 'summary': 'Create surveys, collect answers and print statistics', 'author': 'OpenERP SA', - 'website': 'https://www.openerp.com/', + 'website': 'https://www.openerp.com/apps/survey/', 'depends': ['email_template', 'mail', 'website'], 'data': [ 'survey_cron.xml', diff --git a/addons/survey/controllers/main.py b/addons/survey/controllers/main.py index 4d80987f3eb..e5d488831b5 100644 --- a/addons/survey/controllers/main.py +++ b/addons/survey/controllers/main.py @@ -61,7 +61,7 @@ class WebsiteSurvey(http.Controller): return werkzeug.utils.redirect("/survey/") # In case of auth required, block public user - if survey.auth_required and uid == request.registry['website'].get_public_user(request.cr, SUPERUSER_ID, request.context).id: + if survey.auth_required and uid == request.registry['website'].get_public_user(request.cr, SUPERUSER_ID, request.context): return request.website.render("website.401") # In case of non open surveys @@ -118,7 +118,7 @@ class WebsiteSurvey(http.Controller): return werkzeug.utils.redirect("/survey/") # In case of auth required, block public user - if survey.auth_required and uid == request.registry['website'].get_public_user(request.cr, SUPERUSER_ID, request.context).id: + if survey.auth_required and uid == request.registry['website'].get_public_user(request.cr, SUPERUSER_ID, request.context): return request.website.render("website.401") # In case of non open surveys diff --git a/addons/survey/security/survey_security.xml b/addons/survey/security/survey_security.xml index 896cd646c26..346e8bfc650 100644 --- a/addons/survey/security/survey_security.xml +++ b/addons/survey/security/survey_security.xml @@ -13,7 +13,6 @@ - Public access to surveys diff --git a/addons/survey/static/src/css/survey.css b/addons/survey/static/src/css/survey.css index 21948349b87..e3bb642dade 100644 --- a/addons/survey/static/src/css/survey.css +++ b/addons/survey/static/src/css/survey.css @@ -37,9 +37,9 @@ } .openerp .oe_kanban_survey .oe_stats_box { - width: 105px; + width: 90px; display: inline-block; - margin: 2px 5px 0px 5px; + margin: 2px 2px 0px 0px; text-align: center; border: 1px solid rgba(0, 0, 0, 0.16); background-color: #FFFFFF; diff --git a/addons/survey/survey.py b/addons/survey/survey.py index 2224c5a6907..6dd76450b5d 100644 --- a/addons/survey/survey.py +++ b/addons/survey/survey.py @@ -28,7 +28,6 @@ import datetime import logging import re import uuid -import traceback _logger = logging.getLogger(__name__) @@ -387,7 +386,7 @@ class survey_question(osv.osv): oldname='validation_valid_err_msg', translate=True), - # Constraints on number of answers + # Constraints on number of answers (matrices) 'constr_mandatory': fields.boolean('Mandatory question', oldname="is_require_answer"), 'constr_type': fields.selection([('all', 'all'), @@ -411,6 +410,7 @@ class survey_question(osv.osv): 'display_mode': 'dropdown', 'constr_type': 'at least', 'constr_minimum_req_ans': 1, + 'constr_maximum_req_ans': 1, 'constr_error_msg': lambda s, cr, uid, c: _('This question requires an answer.'), 'validation_error_msg': lambda s, cr, uid, c: _('The answer you entered has an invalid format.'), @@ -422,7 +422,8 @@ class survey_question(osv.osv): ('validation_length', 'CHECK (validation_length_min <= validation_length_max)', 'Max length cannot be smaller than min length!'), ('validation_float', 'CHECK (validation_min_float_value <= validation_max_float_value)', 'Max value cannot be smaller than min value!'), ('validation_int', 'CHECK (validation_min_int_value <= validation_max_int_value)', 'Max value cannot be smaller than min value!'), - ('validation_date', 'CHECK (validation_min_date <= validation_max_date)', 'Max date cannot be smaller than min date!') + ('validation_date', 'CHECK (validation_min_date <= validation_max_date)', 'Max date cannot be smaller than min date!'), + ('constr_number', 'CHECK (constr_minimum_req_ans <= constr_maximum_req_ans)', 'Max number of answers cannot be smaller than min number!') ] # def write(self, cr, uid, ids, vals, context=None): @@ -641,12 +642,19 @@ class survey_question(osv.osv): return errors # def validate_multiple_choice(self, cr, uid, question, post, answer_tag, context=None): - # problems = [] - # return problems + # errors = {} + # if question.constr_mandatory: + # # extraire les réponses + # # vérifier qu'elles sont ok + # return errors # def validate_matrix(self, cr, uid, question, post, answer_tag, context=None): - # problems = [] - # return problems + # errors = {} + # if question.constr_mandatory: + # # compter le nombre de lignes qui ont une réponse (cas des matrices à choix multiple) + # # valider selon les contraintes de lignes + # # retourner des erreurs si c'est caca + # return errors class survey_label(osv.osv): @@ -717,7 +725,7 @@ class survey_user_input(osv.osv): # return werkzeug.utils.redirect("/survey/") # # In case of auth required, block public user - # if survey.auth_required and uid == request.registry['website'].get_public_user(request.cr, SUPERUSER_ID, request.context).id: + # if survey.auth_required and uid == request.registry['website'].get_public_user(request.cr, SUPERUSER_ID, request.context): # return request.website.render("website.401") # # In case of non open surveys @@ -810,7 +818,7 @@ class survey_user_input(osv.osv): }) return { 'view_type': 'form', - "view_mode": 'form', + 'view_mode': 'form', 'res_model': 'survey.question.wiz', 'type': 'ir.actions.act_window', 'target': 'new', diff --git a/addons/survey/views/survey_views.xml b/addons/survey/views/survey_views.xml index 8472b62e474..6e53861fd0a 100644 --- a/addons/survey/views/survey_views.xml +++ b/addons/survey/views/survey_views.xml @@ -219,7 +219,7 @@ - + @@ -541,31 +541,29 @@ - - @@ -610,7 +609,7 @@ - + @@ -618,14 +617,14 @@ - + - + + diff --git a/addons/survey_crm/__openerp__.py b/addons/survey_crm/__openerp__.py index 230b1be8bb4..bcd9e9aefdb 100644 --- a/addons/survey_crm/__openerp__.py +++ b/addons/survey_crm/__openerp__.py @@ -22,8 +22,8 @@ { 'name': 'Survey CRM', - 'version': '0.1', - 'category': 'Tools', + 'version': '2.0', + 'category': 'Marketing', 'complexity': 'easy', 'description': """ This module adds a survey mass mailing button inside the more option of lead view @@ -35,7 +35,6 @@ This module adds a survey mass mailing button inside the more option of lead vie 'crm_view.xml', ], 'installable': True, - 'auto_install': True, - 'category': 'Survey', + 'auto_install': True } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: