groupdocs 1.5.7 → 1.5.8
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/CHANGELOG.md +51 -0
- data/examples/api-samples/Gemfile +1 -1
- data/examples/api-samples/Gemfile.lock +43 -0
- data/examples/api-samples/public/docs/{sample2.html → sample01.html} +39 -19
- data/examples/api-samples/public/docs/{sample3.html → sample02.html} +28 -22
- data/examples/api-samples/public/docs/sample03.html +285 -0
- data/examples/api-samples/public/docs/{sample4.html → sample04.html} +30 -36
- data/examples/api-samples/public/docs/{sample5.html → sample05.html} +68 -31
- data/examples/api-samples/public/docs/sample06.html +299 -0
- data/examples/api-samples/public/docs/{sample7.html → sample07.html} +53 -18
- data/examples/api-samples/public/docs/{sample8.html → sample08.html} +64 -41
- data/examples/api-samples/public/docs/sample09.html +260 -0
- data/examples/api-samples/public/docs/sample10.html +67 -28
- data/examples/api-samples/public/docs/sample11.html +171 -55
- data/examples/api-samples/public/docs/sample12.html +53 -17
- data/examples/api-samples/public/docs/sample13.html +52 -16
- data/examples/api-samples/public/docs/sample14.html +51 -8
- data/examples/api-samples/public/docs/sample15.html +46 -10
- data/examples/api-samples/public/docs/sample16.html +81 -7
- data/examples/api-samples/public/docs/sample17.html +103 -15
- data/examples/api-samples/public/docs/sample18.html +117 -41
- data/examples/api-samples/public/docs/sample19.html +410 -36
- data/examples/api-samples/public/docs/sample20.html +46 -10
- data/examples/api-samples/public/docs/sample21.html +504 -45
- data/examples/api-samples/public/docs/sample22.html +166 -28
- data/examples/api-samples/public/docs/sample23.html +61 -25
- data/examples/api-samples/public/docs/sample24.html +100 -12
- data/examples/api-samples/public/docs/sample25.html +123 -49
- data/examples/api-samples/public/docs/sample26.html +41 -8
- data/examples/api-samples/public/docs/sample27.html +125 -50
- data/examples/api-samples/public/docs/sample28.html +27 -9
- data/examples/api-samples/public/docs/sample29.html +10 -10
- data/examples/api-samples/public/docs/sample30.html +70 -14
- data/examples/api-samples/public/docs/sample31.html +108 -67
- data/examples/api-samples/public/docs/sample32.html +71 -99
- data/examples/api-samples/public/docs/sample33.html +107 -32
- data/examples/api-samples/public/docs/{sample1.html → sample34.html} +58 -18
- data/examples/api-samples/public/docs/sample35.html +666 -0
- data/examples/api-samples/public/docs/{sample6.html → sample36.html} +56 -37
- data/examples/api-samples/public/docs/sample37.html +815 -0
- data/examples/api-samples/public/docs/sample38.html +508 -0
- data/examples/api-samples/public/docs/sample39.html +921 -0
- data/examples/api-samples/public/docs/sample40.html +510 -0
- data/examples/api-samples/public/docs/sample41.html +452 -0
- data/examples/api-samples/public/docs/sample42.html +311 -0
- data/examples/api-samples/public/templates/test_all_fields2.pdf +0 -0
- data/examples/api-samples/samples/sample01.rb +37 -0
- data/examples/api-samples/samples/sample02.rb +41 -0
- data/examples/api-samples/samples/sample03.rb +73 -0
- data/examples/api-samples/samples/sample04.rb +47 -0
- data/examples/api-samples/samples/{sample5.rb → sample05.rb} +26 -14
- data/examples/api-samples/samples/sample06.rb +80 -0
- data/examples/api-samples/samples/sample07.rb +52 -0
- data/examples/api-samples/samples/sample08.rb +69 -0
- data/examples/api-samples/samples/sample09.rb +83 -0
- data/examples/api-samples/samples/sample10.rb +29 -15
- data/examples/api-samples/samples/sample11.rb +89 -37
- data/examples/api-samples/samples/sample12.rb +22 -11
- data/examples/api-samples/samples/sample13.rb +22 -10
- data/examples/api-samples/samples/sample14.rb +23 -5
- data/examples/api-samples/samples/sample15.rb +18 -7
- data/examples/api-samples/samples/sample16.rb +28 -4
- data/examples/api-samples/samples/sample17.rb +31 -5
- data/examples/api-samples/samples/sample18.rb +36 -8
- data/examples/api-samples/samples/sample19.rb +138 -18
- data/examples/api-samples/samples/sample20.rb +14 -3
- data/examples/api-samples/samples/sample21.rb +162 -23
- data/examples/api-samples/samples/sample22.rb +73 -22
- data/examples/api-samples/samples/sample23.rb +17 -6
- data/examples/api-samples/samples/sample24.rb +34 -7
- data/examples/api-samples/samples/sample25.rb +37 -12
- data/examples/api-samples/samples/sample26.rb +12 -5
- data/examples/api-samples/samples/sample27.rb +38 -12
- data/examples/api-samples/samples/sample28.rb +25 -6
- data/examples/api-samples/samples/sample29.rb +12 -12
- data/examples/api-samples/samples/sample30.rb +27 -15
- data/examples/api-samples/samples/sample31.rb +44 -33
- data/examples/api-samples/samples/sample32.rb +43 -41
- data/examples/api-samples/samples/sample33.rb +42 -14
- data/examples/api-samples/samples/sample34.rb +40 -0
- data/examples/api-samples/samples/sample35.rb +224 -0
- data/examples/api-samples/samples/sample36.rb +58 -0
- data/examples/api-samples/samples/sample37.rb +229 -0
- data/examples/api-samples/samples/sample38.rb +128 -0
- data/examples/api-samples/samples/sample39.rb +252 -0
- data/examples/api-samples/samples/sample40.rb +164 -0
- data/examples/api-samples/samples/sample41.rb +118 -0
- data/examples/api-samples/samples/sample42.rb +97 -0
- data/examples/api-samples/views/_others_samples.haml +25 -11
- data/examples/api-samples/views/index.haml +23 -11
- data/examples/api-samples/views/popup.haml +32 -0
- data/examples/api-samples/views/{sample1.haml → sample01.haml} +12 -7
- data/examples/api-samples/views/{sample2.haml → sample02.haml} +20 -15
- data/examples/api-samples/views/sample03.haml +83 -0
- data/examples/api-samples/views/sample04.haml +49 -0
- data/examples/api-samples/views/{sample5.haml → sample05.haml} +19 -14
- data/examples/api-samples/views/sample06.haml +53 -0
- data/examples/api-samples/views/sample07.haml +47 -0
- data/examples/api-samples/views/{sample8.haml → sample08.haml} +17 -12
- data/examples/api-samples/views/{sample9.haml → sample09.haml} +19 -4
- data/examples/api-samples/views/sample10.haml +18 -13
- data/examples/api-samples/views/sample11.haml +48 -19
- data/examples/api-samples/views/sample12.haml +26 -21
- data/examples/api-samples/views/sample13.haml +18 -12
- data/examples/api-samples/views/sample14.haml +21 -15
- data/examples/api-samples/views/sample15.haml +16 -9
- data/examples/api-samples/views/sample16.haml +18 -5
- data/examples/api-samples/views/sample17.haml +14 -9
- data/examples/api-samples/views/sample18.haml +13 -7
- data/examples/api-samples/views/sample19.haml +37 -8
- data/examples/api-samples/views/sample20.haml +13 -8
- data/examples/api-samples/views/sample21.haml +71 -13
- data/examples/api-samples/views/sample22.haml +53 -16
- data/examples/api-samples/views/sample23.haml +9 -4
- data/examples/api-samples/views/sample24.haml +9 -4
- data/examples/api-samples/views/sample25.haml +18 -13
- data/examples/api-samples/views/sample26.haml +8 -3
- data/examples/api-samples/views/sample27.haml +20 -14
- data/examples/api-samples/views/sample28.haml +16 -10
- data/examples/api-samples/views/sample29.haml +4 -4
- data/examples/api-samples/views/sample30.haml +16 -10
- data/examples/api-samples/views/sample31.haml +39 -32
- data/examples/api-samples/views/sample32.haml +25 -36
- data/examples/api-samples/views/sample33.haml +14 -17
- data/examples/api-samples/views/sample34.haml +48 -0
- data/examples/api-samples/views/sample35.haml +95 -0
- data/examples/api-samples/views/sample36.haml +64 -0
- data/examples/api-samples/views/sample37.haml +124 -0
- data/examples/api-samples/views/sample38.haml +115 -0
- data/examples/api-samples/views/sample39.haml +236 -0
- data/examples/api-samples/views/sample40.haml +95 -0
- data/examples/api-samples/views/{sample4.haml → sample41.haml} +90 -72
- data/examples/api-samples/views/sample42.haml +59 -0
- data/lib/groupdocs/api/helpers/rest_helper.rb +13 -1
- data/lib/groupdocs/datasource.rb +2 -1
- data/lib/groupdocs/document.rb +101 -13
- data/lib/groupdocs/document/annotation.rb +28 -13
- data/lib/groupdocs/document/annotation/marker.rb +18 -0
- data/lib/groupdocs/document/annotation/reply.rb +9 -2
- data/lib/groupdocs/document/field.rb +5 -1
- data/lib/groupdocs/job.rb +12 -2
- data/lib/groupdocs/questionnaire.rb +174 -4
- data/lib/groupdocs/questionnaire/collector.rb +21 -0
- data/lib/groupdocs/questionnaire/question.rb +19 -0
- data/lib/groupdocs/questionnaire/question/answer.rb +5 -0
- data/lib/groupdocs/questionnaire/question/conditions.rb +20 -0
- data/lib/groupdocs/signature.rb +36 -308
- data/lib/groupdocs/signature/envelope.rb +146 -4
- data/lib/groupdocs/signature/field.rb +20 -1
- data/lib/groupdocs/signature/field/location.rb +18 -7
- data/lib/groupdocs/signature/form.rb +199 -10
- data/lib/groupdocs/signature/shared/document_methods.rb +38 -0
- data/lib/groupdocs/signature/shared/entity_methods.rb +0 -1
- data/lib/groupdocs/signature/shared/field_methods.rb +13 -38
- data/lib/groupdocs/signature/shared/recipient_methods.rb +8 -0
- data/lib/groupdocs/signature/template.rb +3 -1
- data/lib/groupdocs/storage.rb +4 -1
- data/lib/groupdocs/storage/file.rb +18 -1
- data/lib/groupdocs/subscription.rb +8 -3
- data/lib/groupdocs/user.rb +8 -0
- data/lib/groupdocs/version.rb +1 -1
- data/spec/groupdocs/document/annotation_spec.rb +1 -14
- data/spec/groupdocs/subscription_spec.rb +2 -2
- metadata +86 -32
- checksums.yaml +0 -15
- data/examples/api-samples/public/docs/sample9.html +0 -200
- data/examples/api-samples/samples/sample1.rb +0 -25
- data/examples/api-samples/samples/sample2.rb +0 -29
- data/examples/api-samples/samples/sample3.rb +0 -33
- data/examples/api-samples/samples/sample4.rb +0 -51
- data/examples/api-samples/samples/sample6.rb +0 -49
- data/examples/api-samples/samples/sample7.rb +0 -42
- data/examples/api-samples/samples/sample8.rb +0 -61
- data/examples/api-samples/samples/sample9.rb +0 -48
- data/examples/api-samples/views/sample3.haml +0 -44
- data/examples/api-samples/views/sample6.haml +0 -49
- data/examples/api-samples/views/sample7.haml +0 -42
|
@@ -0,0 +1,452 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
|
|
3
|
+
<html>
|
|
4
|
+
<head>
|
|
5
|
+
<title>sample41.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>sample41.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">'/sample41'</span> <span class="keyword">do</span>
|
|
35
|
+
haml <span class="symbol">:sample41</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">'/sample41'</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">:clientId</span>]
|
|
67
|
+
set <span class="symbol">:private_key</span>, params[<span class="symbol">:privateKey</span>]
|
|
68
|
+
set <span class="symbol">:source</span>, params[<span class="symbol">:source</span>]
|
|
69
|
+
set <span class="symbol">:file_id</span>, params[<span class="symbol">:fileId</span>]
|
|
70
|
+
set <span class="symbol">:url</span>, params[<span class="symbol">:url</span>]
|
|
71
|
+
set <span class="symbol">:base_path</span>, params[<span class="symbol">:basePath</span>]</pre></div></div>
|
|
72
|
+
|
|
73
|
+
</li>
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
<li id="section-4">
|
|
77
|
+
<div class="annotation">
|
|
78
|
+
|
|
79
|
+
<div class="pilwrap ">
|
|
80
|
+
<a class="pilcrow" href="#section-4">¶</a>
|
|
81
|
+
</div>
|
|
82
|
+
<p>Set download path</p>
|
|
83
|
+
|
|
84
|
+
</div>
|
|
85
|
+
|
|
86
|
+
<div class="content"><div class='highlight'><pre> downloads_path = <span class="string">"<span class="subst">#{<span class="constant">File</span>.dirname(__FILE_<span class="number">_</span>)}</span>/../public/downloads"</span></pre></div></div>
|
|
87
|
+
|
|
88
|
+
</li>
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
<li id="section-5">
|
|
92
|
+
<div class="annotation">
|
|
93
|
+
|
|
94
|
+
<div class="pilwrap ">
|
|
95
|
+
<a class="pilcrow" href="#section-5">¶</a>
|
|
96
|
+
</div>
|
|
97
|
+
<p>Remove all files from download directory or create folder if it not there</p>
|
|
98
|
+
|
|
99
|
+
</div>
|
|
100
|
+
|
|
101
|
+
<div class="content"><div class='highlight'><pre> <span class="keyword">if</span> <span class="constant">File</span>.directory?(downloads_path)
|
|
102
|
+
<span class="constant">Dir</span>.foreach(downloads_path) { |f| fn = <span class="constant">File</span>.join(downloads_path, f); <span class="constant">File</span>.delete(fn) <span class="keyword">if</span> f != <span class="string">'.'</span> && f != <span class="string">'..'</span> }
|
|
103
|
+
<span class="keyword">else</span>
|
|
104
|
+
<span class="constant">Dir::</span>mkdir(downloads_path)
|
|
105
|
+
<span class="keyword">end</span>
|
|
106
|
+
|
|
107
|
+
<span class="keyword">begin</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>Check required variables</p>
|
|
119
|
+
|
|
120
|
+
</div>
|
|
121
|
+
|
|
122
|
+
<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?
|
|
123
|
+
|
|
124
|
+
<span class="keyword">if</span> settings.base_path.empty? <span class="keyword">then</span> settings.base_path = <span class="string">'https://api.groupdocs.com'</span> <span class="keyword">end</span></pre></div></div>
|
|
125
|
+
|
|
126
|
+
</li>
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
<li id="section-7">
|
|
130
|
+
<div class="annotation">
|
|
131
|
+
|
|
132
|
+
<div class="pilwrap ">
|
|
133
|
+
<a class="pilcrow" href="#section-7">¶</a>
|
|
134
|
+
</div>
|
|
135
|
+
<p>Configure your access to API server</p>
|
|
136
|
+
|
|
137
|
+
</div>
|
|
138
|
+
|
|
139
|
+
<div class="content"><div class='highlight'><pre> <span class="constant">GroupDocs</span>.configure <span class="keyword">do</span> |groupdocs|
|
|
140
|
+
groupdocs.client_id = settings.client_id
|
|
141
|
+
groupdocs.private_key = settings.private_key</pre></div></div>
|
|
142
|
+
|
|
143
|
+
</li>
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
<li id="section-8">
|
|
147
|
+
<div class="annotation">
|
|
148
|
+
|
|
149
|
+
<div class="pilwrap ">
|
|
150
|
+
<a class="pilcrow" href="#section-8">¶</a>
|
|
151
|
+
</div>
|
|
152
|
+
<p>Optionally specify API server and version</p>
|
|
153
|
+
|
|
154
|
+
</div>
|
|
155
|
+
|
|
156
|
+
<div class="content"><div class='highlight'><pre> groupdocs.api_server = settings.base_path <span class="comment"># default is 'https://api.groupdocs.com'</span>
|
|
157
|
+
<span class="keyword">end</span></pre></div></div>
|
|
158
|
+
|
|
159
|
+
</li>
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
<li id="section-9">
|
|
163
|
+
<div class="annotation">
|
|
164
|
+
|
|
165
|
+
<div class="pilwrap ">
|
|
166
|
+
<a class="pilcrow" href="#section-9">¶</a>
|
|
167
|
+
</div>
|
|
168
|
+
<p>Get document by file GUID</p>
|
|
169
|
+
|
|
170
|
+
</div>
|
|
171
|
+
|
|
172
|
+
<div class="content"><div class='highlight'><pre> <span class="keyword">case</span> settings.source
|
|
173
|
+
<span class="keyword">when</span> <span class="string">'guid'</span></pre></div></div>
|
|
174
|
+
|
|
175
|
+
</li>
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
<li id="section-10">
|
|
179
|
+
<div class="annotation">
|
|
180
|
+
|
|
181
|
+
<div class="pilwrap ">
|
|
182
|
+
<a class="pilcrow" href="#section-10">¶</a>
|
|
183
|
+
</div>
|
|
184
|
+
<p>Create instance of File</p>
|
|
185
|
+
|
|
186
|
+
</div>
|
|
187
|
+
|
|
188
|
+
<div class="content"><div class='highlight'><pre> file = <span class="constant">GroupDocs::Storage::File</span>.new({<span class="symbol">:guid</span> => settings.file_id})
|
|
189
|
+
<span class="keyword">when</span> <span class="string">'local'</span></pre></div></div>
|
|
190
|
+
|
|
191
|
+
</li>
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
<li id="section-11">
|
|
195
|
+
<div class="annotation">
|
|
196
|
+
|
|
197
|
+
<div class="pilwrap ">
|
|
198
|
+
<a class="pilcrow" href="#section-11">¶</a>
|
|
199
|
+
</div>
|
|
200
|
+
<p>Construct path</p>
|
|
201
|
+
|
|
202
|
+
</div>
|
|
203
|
+
|
|
204
|
+
<div class="content"><div class='highlight'><pre> file_path = <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>
|
|
205
|
+
|
|
206
|
+
</li>
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
<li id="section-12">
|
|
210
|
+
<div class="annotation">
|
|
211
|
+
|
|
212
|
+
<div class="pilwrap ">
|
|
213
|
+
<a class="pilcrow" href="#section-12">¶</a>
|
|
214
|
+
</div>
|
|
215
|
+
<p>Open file</p>
|
|
216
|
+
|
|
217
|
+
</div>
|
|
218
|
+
|
|
219
|
+
<div class="content"><div class='highlight'><pre> <span class="constant">File</span>.open(file_path, <span class="string">'wb'</span>) { |f| f.write(params[<span class="symbol">:file</span>][<span class="symbol">:tempfile</span>].read) }</pre></div></div>
|
|
220
|
+
|
|
221
|
+
</li>
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
<li id="section-13">
|
|
225
|
+
<div class="annotation">
|
|
226
|
+
|
|
227
|
+
<div class="pilwrap ">
|
|
228
|
+
<a class="pilcrow" href="#section-13">¶</a>
|
|
229
|
+
</div>
|
|
230
|
+
<p>Make a request to API using client_id and private_key</p>
|
|
231
|
+
|
|
232
|
+
</div>
|
|
233
|
+
|
|
234
|
+
<div class="content"><div class='highlight'><pre> file = <span class="constant">GroupDocs::Storage::File</span>.upload!(file_path, {})
|
|
235
|
+
<span class="keyword">when</span> <span class="string">'url'</span></pre></div></div>
|
|
236
|
+
|
|
237
|
+
</li>
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
<li id="section-14">
|
|
241
|
+
<div class="annotation">
|
|
242
|
+
|
|
243
|
+
<div class="pilwrap ">
|
|
244
|
+
<a class="pilcrow" href="#section-14">¶</a>
|
|
245
|
+
</div>
|
|
246
|
+
<p>Upload file from defined url</p>
|
|
247
|
+
|
|
248
|
+
</div>
|
|
249
|
+
|
|
250
|
+
<div class="content"><div class='highlight'><pre> file = <span class="constant">GroupDocs::Storage::File</span>.upload_web!(settings.url)
|
|
251
|
+
<span class="keyword">else</span>
|
|
252
|
+
raise <span class="string">'Wrong GUID source.'</span>
|
|
253
|
+
<span class="keyword">end</span></pre></div></div>
|
|
254
|
+
|
|
255
|
+
</li>
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
<li id="section-15">
|
|
259
|
+
<div class="annotation">
|
|
260
|
+
|
|
261
|
+
<div class="pilwrap ">
|
|
262
|
+
<a class="pilcrow" href="#section-15">¶</a>
|
|
263
|
+
</div>
|
|
264
|
+
<p>Raise exception if something went wrong</p>
|
|
265
|
+
|
|
266
|
+
</div>
|
|
267
|
+
|
|
268
|
+
<div class="content"><div class='highlight'><pre> raise <span class="string">'No such file'</span> <span class="keyword">unless</span> file.is_a?(<span class="constant">GroupDocs::Storage::File</span>)</pre></div></div>
|
|
269
|
+
|
|
270
|
+
</li>
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
<li id="section-16">
|
|
274
|
+
<div class="annotation">
|
|
275
|
+
|
|
276
|
+
<div class="pilwrap ">
|
|
277
|
+
<a class="pilcrow" href="#section-16">¶</a>
|
|
278
|
+
</div>
|
|
279
|
+
<p>Make GroupDocs::Storage::Document instance</p>
|
|
280
|
+
|
|
281
|
+
</div>
|
|
282
|
+
|
|
283
|
+
<div class="content"><div class='highlight'><pre> document = file.to_document</pre></div></div>
|
|
284
|
+
|
|
285
|
+
</li>
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
<li id="section-17">
|
|
289
|
+
<div class="annotation">
|
|
290
|
+
|
|
291
|
+
<div class="pilwrap ">
|
|
292
|
+
<a class="pilcrow" href="#section-17">¶</a>
|
|
293
|
+
</div>
|
|
294
|
+
<p>Create Hash with the options for job. :status=> -1 means the Draft status of the job</p>
|
|
295
|
+
|
|
296
|
+
</div>
|
|
297
|
+
|
|
298
|
+
<div class="content"><div class='highlight'><pre> options = {<span class="symbol">:actions</span> => [<span class="symbol">:convert</span>, <span class="symbol">:number_lines</span>], <span class="symbol">:out_formats</span> => [<span class="string">'doc'</span>], <span class="symbol">:name</span> => <span class="string">'sample'</span>}</pre></div></div>
|
|
299
|
+
|
|
300
|
+
</li>
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
<li id="section-18">
|
|
304
|
+
<div class="annotation">
|
|
305
|
+
|
|
306
|
+
<div class="pilwrap ">
|
|
307
|
+
<a class="pilcrow" href="#section-18">¶</a>
|
|
308
|
+
</div>
|
|
309
|
+
<p>Create Job with provided options with Draft status (Sheduled job)</p>
|
|
310
|
+
|
|
311
|
+
</div>
|
|
312
|
+
|
|
313
|
+
<div class="content"><div class='highlight'><pre> job = <span class="constant">GroupDocs::Job</span>.create!(options)</pre></div></div>
|
|
314
|
+
|
|
315
|
+
</li>
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
<li id="section-19">
|
|
319
|
+
<div class="annotation">
|
|
320
|
+
|
|
321
|
+
<div class="pilwrap ">
|
|
322
|
+
<a class="pilcrow" href="#section-19">¶</a>
|
|
323
|
+
</div>
|
|
324
|
+
<p>Add the documents to previously created Job</p>
|
|
325
|
+
|
|
326
|
+
</div>
|
|
327
|
+
|
|
328
|
+
<div class="content"><div class='highlight'><pre> job.add_document!(document, {<span class="symbol">:check_ownership</span> => <span class="keyword">false</span>})</pre></div></div>
|
|
329
|
+
|
|
330
|
+
</li>
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
<li id="section-20">
|
|
334
|
+
<div class="annotation">
|
|
335
|
+
|
|
336
|
+
<div class="pilwrap ">
|
|
337
|
+
<a class="pilcrow" href="#section-20">¶</a>
|
|
338
|
+
</div>
|
|
339
|
+
<p>Update the Job with new status. :status => '0' mean Active status of the job (Start the job)</p>
|
|
340
|
+
|
|
341
|
+
</div>
|
|
342
|
+
|
|
343
|
+
<div class="content"><div class='highlight'><pre> id = job.update!({<span class="symbol">:status</span> => <span class="string">'pending'</span>})
|
|
344
|
+
|
|
345
|
+
i = <span class="number">1</span>
|
|
346
|
+
|
|
347
|
+
<span class="keyword">while</span> i<<span class="number">5</span> <span class="keyword">do</span>
|
|
348
|
+
sleep(<span class="number">5</span>)
|
|
349
|
+
job = <span class="constant">GroupDocs::Job</span>.get!(id[<span class="symbol">:job_id</span>])
|
|
350
|
+
<span class="keyword">break</span> <span class="keyword">if</span> job.status == <span class="symbol">:archived</span>
|
|
351
|
+
i = i + <span class="number">1</span>
|
|
352
|
+
<span class="keyword">end</span></pre></div></div>
|
|
353
|
+
|
|
354
|
+
</li>
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
<li id="section-21">
|
|
358
|
+
<div class="annotation">
|
|
359
|
+
|
|
360
|
+
<div class="pilwrap ">
|
|
361
|
+
<a class="pilcrow" href="#section-21">¶</a>
|
|
362
|
+
</div>
|
|
363
|
+
<p>Get the document into Pdf format</p>
|
|
364
|
+
|
|
365
|
+
</div>
|
|
366
|
+
|
|
367
|
+
<div class="content"><div class='highlight'><pre> file = job.documents!()
|
|
368
|
+
|
|
369
|
+
document = file[<span class="symbol">:inputs</span>][<span class="number">0</span>].outputs[<span class="number">0</span>]</pre></div></div>
|
|
370
|
+
|
|
371
|
+
</li>
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
<li id="section-22">
|
|
375
|
+
<div class="annotation">
|
|
376
|
+
|
|
377
|
+
<div class="pilwrap ">
|
|
378
|
+
<a class="pilcrow" href="#section-22">¶</a>
|
|
379
|
+
</div>
|
|
380
|
+
<p>Set iframe with document GUID or raise an error</p>
|
|
381
|
+
|
|
382
|
+
</div>
|
|
383
|
+
|
|
384
|
+
<div class="content"><div class='highlight'><pre> <span class="keyword">if</span> document</pre></div></div>
|
|
385
|
+
|
|
386
|
+
</li>
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
<li id="section-23">
|
|
390
|
+
<div class="annotation">
|
|
391
|
+
|
|
392
|
+
<div class="pilwrap ">
|
|
393
|
+
<a class="pilcrow" href="#section-23">¶</a>
|
|
394
|
+
</div>
|
|
395
|
+
<p>Get url from request</p>
|
|
396
|
+
|
|
397
|
+
</div>
|
|
398
|
+
|
|
399
|
+
<div class="content"><div class='highlight'><pre> <span class="keyword">case</span> settings.base_path
|
|
400
|
+
|
|
401
|
+
<span class="keyword">when</span> <span class="string">'https://stage-api-groupdocs.dynabic.com'</span>
|
|
402
|
+
url = <span class="string">"http://stage-apps-groupdocs.dynabic.com/document-viewer/embed/<span class="subst">#{document.guid}</span>"</span>
|
|
403
|
+
<span class="keyword">when</span> <span class="string">'https://dev-api-groupdocs.dynabic.com'</span>
|
|
404
|
+
url = <span class="string">"http://dev-apps-groupdocs.dynabic.com/document-viewer/embed/<span class="subst">#{document.guid}</span>"</span>
|
|
405
|
+
<span class="keyword">else</span>
|
|
406
|
+
url = <span class="string">"https://apps.groupdocs.com/document-viewer/embed/<span class="subst">#{document.guid}</span>"</span>
|
|
407
|
+
<span class="keyword">end</span></pre></div></div>
|
|
408
|
+
|
|
409
|
+
</li>
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
<li id="section-24">
|
|
413
|
+
<div class="annotation">
|
|
414
|
+
|
|
415
|
+
<div class="pilwrap ">
|
|
416
|
+
<a class="pilcrow" href="#section-24">¶</a>
|
|
417
|
+
</div>
|
|
418
|
+
<p>Add the signature in url</p>
|
|
419
|
+
|
|
420
|
+
</div>
|
|
421
|
+
|
|
422
|
+
<div class="content"><div class='highlight'><pre> iframe = <span class="constant">GroupDocs::Api::Request</span>.new(<span class="symbol">:path</span> => url).prepare_and_sign_url
|
|
423
|
+
iframe = <span class="string">"<iframe width='100%' height='600' frameborder='0' src='<span class="subst">#{iframe}</span>'></iframe>"</span>
|
|
424
|
+
<span class="keyword">else</span>
|
|
425
|
+
raise <span class="string">'File was not converted'</span>
|
|
426
|
+
<span class="keyword">end</span>
|
|
427
|
+
<span class="keyword">rescue</span> <span class="constant">Exception</span> => e
|
|
428
|
+
err = e.message
|
|
429
|
+
<span class="keyword">end</span></pre></div></div>
|
|
430
|
+
|
|
431
|
+
</li>
|
|
432
|
+
|
|
433
|
+
|
|
434
|
+
<li id="section-25">
|
|
435
|
+
<div class="annotation">
|
|
436
|
+
|
|
437
|
+
<div class="pilwrap ">
|
|
438
|
+
<a class="pilcrow" href="#section-25">¶</a>
|
|
439
|
+
</div>
|
|
440
|
+
<p>Set variables for template</p>
|
|
441
|
+
|
|
442
|
+
</div>
|
|
443
|
+
|
|
444
|
+
<div class="content"><div class='highlight'><pre> haml <span class="symbol">:sample41</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">:err</span> => err, <span class="symbol">:iframe</span> => iframe}
|
|
445
|
+
<span class="keyword">end</span></pre></div></div>
|
|
446
|
+
|
|
447
|
+
</li>
|
|
448
|
+
|
|
449
|
+
</ul>
|
|
450
|
+
</div>
|
|
451
|
+
</body>
|
|
452
|
+
</html>
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
|
|
3
|
+
<html>
|
|
4
|
+
<head>
|
|
5
|
+
<title>sample42.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>sample42.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">'/sample42'</span> <span class="keyword">do</span>
|
|
35
|
+
haml <span class="symbol">:sample42</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">'/sample42'</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">:clientId</span>]
|
|
67
|
+
set <span class="symbol">:private_key</span>, params[<span class="symbol">:privateKey</span>]
|
|
68
|
+
set <span class="symbol">:file_id</span>, params[<span class="symbol">:fileId</span>]
|
|
69
|
+
set <span class="symbol">:base_path</span>, params[<span class="symbol">:basePath</span>]
|
|
70
|
+
|
|
71
|
+
<span class="keyword">begin</span></pre></div></div>
|
|
72
|
+
|
|
73
|
+
</li>
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
<li id="section-4">
|
|
77
|
+
<div class="annotation">
|
|
78
|
+
|
|
79
|
+
<div class="pilwrap ">
|
|
80
|
+
<a class="pilcrow" href="#section-4">¶</a>
|
|
81
|
+
</div>
|
|
82
|
+
<p>Check required variables</p>
|
|
83
|
+
|
|
84
|
+
</div>
|
|
85
|
+
|
|
86
|
+
<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?
|
|
87
|
+
|
|
88
|
+
<span class="keyword">if</span> settings.base_path.empty? <span class="keyword">then</span> settings.base_path = <span class="string">'https://api.groupdocs.com'</span> <span class="keyword">end</span></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>Configure your access to API server</p>
|
|
100
|
+
|
|
101
|
+
</div>
|
|
102
|
+
|
|
103
|
+
<div class="content"><div class='highlight'><pre> <span class="constant">GroupDocs</span>.configure <span class="keyword">do</span> |groupdocs|
|
|
104
|
+
groupdocs.client_id = settings.client_id
|
|
105
|
+
groupdocs.private_key = settings.private_key</pre></div></div>
|
|
106
|
+
|
|
107
|
+
</li>
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
<li id="section-6">
|
|
111
|
+
<div class="annotation">
|
|
112
|
+
|
|
113
|
+
<div class="pilwrap ">
|
|
114
|
+
<a class="pilcrow" href="#section-6">¶</a>
|
|
115
|
+
</div>
|
|
116
|
+
<p>Optionally specify API server and version</p>
|
|
117
|
+
|
|
118
|
+
</div>
|
|
119
|
+
|
|
120
|
+
<div class="content"><div class='highlight'><pre> groupdocs.api_server = settings.base_path <span class="comment"># default is 'https://api.groupdocs.com'</span>
|
|
121
|
+
<span class="keyword">end</span>
|
|
122
|
+
|
|
123
|
+
document = <span class="constant">GroupDocs::Storage::File</span>.new(<span class="symbol">:guid</span> => settings.file_id).to_document</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>Check, has document the annotations?</p>
|
|
135
|
+
|
|
136
|
+
</div>
|
|
137
|
+
|
|
138
|
+
<div class="content"><div class='highlight'><pre> raise <span class="string">'Your document has no annotations'</span> <span class="keyword">if</span> document.annotations!.empty?</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>Create Hash with the options for job. :status=> -1 means the Draft status of the job</p>
|
|
150
|
+
|
|
151
|
+
</div>
|
|
152
|
+
|
|
153
|
+
<div class="content"><div class='highlight'><pre> options = {<span class="symbol">:actions</span> => [<span class="symbol">:import_annotations</span>], <span class="symbol">:name</span> => <span class="string">'sample'</span>}</pre></div></div>
|
|
154
|
+
|
|
155
|
+
</li>
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
<li id="section-9">
|
|
159
|
+
<div class="annotation">
|
|
160
|
+
|
|
161
|
+
<div class="pilwrap ">
|
|
162
|
+
<a class="pilcrow" href="#section-9">¶</a>
|
|
163
|
+
</div>
|
|
164
|
+
<p>Create Job with provided options with Draft status (Sheduled job)</p>
|
|
165
|
+
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
<div class="content"><div class='highlight'><pre> job = <span class="constant">GroupDocs::Job</span>.create!(options)</pre></div></div>
|
|
169
|
+
|
|
170
|
+
</li>
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
<li id="section-10">
|
|
174
|
+
<div class="annotation">
|
|
175
|
+
|
|
176
|
+
<div class="pilwrap ">
|
|
177
|
+
<a class="pilcrow" href="#section-10">¶</a>
|
|
178
|
+
</div>
|
|
179
|
+
<p>Add the documents to previously created Job</p>
|
|
180
|
+
|
|
181
|
+
</div>
|
|
182
|
+
|
|
183
|
+
<div class="content"><div class='highlight'><pre> job.add_document!(document, {<span class="symbol">:check_ownership</span> => <span class="keyword">false</span>})</pre></div></div>
|
|
184
|
+
|
|
185
|
+
</li>
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
<li id="section-11">
|
|
189
|
+
<div class="annotation">
|
|
190
|
+
|
|
191
|
+
<div class="pilwrap ">
|
|
192
|
+
<a class="pilcrow" href="#section-11">¶</a>
|
|
193
|
+
</div>
|
|
194
|
+
<p>Update the Job with new status. :status => '0' mean Active status of the job (Start the job)</p>
|
|
195
|
+
|
|
196
|
+
</div>
|
|
197
|
+
|
|
198
|
+
<div class="content"><div class='highlight'><pre> id = job.update!({<span class="symbol">:status</span> => <span class="string">'0'</span>})
|
|
199
|
+
|
|
200
|
+
i = <span class="number">1</span>
|
|
201
|
+
|
|
202
|
+
<span class="keyword">while</span> i<<span class="number">5</span> <span class="keyword">do</span>
|
|
203
|
+
sleep(<span class="number">5</span>)
|
|
204
|
+
job = <span class="constant">GroupDocs::Job</span>.get!(id[<span class="symbol">:job_id</span>])
|
|
205
|
+
<span class="keyword">break</span> <span class="keyword">if</span> job.status == <span class="symbol">:archived</span>
|
|
206
|
+
i = i + <span class="number">1</span>
|
|
207
|
+
<span class="keyword">end</span></pre></div></div>
|
|
208
|
+
|
|
209
|
+
</li>
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
<li id="section-12">
|
|
213
|
+
<div class="annotation">
|
|
214
|
+
|
|
215
|
+
<div class="pilwrap ">
|
|
216
|
+
<a class="pilcrow" href="#section-12">¶</a>
|
|
217
|
+
</div>
|
|
218
|
+
<p>Get the document into Pdf format</p>
|
|
219
|
+
|
|
220
|
+
</div>
|
|
221
|
+
|
|
222
|
+
<div class="content"><div class='highlight'><pre> file = job.documents!()
|
|
223
|
+
|
|
224
|
+
document = file[<span class="symbol">:inputs</span>]</pre></div></div>
|
|
225
|
+
|
|
226
|
+
</li>
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
<li id="section-13">
|
|
230
|
+
<div class="annotation">
|
|
231
|
+
|
|
232
|
+
<div class="pilwrap ">
|
|
233
|
+
<a class="pilcrow" href="#section-13">¶</a>
|
|
234
|
+
</div>
|
|
235
|
+
<p>Set iframe with document GUID or raise an error</p>
|
|
236
|
+
|
|
237
|
+
</div>
|
|
238
|
+
|
|
239
|
+
<div class="content"><div class='highlight'><pre> <span class="keyword">if</span> document</pre></div></div>
|
|
240
|
+
|
|
241
|
+
</li>
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
<li id="section-14">
|
|
245
|
+
<div class="annotation">
|
|
246
|
+
|
|
247
|
+
<div class="pilwrap ">
|
|
248
|
+
<a class="pilcrow" href="#section-14">¶</a>
|
|
249
|
+
</div>
|
|
250
|
+
<p>Get url from request</p>
|
|
251
|
+
|
|
252
|
+
</div>
|
|
253
|
+
|
|
254
|
+
<div class="content"><div class='highlight'><pre> <span class="keyword">case</span> settings.base_path
|
|
255
|
+
|
|
256
|
+
<span class="keyword">when</span> <span class="string">'https://stage-api-groupdocs.dynabic.com'</span>
|
|
257
|
+
url = <span class="string">"http://stage-apps-groupdocs.dynabic.com/document-annotation/embed/<span class="subst">#{document[<span class="number">0</span>].guid}</span>"</span>
|
|
258
|
+
<span class="keyword">when</span> <span class="string">'https://dev-api-groupdocs.dynabic.com'</span>
|
|
259
|
+
url = <span class="string">"http://dev-apps-groupdocs.dynabic.com/document-annotation/embed/<span class="subst">#{document[<span class="number">0</span>].guid}</span>"</span>
|
|
260
|
+
<span class="keyword">else</span>
|
|
261
|
+
url = <span class="string">"https://apps.groupdocs.com/document-annotation/embed/<span class="subst">#{document[<span class="number">0</span>].guid}</span>"</span>
|
|
262
|
+
<span class="keyword">end</span></pre></div></div>
|
|
263
|
+
|
|
264
|
+
</li>
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
<li id="section-15">
|
|
268
|
+
<div class="annotation">
|
|
269
|
+
|
|
270
|
+
<div class="pilwrap ">
|
|
271
|
+
<a class="pilcrow" href="#section-15">¶</a>
|
|
272
|
+
</div>
|
|
273
|
+
<p>Add the signature in url</p>
|
|
274
|
+
|
|
275
|
+
</div>
|
|
276
|
+
|
|
277
|
+
<div class="content"><div class='highlight'><pre> iframe = <span class="constant">GroupDocs::Api::Request</span>.new(<span class="symbol">:path</span> => url).prepare_and_sign_url
|
|
278
|
+
iframe = <span class="string">"<iframe width='100%' height='600' frameborder='0' src='<span class="subst">#{iframe}</span>'></iframe>"</span>
|
|
279
|
+
|
|
280
|
+
path = <span class="string">"<span class="subst">#{<span class="constant">File</span>.dirname(__FILE_<span class="number">_</span>)}</span>/../public/downloads"</span>
|
|
281
|
+
<span class="constant">GroupDocs::User</span>.download!(path, document[<span class="number">0</span>].outputs[<span class="number">0</span>].name, document[<span class="number">0</span>].outputs[<span class="number">0</span>].guid)
|
|
282
|
+
message = <span class="string">"<span style=\"color:green\">File with annotations was downloaded to server's local folder. You can check them <a href=\"/downloads/<span class="subst">#{document[<span class="number">0</span>].outputs[<span class="number">0</span>].name}</span>\">here</a></span>"</span>
|
|
283
|
+
<span class="keyword">else</span>
|
|
284
|
+
raise <span class="string">'File was not converted'</span>
|
|
285
|
+
<span class="keyword">end</span>
|
|
286
|
+
<span class="keyword">rescue</span> <span class="constant">Exception</span> => e
|
|
287
|
+
err = e.message
|
|
288
|
+
<span class="keyword">end</span></pre></div></div>
|
|
289
|
+
|
|
290
|
+
</li>
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
<li id="section-16">
|
|
294
|
+
<div class="annotation">
|
|
295
|
+
|
|
296
|
+
<div class="pilwrap ">
|
|
297
|
+
<a class="pilcrow" href="#section-16">¶</a>
|
|
298
|
+
</div>
|
|
299
|
+
<p>Set variables for template</p>
|
|
300
|
+
|
|
301
|
+
</div>
|
|
302
|
+
|
|
303
|
+
<div class="content"><div class='highlight'><pre> haml <span class="symbol">:sample42</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">:err</span> => err, <span class="symbol">:iframe</span> => iframe, <span class="symbol">:message</span> => message}
|
|
304
|
+
<span class="keyword">end</span></pre></div></div>
|
|
305
|
+
|
|
306
|
+
</li>
|
|
307
|
+
|
|
308
|
+
</ul>
|
|
309
|
+
</div>
|
|
310
|
+
</body>
|
|
311
|
+
</html>
|