lib/groupdocs/document.rb in groupdocs-1.7.0 vs lib/groupdocs/document.rb in groupdocs-1.8.0
- old
+ new
@@ -1522,7 +1522,116 @@
json[:templateFields].map do |field|
Document::Field.new(field)
end
end
+ # added in release 1.8.0
+ #
+ # Add template editor fields to the specific document
+ #
+ # @example
+ #
+ # file = GroupDocs::Storage::File.new({:guid => '3be4e06494caed131d912c75e17d5f22592e3044032e0f81b35f13a8c9fefb49'}).to_document
+ # field = GroupDocs::Document::TemplateEditorFields.new
+ # field.name = 'test'
+ # field.fieldtype = 'TextBox'
+ # field.page = 1
+ # file.add_questionnaire_template!([field] )
+ #
+ #
+ # @param List[GroupDocs::Document::TemplateEditorFields] fields
+ # @param [Hash] access Access credentials
+ # @option access [String] :client_id
+ # @option access [String] :private_key
+ #
+ def add_questionnaire_template!(fields, access = {})
+
+ fields.each do |field|
+ field.is_a?(GroupDocs::Document::TemplateEditorFields) or raise ArgumentError,
+ "Fields should be List GroupDocs::Document::TemplateEditorFields objects, received: #{fields.inspect}"
+ end
+
+ json = Api::Request.new do |request|
+ request[:access] = access
+ request[:method] = :POST
+ request[:path] = "/merge/{{client_id}}/files/#{file.guid}/templates/add"
+ request[:request_body] = fields
+ end.execute!
+ json[:templateFields].map do |field|
+ Document::Field.new(field)
+ end
+ end
+
+
+ # added in release 1.8.0
+ #
+ # Update template's fields
+ #
+ # @example
+ #
+ # file = GroupDocs::Storage::File.new({:guid => '3be4e06494caed131d912c75e17d5f22592e3044032e0f81b35f13a8c9fefb49'}).to_document
+ # field = GroupDocs::Document::TemplateEditorFields.new
+ # field.name = 'test'
+ # field.fieldtype = 'TextBox'
+ # field.page = 1
+ # file.update_questionnaire_template!([field] )
+ #
+ #
+ # @param List[GroupDocs::Document::TemplateEditorFields] fields
+ # @param [Hash] access Access credentials
+ # @option access [String] :client_id
+ # @option access [String] :private_key
+ #
+ def update_questionnaire_template!(fields, access = {})
+
+ fields.each do |field|
+ field.is_a?(GroupDocs::Document::TemplateEditorFields) or raise ArgumentError,
+ "Fields should be List GroupDocs::Document::TemplateEditorFields objects, received: #{fields.inspect}"
+ end
+
+ json = Api::Request.new do |request|
+ request[:access] = access
+ request[:method] = :PUT
+ request[:path] = "/merge/{{client_id}}/files/#{file.guid}/templates/update"
+ request[:request_body] = fields
+ end.execute!
+ json[:templateFields].map do |field|
+ Document::Field.new(field)
+ end
+ end
+
+ # added in release 1.8.0
+ #
+ # Delete template's fields
+ #
+ # @example
+ #
+ # file = GroupDocs::Storage::File.new({:guid => '3be4e06494caed131d912c75e17d5f22592e3044032e0f81b35f13a8c9fefb49'}).to_document
+ # field = file.editor_fields!
+ # file.delete_questionnaire_template!([field] )
+ #
+ #
+ # @param List[GroupDocs::Document::TemplateEditorFields] fields
+ # @param [Hash] access Access credentials
+ # @option access [String] :client_id
+ # @option access [String] :private_key
+ #
+ def delete_questionnaire_template!(fields, access = {})
+
+ fields.each do |field|
+ field.is_a?(GroupDocs::Document::TemplateEditorFields) or raise ArgumentError,
+ "Fields should be List GroupDocs::Document::TemplateEditorFields objects, received: #{fields.inspect}"
+ end
+
+ json = Api::Request.new do |request|
+ request[:access] = access
+ request[:method] = :DELETE
+ request[:path] = "/merge/{{client_id}}/files/#{file.guid}/templates/delete"
+ request[:request_body] = fields
+ end.execute!
+ json[:templateFields].map do |field|
+ Document::Field.new(field)
+ end
+ end
+
end # Document
end # GroupDocs