diff --git a/app/controllers/home_controller.rb b/app/controllers/home_controller.rb index 28fd237..ecca38e 100755 --- a/app/controllers/home_controller.rb +++ b/app/controllers/home_controller.rb @@ -21,7 +21,7 @@ class HomeController < ApplicationController end def infoscreen - authorize! :doadmin, User + authorize! :infoscreen, User @neuigkeiten = Neuigkeit.accessible_by(current_ability, :show).where(flag_infoscreen: true) render layout: false end diff --git a/app/models/ability.rb b/app/models/ability.rb index 99ba5bb..6af31a3 100755 --- a/app/models/ability.rb +++ b/app/models/ability.rb @@ -1,7 +1,10 @@ # -*- coding: utf-8 -*- +require 'ipaddr' class Ability include CanCan::Ability def initialize(user,request=nil,key=nil) + tunet=IPAddr.new("128.131.95.0/24") +local=IPAddr.new("127.0.0.1") loggedin=!(user.nil?) unless key.nil? k=Key.find_by_uuid(key) @@ -10,6 +13,9 @@ class Ability end end user ||= User.new # guest user (not logged in) + if (user.has_role?("fetuser") || user.has_role?("fetadmin") || tunet.include?(IPAddr.new(request.remote_ip)) || local.include?(IPAddr.new(request.remote_ip))) + can :infoscreen, User + end if( user.has_role?("fetuser") || user.has_role?("fetadmin")) can [:show,:answer, :create,:new, :create_from_template, :flag], Survey::Question diff --git a/app/views/home/infoscreen.html.erb b/app/views/home/infoscreen.html.erb index 7760d34..57f17e9 100644 --- a/app/views/home/infoscreen.html.erb +++ b/app/views/home/infoscreen.html.erb @@ -18,7 +18,8 @@
<%= link_to image_tag(n.picture_robust.big_thumb),n.picture_robust.try(:url) %>
+
+
<%= link_to image_tag(n.picture_robust.big_thumb),n.picture_robust.try(:url) %>