symphonia 6.1.1 → 6.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c2bc00b67bc87bcc37b75d39db1cc7ab28e6326584e59d16cdc1bf8734f3c2ee
4
- data.tar.gz: a39228ace17ac294ab5c6ac03df8984564ddabf9fe61ce5e3bc810c3624ec140
3
+ metadata.gz: 9b92e12f23f37c95b69bff324a3a7a3ddb125bb1eb250d93449238ff49338e62
4
+ data.tar.gz: 5743136bba0122466f82830e11c9a01e5fb038c23659e6f6e77c907f30e946e3
5
5
  SHA512:
6
- metadata.gz: 87a3cd9554903842c591e252d5878fea5c75c4378d513c7f7c7601d7303fad8c5910f295120a5e0d17b6a7c47120d61e880871d6b77e1d770ffee660f533bebf
7
- data.tar.gz: 8a07d24f59c5879839f27a65978d8b1afe0abfa5dc94574e800589f2292bff57d29e1ec84d101e11f29e6e810a8f192af0cf1d95444749710666d52d1c76e65d
6
+ metadata.gz: 59c7b8255d6fb8d45446a8c7bf8e6fc9c321a2b3135c862024a2de0e23375bbb9d1aa068f85969ff6c074be4839ab4f88e5690a9f5102ea495e2751407dc50d3
7
+ data.tar.gz: 117ee18d56d6afd2a94269e7993206916373e33b816dff9eeb18bea9657613d44e1f1499c1c170eeda37bda9bedd4597a24f952577a678b25a8936c5fbcc0b34
data/CHANGELOG.md CHANGED
@@ -5,6 +5,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
5
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
7
  ## [Unreleased]
8
+
9
+ ## [6.1.2] - 2026-01-10
10
+
11
+ ### Fixed
12
+
13
+ - Authlogic session keys
14
+ - NoMethodError `fa_icon` account details view
15
+
8
16
  ## [6.1.1] - 2025-12-23
9
17
  ### Fixed
10
18
  - cookies key of Authlogic
@@ -34,7 +34,7 @@ module Symphonia
34
34
  format.json { render status: :created }
35
35
  else
36
36
  format.html { render action: 'register' }
37
- format.json { render json: @user.errors, status: :unprocessable_entity }
37
+ format.json { render json: @user.errors, status: :unprocessable_content }
38
38
  end
39
39
  end
40
40
  end
@@ -55,7 +55,7 @@ module Symphonia
55
55
  format.js
56
56
  else
57
57
  format.html { render action: 'edit' }
58
- format.json { render json: @user.errors, status: :unprocessable_entity }
58
+ format.json { render json: @user.errors, status: :unprocessable_content }
59
59
  end
60
60
  end
61
61
  end
@@ -46,8 +46,8 @@ module Symphonia
46
46
  format.json { render json: @user, status: :created, location: @user }
47
47
  else
48
48
  format.html { render action: 'new' }
49
- format.xml { render xml: @user.errors, status: :unprocessable_entity }
50
- format.json { render json: @user.errors, status: :unprocessable_entity }
49
+ format.xml { render xml: @user.errors, status: :unprocessable_content }
50
+ format.json { render json: @user.errors, status: :unprocessable_content }
51
51
  end
52
52
  end
53
53
  end
@@ -65,8 +65,8 @@ module Symphonia
65
65
  format.any(:json, :xml) { head :no_content }
66
66
  else
67
67
  format.html { render action: 'edit' }
68
- format.xml { render xml: @user.errors, status: :unprocessable_entity }
69
- format.json { render json: @user.errors, status: :unprocessable_entity }
68
+ format.xml { render xml: @user.errors, status: :unprocessable_content }
69
+ format.json { render json: @user.errors, status: :unprocessable_content }
70
70
  end
71
71
  end
72
72
  end
@@ -177,7 +177,7 @@ module Symphonia
177
177
  end
178
178
 
179
179
  def format_price(value, options = {})
180
- number_to_currency(value, { precision: 1, strip_insignificant_zeros: true }.merge(options))
180
+ number_to_currency(value, { precision: 2, strip_insignificant_zeros: true }.merge(options))
181
181
  end
182
182
 
183
183
  def multiselect_toggler(id = nil)
@@ -16,7 +16,7 @@
16
16
  <% else %>
17
17
  <%= link_to(icon('edit', t(:button_edit)), edit_polymorphic_path(controller_name.singularize, id: account.id), :class => 'btn btn-primary', :remote => true) %>
18
18
  <% end %>
19
- <%= link_to(fa_icon('key'), 'javascript:void(0)', onclick: %q{SymphoniaUserDetail.popup.show()}, class: 'btn') %>
19
+ <%= link_to(icon('key'), 'javascript:void(0)', onclick: %q{SymphoniaUserDetail.popup.show()}, class: 'btn') %>
20
20
  </div>
21
21
 
22
22
  <%= title(account.name, account.active? && '' || account.format_value(:status, self)) %>
@@ -53,8 +53,8 @@ class <%= controller_class_name %>Controller < ApplicationController
53
53
  format.xml { render xml: @<%= singular_table_name %>, status: :created, location: @<%= singular_table_name %> }
54
54
  else
55
55
  format.html { render :new }
56
- format.json { render json: @<%= singular_table_name %>.errors, status: :unprocessable_entity }
57
- format.xml { render xml: @<%= singular_table_name %>.errors, status: :unprocessable_entity }
56
+ format.json { render json: @<%= singular_table_name %>.errors, status: :unprocessable_content }
57
+ format.xml { render xml: @<%= singular_table_name %>.errors, status: :unprocessable_content }
58
58
  end
59
59
  end
60
60
  end
@@ -66,7 +66,7 @@ class <%= controller_class_name %>Controller < ApplicationController
66
66
  format.any(:json, :xml) { head(:no_content) }
67
67
  else
68
68
  format.html { render(:edit) }
69
- format.json { render(json: @<%= singular_table_name %>.errors, status: :unprocessable_entity) }
69
+ format.json { render(json: @<%= singular_table_name %>.errors, status: :unprocessable_content) }
70
70
  end
71
71
  end
72
72
  end
@@ -9,15 +9,24 @@ module Symphonia
9
9
 
10
10
  def connect
11
11
  self.current_user = find_verified_user_or_guest
12
- logger.add_tags 'ActionCable', current_user.login unless current_user.nil?
12
+
13
+ if current_user.nil?
14
+ reject_unauthorized_connection
15
+ else
16
+ logger.add_tags "ActionCable", current_user.login
17
+ end
13
18
  end
14
19
 
15
20
  protected
16
21
 
17
22
  def find_verified_user_or_guest
18
- return if (credentials = request.session["symphonia/user_credentials"]).blank?
23
+ credentials = request.session["symphonia_user_credentials"]
24
+ return if credentials.blank?
19
25
 
20
- ::Symphonia::User.find_by(persistence_token: credentials.split(':')[0])
26
+ ::Symphonia::User.find_by(persistence_token: credentials.split(":")[0])
27
+ rescue StandardError => e
28
+ logger.error "ActionCable: Error finding user: #{e.message}"
29
+ nil
21
30
  end
22
31
  end
23
32
 
@@ -2,7 +2,7 @@ module Symphonia
2
2
  class AdminConstraint
3
3
 
4
4
  def matches?(request)
5
- return false if (credentials = request.session["symphonia/user_credentials"]).blank?
5
+ return false if (credentials = request.session["symphonia_user_credentials"]).blank?
6
6
 
7
7
  user = User.find_by(persistence_token: credentials.split(':')[0])
8
8
  user&.admin?
@@ -87,7 +87,7 @@ module Symphonia
87
87
  format.json { render json: @entity, status: :created, location: @entity }
88
88
  else
89
89
  format.html { render action: 'new' }
90
- format.json { render status: :unprocessable_entity, json: { errors: @entity.errors } }
90
+ format.json { render status: :unprocessable_content, json: { errors: @entity.errors } }
91
91
  end
92
92
  end
93
93
  end
@@ -100,7 +100,7 @@ module Symphonia
100
100
  format.json { head :no_content }
101
101
  else
102
102
  format.html { render action: 'edit' }
103
- format.json { render status: :unprocessable_entity, json: { errors: @entity.errors } }
103
+ format.json { render status: :unprocessable_content, json: { errors: @entity.errors } }
104
104
  end
105
105
  end
106
106
  end
@@ -1,5 +1,5 @@
1
1
  module Symphonia
2
2
 
3
- VERSION = "6.1.1"
3
+ VERSION = "6.1.2"
4
4
 
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: symphonia
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.1.1
4
+ version: 6.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lukas Pokorny
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-12-23 00:00:00.000000000 Z
11
+ date: 2026-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: api-pagination