From 088b3562cc910b5214c074b3480c7eaca62cb9af Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Mon, 23 Feb 2015 09:21:14 +0100 Subject: [PATCH] admin fixes --- app/controllers/home_controller.rb | 12 ++++++++++-- app/controllers/users_controller.rb | 19 ++++++++++--------- app/views/home/admin.html.erb | 26 ++++++++++++++++++-------- config/environments/development.rb | 2 ++ config/environments/production.rb | 3 +++ 5 files changed, 43 insertions(+), 19 deletions(-) diff --git a/app/controllers/home_controller.rb b/app/controllers/home_controller.rb index dedb4e7..3d49f08 100755 --- a/app/controllers/home_controller.rb +++ b/app/controllers/home_controller.rb @@ -24,7 +24,8 @@ class HomeController < ApplicationController end def admin authorize! :doadmin, User - + t=YAML.load_file("#{::Rails.root.to_s}/config/contact_topic.yml") + @kontaktthemen = Thema.where(:id=>t) end def log @@ -81,7 +82,14 @@ class HomeController < ApplicationController end end def choose_contact_topics - File.open("config/contact_topic.yml",'w'){|f| f.write(params[:themen].to_yaml)} + t=YAML.load_file("#{::Rails.root.to_s}/config/contact_topic.yml") + unless params[:themen].nil? + t=([t].flatten+params[:themen]).uniq + end + unless params[:rmthema].nil? + t=t-[params[:rmthema]] + end + File.open("config/contact_topic.yml",'w'){|f| f.write(t.to_yaml)} redirect_to admin_home_index_path end diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 8f55d85..1e73890 100755 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -13,16 +13,17 @@ class UsersController < ApplicationController redirect_to users_url end def fb_set_default_publish_page - if params["page"].nil? || !(current_user.provider=="facebook") - redirect_to intern_home_index_path - else - @fbu=FbGraph::User.new(current_user.uid.to_s).fetch(:access_token=>session["fbuser_access_token"]) - File.open("config/page.yml",'w'){|f| f.write(@fbu.accounts(:access_token=>session["fbuser_access_token"]).select { |p| p.name == params["page"] }.first.to_yaml)} - logger.info @fbu.to_s - logger.info "FbGraph Access" + session["fbuser_access_token"] - redirect_to admin_home_index_path + if Fetsite::Application.config.facebookconfig_enabled + if params["page"].nil? || !(current_user.provider=="facebook") + redirect_to intern_home_index_path + else + @fbu=FbGraph::User.new(current_user.uid.to_s).fetch(:access_token=>session["fbuser_access_token"]) + File.open("config/page.yml",'w'){|f| f.write(@fbu.accounts(:access_token=>session["fbuser_access_token"]).select { |p| p.name == params["page"] }.first.to_yaml)} + logger.info @fbu.to_s + logger.info "FbGraph Access" + session["fbuser_access_token"] + redirect_to admin_home_index_path + end end - end def all_update diff --git a/app/views/home/admin.html.erb b/app/views/home/admin.html.erb index 1c65a34..351dd50 100644 --- a/app/views/home/admin.html.erb +++ b/app/views/home/admin.html.erb @@ -1,20 +1,30 @@ -

<%= link_to "Grant extra FB privileges", user_omniauth_authorize_path(:facebook,:params=>{scope:"manage_pages,publish_actions,email"}) %> -

+

Administration

<%= link_to "user", users_path %>

+<% if Fetsite::Application.config.facebookconfig_enabled %> +

Facebook Konfiguration

+

<%= link_to "Grant extra FB privileges", user_omniauth_authorize_path(:facebook,:params=>{scope:"manage_pages,publish_actions,email"}), :confirm=>"Wirklich?" %> +

<%= @fbu.to_yaml.to_s %> <%= semantic_form_for :set_page, url: fb_set_default_publish_page_user_path(current_user), html:{method: :get} do |f| %> <%= f.input :page , :input_html => { :name => 'page' }%> -<% end %> - -<%= semantic_form_for :set_thema, url: choose_contact_topics_home_index_path, html:{method: :get} do |f| %> -<%= f.input :themen, :input_html=> {:name=>'themen'}, :as=>:select ,:multiple=>true,:collection =>Thema.all%> - - <%= f.actions do %> <%= f.action :submit, :as => :button, :label=> I18n.t("common.save" ) %> <% end %> <% end %> + +

Kontaktseite, Themen:

+<% @kontaktthemen.each do |tt| %> +<%= render tt %> +<%= link_to "rm" ,choose_contact_topics_home_index_path(:params=>{:rmthema=>tt.id}) %> +<% end %> +<%= semantic_form_for :set_thema, url: choose_contact_topics_home_index_path, html:{method: :get} do |f| %> +<%= f.input :themen, :input_html=> {:name=>'themen'}, :as=>:select ,:multiple=>true,:collection =>Thema.all,:value=>10 %> + +<%= f.actions do %> +<%= f.action :submit, :as => :button, :label=> "Hinzufuegen" %> +<% end %> +<% end %>

diff --git a/config/environments/development.rb b/config/environments/development.rb index 6ea22ef..63ff982 100755 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -35,4 +35,6 @@ Fetsite::Application.configure do # Expands the lines which load the assets config.assets.debug = false + + config.facebookconfig_enabled=true end diff --git a/config/environments/production.rb b/config/environments/production.rb index 8f85baf..ec09ad2 100755 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -65,4 +65,7 @@ Fetsite::Application.configure do # Log the query plan for queries taking more than this (works # with SQLite, MySQL, and PostgreSQL) # config.active_record.auto_explain_threshold_in_seconds = 0.5 + + config.facebookconfig_enabled=true + end