[IMP] merged methods get_finished_survey_input ids with filter_input_ids in survey.py and to retain correct filters improved exception handling in controller
bzr revid: dizzy.zala@gmail.com-20140403115423-171x3cbxie82qv8w
This commit is contained in:
parent
4e2942d418
commit
37c390beb6
|
@ -317,14 +317,14 @@ class WebsiteSurvey(http.Controller):
|
|||
def get_filter_data(self, post):
|
||||
"""Returns data used for filtering the result"""
|
||||
filters = []
|
||||
#if user add some random data in query URI
|
||||
try:
|
||||
for ids in post:
|
||||
for ids in post:
|
||||
#if user add some random data in query URI
|
||||
try:
|
||||
row_id, answer_id = ids.split(',')
|
||||
filters.append({'row_id': int(row_id), 'answer_id': int(answer_id)})
|
||||
except:
|
||||
#if user add some random data in query URI
|
||||
return []
|
||||
except:
|
||||
#if user add some random data in query URI
|
||||
return filters
|
||||
return filters
|
||||
|
||||
def page_range(self, total_record, limit):
|
||||
|
|
|
@ -155,18 +155,15 @@ class survey_survey(osv.Model):
|
|||
else:
|
||||
filtered_input_ids,filter_display_data = [],[]
|
||||
if finished:
|
||||
final_ids = self.get_finished_survey_input_ids(cr, uid, filtered_input_ids, context=context)
|
||||
return final_ids
|
||||
user_input = self.pool.get('survey.user_input')
|
||||
if not filtered_input_ids:
|
||||
current_filters = user_input.search(cr, uid, [], context=context)
|
||||
user_input_objs = user_input.browse(cr, uid, current_filters, context=context)
|
||||
else:
|
||||
user_input_objs = user_input.browse(cr, uid, filtered_input_ids, context=context)
|
||||
return [input.id for input in user_input_objs if input.state == 'done']
|
||||
return filtered_input_ids
|
||||
|
||||
def get_finished_survey_input_ids(self, cr, uid, current_filters, context):
|
||||
user_input,filtered_list = self.pool.get('survey.user_input'),[]
|
||||
if not current_filters:
|
||||
current_filters = user_input.search(cr, uid, [], context=context)
|
||||
user_input_objs = user_input.browse(cr, uid, current_filters, context=context)
|
||||
filtered_list = [input.id for input in user_input_objs if input.state == 'done']
|
||||
return filtered_list
|
||||
|
||||
def get_filter_display_data(self, cr, uid, filters, context):
|
||||
'''Returns data to display current filters
|
||||
:param filters: list of dictionary(having: row_id, ansewr_id)
|
||||
|
|
Loading…
Reference in New Issue