groupdocs 1.6.0 → 1.7.0
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 +34 -0
- data/LICENSE.txt +21 -0
- data/README.md +3 -0
- data/examples/api-samples/public/docs/sample01.html +23 -23
- data/examples/api-samples/public/docs/sample02.html +27 -27
- data/examples/api-samples/public/docs/sample03.html +81 -69
- data/examples/api-samples/public/docs/sample04.html +29 -29
- data/examples/api-samples/public/docs/sample05.html +48 -48
- data/examples/api-samples/public/docs/sample06.html +47 -46
- data/examples/api-samples/public/docs/sample07.html +35 -35
- data/examples/api-samples/public/docs/sample08.html +45 -45
- data/examples/api-samples/public/docs/sample09.html +57 -57
- data/examples/api-samples/public/docs/sample10.html +41 -41
- data/examples/api-samples/public/docs/sample11.html +96 -118
- data/examples/api-samples/public/docs/sample12.html +29 -50
- data/examples/api-samples/public/docs/sample13.html +36 -44
- data/examples/api-samples/public/docs/sample14.html +29 -29
- data/examples/api-samples/public/docs/sample15.html +24 -24
- data/examples/api-samples/public/docs/sample16.html +32 -32
- data/examples/api-samples/public/docs/sample17.html +38 -38
- data/examples/api-samples/public/docs/sample18.html +105 -101
- data/examples/api-samples/public/docs/sample19.html +101 -101
- data/examples/api-samples/public/docs/sample20.html +42 -42
- data/examples/api-samples/public/docs/sample21.html +109 -109
- data/examples/api-samples/public/docs/sample22.html +56 -56
- data/examples/api-samples/public/docs/sample23.html +39 -39
- data/examples/api-samples/public/docs/sample24.html +36 -36
- data/examples/api-samples/public/docs/sample25.html +67 -67
- data/examples/api-samples/public/docs/sample26.html +23 -23
- data/examples/api-samples/public/docs/sample27.html +72 -72
- data/examples/api-samples/public/docs/sample28.html +46 -45
- data/examples/api-samples/public/docs/sample29.html +30 -30
- data/examples/api-samples/public/docs/sample30.html +30 -30
- data/examples/api-samples/public/docs/sample31.html +114 -114
- data/examples/api-samples/public/docs/sample32.html +96 -96
- data/examples/api-samples/public/docs/sample33.html +56 -56
- data/examples/api-samples/public/docs/sample34.html +27 -27
- data/examples/api-samples/public/docs/sample35.html +134 -135
- data/examples/api-samples/public/docs/sample36.html +32 -32
- data/examples/api-samples/public/docs/sample37.html +103 -103
- data/examples/api-samples/public/docs/sample38.html +76 -76
- data/examples/api-samples/public/docs/sample39.html +136 -136
- data/examples/api-samples/public/docs/sample40.html +104 -104
- data/examples/api-samples/public/docs/sample41.html +137 -137
- data/examples/api-samples/public/docs/sample42.html +61 -61
- data/examples/api-samples/public/docs/sample43.html +72 -72
- data/examples/api-samples/public/docs/sample44.html +751 -0
- data/examples/api-samples/public/docs/sample45.html +236 -0
- data/examples/api-samples/public/templates/merge_field3_doc.docx +0 -0
- data/examples/api-samples/samples/sample01.rb +2 -2
- data/examples/api-samples/samples/sample02.rb +2 -2
- data/examples/api-samples/samples/sample03.rb +2 -2
- data/examples/api-samples/samples/sample04.rb +2 -2
- data/examples/api-samples/samples/sample05.rb +2 -2
- data/examples/api-samples/samples/sample06.rb +2 -2
- data/examples/api-samples/samples/sample07.rb +2 -2
- data/examples/api-samples/samples/sample08.rb +2 -2
- data/examples/api-samples/samples/sample09.rb +2 -2
- data/examples/api-samples/samples/sample10.rb +2 -2
- data/examples/api-samples/samples/sample11.rb +2 -2
- data/examples/api-samples/samples/sample12.rb +2 -2
- data/examples/api-samples/samples/sample13.rb +2 -2
- data/examples/api-samples/samples/sample14.rb +2 -2
- data/examples/api-samples/samples/sample15.rb +2 -2
- data/examples/api-samples/samples/sample16.rb +2 -2
- data/examples/api-samples/samples/sample17.rb +2 -2
- data/examples/api-samples/samples/sample18.rb +2 -2
- data/examples/api-samples/samples/sample19.rb +2 -2
- data/examples/api-samples/samples/sample20.rb +2 -2
- data/examples/api-samples/samples/sample21.rb +2 -2
- data/examples/api-samples/samples/sample22.rb +2 -2
- data/examples/api-samples/samples/sample23.rb +2 -2
- data/examples/api-samples/samples/sample24.rb +2 -2
- data/examples/api-samples/samples/sample25.rb +2 -2
- data/examples/api-samples/samples/sample26.rb +2 -2
- data/examples/api-samples/samples/sample27.rb +2 -2
- data/examples/api-samples/samples/sample28.rb +2 -2
- data/examples/api-samples/samples/sample29.rb +2 -2
- data/examples/api-samples/samples/sample30.rb +2 -2
- data/examples/api-samples/samples/sample31.rb +2 -2
- data/examples/api-samples/samples/sample32.rb +2 -2
- data/examples/api-samples/samples/sample33.rb +2 -2
- data/examples/api-samples/samples/sample34.rb +2 -2
- data/examples/api-samples/samples/sample35.rb +4 -4
- data/examples/api-samples/samples/sample36.rb +2 -2
- data/examples/api-samples/samples/sample37.rb +2 -2
- data/examples/api-samples/samples/sample38.rb +2 -2
- data/examples/api-samples/samples/sample39.rb +2 -2
- data/examples/api-samples/samples/sample40.rb +2 -2
- data/examples/api-samples/samples/sample41.rb +2 -2
- data/examples/api-samples/samples/sample42.rb +2 -2
- data/examples/api-samples/samples/sample43.rb +2 -2
- data/examples/api-samples/samples/sample44.rb +188 -0
- data/examples/api-samples/samples/sample45.rb +74 -0
- data/examples/api-samples/views/_others_samples.haml +47 -43
- data/examples/api-samples/views/index.haml +55 -44
- data/examples/api-samples/views/layout.haml +1 -6
- data/examples/api-samples/views/sample01.haml +62 -57
- data/examples/api-samples/views/sample02.haml +52 -46
- data/examples/api-samples/views/sample03.haml +78 -73
- data/examples/api-samples/views/sample04.haml +51 -45
- data/examples/api-samples/views/sample05.haml +77 -71
- data/examples/api-samples/views/sample06.haml +58 -52
- data/examples/api-samples/views/sample07.haml +51 -45
- data/examples/api-samples/views/sample08.haml +90 -84
- data/examples/api-samples/views/sample09.haml +86 -80
- data/examples/api-samples/views/sample10.haml +83 -77
- data/examples/api-samples/views/sample11.haml +124 -120
- data/examples/api-samples/views/sample12.haml +65 -59
- data/examples/api-samples/views/sample13.haml +62 -56
- data/examples/api-samples/views/sample14.haml +57 -51
- data/examples/api-samples/views/sample15.haml +49 -43
- data/examples/api-samples/views/sample16.haml +49 -43
- data/examples/api-samples/views/sample17.haml +53 -47
- data/examples/api-samples/views/sample18.haml +140 -134
- data/examples/api-samples/views/sample19.haml +87 -81
- data/examples/api-samples/views/sample20.haml +53 -47
- data/examples/api-samples/views/sample21.haml +115 -111
- data/examples/api-samples/views/sample22.haml +94 -88
- data/examples/api-samples/views/sample23.haml +83 -78
- data/examples/api-samples/views/sample24.haml +54 -48
- data/examples/api-samples/views/sample25.haml +89 -83
- data/examples/api-samples/views/sample26.haml +62 -57
- data/examples/api-samples/views/sample27.haml +114 -109
- data/examples/api-samples/views/sample28.haml +55 -49
- data/examples/api-samples/views/sample29.haml +67 -69
- data/examples/api-samples/views/sample30.haml +54 -48
- data/examples/api-samples/views/sample31.haml +106 -100
- data/examples/api-samples/views/sample32.haml +90 -84
- data/examples/api-samples/views/sample33.haml +60 -54
- data/examples/api-samples/views/sample34.haml +51 -46
- data/examples/api-samples/views/sample35.haml +84 -78
- data/examples/api-samples/views/sample36.haml +63 -58
- data/examples/api-samples/views/sample37.haml +122 -116
- data/examples/api-samples/views/sample38.haml +104 -98
- data/examples/api-samples/views/sample39.haml +6 -2
- data/examples/api-samples/views/sample40.haml +94 -89
- data/examples/api-samples/views/sample41.haml +127 -123
- data/examples/api-samples/views/sample42.haml +60 -54
- data/examples/api-samples/views/sample43.haml +81 -77
- data/examples/api-samples/views/sample44.haml +85 -0
- data/examples/api-samples/views/sample45.haml +85 -0
- data/groupdocs.gemspec +2 -0
- data/lib/groupdocs/datasource/field.rb +9 -0
- data/lib/groupdocs/document.rb +66 -4
- data/lib/groupdocs/document/annotation.rb +11 -6
- data/lib/groupdocs/document/editor.rb +53 -0
- data/lib/groupdocs/document/field.rb +16 -0
- data/lib/groupdocs/document/style.rb +30 -0
- data/lib/groupdocs/job.rb +24 -0
- data/lib/groupdocs/questionnaire.rb +2 -0
- data/lib/groupdocs/questionnaire/collector.rb +52 -0
- data/lib/groupdocs/questionnaire/collector_style.rb +54 -0
- data/lib/groupdocs/questionnaire/question.rb +9 -0
- data/lib/groupdocs/questionnaire/style/base_font.rb +17 -0
- data/lib/groupdocs/questionnaire/style/question_title.rb +17 -0
- data/lib/groupdocs/questionnaire/style/title.rb +17 -0
- data/lib/groupdocs/signature/envelope.rb +43 -8
- data/lib/groupdocs/signature/form.rb +113 -12
- data/lib/groupdocs/signature/recipient.rb +38 -3
- data/lib/groupdocs/signature/shared/field_methods.rb +4 -2
- data/lib/groupdocs/signature/template.rb +20 -1
- data/lib/groupdocs/storage/file.rb +3 -2
- data/lib/groupdocs/user.rb +148 -0
- data/lib/groupdocs/version.rb +1 -1
- data/spec/groupdocs/api/helpers/access_rights_helper_spec.rb +5 -5
- data/spec/groupdocs/document/annotation_spec.rb +1 -1
- data/spec/groupdocs/signature/envelope_spec.rb +1 -1
- data/spec/groupdocs/user_spec.rb +4 -4
- data/spec/support/shared_examples/signature/shared/field_methods.rb +5 -4
- metadata +18 -3
data/groupdocs.gemspec
CHANGED
@@ -10,6 +10,8 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.summary = 'Ruby SDK for GroupDocs REST API'
|
11
11
|
s.description = 'Ruby SDK for GroupDocs REST API'
|
12
12
|
|
13
|
+
s.license = 'MIT'
|
14
|
+
|
13
15
|
s.files = `git ls-files`.split("\n")
|
14
16
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
15
17
|
s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
|
@@ -8,6 +8,15 @@ module GroupDocs
|
|
8
8
|
# @attr [Array<String>] values
|
9
9
|
attr_accessor :values
|
10
10
|
|
11
|
+
# added in release 1.7.0
|
12
|
+
# @attr [String] contentType
|
13
|
+
attr_accessor :contentType
|
14
|
+
# @attr [List<GroupDocs::DataSource::Field>] nested_fields
|
15
|
+
attr_accessor :nested_fields
|
16
|
+
# @attr [String] regionName
|
17
|
+
attr_accessor :regionName
|
18
|
+
# @attr [String] dimension
|
19
|
+
attr_accessor :dimension
|
11
20
|
#
|
12
21
|
# Updates type with machine-readable format.
|
13
22
|
#
|
data/lib/groupdocs/document.rb
CHANGED
@@ -7,6 +7,8 @@ module GroupDocs
|
|
7
7
|
require 'groupdocs/document/metadata'
|
8
8
|
require 'groupdocs/document/rectangle'
|
9
9
|
require 'groupdocs/document/view'
|
10
|
+
require 'groupdocs/document/editor'
|
11
|
+
require 'groupdocs/document/style'
|
10
12
|
|
11
13
|
ACCESS_MODES = {
|
12
14
|
:private => 0,
|
@@ -49,18 +51,22 @@ module GroupDocs
|
|
49
51
|
#
|
50
52
|
# Returns an array of all templates (documents in "Templates" directory).
|
51
53
|
#
|
54
|
+
# @param [Hash] options Options
|
55
|
+
# @option options [String] :orderBy Order by column
|
56
|
+
# @option options [Boolean] :isAscending Order by ascending or descending
|
52
57
|
# @param [Hash] access Access credentials
|
53
58
|
# @option access [String] :client_id
|
54
59
|
# @option access [String] :private_key
|
55
60
|
# @return [Array<GroupDocs::Document>]
|
56
61
|
#
|
57
62
|
def self.templates!(options = {}, access = {})
|
58
|
-
|
63
|
+
api = Api::Request.new do |request|
|
59
64
|
request[:access] = access
|
60
65
|
request[:method] = :GET
|
61
66
|
request[:path] = '/merge/{{client_id}}/templates'
|
62
|
-
end
|
63
|
-
|
67
|
+
end
|
68
|
+
api.add_params(options)
|
69
|
+
json = api.execute!
|
64
70
|
json[:templates].map do |template|
|
65
71
|
template.merge!(:file => Storage::File.new(template))
|
66
72
|
Document.new(template)
|
@@ -199,7 +205,7 @@ module GroupDocs
|
|
199
205
|
|
200
206
|
#added in release 1.6.0
|
201
207
|
# @attr [String] fieldType
|
202
|
-
attr_accessor :
|
208
|
+
attr_accessor :fieldType
|
203
209
|
# @attr [Int] dependent_questionnaires_count
|
204
210
|
attr_accessor :dependent_questionnaires_count
|
205
211
|
# @attr [Long] upload_time
|
@@ -1462,5 +1468,61 @@ module GroupDocs
|
|
1462
1468
|
end.execute!
|
1463
1469
|
end
|
1464
1470
|
|
1471
|
+
# added in release 1.7.0
|
1472
|
+
#
|
1473
|
+
# Get template fields.
|
1474
|
+
#
|
1475
|
+
# @param [Hash] access Access credentials
|
1476
|
+
# @option access [String] :client_id
|
1477
|
+
# @option access [String] :private_key
|
1478
|
+
#
|
1479
|
+
def editor_fields!(access = {})
|
1480
|
+
json = Api::Request.new do |request|
|
1481
|
+
request[:access] = access
|
1482
|
+
request[:method] = :GET
|
1483
|
+
request[:path] = "/doc/{{client_id}}/files/#{file.guid}/editor_fields"
|
1484
|
+
end.execute!
|
1485
|
+
json[:fields].map do |field|
|
1486
|
+
TemplateEditorFields.new(field)
|
1487
|
+
end
|
1488
|
+
end
|
1489
|
+
|
1490
|
+
# added in release 1.7.0
|
1491
|
+
#
|
1492
|
+
# Create questionnaire template from file.
|
1493
|
+
#
|
1494
|
+
# @example
|
1495
|
+
#
|
1496
|
+
# file = GroupDocs::Storage::File.new({:guid => '3be4e06494caed131d912c75e17d5f22592e3044032e0f81b35f13a8c9fefb49'}).to_document
|
1497
|
+
# field = GroupDocs::Document::TemplateEditorFields.new
|
1498
|
+
# field.name = 'test'
|
1499
|
+
# field.fieldtype = 'TextBox'
|
1500
|
+
# field.page = 1
|
1501
|
+
# file.questionnaire_template!([field] )
|
1502
|
+
#
|
1503
|
+
#
|
1504
|
+
# @param List[GroupDocs::Document::TemplateEditorFields] fields
|
1505
|
+
# @param [Hash] access Access credentials
|
1506
|
+
# @option access [String] :client_id
|
1507
|
+
# @option access [String] :private_key
|
1508
|
+
#
|
1509
|
+
def questionnaire_template!(fields, access = {})
|
1510
|
+
|
1511
|
+
fields.each do |field|
|
1512
|
+
field.is_a?(GroupDocs::Document::TemplateEditorFields) or raise ArgumentError,
|
1513
|
+
"Fields should be List GroupDocs::Document::TemplateEditorFields objects, received: #{fields.inspect}"
|
1514
|
+
end
|
1515
|
+
|
1516
|
+
json = Api::Request.new do |request|
|
1517
|
+
request[:access] = access
|
1518
|
+
request[:method] = :POST
|
1519
|
+
request[:path] = "/merge/{{client_id}}/files/#{file.guid}/templates"
|
1520
|
+
request[:request_body] = fields
|
1521
|
+
end.execute!
|
1522
|
+
json[:templateFields].map do |field|
|
1523
|
+
Document::Field.new(field)
|
1524
|
+
end
|
1525
|
+
end
|
1526
|
+
|
1465
1527
|
end # Document
|
1466
1528
|
end # GroupDocs
|
@@ -6,10 +6,10 @@ module GroupDocs
|
|
6
6
|
|
7
7
|
include Api::Helpers::AccessMode
|
8
8
|
|
9
|
-
#AnnotationType = { Text: 0, Area: 1, Point: 2, TextStrikeout: 3, Polyline: 4, TextField: 5, Watermark: 6, TextReplacement: 7,
|
9
|
+
#AnnotationType = { Text: 0, Area: 1, Point: 2, TextStrikeout: 3, Polyline: 4, TextField: 5, Watermark: 6, TextReplacement: 7, Arrow: 8, TextRedaction 9, ResourceRedaction 10, TextUnderline 11, Distance 12, All 13 }
|
10
10
|
|
11
|
-
#
|
12
|
-
TYPES = %w(Text Area Point TextStrikeout Polyline TextField Watermark TextReplacement
|
11
|
+
# updated in release 1.7.0
|
12
|
+
TYPES = %w(Text Area Point TextStrikeout Polyline TextField Watermark TextReplacement Arrow TextRedaction ResourceRedaction ResourceRedaction TextUnderline Distance All)
|
13
13
|
|
14
14
|
# @attr [GroupDocs::Document] document
|
15
15
|
attr_accessor :document
|
@@ -54,7 +54,7 @@ module GroupDocs
|
|
54
54
|
attr_accessor :serverTime
|
55
55
|
#attr [Array]
|
56
56
|
|
57
|
-
#added in release 1.
|
57
|
+
#added in release 1.7.0
|
58
58
|
#@attr [Int] penColor
|
59
59
|
attr_accessor :penColor
|
60
60
|
#@attr [Int] penWidth
|
@@ -65,7 +65,10 @@ module GroupDocs
|
|
65
65
|
attr_accessor :creatorName
|
66
66
|
#@attr [Int] creatorEmail
|
67
67
|
attr_accessor :creatorEmail
|
68
|
-
|
68
|
+
#@attr [Long] penColor
|
69
|
+
attr_accessor :layerId
|
70
|
+
#@attr [Int] penWidth
|
71
|
+
attr_accessor :backgroundColor
|
69
72
|
|
70
73
|
# Compatibility with response JSON
|
71
74
|
alias_method :annotationGuid=, :guid=
|
@@ -82,12 +85,14 @@ module GroupDocs
|
|
82
85
|
alias_accessor :page_number, :pageNumber
|
83
86
|
alias_accessor :server_time, :serverTime
|
84
87
|
|
85
|
-
#added in release 1.
|
88
|
+
#added in release 1.7.0
|
86
89
|
alias_accessor :pen_color, :penColor
|
87
90
|
alias_accessor :pen_width, :penWidth
|
88
91
|
alias_accessor :pen_style, :penStyle
|
89
92
|
alias_accessor :creator_name, :creatorName
|
90
93
|
alias_accessor :creator_email, :creatorEmail
|
94
|
+
alias_accessor :layer_id, :layerId
|
95
|
+
alias_accessor :background_color, :backgroundColor
|
91
96
|
|
92
97
|
#
|
93
98
|
# Creates new GroupDocs::Document::Annotation.
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# added in release 1.7.0
|
2
|
+
module GroupDocs
|
3
|
+
class Document::TemplateEditorFields < Api::Entity
|
4
|
+
|
5
|
+
# @attr [Integer] page
|
6
|
+
attr_accessor :page
|
7
|
+
# @attr [String] name
|
8
|
+
attr_accessor :name
|
9
|
+
# @attr [String] type
|
10
|
+
attr_accessor :type
|
11
|
+
# @attr [GroupDocs::Document::Rectangle] rect
|
12
|
+
attr_accessor :rect
|
13
|
+
# @attr [String] fieldtype
|
14
|
+
attr_accessor :fieldtype
|
15
|
+
# @attr [Array] acceptableValues
|
16
|
+
attr_accessor :acceptableValues
|
17
|
+
# @attr [Int] selectionPosition
|
18
|
+
attr_accessor :selectionPosition
|
19
|
+
# @attr [Int] selectionLength
|
20
|
+
attr_accessor :selectionLength
|
21
|
+
# @attr [GroupDocs::Document::Style] style
|
22
|
+
attr_accessor :style
|
23
|
+
# @attr [Boolean] isTableMarker
|
24
|
+
attr_accessor :isTableMarker
|
25
|
+
|
26
|
+
#
|
27
|
+
# Converts passed hash to GroupDocs::Document::Rectangle object.
|
28
|
+
# @param [Hash] options
|
29
|
+
#
|
30
|
+
def rect=(rectangle)
|
31
|
+
if rectangle.is_a?(Hash)
|
32
|
+
rectangle = GroupDocs::Document::Rectangle.new(rectangle)
|
33
|
+
end
|
34
|
+
|
35
|
+
@rect = rectangle
|
36
|
+
end
|
37
|
+
#
|
38
|
+
# Converts passed hash to GroupDocs::Document::TemplateEditorFieldStyle object.
|
39
|
+
# @param [Hash] options
|
40
|
+
#
|
41
|
+
def style=(style)
|
42
|
+
if style.is_a?(Hash)
|
43
|
+
style = GroupDocs::Document::TemplateEditorFieldStyle.new(style)
|
44
|
+
end
|
45
|
+
|
46
|
+
@style = style
|
47
|
+
end
|
48
|
+
|
49
|
+
# Human-readable accessors
|
50
|
+
alias_accessor :rectangle, :rect
|
51
|
+
|
52
|
+
end # Document::TemplateEditorFields
|
53
|
+
end # GroupDocs
|
@@ -18,6 +18,22 @@ module GroupDocs
|
|
18
18
|
# @attr [Array] acceptableValues
|
19
19
|
attr_accessor :acceptableValues
|
20
20
|
|
21
|
+
# added in release 1.7.0
|
22
|
+
|
23
|
+
# @attr [Int] selectionPosition
|
24
|
+
attr_accessor :selectionPosition
|
25
|
+
# @attr [Int] selectionLength
|
26
|
+
attr_accessor :selectionLength
|
27
|
+
# @attr [Boolean] isTableStartMarker
|
28
|
+
attr_accessor :isTableStartMarker
|
29
|
+
# @attr [Boolean] isTableEndMarker
|
30
|
+
attr_accessor :isTableEndMarker
|
31
|
+
# @attr [String] regionName
|
32
|
+
attr_accessor :regionName
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
21
37
|
#
|
22
38
|
# Coverts passed hash to GroupDocs::Document::Rectangle object.
|
23
39
|
# @param [Hash] options
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# added in release 1.7.0
|
2
|
+
module GroupDocs
|
3
|
+
class Document::TemplateEditorFieldStyle < Api::Entity
|
4
|
+
|
5
|
+
# @attr [String] fontName
|
6
|
+
attr_accessor :fontName
|
7
|
+
# @attr [String] fontSize
|
8
|
+
attr_accessor :fontSize
|
9
|
+
# @attr [String] color
|
10
|
+
attr_accessor :color
|
11
|
+
# @attr [String] backgroundColor
|
12
|
+
attr_accessor :backgroundColor
|
13
|
+
# @attr [String] borderWidth
|
14
|
+
attr_accessor :borderWidth
|
15
|
+
# @attr [String] borderColor
|
16
|
+
attr_accessor :borderColor
|
17
|
+
# @attr [String] textAlignment
|
18
|
+
attr_accessor :textAlignment
|
19
|
+
|
20
|
+
# Human-readable accessors
|
21
|
+
alias_accessor :font_name, :fontName
|
22
|
+
alias_accessor :font_size, :fontSize
|
23
|
+
alias_accessor :background_color, :backgroundColor
|
24
|
+
alias_accessor :border_width, :borderWidth
|
25
|
+
alias_accessor :border_color, :borderColor
|
26
|
+
alias_accessor :text_alignment, :textAlignment
|
27
|
+
|
28
|
+
|
29
|
+
end # Document::TemplateEditorFieldStyle
|
30
|
+
end # GroupDocs
|
data/lib/groupdocs/job.rb
CHANGED
@@ -440,5 +440,29 @@ module GroupDocs
|
|
440
440
|
byte_from_array(actions, ACTIONS)
|
441
441
|
end
|
442
442
|
|
443
|
+
#added in release 1.7.0
|
444
|
+
|
445
|
+
#
|
446
|
+
# Get Possible Conversions.
|
447
|
+
#
|
448
|
+
# @example
|
449
|
+
# GroupDocs::Job.get_conversions! "pdf"
|
450
|
+
#
|
451
|
+
#
|
452
|
+
# @param [Hash] access Access credentials
|
453
|
+
# @option access [String] :client_id
|
454
|
+
# @option access [String] :private_key
|
455
|
+
# @param [String] file_ext File extension to check
|
456
|
+
#
|
457
|
+
def self.get_conversions!(access = {}, file_ext)
|
458
|
+
api = Api::Request.new do |request|
|
459
|
+
request[:access] = access
|
460
|
+
request[:method] = :GET
|
461
|
+
request[:path] = "/async/{{client_id}}/possibleConversions/#{file_ext}"
|
462
|
+
end
|
463
|
+
json = api.execute!
|
464
|
+
json[:possibleConversions]
|
465
|
+
end
|
466
|
+
|
443
467
|
end # Job
|
444
468
|
end # GroupDocs
|
@@ -279,5 +279,57 @@ module GroupDocs
|
|
279
279
|
|
280
280
|
end
|
281
281
|
|
282
|
+
#
|
283
|
+
# Added in release 1.7.0
|
284
|
+
#
|
285
|
+
# Decorate questionnaire collector
|
286
|
+
#
|
287
|
+
# @example
|
288
|
+
# questionnaire = GroupDocs::Questionnaire.get!(1)
|
289
|
+
# collector = questionnaire.collectors!.first
|
290
|
+
# style = GroupDocs::Questionnaire::QuestionnaireCollectorStyle.new
|
291
|
+
# style.collectorId = collector.id
|
292
|
+
# title = GroupDocs::Questionnaire::QuestionnaireCollectorStyle::Title.new
|
293
|
+
# title.color = 'blue'
|
294
|
+
# style.title = title
|
295
|
+
#
|
296
|
+
# @param [Hash] access Access credentials
|
297
|
+
# @option access [String] :client_id
|
298
|
+
# @option access [String] :private_key
|
299
|
+
#
|
300
|
+
def decorate!(style, access = {})
|
301
|
+
style.is_a?(GroupDocs::Questionnaire::QuestionnaireCollectorStyle) or raise ArgumentError,
|
302
|
+
"Style should be GroupDocs::Questionnaire::QuestionnaireCollectorStyle object, received: #{style.inspect}"
|
303
|
+
Api::Request.new do |request|
|
304
|
+
request[:access] = access
|
305
|
+
request[:method] = :POST
|
306
|
+
request[:path] = "/merge/{{client_id}}/questionnaires/collectors/#{guid}/decorate"
|
307
|
+
request[:request_body] = style
|
308
|
+
end.execute!
|
309
|
+
end
|
310
|
+
|
311
|
+
|
312
|
+
#
|
313
|
+
# Added in release 1.7.0
|
314
|
+
#
|
315
|
+
# Returns questionnaire collector style
|
316
|
+
#
|
317
|
+
# @example
|
318
|
+
# questionnaire = GroupDocs::Questionnaire.get!(1)
|
319
|
+
# collector = questionnaire.collectors!.first
|
320
|
+
# collector.decorate!
|
321
|
+
#
|
322
|
+
# @param [Hash] access Access credentials
|
323
|
+
# @option access [String] :client_id
|
324
|
+
# @option access [String] :private_key
|
325
|
+
#
|
326
|
+
def get_decorate!(access = {})
|
327
|
+
Api::Request.new do |request|
|
328
|
+
request[:access] = access
|
329
|
+
request[:method] = :GET
|
330
|
+
request[:path] = "/merge/{{client_id}}/questionnaires/collector/#{guid}/style"
|
331
|
+
end.execute!
|
332
|
+
end
|
333
|
+
|
282
334
|
end # Questionnaire::Collector
|
283
335
|
end # GroupDocs
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# added in release 1.7.0
|
2
|
+
module GroupDocs
|
3
|
+
class Questionnaire::QuestionnaireCollectorStyle < Api::Entity
|
4
|
+
require 'groupdocs/questionnaire/style/title'
|
5
|
+
require 'groupdocs/questionnaire/style/base_font'
|
6
|
+
require 'groupdocs/questionnaire/style/question_title'
|
7
|
+
|
8
|
+
# @attr [String] page
|
9
|
+
attr_accessor :collectorId
|
10
|
+
# @attr [GroupDocs::Questionnaire::Rectangle] title
|
11
|
+
attr_accessor :title
|
12
|
+
# @attr [GroupDocs::Questionnaire::Rectangle] questionTitle
|
13
|
+
attr_accessor :questionTitle
|
14
|
+
# @attr [GroupDocs::Questionnaire::Rectangle] baseFont
|
15
|
+
attr_accessor :baseFont
|
16
|
+
|
17
|
+
#
|
18
|
+
# Converts passed hash to GroupDocs::Questionnaire::QuestionnaireCollectorStyle::Title object.
|
19
|
+
# @param [Hash] options
|
20
|
+
#
|
21
|
+
def title=(title)
|
22
|
+
if title.is_a?(Hash)
|
23
|
+
title = GroupDocs::Questionnaire::QuestionnaireCollectorStyle::Title.new(title)
|
24
|
+
end
|
25
|
+
|
26
|
+
@title = title
|
27
|
+
end
|
28
|
+
|
29
|
+
#
|
30
|
+
# Converts passed hash to GroupDocs::Questionnaire::QuestionnaireCollectorStyle::QuestionTitle object.
|
31
|
+
# @param [Hash] options
|
32
|
+
#
|
33
|
+
def questionTitle=(questionTitle)
|
34
|
+
if questionTitle.is_a?(Hash)
|
35
|
+
questionTitle = GroupDocs::Questionnaire::QuestionnaireCollectorStyle::QuestionTitle.new(questionTitle)
|
36
|
+
end
|
37
|
+
|
38
|
+
@questionTitle = questionTitle
|
39
|
+
end
|
40
|
+
#
|
41
|
+
# Converts passed hash to GroupDocs::Questionnaire::QuestionnaireCollectorStyle::BaseFont object.
|
42
|
+
# @param [Hash] options
|
43
|
+
#
|
44
|
+
def baseFont=(baseFont)
|
45
|
+
if baseFont.is_a?(Hash)
|
46
|
+
baseFont = GroupDocs::Questionnaire::QuestionnaireCollectorStyle::BaseFont.new(baseFont)
|
47
|
+
end
|
48
|
+
|
49
|
+
@baseFont = baseFont
|
50
|
+
end
|
51
|
+
|
52
|
+
|
53
|
+
end # Document::QuestionnaireCollectorStyle
|
54
|
+
end # GroupDocs
|