def init(cls): """ Initialize theme changer object """ cls.ready = False cls.themes = [] for t in multiget(SETTINGS, "themes", []): theme_time = translate_time(t["time"]) theme = t["theme"] msg = t.get("msg", None) cls.themes.append(ThemeRecord(theme_time, theme, msg)) seconds, now = get_current_time() cls.get_next_change(seconds, now) cls.set_startup_theme() cls.ready = True
def manage_thread(first_time=False, restart=False): """ Manage killing, starting, and restarting the thread """ global running_theme_scheduler_loop if not multiget(SETTINGS, 'enabled', 'False'): running_theme_scheduler_loop = False ThreadMgr.kill debug_log("Kill Thread") elif not restart and (first_time or not running_theme_scheduler_loop): running_theme_scheduler_loop = True thread.start_new_thread(theme_loop, ()) debug_log("Start Thread") else: running_theme_scheduler_loop = False ThreadMgr.restart = True debug_log("Restart Thread")