Aggiunge annunci in-app/sito, contatti e migliora UI copertina sul portale.

Include admin/API/banner nativi, form contatti e reset copertina standard con layout edit più ampio.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-20 15:30:49 +02:00
co-authored by Cursor
parent e502844b88
commit 5b723bf844
81 changed files with 2177 additions and 38 deletions
@@ -0,0 +1,48 @@
# frozen_string_literal: true
require "rails_helper"
RSpec.describe "Public site announcements", type: :request do
let!(:coach) do
User.create!(email: "news-coach@test.it", name: "Coach", password: "Password123", role: "coach")
end
it "mostra gli avvisi pubblici in home e non quelli privati" do
AppAnnouncement.create!(
kind: "maintenance", status: "published", title: "Manutenzione sito",
body: "Stasera il sito sarà offline.",
show_on_app: false, show_on_web_public: true, show_on_web_private: false
)
AppAnnouncement.create!(
kind: "info", status: "published", title: "Solo soci",
body: "Messaggio interno.",
show_on_app: false, show_on_web_public: false, show_on_web_private: true
)
get root_path
expect(response).to have_http_status(:ok)
expect(response.body).to include("Manutenzione sito")
expect(response.body).not_to include("Solo soci")
end
it "mostra gli avvisi privati nell'area account dopo il login" do
AppAnnouncement.create!(
kind: "info", status: "published", title: "Solo soci",
body: "Messaggio interno.",
show_on_app: false, show_on_web_public: false, show_on_web_private: true
)
AppAnnouncement.create!(
kind: "info", status: "published", title: "Manutenzione sito",
body: "Stasera il sito sarà offline.",
show_on_app: false, show_on_web_public: true, show_on_web_private: false
)
post public_login_path, params: { email: coach.email, password: "Password123" }
get public_account_path
expect(response).to have_http_status(:ok)
expect(response.body).to include("Solo soci")
expect(response.body).not_to include("Manutenzione sito")
end
end