134 lines
4.9 KiB
PHP
134 lines
4.9 KiB
PHP
|
|
<script language="Javascript" src="js/jslib.js" type="text/javascript"></script>
|
|
<hr />
|
|
|
|
<?php
|
|
require_once dirname(__FILE__).'/accesscheck.php';
|
|
|
|
$id = sprintf('%d',$_GET["id"]);
|
|
if (!$id) {
|
|
print $GLOBALS['I18N']->get('Please select a message to display') . "\n";
|
|
exit;
|
|
}
|
|
|
|
$access = accessLevel('message');
|
|
#print "Access: $access";
|
|
switch ($access) {
|
|
case 'owner':
|
|
$subselect = ' where owner = ' . $_SESSION["logindetails"]["id"];
|
|
$owner_select_and = ' and owner = ' . $_SESSION["logindetails"]["id"];
|
|
break;
|
|
case 'all':
|
|
$subselect = '';
|
|
$owner_select_and = '';
|
|
break;
|
|
case 'none':
|
|
default:
|
|
$subselect = ' where id = 0';
|
|
$owner_select_and = ' and owner = 0';
|
|
break;
|
|
}
|
|
|
|
if ($_POST['resend'] && is_array($_POST['list'])) {
|
|
if ($_POST['list']['all']) {
|
|
$res = Sql_query("select * from $tables[list]");
|
|
while($list = Sql_fetch_array($res))
|
|
if ($list["active"])
|
|
$result = Sql_query("insert into $tables[listmessage] (messageid,listid,entered) values($id,$list[id],now())");
|
|
} else {
|
|
foreach($_POST['list'] as $key => $val) {
|
|
if ($val == 'signup') {
|
|
$result = Sql_query("insert into $tables[listmessage] (messageid,listid,entered) values($id,$key,now())");
|
|
}
|
|
}
|
|
}
|
|
Sql_Query("update $tables[message] set status = \"submitted\" where id = $id");
|
|
}
|
|
|
|
|
|
require $coderoot . 'structure.php';
|
|
|
|
print '<p>'.PageLink2('send&id='.$id,$GLOBALS['I18N']->get('Edit this message')).'</p>';
|
|
|
|
$result = Sql_query("SELECT * FROM {$tables['message']} where id = $id $owner_select_and");
|
|
if (!Sql_Affected_Rows()) {
|
|
print $GLOBALS['I18N']->get('No such message');
|
|
return;
|
|
}
|
|
echo "<table border=\"1\">";
|
|
|
|
while ($msg = Sql_fetch_array($result)) {
|
|
foreach($DBstruct["message"] as $field => $val) {
|
|
# Correct for bug 0009687
|
|
# Skip 'astextandhtml' and add this count to 'ashtml'
|
|
# change the name of sendformat
|
|
if ($field != 'ashtml') {
|
|
if ($field == 'astextandhtml') {
|
|
$field = 'ashtml';
|
|
$msg[$field] += $msg['astextandhtml'];
|
|
};
|
|
if ($field == 'sendformat' and $msg[$field] = 'text and HTML')
|
|
$msg[$field] = 'HTML';
|
|
printf('<tr><td valign="top">%s</td><td valign="top">%s</td></tr>',$GLOBALS['I18N']->get($field),$msg["htmlformatted"]?stripslashes($msg[$field]):nl2br(stripslashes($msg[$field])));
|
|
}
|
|
}
|
|
}
|
|
|
|
if (ALLOW_ATTACHMENTS) {
|
|
print '<tr><td colspan=2><h3>' . $GLOBALS['I18N']->get('Attachments for this message') . '</h3></td></tr>';
|
|
$req = Sql_Query("select * from {$tables["message_attachment"]},{$tables["attachment"]}
|
|
where {$tables["message_attachment"]}.attachmentid = {$tables["attachment"]}.id and
|
|
{$tables["message_attachment"]}.messageid = $id");
|
|
if (!Sql_Affected_Rows())
|
|
print '<tr><td colspan=2>' . $GLOBALS['I18N']->get('No attachments') . '</td></tr>';
|
|
while ($att = Sql_Fetch_array($req)) {
|
|
printf ('<tr><td>%s:</td><td>%s</td></tr>', $GLOBALS['I18N']->get('Filename') ,$att["remotefile"]);
|
|
printf ('<tr><td>%s:</td><td>%s</td></tr>', $GLOBALS['I18N']->get('Size'), formatBytes($att["size"]));
|
|
printf ('<tr><td>%s:</td><td>%s</td></tr>', $GLOBALS['I18N']->get('Mime Type'),$att["mimetype"]);
|
|
printf ('<tr><td>%s:</td><td>%s</td></tr>', $GLOBALS['I18N']->get('Description'), $att["description"]);
|
|
}
|
|
# print '</table>';
|
|
}
|
|
|
|
print '<tr><td colspan="2"<h3>' . $GLOBALS['I18N']->get('Lists this message has been sent to') . ':</h3></td></tr>';
|
|
|
|
$lists_done = array();
|
|
$result = Sql_Query("select $tables[list].name,$tables[list].id from $tables[listmessage],$tables[list] where $tables[listmessage].messageid = $id and $tables[listmessage].listid = $tables[list].id");
|
|
if (!Sql_Affected_Rows())
|
|
print '<tr><td colspan="2">' . $GLOBALS['I18N']->get('None yet') . '</td></tr>';
|
|
while ($lst = Sql_fetch_array($result)) {
|
|
array_push($lists_done,$lst[id]);
|
|
printf ('<tr><td>%d</td><td>%s</td></tr>',$lst['id'],$lst['name']);
|
|
}
|
|
|
|
?>
|
|
</table>
|
|
|
|
<a name="resend"></a><p><?php echo $GLOBALS['I18N']->get('Send this (same) message to (a) new list(s)'); ?>:</p>
|
|
<?php echo formStart()?>
|
|
<input type=hidden name="id" value="<?php echo $id?>">
|
|
<ul>
|
|
<?php
|
|
|
|
$result = Sql_query("SELECT * FROM $tables[list] $subselect");
|
|
while ($row = Sql_fetch_array($result)) {
|
|
if (!in_array($row[id],$lists_done)) {
|
|
print '<li><input type="checkbox" name="list[' . $row["id"] . ']" value="signup" ';
|
|
if ($list[$row["id"]] == 'signup')
|
|
print 'checked';
|
|
print ">".$row['name'];
|
|
if ($row["active"])
|
|
print ' (<font color="red">' . $GLOBALS['I18N']->get('List is Active') . '</font>)';
|
|
else
|
|
print ' (<font color="red">' . $GLOBALS['I18N']->get('List is not Active') . '</font>)';
|
|
$some = 1;
|
|
}
|
|
}
|
|
|
|
if (!$some)
|
|
print $GLOBALS['I18N']->get('<b>Note:</b> this message has already been sent to all lists. To resend it to new users use the "Requeue" function.');
|
|
else
|
|
print '<br /><input type="submit" name="resend" value="'.$GLOBALS['I18N']->get('Resend').'"></form>';
|
|
|
|
?>
|