ctf-server

old server for hosting capture-the-flag

git clone https://9o.is/git/ctf-server.git

ChatMessage.scala

(884B)


      1 package com.jcabrra
      2 package model
      3 
      4 import net.liftweb._
      5 import mapper._
      6 import http.js._
      7 import util.Helpers._
      8 import org.joda.time._, format._
      9 
     10 /* Stores all messages that were sent in Chat Box. */
     11 class ChatMessage extends LongKeyedMapper[ChatMessage] with IdPK {
     12   def getSingleton = ChatMessage
     13 
     14   /* The user that's sent the message. */
     15   object user extends MappedLongForeignKey(this, User)
     16 
     17   /* The message sent. */
     18   object message extends MappedString(this, 255)
     19 
     20   /* Date it was sent. */
     21   object date extends MappedDateTime(this)
     22 
     23   override def toString =
     24     user.obj.map {
     25       user =>
     26         "%s %s: %s" format (user.nickName.get, formattedDate, message)
     27     } openOr message.get
     28 
     29   def formattedDate: String = 
     30     DateTimeFormat.forPattern("HH:mm:ss").print(new DateTime(date.get))
     31 
     32 }
     33 
     34 object ChatMessage extends ChatMessage with LongKeyedMetaMapper[ChatMessage]