var imgSrc = "http://www.mcgrawhill.ca/college/olcsupport/mcshane6e/selfassess/";
// ---------------------------------------
var ansWin = null;
var qCount = 14;
// ---------------------------------------
function WriteResponse(content) {
if (ansWin && !ansWin.closed) {
	ansWin.close()
}
ansWin = window.open("","","toolbar=NO,location=NO,resizable,scrollbars,width=650,height=450");
ansWin.document.write(content);
ansWin.document.close();
}
// ---------------------------------------
function GradeAssess(theForm) {
var cntlname; var cntlname2; var cont; var cont2;
// currently supports 4 categories
var totals = new Array(5);
totals[0] = 0; totals[1] = 0; totals[2] = 0; totals[3] = 0; totals[4] = 0;
for (var i = 0; i < qCount; i++) {
	cntlname2 = "Q" + (i+1) + "Cat";
	cont2 = theForm[cntlname2].value;
	cntlname = "pd"+ (i+1);
	cont = theForm[cntlname].options[theForm[cntlname].selectedIndex].value;
	if (cont == 99) {
		alert("One or more questions are unanswered. Please complete the form and try again.");
		return false;
	}
	totals[cont2] += (cont/1);
	totals[4] += (cont/1);
}
var rsp = "";
rsp += BeginPage();
rsp += GetFeedback0();
var llabel = "" + "4";
var rlabel = "" + "20";
var top1 = "Low company<br>alignment<br>4 to 8";
var top2 = "Moderate company<br>alignment<br>9 to 14";
var top3 = "High company<br>alignment<br>15 to 20";
rsp += MakeTable(4,20,totals[1],llabel,rlabel,top1,top2,top3,5,6,5);
rsp += GetFeedback1();
top1 = "High<br>social needs<br>4 to 8";
top2 = "Moderate<br>social needs<br>9 to 14";
top3 = "Low<br>social needs<br>15 to 20";
rsp += MakeTable(4,20,totals[2],llabel,rlabel,top1,top2,top3,5,6,5);
rsp += GetFeedback2();
top1 = "Low independent<br>initiative<br>6 to 14";
top2 = "Moderate independent<br>initiative<br>15 to 23";
top3 = "High independent<br>initiative<br>24 to 30"; 
var llabel = "" + "6";
var rlabel = "" + "30";
rsp += MakeTable(6,30,totals[3],llabel,rlabel,top1,top2,top3,9,9,6);
rsp += GetFeedback3();
top1 = "Low telework<br>disposition<br>14 to 33";
top2 = "Moderate telework<br>disposition<br>34 to 53";
top3 = "High telework<br>disposition<br>54 to 70"; 
var llabel = "" + "14";
var rlabel = "" + "70";
rsp += MakeTable(14,70,totals[4],llabel,rlabel,top1,top2,top3,20,20,16);
rsp += GetFeedback4();
rsp += EndPage();
WriteResponse(rsp);
return false;
}
// ---------------------------------------
function MakeTable(datamin,datamax,dscore,ll,lr,lt1,lt2,lt3,bl1,bl2,bl3) {
// bl1 + bl2 + bl3 should equal spread
var spread = datamax - datamin;
var maxwidth = 550;
var dfactor = (maxwidth - (maxwidth%spread))/spread;
var gwidth = spread * dfactor;
var gscore = (dscore - datamin) * dfactor;
var ptrloc = gscore - 7;
var ptricon;
if ( (ptrloc) < 0 ) {
	ptricon = "redpointerleft.gif\" width=\"8\"";
	ptrloc = gscore
} else {
	if ( (ptrloc + 15) > gwidth ) {
		ptricon = "redpointerright.gif\" width=\"8\"";
		ptrloc = gscore - 8
	} else {
		ptricon = "redpointer.gif\" width=\"15\""
	}
}
// var padder = 0;
var bar1 = bl1*dfactor;
var bar2 = bl2*dfactor;
var bar3 = gwidth - (bar1 + bar2);
var winCode = "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\"><tr valign=\"bottom\"><td></td><td></td><td width=\"" + gwidth + "\" align=\"center\"><table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"100%\"><tr valign=\"bottom\" align=\"center\"><td class=\"smlabel\" width=\"33%\">" + lt1 + "</td><td class=\"smlabel\" width=\"34%\">" + lt2 + "</td><td class=\"smlabel\" width=\"33%\">" + lt3 + "</td></tr></table></td><td></td><td></td></tr><tr valign=\"bottom\"><td rowspan=\"2\" align=\"right\" valign=\"middle\" class=\"smlabel\">" + ll + "</td><td align=\"right\"><img src=\"" + imgSrc + "whitespacer.gif\" width=\"4\" height=\"1\"><img src=\"" + imgSrc + "blackspacer.gif\" width=\"1\" height=\"25\"></td><td nowrap align=\"center\"><img src=\"" + imgSrc + "grayspacer.gif\" width=\"" + bar1 + "\" height=\"10\"><img src=\"" + imgSrc + "blackspacer.gif\" width=\"" + bar2 + "\" height=\"10\"><img src=\"" + imgSrc + "grayspacer.gif\" width=\"" + bar3 + "\" height=\"10\"></td><td><img src=\"" + imgSrc + "blackspacer.gif\" width=\"1\" height=\"25\"><img src=\"" + imgSrc + "whitespacer.gif\" width=\"4\" height=\"1\"></td><td rowspan=\"2\" valign=\"middle\" class=\"smlabel\">" + lr + "</td></tr><tr valign=\"top\"><td align=\"right\"><img src=\"" + imgSrc + "whitespacer.gif\" width=\"4\" height=\"1\"><img src=\"" + imgSrc + "blackspacer.gif\" width=\"1\" height=\"20\"></td><td nowrap valign=\"bottom\"><img src=\"" + imgSrc + "whitespacer.gif\" width=\"" + ptrloc + "\" height=\"1\"><img height=\"12\" src=\"" + imgSrc + ptricon + "></td><td><img src=\"" + imgSrc + "blackspacer.gif\" width=\"1\" height=\"20\"><img src=\"" + imgSrc + "whitespacer.gif\" width=\"4\" height=\"1\"></td></tr></tr></table>";
winCode += "<p align=\"center\"><font color=\"#cc0000\"><b>Your score was " + dscore + ".</b></font> The range of possible scores is from " + datamin + " to " + datamax + ".</p>";
return winCode
}
// ---------------------------------------
function GetFeedback0() {
var winCode = "<h3 class=\"explanation\">Understanding Your Score on the Telework Disposition Scale</h3><p>Some people thrive in teleworking arrangements, whereas others discover that it is neither a satisfying nor productive work environment for them. This scale assesses three personal dispositions that are identified in the literature as characteristics of effective teleworkers: (a) high company alignment, (b) low social needs at work, and (c) independent initiative.</p><hr noshade size=\"1\">\n";
return winCode
}
// ---------------------------------------
function GetFeedback1() {
var winCode = "<p><b>Company alignment</b><br>Company alignment estimates the extent to which you follow company procedures and have values congruent with company values. The greater the alignment, the more likely that you can abide by company practices while working alone and with direct supervision. While some deviation from company practices may be appropriate, teleworkers need to agree with company values and provide work that is consistent with company expectations most of the time. Scores on this scale range from 4 to 20. </p><hr noshade size=\"1\">\n";
return winCode
}
// ---------------------------------------
function GetFeedback2() {
var winCode = "<p><b>Low social needs at work</b><br>People with a high score on this subscale <i>do not</i> rely on co-workers to satisfy their social needs. Successful teleworkers tend to score higher on this subscale 9i.e. have lower social needs at work) because teleworking offers less opportunity for social interaction with co-workers than when working in an office setting each day. Scores on this scale range from 4 to 20.</p><hr noshade size=\"1\">\n";
return winCode
}
// ---------------------------------------
function GetFeedback3() {
var winCode = "<p><b>Independent initiative</b><br>One of the most important characteristics of successful teleworkers is that they are able to set their own work goals and maintain a productive work schedule without direct supervision. People who score higher on this subscale tend to have a higher degree of independent initiative. Scores on this scale range from 6 to 30.</p><hr noshade size=\"1\">\n";
return winCode
}
// ---------------------------------------
function GetFeedback4() {
var winCode = "<p><b>Total Telework Disposition</b><br>This overall score combines your results for company alignment, social needs at work, and independent initiative. A higher score indicates that you will probably be more satisfied and productive in a teleworking arrangement than someone with a lower score on this scale. Specifically, people with high scores have higher alignment with company values and practices, lower social needs at work, and higher independent initiative. Scores on this scale range from 14 to 70.</p>\n";
return winCode
}
// ---------------------------------------
function BeginPage() {
var winCode = "<html><head><title>Organizational Behaviour Self-Assessment Exercises</title>\n\n";
winCode += "<script language=\"JavaScript\">\n<!--\n// ---------------------------\n";
winCode += "function printScreen(){\nif (window.print) {\n window.print();\n} else {\n alert(\"Your browser does not support printer links embedded within a web page. PC users, however, can right-click within the window and a popup menu will appear from which you can print. Macintosh users can access a similar menu by holding down the mouse for several seconds.\");\n}\n}\n";
winCode += "//-" + "->\n</script>\n" + GetStyles() + "</head>\n";
winCode += "<body bgcolor=\"#ffffff\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">\n<tr><td bgcolor=\"#000000\"><font size=\"4\">&nbsp;</font></td></tr>\n</table>\n<table border=\"0\" width=\"100%\" cellpadding=\"20\" cellspacing=\"0\">\n<tr valign=\"top\"><td>\n\n";
return winCode
}
//----------------------------------------
function GetStyles() {
return "\n<link href=\"http://www.mcgrawhill.ca/college/olcsupport/mcshane6e/selfassess/selfassess.css\" type=\"text/css\" rel=\"stylesheet\"></link>\n";
var winCode = "\n<style>\n<!-- For some reason Netscape seems to go for case sensitivity. Here's uppercase tags. -->\nA\n{\ntext-decoration: none;\n}\nA:HOVER\n{\ntext-decoration: underline;\n}\nA.hint \n{\ncolor: #999999;\ntext-decoration: none;\nfont-weight: bold;\n}\nA.nav \n{\nfont-size: 10px;\ncolor:#999999;\ntext-decoration: none;\nfont-weight:bold;\n}\nA.navCur \n{\nfont-size: 10px;\ncolor:#FFFFFF;\ntext-decoration: none;\nfont-weight:bold;\n}\nBODY \n{\nfont-family: verdana, sans-serif;\nfont-size: 12px;\n}\nTABLE\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\nTR\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\nTD\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\nTD.smlabel\n{\nfont-family: verdana, sans-serif; \nfont-size: 10px;\ncolor: #999999;\n}\nP\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px\n}\np\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\nUL\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\nOL\n{\nfont-family: verdana, sans-serif;\nfont-size: 12px;\n}\nLI\n{\nfont-family: verdana, sans-serif;\nfont-size: 12px;\n}\nH3 \n{\nfont-family: verdana, sans-serif;\nfont-size: 16px;\nfont-weight: bold;\ncolor: #000000;\nmargin: 0px;\npadding: 0px;\npadding-bottom: 3px;\npadding-top: 2px;\n}\n<!-- For some reason Netscape seems to go for case sensitivity. Here's lowercase tags. -->\na\n{\ntext-decoration: none;\n}\na:hover\n{\ntext-decoration: underline;\n}\na.hint \n{\ncolor: #999999;\ntext-decoration: none;\nfont-weight: bold;\n}\na.nav \n{\nfont-size: 10px;\ncolor:#999999;\ntext-decoration: none;\nfont-weight:bold;\n}\na.navCur \n{\nfont-size: 10px;\ncolor:#FFFFFF;\ntext-decoration: none;\nfont-weight:bold;\n}\nbody \n{\nfont-family: verdana, sans-serif;\nfont-size: 12px;\n}\ntable\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\ntr\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\ntd\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\ntd.smlabel\n{\nfont-family: verdana, sans-serif; \nfont-size: 10px;\ncolor: #999999;\n}\nul\n{\nfont-family: verdana, sans-serif; \nfont-size: 12px;\n}\nol\n{\nfont-family: verdana, sans-serif;\nfont-size: 12px;\n}\nli\n{\nfont-family: verdana, sans-serif;\nfont-size: 12px;\n}\nh3 \n{\nfont-family: verdana, sans-serif;\nfont-size: 16px;\nfont-weight: bold;\ncolor: #000000;\nmargin: 0px;\npadding: 0px;\npadding-bottom: 3px;\npadding-top: 2px;\n}\n.explanation\n{\ncolor: #0000ff;\n}\n.footer\n{\nfont-size: 10px;\n}\n</style>\n\n";
return winCode;
}
// ---------------------------------------
function EndPage() {
var winCode = "\n\n<p class=\"footer\"><hr noshade size=\"1\" />\n<font face=\"Symbol\" color=\"ff0000\">&#168;</font> <a href=\"javascript:printScreen()\"><b>Print Screen</b></a>\n</p>\n<p class=\"footer\"><a href=\"mailto:highered_web@mcgrawhill.ca\">Comments or questions?</a><br>Copyright &copy; 2004 McGraw-Hill Ryerson Limited<br>&nbsp;</p></td></tr></table></body></html>";
return winCode
}
