Fixed bug when displaying annotations from iri files in search results + thread in indexation
--- a/src/ldt/ldt/indexation/__init__.py Thu Oct 13 10:43:00 2011 +0200
+++ b/src/ldt/ldt/indexation/__init__.py Wed Oct 19 11:57:09 2011 +0200
@@ -43,14 +43,12 @@
return hits.scoreDocs
def highlight_documents(doc_list, query, field):
+ searcher = get_searcher()
analyzer = lucene.FrenchAnalyzer(lucene.Version.LUCENE_CURRENT)
- searcher = get_searcher()
formatter = lucene.SimpleHTMLFormatter('<span class="highlight">', '</span>')
query = get_query_parser(field).parse(query)
highlighter = lucene.Highlighter(formatter, lucene.QueryScorer (query))
- import logging
-
for project in doc_list:
for segment in project['list']:
lucene_doc = searcher.doc(segment['lucene_id'])
@@ -65,9 +63,7 @@
if segment['title'] == u'':
segment['title'] = lucene_doc.getField('title').stringValue()
- segment['tags'] = tags[tags.find(';')+1:]
-
-
+ segment['tags'] = tags[tags.find(';')+1:]
return doc_list
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/publishedprojectslist.html Thu Oct 13 10:43:00 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/publishedprojectslist.html Wed Oct 19 11:57:09 2011 +0200
@@ -8,6 +8,11 @@
{% for project in projects %}
<tr class="imageline {% cycle 'projectscontentsoddline' 'projectscontentsevenline'%}" >
{% url ldt.ldt_utils.views.project_json_id project.ldt_id as json_url_id %}
+ {% if is_gecko %}
+ <td class="cellimg"><div class="cellimgdiv"><a href="{% url index_project_full project.ldt_id %}"><img src="{{LDT_MEDIA_PREFIX}}img/page_edit.png" alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/></a></div></td>
+ {% else %}
+ <td class="cellimg"><div class="cellimgdiv"><a href="{% url index_project project.ldt_id %}" class="ldt_link_open_ldt"><img src="{{LDT_MEDIA_PREFIX}}img/page_edit.png" alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/></a></div></td>
+ {% endif %}
<td class="cellimg"><div class="cellimgdiv"><img src="{{LDT_MEDIA_PREFIX}}img/page_copy.png" href="{% url ldt.ldt_utils.views.copy_project project.ldt_id %}" class="ldt_link_copy_project" alt="{% trans 'copy the project' %}" title="{% trans 'copy the project' %}"/></div></td>
<td class="cellimg"><div class="cellimgdiv"><img src="{{LDT_MEDIA_PREFIX}}img/plugin.png" href="{{WEB_URL}}{{json_url_id}}" id="player_project_{{project.ldt_id}}" class="ldt_link_embed" alt="{% trans 'link json by id' %}" title="{% trans 'link json by id' %}"/></div></td>
<td class="cellimg">
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/search_results.html Thu Oct 13 10:43:00 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/search_results.html Wed Oct 19 11:57:09 2011 +0200
@@ -73,7 +73,7 @@
{% endifnotequal %}
<ul class="listsegments">
{% for segment in res.list %}
- <li class="segmentinfos" ><span class="" title="{% trans 'open ldt' %}"><a class="ldt_link_open_ldt" href="{% url ldt.ldt_utils.views.display_highlighted_seg segment.project_id segment.iri_id segment.ensemble_id segment.decoupage_id segment.element_id %}">
+ <li class="segmentinfos" ><span class="" title="{% trans 'open ldt' %}"><a class="ldt_link_open_ldt" href="{% url ldt.ldt_utils.views.index_segment segment.project_id segment.iri_id segment.ensemble_id segment.decoupage_id segment.element_id %}">
{% if segment.title %}
{{ segment.title }}
{% else %}
--- a/src/ldt/ldt/ldt_utils/urls.py Thu Oct 13 10:43:00 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/urls.py Wed Oct 19 11:57:09 2011 +0200
@@ -36,7 +36,6 @@
url(r'^segmentInit/(?P<project_id>.*)/(?P<content_id>.*)/(?P<ensemble_id>.*)/(?P<cutting_id>.*)/(?P<segment_id>.*)/$', 'views.init_segment'),
url(r'^segmentLdt/(?P<project_id>.*)/(?P<content_id>.*)/(?P<ensemble_id>.*)/(?P<cutting_id>.*)/(?P<segment_id>.*)/$', 'views.ldt_segment'),
url(r'^segmentHighlight/(?P<project_id>.*)/(?P<content_id>.*)/(?P<ensemble_id>.*)/(?P<cutting_id>.*)/(?P<segment_id>.*)/$', 'views.highlight_segment'),
- url(r'^displayHighligtedSegment/(?P<project_id>.*)/(?P<content_id>.*)/(?P<ensemble_id>.*)/(?P<cutting_id>.*)/(?P<segment_id>.*)/$', 'views.display_highlighted_seg'),
)
urlpatterns += patterns('',
--- a/src/ldt/ldt/ldt_utils/views.py Thu Oct 13 10:43:00 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/views.py Wed Oct 19 11:57:09 2011 +0200
@@ -258,6 +258,10 @@
except Content.DoesNotExist:
continue
segments = list(item)
+ for s in segments:
+ if not s['project_id']:
+ s['project_id'] = '_'
+
score = sum([seg['score'] for seg in segments])
if content.description == None:
desc = ''
@@ -266,9 +270,9 @@
complete_results.append({'list' : segments, 'score' : score, 'content_title' : content.title, 'content_id' : content.iri_id, 'content_description' : desc })
complete_results.sort(key=lambda k: k['score'])
- request.session.__setitem__('complete_results', complete_results)
- request.session.__setitem__('search', search)
- request.session.__setitem__('field', field)
+ request.session['complete_results'] = complete_results
+ request.session['search'] = search
+ request.session['field'] = field
paginator = Paginator (complete_results, settings.LDT_RESULTS_PER_PAGE)
page = 1
@@ -285,27 +289,15 @@
else:
return HttpResponseRedirect(reverse('ldt.ldt_utils.views.published_project'))
-
-def display_highlighted_seg(request, project_id, content_id, ensemble_id, cutting_id, segment_id, full=False):
-
- url = settings.WEB_URL + reverse("ldt.ldt_utils.views.init_segment", args=[project_id, content_id, ensemble_id, cutting_id, segment_id])
- language_code = request.LANGUAGE_CODE[:2]
-
- if full:
- return render_to_response('ldt/ldt_utils/init_ldt_full.html', {'LDT_MEDIA_PREFIX': settings.LDT_MEDIA_PREFIX, 'colorurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/pkg/color.xml', 'i18nurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/pkg/i18n', 'language': language_code, 'baseurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/', 'url': url}, context_instance=RequestContext(request))
- else:
- return render_to_response('ldt/ldt_utils/init_ldt.html', {'LDT_MEDIA_PREFIX': settings.LDT_MEDIA_PREFIX, 'colorurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/pkg/color.xml', 'i18nurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/pkg/i18n', 'language': language_code, 'baseurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/', 'url': url}, context_instance=RequestContext(request))
-
-
def search_listing(request):
if not request.session.__contains__('complete_results'):
msg = _("Please enter valid keywords.")
return render_to_response('ldt/ldt_utils/search_results.html', {'msg' : msg}, context_instance=RequestContext(request))
- complete_results = request.session.__getitem__('complete_results')
- search = request.session.__getitem__('search')
- field = request.session.__getitem__('field')
+ complete_results = request.session.get('complete_results')
+ search = request.session.get('search')
+ field = request.session.get('field')
paginator = Paginator(complete_results, settings.LDT_RESULTS_PER_PAGE)
language_code = request.LANGUAGE_CODE[:2]
@@ -323,7 +315,6 @@
return render_to_response('ldt/ldt_utils/search_results.html', {'results': results, 'nb_results' : paginator.count, 'search' : search, 'LDT_MEDIA_PREFIX': settings.LDT_MEDIA_PREFIX, 'colorurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/pkg/color.xml', 'i18nurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/pkg/i18n', 'language': language_code, 'baseurl': settings.LDT_MEDIA_PREFIX + 'swf/ldt/'}, context_instance=RequestContext(request))
-
def search_index_get(request, field, query):
language_code = request.LANGUAGE_CODE[:2]