Sistema que estão faltando serem criados com a versao do site antigo:
- Refatorar toda funcionalidade de autenticação de usuário:
Atualmente nenhuma parte do site utiliza o component 'Auth' do próprio Cake para gerenciar o registro, autenticação e sessão do usuário. Isso deve ser refeito e a mudança deve refletir em todos os controllers necessários.
- Adicionar visualização as músicas sempre que forem reproduzidas:
Sempre que um usuário colocar uma música para tocar, o número de visualizações deveria ser incrementado. Atualmente essa funcionalidade não parece estar implementada ou apresenta problema, pois mesmo que a música toque até o fim o incremento não acontece.
- Login de usuário compara caixa do valor inserido no campo de email:
A validação do email deveria ser insensitiva a caixa do valor inserido. Além disso, todos os emails devem ser salvos na base de dados com seus caracteres em caixa baixa.
- Refatorar a funcionalidade de seguir usuários:
Sabemos que hoje existe um bug na funcionalidade de seguir usuários. Logo após clicar em seguir vemos o botão clicado atualizar para o estado de "seguindo", porém, ao recarregar a página, o mesmo volta ao estado inicial de "seguir". Algumas páginas ainda apresentam total indisponibilidade dessa funcionalidade.
- Adicionar estatísticas de qualidade das músicas:
Sempre que uma música for enviada ela deve ser inspecionada e a sua taxa de transferência deve ser salva no registro da música na base de dados. Necessário análise, pois atualmente essa lógica não existe ou não funciona.
- Refatorar a funcionalidade de curtir músicas:
Atualmente a funcionalidade de curtir músicas não está confiável. O seu funcionamento é instável e a atualização dos valores referentes ao número de "curtidas" não acontece.
- Adicionar habilidade de remover playlist:
Adicionar a habilidade de remover (excluir) uma playlist a partir da página que lista o conteúdo da mesma.
- Busca pelas hashtags não funciona:
Qualquer usuário deveria ser capaz de buscar por músicas que são marcadas por hashtags definidas por outros usuários. Atualmente essa busca não funciona quando um usuário navega pelo link que o leva para a página de pesquisa.
- Timeline do usuário exibe publicações de outros usuários:
A timeline deveria apenas exibir publicações do usuário a quem ela pertence. Atualmente há um problema onde publicações de usuários aleatórios acabam aparecendo sem qualquer motivo aparente. A relação entre seguidores/seguindo não parece afetar esse comportamento.
- Integrar cadastro com o Facebook:
Para se registrar no site o usuário deve ser capaz de utilizar a integração com o Facebook. Depois de cadastrado o mesmo se utilizará da integração para fazer login no Music4Box.
- ÁRea de fã clube parece duplicar a funcionalidade dos grupos:
Atualmente a área de fã clube parece apenas duplicar a funcionalidade dos grupos. É Preciso analisar o motivo desse comportamente e, se necessário, desenvolver as partes específicas para o fã clube.
- Funcionalidade de Upload causa erro para usuários não autenticados:
Ao clicar no botão de Upload como um usuário não autenticado, um erro de SQL é exibido. O erro causa quebra no layout e a troca de páginas não resolve o problema. A única maneira de recuperar a página é recarregá-la completamente.
A funcionalidade correta seria redirecionar o usuário para a página de login/cadastro.
Vide:
http://prntscr.com/6pmxr0 e
http://prntscr.com/6pmy42
- Integrar player com o mural do Facebook:
Quando habilitado o recurso para notificar os amigos do que a pessoa está ouvindo, uma publicação deve ser enviada sempre que o usuário trocar manualmente a música que está atualmente tocando.
Exemplo do Spotify:
http://prntscr.com/6pmwa9
- Implementar sistema de convite para usuários cadastrados com o Facebook:
Após se cadastrar através da integração com o Facebook o usuário deve ser requisitado a convidar seus amigos para se cadastrar no M4B.
Necessitamos além disso que o código que já esteja pronto do antigo programador possa ser corrigido os bugs caso seja achado, para entregar o projeto funcional 100%, para lançamento.
Necessitamos que o profissional faça a parte de back e front end e seja cumprido o projeto pronto e navegável em 30 dias.
Delivery term: July 10, 2015