X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Faddressbook.php;h=419b73b920d1fe4ffb6616f4e8b83fe2c192930f;hb=7b0ea8602d2a437280347c0f0a46a27540e2ffcc;hp=eda30cc9ebd03f9a8736d1d8881b6e85814e0ee5;hpb=6af7eb01edcea6dabaf31910279c9b5c5c69241a;p=squirrelmail.git
diff --git a/src/addressbook.php b/src/addressbook.php
index eda30cc9..419b73b9 100644
--- a/src/addressbook.php
+++ b/src/addressbook.php
@@ -247,6 +247,11 @@ if ($showaddrlist) {
/* List addresses */
if (count($alist) > 0) {
echo addForm($form_url, 'post');
+ if ($abook->add_extra_field) {
+ $abook_fields = 6;
+ } else {
+ $abook_fields = 5;
+ }
while(list($undef,$row) = each($alist)) {
/* New table header for each backend */
@@ -257,10 +262,10 @@ if ($showaddrlist) {
html_tag( 'td',
addSubmit(_("Edit selected"), 'editaddr').
addSubmit(_("Delete selected"), 'deladdr'),
- 'center', '', 'colspan="5"' )
+ 'center', '', "colspan=\"$abook_fields\"" )
) .
html_tag( 'tr',
- html_tag( 'td', '
', 'center', '', 'colspan="5"' )
+ html_tag( 'td', '
', 'center', '', "colspan=\"$abook_fields\"" )
),
'center' );
echo "\n\n" .
@@ -278,20 +283,22 @@ if ($showaddrlist) {
'left', '', 'width="1%"' ) . "\n" .
html_tag( 'th', _("Info") .
show_abook_sort_button($abook_sort_order, _("sort by info"), 6, 7),
- 'left', '', 'width="1%"' ) . "\n",
+ 'left', '', 'width="1%"' ) .
+ ($abook->add_extra_field ? html_tag( 'th', ' ','left', '', 'width="1%"'): '') .
+ "\n",
'', $color[9] ) . "\n";
}
// Separate different backends with
if($prevbackend > 0) {
echo html_tag( 'tr',
- html_tag( 'td', "
", 'center', '' ,'colspan="5"' )
+ html_tag( 'td', "
", 'center', '' ,"colspan=\"$abook_fields\"" )
);
}
// Print backend name
echo html_tag( 'tr',
- html_tag( 'td', "\n" . '' . $row['source'] . '' . "\n", 'center', $color[0] ,'colspan="5"' )
+ html_tag( 'td', "\n" . '' . $row['source'] . '' . "\n", 'center', $color[0] ,"colspan=\"$abook_fields\"" )
);
$line = 0;
@@ -309,45 +316,54 @@ if ($showaddrlist) {
} else {
$tr_bgcolor = $color[4];
}
+ echo html_tag( 'tr', '', '', $tr_bgcolor);
+ if ($abook->backends[$row['backend']]->writeable) {
+ echo html_tag( 'td',
+ '' .
+ addCheckBox('sel[]', $selected, $row['backend'].':'.$row['nickname']).
+ '' ,
+ 'center', '', 'valign="top" width="1%"' );
+ } else {
+ echo html_tag( 'td',
+ ' ' ,
+ 'center', '', 'valign="top" width="1%"' );
+ }
+ echo html_tag( 'td',
+ ' ' . htmlspecialchars($row['nickname']) . ' ',
+ 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' );
+
+ // different full name display formating for Japanese translation
if ($squirrelmail_language == 'ja_JP') {
- echo html_tag( 'tr', '', '', $tr_bgcolor);
- if ($abook->backends[$row['backend']]->writeable) {
- echo html_tag( 'td',
- '' .
- addCheckBox('sel[]', $selected, $row['backend'].':'.$row['nickname']).
- '' ,
- 'center', '', 'valign="top" width="1%"' );
- } else {
- echo html_tag( 'td',
- ' ' ,
- 'center', '', 'valign="top" width="1%"' );
- }
- echo html_tag( 'td', ' ' . $row['nickname'] . ' ', 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' ) .
- html_tag( 'td', ' ' . $row['lastname'] . ' ' . $row['firstname'] . ' ', 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' ) .
- html_tag( 'td', '', 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' ) . ' ';
+ /*
+ * translation uses euc-jp character set internally.
+ * htmlspecialchars() should not break any characters.
+ */
+ echo html_tag( 'td',
+ ' ' . htmlspecialchars($row['lastname']) . ' ' . htmlspecialchars($row['firstname']) . ' ',
+ 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' );
} else {
- echo html_tag( 'tr', '', '', $tr_bgcolor);
- if ($abook->backends[$row['backend']]->writeable) {
- echo html_tag( 'td',
- '' .
- addCheckBox('sel[]', $selected, $row['backend'] . ':' . $row['nickname']).
- '' ,
- 'center', '', 'valign="top" width="1%"' );
- } else {
- echo html_tag( 'td',
- ' ' ,
- 'center', '', 'valign="top" width="1%"' );
- }
- echo html_tag( 'td', ' ' . $row['nickname'] . ' ', 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' ) .
- html_tag( 'td', ' ' . $row['name'] . ' ', 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' ) .
- html_tag( 'td', '', 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' ) . ' ';
+ echo html_tag( 'td',
+ ' ' . htmlspecialchars($row['name']) . ' ',
+ 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' );
}
+
+ // email address column
+ echo html_tag( 'td', '', 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' ) . ' ';
$email = $abook->full_address($row);
echo makeComposeLink('src/compose.php?send_to='.rawurlencode($email),
htmlspecialchars($row['email'])).
- ' '."\n".
- html_tag( 'td', ' ' . htmlspecialchars($row['label']) . ' ', 'left', '', 'valign="top" width="1%"' ) .
- "\n";
+ ' '."\n";
+
+ // info column
+ echo html_tag( 'td', ' ' . htmlspecialchars($row['label']) . ' ', 'left', '', 'valign="top" width="1%"' );
+
+ // add extra column if third party backend needs it
+ if ($abook->add_extra_field) {
+ echo html_tag( 'td',
+ ' ' . (isset($row['extra']) ? $row['extra'] : '') . ' ',
+ 'left', '', 'valign="top" width="1%"' );
+ }
+ echo "\n";
$line++;
}
echo "" .
@@ -360,7 +376,7 @@ if ($showaddrlist) {
html_tag( 'td',
addSubmit(_("Edit selected"), 'editaddr') .
addSubmit(_("Delete selected"), 'deladdr'),
- 'center', '', 'colspan="5"' )
+ 'center', '', "colspan=\"$abook_fields\"" )
),
'center' );
}