correct bug on indexation.
authorymh <ymh.work@gmail.com>
Fri, 09 Nov 2012 18:22:43 +0100
changeset 922 cba34a867804
parent 921 4e24ad4db185
child 923 d42fbe878062
correct bug on indexation.
src/ldt/ldt/api/ldt/resources/content.py
src/ldt/ldt/ldt_utils/contentindexer.py
src/ldt/ldt/ldt_utils/models.py
src/ldt/ldt/utils/url.py
--- a/src/ldt/ldt/api/ldt/resources/content.py	Fri Nov 09 17:46:21 2012 +0100
+++ b/src/ldt/ldt/api/ldt/resources/content.py	Fri Nov 09 18:22:43 2012 +0100
@@ -45,7 +45,6 @@
             b.data['score'] = s
             return b
 
-                        
         object_list = {
             'objects': sorted([add_score(b, score_dict.get(b.data['iri_id'],0)) for b in res], key=lambda b: b.data['score'], reverse=True),
         }
@@ -53,8 +52,5 @@
         self.log_throttled_access(request)
         
         return  self.create_response(request, object_list)
-                    
-        
-        
         
             
\ No newline at end of file
--- a/src/ldt/ldt/ldt_utils/contentindexer.py	Fri Nov 09 17:46:21 2012 +0100
+++ b/src/ldt/ldt/ldt_utils/contentindexer.py	Fri Nov 09 18:22:43 2012 +0100
@@ -130,8 +130,8 @@
             
     def index_content(self, content):        
         url = content.iri_url()
-        _, content = request_with_auth(url)
-        doc = lxml.etree.parse(StringIO(content)) #@UndefinedVariable
+        _, file_content = request_with_auth(url)
+        doc = lxml.etree.parse(StringIO(file_content)) #@UndefinedVariable
        
         Segment.objects.filter(iri_id=content.iri_id).delete() #@UndefinedVariable
         
--- a/src/ldt/ldt/ldt_utils/models.py	Fri Nov 09 17:46:21 2012 +0100
+++ b/src/ldt/ldt/ldt_utils/models.py	Fri Nov 09 18:22:43 2012 +0100
@@ -8,6 +8,7 @@
     get_current_user)
 from ldt.security.manager import SafeManager
 from ldt.security.models import SafeModel
+from ldt.utils import url as url_utils
 from sorl.thumbnail import ImageField
 from tagging.models import Tag
 from utils import (create_ldt, copy_ldt, create_empty_iri, update_iri, 
@@ -300,10 +301,13 @@
         return str(self.id) + ": " + self.iri_id
         
     def iri_url(self, web_url=settings.WEB_URL):
-        if 'http' in self.iriurl or 'https' in self.iriurl:
+        if url_utils.is_absolute(self.iriurl):
             return self.iriurl
         else:
-            return unicode(web_url) + unicode(settings.MEDIA_URL) + u"ldt/" + unicode(self.iriurl)
+            res_url = unicode(settings.MEDIA_URL) + u"ldt/" + unicode(self.iriurl)
+            if not url_utils.is_absolute(res_url):
+                res_url += unicode(web_url)
+            return res_url 
     
     def iri_file_path(self):
         return os.path.join(os.path.join(os.path.join(settings.MEDIA_ROOT, "ldt"), self.iri_id), os.path.basename(self.iriurl))
--- a/src/ldt/ldt/utils/url.py	Fri Nov 09 17:46:21 2012 +0100
+++ b/src/ldt/ldt/utils/url.py	Fri Nov 09 18:22:43 2012 +0100
@@ -1,6 +1,7 @@
 from ldt import settings
 import httplib2
 import re
+import urlparse
 
 def request_with_auth(url, method='GET'):
     h = httplib2.Http()
@@ -15,3 +16,6 @@
             
     return h.request(url, method)
 
+
+def is_absolute(url):
+    return bool(urlparse.urlparse(url).scheme)
\ No newline at end of file