From b3cb7dc73ab4688002df8553c6c5973cab44a19a Mon Sep 17 00:00:00 2001 From: Olav Morken <olav.morken@uninett.no> Date: Fri, 27 Mar 2009 09:14:56 +0000 Subject: [PATCH] Change consent layout for better viewing on handheld devices. Added table caption for better accessibility. Patch by thomas.graff@uninett.no git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@1445 44740490-163a-0410-bde0-09ae8108e29a --- modules/consent/templates/consentform.php | 70 ++++++++--------------- modules/consent/www/style.css | 37 ++++-------- www/resources/default.css | 4 ++ 3 files changed, 37 insertions(+), 74 deletions(-) diff --git a/modules/consent/templates/consentform.php b/modules/consent/templates/consentform.php index 1f5430ad9..41ac281a3 100644 --- a/modules/consent/templates/consentform.php +++ b/modules/consent/templates/consentform.php @@ -61,7 +61,6 @@ $this->includeAtTemplateBase('includes/header.php'); <p> <?php echo $this->t('{consent:consent:consent_accept}', array( 'SPNAME' => $dstName, 'IDPNAME' => $srcName )); - #echo $this->t('{consent:consent:consent_notice}', array( 'SPNAME' => $dstName )); if (array_key_exists('descr_purpose', $this->data['dstMetadata'])) { echo '</p><p>' . $this->t('{consent:consent:consent_purpose}', array( 'SPNAME' => $dstName, @@ -89,7 +88,6 @@ $this->includeAtTemplateBase('includes/header.php'); </p> <input type="submit" name="yes" id="yesbutton" value="<?php echo htmlspecialchars($this->t('{consent:consent:yes}')) ?>" /> - </form> <form style="display: inline; margin-left: .5em;" action="<?php echo htmlspecialchars($this->data['noTarget']); ?>" method="get"> @@ -112,12 +110,7 @@ if ($this->data['sppp'] !== FALSE) { } ?> -<form style="display: inline; margin-left: .5em;" action="<?php echo htmlspecialchars($this->data['noTarget']); ?>" method="get"> <?php -foreach ($this->data['noData'] as $name => $value) { - echo('<input type="hidden" name="' . htmlspecialchars($name) . '" value="' . htmlspecialchars($value) . '" />'); -} - function present_list($attr) { if (is_array($attr) && count($attr) > 1) { $str = '<ul><li>' . join('</li><li>', $attr) . '</li></ul>'; @@ -146,15 +139,15 @@ foreach ($this->data['noData'] as $name => $value) { function present_attributes($t, $attributes, $nameParent) { $alternate = array('odd', 'even'); $i = 0; + $summary = 'summary="' . $t->t('{consent:consent:table_summary}') . '"'; if(strlen($nameParent) > 0){ $parentStr = strtolower($nameParent) . '_'; - $str = '<table class="attributes">'; + $str = '<table class="attributes"' . $summary . ' >'; }else{ $parentStr = ''; - $summary = 'summary="' . $t->t('{consent:consent:table_summary}') . '"'; $str = '<table id="table_with_attributes" class="attributes" '. $summary .'>'; - $str .= '<caption>' . $t->t('{consent:consent:table_caption}') . '</caption>'; + $str .= "\n" . '<caption>' . $t->t('{consent:consent:table_caption}') . '</caption>'; } foreach ($attributes as $name => $value) { @@ -165,60 +158,43 @@ foreach ($this->data['noData'] as $name => $value) { } if (preg_match('/^child_/', $nameraw)) { + // Insert child table $parentName = preg_replace('/^child_/', '', $nameraw); foreach($value AS $child) { - $str .= '<tr class="odd"><td colspan="2" style="padding: 2em">' . present_attributes($t, $child, $parentName) . '</td></tr>'; + $str .= "\n" . '<tr class="odd"><td style="padding: 2em">' . present_attributes($t, $child, $parentName) . '</td></tr>'; } - } else { + } else { + // Insert values directly + $str .= "\n" . '<tr class="' . $alternate[($i++ % 2)] . '"><td><span class="attrname">' . htmlspecialchars($name) . '</span><div class="attrvalue">'; if (sizeof($value) > 1) { - $str .= '<tr class="' . $alternate[($i++ % 2)] . '"><td class="attrname">' . htmlspecialchars($name) . '</td><td class="attrvalue"><ul>'; + // We hawe several values + $str .= '<ul>'; foreach ($value AS $listitem) { if ($nameraw === 'jpegPhoto') { - $str .= '<li><img src="data:image/jpeg;base64,' . $listitem . '" /></li>'; + $str .= '<li><img src="data:image/jpeg;base64,' . $listitem . '" alt="User photo" /></li>'; } else { $str .= '<li>' . present_assoc($listitem) . '</li>'; } } - $str .= '</ul></td></tr>'; + $str .= '</ul>'; } elseif(isset($value[0])) { - $str .= '<tr class="' . $alternate[($i++ % 2)] . '"><td class="attrname">' . htmlspecialchars($name) . '</td>'; + // We hawe only one value if ($nameraw === 'jpegPhoto') { - $str .= '<td class="attrvalue"><img src="data:image/jpeg;base64,' . htmlspecialchars($value[0]) . '" /></td></tr>'; + $str .= '<img src="data:image/jpeg;base64,' . htmlspecialchars($value[0]) . '" alt="User photo" />'; } else { - $str .= '<td class="attrvalue">' . htmlspecialchars($value[0]) . '</td></tr>'; + $str .= htmlspecialchars($value[0]); } - } - } - $str .= "\n"; - } - $str .= '</table>'; + } // end of if multivalue + $str .= '</div></td></tr>'; + } // end else: not child table + } // end foreach + $str .= count($attributes)>1? '</table>':''; return $str; } - - ?> - -<!-- Show attributes that are sent to the service in a fieldset. - This fieldset is not expanded by default, but can be shown by clicking on the legend. - --> - - <fieldset class="fancyfieldset"> - <legend id="attribute_switch"><?php - echo $this->t('{consent:consent:consent_attributes_header}',array( 'SPNAME' => $dstName, 'IDPNAME' => $srcName )); - ?></legend> - - <!-- - <div id="addattributes"> - <a id="addattributesb" class="link"><?php echo $this->t('{consent:consent:show_attributes}'); ?></a> - </div> - --> - <?php - echo(present_attributes($this, $attributes, '')); - ?> - </fieldset> -<!-- end attribute view --> -</form> + <h3 id="attributeheader"><?php echo $this->t('{consent:consent:consent_attributes_header}',array( 'SPNAME' => $dstName, 'IDPNAME' => $srcName )); ?></h3> + <?php echo(present_attributes($this, $attributes, '')); ?> <?php $this->includeAtTemplateBase('includes/footer.php'); -?> +?> \ No newline at end of file diff --git a/modules/consent/www/style.css b/modules/consent/www/style.css index 28991a505..65d7d0880 100644 --- a/modules/consent/www/style.css +++ b/modules/consent/www/style.css @@ -6,47 +6,30 @@ fieldset legend { background: #eee; } -#addattributesb { - margin-right: .2em; -} -table.attributes { - width: 100%; - margin: 0px; - border: 0px; - border-collapse: collapse; +h3#attributeheader { + background: #eee; } -table.attributes td.attrname { +table#table_with_attributes .attrname { text-align: right; -} -table.attributes tr.even td { - background: #eee; + font-weight: bold; } -table.attributes tr td { - border-bottom: 1px solid #bbb; - border-left: 0px; - border-right: 0px; - - padding-top: 5px; +table#table_with_attributes .attrvalue { padding-left: 1em; - padding-right: 1em; - - vertical-align: top; + margin: 0.5em 0em; } + table#table_with_attributes tr:last-child td { border-bottom: none; } -td.attrvalue img { + +table#table_with_attributes img { border: 1px solid #777; margin: 4px; } -table#table_with_attributes td.attrname { - color: #555; - font-weight: light; - font-size: 90%; -} table#table_with_attributes ul { margin: 0px; + padding-left: 1em; } diff --git a/www/resources/default.css b/www/resources/default.css index d02c23d96..757a0755c 100644 --- a/www/resources/default.css +++ b/www/resources/default.css @@ -327,3 +327,7 @@ div#confirmation { background: #eee; padding: .6em 1em .1em 1em; } + +caption { + display: none; +} -- GitLab