[js-embedded-discovery COMMIT] in /trunk: doc/RELEASE-NOTES.txt src/javascript/idpselect.js src/resources/idpselect.css

noreply at shibboleth.net noreply at shibboleth.net
Fri Jan 9 05:09:13 EST 2015


Author: rdw
Date: Fri Jan  9 05:09:13 2015
New Revision: 119

URL: http://svn.shibboleth.net/view/js-embedded-discovery?rev=119&view=rev
Log:
EDS-28 Make EDS shorter if no preselected IdPs have logos

Modified:
    trunk/doc/RELEASE-NOTES.txt
    trunk/src/javascript/idpselect.js
    trunk/src/resources/idpselect.css

Modified: trunk/doc/RELEASE-NOTES.txt
URL: http://svn.shibboleth.net/view/js-embedded-discovery/trunk/doc/RELEASE-NOTES.txt?rev=119&r1=118&r2=119&view=diff
==============================================================================
--- trunk/doc/RELEASE-NOTES.txt (original)
+++ trunk/doc/RELEASE-NOTES.txt Fri Jan  9 05:09:13 2015
@@ -10,6 +10,7 @@
 EDS-58 Configurable writing of the cookie.  Allows the SP to write it instead.
 EDS-33 Ordering of multiple selected IdPs is backwards.
 EDS-52 Deduplicate by entityId prior to displaying choices.
+EDS-28 Make EDS shorter if no preselected IdPs have logos
 
 Changed in V1.0.3
 =============================================

Modified: trunk/src/javascript/idpselect.js
URL: http://svn.shibboleth.net/view/js-embedded-discovery/trunk/src/javascript/idpselect.js?rev=119&r1=118&r2=119&view=diff
==============================================================================
--- trunk/src/javascript/idpselect.js (original)
+++ trunk/src/javascript/idpselect.js Fri Jan  9 05:09:13 2015
@@ -482,7 +482,7 @@
        TODO - rather more careful selection
     */
 
-    var getImageForIdP = function(idp) {
+    var getImageForIdP = function(idp, useDefault) {
 
         var getBestFit = function(language) {
             //
@@ -527,8 +527,10 @@
             bestFit = getBestFit(defaultLang);
         }
                
-
         if (null === bestFit) {
+            if (!useDefault) {
+                return null;
+            }
             img.src = defaultLogo;
             img.width = defaultLogoWidth;
             img.height = defaultLogoHeight;
@@ -597,12 +599,12 @@
       @return (Element) preselector for the IdP
     */
 
-    var composePreferredIdPButton = function(idp, uniq) {
+    var composePreferredIdPButton = function(idp, uniq, useDefault) {
         var div = buildDiv(undefined, 'PreferredIdPButton');
         var aval = document.createElement('a');
         var retString = returnIDParam + '=' + encodeURIComponent(getEntityId(idp));
         var retVal = returnString;
-        var img = getImageForIdP(idp);
+        var img = getImageForIdP(idp, useDefault);
         //
         // Compose up the URL
         //
@@ -615,9 +617,11 @@
         aval.onclick = function () {
             selectIdP(getEntityId(idp));
         };
-        var imgDiv=buildDiv(undefined, 'PreferredIdPImg');
-        imgDiv.appendChild(img);
-        aval.appendChild(imgDiv);
+        if (null != img) {
+            var imgDiv=buildDiv(undefined, 'PreferredIdPImg');
+            imgDiv.appendChild(img);
+            aval.appendChild(imgDiv);
+        }
 
         var nameDiv = buildDiv(undefined, 'TextDiv');
         var nameStr = getLocalizedName(idp);
@@ -675,13 +679,27 @@
             return false;
         }
 
-        var preferredIdPDIV = buildDiv('PreferredIdPTile');
+        var atLeastOneImg = false;
+        for(var i = 0 ; i < maxPreferredIdPs && i < preferredIdPs.length; i++){
+            if (preferredIdPs[i] && getImageForIdP(preferredIdPs[i], false)) {
+                atLeastOneImg = true;
+            }
+        }
+        
+        var preferredIdPDIV;
+        if (atLeastOneImg) {
+            preferredIdPDIV = buildDiv('PreferredIdPTile');
+        } else {
+            preferredIdPDIV = buildDiv('PreferredIdPTileNoImg');
+        }
+
 
         buildTextDiv(preferredIdPDIV, 'idpPreferred.label');
+
 
         for(var i = 0 ; i < maxPreferredIdPs && i < preferredIdPs.length; i++){
             if (preferredIdPs[i]) {
-                var button = composePreferredIdPButton(preferredIdPs[i],i);
+                var button = composePreferredIdPButton(preferredIdPs[i],i, atLeastOneImg);
                 preferredIdPDIV.appendChild(button);
             }
         }

Modified: trunk/src/resources/idpselect.css
URL: http://svn.shibboleth.net/view/js-embedded-discovery/trunk/src/resources/idpselect.css?rev=119&r1=118&r2=119&view=diff
==============================================================================
--- trunk/src/resources/idpselect.css (original)
+++ trunk/src/resources/idpselect.css Fri Jan  9 05:09:13 2015
@@ -19,6 +19,10 @@
     height:138px; /* Force the height so that the  selector box
                    * goes below when there is only one preslect 
                    */
+}
+#idpSelectPreferredIdPTileNoImg
+{
+    height:60px;
 }
 
 /***



More information about the commits mailing list