groupdocs 1.5.3 → 1.5.4
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.
- data/.travis.yml +0 -1
- data/README.md +2 -0
- data/examples/api-samples/public/docs/annotation-sample.html +167 -57
- data/examples/api-samples/public/docs/docco.css +459 -151
- data/examples/api-samples/public/docs/envelope-sample.html +373 -131
- data/examples/api-samples/public/docs/sample1.html +126 -26
- data/examples/api-samples/public/docs/sample10.html +213 -50
- data/examples/api-samples/public/docs/sample11.html +319 -87
- data/examples/api-samples/public/docs/sample12.html +165 -40
- data/examples/api-samples/public/docs/sample13.html +166 -41
- data/examples/api-samples/public/docs/sample14.html +142 -30
- data/examples/api-samples/public/docs/sample15.html +127 -27
- data/examples/api-samples/public/docs/sample16.html +125 -25
- data/examples/api-samples/public/docs/sample17.html +188 -37
- data/examples/api-samples/public/docs/sample18.html +614 -157
- data/examples/api-samples/public/docs/sample19.html +221 -59
- data/examples/api-samples/public/docs/sample2.html +142 -30
- data/examples/api-samples/public/docs/sample20.html +176 -51
- data/examples/api-samples/public/docs/sample21.html +287 -66
- data/examples/api-samples/public/docs/sample22.html +224 -53
- data/examples/api-samples/public/docs/sample23.html +256 -0
- data/examples/api-samples/public/docs/sample24.html +143 -0
- data/examples/api-samples/public/docs/sample25.html +429 -0
- data/examples/api-samples/public/docs/sample26.html +113 -0
- data/examples/api-samples/public/docs/sample27.html +433 -0
- data/examples/api-samples/public/docs/sample28.html +185 -0
- data/examples/api-samples/public/docs/sample29.html +175 -0
- data/examples/api-samples/public/docs/sample3.html +172 -34
- data/examples/api-samples/public/docs/sample30.html +144 -0
- data/examples/api-samples/public/docs/sample31.html +734 -0
- data/examples/api-samples/public/docs/sample4.html +204 -52
- data/examples/api-samples/public/docs/sample5.html +241 -63
- data/examples/api-samples/public/docs/sample6.html +209 -48
- data/examples/api-samples/public/docs/sample7.html +155 -43
- data/examples/api-samples/public/docs/sample8.html +235 -62
- data/examples/api-samples/public/docs/sample9.html +200 -49
- data/examples/api-samples/public/templates/merge_field1_doc.docx +0 -0
- data/examples/api-samples/public/templates/merge_field2_doc.docx +0 -0
- data/examples/api-samples/samples/sample23.rb +54 -0
- data/examples/api-samples/samples/sample24.rb +30 -0
- data/examples/api-samples/samples/sample25.rb +4 -4
- data/examples/api-samples/samples/sample26.rb +25 -0
- data/examples/api-samples/samples/sample27.rb +100 -0
- data/examples/api-samples/samples/sample28.rb +47 -0
- data/examples/api-samples/samples/sample29.rb +52 -0
- data/examples/api-samples/samples/sample30.rb +39 -0
- data/examples/api-samples/samples/sample31.rb +204 -0
- data/examples/api-samples/samples/sample5.rb +5 -3
- data/examples/api-samples/samples/sample6.rb +2 -0
- data/examples/api-samples/views/_others_samples.haml +12 -0
- data/examples/api-samples/views/index.haml +12 -0
- data/examples/api-samples/views/layout.haml +1 -0
- data/examples/api-samples/views/sample1.haml +3 -2
- data/examples/api-samples/views/sample10.haml +3 -2
- data/examples/api-samples/views/sample11.haml +4 -0
- data/examples/api-samples/views/sample12.haml +4 -0
- data/examples/api-samples/views/sample13.haml +4 -0
- data/examples/api-samples/views/sample14.haml +4 -0
- data/examples/api-samples/views/sample15.haml +4 -0
- data/examples/api-samples/views/sample16.haml +4 -0
- data/examples/api-samples/views/sample17.haml +4 -0
- data/examples/api-samples/views/sample19.haml +4 -0
- data/examples/api-samples/views/sample2.haml +3 -2
- data/examples/api-samples/views/sample20.haml +4 -0
- data/examples/api-samples/views/sample21.haml +4 -0
- data/examples/api-samples/views/sample22.haml +4 -0
- data/examples/api-samples/views/sample23.haml +87 -0
- data/examples/api-samples/views/sample24.haml +44 -0
- data/examples/api-samples/views/sample26.haml +54 -0
- data/examples/api-samples/views/sample27.haml +122 -0
- data/examples/api-samples/views/sample28.haml +47 -0
- data/examples/api-samples/views/sample29.haml +70 -0
- data/examples/api-samples/views/sample3.haml +3 -2
- data/examples/api-samples/views/sample30.haml +46 -0
- data/examples/api-samples/views/sample31.haml +114 -0
- data/examples/api-samples/views/sample4.haml +3 -2
- data/examples/api-samples/views/sample5.haml +3 -2
- data/examples/api-samples/views/sample6.haml +3 -2
- data/examples/api-samples/views/sample7.haml +3 -2
- data/examples/api-samples/views/sample8.haml +3 -2
- data/examples/api-samples/views/sample9.haml +3 -2
- data/examples/viewer/Gemfile +1 -1
- data/groupdocs.gemspec +3 -3
- data/lib/groupdocs/datasource.rb +22 -0
- data/lib/groupdocs/document.rb +493 -43
- data/lib/groupdocs/document/annotation.rb +73 -0
- data/lib/groupdocs/job.rb +82 -1
- data/lib/groupdocs/post.rb +83 -0
- data/lib/groupdocs/questionnaire.rb +41 -0
- data/lib/groupdocs/signature.rb +342 -0
- data/lib/groupdocs/signature/envelope.rb +56 -0
- data/lib/groupdocs/signature/form.rb +47 -5
- data/lib/groupdocs/signature/shared/field_methods.rb +37 -0
- data/lib/groupdocs/storage/file.rb +83 -0
- data/lib/groupdocs/subscription.rb +218 -0
- data/lib/groupdocs/user.rb +422 -1
- data/lib/groupdocs/version.rb +1 -1
- data/spec/groupdocs/job_spec.rb +4 -5
- data/spec/groupdocs/user_spec.rb +157 -0
- data/spec/support/json/annotation_resize.json +11 -0
- data/spec/support/json/annotation_text_color.json +10 -0
- data/spec/support/json/annotation_text_info.json +11 -0
- data/spec/support/json/document_content_get.json +8 -0
- data/spec/support/json/document_edit_lock_get.json +10 -0
- data/spec/support/json/document_editlock_remove.json +8 -0
- data/spec/support/json/document_page_html_urls_get.json +14 -0
- data/spec/support/json/document_password_set.json +19 -0
- data/spec/support/json/document_representations.json +25 -0
- data/spec/support/json/document_shared_documents_get.json +32 -0
- data/spec/support/json/document_tags_get.json +9 -0
- data/spec/support/json/document_tags_remove.json +8 -0
- data/spec/support/json/document_tags_set.json +8 -0
- data/spec/support/json/document_user_status_set.json +12 -0
- data/spec/support/json/job_documents.json +103 -35
- data/spec/support/json/job_xml_get.json +30 -0
- data/spec/support/json/jobs_documents.json +40 -0
- data/spec/support/json/user_get_profile.json +73 -0
- metadata +49 -177
@@ -0,0 +1,185 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<title>sample28.rb</title>
|
6
|
+
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
7
|
+
<meta name="viewport" content="width=device-width, target-densitydpi=160dpi, initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">
|
8
|
+
<link rel="stylesheet" media="all" href="docco.css" />
|
9
|
+
</head>
|
10
|
+
<body>
|
11
|
+
<div id="container">
|
12
|
+
<div id="background"></div>
|
13
|
+
|
14
|
+
<ul class="sections">
|
15
|
+
|
16
|
+
<li id="title">
|
17
|
+
<div class="annotation">
|
18
|
+
<h1>sample28.rb</h1>
|
19
|
+
</div>
|
20
|
+
</li>
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
<li id="section-1">
|
25
|
+
<div class="annotation">
|
26
|
+
|
27
|
+
<div class="pilwrap ">
|
28
|
+
<a class="pilcrow" href="#section-1">¶</a>
|
29
|
+
</div>
|
30
|
+
<p>GET request</p>
|
31
|
+
|
32
|
+
</div>
|
33
|
+
|
34
|
+
<div class="content"><div class='highlight'><pre>get <span class="string">'/sample28'</span> <span class="keyword">do</span>
|
35
|
+
haml <span class="symbol">:sample28</span>
|
36
|
+
<span class="keyword">end</span></pre></div></div>
|
37
|
+
|
38
|
+
</li>
|
39
|
+
|
40
|
+
|
41
|
+
<li id="section-2">
|
42
|
+
<div class="annotation">
|
43
|
+
|
44
|
+
<div class="pilwrap ">
|
45
|
+
<a class="pilcrow" href="#section-2">¶</a>
|
46
|
+
</div>
|
47
|
+
<p>POST request</p>
|
48
|
+
|
49
|
+
</div>
|
50
|
+
|
51
|
+
<div class="content"><div class='highlight'><pre>post <span class="string">'/sample28'</span> <span class="keyword">do</span></pre></div></div>
|
52
|
+
|
53
|
+
</li>
|
54
|
+
|
55
|
+
|
56
|
+
<li id="section-3">
|
57
|
+
<div class="annotation">
|
58
|
+
|
59
|
+
<div class="pilwrap ">
|
60
|
+
<a class="pilcrow" href="#section-3">¶</a>
|
61
|
+
</div>
|
62
|
+
<p>set variables</p>
|
63
|
+
|
64
|
+
</div>
|
65
|
+
|
66
|
+
<div class="content"><div class='highlight'><pre> set <span class="symbol">:client_id</span>, params[<span class="symbol">:client_id</span>]
|
67
|
+
set <span class="symbol">:private_key</span>, params[<span class="symbol">:private_key</span>]
|
68
|
+
set <span class="symbol">:file_id</span>, params[<span class="symbol">:fileId</span>]
|
69
|
+
|
70
|
+
<span class="keyword">begin</span></pre></div></div>
|
71
|
+
|
72
|
+
</li>
|
73
|
+
|
74
|
+
|
75
|
+
<li id="section-4">
|
76
|
+
<div class="annotation">
|
77
|
+
|
78
|
+
<div class="pilwrap ">
|
79
|
+
<a class="pilcrow" href="#section-4">¶</a>
|
80
|
+
</div>
|
81
|
+
<p>check required variables</p>
|
82
|
+
|
83
|
+
</div>
|
84
|
+
|
85
|
+
<div class="content"><div class='highlight'><pre> raise <span class="string">'Please enter all required parameters'</span> <span class="keyword">if</span> settings.client_id.empty? <span class="keyword">or</span> settings.private_key.empty? <span class="keyword">or</span> settings.file_id.empty?</pre></div></div>
|
86
|
+
|
87
|
+
</li>
|
88
|
+
|
89
|
+
|
90
|
+
<li id="section-5">
|
91
|
+
<div class="annotation">
|
92
|
+
|
93
|
+
<div class="pilwrap ">
|
94
|
+
<a class="pilcrow" href="#section-5">¶</a>
|
95
|
+
</div>
|
96
|
+
<p>make a request to API using client_id and private_key</p>
|
97
|
+
|
98
|
+
</div>
|
99
|
+
|
100
|
+
<div class="content"><div class='highlight'><pre> files_list = <span class="constant">GroupDocs::Storage::Folder</span>.list!(<span class="string">'/'</span>, {}, {<span class="symbol">:client_id</span> => settings.client_id, <span class="symbol">:private_key</span> => settings.private_key})
|
101
|
+
document = <span class="string">''</span></pre></div></div>
|
102
|
+
|
103
|
+
</li>
|
104
|
+
|
105
|
+
|
106
|
+
<li id="section-6">
|
107
|
+
<div class="annotation">
|
108
|
+
|
109
|
+
<div class="pilwrap ">
|
110
|
+
<a class="pilcrow" href="#section-6">¶</a>
|
111
|
+
</div>
|
112
|
+
<p>get document by file ID</p>
|
113
|
+
|
114
|
+
</div>
|
115
|
+
|
116
|
+
<div class="content"><div class='highlight'><pre> files_list.each <span class="keyword">do</span> |element|
|
117
|
+
<span class="keyword">if</span> element.respond_to?(<span class="string">'guid'</span>) == <span class="keyword">true</span> <span class="keyword">and</span> element.guid == settings.file_id
|
118
|
+
document = element
|
119
|
+
<span class="keyword">end</span>
|
120
|
+
<span class="keyword">end</span>
|
121
|
+
|
122
|
+
|
123
|
+
<span class="keyword">unless</span> document.instance_of? <span class="constant">String</span></pre></div></div>
|
124
|
+
|
125
|
+
</li>
|
126
|
+
|
127
|
+
|
128
|
+
<li id="section-7">
|
129
|
+
<div class="annotation">
|
130
|
+
|
131
|
+
<div class="pilwrap ">
|
132
|
+
<a class="pilcrow" href="#section-7">¶</a>
|
133
|
+
</div>
|
134
|
+
<p>get list of annotations</p>
|
135
|
+
|
136
|
+
</div>
|
137
|
+
|
138
|
+
<div class="content"><div class='highlight'><pre> annotations = document.to_document.annotations!(<span class="symbol">:client_id</span> => settings.client_id, <span class="symbol">:private_key</span> => settings.private_key)</pre></div></div>
|
139
|
+
|
140
|
+
</li>
|
141
|
+
|
142
|
+
|
143
|
+
<li id="section-8">
|
144
|
+
<div class="annotation">
|
145
|
+
|
146
|
+
<div class="pilwrap ">
|
147
|
+
<a class="pilcrow" href="#section-8">¶</a>
|
148
|
+
</div>
|
149
|
+
<p>delete all annotations from document</p>
|
150
|
+
|
151
|
+
</div>
|
152
|
+
|
153
|
+
<div class="content"><div class='highlight'><pre> annotations.each <span class="keyword">do</span> |annotation|
|
154
|
+
annotation.remove!(<span class="symbol">:client_id</span> => settings.client_id, <span class="symbol">:private_key</span> => settings.private_key)
|
155
|
+
<span class="keyword">end</span>
|
156
|
+
|
157
|
+
message = <span class="string">'Annotations was deleted from document'</span>
|
158
|
+
<span class="keyword">end</span>
|
159
|
+
|
160
|
+
<span class="keyword">rescue</span> <span class="constant">Exception</span> => e
|
161
|
+
err = e.message
|
162
|
+
<span class="keyword">end</span></pre></div></div>
|
163
|
+
|
164
|
+
</li>
|
165
|
+
|
166
|
+
|
167
|
+
<li id="section-9">
|
168
|
+
<div class="annotation">
|
169
|
+
|
170
|
+
<div class="pilwrap ">
|
171
|
+
<a class="pilcrow" href="#section-9">¶</a>
|
172
|
+
</div>
|
173
|
+
<p>set variables for template</p>
|
174
|
+
|
175
|
+
</div>
|
176
|
+
|
177
|
+
<div class="content"><div class='highlight'><pre> haml <span class="symbol">:sample28</span>, <span class="symbol">:locals</span> => {<span class="symbol">:userId</span> => settings.client_id, <span class="symbol">:privateKey</span> => settings.private_key, <span class="symbol">:messages</span> => message, <span class="symbol">:fileId</span> => settings.file_id, <span class="symbol">:err</span> => err}
|
178
|
+
<span class="keyword">end</span></pre></div></div>
|
179
|
+
|
180
|
+
</li>
|
181
|
+
|
182
|
+
</ul>
|
183
|
+
</div>
|
184
|
+
</body>
|
185
|
+
</html>
|
@@ -0,0 +1,175 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<title>sample29.rb</title>
|
6
|
+
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
7
|
+
<meta name="viewport" content="width=device-width, target-densitydpi=160dpi, initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">
|
8
|
+
<link rel="stylesheet" media="all" href="docco.css" />
|
9
|
+
</head>
|
10
|
+
<body>
|
11
|
+
<div id="container">
|
12
|
+
<div id="background"></div>
|
13
|
+
|
14
|
+
<ul class="sections">
|
15
|
+
|
16
|
+
<li id="title">
|
17
|
+
<div class="annotation">
|
18
|
+
<h1>sample29.rb</h1>
|
19
|
+
</div>
|
20
|
+
</li>
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
<li id="section-1">
|
25
|
+
<div class="annotation">
|
26
|
+
|
27
|
+
<div class="pilwrap ">
|
28
|
+
<a class="pilcrow" href="#section-1">¶</a>
|
29
|
+
</div>
|
30
|
+
|
31
|
+
</div>
|
32
|
+
|
33
|
+
<div class="content"><div class='highlight'><pre>get <span class="string">'/sample29'</span> <span class="keyword">do</span>
|
34
|
+
haml <span class="symbol">:sample29</span>
|
35
|
+
<span class="keyword">end</span></pre></div></div>
|
36
|
+
|
37
|
+
</li>
|
38
|
+
|
39
|
+
|
40
|
+
<li id="section-2">
|
41
|
+
<div class="annotation">
|
42
|
+
|
43
|
+
<div class="pilwrap ">
|
44
|
+
<a class="pilcrow" href="#section-2">¶</a>
|
45
|
+
</div>
|
46
|
+
<p>POST request</p>
|
47
|
+
|
48
|
+
</div>
|
49
|
+
|
50
|
+
<div class="content"><div class='highlight'><pre>post <span class="string">'/sample29'</span> <span class="keyword">do</span></pre></div></div>
|
51
|
+
|
52
|
+
</li>
|
53
|
+
|
54
|
+
|
55
|
+
<li id="section-3">
|
56
|
+
<div class="annotation">
|
57
|
+
|
58
|
+
<div class="pilwrap ">
|
59
|
+
<a class="pilcrow" href="#section-3">¶</a>
|
60
|
+
</div>
|
61
|
+
<p>set variables</p>
|
62
|
+
|
63
|
+
</div>
|
64
|
+
|
65
|
+
<div class="content"><div class='highlight'><pre> set <span class="symbol">:client_id</span>, params[<span class="symbol">:clientId</span>]
|
66
|
+
set <span class="symbol">:base_path</span>, params[<span class="symbol">:basePath</span>]
|
67
|
+
set <span class="symbol">:url</span>, params[<span class="symbol">:url</span>]
|
68
|
+
|
69
|
+
url = settings.url
|
70
|
+
base_path = settings.base_path
|
71
|
+
client_id = settings.client_id
|
72
|
+
|
73
|
+
<span class="keyword">begin</span></pre></div></div>
|
74
|
+
|
75
|
+
</li>
|
76
|
+
|
77
|
+
|
78
|
+
<li id="section-4">
|
79
|
+
<div class="annotation">
|
80
|
+
|
81
|
+
<div class="pilwrap ">
|
82
|
+
<a class="pilcrow" href="#section-4">¶</a>
|
83
|
+
</div>
|
84
|
+
<p>If base base is empty seting base path to prod server</p>
|
85
|
+
|
86
|
+
</div>
|
87
|
+
|
88
|
+
<div class="content"><div class='highlight'><pre> base_path = <span class="string">'https://api.groupdocs.com/v2.0'</span> <span class="keyword">unless</span> !base_path.empty?</pre></div></div>
|
89
|
+
|
90
|
+
</li>
|
91
|
+
|
92
|
+
|
93
|
+
<li id="section-5">
|
94
|
+
<div class="annotation">
|
95
|
+
|
96
|
+
<div class="pilwrap ">
|
97
|
+
<a class="pilcrow" href="#section-5">¶</a>
|
98
|
+
</div>
|
99
|
+
<p>Generate iframe url for chosen server</p>
|
100
|
+
|
101
|
+
</div>
|
102
|
+
|
103
|
+
<div class="content"><div class='highlight'><pre> <span class="keyword">if</span> (!url.empty?)
|
104
|
+
|
105
|
+
<span class="keyword">if</span> (base_path == <span class="string">"https://api.groupdocs.com/v2.0"</span>)
|
106
|
+
iframe = <span class="string">"https://apps.groupdocs.com/document-viewer/embed?url=<span class="subst">#{url}</span> + '&user_id=<span class="subst">#{client_id}</span>"</span>
|
107
|
+
<span class="keyword">elsif</span> (base_path == <span class="string">"https://dev-api.groupdocs.com/v2.0"</span>)</pre></div></div>
|
108
|
+
|
109
|
+
</li>
|
110
|
+
|
111
|
+
|
112
|
+
<li id="section-6">
|
113
|
+
<div class="annotation">
|
114
|
+
|
115
|
+
<div class="pilwrap ">
|
116
|
+
<a class="pilcrow" href="#section-6">¶</a>
|
117
|
+
</div>
|
118
|
+
<p>iframe to dev server</p>
|
119
|
+
|
120
|
+
</div>
|
121
|
+
|
122
|
+
<div class="content"><div class='highlight'><pre> iframe = <span class="string">"https://dev-apps.groupdocs.com/document-viewer/embed?url=<span class="subst">#{url}</span> + '&user_id=<span class="subst">#{client_id}</span>"</span>
|
123
|
+
<span class="keyword">elsif</span> (base_path == <span class="string">"https://stage-api.groupdocs.com/v2.0"</span>)</pre></div></div>
|
124
|
+
|
125
|
+
</li>
|
126
|
+
|
127
|
+
|
128
|
+
<li id="section-7">
|
129
|
+
<div class="annotation">
|
130
|
+
|
131
|
+
<div class="pilwrap ">
|
132
|
+
<a class="pilcrow" href="#section-7">¶</a>
|
133
|
+
</div>
|
134
|
+
<p>iframe to test server</p>
|
135
|
+
|
136
|
+
</div>
|
137
|
+
|
138
|
+
<div class="content"><div class='highlight'><pre> iframe = <span class="string">"https://stage-apps.groupdocs.com/document-viewer/embed?url=<span class="subst">#{url}</span> + '&user_id=<span class="subst">#{client_id}</span>"</span>
|
139
|
+
<span class="keyword">elsif</span> (base_path == <span class="string">"http://realtime-api.groupdocs.com"</span>)
|
140
|
+
iframe = <span class="string">"http://realtime-apps.groupdocs.com/document-viewer/embed?url=<span class="subst">#{url}</span> + '&user_id=<span class="subst">#{client_id}</span>"</span>
|
141
|
+
<span class="keyword">end</span>
|
142
|
+
|
143
|
+
|
144
|
+
<span class="keyword">end</span>
|
145
|
+
|
146
|
+
<span class="keyword">rescue</span> <span class="constant">Exception</span> => e
|
147
|
+
err = e.message
|
148
|
+
<span class="keyword">end</span>
|
149
|
+
|
150
|
+
<span class="keyword">require</span> <span class="string">'json'</span>
|
151
|
+
content_type <span class="string">'text/html'</span></pre></div></div>
|
152
|
+
|
153
|
+
</li>
|
154
|
+
|
155
|
+
|
156
|
+
<li id="section-8">
|
157
|
+
<div class="annotation">
|
158
|
+
|
159
|
+
<div class="pilwrap ">
|
160
|
+
<a class="pilcrow" href="#section-8">¶</a>
|
161
|
+
</div>
|
162
|
+
<p>Create json string with result data</p>
|
163
|
+
|
164
|
+
</div>
|
165
|
+
|
166
|
+
<div class="content"><div class='highlight'><pre> iframe = {<span class="symbol">:iframe</span> => iframe, <span class="symbol">:error</span> => <span class="string">''</span>}.to_json
|
167
|
+
|
168
|
+
<span class="keyword">end</span></pre></div></div>
|
169
|
+
|
170
|
+
</li>
|
171
|
+
|
172
|
+
</ul>
|
173
|
+
</div>
|
174
|
+
</body>
|
175
|
+
</html>
|
@@ -1,34 +1,172 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
|
3
|
-
<
|
4
|
-
|
5
|
-
|
6
|
-
<
|
7
|
-
|
8
|
-
<
|
9
|
-
|
10
|
-
|
11
|
-
<
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<title>sample3.rb</title>
|
6
|
+
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
7
|
+
<meta name="viewport" content="width=device-width, target-densitydpi=160dpi, initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">
|
8
|
+
<link rel="stylesheet" media="all" href="docco.css" />
|
9
|
+
</head>
|
10
|
+
<body>
|
11
|
+
<div id="container">
|
12
|
+
<div id="background"></div>
|
13
|
+
|
14
|
+
<ul class="sections">
|
15
|
+
|
16
|
+
<li id="title">
|
17
|
+
<div class="annotation">
|
18
|
+
<h1>sample3.rb</h1>
|
19
|
+
</div>
|
20
|
+
</li>
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
<li id="section-1">
|
25
|
+
<div class="annotation">
|
26
|
+
|
27
|
+
<div class="pilwrap ">
|
28
|
+
<a class="pilcrow" href="#section-1">¶</a>
|
29
|
+
</div>
|
30
|
+
<p>GET request</p>
|
31
|
+
|
32
|
+
</div>
|
33
|
+
|
34
|
+
<div class="content"><div class='highlight'><pre>get <span class="string">'/sample3'</span> <span class="keyword">do</span>
|
35
|
+
haml <span class="symbol">:sample3</span>
|
36
|
+
<span class="keyword">end</span></pre></div></div>
|
37
|
+
|
38
|
+
</li>
|
39
|
+
|
40
|
+
|
41
|
+
<li id="section-2">
|
42
|
+
<div class="annotation">
|
43
|
+
|
44
|
+
<div class="pilwrap ">
|
45
|
+
<a class="pilcrow" href="#section-2">¶</a>
|
46
|
+
</div>
|
47
|
+
<p>POST request</p>
|
48
|
+
|
49
|
+
</div>
|
50
|
+
|
51
|
+
<div class="content"><div class='highlight'><pre>post <span class="string">'/sample3'</span> <span class="keyword">do</span></pre></div></div>
|
52
|
+
|
53
|
+
</li>
|
54
|
+
|
55
|
+
|
56
|
+
<li id="section-3">
|
57
|
+
<div class="annotation">
|
58
|
+
|
59
|
+
<div class="pilwrap ">
|
60
|
+
<a class="pilcrow" href="#section-3">¶</a>
|
61
|
+
</div>
|
62
|
+
<p>set variables</p>
|
63
|
+
|
64
|
+
</div>
|
65
|
+
|
66
|
+
<div class="content"><div class='highlight'><pre> set <span class="symbol">:client_id</span>, params[<span class="symbol">:client_id</span>]
|
67
|
+
set <span class="symbol">:private_key</span>, params[<span class="symbol">:private_key</span>]
|
68
|
+
|
69
|
+
<span class="keyword">begin</span></pre></div></div>
|
70
|
+
|
71
|
+
</li>
|
72
|
+
|
73
|
+
|
74
|
+
<li id="section-4">
|
75
|
+
<div class="annotation">
|
76
|
+
|
77
|
+
<div class="pilwrap ">
|
78
|
+
<a class="pilcrow" href="#section-4">¶</a>
|
79
|
+
</div>
|
80
|
+
<p>check required variables</p>
|
81
|
+
|
82
|
+
</div>
|
83
|
+
|
84
|
+
<div class="content"><div class='highlight'><pre> raise <span class="string">'Please enter all required parameters'</span> <span class="keyword">if</span> settings.client_id.empty? <span class="keyword">or</span> settings.private_key.empty?</pre></div></div>
|
85
|
+
|
86
|
+
</li>
|
87
|
+
|
88
|
+
|
89
|
+
<li id="section-5">
|
90
|
+
<div class="annotation">
|
91
|
+
|
92
|
+
<div class="pilwrap ">
|
93
|
+
<a class="pilcrow" href="#section-5">¶</a>
|
94
|
+
</div>
|
95
|
+
<p>construct path</p>
|
96
|
+
|
97
|
+
</div>
|
98
|
+
|
99
|
+
<div class="content"><div class='highlight'><pre> filepath = <span class="string">"<span class="subst">#{<span class="constant">Dir</span>.tmpdir}</span>/<span class="subst">#{params[<span class="symbol">:file</span>][<span class="symbol">:filename</span>]}</span>"</span></pre></div></div>
|
100
|
+
|
101
|
+
</li>
|
102
|
+
|
103
|
+
|
104
|
+
<li id="section-6">
|
105
|
+
<div class="annotation">
|
106
|
+
|
107
|
+
<div class="pilwrap ">
|
108
|
+
<a class="pilcrow" href="#section-6">¶</a>
|
109
|
+
</div>
|
110
|
+
<p>open file</p>
|
111
|
+
|
112
|
+
</div>
|
113
|
+
|
114
|
+
<div class="content"><div class='highlight'><pre> <span class="constant">File</span>.open(filepath, <span class="string">'wb'</span>) { |f| f.write(params[<span class="symbol">:file</span>][<span class="symbol">:tempfile</span>].read) }</pre></div></div>
|
115
|
+
|
116
|
+
</li>
|
117
|
+
|
118
|
+
|
119
|
+
<li id="section-7">
|
120
|
+
<div class="annotation">
|
121
|
+
|
122
|
+
<div class="pilwrap ">
|
123
|
+
<a class="pilcrow" href="#section-7">¶</a>
|
124
|
+
</div>
|
125
|
+
<p>make a request to API using client_id and private_key</p>
|
126
|
+
|
127
|
+
</div>
|
128
|
+
|
129
|
+
<div class="content"><div class='highlight'><pre> file = <span class="constant">GroupDocs::Storage::File</span>.upload!(filepath, {}, <span class="symbol">client_id:</span> settings.client_id, <span class="symbol">private_key:</span> settings.private_key)</pre></div></div>
|
130
|
+
|
131
|
+
</li>
|
132
|
+
|
133
|
+
|
134
|
+
<li id="section-8">
|
135
|
+
<div class="annotation">
|
136
|
+
|
137
|
+
<div class="pilwrap ">
|
138
|
+
<a class="pilcrow" href="#section-8">¶</a>
|
139
|
+
</div>
|
140
|
+
<p>result massages</p>
|
141
|
+
|
142
|
+
</div>
|
143
|
+
|
144
|
+
<div class="content"><div class='highlight'><pre> massage = <span class="string">"<p>File was uploaded to GroupDocs. Here you can see your <strong><span class="subst">#{params[<span class="symbol">:file</span>][<span class="symbol">:filename</span>]}</span></strong> file in the GroupDocs Embedded Viewer.</p>"</span>
|
145
|
+
iframe = <span class="string">"<iframe src='https://apps.groupdocs.com/document-viewer/Embed/<span class="subst">#{file.guid}</span>' frameborder='0' width='720' height='600'></iframe>"</span>
|
146
|
+
|
147
|
+
<span class="keyword">rescue</span> <span class="constant">Exception</span> => e
|
148
|
+
err = e.message
|
149
|
+
<span class="keyword">end</span></pre></div></div>
|
150
|
+
|
151
|
+
</li>
|
152
|
+
|
153
|
+
|
154
|
+
<li id="section-9">
|
155
|
+
<div class="annotation">
|
156
|
+
|
157
|
+
<div class="pilwrap ">
|
158
|
+
<a class="pilcrow" href="#section-9">¶</a>
|
159
|
+
</div>
|
160
|
+
<p>set variables for template</p>
|
161
|
+
|
162
|
+
</div>
|
163
|
+
|
164
|
+
<div class="content"><div class='highlight'><pre> haml <span class="symbol">:sample3</span>, <span class="symbol">:locals</span> => {<span class="symbol">:userId</span> => settings.client_id, <span class="symbol">:privateKey</span> => settings.private_key, <span class="symbol">:iframe</span> => iframe, <span class="symbol">:massage</span> => massage, <span class="symbol">:err</span> => err}
|
165
|
+
<span class="keyword">end</span></pre></div></div>
|
166
|
+
|
167
|
+
</li>
|
168
|
+
|
169
|
+
</ul>
|
170
|
+
</div>
|
171
|
+
</body>
|
172
|
+
</html>
|