55 lines
1.2 KiB
Ruby
55 lines
1.2 KiB
Ruby
|
class OrbitMemberController < ApplicationController
|
||
|
include OrbitCategory::Categorizing
|
||
|
include OrbitCoreLib::AppBackendUtility
|
||
|
include OrbitCoreLib::PermissionUtility
|
||
|
include OrbitTag::Tagging
|
||
|
include AdminHelper
|
||
|
include ApplicationHelper
|
||
|
|
||
|
helper :default_index
|
||
|
|
||
|
layout "member"
|
||
|
|
||
|
def setup_vars
|
||
|
@app_title ||= controller_path.split('/')[1].singularize
|
||
|
@module_app ||= ModuleApp.first(conditions: {:key => @app_title} )
|
||
|
raise ModuleAppError, 'Can not find ModuleApp' if @module_app.nil?
|
||
|
end
|
||
|
|
||
|
def get_statuses
|
||
|
status = []
|
||
|
status << 'is_top'
|
||
|
status << 'is_hot'
|
||
|
status << 'is_hidden' unless is_guest?
|
||
|
if @module_app.is_approvable && is_manager?
|
||
|
status << 'is_pending'
|
||
|
status << 'is_checked'
|
||
|
status << 'is_rejected'
|
||
|
end
|
||
|
status
|
||
|
end
|
||
|
|
||
|
private
|
||
|
|
||
|
def force_order_for_visitor
|
||
|
check_backend_openness
|
||
|
setup_vars
|
||
|
set_current_user
|
||
|
end
|
||
|
|
||
|
|
||
|
def force_order_for_user
|
||
|
setup_vars
|
||
|
set_current_user
|
||
|
authenticate_user!
|
||
|
check_user_can_use
|
||
|
end
|
||
|
|
||
|
def check_user_can_use
|
||
|
unless check_permission
|
||
|
#redirect_to polymorphic_path(['panel',@app_title,'back_end','public'])
|
||
|
redirect_to root_url
|
||
|
end
|
||
|
end
|
||
|
end
|