diff --git a/Gemfile b/Gemfile index 944516a..0333c46 100644 --- a/Gemfile +++ b/Gemfile @@ -21,3 +21,7 @@ gem 'shoulda', "~>2.11" gem 'acts_as_paranoid', '~>0.4' #gem 'acts_as_versioned', '~>0.6', :ignore_dependencies => true gem 'acts_as_list', '~>0.2' + +group :development, :production do + gem 'brazilian-rails', '3.3.0', :path => './vendor/gems/brazilian-rails/brI18n/' +end diff --git a/Gemfile.lock b/Gemfile.lock index febd5a2..3961a5f 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -3,6 +3,11 @@ PATH specs: bluecloth (1.0.0) +PATH + remote: ./vendor/gems/brazilian-rails/brI18n/ + specs: + brazilian-rails (3.3.0) + GEM remote: https://rubygems.org/ specs: @@ -123,6 +128,7 @@ DEPENDENCIES acts_as_list (~> 0.2) acts_as_paranoid (~> 0.4) bluecloth (= 1.0.0)! + brazilian-rails (= 3.3.0)! calendar_helper (~> 0.2) coffee-rails (~> 3.2.1) haml (~> 3.1) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index aa2be18..5f05c66 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -16,11 +16,11 @@ # along with this program. If not, see . require 'yaml' +require 'authentication.rb' class ApplicationController < ActionController::Base helper :all protect_from_forgery - filter_parameter_logging :password include AuthenticationSystem diff --git a/app/views/layouts/_base.html.haml b/app/views/layouts/_base.html.haml index e407be6..37f193e 100644 --- a/app/views/layouts/_base.html.haml +++ b/app/views/layouts/_base.html.haml @@ -19,7 +19,7 @@ %script{:type => 'text/javascript'} == BASE_PATH = "#{App.base_path}"; - = javascript_include_merged :base + /= javascript_include_merged :base %body{'onload' => 'javascript: startup()'} #wrapper diff --git a/config/application.rb b/config/application.rb index a2afbe3..4243dba 100644 --- a/config/application.rb +++ b/config/application.rb @@ -1,6 +1,7 @@ require File.expand_path('../boot', __FILE__) require 'rails/all' +require 'lib/nasty_hacks.rb' require 'active_support/core_ext/numeric/bytes' if defined?(Bundler) diff --git a/config/environments/development.rb b/config/environments/development.rb index 5fd276c..f72417e 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -1,3 +1,5 @@ +require 'brI18n' + WikiUFC::Application.configure do # Settings specified here will take precedence over those in config/application.rb diff --git a/config/environments/production.rb b/config/environments/production.rb index 7eaaeb0..603224c 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -1,3 +1,5 @@ +require 'brI18n' + WikiUFC::Application.configure do # Settings specified here will take precedence over those in config/application.rb @@ -65,3 +67,4 @@ WikiUFC::Application.configure do # with SQLite, MySQL, and PostgreSQL) # config.active_record.auto_explain_threshold_in_seconds = 0.5 end + diff --git a/config/routes.rb b/config/routes.rb index 66c417e..6470069 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,58 +1,91 @@ +# Wiki UFC +# Copyright (C) 2007, Adriano, Alinson, Andre, Rafael e Bustamante +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + WikiUFC::Application.routes.draw do - # The priority is based upon order of creation: - # first created -> highest priority. - - # Sample of regular route: - # match 'products/:id' => 'catalog#view' - # Keep in mind you can assign values other than :controller and :action - - # Sample of named route: - # match 'products/:id/purchase' => 'catalog#purchase', :as => :purchase - # This route can be invoked with purchase_url(:id => product.id) - - # Sample resource route (maps HTTP verbs to controller actions automatically): - # resources :products - - # Sample resource route with options: - # resources :products do - # member do - # get 'short' - # post 'toggle' - # end - # - # collection do - # get 'sold' - # end - # end - - # Sample resource route with sub-resources: - # resources :products do - # resources :comments, :sales - # resource :seller - # end - - # Sample resource route with more complex sub-resources - # resources :products do - # resources :comments - # resources :sales do - # get 'recent', :on => :collection - # end - # end - - # Sample resource route within a namespace: - # namespace :admin do - # # Directs /admin/products/* to Admin::ProductsController - # # (app/controllers/admin/products_controller.rb) - # resources :products - # end - - # You can have the root of your site routed with "root" - # just remember to delete public/index.html. - # root :to => 'welcome#index' - - # See how all your routes lay out with "rake routes" - - # This is a legacy wild controller route that's not recommended for RESTful applications. - # Note: This route will make all actions in every controller accessible via GET requests. - # match ':controller(/:action(/:id))(.:format)' + + resources :users + + resources :courses do + member do + get :enroll + get :unenroll + end + + resources :events do + member do + post :undelete + end + end + + resources :news do + member do + post :undelete + end + end + + resources :wiki do + member do + get :move_down + post :undelete + get :diff + get :versions + get :move_up + end + end + + resources :attachments do + member do + post :undelete + get :download + end + end + end + + # Log + #match 'controllerlog' => '#index', :as => :with_options + + # Services + match 'services/preview' => 'wiki#preview', :as => :preview + + # Widgets + match 'widgets/calendar/:id/:year/:month' => 'events#mini_calendar' + + # Authentication + with_options :controller => 'users' do |user| + user.match 'login', :action => 'login' + user.match 'logout', :action => 'logout' + user.match 'signup', :action => 'signup' + user.match 'settings', :action => 'settings' + user.match 'recover_password', :action => 'recover_password' + user.match 'recover_password/:key', :action => 'recover_password' + end + + # Pagina pessoal + match '/dashboard' => 'users#dashboard', :as => :dashboard + match '/dashboard/:secret.:format' => 'users#dashboard', :as => :formatted_dashboard + + # Stylesheets + match 'stylesheets/cache/:action.:format' => 'stylesheets#index' + match 'stylesheets/cache/:action.:color.:format' => 'stylesheets#index' + + # Mudancas recentes global + match 'log' => 'log#index', :as => :log, :format => 'html' + match 'log.:format' => 'log#index', :as => :formatted_log + + # Front page + match '' => 'courses#index', :as => :index end + diff --git a/lib/authentication_system.rb b/lib/authentication.rb similarity index 100% rename from lib/authentication_system.rb rename to lib/authentication.rb