Chrononaut-hostconnect 0.1.3 → 0.1.4

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 CHANGED
@@ -1,3 +1,4 @@
1
+ v0.1.4 Additional features
1
2
  v0.1.3 Bugfixes
2
3
  v0.1.2 Minor revision
3
4
  v0.1.1 Minor revision
data/hostconnect.gemspec CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hostconnect
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - "Bj\xC3\xB8rn Arild M\xC3\xA6land"
8
8
  autorequire:
9
9
  bindir: bin
10
10
 
11
- date: 2008-09-11 00:00:00 +02:00
11
+ date: 2008-09-15 00:00:00 +02:00
12
12
  default_executable:
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
@@ -73,6 +73,7 @@ extra_rdoc_files:
73
73
  - lib/hostconnect.rb
74
74
  - lib/hostconnect/builders/agent_info_builder.rb
75
75
  - lib/hostconnect/builders/pax_details_builder.rb
76
+ - lib/hostconnect/builders/record_booking_payment_builder.rb
76
77
  - lib/hostconnect/builders/add_service_builder.rb
77
78
  - lib/hostconnect/builders/room_config_builder.rb
78
79
  - lib/hostconnect/builders/get_booking_builder.rb
@@ -83,6 +84,7 @@ extra_rdoc_files:
83
84
  - lib/hostconnect/builders/suppler_info_builder.rb
84
85
  - lib/hostconnect/builders/list_bookings_builder.rb
85
86
  - lib/hostconnect/builders/option_info_builder.rb
87
+ - lib/hostconnect/builders/get_booking_payment_summary_builder.rb
86
88
  - lib/hostconnect/builders/service_line_note_builder.rb
87
89
  - lib/hostconnect/builders/ping_builder.rb
88
90
  - lib/hostconnect/coercion.rb
@@ -94,7 +96,9 @@ extra_rdoc_files:
94
96
  - lib/hostconnect/responses/list_bookings.rb
95
97
  - lib/hostconnect/responses/get_locations.rb
96
98
  - lib/hostconnect/responses/get_booking.rb
99
+ - lib/hostconnect/responses/record_booking_payment.rb
97
100
  - lib/hostconnect/responses/option_info.rb
101
+ - lib/hostconnect/responses/get_booking_payment_summary.rb
98
102
  - lib/hostconnect/responses/add_service.rb
99
103
  - lib/hostconnect/responses/supplier_info.rb
100
104
  - lib/hostconnect/responses/get_system_settings.rb
@@ -111,6 +115,7 @@ files:
111
115
  - lib/hostconnect.rb
112
116
  - lib/hostconnect/builders/agent_info_builder.rb
113
117
  - lib/hostconnect/builders/pax_details_builder.rb
118
+ - lib/hostconnect/builders/record_booking_payment_builder.rb
114
119
  - lib/hostconnect/builders/add_service_builder.rb
115
120
  - lib/hostconnect/builders/room_config_builder.rb
116
121
  - lib/hostconnect/builders/get_booking_builder.rb
@@ -121,6 +126,7 @@ files:
121
126
  - lib/hostconnect/builders/suppler_info_builder.rb
122
127
  - lib/hostconnect/builders/list_bookings_builder.rb
123
128
  - lib/hostconnect/builders/option_info_builder.rb
129
+ - lib/hostconnect/builders/get_booking_payment_summary_builder.rb
124
130
  - lib/hostconnect/builders/service_line_note_builder.rb
125
131
  - lib/hostconnect/builders/ping_builder.rb
126
132
  - lib/hostconnect/coercion.rb
@@ -132,7 +138,9 @@ files:
132
138
  - lib/hostconnect/responses/list_bookings.rb
133
139
  - lib/hostconnect/responses/get_locations.rb
134
140
  - lib/hostconnect/responses/get_booking.rb
141
+ - lib/hostconnect/responses/record_booking_payment.rb
135
142
  - lib/hostconnect/responses/option_info.rb
143
+ - lib/hostconnect/responses/get_booking_payment_summary.rb
136
144
  - lib/hostconnect/responses/add_service.rb
137
145
  - lib/hostconnect/responses/supplier_info.rb
138
146
  - lib/hostconnect/responses/get_system_settings.rb
@@ -0,0 +1,20 @@
1
+ module HostConnect
2
+ class GetBookingPaymentSummaryBuilder < AbstractBuilder
3
+ def initialize(options = {})
4
+ @valid_options = [ :agent_id, :password, :booking_id ].freeze
5
+ super(options)
6
+ end
7
+
8
+ def to_xml
9
+ x = bare
10
+ x.Request {
11
+ x.GetBookingPaymentSummaryRequest {
12
+ x.AgentID @agent_id
13
+ x.Password @password
14
+ x.BookingId @booking_id
15
+ }
16
+ }
17
+ x
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,24 @@
1
+ module HostConnect
2
+ class RecordBookingPaymentBuilder < AbstractBuilder
3
+ def initialize(options = {})
4
+ @valid_options = [ :agent_id, :password, :booking_id, :currency,
5
+ :amount, :receipt_type ].freeze
6
+ super(options)
7
+ end
8
+
9
+ def to_xml
10
+ x = bare
11
+ x.Request {
12
+ x.RecordBookingPaymentRequest {
13
+ x.AgentID @agent_id
14
+ x.Password @password
15
+ x.BookingId @booking_id
16
+ x.Currency @currency
17
+ x.Amount @amount.to_i * 100
18
+ x.ReceiptType @receipt_type
19
+ }
20
+ }
21
+ x
22
+ end
23
+ end
24
+ end
@@ -94,8 +94,8 @@ module HostConnect
94
94
  # Sets all instance variables. This only works for the simple requests.
95
95
  # For convenience, query methods gets defined for booleans.
96
96
  def set_attrs
97
- class_name = ActiveSupport::Inflector.demodulize(self.class) << "Reply"
98
- @data.search("/Reply/" << class_name) do |n|
97
+ reply_name = ActiveSupport::Inflector.demodulize(self.class) << "Reply"
98
+ @data.search("/Reply/" << reply_name) do |n|
99
99
  n.containers.each do |e|
100
100
  var = e.name.underscore
101
101
 
@@ -0,0 +1,21 @@
1
+ module HostConnect
2
+ class GetBookingPaymentSummary < AbstractResponse
3
+ private
4
+ def populate
5
+ @data.search("/Reply/GetBookingPaymentSummaryReply") do |n|
6
+ n.containers.each do |e|
7
+ var = e.name.underscore
8
+
9
+ if var == "currency"
10
+ value = Hpricot.uxs(e.innerHTML)
11
+ else
12
+ value = Coercion.price(Hpricot.uxs(e.innerHTML))
13
+ end
14
+
15
+ instance_variable_set("@#{var}", value)
16
+ self.class.class_eval "attr_reader :#{var}"
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,4 @@
1
+ module HostConnect
2
+ class RecordBookingPayment < AbstractResponse
3
+ end
4
+ end
@@ -2,16 +2,17 @@ module HostConnect
2
2
  # Translate to/from HostConnect codes
3
3
  class Translation
4
4
  GRAMMAR = {
5
- "SG" => "Single",
6
- "TW" => "Twin",
7
- "DB" => "Double",
8
- "TR" => "Triple",
9
- "QD" => "Quad",
10
- "CF" => "Confirmed",
11
- "CX" => "Cancelled",
12
- "FQ" => "FIT Quote",
13
- "IN" => "Internet Booking",
14
- "RQ" => "Request"
5
+ "SG" => "Single",
6
+ "TW" => "Twin",
7
+ "DB" => "Double",
8
+ "TR" => "Triple",
9
+ "QD" => "Quad",
10
+ "CF" => "Confirmed",
11
+ "CX" => "Cancelled",
12
+ "FQ" => "FIT Quote",
13
+ "IN" => "Internet Booking",
14
+ "RQ" => "Request",
15
+ "CRCD" => "Credit Card Payment"
15
16
  }
16
17
 
17
18
  def self.translate(string)
data/lib/hostconnect.rb CHANGED
@@ -23,7 +23,7 @@ module HostConnect
23
23
  module Version
24
24
  MAJOR = '0'
25
25
  MINOR = '1'
26
- REVISION = '2'
26
+ REVISION = '4'
27
27
  def self.combined
28
28
  [MAJOR, MINOR, REVISION].join('.')
29
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: Chrononaut-hostconnect
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - "Bj\xC3\xB8rn Arild M\xC3\xA6land"
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
- date: 2008-09-10 15:00:00 -07:00
11
+ date: 2008-09-14 15:00:00 -07:00
12
12
  default_executable:
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
@@ -73,6 +73,7 @@ extra_rdoc_files:
73
73
  - lib/hostconnect.rb
74
74
  - lib/hostconnect/builders/agent_info_builder.rb
75
75
  - lib/hostconnect/builders/pax_details_builder.rb
76
+ - lib/hostconnect/builders/record_booking_payment_builder.rb
76
77
  - lib/hostconnect/builders/add_service_builder.rb
77
78
  - lib/hostconnect/builders/room_config_builder.rb
78
79
  - lib/hostconnect/builders/get_booking_builder.rb
@@ -83,6 +84,7 @@ extra_rdoc_files:
83
84
  - lib/hostconnect/builders/suppler_info_builder.rb
84
85
  - lib/hostconnect/builders/list_bookings_builder.rb
85
86
  - lib/hostconnect/builders/option_info_builder.rb
87
+ - lib/hostconnect/builders/get_booking_payment_summary_builder.rb
86
88
  - lib/hostconnect/builders/service_line_note_builder.rb
87
89
  - lib/hostconnect/builders/ping_builder.rb
88
90
  - lib/hostconnect/coercion.rb
@@ -94,7 +96,9 @@ extra_rdoc_files:
94
96
  - lib/hostconnect/responses/list_bookings.rb
95
97
  - lib/hostconnect/responses/get_locations.rb
96
98
  - lib/hostconnect/responses/get_booking.rb
99
+ - lib/hostconnect/responses/record_booking_payment.rb
97
100
  - lib/hostconnect/responses/option_info.rb
101
+ - lib/hostconnect/responses/get_booking_payment_summary.rb
98
102
  - lib/hostconnect/responses/add_service.rb
99
103
  - lib/hostconnect/responses/supplier_info.rb
100
104
  - lib/hostconnect/responses/get_system_settings.rb
@@ -111,6 +115,7 @@ files:
111
115
  - lib/hostconnect.rb
112
116
  - lib/hostconnect/builders/agent_info_builder.rb
113
117
  - lib/hostconnect/builders/pax_details_builder.rb
118
+ - lib/hostconnect/builders/record_booking_payment_builder.rb
114
119
  - lib/hostconnect/builders/add_service_builder.rb
115
120
  - lib/hostconnect/builders/room_config_builder.rb
116
121
  - lib/hostconnect/builders/get_booking_builder.rb
@@ -121,6 +126,7 @@ files:
121
126
  - lib/hostconnect/builders/suppler_info_builder.rb
122
127
  - lib/hostconnect/builders/list_bookings_builder.rb
123
128
  - lib/hostconnect/builders/option_info_builder.rb
129
+ - lib/hostconnect/builders/get_booking_payment_summary_builder.rb
124
130
  - lib/hostconnect/builders/service_line_note_builder.rb
125
131
  - lib/hostconnect/builders/ping_builder.rb
126
132
  - lib/hostconnect/coercion.rb
@@ -132,7 +138,9 @@ files:
132
138
  - lib/hostconnect/responses/list_bookings.rb
133
139
  - lib/hostconnect/responses/get_locations.rb
134
140
  - lib/hostconnect/responses/get_booking.rb
141
+ - lib/hostconnect/responses/record_booking_payment.rb
135
142
  - lib/hostconnect/responses/option_info.rb
143
+ - lib/hostconnect/responses/get_booking_payment_summary.rb
136
144
  - lib/hostconnect/responses/add_service.rb
137
145
  - lib/hostconnect/responses/supplier_info.rb
138
146
  - lib/hostconnect/responses/get_system_settings.rb