/******************************************
* @author Maria A. Zamora
* @company Digitec Interactive Inc.
* @version 0.1
* @date 12/14/2010
*
* LessonsCEE class for lessonsFrame5 movie of the CEE application
* CS5 version of com.digitec.cee.LessonsCEE
*
*******************************************/
package com.digitec.cee {
import flash.printing.*;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.*;
import flash.text.StyleSheet;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import fl.controls.UIScrollBar;
import fl.controls.ScrollBarDirection;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.media.Video;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.net.*;
import flash.text.*;
import flash.media.SoundMixer;
import flash.display.Bitmap;
import flash.display.BitmapData;
import fl.transitions.Tween;
import fl.transitions.easing.*;
import flash.text.Font;
public class LessonsCEE extends BaseCEE {
private static const OVERVIEW: String = "definition";
private static const LESSONS: String = "lessons";
private static const TIPS: String = "tips";
private static const RESOURCES: String = "resources";
private static const RELATED: String = "related";
private var myFormat3: TextFormat;
private var currentTab: String;
private var contentItem: ConceptItem;
private var conceptTxtField: TextField;
private var glossTxtField: TextField;
private var vScrollBar: UIScrollBar;
private var vScrollBar2: UIScrollBar;
private var flagGlossaOpen: Boolean; //Glossary Tab is closed
private var flagfGlossaOpen: Boolean; //Full Glossary Tab is closed
private var glossary: Glossary;
private var relatedItemsArr: Array;
private var dw_quizgood;
private var myFont2: Font = new Font1();
private var versionField: TextField;
private var videoHolder: VideoHolder;
private var fl_Loader: Loader;
private var dwactivevid = 0;
private var fl_quizloader: Loader;
private var fl_PICLoader: Loader;
private var fl_PICLoader2: Loader;
private var fl_ToLoad: Boolean = true; //This variable keeps track of whether you want to load or unload the SWF
private var vscrollglss: Boolean = false;
private var vscrollconcept: Boolean = false;
//private var myFont:Font = new Font1();
private var isfullscreenset: Boolean;
//private var ppLines:Number=70;
//private var ppLines:Number=48; <--on Hope's computer - font difference - count the # of lines on a full printed page to get this # - 54 for Dave's box
private var ppLines: Number = 54
private var videoObj: Object;
private var cRelated_txt: TextField;
private static const PAUSE_ME: String = "pauseMe";
private var videoMC: MovieClip;
private var dprintOver: Boolean = false;
private var dprintLessons: Boolean = false;
private var dprintTips: Boolean = false;
private var dprintOnline: Boolean = false;
private var dprintQuiz: Boolean = false;
private var quiz: Quiz;
private var arrayOfQuestions: Array;
private var numberOfQuestions: int;
private var correctQuestions: int;
private var currQuestionNum: int;
private var currCorrectAnswer: int;
private var currCorrectAnswerText: String;
private var currSelectedAnswer: int;
private var emailAddress: String;
private var xmlQuiz: String = MainConstants.XMLPATH + MainConstants.XMLQUIZ;
private var emailButtonOn: Boolean;
private var printButtonOn: Boolean;
private var $nc: NetConnection;
private var $ns: NetStream;
private var $streampath: String;
private var $streamurl: String = MainConstants.CEE_SERVER + MainConstants.XMLQUIZ;
private var quizidSET;
//private var quizidSET=3;
//HEADER STRINGS
private var conceptTitle_str: String;
//MAX ANSWERS THAT FIX IN DISPLAY
private var maxAnswers: int;
//FOR FEEDBACK - SCREEN 3
private var CORRECT_STR: String;
private var INCORRECT_STR: String;
private var correct_feedback: String;
private var incorrect_feedback: String;
private var dwthisispos: Number;
//FOR QUIZCOMPLETED - SCREEN 4
private var ANSW1_SCREEN4: String;
private var ANSW2_SCREEN4: String;
private var ANSW3_SCREEN4: String;
private var COMPLETE_SCREEN4: String;
private var questionField: TextField;
private var lettersArr: Array = new Array("A", "B", "C", "D", "E");
private var questionIdObj_arr: Array = new Array();
private var questionAnsObj_arr: Array = new Array();
private var currentQuestionId: String;
private var currentQuestionTxt: String;
private var currentCorrectTxt: String;
private var btnAnswerId_arr: Array = new Array();
private var btnAnswerTxt_arr: Array = new Array();
private var vidpicpath: String;
public function LessonsCEE() {
super(MainConstants.XMLLESSONS);
setup();
}
/*******************************************************************
* FUNCTION: SETUP FRAME TEXT_FIELDS FROM XML
*******************************************************************/
override public function setFramesText(_xml: XML): void {
var passpath = Object(parent).getDpath();
glossary = new Glossary();
glossary.setpath(passpath);
//SET CONCEPT TEXT AREA
var myFont: Font = new Font1();
var myFormat: TextFormat = new TextFormat();
myFormat.font = myFont.fontName;
myFormat.size = 14;
//myFormat.color = 0xFF00FF;
conceptTxtField = new TextField();
conceptTxtField.defaultTextFormat = myFormat;
conceptTxtField.x = 51;
conceptTxtField.y = 133;
conceptTxtField.height = 340;
conceptTxtField.width = 475;
conceptTxtField.background = false;
conceptTxtField.border = false;
conceptTxtField.multiline = true;
conceptTxtField.wordWrap = true;
conceptTxtField.embedFonts = true;
addChild(conceptTxtField);
//LOAD CSS AND APPLY TO TEXT AREA
var GETLISTXML = Object(parent).getDpath();
var cssUrl: URLRequest = new URLRequest(GETLISTXML + "_VE50DATA/" + MainConstants.CSS_CONCEPT_COPY);
trace("[LEssonsCEE.as:175]" + MainConstants.CSS_CONCEPT_COPY);
//CSS_CONCEPT_COPY
var cssLoader: URLLoader = new URLLoader();
cssLoader.load(cssUrl);
cssLoader.addEventListener(Event.COMPLETE, cssLoaded);
function cssLoaded(event: Event): void {
trace("[LessionsCEE.as:181] cssLoaded");
var css: StyleSheet = new StyleSheet();
css.parseCSS(URLLoader(event.target).data);
conceptTxtField.styleSheet = css; //////////////////////////////////////////////////////////////////////////
// conceptTxtField.textField.styleSheet = css;
}
this.clickAbove_tf.text = _xml.xclickAbove;
var myFormat2: TextFormat = new TextFormat();
myFormat2.font = myFont2.fontName;
myFormat2.size = 12;
myFormat2.color = 0x8DC269;
myFormat2.bold = true;
versionField = new TextField();
versionField.defaultTextFormat = myFormat2;
versionField.height = 17;
versionField.width = 50;
versionField.background = false;
versionField.border = false;
versionField.multiline = true;
versionField.wordWrap = true;
versionField.x = 415;
versionField.y = 581;
versionField.embedFonts = true;
versionField.text = _xml.xversion2;
vtxtmc.addChild(versionField);
this.register_tf.text = _xml.xregister;
//SET THE CURRENT TAB TO DEFINITION= OVERVIEW
currentTab = OVERVIEW;
var myFont3: Font = new Font1();
myFormat3 = new TextFormat();
myFormat3.font = myFont.fontName;
myFormat3.size = 12;
conceptTxtField.embedFonts = true;
//SET GLOSSARY TEXT FIELD
glossTxtField = new TextField();
glossTxtField.defaultTextFormat = myFormat3;
glossTxtField.x = 16;
glossTxtField.y = 15;
glossTxtField.height = 273;
glossTxtField.width = 160;
glossTxtField.background = false;
glossTxtField.border = false;
glossTxtField.multiline = true;
glossTxtField.wordWrap = true;
glossTxtField.scrollV = 1;
glossTxtField.embedFonts = true;
this.glossary_mc.addChild(glossTxtField);
var myFont4: Font = new Font1();
var myFormat4: TextFormat = new TextFormat();
myFormat4.font = myFont4.fontName;
myFormat4.size = 12;
myFormat4.color = 0xFFFFFF;
myFormat4.underline = true;
myFormat4.bold = true;
//CREATE TEXT FIELD FOR RELATED LINKS
cRelated_txt = new TextField();
cRelated_txt.defaultTextFormat = myFormat4;
cRelated_txt.height = 149;
cRelated_txt.width = 168;
cRelated_txt.background = false;
cRelated_txt.border = false;
cRelated_txt.multiline = true;
cRelated_txt.wordWrap = true;
cRelated_txt.x = 586;
cRelated_txt.y = 353;
cRelated_txt.embedFonts = true;
addChild(cRelated_txt);
//CREATE VIDEO HOLDER
videoHolder = new VideoHolder();
videoHolder.x = 0;
videoHolder.y = 0;
addEventListener(HCustomEvent.ADD_GLOSSARY, addGlossary, true);
}
/*************************************************************************************
* FUNCTIONS: SET THE CONTENT ITEM OBJECT FOR FIRST TIME
************************************************************************************/
private function glossaryScrollGo() {
vscrollglss = true;
vScrollBar = new UIScrollBar();
vScrollBar.direction = ScrollBarDirection.VERTICAL;
vScrollBar.width = glossTxtField.width;
vScrollBar.move(glossTxtField.x + glossTxtField.width, glossTxtField.y);
vScrollBar.height = glossTxtField.height;
vScrollBar.scrollTarget = glossTxtField;
this.glossary_mc.addChild(vScrollBar);
}
private function glossaryScrollConcept() {
vscrollconcept = true;
vScrollBar2 = new UIScrollBar();
vScrollBar2.direction = ScrollBarDirection.VERTICAL;
vScrollBar2.width = conceptTxtField.width;
vScrollBar2.move(conceptTxtField.x + conceptTxtField.width, conceptTxtField.y);
vScrollBar2.height = conceptTxtField.height;
vScrollBar2.scrollTarget = conceptTxtField;
addChild(vScrollBar2);
}
public function setConceptText(concept: ConceptItem) {
contentItem = concept;
this.title_tf.text = contentItem.conceptName
conceptTxtField.addEventListener(TextEvent.LINK, linkEvent);
setRelated();
dw_quizgood = contentItem.conceptQuiz;
//trace("dw_quizgood"+dw_quizgood);
setTabContent(OVERVIEW);
}
/*************************************************************************************
* FUNCTIONS: SET RELATED CONCEPTS
************************************************************************************/
public function setRelated() {
relatedItemsArr = new Array();
var conItem: ConceptItem;
var str: String = "";
if (contentItem.relatedConceptsArr != null) {
var arr: Array = contentItem.relatedConceptsArr;
//EXTRACT RELATED CONCEPTS IDS FROM ARRAY
//GET FROM MAIN THE CONCEPT ITEM
//CREATE AN ARRAY OF RELATED CONCEPTS ITEMS ///////////////////////MAYBE WE DONT NEED THIS
//CREATE A STRING WITH RELATED CONCEPT ITEMS NAMES
for (var r: int = 0; r < arr.length; r++) {
conItem = Object(parent).getConceptItemPerId(arr[r]);
relatedItemsArr[r] = conItem;
str += "<p><b><u><a href= 'event:viewRelated," + arr[r] + "'>" + conItem.conceptName + "</a></u><b></p>\n";
}
}
cRelated_txt.addEventListener(TextEvent.LINK, linkEventRelated);
cRelated_txt.htmlText = "" + str;
}
/*************************************************************************************
* FUNCTIONS: EVENT HANDLER FOR TEXT LINKS IN RELATED CONCEPTS
************************************************************************************/
private function linkEventRelated(e: TextEvent): void {
var linkContent: Array = e.text.split(",");
var functionName: String = linkContent[0];
var args: String = linkContent[1];
switch (functionName) {
case "viewRelated":
var conceptitem: ConceptItem = Object(parent).getConceptItemPerId(args);
//trace("args "+args);
Object(parent).setlessonpage(conceptitem);
//Object(parent).setIDLessonpage(ConceptItem);
setConceptText(conceptitem);
break;
default:
trace("function not found");
}
}
/*************************************************************************************
* FUNCTIONS: SHOW LINK DEFINITION IN THE GLOSSARY
************************************************************************************/
private function getTabContent(): String {
/*
dprintOver
dprintLessons
dprintTips
dprintOnline
dprintQuiz
*/
var tempString: String = "";
var tempString1: String = "";
var tempString2: String = "";
var tempString3: String = "";
var tempString4: String = "";
var tempString5: String = "";
if (dprintOver == true) {
//trace("string 1 good");
tempString1 = "<font size='14'><b>Overview</b><BR>" + contentItem.conceptDefinition + "<BR><BR>";
}
if (dprintLessons == true) {
//trace("string 2 good");
tempString2 = "<font size='14'><b>Lessons</b></font><BR>" + contentItem.conceptLessons + "<BR><BR>";
}
if (dprintTips == true) {
//trace("string 3 good");
tempString3 = "<font size='14'><b>Tips</b></font><BR>" + contentItem.conceptTips + "<BR><BR>";
}
if (dprintOnline == true) {
//trace("string 4 good");
tempString4 = "<font size='14'><b>Online Resources</b></font><BR>" + contentItem.conceptResources + "<BR><BR>";
}
if (dprintQuiz == true) {
//trace("string 5 good");
tempString5 = "<font size='14'><b>Quiz</b></font><BR>" + currentQuestionTxt;
}
tempString = "<font size='14'><b>" + contentItem.conceptName + "</b></font><BR><BR>" + tempString1 + tempString2 + tempString3 + tempString4 + tempString5 + "<br><br>Copyright © Council for Economic Education. http://www.councilforeconed.org";
return tempString;
}
private function init2(): void {
vidpicpath = Object(parent).getDpath();
loadQuizXML(vidpicpath + "_VE50DATA/" + xmlQuiz);
trace("vidpicpath[LessonsCEE.as:411]: + _VE50DATA/+xmlQuiz " + vidpicpath + "_VE50DATA/" + xmlQuiz);
}
private function httpStatusHandlerQUIZ(event: HTTPStatusEvent): void {
//trace("httpStatusHandler: -----------------------------------" + event);
//trace("status: " + event.status);
if (event.status == 0) {
loadQuizXML(vidpicpath + "_VE50DATA/" + xmlQuiz);
} else {
loadQuizXML($streamurl);
}
//loadLibraryFinal(MainConstants.XMLPATH + dwpasspub);
}
/*******************************************************************
* FUNCTION: TO LOAD TEXT FROM A XML FILE
*******************************************************************/
private function loadQuizXML(stream: String): void {
//TRYI FIRST TO CONNECT TO CEE SERVER
//trace("here first");
var myurlloader: URLLoader = new URLLoader();
var myurlreq: URLRequest = new URLRequest(stream);
//myurlreq.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
myurlloader.load(myurlreq);
myurlloader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
myurlloader.addEventListener(Event.COMPLETE, loadData);
//myurlloader.addEventListener(Event.CONNECT, connectServer);
function loadData(evt: Event) {
var _xml: XML = new XML(myurlloader.data);
currQuestionNum = 0;
maxAnswers = 5;
//CREATE THE QUIZ OBJECT WITH 5 ANSWERS PER QUESTION
//SET HEADER STRINGS
//myXML.IMAGE.(@TITLE=="school")
//trace("_xml.quizconcept.quizid.length() "+_xml.quizconcept.quizid.length());
for (var i: int = 0; i < _xml.quizconcept.quizid.length(); i++) {
var dwquiztemp2 = _xml.quizconcept.quizid[i];
//trace("dwquiztemp2 "+dwquiztemp2);
//trace("contentItem.conceptID "+contentItem.conceptID);
if (dwquiztemp2 == contentItem.conceptID) {
dwthisispos = i;
i = _xml.quizconcept.quizid.length();
}
};
//trace(dwthisispos);
quiz = new Quiz(_xml, maxAnswers, dwthisispos);
arrayOfQuestions = quiz.questionsArr;
numberOfQuestions = quiz.numOfQuestions;
currentQuestionTxt = "";
//trace("numberOfQuestions "+numberOfQuestions);
for (var i2: int = 1; i2 < numberOfQuestions + 1; i2++) {
//trace("Clip here "+i2);
currQuestionNum = i2;
setQuestion(currQuestionNum);
};
}
}
private function ioErrorHandler(event: IOErrorEvent): void {
trace("ioErrorHandler: " + event);
}
private function setQuestion(questionNum: int): void {
var _questionObj: Question = arrayOfQuestions[questionNum - 1]
currentQuestionTxt = currentQuestionTxt + "Question: " + _questionObj.question.toString() + "<BR>";
//trace("currentQuestionTxt t"+currentQuestionTxt);
//question_txt.text = _questionObj.question.toString();
currentQuestionId = _questionObj.thequestionId.toString(); /////////////////////////////////////////////////////////////////////////////////
//trace("currentQuestionId===="+currentQuestionId);
var _answers: Array = _questionObj.answers;
//trace("_questionObj.answers.length "+_questionObj.answers.length);
var btnNum: int = _answers.length;
//trace("btnNum "+btnNum);
//if( btnNum > 5){ btnNum = 5; } //max is 5 buttons
for (var index: int = 0; index < btnNum; index++) {
//trace("________________Here");
currentQuestionTxt = currentQuestionTxt + "Answer: " + _answers[index].Answer + "<BR>";
}
currentQuestionTxt = currentQuestionTxt + "<BR>";
}
private function setTabContent(tab: String) {
currentTab = tab;
conceptTxtField.htmlText = "";
if (tab == OVERVIEW) {
tabOverview_mc.gotoAndStop(2);
tabLessons_mc.gotoAndStop(1);
tabTips_mc.gotoAndStop(1);
tabResources_mc.gotoAndStop(1);
conceptTxtField.htmlText = contentItem.conceptDefinition;
if (contentItem.conceptResources == "") {
this.tabResources_mc.visible = false;
} //NEW
} else if (tab == LESSONS) {
tabOverview_mc.gotoAndStop(1);
tabLessons_mc.gotoAndStop(2);
tabTips_mc.gotoAndStop(1);
tabResources_mc.gotoAndStop(1);
conceptTxtField.htmlText = contentItem.conceptLessons;
//trace("CONCEPT LESSONS+"+contentItem.conceptLessons);
} else if (tab == TIPS) {
tabOverview_mc.gotoAndStop(1);
tabLessons_mc.gotoAndStop(1);
tabTips_mc.gotoAndStop(2);
tabResources_mc.gotoAndStop(1);
conceptTxtField.htmlText = contentItem.conceptTips;
} else if (tab == RESOURCES) {
//conceptTxtField.htmlText ="Resources!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!";
//trace("contentItem.conceptResources"+contentItem.conceptResources); //NEW
conceptTxtField.htmlText = contentItem.conceptResources; //NEW
tabOverview_mc.gotoAndStop(1);
tabLessons_mc.gotoAndStop(1);
tabTips_mc.gotoAndStop(1);
tabResources_mc.gotoAndStop(2);
}
if (vscrollconcept == false && conceptTxtField.numLines > 21) {
glossaryScrollConcept();
vScrollBar2.update();
} else if (vscrollconcept == true && conceptTxtField.numLines > 21) {
//glossaryScrollConcept();
vScrollBar2.update();
} else if (vscrollconcept == true && conceptTxtField.numLines < 22) {
//glossaryScrollConcept();
vscrollconcept = false;
this.removeChild(vScrollBar2);
//vScrollBar2.update();
}
fl_PICLoader = new Loader(); //NEW
vidpicpath = Object(parent).getDpath();
var picPath: String = "" + vidpicpath + "_VE50DATA/" + MainConstants.THUMBPIC_PATH + contentItem.conceptID + ".jpg"; //NEW
fl_PICLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadProdComplete);
fl_PICLoader.load(new URLRequest(picPath));
//thumb = Bitmap(fl_PICLoader.content);
//thumb.smoothing = true;
//this.videoButton.picholder_mc.addChild(thumb);
//NEW
init2();
}
private function loadProdComplete(e: Event): void {
var bit: Bitmap = e.target.content;
if (bit != null) {
bit.smoothing = true;
bit.width = 170;
bit.height = 170;
}
this.videoButton.picholder_mc.addChild(e.target.content);
}
//tf.addEventListener(TextEvent.LINK, linkEvent);
/*************************************************************************************
* FUNCTIONS: EVENT HANDLER FOR LINKS IN CONTENT TEXT AREA
************************************************************************************/
private function linkEvent(txtEvt: TextEvent): void {
//trace("EVENT=============================="+txtEvt.text);
var functionArr: Array = HelperFunctions.extractFunctionName(txtEvt.text);
//var functionArr:Array = extractFunctionName( txtEvt.text );
var functionName: String = functionArr[0];
var args: String = functionArr[1];
switch (functionName) {
case "defineGlossaryTerm":
//trace("trip 1");
this.defineGlossaryTerm(args);
break;
case "viewLesson":
this.viewLesson(args);
break;
case "viewPublication":
this.viewPublication(args);
break;
case "gotoKeywordSearch":
this.gotoKeywordSearch(args);
break;
case "gotoWebPage":
this.gotoWebPage(args);
break;
default:
trace("function not found");
}
}
//fullGlossary_btn
/*************************************************************************************
* FUNCTIONS: CLICK TABS OF TEXT AREA
************************************************************************************/
public function clickOverviewTab(event: MouseEvent): void {
setTabContent(OVERVIEW);
}
public function clickLessonsTab(event: MouseEvent): void {
setTabContent(LESSONS);
}
public function clickTipsTab(event: MouseEvent): void {
setTabContent(TIPS);
}
public function clickResourcesTab(event: MouseEvent): void {
setTabContent(RESOURCES);
}
private function gotoKeywordSearch(str: String): void {
if (str != null) {}
}
/*************************************************************************************
* FUNCTIONS:VIEW LESSONS
************************************************************************************/
private function viewLesson(str: String): void {
//trace(str);
if (str != null) {
//var lessonitem:LessonItem = getLessonPerId( id );
//pdfFile = lessonitem.pdf_url;
Object(parent).setPDFLesson(str, false); //isLessonBrowse type = false
Object(parent).setLastPDFlessonId(str, false); //remember last pdf
}
}
private function gotoWebPage(str: String): void {
//trace(str);
if (str != null) {
//var lessonitem:LessonItem = getLessonPerId( id );
//pdfFile = lessonitem.pdf_url;
var request: URLRequest = new URLRequest(str);
navigateToURL(request, '_blank');
}
}
/*************************************************************************************
* FUNCTIONS:VIEW PUBLICATIONS
************************************************************************************/
private function viewPublication(str: String): void {
if (str != null) {
//cRelated_txt.text = "View Publications: "+ str;
//trace("In Lessons, Publication Id = "+ str);
Object(parent).setPublicationLesson(str, false); //isLessonBrowse type = false
Object(parent).setLastPubId(str, false);
}
}
/*************************************************************************************
* FUNCTIONS:DEFINE A GLOSSARY TERM
************************************************************************************/
private function defineGlossaryTerm(str: String): void {
//glossTxtField.textField.styleSheet = glossary.getStyleSheet();
//glossTxtField.styleSheet = glossary.getStyleSheet();
/*
glossTxtField.htmlText= glossary.defineGlossaryTerm(str);
glossTxtField.styleSheet = glossary.getStyleSheet();
vScrollBar.update();
*/
var tempText = glossTxtField.htmlText;
trace("glossary go");
glossTxtField.htmlText = glossary.defineGlossaryTerm(str) + "<BR>" + tempText;
trace("vscrollglss " + vscrollglss);
trace("scroll lines " + glossTxtField.numLines);
if (vscrollglss == false && glossTxtField.numLines > 19) {
glossaryScrollGo();
}
if (glossTxtField.numLines > 19) {
vScrollBar.update();
}
if (!flagGlossaOpen) {
openGlossary();
}
}
private function openGlossary() { //this.glossary_mc.x =577;
var dwx = this.glossary_mc.x;
var myTween: Tween = new Tween(this.glossary_mc, "x", Regular.easeOut, dwx, 577, .5, true);
this.glossary_mc.expand_txt.text = "click to hide";
flagGlossaOpen = true;
cRelated_txt.visible = false;
}
private function closeGlossary() {
//this.glossary_mc.x =779;
//this.glossary_mc.fullGlossBack.x =223;
var dwx = this.glossary_mc.x;
var dwx2 = this.glossary_mc.fullGlossBack.x;
var myTween: Tween = new Tween(this.glossary_mc, "x", Regular.easeOut, dwx, 779, .5, true);
var myTween2: Tween = new Tween(this.glossary_mc.fullGlossBack, "x", Regular.easeOut, dwx2, 223, .4, true);
this.glossary_mc.expand_txt.text = "click to expand";
this.glossary_mc.fullGlossarybtn_txt.text = "BROWSE FULL GLOSSARY";
flagGlossaOpen = false;
flagfGlossaOpen = false;
conceptTxtField.visible = true;
if (vscrollconcept == true) {
vScrollBar2.visible = true;
}
cRelated_txt.visible = true;
}
private function openFGlossary() {
//this.glossary_mc.fullGlossBack.x =-555;
this.glossary_mc.fullGlossarybtn_txt.text = "CLOSE FULL GLOSSARY";
var dwx2 = this.glossary_mc.fullGlossBack.x;
var myTween2: Tween = new Tween(this.glossary_mc.fullGlossBack, "x", Regular.easeOut, dwx2, -555, .5, true);
conceptTxtField.visible = false;
if (vscrollconcept == true) {
vScrollBar2.visible = false;
}
flagfGlossaOpen = true;
}
private function closeFGlossary() {
//this.glossary_mc.fullGlossBack.x =223;
//this.glossary_mc.x =779;
var dwx = this.glossary_mc.x;
var dwx2 = this.glossary_mc.fullGlossBack.x;
var myTween: Tween = new Tween(this.glossary_mc, "x", Regular.easeOut, dwx, 779, .4, true);
var myTween2: Tween = new Tween(this.glossary_mc.fullGlossBack, "x", Regular.easeOut, dwx2, 223, .4, true);
this.glossary_mc.fullGlossarybtn_txt.text = "BROWSE FULL GLOSSARY";
this.glossary_mc.expand_txt.text = "click to expand";
conceptTxtField.visible = true;
cRelated_txt.visible = true;
if (vscrollconcept == true) {
vScrollBar2.visible = true;
}
flagGlossaOpen = false;
flagfGlossaOpen = false;
}
/*************************************************************************************
* FUNCTION: EXPAND AND HIDE THE GLOSSARY PANEL
************************************************************************************/
private function expandHideGlossary(ev: MouseEvent): void {
if (flagGlossaOpen) {
closeGlossary();
} else {
openGlossary();
}
}
/*************************************************************************************
* FUNCTION: PRINT GLOSSARY TERMS
************************************************************************************/
private function printGlossary(ev: MouseEvent): void {
this.myPJ.printText.htmlText = ""
//trace("PrintGlossary");
this.myPJ.printText.htmlText = "Virtual Economics V.4 : Glossary<br>" + glossTxtField.htmlText + "<br>Copyright © Council for Economic Education. http://www.councilforeconed.org";
////////////HMD TEST HERE
var stripf: String = this.myPJ.printText.text
this.myPJ.printText.htmlText = stripf
this.myPJ.printText.defaultTextFormat = myFormat3
var numPages = cleanupText();
var printJob: PrintJob = new PrintJob();
//HMD Removed for test
//var numPages:int = 0;
if (printJob.start()) {
//numPages = Math.ceil(myPJ.printText.numLines/ ppLines);
//numPages = Math.ceil(myPJ.printText.numLines/ ppLines);
for (var i: int = 0; i < numPages; i++) {
printJob.addPage(myPJ);
nextPage();
}
}
}
/*************************************************************************************
* FUNCTION: CLEAR GLOSSARY TERMS
************************************************************************************/
private function clearGlossary(ev: MouseEvent): void {
if (vscrollglss == true) {
//this.glossary_mc.removeChild(vScrollBar);
this.glossary_mc.removeChild(vScrollBar);
vscrollglss = false;
}
glossTxtField.htmlText = "";
}
/*************************************************************************************
* FUNCTION: ADD A TERM TO THE GLOSSARY
************************************************************************************/
private function addGlossary(e: HCustomEvent): void {
var tempText = glossTxtField.htmlText;
//glossTxtField.styleSheet = glossary.getStyleSheet();
trace("add glossary");
glossTxtField.htmlText = "<p class='term'>" + e.data.titleText + "</p><p class='def'>" + e.data.contentText + "</p><BR>" + tempText;
trace("vscrollglss " + vscrollglss);
trace("scroll lines " + glossTxtField.numLines);
if (vscrollglss == false && glossTxtField.numLines > 19) {
glossaryScrollGo();
}
if (glossTxtField.numLines > 19) {
vScrollBar.update();
}
}
/*************************************************************************************
* FUNCTION: FULL GLOSSARY TERMS
************************************************************************************/
private function fullGlossary(ev: MouseEvent): void {
//glossTxtField.htmlText="";
//glossTxtField.styleSheet = glossary.getStyleSheet();
var fGlos = glossary.getFullGlossary();
this.glossary_mc.fullGlossBack.init(!flagfGlossaOpen);
//open Glossary tab
if (flagfGlossaOpen) {
closeFGlossary();
} else {
openFGlossary();
}
}
/*************************************************************************************
* FUNCTION: PRINT TABS - WITH TASKS INVOLVED
************************************************************************************/
private function nextPage(): void {
this.myPJ.printText.scrollV = this.myPJ.printText.scrollV + ppLines;
trace("this.myPJ.printText.scrollV " + this.myPJ.printText.scrollV);
trace("ppLines " + ppLines);
}
private function cleanupText(): Number {
//used to add lines to the bottom of the print area so the last page won't overlap from the previous page.
var numPages: int = 0;
numPages = Math.ceil(myPJ.printText.numLines / ppLines);
trace("Cleanup Text");
trace("Number of Lines in PJ:" + myPJ.printText.numLines);
trace("Number of Pages:" + numPages)
var linestoadd = (numPages * ppLines) - myPJ.printText.numLines;
for (var ct: int = 0; ct < linestoadd; ct++) {
trace("Lines added:" + (ct + 1));
myPJ.printText.htmlText += "<BR>"
}
myPJ.printText.scrollV = 0;
myPJ.myScrollBar.visible = false;
return numPages
}
public function printTabs(ev: MouseEvent): void {
//add stuff
cover_mc.visible = true;
setChildIndex(cover_mc, numChildren - 1);
printpopup.visible = true;
setChildIndex(printpopup, numChildren - 1);
printpopup.select_all.addEventListener(MouseEvent.CLICK, selectAll);
printpopup.deselect_all.addEventListener(MouseEvent.CLICK, deselectAll);
printpopup.print_close.addEventListener(MouseEvent.CLICK, closePrint);
printpopup.print_overview.addEventListener(MouseEvent.CLICK, overviewPrint);
printpopup.print_lessons.addEventListener(MouseEvent.CLICK, lessonsPrint);
printpopup.print_tips.addEventListener(MouseEvent.CLICK, tipsPrint);
printpopup.print_online.addEventListener(MouseEvent.CLICK, onlinePrint);
printpopup.print_quiz.addEventListener(MouseEvent.CLICK, quizPrint);
printpopup.print_btn.addEventListener(MouseEvent.CLICK, PrintButton);
/*
this.myPJ.printText.htmlText=getTabContent();
////////////
cleanupText();
var printJob:PrintJob = new PrintJob();
var numPages:int = 0;
if (printJob.start())
{
numPages = Math.ceil(myPJ.printText.numLines/ ppLines);
for (var i:int = 0; i < numPages; i++)
{
printJob.addPage(myPJ);
nextPage();
}
}*/
}
private function selectAll(ev: MouseEvent): void {
printpopup.print_checkbox1.gotoAndStop(2);
printpopup.print_checkbox2.gotoAndStop(2);
printpopup.print_checkbox3.gotoAndStop(2);
printpopup.print_checkbox4.gotoAndStop(2);
printpopup.print_checkbox5.gotoAndStop(2);
dprintOver = true;
dprintLessons = true;
dprintTips = true;
dprintOnline = true;
dprintQuiz = true;
}
private function deselectAll(ev: MouseEvent): void {
printpopup.print_checkbox1.gotoAndStop(1);
printpopup.print_checkbox2.gotoAndStop(1);
printpopup.print_checkbox3.gotoAndStop(1);
printpopup.print_checkbox4.gotoAndStop(1);
printpopup.print_checkbox5.gotoAndStop(1);
dprintOver = false;
dprintLessons = false;
dprintTips = false;
dprintOnline = false;
dprintQuiz = false;
}
private function closePrint(ev: MouseEvent): void {
printpopup.print_close.removeEventListener(MouseEvent.CLICK, closePrint);
printpopup.select_all.removeEventListener(MouseEvent.CLICK, selectAll);
printpopup.deselect_all.removeEventListener(MouseEvent.CLICK, deselectAll);
printpopup.print_overview.removeEventListener(MouseEvent.CLICK, overviewPrint);
printpopup.print_lessons.removeEventListener(MouseEvent.CLICK, lessonsPrint);
printpopup.print_tips.removeEventListener(MouseEvent.CLICK, tipsPrint);
printpopup.print_online.removeEventListener(MouseEvent.CLICK, onlinePrint);
printpopup.print_quiz.removeEventListener(MouseEvent.CLICK, quizPrint);
printpopup.print_btn.removeEventListener(MouseEvent.CLICK, PrintButton);
printpopup.print_checkbox1.gotoAndStop(1);
printpopup.print_checkbox2.gotoAndStop(1);
printpopup.print_checkbox3.gotoAndStop(1);
printpopup.print_checkbox4.gotoAndStop(1);
printpopup.print_checkbox5.gotoAndStop(1);
dprintOver = false;
dprintLessons = false;
dprintTips = false;
dprintOnline = false;
dprintQuiz = false;
cover_mc.visible = false;
printpopup.visible = false;
}
private function overviewPrint(ev: MouseEvent): void {
if (dprintOver == false) {
printpopup.print_checkbox1.gotoAndStop(2);
dprintOver = true;
} else {
dprintOver = false;
printpopup.print_checkbox1.gotoAndStop(1);
}
}
private function lessonsPrint(ev: MouseEvent): void {
if (dprintLessons == false) {
printpopup.print_checkbox2.gotoAndStop(2);
dprintLessons = true;
} else {
dprintLessons = false;
printpopup.print_checkbox2.gotoAndStop(1);
}
}
private function tipsPrint(ev: MouseEvent): void {
if (dprintTips == false) {
printpopup.print_checkbox3.gotoAndStop(2);
dprintTips = true;
} else {
dprintTips = false;
printpopup.print_checkbox3.gotoAndStop(1);
}
}
private function onlinePrint(ev: MouseEvent): void {
if (dprintOnline == false) {
printpopup.print_checkbox4.gotoAndStop(2);
dprintOnline = true;
} else {
dprintOnline = false;
printpopup.print_checkbox4.gotoAndStop(1);
}
}
private function quizPrint(ev: MouseEvent): void {
if (dprintQuiz == false) {
printpopup.print_checkbox5.gotoAndStop(2);
dprintQuiz = true;
} else {
dprintQuiz = false;
printpopup.print_checkbox5.gotoAndStop(1);
}
}
private function PrintButton(ev: MouseEvent): void {
this.myPJ.printText.htmlText = ""
this.myPJ.printText.htmlText = getTabContent();
////////////strip formatting
var stripf: String = this.myPJ.printText.text
this.myPJ.printText.htmlText = stripf
this.myPJ.printText.defaultTextFormat = myFormat3
trace("SEND CLEANUP TEXT")
var numPages = cleanupText();
//HMD Try this
//numPages = Math.ceil(myPJ.printText.numLines/ppLines);
//trace("this.myPJ.printText.htmlText "+this.myPJ.printText.text);
var printJob: PrintJob = new PrintJob();
//var numPages:int = 0;
if (printJob.start()) {
trace("myPJ.printText.numLines----------------------------------------------- " + myPJ.printText.numLines);
trace("ppLines----------------------------------------------- " + ppLines);
//numPages = Math.ceil(myPJ.printText.numLines/ppLines);
trace("numPages----------------------------------------------- " + numPages);
for (var i: int = 0; i < numPages; i++) {
printJob.addPage(myPJ);
nextPage();
}
}
printpopup.print_close.removeEventListener(MouseEvent.CLICK, closePrint);
printpopup.print_overview.removeEventListener(MouseEvent.CLICK, overviewPrint);
printpopup.print_lessons.removeEventListener(MouseEvent.CLICK, lessonsPrint);
printpopup.print_tips.removeEventListener(MouseEvent.CLICK, tipsPrint);
printpopup.print_online.removeEventListener(MouseEvent.CLICK, onlinePrint);
printpopup.print_quiz.removeEventListener(MouseEvent.CLICK, quizPrint);
printpopup.print_btn.removeEventListener(MouseEvent.CLICK, PrintButton);
printpopup.select_all.removeEventListener(MouseEvent.CLICK, selectAll);
printpopup.deselect_all.removeEventListener(MouseEvent.CLICK, deselectAll);
printpopup.print_checkbox1.gotoAndStop(1);
printpopup.print_checkbox2.gotoAndStop(1);
printpopup.print_checkbox3.gotoAndStop(1);
printpopup.print_checkbox4.gotoAndStop(1);
printpopup.print_checkbox5.gotoAndStop(1);
dprintOver = false;
dprintLessons = false;
dprintTips = false;
dprintOnline = false;
dprintQuiz = false;
cover_mc.visible = false;
printpopup.visible = false;
}
//closeVideo
/*************************************************************************************
* FUNCTION: CLOSE VIDEO
************************************************************************************/
private function closeVideo(ev: MouseEvent): void {
if (dwactivevid != 0) {
SoundMixer.stopAll();
//videoObj.pauseMe(PAUSE_ME);
//videoObj.resetScreen();
if (isfullscreenset == true) {
stage.removeEventListener(KeyboardEvent.KEY_DOWN, pressESCKey);
videoHolder.prompttext.text = "";
isfullscreenset = false;
}
videoObj = null;
videoMC = MovieClip(null);
videoHolder.holder.stop();
fl_Loader.unloadAndStop();
videoHolder.holder.removeChild(fl_Loader);
videoHolder.holder.visible = false;
videoHolder.vid_background.gotoAndStop(1);
videoHolder.picholder_mc.visible = true;
videoHolder.beginplay_mc.visible = true;
dwactivevid = 0;
} else {
this.cover_mc.visible = false;
isfullscreenset = false;
videoHolder.beginplay_mc.removeEventListener(MouseEvent.CLICK, launchVideo);
videoHolder.x = 0;
videoHolder.y = 0;
videoHolder.width = 593;
videoHolder.height = 466.30;
conceptTxtField.visible = true;
//Object(parent).setfullscreen(isfullscreenset);
removeChild(videoHolder);
SoundMixer.stopAll();
}
//
}
//MrOlsen - PlayVideo
/*************************************************************************************
* FUNCTION: LAUNCH VIDEO
************************************************************************************/
private function launchVideoQuiz(event: MouseEvent): void {
if (contentItem.extVid != "") {
navigateToURL(new URLRequest(contentItem.extVid), "_blank");
}
else {
addChild(videoHolder);
SoundMixer.stopAll();
this.cover_mc.visible = true;
conceptTxtField.visible = false;
videoHolder.beginplay_mc.visible = true;
if (dw_quizgood == "1") {
videoHolder.takequiz_mc.visible = true;
videoHolder.takequiz_mc.addEventListener(MouseEvent.CLICK, launchQuiz);
}
videoHolder.picholder_mc.visible = false;
fl_PICLoader2 = new Loader(); //NEW
vidpicpath = Object(parent).getDpath();
var picPath: String = "" + vidpicpath + "_VE50DATA/" + MainConstants.THUMBPIC_PATH + contentItem.conceptID + ".jpg"; //NEW
trace("picPath "+picPath);
videoHolder.presentation_text.htmlText = "<b>" + contentItem.conceptName + "</b>";
fl_PICLoader2.contentLoaderInfo.addEventListener(Event.COMPLETE, loadProdComplete2);
fl_PICLoader2.load(new URLRequest(picPath));
videoHolder.picholder_mc.visible = true;
//videoHolder.picholder_mc.addChild(e.target.content);
videoHolder.vid_background.gotoAndStop(1);
videoHolder.holder.visible = false;
videoHolder.quizclosebtn.visible = false;
videoHolder.quizholder.visible = false;
videoHolder.prompttext.text = "";
videoHolder.closebtn.addEventListener(MouseEvent.CLICK, closeVideo);
videoHolder.maxgobutton.addEventListener(MouseEvent.CLICK, TrytoMaximize);
videoHolder.beginplay_mc.addEventListener(MouseEvent.CLICK, launchVideo);
//trace("-------------------LAUNCH VIDEO QUIZ---------------------------");
}
}
private function TrytoMaximize(event: MouseEvent): void
{
if (isfullscreenset == false) {
videoHolder.x = -152.6;
videoHolder.y = -123.25;
videoHolder.width = 798.5;
videoHolder.height = 637.35;
isfullscreenset = true;
videoHolder.prompttext.text = "Press Esc to exit full screen mode.";
videoHolder.maxgobutton.visible = false;
stage.addEventListener(KeyboardEvent.KEY_DOWN, pressESCKey);
} else if (isfullscreenset == true) {
videoHolder.prompttext.text = " ";
videoHolder.x = 0;
videoHolder.y = 0;
videoHolder.width = 593;
videoHolder.height = 466.30;
videoHolder.maxgobutton.visible = true;
stage.removeEventListener(KeyboardEvent.KEY_DOWN, pressESCKey);
videoHolder.prompttext.text = " ";
isfullscreenset = false;
}
//Object(parent).setfullscreen(isfullscreenset);
}
private function TryMinimize(): void
{
if (isfullscreenset == true) {
videoHolder.x = 0;
videoHolder.y = 0;
videoHolder.width = 593;
videoHolder.height = 466.30;
videoHolder.prompttext.text = " ";
videoHolder.maxgobutton.visible = true;
stage.removeEventListener(KeyboardEvent.KEY_DOWN, pressESCKey);
isfullscreenset = false;
}
//Object(parent).setfullscreen(isfullscreenset);
}
private function pressESCKey(evt: KeyboardEvent): void {
trace("key select here");
if (evt.keyCode == 27) {
trace("key select");
TryMinimize();
}
} //KeyCode = 13 is ENTER key
private function loadProdComplete2(e: Event): void {
var bit: Bitmap = e.target.content;
if (bit != null) {
bit.width = 170;
bit.height = 170;
bit.smoothing = true;
}
videoHolder.picholder_mc.addChild(e.target.content);
}
/*************************************************************************************
* FUNCTION: LAUNCH VIDEO
************************************************************************************/
private function launchVideo(event: MouseEvent): void {
//videoHolder.beginplay_mc.visible = false;
//videoHolder.takequiz_mc.visible = false;
dwactivevid = 1;
videoHolder.vid_background.gotoAndStop(2);
videoHolder.holder.visible = true;
videoHolder.picholder_mc.visible = false;
videoHolder.beginplay_mc.visible = false;
//if(fl_ToLoad)
//{
var vidfullpath = Object(parent).getDpath();
//trace("vidfullpath "+vidfullpath);
fl_Loader = new Loader();
fl_Loader.contentLoaderInfo.addEventListener(Event.COMPLETE, movieLoaded);
//if ((contentItem.conceptID != 14) && (contentItem.conceptID != 46)){
//var videoPath:String = "" +vidfullpath+ "_VE4DATA/"+MainConstants.VIDEOMOVIEPATH + contentItem.conceptID + ".swf";
//} else {
//MrOlsen
var videoPath: String = "" + MainConstants.VIDEOMOVIEPATH + contentItem.conceptID + ".swf";
//}
//trace("videoPath"+videoPath);
//var videoPath:String = "" + MainConstants.VIDEOMOVIEPATH + "13" + ".swf";
fl_Loader.load(new URLRequest(videoPath));
videoHolder.holder.addChild(fl_Loader);
trace("[LessonsCEE.as:1241]extVid: " + contentItem.extVid);
}
public function movieLoaded(myevent: Event): void {
//var videoObj:Object = videoHolder.holder.getChildAt(1); //ACCESS CODE IN LESSON MC
//var videoObj:Object = myevent.target.content; //ACCESS CODE IN LESSON MC
videoObj = myevent.target.content; //ACCESS CODE IN LESSON MC
myevent.target.content.beginplayMe();
//var videoMC:MovieClip = MovieClip(myevent.target.content);
videoMC = MovieClip(myevent.target.content);
videoObj.beginplayMe();
videoObj.addEventListener("goEnd", videoEnd, true);
var str: String = videoObj.toString(); //return "mainControl"
//trace("myevent.target.content = " +str);
//videoObj.nav_controller.beginplayMe();
}
/*************************************************************************************
* FUNCTION: LAUNCH VIDEO
************************************************************************************/
public function videoEnd(e: Event): void {
//addChild(videoHolder);
videoHolder.beginplay_mc.visible = true;
//videoHolder.takequiz_mc.visible = true;
if (dw_quizgood == "1") {
videoHolder.takequiz_mc.visible = true;
videoHolder.takequiz_mc.addEventListener(MouseEvent.CLICK, launchQuiz);
}
//videoHolder.holder.SoundMixer.stopAll();
videoHolder.holder.stop();
SoundMixer.stopAll();
dwactivevid = 0;
videoHolder.vid_background.gotoAndStop(1);
if (fl_Loader != null) {
videoHolder.holder.removeChild(fl_Loader);
}
videoHolder.holder.visible = false;
videoHolder.picholder_mc.visible = true;
videoHolder.beginplay_mc.visible = true;
SoundMixer.stopAll();
//videoHolder.closebtn.addEventListener(MouseEvent.CLICK,closeVideo);
//videoHolder.beginplay_mc.addEventListener(MouseEvent.CLICK, launchVideo);
//videoHolder.takequiz_mc.addEventListener(MouseEvent.CLICK, launchQuiz);
//trace("-------------------LAUNCH VIDEO QUIZ---------------------------");
}
/*************************************************************************************
* FUNCTION: LAUNCH QUIZ
************************************************************************************/
private function launchQuiz(event: MouseEvent): void {
//trace("did this trip");
fl_Loader = new Loader();
SoundMixer.stopAll();
fl_Loader.contentLoaderInfo.addEventListener(Event.COMPLETE, quizmovieLoaded);
//var videoPath:String = "" + MainConstants.VIDEOMOVIEPATH + contentItem.conceptID + ".swf";
var videoPath: String = "" + "quiz.swf";
//var videoPath:String = "" + MainConstants.VIDEOMOVIEPATH + "13" + ".swf";
fl_Loader.load(new URLRequest(videoPath));
videoHolder.quizholder.addChild(fl_Loader);
}
public function getDQpath() {
return vidpicpath;
}
public function quizmovieLoaded(myevent: Event): void {
var quizObj: Object = myevent.target.content; //ACCESS CODE IN LESSON MC
myevent.target.content.PassID(contentItem.conceptID, vidpicpath);
var videoMC: MovieClip = MovieClip(myevent.target.content);
quizObj.PassID(contentItem.conceptID, vidpicpath);
var qstr: String = quizObj.toString();
videoHolder.vid_background.gotoAndStop(2);
videoHolder.quizholder.visible = true;
videoHolder.beginplay_mc.visible = false;
videoHolder.quizclosebtn.visible = true;
videoHolder.picholder_mc.visible = false;
videoHolder.quizclosebtn.addEventListener(MouseEvent.CLICK, quizclosequiz);
}
private function quizclosequiz(ev: MouseEvent): void {
SoundMixer.stopAll();
videoHolder.quizholder.removeChild(fl_Loader);
videoHolder.quizholder.visible = false;
videoHolder.quizclosebtn.visible = false;
videoHolder.picholder_mc.visible = true;
videoHolder.beginplay_mc.visible = true;
videoHolder.vid_background.gotoAndStop(1);
//removeChild(videoHolder);
//SoundMixer.stopAll();
}
public function getConceptId(): String {
return "" + contentItem.conceptID;
}
/*******************************************************************
* FUNCTIONS: SET UP ALL BUTTONS AND TEXTFIELDS
*******************************************************************/
private function setup(): void {
//this.myPJ.printText.autoSize = TextFieldAutoSize.LEFT;
//this.close_button2.buttonMode = true;
//this.close_button2.mouseChildren = false;
//this.close_button2.useHandCursor = true;
this.cover_mc.visible = false;
printpopup.visible = false;
/*this.about_button.buttonMode = true;
this.about_button.mouseChildren = false;
this.about_button.useHandCursor = true;
if(contentItem.conceptResources==null){
this.tabResources_mc.visible=false;
}*/
this.print_button.buttonMode = true;
this.print_button.mouseChildren = false;
this.print_button.useHandCursor = true;
//VIDEOS AND QUIZ
this.videoButton.addEventListener(MouseEvent.CLICK, launchVideoQuiz);
this.videoButton.buttonMode = true;
//GLOSSARY PANEL BUTTONS
this.glossary_mc.glossaryPrint_btn.addEventListener(MouseEvent.CLICK, printGlossary);
this.glossary_mc.glossaryClear_btn.addEventListener(MouseEvent.CLICK, clearGlossary);
this.glossary_mc.fullGlossary_btn.addEventListener(MouseEvent.CLICK, fullGlossary);
this.glossary_mc.fullGlossBack.closeGlossary_btn.addEventListener(MouseEvent.CLICK, fullGlossary);
this.glossary_mc.expand_btn.addEventListener(MouseEvent.CLICK, expandHideGlossary);
this.close_button2.addEventListener(MouseEvent.MOUSE_OVER, onCloseOver);
this.close_button2.addEventListener(MouseEvent.MOUSE_OUT, onCloseOut);
this.close_button2.addEventListener(MouseEvent.CLICK, onCloseClick);
//this.about_button.addEventListener(MouseEvent.MOUSE_DOWN, gotoAboutFrm);
this.about2_button.addEventListener(MouseEvent.MOUSE_DOWN, gotoAboutFrm);
this.print_button.addEventListener(MouseEvent.MOUSE_DOWN, printTabs);
this.nav_back_button.addEventListener(MouseEvent.MOUSE_OVER, onNavBackOver);
this.nav_back_button.addEventListener(MouseEvent.MOUSE_OUT, onNavBackOut);
this.nav_back_button.addEventListener(MouseEvent.CLICK, gotoLastFrm);
this.nav_home_button.addEventListener(MouseEvent.MOUSE_OVER, onNavHomeOver);
this.nav_home_button.addEventListener(MouseEvent.MOUSE_OUT, onNavHomeOut);
this.nav_home_button.addEventListener(MouseEvent.MOUSE_DOWN, gotoHomeFrm);
this.nav_concepts_button.addEventListener(MouseEvent.MOUSE_OVER, onNavConceptsOver);
this.nav_concepts_button.addEventListener(MouseEvent.MOUSE_OUT, onNavConceptsOut);
this.nav_concepts_button.addEventListener(MouseEvent.MOUSE_DOWN, gotoConceptsFrm);
this.nav_lessons_button.addEventListener(MouseEvent.MOUSE_OVER, onNavLessonsOver);
this.nav_lessons_button.addEventListener(MouseEvent.MOUSE_OUT, onNavLessonsOut);
this.nav_lessons_button.addEventListener(MouseEvent.MOUSE_DOWN, gotoSearchFrm);
this.tabOverview_mc.tab_btn.addEventListener(MouseEvent.MOUSE_OVER, mouseOverTab);
this.tabLessons_mc.tab_btn.addEventListener(MouseEvent.MOUSE_OVER, mouseOverTab);
this.tabTips_mc.tab_btn.addEventListener(MouseEvent.MOUSE_OVER, mouseOverTab);
this.tabResources_mc.tab_btn.addEventListener(MouseEvent.MOUSE_OVER, mouseOverTab);
this.tabOverview_mc.tab_btn.addEventListener(MouseEvent.MOUSE_OUT, mouseOutTab);
this.tabLessons_mc.tab_btn.addEventListener(MouseEvent.MOUSE_OUT, mouseOutTab);
this.tabTips_mc.tab_btn.addEventListener(MouseEvent.MOUSE_OUT, mouseOutTab);
this.tabResources_mc.tab_btn.addEventListener(MouseEvent.MOUSE_OUT, mouseOutTab);
this.tabOverview_mc.tab_btn.addEventListener(MouseEvent.CLICK, clickOverviewTab);
this.tabLessons_mc.tab_btn.addEventListener(MouseEvent.CLICK, clickLessonsTab);
this.tabTips_mc.tab_btn.addEventListener(MouseEvent.CLICK, clickTipsTab);
this.tabResources_mc.tab_btn.addEventListener(MouseEvent.CLICK, clickResourcesTab);
}
/*******************************************************************
* FUNCTIONS: BUTTONS ROLL OVER & OUT
*******************************************************************/
private function mouseOverTab(evt: MouseEvent): void {
evt.target.parent.textTab.alpha = .75;
//trace("evt.target. = "+evt.target..toString() );
}
private function mouseOutTab(evt: MouseEvent): void {
evt.target.parent.textTab.alpha = 1;
}
private function onCloseOver(evt: MouseEvent): void {
this.close_button.gotoAndStop(2);
}
private function onCloseOut(evt: MouseEvent): void {
this.close_button.gotoAndStop(1);
}
private function onNavBackOver(evt: MouseEvent): void {
this.back_icon_roll.gotoAndStop(2);
}
private function onNavBackOut(evt: MouseEvent): void {
this.back_icon_roll.gotoAndStop(1);
}
private function onNavHomeOver(evt: MouseEvent): void {
this.house_mc.gotoAndStop(2);
}
private function onNavHomeOut(evt: MouseEvent): void {
this.house_mc.gotoAndStop(1);
}
private function onNavConceptsOver(evt: MouseEvent): void {
this.nav_concepts_roll.gotoAndStop(2);
}
private function onNavConceptsOut(evt: MouseEvent): void {
this.nav_concepts_roll.gotoAndStop(1);
}
private function onNavLessonsOver(evt: MouseEvent): void {
this.nav_lessons_roll.gotoAndStop(2);
}
private function onNavLessonsOut(evt: MouseEvent): void {
this.nav_lessons_roll.gotoAndStop(1);
}
} // Main class
} //end package