diff --git a/pass/Controllers/PasswordDetailTableViewController.swift b/pass/Controllers/PasswordDetailTableViewController.swift
index 6b3e2ca..3012e87 100644
--- a/pass/Controllers/PasswordDetailTableViewController.swift
+++ b/pass/Controllers/PasswordDetailTableViewController.swift
@@ -253,12 +253,12 @@ class PasswordDetailTableViewController: UITableViewController, UIGestureRecogni
override func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
if section == tableData.count - 1 {
let view = UIView()
- let footerLabel = UILabel(frame: CGRect(x: 8, y: 15, width: tableView.frame.width, height: 60))
+ let footerLabel = UILabel(frame: CGRect(x: 15, y: 15, width: tableView.frame.width, height: 60))
footerLabel.numberOfLines = 0
footerLabel.font = UIFont.preferredFont(forTextStyle: .footnote)
footerLabel.textColor = UIColor.lightGray
- let dateString = DateFormatter.localizedString(from: passwordEntity?.commitDate as! Date, dateStyle: DateFormatter.Style.long, timeStyle: DateFormatter.Style.long)
- footerLabel.text = "Latest commit: \(dateString)"
+ let dateString = PasswordStore.shared.getLatestCommitDate(filename: (passwordEntity?.rawPath)!)
+ footerLabel.text = "Latest commit: \(dateString ?? "Unknown")"
view.addSubview(footerLabel)
return view
}
diff --git a/pass/Models/PasswordStore.swift b/pass/Models/PasswordStore.swift
index 5817791..d6fd064 100644
--- a/pass/Models/PasswordStore.swift
+++ b/pass/Models/PasswordStore.swift
@@ -243,17 +243,6 @@ class PasswordStore {
let endIndex = url.lastPathComponent.index(url.lastPathComponent.endIndex, offsetBy: -4)
passwordEntity.name = url.lastPathComponent.substring(to: endIndex)
passwordEntity.rawPath = "\(url.path)"
- if let blameHunks = try? storeRepository?.blame(withFile: e, options: nil).hunks {
- func GetHunkDate(hunk: GTBlameHunk) -> TimeInterval {
- guard let date = hunk.finalSignature?.time?.timeIntervalSince1970 else {
- print("Time is missing from GTSignature.")
- return 0
- }
- return date
- }
- let dates = blameHunks?.map(GetHunkDate).max()
- passwordEntity.commitDate = NSDate(timeIntervalSince1970: dates!)
- }
let items = url.path.characters.split(separator: "/").map(String.init)
for i in 0 ..< items.count - 1 {
let passwordCategoryEntity = PasswordCategoryEntity(context: context)
@@ -344,6 +333,18 @@ class PasswordStore {
}
}
+ func getLatestCommitDate(filename: String) -> String? {
+ guard let blameHunks = try? storeRepository?.blame(withFile: filename, options: nil).hunks,
+ let latestCommitTime = blameHunks?.map({
+ $0.finalSignature?.time?.timeIntervalSince1970 ?? 0
+ }).max() else {
+ return nil
+ }
+ let date = Date(timeIntervalSince1970: latestCommitTime)
+ let dateString = DateFormatter.localizedString(from: date, dateStyle: DateFormatter.Style.medium, timeStyle: DateFormatter.Style.medium)
+ return dateString
+ }
+
func updateRemoteRepo() {
}
@@ -450,8 +451,7 @@ class PasswordStore {
passwordEntity.synced = false
try context.save()
print(saveURL.path)
- let commit = createAddCommitInRepository(message: "Add new password by pass for iOS", fileData: encryptedData, filename: saveURL.lastPathComponent, progressBlock: progressBlock)
- passwordEntity.commitDate = commit?.commitDate as NSDate?
+ let _ = createAddCommitInRepository(message: "Add new password by pass for iOS", fileData: encryptedData, filename: saveURL.lastPathComponent, progressBlock: progressBlock)
progressBlock(1.0)
} catch {
print(error)
@@ -464,8 +464,7 @@ class PasswordStore {
let saveURL = storeURL.appendingPathComponent(passwordEntity.rawPath!)
try encryptedData.write(to: saveURL)
progressBlock(0.3)
- let commit = createAddCommitInRepository(message: "Update password by pass for iOS", fileData: encryptedData, filename: saveURL.lastPathComponent, progressBlock: progressBlock)
- passwordEntity.commitDate = commit?.commitDate as NSDate?
+ let _ = createAddCommitInRepository(message: "Update password by pass for iOS", fileData: encryptedData, filename: saveURL.lastPathComponent, progressBlock: progressBlock)
} catch {
print(error)
}
diff --git a/pass/pass.xcdatamodeld/pass.xcdatamodel/contents b/pass/pass.xcdatamodeld/pass.xcdatamodel/contents
index 8d650b8..ede2475 100644
--- a/pass/pass.xcdatamodeld/pass.xcdatamodel/contents
+++ b/pass/pass.xcdatamodeld/pass.xcdatamodel/contents
@@ -6,7 +6,6 @@
-
@@ -16,6 +15,6 @@
-
+
\ No newline at end of file