« Back

Make Video Page Look Like Youtube Using Structure and template

General Blogs April 23, 2013 By chirag @ India

Hello Guys 

For That We have To make two structure abnd template 

One For Add Video And Another is for Display Video

1) addVideo Strucutre and template

open Youtube and copy video url which you want to add and paste in textbox in structure then publish

Structure for add video

Template Code For add Video

 

#set($foo=$Video-URL.getData())
#set($n=$foo.split("v=").get(1))
<div id="web-video">
<iframe width="500" height="300" src="http://www.youtube.com/embed/$n?feature=player_detailpage" frameborder="0" allowfullscreen></iframe>
</div>
<div id="video-discription">
$Discription.getData()
</div>
 
2)  Display all Video using company id
 
Only Template is require to display video ,so used blank structure .
 
Template code:
 
#set ($journalArticleLocalService = $serviceLocator.findService('com.liferay.portlet.journal.service.JournalArticleLocalService'))
#set ($UserLocalService = $serviceLocator.findService('com.liferay.portal.service.UserLocalService'))
#set ($companyId = $getterUtil.getLong($request.theme-display.company-id))
 
#set ($curArticle = $journalArticleLocalService.getCompanyArticles($companyId,0,-1,-1))
#set($arc=$journalArticleLocalService.getCompanyArticlesCount($companyId,0))
#set ($ExpandoValueService= $serviceLocator.findService("com.liferay.portlet.expando.service.ExpandoValueLocalService"))
#set ($targetPortletID = "56")
 <div  class="video-list">
<ul>
#set ($counter = 0)
#set($by=10)
#foreach ($article in $curArticle)
#set($arc = $arc - 1)
#set($article=$curArticle.get($arc))
#if($journalArticleLocalService.isLatestVersion($article.getGroupId(),$article.articleId,$article.getVersion()))
#set ($articleUrl = "/widget/videos/-/journal_content/" + $targetPortletID + "/" + $article.groupId +  "/" + $article.articleId)
#set ($document = $saxReaderUtil.read($article.getContent()))
#set ($title = $document.valueOf("//dynamic-element[@name='Video-URL']/dynamic-content/text()"))
#if($title!="")
 
#set($n=$title.split("v=").get(1))
#set($userx = $UserLocalService.getUser($article.getUserId()))  
#set($Degree=$ExpandoValueService.getValue($companyId,"com.liferay.portal.model.User","CUSTOM_FIELDS","Degree",$article.getUserId()))
#set($Specialty=$ExpandoValueService.getValue($companyId,"com.liferay.portal.model.User","CUSTOM_FIELDS","Specialty",$article.getUserId()))
#set($Prefix=$ExpandoValueService.getValue($companyId,"com.liferay.portal.model.User","CUSTOM_FIELDS","Prefix",$article.getUserId()))
 <li class="videoli" style="list-style: none;width:330px;border-bottom: 1px solid #DDD;min-height:150px;">   
 <a href="${articleUrl}" target="video"><img src="http://img.youtube.com/vi/$n/default.jpg" style="float: left;
padding-right: 20px;
width:140px;"></a>
     <h4> $article.getUrlTitle() </h4>
     <a href = "/web/$userx.getScreenName()">
     $userx.getFirstName() $userx.getLastName()  </a> </br>
     $Degree.getData() </br>
     $Specialty.getData()
     
  </li> 
#set ($counter = $counter + 1)
#if($counter==$by)
  #if($by>50)
   #break
  #end
  @page_break@
#set($by=$counter+2)
#end
#end
#end
#end
</ul>
 
I implemented this code at medicalassociation.in/videos  Visit For Better Understanding .