summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
Diffstat (limited to 'app/models')
-rw-r--r--app/models/license_status.rb4
-rw-r--r--app/models/license_status/active.rb4
-rw-r--r--app/models/license_status/confidential.rb4
-rw-r--r--app/models/license_status/expired.rb4
4 files changed, 14 insertions, 2 deletions
diff --git a/app/models/license_status.rb b/app/models/license_status.rb
index 998792f..41b54c5 100644
--- a/app/models/license_status.rb
+++ b/app/models/license_status.rb
@@ -5,7 +5,7 @@ class LicenseStatus
ALL=[ACTIVE, EXPIRED, CONFIDENTIAL]
- def self.find_match(status)
- ACTIVE
+ def self.find_match(status = "")
+ ALL.find { |x| x.matches?("#{status}".downcase) } || ACTIVE
end
end
diff --git a/app/models/license_status/active.rb b/app/models/license_status/active.rb
index 80d950d..76fb4c0 100644
--- a/app/models/license_status/active.rb
+++ b/app/models/license_status/active.rb
@@ -3,5 +3,9 @@ class LicenseStatus::Active
today = DateTime.now
licenses.where('issued_at < ? AND expired_at > ?', today, today)
end
+
+ def matches?(name)
+ "active" == name
+ end
end
diff --git a/app/models/license_status/confidential.rb b/app/models/license_status/confidential.rb
index f3e980a..81178f6 100644
--- a/app/models/license_status/confidential.rb
+++ b/app/models/license_status/confidential.rb
@@ -2,4 +2,8 @@ class LicenseStatus::Confidential
def filter(licenses)
licenses.where(confidential: true)
end
+
+ def matches?(name)
+ "confidential" == name
+ end
end
diff --git a/app/models/license_status/expired.rb b/app/models/license_status/expired.rb
index 1b339c6..393e34f 100644
--- a/app/models/license_status/expired.rb
+++ b/app/models/license_status/expired.rb
@@ -3,4 +3,8 @@ class LicenseStatus::Expired
today = DateTime.now
licenses.where('expired_at < ?', today)
end
+
+ def matches?(name)
+ "expired" == name
+ end
end