home *** CD-ROM | disk | FTP | other *** search
- // this function verifies disk space in kilobytes
- function verifyDiskSpace(dirPath, spaceRequired)
- {
- var spaceAvailable;
-
- // Get the available disk space on the given path
- spaceAvailable = fileGetDiskSpaceAvailable(dirPath);
-
- // Convert the available disk space into kilobytes
- spaceAvailable = parseInt(spaceAvailable / 1024);
-
- // do the verification
- if(spaceAvailable < spaceRequired)
- {
- logComment("Insufficient disk space: " + dirPath);
- logComment(" required : " + spaceRequired + " K");
- logComment(" available: " + spaceAvailable + " K");
- return(false);
- }
-
- return(true);
- }
-
- function updateWinReg4Ren8dot3()
- {
- fTemp = getFolder("Temporary");
-
- //Notes:
- // can't use a double backslash before subkey - Windows already puts it in.
- // subkeys have to exist before values can be put in.
- var winreg = getWinRegistry() ;
- var subkey; //the name of the subkey you are poking around in
- var valname; // the name of the value you want to look at
- var value; //the data in the value you want to look at.
-
- if(winreg != null)
- {
- // Here, we get the current version.
- winreg.setRootKey(winreg.HKEY_CURRENT_USER) ; // CURRENT_USER
- subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunOnce" ;
- winreg.createKey(subkey,"");
- valname = "ren8dot3";
- value = fPSM + "ren8dot3.exe " + fTemp + "ren8dot3.ini";
- err = winreg.setValueString(subkey, valname, value);
- }
- }
-
- function updatePrivateProfile()
- {
- fTemp = getFolder("Temporary");
- fProgram = getFolder("Program");
- fRen8dot3Ini = getWinProfile(fTemp, "ren8dot3.ini");
-
- err = fRen8dot3Ini.writeString("rename", fPSM + "nsbrk3~1.dll", fPSM + "nsbrk3231.dll");
- err = fRen8dot3Ini.writeString("rename", fPSM + "nscnv3~1.dll", fPSM + "nscnv3231.dll");
- err = fRen8dot3Ini.writeString("rename", fPSM + "nscol3~1.dll", fPSM + "nscol3231.dll");
- err = fRen8dot3Ini.writeString("rename", fPSM + "nsfmt3~1.dll", fPSM + "nsfmt3231.dll");
- err = fRen8dot3Ini.writeString("rename", fPSM + "nsres3~1.dll", fPSM + "nsres3231.dll");
- err = fRen8dot3Ini.writeString("rename", fPSM + "nsuni3~1.dll", fPSM + "nsuni3231.dll");
-
- return(0);
- }
-
- function updateWindowsRegistry(psmPath)
- {
- var winReg = getWinRegistry();
- if(winReg != null)
- {
- winReg.setRootKey(winReg.HKEY_LOCAL_MACHINE);
- subKey = "SOFTWARE\\Netscape";
- err = winReg.createKey(subKey, "");
-
- subKey = "SOFTWARE\\Netscape\\Personal Security Manager";
- err = winReg.createKey(subKey, "");
-
- subKey = "SOFTWARE\\Netscape\\Personal Security Manager\\Main";
- valueName = "Install Directory";
- err = winReg.createKey(subKey, "");
- err = winReg.setValueString(subKey, valueName, psmPath);
- }
- else
- {
- logComment("getWinRegsitry() failed: " + winReg);
- }
- }
-
- function getPSMFolder()
- {
- var winReg = getWinRegistry();
- if(winReg != null)
- {
- winReg.setRootKey(winReg.HKEY_LOCAL_MACHINE);
- subKey = "SOFTWARE\\Netscape\\Personal Security Manager\\Main";
- valueName = "Install Directory";
- fPSMstr = winReg.getValueString(subKey, valueName);
- if((fPSMstr == null) || (fPSMstr == ""))
- {
- subKey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion";
- valueName = "CommonFilesDir";
- fCommonFilesDir = winReg.getValueString(subKey, valueName);
- fPSMstr = fCommonFilesDir + "\\Netscape Shared\\Security\\";
- }
-
- fPSM = getFolder("file:///", fPSMstr);
- }
- else
- {
- logComment("getWinRegsitry() failed: " + winReg);
- }
-
- return fPSM;
- }
-
- // main
- var srDest;
- var err;
- var fPSM;
- //var agt;
- //var is_winnt;
-
- srDest = 5761;
- err = initInstall("Netscape Personal Security Manager", "/Netscape/Personal Security Manager", "6.0.N6.2000092909");
- logComment("initInstall() returned: " + err);
-
- //agt = navigator.userAgent.toLowerCase();
- //is_winnt = ((agt.indexOf("winnt")!=-1) || (agt.indexOf("windows nt")!=-1));
- fPSM = getPSMFolder();
-
- if(verifyDiskSpace(fPSM, srDest))
- {
- setPackageFolder(fPSM);
- err = addDirectory("/Netscape/Personal Security Manager/Program",
- "6.0.N6.2000092909",
- "psm", // dir name in jar to extract
- fPSM, // Where to put this file (Returned from getFolder)
- "", // subdir name to create relative to communicatorFolder
- true ); // Force Flag
- logComment("addDirectory() returned: " + err);
-
- // check return value
- if(!err)
- {
- updateWindowsRegistry(fPSM);
-
- // if(is_winnt == false)
- // {
- updatePrivateProfile();
- updateWinReg4Ren8dot3();
- // }
-
- err = performInstall();
- logComment("performInstall() returned: " + err);
- }
- else
- cancelInstall(err);
- }
- else
- cancelInstall(INSUFFICIENT_DISK_SPACE);
-
- // end main
-