Пример #1
0
def index():
    mensagens = Mensagem.recupera_todas()

    ## Insere opções no menu
    menu = []
    ## Cada opção no menu é um dicionário
    menu.append({
        'active':
        True,  # active informa se a opção está ativa, e se estiver, destaca ela na página
        'href': '/',  # href é o caminho que deve ser aberto pela opção
        'texto': 'Página principal'
    })  # texto é o texto exibido no menu para a opção
    menu.append({
        'active': False,
        'href': '/mensagem',
        'texto': 'Escrever mensagem'
    })

    ## Inserimos tudo que foi criado no dicionário context, ele será passado para a view
    context = {
        'titulo': 'Página principal',
        'menu': menu,
        'mensagens': mensagens
    }

    return render_template('index.html', **context)
Пример #2
0
def enviarMensagem(request, destinatario):

    #procura o match no qual a mensagem deve ser inserida
    lista1 = request.user.user1.all()
    lista2 = request.user.user2.all()

    encontrado = False

    for match in lista1:
        if match.user2.username == destinatario:
            encontrado = True
            combinacao = match
            break

    if encontrado == False:
        for match in lista2:
            if match.user1.username == destinatario:
                combinacao = match
                encontrado = True
                break

    if request.method == 'POST':

        mensagem = request.POST.get('mensagem', '')

        #instancia a mensagem a ser enviada
        novamensagem = Mensagem()
        novamensagem.conteudo = mensagem
        novamensagem.sender = request.user.username
        novamensagem.match = combinacao

        novamensagem.save()

        listamensagens = combinacao.mensagens.all()

    else:

        listamensagens = combinacao.mensagens.all()

    for mensagem in listamensagens:
        if mensagem.vista == False:
            if mensagem.sender != request.user.username:
                print('entrou')
                mensagem.vista = True
                mensagem.save()

    return render(request, 'chat.html', {'listamensagens': listamensagens})
Пример #3
0
def mensagem(data):
    selection = data["selection"]
    nomeusuario = data["nomeusuario"]
    cor = data["cor"]
    canall = data["canal"]
    data_e_hora = datetime.now()
    dataHora = data_e_hora.strftime('%H:%M')
    mensagem = Mensagem(nomeusuario, cor, selection, dataHora)
    for canal in canais:
        if canal.nome == canall:
            canal.addMensagem(mensagem)

    emit("announce mensagem", {
        "selection": selection,
        "nomeusuario": nomeusuario,
        "cor": cor,
        "canal": canall,
        "dataHora": dataHora
    },
         broadcast=True)
Пример #4
0
def index():
    mensagens = Mensagem.recupera_todas()

    ####################
    ## Usamos o objeto retornado por bd() para realizar comandos sql
    # sql = '''select usuario, texto from mensagens order by id desc'''
    # cur = bd().execute(sql)
    # ## Montamos dicionário dicionários com os resultados da consulta para passar para a view
    # mensagens = []
    # for usuario, texto in cur.fetchall(): # fetchall() gera uma lista com os resultados:
    #     mensagens.append({'usuario': usuario, 'texto': texto})

    #####################

    ## Insere opções no menu
    menu = []
    ## Cada opção no menu é um dicionário
    menu.append({
        'active':
        True,  # active informa se a opção está ativa, e se estiver, destaca ela na página
        'href': '/',  # href é o caminho que deve ser aberto pela opção
        'texto': 'Página principal'
    })  # texto é o texto exibido no menu para a opção
    menu.append({
        'active': False,
        'href': '/mensagem',
        'texto': 'Escrever mensagem'
    })

    ## Inserimos tudo que foi criado no dicionário context, ele será passado para a view
    context = {
        'titulo': 'Página principal',
        'menu': menu,
        'mensagens': mensagens
    }

    return render_template('index.html', **context)
Пример #5
0
def gravar_mensagem():
    mensagem = Mensagem(request.form['usuario'], request.form['texto'])
    mensagem.gravar()
    return redirect('/')