tb_core 1.4.beta2 → 1.4.0.1
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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94d2db866f51de6c90377e7b45b255deb84e1c2e
|
4
|
+
data.tar.gz: 281c43074a1a1de7098a84e5bbd3ba5cc71239e6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ae37cc5ceeefdd1a0001af643b2059e56cb3b82dbd968ab5708c3990fbc57b0fbbae0a088d537fea50fd9fd413f4b0622ac8d3430023a824e5532543b40acd10
|
7
|
+
data.tar.gz: e863b1df22a455f397d6d586c86b7a6dddbe1149a2b1db802cc52c9849f27273373cb4ae06fc9c0b754262448d7e001bc079b7a5b2b1f45f05abfa4c2f446618
|
@@ -95,20 +95,24 @@ class Spud::SpudUserModel < ActiveRecord::Base
|
|
95
95
|
|
96
96
|
# Returns an ActiveRecord::Relation performing a LIKE query against name columns
|
97
97
|
def self.where_name_like(string)
|
98
|
-
|
99
|
-
|
98
|
+
full_name = Arel::Nodes::NamedFunction.new(
|
99
|
+
'concat',
|
100
|
+
[arel_table[:first_name], Arel::Nodes.build_quoted(' '), arel_table[:last_name]]
|
101
|
+
)
|
102
|
+
search = '%' + string + '%'
|
103
|
+
where(full_name.matches(search))
|
100
104
|
end
|
101
105
|
|
102
106
|
# Return an array of users who have the requested permission
|
103
107
|
#
|
104
108
|
# * tag - Desired permission tag string (required)
|
105
109
|
# * include_supers - Whether to include super user (default: true)
|
106
|
-
def self.with_permission(tag, include_supers:true)
|
110
|
+
def self.with_permission(tag, include_supers: true)
|
107
111
|
role_ids = SpudRolePermission.where(spud_permission_tag: tag).pluck(:spud_role_id).uniq()
|
108
112
|
if include_supers
|
109
|
-
|
113
|
+
where(super_admin: true).or(where(spud_role_id: role_ids))
|
110
114
|
else
|
111
|
-
|
115
|
+
where(spud_role_id: role_ids)
|
112
116
|
end
|
113
117
|
end
|
114
118
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<h1>Hello <%= @user.full_name %>,</h1>
|
2
2
|
|
3
|
-
<p>A password reset has recently been requested for your user account on <strong><%= Spud::Core.config.site_name %></strong>.
|
3
|
+
<p>A password reset has recently been requested for your user account on <strong><%= Spud::Core.config.site_name %></strong>. Click the link below to set your new password.</p>
|
4
4
|
|
5
5
|
<p><%= link_to @url, @url %></p>
|
6
6
|
|
data/lib/spud_core/version.rb
CHANGED
@@ -2,7 +2,40 @@ require 'rails_helper'
|
|
2
2
|
|
3
3
|
describe SpudUser, type: :model do
|
4
4
|
|
5
|
-
describe '.
|
5
|
+
describe '.where_name_like' do
|
6
|
+
it 'matches on the concatenated first and last name' do
|
7
|
+
2.times { FactoryGirl.create(:spud_user) }
|
8
|
+
user = FactoryGirl.create(:spud_user, first_name: 'Some', last_name: 'User')
|
9
|
+
result = SpudUser.where_name_like('Some User')
|
10
|
+
expect(result.length).to eq(1)
|
11
|
+
expect(result.first).to eq(user)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
describe '.with_permission' do
|
16
|
+
before :each do
|
17
|
+
role = FactoryGirl.create(:spud_role,
|
18
|
+
permission_tags: ['hello']
|
19
|
+
)
|
20
|
+
@super_user = FactoryGirl.create(:spud_user, super_admin: true)
|
21
|
+
@admin_user = FactoryGirl.create(:spud_user, super_admin: false, role: role)
|
22
|
+
@normal_user = FactoryGirl.create(:spud_user, super_admin: false)
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'should include the admin user' do
|
26
|
+
result = SpudUser.with_permission('hello', include_supers: false)
|
27
|
+
expect(result.length).to eq(1)
|
28
|
+
expect(result.first).to eq(@admin_user)
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'should include the admin and the super user' do
|
32
|
+
result = SpudUser.with_permission('hello')
|
33
|
+
expect(result.length).to eq(2)
|
34
|
+
expect(result).to_not include(@normal_user)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
describe '#full_name' do
|
6
39
|
it 'should return the full name if the first and last name are not blank' do
|
7
40
|
u = FactoryGirl.build(:spud_user)
|
8
41
|
expect(u.full_name).to eq("#{u.first_name} #{u.last_name}")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tb_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Greg Woods
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-11-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -485,9 +485,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
485
485
|
version: '2.1'
|
486
486
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
487
487
|
requirements:
|
488
|
-
- - "
|
488
|
+
- - ">="
|
489
489
|
- !ruby/object:Gem::Version
|
490
|
-
version:
|
490
|
+
version: '0'
|
491
491
|
requirements: []
|
492
492
|
rubyforge_project:
|
493
493
|
rubygems_version: 2.5.1
|