﻿
//Globals
var VC_SL_plugin;

var VerticalCollageXAMLTemplate = "";
var Collage_URLs = null;

var VC_NumberImages = 10;


//
function VC_RootCanvasLoaded(sender) {

    VC_SL_plugin = sender.getHost();

    VC_GenerateNewRandomCFEVALogoSnowflake();


    //
    //TeasersServices.GetCollage_URLs(GetCollage_URLs_Completed)
    //TeasersServices.GetVertical60Collage_XAML(10, VC_GetVerticalCollage_XAML_Completed)


    //
    TeasersServices.BuildVertical60Collage_XAMLTemplate(VC_NumberImages, BuildVertical60Collage_XAMLTemplate_Completed);

}

//
function BuildVertical60Collage_XAMLTemplate_Completed(result) {

    VerticalCollageXAMLTemplate = result;
    //alert(VerticalCollageXAMLTemplate);

    //
    TeasersServices.GetCollage_URLs(GetCollage_URLs_Completed);

}

//
function GetCollage_URLs_Completed(result) {

    Collage_URLs = result;
    //alert(Collage_URLs);

    //
    DisplayVerticalCollage();

}




//
function sortResultArray(a, b) {
    return a.sortKey - b.sortKey;
}

//
function DisplayVerticalCollage() {


    var thisTemplate = VerticalCollageXAMLTemplate;
    //var thisTemplate = "_IMAGESOURCE" + 0 + "_";




//    for (var i = 0; i < VC_NumberImages; i++) {

//        var ImageIndex = Math.floor(Math.random() * Collage_URLs.length);

//        var sourceString = "_IMAGESOURCE" + i.toString() + "_";
//        var targetString = Collage_URLs[ImageIndex];
//        //targetString = targetString.replace("~", "http://www.philaopenstudios.org");  // Causes 4001?
//        targetString = targetString.replace("~", ".");

//        //alert(targetString);

//        thisTemplate = thisTemplate.replace(sourceString, targetString);

//    }






    var sortArray = new Array();
    for (var c in Collage_URLs) {

        var thisResult = new Object();
        thisResult.imageURL = Collage_URLs[c];
        thisResult.sortKey = Math.random();

        sortArray.push(thisResult);
    }


    sortArray.sort(sortResultArray);


    for (var i = 0; i < VC_NumberImages; i++) {

        var sourceString = "_IMAGESOURCE" + i.toString() + "_";
        var targetString = sortArray[i].imageURL;
        //targetString = targetString.replace("~", "http://www.philaopenstudios.org");  // Causes 4001?
        targetString = targetString.replace("~", ".");

        //alert(targetString);

        thisTemplate = thisTemplate.replace(sourceString, targetString);

    }






    //alert(thisTemplate);

    VC_SL_plugin.content.findName("CollageContainerCanvas").children.clear();

    var newCanvas = VC_SL_plugin.content.createFromXaml(thisTemplate, false);

    VC_SL_plugin.content.findName("CollageContainerCanvas").children.add(newCanvas);


    VC_SL_plugin.content.findName("CollageDelayStoryboard").begin();

}

//
function VC_CollageDelayStoryboardCompleted(sender) {

    //TeasersServices.GetVertical60Collage_XAML(10, VC_GetVerticalCollage_XAML_Completed)

    //
    DisplayVerticalCollage();

}







// CFEVA 'snowflake'
function VC_GenerateNewRandomCFEVALogoSnowflake() {

    VC_SL_plugin.content.findName("CFEVA_Logo_Snowflake")["Canvas.Left"] = (Math.random() * 30);

    VC_SL_plugin.content.findName("CFEVA_Logo_Snowflake_Storyboard").begin();
}

//
function VC_CFEVA_Logo_Snowflake_StoryboardCompleted(sender) {

    VC_GenerateNewRandomCFEVALogoSnowflake();

}





//
//function VC_GetVerticalCollage_XAML_Completed(result) {

//    //alert(result);

//    VC_SL_plugin.content.findName("CollageContainerCanvas").children.clear();

//    var newCanvas = VC_SL_plugin.content.createFromXaml(result, false);

//    VC_SL_plugin.content.findName("CollageContainerCanvas").children.add(newCanvas);


//    VC_SL_plugin.content.findName("CollageDelayStoryboard").begin();

//}


