sf-onedrive 0.0.2 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 8b8ba64b18ddcc43ff324ce4a74a5451a0d70017
4
- data.tar.gz: 5afbecc6a5fa9bdb0e3fd7535b525ff2dab0c3cc
2
+ SHA256:
3
+ metadata.gz: f0eedfdf5ddae0cc8ad71996674f69efa7592d8559dea7525a1653b9dbd4fd1b
4
+ data.tar.gz: 94bf525bafdb6784209a723eda367799a38e152baed29843bf0ac827b8fdaf3e
5
5
  SHA512:
6
- metadata.gz: 23ad9b6ea9837283c13359e33de5ca46f2a8848ff3d27a41fd37f3a24aa30e5dc19db3b7ea9b8df63b7b1c9d96d0f5528943eb73d1bb62784b06810f62241f88
7
- data.tar.gz: 92bcc6a8ede2711cfc3261b76d92dc4e61939442ab5adf17cd262f891f879954e8626ef7f3dbc3d53f765cb4c8f6adf81c851ace21eab339accdf9befd39ed13
6
+ metadata.gz: becd23c4ee2c564c97941717464f2223b1fe9cc66803d90d5b77f5614c23f6720fc226e2d0ac19abb42efeb107457cb49f286defd9765041c97a65ec1ae166b7
7
+ data.tar.gz: fbf1db2935a879040c0939e2402388f8c0fec7dcd247fb25ad5499399dcb4f9f6cb1bf2d33c4f0fccd7e368c62c96af850855e3c2f62b9b65b96b679861081bb
@@ -86,7 +86,7 @@ module Onedrive
86
86
  user = Onedrive::User.find_by_token(params[:key])
87
87
  if !user
88
88
  puts "Error: Unable to find user"
89
- render :json => {:success => false}
89
+ render :json => {:success => false}, :status => 400
90
90
  return
91
91
  end
92
92
 
@@ -96,27 +96,30 @@ module Onedrive
96
96
  response = refresh_token(user, onedrive_params["refresh_token"])
97
97
  if !response
98
98
  puts "Error: unable to refresh token"
99
- render :json => {:success => false}
99
+ render :json => {:success => false}, :status => 400
100
100
  return
101
101
  end
102
+
103
+ # access token will have changed at this point
104
+ onedrive_params = JSON.parse(user.auth_params)
102
105
  end
103
106
 
104
107
  items = params[:items]
105
108
  auth_params = params[:auth_params]
106
109
 
107
110
  if items && items.length > 0
108
- items.each do |item|
109
- payload = { "items" => [item]}
110
- payload["auth_params"] = auth_params if auth_params != nil
111
- upload_file(onedrive_params["access_token"], "#{item[:content_type]}-#{item[:uuid]}.txt", "#{JSON.pretty_generate(payload.as_json)}")
112
- end
111
+ payload = { "items" => items }
112
+ payload["auth_params"] = auth_params if auth_params != nil
113
+ folder = "#{Time.current.year}/#{DateTime.now.strftime("%B")}"
114
+ filename = "#{DateTime.now.strftime("%B %d, %Y").sub(',', '')}.txt"
115
+ upload_file(onedrive_params["access_token"], "#{folder}/#{filename}", "#{JSON.pretty_generate(payload.as_json)}")
113
116
  end
114
117
 
115
118
  render :json => {:success => true}
116
119
  end
117
120
 
118
121
  def upload_file(access_token, name, body)
119
- url = "https://graph.microsoft.com/v1.0/me/drive/special/approot:/#{name}:/content"
122
+ url = "https://graph.microsoft.com/v1.0/me/drive/special/approot:/#{CGI.escape(name)}:/content"
120
123
  uri = URI.parse(url)
121
124
  http = Net::HTTP.new(uri.host, uri.port)
122
125
  req = Net::HTTP::Put.new(uri.request_uri, {'Authorization' => "Bearer #{access_token}", 'Content-Type' => 'application/json'})
@@ -1,3 +1,3 @@
1
1
  module Onedrive
2
- VERSION = '0.0.2'
2
+ VERSION = '0.0.7'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sf-onedrive
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - "@StandardNotes"
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-09-03 00:00:00.000000000 Z
11
+ date: 2020-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 5.0.1
19
+ version: '5'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 5.0.1
26
+ version: '5'
27
27
  description: OneDrive Extension for Standard File/Standard Notes.
28
28
  email:
29
29
  - mo@standardnotes.org
@@ -74,8 +74,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  requirements: []
77
- rubyforge_project:
78
- rubygems_version: 2.6.12
77
+ rubygems_version: 3.0.3
79
78
  signing_key:
80
79
  specification_version: 4
81
80
  summary: OneDrive Extension for Standard File/Standard Notes.