nakamura 0.12 → 0.14
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/nakamura/file.rb +7 -1
- data/lib/nakamura/users.rb +2 -2
- data/lib/nakamura.rb +20 -3
- metadata +7 -7
data/lib/nakamura/file.rb
CHANGED
@@ -53,13 +53,19 @@ module SlingFile
|
|
53
53
|
return @sling.execute_get(path)
|
54
54
|
end
|
55
55
|
|
56
|
-
def manage_members(id, add_viewers, delete_viewers, add_managers, delete_managers)
|
56
|
+
def manage_members(id, add_viewers, delete_viewers, add_managers, delete_managers, add_editors=nil, delete_editors=nil)
|
57
57
|
path = "#{url_for_pooled_file(id)}.members.html"
|
58
58
|
params = {}
|
59
59
|
params[":viewer"] ||= add_viewers
|
60
60
|
params[":viewer@Delete"] ||= delete_viewers
|
61
61
|
params[":manager"] ||= add_managers
|
62
62
|
params[":manager@Delete"] ||= delete_managers
|
63
|
+
if add_editors != nil
|
64
|
+
params[":editor"] ||= add_editors
|
65
|
+
end
|
66
|
+
if delete_editors != nil
|
67
|
+
params[":editor@Delete"] ||= delete_editors
|
68
|
+
end
|
63
69
|
return @sling.execute_post(path, params)
|
64
70
|
end
|
65
71
|
|
data/lib/nakamura/users.rb
CHANGED
@@ -192,7 +192,7 @@ module SlingUsers
|
|
192
192
|
def update_user(sling)
|
193
193
|
data = {}
|
194
194
|
if (!firstName.nil? and !lastName.nil? and !email.nil?)
|
195
|
-
data[":sakai:profile-import"] =
|
195
|
+
data[":sakai:profile-import"] = JSON.generate({'basic' => {'access' => 'everybody', 'elements' => {'email' => {'value' => email}, 'firstName' => {'value' => firstName}, 'lastName' => {'value' => lastName}}}})
|
196
196
|
# data[":sakai:pages-template"] = "/var/templates/site/defaultuser"
|
197
197
|
end
|
198
198
|
|
@@ -294,7 +294,7 @@ module SlingUsers
|
|
294
294
|
}
|
295
295
|
|
296
296
|
if (!user.firstName.nil? and !user.lastName.nil? and !user.email.nil?)
|
297
|
-
data[":sakai:profile-import"] =
|
297
|
+
data[":sakai:profile-import"] = JSON.generate({'basic' => {'access' => 'everybody', 'elements' => {'email' => {'value' => user.email}, 'firstName' => {'value' => user.firstName}, 'lastName' => {'value' => user.lastName}}}})
|
298
298
|
# data[":sakai:pages-template"] = "/var/templates/site/defaultuser"
|
299
299
|
end
|
300
300
|
|
data/lib/nakamura.rb
CHANGED
@@ -183,9 +183,26 @@ module SlingInterface
|
|
183
183
|
return res
|
184
184
|
end
|
185
185
|
|
186
|
-
def delete_file(path)
|
186
|
+
def delete_file(path, query_params=nil)
|
187
|
+
if (query_params != nil)
|
188
|
+
param_string = query_params.collect { |k,v|
|
189
|
+
val = case v
|
190
|
+
when String then
|
191
|
+
v
|
192
|
+
when Numeric then
|
193
|
+
v.to_s
|
194
|
+
else
|
195
|
+
v.to_json
|
196
|
+
end
|
197
|
+
CGI.escape(k) + "=" + CGI.escape(val)
|
198
|
+
}.join("&")
|
199
|
+
path = "#{path}?#{param_string}"
|
200
|
+
end
|
187
201
|
uri = URI.parse(path)
|
188
|
-
|
202
|
+
path = uri.path
|
203
|
+
path = path + "?" + uri.query if uri.query
|
204
|
+
@log.debug("DELETE: #{path} (as '#{@user.name}')")
|
205
|
+
req = Net::HTTP::Delete.new(path)
|
189
206
|
res = sendRequest(uri, req)
|
190
207
|
dump_response(res)
|
191
208
|
return res
|
@@ -281,8 +298,8 @@ module SlingInterface
|
|
281
298
|
|
282
299
|
def do_login()
|
283
300
|
path = url_for("/system/sling/formlogin")
|
284
|
-
req = Net::HTTP::Post.new(path)
|
285
301
|
uri = URI.parse(path)
|
302
|
+
req = Net::HTTP::Post.new(uri.path)
|
286
303
|
req.set_form_data({ "sakaiauth:un" => @user.name, "sakaiauth:pw" => @user.password, "sakaiauth:login" => 1 })
|
287
304
|
res = createHttp(uri).start{ |http| http.request(req) }
|
288
305
|
if ( res.code == "200" )
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nakamura
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.14'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-08-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|
@@ -34,15 +34,15 @@ executables: []
|
|
34
34
|
extensions: []
|
35
35
|
extra_rdoc_files: []
|
36
36
|
files:
|
37
|
-
- lib/nakamura/test.rb
|
38
37
|
- lib/nakamura/authz.rb
|
39
|
-
- lib/nakamura/full_group_creator.rb
|
40
|
-
- lib/nakamura/users.rb
|
41
38
|
- lib/nakamura/contacts.rb
|
39
|
+
- lib/nakamura/file.rb
|
40
|
+
- lib/nakamura/full_group_creator.rb
|
42
41
|
- lib/nakamura/message.rb
|
43
42
|
- lib/nakamura/osgiconf.rb
|
44
43
|
- lib/nakamura/search.rb
|
45
|
-
- lib/nakamura/
|
44
|
+
- lib/nakamura/test.rb
|
45
|
+
- lib/nakamura/users.rb
|
46
46
|
- lib/nakamura.rb
|
47
47
|
homepage: http://sakaiproject.org
|
48
48
|
licenses: []
|
@@ -65,7 +65,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
65
65
|
requirements:
|
66
66
|
- none
|
67
67
|
rubyforge_project:
|
68
|
-
rubygems_version: 1.8.
|
68
|
+
rubygems_version: 1.8.23
|
69
69
|
signing_key:
|
70
70
|
specification_version: 3
|
71
71
|
summary: Ruby library for interacting with Sakai Nakamura.
|