Coder Social home page Coder Social logo

comsolid / sige Goto Github PK

View Code? Open in Web Editor NEW
22.0 5.0 7.0 11.9 MB

SiGE - Sistema de Gerência de Eventos

Home Page: https://comsolid.github.io/sige/

License: GNU General Public License v3.0

JavaScript 21.78% PHP 46.38% HTML 14.53% CSS 7.82% Java 9.33% Shell 0.05% C++ 0.02% Dockerfile 0.08%
conference javascript php manager zend-framework free-software

sige's People

Contributors

atilacamurca avatar samirfor avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

sige's Issues

Wizard de instalação

Criar um wizard para ajudar a automatizar o processo de instalação.

Algumas tarefas:

  • Criar banco de dados
  • Popular banco de dados inicialmente.
  • Criar usuário administrador.
  • Criar primeiro encontro.

Grade de programação estática via sistema

Criar um tratamento para inserir, alterar, remover, ocultar a grade de programação (aquela imagem em baixo da programação automática).

Fazer upload de uma ou mais imagens (se não for possível, apenas uma imagem).

Atualizar documentação de instalação e configuração

Com as mudanças da versão 2 do SiGE é necessário atualizar a documentação.

  • Localização das imagens.
  • Instalação de dependências do php através do composer
  • Configuração caso usuário utilize Nginx
  • Configuração tela inicial (data e hora encontro, mapa, features, etc.)

Exportar lista de participantes confirmados de dois ou mais encontros

Adicionar um botão que exporte a lista de participantes confirmados de vários encontros ao mesmo tempo (necessário no caso da SIC).

Criar tela com os filtros:

  • encontros (pode ser mais de um);
  • inscrições confirmadas, não confirmadas e todas;

Esta tarefa servirá para obter um relatório de participantes confirmado de dois ou mais encontro simultaneamente.

Fazer cache da programação em PDF

Na Programação existe um botão para exportar a programação para PDF.

Criar um cache da programação já que com o tempo ela tende a permanecer a mesma.

config.md

Hey @atilacamurca teria como você fazer um config.md para mim rodar na maquina local e disponibilizar um dump.sql com algumas informações para poder eu ter uma visão geral do sistema? Eu tive algumas idéias bem massa para o front end ai queria ter uma visão macro, de inicial queria limpar um pouco o sistema, vi que ele tem bastante coisa, e poderiamos melhorar umas parada. Tava pensando em colocar o grunt, karma e less. Sei que será um desafio grande por isso vou criar uma branch aqui pra ir iniciando isso.

Valeu um abraço,

Erro ao fazer login pela primeira vez com banco novo após subir docker

Error! SQLSTATE[23502]: Not null violation: 7 ERROR: null value in column "id_pessoa" violates not-null constraint DETAIL: Failing row contains (1, null, null, null, null, 3, t, 2016-05-24 21:12:06.075138, 2016-05-24 21:12:06.075138, f, null)., query was: INSERT INTO "encontro_participante" ("id_encontro", "validado", "data_validacao") VALUES (?, ?, now())

Gerar folhas de presença para todos os eventos do encontro em um único documento

Gerar listas para serem preenchidas durante os eventos com as seguintes informações por folha:

  • Título do evento;
  • Tipo do evento;
  • Palestrante(s);
  • Data e hora;
  • Local;
  • Lista de lacunas para preenchimento a mão:
    • Nome
    • E-mail
    • Assinatura

Permitir que o usuário informe a quantidade de vagas a ser gerada, que implicará na quantidade de linhas a ser gerada.

Seguir mais ou menos o documento que o Anderson fez no Write utilizado nos eventos do COMSOLiD 7.

Atualizar template de mensagens padrão de certificados

Na tabela encontro temos as colunas:

  • certificados_template_participante_encontro
  • certificados_template_palestrante_evento
  • certificados_template_participante_evento

Devido as alterações da issue #25, é necessário atualizar as mensagens mudando %s para valores nomeados.

Além disso criar as mensagens de forma genérica para qualquer encontro.

Turmas com palestrantes diferentes

Supomos que um evento X foi submetido por A. Sendo que A incluiu B e C como outros palestrantes. Foram acertadas a criação de 3 turmas com carga horária de 1 hora cada: Turma 1, Turma 2 e Turma 3. Cada palestrante ministrará apenas para uma única turma. Ou seja, A ministrará para Turma 1, B para Turma 2 e C para Turma 3.

A questão é que na hora de gerar o certificado de palestrante de A constará 3 horas, sendo que ele ministrou apenas para a Turma 1, sendo assim, a carga horária correta é 1 hora. Assim como a carga horária para os demais.

O sistema trata isso?

Usar Ink para e-mails responsivos

A ferramenta Ink tem como objetivo criar layouts para e-mails responsivos. Então, refazer a tela de envio de e-mail de confirmação e recuperação de senha para suportar a framework. Sendo assim ao invés de escrever o corpo do e-mail como HTML, apresentar os campos de dados estáticos e remover a mensagem HTML.

Alterar o método de envio das senhas

Alterar a forma de envio de senhas para tokens + salt.

No cadastro de usuário e alteração de senha, sempre enviar o link com um token por e-mail. Isso já serve para validar a conta de e-mail do usuário.
Ao abrir este link, o usuário vai definir sua senha tal como queira, sendo que esta deve ser forte o suficiente (letra maiúscula, letra minúscula e número).

Ticket de inscrição

Permitir envio de ticket de inscrição por email ao se inscrever no encontro.

O ticket deve conter os dados do usuário, dados do encontro e código de barras que facilite o processo de credenciamento.

Criar link para gerar o ticket manualmente.

Criar troca de Mensagens para validar eventos

A troca de mensagens para a validação de eventos atualmente entre a organização e o palestrante é feita através de e-mail. Isso impossibilita a validação por mais de uma pessoa, pelos seguintes motivos:

  • Você tem que verificar o e-mail para saber o que já foi conversado para não repetir as mesmas dúvidas.
  • Não tem como saber qual foi a conversa diretamente do SiGE, fazendo com que muitas pessoas tenham que ter a senha do e-mail.

Para resolver isso precisamos criar a troca de mensagens direto no SiGE, numa espécie de timeline como pode ser vista na figura abaixo:

sige-mockup-timeline-conversation

Ainda assim o e-mail será utilizado, principalmente para avisar o palestrante e a organização se há novas mensagens. Com isso teremos uma validação mais consistente e compartilhada, onde mais de uma pessoa pode resolver e validar os eventos.

Adicionar tela de Informações do Sistema

Criar uma tela de informações do sistema, mostrando:

  • a versão dos programas instalados (php, postgresql, apache ou nginx)
  • hora do sistema e hora do banco de dados
  • informações do php

Exemplo:

system-info-mockup

Criar relatório da lista de participantes

Gerar PDF, XLS, CSV contendo a lista de participantes confirmados de um evento. Caso não haja participantes confirmados, gerar lista para ser preenchida durante o evento com as seguintes informações:

  • Título do evento;
  • Tipo do evento;
  • Palestrante(s);
  • Data e hora;
  • Local;
  • Lista de lacunas para preenchimento a mão:
    • Nome
    • E-mail
    • Assinatura

Seguir mais ou menos o documento que o Anderson fez no Write utilizado nos eventos do COMSOLiD 7.

Bug ao se logar, invalid input syntax for type boolean: ""

Quando o usuário se loga em um novo encontro, fazemos uma busca do seu último encontro e inserimos seus dados novamente a partir dos dados antigos (para que ele mude se for necessário).

Entretanto quando o usuário se inscreveu no último encontro mas não confirmou a participação ocorre o erro acima, pois a coluna validado está null.

Solução: ao buscar colocar validado para true sempre.

Editar template do certificado com parâmetros nomeados

Na tela /admin/encontro/editar-mensagem-certificado/ a edição dos valores dinâmicos do certificado é feito através de %s. Isso torna difícil para o usuário saber quais os parâmetros que ele tem a sua disposição, além de não saber a ordem em que irão aparecer.

Assim sendo é necessário que os parâmetros sejam nomeados (ex. %s(nome) ou %nome%) e que na documentação da página mostre quais parâmetros ele tem a disposição.

Criar requisição de mudança de conta de e-mail

Situação: um usuário se cadastrou, participou de vários encontros e perdeu sua conta de e-mail.

Resolução: o usuário deve informar em alguma parte do sistema que deseja alterar sua conta de e-mail. O administrador deve ter uma tela que apresente tais solicitações. Nesta tela, ele vai aceitar ou negar os pedidos.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.