Exemplo n.º 1
0
def do_put(email,project, **kwargs):
    """
    Save email from subscriber
    """

    _db = get_db()
    dbc = _db.cursor()
    query = "SELECT id FROM subscribers WHERE email='{}'".format(email)
    try:
        dbc.execute(query)
    except IntegrityError as e:
        return base_common.msg.error(msgs.EXECUTE_QUERY_ERROR)

    if dbc.rowcount != 0:
        return base_common.msg.error(amsgs.ALREADY_EXIST)

    id = sequencer().new('b')
    query = "INSERT INTO subscribers (id,id_project, email, project) VALUES('{}','{}','{}','{}')".format(id, 1, email, project)
    print(query)
    try:
        dbc.execute(query)
    except IntegrityError as e:
        return base_common.msg.error(msgs.EXECUTE_QUERY_ERROR)

    _db.commit()

    return base_common.msg.put_ok()
Exemplo n.º 2
0
def do_put(request, *args, **kwargs):
    """
    Save hash for give parameters
    :param hash_data: data for storing, string, True
    :return:  202, Data hash
    :return:  404, Missing argument
    """

    log = request.log

    _db = get_db()
    dbc = _db.cursor()

    import tornado.web
    try:
        hdata = request.get_argument('data')
    except tornado.web.MissingArgumentError:
        log.critical('Missing data argument for hash2param')
        return base_common.msg.error(msgs.MISSING_REQUEST_ARGUMENT)

    h_id = sequencer().new('h')

    h2p = prepare_hash2params_query(h_id, hdata)
    try:
        dbc.execute(h2p)
    except IntegrityError as e:
        log.critical('Insert hash for data: {}'.format(e))
        return base_common.msg.error('Save data hash')

    _db.commit()

    return base_common.msg.post_ok({'h': h_id})
Exemplo n.º 3
0
def do_post(username, password, users_data, **kwargs):
    """
    Register user account
    """

    _db = get_db()
    dbc = _db.cursor()

    username = username.lower()
    if check_user_registered(dbc, username):
        return base_common.msg.error(msgs.USERNAME_ALREADY_TAKEN)

    if base_config.settings.STRONG_PASSWORD:
        result, server_message = apphooks.check_password_is_valid(username, password, users_data, **kwargs)
        if not result:
            return base_common.msg.error(server_message)

    u_id = sequencer().new('u')

    if not u_id:
        return base_common.msg.error(msgs.ERROR_SERIALIZE_USER)

    quser = apphooks.prepare_user_query(u_id, username, password, users_data, **kwargs)
    if not quser:
        log.critical('Error checking users data and create query')
        return base_common.msg.error(msgs.ERROR_REGISTER_USER)

    try:
        dbc.execute(quser)
    except IntegrityError as e:
        log.critical('User registration: {}'.format(e))
        return base_common.msg.error(msgs.ERROR_REGISTER_USER)

    tk = get_token(u_id, dbc)
    if not tk:
        return base_common.msg.error('Cannot login user')

    _db.commit()

    response = {'token': tk}

    if users_data and hasattr(apphooks, 'post_register_digest'):
        post_d = apphooks.post_register_digest(u_id, username, password, users_data, **kwargs)
        if post_d == False:
            log.critical('Error user post registration digest')
            return base_common.msg.error(msgs.ERROR_POST_REGISTRATION)

        if isinstance(post_d, dict):
            response.update(post_d)

    return base_common.msg.put_ok(response)
Exemplo n.º 4
0
def do_post(username, password, users_data, **kwargs):
    """
    Register user account
    """

    _db = get_db()
    dbc = _db.cursor()

    username = username.lower()
    if check_user_registered(dbc, username):
        return base_common.msg.error(msgs.USERNAME_ALREADY_TAKEN)

    if base_config.settings.STRONG_PASSWORD:
        result, server_message = apphooks.check_password_is_valid(username, password, users_data, **kwargs)
        if not result:
            return base_common.msg.error(server_message)

    u_id = sequencer().new("u")

    if not u_id:
        return base_common.msg.error(msgs.ERROR_SERIALIZE_USER)

    quser = apphooks.prepare_user_query(u_id, username, password, users_data, **kwargs)
    if not quser:
        log.critical("Error checking users data and create query")
        return base_common.msg.error(msgs.ERROR_REGISTER_USER)

    try:
        dbc.execute(quser)
    except IntegrityError as e:
        log.critical("User registration: {}".format(e))
        return base_common.msg.error(msgs.ERROR_REGISTER_USER)

    tk = get_token(u_id, dbc)
    if not tk:
        return base_common.msg.error("Cannot login user")

    _db.commit()

    response = {"token": tk}

    if users_data and hasattr(apphooks, "post_register_digest"):
        post_d = apphooks.post_register_digest(u_id, username, password, users_data, **kwargs)
        if post_d == False:
            log.critical("Error user post registration digest")
            return base_common.msg.error(msgs.ERROR_POST_REGISTRATION)

        if isinstance(post_d, dict):
            response.update(post_d)

    return base_common.msg.put_ok(response)
Exemplo n.º 5
0
def get_token(uid, dbc):

    # RETRIEVE ASSIGNED TOKEN
    __tk = __get_assigned_token(dbc, uid)
    if __tk:
        return __tk

    __tk = sequencer().new("s")

    try:
        __set_session_token(dbc, uid, __tk)
    except ErrorSetSessionToken:
        return None

    return __tk
Exemplo n.º 6
0
def get_token(uid, dbc):

    # RETRIEVE ASSIGNED TOKEN
    __tk = __get_assigned_token(dbc, uid)
    if __tk:
        return __tk

    __tk = sequencer().new('s')

    try:
        __set_session_token(dbc, uid, __tk)
    except ErrorSetSessionToken:
        return None

    return __tk
Exemplo n.º 7
0
def do_post(username, password, users_data, **kwargs):
    """
    Register user account
    """

    _db = get_db()
    dbc = _db.cursor()

    if _check_user_registered(dbc, username):
        return base_common.msg.error(msgs.USERNAME_ALREADY_TAKEN)

    if hasattr(apphooks, 'check_password_is_valid') and not apphooks.check_password_is_valid(password):
        return base_common.msg.error(msgs.INVALID_PASSWORD)

    u_id = sequencer().new('u')

    if not u_id:
        return base_common.msg.error(msgs.ERROR_SERIALIZE_USER)

    quser = apphooks.prepare_user_query(u_id, username, password, users_data, **kwargs)
    if not quser:
        log.critical('Error checking users data and create query')
        return base_common.msg.error(msgs.ERROR_REGISTER_USER)

    try:
        dbc.execute(quser)
    except IntegrityError as e:
        log.critical('User registration: {}'.format(e))
        return base_common.msg.error(msgs.ERROR_REGISTER_USER)

    tk = get_token(u_id, dbc)
    if not tk:
        return base_common.msg.error('Cannot login user')

    _db.commit()

    response = {'token': tk}

    if users_data and hasattr(apphooks, 'post_register_digest'):
        post_d = apphooks.post_register_digest(u_id, username, password, users_data, **kwargs)
        if post_d == False:
            log.critical('Error user post registration digest')
            return base_common.msg.error(msgs.ERROR_POST_REGISTRATION)

        if isinstance(post_d, dict):
            response.update(post_d)

    return base_common.msg.put_ok(response)
Exemplo n.º 8
0
def do_post(request, *args, **kwargs):
    """
    Register user account
    :param username: users username, string, True
    :param password: users password, string, True
    :return:  201, Created
    :return:  404
    """

    log = request.log

    try:
        username = request.get_argument('username')
        password = request.get_argument('password')
    except tornado.web.MissingArgumentError:
        return base_common.msg.error(msgs.MISSING_REQUEST_ARGUMENT)

    if len(password) < 3:
        return base_common.msg.error(msgs.PASSWORD_TO_SHORT)

    password = format_password(username, password)

    _db = get_md2db()
    dbc = _db.cursor()

    if _check_user_registered(dbc, username):
        return base_common.msg.error(msgs.USERNAME_ALREADY_TAKEN)

    u_id = sequencer().new('u')

    if not u_id:
        return base_common.msg.error(msgs.ERROR_SERIALIZE_USER)

    quser = _prepare_user_query(u_id, username, password)

    try:
        dbc.execute(quser)
    except IntegrityError as e:
        log.critical('User registration: {}'.format(e))
        return base_common.msg.error(msgs.ERROR_REGISTER_USER)

    tk = get_token(u_id, dbc, log)
    if not tk:
        return base_common.msg.error('Cannot login user')

    _db.commit()

    return base_common.msg.put_ok({'token': tk}, http_status=200)
Exemplo n.º 9
0
def do_post(request, *args, **kwargs):
    """
    Register user account
    :param username: users username, string, True
    :param password: users password, string, True
    :return:  201, Created
    :return:  404
    """

    log = request.log

    try:
        username = request.get_argument('username')
        password = request.get_argument('password')
    except tornado.web.MissingArgumentError:
        return base_common.msg.error(msgs.MISSING_REQUEST_ARGUMENT)

    if len(password) < 3:
        return base_common.msg.error(msgs.PASSWORD_TO_SHORT)

    password = format_password(username, password)

    _db = get_db()
    dbc = _db.cursor()

    if _check_user_registered(dbc, username):
        return base_common.msg.error(msgs.USERNAME_ALREADY_TAKEN)

    u_id = sequencer().new('u')

    if not u_id:
        return base_common.msg.error(msgs.ERROR_SERIALIZE_USER)

    quser = _prepare_user_query(u_id, username, password)

    try:
        dbc.execute(quser)
    except IntegrityError as e:
        log.critical('User registration: {}'.format(e))
        return base_common.msg.error(msgs.ERROR_REGISTER_USER)

    tk = get_token(u_id, dbc, log)
    if not tk:
        return base_common.msg.error('Cannot login user')

    _db.commit()

    return base_common.msg.put_ok({'token': tk}, http_status=200)
Exemplo n.º 10
0
def save_hash(hdata, commit=True):

    _db = get_db()
    dbc = _db.cursor()

    h_id = sequencer().new('h', commit)

    h2p = prepare_hash2params_query(h_id, hdata)
    try:
        dbc.execute(h2p)
    except IntegrityError as e:
        return False

    if commit:
        _db.commit()

    return h_id
Exemplo n.º 11
0
def save_hash(hdata, commit=True):

    _db = get_db()
    dbc = _db.cursor()

    h_id = sequencer().new('h', commit)

    h2p = prepare_hash2params_query(h_id, hdata)
    try:
        dbc.execute(h2p)
    except IntegrityError as e:
        return False

    if commit:
        _db.commit()

    return h_id
Exemplo n.º 12
0
def do_put(hdata, **kwargs):
    """
    Save hash for give parameters
    """

    _db = get_db()
    dbc = _db.cursor()

    h_id = sequencer().new('h')

    h2p = prepare_hash2params_query(h_id, hdata)
    try:
        dbc.execute(h2p)
    except IntegrityError as e:
        log.critical('Insert hash for data: {}'.format(e))
        return base_common.msg.error(msgs.ERROR_SAVE_HASH)

    _db.commit()

    return base_common.msg.post_ok({'h': h_id})
Exemplo n.º 13
0
def do_put(hdata, **kwargs):
    """
    Save hash for give parameters
    """

    _db = get_db()
    dbc = _db.cursor()

    h_id = sequencer().new('h')

    h2p = prepare_hash2params_query(h_id, hdata)
    try:
        dbc.execute(h2p)
    except IntegrityError as e:
        log.critical('Insert hash for data: {}'.format(e))
        return base_common.msg.error(msgs.ERROR_SAVE_HASH)

    _db.commit()

    return base_common.msg.post_ok({'h': h_id})