60 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
| class Admin::TeamsController < Admin::ApplicationController
 | |
|   def index
 | |
|     @teams = UserTeam.order('name ASC')
 | |
|     @teams = @teams.search(params[:name]) if params[:name].present?
 | |
|     @teams = @teams.page(params[:page]).per(20)
 | |
|   end
 | |
| 
 | |
|   def show
 | |
|     user_team
 | |
|   end
 | |
| 
 | |
|   def new
 | |
|     @team = UserTeam.new
 | |
|   end
 | |
| 
 | |
|   def edit
 | |
|     user_team
 | |
|   end
 | |
| 
 | |
|   def create
 | |
|     @team = UserTeam.new(params[:user_team])
 | |
|     @team.path = @team.name.dup.parameterize if @team.name
 | |
|     @team.owner = current_user
 | |
| 
 | |
|     if @team.save
 | |
|       redirect_to admin_team_path(@team), notice: 'Team of users was successfully created.'
 | |
|     else
 | |
|       render action: "new"
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def update
 | |
|     user_team_params = params[:user_team].dup
 | |
|     owner_id = user_team_params.delete(:owner_id)
 | |
| 
 | |
|     if owner_id
 | |
|       user_team.owner = User.find(owner_id)
 | |
|     end
 | |
| 
 | |
|     if user_team.update_attributes(user_team_params)
 | |
|       redirect_to admin_team_path(user_team), notice: 'Team of users was successfully updated.'
 | |
|     else
 | |
|       render action: "edit"
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def destroy
 | |
|     user_team.destroy
 | |
| 
 | |
|     redirect_to admin_teams_path, notice: 'Team of users was successfully deleted.'
 | |
|   end
 | |
| 
 | |
|   protected
 | |
| 
 | |
|   def user_team
 | |
|     @team ||= UserTeam.find_by_path(params[:id])
 | |
|   end
 | |
| 
 | |
| end
 |