Tusker/Tusker/Activities/Status Activities/PinStatusActivity.swift

40 lines
1.0 KiB
Swift

//
// PinStatusActivity.swift
// Tusker
//
// Created by Shadowfacts on 1/4/20.
// Copyright © 2020 Shadowfacts. All rights reserved.
//
import UIKit
import Pachyderm
class PinStatusActivity: StatusActivity {
override var activityType: UIActivity.ActivityType? {
return .pinStatus
}
override var activityTitle: String? {
return NSLocalizedString("Pin", comment: "pin status activity title")
}
override var activityImage: UIImage? {
return UIImage(systemName: "pin")
}
override func perform() {
guard let status = status else { return }
let request = Status.pin(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()
}
}
}
}