diff options
| author | Vir (Open ERP) <vir@tinyerp.com> | 2010-09-06 12:45:37 +0530 |
|---|---|---|
| committer | Vir (Open ERP) <vir@tinyerp.com> | 2010-09-06 12:45:37 +0530 |
| commit | 7cc2e27105820c4bc9b726b11ab400a9adf30d93 (patch) | |
| tree | 28901147ca7a99e9293479cbd0ace6510a58b7d9 | |
| parent | 06eddc2b436cd0af37eeca09ac5405b5c9704a3a (diff) | |
[MOD/IMP] survey : Usability Improvements
bzr revid: vir@tinyerp.com-20100906071537-q5o6icri0z9ifc08
| -rw-r--r-- | addons/survey/security/ir.model.access.csv | 10 | ||||
| -rw-r--r-- | addons/survey/survey.py | 7 | ||||
| -rw-r--r-- | addons/survey/survey_demo.xml | 2 | ||||
| -rw-r--r-- | addons/survey/survey_report.xml | 6 | ||||
| -rw-r--r-- | addons/survey/survey_view.xml | 50 | ||||
| -rw-r--r-- | addons/survey/wizard/survey_browse_answer.py | 2 | ||||
| -rw-r--r-- | addons/survey/wizard/survey_selection.py | 2 | ||||
| -rw-r--r-- | addons/survey/wizard/survey_send_invitation.py | 8 | ||||
| -rw-r--r-- | addons/survey/wizard/survey_send_invitation.xml | 4 |
9 files changed, 55 insertions, 36 deletions
diff --git a/addons/survey/security/ir.model.access.csv b/addons/survey/security/ir.model.access.csv index 8d50471fd03..10c07dc0b08 100644 --- a/addons/survey/security/ir.model.access.csv +++ b/addons/survey/security/ir.model.access.csv @@ -1,10 +1,10 @@ "id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" "access_survey_type_manager","survey.type manager","model_survey_type","base.group_tool_manager",1,1,1,1 "access_survey_type_user","survey.type user","model_survey_type","base.group_tool_user",1,1,1,1 -"access_survey_manager","survey","model_survey","base.group_tool_manager",1,0,0,0 +"access_survey_manager","survey","model_survey","base.group_tool_manager",1,1,1,1 "access_survey_system","survey","model_survey","base.group_system",1,0,0,0 "access_survey_user","survey","model_survey","base.group_tool_user",1,1,1,1 -"access_survey_page_manager","survey.page manager","model_survey_page","base.group_tool_manager",1,0,0,0 +"access_survey_page_manager","survey.page manager","model_survey_page","base.group_tool_manager",1,1,1,1 "access_survey_page_system","survey.page system","model_survey_page","base.group_system",1,0,0,0 "access_survey_page_user","survey.page user","model_survey_page","base.group_tool_user",1,1,1,1 "access_survey_question_manager","survey.question manager","model_survey_question","base.group_tool_manager",1,1,1,1 @@ -18,7 +18,7 @@ "access_survey_history_user","survey.history.user","model_survey_history","base.group_tool_user",1,1,1,1 "access_survey_question_column_heading_manager","survey.question.column.heading manager","model_survey_question_column_heading","base.group_tool_manager",1,1,1,1 "access_survey_question_column_heading_user","survey.question.column.heading user","model_survey_question_column_heading","base.group_tool_user",1,0,0,0 -"access_survey_request_manager","survey.request manager","model_survey_request","base.group_tool_manager",1,0,0,0 +"access_survey_request_manager","survey.request manager","model_survey_request","base.group_tool_manager",1,1,1,1 "access_survey_request_user","survey.request user","model_survey_request","base.group_tool_user",1,1,1,1 "access_survey_request_system","survey.request system","model_survey_request","base.group_system",1,0,0,0 "access_survey_tbl_column_heading_manager","survey.tbl.column.heading manager","model_survey_tbl_column_heading","base.group_tool_manager",1,1,1,1 @@ -38,8 +38,10 @@ "access_survey_response_answer","survey.response.answer","model_survey_response_answer","base.group_hr_manager",1,1,1,1 "access_survey_res_users","res.users","base.model_res_users","base.group_hr_manager",1,1,1,1 "access_survey_request","survey.request","model_survey_request","base.group_hr_manager",1,1,1,1 -"access_survey_history_survey_manager","survey.history manager","model_survey_history","base.group_tool_manager",1,0,0,0 +"access_survey_history_survey_manager","survey.history manager","model_survey_history","base.group_tool_manager",1,1,1,1 "access_survey_type_system","survey.type system","model_survey_type","base.group_system",1,0,0,0 "access_survey_question_system","survey.question system","model_survey_question","base.group_system",1,0,0,0 "access_survey_history_system","survey.history.system","model_survey_history","base.group_system",1,0,0,0 "access_survey_answer_system","survey.answer system","model_survey_answer","base.group_system",1,0,0,0 +"access_survey_answer_base_user","survey.answer.base.user","model_survey_answer","base.group_user",1,1,1,1 +"access_survey_question_base_user","survey.question.base.user","model_survey_question","base.group_user",1,1,1, diff --git a/addons/survey/survey.py b/addons/survey/survey.py index a78fe55ea2d..5a080e5bfb4 100644 --- a/addons/survey/survey.py +++ b/addons/survey/survey.py @@ -55,7 +55,8 @@ class survey(osv.osv): 'page_ids': fields.one2many('survey.page', 'survey_id', 'Page'), 'date_open': fields.datetime('Survey Open Date', readonly=1), 'date_close': fields.datetime('Survey Close Date', readonly=1), - 'max_response_limit': fields.integer('Maximum Answer Limit'), + 'max_response_limit': fields.integer('Maximum Answer Limit', + help="Set to one if survey is answerable only once"), 'response_user': fields.integer('Maximum Answer per User', help="Set to one if you require only one Answer per user"), 'state': fields.selection([('draft', 'Draft'), ('open', 'Open'), ('close', 'Closed'), ('cancel', 'Cancelled')], 'Status', readonly=True), @@ -569,7 +570,7 @@ class survey_answer(osv.osv): 'in_visible_answer_type': fields.boolean('Is Answer Type Invisible??') } _defaults = { - 'sequence' : lambda * a: 1, +# 'sequence' : lambda * a: 1, 'type' : lambda * a: 'char', 'in_visible_answer_type':_get_in_visible_answer_type, } @@ -691,7 +692,7 @@ class survey_request(osv.osv): } _defaults = { 'state': lambda * a: 'draft', - 'date_deadline': lambda * a : (now() + RelativeDateTime(months=+1)).strftime("%Y-%m-%d %H:%M:%S") +# 'date_deadline': lambda * a : (now() + RelativeDateTime(months=+1)).strftime("%Y-%m-%d %H:%M:%S") } def survey_req_waiting_answer(self, cr, uid, ids, arg): self.write(cr, uid, ids, { 'state' : 'waiting_answer'}) diff --git a/addons/survey/survey_demo.xml b/addons/survey/survey_demo.xml index 855cb2b7ce7..a4ae0d44be3 100644 --- a/addons/survey/survey_demo.xml +++ b/addons/survey/survey_demo.xml @@ -25,6 +25,7 @@ <field name="tot_comp_survey">1</field> <field name="tot_start_survey">1</field> <field name="response_user">5</field> + <field name="date_open">2010-03-03 14:25:03</field> </record> <record id="survey_page_who_are_you" model="survey.page"> @@ -500,6 +501,7 @@ <field name="tot_comp_survey">1</field> <field name="tot_start_survey">1</field> <field name="response_user">5</field> + <field name="date_open">2010-03-03 14:25:03</field> </record> <record id="survey_page_odoo_who_are_you" model="survey.page"> diff --git a/addons/survey/survey_report.xml b/addons/survey/survey_report.xml index 3ca05f6ba63..ebb52ce285c 100644 --- a/addons/survey/survey_report.xml +++ b/addons/survey/survey_report.xml @@ -6,20 +6,20 @@ id="report_survey_form" model="survey" name="survey.form" - string="Surveys"/> + string="Survey"/> <report auto="True" id="survey_analysis" model="survey" name="survey.analysis" rml="" - string="Surveys Statistics"/> + string="Survey Statistics"/> <report auto="True" id="survey_browse_response" model="survey" name="survey.browse.response" rml="" - string="Surveys Answers"/> + string="Survey Answers"/> </data> </openerp> diff --git a/addons/survey/survey_view.xml b/addons/survey/survey_view.xml index 166c46dca93..ec3b1677db6 100644 --- a/addons/survey/survey_view.xml +++ b/addons/survey/survey_view.xml @@ -2,13 +2,13 @@ <openerp> <data> - <menuitem icon="STOCK_PREFERENCES" id="base.menu_tools" name="Tools" sequence="28" groups="base.group_system,base.group_tool_manager,base.group_tool_user"/> + <menuitem icon="STOCK_PREFERENCES" id="base.menu_tools" name="Tools" sequence="28"/> <menuitem name="Surveys" id="menu_surveys" parent="base.menu_tools" - groups="base.group_tool_manager,base.group_tool_user,base.group_system" sequence="2"/> + groups="base.group_tool_manager,base.group_tool_user,base.group_system,base.group_user" sequence="2"/> <menuitem name="Define Surveys" id="menu_define_survey" groups="base.group_tool_manager,base.group_tool_user,base.group_system" parent="menu_surveys" /> - <menuitem id="menu_answer_surveys" name="Answer Surveys" parent="menu_surveys" groups="base.group_tool_manager,base.group_tool_user,base.group_system"/> + <menuitem id="menu_answer_surveys" name="Answer Surveys" parent="menu_surveys" groups="base.group_tool_manager,base.group_tool_user,base.group_system,base.group_user"/> <menuitem name="Reporting" parent="base.menu_tools" id="base.menu_lunch_reporting" sequence="6"/> <menuitem name="Surveys" id="menu_reporting" parent="base.menu_lunch_reporting" sequence="2"/> @@ -196,7 +196,7 @@ </page> <page string="Other"> <group colspan="6" col='4'> - <field name="max_response_limit" select="1" + <field name="max_response_limit" attrs="{'readonly':[('state','in',('open','close'))]}"/> <field name="response_user" attrs="{'readonly':[('state','in',('open','close'))]}"/> @@ -260,8 +260,7 @@ <field name="arch" type="xml"> <search string="Search Survey"> <group col='10' colspan='4'> - <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]"/> - <filter string="Open" icon="terp-check" domain="[('state','=','open')]"/> + <filter icon="terp-document-new" string="Current" domain="[('state','in', ('draft', 'open'))]"/> <separator orientation="vertical"/> <field name="title" select="1"/> <field name="type" select="1" widget="selection"/> @@ -271,8 +270,9 @@ </group> <newline/> <group expand="0" string="Group By..." colspan="4" col="20"> - <filter string="Type" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'type'}"/> <filter string="Responsible" icon="terp-personal" domain="[]" context="{'group_by':'responsible_id'}"/> + <separator orientation="vertical"/> + <filter string="Type" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'type'}"/> <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/> </group> </search> @@ -476,6 +476,7 @@ <newline/> <group expand="0" string="Group By..." colspan="4" col="20"> <filter string="Survey" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'survey_id'}"/> + <filter string="Page" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'title'}"/> </group> </search> </field> @@ -489,7 +490,7 @@ <field name="view_id" ref="survey_page_tree"></field> </record> - <menuitem name="Pages" id="menu_survey_page_form1" + <menuitem name="Survey Pages" id="menu_survey_page_form1" action="action_survey_page_form" parent='menu_define_survey' groups="base.group_tool_manager,base.group_tool_user,base.group_system"/> @@ -679,6 +680,10 @@ <field name="page_id"/> <field name="survey" widget="selection"/> <field name="type"/> + <newline/> + <group expand="0" string="Group By..." colspan="4" col="20"> + <filter string="Page" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'page_id'}"/> + </group> </search> </field> </record> @@ -864,9 +869,10 @@ <field name="model">survey.answer</field> <field name="type">tree</field> <field name="arch" type="xml"> - <tree editable="top" string="Survey Answer"> + <tree editable="bottom" string="Survey Answer"> <field name="sequence" string="Seq"/> <field name="answer" select="1"/> + <field name="type"/> </tree> </field> </record> @@ -1087,15 +1093,23 @@ <field name="arch" type="xml"> <search string="Search Survey"> <group col='10' colspan='4'> - <filter icon="terp-emblem-important" string="Unanswered" domain="[('state','=','waiting_answer')]"/> - <filter icon="terp-gtk-media-pause" string="Late" domain="[('date_deadline','<',current_date)]"/> + <filter icon="terp-gtk-media-pause" string="Waiting Answer" domain="[('state','=','waiting_answer')]"/> + <filter icon="terp-emblem-important" string="Late" domain="[('date_deadline','<',current_date)]"/> <separator orientation="vertical"/> <field name="survey_id" widget="selection" select="1"/> <field name="email" select="1"/> - <field name="user_id" select="1" widget="selection" default="1"> + <field name="user_id" select="1" default="1"> <filter string="MY" icon="terp-personal" domain="[('user_id','=',uid)]"/> </field> - </group> + </group> + <newline/> + <group expand="0" string="Group By..." colspan="4" col="20"> + <filter string="User" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/> + <separator orientation="vertical"/> + <filter string="Survey" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'survey_id'}"/> + <separator orientation="vertical"/> + <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/> + </group> </search> </field> </record> @@ -1151,32 +1165,32 @@ <act_window domain="[('survey_id', '=', active_id)]" id="act_survey_pages" - name="Survey Pages" + name="Pages" res_model="survey.page" src_model="survey"/> <act_window domain="[('survey', '=', active_id)]" id="act_survey_question" - name="All Questions" + name="Questions" res_model="survey.question" src_model="survey"/> <act_window domain="[('page_id', '=', active_id)]" id="act_survey_page_question" - name="Survey Questions" + name="Questions" res_model="survey.question" src_model="survey.page"/> <act_window domain="[('question_id', '=', active_id)]" id="act_survey_answer" - name="Survey Answers" + name="Answers" res_model="survey.answer" src_model="survey.question"/> <menuitem name="Answer a Survey" id="menu_run_survey_form" sequence="2" action="action_view_survey_name" parent="menu_answer_surveys" - groups="base.group_tool_manager,base.group_tool_user,base.group_system" icon="STOCK_INDEX"/> + groups="base.group_tool_manager,base.group_tool_user,base.group_system,base.group_user" icon="STOCK_INDEX"/> </data> </openerp> diff --git a/addons/survey/wizard/survey_browse_answer.py b/addons/survey/wizard/survey_browse_answer.py index 4b74021b8a1..cf047a0930c 100644 --- a/addons/survey/wizard/survey_browse_answer.py +++ b/addons/survey/wizard/survey_browse_answer.py @@ -46,7 +46,7 @@ class survey_browse_answer(osv.osv_memory): _columns = { 'survey_id': fields.selection(_get_survey, "Survey", required="1"), - 'response_id': fields.many2one("survey.response", "Survey Answer", help="If you want to print all answer of selected survey then don't select survey answer and if you select survey answer then print only selected survey answer."), + 'response_id': fields.many2one("survey.response", "Survey Answers", help="If you want to print all answers of selected survey then don't select survey answer and if you select survey answer then print only selected survey answer."), } def action_next(self, cr, uid, ids, context=None): diff --git a/addons/survey/wizard/survey_selection.py b/addons/survey/wizard/survey_selection.py index 2a9438594b2..92097d99333 100644 --- a/addons/survey/wizard/survey_selection.py +++ b/addons/survey/wizard/survey_selection.py @@ -62,7 +62,7 @@ class survey_name_wiz(osv.osv_memory): for sur in surv_obj.browse(cr, uid, [context.get('survey_id',False)]): result.append((sur.id, sur.title)) return result - group_id = self.pool.get('res.groups').search(cr, uid, [('name', 'in', ('Survey / Manager','Survey / User'))]) + group_id = self.pool.get('res.groups').search(cr, uid, [('name', 'in', ('Tools / Manager','Tools / User'))]) user_obj = self.pool.get('res.users') user_rec = user_obj.read(cr, uid, uid) for sur in surv_obj.browse(cr, uid, surv_obj.search(cr, uid, [])): diff --git a/addons/survey/wizard/survey_send_invitation.py b/addons/survey/wizard/survey_send_invitation.py index b34d97c6b03..d0bb7ed87cc 100644 --- a/addons/survey/wizard/survey_send_invitation.py +++ b/addons/survey/wizard/survey_send_invitation.py @@ -41,8 +41,8 @@ class survey_send_invitation(osv.osv_memory): 'survey_id', "Answer", required=1), 'send_mail': fields.boolean('Send mail for new user'), 'send_mail_existing': fields.boolean('Send reminder for existing user'), - 'mail_subject': fields.char('Subject', size=256, required=1), - 'mail_subject_existing': fields.char('Subject', size=256, required=1), + 'mail_subject': fields.char('Subject', size=256), + 'mail_subject_existing': fields.char('Subject', size=256), 'mail_from': fields.char('From', size=256, required=1), 'mail': fields.text('Body') } @@ -100,7 +100,7 @@ class survey_send_invitation(osv.osv_memory): survey_ref= self.pool.get('survey') model_data_obj = self.pool.get('ir.model.data') - group_id = model_data_obj._get_id(cr, uid, 'survey', 'base.group_tool_user') + group_id = model_data_obj._get_id(cr, uid, 'base', 'group_tool_user') group_id = model_data_obj.browse(cr, uid, group_id, context=context).res_id act_id = self.pool.get('ir.actions.act_window') @@ -212,4 +212,4 @@ class survey_send_invitation_log(osv.osv_memory): survey_send_invitation_log() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/survey/wizard/survey_send_invitation.xml b/addons/survey/wizard/survey_send_invitation.xml index 3762475e420..8f82d816954 100644 --- a/addons/survey/wizard/survey_send_invitation.xml +++ b/addons/survey/wizard/survey_send_invitation.xml @@ -41,7 +41,7 @@ </record> <act_window id="action_act_view_survey_send_invitation" - key2="client_action_multi" name="Send Invitation" + key2="client_action_multi" name="Send Invitations" res_model="survey.send.invitation" src_model="survey" view_mode="form" target="new" view_type="form" /> @@ -74,4 +74,4 @@ <field name="target">new</field> </record> </data> -</openerp>
\ No newline at end of file +</openerp> |
