aboutsummaryrefslogtreecommitdiff
path: root/start.py
diff options
context:
space:
mode:
authorGravatar jesopo2018-09-24 15:13:27 +0100
committerGravatar jesopo2018-09-24 15:13:27 +0100
commitecb9d7cb3f4435457560e03201bbed57a469d548 (patch)
tree5a010f97c209558cdd2d40327d41e6806aedde94 /start.py
parentRemove empty spaces in coins.py (diff)
signature
Move most code in root directory to src/
Diffstat (limited to 'start.py')
-rwxr-xr-xstart.py26
1 files changed, 18 insertions, 8 deletions
diff --git a/start.py b/start.py
index 04defccb..53b08023 100755
--- a/start.py
+++ b/start.py
@@ -1,7 +1,8 @@
#!/usr/bin/env python3
-import argparse, sys, time
-import IRCBot, Config, Database
+import argparse, os, sys, time
+from src import Config, Database, EventManager, Exports, IRCBot
+from src import IRCLineHandler, Logging, ModuleManager
def bool_input(s):
result = input("%s (Y/n): " % s)
@@ -17,20 +18,29 @@ arg_parser.add_argument("--verbose", "-v", action="store_true")
args = arg_parser.parse_args()
+directory = os.path.dirname(os.path.realpath(__file__))
+
bot = IRCBot.Bot()
-database = Database.Database(bot, args.database)
-config = Config.Config(bot, args.config)
-bot.database = database
-bot.config = config.load_config()
+bot._events = events = EventManager.EventHook(bot)
+bot._exports = exports = Exports.Exports()
+bot.modules = modules = ModuleManager.ModuleManager(bot, events, exports,
+ os.path.join(directory, "modules"))
+bot.line_handler = IRCLineHandler.LineHandler(bot, bot._events)
+bot.log = Logging.Log(bot, directory, "bot.log")
+bot.database = Database.Database(bot, directory, args.database)
+bot.config = Config.Config(bot, directory, args.config).load_config()
bot.args = args
+bot._events.on("timer.reconnect").hook(bot.reconnect)
+bot._events.on("boot.done").hook(bot.setup_timers)
+
whitelist = bot.get_setting("module-whitelist", [])
blacklist = bot.get_setting("module-blacklist", [])
bot.modules.load_modules(whitelist=whitelist, blacklist=blacklist)
servers = []
-for server_id, alias in database.servers.get_all():
+for server_id, alias in bot.database.servers.get_all():
server = bot.add_server(server_id, connect=False)
if not server == None:
servers.append(server)
@@ -54,7 +64,7 @@ else:
nickname = input("nickname: ")
username = input("username: ")
realname = input("realname: ")
- database.servers.add(alias, hostname, port, password, ipv4,
+ bot.database.servers.add(alias, hostname, port, password, ipv4,
tls, nickname, username, realname)
except KeyboardInterrupt:
print()