diff --git a/Gemfile b/Gemfile
index e923aac..486db40 100755
--- a/Gemfile
+++ b/Gemfile
@@ -54,6 +54,7 @@ gem "tinymce-rails" , '~>4.1.0'
#gem "globalize3" ,'~>3.0.4'
gem "globalize" ,'~>3.0.4'#,:git =>'git://github.com/globalize/globalize.git'
gem 'globalize-versioning'
+gem 'globalize-accessors'
# Version controll
gem "paper_trail" , '~>3.0.5'#, :git=>'git://github.com/airblade/paper_trail.git'
diff --git a/app/controllers/beispiele_controller.rb b/app/controllers/beispiele_controller.rb
index de2fd70..317885a 100755
--- a/app/controllers/beispiele_controller.rb
+++ b/app/controllers/beispiele_controller.rb
@@ -5,8 +5,11 @@ class BeispieleController < ApplicationController
include LikeVoteable
acts_as_flagable
def index
- @beispiele = Beispiel.all
-
+ unless params[:lva_id].nil?
+ @beispiele= Lva.find(params[:lva_id]).beispiele.accessible_by(current_ability, :show)
+ else
+ @beispiele = Beispiel.accessible_by(current_ability, :show)
+ end
respond_to do |format|
format.html # index.html.erb
format.json { render json: @beispiele }
@@ -115,6 +118,7 @@ class BeispieleController < ApplicationController
respond_to do |format|
if @beispiel.update_attributes(params[:beispiel])
format.html { redirect_to @backlink, notice: 'Beispiel was successfully updated.' }
+ format.js {render action: "show"}
format.json { head :no_content }
else
format.html { render action: "edit" }
diff --git a/app/controllers/home_controller.rb b/app/controllers/home_controller.rb
index 17fa2ca..630356e 100755
--- a/app/controllers/home_controller.rb
+++ b/app/controllers/home_controller.rb
@@ -94,7 +94,11 @@ class HomeController < ApplicationController
format.js
end
end
+ def language
+ redirect_to request.referer || root_path
+ end
def choose_contact_topics
+ authorize! :doadmin, User
t=YAML.load_file("#{::Rails.root.to_s}/config/contact_topic.yml")
unless params[:themen].nil?
t=([t].flatten+params[:themen]).uniq
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index 9bcb565..bf8855d 100755
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -39,8 +39,8 @@ m.save
def switch_locale_url(target_locale)
- current_url1({:locale=>target_locale}) .sub "/"+I18n.locale.to_s+"/", "/"+target_locale.to_s+"/"
-
+# current_url1({:locale=>target_locale}) .sub "/"+I18n.locale.to_s+"/", "/"+target_locale.to_s+"/"
+ language_path(locale: target_locale)
end
def ffi1_icon (name)
content_tag("i","", class: "ffi1-"+name )
diff --git a/app/models/neuigkeit.rb b/app/models/neuigkeit.rb
index 3d2004d..46412f9 100755
--- a/app/models/neuigkeit.rb
+++ b/app/models/neuigkeit.rb
@@ -27,6 +27,7 @@ class Neuigkeit < ActiveRecord::Base
validates :rubrik, :presence=>true
validates :author, :presence=>true
translates :title,:text, :versioning=>{:gem=>:paper_trail, :options=>{:fallbacks_for_empty_translations => true}}
+ globalize_accessors :locales => [:de, :en], :attributes =>[:text,:title]
mount_uploader :picture, PictureUploader
default_scope order(:cache_order).includes(:calentries).includes(:title_pic)
diff --git a/app/views/beispiele/_beispiel_list.html.erb b/app/views/beispiele/_beispiel_list.html.erb
index b739e54..79d5de8 100644
--- a/app/views/beispiele/_beispiel_list.html.erb
+++ b/app/views/beispiele/_beispiel_list.html.erb
@@ -1,19 +1,13 @@
-
+
<%=link_to beispiel.name, beispiel.beispieldatei.url%>
-
- Beschreibung:
-
- <%= beispiel.desc %>
-
+
+ <%=link_to beispiel.lva.name, lva_path(beispiel.lva.id) unless beispiel.lva.nil? %>
-
- LVA: <%=link_to beispiel.lva.name, lva_path(beispiel.lva.id)%>
-
<%= link_to 'Show', beispiel %>
<%= link_to 'Edit', edit_beispiel_path(beispiel) %>
- <%= link_to 'Destroy', beispiel, method: :delete, data: { confirm: 'Are you sure?' } %>
+
diff --git a/app/views/beispiele/show.js.erb b/app/views/beispiele/show.js.erb
index c384d9a..8b29647 100644
--- a/app/views/beispiele/show.js.erb
+++ b/app/views/beispiele/show.js.erb
@@ -1 +1 @@
-$("<%= '#' + @beispiel.divid %>").replaceWith("<%= escape_javascript render @beispiel %>")
\ No newline at end of file
+$("<%= '#' + @beispiel.divid %>").replaceWith("<%= escape_javascript render @beispiel %>");
diff --git a/app/views/neuigkeiten/_form.html.erb b/app/views/neuigkeiten/_form.html.erb
index 6d8f93d..85977f5 100755
--- a/app/views/neuigkeiten/_form.html.erb
+++ b/app/views/neuigkeiten/_form.html.erb
@@ -12,11 +12,16 @@
<%= f.input :flag_important, :placeholder=> "Titel" %>
-
+
+
+
<%= f.input :text, :as=> :tinymce_text %>
-
-
+
+ <%= @neuigkeit.text_de if I18n.locale == :en %>
+
+
+
<% f.input :datum, :as=> :datepicker %>
diff --git a/app/views/themes/blue2/beispiele/_beispiel.html.erb b/app/views/themes/blue2/beispiele/_beispiel.html.erb
index 5a7e1b7..8da8cf0 100644
--- a/app/views/themes/blue2/beispiele/_beispiel.html.erb
+++ b/app/views/themes/blue2/beispiele/_beispiel.html.erb
@@ -14,7 +14,7 @@
<%= flag_link(beispiel, "badquality")%>
<%= flag_link(beispiel, "delete")%>
<%= like_dislike_for(beispiel) %>
- <%= link_to ff_icon("icon-pencil")+"edit", edit_beispiel_path(beispiel) if can? :edit, beispiel%>
+ <%= link_to ff_icon("icon-pencil")+"edit", edit_beispiel_path(beispiel), remote: true if can? :edit, beispiel%>
<%= link_to fa_icon("trash")+"delete", beispiel_path(beispiel), :method=>:delete, :data=>{:confirm=>I18n.t('beispiel.sure')} if can? :delete, beispiel %>
<% link_to "Refresh", beispiel_path(beispiel,show_comments: true), remote: true %>
diff --git a/app/views/themes/blue2/beispiele/_beispiel_form.html.erb b/app/views/themes/blue2/beispiele/_beispiel_form.html.erb
new file mode 100644
index 0000000..16977ed
--- /dev/null
+++ b/app/views/themes/blue2/beispiele/_beispiel_form.html.erb
@@ -0,0 +1,37 @@
+
+
+<%= semantic_form_for @beispiel, :html => { :multipart => true }, :remote=>true do |f| %>
+
+
+ <%= f.input :name, label: false %> <%=f.input :datum , :as => :string, :label=> false %>
+ <%= f.input :desc, label: false %>
+
+<%link_to ffi1_icon("note20")+" " + beispiel_form.name + " " + I18n.l(beispiel_form.datum), beispiel_form.beispieldatei.url, title: beispiel_form.desc %>
+
+
+ <%= (beispiel_form.beispieldatei.size/1024.0).round(2).to_s %>KiB
+
+
+ <%= beispiel_form.lecturer.try(:name).to_s %>
+
+
+ <%= flag_link(beispiel_form, "goodquality")%>
+ <%= flag_link(beispiel_form, "badquality")%>
+ <%= flag_link(beispiel_form, "delete")%>
+ <% like_dislike_for(beispiel_form) %>
+ <%= link_to ff_icon("icon-pencil")+"show", beispiel_path(beispiel_form), remote: true if can? :edit, beispiel_form%>
+<%= f.action :submit, :as => :input %>
+
+
+
+
+
+ <% unless beispiel_form.desc.nil? || beispiel_form.desc.empty? %>
+
+
+ <%= beispiel_form.desc %>
+
+
+ <% end %>
+ <% end %>
+
diff --git a/app/views/themes/blue2/beispiele/edit.js.erb b/app/views/themes/blue2/beispiele/edit.js.erb
new file mode 100644
index 0000000..1d3c5c5
--- /dev/null
+++ b/app/views/themes/blue2/beispiele/edit.js.erb
@@ -0,0 +1 @@
+$("<%= '#' + @beispiel.divid %>").replaceWith("<%= escape_javascript render(partial: "beispiele/beispiel_form", object: @beispiel, locals: {:beispiel=> @beispiel}) %>")
diff --git a/app/views/themes/blue2/layouts/application.html.erb b/app/views/themes/blue2/layouts/application.html.erb
new file mode 100755
index 0000000..533cfef
--- /dev/null
+++ b/app/views/themes/blue2/layouts/application.html.erb
@@ -0,0 +1,65 @@
+
+
+
+
+
">
+
+
+
+
+ <%= stylesheet_link_tag "themes/"+theme_name+"/application", :media => "all" unless theme_name.empty? %>
+ <%= stylesheet_link_tag "application", :media=>"all" if theme_name.empty? %>
+ <%= javascript_include_tag "application" %>
+ <%= csrf_meta_tags %>
+ <% if content_for?(:header) %>
+ <%= yield :header %>
+ <% else %>
+
Fetsite
+ <% end %>
+
+
+
+
+
+
+
diff --git a/app/views/themes/blue2/layouts/menu.html.erb b/app/views/themes/blue2/layouts/menu.html.erb
new file mode 100644
index 0000000..5f3640b
--- /dev/null
+++ b/app/views/themes/blue2/layouts/menu.html.erb
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+ - <%= link_to I18n.t(:home,:scope=>'home' ), home_index_path %>
+
+ - <%= link_to I18n.t(:news,:scope=>'home' ),rubriken_path %>
+
+ - <%= link_to I18n.t(:info,:scope=>'home' ),themengruppen_path %>
+ - <%= link_to I18n.t('mitarbeiter',:scope=>'home' ),fetprofiles_path %>
+<% if can? :index, Gallery %>
+ - <%= link_to I18n.t('fotos',:scope=>'home' ),galleries_path %>
+<% end %>
+ - <%= link_to I18n.t(:studien,:scope=>'home' ), studien_path %>
+ - <%= link_to I18n.t("home.search"), search_home_index_path %>
+- <%= link_to I18n.t("home.kontakt"), kontakt_home_index_path %>
+ <% if can?(:seeintern, User) %>
+ -
+ <%= link_to 'Intern' , intern_home_index_path %>
+
<% end %>
+
+
+
+
+
+
+
+
+
+
+
diff --git a/config/routes.rb b/config/routes.rb
index 892b23f..c12894e 100755
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -4,7 +4,7 @@
devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" }
resources :home, :only=>[:index] do
end
-
+ get ':locale', constraints: {locale: /en|de/}, action: :language,controller: :home, as: "language"
scope '(:locale)/admin' do
resources :users, :only=>[] do
collection do
@@ -31,12 +31,13 @@
end
devise_for :users , :controllers=>{:omniauth_callbacks=> "users/omniauth_callbacks"}
-
+
scope '(:locale)', constraints: {:locale=>/en|de/i} do
+ get 't/:theme/:url', to: redirect('/%{url}')
scope '(t/:theme)' do
get "" , controller: :home, action: :index
get "intern" , controller: :home, action: :intern
-
+ get "beispielsammlung", to: redirect('/studien')
scope '(:ansicht)' do
resources :studien, :only=>[:new,:edit,:update,:destroy,:show] do
member do
@@ -101,13 +102,18 @@
get 'verwalten'
end
end
- resources :fetprofiles do
+ resources :fetprofiles, as: :fetprofiles_bak do
collection do
get 'verwalten'
get 'internlist'
end
end
-
+ resources :members , controller: :fetprofiles , as: :fetprofiles do
+ collection do
+ get 'verwalten'
+ get 'internlist'
+ end
+ end
resources :fragen, :only =>[:new, :edit, :update, :destroy, :create]
diff --git a/db/migrate/20150710082704_add_sid_to_themen.rb b/db/migrate/20150710082704_add_sid_to_themen.rb
new file mode 100644
index 0000000..66e0abf
--- /dev/null
+++ b/db/migrate/20150710082704_add_sid_to_themen.rb
@@ -0,0 +1,6 @@
+class AddSidToThemen < ActiveRecord::Migration
+ def change
+ add_column :themen,:sid, :string
+ add_index :themen,:sid, unique: true
+ end
+end