t2_airtime 0.2.0 → 0.2.1

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.
@@ -0,0 +1,491 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
5
+ <meta charset="utf-8" />
6
+
7
+ <link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" charset="utf-8" />
8
+
9
+ <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
10
+
11
+
12
+
13
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
14
+
15
+ <script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
16
+
17
+
18
+ <title>Method List</title>
19
+ <base id="base_target" target="_parent" />
20
+ </head>
21
+ <body>
22
+ <div id="content">
23
+ <div class="fixed_header">
24
+ <h1 id="full_list_header">Method List</h1>
25
+ <div id="full_list_nav">
26
+
27
+ <span><a target="_self" href="class_list.html">
28
+ Classes
29
+ </a></span>
30
+
31
+ <span><a target="_self" href="method_list.html">
32
+ Methods
33
+ </a></span>
34
+
35
+ <span><a target="_self" href="file_list.html">
36
+ Files
37
+ </a></span>
38
+
39
+ </div>
40
+
41
+ <div id="search">Search: <input type="text" /></div>
42
+ </div>
43
+
44
+ <ul id="full_list" class="method">
45
+
46
+
47
+ <li class="odd ">
48
+ <div class="item">
49
+ <span class='object_link'><a href="T2Airtime/Request.html#add_param-instance_method" title="T2Airtime::Request#add_param (method)">#add_param</a></span>
50
+ <small>T2Airtime::Request</small>
51
+ </div>
52
+ </li>
53
+
54
+
55
+ <li class="even ">
56
+ <div class="item">
57
+ <span class='object_link'><a href="T2Airtime/Country.html#alpha3-class_method" title="T2Airtime::Country.alpha3 (method)">alpha3</a></span>
58
+ <small>T2Airtime::Country</small>
59
+ </div>
60
+ </li>
61
+
62
+
63
+ <li class="odd ">
64
+ <div class="item">
65
+ <span class='object_link'><a href="T2Airtime/Base.html#api-class_method" title="T2Airtime::Base.api (method)">api</a></span>
66
+ <small>T2Airtime::Base</small>
67
+ </div>
68
+ </li>
69
+
70
+
71
+ <li class="even ">
72
+ <div class="item">
73
+ <span class='object_link'><a href="T2Airtime/Reply.html#auth_key-instance_method" title="T2Airtime::Reply#auth_key (method)">#auth_key</a></span>
74
+ <small>T2Airtime::Reply</small>
75
+ </div>
76
+ </li>
77
+
78
+
79
+ <li class="odd ">
80
+ <div class="item">
81
+ <span class='object_link'><a href="T2Airtime/Request.html#authenticate-instance_method" title="T2Airtime::Request#authenticate (method)">#authenticate</a></span>
82
+ <small>T2Airtime::Request</small>
83
+ </div>
84
+ </li>
85
+
86
+
87
+ <li class="even ">
88
+ <div class="item">
89
+ <span class='object_link'><a href="T2Airtime/API.html#check_wallet-instance_method" title="T2Airtime::API#check_wallet (method)">#check_wallet</a></span>
90
+ <small>T2Airtime::API</small>
91
+ </div>
92
+ </li>
93
+
94
+
95
+ <li class="odd ">
96
+ <div class="item">
97
+ <span class='object_link'><a href="T2Airtime/Error.html#code-instance_method" title="T2Airtime::Error#code (method)">#code</a></span>
98
+ <small>T2Airtime::Error</small>
99
+ </div>
100
+ </li>
101
+
102
+
103
+ <li class="even ">
104
+ <div class="item">
105
+ <span class='object_link'><a href="T2Airtime/API.html#country_list-instance_method" title="T2Airtime::API#country_list (method)">#country_list</a></span>
106
+ <small>T2Airtime::API</small>
107
+ </div>
108
+ </li>
109
+
110
+
111
+ <li class="odd ">
112
+ <div class="item">
113
+ <span class='object_link'><a href="T2Airtime/Reply.html#data-instance_method" title="T2Airtime::Reply#data (method)">#data</a></span>
114
+ <small>T2Airtime::Reply</small>
115
+ </div>
116
+ </li>
117
+
118
+
119
+ <li class="even ">
120
+ <div class="item">
121
+ <span class='object_link'><a href="T2Airtime/Reply.html#error_code-instance_method" title="T2Airtime::Reply#error_code (method)">#error_code</a></span>
122
+ <small>T2Airtime::Reply</small>
123
+ </div>
124
+ </li>
125
+
126
+
127
+ <li class="odd ">
128
+ <div class="item">
129
+ <span class='object_link'><a href="T2Airtime/Reply.html#error_message-instance_method" title="T2Airtime::Reply#error_message (method)">#error_message</a></span>
130
+ <small>T2Airtime::Reply</small>
131
+ </div>
132
+ </li>
133
+
134
+
135
+ <li class="even ">
136
+ <div class="item">
137
+ <span class='object_link'><a href="T2Airtime/Util.html#format_price-class_method" title="T2Airtime::Util.format_price (method)">format_price</a></span>
138
+ <small>T2Airtime::Util</small>
139
+ </div>
140
+ </li>
141
+
142
+
143
+ <li class="odd ">
144
+ <div class="item">
145
+ <span class='object_link'><a href="T2Airtime/Request.html#get%3F-instance_method" title="T2Airtime::Request#get? (method)">#get?</a></span>
146
+ <small>T2Airtime::Request</small>
147
+ </div>
148
+ </li>
149
+
150
+
151
+ <li class="even ">
152
+ <div class="item">
153
+ <span class='object_link'><a href="T2Airtime/API.html#get_id_from_key-instance_method" title="T2Airtime::API#get_id_from_key (method)">#get_id_from_key</a></span>
154
+ <small>T2Airtime::API</small>
155
+ </div>
156
+ </li>
157
+
158
+
159
+ <li class="odd ">
160
+ <div class="item">
161
+ <span class='object_link'><a href="T2Airtime/Reply.html#headers-instance_method" title="T2Airtime::Reply#headers (method)">#headers</a></span>
162
+ <small>T2Airtime::Reply</small>
163
+ </div>
164
+ </li>
165
+
166
+
167
+ <li class="even ">
168
+ <div class="item">
169
+ <span class='object_link'><a href="T2Airtime/Account.html#info-class_method" title="T2Airtime::Account.info (method)">info</a></span>
170
+ <small>T2Airtime::Account</small>
171
+ </div>
172
+ </li>
173
+
174
+
175
+ <li class="odd ">
176
+ <div class="item">
177
+ <span class='object_link'><a href="T2Airtime/Reply.html#information-instance_method" title="T2Airtime::Reply#information (method)">#information</a></span>
178
+ <small>T2Airtime::Reply</small>
179
+ </div>
180
+ </li>
181
+
182
+
183
+ <li class="even ">
184
+ <div class="item">
185
+ <span class='object_link'><a href="T2Airtime/Base.html#initialize-instance_method" title="T2Airtime::Base#initialize (method)">#initialize</a></span>
186
+ <small>T2Airtime::Base</small>
187
+ </div>
188
+ </li>
189
+
190
+
191
+ <li class="odd ">
192
+ <div class="item">
193
+ <span class='object_link'><a href="T2Airtime/Reply.html#initialize-instance_method" title="T2Airtime::Reply#initialize (method)">#initialize</a></span>
194
+ <small>T2Airtime::Reply</small>
195
+ </div>
196
+ </li>
197
+
198
+
199
+ <li class="even ">
200
+ <div class="item">
201
+ <span class='object_link'><a href="T2Airtime/Error.html#initialize-instance_method" title="T2Airtime::Error#initialize (method)">#initialize</a></span>
202
+ <small>T2Airtime::Error</small>
203
+ </div>
204
+ </li>
205
+
206
+
207
+ <li class="odd ">
208
+ <div class="item">
209
+ <span class='object_link'><a href="T2Airtime/Request.html#initialize-instance_method" title="T2Airtime::Request#initialize (method)">#initialize</a></span>
210
+ <small>T2Airtime::Request</small>
211
+ </div>
212
+ </li>
213
+
214
+
215
+ <li class="even ">
216
+ <div class="item">
217
+ <span class='object_link'><a href="T2Airtime/Request.html#key-instance_method" title="T2Airtime::Request#key (method)">#key</a></span>
218
+ <small>T2Airtime::Request</small>
219
+ </div>
220
+ </li>
221
+
222
+
223
+ <li class="odd ">
224
+ <div class="item">
225
+ <span class='object_link'><a href="T2Airtime/Reply.html#message-instance_method" title="T2Airtime::Reply#message (method)">#message</a></span>
226
+ <small>T2Airtime::Reply</small>
227
+ </div>
228
+ </li>
229
+
230
+
231
+ <li class="even ">
232
+ <div class="item">
233
+ <span class='object_link'><a href="T2Airtime/API.html#msisdn_info-instance_method" title="T2Airtime::API#msisdn_info (method)">#msisdn_info</a></span>
234
+ <small>T2Airtime::API</small>
235
+ </div>
236
+ </li>
237
+
238
+
239
+ <li class="odd ">
240
+ <div class="item">
241
+ <span class='object_link'><a href="T2Airtime/Country.html#normalize-class_method" title="T2Airtime::Country.normalize (method)">normalize</a></span>
242
+ <small>T2Airtime::Country</small>
243
+ </div>
244
+ </li>
245
+
246
+
247
+ <li class="even ">
248
+ <div class="item">
249
+ <span class='object_link'><a href="T2Airtime/API.html#operator_list-instance_method" title="T2Airtime::API#operator_list (method)">#operator_list</a></span>
250
+ <small>T2Airtime::API</small>
251
+ </div>
252
+ </li>
253
+
254
+
255
+ <li class="odd ">
256
+ <div class="item">
257
+ <span class='object_link'><a href="T2Airtime/Util.html#operator_logo_url-class_method" title="T2Airtime::Util.operator_logo_url (method)">operator_logo_url</a></span>
258
+ <small>T2Airtime::Util</small>
259
+ </div>
260
+ </li>
261
+
262
+
263
+ <li class="even ">
264
+ <div class="item">
265
+ <span class='object_link'><a href="T2Airtime/API.html#ping-instance_method" title="T2Airtime::API#ping (method)">#ping</a></span>
266
+ <small>T2Airtime::API</small>
267
+ </div>
268
+ </li>
269
+
270
+
271
+ <li class="odd ">
272
+ <div class="item">
273
+ <span class='object_link'><a href="T2Airtime/Request.html#post%3F-instance_method" title="T2Airtime::Request#post? (method)">#post?</a></span>
274
+ <small>T2Airtime::Request</small>
275
+ </div>
276
+ </li>
277
+
278
+
279
+ <li class="even ">
280
+ <div class="item">
281
+ <span class='object_link'><a href="T2Airtime/API.html#price_list-instance_method" title="T2Airtime::API#price_list (method)">#price_list</a></span>
282
+ <small>T2Airtime::API</small>
283
+ </div>
284
+ </li>
285
+
286
+
287
+ <li class="odd ">
288
+ <div class="item">
289
+ <span class='object_link'><a href="T2Airtime/API.html#product_list-instance_method" title="T2Airtime::API#product_list (method)">#product_list</a></span>
290
+ <small>T2Airtime::API</small>
291
+ </div>
292
+ </li>
293
+
294
+
295
+ <li class="even ">
296
+ <div class="item">
297
+ <span class='object_link'><a href="T2Airtime/Reply.html#raw-instance_method" title="T2Airtime::Reply#raw (method)">#raw</a></span>
298
+ <small>T2Airtime::Reply</small>
299
+ </div>
300
+ </li>
301
+
302
+
303
+ <li class="odd ">
304
+ <div class="item">
305
+ <span class='object_link'><a href="T2Airtime/Country.html#register_alpha3-class_method" title="T2Airtime::Country.register_alpha3 (method)">register_alpha3</a></span>
306
+ <small>T2Airtime::Country</small>
307
+ </div>
308
+ </li>
309
+
310
+
311
+ <li class="even ">
312
+ <div class="item">
313
+ <span class='object_link'><a href="T2Airtime/API.html#reserve_id-instance_method" title="T2Airtime::API#reserve_id (method)">#reserve_id</a></span>
314
+ <small>T2Airtime::API</small>
315
+ </div>
316
+ </li>
317
+
318
+
319
+ <li class="odd ">
320
+ <div class="item">
321
+ <span class='object_link'><a href="T2Airtime/Request.html#reset-instance_method" title="T2Airtime::Request#reset (method)">#reset</a></span>
322
+ <small>T2Airtime::Request</small>
323
+ </div>
324
+ </li>
325
+
326
+
327
+ <li class="even ">
328
+ <div class="item">
329
+ <span class='object_link'><a href="T2Airtime/Request.html#run-instance_method" title="T2Airtime::Request#run (method)">#run</a></span>
330
+ <small>T2Airtime::Request</small>
331
+ </div>
332
+ </li>
333
+
334
+
335
+ <li class="odd ">
336
+ <div class="item">
337
+ <span class='object_link'><a href="T2Airtime/Base.html#run_action-instance_method" title="T2Airtime::Base#run_action (method)">#run_action</a></span>
338
+ <small>T2Airtime::Base</small>
339
+ </div>
340
+ </li>
341
+
342
+
343
+ <li class="even ">
344
+ <div class="item">
345
+ <span class='object_link'><a href="T2Airtime/Account.html#serialize-class_method" title="T2Airtime::Account.serialize (method)">serialize</a></span>
346
+ <small>T2Airtime::Account</small>
347
+ </div>
348
+ </li>
349
+
350
+
351
+ <li class="odd ">
352
+ <div class="item">
353
+ <span class='object_link'><a href="T2Airtime/Country.html#serialize-class_method" title="T2Airtime::Country.serialize (method)">serialize</a></span>
354
+ <small>T2Airtime::Country</small>
355
+ </div>
356
+ </li>
357
+
358
+
359
+ <li class="even ">
360
+ <div class="item">
361
+ <span class='object_link'><a href="T2Airtime/Operator.html#serialize-class_method" title="T2Airtime::Operator.serialize (method)">serialize</a></span>
362
+ <small>T2Airtime::Operator</small>
363
+ </div>
364
+ </li>
365
+
366
+
367
+ <li class="odd ">
368
+ <div class="item">
369
+ <span class='object_link'><a href="T2Airtime/Product.html#serialize-class_method" title="T2Airtime::Product.serialize (method)">serialize</a></span>
370
+ <small>T2Airtime::Product</small>
371
+ </div>
372
+ </li>
373
+
374
+
375
+ <li class="even ">
376
+ <div class="item">
377
+ <span class='object_link'><a href="T2Airtime/Transaction.html#serialize-class_method" title="T2Airtime::Transaction.serialize (method)">serialize</a></span>
378
+ <small>T2Airtime::Transaction</small>
379
+ </div>
380
+ </li>
381
+
382
+
383
+ <li class="odd ">
384
+ <div class="item">
385
+ <span class='object_link'><a href="T2Airtime/Transaction.html#serialize_one-class_method" title="T2Airtime::Transaction.serialize_one (method)">serialize_one</a></span>
386
+ <small>T2Airtime::Transaction</small>
387
+ </div>
388
+ </li>
389
+
390
+
391
+ <li class="even ">
392
+ <div class="item">
393
+ <span class='object_link'><a href="T2Airtime/Transaction.html#show-class_method" title="T2Airtime::Transaction.show (method)">show</a></span>
394
+ <small>T2Airtime::Transaction</small>
395
+ </div>
396
+ </li>
397
+
398
+
399
+ <li class="odd ">
400
+ <div class="item">
401
+ <span class='object_link'><a href="T2Airtime/Reply.html#status-instance_method" title="T2Airtime::Reply#status (method)">#status</a></span>
402
+ <small>T2Airtime::Reply</small>
403
+ </div>
404
+ </li>
405
+
406
+
407
+ <li class="even ">
408
+ <div class="item">
409
+ <span class='object_link'><a href="T2Airtime/Reply.html#success%3F-instance_method" title="T2Airtime::Reply#success? (method)">#success?</a></span>
410
+ <small>T2Airtime::Reply</small>
411
+ </div>
412
+ </li>
413
+
414
+
415
+ <li class="odd ">
416
+ <div class="item">
417
+ <span class='object_link'><a href="T2Airtime/Country.html#take-class_method" title="T2Airtime::Country.take (method)">take</a></span>
418
+ <small>T2Airtime::Country</small>
419
+ </div>
420
+ </li>
421
+
422
+
423
+ <li class="even ">
424
+ <div class="item">
425
+ <span class='object_link'><a href="T2Airtime/Operator.html#take-class_method" title="T2Airtime::Operator.take (method)">take</a></span>
426
+ <small>T2Airtime::Operator</small>
427
+ </div>
428
+ </li>
429
+
430
+
431
+ <li class="odd ">
432
+ <div class="item">
433
+ <span class='object_link'><a href="T2Airtime/Product.html#take-class_method" title="T2Airtime::Product.take (method)">take</a></span>
434
+ <small>T2Airtime::Product</small>
435
+ </div>
436
+ </li>
437
+
438
+
439
+ <li class="even ">
440
+ <div class="item">
441
+ <span class='object_link'><a href="T2Airtime/Transaction.html#take-class_method" title="T2Airtime::Transaction.take (method)">take</a></span>
442
+ <small>T2Airtime::Transaction</small>
443
+ </div>
444
+ </li>
445
+
446
+
447
+ <li class="odd ">
448
+ <div class="item">
449
+ <span class='object_link'><a href="T2Airtime/Util.html#test_numbers-class_method" title="T2Airtime::Util.test_numbers (method)">test_numbers</a></span>
450
+ <small>T2Airtime::Util</small>
451
+ </div>
452
+ </li>
453
+
454
+
455
+ <li class="even ">
456
+ <div class="item">
457
+ <span class='object_link'><a href="T2Airtime/API.html#topup-instance_method" title="T2Airtime::API#topup (method)">#topup</a></span>
458
+ <small>T2Airtime::API</small>
459
+ </div>
460
+ </li>
461
+
462
+
463
+ <li class="odd ">
464
+ <div class="item">
465
+ <span class='object_link'><a href="T2Airtime/API.html#trans_info-instance_method" title="T2Airtime::API#trans_info (method)">#trans_info</a></span>
466
+ <small>T2Airtime::API</small>
467
+ </div>
468
+ </li>
469
+
470
+
471
+ <li class="even ">
472
+ <div class="item">
473
+ <span class='object_link'><a href="T2Airtime/API.html#trans_list-instance_method" title="T2Airtime::API#trans_list (method)">#trans_list</a></span>
474
+ <small>T2Airtime::API</small>
475
+ </div>
476
+ </li>
477
+
478
+
479
+ <li class="odd ">
480
+ <div class="item">
481
+ <span class='object_link'><a href="T2Airtime/Reply.html#url-instance_method" title="T2Airtime::Reply#url (method)">#url</a></span>
482
+ <small>T2Airtime::Reply</small>
483
+ </div>
484
+ </li>
485
+
486
+
487
+
488
+ </ul>
489
+ </div>
490
+ </body>
491
+ </html>
@@ -0,0 +1,110 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Top Level Namespace
8
+
9
+ &mdash; Documentation by YARD 0.9.9
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "";
19
+ relpath = '';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="_index.html">Index</a> &raquo;
40
+
41
+
42
+ <span class="title">Top Level Namespace</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Top Level Namespace
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+ </div>
80
+
81
+ <h2>Defined Under Namespace</h2>
82
+ <p class="children">
83
+
84
+
85
+ <strong class="modules">Modules:</strong> <span class='object_link'><a href="T2Airtime.html" title="T2Airtime (module)">T2Airtime</a></span>
86
+
87
+
88
+
89
+
90
+ </p>
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+ </div>
101
+
102
+ <div id="footer">
103
+ Generated on Sun Aug 27 17:54:43 2017 by
104
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
105
+ 0.9.9 (ruby-2.3.3).
106
+ </div>
107
+
108
+ </div>
109
+ </body>
110
+ </html>
@@ -25,16 +25,21 @@ module T2Airtime
25
25
 
26
26
  def self.take(qty=5)
27
27
  reply = T2Airtime::API.api.country_list
28
- reply.success? ? serialize(reply.data, qty) : []
28
+ reply.success? ? serialize(reply.data, qty, reply.headers[:date]) : []
29
29
  end
30
30
 
31
- def self.serialize(data, qty=nil)
31
+ def self.serialize(data, qty=nil, ts=nil)
32
+ ts = ts.nil? ? Time.now : ts
32
33
  names = data[:country].split(",")
33
34
  ids = data[:countryid].split(",")
34
35
  ids.take(qty.nil? ? ids.count : qty).each_with_index.map{|id, n| {
35
- name: names[n],
36
- alpha3: alpha3(names[n]),
37
- aid: Integer(id)
36
+ type: "countries",
37
+ id: Integer(id),
38
+ attributes: {
39
+ "name": names[n],
40
+ "alpha3": alpha3(names[n]),
41
+ "fetched-at": T2Airtime::Util.format_time(ts)
42
+ }
38
43
  }}
39
44
  end
40
45
 
@@ -21,6 +21,10 @@ module T2Airtime
21
21
  Money.new(Float(price)*100, currency).format
22
22
  end
23
23
 
24
+ def self.format_time(timestr)
25
+ Time.zone.parse(timestr).to_datetime.in_time_zone('UTC').iso8601
26
+ end
27
+
24
28
  # Operator Logo URL
25
29
  def self.operator_logo_url(operator_aid, size=1)
26
30
  "https://#{T2Airtime::OPLOGO_DN}.#{T2Airtime::DOMAIN}/logo-#{operator_aid}-#{size}.png"
@@ -1,3 +1,3 @@
1
1
  module T2Airtime
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
data/release ADDED
@@ -0,0 +1,6 @@
1
+ #!/bin/bash
2
+ set -e
3
+
4
+ git add .
5
+ git commit -am "Bump to v${0}"
6
+ git push origin master