mtgsy 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bc6b8e0b7879d36ff3ab5654de17ba77eb69d8c4
4
- data.tar.gz: ce784a9ed3e24a25a7f78376c61e4148ad9c101b
3
+ metadata.gz: 5e2b6c7276df220e77c3467a5fbb70471736f54a
4
+ data.tar.gz: 17d5242b062f437d12cf3a2704203eff8b4ac04e
5
5
  SHA512:
6
- metadata.gz: e09afa49dbad2e5ad2be48a5eddd42cf7db900e02595997e38b03785d82b88f432a8b68b184bb3dcd7a3be7e8806af66f1d1fd65ee4a7400e1af8af6637b8d59
7
- data.tar.gz: 0d91bb1e5c49c9413660afd95b35247937fdbde74a7667b3611e5ee081bcf4f1b7954dcfc0c10adeb842cd73658fce98010de4444458aa0787eb7c72d2e38f28
6
+ metadata.gz: f80188ee5b2bbab5a078b2ac55ea90a278e688e1793b2dc47d5ff085b8a9104ce50021f727efcc0f1dec33c69f057e71e172025c7b9df5ea00459f5d746b6788
7
+ data.tar.gz: 548935e40d4fc68cc575b9a6e0c3de31a4207a79b3740d5703dad738343917a2c62da7b01622e71f8439368a9ae27ffcfc61e72e275e200310cad5783533f8e9
@@ -94,6 +94,42 @@ module Mtgsy
94
94
  eval("@records_#{type}")
95
95
  end
96
96
 
97
+ def search(options={})
98
+ self.refresh! unless @records_ALL
99
+
100
+ name = options[:name] ? options[:name].to_s : nil
101
+ type = options[:type] ? options[:type].to_s : nil
102
+ data = options[:data] ? options[:data].to_s : nil
103
+ aux = options[:aux ] ? options[:aux].to_s : nil
104
+ ttl = options[:ttl ] ? options[:ttl].to_s : nil
105
+
106
+ unless [name, type, data, aux, ttl].find { |x| x != nil }
107
+ $stderr.puts "You must specify at least one of the following: name, type, data, aux or ttl"
108
+ return
109
+ end
110
+
111
+ search_data = [ name, type, data, aux, ttl ]
112
+
113
+ num_of_search_elements = 0
114
+ 0.upto(4) do |x|
115
+ unless search_data[x] == nil
116
+ num_of_search_elements += 1
117
+ end
118
+ end
119
+
120
+ results = @records_ALL.select do |x|
121
+ matched = 0
122
+ ( matched += 1 if x[Mtgsy::RECORD_NAME] == search_data[Mtgsy::RECORD_NAME] ) if search_data[Mtgsy::RECORD_NAME]
123
+ ( matched += 1 if x[Mtgsy::RECORD_TYPE] == search_data[Mtgsy::RECORD_TYPE] ) if search_data[Mtgsy::RECORD_TYPE]
124
+ ( matched += 1 if x[Mtgsy::RECORD_DATA] == search_data[Mtgsy::RECORD_DATA] ) if search_data[Mtgsy::RECORD_DATA]
125
+ ( matched += 1 if x[Mtgsy::RECORD_AUX] == search_data[Mtgsy::RECORD_AUX] ) if search_data[Mtgsy::RECORD_AUX]
126
+ ( matched += 1 if x[Mtgsy::RECORD_TTL] == search_data[Mtgsy::RECORD_TTL] ) if search_data[Mtgsy::RECORD_TTL]
127
+ true if matched == num_of_search_elements
128
+ end
129
+
130
+ results
131
+ end
132
+
97
133
  def record_types?
98
134
  @record_types
99
135
  end
data/lib/mtgsy/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Mtgsy
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mtgsy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Barnett