1
1
# frozen_string_literal: true
2
2
3
- require_dependency ' teambuild_target'
4
- require_dependency ' teambuild_progress_serializer'
3
+ require_dependency " teambuild_target"
4
+ require_dependency " teambuild_progress_serializer"
5
5
6
6
module DiscourseTeambuild
7
7
class TeambuildController < ApplicationController
8
-
9
8
requires_login
10
9
before_action :ensure_can_access
11
10
@@ -19,21 +18,17 @@ def progress
19
18
20
19
completed = [ ]
21
20
22
- progress = {
23
- user : user ,
24
- teambuild_targets : TeambuildTarget . all ,
25
- completed : completed
26
- }
21
+ progress = { user : user , teambuild_targets : TeambuildTarget . all , completed : completed }
27
22
28
- TeambuildTargetUser . where ( user_id : user . id ) . each do | t |
29
- completed << " #{ t . teambuild_target_id } : #{ t . target_user_id } "
30
- end
23
+ TeambuildTargetUser
24
+ . where ( user_id : user . id )
25
+ . each { | t | completed << " #{ t . teambuild_target_id } : #{ t . target_user_id } " }
31
26
32
27
render_serialized (
33
28
progress ,
34
29
TeambuildProgressSerializer ,
35
30
rest_serializer : true ,
36
- include_users : true
31
+ include_users : true ,
37
32
)
38
33
end
39
34
@@ -54,32 +49,37 @@ def scores
54
49
ORDER BY score DESC, u.username
55
50
SQL
56
51
57
- scores = results . map do |r |
58
- r . as_json . tap do |result |
59
- result [ 'trophy' ] = true if r . rank == 1
60
- result [ 'me' ] = r . id == current_user . id
61
- result [ 'avatar_template' ] = User . avatar_template ( r . username_lower , r . uploaded_avatar_id )
62
- result . delete ( 'uploaded_avatar_id' )
52
+ scores =
53
+ results . map do |r |
54
+ r . as_json . tap do |result |
55
+ result [ "trophy" ] = true if r . rank == 1
56
+ result [ "me" ] = r . id == current_user . id
57
+ result [ "avatar_template" ] = User . avatar_template ( r . username_lower , r . uploaded_avatar_id )
58
+ result . delete ( "uploaded_avatar_id" )
59
+ end
63
60
end
64
- end
65
61
66
62
render json : { scores : scores }
67
63
end
68
64
69
65
def complete
70
- TeambuildTargetUser . create! (
71
- user_id : current_user . id ,
72
- teambuild_target_id : params [ :target_id ] . to_i ,
73
- target_user_id : params [ :user_id ] . to_i
74
- ) rescue ActiveRecord ::RecordNotUnique
66
+ begin
67
+ TeambuildTargetUser . create! (
68
+ user_id : current_user . id ,
69
+ teambuild_target_id : params [ :target_id ] . to_i ,
70
+ target_user_id : params [ :user_id ] . to_i ,
71
+ )
72
+ rescue StandardError
73
+ ActiveRecord ::RecordNotUnique
74
+ end
75
75
render json : success_json
76
76
end
77
77
78
78
def undo
79
79
TeambuildTargetUser . where (
80
80
user_id : current_user . id ,
81
81
teambuild_target_id : params [ :target_id ] . to_i ,
82
- target_user_id : params [ :user_id ] . to_i
82
+ target_user_id : params [ :user_id ] . to_i ,
83
83
) . delete_all
84
84
85
85
render json : success_json
0 commit comments