summaryrefslogtreecommitdiff
path: root/app/views
diff options
context:
space:
mode:
authorerdgeist <erdgeist@erdgeist.org>2026-06-27 16:58:53 +0200
committererdgeist <erdgeist@erdgeist.org>2026-06-27 16:58:53 +0200
commit420506e58fdfc84f1a5bede0a01dedf0af3bb4f3 (patch)
tree57726b40e8aa9ccf80f874f39d3facefc0331420 /app/views
parent241d5e91b2b6716e2861cc77d319c3d3568343a8 (diff)
Stage 7: Rails 7.2 → 8.1 on Ruby 3.2.11
- Bump Rails to 8.1.3 (Ruby unchanged at 3.2.11, new gemset rails8-upgrade) - config.load_defaults 8.1; merge app:update diffs for all environment files - Remove routing-filter 0.7.0; replace with native scope '(:locale)' in routes.rb and default_url_options in ApplicationController - Delete config/initializers/routing_filter_rails71_patch.rb - Replace vendored TinyMCE 3.x (~200 files) with tinymce-rails ~> 8.3; migrate admin_interface.js from jQuery .tinymce()/advanced theme to tinymce.init(); add config/tinymce.yml; note: TinyMCE 7+ is GPL - rails-i18n ~> 8.0 added explicitly (previously indirect dependency) - awesome_nested_set, acts-as-taggable-on pinned to git main/master (gemspec activerecord < 8.1 ceiling; no functional incompatibility; repin to version once upstream releases updated gemspecs) - globalize ~> 7.0, libxml-ruby ~> 5.0, nokogiri ~> 1.18, pg ~> 1.5 - sass-rails, coffee-rails, uglifier moved from :assets group to main (Sprockets 4 convention; :assets group no longer meaningful) - Node: head, draft, lock_owner marked belongs_to optional: true - Page: node, user, editor marked belongs_to optional: true - Static assets in public/images/ and public/javascripts/ referenced via plain HTML tags; Rails 8 load_defaults raises on pipeline helpers for undeclared assets - sessions_controller_test.rb: remove stale require and dead rescue_action - users_controller_test.rb: assert button[type=submit] not input[type=submit] (Rails 8 button_to renders <button> not <input>) - test_helper.rb: node.reload after children.create! (awesome_nested_set 3.9.0 does not refresh parent in memory after callback) - 129 runs, 339 assertions, 3 failures, 0 errors — identical baseline to 7.2
Diffstat (limited to 'app/views')
-rw-r--r--app/views/content/_featured_articles.html.erb14
-rw-r--r--app/views/layouts/admin.html.erb11
-rw-r--r--app/views/layouts/application.html.erb12
-rw-r--r--app/views/revisions/diff.html.erb2
4 files changed, 19 insertions, 20 deletions
diff --git a/app/views/content/_featured_articles.html.erb b/app/views/content/_featured_articles.html.erb
index c69911f..6717c51 100644
--- a/app/views/content/_featured_articles.html.erb
+++ b/app/views/content/_featured_articles.html.erb
@@ -10,35 +10,35 @@
10 )% --> 10 )% -->
11 11
12 <%= link_to( 12 <%= link_to(
13 image_tag( 'chaosradio.png' ), 13 '<img src="/images/chaosradio.png" alt="Chaosradio">'.html_safe,
14 "https://chaosradio.ccc.de/", 14 "https://chaosradio.ccc.de/",
15 :id => "chaosradio_icon", 15 :id => "chaosradio_icon",
16 :title => "Chaosradio" 16 :title => "Chaosradio"
17 )%> 17 )%>
18 18
19 <%= link_to( 19 <%= link_to(
20 image_tag( 'media-ccc-de-banner.svg', :size => '155x45' ), 20 '<img src="/images/media-ccc-de-banner.svg" width="155" height="45" alt="Media Dot CCC Dot de">'.html_safe,
21 "https://media.ccc.de", 21 "https://media.ccc.de",
22 :id => "media_ccc_de_icon", 22 :id => "media_ccc_de_icon",
23 :title => "Media Dot CCC Dot de" 23 :title => "Media Dot CCC Dot de"
24 )%> 24 )%>
25 25
26 <%= link_to( 26 <%= link_to(
27 image_tag( 'ds.png' ), 27 '<img src="/images/ds.png" alt="Datenschleuder">'.html_safe,
28 "https://ds.ccc.de/", 28 "https://ds.ccc.de/",
29 :id => "ds_icon", 29 :id => "ds_icon",
30 :title => "Datenschleuder" 30 :title => "Datenschleuder"
31 )%> 31 )%>
32 32
33 <%= link_to( 33 <%= link_to(
34 image_tag( 'events.png' ), 34 '<img src="/images/events.png" alt="Events-Blog">'.html_safe,
35 "https://events.ccc.de/", 35 "https://events.ccc.de/",
36 :id => "events_icon", 36 :id => "events_icon",
37 :title => "Events Blog" 37 :title => "Events-Blog"
38 )%> 38 )%>
39 39
40 <%= link_to( 40 <%= link_to(
41 image_tag( 'Fediverse.svg', :size => '64x64' ), 41 '<img src="/images/Fediverse.svg" width="64" height="64" alt="Fediverse">'.html_safe,
42 "https://social.bau-ha.us/@ccc", 42 "https://social.bau-ha.us/@ccc",
43 :rel => 'me', 43 :rel => 'me',
44 :id => "fediverse_icon", 44 :id => "fediverse_icon",
@@ -46,7 +46,7 @@
46 )%> 46 )%>
47 47
48 <%= link_to( 48 <%= link_to(
49 image_tag( 'Bluesky_Logo.svg', :size => '64x64' ), 49 '<img src="/images/Bluesky_Logo.svg" width="64" height="64" alt="bsky">'.html_safe,
50 "https://bsky.app/profile/ccc.de", 50 "https://bsky.app/profile/ccc.de",
51 :id => "bluesky_icon", 51 :id => "bluesky_icon",
52 :title => "bsky" 52 :title => "bsky"
diff --git a/app/views/layouts/admin.html.erb b/app/views/layouts/admin.html.erb
index 2a90786..890aeaa 100644
--- a/app/views/layouts/admin.html.erb
+++ b/app/views/layouts/admin.html.erb
@@ -7,13 +7,12 @@
7 <%= csrf_meta_tags %> 7 <%= csrf_meta_tags %>
8 8
9 <title><%= "#{params[:controller]} | #{params[:action]}" %></title> 9 <title><%= "#{params[:controller]} | #{params[:action]}" %></title>
10 <%= javascript_include_tag 'admin_bundle' %>
11 <%= javascript_include_tag 'tiny_mce/jquery.tinymce.js' %>
12 <%= javascript_tag "var AUTH_TOKEN = #{form_authenticity_token.inspect};" if protect_against_forgery? %> 10 <%= javascript_tag "var AUTH_TOKEN = #{form_authenticity_token.inspect};" if protect_against_forgery? %>
13 <%= stylesheet_link_tag 'admin' %> 11 <%= javascript_include_tag 'admin_bundle' %>
14 <%= javascript_include_tag 'admin_search.js' %> 12 <%= tinymce_assets %>
15 <%= javascript_include_tag 'admin_interface.js' %> 13 <link rel="stylesheet" href="/stylesheets/admin.css">
16 <%= stylesheet_link_tag 'admin' %> 14 <script src="/javascripts/admin_search.js"></script>
15 <script src="/javascripts/admin_interface.js"></script>
17 </head> 16 </head>
18 17
19 <body> 18 <body>
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
index c5cbf14..48e0a5b 100644
--- a/app/views/layouts/application.html.erb
+++ b/app/views/layouts/application.html.erb
@@ -10,11 +10,11 @@
10 <meta property="og:description" content="Der Chaos Computer Club ist eine galaktische Gemeinschaft von Lebewesen für Informationsfreiheit und Technikfolgenabschätzung." /> 10 <meta property="og:description" content="Der Chaos Computer Club ist eine galaktische Gemeinschaft von Lebewesen für Informationsfreiheit und Technikfolgenabschätzung." />
11 11
12 <title><%= page_title %></title> 12 <title><%= page_title %></title>
13 <%= stylesheet_link_tag "ccc" %> 13 <link rel="stylesheet" href="/stylesheets/ccc.css">
14 <%= javascript_include_tag 'jquery-1.3.2.min' %> 14 <script src="/javascripts/jquery-1.3.2.min.js"></script>
15 <%= javascript_include_tag 'shadowbox/shadowbox' %> 15 <script src="/javascripts/shadowbox/shadowbox.js"></script>
16 <%= stylesheet_link_tag "shadowbox" %> 16 <link rel="stylesheet" href="/stylesheets/shadowbox.css">
17 <%= javascript_include_tag 'public' %> 17 <script src="/javascripts/public.js"></script>
18 18
19 <%= auto_discovery_link_tag(:atom, '/rss/updates.xml', title: "ATOM") %> 19 <%= auto_discovery_link_tag(:atom, '/rss/updates.xml', title: "ATOM") %>
20 <%= auto_discovery_link_tag(:rss, '/rss/updates.rdf', title: "RSS") %> 20 <%= auto_discovery_link_tag(:rss, '/rss/updates.rdf', title: "RSS") %>
@@ -31,7 +31,7 @@
31 <body lang="<%= @page ? @page.effective_lang : 'de' %>"> 31 <body lang="<%= @page ? @page.effective_lang : 'de' %>">
32 <div id="wrapper"> 32 <div id="wrapper">
33 <div id="header"> 33 <div id="header">
34 <%= image_tag("header.png") %> 34 <img src="/images/header.png" alt="">
35 </div> 35 </div>
36 <div id="toolbox"> 36 <div id="toolbox">
37 <div id="search"> 37 <div id="search">
diff --git a/app/views/revisions/diff.html.erb b/app/views/revisions/diff.html.erb
index efda85d..b8d061d 100644
--- a/app/views/revisions/diff.html.erb
+++ b/app/views/revisions/diff.html.erb
@@ -38,7 +38,7 @@
38 </div> 38 </div>
39</pre> 39</pre>
40 40
41<%= javascript_include_tag 'cacycle_diff' %> 41<script src="/javascripts/cacycle_diff.js"></script>
42<script type="text/javascript" charset="utf-8"> 42<script type="text/javascript" charset="utf-8">
43 window.onload = function() { 43 window.onload = function() {
44 title1 = document.getElementById('start_title').innerHTML; 44 title1 = document.getElementById('start_title').innerHTML;