Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // UserController.swift
- // OnboardingApp
- //
- // Created by Josh Broomberg on 2016/05/28.
- // Copyright © 2016 iXperience. All rights reserved.
- //
- import Foundation
- class UserManager {
- class var sharedInstance: UserManager {
- struct Static {
- static var instance:UserManager?
- static var token: dispatch_once_t = 0
- }
- dispatch_once(&Static.token) {
- Static.instance = UserManager()
- }
- return Static.instance!
- }
- struct User {
- var username: String
- var password: String
- }
- private var users: [User] = []
- var logged_in_user: User?
- func registerUser(new_username: String, new_password: String) -> (failure_message: String?, user: User?) {
- for user in users {
- if user.username == new_username {
- return ("Username taken", nil)
- }
- }
- let user = User(username: new_username, password: new_password)
- users.append(user)
- logged_in_user = user
- print("User with username: \(new_username) has been registered by the UserManager.")
- return (nil, user)
- }
- func loginUser(supplied_username: String, supplied_password: String) -> (failure_message: String?, user: User?){
- for user in users {
- if user.username == supplied_username {
- if user.password == supplied_password {
- logged_in_user = user
- print("User with username: \(supplied_username) has been logged in by the UserManager.")
- return (nil, user)
- } else {
- return ("Password incorrect", nil)
- }
- }
- }
- return ("No user with that username", nil)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement