From a16f2e124de68d7718e348a87819c7bab0a1fbfd Mon Sep 17 00:00:00 2001 From: Gerrit Linnemann Date: Fri, 16 Dec 2016 12:51:22 +0100 Subject: [PATCH] Interval, date format --- OTRS-Watch.xcodeproj/project.pbxproj | 4 ++++ .../UserInterfaceState.xcuserstate | Bin 24471 -> 24241 bytes OTRS-Watch/AppDelegate.swift | 10 ++++++++++ OTRS-Watch/Base.lproj/Main.storyboard | 2 +- OTRS-Watch/Extension/Date.swift | 17 +++++++++++++++++ .../Extension/ViewControllerExtension.swift | 4 ++-- OTRS-Watch/ViewController.swift | 1 + 7 files changed, 35 insertions(+), 3 deletions(-) create mode 100644 OTRS-Watch/Extension/Date.swift diff --git a/OTRS-Watch.xcodeproj/project.pbxproj b/OTRS-Watch.xcodeproj/project.pbxproj index 5dcd8a5..8dd5448 100644 --- a/OTRS-Watch.xcodeproj/project.pbxproj +++ b/OTRS-Watch.xcodeproj/project.pbxproj @@ -19,6 +19,7 @@ 857EB22C1DF974F500CCA941 /* Ticket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 857EB22B1DF974F500CCA941 /* Ticket.swift */; }; 857EB22F1DF9845200CCA941 /* TicketExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 857EB22E1DF9845200CCA941 /* TicketExtension.swift */; }; 85DB9C401E03F73E0073EDE4 /* WindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85DB9C3F1E03F73E0073EDE4 /* WindowController.swift */; }; + 85DB9C431E040A550073EDE4 /* Date.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85DB9C421E040A550073EDE4 /* Date.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -57,6 +58,7 @@ 857EB22B1DF974F500CCA941 /* Ticket.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Ticket.swift; path = Model/Ticket.swift; sourceTree = ""; }; 857EB22E1DF9845200CCA941 /* TicketExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = TicketExtension.swift; path = Model/Extension/TicketExtension.swift; sourceTree = ""; }; 85DB9C3F1E03F73E0073EDE4 /* WindowController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WindowController.swift; sourceTree = ""; }; + 85DB9C421E040A550073EDE4 /* Date.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Date.swift; path = Extension/Date.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -88,6 +90,7 @@ isa = PBXGroup; children = ( 8505EACE1E01441F002A0BFB /* ViewControllerExtension.swift */, + 85DB9C421E040A550073EDE4 /* Date.swift */, ); name = Extension; sourceTree = ""; @@ -312,6 +315,7 @@ 857EB22C1DF974F500CCA941 /* Ticket.swift in Sources */, 85DB9C401E03F73E0073EDE4 /* WindowController.swift in Sources */, 854A87B01DF6BD9A00904B3E /* AppDelegate.swift in Sources */, + 85DB9C431E040A550073EDE4 /* Date.swift in Sources */, 854A87DB1DF6C22C00904B3E /* Constants.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/OTRS-Watch.xcodeproj/project.xcworkspace/xcuserdata/linnemann.xcuserdatad/UserInterfaceState.xcuserstate b/OTRS-Watch.xcodeproj/project.xcworkspace/xcuserdata/linnemann.xcuserdatad/UserInterfaceState.xcuserstate index f04cf722cb9fdf1536f1ba79adad0f6d11b3813d..768bec5dba886c00ec85541d99f3355b95db15fe 100644 GIT binary patch delta 12866 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 WH#H|I2%G+jDW3@M!1Ld2QvVN%Za2vQ diff --git a/OTRS-Watch/AppDelegate.swift b/OTRS-Watch/AppDelegate.swift index a1aea68..24bb1cd 100644 --- a/OTRS-Watch/AppDelegate.swift +++ b/OTRS-Watch/AppDelegate.swift @@ -14,6 +14,9 @@ class AppDelegate: NSObject, NSApplicationDelegate { func applicationDidFinishLaunching(_ aNotification: Notification) { // Insert code here to initialize your application + var otrsTimer: Timer! + otrsTimer = Timer.scheduledTimer(timeInterval: 60, target: self, selector: #selector(otrsTimerAction), userInfo: nil, repeats: true) + // Here we just opt-in for allowing our instance of the NSTouchBar class to be customized throughout the app. if #available(OSX 10.12.2, *) { @@ -42,5 +45,12 @@ class AppDelegate: NSObject, NSApplicationDelegate { OTRS.sharedInstance.reload(que: que) } } + + + // MARK: Timer functions + + func otrsTimerAction() { + getTicketsFromOTRS() + } } diff --git a/OTRS-Watch/Base.lproj/Main.storyboard b/OTRS-Watch/Base.lproj/Main.storyboard index 617e2a7..1042293 100644 --- a/OTRS-Watch/Base.lproj/Main.storyboard +++ b/OTRS-Watch/Base.lproj/Main.storyboard @@ -704,7 +704,7 @@ - + diff --git a/OTRS-Watch/Extension/Date.swift b/OTRS-Watch/Extension/Date.swift new file mode 100644 index 0000000..8aeada0 --- /dev/null +++ b/OTRS-Watch/Extension/Date.swift @@ -0,0 +1,17 @@ +// +// Date.swift +// OTRS-Watch +// +// Created by Gerrit Linnemann on 16.12.16. +// Copyright © 2016 Adawim UG (haftungsbeschränkt). All rights reserved. +// + +import Foundation + +extension Date { + func toString() -> String { + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = "dd.MM.yyyy hh:mm" + return dateFormatter.string(from: self) + } +} diff --git a/OTRS-Watch/Extension/ViewControllerExtension.swift b/OTRS-Watch/Extension/ViewControllerExtension.swift index 0df5f73..e789d87 100644 --- a/OTRS-Watch/Extension/ViewControllerExtension.swift +++ b/OTRS-Watch/Extension/ViewControllerExtension.swift @@ -34,7 +34,7 @@ extension ViewController: NSTableViewDataSource, NSTableViewDelegate { if tableColumn == self.ticketTableView.tableColumns[0] { cellIdentifier = CellIdentifiers.OTRSTicketNumber image = nil - text = item.created.description + text = item.created.toString() } else if tableColumn == self.ticketTableView.tableColumns[1] { cellIdentifier = CellIdentifiers.OTRSTicketDetails image = nil @@ -58,7 +58,7 @@ extension ViewController: NSTableViewDataSource, NSTableViewDelegate { let row = ticketTableView.selectedRow let myTableViewFromNotification = notification.object as! NSTableView - print(myTableViewFromNotification) + print(OTRS.sharedInstance.ticketDictionary[row].title) } } diff --git a/OTRS-Watch/ViewController.swift b/OTRS-Watch/ViewController.swift index 3641221..23c5fbf 100644 --- a/OTRS-Watch/ViewController.swift +++ b/OTRS-Watch/ViewController.swift @@ -19,6 +19,7 @@ class ViewController: NSViewController { override func viewDidLoad() { super.viewDidLoad() + ticketTableView.delegate = self ticketTableView.dataSource = self