lib/rturk/adapters/assignment.rb in rturk-2.0.0 vs lib/rturk/adapters/assignment.rb in rturk-2.0.1

- old
+ new

@@ -1,9 +1,9 @@ require 'time' module RTurk - + # Parses: # <Assignment> # <AssignmentId>GYFTRHZ5J3DZREY48WNZE38ZR9RR1ZPMXGWE7WE0</AssignmentId> # <WorkerId>AD20WXZZP9XXK</WorkerId> # <HITId>GYFTRHZ5J3DZREY48WNZ</HITId> @@ -20,56 +20,54 @@ # <FreeText>Move to X.</FreeText> # </Answer> # </QuestionFormAnswers> # </Answer> # </Assignment> - + class Assignment include RTurk::XmlUtilities - + attr_accessor :worker_id, :id, :status, :submitted_at, :accepted_at, :approved_at attr_reader :answers - + def initialize(xml_object) map_content(xml_object, - :id => 'AssignmentId', - :worker_id => 'WorkerId', - :status => 'AssignmentStatus', - :accepted_at => 'AcceptTime', - :approved_at => "ApprovalTime", - :submitted_at => 'SubmitTime') - self.answers = xml_object.xpath('Answer').children.to_s + :id => 'AssignmentId', + :worker_id => 'WorkerId', + :status => 'AssignmentStatus', + :accepted_at => 'AcceptTime', + :approved_at => "ApprovalTime", + :submitted_at => 'SubmitTime') + self.answers = xml_object.xpath('Answer') end - + def approved_at=(time) @approved_at = Time.parse(time) end - + def submitted_at=(time) @submitted_at = Time.parse(time) end def accepted_at=(time) @accepted_at = Time.parse(time) end - + def approve!(feedback = nil) RTurk::ApproveAssignment(:assignment_id => self.id, :feedback => feedback) end - + def reject!(reason) RTurk::ApproveAssignment(:assignment_id => self.id, :feedback => reason) end - + def bonus!(amount, reason) - RTurk::GrantBonus(:amount, :feedback => reason) + RTurk::GrantBonus(:amount, :feedback => reason) end - + def answers=(answer_xml) - unless answer_xml.empty? - @answers = RTurk::Answers.new(answer_xml) - end + @answers = RTurk::Answers.new(answer_xml.children.to_s) end - + end - -end \ No newline at end of file + +end