AutoCommit Mon Sep 14 12:03:04 CEST 2015
This commit is contained in:
@@ -11,7 +11,9 @@ class UsersController < ApplicationController
|
|||||||
def set_preferred_theme
|
def set_preferred_theme
|
||||||
@user=User.find(params[:id])
|
@user=User.find(params[:id])
|
||||||
authorize!(:set_preferred_theme, @user)
|
authorize!(:set_preferred_theme, @user)
|
||||||
redirect_to user_url
|
@user.preferredtheme=params[:theme]
|
||||||
|
@user.save
|
||||||
|
redirect_to root_url
|
||||||
end
|
end
|
||||||
def add_role
|
def add_role
|
||||||
authorize!(:add_role, User)
|
authorize!(:add_role, User)
|
||||||
|
|||||||
@@ -160,6 +160,7 @@ end
|
|||||||
can :showintern, Neuigkeit
|
can :showintern, Neuigkeit
|
||||||
can :showintern, Rubrik
|
can :showintern, Rubrik
|
||||||
can :seeintern, User
|
can :seeintern, User
|
||||||
|
can :set_preferred_theme, user
|
||||||
can :list, Neuigkeit
|
can :list, Neuigkeit
|
||||||
can :shownonpublic, Rubrik
|
can :shownonpublic, Rubrik
|
||||||
can :manage, Nlink
|
can :manage, Nlink
|
||||||
@@ -175,6 +176,7 @@ end
|
|||||||
can :index, User
|
can :index, User
|
||||||
can :edit, User
|
can :edit, User
|
||||||
can :manage, User
|
can :manage, User
|
||||||
|
can :set_preferred_theme, User
|
||||||
end
|
end
|
||||||
|
|
||||||
if user.has_role?("newsadmin") || user.has_role?( "fetadmin") || user.has_role?( "fetuser")
|
if user.has_role?("newsadmin") || user.has_role?( "fetadmin") || user.has_role?( "fetuser")
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ class Neuigkeit < ActiveRecord::Base
|
|||||||
translates :title,:text, :versioning=>{:gem=>:paper_trail, :options=>{:fallbacks_for_empty_translations => true}}
|
translates :title,:text, :versioning=>{:gem=>:paper_trail, :options=>{:fallbacks_for_empty_translations => true}}
|
||||||
globalize_accessors :locales => [:de, :en], :attributes =>[:text,:title]
|
globalize_accessors :locales => [:de, :en], :attributes =>[:text,:title]
|
||||||
mount_uploader :picture, PictureUploader
|
mount_uploader :picture, PictureUploader
|
||||||
|
include IsCommentable
|
||||||
|
|
||||||
default_scope order(:cache_order).includes(:calentries).includes(:title_pic)
|
default_scope order(:cache_order).includes(:calentries).includes(:title_pic)
|
||||||
scope :recent, -> { published.limit(10)}
|
scope :recent, -> { published.limit(10)}
|
||||||
|
|||||||
@@ -7,7 +7,9 @@
|
|||||||
<%= link_to "Adressliste", internlist_fetprofiles_path ,class: :linkbox %></li>
|
<%= link_to "Adressliste", internlist_fetprofiles_path ,class: :linkbox %></li>
|
||||||
<li> <%= link_to "Admin" , admin_home_index_path, class: :linkbox if current_user.has_role?(:fetadmin) %>
|
<li> <%= link_to "Admin" , admin_home_index_path, class: :linkbox if current_user.has_role?(:fetadmin) %>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
<li>
|
||||||
|
<%= link_to ff_icon("ffi1-setting")+"Neue Oberfläche" , set_preferred_theme_user_path(current_user, params: {theme: "blue2"}), class: :linkbox if can? :set_preferred_theme , current_user %>
|
||||||
|
</li></ul>
|
||||||
<ul class="unstyled linkbox-list">
|
<ul class="unstyled linkbox-list">
|
||||||
<li>
|
<li>
|
||||||
<% @themengruppen.each do |themengruppe| %>
|
<% @themengruppen.each do |themengruppe| %>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<div class="row-fluid">
|
<div class="row-fluid">
|
||||||
<div class="span6">
|
<div class="span6">
|
||||||
<div>
|
<div>
|
||||||
<ul class="linklist_block">
|
<ul class="linklist">
|
||||||
<li>
|
<li>
|
||||||
<%= link_to fa_icon("list")+"Adressliste", internlist_fetprofiles_path ,class: :linkbox %>
|
<%= link_to fa_icon("list")+"Adressliste", internlist_fetprofiles_path ,class: :linkbox %>
|
||||||
</li>
|
</li>
|
||||||
@@ -19,6 +19,10 @@
|
|||||||
<li>
|
<li>
|
||||||
<%= link_to ff_icon("ffi1-setting")+"Meetings" , meetingtyps_path, class: :linkbox if current_user.has_role?(:fetadmin) %>
|
<%= link_to ff_icon("ffi1-setting")+"Meetings" , meetingtyps_path, class: :linkbox if current_user.has_role?(:fetadmin) %>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<%= link_to ff_icon("ffi1-setting")+"Alte Oberfläche" , set_preferred_theme_user_path(current_user, params: {theme: "blue1"}), class: :linkbox if can? :set_preferred_theme, current_user %>
|
||||||
|
</li>
|
||||||
|
|
||||||
</ul><br>
|
</ul><br>
|
||||||
</div>
|
</div>
|
||||||
<div>Suche nach Protokollen
|
<div>Suche nach Protokollen
|
||||||
|
|||||||
@@ -41,8 +41,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="fb-like" data-href"<%= rubrik_neuigkeit_url(@rubrik,@neuigkeit,{themes: nil, locale: nil})%>" data-layout="standard" data-action="like" data-show-faces="true" data-share="true"></div>
|
<div class="fb-like" data-href"<%= rubrik_neuigkeit_url(@rubrik,@neuigkeit,{themes: nil, locale: nil})%>" data-layout="standard" data-action="like" data-show-faces="true" data-share="true"></div>
|
||||||
|
|
||||||
|
<%= render_comments_for(@neuigkeit) %>
|
||||||
|
|
||||||
<%= link_to fa_icon("link") + "Neue Verknüpfung" , "#", id: "findlink-open" if can? :find_link, @neuigkeit %>
|
<%# link_to fa_icon("link") + "Neue Verknüpfung" , "#", id: "findlink-open" if can? :find_link, @neuigkeit %>
|
||||||
|
|
||||||
<% cache(cache_array_key(@neuigkeit.nlinks, "NLinks")) do %>
|
<% cache(cache_array_key(@neuigkeit.nlinks, "NLinks")) do %>
|
||||||
<%= render partial: 'neuigkeiten/nlink_list_whole', :object=>@neuigkeit.nlinks %>
|
<%= render partial: 'neuigkeiten/nlink_list_whole', :object=>@neuigkeit.nlinks %>
|
||||||
|
|||||||
@@ -53,6 +53,7 @@ end
|
|||||||
post :all_update
|
post :all_update
|
||||||
end
|
end
|
||||||
member do
|
member do
|
||||||
|
get :set_preferred_theme
|
||||||
get :fb_set_default_publish_page
|
get :fb_set_default_publish_page
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
36
spec/features/admin_spec.rb
Normal file
36
spec/features/admin_spec.rb
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
|
||||||
|
require 'spec_helper'
|
||||||
|
Capybara.add_selector(:href) do
|
||||||
|
xpath {|href| XPath.descendant[XPath.attr(:href).contains(href)] }
|
||||||
|
end
|
||||||
|
|
||||||
|
feature 'Administration', :type=> :feature do
|
||||||
|
let!(:user) {FactoryGirl.create(:user)}
|
||||||
|
let!(:rubrik) {FactoryGirl.create(:rubrik)}
|
||||||
|
|
||||||
|
|
||||||
|
let!(:themengruppe){ FactoryGirl.create(:themengruppe) }
|
||||||
|
let!(:studium) {FactoryGirl.create(:studium,:visible=>true)}
|
||||||
|
before(:each) do
|
||||||
|
FactoryGirl.create(:neuigkeit, rubrik_id: rubrik.id, author_id: user.id)
|
||||||
|
FactoryGirl.create(:thema, id: t=YAML.load_file("#{::Rails.root.to_s}/config/start_topic.yml").to_i, themengruppe_id: themengruppe.id)
|
||||||
|
studium.id
|
||||||
|
end
|
||||||
|
def sign_in
|
||||||
|
visit '/'
|
||||||
|
user.add_role(:fetadmin)
|
||||||
|
|
||||||
|
find(:href, "sign_in").click
|
||||||
|
fill_in 'user_email', with: user.email
|
||||||
|
fill_in 'user_password', with:"password"
|
||||||
|
click_button 'Sign in'
|
||||||
|
end
|
||||||
|
|
||||||
|
scenario 'change preferred theme' do
|
||||||
|
sign_in
|
||||||
|
visit "/admin/users/#{user.id}/set_preferred_theme?theme=blue2"
|
||||||
|
expect(User.find(user.id).preferredtheme).to eq("blue2")
|
||||||
|
visit "/admin/users/#{user.id}/set_preferred_theme?theme=blue1"
|
||||||
|
expect(User.find(user.id).preferredtheme).to eq("blue1")
|
||||||
|
end
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user