home *** CD-ROM | disk | FTP | other *** search
- <%
- #include <ftgate.fts>
-
- const MAX_RECIPIENTS = 75
- var log = new server.log
-
- var count = 0
- var ok = message.envelope.firstrecipient()
- while (ok)
- {
- count++
- ok = message.envelope.nextrecipient()
- }
-
- if (count>MAX_RECIPIENTS)
- {
- var success=true
-
- log.write(LOG_NORMAL, "Splitting message, Max recipients="+MAX_RECIPIENTS)
- var split = MAX_RECIPIENTS
- count=0
- ok = message.envelope.firstrecipient()
- while (ok)
- {
- var newmsg = new server.newmessage
-
- if (newmsg.new())
- {
- newmsg.write.sender(message.envelope.sender)
- while ((ok!=0)&&(count<split))
- {
- newmsg.write.recipient(message.envelope.recipient)
- ok = message.envelope.nextrecipient()
- count++
- }
-
- var ok2 = message.firsttext()
- while (ok2)
- {
- newmsg.write(message.text)
- ok2=message.nexttext()
- }
-
- newmsg.close()
- }
- else
- {
- log.write(LOG_NORMAL, "SplitMail.fts failed to create message")
- success=false
- ok=false
- }
- split=split+MAX_RECIPIENTS
- }
-
- message.delete(message.id)
- }
- %>