Beispiel #1
0
 def init_db(self):
     engine = self.session.get_bind(mapper=None, clause=None)        
     
     inspector = Inspector.from_engine(engine)
     if 'ab_user' not in inspector.get_table_names():
         print "Security DB not found Creating..."
         Base.metadata.create_all(engine)
         print "Security DB Created"
         self.migrate_db()
     if self.session.query(Role).filter_by(name = self.auth_role_admin).first() is None:
         role = Role()
         role.name = self.auth_role_admin
         self.session.add(role)
         self.session.commit()
         print "Inserted Role for public access", self.auth_role_admin            
     if not self.session.query(Role).filter_by(name = self.auth_role_public).first():
         role = Role()
         role.name = self.auth_role_public
         self.session.add(role)
         self.session.commit()
         print "Inserted Role for public access", self.auth_role_public
     if not self.session.query(User).all():
         user = User()
         user.first_name = 'Admin'
         user.last_name = 'User'
         user.username = '******'
         user.password = '******'
         user.active = True
         user.role = self.session.query(Role).filter_by(name = self.auth_role_admin).first()
         self.session.add(user)
         self.session.commit()
         print "Inserted initial Admin user"
         print "Login using Admin/general"
Beispiel #2
0
    def run(self):
        admin_role = Role()
        admin_role.name = 'admin'
        admin_role.description = 'Umsjónarhlutverk með aðgang að notendastillingum'

        user_role = Role()
        user_role.name = 'Notandi'
        user_role.description = 'Venjulegur notandi með grunn aðgang'

        db.session.add(admin_role)
        db.session.add(user_role)
        db.session.commit()
Beispiel #3
0
def seed_roles(db):
    print("++ Seeding roles")
    role_usr = Role()
    role_usr.name = "user"
    role_usr.description = "Simple user"

    role_adm = Role()
    role_adm.name = "admin"
    role_adm.description = "Admin user"

    db.session.add(role_usr)
    db.session.add(role_adm)
    db.session.commit()
Beispiel #4
0
def load_roles():

    role = Role()
    role.name = "Client"
    role.save()

    print("Roles loaded")
Beispiel #5
0
def seed_users(db):
    print("++ Seeding users")
    role_usr = Role()
    role_usr.name = "user"
    role_usr.description = "Simple user"

    role_adm = Role()
    role_adm.name = "admin"
    role_adm.description = "Admin user"

    db.session.add(role_usr)
    db.session.add(role_adm)

    user_datastore.create_user(
        email="*****@*****.**", password="******", name="toto", timezone="UTC", roles=[role_adm]
    )
    db.session.commit()
    return
Beispiel #6
0
def create_role():
    name = request.json.get("name", None)

    role = Role()
    role.name = request.json.get("name", "")

    role.save()

    return jsonify({"success": "Register Successfully"}), 200
Beispiel #7
0
    async def get_role(self, ctx, *, role_name):
        """
        Gives the user the requested custom role if not locked..
        """

        found_role = Role.where('name', role_name)\
            .where('guild_id', ctx.guild.id).first()
        if found_role:
            if found_role.is_locked:
                await ctx.send("That custom role is currently locked and "
                               "cannot assigned, if you believe this is an "
                               "error then please contact an Admin")
                return
            discord_guild = self.bot.get_guild(found_role.guild_id)
            discord_role = discord_guild.get_role(found_role.role_id)
            if discord_role is None:
                await ctx.send("That custom role appears to be broken, "
                               "please contact an admin")
                return
            await ctx.author.add_roles(discord_role)
            await ctx.send("You have been given the custom role "
                           f"`{role_name}`")
            return

        for role in ctx.guild.roles:
            if lev.distance(role_name.lower(), role.name.lower()) <= 1:
                await ctx.send("That custom role does not exist but cannot be "
                               "created as it's name is too similar to the "
                               f"pre-existing role `{role.name}`")
                return

        result, _ = await ut.get_confirmation(
            ctx.channel, ctx.author, self.bot,
            "It looks like that custom role doesn't exist, "
            "would you like to create it?")

        if result:
            role = Role()

            role.name = role_name

            role.guild_id = ctx.guild.id
            role.created_by = ctx.author.id

            discord_role = await ctx.guild.create_role(
                name=role_name,
                mentionable=True,
                colour=Colour(random.choice(ROLE_COLOURS)),
                reason="Auto-Generated")

            role.role_id = discord_role.id

            role.save()

            await ctx.author.add_roles(discord_role)
            await ctx.send(f"You have been given the role {role_name}")
Beispiel #8
0
def postRoles():

    data = request.json
    rol = Role()  #PASOXXX
    rol.name = data["name"]
    rol.code = data["code"]

    db.session.add(rol)  #PASOXXX
    db.session.commit()

    return jsonify(rol.serialize()), 200
Beispiel #9
0
def create_role_body(errors, form):
    role = Role()
    role.name = form.name.data
    role.description = form.description.data

    try:
        db.session.add(role)
        db.session.commit()
    except:
        errors.append("Can't save in db role id{}".format(role.id))

    return errors
Beispiel #10
0
    def init_db(self):
        try:
            engine = self.session.get_bind(mapper=None, clause=None)

            inspector = Inspector.from_engine(engine)
            if 'ab_user' not in inspector.get_table_names():
                log.info("Security DB not found Creating")
                Base.metadata.create_all(engine)
                log.info("Security DB Created")
                self.migrate_db()
            if self.session.query(Role).filter_by(name=self.auth_role_admin).first() is None:
                role = Role()
                role.name = self.auth_role_admin
                self.session.add(role)
                self.session.commit()
                log.info("Inserted Role for public access %s" % (self.auth_role_admin))
            if not self.session.query(Role).filter_by(name=self.auth_role_public).first():
                role = Role()
                role.name = self.auth_role_public
                self.session.add(role)
                self.session.commit()
                log.info("Inserted Role for public access %s" % (self.auth_role_public))
            if not self.session.query(User).all():
                user = User()
                user.first_name = 'Admin'
                user.last_name = 'User'
                user.username = '******'
                user.password = generate_password_hash('general')
                user.email = '*****@*****.**'
                user.active = True
                user.role = self.session.query(Role).filter_by(name=self.auth_role_admin).first()
                self.session.add(user)
                self.session.commit()
                log.info("Inserted initial Admin user")
                log.info("Login using Admin/general")
        except Exception as e:
            log.error("DB Creation and initialization failed, if just upgraded to 0.7.X you must migrate the DB. {0}".format(str(e)))
Beispiel #11
0
def reset_database():
    DB.drop_all()
    DB.create_all()

    role = Role()
    role.name = 'Administrator'

    user = User()
    user.public_id = 'd38924fb-9417-4a50-b715-01f805c28063'
    # password
    user.password = '******'
    user.name = 'admin'
    user.email = '*****@*****.**'
    user.role = role

    coffee_machine = CoffeeMachine()
    coffee_machine.name = 'Winston'
    coffee_machine.repository = 'hidden-firefly'

    coffee_type = CoffeeType()
    coffee_type.name = 'Arabica'

    coffee_brand = CoffeeBrand()
    coffee_brand.name = 'Dallmayr'

    coffee_product = CoffeeProduct()
    coffee_product.name = 'Dallmayr Prodomo'
    coffee_product.coffee_brand = coffee_brand
    coffee_product.coffee_type = coffee_type

    profile = Profile()
    profile.name = 'Morning'
    profile.water_in_percent = 32 * 1000
    profile.coffee_strength_in_percent = 42
    profile.user = user

    job = Job()
    current_time = time.time()
    job.create_date = current_time
    job.coffee_strength_in_percent = 66
    job.water_in_percent = 44
    job.price = 10
    job.doses = 1
    job.user = user
    job.coffee_machine = coffee_machine
    job.coffee_product = coffee_product

    DB.session.add(job)
    DB.session.commit()
Beispiel #12
0
def add_role():

    for index, breadcrumb in enumerate(session["breadcrumbs"]):
        if "添加角色" == breadcrumb["text"]:
            session["breadcrumbs"] = session["breadcrumbs"][: index + 1]
            break
    else:
        session["breadcrumbs"].append({"text": "添加角色", "url": url_for("auth.add_role")})

    if request.method == "POST":
        other_role = Role.query.filter_by(name=request.form["name"]).first()
        if other_role:
            flash(u"同名角色已存在", "danger")
        else:
            all_id = [str(menu_id) for menu_id in request.form.getlist("role_menu") if menu_id]

            query_sql = "SELECT DISTINCT  parent_id FROM tms_menu WHERE id IN(%s)" % ",".join(all_id)

            for row in db.engine.execute(query_sql):
                if row[0] != "None" and row[0] != None:
                    current_app.logger.info(row[0])
                    all_id.append(str(row[0]))

            role = Role()
            role.menu = ",".join(list(set(all_id)))
            role.name = request.form["name"]
            role.index_page = request.form["index_page"]

            db.session.add(role)
            db.session.commit()

            users = User.query.filter(User.id.in_(request.form.getlist("role_remember")))
            for user in users:
                user.role = role
                db.session.add(user)
            db.session.commit()
            return redirect(url_for("auth.role_page"))

    menus = SystemMenu.query.filter_by(activate=True).order_by(SystemMenu.order).all()
    users = User.query.all()

    return render_template(
        "admin/account/role_edit.html", role=None, menus=menus, users=users, current_page="auth.role_page"
    )
Beispiel #13
0
import os
import sys

from flask_security import utils

sys.path.append(os.path.join(os.path.dirname(__file__), '..'))

from app import create_app
from models import Page, db, Role, User

app = create_app()

with app.app_context():
    admin_role = Role()
    admin_role.name = 'admin'
    db.session.add(admin_role)
    db.session.commit()

    root = User()
    root.email = '*****@*****.**'
    root.password = utils.hash_password("123456")
    root.active = True
    root.roles.append(admin_role)
    db.session.add(root)
    db.session.commit()

    page = Page()
    page.title = "Home Page"
    page.content = "<h1><b>Hello from flask - docker!<b></h1>"
    page.is_homepage = True
Beispiel #14
0
from models import Role, database

r = Role()
r.name = 'conversationee'
r.description = 'day-to-day system user'

with database.transaction():
	r.save()
Beispiel #15
0
def _save_role(cd):
    role = Role()
    role.id = cd['id'] or None
    role.name = cd['name']
    role.save()
    return role