 
     var doNotDisturbPeriod = DoNotDisturbPeriod()
 
-    @IBOutlet weak var fromButton: UIButton!
-    @IBOutlet weak var toButton: UIButton!
-    @IBOutlet weak var pickerView: UIPickerView!
+    var dirtyAction: (DoNotDisturbPeriod -> Void)?
 
-    enum ActiveTime {
+    @IBOutlet private weak var fromButton: UIButton!
+    @IBOutlet private weak var toButton: UIButton!
+    @IBOutlet private weak var pickerView: UIPickerView!
+
+    private enum ActiveTime {
         case From
         case To
     }
 
-    let max = Int(INT16_MAX)
+    private let max = Int(INT16_MAX)
 
-    var activeTime: ActiveTime = .From {
+    private var activeTime: ActiveTime = .From {
         willSet {
             switch newValue {
 

        })
    }

    func updateFromButton() {
        fromButton.setTitle(NSLocalizedString("From", comment: "") + " " + doNotDisturbPeriod.localFromString, forState: .Normal)
    }

    func updateToButton() {
        toButton.setTitle(NSLocalizedString("To", comment: "") + " " + doNotDisturbPeriod.localToString, forState: .Normal)
    }

    @IBAction func activeFrom() {
        activeTime = .From
    }

    @IBAction func activeTo() {
        activeTime = .To
    }
}


    // MARK: - Actions

    private func updateDoNotDisturb(success success: () -> Void) {

        let info: JSONDictionary = [
            "mute_started_at_string": doNotDisturbPeriod.serverFromString,
