Commit Graph

99 Commits

Author SHA1 Message Date
Stanko K.R.
aec8747710 Fix failing system tests
Something broke when the dependencies were updated so I copied over the Gemfile.lock file from main - which is known to work
2025-12-01 16:34:51 +01:00
Stanko K.R.
71b5edae01 Run migrations 2025-12-01 15:31:53 +01:00
Stanko K.R.
b1325ccee7 Bump Redis 2025-12-01 15:31:07 +01:00
David Heinemeier Hansson
5266ffc049 Always just go through the settings object 2025-12-01 15:26:06 +01:00
David Heinemeier Hansson
bd3b0c5988 Not needed 2025-12-01 15:26:06 +01:00
David Heinemeier Hansson
e8626f9d5d Use rails edge that now includes the feature 2025-12-01 15:26:06 +01:00
David Heinemeier Hansson
796195c2cc Give up on the auto delegation to get a cleaner API 2025-12-01 15:26:06 +01:00
David Heinemeier Hansson
559629537b We don't need to specify the default any more 2025-12-01 15:26:06 +01:00
David Heinemeier Hansson
42c411b660 Use upstream version of has_json 2025-12-01 15:25:39 +01:00
David Heinemeier Hansson
6c59b8c82b Use public_send instead of send 2025-12-01 15:25:39 +01:00
David Heinemeier Hansson
20ba1cf2ae Ensure mutable string is used to prevent warning 2025-12-01 15:25:06 +01:00
David Heinemeier Hansson
d323c3cfc0 Now required to be explicitly included
Not sure why
2025-12-01 15:23:57 +01:00
David Heinemeier Hansson
53671b48e0 Update to latest Rails 8.2.0 alpha 2025-12-01 15:23:23 +01:00
David Heinemeier Hansson
66b4e41281 Rename 2025-12-01 15:23:23 +01:00
David Heinemeier Hansson
6476bab4cc Use consistent yield naming 2025-12-01 15:23:23 +01:00
David Heinemeier Hansson
f7c3aaa2a9 Allow for default values 2025-12-01 15:23:23 +01:00
David Heinemeier Hansson
593f8dd04c No need for self 2025-12-01 15:23:23 +01:00
David Heinemeier Hansson
d3b6507ce2 Layer on top a more pleasant API for the default case 2025-12-01 15:23:23 +01:00
David Heinemeier Hansson
32be03a240 Rely on method missing 2025-12-01 15:23:23 +01:00
David Heinemeier Hansson
8e94a4aa1e Better wording 2025-12-01 15:23:23 +01:00
David Heinemeier Hansson
15db4033bc Enforce restriction to create new rooms 2025-12-01 15:22:37 +01:00
David Heinemeier Hansson
f56e33e323 Fix fetching missing values 2025-12-01 15:22:36 +01:00
David Heinemeier Hansson
bea2c89c2b Add new has_json to add Account#settings to restrict room creation to only administrators 2025-12-01 15:22:36 +01:00
Stanko Krtalić
b7c7d99dcd Merge pull request #119 from basecamp/upgrade-to-rails-8.2.alpha
Upgrade to Rails 8.2.0.alpha
2025-12-01 13:59:28 +01:00
Stanko K.R.
6197f20a31 Upgrade to Rails 8.2.0.alpha 2025-12-01 13:50:53 +01:00
Stanko Krtalić
02023b0f0c Merge pull request #118 from basecamp/modernize-scripts
Create release first
2025-12-01 12:22:04 +01:00
Stanko K.R.
af81a4c1ac Create release first 2025-12-01 12:21:08 +01:00
Stanko Krtalić
d4a132865a Merge pull request #117 from basecamp/modernize-scripts
Modernize scripts
2025-12-01 12:01:13 +01:00
Stanko K.R.
f423bb9b07 Remove structure.sql v1.3.0 2025-12-01 11:48:53 +01:00
Stanko K.R.
3367ffaf8f Switch to using schema.rb
Previously we had to use structure.sql since schema.rb didn't have support for virtual tables that we needed for search. Since Campfire's release virtuals tables have been added to Rails, so there is no need to use structure.sql anymore
2025-12-01 11:47:51 +01:00
Stanko K.R.
7593a27a6b Use bash for the setup script
This allows us to bootstrap Ruby during setup
2025-12-01 11:21:18 +01:00
Stanko K.R.
133859b8fb Create a Github release 2025-12-01 11:20:31 +01:00
Stanko Krtalić
13690f754d Merge pull request #116 from basecamp/port-release-script
Port over release script
2025-12-01 10:51:10 +01:00
Stanko K.R.
ead80316e0 Port over release script
Co-Authored-By: Kevin McConnell <kevin@37signals.com>
2025-12-01 10:40:24 +01:00
Stanko Krtalić
59b322edc6 Merge pull request #111 from basecamp/ip-ban
Add IP-based user banning
Closes: #95
2025-11-27 15:26:34 +01:00
Jason Zimdars
c8ac878353 Polish banned states and confirm 2025-11-26 13:08:35 -06:00
Kevin McConnell
30fe6ab121 Add IP-based user banning
This adds the ability to ban a user by their IP address.

When an admin is viewing a user profile, a new "Ban user" button is
present. Clicking on that will:

- Create a ban on the IP addresses that were tracked for that user's
  sessions
- Remove all the messages authored by that user
- Log the user out immediately

In addition, that user will no longer be shown in most user lists in the
app. They are still shown to admins, in account settings. Viewing their
profile from there will now show a "Remove ban" button which can be used
to restore their access (it doesn't restore their messages though --
those are already gone -- it just removes the blocks so they can log in
again).
2025-11-26 14:30:38 +00:00
Kevin McConnell
612ca32d2c Merge pull request #112 from basecamp/update-brakeman
Bump Brakeman to latest
2025-11-26 14:30:26 +00:00
Kevin McConnell
5f58a183cd Bump Brakeman to latest 2025-11-26 14:26:32 +00:00
Stanko Krtalić
f85ec7f99e Merge pull request #102 from p-schlickmann/unused-git-source
Removing unused git source from Gemfile
2025-11-04 15:56:56 +01:00
Pedro Schlickmann Mendes
c6ea9fda4c Removing unused git source from Gemfile 2025-10-30 19:11:47 -03:00
Stanko Krtalić
89f45cee76 Merge pull request #90 from milos-dukic/logout-localhost-fix
[Logout localhost fix] - fixing an error for logout process on localhost fix
2025-10-21 09:35:52 +02:00
Stanko Krtalić
be0ebdfd0f Merge pull request #97 from IbraheemTuffaha/main
Add dir="auto" to messages for rtl lang support
2025-10-21 08:38:17 +02:00
Ibraheem Tuffaha
892c581317 Add dir="auto" to messages for rtl lang support 2025-10-18 11:01:33 +03:00
milos-dukic
336c9ae140 [Logout localhost fix] - fixing an error for logout process on localhost. 2025-10-06 15:14:23 +02:00
Kevin McConnell
5c0526eaf7 Merge pull request #83 from kevinmcconnell/main
Avoid extra slash in cable path
2025-09-25 10:53:24 +01:00
Kevin McConnell
329d3e361b Avoid extra slash in cable path
When mounting to a `SCRIPT_NAME` of `/`, we were inserting an extra
slash in the cable path.
2025-09-25 10:47:11 +01:00
Kevin McConnell
1237a40650 Merge pull request #82 from kevinmcconnell/script-cable-path
Allow serving cable traffic under `$SCRIPT_NAME`
2025-09-24 15:58:31 +01:00
Kevin McConnell
6f7f0973db Allow serving cable traffic under $SCRIPT_NAME
If deploying Campfire to a path other than the root (for example, using
Kamal's path-based routing) then the Action Cable endpoint needs to be
adjusted to include that path.

Prepending the script name to the cable path means it will be adjusted
to the path in the same way that the application routes are. When script
name is the default, the behaviour is unchanged.
2025-09-24 14:49:16 +01:00
Stanko Krtalić
c13bd1a4d3 Merge pull request #55 from milos-dukic/event-logger-controller-fix
[ERemove event_logger_controller.js
2025-09-19 14:12:01 +02:00