diff --git a/app/controllers/configurations_controller.rb b/app/controllers/configurations_controller.rb --- a/app/controllers/configurations_controller.rb +++ b/app/controllers/configurations_controller.rb @@ -5,8 +5,8 @@ def index - @configurations = GraderConfiguration.find(:all, - :order => '`key`') + @configurations = GraderConfiguration.order(:key) + @group = GraderConfiguration.pluck("grader_configurations.key").map{ |x| x[0...(x.index('.'))] }.uniq.sort end def reload @@ -16,8 +16,9 @@ def update @config = GraderConfiguration.find(params[:id]) + User.clear_last_login if @config.key == GraderConfiguration::MULTIPLE_IP_LOGIN_KEY and @config.value == 'true' and params[:grader_configuration][:value] == 'false' respond_to do |format| - if @config.update_attributes(params[:grader_configuration]) + if @config.update_attributes(configuration_params) format.json { head :ok } else format.json { respond_with_bip(@config) } @@ -25,4 +26,9 @@ end end +private + def configuration_params + params.require(:grader_configuration).permit(:key,:value_type,:value,:description) + end + end