Merge with 1f69157772a16a6761938baaf89fe82d2467f231
authorymh <ymh.work@gmail.com>
Thu, 11 Oct 2012 18:59:38 +0200
changeset 846 a089bd6a29fd
parent 845 07e203d0d26f (current diff)
parent 844 1f69157772a1 (diff)
child 847 7dc7ffaa5e0a
Merge with 1f69157772a16a6761938baaf89fe82d2467f231
--- a/src/ldt/ldt/ldt_utils/models.py	Thu Oct 11 18:59:08 2012 +0200
+++ b/src/ldt/ldt/ldt_utils/models.py	Thu Oct 11 18:59:38 2012 +0200
@@ -284,9 +284,11 @@
         
         create_front_project = False
         
+        # update it
+        self.sync_iri_file()        
+        
         if not self.pk:
-            create_front_project = True
-              
+            create_front_project = True  
 
         super(Content, self).save(*args, **kwargs)
         
@@ -296,10 +298,6 @@
             self.create_front_project()
             assign('ldt_utils.change_content', get_current_user(), self)
             
-        # update it
-        # To put after project creation, to assume transaction
-        self.sync_iri_file()
-
             
     def __unicode__(self):
         return str(self.id) + ": " + self.iri_id
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/embed_popup.html	Thu Oct 11 18:59:08 2012 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/embed_popup.html	Thu Oct 11 18:59:38 2012 +0200
@@ -1,5 +1,4 @@
 {% load i18n %}
-{% load set_var %}
 {% load analytics %}
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
@@ -16,57 +15,20 @@
 		<script type="text/javascript" src="{{LDT_MEDIA_PREFIX}}js/jquery.qtip.min.js"></script>
 		<script type="text/javascript">
 			var $j = jQuery.noConflict();
+			var iframe_url='{{iframe_url}}';
+        	var polemic='{{polemic}}';
+        	var show_mic_record='{{show_mic_record}}';
+        	var annotations_list='{{annotations_list}}';
+        	var player_id='{{player_id}}';
+        	var translate_show="{% trans 'Show Player' %}";
+        	var translate_hide="{% trans 'Hide Player' %}";
 		</script>
 		<script type="text/javascript" src="{{LDT_MEDIA_PREFIX}}js/embed_popup.js"></script>
 		
 		<link rel="stylesheet" href="{{LDT_MEDIA_PREFIX}}css/workspace.css" type="text/css"/>
 		<link rel="stylesheet" href="{{LDT_MEDIA_PREFIX}}css/embed_popup.css" type="text/css"/>
 		<link rel="stylesheet" href="{{LDT_MEDIA_PREFIX}}css/jq-css/jquery.qtip.css" type="text/css"/>
-        <script type="text/javascript">
-        function iframe_event(){
-			var code_embed=document.getElementById("player_id_code");
-			iframeUrl= "{{iframe_url}}&polemic={{polemic}}&show_mic_record={{show_mic_record}}&annotations_list={{annotations_list}}";
-			player_width=570;
-			player_height=678;
-			frame = document.createElement("iframe");
-		    frame.width = 570;
-		    frame.height = 678;
-		    frame.src = iframeUrl;
-		    frame.frameBorder = 0;
-		   	frame.seamless = "seamless";
-		   	$j("#wrapper_{{player_id}}").html(frame);
-		   	iframe_code="<iframe src='"+iframeUrl+"' width='570' height='678' seamless='seamless'></iframe>";
-			$j("#player_id_code").val(iframe_code);
-			$j("#player_id_code").focus();
-			$j("#player_id_code").select();
-		}	
-		</script>
 		
-		<script type="text/javascript">
-			function div_event(){
-				var new_code=document.getElementById("embed_code_var").value;
-				var code_embed=document.getElementById("player_id_code");
-			   	$j("#wrapper_{{player_id}}").html(new_code);
-				code_embed.value= new_code;
-				$j("#player_id_code").focus();
-				$j("#player_id_code").select();	
-			}	
-		</script>
-		
-		<script type="text/javascript">
-			function toggle() {
-				var element = document.getElementById("wrapper_{{player_id}}");
-				var text = document.getElementById("displayPlayer");
-				if(element.style.display==="none") {
-			    	element.style.display="block";
-					text.innerHTML = "{% trans 'Hide Player' %}";
-			  	}
-				else {
-			    	element.style.display="none";
-					text.innerHTML = "{% trans 'Show Player' %}";
-				}
-			} 
-		</script>
 	</head>
 
 	<body id="init_embed_popup">
@@ -77,7 +39,6 @@
     
         <a id="displayPlayer" href="javascript:toggle();">{% trans 'Show Player' %}</a>
 		<div class="ldt_player" id="wrapper_{{player_id}}" style="display:none">
-			{% include "ldt/ldt_utils/partial/embed_player.html" %}  
 		</div>
 		<div id="button_row">
 		    <div id="display_select">
@@ -89,9 +50,9 @@
 				<br></br>
 				<code id ="code_{{player_id}}" >		
 					<div  id="player_code">
-						<br><div align="center">
-							<input type="radio" name="player_code_type" value="div" checked onClick="div_event()" > {% trans 'Use the div integration mode' %}</input><br>
-							<input type="radio" name="player_code_type" value="iframe" onClick="iframe_event()">  {% trans 'Use the iframe integration mode' %}</input><br>
+						<br><div>
+							<input type="radio" id="type_embed_div" name="player_code_type" value="div" checked onClick="div_event()" > {% trans 'Use the div integration mode' %}</input><br>
+							<input type="radio" id="type_embed_iframe" name="player_code_type" value="iframe" onClick="iframe_event()">  {% trans 'Use the iframe integration mode' %}</input><br>
 						</div></br>
 						<textarea id="player_id_code" readonly="readonly" class="ldt_player_code">{{ embed_rendered.player }}</textarea>
 					</div>
--- a/src/ldt/ldt/ldt_utils/views/content.py	Thu Oct 11 18:59:08 2012 +0200
+++ b/src/ldt/ldt/ldt_utils/views/content.py	Thu Oct 11 18:59:38 2012 +0200
@@ -314,26 +314,20 @@
     deleted = None
     
     if submit_action == "prepare_delete":
-        errors, titles, delete, message_temp = prepare_delete_content(request, iri_id)
-        #if there is only front_project, with no annotations, delete without confirmation
-        if delete:
-            deleted, errors_transaction = delete_content(request, iri_id)
-            content_form = ContentForm()
-            form_status="deleted"
+        errors, titles, message_temp = prepare_delete_content(request, iri_id)
+        if errors and len(errors) > 0:
+            message = ungettext("There is %(count)d error when deleting content", "There are %(count)d errors when deleting content", len(errors)) % { 'count': len(errors)}
+            title_msg = _('title error deleting content')
         else:
-            if errors and len(errors) > 0:
-                message = ungettext("There is %(count)d error when deleting content", "There are %(count)d errors when deleting content", len(errors)) % { 'count': len(errors)}
-                title_msg = _('title error deleting content')
-            else:
-                if len(message_temp)>0:
-                    message = message_temp
-                else:    
-                    message = _("Confirm delete content %(titles)s") % { 'titles' : ",".join(titles) }
-                title_msg = _("confirm delete content")
-            return render_to_response('ldt/ldt_utils/error_confirm.html', {'errors':errors, 'message':message, 'title': title_msg}, context_instance=RequestContext(request))  
+            if len(message_temp)>0:
+                message = message_temp
+            else:    
+                message = _("Confirm delete content %(titles)s") % { 'titles' : ",".join(titles) }
+            title_msg = _("confirm delete content")
+        return render_to_response('ldt/ldt_utils/error_confirm.html', {'errors':errors, 'message':message, 'title': title_msg}, context_instance=RequestContext(request))  
     elif submit_action == "delete":
         deleted, errors_transaction = delete_content(request, iri_id)
-        content_form = contentForm()
+        content_form = ContentForm()
         form_status = "deleted"
     elif submit_action == "prepare_reset":
         errors=[]
@@ -418,13 +412,9 @@
                 project_titles = map(lambda p: unicode(p.title), projects)
                 errors.append(ungettext("Content '%(title)s' is referenced by this project : %(project_titles)s. Please delete it beforehand.", "Content '%(title)s' is referenced by %(count)d projects: %(project_titles)s. Please delete them beforehand.", projects_nb) % {'title':unicode(content.title), 'count':projects_nb, 'project_titles': ",".join(project_titles)})
             elif projects_nb == 1:
-                if not projects[0].has_annotations():
-                    delete = True
-                else:
+                if projects[0].has_annotations():
                     message = _("The project '%(project_title)s' pointing on the content '%(title)s' has several annotations. Do you want to delete the content and the project anyway ?")% {'project_title':unicode(projects[0].title), 'title':unicode(content.title)}
-            elif project_nb == 0:
-                delete = True
-    return errors, titles, delete, message
+    return errors, titles, message
 
 
 @login_required
--- a/src/ldt/ldt/ldt_utils/views/lignesdetemps.py	Thu Oct 11 18:59:08 2012 +0200
+++ b/src/ldt/ldt/ldt_utils/views/lignesdetemps.py	Thu Oct 11 18:59:38 2012 +0200
@@ -4,7 +4,7 @@
 from django.http import HttpResponse, HttpResponseRedirect
 from django.shortcuts import render_to_response, get_object_or_404
 from django.template import RequestContext
-from ldt.ldt_utils.models import Content, Project
+from ldt.ldt_utils.models import Content, Project, Media
 from ldt.ldt_utils.utils import LdtUtils, clean_description
 from ldt.indexation import SimpleSearch
 from ldt.security.utils import set_forbidden_stream
@@ -247,7 +247,7 @@
 
         #save xml ldt
         ldtproject.ldt = ldt
-
+        
         doc = lxml.etree.fromstring(ldtproject.ldt_encoded)
         result = doc.xpath("/iri/project")
         
@@ -260,6 +260,12 @@
         for medianode in result:
             id = medianode.get("id")
             new_contents.append(id)
+            #Put back the video fied from "forbidden_stream_url" to the video url
+            if medianode.get("video") == settings.FORBIDDEN_STREAM_URL:
+                content = Content.objects.get(iri_id=id)
+                media = Media.objects.get(id=content.media_obj.id)
+                medianode.set('video', media.videopath)
+                ldtproject.ldt = lxml.etree.tostring(doc, pretty_print=True)
     
         check_icon_project = False
         
--- a/src/ldt/ldt/static/ldt/js/embed_popup.js	Thu Oct 11 18:59:08 2012 +0200
+++ b/src/ldt/ldt/static/ldt/js/embed_popup.js	Thu Oct 11 18:59:38 2012 +0200
@@ -69,4 +69,97 @@
     
 });
 
+function toggle() {
+	wrapper="wrapper_"+player_id;
+	wrapper_id="#"+wrapper;
+	var element = document.getElementById(wrapper);
+	var text = document.getElementById("displayPlayer");
+	var type_embed=document.getElementById("type_embed_div");
+	if(element.style.display==="none") {
+		if (type_embed.checked){
+			var new_code=document.getElementById("embed_code_var").value;
+			$j(wrapper_id).html(new_code);
+		}
+		else{
+			wrapper = "#wrapper_"+player_id;
+			iframeUrl= iframe_url+"&polemic="+polemic+"&show_mic_record="+show_mic_record+"&annotations_list="+annotations_list+"";
+			player_width=570;
+			player_height=678;
+			if(annotations_list!='False'){
+				player_width+=430;
+			}
+			if(polemic!='False'){
+				player_height+=100;
+				
+			}
+			if(show_mic_record!='False'){
+				
+				player_height+=55;
+			}
+			frame = document.createElement("iframe");
+		    frame.width = player_width;
+		    frame.height = player_height;
+		    frame.src = iframeUrl;
+		    frame.frameBorder = 0;
+		   	frame.seamless = "seamless";
+		   	$j(wrapper).html(frame);
+			
+		}
+    	element.style.display="block";
+		text.innerHTML = translate_hide;
+  	}
+	else {
+		$j(wrapper_id).html('');
+    	element.style.display="none";
+		text.innerHTML = translate_show;
+	}
+} 
 
+function div_event(){
+	wrapper = "wrapper_"+player_id;
+	wrapper_id = "#"+wrapper;
+	var element = document.getElementById(wrapper);
+	var new_code=document.getElementById("embed_code_var").value;
+	var code_embed=document.getElementById("player_id_code");
+	if(element.style.display=="block"){
+		$j(wrapper_id).html(new_code);
+	}
+	code_embed.value= new_code;
+	$j("#player_id_code").focus();
+	$j("#player_id_code").select();	
+}	
+
+function iframe_event(){
+	var code_embed=document.getElementById("player_id_code");
+	wrapper = "wrapper_"+player_id;
+	wrapper_id = "#"+wrapper;
+	var element = document.getElementById(wrapper);
+	iframeUrl= iframe_url+"&polemic="+polemic+"&show_mic_record="+show_mic_record+"&annotations_list="+annotations_list+"";
+	player_width=570;
+	player_height=678;
+	if(annotations_list!='False'){
+		player_width+=430;
+	}
+	if(polemic!='False'){
+		player_height+=100;
+		
+	}
+	if(show_mic_record!='False'){
+		
+		player_height+=55;
+	}
+	
+	if(element.style.display=="block"){
+		frame = document.createElement("iframe");
+	    frame.width = player_width;
+	    frame.height = player_height;
+	    frame.src = iframeUrl;
+	    frame.frameBorder = 0;
+	   	frame.seamless = "seamless";
+	   	$j(wrapper_id).html(frame);
+	}
+   	iframe_code="<iframe src='"+iframeUrl+"' width='"+player_width+"' height='"+player_height+"' seamless='seamless'></iframe>";
+	$j("#player_id_code").val(iframe_code);
+	$j("#player_id_code").focus();
+	$j("#player_id_code").select();
+}