*/
/**
- * Path for SquirrelMail required files.
- * @ignore
+ * Include the SquirrelMail initialization file.
*/
-define('SM_PATH','../');
+include('../include/init.php');
/** SquirrelMail required files. */
-include_once(SM_PATH . 'include/validate.php');
-require_once(SM_PATH . 'functions/display_messages.php');
+/* address book functions */
require_once(SM_PATH . 'functions/addressbook.php');
+/* form functions */
require_once(SM_PATH . 'functions/forms.php');
/** lets get the global vars we may need */
-sqgetGlobalVar('key', $key, SQ_COOKIE);
-
-sqgetGlobalVar('username', $username, SQ_SESSION);
-sqgetGlobalVar('onetimepad',$onetimepad, SQ_SESSION);
-sqgetGlobalVar('base_uri', $base_uri, SQ_SESSION);
-sqgetGlobalVar('delimiter', $delimiter, SQ_SESSION);
/* From the address form */
sqgetGlobalVar('addaddr', $addaddr, SQ_POST);
html_tag( 'tr',
html_tag( 'td',
"\n". '<br /><strong><font color="' . $color[2] .
- '">' . _("ERROR") . ': ' . $formerror . '</font></strong>' ."\n",
+ '">' . _("ERROR") . ': ' . nl2br(htmlspecialchars($formerror)) . '</font></strong>' ."\n",
'center' )
),
'center', '', 'width="100%"' );
/* Get and sort address list */
$alist = $abook->list_addr();
if(!is_array($alist)) {
- plain_error_message($abook->error, $color);
+ plain_error_message(nl2br(htmlspecialchars($abook->error)), $color);
exit;
}
}
echo html_tag( 'tr', '', '', $tr_bgcolor);
if ($abook->backends[$row['backend']]->writeable) {
+ $id = $row['backend'].':'.$row['nickname'];
echo html_tag( 'td',
'<small>' .
- addCheckBox('sel[]', $selected, $row['backend'].':'.$row['nickname']).
+ addCheckBox("sel[$id]", $selected, $id).
'</small>' ,
'center', '', 'valign="top" width="1%"' );
+ $label1 = '<label for="sel_'.$id.'_">'; $label2='</label>';
} else {
echo html_tag( 'td',
' ' ,
'center', '', 'valign="top" width="1%"' );
+ $label1 = $label2 = '';
}
echo html_tag( 'td',
- ' ' . htmlspecialchars($row['nickname']) . ' ',
+ ' ' . $label1 . htmlspecialchars($row['nickname']) . $label2 . ' ',
'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' );
- // different full name display formating for Japanese translation
- if ($squirrelmail_language == 'ja_JP') {
- /*
- * 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( 'td',
- ' ' . htmlspecialchars($row['name']) . ' ',
- 'left', '', 'valign="top" width="1%" style="white-space: nowrap;"' );
- }
+ echo html_tag( 'td',
+ ' ' . $label1 . htmlspecialchars($row['name']) . $label2 . ' ',
+ '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;"' ) . ' ';
abook_create_form($form_url,'addaddr',_("Add to address book"),_("Add address"),$defdata);
echo "</form>\n";
-/* Add hook for anything that wants on the bottom */
+/* Hook for extra address book blocks */
echo "<!-- start of addressbook_bottom hook-->\n";
do_hook('addressbook_bottom');
echo "\n<!-- end of addressbook_bottom hook-->\n";
$oTemplate->display('footer.tpl');
-?>
\ No newline at end of file
+?>