JSLT.include("OverPage")

WebCamHelper = function(){
    this.hideDisplay = function(){
        if (typeof(onWebCamDisplayHide) == 'function') {
            onWebCamDisplayHide()
        }
        var over = new jslt.OverPage()
        over.hide()
        
    };
    this.startDisplay = function(id, size){
        size = "640"
        if (typeof(onWebCamDisplayStart) == 'function') {
            onWebCamDisplayStart()
        }
        var over = new jslt.OverPage()
        var div = over.getLayer()
        div.style.display = "inline"
        over.setCenter();
        var emb = new PluginEmbeder()
        emb.addAttribute("width", "100%")
        emb.addAttribute("height", "100%")
        emb.addAttribute("file", "/modules/WebCam/Display" + size + ".swf")
        emb.addAttribute("wmode", "transparent")
        emb.addAttribute("quality", "best")
        emb.addAttribute("menu", "false")
        emb.addVariable("isHTML", "true")
        for (var el in webCamConf.strings) {
            emb.addVariable(el, webCamConf.strings[el])
        }
        emb.addVariable("camId", id)
        emb.addVariable("name", webCamConf.cams[id].name)
        emb.addVariable("location", webCamConf.cams[id].location)
		
        if (typeof(webCamConf.cams[id].cacheSeconds) != "undefined") {
			var cSec=webCamConf.cams[id].cacheSeconds+2
            emb.addVariable("refreshSeconds", cSec)
        }
        emb.assignToElement(over.layerId)
    }
};
function startWebcam(){
    window.webCamHelper = new WebCamHelper()
    var emb = new PluginEmbeder()
    emb.addAttribute("width", webCamConf.miniatures.width)
    emb.addAttribute("height", webCamConf.miniatures.height)
    emb.addAttribute("file", "/modules/WebCam/" + webCamConf.miniatures.file)
    emb.addAttribute("wmode", "transparent")
    emb.addAttribute("devicefont", "true")
    emb.addAttribute("menu", "false")
    emb.addVariable("isHTML", "true")
    emb.addVariable("sizes", webCamConf.miniatures.sizes)
    if (webCamConf.miniatures.step_x != undefined) {
        emb.addVariable("step_x", webCamConf.miniatures.step_x)
        emb.addVariable("step_y", webCamConf.miniatures.step_y)
    }
    for (var i = 0; i < webCamConf.miniatures.cams.length; i++) {
        emb.addVariable("cam_" + i, webCamConf.miniatures.cams[i][0] + "|" + webCamConf.miniatures.cams[i][1])
    }
    emb.assignToElement("webCamLauncherDiv")
}

if (typeof(onLoadQueue) == "object") {
    onLoadQueue.appendOnLoad(startWebcam)
}


