diff --git a/Gemfile b/Gemfile index 2cbf68f..3fb298c 100755 --- a/Gemfile +++ b/Gemfile @@ -70,3 +70,4 @@ gem 'haml' #gem 'gollum' gem 'awesome_nested_set' gem 'annotate', ">=2.5.0" +gem 'carrierwave' \ No newline at end of file diff --git a/Gemfile.lock b/Gemfile.lock index 7381438..9508763 100755 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -39,6 +39,10 @@ GEM sass (~> 3.2) builder (3.0.4) cancan (1.6.9) + carrierwave (0.9.0) + activemodel (>= 3.2.0) + activesupport (>= 3.2.0) + json (>= 1.7) cocaine (0.4.2) coffee-rails (3.2.2) coffee-script (>= 2.2.0) @@ -157,6 +161,7 @@ DEPENDENCIES awesome_nested_set bootstrap-sass (~> 2.2.0) cancan + carrierwave coffee-rails (~> 3.2.1) devise (~> 2.2.3) execjs (~> 1.4.0) diff --git a/app/controllers/lvas_controller.rb b/app/controllers/lvas_controller.rb index 81e60bd..974b089 100755 --- a/app/controllers/lvas_controller.rb +++ b/app/controllers/lvas_controller.rb @@ -9,7 +9,7 @@ class LvasController < ApplicationController # GET /lvas/1 def show - @lva = Lva.find(params[:id]) + @lva = Lva.find_by_id(params[:id]) @toolbar_elements<<{:icon=>:pencil,:text =>I18n.t('common.edit'),:path => edit_lva_path(@lva)} end diff --git a/app/controllers/moduls_controller.rb b/app/controllers/moduls_controller.rb index 8eb773a..bace79f 100755 --- a/app/controllers/moduls_controller.rb +++ b/app/controllers/moduls_controller.rb @@ -3,14 +3,15 @@ class ModulsController < ApplicationController # GET /moduls.json def index @moduls = Modul.all - if !params[:studium_id].nil? - @studium=Studium.find(params[:studium_id]) - end - respond_to do |format| - format.html # index.html.erb - format.json { render json: @moduls } + if @moduls + if !params[:studium_id].nil? + @studium=Studium.find_by_id(params[:studium_id]) + end + respond_to do |format| + format.html # index.html.erb + format.json { render json: @moduls } + end end - end # GET /moduls/1 diff --git a/app/models/beispiel.rb b/app/models/beispiel.rb index 13f0764..5a8700f 100755 --- a/app/models/beispiel.rb +++ b/app/models/beispiel.rb @@ -16,8 +16,7 @@ class Beispiel < ActiveRecord::Base has_paper_trail - attr_accessible :desc, :name, :file, :lva_id - has_attached_file :file + attr_accessible :desc, :name, :lva_id, :beispieldatei, :beispieldatei_cache belongs_to :lva - translates :desc, :fallbacks_for_empty_translations => true + mount_uploader :beispieldatei, BeispieldateiUploader end diff --git a/app/models/lva.rb b/app/models/lva.rb index 59dd2b9..279af18 100755 --- a/app/models/lva.rb +++ b/app/models/lva.rb @@ -36,19 +36,19 @@ private ## # Lade Daten aus TISS und füge diese in die Datenbank ein. def load_tissdata - url= "https://tiss.tuwien.ac.at/api/course/"+ self.lvanr.to_s+"-2012W" - begin - @hash=Hash.from_xml(open(url).read)["tuvienna"] - @person=[] - if @hash["course"]["lecturers"]["oid"].is_a? String - @person = @hash["course"]["lecturers"]["oid"] - else - @hash["course"]["lecturers"]["oid"].each do |pid| - @person << Hash.from_xml(open("https://tiss.tuwien.ac.at/adressbuch/adressbuch/person_via_oid/" + pid.to_s + ".xml").read)["tuvienna"]["person"] - end - end - rescue OpenURI::HTTPError => e - end + url= "https://tiss.tuwien.ac.at/api/course/"+ self.lvanr.to_s+"-2012W" + begin + @hash=Hash.from_xml(open(url).read)["tuvienna"] + @person=[] + if @hash["course"]["lecturers"]["oid"].is_a? String + @person = @hash["course"]["lecturers"]["oid"] + else + @hash["course"]["lecturers"]["oid"].each do |pid| + @person << Hash.from_xml(open("https://tiss.tuwien.ac.at/adressbuch/adressbuch/person_via_oid/" + pid.to_s + ".xml").read)["tuvienna"]["person"] + end + end + rescue OpenURI::HTTPError => e + end end diff --git a/app/models/modul.rb b/app/models/modul.rb index b03a060..f6939d4 100755 --- a/app/models/modul.rb +++ b/app/models/modul.rb @@ -1,4 +1,4 @@ -# -*- coding: undecided -*- +# -*- coding: utf-8 -*- # == Schema Information # # Table name: moduls diff --git a/app/views/beispiele/_form.html.erb b/app/views/beispiele/_form.html.erb index 0674ed7..dca1eb9 100755 --- a/app/views/beispiele/_form.html.erb +++ b/app/views/beispiele/_form.html.erb @@ -2,7 +2,8 @@ <%= f.inputs do %> <%= f.input :name %> <%= f.input :desc %> - <%= f.input :file , :as=>:file %> + <%= f.file_field :beispieldatei %> + <%= f.hidden_field :beispieldatei_cache %> <%= f.input :lva, :as=>:radio, :collection => Lva.all%> <% end %> diff --git a/app/views/beispiele/show.html.erb b/app/views/beispiele/show.html.erb index 5c43ba5..1115fb3 100755 --- a/app/views/beispiele/show.html.erb +++ b/app/views/beispiele/show.html.erb @@ -8,7 +8,7 @@

Desc: <%= @beispiel.desc %> - <%= @beispiel.file.url %> + <%= @beispiel.beispieldatei.url %>

diff --git a/app/views/lvas/show.html.erb b/app/views/lvas/show.html.erb index 66ebf33..4f90f1c 100755 --- a/app/views/lvas/show.html.erb +++ b/app/views/lvas/show.html.erb @@ -18,5 +18,11 @@

<%= @lva.desc %>

+ <%= toolbar_html(@toolbar_elements) %> diff --git a/app/views/neuigkeiten/new.html.erb b/app/views/neuigkeiten/new.html.erb index 206471c..597e29f 100755 --- a/app/views/neuigkeiten/new.html.erb +++ b/app/views/neuigkeiten/new.html.erb @@ -1,4 +1,4 @@ -

New neuigkeit

+

<%=I18n.t("neuigkeit.new.title") %>

<%= render 'form' %> diff --git a/config/locales/de.yml b/config/locales/de.yml index ae777b7..97cc3af 100755 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -27,7 +27,9 @@ de: show: title: "Auflistung aller Modulgruppen" link: "Modulgruppen auflisten" - + neuigkeit: + new: + title: "Neue Neuigkeit" home: mtitle: "Menu" willkommen: "Willkommen bei der Fachschaft Elektrotechnik" diff --git a/config/routes.rb b/config/routes.rb index 36b5510..4e4ed7d 100755 --- a/config/routes.rb +++ b/config/routes.rb @@ -2,7 +2,7 @@ Fetsite::Application.routes.draw do - resources :beispiele + devise_for :users resources :home, :only=>[:index] #get 'home',:controller=>home,:action=>:index,:as=>"home_index" @@ -42,7 +42,7 @@ scope '(:locale)' do get 'rubriken/:id/verwalten',:controller=>:rubriken,:action=>:verwalten, :as=>'verwalten_rubrik' resources :home, :only=>[:index] get 'home/dev', :controller=>:home, :action=>:dev, :as=>'home_dev' - + resources :beispiele end diff --git a/config/routes.rb.save b/config/routes.rb.save index 175578c..103b937 100755 --- a/config/routes.rb.save +++ b/config/routes.rb.save @@ -2,7 +2,7 @@ Fetsite::Application.routes.draw do - resources :beispiele + devise_for :users resources :home, :only=>[:index] #get 'home',:controller=>home,:action=>:index,:as=>"home_index" @@ -39,6 +39,7 @@ scope '(:locale)' do put 'rubriken/(:id)/addmoderator',:controller=>:rubriken,:action=>:addmoderator get 'rubriken/:id/verwalten',:controller=>:rubriken,:action=>:verwalten, :as=>'verwalten_rubrik' resources :home + resources :beispiele end diff --git a/db/migrate/20130214233723_create_beispiele.rb b/db/migrate/20130214233723_create_beispiele.rb index 55e0625..6931410 100755 --- a/db/migrate/20130214233723_create_beispiele.rb +++ b/db/migrate/20130214233723_create_beispiele.rb @@ -5,16 +5,12 @@ class CreateBeispiele < ActiveRecord::Migration t.text :desc t.integer :lva_id t.timestamps + t.string :beispieldatei end - add_attachment :beispiele, :file - Beispiel.create_translation_table!({ - :desc => :text, - }) - add_column :beispiel_translations, :beispiele_id, :integer - remove_column :beispiel_translations, :beispiel_id + end def down - Beispiel.drop_translation_table! #:migrate_data => true + # Beispiel.drop_translation_table! #:migrate_data => true drop_table :beispiele end diff --git a/db/schema.rb b/db/schema.rb index c85213d..e41f87b 100755 --- a/db/schema.rb +++ b/db/schema.rb @@ -27,12 +27,9 @@ ActiveRecord::Schema.define(:version => 20130214233723) do t.string "name" t.text "desc" t.integer "lva_id" - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false - t.string "file_file_name" - t.string "file_content_type" - t.integer "file_file_size" - t.datetime "file_updated_at" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + t.string "beispieldatei" end create_table "lva_translations", :force => true do |t|