66 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Ruby
		
	
	
	
		
		
			
		
	
	
			66 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Ruby
		
	
	
	
|  | class Admin::NewInterfaceModuleAppsController < ApplicationController | ||
|  |   before_filter :authenticate_user! | ||
|  |   before_filter :is_admin? | ||
|  |   include AdminHelper | ||
|  | 
 | ||
|  |   layout "new_admin" | ||
|  |    | ||
|  |   def setting | ||
|  |     @sys_users = User.all | ||
|  |     @module_app = ModuleApp.find(params[:module_app_id]) | ||
|  |     @options_from_collection_for_select_bulletin_categorys = [@module_app].collect{|ma| [ma.title,ma.id] } | ||
|  |     # if params.has_key? :category | ||
|  |     #   @bulletin_category = BulletinCategory.find params[:category][:id] | ||
|  |     # else | ||
|  |     #   @bulletin_category =  @bulletin_categorys.first | ||
|  |     # end | ||
|  |     @users_array = @module_app.managing_users rescue [] | ||
|  | 
 | ||
|  |     respond_to do |format| | ||
|  |       format.html | ||
|  |       format.js | ||
|  |     end | ||
|  |   end | ||
|  |    | ||
|  |   def update_setting | ||
|  |     module_app = update_setting_by_params | ||
|  |     if module_app.save! | ||
|  |       flash[:notice] = "Update Done" | ||
|  |     else | ||
|  |       flash[:notice] = "Update Failed" | ||
|  |     end | ||
|  |   end | ||
|  |    | ||
|  |   def user_list | ||
|  |     @module_app = ModuleApp.find params[:module_app][:id] | ||
|  |   end | ||
|  | 
 | ||
|  |   protected | ||
|  |   def update_setting_by_params | ||
|  |     ma = ModuleApp.find params[:module_app][:id] | ||
|  |     user_sat = User.find params[:users].keys | ||
|  |     users_to_new = user_sat - ma.managing_users | ||
|  |     users_to_remove = ma.managing_users - user_sat | ||
|  | 
 | ||
|  |     users_to_new.each do |new_user| | ||
|  |       ma.assign_manager(new_user,current_user) | ||
|  |     end | ||
|  | 
 | ||
|  |     users_to_remove.each do |remove_user| | ||
|  |       ma.remove_manager(remove_user) | ||
|  |     end | ||
|  |     ma | ||
|  |   end | ||
|  |    | ||
|  |   def get_categorys(id = nil) | ||
|  |     @bulletin_categorys = [] | ||
|  |     if(is_manager? || is_admin?) | ||
|  |       @bulletin_categorys = (id ? BulletinCategory.find(id).to_a : BulletinCategory.excludes('disabled' => true)) | ||
|  |     elsif is_sub_manager? | ||
|  |       @bulletin_categorys = BulletinCategory.authed_for_user(current_user,'submit_new') | ||
|  |     end | ||
|  |   end | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 | ||
|  | end |