| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | class Admin::RolesController < OrbitMemberController | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |    | 
					
						
							|  |  |  |   before_filter :authenticate_user! | 
					
						
							|  |  |  |   before_filter :is_admin? | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |   before_filter :set_attribute, :only => [:index, :show, :new, :edit, :role_field, :sub_role, :add_sub_role, :edit_sub_role, :sub_role_field] | 
					
						
							| 
									
										
										
										
											2012-11-22 10:20:11 +00:00
										 |  |  |   helper Admin::AttributeValuesViewHelper | 
					
						
							| 
									
										
										
										
											2012-11-26 02:08:06 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |   def index | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  |     @attributes = Role.all.asc("_id").entries | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |     render :template => 'admin/attributes/index' | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def show | 
					
						
							|  |  |  |      | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def role_field | 
					
						
							|  |  |  |    | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @field_name = 'role' | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @attribute = Role.find(params[:role_id]) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def sub_role | 
					
						
							|  |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @attribute = Role.find(params[:role_id]) | 
					
						
							|  |  |  | 	  @attribute_fields_upper_object = @attribute.sub_roles | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def add_sub_role | 
					
						
							|  |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @attribute = Role.find(params[:role_id]) | 
					
						
							|  |  |  | 	  # @sub_attribute = Role.find(params[:role_id]) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @sub_attribute = SubRole.new | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |     @sub_attribute.role_id = params[:role_id] | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  |     render layout: false | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def edit_sub_role | 
					
						
							|  |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @sub_attribute = SubRole.find(params[:role_id]) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @attribute = Role.find(@sub_attribute.role_id) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							|  |  |  |     @sub_attribute.role_id = @sub_attribute.role_id | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  |     render layout: false | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def sub_role_field | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |     @field_name = 'sub_role' | 
					
						
							|  |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @sub_attribute = SubRole.find(params[:role_id]) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  @attribute = Role.find(@sub_attribute.role_id) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def add_attribute_field | 
					
						
							|  |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  if params[:sub_role] | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	    @field_name = 'sub_role' | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	    attribute = SubRole.find(params[:sub_role][:id]) rescue nil | 
					
						
							|  |  |  |       @attribute_field_counter = attribute.attribute_fields.count | 
					
						
							|  |  |  |       @attribute_field = attribute.attribute_fields.build | 
					
						
							|  |  |  |       @attribute_field.save | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  |       @attribute_field[:af_count] = @attribute_field_counter | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  |       @attribute = SubRole.find(params[:sub_role][:id]) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  else | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	    @field_name = 'role' | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  |       attribute = Role.find(params[:role_id]) rescue nil | 
					
						
							|  |  |  |       @attribute_field_counter = attribute.attribute_fields.count | 
					
						
							|  |  |  |         @attribute_field = attribute.attribute_fields.build | 
					
						
							|  |  |  |       @attribute_field.save | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  |       @attribute_field[:af_count] = @attribute_field_counter | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  |       @attribute = Role.find(params[:role_id]) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  end | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  respond_to do |format| | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |       format.js  { render 'add_attribute_field' } | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  |     end	 | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |   end | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   # def get_variables_for_new | 
					
						
							|  |  |  |   #   @designs = Design.all.entries | 
					
						
							|  |  |  |   #   @themes = Design.first.themes | 
					
						
							|  |  |  |   #   @module_apps = ModuleApp.for_frontend_select | 
					
						
							|  |  |  |   #   @app_frontend_urls = nil | 
					
						
							|  |  |  |   #   @categories = nil | 
					
						
							|  |  |  |   #   @tags = nil | 
					
						
							|  |  |  |   #   @page_frontend_data_counts = nil | 
					
						
							|  |  |  |   #   @frontend_styles = nil | 
					
						
							|  |  |  |   #   @selected={ | 
					
						
							|  |  |  |   #     :design => @designs.first, | 
					
						
							|  |  |  |   #     :theme=> @themes.first, | 
					
						
							|  |  |  |   #     :module_app=>nil,#@module_apps.first | 
					
						
							|  |  |  |   #     :app_frontend_url=> nil, #@module_apps.first | 
					
						
							|  |  |  |   #     :category=>nil, | 
					
						
							|  |  |  |   #     :tag=>nil, | 
					
						
							|  |  |  |   #     :page_frontend_data_count=>nil, | 
					
						
							|  |  |  |   #     :frontend_style => nil | 
					
						
							|  |  |  |   #   } | 
					
						
							|  |  |  |   # end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # def new | 
					
						
							|  |  |  |   #   @item = Page.new(params[:page]) | 
					
						
							|  |  |  |   #   @item.parent = Item.find(params[:parent_id]) rescue nil | 
					
						
							|  |  |  |   #   get_variables_for_new | 
					
						
							|  |  |  |   #   render layout: false | 
					
						
							|  |  |  |   # end | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |    | 
					
						
							|  |  |  |   def new | 
					
						
							|  |  |  |     @attribute = Role.new | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | 	  # if !params[:parent_id] | 
					
						
							|  |  |  |    #    render :template => 'admin/attributes/new' | 
					
						
							|  |  |  |    #  end | 
					
						
							|  |  |  | 	  render layout: false | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def edit | 
					
						
							|  |  |  |     @attribute = Role.find(params[:id]) | 
					
						
							| 
									
										
										
										
											2012-11-26 02:08:06 +00:00
										 |  |  |     @attribute_fields_upper_object = @attribute.sub_roles | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  |     # render :template => 'admin/attributes/edit' | 
					
						
							|  |  |  |     render layout: false | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def create | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |    | 
					
						
							|  |  |  |     if params[:sub_role] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |       @sub_role = SubRole.new(params[:sub_role]) | 
					
						
							|  |  |  | 	   | 
					
						
							|  |  |  |       # @sub_role.role_id = params[:id] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |       if @sub_role.save | 
					
						
							|  |  |  |         redirect_to admin_role_sub_role_url(params[:sub_role][:role_id]) | 
					
						
							|  |  |  |       else | 
					
						
							|  |  |  |         @sub_role = SubRole.new(params[:sub_role]) | 
					
						
							|  |  |  |         flash.now[:error] = t('create.error.category') | 
					
						
							|  |  |  |         render action: :new | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |       end | 
					
						
							|  |  |  | 	   | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | 	  else | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |       @attribute = Role.new(params[:role]) | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  |      #  if @attribute.save | 
					
						
							|  |  |  |      #    redirect_to :action => :index | 
					
						
							|  |  |  | 	    # end | 
					
						
							|  |  |  |       if @attribute.save | 
					
						
							|  |  |  |         redirect_to admin_roles_url | 
					
						
							|  |  |  |       else | 
					
						
							|  |  |  |         @attribute = Role.new(params[:role]) | 
					
						
							|  |  |  |         flash.now[:error] = t('create.error.category') | 
					
						
							|  |  |  |         render action: :new | 
					
						
							|  |  |  |       end | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |     end | 
					
						
							|  |  |  | 	 | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def update | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |    | 
					
						
							|  |  |  |     if params[:sub_role] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |       @sub_role = SubRole.find(params[:sub_role][:id]) | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  |       if @sub_role.update_attributes(params[:sub_role]) | 
					
						
							|  |  |  |         @sub_role.attribute_fields.each{|t| t.destroy if t["to_delete"] == true} | 
					
						
							|  |  |  |       # respond_to do |format| | 
					
						
							|  |  |  |       #   format.html { redirect_to(admin_role_sub_role_url(@sub_role.role_id)) } | 
					
						
							|  |  |  |       #   format.js  { render 'toggle_enable' } | 
					
						
							|  |  |  |       # end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         redirect_to admin_role_sub_role_url(@sub_role.role_id) | 
					
						
							|  |  |  |       else | 
					
						
							|  |  |  |         flash.now[:error] = t('update.error.category') | 
					
						
							|  |  |  |         render action: :edit | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |       end | 
					
						
							|  |  |  | 	   | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | 	  else | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |       @attribute = Role.find(params[:id]) | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  |       # @attribute.update_attributes(params[:role]) | 
					
						
							|  |  |  |       # @attribute.attribute_fields.each{|t| t.destroy if t["to_delete"] == true} | 
					
						
							|  |  |  |       # respond_to do |format| | 
					
						
							|  |  |  |       #   format.html { redirect_to :action => :index } | 
					
						
							|  |  |  |       #   format.js  { render 'admin/attributes/toggle_enable' } | 
					
						
							|  |  |  |       # end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |       if @attribute.update_attributes(params[:role]) | 
					
						
							|  |  |  |         @attribute.attribute_fields.each{|t| t.destroy if t["to_delete"] == true} | 
					
						
							|  |  |  |         redirect_to admin_roles_url | 
					
						
							|  |  |  |       else | 
					
						
							|  |  |  |         flash.now[:error] = t('update.error.category') | 
					
						
							|  |  |  |         render action: :edit | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |       end | 
					
						
							|  |  |  | 	   | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |     end | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def destroy | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |      | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  if params[:sub_role] | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | 	    @attribute = SubRole.find(params[:sub_role][:id]) | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	   | 
					
						
							|  |  |  |       respond_to do |format| | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  |         if @attribute.destroy | 
					
						
							|  |  |  | 		      format.html { redirect_to(admin_role_sub_role_url(@attribute.role_id)) } | 
					
						
							|  |  |  |           format.js  | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  | 	   | 
					
						
							| 
									
										
										
										
											2013-04-25 09:57:34 +00:00
										 |  |  | 	  else | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  | 	 | 
					
						
							|  |  |  |       @attribute = Role.find(params[:id]) | 
					
						
							|  |  |  |       @attribute.destroy | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | 	    respond_to do |format| | 
					
						
							|  |  |  |         format.html { redirect_to admin_roles_url } | 
					
						
							|  |  |  |         format.js  { render 'admin/attributes/destroy' } | 
					
						
							|  |  |  |       end | 
					
						
							| 
									
										
										
										
											2013-01-08 08:58:01 +00:00
										 |  |  |     end | 
					
						
							|  |  |  | 	 | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |   end | 
					
						
							| 
									
										
										
										
											2013-08-09 07:07:05 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   def toggle | 
					
						
							|  |  |  |     @attribute = Role.find(params[:role_id]) | 
					
						
							|  |  |  |     @attribute.disabled = @attribute.disabled ? false : true | 
					
						
							|  |  |  |     @attribute.save! | 
					
						
							|  |  |  |     redirect_to action: :index  | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   def sub_role_toggle | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |     @sub_attribute = SubRole.find(params[:role_id]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     @sub_attribute.disabled = @sub_attribute.disabled ? false : true | 
					
						
							|  |  |  |     @sub_attribute.save! | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     redirect_to admin_role_sub_role_url(@sub_attribute.role_id) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-23 10:34:21 +00:00
										 |  |  |    | 
					
						
							|  |  |  |   protected | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def set_attribute | 
					
						
							|  |  |  |     @attribute_type = 'role' | 
					
						
							|  |  |  |     @class = 'roles' | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  | end |