home *** CD-ROM | disk | FTP | other *** search
/ PC User 2004 November / PCU1104CD1.iso / software / security / files / spoofire.xpi / install.js next >
Encoding:
Text File  |  2004-06-12  |  1.5 KB  |  50 lines

  1. /*
  2.  * SpoofStick Install Script
  3.  *
  4.  * Copyright (C) 2004 CoreStreet, Ltd.
  5.  * http://www.corestreet.com/
  6.  *
  7.  * Author: Mark Ayzenshtat
  8.  */
  9.  
  10. const kDisplayName = "SpoofStick";
  11. const kAppName = "spoofstick";
  12. //const kAppPackage = "/corestreet/spoofstick";
  13. const kVersion = "1.02";
  14. const kAuthor = "Mark Ayzenshtat and Phil Libin";
  15.  
  16. const kInstallInProfFolderMsg = "Install SpoofStick into your profile folder?\n(click \"cancel\" to install into the application folder for all users)";
  17.  
  18. var jarName = kAppName + ".jar";
  19. var contentFlag = CONTENT | PROFILE_CHROME;
  20. var error = null;
  21. var folder = getFolder("Profile", "chrome");
  22. var existsInApp = File.exists(getFolder(getFolder("chrome"), jarName));
  23. var existsInProfile = File.exists(getFolder(folder, jarName));
  24.  
  25. initInstall(kDisplayName, kAppName, kVersion);
  26.  
  27. if (existsInApp || (!existsInProfile && !confirm(kInstallInProfFolderMsg))) {
  28.     contentFlag = CONTENT | DELAYED_CHROME;
  29.     folder = getFolder("chrome");    
  30. }
  31.  
  32. setPackageFolder(folder);
  33. error = addFile(kAuthor, kVersion, "chrome/" + jarName, folder, null);
  34.  
  35. if (error == SUCCESS) {
  36.     folder = getFolder(folder, jarName);
  37.     
  38.     registerChrome(contentFlag, folder, "content/");    
  39.     
  40.     error = performInstall();
  41.     if (error == SUCCESS || error == REBOOT_NEEDED) {
  42.         alert(displayName + " " + version + " has been successfully installed.");
  43.     } else {
  44.         alert("Install failed.  Error code: " + error);
  45.         cancelInstall(error);
  46.     }
  47. } else {
  48.     alert("Install failed - could not create " + jarName + "\n" +
  49.         "Make sure you have the permissions needed for installation.");
  50. }