ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/maps/python/CFBoard.py
Revision: 1.1.1.1 (vendor branch)
Committed: Sun Feb 5 00:02:08 2006 UTC (18 years, 3 months ago) by root
Content type: text/x-python
Branch: UPSTREAM, MAIN
CVS Tags: post_fixaltar, last_stable, post_fixaltar2, rel-2_82, rel-2_81, rel-2_80, pre_coinconvert, UPSTREAM_2006_03_15, rel-3_0, rel-2_6, rel-2_7, rel-2_4, rel-2_5, rel-2_2, rel-2_0, rel-2_1, rel-2_72, rel-2_73, rel-2_71, rel-2_76, rel-2_77, rel-2_74, rel-2_75, rel-2_54, rel-2_55, rel-2_56, rel-2_79, UPSTREAM_2006_02_01, rel-2_53, pre_material_cfarch_normalize_run, rel-2_32, pre_fixconverter, post_coinconvert, pre_fixaltar2, pre_map_rename, UPSTREAM_2006_02_22, rel-2_90, rel-2_92, rel-2_93, rel-2_78, post_fixconverter, pre_fixaltar, rel-2_61, rel-2_43, rel-2_42, rel-2_41, HEAD
Changes since 1.1: +0 -0 lines
Log Message:
Initial Import

File Contents

# Content
1 # CFBoard.py - CFBoard 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 CFBoard:
29
30 boarddb_file = os.path.join(Crossfire.LocalDirectory(),'crossfireboard')
31 boarddb = {}
32 total = 0
33
34 def __init__(self):
35 self.boarddb = shelve.open(self.boarddb_file)
36
37 def write(self, boardname, author, message):
38 if not self.boarddb.has_key(boardname):
39 self.boarddb[boardname]=[[author,message]]
40 else:
41 temp=self.boarddb[boardname]
42 temp.append([author,message])
43 self.boarddb[boardname]=temp
44
45 def list(self, boardname):
46 if self.boarddb.has_key(boardname):
47 elements=self.boarddb[boardname]
48 return elements
49
50
51 def delete(self, boardname, id):
52 if self.boarddb.has_key(boardname):
53 if id>0 and id<=len(self.boarddb[boardname]):
54 temp=self.boarddb[boardname]
55 temp.pop(id-1)
56 self.boarddb[boardname]=temp
57 return 1
58 return 0
59
60 def countmsg(self, boardname):
61 if self.boarddb.has_key(boardname):
62 return len(self.boarddb[boardname])
63 else:
64 return 0
65
66 def getauthor(self, boardname, id):
67 if self.boarddb.has_key(boardname):
68 if id>0 and id<=len(self.boarddb[boardname]):
69 author,message=self.boarddb[boardname][id-1]
70 return author