diff -r ef63e64297f9 -r 715f117b0415 src/ldt/ldt/ldt_utils/views/workspace.py --- a/src/ldt/ldt/ldt_utils/views/workspace.py Mon Feb 13 16:17:25 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/views/workspace.py Mon Feb 13 18:04:28 2012 +0100 @@ -179,8 +179,6 @@ else: return HttpResponseRedirect(reverse('ldt.ldt_utils.views.workspace.published_project')) - - def get_search_results(request, search, field, page): results = get_results_with_context(field, search) @@ -197,34 +195,34 @@ if content.description is None: content.description = '' - all_related_segments = list(item) + all_related_segments = list(item) + + valid_segments = [] + for s in all_related_segments: + segment = [seg for seg in all_segments if seg.element_id == s['element_id'] and seg.project_id == s['project_id'] and seg.iri_id == s['iri_id'] and seg.cutting_id == s['decoupage_id'] and seg.ensemble_id == s['ensemble_id'] ][0] - valid_segments = [] - for s in all_related_segments: - segment = [seg for seg in all_segments if seg.element_id == s['element_id'] and seg.project_id == s['project_id'] and seg.iri_id == s['iri_id'] and seg.cutting_id == s['decoupage_id'] and seg.ensemble_id == s['ensemble_id'] ][0] - - segment.score = s['score'] - segment.lucene_id = s['lucene_id'] - segment.context = s['context'] - segment.context_tags = s['tags'] - - if not s['project_id']: - segment.project_id = '_' - valid_segments.append(segment) - elif s['project_id'] in viewable_projects_id: - valid_segments.append(segment) - - # If all segments found belong to unpublished projects or projects - # the current user is not allowed to see - if not valid_segments: - continue - - score = sum([seg.score for seg in valid_segments]) - complete_results.append({ - 'list': valid_segments, - 'score': score, - 'content': content, - }) + segment.score = s['score'] + segment.lucene_id = s['lucene_id'] + segment.context = s['context'] + segment.context_tags = s['tags'] + + if not s['project_id']: + segment.project_id = '_' + valid_segments.append(segment) + elif s['project_id'] in viewable_projects_id: + valid_segments.append(segment) + + # If all segments found belong to unpublished projects or projects + # the current user is not allowed to see + if not valid_segments: + continue + + score = sum([seg.score for seg in valid_segments]) + complete_results.append({ + 'list': valid_segments, + 'score': score, + 'content': content, + }) complete_results.sort(key=lambda k: k['score'])