[IMP] Code improvements

bzr revid: rim@openerp.com-20131206091744-ry1bnwisj0vwmj9o
This commit is contained in:
Richard Mathot (OpenERP) 2013-12-06 10:17:44 +01:00
parent c670ab2bc0
commit 32876beec7
7 changed files with 57 additions and 52 deletions

View File

@ -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',

View File

@ -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

View File

@ -13,7 +13,6 @@
<field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>
<!-- Record rules -->
<record id="survey_public_access" model="ir.rule">
<field name="name">Public access to surveys</field>

View File

@ -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;

View File

@ -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',

View File

@ -219,7 +219,7 @@
<filter string="Closed" domain="[('state','=','close')]"/>
<filter string="Cancelled" domain="[('state','=','cancel')]"/>
<separator/>
<filter string="Not completed yet" name="unread_message" domain="['&amp;', ('response_ids.state', 'in', ['new', 'skip']), ('response_ids.partner_id.user_id', '=', uid)]"/>
<filter string="Not completed yet" name="unread_message" domain="[('user_input_ids.state', 'in', ['new', 'skip'])]"/>
<group expand="1" string="Group by...">
<filter string="Status" name="group_status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
</group>
@ -541,31 +541,29 @@
</record>
<!--
Survey Response Line
Survey User Input Line
.. note:: these views are useful mainly for technical users/administrators
-->
<!-- <record model="ir.ui.view" id= "survey_response_line_form">
<field name="name">survey_response_line_form</field>
<record model="ir.ui.view" id="survey_user_input_line_form">
<field name="name">survey_user_input_line_form</field>
<field name="model">survey.user_input_line</field>
<field name="arch" type="xml">
<form string="Survey Answer">
<field name="question_id"/>
<field name="date_create"/>
<notebook colspan="4">
<page string="Answer">
<field name="response_answer_ids" colspan="4" nolabel="1"/>
<group col="5" colspan="4">
<field name="state"/>
</group>
</page>
<page string="Single Textboxes">
<field name="single_text" colspan="4"/>
</page>
<page string="Comment">
<separator string="Description" colspan="4"/>
<field name="comment" nolabel="1" colspan="4"/>
</page>
</notebook>
<form string="User input line details" version="7.0">
<sheet>
<group col="4">
<field name="question_id"/>
<field name="date_create"/>
<field name="answer_type"/>
<field name="skipped" />
</group>
<group>
<field name="value_text" colspan='2' attrs="{'invisible': [('answer_type','!=','text')]}"/>
<field name="value_number" colspan='2' attrs="{'invisible': [('answer_type','!=','number')]}"/>
<field name="value_date" colspan='2' attrs="{'invisible': [('answer_type','!=','date')]}"/>
<field name="value_free_text" colspan='2' attrs="{'invisible': [('answer_type','!=','free_text')]}"/>
<field name="value_suggested" colspan='2' attrs="{'invisible': [('answer_type','!=','suggested')]}"/>
</group>
</sheet>
</form>
</field>
</record>
@ -575,20 +573,21 @@
<field name="model">survey.user_input_line</field>
<field name="arch" type="xml">
<tree string="Survey Answer Line">
<field name="survey_id"/>
<field name="user_input_id"/>
<field name="page_id"/>
<field name="question_id"/>
<field name="date_create"/>
<field name="state"/>
<field name="answer_type"/>
<field name="skipped"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="action_survey_user_input_form">
<record model="ir.actions.act_window" id="action_survey_user_input_line">
<field name="name">Survey User Input lines</field>
<field name="res_model">survey.user_input_line</field>
<field name="view_type">tree</field>
<field name="view_mode">tree</field>
<field name="context">{'default_group_by_question': True}</field>
<field name="view_mode">tree,form</field>
</record> -->
@ -610,7 +609,7 @@
<!-- Left menu categories-->
<menuitem name="Surveys" id="menu_surveys" parent="survey_main" sequence="10" groups="base.group_survey_user"/>
<menuitem name="Statistics" id="menu_statistics" parent="survey_main" sequence="20" groups="base.group_survey_manager"/>
<menuitem name="Advanced Configuration" id="menu_surveys_configuration" parent="survey_main" sequence="30" groups="base.group_no_one"/>
<menuitem name="Technical Settings" id="menu_surveys_configuration" parent="survey_main" sequence="30" groups="base.group_no_one"/>
<!-- Left menu elements: Survey -->
<menuitem name="Surveys" id="menu_survey_form" action="action_survey_form" parent="menu_surveys" sequence="1"/>
@ -618,14 +617,14 @@
<!-- Left menu elements: Statistics -->
<menuitem name="Survey User inputs" id="menu_survey_type_form1" action="action_survey_user_input" parent="menu_statistics" sequence="1"/>
<!-- Left menu elements: Advanced Configuration -->
<!-- Left menu elements: Technical Configuration -->
<menuitem name="Survey Pages" id="menu_survey_page_form1" action="action_survey_page_form" parent="menu_surveys_configuration" sequence="1"/>
<menuitem name="Survey Questions" id="menu_survey_question_form1" action="action_survey_question_form" parent="menu_surveys_configuration" sequence="2"/>
<menuitem name="Survey Labels" id="menu_survey_label_form1" action="action_survey_label_form" parent="menu_surveys_configuration" sequence="3"/>
<!-- <menuitem name="Survey User input lines" id="menu_survey_response_line_form" action="action_survey_user_input_form" parent="menu_surveys_configuration" sequence="4"/>
-->
<menuitem name="Survey User Input Lines" id="menu_survey_response_line_form" action="action_survey_user_input_line" parent="menu_surveys_configuration" sequence="4"/>
</data>
</openerp>

View File

@ -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: