From 3367d748b66a92d21ef2968ceb75effb385e7f8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=91=B1=E5=91=B1=E5=91=B1?= Date: Wed, 27 Sep 2023 09:29:50 +0800 Subject: [PATCH] add setting navbar index --- .../admins/laboratory_settings_controller.rb | 2 +- app/controllers/settings_controller.rb | 2 +- .../admins/save_laboratory_setting_service.rb | 1 + app/views/admins/laboratory_settings/show.html.erb | 14 ++++++++------ 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/app/controllers/admins/laboratory_settings_controller.rb b/app/controllers/admins/laboratory_settings_controller.rb index 861db50c6..d522a479b 100644 --- a/app/controllers/admins/laboratory_settings_controller.rb +++ b/app/controllers/admins/laboratory_settings_controller.rb @@ -25,6 +25,6 @@ class Admins::LaboratorySettingsController < Admins::BaseController params.permit(:identifier, :name, :nav_logo, :login_logo, :tab_logo, :oj_banner, :subject_banner, :course_banner, :competition_banner, :moop_cases_banner, - :footer, navbar: %i[name link hidden]) + :footer, navbar: %i[name link hidden index]) end end \ No newline at end of file diff --git a/app/controllers/settings_controller.rb b/app/controllers/settings_controller.rb index 92a4afd21..029f9cf29 100644 --- a/app/controllers/settings_controller.rb +++ b/app/controllers/settings_controller.rb @@ -28,7 +28,7 @@ class SettingsController < ApplicationController private def get_navbar - @navbar = default_laboratory.navbar + @navbar = default_laboratory.navbar.sort_by{|e| e["index"]} # if User.current.logged? # pernal_index = {"name"=>"个人主页", "link"=>get_site_url("url", "#{Rails.application.config_for(:configuration)['platform_url']}/current_user"), "hidden"=>false} # @navbar << pernal_index diff --git a/app/services/admins/save_laboratory_setting_service.rb b/app/services/admins/save_laboratory_setting_service.rb index c29e374bd..ad040585f 100644 --- a/app/services/admins/save_laboratory_setting_service.rb +++ b/app/services/admins/save_laboratory_setting_service.rb @@ -30,6 +30,7 @@ class Admins::SaveLaboratorySettingService < ApplicationService hash = {} hash[:name] = strip nav[:name] hash[:link] = strip nav[:link] + hash[:index] = strip nav[:index] hash[:hidden] = nav[:hidden].to_s != '0' hash end diff --git a/app/views/admins/laboratory_settings/show.html.erb b/app/views/admins/laboratory_settings/show.html.erb index 8cf2d4cbf..d3d3002bf 100644 --- a/app/views/admins/laboratory_settings/show.html.erb +++ b/app/views/admins/laboratory_settings/show.html.erb @@ -16,9 +16,9 @@ https:// <%= text_field_tag :identifier, @laboratory.identifier, - maxlength: 15, class: 'form-control font-16', - 'onKeyUp': 'value=value.replace(/[^\w\-\/]/ig,"").toLowerCase()', - style: 'text-transform:lowercase'%> + maxlength: 15, class: 'form-control font-16', + 'onKeyUp': 'value=value.replace(/[^\w\-\/]/ig,"").toLowerCase()', + style: 'text-transform:lowercase'%>
<% rails_env = EduSetting.get('rails_env') %> <%= rails_env && rails_env != 'production' ? ".#{rails_env}.gitlink.org.cn" : '.gitlink.org.cn' %> @@ -159,15 +159,17 @@ 导航名称 导航链接 - 是否展示 + 顺序 + 是否展示 操作 - - <% (setting.navbar || setting.default_navbar).each do |nav| %> + + <% (setting.navbar || setting.default_navbar).sort_by{|e| e["index"]}.each do |nav| %> <%= text_field_tag('navbar[][name]', nav['name'], id: nil, class: 'form-control') %> <%= text_field_tag('navbar[][link]', nav['link'], id: nil, class: 'form-control') %> + <%= text_field_tag('navbar[][index]', nav['index'], id: nil, class: 'form-control') %> <%= check_box_tag('navbar[][hidden]', 0, !nav['hidden'], id: nil, class: 'font-16') %>