Made alarmTone editable, but localRead() nil error.
This commit is contained in:
@@ -9,6 +9,74 @@ import UIKit
|
||||
|
||||
class AddAlarmViewController: UIViewController
|
||||
{
|
||||
<<<<<<< Updated upstream
|
||||
=======
|
||||
// Editing variables
|
||||
var alarmCell: AlarmTableCell? = nil
|
||||
var editMode: Bool { alarmCell != nil }
|
||||
var originalTime: String = ""
|
||||
|
||||
override func viewDidLoad()
|
||||
{
|
||||
// End edit on return
|
||||
alarmNameTextField.delegate = self
|
||||
|
||||
// Load alarm to edit if in edit mode
|
||||
if let alarmCell = alarmCell
|
||||
{
|
||||
// Toggle editing mode
|
||||
viewTitle.text = "Edit Alarm"
|
||||
|
||||
// Convert string to Date
|
||||
let dateFormatter = DateFormatter()
|
||||
dateFormatter.dateFormat = "h:mma"
|
||||
let date = dateFormatter.date(from: "\(alarmCell.time.text!)\(alarmCell.ampm.text!)")
|
||||
|
||||
// Set all the original values to be edited
|
||||
timePicker.date = date!
|
||||
originalTime = String(dateFormatter.string(from: date!).dropLast(2))
|
||||
|
||||
// Toggle proper repeats
|
||||
if let repeats = alarmCell.repeatText.text {
|
||||
if repeats == "Repeats: Weekdays" {
|
||||
repeatWeekdaysSwitch.isOn = true
|
||||
repeatWeekendsSwitch.isOn = false
|
||||
} else if repeats == "Repeats: Weekends" {
|
||||
repeatWeekendsSwitch.isOn = true
|
||||
repeatWeekdaysSwitch.isOn = false
|
||||
} else if repeats == "Repeats: Daily" {
|
||||
repeatWeekdaysSwitch.isOn = true
|
||||
repeatWeekendsSwitch.isOn = true
|
||||
} else {
|
||||
repeatWeekendsSwitch.isOn = false
|
||||
repeatWeekdaysSwitch.isOn = false
|
||||
}
|
||||
}
|
||||
|
||||
alarmNameTextField.text = String(alarmCell.descriptionText.text!.dropFirst(2))
|
||||
updateETA()
|
||||
|
||||
// Sets the WVM
|
||||
if let wvm = alarmCell.wvmText.text {
|
||||
for index in 0...wvms.count-1 {
|
||||
if wvm == wvms[index].name {
|
||||
wvmPicker.selectRow(index, inComponent: 0, animated: true)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Sets alarm tone
|
||||
if let toneName = alarmCell.toneLabel.text {
|
||||
for index in 0...ringtones.count-1 {
|
||||
if toneName == ringtones[index].name {
|
||||
ringtonePicker.selectRow(index, inComponent: 0, animated: true)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
>>>>>>> Stashed changes
|
||||
// UI: Make scroll view scrollable
|
||||
@IBOutlet weak var scrollView: UIScrollView!
|
||||
@IBOutlet weak var scrollViewInner: UIView!
|
||||
@@ -24,7 +92,32 @@ class AddAlarmViewController: UIViewController
|
||||
|
||||
override func viewDidLoad()
|
||||
{
|
||||
<<<<<<< Updated upstream
|
||||
super.viewDidLoad()
|
||||
=======
|
||||
let (h, m, _) = timePicker.date.getHMS()
|
||||
|
||||
// Create the alarm
|
||||
let alarm = Alarm(hour: h, minute: m,
|
||||
text: alarmNameTextField.text ?? "Alarm",
|
||||
wakeMethod: wvms[wvmPicker.selectedRow(inComponent: 0)],
|
||||
lastActivate: Date(), alarmTone: ringtones[ringtonePicker.selectedRow(inComponent: 0)].tone, toneName: ringtones[ringtonePicker.selectedRow(inComponent: 0)].name)
|
||||
|
||||
// Set alarm.repeats to correspond with what the user selects
|
||||
(0...6).forEach { alarm.repeats[$0] = false }
|
||||
if repeatWeekdaysSwitch.isOn { (1...5).forEach { alarm.repeats[$0] = true } }
|
||||
if repeatWeekendsSwitch.isOn { [0, 6].forEach { alarm.repeats[$0] = true } }
|
||||
|
||||
return alarm
|
||||
}
|
||||
|
||||
/**
|
||||
Dynamically the ETA label for the alarm
|
||||
*/
|
||||
func updateETA() {
|
||||
let timeTill = createAlarm().nextActivate!.timeIntervalSince(Date()).str()
|
||||
timeTillAlarmLabel.text = "Going off in \(timeTill)"
|
||||
>>>>>>> Stashed changes
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user