multi-language-date 0.0.0

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.
Files changed (2) hide show
  1. data/lib/multi_language_date.rb +54 -0
  2. metadata +50 -0
@@ -0,0 +1,54 @@
1
+ require 'date'
2
+ class MultiLanguageDate
3
+ def self.change(language = "english" , date = Date.today, format = "B" )
4
+ begin
5
+ date = Date.parse(date.to_s)
6
+ rescue
7
+ puts "Invalid Date"
8
+ end
9
+ translator = Translator.new(language, date, format)
10
+ puts translator.change
11
+ end
12
+ end
13
+
14
+ class MultiLanguageDate::Translator
15
+ def initialize(language, date, format)
16
+ @language = language.downcase
17
+ @date = date
18
+ @format = format
19
+ end
20
+
21
+ def change
22
+ case @language
23
+
24
+ when "dutch"
25
+ months = Array.new
26
+ months= @format == "b" ? ["", "jan","feb","maart","apr","mei","juni","juli","aug","sept","okt","nov","dec"] : ["", "Januari","februari","maart","april","mei","juni","juli","augustus","september","october","november","december"]
27
+ return @date.strftime('%d') + " " + months[@date.strftime('%m').to_i] + " " + @date.strftime('%Y')
28
+
29
+ when "french"
30
+ months = @format == "b" ? ["", "jan","f\303\251v","mar","avr","mai","juin","juil","ao\303\273t","sept","oct","nov","d\303\251c"] : ["", "janvier","f\303\251vrier","mars","avril","mai","juin","juillet","ao\303\273t","septembre","octobre","novembre","d\303\251cembre"]
31
+ return @date.strftime('%d') + " " + months[@date.strftime('%m').to_i] + " " + @date.strftime('%Y')
32
+
33
+ when "spanish"
34
+ months = @format == "b" ? ["", "enero","feb","marzo","abr","mayo","jun","jul","agosto","sept","oct","nov","dic"] : ["", "enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"]
35
+ return @date.strftime('%d') + " " + months[@date.strftime('%m').to_i] + " " + @date.strftime('%Y')
36
+
37
+ when "german"
38
+ months = @format == "b" ? ["", "j\303\244n","feb","m\303\244rz","apr","mai","juni","juli","aug","sept","okt","nov","dez"] : ["", "januar","februar","m\303\244rz","april","mai","juni","juli","august","september","oktober","november","dezember"]
39
+ return @date.strftime('%d') + " " + months[@date.strftime('%m').to_i] + " " + @date.strftime('%Y')
40
+
41
+ when "danish"
42
+ months = @format == "b" ? ["", "jan","febr","marts","april","maj","juni","juli","aug","sept","okt","nov","dec"] : ["", "januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"]
43
+ return @date.strftime('%d') + " " + months[@date.strftime('%m').to_i] + " " + @date.strftime('%Y')
44
+
45
+ when "italian"
46
+ months = @format == "b" ? ["", "genn","febbr","mar","apr","magg","giugno","luglio","ag","sett","ott","nov","dic"] : ["", "gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"]
47
+ return @date.strftime('%d') + " " + months[@date.strftime('%m').to_i] + " " + @date.strftime('%Y')
48
+
49
+ else
50
+ months = @format == "b" ? ["", "jan","feb","mar","apr","may","jun","july","aug","sept","oct","nov","dec"] : ["", "january","february","march","april","may","jun","jul","august","september","october","november","december"]
51
+ return @date.strftime('%d') + " " + months[@date.strftime('%m').to_i] + " " + @date.strftime('%Y')
52
+ end
53
+ end
54
+ end
metadata ADDED
@@ -0,0 +1,50 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: multi-language-date
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Akeel Qureshi
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-05-05 00:00:00.000000000Z
13
+ dependencies: []
14
+ description: The first parameter will be language of your choice , second parameter
15
+ will be your date and the last one will be the format , we have 2 predefied formats
16
+ either 'b' or 'B', Pass lowercase 'b' or 'B' to format your date as per your requirement
17
+ for example 'MultiLanguageDate.change('dutch', '25/02/2012', 'B')' and the output
18
+ will be '25 februari 2012' default language will be english and default format will
19
+ take the current date
20
+ email: akeel.q@cisinlabs.com
21
+ executables: []
22
+ extensions: []
23
+ extra_rdoc_files: []
24
+ files:
25
+ - lib/multi_language_date.rb
26
+ homepage: http://rubygems.org/gems/multi-language-date
27
+ licenses: []
28
+ post_install_message:
29
+ rdoc_options: []
30
+ require_paths:
31
+ - lib
32
+ required_ruby_version: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ required_rubygems_version: !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ requirements: []
45
+ rubyforge_project:
46
+ rubygems_version: 1.8.18
47
+ signing_key:
48
+ specification_version: 3
49
+ summary: Change date in different languages
50
+ test_files: []