home *** CD-ROM | disk | FTP | other *** search
/ Freelog 117 / FreelogNo117-OctobreNovembre2013.iso / Theme / 8GadgetPack / 8GadgetPackSetup.msi / Gadgets.7z / Gadgets / AppLauncher.gadget / js / shared.js < prev   
Text File  |  2010-04-18  |  8KB  |  246 lines

  1. // copyright 2007 Dean Laforet
  2. // do not use or modify code without permission.
  3.  
  4. var oShell = new ActiveXObject("WScript.Shell");
  5. var oFSO = new ActiveXObject("Scripting.FileSystemObject");
  6.  
  7. var winPath = System.Environment.getEnvironmentVariable("WINDIR");
  8. var pfPath = System.Environment.getEnvironmentVariable("PROGRAMFILES");
  9. if (oFSO.FolderExists(pfPath+" (x86)")) pfPath += " (x86)";
  10. var    myComp = winPath+"\\explorer.exe";
  11. var    control = winPath+"\\system32\\control.exe";
  12. var    ie = pfPath+"\\Internet Explorer\\iexplore.exe";
  13. var gadgetPath = System.Gadget.path;
  14. var network = gadgetPath+"\\images\\network.ico";
  15. var rbEmpty = gadgetPath+"\\images\\rbEmpty.ico";
  16. var rbFull = gadgetPath+"\\images\\rbFull.ico";
  17. var errorImage = gadgetPath+"\\images\\Error.png";
  18.  
  19. onerror = function(msg,url,l){
  20.     debugLog("Javascript error: "+msg+" - on line: "+l);
  21. }
  22.  
  23. function debugLog(outStr){
  24. try{
  25.         System.Debug.outputString(outStr);
  26.         if (bDebug)
  27.             debugLogFile.WriteLine(outStr);
  28. } catch(err) {}
  29. }
  30.  
  31. function $(v) { return(document.getElementById(v)); }
  32.  
  33. function read(name){
  34.   value = System.Gadget.Settings.read(name);
  35.   return value;
  36. }
  37.  
  38. function write(name,value){
  39.   System.Gadget.Settings.write(name, value);
  40. }
  41.  
  42. function getLinks(){
  43. try{
  44.   linksList = new Array(); iconList = new Array(); switchList = new Array;
  45.  
  46.   settingsDir = read("settingsDir");
  47.  
  48.   filePathsFile = settingsDir+"\\filepaths.txt";
  49.   iconPathsFile = settingsDir+"\\iconpaths.txt";
  50.   switchPathsFile = settingsDir+"\\switchpaths.txt";
  51.   settingsFile = settingsDir+"\\settings.txt";
  52.   rbSettingsFile = settingsDir+"\\rbSettings.txt";
  53.  
  54.   if (!oFSO.FolderExists(settingsDir)){
  55.     oFSO.CreateFolder(settingsDir);
  56.         linksList[0] = "My Computer";
  57.         linksList[1] = "Control Panel Classic";
  58.         linksList[2] = "Internet Explorer";
  59.         linksList[3] = "Recycle Bin";
  60.     writeFilePathsFile();
  61.   }
  62.     else if (oFSO.FileExists(filePathsFile)){
  63.     var defaultFile = oFSO.OpenTextFile(filePathsFile, 1, false);
  64.         var index = 0;
  65.         for (var i = 0; !defaultFile.AtEndOfStream; i++){
  66.             testLink = defaultFile.ReadLine();
  67.  
  68.             if (testLink == "My Computer" || testLink == "Control Panel Category" || testLink == "Control Panel Classic" || testLink == "Control Panel VAIO" || testLink == "Internet Explorer" || testLink == "Recycle Bin" || testLink == "Network" || testLink == "Network VAIO" || testLink == "IE Favorites" || testLink == "Firefox Bookmarks" || testLink == "Opera Bookmarks" || testLink == "LauncherDivider"){
  69.                 isGood = true;
  70.             }
  71.             else{
  72.         if(isValidPath(testLink)){
  73.           if (oFSO.FileExists(testLink)) isGood = true;
  74.           else if (oFSO.FolderExists(testLink)) isGood = true;
  75.           else isGood = false;
  76.                 }
  77.                 else{
  78.           isGood = false;
  79.                 }
  80.             }
  81.  
  82.             if (isGood){
  83.          linksList[index] = testLink;
  84.                 index++;
  85.             }
  86.         }
  87.         defaultFile.Close();
  88.     }
  89.  
  90.     if (oFSO.FileExists(iconPathsFile)){
  91.     var defaultFile = oFSO.OpenTextFile(iconPathsFile, 1, false);
  92.     for (var i = 0; !defaultFile.AtEndOfStream; i++){
  93.       iconList[i] = defaultFile.ReadLine();
  94.     }
  95.     defaultFile.Close();
  96.   }
  97.  
  98.   if (iconList.length < linksList.length){
  99.     for (var i=iconList.length; i<=linksList.length; i++){
  100.       iconList[i] = "none";
  101.     }
  102.     writeIconPathsFile();
  103.   }
  104.  
  105.     if (oFSO.FileExists(switchPathsFile)){
  106.     var defaultFile = oFSO.OpenTextFile(switchPathsFile, 1, false);
  107.     for (var i = 0; !defaultFile.AtEndOfStream; i++){
  108.       switchList[i] = defaultFile.ReadLine();
  109.     }
  110.     defaultFile.Close();
  111.   }
  112.  
  113.   if (switchList.length < linksList.length){
  114.     for (var i=switchList.length; i<=linksList.length; i++){
  115.       switchList[i] = "none";
  116.     }
  117.     writeSwitchFile();
  118.     }
  119.  
  120.   targetLink = 1;
  121.   perRowSetting = 1;
  122.   dragSetting = 0;
  123.   bgSetting = 19;
  124.   infoSetting = 1;
  125.   folderSetting = 0;
  126.   centreSetting = 0;
  127.   settingsTipsSetting = 0;
  128.   folderOpenSetting = 1;
  129.   filterExtSetting = 1;
  130.   LdeleteSetting = 0;
  131.   FdeleteSetting = 0;
  132.   textColorSetting = "#ffffff";
  133.   cornerSetting = 1;
  134.   tabsSetting = 0;
  135.  
  136.   write("BgSetting", bgSetting);
  137.   write("FilterExtSetting", filterExtSetting);
  138.   write("FDeleteSetting", FdeleteSetting);
  139.  
  140.   if (oFSO.FileExists(settingsFile)){    
  141.     defaultFile = oFSO.OpenTextFile(settingsFile, 1, false);
  142.     targetLink = defaultFile.ReadLine();
  143.     if (defaultFile.AtEndOfStream) return;
  144.     perRowSetting = defaultFile.ReadLine();
  145.     if (defaultFile.AtEndOfStream) return;
  146.     dragSetting = defaultFile.ReadLine();
  147.     if (defaultFile.AtEndOfStream) return;
  148.     bgSetting = defaultFile.ReadLine();
  149.     write("BgSetting", bgSetting);
  150.     if (defaultFile.AtEndOfStream) return;
  151.     infoSetting = defaultFile.ReadLine();
  152.     if (defaultFile.AtEndOfStream) return;
  153.     folderSetting = defaultFile.ReadLine();
  154.     if (defaultFile.AtEndOfStream) return;
  155.     centreSetting = defaultFile.ReadLine();
  156.     if (defaultFile.AtEndOfStream) return;
  157.     settingsTipsSetting = defaultFile.ReadLine();
  158.     if (defaultFile.AtEndOfStream) return;
  159.     folderOpenSetting = defaultFile.ReadLine();
  160.     if (defaultFile.AtEndOfStream) return;
  161.     filterExtSetting = defaultFile.ReadLine();
  162.     write("FilterExtSetting", filterExtSetting);
  163.     if (defaultFile.AtEndOfStream) return;
  164.     LdeleteSetting = defaultFile.ReadLine();
  165.     if (defaultFile.AtEndOfStream) return;
  166.     FdeleteSetting = defaultFile.ReadLine();
  167.     write("FDeleteSetting", FdeleteSetting);
  168.     if (defaultFile.AtEndOfStream) return;
  169.     textColorSetting = defaultFile.ReadLine();
  170.     write("TextColorSetting", textColorSetting);
  171.     if (defaultFile.AtEndOfStream) return;
  172.     cornerSetting = defaultFile.ReadLine();
  173.     if (defaultFile.AtEndOfStream) return;
  174.     tabsSetting = defaultFile.ReadLine();
  175.     defaultFile.Close();
  176.   }
  177. }    catch(err) {debugLog("getLinks"+err.name+" - "+err.message)}
  178. }
  179.  
  180. function isValidPath(str){
  181. try{
  182.                //   WIN PATH                       |        NETWORK PATH    
  183.   var regexp = /(^[A-Za-z]:(\\|\\[^\/:\*\?\"<>\|]+)|^\\\\([^\\\/:\*\?\"<>\|]+)\\([^\/:\*\?\"<>\|]+))$/;
  184.   return regexp.exec(str);
  185. } catch(err) {debugLog("isValidPath: "+err.name+" - "+err.message)}
  186. }
  187.  
  188. function writeFilePathsFile(){
  189. try{
  190.   if (oFSO.FileExists(filePathsFile)){
  191.     oFSO.DeleteFile(filePathsFile, true);
  192.   }
  193.   var oFile = oFSO.CreateTextFile(filePathsFile, true);
  194.  
  195.   for (var i = 0; i < linksList.length ; i++){
  196.     oFile.WriteLine(linksList[i]);
  197.   }
  198.   oFile.Close();
  199. } catch(err) {debugLog("writeFilePathsFile: "+err.name+" - "+err.message);}
  200. }
  201.  
  202. function writeIconPathsFile(){
  203. try{
  204.     if (oFSO.FileExists(iconPathsFile)){
  205.         oFSO.DeleteFile(iconPathsFile, true);
  206.     }
  207.     var noIcons = true;
  208.     for (var i = 0; i < linksList.length ; i++){
  209.     if (iconList[i] != "none"){
  210.       noIcons = false;
  211.       break;
  212.     }
  213.   }
  214.   if (noIcons == false){
  215.     var oFile = oFSO.CreateTextFile(iconPathsFile, true);
  216.     for (var i = 0; i < linksList.length ; i++){
  217.       oFile.WriteLine(iconList[i]);
  218.     }
  219.     oFile.Close();
  220.   }
  221. } catch(err) {debugLog("writeIconPathsFile: "+err.name+" - "+err.message);}
  222. }
  223.  
  224. function writeSwitchFile(){
  225. try{
  226.     if (oFSO.FileExists(switchPathsFile)){
  227.         oFSO.DeleteFile(switchPathsFile, true);
  228.     }
  229.     var noSwitch = true;
  230.     for (var i = 0; i < linksList.length ; i++){
  231.     if (switchList[i] != "none"){
  232.       noSwitch = false;
  233.       break;
  234.     }
  235.   }
  236.     if (noSwitch == false){
  237.     var oFile = oFSO.CreateTextFile(switchPathsFile, true);
  238.     for (var i = 0; i < linksList.length ; i++){
  239.       oFile.WriteLine(switchList[i]);
  240.     }
  241.     oFile.Close();
  242.     }
  243. } catch(err) {debugLog("writeSwitchFile: "+err.name+" - "+err.message);}
  244. }
  245.  
  246.