src/main/scala/fis/crm/model/Contact.scala
author Tomas Zeman <tzeman@volny.cz>
Thu, 12 Apr 2012 13:37:04 +0200
changeset 52 f40c67ede33d
parent 37 ee98077f6d1a
permissions -rw-r--r--
Contact help
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     1
/*
23
16066379860c Global entity removal from base schema
Tomas Zeman <tzeman@volny.cz>
parents: 15
diff changeset
     2
 * Copyright 2011-2012 Tomas Zeman <tzeman@volny.cz>
8
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     3
 *
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     4
 * Licensed under the Apache License, Version 2.0 (the "License");
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     5
 * you may not use this file except in compliance with the License.
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     6
 * You may obtain a copy of the License at
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     7
 *
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     8
 *     http://www.apache.org/licenses/LICENSE-2.0
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     9
 *
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    10
 * Unless required by applicable law or agreed to in writing, software
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    11
 * distributed under the License is distributed on an "AS IS" BASIS,
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    12
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    13
 * See the License for the specific language governing permissions and
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    14
 * limitations under the License.
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    15
 */
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    16
package fis.crm.model
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    17
23
16066379860c Global entity removal from base schema
Tomas Zeman <tzeman@volny.cz>
parents: 15
diff changeset
    18
import fis.base.model.{Entity, MetaEntity}
15
995184977e9b a3e3bd30f0d19526 Contact UI
Tomas Zeman <tzeman@volny.cz>
parents: 10
diff changeset
    19
import net.liftweb.common._
8
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    20
import net.liftweb.record.{MetaRecord, Record}
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    21
import net.liftweb.record.field._
35
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    22
import net.liftweb.squerylrecord.RecordTypeMode._
52
f40c67ede33d Contact help
Tomas Zeman <tzeman@volny.cz>
parents: 37
diff changeset
    23
import net.tz.lift.model.{FieldLabel => FL, FieldHelp => FH}
35
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    24
import net.tz.lift.model.{OptionalFieldDisplay => OptDisp}
37
ee98077f6d1a Contact should use tz's OptionalEmailField
Tomas Zeman <tzeman@volny.cz>
parents: 35
diff changeset
    25
import net.tz.lift.model.{OptionalEmailField => OptEmail}
15
995184977e9b a3e3bd30f0d19526 Contact UI
Tomas Zeman <tzeman@volny.cz>
parents: 10
diff changeset
    26
import scala.xml.Text
995184977e9b a3e3bd30f0d19526 Contact UI
Tomas Zeman <tzeman@volny.cz>
parents: 10
diff changeset
    27
8
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    28
class Contact private() extends Record[Contact] with Entity[Contact] {
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    29
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    30
  def meta = Contact
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    31
35
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    32
  val firstName = new StringField(this, 80, "") with FL
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    33
  val lastName = new StringField(this, 80, "") with FL
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    34
  val position = new OptionalStringField(this, 40) with OptDisp with FL
52
f40c67ede33d Contact help
Tomas Zeman <tzeman@volny.cz>
parents: 37
diff changeset
    35
  val workMail = new EmailField(this, 256) with FL with FH
37
ee98077f6d1a Contact should use tz's OptionalEmailField
Tomas Zeman <tzeman@volny.cz>
parents: 35
diff changeset
    36
  val privateMail = new OptEmail(this, 256) with OptDisp with FL
ee98077f6d1a Contact should use tz's OptionalEmailField
Tomas Zeman <tzeman@volny.cz>
parents: 35
diff changeset
    37
  val otherMail = new OptEmail(this, 256) with OptDisp with FL
35
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    38
  val workMobile = new StringField(this, 40) with FL
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    39
  val privateMobile = new OptionalStringField(this, 40) with OptDisp with FL
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    40
  val otherMobile = new OptionalStringField(this, 40) with OptDisp with FL
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    41
  val workPhone = new OptionalStringField(this, 40) with OptDisp with FL
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    42
  val privatePhone = new OptionalStringField(this, 40) with OptDisp with FL
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    43
  val fax = new OptionalStringField(this, 40) with OptDisp with FL
8
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    44
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    45
  override def linkName = lastName.get + " " + firstName.get
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    46
}
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    47
35
d77d8194ee59 Contact record refactoring
Tomas Zeman <tzeman@volny.cz>
parents: 23
diff changeset
    48
object Contact extends Contact with MetaRecord[Contact]
8
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    49
828565e7f571 ff8d393251d4dae6 Contact model
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    50
// vim: set ts=2 sw=2 et: