home *** CD-ROM | disk | FTP | other *** search
/ Chip 2009 November / Chip_2009.11_CD.iso / I386 / MIGRATE.JS_ / migrate.js
Encoding:
Text File  |  2007-01-24  |  23.3 KB  |  949 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6. var g_bMigration                        = 0;
  7. var gselectedISPIndx                    = 0;
  8. var gCurrISPURL                         = "about:blank";
  9. var gpgType                             = -1;
  10. var gLastProg                           = 0;
  11. var PAGE_REFDIAL                        = 0;
  12. var PAGE_ISPLIST                        = 1;
  13. var PAGE_ISPDIAL                        = 2;
  14. var PAGE_ISPPAGE                        = 3;
  15. var PAGE_SERVERR                        = 4;
  16. var PAGE_REFDRDY                        = 5;
  17. var PAGE_MIGDRDY                        = 6;
  18. var PAGE_REGDIAL                        = 7;
  19.  
  20. var PAGETYPE_ISP_NORMAL                 =  0x20;
  21. var PAGETYPE_ISP_TOS                    =  0x40;
  22. var PAGETYPE_ISP_FINISH                 =  0x80;
  23. var PAGETYPE_ISP_CUSTOMFINISH           =  0x100;
  24.  
  25. var PAGEFLAG_SAVE_CHECKBOX              =  1;
  26.  
  27.  
  28. var L_REF_STATUS_DIALING_Text           = "═αßε≡ φε∞σ≡α...";
  29. var L_REF_STATUS_LOCATING_Text          = "╧εΦ±Ω ±δ≤µß√";
  30. var L_REF_STATUS_CONNECTING_Text        = "╧εΣΩδ■≈σφΦσ Ω ±δ≤µßσ";
  31. var L_REF_STATUS_CONNECTED_Text         = "╧εΣΩδ■≈σφε";
  32.  
  33. var L_REF_STATUS_DOWNLOAD_Text          = "╟απ≡≤τΩα ±ΓσΣσφΦΘ ε ∩ε±≥αΓ∙ΦΩα⌡ ≤±δ≤π ╚φ≥σ≡φσ≥α...";
  34. var L_REFDIALTITLE_TEXT                 = "╧εΦ±Ω ∩ε±≥αΓ∙ΦΩεΓ ≤±δ≤π ╚φ≥σ≡φσ≥α Γ Γα°σΘ εßδα±≥Φ";
  35. var L_REFDIALINTRO_TEXT                 = "╩ε≡∩ε≡α÷Φ  ╠αΘΩ≡ε±ε⌠≥ ∩εδ≤≈ασ≥ ±∩Φ±εΩ ∩ε±≥αΓ∙ΦΩεΓ ±δ≤µß ╚φ≥σ≡φσ≥α (ISP) Γ Γα°σ∞ πε≡εΣσ ΦδΦ εßδα±≥Φ...";
  36.  
  37.  
  38. var REFERALDLCOMPLETED = "{E9E228E0-7A58-11D3-8B99-00A0C91E7F3C}";
  39.  
  40. var gCurrPage = -1;
  41. var gDialerr = 0;
  42. var TEMP_KEY = "\\Temp";
  43. var ISPINDX = "ISPindex";
  44. var g_IgnoreDialErr = false;
  45.  
  46. var g_CustomISPName = null;
  47.  
  48. function SetCustomISPName(Name)
  49. {
  50.     g_CustomISPName = Name;
  51. }
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59. function DisableButtons()
  60. {
  61.     g.MigPagePlsWaitText.style.visibility = "visible";
  62.  
  63.     try
  64.     {
  65.         g.btnNext.disabled=true;
  66.     }
  67.     catch(e) {}
  68.     try
  69.     {
  70.         g.btnBack.disabled=true;
  71.     }
  72.     catch(e) {}
  73.     try
  74.     {
  75.         InitButtons();
  76.     }
  77.     catch(e) {}
  78. }
  79.  
  80.  
  81.  
  82.  
  83.  
  84. var L_drdyref_2_ICS_Text = "╤Φ±≥σ∞α Windows ß≤Σσ≥ Φ±∩εδⁿτεΓα≥ⁿ εß∙σσ ∩εΣΩδ■≈σφΦσ Ω ╚φ≥σ≡φσ≥≤ Σδ  ∩σ≡σφε±α ±≤∙σ±≥Γ≤■∙Φ⌡ ∩α≡α∞σ≥≡εΓ ≤≈σ≥φεΘ τα∩Φ±Φ ╚φ≥σ≡φσ≥α, ≈≥εß√ Φ±∩εδⁿτεΓα≥ⁿ Φ⌡ ± φεΓ√∞ Ωε∞∩ⁿ■≥σ≡ε∞";
  85.  
  86. var L_drdyref_4_ICS_Text = "╧≡σΣε±≥αΓⁿ≥σ ≤Ωαταφφ√σ φΦµσ ±ΓσΣσφΦ  Φ φαµ∞Φ≥σ Ωφε∩Ω≤ <b>─αδσσ</b>. ╫≥εß√ ∩≡εΣεδµΦ≥ⁿ ≡αßε≥≤ ßστ ∩σ≡σφε±α Σαφφ√⌡ ±≤∙σ±≥Γ≤■∙σΘ τα∩Φ±Φ, φαµ∞Φ≥σ Ωφε∩Ω≤ <b>╧≡ε∩≤±≥Φ≥ⁿ</b>.";
  87.  
  88. var L_drdymig_2_ICS_Text = "╤Φ±≥σ∞α Windows ß≤Σσ≥ Φ±∩εδⁿτεΓα≥ⁿ εß∙σσ ∩εΣΩδ■≈σφΦσ Ω ╚φ≥σ≡φσ≥≤, ≈≥εß√ φα≈α≥ⁿ ∩σ≡σ≤±≥αφεΓΩ≤ ±≤∙σ±≥Γ≤■∙σΘ ≤≈σ≥φεΘ τα∩Φ±Φ ╚φ≥σ≡φσ≥α.   ╫≥εß√ φα≈α≥ⁿ ∩εΣΩδ■≈σφΦσ, φαµ∞Φ≥σ Ωφε∩Ω≤  <b>─αδσσ</b>.";
  89.  
  90. var L_drdymig_4_ICS_Text = "╧≡σΣε±≥αΓⁿ≥σ ≤Ωαταφφ√σ φΦµσ ±ΓσΣσφΦ  Φ φαµ∞Φ≥σ Ωφε∩Ω≤ <b>─αδσσ</b>. ╫≥εß√ ∩≡εΣεδµΦ≥ⁿ ≡αßε≥≤ ßστ ∩σ≡σ≤±≥αφεΓΩΦ ±≤∙σ±≥Γ≤■∙σΘ ≤≈σ≥φεΘ τα∩Φ±Φ ╚φ≥σ≡φσ≥α, φαµ∞Φ≥σ Ωφε∩Ω≤ <b>╧≡ε∩≤±≥Φ≥ⁿ</b>.";
  91.  
  92.  
  93. var g_ISPAuto = 1;
  94. var g_CalledFromDrdyref = false;
  95. function drdyref_LoadMe(btnSW)
  96. {
  97.     gCurrPage = PAGE_REFDRDY;
  98.     InitFrameRef();
  99.     if (g != null)
  100.     {
  101.         g_FirstFocusElement = g.btnNext;
  102.         g_FirstFocusElement.focus();
  103.     }
  104.  
  105.     InitNewButtons();
  106.  
  107.     var fTapi = TapiObj.IsTAPIConfigured;
  108.     if (!fTapi && !g_bTapiDone)
  109.     {
  110.         g.drdyref_ctrl1.style.visibility="visible";
  111.  
  112.         if(g_CountryIdx < 0)
  113.         {
  114.             g_CountryIdx = TapiObj.get_CountryIndex;
  115.         }
  116.  
  117.         g.selCountry.selectedIndex=g_CountryIdx;
  118.  
  119.         g.edtAreaCode.value    = TapiObj.get_AreaCode;
  120.  
  121.         if(1 == TapiObj.get_PhoneSystem)
  122.             g.radioTouchToneYes.checked = true; 
  123.         else
  124.             g.radioTouchToneNo.checked = true; 
  125.  
  126.     }
  127.  
  128.     if (true == ApiObj.get_OOBEDebugMode)
  129.     {
  130.         g.spnOutsideLine.style.visibility = "visible";
  131.     }
  132.     drdyref_SetOutsideLine( );
  133.  
  134.  
  135.     if (g_ISPAuto == 1)
  136.     {
  137.         g.radioYesISPAuto.checked = true;
  138.         g.radioNoISPAuto.checked  = false;
  139.     }
  140.     else
  141.     {
  142.         g.radioYesISPAuto.checked = false;
  143.         g.radioNoISPAuto.checked  = true;
  144.     }
  145.  
  146.     g_CalledFromDrdyref = true;
  147.     g.btnNext.onclick = ISPNextBtnHandler;
  148.     g.btnSkip.onclick = ISPSkipBtnHandler;
  149. }
  150.  
  151.  
  152. function checkISPSetupType()
  153. {
  154.     if (g.radioYesISPAuto.checked == true)
  155.         g_ISPAuto = 1;
  156.     else
  157.         g_ISPAuto = 2;
  158. }
  159.  
  160.  
  161. function drdyref_OutsideLineClicked( )
  162.  
  163. {
  164.     try
  165.     {
  166.         if (null == g.event)
  167.             return;
  168.     }
  169.     catch(e)
  170.     {
  171.         return;
  172.     }
  173.  
  174.     drdyref_SetOutsideLine( );
  175. }
  176.  
  177. function drdyref_SetOutsideLine( )
  178. {
  179.     if (true == g.radioOutsideLineYes.checked &&
  180.         "visible" == g.spnOutsideLine.style.visibility)
  181.     {
  182.         g.spnOutsideLineNumber.style.visibility = "visible";
  183.         g.edtOutsideLineNumber.style.visibility = "visible";
  184.         g.edtOutsideLineNumber.value = TapiObj.get_DialOut;
  185.         if (0 == g.edtOutsideLineNumber.value.length)
  186.         {
  187.             g.edtOutsideLineNumber.value = "9";
  188.         }
  189.     }
  190.     else
  191.     {
  192.         g.edtOutsideLineNumber.value = "";
  193.         g.spnOutsideLineNumber.style.visibility = "hidden";
  194.         g.spnOutsideLine.style.visibility = "hidden";
  195.     }
  196.  
  197. }
  198.  
  199. function drdymig_LoadMe()
  200. {
  201.  
  202.     gCurrPage = PAGE_MIGDRDY;
  203.     InitFrameRef();
  204.     if (g != null)
  205.     {
  206.         g_FirstFocusElement = g.btnNext;
  207.         g_FirstFocusElement.focus();
  208.     }
  209.  
  210.     InitNewButtons();
  211.  
  212.     var fTapi = TapiObj.IsTAPIConfigured;
  213.     if (!fTapi && !g_bTapiDone)
  214.     {
  215.         g.drdyref_ctrl1.style.visibility="visible";
  216.  
  217.         if(g_CountryIdx < 0)
  218.         {
  219.             g_CountryIdx = TapiObj.get_CountryIndex;
  220.         }
  221.  
  222.         g.selCountry.selectedIndex=g_CountryIdx;
  223.  
  224.         g.edtAreaCode.value    = TapiObj.get_AreaCode;
  225.  
  226.         if(1 == TapiObj.get_PhoneSystem)
  227.             g.radioTouchToneYes.checked = true; 
  228.         else
  229.             g.radioTouchToneNo.checked = true; 
  230.  
  231.     }
  232.  
  233.     g.btnNext.onclick = ISPNextBtnHandler;
  234.     g.btnSkip.onclick = ISPSkipBtnHandler;
  235. }
  236.  
  237. var bMSgDisplay = true;
  238.  
  239. function DialIfNumberInPhonebook()
  240. {
  241.     if (window.external.CheckPhoneBook("msobe.isp"))
  242.     {
  243.             GoToDialingPage();
  244.     }
  245.     else
  246.     {
  247.         Navigate("isperror\\isppberr.htm");
  248.     }
  249. }
  250.  
  251. function ISPNextBtnHandler()
  252. {
  253.  
  254.     trace("ISPNextBtnHandler: CurrentPage: " + gCurrPage);
  255.     switch (gCurrPage)
  256.     {
  257.         case PAGE_REFDRDY:
  258.         case PAGE_MIGDRDY:
  259.         {
  260.             if (g.drdyref_ctrl1.style.visibility == "visible")
  261.             {
  262.                 TapiObj.set_AreaCode = g.edtAreaCode.value;
  263.                 TapiObj.set_CountryIndex = g.selCountry.selectedIndex;
  264.  
  265.                 if (g.PulseToneDialing.style.visibility != "hidden")
  266.                 {
  267.                     if (g.radioTouchToneYes.checked)
  268.                         TapiObj.set_PhoneSystem = 1;
  269.                     else
  270.                         TapiObj.set_PhoneSystem = 0;
  271.                 }
  272.  
  273.             }
  274.  
  275.             if ("visible" == g.spnOutsideLine.style.visible &&
  276.                 true == g.radioOutsideLineYes.checked &&
  277.                 "visible" == g.spnOutsideLineNumber.style.visibility
  278.                 )
  279.             {
  280.               TapiObj.set_DialOut = g.edtOutsideLineNumber.value;
  281.             }
  282.  
  283.             if (!g_CalledFromDrdyref)
  284.             {
  285.                 DialIfNumberInPhonebook();
  286.             }
  287.             else
  288.             {
  289.                 g_CalledFromDrdyref = false;
  290.  
  291.                 if (g_ISPAuto == 1)
  292.                     DialIfNumberInPhonebook();
  293.                 else
  294.                     GoNext();  
  295.             }
  296.  
  297.             break;
  298.         }
  299.  
  300.         case PAGE_REFDIAL:
  301.         {
  302.             
  303.             break;
  304.         }
  305.         case PAGE_ISPLIST:
  306.         {
  307.             
  308.             
  309.             
  310.             
  311.             
  312.             
  313.             
  314.             
  315.             
  316.             if (-1 == gselectedISPIndx)
  317.             {
  318.                 
  319.                 if (bMSgDisplay && (g.selISPDropList.length != 1))
  320.                 {
  321.                     
  322.                     
  323.                     
  324.                     bMSgDisplay = false;
  325.  
  326.                     
  327.                     
  328.                     g.selISPDropList.style.display = "none";
  329.                     g.drdyisp_4_spanID.style.display = "none";
  330.                     g.btnManual.style.display = "none";
  331.                     g.ManualBtnLocalText01.style.display = "none";
  332.                     g.MigListTitle.style.display="none";
  333.                     g.MigListTxt.style.display="none";
  334.                     g.MigListTxt2.style.display="none";
  335.                     
  336.                     gselectedISPIndx = -1;
  337.  
  338.                     g.MigListNoOffer.style.display="inline";
  339.                     g.MigListTxtNoOffer.style.display="inline";
  340.                 }
  341.                 else
  342.                 {
  343.                     GoNavigate(CKPT_OEMCUST);
  344.                 }
  345.  
  346.             }
  347.             else
  348.             {
  349.                 
  350.                 
  351.                 GoNavigate(CKPT_MIGDIAL);
  352.             }
  353.             break;
  354.         }
  355.         case PAGE_ISPDIAL:
  356.         {
  357.             break;
  358.         }
  359.         case PAGE_ISPPAGE:  
  360.         {
  361.             trace("ISPNextBtnHandler: gpgType: " + gpgType);
  362.             switch (gpgType)
  363.             {
  364.                 case PAGETYPE_ISP_NORMAL:
  365.                 case PAGETYPE_ISP_TOS:
  366.                 {
  367.                     DisableButtons();
  368.                     if (false == window.external.Migrate_GoNext())
  369.                     {
  370.                         OnServerErrorEx(0);
  371.                     }
  372.                     break;
  373.                 }
  374.                 case PAGETYPE_ISP_FINISH:
  375.                 {
  376.                     DisableButtons();
  377.                     var szINSURL = window.external.get_URL(1);
  378.                     if (true == window.external.ProcessINS(szINSURL))
  379.                     {
  380.                         
  381.                         
  382.                         
  383.                         
  384.                         if (HasNetwork())
  385.                         {
  386.                             window.external.FirewallPreferredConnection(false);
  387.                         }
  388.                         GoNavigate(CKPT_OEMCUST);
  389.                     }
  390.                     else
  391.                         Navigate("isperror\\ispins.htm");
  392.                     break;
  393.                 }
  394.                 case PAGETYPE_ISP_CUSTOMFINISH:
  395.                 {
  396.                     break;
  397.                 }
  398.                 case PAGE_SERVERR:
  399.                 {
  400.                     
  401.                     GoNavigate(CKPT_MIGLIST);
  402.  
  403.                     break;
  404.                 }
  405.  
  406.             }
  407.             break;
  408.         }
  409.     }
  410.  
  411. }
  412.  
  413. function ISPBackBtnHandler()
  414. {
  415.     g_bMigration = 0;
  416.     switch (gCurrPage)
  417.     {
  418.         case PAGE_REFDIAL:
  419.         {
  420.             g_IgnoreDialErr = true;
  421.             window.external.Hangup();
  422.             PopCKPT(CKPT_REFDIAL); 
  423.             GoBack();  
  424.             break;
  425.         }
  426.         case PAGE_ISPLIST:
  427.         {
  428.             window.external.Hangup();
  429.             if (!bMSgDisplay)
  430.             {
  431.                 bMSgDisplay = true;
  432.  
  433.                 g.selISPDropList.style.display = "inline";
  434.                 g.drdyisp_4_spanID.style.display = "inline";
  435.                 g.btnManual.style.display = "inline";
  436.                 g.ManualBtnLocalText01.style.display = "inline";
  437.                 g.MigListTitle.style.display="inline";
  438.                 g.MigListTxt.style.display="inline";
  439.                 g.MigListTxt2.style.display="inline";
  440.                 
  441.                 g.MigListTxtNoOffer.style.display="none";
  442.                 g.MigListNoOffer.style.display="none";
  443.                 g.selISPDropList.focus();
  444.  
  445.             }
  446.             else
  447.             {
  448.                 GoBack();
  449.             }
  450.             break;
  451.         }
  452.         case PAGE_ISPDIAL:
  453.         {
  454.             g_IgnoreDialErr = true;
  455.             window.external.Hangup();
  456.             PopCKPT(CKPT_MIGDIAL); 
  457.             GoBack();  
  458.             break;
  459.         }
  460.         case PAGE_ISPPAGE:
  461.         {
  462.             DisableButtons();
  463.             if (false == window.external.Migrate_GoBack())
  464.             {
  465.                 window.external.Hangup();
  466.                 PopCKPT(CKPT_MIGDIAL); 
  467.                 GoBack();
  468.             }
  469.             break;
  470.         }
  471.         case PAGE_REGDIAL:
  472.         {
  473.             window.external.Hangup();
  474.             GoBack();
  475.             break;
  476.         }
  477.         case PAGE_SERVERR:
  478.         {
  479.             window.external.Hangup();
  480.             PopCKPT(); 
  481.             GoNavigate(CKPT_MIGLIST);
  482.  
  483.             break;
  484.         }
  485.     }
  486. }
  487.  
  488. function ISPSkipBtnHandler()
  489. {
  490.     window.external.Hangup();
  491.     PopCKPT();
  492.     g_bMigration = 0;
  493.     GoCancel();
  494. }
  495.  
  496.  
  497. function HandleISPDropListChange()
  498. {
  499.     gselectedISPIndx = g.selISPDropList.selectedIndex;
  500.     
  501.     ApiObj.set_RegValue(HKEY_LOCAL_MACHINE, OOBE_MAIN_REG_KEY + TEMP_KEY, ISPINDX, gselectedISPIndx);
  502.     
  503.     
  504.     
  505.     if ((gselectedISPIndx+1) == g.selISPDropList.length)
  506.         gselectedISPIndx = -1;
  507. }
  508.  
  509.  
  510.  
  511.  
  512. function Refdial_LoadMe()
  513. {
  514.  
  515.     InitFrameRef()
  516.     g.btnNext.disabled = true;
  517.     InitNewButtons();
  518.     gCurrPage = PAGE_REFDIAL;
  519.     g.btnNext.onclick = ISPNextBtnHandler;
  520.     g.btnBack.onclick = ISPBackBtnHandler;
  521.     g.btnSkip.onclick = ISPSkipBtnHandler;
  522.     if (g != null && g.spnReferralStatus != null)
  523.         g.spnReferralStatus.innerText = L_REF_STATUS_DIALING_Text;
  524.  
  525.     setTimeout("DoReferralDial()" , 40); 
  526.  
  527. }
  528.  
  529. function Miglist_Manual_Btn_Handler()
  530. {
  531.     GoNavigate(CKPT_ICONNECT);
  532. }
  533.  
  534.  
  535. function Miglist_LoadMe()
  536. {
  537.     InitFrameRef()
  538.     InitNewButtons();
  539.     gCurrPage = PAGE_ISPLIST;
  540.     g.btnNext.onclick = ISPNextBtnHandler;
  541.     g.btnBack.onclick = ISPBackBtnHandler;
  542.     g.btnSkip.onclick = ISPSkipBtnHandler;
  543.     g.selISPDropList.style.width = 300;
  544.  
  545.     g.btnManual.onmouseover = HandleNextButtonMouseOver;
  546.     g.btnManual.onmouseout  = HandleNextButtonMouseOut;
  547.     g.btnManual.onmousedown = HandleNextButtonMouseDown;
  548.     g.btnManual.className="newbuttonsNext";
  549.     g.btnManual.onclick = Miglist_Manual_Btn_Handler;
  550.  
  551.     try
  552.     {
  553.         gselectedISPIndx = ApiObj.get_RegValue(HKEY_LOCAL_MACHINE, OOBE_MAIN_REG_KEY + TEMP_KEY, ISPINDX)
  554.     }
  555.     catch (e)
  556.     {
  557.         gselectedISPIndx = 0;
  558.     }
  559.     if (g.selISPDropList.length <= 0)
  560.     {
  561.         
  562.         PopCKPT(); 
  563.         ISPBackBtnHandler();
  564.     }
  565.     else if (g.selISPDropList.length == 1)
  566.     {
  567.         
  568.         gselectedISPIndx = -1;
  569.         g.MigListNoOffer.style.display="inline";
  570.         g.MigListTxtNoOffer.style.display="inline";
  571.     }
  572.     else
  573.     {
  574.         if ((gselectedISPIndx + 1) > g.selISPDropList.length)
  575.             gselectedISPIndx = 0;
  576.  
  577.         g.selISPDropList.onchange = HandleISPDropListChange;
  578.         g.selISPDropList.selectedIndex = gselectedISPIndx;
  579.         
  580.  
  581.         
  582.         if ((gselectedISPIndx + 1) == g.selISPDropList.length)
  583.             gselectedISPIndx = -1;
  584.  
  585.         g.selISPDropList.style.display = "inline";
  586.         g.drdyisp_4_spanID.style.display = "inline";
  587.         g.btnManual.style.display = "inline";
  588.         g.ManualBtnLocalText01.style.display = "inline";
  589.         g.MigListTitle.style.display="inline";
  590.         g.MigListTxt.style.display="inline";
  591.         g.MigListTxt2.style.display="inline";
  592.         
  593.         g.selISPDropList.focus();
  594.  
  595.     }
  596. }
  597.  
  598.  
  599. function Migdial_LoadMe()
  600. {
  601.  
  602.     InitFrameRef()
  603.     g.btnNext.disabled = true;
  604.     InitNewButtons();
  605.     gCurrPage = PAGE_ISPDIAL;
  606.  
  607.     g.btnNext.onclick = ISPNextBtnHandler;
  608.     g.btnBack.onclick = ISPBackBtnHandler;
  609.     g.btnSkip.onclick = ISPSkipBtnHandler;
  610.     try
  611.     {
  612.         gselectedISPIndx = ApiObj.get_RegValue(HKEY_LOCAL_MACHINE, OOBE_MAIN_REG_KEY + TEMP_KEY, ISPINDX)
  613.     }
  614.     catch (e)
  615.     {
  616.         gselectedISPIndx = 0;
  617.     }
  618.  
  619.     setTimeout("DoISPDial(" + gselectedISPIndx + ")" , 40); 
  620.  
  621. }
  622.  
  623.  
  624. function Migpage_LoadMe()
  625. {
  626.     InitFrameRef();
  627.     g.spnSaveInfo.style.display="none";
  628.     InitNewButtons();
  629.     gCurrPage = PAGE_ISPPAGE;
  630.     g.MigPagePlsWaitText.style.visibility = "hidden";
  631.     g.TOSFramespn.style.display = "none";
  632.  
  633.     g.btnNext.onclick = ISPNextBtnHandler;
  634.     g.btnBack.onclick = ISPBackBtnHandler;
  635.     g.btnSkip.onclick = ISPSkipBtnHandler;
  636.     g.ISPContent.style.display = "none";
  637.     g.TOSFramespn.style.display = "none";
  638.     g.TOSRadioSpn.style.display = "none";
  639.  
  640.     g.ISPContent.innerHTML = ReadContent();
  641.  
  642.     window.external.walk();
  643.     gpgType = window.external.get_PageType();
  644.     switch (gpgType)
  645.     {
  646.         case PAGETYPE_ISP_NORMAL:
  647.         {
  648.             g.ISPContent.style.display = "inline";
  649.             break;
  650.         }
  651.         case PAGETYPE_ISP_TOS:
  652.         {
  653.             g.TOSFrame.navigate(gCurrISPURL);
  654.  
  655.             g.TOSFramespn.style.display = "inline";
  656.             g.TOSRadioSpn.style.display = "inline";
  657.  
  658.             break;
  659.         }
  660.        default:
  661.        {
  662.             g.ISPContent.style.display = "inline";
  663.             break;
  664.        }
  665.     }
  666.     var pgFlag = window.external.get_PageFlag();
  667.     switch (pgFlag)
  668.     {
  669.         case PAGEFLAG_SAVE_CHECKBOX:
  670.         {
  671.             
  672.             g.spnSaveInfo.style.display="inline";
  673.             break;
  674.         }
  675.     }
  676. }
  677.  
  678. function ReadContent()
  679. {
  680.     var fso, f, r = "";
  681.     var ForReading = 1;
  682.     try
  683.     {
  684.     fso = new ActiveXObject("Scripting.FileSystemObject");
  685.     if ("" == gCurrISPURL)
  686.         return;
  687.     f = fso.OpenTextFile(gCurrISPURL, ForReading);
  688.     r = f.ReadAll();
  689.     f.Close();
  690.     }
  691.     catch(e) {}
  692.     return r;
  693. }
  694.  
  695. function DoReferralDial()
  696. {
  697.     g_bMigration = 1;
  698.     g_IgnoreDialErr = false;
  699.     if ((UseModem()) && window.external.CheckOnlineStatus &&
  700.         window.external.CheckStayConnected("migrate.isp"))
  701.     {
  702.         window.external.Connect(CONNECTED_REFFERAL, "migrate.isp");
  703.     }
  704.     else
  705.     {
  706.         window.external.DialEx(CONNECTED_REFFERAL, "migrate.isp");
  707.     }
  708. }
  709.  
  710. function DoISPDial(dISP)
  711. {
  712.     g_bMigration = 1;
  713.     g_IgnoreDialErr = false;
  714.     window.external.DialEx(CONNECTED_ISP_MIGRATE, "", dISP);
  715. }
  716.  
  717. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  718. function OnDialingErrorEx(derr)
  719. {
  720.     window.external.Hangup();
  721.  
  722.     if (g_IgnoreDialErr)
  723.         return;
  724.     
  725.     switch (derr)
  726.     {
  727.      case DERR_PORT_OR_DEVICE:
  728.      case DERR_PORT_ALREADY_OPEN:
  729.      case DERR_HARDWARE_FAILURE:
  730.      case DERR_DIALTONE:
  731.         Navigate("isperror\\ispdtone.htm");
  732.         break;
  733.  
  734.      case DERR_BUSY:
  735.         Navigate("isperror\\ispphbsy.htm");
  736.         break;
  737.  
  738.      case DERR_VOICEANSWER:
  739.      case DERR_PPP_TIMEOUT:
  740.         Navigate("isperror\\isphdshk.htm");
  741.         break;
  742.  
  743.      case DERR_NO_CARRIER:
  744.      case DERR_REMOTE_DISCONNECT:
  745.         Navigate("isperror\\ispcnerr.htm");
  746.         break;
  747.  
  748.      case DERR_NOANSWER:
  749.         Navigate("isperror\\ispnoanw.htm");
  750.         break;
  751.  
  752.      default:
  753.         Navigate("isperror\\isphdshk.htm");
  754.         break;
  755.     }
  756. }
  757.  
  758. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  759. function OnServerErrorEx(derr)
  760. {
  761.     window.external.Hangup();
  762.  
  763.     if (g_IgnoreDialErr)
  764.         return;
  765.  
  766.     Navigate("isperror\\ispsbusy.htm");
  767. }
  768.  
  769. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  770. var L_NAME_OF_ISP_Text = "MSN";
  771. function OnDialingEx()
  772. {
  773.     
  774.  
  775.     if (g != null && g.spnISPName != null)
  776.     {
  777.         switch (g_CurrentCKPT)
  778.         {
  779.             case CKPT_ISPDIAL:
  780.                 g.spnISPName.innerText = (g_CustomISPName == null) ? 
  781.                     L_NAME_OF_ISP_Text : g_CustomISPName;
  782.                 break;
  783.             default:
  784.                 g.spnISPName.innerText = window.external.get_ISPName;
  785.                 break;
  786.         }
  787.  
  788.     }
  789.  
  790.     if (g != null && g.spnDialing != null)
  791.         g.spnDialing.innerText = window.external.get_DialNumber;
  792. }
  793.  
  794. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  795. function OnConnectingEx()
  796. {
  797.     switch (g_CurrentCKPT)
  798.     {
  799.         case CKPT_REFDIAL:
  800.             if (g != null && g.spnReferralStatus != null)
  801.                 g.spnReferralStatus.innerText = L_REF_STATUS_CONNECTING_Text;
  802.             break;
  803.     }
  804.  
  805. }
  806.  
  807. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  808. function OnDownloadingEx()
  809. {
  810.         
  811.         
  812.  
  813.         Agent_TurnOnISPSpecialCommands();
  814.  
  815.  
  816.  
  817.     
  818.  
  819.        try
  820.        {
  821.            window.parent.document.frames("connDelay").frameElement.style.zIndex=3;
  822.            window.parent.document.frames("connDelay").frameElement.style.display="inline";
  823.            window.parent.document.frames("connDelay").document.body.style.cursor='wait';
  824.        }
  825.        catch (e)
  826.        {
  827.        }
  828.  
  829.     switch (g_CurrentCKPT)
  830.     {
  831.         case CKPT_REFDIAL:
  832.             if (g != null)
  833.             {
  834.                 if (g.spnReferralStatus != null)
  835.                 {
  836.                     g.spnReferralStatus.innerText = L_REF_STATUS_CONNECTED_Text;
  837.                 }
  838.                 if (g.spnTblProgressBar != null)
  839.                 {
  840.                     g.spnTblProgressBar.style.visibility="visible";
  841.                 }
  842.             }
  843.             break;
  844.     }
  845.  
  846. }
  847.  
  848. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  849. function OnDisconnectEx()
  850. {
  851. }
  852.  
  853. function SetProg(i)
  854. {
  855.     
  856.     if (0 == i )
  857.         return;
  858.     if ((i>0) && (i<=100))
  859.     {
  860.         for (var j = gLastProg; j < i; j++)
  861.         {
  862.             if (g != null && g.tblProg != null)
  863.                 g.tblProg.rows(0).cells(j).style.backgroundColor = "green";
  864.         }
  865.         gLastProg = i;
  866.     }
  867.  
  868. }
  869.  
  870. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  871. function OnConnectedEx()
  872. {
  873.     g_bTapiDone = true;
  874.     switch (g_CurrentCKPT)
  875.     {
  876.         case CKPT_REFDIAL:
  877.             if (g != null && g.spnReferralStatus != null)
  878.                 g.spnReferralStatus.innerText = L_REF_STATUS_CONNECTED_Text;
  879.             if (g != null && g.spnTblProgressBar != null)
  880.                 g.spnTblProgressBar.style.visibility="visible";
  881.             break;
  882.     }
  883. }
  884.  
  885. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  886. function OnRefDownloadProgressEx(dprog)
  887. {
  888.     if (g != null && g.spnReferralStatus != null)
  889.     {
  890.         g.spnReferralStatus.innerText = L_REF_STATUS_DOWNLOAD_Text;
  891.         g.refdial_title1.innerText = L_REFDIALTITLE_TEXT;
  892.         g.refdial_intro1.innerText = L_REFDIALINTRO_TEXT;
  893.     }
  894.  
  895.     
  896.     SetProg(dprog);
  897. }
  898.  
  899. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  900. function OnRefDownloadCompleteEx(bRet)
  901. {
  902.     var TIME_FOR_PROGRESS_BAR_FILL = 1000;
  903.     
  904.     if (1 == bRet)
  905.     {
  906.         window.external.Hangup();
  907.         
  908.         StatusObj.set_Status(REFERALDLCOMPLETED, true);
  909.         setTimeout("GoNavigate(" + CKPT_MIGLIST + ")", TIME_FOR_PROGRESS_BAR_FILL);
  910.     }
  911.     else
  912.     {
  913.         OnServerErrorEx(0);
  914.  
  915.     }
  916.  
  917. }
  918.  
  919. <!--REQUIRED FUNCTION NAME:: DO NOT OVERLOAD OR ALTER-->
  920. function OnISPDownloadCompleteEx(szURL)
  921. {
  922.  
  923.     
  924.  
  925.     if ("" == szURL)
  926.     {
  927.         OnServerErrorEx(0);
  928.     }
  929.     else
  930.     {
  931.         gCurrISPURL = szURL;
  932.         Navigate("setup\\Migpage.htm");
  933.     }
  934. }
  935. function TOSRadioClick()
  936. {
  937.     if (g.radioAgree.checked)
  938.     {
  939.         g.btnNext.disabled=false;
  940.         g.btnNext.className="buttons";
  941.     }
  942.     else if (g.radioDisAgree.checked)
  943.     {
  944.         g.btnNext.disabled=true;
  945.         g.btnNext.className="buttons-disabled";
  946.     }
  947.  
  948. }
  949.