_("Post to List"), 'Reply' => _("Reply to List"), 'Subscribe' => _("Subscribe"), 'Unsubscribe' => _("Unsubscribe"), 'Archive' => _("List Archives"), 'Owner' => _("Contact Listowner"), 'Help' => _("Help")); $fields = array_keys($fieldsdescr); $sorted_cmds = array(); $unsorted_cmds = array(); $output = array(); $lfields = 'List-' . implode (' List-', $fields); $sid = sqimap_session_id(); fputs ($imapConnection, "$sid FETCH $passed_id BODY.PEEK[HEADER.FIELDS ($lfields)]\r\n"); $read = sqimap_read_data($imapConnection, $sid, true, $response, $emessage); for ($i = 1; $i < count($read); $i++) { foreach ($fields as $field) { if ( preg_match("/^List-$field: *<(.+?)>/i", $read[$i], $match) ) { $unsorted_cmds[$field] = $match[1]; } } } if (count($unsorted_cmds) == 0) { return; } foreach ($fields as $field) { foreach ($unsorted_cmds as $cmd => $url) { if ($field == $cmd) { $cmds[$cmd] = $url; } } } foreach ($cmds as $cmd => $url) { if (eregi('mailto:(.+)', $url, $regs)) { $purl = parse_url($url); if (($cmd == 'Post') || ($cmd == 'Owner')) { $url = 'compose.php?'; } else { $url = "../plugins/listcommands/mailout.php?action=$cmd&"; } $url .= 'mailbox=' . urlencode($mailbox) . '&send_to=' . $purl['path']; if (isset($purl['query'])) { $url .= '&' . $purl['query']; } $output[] = '' . $fieldsdescr[$cmd] . ''; if ($cmd == 'Post') { $url .= '&reply_subj=' . urlencode($subject) . '&reply_id=' . $passed_id . '&ent_num=' . $ent_num . '&mailprio=' . $priority_level; $output[] = '' . $fieldsdescr['Reply'] . ''; } } else if (eregi('^(http|ftp)', $url)) { $output[] = '' . $fieldsdescr[$cmd] . ''; } } if (count($output) > 0) { echo ""; echo "" . str_replace(' ', ' ', _("Mailing List:")) . ''; echo "" . '' . implode(' | ', $output) . '' . ''; echo ''; } } ?>