Tusker/Tusker/Activities/Status Activities/UnpinStatusActivity.swift

40 lines
1.0 KiB
Swift

//
// UnpinStatusActivity.swift
// Tusker
//
// Created by Shadowfacts on 1/4/20.
// Copyright © 2020 Shadowfacts. All rights reserved.
//
import UIKit
import Pachyderm
class UnpinStatusActivity: StatusActivity {
override var activityType: UIActivity.ActivityType? {
return .unpinStatus
}
override var activityTitle: String? {
return NSLocalizedString("Unpin", comment: "unpin status activity title")
}
override var activityImage: UIImage? {
return UIImage(systemName: "pin.slash")
}
override func perform() {
guard let status = status else { return }
let request = Status.unpin(status)
mastodonController.run(request) { (response) in
if case let .success(status, _) = response {
self.mastodonController.cache.add(status: status)
} else {
// todo: display error message
UINotificationFeedbackGenerator().notificationOccurred(.error)
fatalError()
}
}
}
}