jQuery.fn.ratings=function(stars,initialRating){var elements=this;return this.each(function(){if(!initialRating)initialRating=0;var containerElement=this;var container=jQuery(this);var starsCollection=Array();container.css('overflow','auto');containerElement.rating=initialRating;initialRatingFloat=parseFloat(initialRating);initialRating=parseInt(initialRating);flagPart=Math.abs(initialRatingFloat-initialRating);for(var starIdx=0;starIdx<stars;starIdx++){var starElement=document.createElement('span');var star=jQuery(starElement);starElement.rating=starIdx+1;star.addClass('jquery-ratings-star');if(starIdx<initialRating){star.addClass('jquery-ratings-yellow-full');}
else if(starIdx==initialRating&&flagPart==0.5){star.addClass('jquery-ratings-yellow-half');}
container.append(star);starsCollection.push(star);star.click(function(){elements.triggerHandler('ratingchanged',{rating:this.rating,container:containerElement});});star.mouseenter(function(){for(var index=0;index<this.rating;index++){starsCollection[index].addClass('jquery-ratings-full');}
for(var index=this.rating;index<stars;index++){starsCollection[index].removeClass('jquery-ratings-full');starsCollection[index].removeClass('jquery-ratings-yellow-full');starsCollection[index].removeClass('jquery-ratings-yellow-half');}});container.mouseleave(function(){ratingInt=parseInt(containerElement.rating);flagPart=Math.abs(containerElement.rating-ratingInt);for(var index=0;index<ratingInt;index++){starsCollection[index].removeClass("jquery-ratings-full");starsCollection[index].addClass("jquery-ratings-yellow-full");}
for(var index=ratingInt;index<stars;index++){if(ratingInt==index&&flagPart==0.5){starsCollection[index].addClass('jquery-ratings-yellow-half');}
starsCollection[index].removeClass("jquery-ratings-full");starsCollection[index].removeClass('jquery-ratings-yellow-full');}});}});};$.enswerme.playlist={};$.enswerme.playlist.hashbehaviors=function(hash){if(hash){if(hash.indexOf("vp/")>=0){var cur_vid=$("#player_videotitle .video_id");var vid=hash.substring(3,hash.lastIndexOf("/"));if(jQuery.trim(cur_vid.html())==vid){return;}
var _cur_vid=cur_vid.text();cur_vid.html(vid);$.ajax({url:"/player/"+vid+"/",data:{'frag':'Y','a':2,'plv_id':playlist_video_id,'plv_evid':_cur_vid},dataType:'html',success:function(result){$("#videoplayer_area").html(result);$.enswerme.player.loading_player();$("#cluster tr").removeClass("selected");$("#cluster_"+vid).addClass("selected");}});}}};$.enswerme.playlist.add_favorite_playlist=function(){$.post("/playlist/add_to_favorite_playlist/",{playlist_id:playlist_id},function(result){$.jGrowl(result.flash);},'json');return false;};$.enswerme.playlist.remove_playlist_video=function(id){var _form={type:"POST",dataType:"json",success:function(result){$.jGrowl(result.flash);if(result.is_removed==false){return;}
if(result.video_count!=undefined){$("#playlist_video_count").html(result.video_count);}
if(result.playlist_video_id){$("#playlist_video_"+result.playlist_video_id).remove();}
$.facebox.close();}};return _form;};$.enswerme.playlist.edit_playlist_form={type:"POST",dataType:"json",success:function(result){$.jGrowl(result.flash);if(result.title!=undefined&&result.description!=undefined){$("#pl_title").html(result.title);$("#pl_description").html(result.description);}
if(result.category!=undefined){$("#category").html(result.category);}
if(result.category_icon_img!=undefined){$("#category_icon_img").html(result.category_icon_img);}
else{$("#category_icon_img").html("");}
if(result.privacy_setting!=undefined){$("#privacy_setting").html(result.privacy_setting);}
$.facebox.close();}};$.enswerme.playlist.sortable={opacity:1.0,scroll:false,axis:'y',zIndex:900,stop:function(e,ui){var id=ui.item.attr("value");var prev_id=ui.item.prev().attr("value");var next_id=ui.item.next().attr("value");var is_bottom=0;if(prev_id==undefined){prev_id=-1;}
if(next_id==undefined){next_id=-1;}
$.post("/playlist/move_to_playlist_video/",{'id':id,'prev_id':prev_id,'next_id':next_id},function(data){},'json');}};$.enswerme.playlist.share_playlist_form={type:"POST",dataType:"json",beforeSubmit:function(form_data,jqform,options){var form=jqform[0];var from_email=form.elements['from_email'].value;var to_email=form.elements['to_email'].value;var message=form.elements['message'].value;var email_pattern=/^[_a-zA-Z0-9-\.]+@[\.a-zA-Z0-9-]+\.[a-zA-Z]+$/;if(!email_pattern.test(to_email)){alert($.i18n('msg','error.mail.address'));return false;}
if(!email_pattern.test(from_email)){alert($.i18n('msg','error.mail.address'));alert('{% trans "이메일 주소가 정확하지 않습니다."%}');return false;}},success:function(result){$.jGrowl(result.flash);$.facebox.close();}};$.enswerme.playlist.share_video_form={dataType:'json',beforeSubmit:function(from_data,jq_form,options){var f=jq_form[0];var email_pattern=/^[_a-zA-Z0-9-\.]+@[\.a-zA-Z0-9-]+\.[a-zA-Z]+$/;if(!email_pattern.test(f.to_email.value)){$.jGrowl(msg_email);return false;}
if(!email_pattern.test(f.from_email.value)){$.jGrowl(msg_email);return false;}
return true;},success:function(data){$.jGrowl(data.message);$.facebox.close();}};$.enswerme.playlist.share_video=function(){var cur_evid=$("#player_videotitle .video_id").html();var _dialog=tmpl("dialog_share_video_mail_form",{vid:cur_evid});$.facebox(_dialog);return false;};$.enswerme.playlist.favorite_video=function(){var cur_vid=$("#player_videotitle .video_id").html();$.post("/user_favorite_video/set/"+cur_vid+"/",{},function(result){$.jGrowl(result.flash);},'json');return false;};$.enswerme.playlist.add_to_playlist=function(){$.facebox(function(){var cur_vid=$("#player_videotitle .video_id").html();$.post("/playlist/dialog_add_to_playlist/",{'vid':cur_vid},function(result){$.facebox(result);},"html");});return false;};$.enswerme.playlist.add_to_page=function(){$.facebox(function(){$.post("/playlist/dialog_add_to_page/",{'playlist_id':playlist_id},function(result){$.facebox(result);},"html");});return false;};$.enswerme.playlist.bind_hover_event=function(obj){obj.hover(function(){$(this).addClass('hover');},function(){$(this).removeClass('hover');});};$.enswerme.playlist.unbind_hover_event=function(obj){obj.removeClass('hover');obj.unbind('mouseenter mouseleave');}
$.enswerme.playlist.bind_detail_hover=function(){$("#detail ol li").each(function(){$.enswerme.playlist.bind_hover_event($(this));});};$.enswerme.playlist.unbind_detail_hover=function(){$("#detail ol li").each(function(){$.enswerme.playlist.unbind_hover_event($(this));});};$.enswerme.playlist.sortable_detail=function(){$("#detail ol").livequery(function(){var $this=$(this);$this.sortable({opacity:0.7,axis:'y',update:function(e,ui){var sort=$this.sortable("serialize",{key:'id'});$.post("/playlist/detail/move/?"+sort,null,null,'json');}});},function(){$(this).sortable('destory');});}
$.enswerme.playlist.bind_detail=function(){$.enswerme.playlist.bind_detail_hover();$.enswerme.playlist.sortable_detail();$("#detail h4 a").click(function(){$el=$("#detail ol.line");var tpl=$("#edit_template").html().template({title:'',body:''});$el.find("img:first").after(tpl);$el.find("li.tpl span input").each(function(){var input=$(this);if(input.attr('alt')=='Save'){input.click(function(){input.attr("disabled","true");var newTitle=$el.find("li.tpl input").attr('value');var newContents=$el.find("li.tpl textarea").val().replace(/\n/gi,'<BR>');param={'playlist_id':playlist_id,'title':newTitle,'body':newContents}
$.post('/playlist/detail/add/',param,function(result){if(result.is_added){$el.find("li.tpl").remove();var tpl=$("#normal_template").html().template({id:result.id,title:newTitle,body:newContents});$el.find("img:first").after(tpl);$.enswerme.playlist.bind_detail_hover();}else{$.jGrowl(result.flash);}
input.attr("disabled","false");},'json');});}else if(input.attr('alt')=='Cancel'){input.click(function(){$.enswerme.playlist.bind_detail_hover();$el.find("li.tpl").remove();});}});$el.find("li.tpl input").select();$.enswerme.playlist.unbind_detail_hover();}).show();};$.enswerme.playlist.edit_detail=function(detail_id){var $el=$("#detail_"+detail_id);var title=$el.find("p.label").html()
var contents=$el.find("p.contents").html()
var tpl=$("#edit_template li.tpl").html().template({title:'value="'+title+'"',body:contents.replace(/<BR>/gi,'\n')});$el.html(tpl);$el.addClass('tpl');$el.find("span input").each(function(){var input=$(this);if(input.attr('alt')=='Save'){input.click(function(){input.attr("disabled","true");var newTitle=$el.find("input").attr('value');var newContents=$el.find("textarea").val().replace(/\n/gi,'<BR>');param={'detail_id':detail_id,'title':newTitle,'body':newContents}
$.post('/playlist/detail/edit/',param,function(result){if(result.is_updated){var tpl=$("#normal_template li").html().template({id:result.id,title:newTitle,body:newContents});$el.html(tpl);$el.removeClass('tpl');$.enswerme.playlist.bind_detail_hover();}else{$.jGrowl(result.flash);}
input.attr("disabled","false");},'json');});}else if(input.attr('alt')=='Cancel'){input.click(function(){var tpl=$("#normal_template li").html().template({id:detail_id,title:title,body:contents});$el.html(tpl);$el.removeClass('tpl');$.enswerme.playlist.bind_detail_hover();});}});return false;};$.enswerme.playlist.remove_detail=function(detail_id){var param={'detail_id':detail_id}
$.post('/playlist/detail/remove/',param,function(result){if(result.is_updated){$("#detail_"+result.detail_id).remove();}else{$.jGrowl(result.flash);}},'json');return false;};$.enswerme.playlist.init=function(){var cur_evid=$("#player_videotitle .video_id").html();$("#videoplayer_container .embedplayer a").each(function(){$.enswerme.player.attach_embed_player(this);});$('a.button').livequery(function(){$(this).show();});$('a[rel*=facebox]').livequery(function(){$(this).facebox();});$("#btn_share").click($.enswerme.playlist.share_video);$("#btn_favorite").click($.enswerme.playlist.favorite_video);$("#btn_add_to_playlist").click($.enswerme.playlist.add_to_playlist)
$("#playlist_list ul.sortable").sortable($.enswerme.playlist.sortable);$("#btn_favorite_playlist").click($.enswerme.playlist.add_favorite_playlist);$("#btn_add_to_page").click($.enswerme.playlist.add_to_page);if(parseInt(current_playlist_video_index,10)>5){$("#playlist_list ui").scrollTo("dl:eq({{ current_playlist_video_index }})");}
$.post("/comment/playlist/"+playlist_id+"/1/",{},function(data){$("#comment").html(data);},'html');};String.prototype.template=function(o){return this.replace(/{([^{}]*)}/g,function(a,b){var r=o[b];return typeof r==='string'||typeof r==='number'?r:a;});};