From 653677bb9ae1936fab463406830f01443a2e674f Mon Sep 17 00:00:00 2001
From: Alan Jack Pippin <ajp@pippin.(none)>
Date: Mon, 26 Nov 2007 23:03:52 -0700
Subject: [PATCH] Added new wordwrap parameters.

---
 ItemAddEmbedVideo.inc             | 34 ++++++++++++++++++-------------
 templates/EmbedVideoSiteAdmin.tpl |  8 +++++++-
 2 files changed, 27 insertions(+), 15 deletions(-)

diff --git a/ItemAddEmbedVideo.inc b/ItemAddEmbedVideo.inc
index 46e290b..69ee24d 100644
--- a/ItemAddEmbedVideo.inc
+++ b/ItemAddEmbedVideo.inc
@@ -90,6 +90,8 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 	   $watermarkImage = $this->getParameter($ItemAddEmbedVideo, 'watermarkImage', "");
 	   $watermarkVideos = $this->getParameter($ItemAddEmbedVideo, 'watermarkVideos', "false");
 	   $watermarkAlignment = $this->getParameter($ItemAddEmbedVideo, 'watermarkAlignment', "left");
+	   $wordwrapSummary = $this->getParameter($ItemAddEmbedVideo, 'wordwrapSummary', "0");
+	   $wordwrapDescription = $this->getParameter($ItemAddEmbedVideo, 'wordwrapDescription', "0");
 
 	   /* Print our stored/set Parameters */
 	   if(!strcmp($debugOutput,"true")) {
@@ -109,6 +111,8 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 	     print "watermarkVideos=$watermarkVideos<br>\n";
 	     print "watermarkImage=$watermarkImage<br>\n";
 	     print "watermarkAlignment=$watermarkAlignment<br>\n";
+	     print "wordwrapSummary=$wordwrapSummary<br>\n";
+	     print "wordwrapDescription=$wordwrapDescription<br>\n";
 	     print "<hr>\n";
 	   }
 
@@ -236,7 +240,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		     $description=preg_replace("/width='\d+'/","width='".$width."'",$description);
 		     $description=preg_replace("/height='\d+'/","height='".$height."'",$description);
 		   }
-		   $description.= "<br>$summary";
 		 } else {
 		   return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__,
 		  	  "Unable to extract embedded video information from url: $url"),NULL,NULL);
@@ -316,7 +319,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		 $description.= $video_id.$autoStartStr.$youtubeShowRelatedStr;
 		 $description.= '" type="application/x-shockwave-flash" wmode="transparent" ';
 		 $description.= 'width="'.$width.'" height="'.$height.'"></embed></object>';
-		 $description.= "<br>$summary";
 	       }
 	   /*
 	    **********************************
@@ -379,7 +381,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 	       $description.= 'type="application/x-shockwave-flash" ';
 	       $description.= 'src="'.$googlePlayer.'?docId='.$doc_id.$autoStartStr.'" flashvars=""> ';
 	       $description.= '</embed>';
-	       $description.= "<br>$summary";
 
 	   /*
 	    **********************************
@@ -427,7 +428,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		   $description=preg_replace("/width='\d+'/","width='".$width."'",$description);
 		   $description=preg_replace("/height='\d+'/","height='".$height."'",$description);
 		 }
-		 $description.= "<br>$summary";
 	       } else {
 		 return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__,
 			"Unable to extract embedded video information from url: $url"),NULL,NULL);
@@ -479,7 +479,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		   $description=preg_replace("/\.swf/",".swf?playerVars=autoPlay=yes",$description);
 		 }
 		 $description.= "</embed>";
-		 $description.= "<br>$summary";
 	       } else {
 		 return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__,
 			"Unable to extract embedded video information from url: $url"),NULL,NULL);
@@ -538,7 +537,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		   $description=preg_replace("/$height/",$height.";autoplay:true",$description);
 		 }
 		 $description.= ">";
-		 $description.= "<br>$summary";
 	       } else {
 		 return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__,
 			"Unable to extract embedded video information from url: $url"),NULL,NULL);
@@ -570,12 +568,12 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 	       }
 
 	       /* Extract the summary from the webpage contents */
-	       preg_match('/<meta name="description" content="(.+?)" \/>/i', $contents, $matches);
+	       preg_match('/<div class="description  foreground">(.+?)<\/div>/i', $contents, $matches);
 	       $summary=$matches[1];
 
 	       /* Extract the title from the webpage contents */
 	       preg_match('/<meta name="title" content="Dailymotion : (.+?)" \/>/i', $contents, $matches);
-	       $title=$matches[1];	       
+	       $title=htmlentities($matches[1], ENT_QUOTES, "UTF-8");
 	       
 	       /* Build the thumbnail URL from the item_id */
 	       $thumbnail=$dailymotionThumbnailUrl.$item_id;
@@ -590,7 +588,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		   $description=preg_replace("/width=\"\d+\"/","width=\"".$width."\"",$description);
 		   $description=preg_replace("/height=\"\d+\"/","height=\"".$height."\"",$description);
 		 }
-		 $description.= "<br>$summary";
 	       } else {
 		 return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__,
 			"Unable to extract embedded video information from url: $url"),NULL,NULL);
@@ -640,14 +637,11 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		   $description=preg_replace("/width=\"\d+\"/","width=\"".$width."\"",$description);
 		   $description=preg_replace("/height=\"\d+\"/","height=\"".$height."\"",$description);
 		 }
-		 $description.= "<br>$summary";
 	       } else {
 		 return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__,
 			"Unable to extract embedded video information from url: $url"),NULL,NULL);
 	       }
 
-
-
 	   /*
 	    **********************************
 	    * Embed a StickAm Video
@@ -701,7 +695,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		   $description=preg_replace("/width='\d+'/","width='".$width."'",$description);
 		   $description=preg_replace("/height='\d+'/","height='".$height."'",$description);
 		 }
-		 $description.= "<br>$summary";
 	       } else {
 		 return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__,
 			"Unable to extract embedded video information from url: $url"),NULL,NULL);
@@ -764,7 +757,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 		   $description=preg_replace("/width='\d+'/","width='".$width."'",$description);
 		   $description=preg_replace("/height='\d+'/","height='".$height."'",$description);
 		 }
-		 $description.= "<br>$summary";
 	       } else {
 		 return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__,
 			"Unable to extract embedded video information from url: $url"),NULL,NULL);
@@ -958,6 +950,20 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
 	   $fileName = preg_replace("/'/","",$fileName);
 	   $fileName = preg_replace("/\"/","",$fileName);
 	   $fileName = preg_replace("/&#\d+;/","",$fileName);
+
+	   /* Wordwrap the description or summary as appropriate */
+	   $description_summary = $summary;
+
+	   if(strcmp($wordwrapSummary,"0")) {
+	     $summary = wordwrap($summary,$wordwrapSummary,"<br>",FALSE);
+	   }
+
+	   if(strcmp($wordwrapDescription,"0")) {
+	     $description_summary = wordwrap($description_summary,$wordwrapDescription,"<br>",FALSE);
+	   }
+	   
+	   /* Tack on the summary to the end of the description */
+	   $description.= "<br>$description_summary";
 	   
 	   /* General debug output */
 	   if(!strcmp($debugOutput,"true")) {
diff --git a/templates/EmbedVideoSiteAdmin.tpl b/templates/EmbedVideoSiteAdmin.tpl
index d25226a..493b863 100644
--- a/templates/EmbedVideoSiteAdmin.tpl
+++ b/templates/EmbedVideoSiteAdmin.tpl
@@ -151,9 +151,15 @@
     <tr class="gbEven"><td>watermarkImage</td><td>URL or local path</td>
       <td>{g->text text="URL or local path to an alternate image to use as a watermark for all video thumbnails."}</td></tr>
 
-    <tr class="gbEven"><td>watermarkAlignment</td><td>alignment</td>
+    <tr class="gbOdd"><td>watermarkAlignment</td><td>alignment</td>
       <td>{g->text text="Specify the watermark alignment: top-left, top, top-right, left, center, right, bottom-left, bottom, bottom-right"}</td></tr>
 
+    <tr class="gbEven"><td>wordwrapSummary</td><td>0 - N</td>
+      <td>{g->text text="If set to non-zero, specifies the maximum line width when displaying the item's summary"}</td></tr>
+
+    <tr class="gbOdd"><td>wordwrapDescription</td><td>0 - N</td>
+      <td>{g->text text="If set to non-zero, specifies the maximum line width when displaying the item's description"}</td></tr>
+
 
   </table>
 
-- 
2.34.1