# Path: Server/jbox/models.py
# class Developer(UserMixin, db.Model):
# class Integration(db.Model):
# class GitHub(db.Model):
# class Channel(db.Model):
# class Authorization(db.Model):
#     def __repr__(self):
#     def verify_developer(self, platform_id):
#     def generate_confirmation_token(self, expiration=3600):
#     def confirm(token):
#     def insert_to_db(self):
# def developer_loader(platform, platform_id):
# def request_loader(request):
# def verify_developer(platform_or_token, platform_id):
#     def __repr__(self):
#     def insert_to_db(self):
#     def __repr__(self):
# def load_user(developer_id):
# def generate_dev_key():
# def generate_platform_id():
# def generate_integration_id():
# def generate_auth_token():
# 
# Path: Server/jbox/main/views.py
# def json_to_dict(x):
# def update_qq_api_request_data(data={}):
# def get_user_info():
# def login():
# def logout():
# def authorized():
# def get_qq_oauth_token():
# def index():
# def document():
# def guide():
# def application():
# def get_developer():


import os
import requests
import uuid
from flask import abort, Flask, json, jsonify, render_template, redirect, request, url_for, flash, session
from flask_httpauth import HTTPAuth
from flask_oauthlib.client import OAuth
from . import auth
from config import basedir
from ..models import db, Channel, Developer, Integration, Authorization, generate_integration_id, generate_auth_token
from ..main.views import update_qq_api_request_data, qq, json_to_dict
        db.session.add(authorization)
        db.session.commit()
    else:
        try:
            print(token)
            authorization.oauth_token = token
            db.session.add(authorization)
            db.session.commit()
        except:
            db.session.rollback()
            abort(500)
    if 'user' not in session:
        me = github.get('user')
        user = me.data['login']
        session['user'] = user
    integrations = developer.integrations
    user = session['user']
    github_integrations = []
    if integrations:
        for integration in integrations:
            if integration.type == 'github':
                githubs = integration.githubs
                if githubs:
                    repo_list = []
                    for entity in githubs:
                        display = entity.repository
                        if '/' in display:
                            index = display.index('/')
                            if index > 0:
                                repo_list.append(display[index + 1:len(display)])

# Path: Server/jbox/models.py
# class Developer(UserMixin, db.Model):
# class Integration(db.Model):
# class GitHub(db.Model):
# class Channel(db.Model):
# class Authorization(db.Model):
#     def __repr__(self):
#     def verify_developer(self, platform_id):
#     def generate_confirmation_token(self, expiration=3600):
#     def confirm(token):
#     def insert_to_db(self):
# def developer_loader(platform, platform_id):
# def request_loader(request):
# def verify_developer(platform_or_token, platform_id):
#     def __repr__(self):
#     def insert_to_db(self):
#     def __repr__(self):
# def load_user(developer_id):
# def generate_dev_key():
# def generate_platform_id():
# def generate_integration_id():
# def generate_auth_token():
# 
# Path: Server/jbox/main/views.py
# def json_to_dict(x):
# def update_qq_api_request_data(data={}):
# def get_user_info():
# def login():
# def logout():
# def authorized():
# def get_qq_oauth_token():
# def index():
# def document():
# def guide():
# def application():
# def get_developer():


# Path: Server/jbox/auth/views.py
import os
import requests
import uuid
from flask import abort, Flask, json, jsonify, render_template, redirect, request, url_for, flash, session
from flask_httpauth import HTTPAuth
from flask_oauthlib.client import OAuth
from . import auth
from config import basedir
from ..models import db, Channel, Developer, Integration, Authorization, generate_integration_id, generate_auth_token
from ..main.views import update_qq_api_request_data, qq, json_to_dict

        db.session.add(authorization)
        db.session.commit()
    else:
        try:
            print(token)
            authorization.oauth_token = token
            db.session.add(authorization)
            db.session.commit()
        except:
            db.session.rollback()
            abort(500)
    if 'user' not in session:
        me = github.get('user')
        user = me.data['login']
        session['user'] = user
    integrations = developer.integrations
    user = session['user']
    github_integrations = []
    if integrations:
        for integration in integrations:
            if integration.type == 'github':
                githubs = integration.githubs
                if githubs:
                    repo_list = []
                    for entity in githubs:
                        display = entity.repository
                        if '/' in display:
                            index = display.index('/')
                            if index > 0:
                                repo_list.append(display[index + 1:len(display)])

                    new_github = GitHub(integration_id=integration.integration_id, name=integration.name, icon=integration.icon,