run_cl 1.0.18 → 1.0.19

Sign up to get free protection for your applications and to get access to all the features.
data/lib/run_cl/run.rb CHANGED
@@ -61,6 +61,21 @@ module Run
61
61
  end
62
62
  end
63
63
 
64
+ # Revisa si el run entregado es valido, el run debe incluir el digito verificador
65
+ def valid_run? run
66
+ if run
67
+ run_copy = run.clone
68
+ # run_copy = run_copy.match(/^(\d+)[^\d*](\d+)[^\d*](\d+)[^\d*](\d|k)|(\d+)[^\d*](\d|k)|(\d+k)|(\d+)$/i).to_s.gsub!(/\.|\-/, '')
69
+ run_copy = run_copy.match(/^(\d+)\.{1}\d{3}\.{1}\d{3}-{1}(\d|k|K)$|^(\d+)\d{6}\-{1}(\d|k|K)|^(\d+)\d{6}(\d|k|K)$/i).to_s
70
+ return false unless run_copy
71
+ run_copy = remove_format(run_copy)
72
+ check_run run_copy.chop, run_copy.last
73
+ else
74
+ false
75
+ end
76
+ end
77
+
78
+ private
64
79
  # Revisa si el run y digito entregado es valido
65
80
  def self.check_run run, digit
66
81
  return false if run.empty?
@@ -4,18 +4,7 @@ class RunValidator < ActiveModel::Validator
4
4
  def validate record
5
5
  options[:attributes].each do |attribute|
6
6
  # record.errors[:run] << I18n.t('run.invalid') unless valid_run? record
7
- record.errors[attribute.to_sym] << 'no es válido' unless valid_run? record, attribute
8
- end
9
- end
10
-
11
- private
12
-
13
- def valid_run? record, attribute
14
- if run = record.send(attribute).presence
15
- record.send("#{attribute}=", (( run = run.match(/^(\d+)[^\d*](\d+)[^\d*](\d+)[^\d*](\d|k)|(\d+)[^\d*](\d|k)|(\d+k)|(\d+)$/i).to_s ) =~ /\.|\-/ ? run.gsub!(/\.|\-/, '') : run))
16
- Run.check_run record.send(attribute).chop, record.send(attribute).last
17
- else
18
- false
7
+ record.errors[attribute.to_sym] << 'no es válido' unless Run.valid_run? record.send(attribute)
19
8
  end
20
9
  end
21
10
  end
@@ -1,3 +1,3 @@
1
1
  module RunCl
2
- VERSION = "1.0.18"
2
+ VERSION = "1.0.19"
3
3
  end
data/run_cl.gemspec CHANGED
@@ -16,7 +16,4 @@ Gem::Specification.new do |gem|
16
16
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
18
  gem.require_paths = ["lib"]
19
-
20
- gem.add_development_dependency "activerecord"
21
- gem.add_runtime_dependency "activerecord"
22
19
  end
metadata CHANGED
@@ -1,58 +1,23 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: run_cl
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 1
7
- - 0
8
- - 18
9
- version: 1.0.18
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.19
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - mespina
13
9
  autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
-
17
- date: 2013-03-19 00:00:00 -04:00
18
- default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- name: activerecord
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- segments:
29
- - 0
30
- version: "0"
31
- type: :development
32
- version_requirements: *id001
33
- - !ruby/object:Gem::Dependency
34
- name: activerecord
35
- prerelease: false
36
- requirement: &id002 !ruby/object:Gem::Requirement
37
- none: false
38
- requirements:
39
- - - ">="
40
- - !ruby/object:Gem::Version
41
- segments:
42
- - 0
43
- version: "0"
44
- type: :runtime
45
- version_requirements: *id002
12
+ date: 2013-03-20 00:00:00.000000000 Z
13
+ dependencies: []
46
14
  description: Formateador/Desformateador, Generador, Validador de Rut Chilenos
47
- email:
15
+ email:
48
16
  - mespina.icc@gmail.com
49
17
  executables: []
50
-
51
18
  extensions: []
52
-
53
19
  extra_rdoc_files: []
54
-
55
- files:
20
+ files:
56
21
  - .gitignore
57
22
  - Gemfile
58
23
  - LICENSE.txt
@@ -63,37 +28,28 @@ files:
63
28
  - lib/run_cl/run_validator.rb
64
29
  - lib/run_cl/version.rb
65
30
  - run_cl.gemspec
66
- has_rdoc: true
67
31
  homepage: https://bitbucket.org/mespina/run
68
32
  licenses: []
69
-
70
33
  post_install_message:
71
34
  rdoc_options: []
72
-
73
- require_paths:
35
+ require_paths:
74
36
  - lib
75
- required_ruby_version: !ruby/object:Gem::Requirement
37
+ required_ruby_version: !ruby/object:Gem::Requirement
76
38
  none: false
77
- requirements:
78
- - - ">="
79
- - !ruby/object:Gem::Version
80
- segments:
81
- - 0
82
- version: "0"
83
- required_rubygems_version: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - ! '>='
41
+ - !ruby/object:Gem::Version
42
+ version: '0'
43
+ required_rubygems_version: !ruby/object:Gem::Requirement
84
44
  none: false
85
- requirements:
86
- - - ">="
87
- - !ruby/object:Gem::Version
88
- segments:
89
- - 0
90
- version: "0"
45
+ requirements:
46
+ - - ! '>='
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
91
49
  requirements: []
92
-
93
50
  rubyforge_project:
94
- rubygems_version: 1.3.7
51
+ rubygems_version: 1.8.24
95
52
  signing_key:
96
53
  specification_version: 3
97
54
  summary: Rut Chilenos
98
55
  test_files: []
99
-