From 0d6e11299a65e1d66e7af8a5c8f98a6621b3e227 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Tue, 3 Mar 2015 18:12:22 +0100 Subject: [PATCH] fix neuigkeiten --- app/controllers/galleries_controller.rb | 8 ++++++-- app/controllers/rubriken_controller.rb | 4 ++-- app/models/ability.rb | 5 ++++- app/models/neuigkeit.rb | 3 ++- app/views/galleries/show.html.erb | 2 ++ app/views/rubriken/index.html.erb | 2 +- 6 files changed, 17 insertions(+), 7 deletions(-) diff --git a/app/controllers/galleries_controller.rb b/app/controllers/galleries_controller.rb index fe79760..b32de83 100644 --- a/app/controllers/galleries_controller.rb +++ b/app/controllers/galleries_controller.rb @@ -63,9 +63,13 @@ class GalleriesController < ApplicationController @toolbar_elements << {:hicon=>'icon-pencil', :text => I18n.t('common.edit'), :path=>edit_gallery_path(@gallery)} if can? :edit, @gallery @toolbar_elements << {:hicon=>'icon-arrow-left', :text=>I18n.t('common.back'), :path=>galleries_path()} @toolbar_elements << {:hicon => 'icon-remove-circle', :text => I18n.t('common.delete'), :path => gallery_path(@gallery),:confirm=>'Sure?', :method=>:delete} if can? :delete, Gallery - + respond_to do |format| - format.html # show.html.erb + format.html { + if @fotos.nil? || @fotos.empty? + redirect_to new_gallery_foto_path(@gallery) + end + } format.json { render json: @gallery } end end diff --git a/app/controllers/rubriken_controller.rb b/app/controllers/rubriken_controller.rb index 2a75c97..6b58967 100755 --- a/app/controllers/rubriken_controller.rb +++ b/app/controllers/rubriken_controller.rb @@ -11,7 +11,7 @@ class RubrikenController < ApplicationController # end @rubriken= Rubrik.accessible_by(current_ability, :show) - @neuigkeiten = Neuigkeit.accessible_by(current_ability, :show).page(params[:page]).per(3) + @neuigkeiten = Neuigkeit.accessible_by(current_ability, :list).page(params[:page]).per(3) @calentries= (@rubriken.map {|r| r.calendar}).collect(&:calentries).flatten.select {|c| c.object !=nil} respond_to do |format| @@ -29,7 +29,7 @@ class RubrikenController < ApplicationController @moderatoren=User.with_role(:newsmoderator,@rubrik) @calentries= @rubrik.calendar.calentries.select {|c| c.object !=nil} - @neuigkeiten = @rubrik.neuigkeiten.accessible_by(current_ability, :show).page(params[:page]).per(3) + @neuigkeiten = @rubrik.neuigkeiten.accessible_by(current_ability, :list).page(params[:page]).per(3) @toolbar_elements << {:text=>I18n.t('neuigkeit.new.title'), :path=> new_rubrik_neuigkeit_path(@rubrik),:hicon=>'icon-plus-sign'} if can? :verwalten, @rubrik @toolbar_elements << {:text=>I18n.t('common.verwalten'), :path=>verwalten_rubrik_path(@rubrik),:icon=>:pencil} if can? :verwalten, @rubrik diff --git a/app/models/ability.rb b/app/models/ability.rb index 7cbc545..d3f9815 100755 --- a/app/models/ability.rb +++ b/app/models/ability.rb @@ -90,7 +90,9 @@ class Ability #----------------------------------------------------- # Rechteverwaltung fuer Neuigkeiten - can [:show,:index], Rubrik, :public=>true + can :index, Rubrik + can [:show], Rubrik, :public=>true + can [:list], Neuigkeit, Neuigkeit.public.published can :show, Neuigkeit, :rubrik=>{:public=>true} if loggedin @@ -101,6 +103,7 @@ class Ability can :showintern, Neuigkeit can :showintern, Rubrik can :seeintern, User + can :list, Neuigkeit can :shownonpublic, Rubrik can :manage, Nlink end diff --git a/app/models/neuigkeit.rb b/app/models/neuigkeit.rb index 19091b0..f153c74 100755 --- a/app/models/neuigkeit.rb +++ b/app/models/neuigkeit.rb @@ -28,7 +28,8 @@ class Neuigkeit < ActiveRecord::Base default_scope order(:datum).reverse_order scope :recent, -> { published.limit(10)} - scope :unpublished, -> {where("datum >= ? OR datum IS NULL", Date.today)} + scope :unpublished, -> {where("datum > ? OR datum IS NULL", Date.today)} + scope :published_scope, ->{where("datum <= ? OR datum IS NULL", Date.today)} scope :public, ->{includes(:rubrik).where("rubriken.public"=>true)} scope :intern, ->{includes(:rubrik).where("rubriken.public"=>false)} diff --git a/app/views/galleries/show.html.erb b/app/views/galleries/show.html.erb index fcd6dbc..7b50b96 100644 --- a/app/views/galleries/show.html.erb +++ b/app/views/galleries/show.html.erb @@ -4,8 +4,10 @@ <% if @openfotoid.nil? || @openfotoid==0 @firstfoto= @fotos_p.first + unless @firstfoto.nil? picture_url=URI(root_url) picture_url.path=@firstfoto.datei.url(:locale=>nil, :theme=>nil) +end set_meta_tags :og => { :image => picture_url.to_s, :title => @gallery.name.to_s, diff --git a/app/views/rubriken/index.html.erb b/app/views/rubriken/index.html.erb index 33c7a68..4093076 100755 --- a/app/views/rubriken/index.html.erb +++ b/app/views/rubriken/index.html.erb @@ -24,7 +24,7 @@