﻿// JScript File
	/**Author Sarabjot.Dhindsa**/
	var SMISAlbum= new SMISAlbumDisplay();	
	jQuery(document).ready(function() {
		SMISAlbum.SMISalbumJsonCall();
	});
	  function SMISAlbumDisplay(){
		this.qsParm=new Array();		
		this.albumName="";
		this.imgID="";
		this.galleryURL="";
		this.currentID="";
		this.lastId="";
		this.currentID=this.imgID;
		this.imageList= new Array();
		this.galleryListPage="";
		this.SMISAlbumDiv="SMISAlbumDisplay";
		this.smisMainImage="";
		this.images=""
		this.smisContentID="";
        this.smisAppID="";
        this.smisContentType="";	
        this.smisAlbumDate="";
        this.smisShowCarosel=false;
	}
	SMISAlbumDisplay.prototype.SMISalbumJsonCall =function(){
		
		var  classThis=(this);
		var divMainBox = $("<div/>");
		var divAlbumTitle = $("<div/>");
		$(divAlbumTitle).addClass("SMISgalHeader");
		var smisInnerDiv = $("<div/>");
		$(smisInnerDiv ).addClass("SMISinnerHeader");
		$(divAlbumTitle).append($(smisInnerDiv ));
		var smisPostDate;
		if (SMISisDate(SMISAlbum.smisAlbumDate))
		{
		    smisPostDate=" - Publié le " + smisGetDateMonthYear(SMISAlbum.smisAlbumDate);
		  this.smisAlbumDate=smisPostDate;
		}
		
		    $(smisInnerDiv).append(SMISAlbum.albumName.toUpperCase()+ smisPostDate);
		    $(divMainBox).append($(divAlbumTitle));
		    $.getJSON(this.galleryURL+"?cntID="+this.smisContentID+"&appID="+this.smisAppID+"&cntType="+ this.smisContentType +"&format=json", function(data, textStatus){	
			    var smisAbName = classThis.albumName ;	
				var smisAbDate= escape(classThis.smisAlbumDate);
			    var smisAlbumobj = data.album.images;
			    var ul = $("<ul/>").attr("id", "mycarousel");
			    var divLinks = $("<div/>");
			    $(divLinks).addClass("jcarousel-control");
			    $(ul).addClass("jcarousel-skin-tango");
			    var linkID = "";
			    var smisLinkID=0;
			    var smisAlbumID="";
			    //	smisAbName = data.images.album.name;
			    //	smisAlbumID=smisAlbumobj.albumid;
    		
				    if (SMISisArray(smisAlbumobj.image)) {
    			
					    var smisImagesObj=smisAlbumobj.image;
					    for (var j = 0; j < smisImagesObj.length; j++) {
						    smisLinkID++;
    					

						    SMISAlbum.smisMakeCarosel(smisImagesObj[j], smisLinkID, ul, divLinks,smisAlbumID,smisAbName,smisAbDate);
					    }
				    }
				    else {
    				
					    SMISAlbum.smisMakeCarosel(smisAlbumobj.image, smisLinkID, ul, divLinks,smisAlbumID,smisAbName,smisAbDate);				
					    if (SMISAlbum.smisMainImage ==smisAlbumobj.image.imageid) {
					        $("#SMISAlbumDisplay").css("display","none");
    					
					    }
				    }
    			
			    $(divMainBox).append($(ul));
			    $(divMainBox).appendTo($("#"+SMISAlbum.SMISAlbumDiv));
			    var spacer = $("<div/>");
			    $(spacer).attr("id", "SMISspacer");
			    $(spacer).addClass("SMISspacer");
			    $(spacer).appendTo($("#"+SMISAlbum.SMISAlbumDiv));
			    $(divLinks).appendTo($("#"+SMISAlbum.SMISAlbumDiv));
			    $("#mycarousel").jcarousel({
				    scroll: 5,
				    visible: 6,
				    initCallback: mycarousel_initCallback
			    });
			if (SMISAlbum.smisShowCarosel==false)
		    {  
		        $("#"+SMISAlbum.SMISAlbumDiv).css("display","none");
		    }
		    });
		    
		
	}
	SMISAlbumDisplay.prototype.smisMainImageDisplay= function(smisImagesObj)
	{

		var smisImageData = smisImagesObj.smisFrontImage;
	    var imageData="";
		$("#smisTopImageContainer").attr("src", smisImageData);
		var smisByline=(smisImagesObj.smisByline);
		var smisCutline=(smisImagesObj.smisCutline);

		if ( jQuery.trim(smisCutline)!="" && jQuery.trim(smisCutline)!="undefined" )
		{
		
		    imageData=smisCutline;  
		}
		/*if ( jQuery.trim(smisByline)!="")
		{
		
		    imageData+="<br/>"+ smisByline;  
		}
		*/

		$("#smisMainImageAlt").append(imageData);
	}
 	  SMISAlbumDisplay.prototype.smisMakeCarosel = function(smisImagesObj, smisLinkID, ul, divLinks, smisAbID, smisAbName,smisAbDate){
	  
	  	var aLinks = $("<a/>");
	  	var imageID = smisImagesObj.smisImageid;
	  	if (smisImagesObj.smisTopImage=="True") {
			SMISAlbum.smisMainImageDisplay(smisImagesObj);
		}
		else
		{
			$(aLinks).attr("id", imageID);
			$(aLinks).attr("href", "#");
			$(aLinks).append(smisLinkID);
			$(divLinks).append(aLinks);
			var thumblink = smisImagesObj.smisThumblink;
			var largeImage = smisImagesObj.smisFrontImage;
			var li = $("<li/>");
			var image = $("<img/>").attr("src", thumblink);
			var alink = $("<a/>").attr("href", "#");
			SMISAlbum.imageList.push(imageID);
			$(alink).attr("id", imageID);
			$(alink).attr("name","smisData_"+this.smisContentID+"_"+smisAbDate);
			$(alink).attr("caption", smisAbName);
			alink.click(function(event){
				SMISAlbum.displayImage($(this).attr("id"),$(this).attr("name").split("_")[1], $(this).attr("caption"),$(this).attr("name").split("_")[2]);
				return false;
			});
			$(alink).append(image);
			$(li).append(alink);
			$(ul).append(li);
			this.smisShowCarosel=true;
	    }
	}
	function mycarousel_initCallback(carousel){
	jQuery('.jcarousel-control a').bind('click', function(){
		carousel.scroll(jQuery.jcarousel.intval(jQuery(this).text()));
		return false;
	});	
	jQuery('.jcarousel-scroll select').bind('change', function(){		
		carousel.options.scroll = jQuery.jcarousel.intval(this.options[this.selectedIndex].value);
		return false;
	});
	jQuery('#mycarousel-next').bind('click', function(){
		carousel.next();
		return false;
	});
	jQuery('#mycarousel-prev').bind('click', function(){
		carousel.prev();
		return false;
	});
};
	SMISAlbumDisplay.prototype.displayImage=function(smisImageID,smisAlbumID,smisAbCaption,smisDate)
	{

	    window.location = this.galleryListPage +"?abID="+smisAlbumID+"&imgID="+smisImageID+"&catmainname=argalerie&catname="+smisAbCaption +"&dt="+smisDate;
	}
	SMISAlbumDisplay.prototype.getPreviousImageId=function(){
		var previousID = "";
		this.lastId = this.currentID;
		for (var i = 0; i < SMISAlbum.imageList.length; i++) {
			if (parseInt(SMISAlbum.imageList[i]) == parseInt(this.currentID)) {
				if (i > 0) {
					previousID = SMISAlbum.imageList[i - 1]
					break;
				}
				else {
					previousID = SMISAlbum.imageList[SMISAlbum.imageList.length - 1]
				}
			}
		}
		return previousID;
	}
	SMISAlbumDisplay.prototype.getNextImageId=function(){
		var nextID = "";
		this.lastId=this.currentID;
		for (var i = 0; i < SMISAlbum.imageList.length; i++) {
			if (parseInt(SMISAlbum.imageList[i]) == parseInt(this.currentID)) {
				if (i < (SMISAlbum.imageList.length - 1)) {
					nextID = SMISAlbum.imageList[i + 1]
					break;
				}
			}
			else {
				nextID = SMISAlbum.imageList[0];
			}
		}
		return nextID;
	}
	SMISAlbumDisplay.prototype.previousImage=function()
	{
		this.currentID=SMISAlbum.getPreviousImageId();
		SMISAlbum.changeImage();
	}
	SMISAlbumDisplay.prototype.nextImage=function()
	{
		this.currentID=SMISAlbum.getNextImageId();
		SMISAlbum.changeImage();
	}
	SMISAlbumDisplay.prototype.changeImage=function()
	{  
		var imageID=(this.currentID);
		$("#SMISimg_"+imageID).click();
	}	
function SMISisArray(obj) {
	if (obj.length != null) {

		return true;
	}
	else
	{
		return false;
	}
}

function SMISisDate(dateStr){
	var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
	var matchArray = dateStr.match(datePat);
	
	if (matchArray == null) {
		return false;
	}
	
	return true;
}

function smisGetDateMonthYear(dateStr){
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
		var matchArray = dateStr.match(datePat);
		
		if (matchArray == null) {
			return false;
		}
		var smisDateString="";
		month = matchArray[1];
		day = matchArray[3];
		year = matchArray[5];
		smisDateString=day +" ";
		if (month == 1) {
		smisDateString +="janv.";
		}
			else 
				if (month == 2) {
							smisDateString +="f\u00E9vr.";
				
				}
				else 
					if (month == 3) {
								smisDateString +="mars";
					
					}
					else 
						if (month == 4) {
									smisDateString +="avr.";
						
						}
						else 
							if (month == 5) {
										smisDateString +="mai";
							
							}
							if (month == 6) {
							    smisDateString += "juin";
							
							}
							else 
								if (month == 7) {
											smisDateString +="juill.";
								
								}
								else 
									if (month == 8) {
												smisDateString +="ao\u00FBt";
									
									}
									else 
										if (month == 9) {
													smisDateString +="sept.";
										
										}
										else 
											if (month == 10) {
														smisDateString +="oct.";
											
											}
											else 
												if (month == 11) {
															smisDateString +="nov.";
												
												}
												else 
													if (month == 12) {
																smisDateString +="d\u00E9c.";
													
													}
				smisDateString +=" " +year;
				return smisDateString;
	}
	

