Class: OdkInstance

Inherits:
Object
  • Object
show all
Defined in:
lib/opendatakit.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(url) ⇒ OdkInstance

Returns a new instance of OdkInstance.



6
7
8
# File 'lib/opendatakit.rb', line 6

def initialize(url)
  @url = URI.parse(url)
end

Instance Attribute Details

#urlObject

Returns the value of attribute url.



5
6
7
# File 'lib/opendatakit.rb', line 5

def url
  @url
end

Instance Method Details

#getSubmissions(formname) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/opendatakit.rb', line 12

def getSubmissions(formname)
  submission_url = URI.join(@url,"/view/submissionList")
  params = { :formId => formname}
  submission_url.query = URI.encode_www_form( params )
  http = HTTPClient.new
  httpresults = http.get submission_url
  if httpresults.status == 404
    puts "Form name not found"
    exit
  end
  submission_xml = httpresults.content
  doc = REXML::Document.new(submission_xml)
  submissions = []
  all_upc_strings = doc.elements.to_a("idChunk/idList")
  all_id_elements = doc.elements.to_a( "//id" )
  #doc.elements.each("idChunk/idList") { |element| submissions.push(element.elements["id"].text) }
  puts all_id_elements 
end

#uploadForm(form_xml) ⇒ Object



30
31
32
33
34
35
36
37
38
39
# File 'lib/opendatakit.rb', line 30

def uploadForm(form_xml)
  form_post_url = URI.join(@url,"/formUpload")
  params = { :form_def_file => File.open(form_xml)}
  doc = REXML::Document.new(File.open(form_xml))
  title = REXML::XPath.first( doc, "//h:title" )
  #form_post_url.query = URI.encode_www_form( params )
  http = HTTPClient.new
  #httpresults = http.post(form_post_url,params)
  puts title.text
end