/*
Carmil 1
(c) 2006-2008
webpublish_embed_wizard.js
*/


if ( typeof(window.nssy) == 'undefined' ) { window.nssy= new Object (); };

nssy.SyWebPublishEmbedWizzard = function()
{
this.MIN_WIDTH= 200;
this.MAX_WIDTH= 1200;
this.DEFAULT_WIDTH= 500;
this.mydebugger= new DebugHelper("WebPublishEmbdWzrd");
this.strtbl= null;
this.lang= '';

this.isValidForm = function ()
{
var nodePublisher= document.getElementById("idSyPublisher");
if ( trimWhiteSpaces(nodePublisher.value) == "" )
{
alert( this.strtbl.get("idWebPubWzrdMissPublisher") );
nodePublisher.focus();
return false;
}

var nodePoll= document.getElementById("idSyPoll");
if ( trimWhiteSpaces(nodePoll.value) == "" )
{
alert( this.strtbl.get("idWebPubWzrdMissPoll") );
nodePoll.focus();
return false;
}

var nodeWidth= document.getElementById("idSyWidth");
if (isNaN(nodeWidth.value) || (parseInt(nodeWidth.value) < this.MIN_WIDTH) || (parseInt(nodeWidth.value) > this.MAX_WIDTH)  )
{
alert( this.strtbl.format("idWebPubEmbdWzrdWidth", this.MIN_WIDTH, this.MAX_WIDTH) );
nodeWidth.focus();
return false;
}

return true;
};

this.enableControls = function ()
{
var nodeAdvanced= document.getElementById("idSyAdvanced");
var isShowAdvanced= nodeAdvanced.checked;

showHtmlElement("isSyDivServer", isShowAdvanced);
showHtmlElement("isSyResultsOpts", isShowAdvanced);

var nodeShowResults= document.getElementById("idSyShowResults");
var showResults= nodeShowResults.options[nodeShowResults.selectedIndex].value ;
var isExtendedResultConf= (showResults == "INTERNALLY");

enableHtmlElement("idSyResultsAutoExpand", isExtendedResultConf);
enableHtmlElement("idSyResultsShowQuesWoReport", isExtendedResultConf);
enableHtmlElement("idSyShowReportForAllQues", isExtendedResultConf);
enableHtmlElement("idSyMaxReportLevel", isExtendedResultConf);
enableHtmlElement("idSyReportTypes", isExtendedResultConf);
}

this.buildInnerCode = function (container, host, port)
{
var nodePublisher= document.getElementById("idSyPublisher");
var publisher= trimWhiteSpaces(nodePublisher.value);

var nodePoll= document.getElementById("idSyPoll");
var idPoll= parseInt(trimWhiteSpaces(nodePoll.value));

var nodeShowResults= document.getElementById("idSyShowResults");
var showResults= nodeShowResults.options[nodeShowResults.selectedIndex].value ;

var nodeWidth= document.getElementById("idSyWidth");
var width= parseInt(trimWhiteSpaces(nodeWidth.value));

var nodeStyle= document.getElementById("idSyStyle");
var style= nodeStyle.options[nodeStyle.selectedIndex].value;

var nodeServer= document.getElementById("idSyServer");
var server= nodeServer.options[nodeServer.selectedIndex].value;
if (server != "")
{
var hp= server.split(":");
host= hp[0];
port= hp[1];
}

var nodeResultAutoExpand= document.getElementById("idSyResultsAutoExpand");
var autoExpand= (showResults != "INTERNALLY") ? "" : nodeResultAutoExpand.options[nodeResultAutoExpand.selectedIndex].value;

var nodeResultsShowQuesWoReport= document.getElementById("idSyResultsShowQuesWoReport");
var resultsShowQuesWoReport= (showResults != "INTERNALLY") ? "" : nodeResultsShowQuesWoReport.options[nodeResultsShowQuesWoReport.selectedIndex].value;

var nodeShowReportForAllQues= document.getElementById("idSyShowReportForAllQues");
var showReportForAllQues= (showResults != "INTERNALLY") ? "" : nodeShowReportForAllQues.options[nodeShowReportForAllQues.selectedIndex].value;

var nodeMaxReportLevel= document.getElementById("idSyMaxReportLevel");
var maxReportLevel= (showResults != "INTERNALLY") ? "" : nodeMaxReportLevel.options[nodeMaxReportLevel.selectedIndex].value;

var nodeReportTypes= document.getElementById("idSyReportTypes");
var reportTypes= (showResults != "INTERNALLY") ? "" : nodeReportTypes.options[nodeReportTypes.selectedIndex].value;


var varname= "surveylyzer3";

var code=
'var ' + varname + '= new Surveylyzer3 ();\n' +
( host == "" ? "" : varname + '.setHost("' + host + '");\n' ) +
( ((port == 0) || (port == "")) ? "" : varname + '.setPort(' + port + ');\n' ) +
varname + '.setContainer("' + container + '");\n' +
varname + '.setQuestionnaire(' + idPoll + ');\n' +
varname + '.setPublisherUser("' + publisher + '");\n' +
varname + '.setShowResults(Surveylyzer3.ResultsShow.' + showResults + ');\n' +
varname + '.setWidth(' + width + ');\n' +
( style == "" ? "" : varname + '.setStyle("' + style + '");\n' ) +
( autoExpand == "" ? "" : varname + '.report().setAutoExpand(' + autoExpand + ');\n' ) +
( resultsShowQuesWoReport == "" ? "" : varname + '.report().setShowQuestionsWithoutResults(' + resultsShowQuesWoReport + ');\n' ) +
( showReportForAllQues == "" ? "" : varname + '.report().setShowReportForAllQuestions(' + showReportForAllQues + ');\n' ) +
( maxReportLevel == "" ? "" : varname + '.report().setMaxReportLevel(Surveylyzer3.ReportLevel.' + maxReportLevel + ');\n' ) +
( reportTypes == "" ? "" : varname + '.report().setSupportedReportTypes(new Array(Surveylyzer3.ReportType.SIMPLE' + ( reportTypes == "CROSSES" ? ", Surveylyzer3.ReportType.CROSSES" : "" ) + '));\n' ) +
varname + '.go();\n'
;

return code;
}

this.putCode = function (id, code)
{
var countLinesP1= code.split("\n").length;

var nodeCode= document.getElementById(id);
nodeCode.value= code;
nodeCode.style.display= "block";
nodeCode.rows= countLinesP1 + 1;
};

this.getUrlPrefix = function ()
{
 
var schema= "http:";
var host= nssy.getHostname();
var port= nssy.getPort();

var nodeServer= document.getElementById("idSyServer");
var server= nodeServer.options[nodeServer.selectedIndex].value;
if (server != "")
{
var hp= server.split(":");
host= hp[0];
port= hp[1];
}

var prefix= schema + "//" + host;
if ( (port != "") && (!isNaN(port)) &&
(((port != "80") && (schema == "http:")) || ((port != "443") && (schema == "https:"))) )
{
prefix= prefix + ":" + port;
}
return prefix;
};

this.getHomepage = function ()
{
return this.getUrlPrefix() + '/';
};

this.onSubmit = function ()
{
showHtmlElement("idSyCode", false);
showHtmlElement("idSyPreviewBox", false);
if  ( ! this.isValidForm () )
{
return false;
}

var nodePublisher= document.getElementById("idSyPublisher");
var publisher= trimWhiteSpaces(nodePublisher.value);

var nodePoll= document.getElementById("idSyPoll");
var idPoll= trimWhiteSpaces(nodePoll.value);

var container= "idSurveylyzerW3E";
var launcher= "syLauncher3";

var code=
'<!-- Surveylyzer - web widget -->\n' +
'<div id="'+ container +'"><a href="' +  this.getUrlPrefix() + '/polls/show_poll.html?publisher=' + encodeURIComponent(publisher) + '&id_poll=' + encodeURIComponent(idPoll) + '">Survey</a> hosted by <a href="' +  this.getHomepage() + '">Surveylyzer</a></div>\n' +
'<script src="' + this.getUrlPrefix() + '/polls/scripts/surveylyzer3_b908.js" defer="defer" type="text/javascript"></script>\n' +
'<script defer="defer" type="text/javascript">// <!--\n' +
'var ' + launcher + '= function() {\n' +
'if ( typeof(Surveylyzer3) == "undefined" ) { setTimeout(' + launcher + ',700); return; };\n' +
this.buildInnerCode(container, "", "", 0) +
'};\n' +
launcher + '.call();\n' +
'// -->\n' +
'</script>\n' +
'<!-- end of web widget -->\n'
;

this.putCode("idSyCode", code);
return ;
};

this.preview = function ()
{
showHtmlElement("idSyCode", false);
showHtmlElement("idSyPreviewBox", false);
if  ( ! this.isValidForm () )
{
return false;
}

showHtmlElement("idSyPreviewBox", true);
var code= this.buildInnerCode("idSyPreviewTarget", nssy.getHostname(), nssy.getPort());
this.mydebugger.trace(code);
eval(code);
};

this.prepare = function ()
{
var idPoll= getQueryStringParam("id_poll", "");
var nodePoll= document.getElementById("idSyPoll");
nodePoll.value= idPoll;

var publisher= getQueryStringParam("publisher", "");
var nodePublisher= document.getElementById("idSyPublisher");
nodePublisher.value= publisher;

var nodeWidth= document.getElementById("idSyWidth");
nodeWidth.value= this.DEFAULT_WIDTH;
};

this.go = function (lang)
{
this.lang= lang;
this.strtbl= new StringTable (getDocs() + "/polls/xml/strtbl_en.xml", "web-publish-embed-wizard", this.lang);
this.prepare ();
this.enableControls();
};

};

 

