[IMP] Add a test mode for draft/open surveys

bzr revid: rim@openerp.com-20140128145138-50av6dixkwctdk13
This commit is contained in:
Richard Mathot (OpenERP)
2014-01-28 15:51:38 +01:00
parent 8c00a0125c
commit 9441d24a7d
3 changed files with 18 additions and 1 deletions
+9
View File
@@ -83,6 +83,15 @@ class WebsiteSurvey(http.Controller):
survey_obj = request.registry['survey.survey']
user_input_obj = request.registry['survey.user_input']
# Test mode
if token and token == "phantom":
_logger.error("[survey] Phantom mode")
user_input_id = user_input_obj.create(cr, uid, {'survey_id': survey.id, 'test_entry': True}, context=context)
user_input = user_input_obj.browse(cr, uid, [user_input_id], context=context)[0]
data = {'survey': survey, 'page': None, 'token': user_input.token}
return request.website.render('survey.survey_init', data)
# END Test mode
# Controls if the survey can be displayed
errpage = self._check_bad_cases(cr, uid, request, survey_obj, survey, user_input_obj, context=context)
if errpage:
+7
View File
@@ -180,6 +180,8 @@ class survey_survey(osv.Model):
elif new_state == 'close':
vals.update({'date_close': fields.datetime.now()})
self.message_post(cr, uid, ids, body="""<p>Survey closed</p>""", context=context)
# Purge the tests records
self.pool.get('survey.user_input').purge_tests(cr, uid, context=context)
elif new_state == 'cancel':
self.message_post(cr, uid, ids, body="""<p>Survey cancelled</p>""", context=context)
return super(survey_survey, self).write(cr, uid, ids, vals, context=context)
@@ -753,6 +755,11 @@ class survey_user_input(osv.Model):
if empty_user_input_ids:
self.unlink(cr, uid, empty_user_input_ids, context=context)
def purge_tests(self, cr, uid, context=None):
''' Remove the test entries '''
old_tests = self.search(cr, uid, [('test_entry', '=', True)], context=context)
return self.unlink(cr, uid, old_tests, context=context)
def action_survey_resent(self, cr, uid, ids, context=None):
''' Sent again the invitation '''
record = self.browse(cr, uid, ids[0], context=context)
+2 -1
View File
@@ -68,7 +68,7 @@
<field name="name">survey_user_input_tree</field>
<field name="model">survey.user_input</field>
<field name="arch" type="xml">
<tree string="Survey User inputs" version="7.0" create="false">
<tree string="Survey User inputs" version="7.0" colors="lightgrey:test_entry == True" create="false">
<field name="survey_id"/>
<field name="date_create"/>
<field name="deadline"/>
@@ -76,6 +76,7 @@
<field name="email"/>
<field name="type"/>
<field name="state"/>
<field name="test_entry" invisible="True"/>
</tree>
</field>
</record>