safai 0.0.7 → 0.0.8
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/lib/safai/spreadsheet.rb +21 -2
- data/lib/safai.rb +1 -0
- metadata +17 -1
data/lib/safai/spreadsheet.rb
CHANGED
@@ -1,7 +1,9 @@
|
|
1
1
|
class Safai::Spreadsheet
|
2
2
|
|
3
|
+
require 'roo'
|
4
|
+
|
3
5
|
#MICROSOFT EXCEL STORES DATES AS THE NUMBER OF DAYS FROM 1900. HENCE CONVERSION IS REQUIRED
|
4
|
-
|
6
|
+
|
5
7
|
def self.process_date_from_xls(d)
|
6
8
|
return nil if d.nil?
|
7
9
|
d = d.to_i
|
@@ -9,7 +11,24 @@ class Safai::Spreadsheet
|
|
9
11
|
end
|
10
12
|
|
11
13
|
def self.is_excel?(data_file_name)
|
12
|
-
return (!data_file_name.index(".xls").nil? or !data_file_name.index(".ods").nil?) ? true : false
|
14
|
+
return (!data_file_name.index(".xls").nil? or !data_file_name.index(".ods").nil? or !data_file_name.index(".csv").nil?) ? true : false
|
13
15
|
end
|
14
16
|
|
17
|
+
def self.open(url, data_file_name, domain)
|
18
|
+
begin
|
19
|
+
url_s = url.to_s.gsub(domain, "")
|
20
|
+
case File.extname(data_file_name)
|
21
|
+
when ".csv" then s = Csv.new(url_s, nil, :ignore)
|
22
|
+
when ".xls" then s = Excel.new(url_s, nil, :ignore)
|
23
|
+
when ".xlsx" then s = Excelx.new(url_s, nil, :ignore)
|
24
|
+
when ".ods" then s = Openoffice.new(url_s, nil, :ignore)
|
25
|
+
else raise "Unknown file type: #{data_file_name}"
|
26
|
+
end
|
27
|
+
s.default_sheet = s.sheets.first
|
28
|
+
return s
|
29
|
+
rescue
|
30
|
+
return "1"
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
15
34
|
end
|
data/lib/safai.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: safai
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -27,6 +27,22 @@ dependencies:
|
|
27
27
|
- - '='
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: 0.2.13
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: roo
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - '='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: 1.10.1
|
38
|
+
type: :development
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - '='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 1.10.1
|
30
46
|
description: A simple hello world gem
|
31
47
|
email: ritvij.j@gmail.com
|
32
48
|
executables: []
|