rails_admin_phone_number_field 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/LICENSE.txt +20 -0
- data/README.markdown +61 -0
- data/Rakefile +27 -0
- data/app/views/rails_admin/main/_form_phone_number_field.html.haml +5 -0
- data/js/PhoneFormat.js +1099 -0
- data/js/phone-number-input.js.coffee +16 -0
- data/lib/rails_admin_phone_number_field.rb +70 -0
- data/lib/rails_admin_phone_number_field/engine.rb +4 -0
- data/lib/rails_admin_phone_number_field/version.rb +3 -0
- metadata +124 -0
@@ -0,0 +1,16 @@
|
|
1
|
+
$.widget "ui.phoneNumberInput",
|
2
|
+
|
3
|
+
_create: () ->
|
4
|
+
element = $(@element)
|
5
|
+
if !element.data('phone-number-field-activated')
|
6
|
+
element.change ->
|
7
|
+
phone = element .val()
|
8
|
+
element.val(formatInternational('US', phone))
|
9
|
+
countryCode = countryForE164Number(formatE164('US', phone))
|
10
|
+
if countryCode.length == 0
|
11
|
+
$('.country-info', element.parent()).html('')
|
12
|
+
else
|
13
|
+
$('.country-info', element.parent()).html(countryCode + " - " + countryCodeToName(countryCode))
|
14
|
+
|
15
|
+
element.change()
|
16
|
+
element.data('phone-number-field-activated', true)
|
@@ -0,0 +1,70 @@
|
|
1
|
+
require "rails_admin_phone_number_field/engine"
|
2
|
+
|
3
|
+
module RailsAdminPhoneNumberField
|
4
|
+
end
|
5
|
+
|
6
|
+
require 'rails_admin/config/fields'
|
7
|
+
require 'rails_admin/config/fields/base'
|
8
|
+
|
9
|
+
module RailsAdmin
|
10
|
+
module Config
|
11
|
+
module Fields
|
12
|
+
module Types
|
13
|
+
class PhoneNumberField < RailsAdmin::Config::Fields::Base
|
14
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
15
|
+
|
16
|
+
register_instance_option :partial do
|
17
|
+
Rails.logger.debug "partial phone value"
|
18
|
+
:form_phone_number_field
|
19
|
+
end
|
20
|
+
|
21
|
+
register_instance_option :number_format do
|
22
|
+
:international
|
23
|
+
end
|
24
|
+
|
25
|
+
register_instance_option :default_value do
|
26
|
+
Rails.logger.debug "default phone value"
|
27
|
+
nil
|
28
|
+
end
|
29
|
+
|
30
|
+
register_instance_option :formatted_value do
|
31
|
+
formattable = value
|
32
|
+
Rails.logger.debug "formatting phone value: #{formattable}"
|
33
|
+
if formattable
|
34
|
+
formattable.phony_formatted(:format => number_format, :spaces => '.')
|
35
|
+
else
|
36
|
+
"".html_safe
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
register_instance_option :pretty_value do
|
41
|
+
Rails.logger.debug "pretty phone value"
|
42
|
+
formatted_value.presence || ' - '
|
43
|
+
end
|
44
|
+
|
45
|
+
# output for printing in export view (developers beware: no bindings[:view] and no data!)
|
46
|
+
register_instance_option :export_value do
|
47
|
+
Rails.logger.debug "export phone value"
|
48
|
+
pretty_value
|
49
|
+
end
|
50
|
+
|
51
|
+
register_instance_option :html_attributes do
|
52
|
+
{:class => :"rails-admin-phone-number-field"}
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
#RailsAdmin::Config::Fields.register_factory do |parent, properties, fields|
|
61
|
+
# Rails.logger.debug "checking #{properties}"
|
62
|
+
# if properties[:type] == :phone_number_field
|
63
|
+
# fields << RailsAdmin::Config::Fields::Types::PhoneNumberField.new(parent, properties[:name], properties)
|
64
|
+
# true
|
65
|
+
# else
|
66
|
+
# false
|
67
|
+
# end
|
68
|
+
#end
|
69
|
+
|
70
|
+
|
metadata
ADDED
@@ -0,0 +1,124 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rails_admin_phone_number_field
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- James Coleman
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-01-28 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rails
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ~>
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 3.2.0
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ~>
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 3.2.0
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: rails_admin
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ~>
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: 0.4.0
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 0.4.0
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: phony
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: phony_rails
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
description:
|
79
|
+
email:
|
80
|
+
- jtc331@gmail.com
|
81
|
+
executables: []
|
82
|
+
extensions: []
|
83
|
+
extra_rdoc_files: []
|
84
|
+
files:
|
85
|
+
- app/views/rails_admin/main/_form_phone_number_field.html.haml
|
86
|
+
- lib/rails_admin_phone_number_field/engine.rb
|
87
|
+
- lib/rails_admin_phone_number_field/version.rb
|
88
|
+
- lib/rails_admin_phone_number_field.rb
|
89
|
+
- js/phone-number-input.js.coffee
|
90
|
+
- js/PhoneFormat.js
|
91
|
+
- LICENSE.txt
|
92
|
+
- Rakefile
|
93
|
+
- README.markdown
|
94
|
+
homepage: https://github.com/jcoleman/rails_admin_phone_number_field
|
95
|
+
licenses: []
|
96
|
+
post_install_message:
|
97
|
+
rdoc_options: []
|
98
|
+
require_paths:
|
99
|
+
- lib
|
100
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
101
|
+
none: false
|
102
|
+
requirements:
|
103
|
+
- - ! '>='
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: '0'
|
106
|
+
segments:
|
107
|
+
- 0
|
108
|
+
hash: 2506989673483019752
|
109
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
110
|
+
none: false
|
111
|
+
requirements:
|
112
|
+
- - ! '>='
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: '0'
|
115
|
+
segments:
|
116
|
+
- 0
|
117
|
+
hash: 2506989673483019752
|
118
|
+
requirements: []
|
119
|
+
rubyforge_project:
|
120
|
+
rubygems_version: 1.8.24
|
121
|
+
signing_key:
|
122
|
+
specification_version: 3
|
123
|
+
summary: Adds a auto-formatting phone number field to RailsAdmin.
|
124
|
+
test_files: []
|