update random film
authorGautier Thibault <gthibault@universcine.com>
Wed, 28 Apr 2010 13:47:01 +0200
changeset 84 5ffc23a7f801
parent 83 301bb2f60b88
child 85 315aef7270fc
update random film
web/thdProject/apps/frontend/modules/homepage/actions/components.class.php
web/thdProject/apps/frontend/modules/homepage/templates/_randomFilm.php
web/thdProject/apps/frontend/modules/homepage/templates/indexSuccess.php
--- a/web/thdProject/apps/frontend/modules/homepage/actions/components.class.php	Mon Apr 26 18:17:02 2010 +0200
+++ b/web/thdProject/apps/frontend/modules/homepage/actions/components.class.php	Wed Apr 28 13:47:01 2010 +0200
@@ -18,9 +18,43 @@
   }
 
   public function executeRandomFilm() {
-    // FIXME: Dummy value
-    $this->tag = Array('score' => 3);
-   
+
+    // Initialize query
+  	$query = Doctrine_Query::create()
+        ->from('ThdFilm F')
+        ->leftJoin('F.images I ')
+        ->leftJoin('F.videos V')
+        //->where("cu.code='{$culture}' AND mo.code='{$module}' AND ms.code='{$section}'")
+        ->orderBy('RAND()');
+    $this->film = $query->execute()->getFirst();
+
+   // Get image filename
+    $images = $this->film->getImages();
+    $this->imageFilename = null;
+
+    if ($images) {
+      $image = $images[0];
+      $this->imageFilename = $image->getFile();
+    }
+
+
+    // Get Tag cloud
+    // Only display 10 tags
+    $this->tagCloud = ThdUtil::getTagCloud($this->film->getTagCloud(), 10);
+
+    // Get video filename
+    $videos = $this->film->getVideos();
+    $this->videoFilename = null;
+
+    if ($videos) {
+      $video = $videos[0];
+      $this->videoFilename = $video->getFile();
+    }
+
+    // Create tag action
+    $controller = $this->getController();
+    $this->actionUri = $controller->genUrl('@editVideoSegment?film_slug='.$this->film->getSlugUrl());
+  
   }
 
   public function executeLastTaggedList() {
--- a/web/thdProject/apps/frontend/modules/homepage/templates/_randomFilm.php	Mon Apr 26 18:17:02 2010 +0200
+++ b/web/thdProject/apps/frontend/modules/homepage/templates/_randomFilm.php	Wed Apr 28 13:47:01 2010 +0200
@@ -1,65 +1,108 @@
+<script type="text/javascript">
+    // Charge le player
+    flowplayer("player", "<?php echo flash_path('flowplayer-3.1.2.swf') ?>",
+               {
+                   clip: {url: "<?php echo video_path($filmVideo['file']); ?>",
+                          autoPlay: false,
+                          autoBuffering: true,
+                          onSeek: function() {
+                              playerSeek();
+                          }
+                         },
+
+                   plugins: {
+
+                       content: {url: "<?php echo flash_path('flowplayer.content-3.1.0.swf') ?>",
+                                 backgroundColor: 'transparent',
+                                 display: 'none',
+                                 style: {p: {fontSize: 15}}
+                                }
+
+                   },
+
+                   onLoad: function() {
+                       playerLoaded(this);
+                   },
+
+                   onUnload: function() {
+                       playerUnloaded(this);
+                   },
+                   onError: function(code,msg) {
+                       alert(msg);
+                   },
+               });
+
+
+               function loadSegments() {
+
+                   if ($f().getClip() == undefined) {
+                       window.setTimeout("loadSegments()",2000);
+                       return false;
+                   }
+
+                   var duration = Math.round($f().getClip().fullDuration*10) * 100;
+
+
+                   var segments = tagTool.segments;
+
+                   for (seg in segments) {
+                       var segd = segments[seg].sout - segments[seg].sin;
+                       var percent = Math.round(segd * 100 / duration);
+                       var offset = Math.round(segments[seg].sin * 100 / duration);
+                       var c = $('#seg_container_template').clone().removeAttr("id");
+                       $("#segments").append(c);
+                       $("span", c).html('<strong>' + tagTool.segments[seg].tag +'</strong> par ' + segments[seg].user);
+                       $("#seg_0", c).css({'margin-left': offset+'%', 'width': percent+'%'})
+                       .attr('id', 'seg_' + seg)
+                       .click(function() {
+                           seg_id = $(this).attr("id");
+                           seg_id = seg_id.substr(seg_id.indexOf('_') + 1);
+                           tagTool.playSegment(seg_id, $("#pauseAfter").val());
+                       });
+                       c.show();
+                   }
+               }
+
+
+               function playerSeek() {
+                   tagTool.rebuildCurrentTags(tagTool.player.getTime() * 1000);
+               }
+
+
+               function playerLoaded(player) {
+
+                   // Charge les tags
+    				
+
+                   tagTool.player = $f("player");
+                   tagTool.showTagInPage = false;
+
+               }
+    </script>
 <div id="player">
-<script>
-function launchSelected(video) {
-	  var video = video;
-	  $f("player-ba", "<?php echo flash_path('flowplayer-3.1.0.swf') ?>", {
-			// configuration for a clip
-			clip: {
-				autoPlay: true,
-		    	autoBuffering: true,
-		    	scaling: 'fit',
-				// url of the file
-				url: video
-			},
-			// setup controlbar to use skins
-			plugins: {
-			  	controls: conf.skins.universcine
-			}
-	  });
-	}
-</script>
-  	<h3 class="head">Regardez et annotez des extraits :</h3>
-	<div id="player-ba" class="player-ba" style="background:transparent url(<?php echo image_path('test/anna_m/capt720.jpg'); ?>) no-repeat;">
+	<h3 class="head">Regardez et annotez des extraits :</h3>
+	<div id="player-ba" class="player-ba" style="background:transparent url('<?php echo film_image_path($imageFilename); ?>') no-repeat;">
 		<div class="infos">
-	    	<a href="" onclick="launchSelected(this.href);return false;" class="title">Anna M</a><br/><span class="film-infos">De <b>Michel Spinosa</b></span>
+	    	<a href="<?php echo $actionUri; ?>" class="title"><?php echo $film->getTitle(); ?></a><br/><span class="film-infos">De <?php echo thd_render_flat_list($film->getDirectorsArray(), 'name'); ?></span>
 	    </div>
-	    <div id="play">
-			<a href="" onclick="launchSelected(this.href);return false;"><img src="<?php echo image_path('buttons/btn_play.png') ?>"/></a>
-	    </div>
+	    <img src="<?php echo image_path('buttons/btn_play.png'); ?>"/ id="play"></a>
 	     <div class="tags">
-	    	<span class="head">
-		    <i>Tags liés au film :</i>
-			</span>
-			<ul class="item-list tag-list">
-			 <li class="tag-score-<?php echo $tag['score']; ?>">
-			    <a href="">anna</a>
-			  </li><li class="tag-score-5">
-			    <a href="">Jalousie</a>
-			  </li><li class="tag-score-3">
-			    <a href="">erotomanie</a>
-			  </li><li class="tag-score-2">
-			    <a href="">violence</a>
-			  </li>
-			  <li class="tag-score-<?php echo $tag['score']; ?>">
-			    <a href="">anna</a>
-			  </li><li class="tag-score-5">
-			    <a href="">Jalousie</a>
-			  </li><li class="tag-score-3">
-			    <a href="">erotomanie</a>
-			  </li><li class="tag-score-2">
-			    <a href="">violence</a>
-			  </li>
-			  <li class="tag-score-<?php echo $tag['score']; ?>">
-			    <a href="">anna</a>
-			  </li><li class="tag-score-5">
-			    <a href="">Jalousie</a>
-			  </li><li class="tag-score-3">
-			    <a href="">erotomanie</a>
-			  </li><li class="tag-score-2">
-			    <a href="">violence</a>
-			  </li>
-			</ul>
+	    	<ul class="item-list tag-list">
+		    <li><span class="head">
+		      <i>Tags liés au film :</i>
+			    </span></li>
+			    <?php 
+				    foreach($film->getTagsArray() as $item) {
+				    	if($item){ 
+				    	$tag = $item;
+				    	echo '<li class="tag-score-'.$tag['score'].'"><a href="">'.$tag.'</a>
+				      </li>';
+				        
+				    }
+			    } ?>
+			     
+			 </ul>
 	    </div>
-	</div>
-	<div class="tag-action"><a href="" class="link-button">Tagger le film</a></div>
+	</div>	
 </div>
+<div class="tag-action"><a href="<?php echo $actionUri ?>" class="link-button">Tagger le film</a></div>
--- a/web/thdProject/apps/frontend/modules/homepage/templates/indexSuccess.php	Mon Apr 26 18:17:02 2010 +0200
+++ b/web/thdProject/apps/frontend/modules/homepage/templates/indexSuccess.php	Wed Apr 28 13:47:01 2010 +0200
@@ -1,5 +1,5 @@
 <div id="homepage">
-  <?php include_component( "homepage", "randomFilm" ) ?>
+  	<?php include_component( "homepage", "randomFilm" ) ?>
 	<?php include_component( "homepage", "lastTaggedList") ?>
 	<?php include_component( "homepage", "mostTaggedList" ) ?>
 </div>
\ No newline at end of file