Rede Social Educacional
Clone or download
Pull request Compare This branch is 313 commits ahead, 1 commit behind redu:master.
Latest commit c52819b May 10, 2018
Permalink
Failed to load latest commit information.
.bundle Adicionando rspec ao Gemfile e gerando arquivos necessários para o RSpec Jan 10, 2011
app Merge pull request #218 from Openredu/issue-198 Apr 20, 2018
config solve merge conflict on database.yml Apr 2, 2018
db Merge branch 'master' into openredu-chat Oct 10, 2017
deploy Adiciona enconding ao começo de todos os arquivos .rb May 20, 2013
doc Fazendo backup dos arquivos importantes (rails:upgrade:backup) e gera… May 2, 2011
lang Fix validation messages Aug 21, 2017
lib Remove outdated browser Oct 25, 2017
public Remove public/assets Oct 27, 2017
recipes Autaliza cookbook mongo_solo para autorizar o uso do mongodb no init.d: Dec 8, 2013
script Merge branch 'master' into issue-98 Oct 4, 2017
solr/conf Adiciona filtro no solr Jun 19, 2017
spec Atualiza o Authorization nos headers May 5, 2018
vendor/assets Merge branch 'master' into update-ckeditor Aug 10, 2017
.env.development change app url from [IP] to ['localhost'] to fix inconsistencies Apr 2, 2018
.env.test change app url from [IP] to ['localhost'] to fix inconsistencies Apr 2, 2018
.gitignore Update .gitignore Apr 2, 2018
.gitmodules Controlador de status Sep 9, 2011
.travis.yml Fix travis Oct 31, 2017
Dockerfile Add imagemagick in docker Oct 18, 2017
Dockerfile-nginx Dockerize on staginerize on staging environment Oct 16, 2017
Dockerfile-staging Add imagemagick in docker Oct 18, 2017
Gemfile Dockerize on staginerize on staging environment Oct 16, 2017
Gemfile.lock Dockerize on staginerize on staging environment Oct 16, 2017
LICENSE Licença movida para um arquivo separado Sep 15, 2015
README-vm.mkd Atualizando nome da marca em ocorrencias de exibicao. Aug 22, 2016
README.markdown Atualizando readme Aug 31, 2016
Rakefile Adiciona encoding a Rakefile e rake tasks. May 20, 2013
Vagrantfile Habilitando a VM na rede. Jul 12, 2012
config.ru Fazendo backup dos arquivos importantes (rails:upgrade:backup) e gera… May 2, 2011
docker-compose.staging.yml Add imagemagick in docker Oct 18, 2017
docker-compose.yml Add imagemagick in docker Oct 18, 2017
nginx.staging.conf Dockerize on staginerize on staging environment Oct 16, 2017

README.markdown

OpenRedu Core

Este repositório contem o core do OpenRedu. O openredu-core é a parte central da plataforma social educacional OpenRedu. Também existem alguns subsistemas/serviços que estão em servidores/projetos/repositórios diferentes. A saber:

Setup

Setup Ubuntu Setup Windows/Mac OS/Ubuntu (Deprecated)

Dependências

Para fazer o OpenRedu funcionar em ambiente de desenvolvimento você precisará instalar as seguintes dependências:

  • MySQL 5.1
  • MongoDB 2.0.6
  • Solr 1.4.0

Coding style

O estilo e padrões de código utilizados estão disponíveis neste guia. Leia com atenção antes de submeter patches.

Contribuições

Pull requests

Os passos para contribuir com a evolução do código, seja para resolução de issue ou criação de features são os seguintes:

  1. Criar um branch novo
  2. Realizar mudanças ou adicionar a feature
  3. Commitar mudanças e enviá-las para o remoto
  4. Realizar pull request e atribuir a um revisor
  5. Caso existam revisões: realizar novos commits no mesmo branch criado e enviar para o remoto

Um exemplo de resolução de issue seguiria o seguinte fluxo:

Assumindo que o issue tenha o ID 1300.

$ redu (master) > git pull origin master
$ redu (master) > git checkout -b issue-1300
$ redu (issue-1300) > git commit -a -m "Minhas modificações"
$ redu (issue-1300) > git push origin issue-1300

Para mais informações sobre como fazer o pull request, consulte este post.

Reportando issues da API

O primeiro passo é decidir em qual repositório criar o issue:

Para problemas na API REST, É importante expressar os problemas em termos de HTTP e não da linguagem utilizada. Por exemplo, ao invés de dizer que o método getUsers() está lançando null pointer, tentem explicar que uma requisição do tipo GET para /api/spaces/1/users está retornando o código 500. Fica mais fácil de investigar dessa forma.

DelayedJob

O DelayedJob é utilizado como infraestrutura para processamento de tarefas em background.


#### Responsabilidades de cada worker do Delayed Job

- `delayed_job.0` (general): Execução de tarefas gerais como criação de associações entre usuários e postagens no mural (não há necessidade de serem executadas imediatamente).
- `delayed_job.1` (email): Envio de emails.
- `delayed_job.2` (vis): Envio de dados para Vis (requisições HTTP).
- `delayed_job.3` (hierarchy-associations): Criação de associações da hierarquia que precisam ser feitas o quanto antes.

### Serviço de entrega de e-mails

Para utilizar entrega em segundo plano, é necessário chamar o método do ActionMailer da seguinte forma: ``object.delay(:queue => 'email').method``. Onde ``method`` é tipo de notificação que deve ser gerada. Por exemplo, para enviar o e-mail de convite, a chamada seria a seguinte:

```ruby
UserNotifier.delay(:queue => 'email').external_user_course_invitation(user_course_invitation, course)

É importante notar que e-mails devem ser enfileirados na fila email para evitar que o envio dos mesmos afetem a vazão do processamento de outros Jobs. Para cada e-mail será enfileirado um Job do DelayedJob que lidará com a renderização da View e entrega para a Amazon SES.

Para mais informações de uso: bundle exec ar_sendmail_rails3 -h

Licença Utilizada

O pacote global de software Redu tem direitos reservados para vários autores registrado junto ao INPI. Ele é um Software Livre e de Código Aberto e tudo isso é fornecido sob os termos da licença GNU General Public License versão 2 publicada pela Free Software Foundation.

Redu e a documentação do Redu são distribuídos na esperança de que eles vão ser útil, mas SEM NENHUMA GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou ADEQUAÇÃO A UM DETERMINADO FIM. Consulte a Licença Pública Geral GNU aqui para mais detalhes.