summaryrefslogtreecommitdiff
path: root/help/app/models/ticket.rb
diff options
context:
space:
mode:
authorjessib <jessib@riseup.net>2013-01-17 10:41:09 -0800
committerjessib <jessib@riseup.net>2013-01-17 10:41:09 -0800
commit6347fdbe0d932e78dfa8259bf81355edb19508e9 (patch)
tree5ec11b9600d4330ec94f56dda779634cd7dcae1b /help/app/models/ticket.rb
parentb550cd14f33b9664fe6b547dc56107fae7d12caf (diff)
parent7d7741f7d26c3ae7ee1dc347a6b1a1142a3c2824 (diff)
Merge pull request #10 from leapcode/feature/unauthenticated_tickets
Rough functionality for unauthenticated tickets.
Diffstat (limited to 'help/app/models/ticket.rb')
-rw-r--r--help/app/models/ticket.rb15
1 files changed, 13 insertions, 2 deletions
diff --git a/help/app/models/ticket.rb b/help/app/models/ticket.rb
index a27a9d4..ed1ff9d 100644
--- a/help/app/models/ticket.rb
+++ b/help/app/models/ticket.rb
@@ -16,7 +16,7 @@ class Ticket < CouchRest::Model::Base
#belongs_to :user #from leap_web_users. doesn't necessarily belong to a user though
property :created_by, String, :protected => true #Integer #nil unless user was authenticated for ticket creation, #THIS should not be changed after being set
- #property :regarding_user, String#Integer # form cannot be submitted if they type in a username w/out corresponding ID. this field can be nil. for authenticated ticket creation by non-admins, should this just automatically be set to be same as created_by? or maybe we don't use this field unless created_by is nil?
+ property :regarding_user, String#Integer # form cannot be submitted if they type in a username w/out corresponding ID. this field can be nil. for authenticated ticket creation by non-admins, should this just automatically be set to be same as created_by? or maybe we don't use this field unless created_by is nil?
#also, both created_by and regarding_user could be nil---say user forgets username, or has general question
property :title, String
property :email, String #verify
@@ -30,7 +30,7 @@ class Ticket < CouchRest::Model::Base
timestamps!
#before_validation :set_created_by, :set_code, :set_email, :on => :create
- before_validation :set_email, :on => :create
+ before_validation :set_email, :set_regarding_user, :on => :create
#named_scope :open, :conditions => {:is_open => true} #??
@@ -94,6 +94,10 @@ class Ticket < CouchRest::Model::Base
# in controller set to be current users email if that exists
end
+ def set_regarding_user
+ self.regarding_user = nil if self.regarding_user == ""
+ end
+
#not saving with close and reopen, as we will save in update when they are called.
#TODO: not sure if we should bother with these:
def close
@@ -132,6 +136,13 @@ class Ticket < CouchRest::Model::Base
end
end
+ def created_by_user
+ User.find(self.created_by)
+ end
+
+ def regarding_user_actual_user
+ User.find_by_login(self.regarding_user)
+ end
=begin
def validate
if email_address and not email_address.strip =~ RFC822::EmailAddress