Class: GroupDocs::Signature::Field

Inherits:
Api::Entity show all
Defined in:
lib/groupdocs/signature/field.rb

Defined Under Namespace

Classes: Location

Constant Summary collapse

FIELD_TYPES =
{
  :signature    => 1,
  :single_line  => 2,
  :multiline    => 3,
  :date         => 4,
  :dropdown     => 5,
  :checkbox     => 6,
}

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Api::Entity

#initialize, #inspect, #to_hash

Methods included from Api::Helpers::Accessor

#alias_accessor

Constructor Details

This class inherits a constructor from GroupDocs::Api::Entity

Instance Attribute Details

#acceptableValuesObject



76
77
78
# File 'lib/groupdocs/signature/field.rb', line 76

def acceptableValues
  @acceptableValues
end

#alignObject



104
105
106
# File 'lib/groupdocs/signature/field.rb', line 104

def align
  @align
end

#defaultValueObject



78
79
80
# File 'lib/groupdocs/signature/field.rb', line 78

def defaultValue
  @defaultValue
end

#fieldTypeObject



74
75
76
# File 'lib/groupdocs/signature/field.rb', line 74

def fieldType
  @fieldType
end

#fontBoldObject



64
65
66
# File 'lib/groupdocs/signature/field.rb', line 64

def fontBold
  @fontBold
end

#fontColorObject



60
61
62
# File 'lib/groupdocs/signature/field.rb', line 60

def fontColor
  @fontColor
end

#fontItalicObject



66
67
68
# File 'lib/groupdocs/signature/field.rb', line 66

def fontItalic
  @fontItalic
end

#fontNameObject



58
59
60
# File 'lib/groupdocs/signature/field.rb', line 58

def fontName
  @fontName
end

#fontSizeObject



62
63
64
# File 'lib/groupdocs/signature/field.rb', line 62

def fontSize
  @fontSize
end

#fontUnderlineObject



68
69
70
# File 'lib/groupdocs/signature/field.rb', line 68

def fontUnderline
  @fontUnderline
end

#forceNewFieldObject



120
121
122
# File 'lib/groupdocs/signature/field.rb', line 120

def forceNewField
  @forceNewField
end

#getDataFromObject



54
55
56
# File 'lib/groupdocs/signature/field.rb', line 54

def getDataFrom
  @getDataFrom
end

#graphSizeHObject



52
53
54
# File 'lib/groupdocs/signature/field.rb', line 52

def graphSizeH
  @graphSizeH
end

#graphSizeWObject



50
51
52
# File 'lib/groupdocs/signature/field.rb', line 50

def graphSizeW
  @graphSizeW
end

#groupNameObject



100
101
102
# File 'lib/groupdocs/signature/field.rb', line 100

def groupName
  @groupName
end

#guidanceTextObject



106
107
108
# File 'lib/groupdocs/signature/field.rb', line 106

def guidanceText
  @guidanceText
end

#idObject



40
41
42
# File 'lib/groupdocs/signature/field.rb', line 40

def id
  @id
end

#inputObject



82
83
84
# File 'lib/groupdocs/signature/field.rb', line 82

def input
  @input
end

#isSystemObject



70
71
72
# File 'lib/groupdocs/signature/field.rb', line 70

def isSystem
  @isSystem
end

#locationObject



90
91
92
# File 'lib/groupdocs/signature/field.rb', line 90

def location
  @location
end

#locationHeightObject



118
119
120
# File 'lib/groupdocs/signature/field.rb', line 118

def locationHeight
  @locationHeight
end

#locationsObject



92
93
94
# File 'lib/groupdocs/signature/field.rb', line 92

def locations
  @locations
end

#locationWidthObject



116
117
118
# File 'lib/groupdocs/signature/field.rb', line 116

def locationWidth
  @locationWidth
end

#locationXObject



112
113
114
# File 'lib/groupdocs/signature/field.rb', line 112

def locationX
  @locationX
end

#locationYObject



114
115
116
# File 'lib/groupdocs/signature/field.rb', line 114

def locationY
  @locationY
end

#mandatoryObject



72
73
74
# File 'lib/groupdocs/signature/field.rb', line 72

def mandatory
  @mandatory
end

#nameObject



48
49
50
# File 'lib/groupdocs/signature/field.rb', line 48

def name
  @name
end

#orderObject



84
85
86
# File 'lib/groupdocs/signature/field.rb', line 84

def order
  @order
end

#pageObject

added in realise 2.2.0



110
111
112
# File 'lib/groupdocs/signature/field.rb', line 110

def page
  @page
end

#pageHeightObject



98
99
100
# File 'lib/groupdocs/signature/field.rb', line 98

def pageHeight
  @pageHeight
end

#pageWidthObject

added in realise 1.5.8



96
97
98
# File 'lib/groupdocs/signature/field.rb', line 96

def pageWidth
  @pageWidth
end

#recipientIdObject



44
45
46
# File 'lib/groupdocs/signature/field.rb', line 44

def recipientId
  @recipientId
end

#regularExpressionObject



56
57
58
# File 'lib/groupdocs/signature/field.rb', line 56

def regularExpression
  @regularExpression
end

#settingsObject



102
103
104
# File 'lib/groupdocs/signature/field.rb', line 102

def settings
  @settings
end

#signatureFieldIdObject



46
47
48
# File 'lib/groupdocs/signature/field.rb', line 46

def signatureFieldId
  @signatureFieldId
end

#templateIdObject



42
43
44
# File 'lib/groupdocs/signature/field.rb', line 42

def templateId
  @templateId
end

#textColumnsObject



88
89
90
# File 'lib/groupdocs/signature/field.rb', line 88

def textColumns
  @textColumns
end

#textRowsObject



86
87
88
# File 'lib/groupdocs/signature/field.rb', line 86

def textRows
  @textRows
end

#tooltipObject



80
81
82
# File 'lib/groupdocs/signature/field.rb', line 80

def tooltip
  @tooltip
end

Class Method Details

.get!(options = {}, access = {}) ⇒ Array<GroupDocs::Signature::Field>

Returns array of predefined lists.

Parameters:

  • options (Hash) (defaults to: {})

    Hash of options

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (options):

  • :id (String)

    Filter by identifier

Options Hash (access):

  • :client_id (String)
  • :private_key (String)

Returns:



25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/groupdocs/signature/field.rb', line 25

def self.get!(options = {}, access = {})
  api = Api::Request.new do |request|
    request[:access] = access
    request[:method] = :GET
    request[:path] = '/signature/{{client_id}}/fields'
  end
  api.add_params(options)
  json = api.execute!

  json[:fields].map do |field|
    new(field)
  end
end

Instance Method Details

#acceptable_valuesArray<String>

Converts acceptable values to human-readable format.

Returns:

  • (Array<String>)


218
219
220
# File 'lib/groupdocs/signature/field.rb', line 218

def acceptable_values
  @acceptableValues.split(';') if @acceptableValues
end

#acceptable_values=(values) ⇒ Object

Converts array of acceptable values to machine-readable format.

Parameters:

  • values (Array<String>)


206
207
208
209
210
211
212
# File 'lib/groupdocs/signature/field.rb', line 206

def acceptable_values=(values)
  if values.is_a?(Array)
    values = values.join(';')
  end

  @acceptableValues = values
end

#create!(access = {}) ⇒ Object

Creates signature field.

Examples:

field = GroupDocs::Signature::Field.new
field.name = 'Field'
field.create!

Parameters:

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)


234
235
236
237
238
239
240
241
242
243
# File 'lib/groupdocs/signature/field.rb', line 234

def create!(access = {})
  json = Api::Request.new do |request|
    request[:access] = access
    request[:method] = :POST
    request[:path] = '/signature/{{client_id}}/field'
    request[:request_body] = to_hash
  end.execute!

  self.id = json[:field][:id]
end

#delete!(access = {}) ⇒ Object

Deletes signature field.

Examples:

Remove all created fields

fields = GroupDocs::Signature::Field.get!.select { |field| !field.is_system }
fields.each { |field| field.delete! }

Parameters:

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)


277
278
279
280
281
282
283
# File 'lib/groupdocs/signature/field.rb', line 277

def delete!(access = {})
  Api::Request.new do |request|
    request[:access] = access
    request[:method] = :DELETE
    request[:path] = "/signature/{{client_id}}/fields/#{id}"
  end.execute!
end

#field_typeSymbol Also known as: type

Returns field type in human-readable format.

Returns:

  • (Symbol)


197
198
199
# File 'lib/groupdocs/signature/field.rb', line 197

def field_type
  FIELD_TYPES.invert[@fieldType]
end

#field_type=(type) ⇒ Object Also known as: type=

Saves field type in machine-readable format.

Parameters:

  • type (Symbol, Integer)


184
185
186
187
188
189
190
# File 'lib/groupdocs/signature/field.rb', line 184

def field_type=(type)
  if type.is_a?(Symbol)
    type = FIELD_TYPES[type]
  end

  @fieldType = type
end

#modify!(access = {}) ⇒ Object

Modifies signature field.

Examples:

field = GroupDocs::Signature::Field.get!.first
field.name = 'Field'
field.modify!

Parameters:

  • access (Hash) (defaults to: {})

    Access credentials

Options Hash (access):

  • :client_id (String)
  • :private_key (String)


257
258
259
260
261
262
263
264
# File 'lib/groupdocs/signature/field.rb', line 257

def modify!(access = {})
  Api::Request.new do |request|
    request[:access] = access
    request[:method] = :POST
    request[:path] = "/signature/{{client_id}}/fields/#{id}"
    request[:request_body] = to_hash
  end.execute!
end