Skip to content

Instantly share code, notes, and snippets.

@sundeepgupta
Last active April 25, 2016 01:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sundeepgupta/756f30e7d25e38e495efc149b14bb3f9 to your computer and use it in GitHub Desktop.
Save sundeepgupta/756f30e7d25e38e495efc149b14bb3f9 to your computer and use it in GitHub Desktop.
Job extension
func loadJobs() {
let sharedDefaults = NSUserDefaults(suiteName: "group.ca.sundeepgupta.job")
if let jobs = sharedDefaults?.arrayForKey("jobs") as? [[String: String]] {
self.jobs = jobs
} else {
sharedDefaults?.setObject([], forKey: "jobs")
}
self.tableView.reloadData()
}
override func didSelectPost() {
// guard let context = self.extensionContext else { fatalError() }
// let inputItems = context.inputItems
// guard let extensionItem = inputItems.first else { fatalError() }
// guard let attachments = extensionItem.attachments else { fatalError() }
// guard let itemProvider = attachments?.first else { fatalError() }
guard let itemProvider = self.extensionContext?.inputItems.first?.attachments??.first else { fatalError() }
if itemProvider.hasItemConformingToTypeIdentifier("public.url") {
itemProvider.loadItemForTypeIdentifier("public.url", options: nil, completionHandler: { item, error in
guard let item = item as? NSURL else { fatalError() }
let sharedDefaults = NSUserDefaults(suiteName: "group.ca.sundeepgupta.job")
let url = item.absoluteString
let note = self.contentText as String // http://stackoverflow.com/a/24287079/1672161
let job = ["url": url, "note": note]
if var jobs = sharedDefaults?.arrayForKey("jobs") {
jobs.append(job)
sharedDefaults?.setObject(jobs, forKey: "jobs")
} else {
sharedDefaults?.setObject([job], forKey: "jobs")
}
sharedDefaults?.synchronize()
})
}
self.extensionContext!.completeRequestReturningItems([], completionHandler: nil)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment