﻿function showPopupCategory(control)
{
if(!Globals.IsAuthorised) return;
    var html = templates[templatePhoto.ADD_CAT_PHOTO];
    document.body.windowPopUp = new windowEx({
            title: 'Thêm mới album',   
            width: 300,
            height: 150,
            content: html,
            resize: false,
            maximize: false,
            minimize: false,
            modal: true            
        });
    
    document.body.windowPopUp.show();
    if(control == 'cbphoto_cat_update')
        document.body.windowPopUp.setPosition(getAbsolutePosition('cbphoto_cat_update'));
    else
        document.body.windowPopUp.setPosition(getAbsolutePosition('cbphoto_cat'));
    getDOM('txtaddcatphoto').focus();
    getDOM('addcatphotoerr').innerHTML = '';
    getDOM('txtaddcatphoto').onkeypress = function(e){onkeypressaddcat(e,control);};
    getDOM('btnPopupAddCat').onclick = function(){addcategoryofphoto(control)}
}
function onkeypressaddcat(e,control)
{
    var e = e || window.event;
    var keycode = e.which || e.keyCode;
    if(keycode == 13){        
       addcategoryofphoto(control);
    }
    if(keycode == 27){
        document.body.windowPopUp.close();        
    }
}
function addcategoryofphoto(control)
{
    var catobj = getDOM('txtaddcatphoto');
    if(catobj)
    {
        if(catobj.value.trim().length == 0)
        {
            getDOM('addcatphotoerr').innerHTML = PhotoMessage.REQUIRE_CAT_NAME;
            catobj.focus();            
        }
        else
        {
            //ShowAjaxLoading('txtaddcatphoto','POST');            
            getDOM('addcatphotoerr').innerHTML = '';
            var cat = new Object();
            cat.Name = catobj.value.trimAll();   
            photoController.SaveCat(cat,control);
        }
    }
}
function valid_photo()
{
    var filename = getDOM('f_photo_image');
    if(filename.value.trim()=='')
    {
        getDOM('f_photo_image_error').innerHTML = PhotoMessage.REQUIRE_INPUT_PATH;
        filename.focus();
        return false;
    }else{getDOM('f_photo_image_error').innerHTML =''}
    
    if(!valid_image(filename.value.trim())){
        getDOM("f_photo_image_error").innerHTML = PhotoMessage.MSG_WRONG_FORMAT_IMAGE;
        filename.focus(); 
        return false;
    }else{getDOM('f_photo_image_error').innerHTML =''}    

    if(getDOM('cbphoto_cat').value.trim()=='' || getDOM('cbphoto_cat').value <= 0)
    {
        getDOM('cbphoto_cat_error').innerHTML = PhotoMessage.REQUIRE_CATEGORY;
        getDOM('cbphoto_cat').focus();
        return false;
    }else{ getDOM('cbphoto_cat_error').innerHTML=''}   
    return true;
}
function do_upload_photo()
{
   if(Globals.IsAuthorised){
    if(valid_photo()){
    getDOM('btn_upload').disabled = true;
    
    //get user name
    getDOM('f_UserName').value  = getUserName();    
            
    frm = document.frm_upload;
    frm.action = ajaxRequestURL("photo","save");
    ShowAjaxLoading('div_add_photo','POST');    
    try{
    System.Environment.RequestManager.submitForm('frm_upload', upload_photo_success,upload_photo_fail);
    }catch(ex){}
   }
  }
}
function upload_photo_success(response, opts)
{     
      HideAjaxLoading();   
      if(response.responseText == constants.REQUIRE_LOGIN)
      {
          window.location = getAbsolutePath(constants.LOGIN_PAGE);
          return false;            
      }      
      if(response.responseText !="fail" && response.responseText !="false")
      {   
          if(response.responseText.indexOf("FILE_NO_EXIST") < 0)
          {
               getDOM('btn_upload').disabled = false;       
               getDOM('photo_id').value = response.responseText;
               showStoreImage();
               return false;
          }
          else
          {
            alert("File không đúng định dạng ảnh hoặc không tồn tại!");
            getDOM('btn_upload').disabled = false;
            return false;       
          }  
      }
      if(response.responseText =="false")
      {
            alert("File không đúng định dạng ảnh hoặc không tồn tại!");
            getDOM('btn_upload').disabled = false;
            return false;       
      }            
}
function upload_photo_fail(response, opts)
{
    HideAjaxLoading();          
}
function SendCommentOfPhoto()
{   
    if(getDOM('txtcomment_content').disabled == true) return;
    if(!Globals.IsAuthenticated)
    {
        window.location = getAbsolutePath(constants.LOGIN_PAGE)
        return false;
    }
    var obj = getDOM('txtcomment_content');
    if(obj.value.trim() =='')
    {
        alert(PhotoMessage.REQUIRE_COMMENT);
        obj.focus();
        return false;
    }        
    getDOM('btnCommentPhoto').disabled = true;
    var comment = {};
    comment.Content = getDOM('txtcomment_content').value.trim().capitalize();
    comment.PhotoId = getDOM('photo_id').value;
    photoController.SaveComment(comment);
}
function FilterPhotoByCategory(){    
    var obj = getDOM('cbphoto_cat');
    var catId = obj.options[obj.selectedIndex].value;    
    catId = catId == null? 0: catId;    
    photoController.showSlideShow(catId);
}
function initPazingCommentByPhotoId(){
System.Environment.ObjectManager.clear();
  var pagingController_comment_photo = new PagingController({
       id: "commentphoto",
       pageId: 'comment_photo_paging',
       contentId: 'contains_comment_photo',
       pageSize: '5',//Number of items par page
       numberPage: '3',//Number of Page display
       urlGetCountRequest: ajaxRequestURL("photo","getcountcomment"),//Url to get count
       urlGetData: ajaxRequestURL("photo","getcommentbyrange"),//Url get data for paging
       params: {Id:getDOM('photo_id').value},
       tpl: templatePhoto.DETAIL_PHOTO_COMMENT,
       beforeUpdate: function(list){
            if(list != null){                         
                var isDelete = (Globals.IsAuthorised || Globals.IsAdmin);
                $(list).each(function(i, item){
                    item.isDelete = isDelete;
                });
            }
       },
       afterUpdate: function(){
            $("a[name='btnDeleteCommentOfPhoto']").click(function(){
                var id = $(this).attr("rel");
                photoController.DeleteComment(id);
                initPazingCommentByPhotoId();
                return false;
            });
       }
    });
}
function showformupdatephoto(id){
   if(Globals.IsAuthorised || Globals.IsAdmin){
     showControl('tblUpdatePhoto'); 
     hideControl('contentPhoto'); 
     hideControl('divupdate');
          
     //Bind data for combo Category
     photoController.GetAllCat('cbphoto_cat_update',
     function(){
        getDOM('cbphoto_cat_update').value = getDOM('photo_catid').value;
     });
     //Bind data in form
     getDOM('txtphoto_title').value = getDOM('lblTitlePhoto').innerHTML.htmlDecode();
     getDOM('txtphoto_description').value = getDOM('lblDesPhoto').innerHTML.htmlDecodeMultil();  
     setFocus('txtphoto_title');  
   }    
}
function updatephoto(id){
  if(Globals.IsAuthorised || Globals.IsAdmin){
    if(getDOM('cbphoto_cat_update').value.trim()=='' || getDOM('cbphoto_cat_update').value <= 0)
    {
        getDOM('cbphoto_cat_error').innerHTML = PhotoMessage.REQUIRE_CATEGORY;
        getDOM('cbphoto_cat_update').focus();
        return false;
    }else{ getDOM('cbphoto_cat_error').innerHTML=''}       
    
    var photo = {};
    photo.Id = id;
    photo.Title = getDOM('txtphoto_title').value;
    photo.CatId = getDOM('cbphoto_cat_update').value;
    photo.Description = getDOM('txtphoto_description').value;
    photoController.UpdatePhoto(photo);
  }
  else
  {
    alert('Bạn không có quyền sửa!');
    destroyUpdatePhoto();
  }  
}
function destroyUpdatePhoto(){
    hideControl('tblUpdatePhoto'); 
    showControl('contentPhoto'); 
    showControl('divupdate'); 
}
function deletephoto(id){
    if(Globals.IsAuthorised || Globals.IsAdmin){
        if(confirm(PhotoMessage.CONFIRM_DELETE)){
        photoController.Delete(id);
     }
   }    
}
function showformAddnewPhoto()
{
    if(Globals.IsAuthorised){
         var state = BabyHomeState.HouseManage + "_tabG";   
         setState("babyhome",state);         
    }
}
function initSlideShow()
{
        document.getElementById('arrow_left').onmousemove = startSlide;
		document.getElementById('arrow_left').onmouseout = releaseSlide;
		document.getElementById('arrow_right').onmousemove = startSlide;
		document.getElementById('arrow_right').onmouseout = releaseSlide;		
		document.getElementById('arrow_right').onclick = clickSlide;		
		document.getElementById('arrow_left').onclick = clickSlide;		
		
		var imageGalleryObj = document.getElementById('slide_photo_store_img');
		var slideshowImages = imageGalleryObj.getElementsByTagName('IMG');
		for(var no=0;no<slideshowImages.length;no++){
			slideshowImages[no].onmouseover = showImage;
		}
		getDOM("slide_photo_store_img").style.left = '0px';
}
function clickSlide(){
var container_slide = getDOM("container_slide");    
var slide_photo_store_img = getDOM("slide_photo_store_img");    
 if(this.id=='arrow_right'){
    if(slide_photo_store_img.offsetLeft > container_slide.offsetWidth){
        return;
    }
    $("#slide_photo_store_img").animate({"left": "+=127px"}, "slow");
 }
 else{
    if(slide_photo_store_img.offsetLeft + slide_photo_store_img.offsetWidth < 0){
        return;
    }
    $("#slide_photo_store_img").animate({"left": "-=127px"}, "slow");
 }  
}
function startSlide(){
 this.getElementsByTagName('IMG')[0].src = '../img/bg/' + this.id + '_over.gif'; 
}
function releaseSlide(){
    this.getElementsByTagName('IMG')[0].src = '../img/bg/' + this.id + '.gif';
}
var activeImage = false;
function showImage()
{
	if(activeImage){
		activeImage.style.filter = 'alpha(opacity=50)';	
		activeImage.style.opacity = 0.5;
	}	
	this.style.filter = 'alpha(opacity=100)';
	this.style.opacity = 1;	
	activeImage = this;	
}