brhelper 0.0.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.
- data/CHANGELOG +0 -0
- data/MIT-LICENSE +20 -0
- data/README +1 -0
- data/Rakefile +98 -0
- data/lib/brhelper.rb +17 -0
- data/lib/brhelper/br_form_helper.rb +13 -0
- data/lib/brhelper/br_form_options_helper.rb +59 -0
- data/lib/brhelper/version.rb +9 -0
- data/test/br_form_helper_test.rb +16 -0
- data/test/br_form_options_helper_test.rb +33 -0
- data/test/test_helper.rb +15 -0
- metadata +86 -0
data/CHANGELOG
ADDED
File without changes
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2008 [name of plugin creator]
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
Aqui vai o readme...
|
data/Rakefile
ADDED
@@ -0,0 +1,98 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'rake'
|
3
|
+
require 'rake/testtask'
|
4
|
+
require 'rake/rdoctask'
|
5
|
+
require 'rake/packagetask'
|
6
|
+
require 'rake/gempackagetask'
|
7
|
+
require 'rake/contrib/sshpublisher'
|
8
|
+
require File.join(File.dirname(__FILE__), 'lib', 'brhelper', 'version')
|
9
|
+
|
10
|
+
PKG_BUILD = ENV['PKG_BUILD'] ? '.' + ENV['PKG_BUILD'] : ''
|
11
|
+
PKG_NAME = 'brhelper'
|
12
|
+
PKG_VERSION = BrHelper::VERSION::STRING + PKG_BUILD
|
13
|
+
PKG_FILE_NAME = "#{PKG_NAME}-#{PKG_VERSION}"
|
14
|
+
|
15
|
+
RELEASE_NAME = "REL #{PKG_VERSION}"
|
16
|
+
|
17
|
+
RUBY_FORGE_PROJECT = "brhelper"
|
18
|
+
RUBY_FORGE_USER = "tapajos"
|
19
|
+
|
20
|
+
desc "Default Task"
|
21
|
+
task :default => [ :test ]
|
22
|
+
|
23
|
+
# Run the unit tests
|
24
|
+
Rake::TestTask.new { |t|
|
25
|
+
t.libs << "test"
|
26
|
+
t.pattern = 'test/*_test.rb'
|
27
|
+
t.verbose = true
|
28
|
+
t.warning = false
|
29
|
+
}
|
30
|
+
|
31
|
+
|
32
|
+
#Generate the RDoc documentation
|
33
|
+
Rake::RDocTask.new { |rdoc|
|
34
|
+
rdoc.rdoc_dir = 'doc'
|
35
|
+
rdoc.title = "Brazilian Rails -- Helper"
|
36
|
+
rdoc.options << '--line-numbers' << '--inline-source' << '-A cattr_accessor=object'
|
37
|
+
rdoc.options << '--charset' << 'utf-8'
|
38
|
+
rdoc.template = "#{ENV['template']}.rb" if ENV['template']
|
39
|
+
rdoc.rdoc_files.include('README', 'CHANGELOG')
|
40
|
+
rdoc.rdoc_files.include('lib/**/*')
|
41
|
+
}
|
42
|
+
|
43
|
+
|
44
|
+
# Create compressed packages
|
45
|
+
spec = Gem::Specification.new do |s|
|
46
|
+
s.platform = Gem::Platform::RUBY
|
47
|
+
s.name = PKG_NAME
|
48
|
+
s.summary = "brhelper é uma das gems que compoem o Brazilian Rails"
|
49
|
+
s.description = %q{brhelper é uma das gems que compoem o Brazilian Rails}
|
50
|
+
s.version = PKG_VERSION
|
51
|
+
|
52
|
+
s.authors = ["Marcos Tapajós", "Celestino Gomes", "Andre Kupkosvki", "Vinícius Teles"]
|
53
|
+
s.email = "tapajos@gmail.com"
|
54
|
+
s.rubyforge_project = "brhelper"
|
55
|
+
s.homepage = "http://www.improveit.com.br/software_livre/brazilian_rails"
|
56
|
+
|
57
|
+
s.add_dependency('actionpack', '>= 1.13.6')
|
58
|
+
s.add_dependency('activesupport', '>= 1.4.2')
|
59
|
+
|
60
|
+
s.has_rdoc = true
|
61
|
+
s.requirements << 'none'
|
62
|
+
s.require_path = 'lib'
|
63
|
+
|
64
|
+
s.files = [ "Rakefile", "README", "CHANGELOG", "MIT-LICENSE" ]
|
65
|
+
s.files = s.files + Dir.glob( "lib/**/*" ).delete_if { |item| item.include?( "\.svn" ) }
|
66
|
+
s.files = s.files + Dir.glob( "test/**/*" ).delete_if { |item| item.include?( "\.svn" ) }
|
67
|
+
end
|
68
|
+
|
69
|
+
Rake::GemPackageTask.new(spec) do |p|
|
70
|
+
p.gem_spec = spec
|
71
|
+
p.need_tar = true
|
72
|
+
p.need_zip = true
|
73
|
+
end
|
74
|
+
|
75
|
+
|
76
|
+
# desc "Publish the API documentation"
|
77
|
+
# task :pgem => [:package] do
|
78
|
+
# Rake::SshFilePublisher.new("wrath.rubyonrails.org", "public_html/gems/gems", "pkg", "#{PKG_FILE_NAME}.gem").upload
|
79
|
+
# end
|
80
|
+
#
|
81
|
+
# desc "Publish the API documentation"
|
82
|
+
# task :pdoc => [:rdoc] do
|
83
|
+
# Rake::SshDirPublisher.new("wrath.rubyonrails.org", "public_html/am", "doc").upload
|
84
|
+
# end
|
85
|
+
#
|
86
|
+
|
87
|
+
desc "Publish the release files to RubyForge."
|
88
|
+
task :release => [ :package ] do
|
89
|
+
require 'rubyforge'
|
90
|
+
require 'rake/contrib/rubyforgepublisher'
|
91
|
+
|
92
|
+
packages = %w( gem tgz zip ).collect{ |ext| "pkg/#{PKG_NAME}-#{PKG_VERSION}.#{ext}" }
|
93
|
+
|
94
|
+
rubyforge = RubyForge.new
|
95
|
+
rubyforge.configure
|
96
|
+
rubyforge.login
|
97
|
+
rubyforge.add_release(PKG_NAME, PKG_NAME, "REL #{PKG_VERSION}", *packages)
|
98
|
+
end
|
data/lib/brhelper.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
$:.unshift(File.dirname(__FILE__)) unless
|
2
|
+
$:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
|
3
|
+
|
4
|
+
require 'rubygems'
|
5
|
+
require 'action_controller'
|
6
|
+
require 'html/document'
|
7
|
+
require 'active_support'
|
8
|
+
require 'action_view'
|
9
|
+
|
10
|
+
|
11
|
+
%w(version
|
12
|
+
br_form_options_helper
|
13
|
+
br_form_helper).each {|req| require File.dirname(__FILE__) + "/brhelper/#{req}"}
|
14
|
+
|
15
|
+
|
16
|
+
module BrHelper
|
17
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module ActionView::Helpers::FormHelper
|
2
|
+
|
3
|
+
# Helper para seleção de sexo com radio_buttom.
|
4
|
+
def radio_button_sexo(object, method, options_radio_male = {}, options_radio_female = {})
|
5
|
+
options_male = { }.update(options_radio_male.stringify_keys)
|
6
|
+
options_female = { }.update(options_radio_female.stringify_keys)
|
7
|
+
|
8
|
+
op1= radio_button(object, method, 'M', options_male)
|
9
|
+
op2 = radio_button(object, method, 'F', options_female)
|
10
|
+
|
11
|
+
"#{op1} Masculino\n#{op2} Feminino"
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
module ActionView::Helpers::FormOptionsHelper
|
2
|
+
ESTADOS_BRASILEIROS = [["Acre", "AC"],
|
3
|
+
["Alagoas", "AL"],
|
4
|
+
["Amapá", "AP"],
|
5
|
+
["Amazonas", "AM"],
|
6
|
+
["Bahia", "BA"],
|
7
|
+
["Ceará", "CE"],
|
8
|
+
["Distrito Federal", "DF"],
|
9
|
+
["Espírito Santos", "ES"],
|
10
|
+
["Goiás", "GO"],
|
11
|
+
["Maranhão", "MA"],
|
12
|
+
["Mato Grosso", "MT"],
|
13
|
+
["Mato Grosso do Sul", "MS"],
|
14
|
+
["Minas Gerais", "MG"],
|
15
|
+
["Pará", "PA"],
|
16
|
+
["Paraíba", "PB"],
|
17
|
+
["Paraná", "PR"],
|
18
|
+
["Pernambuco", "PE"],
|
19
|
+
["Piauí", "PI"],
|
20
|
+
["Rio de Janeiro", "RJ"],
|
21
|
+
["Rio Grande do Norte", "RN"],
|
22
|
+
["Rio Grande do Sul", "RS"],
|
23
|
+
["Rondônia", "RO"],
|
24
|
+
["Roraima", "RR"],
|
25
|
+
["Santa Catarina", "SC"],
|
26
|
+
["São Paulo", "SP"],
|
27
|
+
["Sergipe", "SE"],
|
28
|
+
["Tocantins", "TO"]
|
29
|
+
] unless const_defined?("ESTADOS_BRASILEIROS")
|
30
|
+
|
31
|
+
# Helper para montar um select para seleção de estados brasileiros por nome,
|
32
|
+
# mas com armazenamento da sigla.
|
33
|
+
def select_estado(object, method, options = {}, html_options = {})
|
34
|
+
select object, method, ESTADOS_BRASILEIROS, options, html_options
|
35
|
+
end
|
36
|
+
|
37
|
+
# Helper para montar um select para seleção de estados brasileiros por sigla.
|
38
|
+
def select_uf(object, method, options = {}, html_options = {})
|
39
|
+
select object, method, ESTADOS_BRASILEIROS.collect {|estado, sigla| sigla}, options, html_options
|
40
|
+
end
|
41
|
+
|
42
|
+
# Retorna uma string com a lista de estados brasileiros para usar em uma tag select,
|
43
|
+
# com exibição do nome do estado, mas armazenando a sigla.
|
44
|
+
def option_estados_for_select
|
45
|
+
options_for_select ESTADOS_BRASILEIROS
|
46
|
+
end
|
47
|
+
|
48
|
+
# Retorna uma string com a lista de estados brasileiros para usar em uma tag select,
|
49
|
+
# com exibição e armazenamento a sigla.
|
50
|
+
def option_uf_for_select
|
51
|
+
options_for_select ESTADOS_BRASILEIROS.collect {|nome,sigla| sigla}
|
52
|
+
end
|
53
|
+
|
54
|
+
# Helper para montar um select para seleção de sexo, armazenando apenas a
|
55
|
+
# inicial.
|
56
|
+
def select_sexo(object, method, options = {}, html_options = {})
|
57
|
+
select object, method, [['Masculino', 'M'], ['Feminino', 'F']], options, html_options
|
58
|
+
end
|
59
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper'
|
2
|
+
require 'rubygems'
|
3
|
+
require 'net/http'
|
4
|
+
require 'mocha'
|
5
|
+
|
6
|
+
class BrFormHelperTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
include ActionView::Helpers::FormHelper
|
9
|
+
|
10
|
+
def test_radios_sexo
|
11
|
+
radio_m = '<input id="lancamento_sexo_m" name="lancamento[sexo]" type="radio" value="M" /> Masculino'
|
12
|
+
radio_f = '<input id="lancamento_sexo_f" name="lancamento[sexo]" type="radio" value="F" /> Feminino'
|
13
|
+
assert_equal %(#{radio_m}\n#{radio_f}), radio_button_sexo(:lancamento, :sexo)
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper'
|
2
|
+
require 'rubygems'
|
3
|
+
require 'net/http'
|
4
|
+
require 'mocha'
|
5
|
+
|
6
|
+
class BrFormOptionsHelperTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
include ActionView::Helpers::FormOptionsHelper
|
9
|
+
|
10
|
+
def test_option_estados_for_select
|
11
|
+
assert_equal %(<option value=\"AC\">Acre</option>\n<option value=\"AL\">Alagoas</option>\n<option value=\"AP\">Amapá</option>\n<option value=\"AM\">Amazonas</option>\n<option value=\"BA\">Bahia</option>\n<option value=\"CE\">Ceará</option>\n<option value=\"DF\">Distrito Federal</option>\n<option value=\"ES\">Espírito Santos</option>\n<option value=\"GO\">Goiás</option>\n<option value=\"MA\">Maranhão</option>\n<option value=\"MT\">Mato Grosso</option>\n<option value=\"MS\">Mato Grosso do Sul</option>\n<option value=\"MG\">Minas Gerais</option>\n<option value=\"PA\">Pará</option>\n<option value=\"PB\">Paraíba</option>\n<option value=\"PR\">Paraná</option>\n<option value=\"PE\">Pernambuco</option>\n<option value=\"PI\">Piauí</option>\n<option value=\"RJ\">Rio de Janeiro</option>\n<option value=\"RN\">Rio Grande do Norte</option>\n<option value=\"RS\">Rio Grande do Sul</option>\n<option value=\"RO\">Rondônia</option>\n<option value=\"RR\">Roraima</option>\n<option value=\"SC\">Santa Catarina</option>\n<option value=\"SP\">São Paulo</option>\n<option value=\"SE\">Sergipe</option>\n<option value=\"TO\">Tocantins</option>), option_estados_for_select
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_option_uf_for_select
|
15
|
+
assert_equal %(<option value=\"AC\">AC</option>\n<option value=\"AL\">AL</option>\n<option value=\"AP\">AP</option>\n<option value=\"AM\">AM</option>\n<option value=\"BA\">BA</option>\n<option value=\"CE\">CE</option>\n<option value=\"DF\">DF</option>\n<option value=\"ES\">ES</option>\n<option value=\"GO\">GO</option>\n<option value=\"MA\">MA</option>\n<option value=\"MT\">MT</option>\n<option value=\"MS\">MS</option>\n<option value=\"MG\">MG</option>\n<option value=\"PA\">PA</option>\n<option value=\"PB\">PB</option>\n<option value=\"PR\">PR</option>\n<option value=\"PE\">PE</option>\n<option value=\"PI\">PI</option>\n<option value=\"RJ\">RJ</option>\n<option value=\"RN\">RN</option>\n<option value=\"RS\">RS</option>\n<option value=\"RO\">RO</option>\n<option value=\"RR\">RR</option>\n<option value=\"SC\">SC</option>\n<option value=\"SP\">SP</option>\n<option value=\"SE\">SE</option>\n<option value=\"TO\">TO</option>), option_uf_for_select
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_select_estado
|
19
|
+
assert_equal %(<select id=\"lancamento_estado\" name=\"lancamento[estado]\"><option value=\"AC\">Acre</option>\n<option value=\"AL\">Alagoas</option>\n<option value=\"AP\">Amapá</option>\n<option value=\"AM\">Amazonas</option>\n<option value=\"BA\">Bahia</option>\n<option value=\"CE\">Ceará</option>\n<option value=\"DF\">Distrito Federal</option>\n<option value=\"ES\">Espírito Santos</option>\n<option value=\"GO\">Goiás</option>\n<option value=\"MA\">Maranhão</option>\n<option value=\"MT\">Mato Grosso</option>\n<option value=\"MS\">Mato Grosso do Sul</option>\n<option value=\"MG\">Minas Gerais</option>\n<option value=\"PA\">Pará</option>\n<option value=\"PB\">Paraíba</option>\n<option value=\"PR\">Paraná</option>\n<option value=\"PE\">Pernambuco</option>\n<option value=\"PI\">Piauí</option>\n<option value=\"RJ\">Rio de Janeiro</option>\n<option value=\"RN\">Rio Grande do Norte</option>\n<option value=\"RS\">Rio Grande do Sul</option>\n<option value=\"RO\">Rondônia</option>\n<option value=\"RR\">Roraima</option>\n<option value=\"SC\">Santa Catarina</option>\n<option value=\"SP\">São Paulo</option>\n<option value=\"SE\">Sergipe</option>\n<option value=\"TO\">Tocantins</option></select>), select_estado(:lancamento, :estado)
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_select_uf
|
23
|
+
options = {:options1 => "1"}
|
24
|
+
html_options = {:name => "name"}
|
25
|
+
expects(:select).with(:lancamento, :estado, ['AC', 'AL', 'AP', 'AM', 'BA', 'CE', 'DF', 'ES', 'GO', 'MA', 'MT', 'MS', 'MG', 'PA', 'PB', 'PR', 'PE', 'PI', 'RJ', 'RN', 'RS', 'RO', 'RR', 'SC', 'SP', 'SE', 'TO'], {:options1 => '1'}, {:name => 'name'}).returns("select")
|
26
|
+
assert_equal "select", select_uf(:lancamento, :estado, options, html_options)
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_select_sexo
|
30
|
+
assert_equal %(<select id="lancamento_sexo" name="lancamento[sexo]"><option value="M">Masculino</option>\n<option value="F">Feminino</option></select>), select_sexo(:lancamento, :sexo)
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require File.dirname(__FILE__) + '/../lib/brhelper'
|
3
|
+
|
4
|
+
def tornar_metodos_publicos(clazz)
|
5
|
+
clazz.class_eval do
|
6
|
+
private_instance_methods.each { |instance_method| public instance_method }
|
7
|
+
private_methods.each { |method| public_class_method method }
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def p80 text
|
12
|
+
p '*'*80
|
13
|
+
p text
|
14
|
+
yield if block_given?
|
15
|
+
end
|
metadata
ADDED
@@ -0,0 +1,86 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: brhelper
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- "Marcos Tapaj\xC3\xB3s"
|
8
|
+
- Celestino Gomes
|
9
|
+
- Andre Kupkosvki
|
10
|
+
- "Vin\xC3\xADcius Teles"
|
11
|
+
autorequire:
|
12
|
+
bindir: bin
|
13
|
+
cert_chain: []
|
14
|
+
|
15
|
+
date: 2008-07-07 00:00:00 -03:00
|
16
|
+
default_executable:
|
17
|
+
dependencies:
|
18
|
+
- !ruby/object:Gem::Dependency
|
19
|
+
name: actionpack
|
20
|
+
type: :runtime
|
21
|
+
version_requirement:
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 1.13.6
|
27
|
+
version:
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: activesupport
|
30
|
+
type: :runtime
|
31
|
+
version_requirement:
|
32
|
+
version_requirements: !ruby/object:Gem::Requirement
|
33
|
+
requirements:
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: 1.4.2
|
37
|
+
version:
|
38
|
+
description: "brhelper \xC3\xA9 uma das gems que compoem o Brazilian Rails"
|
39
|
+
email: tapajos@gmail.com
|
40
|
+
executables: []
|
41
|
+
|
42
|
+
extensions: []
|
43
|
+
|
44
|
+
extra_rdoc_files: []
|
45
|
+
|
46
|
+
files:
|
47
|
+
- Rakefile
|
48
|
+
- README
|
49
|
+
- CHANGELOG
|
50
|
+
- MIT-LICENSE
|
51
|
+
- lib/brhelper
|
52
|
+
- lib/brhelper/br_form_helper.rb
|
53
|
+
- lib/brhelper/br_form_options_helper.rb
|
54
|
+
- lib/brhelper/version.rb
|
55
|
+
- lib/brhelper.rb
|
56
|
+
- test/br_form_helper_test.rb
|
57
|
+
- test/br_form_options_helper_test.rb
|
58
|
+
- test/test_helper.rb
|
59
|
+
has_rdoc: true
|
60
|
+
homepage: http://www.improveit.com.br/software_livre/brazilian_rails
|
61
|
+
post_install_message:
|
62
|
+
rdoc_options: []
|
63
|
+
|
64
|
+
require_paths:
|
65
|
+
- lib
|
66
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: "0"
|
71
|
+
version:
|
72
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - ">="
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: "0"
|
77
|
+
version:
|
78
|
+
requirements:
|
79
|
+
- none
|
80
|
+
rubyforge_project: brhelper
|
81
|
+
rubygems_version: 1.2.0
|
82
|
+
signing_key:
|
83
|
+
specification_version: 2
|
84
|
+
summary: "brhelper \xC3\xA9 uma das gems que compoem o Brazilian Rails"
|
85
|
+
test_files: []
|
86
|
+
|