///////////////////////////////////////////////////////////////////////////////
//
//  pageGenerator.js
//
// 
// © 2007 Microsoft Corporation. All Rights Reserved.
//
// This file is licensed as part of the Silverlight 1.0 SDK, for details look here: http://go.microsoft.com/fwlink/?LinkID=89144&clcid=0x409
//
///////////////////////////////////////////////////////////////////////////////

// Controls the content for each page and the set of resources required by them
PageGenerator = function(bookDetails, media_uri, spread) {
    this.bookDetails = bookDetails;
    this.numPages = getNewPageObjects(bookDetails.backCoverImage, bookDetails.pageObjects);
    this.title = bookDetails.shortTitle;
    this.bookID = bookDetails.bookId;
    this.media_uri = media_uri;
    this.resourceArray = new Array();
    //this.resourceArray[this.resourceArray.length]= "images/logo.png";
    //this.resourceArray[this.resourceArray.length]= "assets/SilverlightBackgroundLight.jpg";

    for (var i=0; i<=this.numPages; i++){
        if(this.bookDetails.backCoverImage == true)
          {
                switch(i)
                {
                case 0:
		        this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_fc.png"
                  break    
                case 1:
          	        this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_ifc.png"
                  break
                case this.numPages:

		        this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_ibc.png"

                  break
                default:
		        this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_p"+i+".png"

                }
          }
          else
          {
                  this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_p"+(i + 1)+".png"
          }
    }
    
    if(spread == -1)
    {
        for (var i=0; i<=(3); i++){
            if(this.bookDetails.backCoverImage == true)
              {
                    switch(i)
                    {
                    case 0:
		            this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_med/"+this.title+"_med_fc.png"
                      break  
                      case 1:
		            this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_med/"+this.title+"_med_ifc.png"
                      break  
                    default:
		            this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_med/"+this.title+"_med_p"+i+".png"  
                    }
              }
            else
              {
                    switch(i)
                    {
                    case 0:
		            this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_med/"+this.title+"_med_p1.png"
                      break  
                      case 1:
		            this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_med/"+this.title+"_med_p2.png"
                      break  
                    default:
		            this.resourceArray[this.resourceArray.length] = this.media_uri+this.bookID + "/sl_med/"+this.title+"_med_p3.png"  
                    }
              }
        }
    }
    else
    {
        
    }
}

PageGenerator.prototype.getPageString = function(pageNumber, isThumbnail)
{
  var retStr = "";
  if (pageNumber < 0)
  {
    return retStr;
  }
  /*retStr =  "<Canvas>";
    retStr += "  <Image Height='570' Stretch='Fill' Width='420' Source='http://80.177.83.190/silverlight/ttpMedia/"+this.title+"/"+this.title+"_med_p"+getTwoDigitInt(pageNumber)+".png'/>";
  retStr += "</Canvas>";
  return retStr;*/
  
  if(this.bookDetails.rightToLeft == false)
        var ScaleX = 1;
  else
        var ScaleX = -1;
  
  if(this.bookDetails.backCoverImage == true)
  {
        switch(pageNumber)
        {
        case 0:
          retStr =  "<Canvas>";
          retStr += "  <Image x:Name='fc' RenderTransformOrigin='0.5,0.5' Height='570' Stretch='Fill' Width='420' Canvas.Left='0' Source='"+this.media_uri+ this.bookID + "/sl_lo/"+this.title+"_lo_fc.png'>";
		                retStr += " <Image.RenderTransform>";
		                retStr += " <TransformGroup>";
		                retStr += " <ScaleTransform ScaleX='" + ScaleX + "' ScaleY='1'/>";
		                retStr += " <SkewTransform x:Name='fcSkew' AngleX='0' AngleY='0'/>";
		                retStr += " <RotateTransform Angle='0'/>";
		                retStr += " <TranslateTransform x:Name='fcTranslate' X='0' Y='0'/>";
		                retStr += " </TransformGroup>";
		                retStr += " </Image.RenderTransform>";
		  retStr += "</Image>";
          retStr += "</Canvas>";
          return retStr;
          break    
        case 1:
          retStr =  "<Canvas Background='Red'>";
          retStr += "<Image x:Name='ifc' RenderTransformOrigin='0.5,0.5' Height='570' Stretch='Fill' Canvas.Left='420' Width='0' Source='"+this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_ifc.png'>";
		                retStr += " <Image.RenderTransform>";
		                retStr += " <TransformGroup x:Name='tgroup'>";
		                retStr += " <ScaleTransform ScaleX='" + ScaleX + "' ScaleY='1'/>";
		                retStr += " <SkewTransform x:Name='ifcSkew' AngleX='0' AngleY='0'/>";
		                retStr += " <RotateTransform Angle='0'/>";
		                retStr += " <TranslateTransform x:Name='ifcTranslate' X='0' Y='0'/>";
		                retStr += " </TransformGroup>";
		                retStr += " </Image.RenderTransform>";
          retStr += "</Image>";
          retStr += "</Canvas>";
          return retStr;
          break
        case this.numPages:
          retStr =  "<Canvas>";
          retStr += "  <Image x:Name='ibc' RenderTransformOrigin='0.5,0.5' Height='570' Stretch='Fill' Width='420' Source='"+this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_ibc.png'>";
          retStr += " <Image.RenderTransform>";
		                retStr += " <TransformGroup>";
		                retStr += " <ScaleTransform ScaleX='" + ScaleX + "' ScaleY='1'/>";
		                retStr += " </TransformGroup>";
		                retStr += " </Image.RenderTransform>";
		  retStr += "</Image>";
          retStr += "</Canvas>";
          return retStr;
          break
        default:
          retStr =  "<Canvas>";//
          retStr += "  <Image x:Name='p"+pageNumber+"' RenderTransformOrigin='0.5,0.5' Height='570' Stretch='Fill' Width='420' Source='"+this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_p"+pageNumber+".png'>";
          retStr += " <Image.RenderTransform>";
		                retStr += " <TransformGroup>";
		                retStr += " <ScaleTransform ScaleX='" + ScaleX + "' ScaleY='1'/>";
		                retStr += " </TransformGroup>";
		                retStr += " </Image.RenderTransform>";
		  retStr += "</Image>";
          retStr += "</Canvas>";
          return retStr;
        }
  }
  else
  {
          retStr =  "<Canvas>";
          retStr += "  <Image x:Name='p"+(pageNumber + 1)+"' RenderTransformOrigin='0.5,0.5' Height='570' Stretch='Fill' Width='420' Source='"+this.media_uri+this.bookID + "/sl_lo/"+this.title+"_lo_p"+(pageNumber + 1)+".png'>";
          retStr += " <Image.RenderTransform>";
		                retStr += " <TransformGroup>";
		                retStr += " <ScaleTransform ScaleX='" + ScaleX + "' ScaleY='1'/>";
		                retStr += " </TransformGroup>";
		                retStr += " </Image.RenderTransform>";
		  retStr += "</Image>";
          retStr += "</Canvas>";
          return retStr;
  }
}