replace catalog service to api

This commit is contained in:
2026-05-05 19:27:29 +02:00
parent 189bce21e1
commit 93849795e3
91 changed files with 1503 additions and 1540 deletions
+23
View File
@@ -0,0 +1,23 @@
require_relative "boot"
require "rails"
require "active_model/railtie"
require "active_record/railtie"
require "action_controller/railtie"
require "action_view/railtie"
require "action_dispatch/railtie"
require "sprockets/railtie"
Bundler.require(*Rails.groups)
module Api
class Application < Rails::Application
config.load_defaults 8.0
config.time_zone = "UTC"
config.active_record.default_timezone = :utc
config.assets.prefix = "/admin/assets"
config.autoload_lib(ignore: %w[assets tasks])
end
end
+4
View File
@@ -0,0 +1,4 @@
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)
require 'bundler/setup'
require 'bootsnap/setup'
+16
View File
@@ -0,0 +1,16 @@
default: &default
adapter: mysql2
encoding: utf8mb4
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
username: <%= ENV.fetch("DB_USER", "root") %>
password: <%= ENV.fetch("DB_PASSWORD", "") %>
host: <%= ENV.fetch("DB_HOST", "mysql") %>
port: <%= ENV.fetch("DB_PORT", "3306") %>
development:
<<: *default
database: <%= ENV.fetch("DB_NAME", "softwares") %>
production:
<<: *default
database: <%= ENV.fetch("DB_NAME", "softwares") %>
+3
View File
@@ -0,0 +1,3 @@
require_relative "application"
Rails.application.initialize!
@@ -0,0 +1,14 @@
Rails.application.configure do
config.eager_load = false
config.consider_all_requests_local = true
config.server_timing = true
config.cache_classes = false
config.action_controller.perform_caching = false
config.active_record.migration_error = :page_load
config.active_record.verbose_query_logs = true
config.log_level = :debug
config.log_tags = [:request_id]
end
@@ -0,0 +1,7 @@
Rails.application.configure do
config.eager_load = true
config.consider_all_requests_local = false
config.log_level = :info
config.log_tags = [:request_id]
config.active_record.verbose_query_logs = false
end
@@ -0,0 +1,14 @@
ActiveAdmin.setup do |config|
config.site_title = "Teletype Games Admin"
config.authentication_method = :authenticate_admin_user!
config.current_user_method = :current_admin_user
config.logout_link_path = :destroy_admin_user_session_path
config.logout_link_method = :delete
config.comments = false
config.batch_actions = true
config.filter_attributes = [:password, :password_confirmation, :current_password, :encrypted_password]
config.localize_format = :long
end
+16
View File
@@ -0,0 +1,16 @@
Devise.setup do |config|
config.mailer_sender = "noreply@teletype.hu"
require "devise/orm/active_record"
config.case_insensitive_keys = [:email]
config.strip_whitespace_keys = [:email]
config.skip_session_storage = [:http_auth]
config.stretches = Rails.env.test? ? 1 : 12
config.reconfirmable = false
config.expire_all_remember_me_on_sign_out = true
config.password_length = 6..128
config.email_regexp = /\A[^@\s]+@[^@\s]+\z/
config.reset_password_within = 6.hours
config.sign_out_via = :delete
end
@@ -0,0 +1,5 @@
Rails.application.config.action_dispatch.default_headers = {
"Cross-Origin-Opener-Policy" => "same-origin",
"Cross-Origin-Embedder-Policy" => "require-corp",
"Cross-Origin-Resource-Policy" => "same-origin"
}
+8
View File
@@ -0,0 +1,8 @@
max_threads_count = ENV.fetch("RAILS_MAX_THREADS", 5)
min_threads_count = ENV.fetch("RAILS_MIN_THREADS") { max_threads_count }
threads min_threads_count, max_threads_count
port ENV.fetch("PORT", 3000)
environment ENV.fetch("RAILS_ENV", "development")
pidfile ENV.fetch("PIDFILE", "tmp/pids/server.pid")
plugin :tmp_restart
+12
View File
@@ -0,0 +1,12 @@
Rails.application.routes.draw do
devise_for :admin_users, ActiveAdmin::Devise.config
ActiveAdmin.routes(self)
namespace :api do
get "software", to: "software#index"
get "software/highlighted", to: "software_highlighted#index"
end
get "update", to: "update#update"
get "file/*path", to: "files#show", format: false
end