Advertisement
Guest User

Untitled

a guest
Dec 19th, 2016
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.09 KB | None | 0 0
  1. import Vapor
  2.  
  3. final class User: Model {
  4. var id: Node?
  5. var exists: Bool = false
  6.  
  7. let mail: String
  8. let password: String
  9. let firstName: String
  10. let lastName: String
  11. let isInstructor: Bool
  12. let info: String
  13.  
  14. init(mail: String, password: String, firstName: String, lastName: String, isInstructor: Bool, info: String) {
  15. self.id = nil
  16. self.mail = mail
  17. self.password = password
  18. self.firstName = firstName
  19. self.lastName = lastName
  20. self.isInstructor = isInstructor
  21. self.info = info
  22. }
  23.  
  24. init(node: Node, in context: Context) throws {
  25. id = try node.extract("id")
  26. mail = try node.extract("mail")
  27. password = try node.extract("password")
  28. firstName = try node.extract("firstname")
  29. lastName = try node.extract("lastname")
  30. isInstructor = try node.extract("isinstructor")
  31. info = try node.extract("info")
  32. }
  33.  
  34. func makeNode(context: Context) throws -> Node {
  35. return try Node(node: [
  36. "id": id,
  37. "mail": mail,
  38. "password": password,
  39. "firstname": firstName,
  40. "lastname": lastName,
  41. "isinstructor": isInstructor,
  42. "info": info
  43. ])
  44. }
  45.  
  46. func makeJSON() throws -> JSON {
  47. return try JSON(node: [
  48. "id": id,
  49. "mail": mail,
  50. "password": password,
  51. "firstname": firstName,
  52. "lastname": lastName,
  53. "isinstructor": isInstructor,
  54. "info": info
  55. ])
  56. }
  57.  
  58. static func prepare(_ database: Database) throws {
  59. try database.create("users", closure: { users in
  60. users.id()
  61. users.string("mail")
  62. users.string("password")
  63. users.string("firstname")
  64. users.string("lastname")
  65. users.bool("isinstructor")
  66. users.string("info")
  67. })
  68. }
  69.  
  70. static func revert(_ database: Database) throws {
  71. try database.delete("users")
  72. }
  73.  
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement