Class: Nextcloud::Ocs::User::Group
- Inherits:
-
Nextcloud::Ocs::User
- Object
- Api
- Nextcloud::OcsApi
- Nextcloud::Ocs::User
- Nextcloud::Ocs::User::Group
- Includes:
- Helpers
- Defined in:
- lib/nextcloud/ocs/user.rb
Overview
Class covering User group operations
Instance Attribute Summary collapse
-
#groupid ⇒ String?
Group identifier.
-
#meta ⇒ Hash
Information about API response.
-
#userid ⇒ Object
Returns the value of attribute userid.
Instance Method Summary collapse
-
#create(groupid) ⇒ Object
Add an user to a group.
-
#demote ⇒ Object
Remove an user from group subadmins.
-
#destroy(groupid) ⇒ Object
Remove user from a group.
-
#initialize(api, userid, groupid = nil) ⇒ Group
constructor
Initializes an User Group instance.
-
#promote ⇒ Object
Make an user subadmin of a group.
Methods included from Helpers
#add_meta, #doc_to_hash, #get_meta, #has_dav_errors, #parse_dav_response, #parse_with_meta, #path_from_href
Methods inherited from Nextcloud::Ocs::User
#all, #disable, #enable, #find, #group, #groups, #resend_welcome, #set, #subadmin_groups, #update
Methods inherited from Nextcloud::OcsApi
#app, #file_sharing, #group, #user
Methods inherited from Api
Constructor Details
#initialize(api, userid, groupid = nil) ⇒ Group
Initializes an User Group instance
151 152 153 154 155 |
# File 'lib/nextcloud/ocs/user.rb', line 151 def initialize(api, userid, groupid = nil) @api = api @userid = userid @groupid = groupid if groupid end |
Instance Attribute Details
#groupid ⇒ String?
Returns Group identifier.
141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 |
# File 'lib/nextcloud/ocs/user.rb', line 141 class Group < User include Helpers attr_accessor :userid, :groupid, :meta # Initializes an User Group instance # # @param api [Object] Api instance # @param userid [String] User identifier # @param groupid [String,nil] Group identifier def initialize(api, userid, groupid = nil) @api = api @userid = userid @groupid = groupid if groupid end # Add an user to a group # # @param groupid [String] Group to add user to # @return [Object] Instance with meta information def create(groupid) response = @api.request(:post, "users/#{@userid}/groups", groupid: groupid) (@meta = (response)) && self end # Remove user from a group # # @param groupid [String] Group to remove user from # @return [Object] Instance with meta information def destroy(groupid) response = @api.request(:delete, "users/#{@userid}/groups", groupid: groupid) (@meta = (response)) && self end # Make an user subadmin of a group # # @return [Object] Instance with meta information def promote response = @api.request(:post, "users/#{@userid}/subadmins", groupid: @groupid) (@meta = (response)) && self end # Remove an user from group subadmins # # @return [Object] Instance with meta information def demote response = @api.request(:delete, "users/#{@userid}/subadmins", groupid: @groupid) (@meta = (response)) && self end end |
#meta ⇒ Hash
Returns Information about API response.
141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 |
# File 'lib/nextcloud/ocs/user.rb', line 141 class Group < User include Helpers attr_accessor :userid, :groupid, :meta # Initializes an User Group instance # # @param api [Object] Api instance # @param userid [String] User identifier # @param groupid [String,nil] Group identifier def initialize(api, userid, groupid = nil) @api = api @userid = userid @groupid = groupid if groupid end # Add an user to a group # # @param groupid [String] Group to add user to # @return [Object] Instance with meta information def create(groupid) response = @api.request(:post, "users/#{@userid}/groups", groupid: groupid) (@meta = (response)) && self end # Remove user from a group # # @param groupid [String] Group to remove user from # @return [Object] Instance with meta information def destroy(groupid) response = @api.request(:delete, "users/#{@userid}/groups", groupid: groupid) (@meta = (response)) && self end # Make an user subadmin of a group # # @return [Object] Instance with meta information def promote response = @api.request(:post, "users/#{@userid}/subadmins", groupid: @groupid) (@meta = (response)) && self end # Remove an user from group subadmins # # @return [Object] Instance with meta information def demote response = @api.request(:delete, "users/#{@userid}/subadmins", groupid: @groupid) (@meta = (response)) && self end end |
#userid ⇒ Object
Returns the value of attribute userid.
144 145 146 |
# File 'lib/nextcloud/ocs/user.rb', line 144 def userid @userid end |
Instance Method Details
#create(groupid) ⇒ Object
Add an user to a group
161 162 163 164 |
# File 'lib/nextcloud/ocs/user.rb', line 161 def create(groupid) response = @api.request(:post, "users/#{@userid}/groups", groupid: groupid) (@meta = (response)) && self end |
#demote ⇒ Object
Remove an user from group subadmins
186 187 188 189 |
# File 'lib/nextcloud/ocs/user.rb', line 186 def demote response = @api.request(:delete, "users/#{@userid}/subadmins", groupid: @groupid) (@meta = (response)) && self end |
#destroy(groupid) ⇒ Object
Remove user from a group
170 171 172 173 |
# File 'lib/nextcloud/ocs/user.rb', line 170 def destroy(groupid) response = @api.request(:delete, "users/#{@userid}/groups", groupid: groupid) (@meta = (response)) && self end |
#promote ⇒ Object
Make an user subadmin of a group
178 179 180 181 |
# File 'lib/nextcloud/ocs/user.rb', line 178 def promote response = @api.request(:post, "users/#{@userid}/subadmins", groupid: @groupid) (@meta = (response)) && self end |