From 81c75d89226ada05210c5f7200015df3d1a34cc0 Mon Sep 17 00:00:00 2001 From: Diego Sangunietti Date: Thu, 3 Oct 2013 16:22:32 -0500 Subject: [PATCH] First Update XPI inclued --- .gitattributes | 22 + .gitignore | 215 +++++ README.md | 24 + cck.config | 26 + logo.png | Bin 0 -> 38875 bytes psasi.xpi | Bin 0 -> 81755 bytes xpi/cck.config | 26 + xpi/cck.xpi | Bin 0 -> 81755 bytes xpi/chrome.manifest | 18 + .../content/cck/cck-aboutDialog-overlay.xul | 19 + .../content/cck/cck-browser-overlay-mac.xul | 9 + .../cck/cck-browser-overlay-nonmac.xul | 9 + .../content/cck/cck-browser-overlay.xul | 16 + .../content/cck/cck-extensions-overlay.css | 5 + .../content/cck/cck-extensions-overlay.xul | 45 ++ xpi/chrome/content/cck/cck-prefs-overlay.xul | 55 ++ xpi/chrome/content/cck/cck.css | 0 xpi/chrome/content/cck/cck.dtd | 4 + xpi/chrome/content/cck/cck.js | 94 +++ xpi/chrome/content/cck/cck.properties | 20 + xpi/chrome/content/cck/logo.png | Bin 0 -> 38875 bytes xpi/components/cckService.js | 27 + xpi/defaults/preferences/firefox-cck.js | 3 + xpi/install.rdf | 28 + xpi/modules/cckModule.jsm | 752 ++++++++++++++++++ xpi/searchplugins/ddg-google-encrypted.xml | 9 + 26 files changed, 1426 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 README.md create mode 100644 cck.config create mode 100644 logo.png create mode 100644 psasi.xpi create mode 100644 xpi/cck.config create mode 100644 xpi/cck.xpi create mode 100644 xpi/chrome.manifest create mode 100644 xpi/chrome/content/cck/cck-aboutDialog-overlay.xul create mode 100644 xpi/chrome/content/cck/cck-browser-overlay-mac.xul create mode 100644 xpi/chrome/content/cck/cck-browser-overlay-nonmac.xul create mode 100644 xpi/chrome/content/cck/cck-browser-overlay.xul create mode 100644 xpi/chrome/content/cck/cck-extensions-overlay.css create mode 100644 xpi/chrome/content/cck/cck-extensions-overlay.xul create mode 100644 xpi/chrome/content/cck/cck-prefs-overlay.xul create mode 100644 xpi/chrome/content/cck/cck.css create mode 100644 xpi/chrome/content/cck/cck.dtd create mode 100644 xpi/chrome/content/cck/cck.js create mode 100644 xpi/chrome/content/cck/cck.properties create mode 100644 xpi/chrome/content/cck/logo.png create mode 100644 xpi/components/cckService.js create mode 100644 xpi/defaults/preferences/firefox-cck.js create mode 100644 xpi/install.rdf create mode 100644 xpi/modules/cckModule.jsm create mode 100644 xpi/searchplugins/ddg-google-encrypted.xml diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..412eeda --- /dev/null +++ b/.gitattributes @@ -0,0 +1,22 @@ +# Auto detect text files and perform LF normalization +* text=auto + +# Custom for Visual Studio +*.cs diff=csharp +*.sln merge=union +*.csproj merge=union +*.vbproj merge=union +*.fsproj merge=union +*.dbproj merge=union + +# Standard to msysgit +*.doc diff=astextplain +*.DOC diff=astextplain +*.docx diff=astextplain +*.DOCX diff=astextplain +*.dot diff=astextplain +*.DOT diff=astextplain +*.pdf diff=astextplain +*.PDF diff=astextplain +*.rtf diff=astextplain +*.RTF diff=astextplain diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b9d6bd9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,215 @@ +################# +## Eclipse +################# + +*.pydevproject +.project +.metadata +bin/ +tmp/ +*.tmp +*.bak +*.swp +*~.nib +local.properties +.classpath +.settings/ +.loadpath + +# External tool builders +.externalToolBuilders/ + +# Locally stored "Eclipse launch configurations" +*.launch + +# CDT-specific +.cproject + +# PDT-specific +.buildpath + + +################# +## Visual Studio +################# + +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# User-specific files +*.suo +*.user +*.sln.docstates + +# Build results + +[Dd]ebug/ +[Rr]elease/ +x64/ +build/ +[Bb]in/ +[Oo]bj/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +*_i.c +*_p.c +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.log +*.scc + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opensdf +*.sdf +*.cachefile + +# Visual Studio profiler +*.psess +*.vsp +*.vspx + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +*.ncrunch* +.*crunch*.local.xml + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.Publish.xml +*.pubxml + +# NuGet Packages Directory +## TODO: If you have NuGet Package Restore enabled, uncomment the next line +#packages/ + +# Windows Azure Build Output +csx +*.build.csdef + +# Windows Store app package directory +AppPackages/ + +# Others +sql/ +*.Cache +ClientBin/ +[Ss]tyle[Cc]op.* +~$* +*~ +*.dbmdl +*.[Pp]ublish.xml +*.pfx +*.publishsettings + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file to a newer +# Visual Studio version. Backup files are not needed, because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +App_Data/*.mdf +App_Data/*.ldf + +############# +## Windows detritus +############# + +# Windows image file caches +Thumbs.db +ehthumbs.db + +# Folder config file +Desktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Mac crap +.DS_Store + + +############# +## Python +############# + +*.py[co] + +# Packages +*.egg +*.egg-info +dist/ +build/ +eggs/ +parts/ +var/ +sdist/ +develop-eggs/ +.installed.cfg + +# Installer logs +pip-log.txt + +# Unit test / coverage reports +.coverage +.tox + +#Translations +*.mo + +#Mr Developer +.mr.developer.cfg diff --git a/README.md b/README.md new file mode 100644 index 0000000..e208053 --- /dev/null +++ b/README.md @@ -0,0 +1,24 @@ +# PSASI +*When you have the best possible for your browser and do it as if you will install in a single addon. #PsAsi* +It is a compilation of open-source functionality and features only possible in experimental. Use at responsibility. + +##Description +*PSASI an external plugin used for quick installation in the Firefox browser. +*Its use is simple and is inspired by the hashtag # PSASI to feel any emotional state. +*It is in constant development, using the complements of the moment. + +##Requirements +*Last version of Firefox + +##License +*[Mozilla Public License 2.0 or later](http://www.mozilla.org/MPL/) +*Includes additional licenses specified below. + +##Dev note +*To create an XPI extension to run in Firefox browser is purely simple: + *Copy the repository (or download it). + *Save it in a ZIP file, not encrypted using a standard compression. + *Change extension: from ".zip" to ".xpi". + +##Acknowledgements +*[Pack DuckDuckGo](http://ddgg.nfriedly.com/) - MIT License diff --git a/cck.config b/cck.config new file mode 100644 index 0000000..b0b0567 --- /dev/null +++ b/cck.config @@ -0,0 +1,26 @@ +id=psasi@d-lonso +name=The PSASI +version=0.1.0.277 +ffMinVersion=17 +ffMaxVersion=* +description=The most practiced setup and simplest installation +creator=Diego Sanguinetti +updateKey=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDrW6nrw++/HXARgXkHKEM+0iqQo6H0bM5j1q8yGXVCV1Mwh9ms7lNEuKsn1Fw1xvXBIVUpXTTn8hAfSh4bg9OjLfvOaUTX6jnzX/S8uA5lzZnULC/SfIzEwXV4E0dVh36S58JoAZzbFIxw2oVKM3bHuEV8OrgHC0+Z4D03OKVk4wIDAQAB +iconURL=C:\Users\usuario\Desktop\addons-dev\logo.png +filename=psasi +hidden=true +OrganizationName=PSASI +HomePageURL=http://duckduckgo.com +noWelcomePage=true +SearchEngine1=C:\Users\usuario\Downloads\ddg-google-encrypted.xml +SearchEngineIcon1= +ToolbarLocation=Last +BookmarkLocation=Last +PreferenceName1=privacy.donottrackheader.enabled +PreferenceValue1=true +PreferenceType1=boolean +networkProxyType=100 +networkProxyHTTP_Port=0 +networkProxySSL_Port=0 +networkProxyFTP_Port=0 +networkProxySOCKS_Port=0 diff --git a/logo.png b/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..afbff9b59a3b14cba37346e88eb5725066105f73 GIT binary patch literal 38875 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 QT#Elr;M4bdpuK_r2h`a^&j0`b literal 0 HcmV?d00001 diff --git a/xpi/cck.config b/xpi/cck.config new file mode 100644 index 0000000..b0b0567 --- /dev/null +++ b/xpi/cck.config @@ -0,0 +1,26 @@ +id=psasi@d-lonso +name=The PSASI +version=0.1.0.277 +ffMinVersion=17 +ffMaxVersion=* +description=The most practiced setup and simplest installation +creator=Diego Sanguinetti +updateKey=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDrW6nrw++/HXARgXkHKEM+0iqQo6H0bM5j1q8yGXVCV1Mwh9ms7lNEuKsn1Fw1xvXBIVUpXTTn8hAfSh4bg9OjLfvOaUTX6jnzX/S8uA5lzZnULC/SfIzEwXV4E0dVh36S58JoAZzbFIxw2oVKM3bHuEV8OrgHC0+Z4D03OKVk4wIDAQAB +iconURL=C:\Users\usuario\Desktop\addons-dev\logo.png +filename=psasi +hidden=true +OrganizationName=PSASI +HomePageURL=http://duckduckgo.com +noWelcomePage=true +SearchEngine1=C:\Users\usuario\Downloads\ddg-google-encrypted.xml +SearchEngineIcon1= +ToolbarLocation=Last +BookmarkLocation=Last +PreferenceName1=privacy.donottrackheader.enabled +PreferenceValue1=true +PreferenceType1=boolean +networkProxyType=100 +networkProxyHTTP_Port=0 +networkProxySSL_Port=0 +networkProxyFTP_Port=0 +networkProxySOCKS_Port=0 diff --git a/xpi/cck.xpi b/xpi/cck.xpi new file mode 100644 index 0000000000000000000000000000000000000000..1fdef6081c3eefe2a9cbeab5fc538c018693a76d GIT binary patch literal 81755 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 QT#Elr;M4bdpuK_r2h`a^&j0`b literal 0 HcmV?d00001 diff --git a/xpi/chrome.manifest b/xpi/chrome.manifest new file mode 100644 index 0000000..8a7a7de --- /dev/null +++ b/xpi/chrome.manifest @@ -0,0 +1,18 @@ +overlay chrome://browser/content/browser.xul chrome://cck-PSASI/content/cck-browser-overlay.xul +overlay chrome://browser/content/browser.xul chrome://cck-PSASI/content/cck-browser-overlay-nonmac.xul os!=Darwin +overlay chrome://browser/content/browser.xul chrome://cck-PSASI/content/cck-browser-overlay-mac.xul os=Darwin +overlay chrome://browser/content/preferences/preferences.xul chrome://cck-PSASI/content/cck-prefs-overlay.xul +overlay chrome://browser/content/aboutDialog.xul chrome://cck-PSASI/content/cck-aboutDialog-overlay.xul +overlay chrome://mozapps/content/extensions/extensions.xul chrome://cck-PSASI/content/cck-extensions-overlay.xul +overlay about:addons chrome://cck-PSASI/content/cck-extensions-overlay.xul +style chrome://mozapps/content/extensions/extensions.xul chrome://cck-PSASI/content/cck-extensions-overlay.css +style about:addons chrome://cck-PSASI/content/cck-extensions-overlay.css + +content cck-PSASI chrome/content/cck/ +resource cck-PSASI modules/ + + + +component {06bdf02c-21b5-487b-9876-18f878ed4ec2} components/cckService.js +contract @mozilla.org/cck-service-PSASI;2 {06bdf02c-21b5-487b-9876-18f878ed4ec2} +category profile-after-change PSASICCKService @mozilla.org/cck-service-PSASI;2 diff --git a/xpi/chrome/content/cck/cck-aboutDialog-overlay.xul b/xpi/chrome/content/cck/cck-aboutDialog-overlay.xul new file mode 100644 index 0000000..59e5983 --- /dev/null +++ b/xpi/chrome/content/cck/cck-aboutDialog-overlay.xul @@ -0,0 +1,19 @@ + + + + + + diff --git a/xpi/chrome/content/cck/cck-browser-overlay-mac.xul b/xpi/chrome/content/cck/cck-browser-overlay-mac.xul new file mode 100644 index 0000000..44ee29e --- /dev/null +++ b/xpi/chrome/content/cck/cck-browser-overlay-mac.xul @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/xpi/chrome/content/cck/cck-browser-overlay-nonmac.xul b/xpi/chrome/content/cck/cck-browser-overlay-nonmac.xul new file mode 100644 index 0000000..44ee29e --- /dev/null +++ b/xpi/chrome/content/cck/cck-browser-overlay-nonmac.xul @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/xpi/chrome/content/cck/cck-browser-overlay.xul b/xpi/chrome/content/cck/cck-browser-overlay.xul new file mode 100644 index 0000000..caf0c04 --- /dev/null +++ b/xpi/chrome/content/cck/cck-browser-overlay.xul @@ -0,0 +1,16 @@ + + + + + + diff --git a/xpi/chrome/content/cck/cck-prefs-overlay.xul b/xpi/chrome/content/cck/cck-prefs-overlay.xul new file mode 100644 index 0000000..2cfab09 --- /dev/null +++ b/xpi/chrome/content/cck/cck-prefs-overlay.xul @@ -0,0 +1,55 @@ + + + + diff --git a/xpi/chrome/content/cck/cck.css b/xpi/chrome/content/cck/cck.css new file mode 100644 index 0000000..e69de29 diff --git a/xpi/chrome/content/cck/cck.dtd b/xpi/chrome/content/cck/cck.dtd new file mode 100644 index 0000000..f3dd197 --- /dev/null +++ b/xpi/chrome/content/cck/cck.dtd @@ -0,0 +1,4 @@ + + + + diff --git a/xpi/chrome/content/cck/cck.js b/xpi/chrome/content/cck/cck.js new file mode 100644 index 0000000..f13ac81 --- /dev/null +++ b/xpi/chrome/content/cck/cck.js @@ -0,0 +1,94 @@ +Components.utils.import("resource://gre/modules/Services.jsm"); +Components.utils.import("resource://gre/modules/PrivateBrowsingUtils.jsm"); + +function getCCKLink(item) +{ + var bundle = document.getElementById("bundle_cck"); + + return bundle.getString(item); +} + +// urlPref: lets each application have its own throbber URL. example: "messenger.throbber.url" +// event: lets shift+click open it in a new window, etc. +function goClickThrobber( urlPref, e ) +{ + var url; + try { + var pref = Components.classes["@mozilla.org/preferences-service;1"] + .getService(Components.interfaces.nsIPrefBranch); + url = pref.getComplexValue(urlPref, Components.interfaces.nsIPrefLocalizedString).data; + } + + catch(e) { + url = null; + } + + if ( url ) + openUILink(url, e); +} + +(function () { + const gPrefService = Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefService); + const gPrefBranch = gPrefService.getBranch(null).QueryInterface(Ci.nsIPrefBranch2); + + var mySyncUI = { + init: function() { + return; + }, + initUI: function() { + return; + }, + updateUI: function() { + document.getElementById("sync-setup-state").hidden = true; + document.getElementById("sync-syncnow-state").hidden = true; + } + } + + function onPageLoad(event) { + if (event.target.location.href == "about:home") { + var syncButton = event.target.getElementById("sync"); + if (syncButton) + syncButton.parentNode.removeChild(syncButton); + } + } + + function startup() + { + window.removeEventListener("load", startup, false); + try { + if (!gPrefBranch.getBoolPref("browser.privatebrowsing.enabled")) { + if (PrivateBrowsingUtils.isWindowPrivate(window)) { + window.setTimeout(function() { + Services.prompt.alert(window, "Private Browsing", "Private Browsing has been disabled by your administrator."); + window.close(); + }, 0); + } + } + } catch (ex) {} + try { + if (!gPrefBranch.getBoolPref("services.sync.enabled")) { + gSyncUI = mySyncUI; + var syncbutton = document.getElementById("sync-button"); + if (!syncbutton) { + var toolbox = document.getElementById("navigator-toolbox"); + if (toolbox) + syncbutton = toolbox.palette.querySelector("#sync-button"); + } + if (syncbutton) + syncbutton.setAttribute("hidden", "true"); + var appcontent = document.getElementById("appcontent"); + if (appcontent) { + appcontent.addEventListener("DOMContentLoaded", onPageLoad, false); + } + } + } catch (ex) {} + } + + function shutdown() + { + window.removeEventListener("unload", shutdown, false); + } + + window.addEventListener("load", startup, false); + window.addEventListener("unload", shutdown, false); +})(); diff --git a/xpi/chrome/content/cck/cck.properties b/xpi/chrome/content/cck/cck.properties new file mode 100644 index 0000000..31f5bb9 --- /dev/null +++ b/xpi/chrome/content/cck/cck.properties @@ -0,0 +1,20 @@ +id=psasi@d-lonso +version=0.1.0.277 +OrganizationName=PSASI +browser.throbber.url= +cckhelp.url= +browser.startup.homepage=http://duckduckgo.com +browser.search.defaultenginename= +browser.search.order.1= +PopupAllowedSites= +InstallAllowedSites= +CookieAllowedSites= +PluginAllowedSites= +PopupDeniedSites= +InstallDeniedSites= +CookieDeniedSites= +PluginDeniedSites= +hidden=true +noWelcomePage=true +ToolbarLocation=Last +BookmarkLocation=Last diff --git a/xpi/chrome/content/cck/logo.png b/xpi/chrome/content/cck/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..afbff9b59a3b14cba37346e88eb5725066105f73 GIT binary patch literal 38875 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 + + + + psasi@d-lonso + The PSASI + 0.1.0.277 + The most practiced setup and simplest installation + Diego Sanguinetti + MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDrW6nrw++/HXARgXkHKEM+0iqQo6H0bM5j1q8yGXVCV1Mwh9ms7lNEuKsn1Fw1xvXBIVUpXTTn8hAfSh4bg9OjLfvOaUTX6jnzX/S8uA5lzZnULC/SfIzEwXV4E0dVh36S58JoAZzbFIxw2oVKM3bHuEV8OrgHC0+Z4D03OKVk4wIDAQAB + chrome://cck-PSASI/content/logo.png + true + true + + + + {ec8030f7-c20a-464f-9b0e-13a3a9e97384} + 17 + * + + + + true + + + + diff --git a/xpi/modules/cckModule.jsm b/xpi/modules/cckModule.jsm new file mode 100644 index 0000000..0b14ff5 --- /dev/null +++ b/xpi/modules/cckModule.jsm @@ -0,0 +1,752 @@ +var EXPORTED_SYMBOLS = []; + +const Cc = Components.classes; +const Ci = Components.interfaces; +const Cr = Components.results; + +const gPrefService = Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefService); +const gPrefBranch = gPrefService.getBranch(null).QueryInterface(Ci.nsIPrefBranch2); +const gDefPrefBranch = gPrefService.getDefaultBranch(null); + +const gObserver = Cc['@mozilla.org/observer-service;1'].getService(Ci.nsIObserverService); +const gPermMgr = Cc["@mozilla.org/permissionmanager;1"].getService(Ci.nsIPermissionManager); +const gIOService = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService); +const gBundleService = Cc["@mozilla.org/intl/stringbundle;1"].getService(Ci.nsIStringBundleService); +const gCCKBundle = gBundleService.createBundle("chrome://cck-PSASI/content/cck.properties"); + +var em; +if (Cc["@mozilla.org/extensions/manager;1"]) { + em = Cc["@mozilla.org/extensions/manager;1"].getService(Ci.nsIExtensionManager); +} + +var bookmarks; +var livemarks; +var annoService; + +var firstrun = false; +var extVersion; +var installedVersion; + +var CCK = { + beingUninstalled: false, + observe: function observe(subject, topic, data) { + switch (topic) { + case "nsPref:changed": + if (data == "browser.places.smartBookmarksVersion") { + gPrefBranch.removeObserver("browser.places.smartBookmarksVersion", CCK, false); + var bookmarksToRemove = getString("defaultBookmarksToRemove"); + if (bookmarksToRemove) + removeDefaultBookmarks(bookmarksToRemove.split(',')); + } + break; + case "profile-before-change": + var i = 1; + var prefName; + do { + prefName = getString("LockPref" + i); + if (prefName && prefName.length) { + gPrefBranch.unlockPref(prefName); + } + i++; + } while (prefName && prefName.length); + var noWelcomePage = getString("noWelcomePage"); + if (noWelcomePage) { + gPrefBranch.clearUserPref("startup.homepage_welcome_url"); + } + var noOverridePage = getString("noOverridePage"); + if (noOverridePage) { + gPrefBranch.clearUserPref("startup.homepage_override_url"); + } + if (CCK.beingUninstalled) { + uninit(); + } + break; + case "final-ui-startup": + init(); + if (Cc["@mozilla.org/extensions/manager;1"]) { + var location = em.getInstallLocation("psasi@d-lonso").getItemLocation("psasi@d-lonso"); + installXPIs(location); + } else { + Components.utils.import("resource://gre/modules/AddonManager.jsm"); + AddonManager.getAddonByID("psasi@d-lonso", function(addon) { + if (addon) { + var location = addon.getResourceURI("").QueryInterface(Components.interfaces.nsIFileURL).file; + installXPIs(location); + } + }); + } + break; + case "distribution-customization-complete": + // If we are being invoked at first run, we need to hold off on removing + // default bookmarks until after the smart bookmarks are initialized + var smartBookmarksVersion = 0; + try { + smartBookmarksVersion = gPrefBranch.getIntPref("browser.places.smartBookmarksVersion"); + } catch (ex) {} + if (smartBookmarksVersion == 0) + gPrefBranch.addObserver("browser.places.smartBookmarksVersion", CCK, false); + bookmarks = Cc["@mozilla.org/browser/nav-bookmarks-service;1"].getService(Ci.nsINavBookmarksService); +// livemarks = Cc["@mozilla.org/browser/livemark-service;2"].getService(Ci.nsILivemarkService); + annoService = Cc["@mozilla.org/browser/annotation-service;1"].getService(Ci.nsIAnnotationService); + initBookmarks(); + break; + case "em-action-requested": + subject.QueryInterface(Components.interfaces.nsIUpdateItem); + if (subject.id == "psasi@d-lonso") { + switch (data) { + case "item-uninstalled": + CCK.beingUninstalled = true; + break; + case "item-cancel-action": + CCK.beingUninstalled = false; + break; + } + } + break; + } + } +} + +function init() { + var id = getString("id"); + extVersion = getString("version"); + + installedVersion = null; + + if (gPrefBranch.prefHasUserValue("extensions.psasi@d-lonso.version")) { + installedVersion = gPrefBranch.getCharPref("extensions.psasi@d-lonso.version"); + } + + if (!gPrefBranch.prefHasUserValue("extensions.psasi@d-lonso.install-event-fired")) { + firstrun = true; + gPrefBranch.setBoolPref("extensions.psasi@d-lonso.install-event-fired", true); + } + + /* Always lock preferences */ + var prefName; + var i=1; + do { + prefName = getString("LockPref" + i); + if (prefName) { + // Because of a bug in Firefox (bug 333049), you cannot lock complex + // preferences. This is a workaround for that. + // We query the value and set it as the default before locking + if ((prefName == "browser.startup.homepage") || + (prefName == "browser.search.defaultenginename") || + (prefName == "browser.search.order.1") || + (prefName == "browser.throbber.url")) { + var url = getString(prefName); + if (url) { + gDefPrefBranch.setCharPref(prefName, url); + } else { + url = gDefPrefBranch.getComplexValue(prefName, Ci.nsIPrefLocalizedString).data; + gDefPrefBranch.setCharPref(prefName, url); + } + } + gPrefBranch.lockPref(prefName); + } + i++; + } while (prefName); + + // This is a hack to work around coexistence with distribution.ini + // distribution.ini will set default values, so we can't. And we can't + // set user values that are empty strings. So set them to about:blank + // and the magic happens + var noWelcomePage = getString("noWelcomePage"); + if (noWelcomePage) { + gPrefBranch.setCharPref("startup.homepage_welcome_url", "about:blank"); + } + var noOverridePage = getString("noOverridePage"); + if (noOverridePage) { + gPrefBranch.setCharPref("startup.homepage_override_url", "about:blank"); + } + + /* If no welcome or no override, set the values as default preferences */ + var noWelcomePage = getString("noWelcomePage"); + if (noWelcomePage) + gDefPrefBranch.setCharPref("startup.homepage_welcome_url", ""); + var noOverridePage = getString("noOverridePage"); + if (noOverridePage) + gDefPrefBranch.setCharPref("startup.homepage_override_url", ""); + + var alwaysDefaultBrowser = getString("alwaysDefaultBrowser"); + if (alwaysDefaultBrowser) { + try { + var shellSvc = Cc["@mozilla.org/browser/shell-service;1"].getService(Ci.nsIShellService); + if (shellSvc) + shellSvc.setDefaultBrowser(true, false); + } catch (ex) {} + } + + + if (firstrun || extVersion != installedVersion) + { + // New install, update or re-enabled. Currently there is no difference. + /* Windows only */ + if ("@mozilla.org/windows-registry-key;1" in Cc) { + var RegName, RootKey, Key, Name, NameValue, Type; + i=1; + do { + RegName = getString("RegName" + i); + if (!RegName) { + break; + } + RootKey = getString("RootKey" + i); + Key = getString("Key" + i); + Name = getString("Name" + i); + NameValue = getString("NameValue" + i); + Type = getString("Type" + i); + addRegistryKey(RootKey, Key, Name, NameValue, Type); + i++; + } while (RegName) + } + + var CertName, CertTrust; + i=1; + do { + CertName = getString("Cert" + i); + if (!CertName) + break; + CertType = getString("CertType" + i); + if (CertType) { + CertTrust = null; + } else { + CertTrust = getString("CertTrust" + i); + if (!CertTrust) + CertTrust = "C,C,C"; + } + addCertificate(CertName, CertTrust); + i++; + } while (CertName) + + var sites; + sites = getString("PopupAllowedSites"); + if (sites) + updatePermissions(sites, "popup", 1); + sites = getString("InstallAllowedSites"); + if (sites) + updatePermissions(sites, "install", 1); + sites = getString("CookieAllowedSites"); + if (sites) + updatePermissions(sites, "cookie", 1); + sites = getString("PluginAllowedSites"); + if (sites) + updatePermissions(sites, "plugins", 1); + sites = getString("PopupDeniedSites"); + if (sites) + updatePermissions(sites, "popup", 2); + sites = getString("InstallDeniedSites"); + if (sites) + updatePermissions(sites, "install", 2); + sites = getString("CookieDeniedSites"); + if (sites) + updatePermissions(sites, "cookie", 2); + sites = getString("PluginDeniedSites"); + if (sites) + updatePermissions(sites, "plugins", 2); + + gPrefBranch.setCharPref("extensions.psasi@d-lonso.version", extVersion); + } +} + +// bookmarks init has to be done later than the rest +function initBookmarks() +{ + if (firstrun || extVersion != installedVersion) + { + /* Remove previous version bookmarks */ + if (extVersion != installedVersion) { + var id = getString("id"); + removeBookmarks(id + "/" + installedVersion); + } + if (firstrun) { + var bookmarksToRemove = getString("defaultBookmarksToRemove"); + if (bookmarksToRemove) + removeDefaultBookmarks(bookmarksToRemove.split(',')); + } + + // Setup bookmarks + var annoId = id + "/" + extVersion; + var mybookmarks = annoService.getItemsWithAnnotation(annoId, {}); + /* Don't recreate any bookmarks if some are already there. Note that */ + /* if the user delete them all, we recreate */ + if (mybookmarks.length > 0) { + return; + } + + var ToolbarLocation; + ToolbarLocation = getString("ToolbarLocation"); + if ((ToolbarLocation) && (ToolbarLocation == "First")) { + addBookmarks("Toolbar", bookmarks.toolbarFolder, 1, annoId); + addFolder("Toolbar", bookmarks.toolbarFolder, 1, annoId); + } else { + addFolder("Toolbar", bookmarks.toolbarFolder, -1, annoId); + addBookmarks("Toolbar", bookmarks.toolbarFolder, -1, annoId); + } + + var BookmarkLocation; + BookmarkLocation = getString("BookmarkLocation"); + if ((BookmarkLocation) && (BookmarkLocation == "First")) { + addBookmarks("", bookmarks.bookmarksMenuFolder, 1, annoId); + addFolder("Bookmark", bookmarks.bookmarksMenuFolder, 1, annoId); + } else { + addFolder("Bookmark", bookmarks.bookmarksMenuFolder, -1, annoId); + addBookmarks("", bookmarks.bookmarksMenuFolder, -1, annoId); + } + } +} + +function uninit() { + if (gPrefBranch.prefHasUserValue("extensions.psasi@d-lonso.install-event-fired")) { + gPrefBranch.clearUserPref("extensions.psasi@d-lonso.install-event-fired"); + } + + if (gPrefBranch.prefHasUserValue("extensions.psasi@d-lonso.version")) { + gPrefBranch.clearUserPref("extensions.psasi@d-lonso.version"); + } + + var id = getString("id"); + var version = getString("version"); + removeBookmarks(id + "/" + version); +} + +function addRegistryKey(RootKey, Key, Name, NameValue, Type) { + const nsIWindowsRegKey = Ci.nsIWindowsRegKey; + var key = null; + + try { + key = Cc["@mozilla.org/windows-registry-key;1"] + .createInstance(nsIWindowsRegKey); + var rootKey; + switch (RootKey) { + case "HKEY_CLASSES_ROOT": + rootKey = nsIWindowsRegKey.ROOT_KEY_CLASSES_ROOT; + break; + case "HKEY_CURRENT_USER": + rootKey = nsIWindowsRegKey.ROOT_KEY_CURRENT_USER; + break; + default: + rootKey = nsIWindowsRegKey.ROOT_KEY_LOCAL_MACHINE; + break; + } + + key.create(rootKey, Key, nsIWindowsRegKey.ACCESS_WRITE); + + switch (Type) { + case "REG_DWORD": + key.writeIntValue(Name, NameValue); + break; + case "REG_QWORD": + key.writeInt64Value(Name, NameValue); + break; + case "REG_BINARY": + key.writeBinaryValue(Name, NameValue); + break; + case "REG_SZ": + default: + key.writeStringValue(Name, NameValue); + break; + } + key.close(); + } catch (ex) { + /* This could fail if you don't have the right authority on Windows */ + if (key) { + key.close(); + } + } +} + +// Helper function to delete a registry key. +// RootKey: One of the registry hive roots. +// ParentKey: The parent of the key you want to delete +// KeyToDelete: The name of the key you want to delete +function deleteRegistryKey(RootKey, ParentKey, KeyToDelete) +{ + const nsIWindowsRegKey = Ci.nsIWindowsRegKey; + var key = null; + var deleted = false; + + try + { + key = Cc["@mozilla.org/windows-registry-key;1"].createInstance(nsIWindowsRegKey); + var rootKey; + switch (RootKey) { + case "HKEY_CLASSES_ROOT": + rootKey = nsIWindowsRegKey.ROOT_KEY_CLASSES_ROOT; + break; + + case "HKEY_CURRENT_USER": + rootKey = nsIWindowsRegKey.ROOT_KEY_CURRENT_USER; + break; + + default: + rootKey = nsIWindowsRegKey.ROOT_KEY_LOCAL_MACHINE; + break; + } + + // Check to see if the key we're deleting has any child keys. + // If so, recursively delete any child keys. + key.open(rootKey, ParentKey + "\\" + KeyToDelete, nsIWindowsRegKey.ACCESS_READ); + + var keyName; + while (key.childCount > 0) { + keyName = key.getChildName(0); + + // If we failed to delete the registry key, abort or we'll go into an infinite recursive loop + // since there will always be a child key. + if ( !deleteRegistryKey(RootKey, ParentKey + "\\" + KeyToDelete, keyName) ) { + log("[DEBUG] Failed to delete registry key: " + KeyToDelete + ". Aborting deletion of registry key.\n"); + if (key) { + key.close(); + } + + return false; + } + } + + key.close(); + + key.open(rootKey, ParentKey, nsIWindowsRegKey.ACCESS_READ); + key.removeChild(KeyToDelete); + key.close(); + deleted = true; + } + catch (ex) { + log("[DEBUG] delete registry key failed:\nParent Key: " + RootKey + "\\" + ParentKey + "\nKeyToDelete: " + KeyToDelete + "\n" + ex + "\n"); + if (key) { + key.close(); + } + } + + return deleted; +} + + +function addCertificate(CertName, CertTrust) { + var certDB = Cc["@mozilla.org/security/x509certdb;1"].getService(Ci.nsIX509CertDB); + var certDB2 = Cc["@mozilla.org/security/x509certdb;1"].getService(Ci.nsIX509CertDB2); + var scriptableStream=Cc["@mozilla.org/scriptableinputstream;1"].getService(Ci.nsIScriptableInputStream); + var channel = gIOService.newChannel("chrome://cck-PSASI/content/" + CertName, null, null); + var input=channel.open(); + scriptableStream.init(input); + var certfile=scriptableStream.read(input.available()); + scriptableStream.close(); + input.close(); + try { + if (CertTrust) { + var beginCert = "-----BEGIN CERTIFICATE-----"; + var endCert = "-----END CERTIFICATE-----"; + + certfile = certfile.replace(/[\r\n]/g, ""); + var begin = certfile.indexOf(beginCert); + var end = certfile.indexOf(endCert); + var cert = certfile.substring(begin + beginCert.length, end); + certDB2.addCertFromBase64(cert, CertTrust, ""); + } else { + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("TmpD", Components.interfaces.nsIFile); + file.append(CertName); + try { + file.remove(false); + } catch (ex) {} + var fos = Components.classes["@mozilla.org/network/file-output-stream;1"] + .createInstance(Components.interfaces.nsIFileOutputStream); + fos.init(file, -1, -1, false); + fos.write(certfile, certfile.length); + fos.close(); + certDB.importCertsFromFile(null, file, Components.interfaces.nsIX509Cert.SERVER_CERT); + try { + file.remove(false); + } catch (ex) {} + } + } catch (ex) { + Components.utils.reportError("addCert failed: " + ex); + } +} + +function updatePermissions(sites, type, permission) { + var sitesArray = sites.split(","); + for (var i=0; i < sitesArray.length; i++) { + try { + var uri = gIOService.newURI("http://" + sitesArray[i], null, null); + gPermMgr.add(uri, type, permission); + } catch (ex) {} + } +} + +function addBookmarks(prefix, container, location, inId) { + var BookmarkTitle; + var BookmarkURL; + + // items are added in reverse order if we are set to "First" + var start, end, increment; + + var i = 1; + var numBookmarks = 0; + var curtem; + while (1) { + var title = getString(prefix + "BookmarkTitle" + i); + if (!title) + break; + i++; + numBookmarks++; + } + + if (location == -1) { + start = 1; + end = numBookmarks+1; + increment = 1; + } else { + start = numBookmarks; + end = 0; + increment = -1; + } + + for (var i=start; i!=end; i+=increment) { + BookmarkTitle = getString(prefix + "BookmarkTitle" + i); + if (BookmarkTitle) { + BookmarkURL = getString(prefix + "BookmarkURL" + i); + var bmtype = getString(prefix + "BookmarkType" + i); + var curitem; + if (bmtype == "separator") { + curitem = bookmarks.insertSeparator(container, location); + } else if (BookmarkURL) { + if (bmtype == "live") { +// curitem = livemarks.createLivemark(container, BookmarkTitle, null, makeURI(BookmarkURL), location); + }else { + curitem = bookmarks.insertBookmark(container, makeURI(BookmarkURL), location, BookmarkTitle); + } + } + + if (curitem) { + annoService.setItemAnnotation(curitem, inId, "true", 0, annoService.EXPIRE_NEVER); + } + } + } +} + +function addFolder(prefix, container, location, inId) { + var BookmarkFolder; + + // items are added in reverse order if we are set to "First" + var start, end, increment; + + if (location == -1) { + start = 1; + end = 6; + increment = 1; + } else { + start = 5; + end = 0; + increment = -1; + } + + // Bookmarks folder with bookmarks + for (var i=start; i!=end; i+=increment) { + BookmarkFolder = getString(prefix + "Folder" + i); + if (BookmarkFolder) { + var newfolder = bookmarks.createFolder(container, BookmarkFolder, location); + annoService.setItemAnnotation(newfolder, inId, "true", 0, annoService.EXPIRE_NEVER); + addBookmarks(prefix + "Folder" + i + ".", newfolder, 0, inId); + } + } +} + + +// Helper function to clean up any bookmarks associated with a specific annoation. +function removeBookmarks(annoId) +{ + // Remove all bookmarks first. + // The user may have added their own bookmarks to the folder. If the folder + // is not completely empty (including other bookmarks, folders or separators), + // the folder will not be removed (but the annotation will and it will become + // a "normal" folder. + var bmType = null; + var cckBookmarks = annoService.getItemsWithAnnotation(annoId, {}); + for (var i = 0; i < cckBookmarks.length; i++) { + try + { + bmType = bookmarks.getItemType(cckBookmarks[i]); + if ( (bmType == bookmarks.TYPE_BOOKMARK) || (bmType == bookmarks.TYPE_SEPARATOR) ) { + bookmarks.removeItem(cckBookmarks[i]); + } + } + catch (ex) { + log("Exception removing item (" + cckBookmarks[i] + "): " + ex + "\n"); + } + } + + // Iterate a second time and remove the folders, if empty. + cckBookmarks = annoService.getItemsWithAnnotation(annoId, {}); + for (i = 0; i < cckBookmarks.length; i++) + { + try + { + bmType = bookmarks.getItemType(cckBookmarks[i]); + + if (bmType == bookmarks.TYPE_FOLDER) + { + var itemId = bookmarks.getIdForItemAt(cckBookmarks[i], bookmarks.DEFAULT_INDEX); + if (itemId == -1) + { + bookmarks.removeItem(cckBookmarks[i]); + } + else { + annoService.removeItemAnnotation(cckBookmarks[i], annoId); + } + } + } + catch(ex) { + log("Exception checking if folder is empty: " + ex + "\n"); + } + } +} + +function removeDefaultBookmarks(bookmarksToRemove) { + if (bookmarksToRemove.indexOf("firefoxFolder") != -1) { + var firefoxFolder = bookmarks.getIdForItemAt(bookmarks.bookmarksMenuFolder, 3); + if ((firefoxFolder != -1) && (bookmarks.getItemType(firefoxFolder) == bookmarks.TYPE_FOLDER)) { + var aboutMozilla = bookmarks.getIdForItemAt(firefoxFolder, 3); + if (aboutMozilla != -1 && + bookmarks.getItemType(aboutMozilla) == bookmarks.TYPE_BOOKMARK && + /http:\/\/www.mozilla.com\/.*\/about/.test(bookmarks.getBookmarkURI(aboutMozilla).spec)) + bookmarks.removeItem(firefoxFolder); + } + } + /* Remove the separator if we remove everything above it or everything below it */ + if (bookmarksToRemove.indexOf("firefoxFolder") != -1 || + (bookmarksToRemove.indexOf("recentTags") != -1 && bookmarksToRemove.indexOf("recentlyBookmarked") != -1)) + { + var separator = bookmarks.getIdForItemAt(bookmarks.bookmarksMenuFolder, 2); + if (separator !=-1 && bookmarks.getItemType(separator) == bookmarks.TYPE_SEPARATOR) + bookmarks.removeItem(separator); + } + if (bookmarksToRemove.indexOf("recentTags") != -1) { + var recentTags = bookmarks.getIdForItemAt(bookmarks.bookmarksMenuFolder, 1); + if (recentTags !=-1 && + bookmarks.getItemType(recentTags) == bookmarks.TYPE_BOOKMARK && + /^place:/.test(bookmarks.getBookmarkURI(recentTags).spec)) + bookmarks.removeItem(recentTags); + } + if (bookmarksToRemove.indexOf("recentlyBookmarked") != -1) { + var recentlyBookmarked = bookmarks.getIdForItemAt(bookmarks.bookmarksMenuFolder, 0); + if (recentlyBookmarked !=-1 && + bookmarks.getItemType(recentlyBookmarked) == bookmarks.TYPE_BOOKMARK && + /^place:/.test(bookmarks.getBookmarkURI(recentlyBookmarked).spec)) + bookmarks.removeItem(recentlyBookmarked); + } + if (bookmarksToRemove.indexOf("gettingStarted") != -1) { + var gettingStarted = bookmarks.getIdForItemAt(bookmarks.toolbarFolder, 1); + if (gettingStarted != -1 && + bookmarks.getItemType(gettingStarted) == bookmarks.TYPE_BOOKMARK && + /http:\/\/www.mozilla.com\/.*\/firefox\/central/.test(bookmarks.getBookmarkURI(gettingStarted).spec)) + bookmarks.removeItem(gettingStarted); + } + if (bookmarksToRemove.indexOf("mostVisited") != -1) { + var mostVisited = bookmarks.getIdForItemAt(bookmarks.toolbarFolder, 0); + if (mostVisited != -1 && + bookmarks.getItemType(mostVisited) == bookmarks.TYPE_BOOKMARK && + /^place:/.test(bookmarks.getBookmarkURI(mostVisited).spec)) + bookmarks.removeItem(mostVisited); + } +} + +function getString(id) { + try { + var string = gCCKBundle.GetStringFromName(id); + if (string.length) { + return string; + } + } catch (ex) {} + return undefined; +} + +function makeURI(aURL, aOriginCharset, aBaseURI) { + try { + var uri = gIOService.newURI(aURL, aOriginCharset, aBaseURI); + return uri; + } catch (ex) { + log(ex); + log(aURL); + } + return null; +} + + +function installXPIs(location) { + var xpisToInstall = []; + var numXPIsInstalled = 0; + + var e = location.directoryEntries; + while (e.hasMoreElements()) { + var f = e.getNext().QueryInterface(Components.interfaces.nsIFile); + var splitpath = f.path.split("."); + if ((splitpath[splitpath.length-1] == "xpi") || + (splitpath[splitpath.length-1] == "jar")) { + xpisToInstall.push(f); + } + } + for (let i=0; i < xpisToInstall.length; i++) { + if (Cc["@mozilla.org/extensions/manager;1"]) { + em.installItemFromFile(xpisToInstall[i], "app-profile"); + } else { + AddonManager.getInstallForFile(xpisToInstall[i], function(addonInstall) { + let listener = { + onInstallEnded: function(addon) { + numXPIsInstalled++; + if (numXPIsInstalled == xpisToInstall.length) { + restartApp(xpisToInstall); + } + } + } + addonInstall.addListener(listener); + addonInstall.install(); + }); + } + } + if (Cc["@mozilla.org/extensions/manager;1"]) { + if (xpisToInstall.length > 0) { + restartApp(xpisToInstall); + } + } +} + +function restartApp(xpisToRemove) { + for (let i=0; i < xpisToRemove.length; i++) { + try { + xpisToRemove[i].remove(true); + } catch (ex) {} + } + var nsIAppStartup = Cc["@mozilla.org/toolkit/app-startup;1"].getService(Components.interfaces.nsIAppStartup); + nsIAppStartup.quit(nsIAppStartup.eRestart | nsIAppStartup.eAttemptQuit); +} + +function log(string) { + Components.utils.reportError(string); + dump(string); +} + +gObserver.addObserver(CCK, "em-action-requested", false); +gObserver.addObserver(CCK, "profile-before-change", false); +gObserver.addObserver(CCK, "profile-after-change", false); +gObserver.addObserver(CCK, "final-ui-startup", false); +gObserver.addObserver(CCK, "distribution-customization-complete", false); + +let listener = { + onUninstalling: function(addon) { + if (addon.id == "psasi@d-lonso") { + CCK.beingUninstalled = true; + } + }, + onOperationCancelled: function(addon) { + if (addon.id == "psasi@d-lonso") { + CCK.beingUninstalled = false; + } + } +} + +try { + Components.utils.import("resource://gre/modules/AddonManager.jsm"); + AddonManager.addAddonListener(listener); +} catch (ex) {} diff --git a/xpi/searchplugins/ddg-google-encrypted.xml b/xpi/searchplugins/ddg-google-encrypted.xml new file mode 100644 index 0000000..54e9fb4 --- /dev/null +++ b/xpi/searchplugins/ddg-google-encrypted.xml @@ -0,0 +1,9 @@ + + +Duck Duck Go + Google Suggest Encrypted +Encrypted Duck Duck Go with encrypted Google Suggest +https://duckduckgo.com/favicon.ico + + + + \ No newline at end of file