Index: openacs-4/packages/acs-messaging/tcl/acs-messaging-procs-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-messaging/tcl/acs-messaging-procs-oracle.xql,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/acs-messaging/tcl/acs-messaging-procs-oracle.xql 13 May 2001 00:55:23 -0000 1.1 @@ -0,0 +1,68 @@ + + + + oracle8.1.6 + + + + + begin + :1 := acs_message.message_p(:message_id); + end; + + + + + + + + + select acs_message.first_ancestor(:message_id) as ancestor_id from dual + + + + + + + + + insert into acs_messages_outgoing + (message_id, to_address, grouping_id, wait_until) + select :m__message_id, p.email, q.grouping_id, + nvl(q.wait_until, SYSDATE) as wait_until + from ($query) q, parties p + where not exists (select 1 from acs_messages_outgoing o + where o.message_id = :m__message_id + and p.email = o.to_address) + and p.party_id = q.recipient_id + + + + + + + + + select o.message_id as sending_message_id, + o.to_address as recip_email, + p.email as sender_email, + to_char(m.sent_date, 'Dy, DD Mon YYYY HH24:MI:SS') as sent_date, + m.rfc822_id, + m.title, + m.mime_type, + m.content, + m2.rfc822_id as in_reply_to + from acs_messages_outgoing o, + acs_messages_all m, + acs_messages_all m2, + parties p + where o.message_id = m.message_id + and m2.message_id(+) = m.reply_to + and p.party_id = m.sender + and wait_until <= sysdate + + + + + + Index: openacs-4/packages/acs-messaging/tcl/acs-messaging-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-messaging/tcl/acs-messaging-procs-postgresql.xql,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/acs-messaging/tcl/acs-messaging-procs-postgresql.xql 13 May 2001 00:55:23 -0000 1.1 @@ -0,0 +1,53 @@ + + + + postgresql7.1 + + + + FIX ME PLSQL + + begin + :1 := acs_message__message_p(:message_id); + end; + + + + + + + + + select acs_message__first_ancestor(:message_id) as ancestor_id + + + + + + + + FIX ME OUTER JOIN + + select o.message_id as sending_message_id, + o.to_address as recip_email, + p.email as sender_email, + to_char(m.sent_date, 'Dy, DD Mon YYYY HH24:MI:SS') as sent_date, + m.rfc822_id, + m.title, + m.mime_type, + m.content, + m2.rfc822_id as in_reply_to + from acs_messages_outgoing o, + acs_messages_all m, + acs_messages_all m2, + parties p + where o.message_id = m.message_id + and m2.message_id(+) = m.reply_to + and p.party_id = m.sender + and wait_until <= current_timestamp + + + + + + Index: openacs-4/packages/acs-messaging/tcl/acs-messaging-procs.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-messaging/tcl/acs-messaging-procs.xql,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/acs-messaging/tcl/acs-messaging-procs.xql 13 May 2001 00:55:23 -0000 1.1 @@ -0,0 +1,32 @@ + + + + + + + insert into acs_messages_outgoing + (message_id, to_address, grouping_id, wait_until) + select :m__message_id, p.email, q.grouping_id, + coalesce(q.wait_until, SYSDATE) as wait_until + from ($query) q, parties p + where not exists (select 1 from acs_messages_outgoing o + where o.message_id = :m__message_id + and p.email = o.to_address) + and p.party_id = q.recipient_id + + + + + + + + + delete from acs_messages_outgoing + where message_id = :sending_message_id + and to_address = :recip_email + + + + + +