home *** CD-ROM | disk | FTP | other *** search
/ PC World 2006 December / PCWorld_2006-12_cd.bin / komunikace / netscape / nsb-install-8-1-2.exe / chrome / aim.jar / content / aim / newActivationOverlay.js < prev    next >
Text File  |  2006-01-06  |  10KB  |  309 lines

  1. /* The contents of this file are subject to the Netscape Public
  2.  * License Version 1.1 (the "License"); you may not use this file
  3.  * except in compliance with the License. You may obtain a copy of
  4.  * the License at http://www.mozilla.org/NPL/
  5.  *
  6.  * Software distributed under the License is distributed on an "AS
  7.  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  8.  * implied. See the License for the specific language governing
  9.  * rights and limitations under the License.
  10.  *
  11.  * The Original Code is Mozilla Communicator client code, released
  12.  * March 31, 1998.
  13.  *
  14.  * The Initial Developer of the Original Code is Netscape
  15.  * Communications Corporation. Portions created by Netscape are
  16.  * Copyright (C) 1998-1999 Netscape Communications Corporation. All
  17.  * Rights Reserved.
  18.  *
  19.  */ 
  20.  
  21. var gPrefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
  22. dump (gPrefs + "\n");
  23.  
  24. var actvInst = Components.classes['@mozilla.org/profile/activation;1'].createInstance();
  25. actvInst = actvInst.QueryInterface(Components.interfaces.nsIActivation);
  26.  
  27.  
  28.  
  29. const kIMScreenNamePref = "aim.session.screenname";
  30. const kWebMailDomain = "netscape.net";
  31. const kTestActivation = "browser.test_new_activation";
  32.  
  33. function setHelpText(element, helpAreaId, helpElementId)
  34. {
  35.   clearHelpText(helpAreaId, helpElementId);
  36.  
  37.   var helpArea  = document.getElementById(helpAreaId);
  38.   helpArea.setAttribute("hidden", false);
  39.  
  40.   var currentElement  = document.getElementById(element);
  41.   var helpText  = currentElement.getAttribute("helptext");
  42.  
  43.   var helpTextNode = document.createTextNode(helpText);
  44.  
  45.   var helpElement  = document.getElementById(helpElementId);
  46.   helpElement.appendChild(helpTextNode);
  47. }
  48.  
  49. function clearHelpText(helpAreaId, helpElementId)
  50. {
  51.   var helpElement  = document.getElementById(helpElementId);
  52.   if (helpElement.firstChild)
  53.     helpElement.removeChild(helpElement.firstChild);
  54.  
  55.   var helpArea  = document.getElementById(helpAreaId);
  56.   helpArea.setAttribute("hidden", true);
  57. }
  58.  
  59. function setNewAccountGlobals()
  60. {
  61.   gNewAccount = true;
  62.   gExistingAccount = false;
  63. }
  64.  
  65. function setExistingAccountGlobals()
  66. {
  67.   gExistingAccount = true;
  68.   gNewAccount = false;
  69. }
  70.  
  71. function enableButton(buttonLabel)
  72. {
  73.   var button = document.documentElement.getButton(buttonLabel);
  74.   button.removeAttribute("disabled");
  75. }
  76.  
  77. function disableButton(buttonLabel)
  78. {
  79.   var button = document.documentElement.getButton(buttonLabel);
  80.   button.setAttribute("disabled", "true");
  81. }
  82.  
  83.  
  84. function setErrorMessage(errorMessage)
  85. {
  86.   clearErrorMessage();
  87.  
  88.   var errorTextNode = document.createTextNode(errorMessage);
  89.  
  90.   var errorMessageElement  = document.getElementById("errorMessage");
  91.   errorMessageElement.appendChild(errorTextNode);
  92. }
  93.  
  94. function clearErrorMessage()
  95. {
  96.   var errorMessageElement  = document.getElementById("errorMessage");
  97.   if (errorMessageElement.firstChild)
  98.     errorMessageElement.removeChild(errorMessageElement.firstChild);
  99. }
  100.  
  101. function setNextPage(currentPageId, nextPageId) 
  102. {
  103.     //alert("XXX setNextPage " + currentPageId + " " + nextPageId);
  104.     dump("XXX setNextPage " + currentPageId + " " + nextPageId + "\n");
  105.     var currentPage = document.getElementById(currentPageId);
  106.     currentPage.next = nextPageId;
  107. }
  108.  
  109. function setDayDefault()
  110. {
  111.   var dayMenuList = document.getElementById("day");
  112.   dayMenuList.selectedIndex = 0;
  113. }
  114.  
  115. function setMonthDefault()
  116. {
  117.   var monthMenuList = document.getElementById("month");
  118.   monthMenuList.selectedIndex = 0;
  119. }
  120.  
  121. function setYearDefault()
  122. {
  123.   var yearTextBox = document.getElementById("year");
  124.   if (!yearTextBox.value) 
  125.     yearTextBox.value = activationStrBundle.GetStringFromName("yearDefault");
  126. }
  127.  
  128. function buildCountryList()
  129. {
  130.   if (!gCountryListBuilt) {
  131.     var countryList = document.getElementById("newAccountCountry");
  132.  
  133.     var countryPrefix = "country";
  134.     var countryCodeSuffix = "Code";
  135.     for (var i = 0; i < 239; i++) {
  136.       var country = activationStrBundle.GetStringFromName(countryPrefix+(i+1));
  137.       var countryCode = activationStrBundle.GetStringFromName(countryPrefix+(i+1)+countryCodeSuffix);
  138.  
  139.       var item = countryList.appendItem(country, i);
  140.       item.setAttribute("value", countryCode);
  141.     }
  142.     countryList.selectedIndex = parseInt(activationStrBundle.GetStringFromName("selectCountryIndex"))-1;
  143.     gCountryListBuilt = true;
  144.   }
  145. }
  146.  
  147. function showErrorMsg(errorId)
  148. {
  149.   var errorTitle = activationStrBundle.GetStringFromName("errorMsgWindowTitle");
  150.   var errorMsg = activationStrBundle.GetStringFromName(errorId);
  151.   var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService();
  152.   promptService = promptService.QueryInterface(Components.interfaces.nsIPromptService);
  153.  
  154.   if (promptService) {  
  155.     promptService.alert(window, errorTitle, errorMsg);
  156.   }
  157. }
  158.  
  159. function SetCustomizedWizardDimensions()
  160. {
  161.   var width  = activationStrBundle.GetStringFromName("wizardWindowWidth");
  162.   var height = activationStrBundle.GetStringFromName("wizardWindowHeight");
  163.  
  164.   document.documentElement.width = width;
  165.   document.documentElement.height = height;
  166.  
  167.   // Also check if there are any arguments. If there are arguments to start
  168.   // in page, request is coming from Get Free Web Mail page. Process that one.
  169.   if (window.arguments && window.arguments[0]) {
  170.     if (window.arguments[0].page == "ispPage4") {
  171.       var progressWindow = getProgressDialog("activationStartWindow");
  172.       if (progressWindow) 
  173.         progressWindow.close();
  174.  
  175.       //alert("SetNewPageMappings 1\n");
  176.       SetNewPageMappings(window.arguments[0].page, "ispPage5", "done");
  177.       gNewAccountUrl = window.arguments[0].newaccturl;
  178.       gDisableBackButton = true;
  179.  
  180.       // get all other urls too
  181.       gAuthenticationUrl = window.arguments[0].authurl;
  182.       gReadUrl = window.arguments[0].readurl;
  183.       gWriteUrl = window.arguments[0].writeurl;
  184.       gForgottenPwdUrl = window.arguments[0].forgotpwdurl;
  185.       gSuggestSnUrl = window.arguments[0].suggestsnurl;
  186.       gSetUserBrandUrl = window.arguments[0].setbrandurl;
  187.       gAgeSuspendUrl = window.arguments[0].agesuspendurl;
  188.       gCreditCardValidationUrl = window.arguments[0].creditvalidurl;
  189.       gGetRegImageUrl = window.arguments[0].getregimageurl;
  190.       document.documentElement.goTo(window.arguments[0].page);
  191.     }
  192.   }
  193.   else if (window.arguments && window.arguments[1]) {
  194.     if (window.arguments[1].page == "ispPage3") {
  195.       var progressWindow = getProgressDialog("activationStartWindow");
  196.       if (progressWindow) 
  197.         progressWindow.close();
  198.  
  199.       //alert("SetNewPageMappings 2\n");
  200.       SetNewPageMappings(window.arguments[1].page, "ispPage5", "done");
  201.  
  202.       // get all urls
  203.       gNewAccountUrl = window.arguments[1].newaccturl;
  204.       gAuthenticationUrl = window.arguments[1].authurl;
  205.       gReadUrl = window.arguments[1].readurl;
  206.       gWriteUrl = window.arguments[1].writeurl;
  207.       gForgottenPwdUrl = window.arguments[1].forgotpwdurl;
  208.       gSuggestSnUrl = window.arguments[1].suggestsnurl;
  209.       gSetUserBrandUrl = window.arguments[1].setbrandurl;
  210.       gAgeSuspendUrl = window.arguments[1].agesuspendurl;
  211.       gCreditCardValidationUrl = window.arguments[1].creditvalidurl;
  212.       gGetRegImageUrl = window.arguments[1].getregimageurl;
  213.       document.documentElement.goTo(window.arguments[1].page);
  214.     }
  215.   }
  216. }
  217.  
  218. function setOtherISPServices()
  219. {
  220.   // time to set IM screenname pref, if there isn't already one
  221.   var IMScreenName;
  222.   var prefService = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
  223.  
  224.   try {
  225.     IMScreenName = prefService.getComplexValue(kIMScreenNamePref,
  226.                                Components.interfaces.nsIPrefLocalizedString);
  227.   }
  228.   catch (ex) {
  229.   }
  230.  
  231.   if (!IMScreenName) {
  232.     if (gScreenName) {
  233.       try {
  234.       var str = Components.classes["@mozilla.org/supports-wstring;1"]
  235.                           .createInstance(Components.interfaces.nsISupportsWString);
  236.       str.data = gScreenName;
  237.       prefService.setComplexValue(kIMScreenNamePref,
  238.                                Components.interfaces.nsISupportsWString, str);
  239.     }
  240.       catch (ex) {
  241.       }
  242.     }
  243.   }
  244. }
  245.  
  246. var gWebMailTimerIntervalID;
  247. var gWebMailTimer=0;
  248.  
  249. function checkWebMailReply()
  250. {
  251.   var webmailCookieID = "WM_RC";
  252.   var createdWebMailAccount = false;
  253.   var begin, end;
  254.  
  255.   // Get webmail cookie.
  256.   webmailCookie   = actvInst.getWebMailCookie();
  257.  
  258.   if (webmailCookie) {
  259.     begin = webmailCookie.indexOf(webmailCookieID);
  260.     if (begin != -1) {
  261.       // Increase begin index to ignore the cookie ID name and '=' part 
  262.       begin += webmailCookieID.length + 1;
  263.  
  264.       end = webmailCookie.indexOf(";", begin);
  265.       if (end == -1) 
  266.           end = webmailCookie.length;
  267.  
  268.       webmailCookie = webmailCookie.substring(begin, end);
  269.  
  270.       if (webmailCookie) {
  271.  
  272.           if (webmailCookie == 0)
  273.             createdWebMailAccount = true;
  274.       }
  275.     }
  276.   }
  277.   return createdWebMailAccount;
  278. }
  279.  
  280. function pingWebMailServer(hiddenWindowID) 
  281.     // Create a session history object and set it on the content docshell
  282.     gWebMailTimerIntervalID = setInterval("isWebMailAccountCreated()", 1000);
  283.  
  284.     var webMailUrl = gPrefs.getComplexValue("browser.new_registration.webmail_production_url",
  285.                                    Components.interfaces.nsIPrefLocalizedString).data;
  286.     var hiddenWindow = document.getElementById(hiddenWindowID);
  287.     try {
  288.       hiddenWindow.setAttribute("src", webMailUrl);
  289.     }
  290.     catch (e) {
  291.     }
  292.   }
  293.  
  294. function testingNewActivation()
  295. {
  296.   var prefService = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
  297.   var testingActivation = prefService.getBoolPref(kTestActivation);
  298.  
  299.   return testingActivation;
  300.  
  301. }
  302.  
  303. function testingIspServices()
  304. {
  305.   return testingNewActivation();
  306. }
  307.  
  308.