Example #1
0
def handle_add_command(args):
    path = []
    path.append(args.config)
    session = get_session(os.path.join(*path))
    importer = get_importer(session, 'news', 'json')
    # On default all users will see new added items.
    users = session.query(User).all()
    with open(args.jsonfile) as f:
        data = f.read()
        if args.loadbyid:
            load_key = "id"
        else:
            load_key = "uuid"
        items, created, updated = do_import(session, importer, data, load_key)
        for item, action in items:
            # Add all new items to the session
            if action.find("CREATE") > -1:
                item.users = users

    try:
        transaction.commit()
        print "Updated %s news, Created %s news" % (updated, created)
    except Exception as e:
        print str(e)
        print "Loading data failed!"
Example #2
0
def handle_modul_add_command(args):
    """@todo: Docstring for add_modul_add_command.

    :args: @todo
    :returns: @todo
    """
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)

    session = get_session(os.path.join(*path))
    package = args.app
    name = args.name
    clazz = name.capitalize()
    modul_id = get_next_modulid(package, session)
    add_model_file(package, name, modul_id, clazz, args.mixin)
    add_form_file(package, name)
    add_table_file(package, name)
    msg = "Added %s modul" % name
    path = create_new_revision(args, msg)
    replace_sql_in_revision(path, package, name, session)
    print ""
    print "Ready. Next steps:"
    print ""
    print "touch %s" % path
    print "%s-admin db upgrade" % args.app
Example #3
0
def handle_modul_add_command(args):
    """@todo: Docstring for add_modul_add_command.

    :args: @todo
    :returns: @todo
    """
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)

    session = get_session(os.path.join(*path))
    package = args.app
    name = args.name
    clazz = name.capitalize()
    modul_id = get_next_modulid(package, session)
    add_model_file(package, name, modul_id, clazz, args.mixin)
    add_form_file(package, name)
    add_table_file(package, name)
    msg = "Added %s modul" % name
    path = create_new_revision(args, msg)
    replace_sql_in_revision(path, package, name, session)
    print ""
    print "Ready. Next steps:"
    print ""
    print "touch %s" % path
    print "%s-admin db upgrade" % args.app
Example #4
0
def handle_del_command(args):
    path = []
    path.append(args.config)
    session = get_session(os.path.join(*path))
    try:
        item = session.query(News).filter(News.id == args.id).one()
        session.delete(item)
        transaction.commit()
        print "Succesfully deleted"
    except Exception as e:
        print str(e)
        print "Can not delete!"
Example #5
0
def handle_del_command(args):
    path = []
    path.append(args.config)
    session = get_session(os.path.join(*path))
    try:
        item = session.query(News).filter(News.id == args.id).one()
        session.delete(item)
        transaction.commit()
        print "Succesfully deleted"
    except Exception as e:
        print str(e)
        print "Can not delete!"
Example #6
0
def handle_ext_delete_command(args):
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)
    session = get_session(os.path.join(*path))
    modul = _load_modul_by_name(session, args.name.replace("ringo_", ""))
    if modul:
        if args.name in extensions:
            session.delete(modul)
            transaction.commit()
            print "Extension %s deleted!" % args.name
        else:
            print "Extension %s already deleted!" % args.name
    else:
        print "Extension %s not found!" % args.name
Example #7
0
def handle_ext_delete_command(args):
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)
    session = get_session(os.path.join(*path))
    modul = get_modul_by_name(args.name.replace("ringo_", ""), session)
    if modul:
        if args.name in extensions:
            session.delete(modul)
            transaction.commit()
            print "Extension %s deleted!" % args.name
        else:
            print "Extension %s already deleted!" % args.name
    else:
        print "Extension %s not found!" % args.name
Example #8
0
def handle_ext_init_command(args):
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)
    session = get_session(os.path.join(*path))
    for ext in extensions:
        if ext == args.name:
            if _load_modul_by_name(session, ext.replace("ringo_", "")):
                print "Extension %s already added!" % args.name
            else:
                extension = dynamic_import("%s." % args.name)
                _add_modul(extension.modul_config, None, session)
                print "Extension %s added!" % args.name
            break
    else:
        print "Extension %s not found!" % args.name
Example #9
0
def handle_ext_init_command(args):
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)
    session = get_session(os.path.join(*path))
    for ext in extensions:
        if ext == args.name:
            if get_modul_by_name(ext.replace("ringo_", ""), session):
                print "Extension %s already added!" % args.name
            else:
                extension = dynamic_import("%s." % args.name)
                _add_modul(extension.modul_config, None, session)
                print "Extension %s added!" % args.name
            break
    else:
        print "Extension %s not found!" % args.name
Example #10
0
def handle_modul_delete_command(args):
    """@todo: Docstring for add_modul_add_command.

    :args: @todo
    :returns: @todo
    """
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)

    session = get_session(os.path.join(*path))
    package = args.app
    name = args.name
    remove_db_entry(name, session)
    del_model_file(package, name)
    del_form_file(package, name)
    del_table_file(package, name)
Example #11
0
def handle_modul_delete_command(args):
    """@todo: Docstring for add_modul_add_command.

    :args: @todo
    :returns: @todo
    """
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)

    session = get_session(os.path.join(*path))
    package = args.app
    name = args.name
    remove_db_entry(name, session)
    del_model_file(package, name)
    del_form_file(package, name)
    del_table_file(package, name)
Example #12
0
def handle_user_passwd_command(args):
    if args.password:
        password = args.password
    else:
        password = password_generator()
    encrypted_password = encrypt_password(password)
    path = []
    path.append(get_app_location(args.app))
    path.append(args.config)
    session = get_session(os.path.join(*path))
    try:
        user = session.query(User).filter(User.login == args.user).all()[0]
    except:
        print "User %s not found in system. You could only alter existing user's passwords" % args.user
    else:
        user.password = encrypted_password
        print "OK! Password for '%s' changed to '%s'" % (args.user, password)
    finally:
        transaction.commit()
Example #13
0
def handle_add_command(args):
    path = []
    path.append(args.config)
    session = get_session(os.path.join(*path))
    importer = get_importer(session, 'news', 'json')
    # On default all users will see new added items.
    users = session.query(User).all()
    with open(args.jsonfile) as f:
        data = f.read()
        items, created, updated = do_import(session, importer, data,
                                            use_uuid=(not args.loadbyid))
        for item, action in items:
            # Add all new items to the session
            if action.find("CREATE") > -1:
                item.users = users

    try:
        transaction.commit()
        print "Updated %s news, Created %s news" % (updated, created)
    except Exception as e:
        print str(e)
        print "Loading data failed!"