Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordave@33eels.com <dave@33eels.com@4eb1ac78-321c-0410-a911-ec516a8615a5>2009-03-17 16:57:27 (GMT)
committer dave@33eels.com <dave@33eels.com@4eb1ac78-321c-0410-a911-ec516a8615a5>2009-03-17 16:57:27 (GMT)
commit77b8daf453d658751e5999239037898f6e4d1f55 (patch)
treeac4fa081fb62e384e7defbbf720abfa3bed1ba58
parent33f9646f6f0b2dc8db29efd365a4f4268f79422c (diff)
Fix for bug 481237 ("[E-1.3] Publishing Menu Changes")
git-svn-id: http://svn.mozilla.org/addons/trunk@23424 4eb1ac78-321c-0410-a911-ec516a8615a5
-rw-r--r--bandwagon/content/scripts/bandwagon.js5
-rw-r--r--bandwagon/content/ui/bindings/bandwagon.xml110
2 files changed, 47 insertions, 68 deletions
diff --git a/bandwagon/content/scripts/bandwagon.js b/bandwagon/content/scripts/bandwagon.js
index b67b340..ff34feb 100644
--- a/bandwagon/content/scripts/bandwagon.js
+++ b/bandwagon/content/scripts/bandwagon.js
@@ -45,11 +45,14 @@ Bandwagon.SQLITE_FILENAME = "bandwagon.sqlite";
Bandwagon.COLLECTION_UPDATE_TIMER_DELAY = 60 * 60; // interval between checking if collection needs updating (in seconds) (this will always be 30 seconds in debug mode)
Bandwagon.DEFAULT_COLLECTION_UPDATE_INTERVAL = 24 * 60 * 60; // default individual collection update interval (in seconds)
Bandwagon.DEFAULT_ADDONS_PER_PAGE = 20;
+
+// REMEMBER: when changing AMO_HOST, the service document url in scripts/rpc/constants.js also has to be changed.
+
Bandwagon.AMO_HOST = "bandwagon.stage.mozilla.com";
-Bandwagon.FIRSTRUN_LANDING_PAGE = "http://www.google.com/search?hl=en&q=bandwagon+first+run+landing+page&btnG=Google+Search&aq=f&oq="; // TODO
Bandwagon.COLLECTIONSPANE_DO_SUBSCRIBE_URL = "https://" + Bandwagon.AMO_HOST + "/en-US/collections";
Bandwagon.COLLECTIONSPANE_DO_LOGIN_URL = "https://" + Bandwagon.AMO_HOST + "/en-US/firefox/users/login?to=en-US%2Ffirefox%2Fcollections";
Bandwagon.COLLECTIONSPANE_DO_NEW_COLLECTION_URL = "https://" + Bandwagon.AMO_HOST + "/en-US/firefox/collections/add";
+Bandwagon.FIRSTRUN_LANDING_PAGE = "http://www.google.com/search?hl=en&q=bandwagon+first+run+landing+page&btnG=Google+Search&aq=f&oq="; // TODO
Bandwagon.AMO_AUTH_COOKIE_HOST = Bandwagon.AMO_HOST;
Bandwagon.AMO_AUTH_COOKIE_NAME = "AMOv3";
diff --git a/bandwagon/content/ui/bindings/bandwagon.xml b/bandwagon/content/ui/bindings/bandwagon.xml
index 885f02f..ac31bcf 100644
--- a/bandwagon/content/ui/bindings/bandwagon.xml
+++ b/bandwagon/content/ui/bindings/bandwagon.xml
@@ -558,35 +558,23 @@
<content>
<xul:button label="&publishto.label;"
type="menu"
- anonid="publishButton1"
+ anonid="publishButton"
class="publishButton"
collapsed="true">
<xul:menupopup anonid="writableCollections">
<!-- writable collections go here -->
- <xul:menuitem label="&new.collection.label;" oncommand="Bandwagon.Controller.ExtensionsOverlay.doNewCollection();"/>
+ <xul:menuitem label="&new.collection.label;" oncommand="Bandwagon.Controller.ExtensionsOverlay.doNewCollection();" anonid="newCollection"/>
<xul:menuseparator anonid="writableCollectionSeparator"/>
- <xul:menu label="&email.address.label;" anonid="emailAddressMenu1">
- <xul:menupopup anonid="emailAddresses1">
+ <xul:menu label="&email.address.label;" anonid="emailAddressMenu">
+ <xul:menupopup anonid="emailAddresses">
<!-- email addresses go here -->
- <xul:menuseparator anonid="emailAddressSeparator1"/>
+ <xul:menuseparator anonid="emailAddressSeparator"/>
<xul:menuitem label="&new.email.address.label;" oncommand="Bandwagon.Controller.ExtensionsOverlay.doAddNewShareEmail();"/>
</xul:menupopup>
</xul:menu>
</xul:menupopup>
</xul:button>
- <xul:button label="&publishto.label;"
- type="menu"
- anonid="publishButton2"
- class="publishButton"
- collapsed="true">
- <xul:menupopup anonid="emailAddresses2">
- <!-- email addresses go here -->
- <xul:menuseparator anonid="emailAddressSeparator2"/>
- <xul:menuitem label="&new.email.address.label;"/>
- </xul:menupopup>
- </xul:button>
-
</content>
<implementation>
@@ -609,19 +597,16 @@
var elemWritableCollectionsPopup = document.getAnonymousElementByAttribute(this, "anonid", "writableCollections");
var elemWritableCollectionSeparator = document.getAnonymousElementByAttribute(this, "anonid", "writableCollectionSeparator");
- var elemEmailAddressesPopup1 = document.getAnonymousElementByAttribute(this, "anonid", "emailAddresses1");
- var elemEmailAddressesPopup2 = document.getAnonymousElementByAttribute(this, "anonid", "emailAddresses2");
- var elemEmailAddressSeparator1 = document.getAnonymousElementByAttribute(this, "anonid", "emailAddressSeparator1");
- var elemEmailAddressSeparator2 = document.getAnonymousElementByAttribute(this, "anonid", "emailAddressSeparator2");
- var elemEmailAddressMenu1 = document.getAnonymousElementByAttribute(this, "anonid", "emailAddressMenu1");
- var elemEmailAddressMenu2 = document.getAnonymousElementByAttribute(this, "anonid", "emailAddressMenu2");
- var elemPublishButton1 = document.getAnonymousElementByAttribute(this, "anonid", "publishButton1");
- var elemPublishButton2 = document.getAnonymousElementByAttribute(this, "anonid", "publishButton2");
+ var elemEmailAddressesPopup = document.getAnonymousElementByAttribute(this, "anonid", "emailAddresses");
+ var elemEmailAddressSeparator = document.getAnonymousElementByAttribute(this, "anonid", "emailAddressSeparator");
+ var elemEmailAddressMenu = document.getAnonymousElementByAttribute(this, "anonid", "emailAddressMenu");
+ var elemPublishButton = document.getAnonymousElementByAttribute(this, "anonid", "publishButton");
+ var elemNewCollection = document.getAnonymousElementByAttribute(this, "anonid", "newCollection");
// populate the email address menu
- var activeEmailMenu = (this.writableCollections.length==0?elemEmailAddressesPopup2:elemEmailAddressesPopup1);
- var activeEmailAddressSeparator = (this.writableCollections.length==0?elemEmailAddressSeparator2:elemEmailAddressSeparator1);
+ var activeEmailMenu = elemEmailAddressesPopup;
+ var activeEmailAddressSeparator = elemEmailAddressSeparator;
if (this.emailAddresses.length)
{
@@ -650,56 +635,47 @@
activeEmailAddressSeparator.collapsed = true;
}
- if (this.writableCollections.length)
- {
- // populate the collections menu
+ // populate the collections menu
- function createAddToCollectionCallbackFunction(collection)
- {
- return function() { Bandwagon.Controller.ExtensionsOverlay.doPublishToCollection(collection); }
- }
-
- function createRemoveFromCollectionCallbackFunction(collection)
- {
- return function() { Bandwagon.Controller.ExtensionsOverlay.doRemoveFromCollection(collection); }
- }
+ function createAddToCollectionCallbackFunction(collection)
+ {
+ return function() { Bandwagon.Controller.ExtensionsOverlay.doPublishToCollection(collection); }
+ }
- for (var i=0; i<this.writableCollections.length; i++)
- {
- var collection = this.writableCollections[i];
+ function createRemoveFromCollectionCallbackFunction(collection)
+ {
+ return function() { Bandwagon.Controller.ExtensionsOverlay.doRemoveFromCollection(collection); }
+ }
- if (document.getAnonymousElementByAttribute(this, "anonid", "bandwagon-collection-" + collection.resourceURL))
- continue;
+ for (var i=0; i<this.writableCollections.length; i++)
+ {
+ var collection = this.writableCollections[i];
- var callbackAdd = createAddToCollectionCallbackFunction(collection);
- var callbackRemove = createRemoveFromCollectionCallbackFunction(collection);
+ if (document.getAnonymousElementByAttribute(this, "anonid", "bandwagon-collection-" + collection.resourceURL))
+ continue;
- var elemWritableCollection = document.createElementNS(XULNS, "menuitem");
- elemWritableCollection.setAttribute("label", (collection.name?collection.name:collection.resourceURL));
- elemWritableCollection.setAttribute("anonid", "bandwagon-collection-" + collection.resourceURL);
+ var callbackAdd = createAddToCollectionCallbackFunction(collection);
+ var callbackRemove = createRemoveFromCollectionCallbackFunction(collection);
- if (collection.__containsCurrentlySelectedExtension)
- {
- elemWritableCollection.setAttribute("checked", "true");
- elemWritableCollection.setAttribute("autocheck", "false");
- elemWritableCollection.addEventListener("command", callbackRemove, true);
- }
- else
- {
- elemWritableCollection.addEventListener("command", callbackAdd, true);
- }
+ var elemWritableCollection = document.createElementNS(XULNS, "menuitem");
+ elemWritableCollection.setAttribute("label", (collection.name?collection.name:collection.resourceURL));
+ elemWritableCollection.setAttribute("anonid", "bandwagon-collection-" + collection.resourceURL);
- elemWritableCollectionsPopup.insertBefore(elemWritableCollection, elemWritableCollectionSeparator);
+ if (collection.__containsCurrentlySelectedExtension)
+ {
+ elemWritableCollection.setAttribute("checked", "true");
+ elemWritableCollection.setAttribute("autocheck", "false");
+ elemWritableCollection.addEventListener("command", callbackRemove, true);
+ }
+ else
+ {
+ elemWritableCollection.addEventListener("command", callbackAdd, true);
}
- elemPublishButton1.collapsed = false;
- elemPublishButton2.collapsed = true;
- }
- else
- {
- elemPublishButton1.collapsed = true;
- elemPublishButton2.collapsed = false;
+ elemWritableCollectionsPopup.insertBefore(elemWritableCollection, elemNewCollection);
}
+
+ elemPublishButton.collapsed = false;
]]>
</body>
</method>