forked from Guovin/iptv-api
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhotel.py
117 lines (101 loc) · 4.2 KB
/
hotel.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
import tkinter as tk
from tkinter import ttk
from utils.config import config
from select_combobox import SelectCombobox
import updates.fofa.fofa_map as fofa_map
class HotelUI:
def init_ui(self, root):
"""
Init hotel UI
"""
frame_hotel_open_hotel = tk.Frame(root)
frame_hotel_open_hotel.pack(fill=tk.X)
self.open_hotel_label = tk.Label(
frame_hotel_open_hotel, text="开启酒店源:", width=9
)
self.open_hotel_label.pack(side=tk.LEFT, padx=4, pady=8)
self.open_hotel_var = tk.BooleanVar(value=config.open_hotel)
self.open_hotel_checkbutton = ttk.Checkbutton(
frame_hotel_open_hotel,
variable=self.open_hotel_var,
onvalue=True,
offvalue=False,
command=self.update_open_hotel,
)
self.open_hotel_checkbutton.pack(side=tk.LEFT, padx=4, pady=8)
frame_hotel_mode = tk.Frame(root)
frame_hotel_mode.pack(fill=tk.X)
self.open_hotel_mode_label = tk.Label(
frame_hotel_mode, text="工作模式:", width=9
)
self.open_hotel_mode_label.pack(side=tk.LEFT, padx=4, pady=8)
self.open_hotel_foodie_var = tk.BooleanVar(value=config.open_hotel_foodie)
self.open_hotel_foodie_checkbutton = ttk.Checkbutton(
frame_hotel_mode,
variable=self.open_hotel_foodie_var,
onvalue=True,
offvalue=False,
command=self.update_open_hotel_foodie,
text="Foodie",
)
self.open_hotel_foodie_checkbutton.pack(side=tk.LEFT, padx=4, pady=8)
self.open_hotel_fofa_var = tk.BooleanVar(value=config.open_hotel_fofa)
self.open_hotel_fofa_checkbutton = ttk.Checkbutton(
frame_hotel_mode,
variable=self.open_hotel_fofa_var,
onvalue=True,
offvalue=False,
command=self.update_open_hotel_fofa,
text="FOFA",
)
self.open_hotel_fofa_checkbutton.pack(side=tk.LEFT, padx=4, pady=8)
frame_hotel_region_list = tk.Frame(root)
frame_hotel_region_list.pack(fill=tk.X)
self.region_list_label = tk.Label(
frame_hotel_region_list, text="酒店地区:", width=9
)
self.region_list_label.pack(side=tk.LEFT, padx=4, pady=8)
regions = ["全部"] + list(getattr(fofa_map, "region_url").keys())
self.region_list_combo = SelectCombobox(
frame_hotel_region_list,
values=regions,
selected_values=config.hotel_region_list,
height=10,
command=self.update_region_list,
)
self.region_list_combo.pack(
side=tk.LEFT, padx=4, pady=8, expand=True, fill=tk.BOTH
)
frame_hotel_page_num = tk.Frame(root)
frame_hotel_page_num.pack(fill=tk.X)
self.page_num_label = tk.Label(frame_hotel_page_num, text="获取页数:", width=9)
self.page_num_label.pack(side=tk.LEFT, padx=4, pady=8)
self.page_num_entry = tk.Entry(frame_hotel_page_num)
self.page_num_entry.pack(side=tk.LEFT, padx=4, pady=8)
self.page_num_entry.insert(0, config.hotel_page_num)
self.page_num_entry.bind("<KeyRelease>", self.update_page_num)
def update_open_hotel(self):
config.set("Settings", "open_hotel", str(self.open_hotel_var.get()))
def update_open_hotel_foodie(self):
config.set(
"Settings", "open_hotel_foodie", str(self.open_hotel_foodie_var.get())
)
def update_open_hotel_fofa(self):
config.set("Settings", "open_hotel_fofa", str(self.open_hotel_fofa_var.get()))
def update_region_list(self, event):
config.set(
"Settings",
"hotel_region_list",
",".join(self.region_list_combo.selected_values),
)
def update_page_num(self, event):
config.set("Settings", "hotel_page_num", self.page_num_entry.get())
def change_entry_state(self, state):
for entry in [
"open_hotel_checkbutton",
"open_hotel_foodie_checkbutton",
"open_hotel_fofa_checkbutton",
"region_list_combo",
"page_num_entry",
]:
getattr(self, entry).config(state=state)