home *** CD-ROM | disk | FTP | other *** search
/ FCE Gold Plus / GOLD.iso / pc / shell.swf / scripts / __Packages / com / comp / Navigator.as < prev    next >
Text File  |  2007-10-16  |  49KB  |  1,249 lines

  1. class com.comp.Navigator extends MovieClip
  2. {
  3.    var c_blnPartChange = true;
  4.    var c_paireBoolean = true;
  5.    var c_NavType = false;
  6.    var c_CurrentBtn = null;
  7.    function Navigator(_objRef, _arrData, _skillType, inav1Y, inav2X, inav2Y, _objTestRef, _iFirstQuestion)
  8.    {
  9.       var _loc1_ = this;
  10.       super();
  11.       _loc1_.c_objRef = _objRef;
  12.       _loc1_.c_objTestRef = _objTestRef;
  13.       _loc1_.c_arrData = _arrData;
  14.       _loc1_.c_objRef.navStrip.txt_SkillType.autoSize = true;
  15.       _loc1_.c_objRef.navStrip.txt_SkillType.text = _skillType.toUpperCase();
  16.       _loc1_.c_inav1X = _loc1_.c_objRef.navStrip.txt_SkillType._width + 10;
  17.       _loc1_.c_inav1Y = inav1Y;
  18.       _loc1_.c_inav2X = inav2X;
  19.       _loc1_.c_inav2Y = inav2Y;
  20.       _loc1_.c_iFirstQuestion = _iFirstQuestion;
  21.       _loc1_.c_blnDataL = false;
  22.       var blnFetchGroup = true;
  23.       var iCount = 0;
  24.       var _loc3_ = 0;
  25.       while(_loc3_ < _loc1_.c_arrData.length)
  26.       {
  27.          var c_arrTemp = _loc1_.c_arrData[_loc3_].id.split(",");
  28.          var _loc2_ = 0;
  29.          while(_loc2_ < c_arrTemp.length)
  30.          {
  31.             iCount++;
  32.             if(_loc1_.c_iFirstQuestion == iCount && blnFetchGroup)
  33.             {
  34.                _loc1_.c_strSelecetd = "_" + _loc3_ + "_" + _loc2_;
  35.                if(_loc1_.c_iFirstQuestion > 1)
  36.                {
  37.                   _loc1_.c_preSelecetd = "_" + _loc3_ + "_" + (_loc2_ - 1);
  38.                }
  39.                else
  40.                {
  41.                   _loc1_.c_preSelecetd = "_" + _loc3_ + "_" + _loc2_;
  42.                }
  43.                blnFetchGroup = false;
  44.             }
  45.             _loc2_ = _loc2_ + 1;
  46.          }
  47.          _loc3_ = _loc3_ + 1;
  48.       }
  49.       _loc1_.c_lavelsNav1 = 200;
  50.       _loc1_.c_lavelsNav2 = 300;
  51.       _loc1_.c_lavelsNav3 = 500;
  52.       _loc1_.c_lavelsxXtra = 400;
  53.       _loc1_.c_iSubNavDist = 25;
  54.       _loc1_.c_iMainNavDist = 19;
  55.       _loc1_.groupDist = 16;
  56.       _loc1_.c_iSeleID = _iFirstQuestion;
  57.       _loc1_.strPartType = 0;
  58.       _loc1_.arrangeNav1();
  59.       _loc1_.arrangeNav2();
  60.       _loc1_.setupStage();
  61.    }
  62.    function arrangeNav1()
  63.    {
  64.       var _loc1_ = this;
  65.       var c_navBtnNo = 0;
  66.       var c_readGroupNo = 0;
  67.       var iCorrectDistance = 0;
  68.       var iCorrectDistanceNav3 = 0;
  69.       var iCorrectBorderPlacement = 0;
  70.       var blnFetchGroup = true;
  71.       var iCount = 0;
  72.       var iButtonCount = 0;
  73.       var iGroupNo = -1;
  74.       var _loc3_ = 0;
  75.       while(_loc3_ < _loc1_.c_arrData.length)
  76.       {
  77.          iGroupNo += 1;
  78.          var c_arrTemp = _loc1_.c_arrData[_loc3_].id.split(",");
  79.          if(760 < _loc1_.c_inav1X + _loc1_.c_iMainNavDist * (iButtonCount + c_arrTemp.length) + (iGroupNo - 1) * _loc1_.groupDist + iCorrectDistance * 6)
  80.          {
  81.             _loc1_.c_inav1Y += 40;
  82.             iButtonCount = 0;
  83.             iGroupNo = 0;
  84.             iCorrectDistance = 0;
  85.             iCorrectBorderPlacement = 0;
  86.          }
  87.          var c_btnNo = 0;
  88.          while(c_btnNo < c_arrTemp.length)
  89.          {
  90.             if(_loc1_.c_arrData[_loc3_].type == 3 && _loc1_.c_paireBoolean == true)
  91.             {
  92.                _loc1_.c_NavType = true;
  93.                _loc1_.c_paireBoolean = false;
  94.                var pairLen = Number(c_arrTemp.length / 2);
  95.                var _iBtnNum = c_arrTemp[c_btnNo];
  96.                var i = 0;
  97.                while(i < pairLen)
  98.                {
  99.                   _loc1_.c_objRef["pairNav_" + _loc3_ + "_" + i].removeMovieClip();
  100.                   var _loc2_ = _loc1_.c_objRef.attachMovie("pairNav_3","pairNav_" + _loc3_ + "_" + i,_loc1_.c_lavelsNav3++);
  101.                   _loc2_._y = _loc1_.c_inav1Y;
  102.                   _loc2_._x = _loc1_.c_inav1X + _loc1_.c_iMainNavDist * iButtonCount + iGroupNo * _loc1_.groupDist + iCorrectDistanceNav3 * 6;
  103.                   iCorrectDistanceNav3 += 5;
  104.                   _loc2_.strPartType = c_readGroupNo;
  105.                   iButtonCount += 1;
  106.                   _loc2_.mc_PairL.gotoAndStop("normal");
  107.                   _loc2_.mc_PairR.gotoAndStop("normal");
  108.                   _loc2_.mc_PairL.id.text = _iBtnNum++;
  109.                   _loc2_.mc_PairR.id.text = _iBtnNum++;
  110.                   _loc2_.mc_PairR.gotoAndStop("NOTATTEMPTED");
  111.                   _loc2_.mc_PairL.mcHitArea.onRollOut = _loc2_.mc_PairR.mcHitArea.onRollOut = function()
  112.                   {
  113.                      var _loc1_ = this;
  114.                      if(_loc1_._parent._currentframe == 2)
  115.                      {
  116.                         _loc1_._parent.gotoAndStop("normal");
  117.                      }
  118.                      else if(_loc1_._parent._currentframe == 6)
  119.                      {
  120.                         _loc1_._parent.gotoAndStop("groupSelected");
  121.                      }
  122.                   };
  123.                   _loc2_.mc_PairL.mcHitArea.onRollOver = _loc2_.mc_PairR.mcHitArea.onRollOver = function()
  124.                   {
  125.                      var _loc1_ = this;
  126.                      if(_loc1_._parent._currentframe != 4 and _loc1_._parent._currentframe != 3)
  127.                      {
  128.                         _loc1_._parent.gotoAndStop("overState");
  129.                      }
  130.                      else if(_loc1_._parent._currentframe == 3 and _loc1_._parent._currentframe != 4)
  131.                      {
  132.                         _loc1_._parent.gotoAndStop("grouphover");
  133.                      }
  134.                   };
  135.                   _loc2_.mc_PairL.mcHitArea.objRef = _loc1_;
  136.                   _loc2_.mc_PairR.mcHitArea.objRef = _loc1_;
  137.                   _loc2_.mc_PairL.mcHitArea.onRelease = _loc2_.mc_PairL.mcHitArea.onReleaseOutside = _loc2_.mc_PairR.mcHitArea.onRelease = _loc2_.mc_PairR.mcHitArea.onReleaseOutside = function()
  138.                   {
  139.                      var _loc1_ = this;
  140.                      var _loc2_ = _loc1_._parent._parent._name;
  141.                      _loc1_.objRef.c_preSelecetd = _loc1_.objRef.c_strSelecetd;
  142.                      var iFirstIndex = _loc2_.indexOf("_");
  143.                      var iGroupNo = _loc2_.split("_")[1];
  144.                      _loc1_.objRef.c_iCPairID = _loc2_.split("_")[2];
  145.                      _loc1_.objRef.c_objTestRef.c_iPairID = _loc2_.split("_")[2];
  146.                      var _loc3_ = _loc1_._parent.id.text;
  147.                      _loc1_.objRef.c_strSelecetd = String("_" + iGroupNo + "_" + (_loc3_ - 1));
  148.                      _loc1_.objRef.c_iSeleID = _loc1_._parent.id.text;
  149.                      _loc1_.objRef.strPartType = _loc1_.strPartType;
  150.                      _loc1_.objRef.navClicked();
  151.                   };
  152.                   i++;
  153.                }
  154.             }
  155.             else
  156.             {
  157.                _loc1_.c_objRef["navBtn1_" + _loc3_ + "_" + c_btnNo].removeMovieClip();
  158.                _loc1_.c_objRef.attachMovie("navBtn1_" + _loc1_.c_arrData[_loc3_].type,"navBtn1_" + _loc3_ + "_" + c_btnNo,_loc1_.c_lavelsNav1++);
  159.                var mc_Nav = _loc1_.c_objRef["navBtn1_" + _loc3_ + "_" + c_btnNo];
  160.                mc_Nav._y = _loc1_.c_inav1Y;
  161.                mc_Nav._x = _loc1_.c_inav1X + _loc1_.c_iMainNavDist * iButtonCount + iGroupNo * _loc1_.groupDist + iCorrectDistance * 6;
  162.                mc_Nav.strPartType = c_readGroupNo;
  163.                iButtonCount += 1;
  164.             }
  165.             if(_loc1_.c_arrData[_loc3_].type == 2 and c_btnNo == c_arrTemp.length - 1)
  166.             {
  167.                iCorrectDistance++;
  168.             }
  169.             mc_Nav.gotoAndStop("normal");
  170.             mc_Nav.id.text = c_arrTemp[c_btnNo];
  171.             mc_Nav.nav1Atmpt.gotoAndStop("NOTATTEMPTED");
  172.             mc_Nav.mcHitArea.onRollOver = function()
  173.             {
  174.                var _loc1_ = this;
  175.                if(_loc1_._parent._currentframe != 4 and _loc1_._parent._currentframe != 3)
  176.                {
  177.                   _loc1_._parent.gotoAndStop("overState");
  178.                }
  179.                else if(_loc1_._parent._currentframe == 3 and _loc1_._parent._currentframe != 4)
  180.                {
  181.                   _loc1_._parent.gotoAndStop("grouphover");
  182.                }
  183.             };
  184.             mc_Nav.mcHitArea.onRollOut = function()
  185.             {
  186.                var _loc1_ = this;
  187.                if(_loc1_._parent._currentframe == 2)
  188.                {
  189.                   _loc1_._parent.gotoAndStop("normal");
  190.                }
  191.                else if(_loc1_._parent._currentframe == 6)
  192.                {
  193.                   _loc1_._parent.gotoAndStop("groupSelected");
  194.                }
  195.             };
  196.             mc_Nav.mcHitArea.onPress = function()
  197.             {
  198.             };
  199.             mc_Nav.mcHitArea.objRef = _loc1_;
  200.             mc_Nav.mcHitArea.onRelease = mc_Nav.mcHitArea.onReleaseOutside = function()
  201.             {
  202.                var _loc1_ = this;
  203.                _loc1_.objRef.c_preSelecetd = _loc1_.objRef.c_strSelecetd;
  204.                _loc1_.objRef.c_strSelecetd = _loc1_._parent._name.substr(7,_loc1_._name.length);
  205.                _loc1_.objRef.c_iSeleID = _loc1_._parent.id.text;
  206.                _loc1_.objRef.strPartType = _loc1_._parent.strPartType;
  207.                _loc1_.objRef.navClicked();
  208.             };
  209.             delete mc_Nav;
  210.             _loc1_.c_objRef.attachMovie("navBtn2_1","navBtn2_" + _loc3_ + "_" + c_btnNo,_loc1_.c_lavelsNav2++);
  211.             var mc_Nav = _loc1_.c_objRef["navBtn2_" + _loc3_ + "_" + c_btnNo];
  212.             mc_Nav._y = _loc1_.c_inav2Y;
  213.             mc_Nav._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist;
  214.             mc_Nav.id.text = c_arrTemp[c_btnNo];
  215.             mc_Nav.nav2Atmpt.gotoAndStop("NOTATTEMPTED");
  216.             mc_Nav.gotoAndStop("blank");
  217.             mc_Nav.onRollOver = function()
  218.             {
  219.                if(this._currentframe != 3)
  220.                {
  221.                   ┬º┬ºpush(this.gotoAndStop("overState"));
  222.                }
  223.             };
  224.             mc_Nav.onRollOut = mc_Nav.onDragOut = mc_Nav.onReleaseOutside = function()
  225.             {
  226.                if(this._currentframe == 2)
  227.                {
  228.                   ┬º┬ºpush(this.gotoAndStop("normal"));
  229.                }
  230.             };
  231.             mc_Nav.objRef = _loc1_;
  232.             mc_Nav.onRelease = mc_Nav.onReleaseOutside = function()
  233.             {
  234.                var _loc1_ = this;
  235.                _loc1_.objRef.c_preSelecetd = _loc1_.objRef.c_strSelecetd;
  236.                _loc1_.objRef.c_strSelecetd = _loc1_._name.substr(7,_loc1_._name.length);
  237.                _loc1_.objRef.c_iSeleID = _loc1_.id.text;
  238.                _loc1_.objRef.strPartType = _loc1_.strPartType;
  239.                _loc1_.objRef.navClicked();
  240.             };
  241.             mc_Nav.enabled = false;
  242.             delete mc_Nav;
  243.             c_navBtnNo++;
  244.             c_btnNo++;
  245.          }
  246.          if(_loc1_.c_arrData[_loc3_].type == 2 and c_arrTemp.length > 0)
  247.          {
  248.             _loc1_.c_objRef.attachMovie("navBtn1_2_border","navBtn1_2_border1_" + _loc3_,_loc1_.c_lavelsxXtra++);
  249.             var mc_Nav = _loc1_.c_objRef["navBtn1_2_border1_" + _loc3_];
  250.             mc_Nav._y = _loc1_.c_inav1Y;
  251.             mc_Nav._x = _loc1_.c_inav1X + _loc1_.c_iMainNavDist * (iButtonCount - c_arrTemp.length) + iGroupNo * _loc1_.groupDist + iCorrectBorderPlacement * 6;
  252.             delete mc_Nav;
  253.             _loc1_.c_objRef.attachMovie("navBtn1_2_border","navBtn1_2_border2_" + _loc3_,_loc1_.c_lavelsxXtra++);
  254.             var mc_Nav = _loc1_.c_objRef["navBtn1_2_border2_" + _loc3_];
  255.             mc_Nav._y = _loc1_.c_inav1Y;
  256.             mc_Nav._x = _loc1_.c_inav1X + _loc1_.c_iMainNavDist * iButtonCount + iGroupNo * _loc1_.groupDist + 6 + iCorrectBorderPlacement * 6;
  257.             mc_Nav._xscale = -100;
  258.             iCorrectBorderPlacement++;
  259.             delete mc_Nav;
  260.          }
  261.          _loc1_.c_objRef.attachMovie("partType","partType" + _loc3_,_loc1_.c_lavelsxXtra++);
  262.          var mc_Nav = _loc1_.c_objRef["partType" + _loc3_];
  263.          if(_loc1_.c_arrData[_loc3_].type == 3)
  264.          {
  265.             mc_Nav._x = _loc1_.c_objRef["pairNav_" + _loc3_ + "_0"]._x - 2;
  266.             mc_Nav._y = _loc1_.c_objRef["pairNav_" + _loc3_ + "_0"]._y - 13;
  267.          }
  268.          else
  269.          {
  270.             mc_Nav._x = _loc1_.c_objRef["navBtn1_" + _loc3_ + "_0"]._x - 2;
  271.             mc_Nav._y = _loc1_.c_objRef["navBtn1_" + _loc3_ + "_0"]._y - 13;
  272.          }
  273.          mc_Nav.partType.text = "Part " + (Number(c_readGroupNo) + 1) + ":";
  274.          c_readGroupNo++;
  275.          delete c_arrTemp;
  276.          delete c_btnNo;
  277.          _loc3_ = _loc3_ + 1;
  278.       }
  279.       false;
  280.       delete c_navBtnNo;
  281.    }
  282.    function setTopNavPosition(iTopNavY)
  283.    {
  284.       var _loc2_ = 0;
  285.       while(_loc2_ < this.c_arrData.length)
  286.       {
  287.          var c_arrTemp = this.c_arrData[_loc2_].id.split(",");
  288.          var _loc1_ = 0;
  289.          while(_loc1_ < c_arrTemp.length)
  290.          {
  291.             var _loc3_ = this.c_objRef["navBtn2_" + _loc2_ + "_" + _loc1_];
  292.             _loc3_._y = iTopNavY;
  293.             _loc1_ = _loc1_ + 1;
  294.          }
  295.          _loc2_ = _loc2_ + 1;
  296.       }
  297.       this.c_objRef.lArrow._y = iTopNavY;
  298.       this.c_objRef.rArrow._y = iTopNavY;
  299.    }
  300.    function getPairID(iQuesNum)
  301.    {
  302.       var _loc2_ = iQuesNum;
  303.       var _loc1_ = undefined;
  304.       if(_loc2_ == 0 || _loc2_ == 1)
  305.       {
  306.          _loc1_ = 0;
  307.       }
  308.       else
  309.       {
  310.          var _loc3_ = _loc2_ % 2;
  311.          _loc1_ = Math.round(_loc2_ / 2) - _loc3_;
  312.       }
  313.       return _loc1_;
  314.    }
  315.    function setPairID(iPairID)
  316.    {
  317.       this.c_iCPairID = iPairID;
  318.       this.c_objTestRef.c_iPairID = iPairID;
  319.    }
  320.    function arrangeNav2()
  321.    {
  322.       var _loc1_ = this;
  323.       var c_igroup = Number(_loc1_.c_strSelecetd.split("_")[1]);
  324.       var c_ifile = Number(_loc1_.c_strSelecetd.split("_")[2]);
  325.       var c_arrTemp = _loc1_.c_arrData[c_igroup].id.split(",");
  326.       var _loc2_ = 0;
  327.       while(_loc2_ < c_arrTemp.length)
  328.       {
  329.          var c_groupNo = Number(c_igroup);
  330.          _loc2_ = _loc2_ + 1;
  331.       }
  332.       _loc1_.c_objRef.attachMovie("lArrow","lArrow",_loc1_.c_lavelsxXtra++);
  333.       var _loc3_ = _loc1_.c_objRef.lArrow;
  334.       _loc3_._x = _loc1_.c_inav2X;
  335.       _loc3_._y = _loc1_.c_inav2Y;
  336.       if(c_ifile > 0 or c_igroup > 0)
  337.       {
  338.          _loc3_.gotoAndStop("normal");
  339.          _loc3_.enabled = true;
  340.       }
  341.       else
  342.       {
  343.          _loc3_.gotoAndStop("blank");
  344.          _loc3_.enabled = false;
  345.       }
  346.       _loc3_.onRollOver = function()
  347.       {
  348.          this.gotoAndStop("overState");
  349.       };
  350.       _loc3_.onRollOut = function()
  351.       {
  352.          this.gotoAndStop("normal");
  353.       };
  354.       _loc3_.onDragOver = _loc3_.onRollOver;
  355.       _loc3_.onDragOut = _loc3_.onRollOut;
  356.       _loc3_.objRef = _loc1_;
  357.       _loc3_.onRelease = function()
  358.       {
  359.          this.objRef.previousBtn();
  360.       };
  361.       _loc3_.onReleaseOutside = function()
  362.       {
  363.          this.gotoAndStop("normal");
  364.       };
  365.       false;
  366.       _loc1_.c_objRef.attachMovie("rArrow","rArrow",_loc1_.c_lavelsxXtra++);
  367.       _loc3_ = _loc1_.c_objRef.rArrow;
  368.       _loc3_._x = _loc1_.c_inav2X + c_arrTemp.length * _loc1_.c_iSubNavDist;
  369.       _loc3_._y = _loc1_.c_inav2Y;
  370.       if(c_igroup == _loc1_.c_arrData.length - 1 && c_ifile == c_arrTemp.length - 1)
  371.       {
  372.          _loc3_.gotoAndStop("blank");
  373.          _loc3_.enabled = false;
  374.       }
  375.       else
  376.       {
  377.          _loc3_.gotoAndStop("normal");
  378.          _loc3_.enabled = true;
  379.       }
  380.       _loc3_.onRollOver = function()
  381.       {
  382.          this.gotoAndStop("overState");
  383.       };
  384.       _loc3_.onRollOut = function()
  385.       {
  386.          this.gotoAndStop("normal");
  387.       };
  388.       _loc3_.onDragOver = _loc3_.onRollOver;
  389.       _loc3_.onDragOut = _loc3_.onRollOut;
  390.       _loc3_.objRef = _loc1_;
  391.       _loc3_.onRelease = function()
  392.       {
  393.          this.objRef.nextBtn();
  394.       };
  395.       _loc3_.onReleaseOutside = function()
  396.       {
  397.          this.gotoAndStop("normal");
  398.       };
  399.       false;
  400.       delete c_igroup;
  401.       delete c_ifile;
  402.    }
  403.    function navClicked()
  404.    {
  405.       this.navClickedfunction();
  406.       this.showResult();
  407.    }
  408.    function changeArrowStatus()
  409.    {
  410.       var _loc2_ = this;
  411.       var _loc1_ = _loc2_.c_objRef.lArrow;
  412.       if(_loc2_.c_strSelecetd == "_0_0")
  413.       {
  414.          _loc1_.enabled = false;
  415.          _loc1_.gotoAndStop("blank");
  416.       }
  417.       else
  418.       {
  419.          _loc1_.enabled = true;
  420.          _loc1_.gotoAndStop("normal");
  421.       }
  422.       false;
  423.       var _loc3_ = _loc2_.c_arrData[_loc2_.c_arrData.length - 1].id.split(",");
  424.       _loc1_ = _loc2_.c_objRef.rArrow;
  425.       if(_loc2_.c_strSelecetd == "_" + (_loc2_.c_arrData.length - 1) + "_" + (_loc3_.length - 1))
  426.       {
  427.          _loc1_.enabled = false;
  428.          _loc1_.gotoAndStop("blank");
  429.       }
  430.       else
  431.       {
  432.          _loc1_.enabled = true;
  433.          _loc1_.gotoAndStop("normal");
  434.       }
  435.       false;
  436.    }
  437.    function showPairBoxSelection()
  438.    {
  439.       var _loc2_ = this;
  440.       var _iCurrentGroupID = Number(_loc2_.c_strSelecetd.split("_")[1]);
  441.       var _loc3_ = Number(_loc2_.c_strSelecetd.split("_")[2]);
  442.       var _loc1_ = _loc2_.c_objRef["pairNav_" + _iCurrentGroupID + "_" + _loc2_.c_iCPairID];
  443.       _loc1_.mc_PairL.gotoAndStop("groupSelected");
  444.       _loc1_.mc_PairR.gotoAndStop("groupSelected");
  445.       if(_loc2_.c_CurrentBtn == null)
  446.       {
  447.          if(_loc3_ % 2 == 0)
  448.          {
  449.             _loc1_.mc_PairL.gotoAndStop("btnClicked");
  450.             _loc1_.mc_PairL.mcHitArea.enabled = false;
  451.          }
  452.          else
  453.          {
  454.             _loc1_.mc_PairR.gotoAndStop("btnClicked");
  455.             _loc1_.mc_PairR.mcHitArea.enabled = false;
  456.          }
  457.       }
  458.       else
  459.       {
  460.          _loc2_.c_CurrentBtn._parent.gotoAndStop("btnClicked");
  461.          _loc2_.c_CurrentBtn = null;
  462.       }
  463.    }
  464.    function enablePreviousBtn()
  465.    {
  466.       var _loc1_ = this;
  467.       var _loc3_ = _loc1_.c_objRef["navBtn1" + _loc1_.c_preSelecetd];
  468.       var _loc2_ = _loc1_.c_objRef["navBtn2" + _loc1_.c_preSelecetd];
  469.       var iGroupID = Number(_loc1_.c_preSelecetd.split("_")[1]);
  470.       if(_loc1_.c_arrData[iGroupID].type == 3)
  471.       {
  472.          _loc1_.deselectAllPairs(iGroupID);
  473.       }
  474.       _loc2_.gotoAndStop("normal");
  475.       _loc3_.gotoAndStop("groupSelected");
  476.       _loc3_.mcHitArea.enabled = true;
  477.       _loc2_.enabled = true;
  478.       false;
  479.       false;
  480.    }
  481.    function deselectAllPairs(_iCurrentGroupID)
  482.    {
  483.       var c_arrTemp = this.c_arrData[_iCurrentGroupID].id.split(",");
  484.       var _loc3_ = 0;
  485.       while(_loc3_ < c_arrTemp.length)
  486.       {
  487.          var pairLen = Number(c_arrTemp.length / 2);
  488.          var _iBtnNum = c_arrTemp[_loc3_];
  489.          var _loc2_ = 0;
  490.          while(_loc2_ < pairLen)
  491.          {
  492.             var _loc1_ = this.c_objRef["pairNav_" + _iCurrentGroupID + "_" + _loc2_];
  493.             _loc1_.mc_PairL.gotoAndStop("normal");
  494.             _loc1_.mc_PairL.mcHitArea.enabled = true;
  495.             _loc1_.mc_PairR.gotoAndStop("normal");
  496.             _loc1_.mc_PairR.mcHitArea.enabled = true;
  497.             _loc2_ = _loc2_ + 1;
  498.          }
  499.          _loc3_ = _loc3_ + 1;
  500.       }
  501.    }
  502.    function disableCurrentBtn()
  503.    {
  504.       var _loc1_ = this;
  505.       var iGroupID = Number(_loc1_.c_strSelecetd.split("_")[1]);
  506.       if(_loc1_.c_arrData[iGroupID].type == 3)
  507.       {
  508.          _loc1_.showPairBoxSelection();
  509.       }
  510.       else
  511.       {
  512.          var _loc3_ = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  513.          _loc3_.gotoAndStop("btnClicked");
  514.          _loc3_.mcHitArea.enabled = false;
  515.          false;
  516.       }
  517.       var _loc2_ = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  518.       _loc2_.gotoAndStop("btnClicked");
  519.       _loc2_.enabled = false;
  520.       false;
  521.    }
  522.    function setPreviousGroup(_arr, strPrevNavType)
  523.    {
  524.       var group = this.c_preSelecetd.split("_")[1];
  525.       var _loc1_ = 0;
  526.       while(_loc1_ < _arr.length)
  527.       {
  528.          var _loc2_ = this.c_objRef["navBtn2_" + group + "_" + _loc1_];
  529.          _loc2_.gotoAndStop("BLANK");
  530.          _loc2_.enabled = false;
  531.          _loc1_ = _loc1_ + 1;
  532.       }
  533.       if(strPrevNavType == 3)
  534.       {
  535.          this.deselectAllPairs(group);
  536.       }
  537.       else
  538.       {
  539.          _loc1_ = 0;
  540.          while(_loc1_ < _arr.length)
  541.          {
  542.             var _loc3_ = this.c_objRef["navBtn1_" + group + "_" + _loc1_];
  543.             _loc3_.gotoAndStop("NORMAL");
  544.             _loc3_.enabled = true;
  545.             _loc1_ = _loc1_ + 1;
  546.          }
  547.       }
  548.    }
  549.    function setCurrentGroup(_arr)
  550.    {
  551.       var group = this.c_strSelecetd.split("_")[1];
  552.       var _loc1_ = 0;
  553.       while(_loc1_ < _arr.length)
  554.       {
  555.          var _loc3_ = this.c_objRef["navBtn1_" + group + "_" + _loc1_];
  556.          var _loc2_ = this.c_objRef["navBtn2_" + group + "_" + _loc1_];
  557.          _loc3_.gotoAndStop("GROUPSELECTED");
  558.          _loc2_.gotoAndStop("normal");
  559.          _loc3_.enabled = true;
  560.          _loc2_.enabled = true;
  561.          _loc1_ = _loc1_ + 1;
  562.       }
  563.    }
  564.    function navClickedfunction()
  565.    {
  566.       var _loc1_ = this;
  567.       _loc1_.enablePreviousBtn();
  568.       _loc1_.changeArrowStatus();
  569.       var c_icurrentGroup = Number(_loc1_.c_strSelecetd.substr(1,_loc1_.c_strSelecetd.indexOf("_",1) - 1));
  570.       var c_iPreGroup = Number(_loc1_.c_preSelecetd.substr(1,_loc1_.c_preSelecetd.indexOf("_",1) - 1));
  571.       var c_iCurrentBtn = Number(_loc1_.c_strSelecetd.split("_")[2]);
  572.       if(c_iPreGroup != c_icurrentGroup)
  573.       {
  574.          var tmpPrev = _loc1_.c_arrData[c_iPreGroup].id.split(",");
  575.          var tmpCurr = _loc1_.c_arrData[c_icurrentGroup].id.split(",");
  576.          var c_navBtnNo = 0;
  577.          var preGrupBtns = 0;
  578.          var c_groupNo = 0;
  579.          while(c_groupNo < c_icurrentGroup)
  580.          {
  581.             preGrupBtns += _loc1_.c_arrData[c_groupNo].id.split(",").length;
  582.             c_groupNo++;
  583.          }
  584.          var c_groupNo = 0;
  585.          while(c_groupNo < _loc1_.c_arrData.length)
  586.          {
  587.             var c_arrTemp = _loc1_.c_arrData[c_groupNo].id.split(",");
  588.             var _loc2_ = 0;
  589.             while(_loc2_ < c_arrTemp.length)
  590.             {
  591.                var _loc3_ = _loc1_.c_objRef["navBtn2_" + c_groupNo + "_" + _loc2_];
  592.                _loc3_._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist - preGrupBtns * _loc1_.c_iSubNavDist;
  593.                false;
  594.                c_navBtnNo++;
  595.                _loc2_ = _loc2_ + 1;
  596.             }
  597.             false;
  598.             delete c_arrTemp;
  599.             c_groupNo++;
  600.          }
  601.          delete c_navBtnNo;
  602.          delete c_groupNo;
  603.          _loc1_.c_objRef.rArrow._x += (tmpCurr.length - tmpPrev.length) * _loc1_.c_iSubNavDist;
  604.          _loc1_.c_objTestRef.c_objSoundController.onPartChange();
  605.          _loc1_.c_blnPartChange = true;
  606.          var iPrevNavType = _loc1_.c_arrData[c_iPreGroup].type;
  607.          var iCurrNavType = _loc1_.c_arrData[c_icurrentGroup].type;
  608.          _loc1_.setPreviousGroup(tmpPrev,iPrevNavType);
  609.          _loc1_.setCurrentGroup(tmpCurr,iCurrNavType);
  610.          delete iPrevNavType;
  611.          delete iCurrNavType;
  612.       }
  613.       else
  614.       {
  615.          _loc1_.c_blnPartChange = false;
  616.       }
  617.       var iPairID = _loc1_.getPairID(c_iCurrentBtn);
  618.       _loc1_.setPairID(iPairID);
  619.       _loc1_.disableCurrentBtn();
  620.    }
  621.    function previousBtn()
  622.    {
  623.       var _loc1_ = this;
  624.       var fileNo = Number(_loc1_.c_strSelecetd.substr(_loc1_.c_strSelecetd.indexOf("_",1) + 1,_loc1_.c_strSelecetd.length));
  625.       var group = Number(_loc1_.c_strSelecetd.substr(1,_loc1_.c_strSelecetd.indexOf("_",1) - 1));
  626.       if(fileNo > 0)
  627.       {
  628.          var mc_nav1_Cur = _loc1_.c_objRef["navBtn1_" + group + "_" + (fileNo - 1)];
  629.          var mc_nav2_Cur = _loc1_.c_objRef["navBtn2_" + group + "_" + (fileNo - 1)];
  630.          var mc_nav1_Pre = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  631.          var mc_nav2_Pre = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  632.          mc_nav1_Pre.gotoAndStop("groupSelected");
  633.          mc_nav1_Pre.mcHitArea.enabled = true;
  634.          mc_nav1_Cur.gotoAndStop("btnClicked");
  635.          mc_nav1_Cur.mcHitArea.enabled = false;
  636.          mc_nav2_Pre.gotoAndStop("normal");
  637.          mc_nav2_Pre.enabled = true;
  638.          mc_nav2_Cur.gotoAndStop("btnClicked");
  639.          mc_nav2_Cur.enabled = false;
  640.          delete mc_nav2_Cur;
  641.          delete mc_nav1_Cur;
  642.          delete mc_nav1_Pre;
  643.          delete mc_nav1_Pre;
  644.       }
  645.       if(fileNo == 0 and group != 0)
  646.       {
  647.          var tmpPrev = _loc1_.c_arrData[group].id.split(",");
  648.          var tmpCurr = _loc1_.c_arrData[group - 1].id.split(",");
  649.          _loc1_.c_objRef.rArrow._x += (tmpCurr.length - tmpPrev.length) * _loc1_.c_iSubNavDist;
  650.          var c_navBtnNo = 0;
  651.          var preGrupBtns = 0;
  652.          var _loc2_ = 0;
  653.          while(_loc2_ < group - 1)
  654.          {
  655.             preGrupBtns += _loc1_.c_arrData[_loc2_].id.split(",").length;
  656.             _loc2_ = _loc2_ + 1;
  657.          }
  658.          _loc2_ = 0;
  659.          while(_loc2_ < _loc1_.c_arrData.length)
  660.          {
  661.             var c_arrTemp = _loc1_.c_arrData[_loc2_].id.split(",");
  662.             var _loc3_ = 0;
  663.             while(_loc3_ < c_arrTemp.length)
  664.             {
  665.                var mc_nav1 = _loc1_.c_objRef["navBtn1_" + _loc2_ + "_" + _loc3_];
  666.                var mc_nav2 = _loc1_.c_objRef["navBtn2_" + _loc2_ + "_" + _loc3_];
  667.                mc_nav2._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist - preGrupBtns * _loc1_.c_iSubNavDist;
  668.                mc_nav2.gotoAndStop("blank");
  669.                mc_nav2.enabled = false;
  670.                mc_nav1.gotoAndStop("normal");
  671.                delete mc_nav1;
  672.                delete mc_nav2;
  673.                c_navBtnNo++;
  674.                _loc3_ = _loc3_ + 1;
  675.             }
  676.             false;
  677.             delete c_arrTemp;
  678.             _loc2_ = _loc2_ + 1;
  679.          }
  680.          delete c_navBtnNo;
  681.          false;
  682.          _loc3_ = 0;
  683.          while(_loc3_ < tmpCurr.length)
  684.          {
  685.             var mc_nav1 = _loc1_.c_objRef["navBtn1_" + (group - 1) + "_" + _loc3_];
  686.             var mc_nav2 = _loc1_.c_objRef["navBtn2_" + (group - 1) + "_" + _loc3_];
  687.             mc_nav2.gotoAndStop("normal");
  688.             mc_nav2.enabled = true;
  689.             mc_nav1.gotoAndStop("groupSelected");
  690.             delete mc_nav1;
  691.             delete mc_nav2;
  692.             _loc3_ = _loc3_ + 1;
  693.          }
  694.          _loc1_.c_preSelecetd = _loc1_.c_strSelecetd;
  695.          _loc1_.c_strSelecetd = String("_" + (group - 1) + "_" + (_loc3_ - 1));
  696.          if(_loc1_.c_preSelecetd != _loc1_.c_strSelecetd)
  697.          {
  698.             _loc1_.c_objTestRef.c_objSoundController.onPartChange();
  699.             _loc1_.c_blnPartChange = true;
  700.          }
  701.          var mc_nav1_Cur = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  702.          var mc_nav2_Cur = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  703.          var mc_nav1_Pre = _loc1_.c_objRef["navBtn1" + _loc1_.c_preSelecetd];
  704.          var mc_nav2_Pre = _loc1_.c_objRef["navBtn2" + _loc1_.c_preSelecetd];
  705.          _loc1_.c_iSeleID = mc_nav2_Cur.id.text;
  706.          _loc1_.strPartType = mc_nav1_Cur.strPartType;
  707.          mc_nav1_Pre.gotoAndStop("normal");
  708.          mc_nav1_Pre.mcHitArea.enabled = true;
  709.          mc_nav2_Cur.gotoAndStop("btnClicked");
  710.          mc_nav2_Cur.enabled = false;
  711.          mc_nav1_Cur.gotoAndStop("btnClicked");
  712.          mc_nav1_Cur.mcHitArea.enabled = false;
  713.          if(_loc1_.c_arrData[group - 1].type == 3)
  714.          {
  715.             var iPairID = _loc1_.getPairID(tmpCurr.length - 1);
  716.             _loc1_.setPairID(iPairID);
  717.             _loc1_.deselectAllPairs(group - 1);
  718.             _loc1_.showPairBoxSelection();
  719.          }
  720.          delete mc_nav2_Cur;
  721.          delete mc_nav1_Cur;
  722.          delete mc_nav1_Pre;
  723.          delete mc_nav1_Pre;
  724.       }
  725.       else
  726.       {
  727.          _loc1_.c_preSelecetd = _loc1_.c_strSelecetd;
  728.          _loc1_.c_strSelecetd = "_" + group + "_" + (fileNo - 1);
  729.          _loc1_.c_iSeleID = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd].id.text;
  730.          _loc1_.strPartType = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd].strPartType;
  731.          var iPairID = _loc1_.getPairID(fileNo - 1);
  732.          _loc1_.setPairID(iPairID);
  733.          _loc1_.deselectAllPairs(group);
  734.          _loc1_.showPairBoxSelection();
  735.       }
  736.       var mc_l = _loc1_.c_objRef.lArrow;
  737.       var mc_r = _loc1_.c_objRef.rArrow;
  738.       if(_loc1_.c_strSelecetd == "_0_0")
  739.       {
  740.          mc_l.enabled = false;
  741.          mc_l.gotoAndStop("blank");
  742.          mc_r.enabled = true;
  743.          mc_r.gotoAndStop("normal");
  744.       }
  745.       else
  746.       {
  747.          mc_l.enabled = true;
  748.          mc_l.gotoAndStop("overState");
  749.          mc_r.enabled = true;
  750.          mc_r.gotoAndStop("normal");
  751.       }
  752.       delete mc_l;
  753.       delete mc_r;
  754.       _loc1_.showResult();
  755.    }
  756.    function nextBtn()
  757.    {
  758.       var _loc1_ = this;
  759.       var fileNo = Number(_loc1_.c_strSelecetd.substr(_loc1_.c_strSelecetd.indexOf("_",1) + 1,_loc1_.c_strSelecetd.length));
  760.       var group = Number(_loc1_.c_strSelecetd.substr(1,_loc1_.c_strSelecetd.indexOf("_",1) - 1));
  761.       var tmpArray = _loc1_.c_arrData[group].id.split(",");
  762.       if(fileNo < tmpArray.length - 1)
  763.       {
  764.          var mc_nav1_Cur = _loc1_.c_objRef["navBtn1_" + group + "_" + (fileNo + 1)];
  765.          var mc_nav2_Cur = _loc1_.c_objRef["navBtn2_" + group + "_" + (fileNo + 1)];
  766.          var mc_nav1_Pre = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  767.          var mc_nav2_Pre = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  768.          mc_nav1_Pre.gotoAndStop("groupSelected");
  769.          mc_nav1_Pre.mcHitArea.enabled = true;
  770.          mc_nav1_Cur.gotoAndStop("btnClicked");
  771.          mc_nav1_Cur.mcHitArea.enabled = false;
  772.          mc_nav2_Pre.gotoAndStop("normal");
  773.          mc_nav2_Pre.enabled = true;
  774.          mc_nav2_Cur.gotoAndStop("btnClicked");
  775.          mc_nav2_Cur.enabled = false;
  776.          delete mc_nav2_Cur;
  777.          delete mc_nav1_Cur;
  778.          delete mc_nav1_Pre;
  779.          delete mc_nav1_Pre;
  780.       }
  781.       if(fileNo == tmpArray.length - 1)
  782.       {
  783.          if(_loc1_.c_arrData[group].type == 3)
  784.          {
  785.             _loc1_.deselectAllPairs(group);
  786.          }
  787.          var tmpPrev = _loc1_.c_arrData[group].id.split(",");
  788.          var tmpCurr = _loc1_.c_arrData[group + 1].id.split(",");
  789.          _loc1_.c_objRef.rArrow._x += (tmpCurr.length - tmpPrev.length) * _loc1_.c_iSubNavDist;
  790.          var c_navBtnNo = 0;
  791.          var preGrupBtns = 0;
  792.          var _loc2_ = 0;
  793.          while(_loc2_ < group + 1)
  794.          {
  795.             preGrupBtns += _loc1_.c_arrData[_loc2_].id.split(",").length;
  796.             _loc2_ = _loc2_ + 1;
  797.          }
  798.          _loc2_ = 0;
  799.          while(_loc2_ < _loc1_.c_arrData.length)
  800.          {
  801.             var c_arrTemp = _loc1_.c_arrData[_loc2_].id.split(",");
  802.             var _loc3_ = 0;
  803.             while(_loc3_ < c_arrTemp.length)
  804.             {
  805.                var mc_nav1 = _loc1_.c_objRef["navBtn1_" + _loc2_ + "_" + _loc3_];
  806.                var mc_nav2 = _loc1_.c_objRef["navBtn2_" + _loc2_ + "_" + _loc3_];
  807.                mc_nav2._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist - preGrupBtns * _loc1_.c_iSubNavDist;
  808.                mc_nav2.gotoAndStop("blank");
  809.                mc_nav2.enabled = false;
  810.                mc_nav1.gotoAndStop("normal");
  811.                delete mc_nav2;
  812.                delete mc_nav1;
  813.                c_navBtnNo++;
  814.                _loc3_ = _loc3_ + 1;
  815.             }
  816.             false;
  817.             delete c_arrTemp;
  818.             _loc2_ = _loc2_ + 1;
  819.          }
  820.          delete c_navBtnNo;
  821.          false;
  822.          _loc3_ = 0;
  823.          while(_loc3_ < tmpCurr.length)
  824.          {
  825.             var mc_nav1 = _loc1_.c_objRef["navBtn1_" + (group + 1) + "_" + _loc3_];
  826.             var mc_nav2 = _loc1_.c_objRef["navBtn2_" + (group + 1) + "_" + _loc3_];
  827.             mc_nav2.gotoAndStop("normal");
  828.             mc_nav2.enabled = true;
  829.             mc_nav1.gotoAndStop("groupSelected");
  830.             delete mc_nav2;
  831.             delete mc_nav1;
  832.             _loc3_ = _loc3_ + 1;
  833.          }
  834.          _loc1_.c_preSelecetd = _loc1_.c_strSelecetd;
  835.          _loc1_.c_strSelecetd = "_" + (group + 1) + "_0";
  836.          if(_loc1_.c_preSelecetd != _loc1_.c_strSelecetd)
  837.          {
  838.             _loc1_.c_objTestRef.c_objSoundController.onPartChange();
  839.             _loc1_.c_blnPartChange = true;
  840.          }
  841.          var mc_nav1_Pre = _loc1_.c_objRef["navBtn1" + _loc1_.c_preSelecetd];
  842.          var mc_nav2_Pre = _loc1_.c_objRef["navBtn2" + _loc1_.c_preSelecetd];
  843.          var mc_nav1_Cur = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  844.          var mc_nav2_Cur = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  845.          _loc1_.c_iSeleID = mc_nav2_Cur.id.text;
  846.          _loc1_.strPartType = mc_nav1_Cur.strPartType;
  847.          mc_nav1_Pre.gotoAndStop("normal");
  848.          mc_nav1_Pre.mcHitArea.enabled = true;
  849.          mc_nav2_Cur.gotoAndStop("btnClicked");
  850.          mc_nav2_Cur.enabled = false;
  851.          mc_nav1_Cur.gotoAndStop("btnClicked");
  852.          mc_nav1_Cur.mcHitArea.enabled = false;
  853.          if(_loc1_.c_arrData[group + 1].type == 3)
  854.          {
  855.             var iPairID = _loc1_.getPairID(0);
  856.             _loc1_.setPairID(iPairID);
  857.             _loc1_.deselectAllPairs(group + 1);
  858.             _loc1_.showPairBoxSelection();
  859.          }
  860.          delete mc_nav2_Cur;
  861.          delete mc_nav1_Cur;
  862.          delete mc_nav1_Pre;
  863.          delete mc_nav1_Pre;
  864.       }
  865.       else
  866.       {
  867.          _loc1_.c_preSelecetd = _loc1_.c_strSelecetd;
  868.          _loc1_.c_strSelecetd = "_" + group + "_" + (fileNo + 1);
  869.          _loc1_.c_iSeleID = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd].id.text;
  870.          _loc1_.strPartType = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd].strPartType;
  871.          var iPairID = _loc1_.getPairID(fileNo + 1);
  872.          _loc1_.setPairID(iPairID);
  873.          _loc1_.deselectAllPairs(group);
  874.          _loc1_.showPairBoxSelection();
  875.       }
  876.       var mc_r = _loc1_.c_objRef.rArrow;
  877.       var mc_l = _loc1_.c_objRef.lArrow;
  878.       if(_loc1_.c_strSelecetd == "_" + (_loc1_.c_arrData.length - 1) + "_" + (tmpArray.length - 1))
  879.       {
  880.          mc_r.enabled = false;
  881.          mc_r.gotoAndStop("blank");
  882.          mc_l.gotoAndStop("normal");
  883.          mc_l.enabled = true;
  884.       }
  885.       else
  886.       {
  887.          mc_l.gotoAndStop("normal");
  888.          mc_l.enabled = true;
  889.          mc_r.enabled = true;
  890.       }
  891.       delete mc_l;
  892.       delete mc_r;
  893.       _loc1_.showResult();
  894.    }
  895.    function setupStage()
  896.    {
  897.       var _loc1_ = this;
  898.       var group = Number(_loc1_.c_strSelecetd.substr(1,_loc1_.c_strSelecetd.indexOf("_",1) - 1));
  899.       var tmpArray = _loc1_.c_arrData[group].id.split(",");
  900.       if(_loc1_.c_arrData[group].type == 3)
  901.       {
  902.          _loc1_.setupStageForNav3();
  903.       }
  904.       else
  905.       {
  906.          var _loc2_ = 0;
  907.          while(_loc2_ < tmpArray.length)
  908.          {
  909.             var mc_btn1 = _loc1_.c_objRef["navBtn1_" + group + "_" + _loc2_];
  910.             mc_btn1.gotoAndStop("groupSelected");
  911.             delete mc_btn1;
  912.             _loc2_ = _loc2_ + 1;
  913.          }
  914.       }
  915.       _loc2_ = 0;
  916.       while(_loc2_ < tmpArray.length)
  917.       {
  918.          var mc_btn2 = _loc1_.c_objRef["navBtn2_" + group + "_" + _loc2_];
  919.          mc_btn2.gotoAndStop("normal");
  920.          mc_btn2.enabled = true;
  921.          delete mc_btn2;
  922.          _loc2_ = _loc2_ + 1;
  923.       }
  924.       false;
  925.       delete group;
  926.       delete tmpArray;
  927.       var c_navBtnNo = 0;
  928.       var preGrupBtns = 0;
  929.       var c_groupNo = 0;
  930.       while(c_groupNo < group)
  931.       {
  932.          preGrupBtns += _loc1_.c_arrData[c_groupNo].id.split(",").length;
  933.          c_groupNo++;
  934.       }
  935.       var c_groupNo = 0;
  936.       while(c_groupNo < _loc1_.c_arrData.length)
  937.       {
  938.          var c_arrTemp = _loc1_.c_arrData[c_groupNo].id.split(",");
  939.          _loc2_ = 0;
  940.          while(_loc2_ < c_arrTemp.length)
  941.          {
  942.             var _loc3_ = _loc1_.c_objRef["navBtn2_" + c_groupNo + "_" + _loc2_];
  943.             _loc3_._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist - preGrupBtns * _loc1_.c_iSubNavDist;
  944.             false;
  945.             c_navBtnNo++;
  946.             _loc2_ = _loc2_ + 1;
  947.          }
  948.          false;
  949.          delete c_arrTemp;
  950.          c_groupNo++;
  951.       }
  952.       var mc_btn1 = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  953.       var mc_btn2 = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  954.       mc_btn1.gotoAndStop("btnClicked");
  955.       mc_btn2.gotoAndStop("btnClicked");
  956.       mc_btn1.enabled = false;
  957.       mc_btn2.enabled = false;
  958.       delete mc_btn2;
  959.       delete mc_btn1;
  960.    }
  961.    function setupStageForNav3()
  962.    {
  963.       var _loc1_ = this;
  964.       var _loc3_ = Number(_loc1_.c_strSelecetd.split("_")[1]);
  965.       var _loc2_ = Number(_loc1_.c_strSelecetd.split("_")[2]);
  966.       var iPairID = _loc1_.getPairID(_loc2_);
  967.       _loc1_.setPairID(iPairID);
  968.       _loc1_.deselectAllPairs(_loc3_);
  969.       _loc1_.showPairBoxSelection();
  970.    }
  971.    function showResult()
  972.    {
  973.       var _loc1_ = this;
  974.       var iPrePart = Number(_loc1_.c_preSelecetd.split("_")[1]);
  975.       var _loc3_ = Number(_loc1_.c_strSelecetd.split("_")[1]);
  976.       var iQueNo = Number(_loc1_.c_strSelecetd.split("_")[2]);
  977.       var skill = _loc1_.getSkillName();
  978.       var _loc2_ = _loc1_.c_objTestRef.c_objScreenData.DOC.section[_loc3_].attributes.templateType;
  979.       var iTopNavY = _loc1_.c_objTestRef.c_objScreenData.DOC.section[_loc3_].attributes.navYPos;
  980.       _loc1_.setTopNavPosition(iTopNavY);
  981.       if(iPrePart != _loc3_)
  982.       {
  983.          _loc1_.c_objTestRef.onPartChange(iPrePart,_loc3_);
  984.       }
  985.       _loc1_.c_objTestRef.showScreen(_loc2_,_loc1_.c_strSelecetd,_loc1_.c_iSeleID,skill);
  986.       if(_loc2_ == "MCQType_7" || _loc2_ == "PairedMCQScrolling" || _loc2_ == "PairedMCQExtract")
  987.       {
  988.          _loc1_.c_objTestRef.showQuesSelection(_loc2_,iQueNo + 1);
  989.          if(_loc1_.c_objTestRef.c_strMode == "Continue")
  990.          {
  991.             if(!_loc1_.c_objTestRef.c_blnContinueL)
  992.             {
  993.                _loc1_.c_objTestRef.c_blnContinueL = true;
  994.             }
  995.          }
  996.       }
  997.       _loc1_.generateHeader();
  998.    }
  999.    function markUnAttempted()
  1000.    {
  1001.       var _loc1_ = this;
  1002.       if(_loc1_.c_objTestRef.c_strMode != "Review")
  1003.       {
  1004.          _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd].nav2Atmpt.gotoAndStop("NOTATTEMPTED");
  1005.          var _loc2_ = Number(_loc1_.c_strSelecetd.split("_")[1]);
  1006.          if(_loc1_.c_arrData[_loc2_].type == 3)
  1007.          {
  1008.             var _loc3_ = Number(_loc1_.c_strSelecetd.split("_")[2]);
  1009.             var mcNavPair = _loc1_.c_objRef["pairNav_" + _loc2_ + "_" + _loc1_.c_iCPairID];
  1010.             var strClipName = _loc3_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1011.             mcNavPair[strClipName].nav1Atmpt.gotoAndStop("NOTATTEMPTED");
  1012.          }
  1013.          else
  1014.          {
  1015.             _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd].nav1Atmpt.gotoAndStop("NOTATTEMPTED");
  1016.          }
  1017.       }
  1018.       _loc1_.generateHeader();
  1019.    }
  1020.    function generateHeader()
  1021.    {
  1022.       var _loc1_ = this;
  1023.       var _loc2_ = _loc1_.c_strSelecetd.split("_")[1];
  1024.       var skill = _loc1_.c_arrData[_loc2_].skill;
  1025.       var _loc3_ = undefined;
  1026.       switch(skill)
  1027.       {
  1028.          case "reading":
  1029.             _loc3_ = "Reading";
  1030.             break;
  1031.          case "listening":
  1032.             _loc3_ = "Listening";
  1033.             break;
  1034.          case "writing":
  1035.             _loc3_ = "Writing";
  1036.             break;
  1037.          case "use of english":
  1038.             _loc3_ = "Use of English";
  1039.       }
  1040.       if(_loc1_.c_arrData[_loc2_].skill == "writing")
  1041.       {
  1042.          var _exactPartNo = Number(_loc2_) + 1;
  1043.       }
  1044.       else if(_loc1_.c_arrData[_loc2_].skill == "reading" || _loc1_.c_arrData[_loc2_].skill == "listening" || _loc1_.c_arrData[_loc2_].skill == "use of english")
  1045.       {
  1046.          var _exactPartNo = Number(_loc2_) + 1;
  1047.       }
  1048.       if(_loc1_.c_arrData[_loc2_].skill == "writing")
  1049.       {
  1050.          if(_exactPartNo == 1)
  1051.          {
  1052.             var srtHeaderText = "<b>" + _loc3_ + " Part " + Number(_exactPartNo) + " (Question " + Number(_loc1_.c_iSeleID) + ") " + "</b>";
  1053.          }
  1054.          else
  1055.          {
  1056.             var srtHeaderText = "<b>" + _loc3_ + " Part " + Number(_exactPartNo) + " (Questions " + Number(_loc1_.c_iSeleID) + "-" + (Number(_loc1_.c_objTestRef.c_objScreenData.DOC.section[_loc1_.c_objTestRef.c_iPartNo].question.text.length) - 1 + Number(_loc1_.c_iSeleID)) + ") " + "</b>";
  1057.          }
  1058.       }
  1059.       else
  1060.       {
  1061.          var srtHeaderText = "<b>" + _loc3_ + " Part " + Number(_exactPartNo) + "</b>";
  1062.       }
  1063.       _loc1_.c_objTestRef.updateHeader(srtHeaderText);
  1064.    }
  1065.    function markAttempted()
  1066.    {
  1067.       var _loc1_ = this;
  1068.       if(_loc1_.c_objTestRef.c_strMode != "Review")
  1069.       {
  1070.          _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd].nav2Atmpt.gotoAndStop("ATTEMPTED");
  1071.          var _loc2_ = Number(_loc1_.c_strSelecetd.split("_")[1]);
  1072.          if(_loc1_.c_arrData[_loc2_].type == 3)
  1073.          {
  1074.             var mcNavPair = _loc1_.c_objRef["pairNav_" + _loc2_ + "_" + _loc1_.c_iCPairID];
  1075.             var _loc3_ = Number(_loc1_.c_strSelecetd.split("_")[2]);
  1076.             var strClipName = _loc3_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1077.             mcNavPair[strClipName].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1078.          }
  1079.          else
  1080.          {
  1081.             _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1082.          }
  1083.       }
  1084.       _loc1_.generateHeader();
  1085.    }
  1086.    function destroyNav()
  1087.    {
  1088.       var _loc2_ = this;
  1089.       var _loc1_ = 0;
  1090.       while(_loc1_ < _loc2_.c_arrData.length)
  1091.       {
  1092.          var c_arrTemp = _loc2_.c_arrData[_loc1_].id.split(",");
  1093.          if(_loc2_.c_arrData[_loc1_].type == 3)
  1094.          {
  1095.             var iPairCount = c_arrTemp.length / 2;
  1096.             var _loc3_ = 0;
  1097.             while(_loc3_ < c_arrTemp.length)
  1098.             {
  1099.                _loc2_.c_objRef["navBtn2_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1100.                _loc2_.c_objRef["pairNav_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1101.                if(_loc3_ < iPairCount)
  1102.                {
  1103.                   _loc2_.c_objRef["pairNav_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1104.                }
  1105.                _loc3_ = _loc3_ + 1;
  1106.             }
  1107.             _loc2_.c_objRef["partType" + _loc1_].unloadMovie();
  1108.          }
  1109.          else
  1110.          {
  1111.             _loc3_ = 0;
  1112.             while(_loc3_ < c_arrTemp.length)
  1113.             {
  1114.                _loc2_.c_objRef["navBtn1_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1115.                _loc2_.c_objRef["navBtn2_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1116.                _loc3_ = _loc3_ + 1;
  1117.             }
  1118.             _loc2_.c_objRef["partType" + _loc1_].unloadMovie();
  1119.             if(_loc2_.c_arrData[_loc1_].type == 2)
  1120.             {
  1121.                _loc2_.c_objRef["navBtn1_2_border1_" + _loc1_].unloadMovie();
  1122.                _loc2_.c_objRef["navBtn1_2_border2_" + _loc1_].unloadMovie();
  1123.             }
  1124.          }
  1125.          _loc1_ = _loc1_ + 1;
  1126.       }
  1127.       _loc2_.c_objRef.rArrow.unloadMovie();
  1128.       _loc2_.c_objRef.lArrow.unloadMovie();
  1129.       delete _loc2_.c_objRef;
  1130.    }
  1131.    function reviewNav(arrAnswers, strMode, arrAttemp)
  1132.    {
  1133.       var _loc2_ = this;
  1134.       var len = arrAttemp.length;
  1135.       var strPartTwo = arrAttemp[len - 1];
  1136.       var strPartOne = arrAttemp[len - 2];
  1137.       _loc2_.c_arrAttempted = arrAttemp;
  1138.       var i = 0;
  1139.       var _loc3_ = 0;
  1140.       var _loc1_ = 0;
  1141.       if(strMode == "Continue")
  1142.       {
  1143.          _loc3_ = 0;
  1144.          while(_loc3_ < _loc2_.c_arrData.length)
  1145.          {
  1146.             var arrTmp = _loc2_.c_arrData[_loc3_].id.split(",");
  1147.             var iNavType = _loc2_.c_arrData[_loc3_].type;
  1148.             _loc1_ = 0;
  1149.             while(_loc1_ < arrTmp.length)
  1150.             {
  1151.                var iPairNo = _loc2_.getPairID(_loc1_);
  1152.                if(arrAttemp[i] != null || arrAttemp[i] != undefined)
  1153.                {
  1154.                   if(iNavType == 3)
  1155.                   {
  1156.                      var mcNavPair = _loc2_.c_objRef["pairNav_" + _loc3_ + "_" + iPairNo];
  1157.                      var strClipName = _loc1_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1158.                      mcNavPair[strClipName].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1159.                   }
  1160.                   else
  1161.                   {
  1162.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1163.                   }
  1164.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("ATTEMPTED");
  1165.                }
  1166.                i++;
  1167.                _loc1_ = _loc1_ + 1;
  1168.             }
  1169.             delete arrTmp;
  1170.             _loc3_ = _loc3_ + 1;
  1171.          }
  1172.       }
  1173.       else if(strMode == "Review")
  1174.       {
  1175.          var strPartNo = _loc2_.c_strSelecetd.split("_")[1];
  1176.          var strPartNoInt = Number(strPartNo + 1);
  1177.          var tt = _loc2_.c_strSelecetd.split("_")[2];
  1178.          var skill = _loc2_.c_arrData[strPartNo].skill;
  1179.          _loc3_ = 0;
  1180.          while(_loc3_ < _loc2_.c_arrData.length)
  1181.          {
  1182.             var arrTmp = _loc2_.c_arrData[_loc3_].id.split(",");
  1183.             var iNavType = _loc2_.c_arrData[_loc3_].type;
  1184.             _loc1_ = 0;
  1185.             while(_loc1_ < arrTmp.length)
  1186.             {
  1187.                if(arrAnswers[i] == "1" || arrAnswers[i] == "2")
  1188.                {
  1189.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("CORRECT");
  1190.                   if(iNavType == 3)
  1191.                   {
  1192.                      var iPairNo = _loc2_.getPairID(_loc1_);
  1193.                      var mcNavPair = _loc2_.c_objRef["pairNav_" + _loc3_ + "_" + iPairNo];
  1194.                      var strPairName = _loc1_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1195.                      mcNavPair[strPairName].nav1Atmpt.gotoAndStop("CORRECT");
  1196.                   }
  1197.                   else
  1198.                   {
  1199.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("CORRECT");
  1200.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].attempted = true;
  1201.                   }
  1202.                }
  1203.                else if(arrAnswers[i] == "0")
  1204.                {
  1205.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("INCORRECT");
  1206.                   if(iNavType == 3)
  1207.                   {
  1208.                      var iPairNo = _loc2_.getPairID(_loc1_);
  1209.                      var mcNavPair = _loc2_.c_objRef["pairNav_" + _loc3_ + "_" + iPairNo];
  1210.                      var strPairName = _loc1_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1211.                      mcNavPair[strPairName].nav1Atmpt.gotoAndStop("INCORRECT");
  1212.                   }
  1213.                   else
  1214.                   {
  1215.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("INCORRECT");
  1216.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].attempted = true;
  1217.                   }
  1218.                }
  1219.                else if(_loc2_.c_objTestRef.c_strSkill.toLowerCase() == "writing" && (arrAttemp[_loc3_] != null || arrAttemp[_loc3_] != undefined))
  1220.                {
  1221.                   _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1222.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("ATTEMPTED");
  1223.                   _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].attempted = true;
  1224.                }
  1225.                else
  1226.                {
  1227.                   _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("RNOT");
  1228.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("RNOT");
  1229.                   _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].attempted = false;
  1230.                }
  1231.                _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].strAnsGiven = arrAttemp[i];
  1232.                i++;
  1233.                _loc1_ = _loc1_ + 1;
  1234.             }
  1235.             delete arrTmp;
  1236.             _loc3_ = _loc3_ + 1;
  1237.          }
  1238.          _loc2_.generateHeader();
  1239.       }
  1240.       delete strMode;
  1241.       delete arrAnswers;
  1242.    }
  1243.    function getSkillName()
  1244.    {
  1245.       var _loc1_ = this.c_strSelecetd.split("_")[1];
  1246.       return this.c_arrData[_loc1_].skill;
  1247.    }
  1248. }
  1249.