Exemple #1
0
def dashboard(server_id):
    log.info("loading cogs page")
    default_message = "{user}, welcome to **{server}**!"
    get_message = db.hget("{}:Welcome:Message".format(server_id), "message")
    if get_message is None:
        db.hset("{}:Welcome:Message".format(server_id), "message", default_message)
        get_message = default_message
    config = db.hgetall("{}:Welcome:Message".format(server_id))
    channel = utils.get_channel(server_id)
    delete_msg = db.hget("{}:Welcome:Message".format(server_id), "delete_msg") or 0
    if config.get("channel", False) is False:
        welcome_channel = server_id
    else:
        welcome_channel = config['channel']

    db_assign_role = db.smembers('{}:Welcome:Assign_Roles'.format(server_id)) or []
    get_role = utils.resource_get("/guilds/{}".format(server_id))
    guild_roles = get_role['roles']
    assign_role = list(filter(lambda r: r['name'] in db_assign_role or r['id'] in db_assign_role, guild_roles))
    return {
        'guild_channel': channel,
        "welcome_channel": welcome_channel,
        'assign_role': assign_role,
        'guild_roles': guild_roles,
        'message': get_message,
        'config': config,
        'delete_msg': delete_msg}
Exemple #2
0
def dashboard(server_id):
    log.info("loading cogs page")
    default_message = "{user}, welcome to **{server}**!"
    get_message = db.hget("{}:Welcome:Message".format(server_id), "message")
    if get_message is None:
        db.hset("{}:Welcome:Message".format(server_id), "message",
                default_message)
        get_message = default_message
    config = db.hgetall("{}:Welcome:Message".format(server_id))
    channel = utils.get_channel(server_id)
    delete_msg = db.hget("{}:Welcome:Message".format(server_id),
                         "delete_msg") or 0
    if config.get("channel", False) is False:
        welcome_channel = server_id
    else:
        welcome_channel = config['channel']

    db_assign_role = db.smembers(
        '{}:Welcome:Assign_Roles'.format(server_id)) or []
    get_role = utils.resource_get("/guilds/{}".format(server_id))
    guild_roles = get_role['roles']
    assign_role = list(
        filter(
            lambda r: r['name'] in db_assign_role or r['id'] in db_assign_role,
            guild_roles))
    return {
        'guild_channel': channel,
        "welcome_channel": welcome_channel,
        'assign_role': assign_role,
        'guild_roles': guild_roles,
        'message': get_message,
        'config': config,
        'delete_msg': delete_msg
    }
Exemple #3
0
def category(server_id):
    log.info("Category page require for discourse")
    config = db.hgetall("{}:Discourse:Config".format(server_id))
    domain = config["domain"]
    default = config["channel"]
    api_key = config["api_key"]
    username = config["username"]

    channel = db.hgetall("{}:Discourse:Category".format(server_id))
    log.info("The channel is {}".format(channel))
    if domain is None:
        log.info("Missing domain, assume user didn't do set up")
        flash("You haven't finish config, please enter info in and click update!")
        return dashboard(server_id = server_id)
    elif channel is None:
        log.info("Channel is None")
        flash("There is something wrong with channel, please try set it again")
        return dashboard(server_id = server_id)

    #Getting guild channel list
    guild_channel = utils.get_channel(server_id)
    guild_channel = sorted(guild_channel,key = lambda k:k["name"])
    log.info(guild_channel)
    default = [x["name"] for x in guild_channel if x["id"] == default][0]
    log.info("default show {}".format(default))

    #Getting info about server, id, name and icon of it to display it.
    server = {
        'id':server_id,
        'name':db.hget("Info:Server",server_id),
        'icon':db.hget("Info:Server_Icon",server_id)}

    #making requests to discourse site within API to get category info so we can send topics to certain channel chosen by user.
    r = requests.get("{}/site.json?api_key={}&api_username={}".format(domain,api_key,username))
    raw_data = r.json()["categories"]
    data = []
    sub_temp = {}
    for x in raw_data: #checking subcategory and category
        category_id = x['id']
        have_sub = x.get("parent_category_id")
        if have_sub: #if it have sub, we should append to them
            sub = sub_temp.get(have_sub)
            if sub:
                sub.append({"id":str(category_id),"name":x["name"],"sub":"true"})
            else:
                sub_temp.update({have_sub:[{"id":str(category_id),"name":x["name"],"sub":"true"}]})
            continue
        data.append({"id":str(category_id),"name":x["name"],"sub":"false"})
    #getting proper fresh data after getting all sub categorys, it is doing in order.
    fresh_data = []
    for x in data:
        fresh_data.append(x)
        sub = sub_temp.get(int(x["id"]))
        if sub:
            for x in sub:
                fresh_data.append(x)
    log.debug(fresh_data)
    return render_template("category.html",default_channel = default,category = fresh_data,guild_channel = guild_channel,cate_channel=channel,server=server)
    async def run(self, client):
        activeServers = list(client.servers)[0]
        list_members = activeServers.members
        brawl_database = database.SQL_Server()
        print("Start Task")

        warning_channel = get_channel(client, "warnings")
        brawl_database = database.SQL_Server()

        if "ClubTag" not in brawl_database.return_allUsers():
            msg = "@everyone Club Tag not added to the database"
            await client.send_message(warning_channel, msg)
        else:
            for member in list_members:

                member = (str(member))
                member_object = activeServers.get_member_named(member)
                role = [get(member_object.server.roles, name="member")]

                if member_object.bot or get(member_object.roles, name="owner"):
                    pass

                elif brawl_database.return_userWarning(
                        member) >= self.allowed_userWarning and get(
                            member_object.roles, name="member"):
                    msg = " removed from server since they did not insert player information in database"
                    await client.send_message(warning_channel,
                                              member_object.mention + msg)
                    await client.remove_roles(member_object, *role)

                elif member not in brawl_database.return_allUsers():
                    brawl_database.insert_user_warning(member)
                    msg = " did not insert player information in database"
                    await client.send_message(warning_channel,
                                              member_object.mention + msg)

                elif not brawl_database.information_present(member):
                    brawl_database.append_user_warning(member)
                    msg = " did not insert player information in database"
                    await client.send_message(warning_channel,
                                              member_object.mention + msg)

                elif get(member_object.roles, name="member"):
                    brawl_client = brawlstats.Client(self.brawl_api)
                    with open('tags.txt', 'r') as f:
                        brawl_tag = f.read().splitlines()
                    list_users = []
                    list_users.extend(
                        brawl_client.get_club_members(
                            brawl_database.view_information_user("ClubTag")))
                    for tag in brawl_tag:
                        list_users.extend(brawl_client.get_club_members(tag))
                    if member not in list_users:
                        msg = " removed from server since they are not part of the club"
                        await client.send_message(warning_channel,
                                                  member_object.mention + msg)
                        await client.remove_roles(member_object, *role)
Exemple #5
0
    async def run(self, client):
        now = datetime.now()

        if now.hour == 12:
            msg = "It's high noon!"
        else:
            msg = f"It is {now.hour}:{now.minute}"

        channel = get_channel(client, "general")
        await channel.send(msg)
Exemple #6
0
def dashboard(server_id):
    log.info("loading cog page")
    config = db.hgetall("{}:Log:Config".format(server_id))
    channel = utils.get_channel(server_id)
    if config.get("channel", False) is False:
        log_channel = server_id
    else:
        log_channel = config['channel']
    return {
        'guild_channel': channel,
        "log_channel": log_channel,
        'config': config
    }
Exemple #7
0
def dashboard(server_id):
    log.info("Level dashboard")
    key_path = '{}:Level:Config'.format(server_id)
    initial_announcement = '{player}, you just advanced to **level {level}** !\n Now go and fight more mobs!'
    announcement = db.hget(key_path,"announce_message")
    if announcement is None:
        db.hset(key_path,"announce_message", initial_announcement)
        db.hset(key_path.format(server_id),"announce",'on')

    cooldown = db.hget(key_path.format(server_id),"rank_cooldown") or 0
    config = db.hgetall(key_path)
    #getting database of members
    db_banned_members = db.smembers('{}:Level:banned_members'.format(server_id)) or []
    db_banned_roles = db.smembers('{}:Level:banned_roles'.format(server_id)) or []
    db_banned_channels = db.smembers('{}:Level:banned_channels'.format(server_id)) or []
    #checking roles
    get_role = utils.resource_get("/guilds/{}".format(server_id))
    guild_roles = get_role['roles']
    #get member info
    get_member = utils.resource_get("/guilds/{}/members?&limit=1000".format(server_id))
    guild_members=[x['user'] for x in get_member]
    #getting channel
    guild_channels = utils.get_channel(server_id)
    #ban role and members
    banned_roles = list(filter(lambda r: r['id'] in db_banned_roles,guild_roles))
    banned_members = list(filter(lambda r:r['id'] in db_banned_members,guild_members))
    banned_channels = list(filter(lambda r:r['id'] in db_banned_channels,guild_channels))
    log.info("Done getting list of banned, now getting rewards roles")
    #reward roles
    role_level = db.hgetall("{}:Level:role_reward".format(server_id)) or {}
    temp = [
        {"name":x['name'],
         "id":x['id'],
         "color":hex(x["color"]).split("0x")[1],
         "level":role_level.get(x["id"],0)} for x in guild_roles]
    temp.sort(key=lambda x: x['name'])

    reward_roles = [temp[:int(len(temp)/2)],temp[int(len(temp)/2):]] #Spliting them into half

    return {
        'config':config,
        'banned_members': banned_members,
        'guild_members':guild_members,
        'banned_roles': banned_roles,
        'guild_roles':guild_roles,
        'banned_channels':banned_channels,
        'guild_channels':guild_channels,
        'cooldown': cooldown,
        "reward_roles":reward_roles,
        }
Exemple #8
0
def dashboard(server_id):
    number = random.randint(0, len(anime_picture) - 1)
    get_role = utils.resource_get("/guilds/{}".format(server_id))
    guild_roles = get_role['roles']
    role = db.smembers('{}:Memes:editor_role'.format(server_id)) or []
    channel = utils.get_channel(server_id)
    admin_role = list(
        filter(lambda r: r['name'] in role or r['id'] in role, guild_roles))
    return {
        "Info": anime_picture[number],
        "guild_roles": guild_roles,
        "admin_roles": admin_role,
        "channel": channel
    }
Exemple #9
0
def dashboard(server_id):
    log.info("Level dashboard")
    key_path = '{}:Level:Config'.format(server_id)
    initial_announcement = '{player}, you just advanced to **level {level}** !\n Now go and fight more mobs!'
    announcement = db.hget(key_path,"announce_message")
    if announcement is None:
        db.hset(key_path,"announce_message", initial_announcement)
        db.hset(key_path.format(server_id),"announce",'on')

    cooldown = db.hget(key_path.format(server_id),"rank_cooldown") or 0
    config = db.hgetall(key_path)
    #getting database of members
    db_banned_members = db.smembers('{}:Level:banned_members'.format(server_id)) or []
    db_banned_roles = db.smembers('{}:Level:banned_roles'.format(server_id)) or []
    db_banned_channels = db.smembers('{}:Level:banned_channels'.format(server_id)) or []
    #checking roles
    get_role = utils.resource_get("/guilds/{}".format(server_id))
    guild_roles = get_role['roles']
    #get member info
    get_member = utils.resource_get("/guilds/{}/members?&limit=1000".format(server_id))
    guild_members=[x['user'] for x in get_member]
    #getting channel
    guild_channels = utils.get_channel(server_id)
    #ban role and members
    banned_roles = list(filter(lambda r: r['id'] in db_banned_roles,guild_roles))
    banned_members = list(filter(lambda r:r['id'] in db_banned_members,guild_members))
    banned_channels = list(filter(lambda r:r['id'] in db_banned_channels,guild_channels))
    log.info("Done getting list of banned, now getting rewards roles")
    #reward roles
    role_level = db.hgetall("{}:Level:role_reward".format(server_id)) or {}
    temp = [
        {"name":x['name'],
         "id":x['id'],
         "color":hex(x["color"]).split("0x")[1],
         "level":role_level.get(x["id"],0)} for x in guild_roles]
    temp.sort(key=lambda x: x['name'])

    reward_roles = [temp[:int(len(temp)/2)],temp[int(len(temp)/2):]] #Spliting them into half

    return {
        'config':config,
        'banned_members': banned_members,
        'guild_members':guild_members,
        'banned_roles': banned_roles,
        'guild_roles':guild_roles,
        'banned_channels':banned_channels,
        'guild_channels':guild_channels,
        'cooldown': cooldown,
        "reward_roles":reward_roles,
        }
Exemple #10
0
def dashboard(server_id):
    log.info("Discourse")
    config = db.hgetall("{}:Discourse:Config".format(server_id))
    channel = utils.get_channel(server_id)
    if config.get("channel", False) is False:
        discourse_channel = server_id
    else:
        discourse_channel = config['channel']

    if config.get("msg",False) is False:
        msg = "{title}\t\tAuthor: {author}\n{link}"
    else:
        msg = config["msg"]

    return {
        'guild_channel': channel,
        "discourse_channel": discourse_channel,
        "msg_template":str(msg.encode()).replace("\\\\","\\"),
        'config': config
        }
Exemple #11
0
def dashboard(server_id):
    log.info("Discourse")
    config = db.hgetall("{}:Discourse:Config".format(server_id))
    channel = utils.get_channel(server_id)
    if config.get("channel", False) is False:
        discourse_channel = server_id
    else:
        discourse_channel = config['channel']

    if config.get("msg",False) is False:
        msg = "{title}\t\tAuthor: {author}\n{link}"
    else:
        msg = config["msg"]

    return {
        'guild_channel': channel,
        "discourse_channel": discourse_channel,
        "msg_template":str(msg.encode()).replace("\\\\","\\"),
        'config': config
        }
Exemple #12
0
    async def run(self, client):
        now = datetime.now()

        if now.hour == 8 and now.minute == 30:
            msg = "It's school time!"
        elif now.hour == 9 and now.minute == 40:
            msg = "It's period two!"
        elif now.hour == 10 and now.minute == 56:
            msg = "It's time for lunch!"
        if now.hour == 12 and now.minute == 15:
            msg = "It's high noon!(period 3)"

        elif now.hour == 13 and now.minute == 27:
            msg = "It's past high noon!(period 4)"
        elif now.hour == 15:
            msg = "It's home time"
        else:
            msg = f"It is {now.hour}:{now.minute}"

        channel = get_channel(client, "general")
        await client.send_message(channel, msg)
Exemple #13
0
 def replace_id(match):
     if match.group(1) == '#':
         return '#{}'.format(get_channel(team, match.group(2)))
     else:
         return translate_user(team, site, match.group(2))
Exemple #14
0
    def process_command(self, text):
        message = text.message.strip()
        message_parse = message[1:].split(' ', 1)
        all_messages = message[1:].split()
        command = message_parse[0]

        if command == "echo":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            parameter = message_parse[1]
            GM.gui.quick_gui(parameter,
                             text_type='header',
                             box_align='left',
                             ignore_whisper=True)
            GM.logger.info(f"Echo:[{parameter}]")
            return

        elif command == "log":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            debug_print(f"Manually Logged: [{message_parse[1]}]")
            GM.logger.info(f"Manually Logged: [{message_parse[1]}]")
            return

        elif command == "spam_test":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            for i in range(10):
                GM.gui.quick_gui("This is a spam test message...",
                                 text_type='header',
                                 box_align='left',
                                 ignore_whisper=True)
            GM.logger.info(
                f"A spam_test was conducted by: {GM.mumble.users[text.actor]['name']}."
            )
            return

        elif command == "msg":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            GM.gui.quick_gui(message[1:].split(' ', 2)[2],
                             text_type='header',
                             box_align='left',
                             user=all_messages[1],
                             ignore_whisper=True)
            GM.logger.info(
                f"Msg:[{all_messages[1]}]->[{message[1:].split(' ', 2)[2]}]")
            return

        elif command == "move":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            parameter = message_parse[1]
            channel_name = parameter
            if channel_name == "default" or channel_name == "Default":
                channel_name = utils.get_default_channel()
            channel_search = utils.get_channel(channel_name)
            if channel_search is None:
                return
            else:
                channel_search.move_in()
                GM.gui.quick_gui(
                    f"{utils.get_bot_name()} was moved by {GM.mumble.users[text.actor]['name']}",
                    text_type='header',
                    box_align='left',
                    ignore_whisper=True)
                GM.logger.info(
                    f"Moved to channel: {channel_name} by {GM.mumble.users[text.actor]['name']}"
                )
            return

        elif command == "make":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            parameter = message_parse[1]
            channel_name = parameter
            utils.make_channel(utils.get_my_channel(), channel_name)
            GM.logger.info(
                f"Made a channel: {channel_name} by {GM.mumble.users[text.actor]['name']}"
            )
            return

        elif command == "leave":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            utils.leave()
            GM.logger.info("Returned to default channel.")
            return

        elif command == "joinme":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            GM.gui.quick_gui(
                f"Joining user: {GM.mumble.users[text.actor]['name']}",
                text_type='header',
                box_align='left',
                ignore_whisper=True)

            GM.mumble.channels[GM.mumble.users[text.actor]
                               ['channel_id']].move_in()
            GM.logger.info(
                f"Joined user: {GM.mumble.users[text.actor]['name']}")
            return

        elif command == "privileges":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            GM.gui.quick_gui(f"{pv.get_all_privileges()}",
                             text_type='header',
                             box_align='left',
                             text_align='left',
                             user=GM.mumble.users[text.actor]['name'],
                             ignore_whisper=True)
            return

        elif command == "setprivileges":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            try:
                username = all_messages[1]
                level = int(all_messages[2])
                result = pv.set_privileges(username, level,
                                           GM.mumble.users[text.actor])
                if result:
                    GM.gui.quick_gui(
                        f"User: {username} privileges have been modified.",
                        text_type='header',
                        box_align='left',
                        user=GM.mumble.users[text.actor]['name'],
                        ignore_whisper=True)
                    GM.logger.info(f"Modified user privileges for: {username}")
            except Exception:
                reg_print(
                    "Incorrect format! Format: !setprivileges 'username' 'level'"
                )
                GM.gui.quick_gui(
                    "Incorrect format! Format: !setprivileges 'username' 'level'",
                    text_type='header',
                    box_align='left',
                    user=GM.mumble.users[text.actor]['name'],
                    ignore_whisper=True)
                return
            return

        elif command == "addprivileges":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            try:
                username = all_messages[1]
                level = int(all_messages[2])
                result = pv.add_to_privileges(username, level)
                if result:
                    GM.gui.quick_gui(
                        f"Added a new user: {username} to the user privileges.",
                        text_type='header',
                        box_align='left',
                        user=GM.mumble.users[text.actor]['name'],
                        ignore_whisper=True)
                    GM.logger.info(
                        f"Added a new user: {username} to the user privileges."
                    )
            except Exception:
                reg_print(
                    "Incorrect format! Format: !addprivileges 'username' 'level'"
                )
                GM.gui.quick_gui(
                    "Incorrect format! Format: !addprivileges 'username' 'level'",
                    text_type='header',
                    box_align='left',
                    user=GM.mumble.users[text.actor]['name'],
                    ignore_whisper=True)
                return
            return

        elif command == "blacklist":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            try:
                parameter = all_messages[1]
                reason = "No reason provided."
                print(len(message[1:].split()))
                if len(message[1:].split()) >= 3:
                    reason = message[1:].split(' ', 2)[2]
                result = pv.add_to_blacklist(parameter,
                                             GM.mumble.users[text.actor])
                if result:
                    GM.gui.quick_gui(
                        f"User: {parameter} added to the blacklist.<br>Reason: {reason}",
                        text_type='header',
                        box_align='left',
                        text_align='left')
                    GM.logger.info(
                        f"Blacklisted user: {parameter} <br>Reason: {reason}")
            except IndexError:
                GM.gui.quick_gui(pv.get_blacklist(),
                                 text_type='header',
                                 box_align='left',
                                 text_align='left')
            return

        elif command == "whitelist":
            if not pv.plugin_privilege_checker(text, command, self.priv_path):
                return
            try:
                parameter = message_parse[1]
                result = pv.remove_from_blacklist(parameter)
                if result:
                    GM.gui.quick_gui(
                        f"User: {parameter} removed from the blacklist.",
                        text_type='header',
                        box_align='left')
                    GM.logger.info(
                        f"User: {parameter} removed from the blacklist.")
            except IndexError:
                GM.gui.quick_gui("Command format: !whitelist username",
                                 text_type='header',
                                 box_align='left')
                return
            return
Exemple #15
0
def get_channel():
    targetLang = request.args.get('targetLang', '')
    nativeLang = request.args.get('nativeLang', '')
    channel = utils.get_channel(targetLang, nativeLang)
    return jsonify(channel)
Exemple #16
0

data_dim, data = utils.read_uplink_data(filepath)

zero_subcarrier_indices, transmit_data_dim, x_ = utils.convert_transmit_dimensions_single(
    filepath, frame_size)
x_train = x_[:train_size]
x_val = x_[train_size:train_size + val_size]
x_test = x_[train_size + val_size:]

y_dim, y_ = utils.reduce_data_single(data, zero_subcarrier_indices)
y_train = y_[:train_size]
y_val = y_[train_size:train_size + val_size]
y_test = y_[train_size + val_size:]

csi_dim, csi = utils.get_channel(filepath)
channel_dim, channel, H_R, H_I = utils.convert_channel_dimensions_single(csi)
H_R_train = H_R[:train_size]
H_R_val = H_R[train_size:train_size + val_size]
H_R_test = H_R[train_size + val_size:]
H_I_train = H_I[:train_size]
H_I_val = H_I[train_size:train_size + val_size]
H_I_test = H_I[train_size + val_size:]

HY = tf.placeholder(tf.float32, shape=[None, 2 * K])
X = tf.placeholder(tf.float32, shape=[None, 2 * K])
HH = tf.placeholder(tf.float32, shape=[None, 2 * K, 2 * K])
X_IND = tf.placeholder(tf.float32, shape=[None, K, 4])
batch_size = tf.shape(HY)[0]

x_real = X[:, 0:K]
Exemple #17
0
def category(server_id):
    log.info("Category page require for discourse")
    config = db.hgetall("{}:Discourse:Config".format(server_id))
    domain = config["domain"]
    default = config["channel"]
    api_key = config["api_key"]
    username = config["username"]

    channel = db.hgetall("{}:Discourse:Category".format(server_id))
    log.info("The channel is {}".format(channel))
    if domain is None:
        log.info("Missing domain, assume user didn't do set up")
        flash("You haven't finish config, please enter info in and click update!")
        return dashboard(server_id = server_id)
    elif channel is None:
        log.info("Channel is None")
        flash("There is something wrong with channel, please try set it again")
        return dashboard(server_id = server_id)

    #Getting guild channel list
    guild_channel = utils.get_channel(server_id)
    guild_channel = sorted(guild_channel,key = lambda k:k["name"])
    log.info(guild_channel)
    default = [x["name"] for x in guild_channel if x["id"] == default][0]
    log.info("default show {}".format(default))

    #Getting info about server, id, name and icon of it to display it.
    server = {
        'id':server_id,
        'name':db.hget("Info:Server",server_id),
        'icon':db.hget("Info:Server_Icon",server_id)}

    #making requests to discourse site within API to get category info so we can send topics to certain channel chosen by user.
    raw_data = discourse(domain,api_key,username,"site.json")
    if raw_data is None:
        flash("There is problem with accessing to site...","warning")
        return dashboard(server_id)
    raw_data = raw_data["categories"]

    data = []
    sub_temp = {}
    for x in raw_data: #checking subcategory and category
        category_id = x['id']
        have_sub = x.get("parent_category_id")
        if have_sub: #if it have sub, we should append to them
            sub = sub_temp.get(have_sub)
            if sub:
                sub.append({"id":str(category_id),"name":x["name"],"sub":"true"})
            else:
                sub_temp.update({have_sub:[{"id":str(category_id),"name":x["name"],"sub":"true"}]})
            continue
        data.append({"id":str(category_id),"name":x["name"],"sub":"false"})
    #getting proper fresh data after getting all sub categorys, it is doing in order.
    fresh_data = []
    for x in data:
        fresh_data.append(x)
        sub = sub_temp.get(int(x["id"]))
        if sub:
            for x in sub:
                fresh_data.append(x)
    log.debug(fresh_data)
    return render_template("category.html",default_channel = default,category = fresh_data,guild_channel = guild_channel,cate_channel=channel,server=server)
Exemple #18
0
from utils import get_channel
print(get_channel())