From 49079b277d67391d8d108f1d1cb8260ab49a397a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20=C3=85kre=20Solberg?= <andreas.solberg@uninett.no>
Date: Wed, 11 Feb 2009 01:02:52 +0000
Subject: [PATCH] Improving User interface for single logout...

git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@1253 44740490-163a-0410-bde0-09ae8108e29a
---
 dictionaries/logout.php                     |  10 ++++
 templates/logout-iframe.php                 |  51 ++++++++++++--------
 www/resources/icons/gn/notice-l.png         | Bin 0 -> 2886 bytes
 www/resources/icons/gn/stop-l.png           | Bin 0 -> 2422 bytes
 www/resources/icons/gn/success-l.png        | Bin 0 -> 3648 bytes
 www/resources/icons/gn/warning-l.png        | Bin 0 -> 2261 bytes
 www/resources/icons/service.png             | Bin 0 -> 676 bytes
 www/resources/slo.css                       |  12 +++--
 www/saml2/idp/SingleLogoutServiceiFrame.php |   2 +-
 www/saml2/sp/SingleLogoutService.php        |   2 +-
 10 files changed, 52 insertions(+), 25 deletions(-)
 create mode 100644 www/resources/icons/gn/notice-l.png
 create mode 100644 www/resources/icons/gn/stop-l.png
 create mode 100644 www/resources/icons/gn/success-l.png
 create mode 100644 www/resources/icons/gn/warning-l.png
 create mode 100644 www/resources/icons/service.png

diff --git a/dictionaries/logout.php b/dictionaries/logout.php
index 0b9a6cdc2..cd28b90d2 100644
--- a/dictionaries/logout.php
+++ b/dictionaries/logout.php
@@ -50,14 +50,24 @@ $lang = array(
 		'pt-BR' => 'Voltar a instalação do simpleSAMLphp',
 	),
 	'loggedoutfrom' => array (
+		'no' => 'Du er nĂĄ logget ut fra %SP%.',
+		'en' => 'You are now successfully logged out from %SP%.',
 	),
 	'also_from' => array (
+		'no' => 'Du er ogsĂĄ logget inn pĂĄ disse tjenestene:',
+		'en' => 'You are also logged in on these services:',
 	),
 	'logout_all_question' => array (
+		'no' => 'Vil du logge ut fra alle tjenestene ovenfor?',
+		'en' => 'Do you want to logout from all the services above?',
 	),
 	'logout_all' => array (
+		'no' => 'Ja, alle tjenestene over',
+		'en' => 'Yes, all services',
 	),
 	'logout_only' => array (
+		'no' => 'Nei, bare %SP%',
+		'en' => 'No, only %SP%',
 	),
 	'description' => array (
 		'no' => 'Du har startet en <strong>global utlogging</strong> fra tjenesten <strong>%REQUESTERNAME%</strong>. Global utlogging betyr at du vil bli logget ut fra alle tjenestene vist nedenfor.',
diff --git a/templates/logout-iframe.php b/templates/logout-iframe.php
index e6b41e32d..9fa46c6e2 100644
--- a/templates/logout-iframe.php
+++ b/templates/logout-iframe.php
@@ -81,19 +81,17 @@ function sendResponse() {
 	<div id="nojavascriptframe">
 		<iframe style="margin: 1em; width: 90%; height: 5em; border: 1px solid #eee" src="SingleLogoutServiceiFrameNoJavascript.php?response=<?php echo urlencode($this->data['logoutresponse']); ?>"></iframe>			
 	</div>
-
 <?php
-
 	foreach ($this->data['sparray'] AS $sp) {
 		echo '<iframe class="hiddeniframe" onload="xajax_updateslostatus()" style="border: 1px solid #888; width: 80%; height: 100px" 
 			src="' . htmlentities($sp['url']) . '" ></iframe>' . "\n";
 	}
-
 ?>
-
 </noscript>
 
 
+
+
 <div id="requirejavascript" style="display: none">
 
 	<?php
@@ -101,18 +99,26 @@ function sendResponse() {
 	$requestername = is_array($this->data['requesterName']) ? 
 		$this->getTranslation($this->data['requesterName']) : $this->data['requesterName'];
 
-	echo('<p>' . $this->t('{logout:description}', array('%REQUESTERNAME%' => $requestername)) . '</p>');
+	#echo('<p>' . $this->t('{logout:description}', array('%REQUESTERNAME%' => $requestername)) . '</p>');
 	
 	?>
 
 	<!-- <div class="loggedout"><?php echo($this->t('{logout:logged_out}', array('%REQUESTERNAME%' => $requestername))); ?></div> -->
 
 	<?php
-
-
+	
+		echo('<div><img style="float: left; margin-right: 12px" src="/' . $this->data['baseurlpath'] . 'resources/icons/gn/success-l.png" alt="Successful logout" />');
+		echo('<p style="padding-top: 16px; ">' . $this->t('{logout:loggedoutfrom}', array('%SP%' => '<strong>' .$requestername.'</strong>')) . '</p>');
+		echo('<p style="height: 0px; clear: left;"></p>');
+		echo('</div>');
 		
+
+		echo('<div style="margin-top: 3em; clear: both">');
+		echo('<p style="margin-bottom: .5em">' . $this->t('{logout:also_from}') . '</p>');
 		
 		echo '<table id="slostatustable">';
+
+/** Remove initiated from. showed above instead
 		
 		echo '<tr class="initiated" id="e_initiated">' . "\n";
 		echo '	<td><img style="float: left; margin: 3px" src="/' . $this->data['baseurlpath'] . 
@@ -121,15 +127,16 @@ function sendResponse() {
 		echo '	<td>' . $requestername . '</td>' ."\n";
 		echo '</tr>' . "\n";
 		
-		
+		*/
 
 
 		foreach ($this->data['sparrayNoLogout'] AS $spentityid => $sp) {
 			$spname = is_array($sp['name']) ? $this->getTranslation($sp['name']) : $sp['name'];
 			echo '<tr class="initiated" id="e' . sha1($spentityid) . '">' . "\n";
-			echo '	<td><img style="float: left; margin: 3px" src="/' . $this->data['baseurlpath'] . 
+			echo '	<td class="statustext">Logout not supported</td>';
+			echo '	<td ><img style="" src="/' . $this->data['baseurlpath'] . 
 				'resources/icons/silk/delete.png" alt="Initiated from" /></td>' . "\n";
-			echo '	<td>Logout not supported</td>';
+
 			echo '	<td>' . $spname . '</td>' ."\n";
 			echo '</tr>' . "\n";
 		}
@@ -140,19 +147,23 @@ function sendResponse() {
 			
 			echo '<tr class="ready onhold" id="e' . sha1($spentityid) . '">' . "\n";
 
+			echo '	<td class="statustext">';
+			echo '		<span class="completed">' . $this->t('{logout:completed}') . '</span>' . "\n";
+#			echo '		<span class="onhold">' . $this->t('{logout:hold}') . '</span>' . "\n";
+			echo '		<span class="onhold"></span>' . "\n";
+			echo '		<span class="inprogress">' . $this->t('{logout:progress}') . '</span>' . "\n";
+			echo '		<span class="failed">' . $this->t('{logout:failed}') . '</span>' . "\n";
+			echo '	</td>';
+
 			echo '	<td class="icons">';
 			echo '		<img class="completed"  src="/' . $this->data['baseurlpath'] . 'resources/icons/silk/accept.png" alt="Completed" />' . "\n";
-			echo '		<img class="onhold"     src="/' . $this->data['baseurlpath'] . 'resources/icons/silk/control_pause.png" alt="SP SLO on hold" />' . "\n";
+			echo '		<img class="onhold"     src="/' . $this->data['baseurlpath'] . 'resources/icons/service.png" alt="SP SLO on hold" />' . "\n";
 			echo '		<img class="inprogress" src="/' . $this->data['baseurlpath'] . 'resources/progress.gif" alt="Progress bar" />' . "\n";
 			echo '		<img class="failed"     src="/' . $this->data['baseurlpath'] . 'resources/icons/silk/exclamation.png" alt="Failed" />' . "\n";
 			echo '	</td>' . "\n";
 			
-			echo '	<td class="statustext">';
-			echo '		<span class="completed">' . $this->t('{logout:completed}') . '</span>' . "\n";
-			echo '		<span class="onhold">' . $this->t('{logout:hold}') . '</span>' . "\n";
-			echo '		<span class="inprogress">' . $this->t('{logout:progress}') . '</span>' . "\n";
-			echo '		<span class="failed">' . $this->t('{logout:failed}') . '</span>' . "\n";
-			echo '	</td>';
+
+			
 			echo '	<td>' . $spname . '</td>' ."\n";
 			
 			echo '</tr>' . "\n";
@@ -170,9 +181,9 @@ function sendResponse() {
 
 	?>
 
-	<p id="confirmation" style="margin-top: 1em" ><?php echo $this->t('{logout:continue}'); ?> <br />
-		<input type="button" id="ok" name="ok" value="<?php echo $this->t('{logout:do_continue}'); ?>" />
-		<input type="button" id="cancel" name="cancel" value="<?php echo $this->t('{logout:cancel}'); ?>" />
+	<p id="confirmation" style="margin-top: 1em" ><?php echo $this->t('{logout:logout_all_question}'); ?> <br />
+		<input type="button" id="ok" name="ok" value="<?php echo $this->t('{logout:logout_all}'); ?>" />
+		<input type="button" id="cancel" name="cancel" value="<?php echo $this->t('{logout:logout_only}', array('%SP%' => $requestername)); ?>" />
 	</p>
 	
 	<div id="interrupt" style="margin-top: 1em; border: 1px solid #ccc; padding: 1em; background: #eaeaea" >
diff --git a/www/resources/icons/gn/notice-l.png b/www/resources/icons/gn/notice-l.png
new file mode 100644
index 0000000000000000000000000000000000000000..3e93a6a10244c148cf53d21430510788004664ef
GIT binary patch
literal 2886
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

literal 0
HcmV?d00001

diff --git a/www/resources/icons/gn/stop-l.png b/www/resources/icons/gn/stop-l.png
new file mode 100644
index 0000000000000000000000000000000000000000..6006309186909ae9b6d165130051bd12ebbcbff9
GIT binary patch
literal 2422
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

literal 0
HcmV?d00001

diff --git a/www/resources/icons/gn/success-l.png b/www/resources/icons/gn/success-l.png
new file mode 100644
index 0000000000000000000000000000000000000000..2617e2012e3a909a22de1ee0ae2c79d83e563c68
GIT binary patch
literal 3648
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
Sva;3y0000<MNUMnLSTZ##?6=j

literal 0
HcmV?d00001

diff --git a/www/resources/icons/gn/warning-l.png b/www/resources/icons/gn/warning-l.png
new file mode 100644
index 0000000000000000000000000000000000000000..c81c9359c3e3a6b0ceecfde3e49f3086f3e5ccd5
GIT binary patch
literal 2261
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

literal 0
HcmV?d00001

diff --git a/www/resources/icons/service.png b/www/resources/icons/service.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b8a8859dee94b3f009a0355a9249163b5fff1ed
GIT binary patch
literal 676
zcmV;V0$crwP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004b3#c}2nYxW
zd<bNS00009a7bBm000fw000fw0YWI7cmMzZ8FWQhbW?9;ba!ELWdL_~cP?peYja~^
zaAhuUa%Y?FJQ@H10wGC6K~y-6jgw7iQ$ZAk&-^5LiKeZkf>Lcs1BHqj3ZbRMg;Kh(
zU?~WKAUu#1T)XW;r2Fo=6!I3?D2k%(u3hEPU<sO7G=!4+Ll$jHZ9+**GV`vBsEEEq
z2WB((n=^OLoMA)+w_#gsh%uHWqDai7&#n*v-l-s@Tp1X?-Xo-3>BIm4i0H4GN?`KM
z^H5DUb}930u$D?-(v2e`_YQ;<i^Gw)!9*`Y<M#|9#o~Wo!M4~CAZL2c%rbSfjNY?z
zj2z6g*SiSV78^?^WrA~&4@VayS|32oG~kpGjxI>fc|M(#3EN_0zYDNb0{udIm$?kw
z8XUdi8#q7Bg~xzXUjv5*ct2QR4!TuA`Qt06RM==Zs{U9jbw6g(A+s%B4xYYrYINeZ
zV5mdaUjuXi&i!EA+cw&10^%IFcN|*Pu#<VBtL67!iJS>>cb?W%^JuEFm+vzICp^C3
z1uz~2sXc%+00!oZg2^zd`&%exU({-qPuq^8=VK-n*v}x@7P~2==Yf#Ekx*pTf3nZd
zsre4Vm_qfi>=fUw)*bz=sFi*gGwJCs5B^M|ZLw+TF<xH2cE?Z6Z7^>H*^Nhat<;T}
zN$dZ7#+XU#L^@YF_yS>EL}kAK06DkKt^xp{RconK$Q*MKL}@2`td&}F<Jt~)i0Ee0
zx0PER(VI!%Rwt%olmS4u8u4m*SL;?I-tqKq9sKxISG(1T2;TwO<5(o&Z_9H40000<
KMNUMnLSTZbS}D5#

literal 0
HcmV?d00001

diff --git a/www/resources/slo.css b/www/resources/slo.css
index 7bf8578ef..58d5b4d06 100644
--- a/www/resources/slo.css
+++ b/www/resources/slo.css
@@ -1,9 +1,15 @@
 table#slostatustable {
-	width: 100%;
+/*	width: 100%; */
 	border-collapse: collapse;
+	margin-bottom: 1em;
 }
 table#slostatustable tr td {
-	border-top: 1px solid #ccc;
+/*	border-top: 1px solid #ccc; */
+	padding-left: 4px;
+	padding-right: 4px;
+}
+table#slostatustable tr td.statustext {
+	min-width: 5em;
 }
 
 
@@ -14,7 +20,7 @@ table#slostatustable tr.inprogress td.statustext span.inprogress { display: inli
 table#slostatustable tr.failed td.statustext span.failed { display: inline; }
 
 table#slostatustable tr td.icons img {
-	margin: 3px;
+/*	margin: 3px; */
 	display: none;
 }
 table#slostatustable tr.completed td.icons img.completed { display: inline; }
diff --git a/www/saml2/idp/SingleLogoutServiceiFrame.php b/www/saml2/idp/SingleLogoutServiceiFrame.php
index dcef2cb2f..2985f746f 100644
--- a/www/saml2/idp/SingleLogoutServiceiFrame.php
+++ b/www/saml2/idp/SingleLogoutServiceiFrame.php
@@ -359,7 +359,7 @@ if (array_key_exists('name', $spmeta)) $spname = $spmeta['name'];
 
 $et = new SimpleSAML_XHTML_Template($config, 'logout-iframe.php');
 
-$et->data['header'] = 'Global logout';
+$et->data['header'] = 'Logout';
 $et->data['sparray'] = $sparray;
 $et->data['sparrayNoLogout'] = $sparrayNoLogout;
 
diff --git a/www/saml2/sp/SingleLogoutService.php b/www/saml2/sp/SingleLogoutService.php
index 6db72f0cd..037e39b49 100644
--- a/www/saml2/sp/SingleLogoutService.php
+++ b/www/saml2/sp/SingleLogoutService.php
@@ -22,7 +22,7 @@ if (isset($session) ) {
 	$session->clean();
 }
 
-#	sleep(max(0, rand(-5,15)));
+	sleep(max(0, rand(-3,5))*5);
 
 if (isset($_GET['SAMLRequest'])) {
 
-- 
GitLab