base URI is now uniformly generated, extraneous cookies are cleaned
up and session IDs are regenerated upon every login (Thanks to Tomas
Hoger). [CVE-2009-1580]
+ - Cleanup variable name in address search for compose to clearup confusion.
+ - Remove Javascript from address search page when JavaScript is disabled.
+ - Add "Check All" function to address book when using "in-page" addressbook.
Version 1.5.1 (branched on 2006-02-12)
--------------------------------------
if(sizeof($res) <= 0) return;
- $oTemplate->assign('use_js', true);
+ $oTemplate->assign('compose_addr_pop', true);
$oTemplate->assign('include_abook_name', $includesource);
$oTemplate->assign('addresses', formatAddressList($res));
if ($show == 'form' && ! isset($listall)) {
echo "<form name=\"sform\" target=\"abookres\" action=\"addrbook_search.php\" method=\"post\">\n";
- $oTemplate->assign('use_js', true);
+ $oTemplate->assign('compose_addr_pop', true);
$oTemplate->assign('backends', getBackends());
$oTemplate->display('addressbook_search_form.tpl');
addHidden('html_addr_search_done', 'true');
addr_insert_hidden();
- $oTemplate->assign('use_js', false);
+ $oTemplate->assign('compose_addr_pop', false);
$oTemplate->assign('include_abook_name', $includesource);
$oTemplate->assign('addresses', formatAddressList($res));
echo addHidden('session', $session);
}
-$oTemplate->assign('use_js', false);
+$oTemplate->assign('compose_addr_pop', false);
$oTemplate->assign('backends', getBackends());
$oTemplate->display('addressbook_search_form.tpl');
$colspan = $include_abook_name ? 5 : 4;
?>
<?php
-if ($use_js) {
+if ($javascript_on) {
insert_javascript();
}
?>
<div id="addressList">
<table cellspacing="0">
<tr>
- <td class="colHeader" style="width:1%"></td>
+ <td class="colHeader" style="width:1%; font-size: 8pt; white-space: nowrap;">
+<?php
+if ($javascript_on && !$compose_addr_pop) {
+?>
+ <input type="checkbox" id="checkAllTo" onClick="CheckAll('T');"><label for="checkAllTo"><?php echo _("All");?></label>
+ <input type="checkbox" id="checkAllCc" onClick="CheckAll('C');"><label for="checkAllCc"><?php echo _("Cc");?></label>
+ <input type="checkbox" id="checkAllBcc" onClick="CheckAll('B');"><label for="checkAllBcc"><?php echo _("Bcc");?></label>
+<?php
+}
+?>
+ </td>
<td class="colHeader"><?php echo _("Name"); ?></td>
<td class="colHeader"><?php echo _("E-mail"); ?></td>
<td class="colHeader"><?php echo _("Info"); ?></td>
if (count($addresses) == 0) {
echo '<tr><td class="abookEmpty" colspan="'.$colspan.'">'._("Address book is empty").'</td></tr>'."\n";
}
+
+ if ($compose_addr_pop) {
+ $addr_str = '<a href="javascript:to_and_close(\'%1$s\')">%1$s</a>';
+ } else {
+ $addr_str = '%1$s';
+ }
+
foreach ($addresses as $index=>$contact) {
?>
<tr class=<?php echo '"'.(($index+1)%2 ? 'even' : 'odd').'"'; ?>>
<td class="abookCompose" style="width:1%">
<?php
- if ($use_js) {
+ if ($compose_addr_pop) {
?>
<a href="javascript:to_address('<?php echo $contact['JSEmail']; ?>')"><?php echo _("To"); ?></a> |
<a href="javascript:cc_address('<?php echo $contact['JSEmail']; ?>')"><?php echo _("Cc"); ?></a> |
?>
</td>
<td class="abookField"><?php echo $contact['FullName']; ?></td>
- <td class="abookField"><a href="javascript:to_and_close('<?php echo $contact['JSEmail']; ?>')"><?php echo $contact['Email']; ?></a></td>
+ <td class="abookField"><?php echo sprintf($addr_str, $contact['Email']); ?></td>
<td class="abookField"><?php echo $contact['Info']; ?></td>
<?php
if ($include_abook_name) {
?>
</table>
<?php
-if (!$use_js) {
+if (!$compose_addr_pop) {
echo '<input type="submit" name="addr_search_done" value="'. _("Use Addresses") .'" />'."\n";
echo '<input type="submit" name="addr_search_cancel" value="'. _("Cancel") .'" />'."\n";
+} else {
+ echo '<input type="submit" onClick="javascript:parent.close();" name="close_window" value="' . _("Close Window") . '" />'. "\n";
}
?>
</div>
/** Begin template **/
?>
-<frameset rows="80,*" border="0">
+<frameset rows="95,*" border="0">
<frame name="abookmain"
marginwidth="0"
scrolling="no"
}
}
+ function CheckAll(ch) {
+ var chkObj = "";
+ for (var i = 0; i < document.addressbook.elements.length; i++) {
+ chkObj = document.addressbook.elements[i];
+ if (chkObj.type == "checkbox" && chkObj.name.substr(0,16) == "send_to_search[" + ch) {
+ chkObj.checked = !(chkObj.checked);
+ }
+ }
+ }
+
// --></script>
<?php
} /* End of included JavaScript */