Exemplo n.º 1
0
def populate_from_request(banner: Banner):
    # Atribui valores do post ao model
    banner.redireciona_url = request.form['redireciona_url']
    if 'imagem' in request.files and request.files['imagem'].filename != '':
        banner.imagem = "data:" + request.files[
            'imagem'].content_type + ";base64," + str(
                base64.b64encode(request.files['imagem'].read()), "utf-8")
Exemplo n.º 2
0
def admin_remover(identifier: int):
    banner = Banner()
    banner.select(identifier)
    auth = Auth()
    if banner.identifier > 0:
        if auth.is_allowed('edita.universidade', banner):
            if banner.delete():
                Logs(
                    0, auth.user.identifier, auth.user.nome + '(' +
                    auth.user.cpf + ')' + ' removeu o banner [Cód. ' +
                    banner.identifier.__str__() + ']', 'banner',
                    banner.identifier,
                    datetime.datetime.now().strftime(
                        "%Y-%m-%d %H:%M:%S")).insert()
                return json_response(message='Banner removido!',
                                     data=[],
                                     redirect=url_for('banner.admin_lista'))
            else:
                return json_response(
                    message='Não foi possível remover o banner', data=[]), 400
        else:
            return json_response(
                message='Você não tem permissão para realizar esta ação',
                data=[]), 403
    else:
        return json_response(message='Banner não encontrado', data=[]), 404
Exemplo n.º 3
0
def admin_cadastro():
    """ Página para cadastro de banners """
    banner = Banner()
    banners = banner.all()
    if Auth().is_allowed('edita.universidade') and len(banners) < 10:
        return render_template('admin_form_banner.html', banner=banner)
    else:
        return admin_403_response()
Exemplo n.º 4
0
def admin_lista():
    """ Página com listagem de banners """
    if Auth().is_allowed('edita.universidade'):
        banner = Banner()
        banners = banner.all()
        return render_template('admin_lista_banners.html', banners=banners)
    else:
        return admin_403_response()
Exemplo n.º 5
0
def home():
    aviso = Aviso()
    avisos = aviso.search('%%', 0, 5, True)
    anuncio = Anuncio()
    anuncios = anuncio.search('%%', 0, 10, 1, 0, True)
    noticia = Noticia()
    noticias = noticia.search('%%', 0, 5, True)
    banner = Banner()
    banners = banner.all()
    return render_template('home.html', avisos=avisos, anuncios=anuncios, noticias=noticias, banners=banners)
Exemplo n.º 6
0
def admin_edicao(identifier: int):
    """ Página para edição de banner """
    banner = Banner()
    banner.select(identifier)
    if banner.identifier > 0:
        if Auth().is_allowed('edita.universidade', banner):
            return render_template('admin_form_banner.html', banner=banner)
        else:
            return admin_403_response()
    else:
        return admin_404_response()
Exemplo n.º 7
0
def admin_cadastrar():
    """ Cadastro de banner """
    auth = Auth()
    banner = Banner()
    banners = banner.all()
    if auth.is_allowed('edita.universidade') and len(banners) < 10:
        populate_from_request(banner)
        banner.data_cadastro = datetime.datetime.now().strftime(
            "%Y-%m-%d %H:%M:%S")
        banner.usuario_id = auth.user.identifier
        banner.ordem = len(banners)
        if banner.insert():
            Logs(
                0, auth.user.identifier, auth.user.nome + '(' + auth.user.cpf +
                ')' + ' cadastrou um banner [Cód. ' +
                banner.identifier.__str__() + ']', 'banner', banner.identifier,
                datetime.datetime.now().strftime(
                    "%Y-%m-%d %H:%M:%S")).insert()
            return json_response(message='Banner cadastrado!',
                                 data=[banner],
                                 redirect=url_for('banner.admin_lista'))
        else:
            return json_response(message='Não foi possível cadastrar o banner',
                                 data=[]), 400
    else:
        return json_response(
            message='Você não tem permissão para realizar esta ação',
            data=[]), 403
Exemplo n.º 8
0
def migrate_database():
    print('Aguarde...')
    # Cria tabelas
    Usuario.create_table()
    Aviso.create_table()
    Noticia.create_table()
    ImagemNoticia.create_table()
    Anuncio.create_table()
    ImagemAnuncio.create_table()
    Universidade.create_table()
    Banner.create_table()
    Logs.create_table()
    # Adiciona usuários e dados da universidade
    Usuario.insert_dummy()
    Universidade.insert_dummy()
    Banner.insert_dummy()
    Aviso.insert_dummy()
    Noticia.insert_dummy()
    Anuncio.insert_dummy()
    print('Dados inseridos!')
Exemplo n.º 9
0
def admin_editar(identifier: int):
    """ Edição de banner """
    banner = Banner()
    banner.select(identifier)
    auth = Auth()
    if banner.identifier > 0:
        if auth.is_allowed('edita.universidade', banner):
            populate_from_request(banner)
            banner.data_atualizacao = datetime.datetime.now().strftime(
                "%Y-%m-%d %H:%M:%S")
            if banner.update():
                Logs(
                    0, auth.user.identifier, auth.user.nome + '(' +
                    auth.user.cpf + ')' + ' editou um banner [Cód. ' +
                    banner.identifier.__str__() + ']', 'banner',
                    banner.identifier,
                    datetime.datetime.now().strftime(
                        "%Y-%m-%d %H:%M:%S")).insert()
                return json_response(message='Banner atualizado!',
                                     data=[banner],
                                     redirect=url_for('banner.admin_lista'))
            else:
                return json_response(
                    message='Não foi possível editar o banner', data=[]), 400
        else:
            return json_response(
                message='Você não tem permissão para realizar esta ação',
                data=[]), 403
    else:
        return json_response(message='Banner não encontrado', data=[]), 404
Exemplo n.º 10
0
def admin_imagem_ordem():
    auth = Auth()
    if auth.is_allowed('edita.universidade'):
        ordem = request.form['ordem']
        lista = ordem.split(',')
        imagem = Banner()
        count = 0
        for item in lista:
            imagem.select(item)
            imagem.ordem = count
            imagem.update()
            count = count + 1
        Logs(
            0, auth.user.identifier, auth.user.nome + '(' + auth.user.cpf +
            ')' + ' alterou a ordem dos banners', 'banner', 0,
            datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")).insert()
        return json_response(message='Ordem atualizada!', data=[])
    else:
        return json_response(
            message='Você não tem permissão para realizar esta ação',
            data=[]), 403