ogam 1.0.0 → 1.1.0
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 +4 -4
- data/.gitignore +2 -0
- data/.travis.yml +2 -0
- data/bin/ogam +5 -0
- data/lib/ogam/group.rb +7 -1
- data/lib/ogam/group_assigner.rb +4 -4
- data/lib/ogam/version.rb +1 -1
- data/ogam.gemspec +1 -1
- metadata +4 -5
- data/Gemfile.lock +0 -93
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 01aa2307589a72f9316e069ea9d7980dccc74c52c2cc8deb87d5eea2a71da94f
|
4
|
+
data.tar.gz: fa83f2d5035bceae5b3f9d389f6b4ec9ccc65eb5d40316a0ee13d3b97dea3e94
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8e55ca322c7c97c468a810ead4bd530d034a29151cb0a02b15923fcf658173f331124b26cae58e0271709bae70c6ef6f69e0b35385365e60abb2a87c62aaefdc
|
7
|
+
data.tar.gz: 3e8a1f8844d692da9093da34ac1a28c4bf82182df32ba8406ddcbd381c203490aa07d98ddb10055fef3148072fe1982453d73e08be3f15c4271dceeb8f987cf3
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/bin/ogam
CHANGED
@@ -57,6 +57,11 @@ class CLI < Thor
|
|
57
57
|
Ogam::Execute.single(Ogam::Group.create_shared_mailbox_command(email, name), pretend: options[:pretend])
|
58
58
|
end
|
59
59
|
|
60
|
+
desc('create_exec_mailbox EMAIL NAME', 'Create an Exec mailbox')
|
61
|
+
def create_exec_mailbox(email, name)
|
62
|
+
Ogam::Execute.single(Ogam::Group.create_exec_mailbox_command(email, name), pretend: options[:pretend])
|
63
|
+
end
|
64
|
+
|
60
65
|
option :moderated, type: :boolean, default: false
|
61
66
|
desc('create_group EMAIL NAME [--moderated]', 'Create a distribution list group, optionally moderated')
|
62
67
|
def create_group(email, name)
|
data/lib/ogam/group.rb
CHANGED
@@ -14,7 +14,13 @@ module Ogam
|
|
14
14
|
|
15
15
|
def self.create_shared_mailbox_command(email_address, name)
|
16
16
|
<<~COMMAND
|
17
|
-
gam create group #{email_address} name #{Shellwords.escape(name)} allow_external_members false who_can_join invited_can_join primary_language en-GB who_can_view_membership all_in_domain_can_view include_in_global_address_list true is_archived true members_can_post_as_the_group
|
17
|
+
gam create group #{email_address} name #{Shellwords.escape(name)} allow_external_members false who_can_join invited_can_join primary_language en-GB who_can_view_membership all_in_domain_can_view include_in_global_address_list true is_archived true members_can_post_as_the_group true allow_web_posting true send_message_deny_notification false reply_to reply_to_ignore message_moderation_level moderate_none who_can_contact_owner all_in_domain_can_contact who_can_leave_group all_members_can_leave who_can_add all_managers_can_add who_can_post_message anyone_can_post who_can_invite all_managers_can_invite who_can_view_group all_members_can_view show_in_group_directory false archive_only false spam_moderation_level moderate enable_collaborative_inbox true who_can_assist_content all_members
|
18
|
+
COMMAND
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.create_exec_mailbox_command(email_address, name)
|
22
|
+
<<~COMMAND
|
23
|
+
gam create group #{email_address} name #{Shellwords.escape(name)} allow_external_members false who_can_join invited_can_join primary_language en-GB who_can_view_membership all_in_domain_can_view include_in_global_address_list true is_archived true members_can_post_as_the_group true allow_web_posting true send_message_deny_notification false reply_to reply_to_ignore message_moderation_level moderate_none who_can_contact_owner all_members_can_contact who_can_leave_group none_can_leave who_can_add all_managers_can_add who_can_post_message anyone_can_post who_can_invite all_managers_can_invite who_can_view_group all_members_can_view show_in_group_directory false archive_only false spam_moderation_level moderate include_in_global_address_list true who_can_discover_group all_members_can_discover enable_collaborative_inbox true who_can_assist_content all_members
|
18
24
|
COMMAND
|
19
25
|
end
|
20
26
|
|
data/lib/ogam/group_assigner.rb
CHANGED
@@ -9,8 +9,8 @@ module Ogam
|
|
9
9
|
SUBJECT_MAPPING = {
|
10
10
|
'art-teachers' => ['Art'],
|
11
11
|
'business-teachers' => ['Business Studies'],
|
12
|
-
'dance-teachers' => ['Performing Arts'],
|
13
|
-
'design-technology-teachers' => [
|
12
|
+
'dance-teachers' => ['Dance', 'Performing Arts'],
|
13
|
+
'design-technology-teachers' => %w[Technology Engineering],
|
14
14
|
'drama-teachers' => ['Drama', 'Music & Drama', 'Performing Arts'],
|
15
15
|
'english-teachers' => ['English'],
|
16
16
|
'epq-teachers' => [],
|
@@ -24,7 +24,7 @@ module Ogam
|
|
24
24
|
'mfl-teachers' => ['MFL'],
|
25
25
|
'music-teachers' => ['Music', 'Music & Drama'],
|
26
26
|
'pe-teachers' => ['PE'],
|
27
|
-
're-life-teachers' => ['Humanities'],
|
27
|
+
're-life-teachers' => ['Humanities', 'Religious Studies'],
|
28
28
|
'science-teachers' => ['Science'],
|
29
29
|
'social-sciences-teachers' => ['Social Sciences']
|
30
30
|
}.freeze
|
@@ -75,7 +75,7 @@ module Ogam
|
|
75
75
|
SUBJECT_MAPPING.each do |group_prefix, subject_words|
|
76
76
|
has_subject =
|
77
77
|
subject_words.any? do |subject|
|
78
|
-
SUBJECT_TEACHER_TITLES.any? { |title| job_title.
|
78
|
+
SUBJECT_TEACHER_TITLES.any? { |title| job_title.include? "#{title}#{subject}" }
|
79
79
|
end
|
80
80
|
next unless has_subject
|
81
81
|
|
data/lib/ogam/version.rb
CHANGED
data/ogam.gemspec
CHANGED
@@ -34,5 +34,5 @@ Gem::Specification.new do |spec|
|
|
34
34
|
spec.add_development_dependency 'rake', '~> 13.0'
|
35
35
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
36
36
|
spec.add_development_dependency 'rubocop-ogat', '~> 1.47.0'
|
37
|
-
spec.add_development_dependency 'simplecov', '~> 0.
|
37
|
+
spec.add_development_dependency 'simplecov', '~> 0.18.4'
|
38
38
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ogam
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elliot Bowes
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-02-
|
11
|
+
date: 2020-02-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -114,14 +114,14 @@ dependencies:
|
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 0.
|
117
|
+
version: 0.18.4
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 0.
|
124
|
+
version: 0.18.4
|
125
125
|
description:
|
126
126
|
email:
|
127
127
|
- e.bowes@outwood.com
|
@@ -138,7 +138,6 @@ files:
|
|
138
138
|
- ".ruby-version"
|
139
139
|
- ".travis.yml"
|
140
140
|
- Gemfile
|
141
|
-
- Gemfile.lock
|
142
141
|
- README.md
|
143
142
|
- Rakefile
|
144
143
|
- bin/console
|
data/Gemfile.lock
DELETED
@@ -1,93 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
ogam (1.0.0)
|
5
|
-
activesupport (~> 6.0.2)
|
6
|
-
attr_extras (~> 6.2.3)
|
7
|
-
thor (~> 1.0.1)
|
8
|
-
|
9
|
-
GEM
|
10
|
-
remote: https://rubygems.org/
|
11
|
-
specs:
|
12
|
-
activesupport (6.0.2.1)
|
13
|
-
concurrent-ruby (~> 1.0, >= 1.0.2)
|
14
|
-
i18n (>= 0.7, < 2)
|
15
|
-
minitest (~> 5.1)
|
16
|
-
tzinfo (~> 1.1)
|
17
|
-
zeitwerk (~> 2.2)
|
18
|
-
ast (2.4.0)
|
19
|
-
attr_extras (6.2.3)
|
20
|
-
concurrent-ruby (1.1.6)
|
21
|
-
diff-lcs (1.3)
|
22
|
-
docile (1.3.2)
|
23
|
-
i18n (1.8.2)
|
24
|
-
concurrent-ruby (~> 1.0)
|
25
|
-
jaro_winkler (1.5.4)
|
26
|
-
json (2.3.0)
|
27
|
-
minitest (5.14.0)
|
28
|
-
parallel (1.19.1)
|
29
|
-
parser (2.7.0.2)
|
30
|
-
ast (~> 2.4.0)
|
31
|
-
rack (2.2.2)
|
32
|
-
rainbow (3.0.0)
|
33
|
-
rake (13.0.1)
|
34
|
-
rexml (3.2.4)
|
35
|
-
rspec (3.9.0)
|
36
|
-
rspec-core (~> 3.9.0)
|
37
|
-
rspec-expectations (~> 3.9.0)
|
38
|
-
rspec-mocks (~> 3.9.0)
|
39
|
-
rspec-core (3.9.1)
|
40
|
-
rspec-support (~> 3.9.1)
|
41
|
-
rspec-expectations (3.9.0)
|
42
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
43
|
-
rspec-support (~> 3.9.0)
|
44
|
-
rspec-mocks (3.9.1)
|
45
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
46
|
-
rspec-support (~> 3.9.0)
|
47
|
-
rspec-support (3.9.2)
|
48
|
-
rubocop (0.80.0)
|
49
|
-
jaro_winkler (~> 1.5.1)
|
50
|
-
parallel (~> 1.10)
|
51
|
-
parser (>= 2.7.0.1)
|
52
|
-
rainbow (>= 2.2.2, < 4.0)
|
53
|
-
rexml
|
54
|
-
ruby-progressbar (~> 1.7)
|
55
|
-
unicode-display_width (>= 1.4.0, < 1.7)
|
56
|
-
rubocop-ogat (1.47.0)
|
57
|
-
rubocop (= 0.80.0)
|
58
|
-
rubocop-performance (= 1.5.2)
|
59
|
-
rubocop-rails (= 2.4.2)
|
60
|
-
rubocop-rspec (= 1.38.1)
|
61
|
-
rubocop-performance (1.5.2)
|
62
|
-
rubocop (>= 0.71.0)
|
63
|
-
rubocop-rails (2.4.2)
|
64
|
-
rack (>= 1.1)
|
65
|
-
rubocop (>= 0.72.0)
|
66
|
-
rubocop-rspec (1.38.1)
|
67
|
-
rubocop (>= 0.68.1)
|
68
|
-
ruby-progressbar (1.10.1)
|
69
|
-
simplecov (0.17.1)
|
70
|
-
docile (~> 1.1)
|
71
|
-
json (>= 1.8, < 3)
|
72
|
-
simplecov-html (~> 0.10.0)
|
73
|
-
simplecov-html (0.10.2)
|
74
|
-
thor (1.0.1)
|
75
|
-
thread_safe (0.3.6)
|
76
|
-
tzinfo (1.2.6)
|
77
|
-
thread_safe (~> 0.1)
|
78
|
-
unicode-display_width (1.6.1)
|
79
|
-
zeitwerk (2.2.2)
|
80
|
-
|
81
|
-
PLATFORMS
|
82
|
-
ruby
|
83
|
-
|
84
|
-
DEPENDENCIES
|
85
|
-
bundler (~> 2.1)
|
86
|
-
ogam!
|
87
|
-
rake (~> 13.0)
|
88
|
-
rspec (~> 3.0)
|
89
|
-
rubocop-ogat (~> 1.47.0)
|
90
|
-
simplecov (~> 0.17.1)
|
91
|
-
|
92
|
-
BUNDLED WITH
|
93
|
-
2.1.4
|