OSDN Git Service

Add one function for thread and modified some function for thread. datfile.load_dat...
[fukui-no-namari/fukui-no-namari.git] / src / Hage1 / misc.py
1 # Copyright (C) 2006 by Aiwota Programmer
2 # aiwotaprog@tetteke.tk
3 #
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
17
18 import os.path
19
20 import config
21 import brdlist
22
23 def get_logs_dir_path():
24     return os.path.join(config.get_config_dir_path(), "logs")
25
26 def get_board_base_url(bbs, board):
27     """
28     None: this function uses brdlist.get function, so brdlist.read function
29     should have been called before this function is called
30     """
31     # if parameter is empty, raise ValueError
32     if not bbs or not board:
33         raise ValueError, "parameter must not be empty"
34
35     return "http://" + brdlist.get(bbs, board, "host") + "/" + board + "/"
36
37 def get_thread_dat_url(bbs, board, thread):
38     """Returns thread dat url"""
39
40     # if parameter is empty, raise ValueError
41     if not bbs or not board or not thread:
42         raise ValueError, "parameter must not be empty"
43
44     return get_board_base_url(bbs, board) + "dat/" + thread + ".dat"
45
46 def get_thread_dat_path(bbs, board, thread):
47     """Returns thread dat file path
48
49     bbs: bbs id
50
51     board: board id
52
53     thread: thread id
54     """
55
56     # if parameter is empty, raise ValueError
57     if not bbs or not board or not thread:
58         raise ValueError, "parameter must not be empty"
59
60     return os.path.join(get_board_dir_path(bbs, board), thread + ".dat")
61
62 def get_board_subjecttxt_url(bbs, board):
63     """Returns subject.txt file url
64
65     bbs: bbs id
66
67     board: board id
68     """
69
70     # if parameter is empty, raise ValueError
71     if not bbs or not board:
72         raise ValueError, "parameter must not be empty"
73
74     return get_board_base_url(bbs, board) + "subject.txt"
75
76 def get_board_subjecttxt_path(bbs, board):
77     """Returns subject.txt file path
78
79     bbs: bbs id
80
81     board: board id
82     """
83
84     # if parameter is empty, raise ValueError
85     if not bbs or not board:
86         raise ValueError, "parameter must not be empty"
87
88     return os.path.join(get_logs_dir_path(), bbs, board, "subject.txt")
89
90 def get_board_dir_path(bbs, board):
91     """Returns board dir path
92
93     bbs: bbs ID
94
95     board: board ID
96     """
97
98     # if parameter is empty, raise ValueError
99     if not bbs or not board:
100         raise ValueError, "parameter must not be empty"
101
102     return os.path.join(get_logs_dir_path(), bbs, board)
103
104 def get_thread_idx_path(bbs, board, thread):
105     """Returns idx file path of thread
106
107     bbs: bbs ID
108
109     board: board ID
110
111     thread: thread ID
112
113     Note: if parameter is empty, raise ValueError
114     """
115
116     # if parameter is empty, raise ValueError
117     if not bbs or not board or not thread:
118         raise ValueError, "parameter must not be empty"
119
120     return os.path.join(get_logs_dir_path(), bbs, board, thread + ".idx")
121
122 def get_board_cache_path(bbs, board):
123     """ Returns .cache file path of board
124
125     bbs: bbs ID
126
127     board: board ID
128
129     Note: if parameter is empty, raise ValueError
130     """
131
132     # if parameter is empty, raise ValueError
133     if not bbs or not board:
134         raise ValueError, "parameter must not be empty"
135
136     return os.path.join(get_logs_dir_path(), bbs, board, ".cache")