--- a/src/ldt/ldt/ldt_utils/stat.py Fri Jan 27 17:21:56 2012 +0100
+++ b/src/ldt/ldt/ldt_utils/stat.py Mon Jan 30 11:14:08 2012 +0100
@@ -12,9 +12,6 @@
size_division = content.duration / nb_division
limits = [x * size_division for x in range(nb_division+1)]
nb_annotation = len(segments)
-
- polemic_positive = 0
- polemic_negative = 0
for segment in segments:
@@ -22,16 +19,18 @@
end = segment.start_ts + segment.duration
if segment.is_polemic('OK'):
- polemic_positive += 1
+ content.pol_positive += 1
if segment.is_polemic('KO'):
- polemic_negative += 1
+ content.pol_negative += 1
+ if segment.is_polemic('Q'):
+ content.pol_question += 1
+ if segment.is_polemic('REF'):
+ content.pol_reference += 1
buckets = find_buckets(buckets, limits, begin, end)
content.annotation_volume = buckets
content.nb_annotation = nb_annotation
- content.polemic_positive = polemic_positive
- content.polemic_negative = polemic_negative
content.save()
@@ -51,7 +50,7 @@
return True
-def add_annotation_to_stat(content, begin, end):
+def add_annotation_to_stat(content, begin, end, polemics=[]):
nb_division = settings.DIVISIONS_FOR_STAT_ANNOTATION
if not content.nb_annotation or not content.stat_annotation:
@@ -65,15 +64,16 @@
content.annotation_volume = buckets
content.last_annotated = datetime.datetime.now()
+ for polemic in polemics:
+ update_polemic_stat(content, polemic)
+
content.save()
-
def get_string_from_buckets(buckets):
s = "%s" % buckets
s = s[1:-1].replace(' ', '')
return s
-
def get_buckets_from_string(string):
return [int(x) for x in string.split(',')]
@@ -104,3 +104,15 @@
return buckets
+def update_polemic_stat(content, polemic_hashtag):
+ if polemic_hashtag == "OK":
+ content.pol_positive += 1
+ if polemic_hashtag == "KO":
+ content.pol_negative += 1
+ if polemic_hashtag == "Q":
+ content.pol_question += 1
+ if polemic_hashtag == "REF":
+ content.pol_reference += 1
+
+ return content
+
--- a/src/ldt/ldt/ldt_utils/utils.py Fri Jan 27 17:21:56 2012 +0100
+++ b/src/ldt/ldt/ldt_utils/utils.py Mon Jan 30 11:14:08 2012 +0100
@@ -265,6 +265,16 @@
audio.set('source', '')
tags = lxml.etree.SubElement(element, 'tags')
+ polemics = self.get_polemic_syntax(title)
+ print "polemics : %s" % polemics
+ if polemics:
+ meta = lxml.etree.SubElement(element, 'meta')
+ polemics_node = lxml.etree.SubElement(meta, 'polemics')
+
+ for polemic in polemics:
+ polemic_node = lxml.etree.SubElement(polemics_node, 'polemic')
+ polemic_node.text = polemic
+
for tag in tags_list:
tag_node = lxml.etree.SubElement(tags, 'tag')
tag_node.text = tag
@@ -276,10 +286,21 @@
self.project.ldt = lxml.etree.tostring(self.ldtdoc, pretty_print=True)
#assert False, " TIBO SAVE " + self.project.ldt
self.project.save()
+
+ def get_polemic_syntax(self, text):
+ polemics = []
+ if '++' in text:
+ polemics.append('OK')
+ if '--' in text:
+ polemics.append('KO')
+ if '==' in text:
+ polemics.append('REF')
+ if '??' in text:
+ polemics.append('Q')
+ return polemics
def __del__(self):
- self.save()
-
+ self.save()
def create_ldt(project, user, cuttings=[]):
"""create xml"""
--- a/src/ldt/ldt/ldt_utils/views/json.py Fri Jan 27 17:21:56 2012 +0100
+++ b/src/ldt/ldt/ldt_utils/views/json.py Mon Jan 30 11:14:08 2012 +0100
@@ -1,12 +1,10 @@
from django.conf import settings
-from django.http import HttpResponse, HttpResponseForbidden
+from django.http import HttpResponse
from django.shortcuts import get_object_or_404, get_list_or_404
from django.utils import simplejson
from django.utils.html import escape
-from django.utils.translation import ugettext as _
from ldt.ldt_utils.models import Project
from ldt.ldt_utils.projectserializer import ProjectSerializer
-import ldt.auth as ldt_auth
from guardian.shortcuts import get_objects_for_user