Crossfire Server, Trunk
CFMail.py
Go to the documentation of this file.
1 # CFMail.py - CFMail class
2 #
3 # Copyright (C) 2002 Joris Bontje
4 #
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18 #
19 # The author can be reached via e-mail at jbontje@suespammers.org
20 #
21 #Updated to use new path functions in CFPython -Todd Mitchell
22 
23 import os.path
24 import shelve
25 
26 import Crossfire
27 
28 class CFMail:
29 
30  maildb_file = os.path.join(Crossfire.LocalDirectory(),'crossfiremail')
31  maildb = {}
32  total = 0
33 
34  def __init__(self):
35  self.maildb = shelve.open(self.maildb_file)
36 
37  def send(self, type, toname, fromname, message):
38  # type: 1=mailscoll, 2=newsletter, 3=mailwarning
39  if not toname in self.maildb:
40  self.maildb[toname]=[[type,fromname,message]]
41  else:
42  temp=self.maildb[toname]
43  temp.append([type,fromname,message])
44  self.maildb[toname]=temp
45 
46  def receive(self, toname):
47  if toname in self.maildb:
48  elements=self.maildb[toname]
49  del self.maildb[toname]
50  return elements
51 
52 
53  def countmail(self, toname):
54  if toname in self.maildb:
55  return len(self.maildb[toname])
56  else:
57  return 0
CFMail.CFMail.receive
def receive(self, toname)
Definition: CFMail.py:46
CFMail.CFMail.send
def send(self, type, toname, fromname, message)
Definition: CFMail.py:37
CFMail.CFMail
Definition: CFMail.py:28
CFMail.CFMail.__init__
def __init__(self)
Definition: CFMail.py:34
CFMail.CFMail.maildb_file
maildb_file
Definition: CFMail.py:30
CFMail.CFMail.countmail
def countmail(self, toname)
Definition: CFMail.py:53
CFMail.CFMail.maildb
dictionary maildb
Definition: CFMail.py:31