26.04.2022

26.04.2022
parent 001b7cb9
...@@ -43,13 +43,14 @@ ...@@ -43,13 +43,14 @@
D569AB8627B8E27B0013DCFE /* Em_callUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D569AB8527B8E27B0013DCFE /* Em_callUITests.swift */; }; D569AB8627B8E27B0013DCFE /* Em_callUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D569AB8527B8E27B0013DCFE /* Em_callUITests.swift */; };
D56E5D6D27C26F2500D0E4B9 /* StartViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D56E5D6C27C26F2500D0E4B9 /* StartViewController.swift */; }; D56E5D6D27C26F2500D0E4B9 /* StartViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D56E5D6C27C26F2500D0E4B9 /* StartViewController.swift */; };
D57A2EBB28033CF200B8E910 /* NSArrayValueTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D57A2EBA28033CF200B8E910 /* NSArrayValueTransformer.swift */; }; D57A2EBB28033CF200B8E910 /* NSArrayValueTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D57A2EBA28033CF200B8E910 /* NSArrayValueTransformer.swift */; };
D57DC3B728125CDC008F649D /* EmerLocksmithVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = D57DC3B628125CDC008F649D /* EmerLocksmithVC.swift */; };
D58EDC8C2811F368007A9AAC /* LocsmithVCViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D58EDC8B2811F368007A9AAC /* LocsmithVCViewController.swift */; };
D59E3CE027D3B03F008A7E0C /* SettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D59E3CDF27D3B03F008A7E0C /* SettingCell.swift */; }; D59E3CE027D3B03F008A7E0C /* SettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D59E3CDF27D3B03F008A7E0C /* SettingCell.swift */; };
D59E3CE527D3B37B008A7E0C /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D59E3CE427D3B37B008A7E0C /* Extensions.swift */; }; D59E3CE527D3B37B008A7E0C /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D59E3CE427D3B37B008A7E0C /* Extensions.swift */; };
D5B0201027C37BBE00C4BA4F /* MainViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B0200F27C37BBE00C4BA4F /* MainViewController.swift */; }; D5B0201027C37BBE00C4BA4F /* MainViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B0200F27C37BBE00C4BA4F /* MainViewController.swift */; };
D5B0201527C3826800C4BA4F /* ArtworkViews.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B0201427C3826800C4BA4F /* ArtworkViews.swift */; }; D5B0201527C3826800C4BA4F /* ArtworkViews.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B0201427C3826800C4BA4F /* ArtworkViews.swift */; };
D5B0201A27C382A600C4BA4F /* Artwork.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B0201927C382A600C4BA4F /* Artwork.swift */; }; D5B0201A27C382A600C4BA4F /* Artwork.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B0201927C382A600C4BA4F /* Artwork.swift */; };
D5B036CD280BF9ED0076F7CE /* StringArrayTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B036CC280BF9ED0076F7CE /* StringArrayTransformer.swift */; }; D5B036CD280BF9ED0076F7CE /* StringArrayTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B036CC280BF9ED0076F7CE /* StringArrayTransformer.swift */; };
D5C001D027DA60CB0045F6BE /* StartNavigationVCViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5C001CF27DA60CB0045F6BE /* StartNavigationVCViewController.swift */; };
D5C59AF127CFD1810013EFBB /* netwok.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5C59AF027CFD1810013EFBB /* netwok.swift */; }; D5C59AF127CFD1810013EFBB /* netwok.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5C59AF027CFD1810013EFBB /* netwok.swift */; };
D5CB9A2827ECCE9A000F8500 /* StringExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5CB9A1E27ECCE99000F8500 /* StringExtension.swift */; }; D5CB9A2827ECCE9A000F8500 /* StringExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5CB9A1E27ECCE99000F8500 /* StringExtension.swift */; };
D5CB9A2927ECCE9A000F8500 /* Message.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5CB9A1F27ECCE99000F8500 /* Message.swift */; }; D5CB9A2927ECCE9A000F8500 /* Message.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5CB9A1F27ECCE99000F8500 /* Message.swift */; };
...@@ -140,13 +141,14 @@ ...@@ -140,13 +141,14 @@
D56E5D6C27C26F2500D0E4B9 /* StartViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StartViewController.swift; sourceTree = "<group>"; }; D56E5D6C27C26F2500D0E4B9 /* StartViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StartViewController.swift; sourceTree = "<group>"; };
D56E5D7927C2893800D0E4B9 /* MapKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MapKit.framework; path = System/Library/Frameworks/MapKit.framework; sourceTree = SDKROOT; }; D56E5D7927C2893800D0E4B9 /* MapKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MapKit.framework; path = System/Library/Frameworks/MapKit.framework; sourceTree = SDKROOT; };
D57A2EBA28033CF200B8E910 /* NSArrayValueTransformer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NSArrayValueTransformer.swift; sourceTree = "<group>"; }; D57A2EBA28033CF200B8E910 /* NSArrayValueTransformer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NSArrayValueTransformer.swift; sourceTree = "<group>"; };
D57DC3B628125CDC008F649D /* EmerLocksmithVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmerLocksmithVC.swift; sourceTree = "<group>"; };
D58EDC8B2811F368007A9AAC /* LocsmithVCViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocsmithVCViewController.swift; sourceTree = "<group>"; };
D59E3CDF27D3B03F008A7E0C /* SettingCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingCell.swift; sourceTree = "<group>"; }; D59E3CDF27D3B03F008A7E0C /* SettingCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingCell.swift; sourceTree = "<group>"; };
D59E3CE427D3B37B008A7E0C /* Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; }; D59E3CE427D3B37B008A7E0C /* Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; };
D5B0200F27C37BBE00C4BA4F /* MainViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewController.swift; sourceTree = "<group>"; }; D5B0200F27C37BBE00C4BA4F /* MainViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewController.swift; sourceTree = "<group>"; };
D5B0201427C3826800C4BA4F /* ArtworkViews.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArtworkViews.swift; sourceTree = "<group>"; }; D5B0201427C3826800C4BA4F /* ArtworkViews.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArtworkViews.swift; sourceTree = "<group>"; };
D5B0201927C382A600C4BA4F /* Artwork.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Artwork.swift; sourceTree = "<group>"; }; D5B0201927C382A600C4BA4F /* Artwork.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Artwork.swift; sourceTree = "<group>"; };
D5B036CC280BF9ED0076F7CE /* StringArrayTransformer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringArrayTransformer.swift; sourceTree = "<group>"; }; D5B036CC280BF9ED0076F7CE /* StringArrayTransformer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringArrayTransformer.swift; sourceTree = "<group>"; };
D5C001CF27DA60CB0045F6BE /* StartNavigationVCViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StartNavigationVCViewController.swift; sourceTree = "<group>"; };
D5C59AF027CFD1810013EFBB /* netwok.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = netwok.swift; sourceTree = "<group>"; }; D5C59AF027CFD1810013EFBB /* netwok.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = netwok.swift; sourceTree = "<group>"; };
D5CB9A1E27ECCE99000F8500 /* StringExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StringExtension.swift; sourceTree = "<group>"; }; D5CB9A1E27ECCE99000F8500 /* StringExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StringExtension.swift; sourceTree = "<group>"; };
D5CB9A1F27ECCE99000F8500 /* Message.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Message.swift; sourceTree = "<group>"; }; D5CB9A1F27ECCE99000F8500 /* Message.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Message.swift; sourceTree = "<group>"; };
...@@ -232,10 +234,11 @@ ...@@ -232,10 +234,11 @@
D5B0200F27C37BBE00C4BA4F /* MainViewController.swift */, D5B0200F27C37BBE00C4BA4F /* MainViewController.swift */,
D5E2042327CE2DD90063A514 /* ProfileViewController.swift */, D5E2042327CE2DD90063A514 /* ProfileViewController.swift */,
D5E2042827CE30E20063A514 /* DataProfileViewController.swift */, D5E2042827CE30E20063A514 /* DataProfileViewController.swift */,
D5C001CF27DA60CB0045F6BE /* StartNavigationVCViewController.swift */,
D5D6F1A527E77D4A008106EE /* DoubleElectricVC.swift */, D5D6F1A527E77D4A008106EE /* DoubleElectricVC.swift */,
D5DF4AB327F0B5DE00C7DE48 /* CallProfiViewController.swift */, D5DF4AB327F0B5DE00C7DE48 /* CallProfiViewController.swift */,
D52297C02805E45000064FE4 /* MainVCViewController.swift */, D52297C02805E45000064FE4 /* MainVCViewController.swift */,
D58EDC8B2811F368007A9AAC /* LocsmithVCViewController.swift */,
D57DC3B628125CDC008F649D /* EmerLocksmithVC.swift */,
); );
path = VC; path = VC;
sourceTree = "<group>"; sourceTree = "<group>";
...@@ -601,6 +604,7 @@ ...@@ -601,6 +604,7 @@
buildActionMask = 2147483647; buildActionMask = 2147483647;
files = ( files = (
D51D340227BF98B9008D5065 /* CalendarViewController.swift in Sources */, D51D340227BF98B9008D5065 /* CalendarViewController.swift in Sources */,
D58EDC8C2811F368007A9AAC /* LocsmithVCViewController.swift in Sources */,
D5F0237B27C4DEC4008F4146 /* LocationMng.swift in Sources */, D5F0237B27C4DEC4008F4146 /* LocationMng.swift in Sources */,
D5E31B3C27BD651C00F5B87D /* EmerElecricianViewController.swift in Sources */, D5E31B3C27BD651C00F5B87D /* EmerElecricianViewController.swift in Sources */,
D5F0238827C4E2AA008F4146 /* ShowAlert.swift in Sources */, D5F0238827C4E2AA008F4146 /* ShowAlert.swift in Sources */,
...@@ -623,6 +627,7 @@ ...@@ -623,6 +627,7 @@
D53F560B27E62D7600C18B2A /* SmallListWorkVC.swift in Sources */, D53F560B27E62D7600C18B2A /* SmallListWorkVC.swift in Sources */,
D55E88F827DE124B00DB59E7 /* GlidingCollectionDelegate.swift in Sources */, D55E88F827DE124B00DB59E7 /* GlidingCollectionDelegate.swift in Sources */,
D5CB9A2F27ECCE9A000F8500 /* ChatRoomViewController+Table.swift in Sources */, D5CB9A2F27ECCE9A000F8500 /* ChatRoomViewController+Table.swift in Sources */,
D57DC3B728125CDC008F649D /* EmerLocksmithVC.swift in Sources */,
D5CB9A2927ECCE9A000F8500 /* Message.swift in Sources */, D5CB9A2927ECCE9A000F8500 /* Message.swift in Sources */,
D55E88F427DE124B00DB59E7 /* CollectionCell.swift in Sources */, D55E88F427DE124B00DB59E7 /* CollectionCell.swift in Sources */,
D55E88FB27DE124B00DB59E7 /* FileManager.swift in Sources */, D55E88FB27DE124B00DB59E7 /* FileManager.swift in Sources */,
...@@ -648,7 +653,6 @@ ...@@ -648,7 +653,6 @@
D5CB9A2827ECCE9A000F8500 /* StringExtension.swift in Sources */, D5CB9A2827ECCE9A000F8500 /* StringExtension.swift in Sources */,
D503734027FE0A360049EA7A /* ModelCoreData.xcdatamodeld in Sources */, D503734027FE0A360049EA7A /* ModelCoreData.xcdatamodeld in Sources */,
D5B0201527C3826800C4BA4F /* ArtworkViews.swift in Sources */, D5B0201527C3826800C4BA4F /* ArtworkViews.swift in Sources */,
D5C001D027DA60CB0045F6BE /* StartNavigationVCViewController.swift in Sources */,
D569AB6327B8E27A0013DCFE /* SceneDelegate.swift in Sources */, D569AB6327B8E27A0013DCFE /* SceneDelegate.swift in Sources */,
D5DF4AB427F0B5DE00C7DE48 /* CallProfiViewController.swift in Sources */, D5DF4AB427F0B5DE00C7DE48 /* CallProfiViewController.swift in Sources */,
D5B0201027C37BBE00C4BA4F /* MainViewController.swift in Sources */, D5B0201027C37BBE00C4BA4F /* MainViewController.swift in Sources */,
......
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "307" startingLineNumber = "314"
endingLineNumber = "307" endingLineNumber = "314"
landmarkName = "coordinateToAdress(_:)" landmarkName = "coordinateToAdress(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -62,8 +62,8 @@ ...@@ -62,8 +62,8 @@
filePath = "Em-call/VC/HandmanViewController.swift" filePath = "Em-call/VC/HandmanViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "269" startingLineNumber = "294"
endingLineNumber = "269" endingLineNumber = "294"
landmarkName = "delegateClick(text:)" landmarkName = "delegateClick(text:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -78,8 +78,8 @@ ...@@ -78,8 +78,8 @@
filePath = "Em-call/VC/HandmanViewController.swift" filePath = "Em-call/VC/HandmanViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "278" startingLineNumber = "303"
endingLineNumber = "278" endingLineNumber = "303"
landmarkName = "calendarDelegateClick(text:flagData:)" landmarkName = "calendarDelegateClick(text:flagData:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -190,8 +190,8 @@ ...@@ -190,8 +190,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "163" startingLineNumber = "171"
endingLineNumber = "163" endingLineNumber = "171"
landmarkName = "viewDidAppear(_:)" landmarkName = "viewDidAppear(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -286,8 +286,8 @@ ...@@ -286,8 +286,8 @@
filePath = "Em-call/VC/ElectricTableViewController.swift" filePath = "Em-call/VC/ElectricTableViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "243" startingLineNumber = "268"
endingLineNumber = "243" endingLineNumber = "268"
landmarkName = "delegateClick(text:)" landmarkName = "delegateClick(text:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array/>
</plist>
...@@ -126,8 +126,8 @@ ...@@ -126,8 +126,8 @@
filePath = "Em-call/VC/StartViewController.swift" filePath = "Em-call/VC/StartViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "47" startingLineNumber = "52"
endingLineNumber = "47" endingLineNumber = "52"
landmarkName = "pressEnter(_:)" landmarkName = "pressEnter(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -142,8 +142,8 @@ ...@@ -142,8 +142,8 @@
filePath = "Em-call/Data/SettingsLauncher.swift" filePath = "Em-call/Data/SettingsLauncher.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "267" startingLineNumber = "268"
endingLineNumber = "267" endingLineNumber = "268"
landmarkName = "imagePickerController(_:didFinishPickingMediaWithInfo:)" landmarkName = "imagePickerController(_:didFinishPickingMediaWithInfo:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -158,8 +158,8 @@ ...@@ -158,8 +158,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "198" startingLineNumber = "206"
endingLineNumber = "198" endingLineNumber = "206"
landmarkName = "viewWillAppear(_:)" landmarkName = "viewWillAppear(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -222,8 +222,8 @@ ...@@ -222,8 +222,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "207" startingLineNumber = "216"
endingLineNumber = "207" endingLineNumber = "216"
landmarkName = "viewWillDisappear(_:)" landmarkName = "viewWillDisappear(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -238,8 +238,8 @@ ...@@ -238,8 +238,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "170" startingLineNumber = "178"
endingLineNumber = "170" endingLineNumber = "178"
landmarkName = "viewDidAppear(_:)" landmarkName = "viewDidAppear(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -590,8 +590,8 @@ ...@@ -590,8 +590,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "203" startingLineNumber = "212"
endingLineNumber = "203" endingLineNumber = "212"
landmarkName = "viewWillAppear(_:)" landmarkName = "viewWillAppear(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -606,8 +606,8 @@ ...@@ -606,8 +606,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "301" startingLineNumber = "308"
endingLineNumber = "301" endingLineNumber = "308"
landmarkName = "tapGesture(_:)" landmarkName = "tapGesture(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -622,8 +622,8 @@ ...@@ -622,8 +622,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "333" startingLineNumber = "340"
endingLineNumber = "333" endingLineNumber = "340"
landmarkName = "centerToLocation(_:regionRadius:)" landmarkName = "centerToLocation(_:regionRadius:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -638,8 +638,8 @@ ...@@ -638,8 +638,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "342" startingLineNumber = "349"
endingLineNumber = "342" endingLineNumber = "349"
landmarkName = "settingsDelegateClick(img:selRow:imgName:)" landmarkName = "settingsDelegateClick(img:selRow:imgName:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -654,28 +654,12 @@ ...@@ -654,28 +654,12 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "262" startingLineNumber = "269"
endingLineNumber = "262" endingLineNumber = "269"
landmarkName = "textFieldShouldReturn(_:)" landmarkName = "textFieldShouldReturn(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "7F039346-648C-456E-BB8A-6E53D79B1D2E"
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "238"
endingLineNumber = "238"
landmarkName = "addBottomSheetView()"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
...@@ -718,8 +702,8 @@ ...@@ -718,8 +702,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "294" startingLineNumber = "301"
endingLineNumber = "294" endingLineNumber = "301"
landmarkName = "mapView(_:viewFor:)" landmarkName = "mapView(_:viewFor:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -734,8 +718,8 @@ ...@@ -734,8 +718,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "293" startingLineNumber = "300"
endingLineNumber = "293" endingLineNumber = "300"
landmarkName = "mapView(_:viewFor:)" landmarkName = "mapView(_:viewFor:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -750,8 +734,8 @@ ...@@ -750,8 +734,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "268" startingLineNumber = "275"
endingLineNumber = "268" endingLineNumber = "275"
landmarkName = "mapView(_:viewFor:)" landmarkName = "mapView(_:viewFor:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -766,8 +750,8 @@ ...@@ -766,8 +750,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "267" startingLineNumber = "274"
endingLineNumber = "267" endingLineNumber = "274"
landmarkName = "mapView(_:viewFor:)" landmarkName = "mapView(_:viewFor:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -782,8 +766,8 @@ ...@@ -782,8 +766,8 @@
filePath = "Em-call/VC/ElectricTableViewController.swift" filePath = "Em-call/VC/ElectricTableViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "263" startingLineNumber = "288"
endingLineNumber = "263" endingLineNumber = "288"
landmarkName = "settingsDelegateClick(img:selRow:imgName:)" landmarkName = "settingsDelegateClick(img:selRow:imgName:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -798,8 +782,8 @@ ...@@ -798,8 +782,8 @@
filePath = "Em-call/Data/SettingsLauncher.swift" filePath = "Em-call/Data/SettingsLauncher.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "260" startingLineNumber = "261"
endingLineNumber = "260" endingLineNumber = "261"
landmarkName = "imagePickerController(_:didFinishPickingMediaWithInfo:)" landmarkName = "imagePickerController(_:didFinishPickingMediaWithInfo:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -814,8 +798,8 @@ ...@@ -814,8 +798,8 @@
filePath = "Em-call/Data/SettingsLauncher.swift" filePath = "Em-call/Data/SettingsLauncher.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "266" startingLineNumber = "267"
endingLineNumber = "266" endingLineNumber = "267"
landmarkName = "imagePickerController(_:didFinishPickingMediaWithInfo:)" landmarkName = "imagePickerController(_:didFinishPickingMediaWithInfo:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -830,8 +814,8 @@ ...@@ -830,8 +814,8 @@
filePath = "Em-call/Data/SettingsLauncher.swift" filePath = "Em-call/Data/SettingsLauncher.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "264" startingLineNumber = "265"
endingLineNumber = "264" endingLineNumber = "265"
landmarkName = "imagePickerController(_:didFinishPickingMediaWithInfo:)" landmarkName = "imagePickerController(_:didFinishPickingMediaWithInfo:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -846,8 +830,8 @@ ...@@ -846,8 +830,8 @@
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "520" startingLineNumber = "450"
endingLineNumber = "520" endingLineNumber = "450"
landmarkName = "addListImageGalery(image:imageName:flagTypeGalery:)" landmarkName = "addListImageGalery(image:imageName:flagTypeGalery:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1009,22 +993,6 @@ ...@@ -1009,22 +993,6 @@
landmarkType = "3"> landmarkType = "3">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "091E38D9-4C22-4627-9E2F-7FBFD2A7CA36"
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "266"
endingLineNumber = "266"
landmarkName = "load()"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
...@@ -1035,8 +1003,8 @@ ...@@ -1035,8 +1003,8 @@
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "516" startingLineNumber = "446"
endingLineNumber = "516" endingLineNumber = "446"
landmarkName = "addListImageGalery(image:imageName:flagTypeGalery:)" landmarkName = "addListImageGalery(image:imageName:flagTypeGalery:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1051,25 +1019,9 @@ ...@@ -1051,25 +1019,9 @@
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "254" startingLineNumber = "218"
endingLineNumber = "254" endingLineNumber = "218"
landmarkName = "load()" landmarkName = "loadAll()"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "E8B66009-6307-4F15-84C0-94FE8BB3677C"
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "323"
endingLineNumber = "323"
landmarkName = "save(imageData:name:flagWorker:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
...@@ -1077,14 +1029,14 @@ ...@@ -1077,14 +1029,14 @@
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "1C27E1CF-1531-4053-B022-B65B42DD551F" uuid = "1C27E1CF-1531-4053-B022-B65B42DD551F"
shouldBeEnabled = "Yes" shouldBeEnabled = "No"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "518" startingLineNumber = "448"
endingLineNumber = "518" endingLineNumber = "448"
landmarkName = "addListImageGalery(image:imageName:flagTypeGalery:)" landmarkName = "addListImageGalery(image:imageName:flagTypeGalery:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1099,8 +1051,8 @@ ...@@ -1099,8 +1051,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "156" startingLineNumber = "164"
endingLineNumber = "156" endingLineNumber = "164"
landmarkName = "viewDidLoad()" landmarkName = "viewDidLoad()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1117,8 +1069,8 @@ ...@@ -1117,8 +1069,8 @@
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "27" startingLineNumber = "27"
endingLineNumber = "27" endingLineNumber = "27"
landmarkName = "viewDidLoad()" landmarkName = "unknown"
landmarkType = "7"> landmarkType = "0">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
...@@ -1131,8 +1083,8 @@ ...@@ -1131,8 +1083,8 @@
filePath = "Em-call/VC/PlumbersViewController.swift" filePath = "Em-call/VC/PlumbersViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "77" startingLineNumber = "95"
endingLineNumber = "77" endingLineNumber = "95"
landmarkName = "back()" landmarkName = "back()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1147,8 +1099,8 @@ ...@@ -1147,8 +1099,8 @@
filePath = "Em-call/VC/ElectricTableViewController.swift" filePath = "Em-call/VC/ElectricTableViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "96" startingLineNumber = "106"
endingLineNumber = "96" endingLineNumber = "106"
landmarkName = "back()" landmarkName = "back()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1163,8 +1115,8 @@ ...@@ -1163,8 +1115,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "365" startingLineNumber = "372"
endingLineNumber = "365" endingLineNumber = "372"
landmarkName = "selectedMenuCell(_:)" landmarkName = "selectedMenuCell(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1179,8 +1131,8 @@ ...@@ -1179,8 +1131,8 @@
filePath = "Em-call/Data/SettingsLauncher.swift" filePath = "Em-call/Data/SettingsLauncher.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "362" startingLineNumber = "363"
endingLineNumber = "362" endingLineNumber = "363"
landmarkName = "tableView(_:didSelectRowAt:)" landmarkName = "tableView(_:didSelectRowAt:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1195,8 +1147,8 @@ ...@@ -1195,8 +1147,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "368" startingLineNumber = "375"
endingLineNumber = "368" endingLineNumber = "375"
landmarkName = "selectedMenuCell(_:)" landmarkName = "selectedMenuCell(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1211,8 +1163,8 @@ ...@@ -1211,8 +1163,8 @@
filePath = "Em-call/VC/MainViewController.swift" filePath = "Em-call/VC/MainViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "357" startingLineNumber = "364"
endingLineNumber = "357" endingLineNumber = "364"
landmarkName = "selectedMenuCell(_:)" landmarkName = "selectedMenuCell(_:)"
landmarkType = "7"> landmarkType = "7">
<Locations> <Locations>
...@@ -1328,14 +1280,14 @@ ...@@ -1328,14 +1280,14 @@
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "17FF659E-9AA7-4C2A-8737-6C1961030388" uuid = "17FF659E-9AA7-4C2A-8737-6C1961030388"
shouldBeEnabled = "Yes" shouldBeEnabled = "No"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "331" startingLineNumber = "352"
endingLineNumber = "331" endingLineNumber = "352"
landmarkName = "save(imageData:name:flagWorker:)" landmarkName = "save(imageData:name:flagWorker:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1343,47 +1295,79 @@ ...@@ -1343,47 +1295,79 @@
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "DD9D333F-5FDC-46A5-9EAD-D2E1FBE0F6A6" uuid = "D8264917-8D99-4818-95AA-77B78C78AAB7"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/StringArrayTransformer.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "341" startingLineNumber = "39"
endingLineNumber = "341" endingLineNumber = "39"
landmarkName = "save(imageData:name:flagWorker:)" landmarkName = "transformedValue(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "88258768-052C-4E01-9630-D1873EDB31F1" uuid = "899DCCDC-CA78-4AF2-A960-CBB7DEF86B52"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "36"
endingLineNumber = "36"
landmarkName = "transformedValue(_:)"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "825D5ED3-8172-4001-BE1B-DFAF30FBF44C"
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "38"
endingLineNumber = "38"
landmarkName = "transformedValue(_:)"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "FC015FBE-7A97-4097-8988-03CC68B7AC5E"
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "392" startingLineNumber = "474"
endingLineNumber = "392" endingLineNumber = "474"
landmarkName = "save(imageData:name:flagWorker:)" landmarkName = "addListImageGalery(image:imageName:flagTypeGalery:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "D8264917-8D99-4818-95AA-77B78C78AAB7" uuid = "D154C28E-4BA6-408F-9FAF-48F9DC894DE1"
shouldBeEnabled = "Yes" shouldBeEnabled = "No"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/StringArrayTransformer.swift" filePath = "Em-call/Data/StringArrayTransformer.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "37" startingLineNumber = "41"
endingLineNumber = "37" endingLineNumber = "41"
landmarkName = "transformedValue(_:)" landmarkName = "transformedValue(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1391,31 +1375,47 @@ ...@@ -1391,31 +1375,47 @@
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "899DCCDC-CA78-4AF2-A960-CBB7DEF86B52" uuid = "4D7EB540-8C9F-41AC-B211-2635A442C72A"
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/Data/StringArrayTransformer.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "51"
endingLineNumber = "51"
landmarkName = "reverseTransformedValue(_:)"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "5FB81EAE-30B8-496E-940B-6E8832C0E30B"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift" filePath = "Em-call/Data/NSArrayValueTransformer.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "34" startingLineNumber = "48"
endingLineNumber = "34" endingLineNumber = "48"
landmarkName = "transformedValue(_:)" landmarkName = "reverseTransformedValue(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "825D5ED3-8172-4001-BE1B-DFAF30FBF44C" uuid = "74C283BF-0185-4B2D-8A9E-6D5E67EF0AF3"
shouldBeEnabled = "No" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift" filePath = "Em-call/Data/NSArrayValueTransformer.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "36" startingLineNumber = "40"
endingLineNumber = "36" endingLineNumber = "40"
landmarkName = "transformedValue(_:)" landmarkName = "transformedValue(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1423,47 +1423,63 @@ ...@@ -1423,47 +1423,63 @@
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "FC015FBE-7A97-4097-8988-03CC68B7AC5E" uuid = "DAC2CFC7-651F-4758-9B45-C33E9EA90587"
shouldBeEnabled = "No" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/NSArrayValueTransformer.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "548" startingLineNumber = "53"
endingLineNumber = "548" endingLineNumber = "53"
landmarkName = "addListImageGalery(image:imageName:flagTypeGalery:)" landmarkName = "reverseTransformedValue(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "EBD3B0E9-23B6-4481-A617-7ADF7D5BF016" uuid = "E55F50E6-DE03-4827-852D-497B67E470DA"
shouldBeEnabled = "No" shouldBeEnabled = "No"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "387" startingLineNumber = "108"
endingLineNumber = "387" endingLineNumber = "108"
landmarkName = "save(imageData:name:flagWorker:)" landmarkName = "init()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "D154C28E-4BA6-408F-9FAF-48F9DC894DE1" uuid = "326F4A9D-456F-47DC-AF51-C456D51553A3"
shouldBeEnabled = "No" shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "42"
endingLineNumber = "42"
landmarkName = "transformedValue(_:)"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "7DF2C499-470F-431F-B80D-09CD1E60137E"
shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/StringArrayTransformer.swift" filePath = "Em-call/Data/StringArrayTransformer.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "39" startingLineNumber = "46"
endingLineNumber = "39" endingLineNumber = "46"
landmarkName = "transformedValue(_:)" landmarkName = "transformedValue(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1471,15 +1487,15 @@ ...@@ -1471,15 +1487,15 @@
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "520677EC-3F99-4CB2-A0ED-48EF8E6C58C4" uuid = "762F91E2-C376-465D-9554-2D5C5BCFD447"
shouldBeEnabled = "No" shouldBeEnabled = "No"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "388" startingLineNumber = "393"
endingLineNumber = "388" endingLineNumber = "393"
landmarkName = "save(imageData:name:flagWorker:)" landmarkName = "save(imageData:name:flagWorker:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1487,15 +1503,15 @@ ...@@ -1487,15 +1503,15 @@
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "2CA9EFC0-F5F9-4ED7-A5B7-0BC5EEF152FC" uuid = "E3B00239-B27D-479E-AE4D-381473D60317"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "354" startingLineNumber = "343"
endingLineNumber = "354" endingLineNumber = "343"
landmarkName = "save(imageData:name:flagWorker:)" landmarkName = "save(imageData:name:flagWorker:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
...@@ -1503,177 +1519,209 @@ ...@@ -1503,177 +1519,209 @@
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "4D7EB540-8C9F-41AC-B211-2635A442C72A" uuid = "514B504A-1EA2-4DB0-95EE-C4AEE7A070C9"
shouldBeEnabled = "Yes" shouldBeEnabled = "No"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/StringArrayTransformer.swift" filePath = "Em-call/VC/ElectricTableViewController.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "75"
endingLineNumber = "75"
landmarkName = "viewWillAppear(_:)"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "4F818D61-31D3-4A1A-8A1B-F3F45DF5F05B"
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/VC/LocsmithVCViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "49" startingLineNumber = "49"
endingLineNumber = "49" endingLineNumber = "49"
landmarkName = "reverseTransformedValue(_:)" landmarkName = "viewDidLoad()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "5FB81EAE-30B8-496E-940B-6E8832C0E30B" uuid = "3AE0DF98-CCDE-4F92-92B4-E79F7150BC74"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "45" startingLineNumber = "368"
endingLineNumber = "45" endingLineNumber = "368"
landmarkName = "reverseTransformedValue(_:)" landmarkName = "save(imageData:name:flagWorker:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "74C283BF-0185-4B2D-8A9E-6D5E67EF0AF3" uuid = "7EEE968A-E131-4973-956C-322036A830E8"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "38" startingLineNumber = "181"
endingLineNumber = "38" endingLineNumber = "181"
landmarkName = "transformedValue(_:)" landmarkName = "getManObj_1()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "DAC2CFC7-651F-4758-9B45-C33E9EA90587" uuid = "0BA4F5FE-5D74-482F-8FFF-7023D8490639"
shouldBeEnabled = "No" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "50" startingLineNumber = "188"
endingLineNumber = "50" endingLineNumber = "188"
landmarkName = "reverseTransformedValue(_:)" landmarkName = "getManObj_1()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "E55F50E6-DE03-4827-852D-497B67E470DA" uuid = "96918EBB-B89D-4CD9-867A-507419E9A3E9"
shouldBeEnabled = "No" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "107" startingLineNumber = "195"
endingLineNumber = "107" endingLineNumber = "195"
landmarkName = "init()" landmarkName = "getManObj_1()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "C1AE31F3-F508-4120-99BF-D680535793FF" uuid = "63C64B76-8576-409E-9969-E6E1488C148D"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "382" startingLineNumber = "202"
endingLineNumber = "382" endingLineNumber = "202"
landmarkName = "save(imageData:name:flagWorker:)" landmarkName = "getManObj_1()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "326F4A9D-456F-47DC-AF51-C456D51553A3" uuid = "EFB167A2-0456-4453-A5B0-16A2C9FBF485"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/NSArrayValueTransformer.swift" filePath = "Em-call/Data/DataStorage.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "40" startingLineNumber = "209"
endingLineNumber = "40" endingLineNumber = "209"
landmarkName = "transformedValue(_:)" landmarkName = "getManObj_1()"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "7DF2C499-470F-431F-B80D-09CD1E60137E" uuid = "FBE2DAED-EBEC-4025-8B60-8D967B7EE596"
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Em-call/VC/HandmanViewController.swift"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "69"
endingLineNumber = "69"
landmarkName = "viewWillAppear(_:)"
landmarkType = "7">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
uuid = "3D170203-5BDF-42F3-AA9C-074A03F0C1EB"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/StringArrayTransformer.swift" filePath = "Em-call/VC/CallProfiViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "44" startingLineNumber = "78"
endingLineNumber = "44" endingLineNumber = "78"
landmarkName = "transformedValue(_:)" landmarkName = "pressShowMap(_:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "42B68E32-9215-4440-9D93-2A2AEBEBE648" uuid = "372BC2F0-00FD-45CF-BFE7-437D0F849402"
shouldBeEnabled = "No" shouldBeEnabled = "No"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/SOTabBarItem.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "166" startingLineNumber = "34"
endingLineNumber = "166" endingLineNumber = "34"
landmarkName = "loadNSData()" landmarkName = "init(tabBarItem:)"
landmarkType = "7"> landmarkType = "7">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "1458EE72-2DE3-4E03-9FD3-6FC9592103B0" uuid = "3A0577B8-8EE0-407F-8710-63B7D10AF9EC"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/VC/MainVCViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "224" startingLineNumber = "51"
endingLineNumber = "224" endingLineNumber = "51"
landmarkName = "loadNSData()" landmarkName = "unknown"
landmarkType = "7"> landmarkType = "0">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
<BreakpointProxy <BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent <BreakpointContent
uuid = "4890E072-8FF5-44C9-8E97-DF17B57B5BEB" uuid = "CD1F00FB-B90E-4293-8F58-1988AF945C6E"
shouldBeEnabled = "Yes" shouldBeEnabled = "Yes"
ignoreCount = "0" ignoreCount = "0"
continueAfterRunningActions = "No" continueAfterRunningActions = "No"
filePath = "Em-call/Data/DataStorage.swift" filePath = "Em-call/VC/MainVCViewController.swift"
startingColumnNumber = "9223372036854775807" startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807"
startingLineNumber = "374" startingLineNumber = "69"
endingLineNumber = "374" endingLineNumber = "69"
landmarkName = "save(imageData:name:flagWorker:)" landmarkName = "unknown"
landmarkType = "7"> landmarkType = "0">
</BreakpointContent> </BreakpointContent>
</BreakpointProxy> </BreakpointProxy>
</Breakpoints> </Breakpoints>
......
...@@ -52,12 +52,24 @@ class AppDelegate: UIResponder, UIApplicationDelegate { ...@@ -52,12 +52,24 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
// } else { // } else {
// storyboard = UIStoryboard(name: "MainOld", bundle: nil) // storyboard = UIStoryboard(name: "MainOld", bundle: nil)
// } // }
let mainViewController = storyboard.instantiateInitialViewController() // if let tabBarController = self.window!.rootViewController as? UITabBarController {
window?.rootViewController = mainViewController // tabBarController.selectedIndex = 1
// }
let mainViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "MainVC") as! MainVCViewController
// mainViewController.selectedIndex = 1
self.window?.rootViewController = mainViewController
window?.makeKeyAndVisible() self.window?.makeKeyAndVisible()
/* if #available(iOS 12.0, *) {
NSArrayValueTransformer.register() NSArrayValueTransformer.register()
} else {
// Fallback on earlier versions
}
if #available(iOS 12.0, *) {
StringArrayTransformer.register() StringArrayTransformer.register()
} else {
// Fallback on earlier versions
}*/
return true return true
} }
......
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "black_arrow-left.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
This diff is collapsed.
...@@ -38,6 +38,12 @@ struct Handyman { ...@@ -38,6 +38,12 @@ struct Handyman {
var contactPhone:String = String() var contactPhone:String = String()
var card:String = String() var card:String = String()
} }
struct Locksmith {
var workLocation:String = String()
var dateAndTime:NSDate = NSDate()
var contactPhone:String = String()
var card:String = String()
}
struct Place { struct Place {
var placeHome:String = String() var placeHome:String = String()
var placeHomeElectric:String = String() var placeHomeElectric:String = String()
...@@ -54,24 +60,29 @@ struct ListWorkType { ...@@ -54,24 +60,29 @@ struct ListWorkType {
var listWorkTypeElectric:[String] = Array() var listWorkTypeElectric:[String] = Array()
var listWorkTypePlumber:[String] = Array() var listWorkTypePlumber:[String] = Array()
var listWorkTypeHandyman:[String] = Array() var listWorkTypeHandyman:[String] = Array()
var listWorkTypeLocksmith:[String] = Array()
} }
struct ListImageGalery { struct ListImageGalery {
var listNameElectricImageGalery:[Int:String] = Dictionary() var listNameElectricImageGalery:[Int:String] = Dictionary()
var listNamePlumberImageGalery:[Int:String] = Dictionary() var listNamePlumberImageGalery:[Int:String] = Dictionary()
var listNameHandymanImageGalery:[Int:String] = Dictionary() var listNameHandymanImageGalery:[Int:String] = Dictionary()
var listNameLocksmithImageGalery:[Int:String] = Dictionary()
var listElectricImageGalery:[Int:UIImage] = Dictionary() var listElectricImageGalery:[Int:UIImage] = Dictionary()
var listPlumberImageGalery:[Int:UIImage] = Dictionary() var listPlumberImageGalery:[Int:UIImage] = Dictionary()
var listHandymanImageGalery:[Int:UIImage] = Dictionary() var listHandymanImageGalery:[Int:UIImage] = Dictionary()
var listLocksmithImageGalery:[Int:UIImage] = Dictionary()
} }
class DataStorage: NSObject { class DataStorage: NSObject {
var Electrician_1: [NSManagedObject] = [] var Electrician_1: [NSManagedObject] = []
var Plumber_1: [NSManagedObject] = []
var Handyman_1: [NSManagedObject] = []
var Locksmith_1: [NSManagedObject] = []
var appDelegate = UIApplication.shared.delegate as? AppDelegate var appDelegate = UIApplication.shared.delegate as? AppDelegate
var firstRun = false var firstRun = false
var listMessageChat:[(String?,String?)] = Array() var listMessageChat:[(String?,String?)] = Array()
var listImageGalery = ListImageGalery() var listImageGalery = ListImageGalery()
// var namePlaceMap:String = String() var dictWorkers:[Int:[ NSManagedObject] ]? = nil
var listWorkType = ListWorkType() var listWorkType = ListWorkType()
var handyman:Handyman = Handyman() var handyman:Handyman = Handyman()
var plumber:Plumber = Plumber() var plumber:Plumber = Plumber()
...@@ -90,23 +101,13 @@ class DataStorage: NSObject { ...@@ -90,23 +101,13 @@ class DataStorage: NSObject {
override init() { override init() {
super.init() super.init()
/* // dictWorkers.super.init()
//let managedContext = appDelegate?.persistentContainer.viewContext /* for n in 0...3 { switch n { case 0:
let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "imageProperty") dictWorkers.updateValue(Electrician_1 , forKey: n) default:
break } }*/
do { // load()
guard let managedContext = appDelegate?.persistentContainer.viewContext
else {
return
} }
imageProperty = try managedContext.fetch(fetchRequest) //-------------------------------------------------------------------
} catch let error as NSError {
print("Could not fetch. \(error), \(error.userInfo)")
}
*/
load()
}
func getImageArray(flag:Int)->[UIImage] { func getImageArray(flag:Int)->[UIImage] {
var am:[UIImage] = [UIImage]() var am:[UIImage] = [UIImage]()
switch flag { switch flag {
...@@ -114,12 +115,24 @@ class DataStorage: NSObject { ...@@ -114,12 +115,24 @@ class DataStorage: NSObject {
for item in listImageGalery.listElectricImageGalery { for item in listImageGalery.listElectricImageGalery {
am.append(item.value) am.append(item.value)
} }
case 1: //Plumber
for item in listImageGalery.listPlumberImageGalery {
am.append(item.value)
}
case 2: //Handyman
for item in listImageGalery.listHandymanImageGalery {
am.append(item.value)
}
case 3: //Locksmith
for item in listImageGalery.listLocksmithImageGalery {
am.append(item.value)
}
default: default:
return am return am
} }
return am return am
} }
//-------------------------------------------------------------------
func checkFirstRun() { func checkFirstRun() {
firstRun = readBool(vbool:"firstRun") firstRun = readBool(vbool:"firstRun")
if firstRun == false { if firstRun == false {
...@@ -141,334 +154,245 @@ class DataStorage: NSObject { ...@@ -141,334 +154,245 @@ class DataStorage: NSObject {
{ {
imgNSData.removeAll() imgNSData.removeAll()
imgNSName.removeAll() imgNSName.removeAll()
// var strNSData:Data = Data()
// var imageNSData:Data = Data()
//strNSData.removeAll()
// arrayImgNSData.removeAll() // var dataStrArray = [Data]()
dataStrArray.removeAll() dataStrArray.removeAll()
for data in Electrician_1 as! [NSManagedObject] {
imageNSData = data.value(forKey: "imgData") as! Data
} for data in Electrician_1 as [NSManagedObject] {
//arrayImgNSData - одна большая Data imgNSName = data.value(forKey: "imgName") as! [Data]
for data in Electrician_1 as! [NSManagedObject] {
strNSData=data.value(forKey: "imgName") as! Data
} }
//fetch image using decoding //fetch image using decoding
// imgNSData = arrayImgNSData for data in imgNSData {
// var dataArray = [Data]() do {
//let imgDataArray = (try NSKeyedUnarchiver.unarchivedObject(ofClass: NSArray.self, from: imageNSData))! guard let img = try NSKeyedUnarchiver.unarchivedObject(ofClass: UIImage.self, from: data) else {
// for imageData in imageNSData { return }
/* do { imgData.append(img as UIImage)
imgNSData = try NSKeyedUnarchiver.unarchivedObject(ofClass: NSArray.self, from: imageNSData) as! [Data]
// dataArray.append(contentsOf: dataArray)
} catch {
print("could not unarchive array: \(error)")
}*/
//// var Object:NSData = imageNSData
/* do {
Object = try NSKeyedUnarchiver.unarchivedObject(ofClass: NSData.self, from: imageNSData)!
} catch { } catch {
print("could not unarchive array: \(error)") print("could not unarchive array")
}*/
// guard let object = Object else { return }
if let dataArray = try? NSKeyedUnarchiver.unarchivedObject(ofClass: NSArray.self, from: imageNSData as Data) {
for data in dataArray {
if let data = data as? Data, let image = UIImage(data: data) {
imgData.append(image)
} }
} }
} }
else {
print("could not unarchive array")
}
/* do {
Object = try NSKeyedUnarchiver.unarchivedObject(ofClass: NSData.self, from: strNSData)!
} catch {
print("could not unarchive array: \(error)")
}*/
//guard let o_bject = Object else { return }
/* if let dataArray = try? NSKeyedUnarchiver.unarchivedObject(ofClass: NSArray.self, from: strNSData as Data) {
for data in dataArray {
if let data = data as? Data, let image = NSString(data: data, encoding: <#UInt#>) {
imgData.append(image)
}
}
}*/
//var dataArray = Data()
/* do {
// let img = (try NSKeyedUnarchiver.unarchivedObject(ofClass: UIImage.self, from: imageData))!
// let data = try NSKeyedUnarchiver.unarchivedObject(ofClass: NSData.self, from: imageData) as! Data
imgNSData.append( imageData ) //dataArray, imgNSData - массив Data
//imgData.append(contentsOf: img)
// imgData.append(img as UIImage)
} catch {
print("could not unarchive array: \(error)") }
}*/
/* arrayImgNSData.forEach { (imageData) in var dataArray = [Data]()
do { dataArray = try NSKeyedUnarchiver.unarchivedObject(ofClass: NSArray.self, from: imageData) as! [Data]
imgNSData.append(contentsOf: dataArray) //dataArray, imgNSData - массив Data
} catch { print("could not unarchive array: \(error)") } } */
// dataStrArray = arrayStrNSData
// for imageName in arrayStrNSData {
/*
do {
// let str = (try NSKeyedUnarchiver.unarchivedObject(ofClass: NSString.self, from: imageName))!
dataStrArray = try NSKeyedUnarchiver.unarchivedObject(ofClass: NSArray.self, from: strNSData) as! [Data]
// let data = try NSKeyedUnarchiver.unarchivedObject(ofClass: NSData.self, from: imageName) as! Data
// imgName.append(str as String)
// dataStrArray.append( imageName) //dataArray, imgNSData - массив Data
} catch {
print("could not unarchive array: \(error)") }
*/
// }
/* arrayStrNSData.forEach { (imageName) in do {
dataStrArray = try NSKeyedUnarchiver.unarchivedObject(ofClass: NSArray.self, from: imageName) as! [Data]
// imgNSData.append(contentsOf: dataArray) //dataArray, imgNSData - массив Data
} catch { print("could not unarchive array: \(error)") } }*/
}
//-------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------
func getElectrician_1() { func getManObj_1() {
appDelegate = UIApplication.shared.delegate as? AppDelegate appDelegate = UIApplication.shared.delegate as? AppDelegate
guard let managedContext = appDelegate?.persistentContainer.viewContext guard let managedContext = appDelegate?.persistentContainer.viewContext
else { else {
print("Could not managedContext.")
return return
} // let managedContext = appDelegate.persistentContainer.viewContext } // let managedContext = appDelegate.persistentContainer.viewContext
let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Electrician_1") var fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Electrician_1")
do { do {
Electrician_1 = try managedContext.fetch(fetchRequest) Electrician_1 = try managedContext.fetch(fetchRequest)
} catch let error as NSError { } catch let error as NSError {
print("Could not fetch. \(error), \(error.userInfo)") print("Could not fetch. \(error), \(error.userInfo)")
return // return
}
fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Plumber_1")
do {
Plumber_1 = try managedContext.fetch(fetchRequest)
} catch let error as NSError {
print("Could not fetch. \(error), \(error.userInfo)")
/// return
}
fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Handyman_1")
do {
Handyman_1 = try managedContext.fetch(fetchRequest)
} catch let error as NSError {
print("Could not fetch. \(error), \(error.userInfo)")
/// return
}
fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Locksmith_1")
do {
Locksmith_1 = try managedContext.fetch(fetchRequest)
} catch let error as NSError {
print("Could not fetch. \(error), \(error.userInfo)")
/// return
} }
} }
//-------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------
func load()->Int { func loadAll()->Int {
getElectrician_1() getManObj_1()
// var imgName:[String] = NSArray() as! [String]
let count = Electrician_1.count
if count == 0 {
return 0
}
// var index = 0
var imgName:[String] = NSArray() as! [String]
var imgData:[UIImage] = NSArray() as! [UIImage]
imgNSData.removeAll()
imgNSName.removeAll()
// arrayStrNSData.removeAll() // let count = Electrician_1.count
// arrayImgNSData.removeAll() // var dataStrArray = [Data]() // if count == 0 { return 0 } //
dataStrArray.removeAll() var index = 0
if appDelegate?.sim == 1 { // imgName.removeAll() imgData.removeAll()
// var i = 0 // for data in Electrician_1 { // var Electrician_1: [NSManagedObject] = [] //var managedObject: [NSManagedObject] = []
/* let stringes = data.value(forKey: "imgName") // imgName = strArrayTransformer.reverseTransformedValue(stringes) as! [String] for n in 0...3 {
arrayStrNSData = strArrayTransformer.reverseTransformedValue(stringes) as! NSArray as? [NSData] index = 0
let images = data.value(forKey: "imgData") switch n {
// imgData = NSArrayTransformer.reverseTransformedValue(images) as! [UIImage] case 0: // managedObject = Electrician_1
arrayImgNSData = NSArrayTransformer.reverseTransformedValue(images) as! NSArray as? [NSData]*/ //массив NSData for electric in Electrician_1 {
/* i=0 for element in stringes { imgName.append(element) let name = electric.value(forKey: "imgName")
listImageGalery.listNameElectricImageGalery.updateValue(element , forKey: i) let img = electric.value(forKey: "imgData")
i = i+1 } i=0 for element in images { imgData.append(element) let ui_image = UIImage(data: img as! Data)!
listImageGalery.listElectricImageGalery.updateValue(element , forKey: i) i = i+1 // imgName.append(name as! String) imgData.append(ui_image)
}*/ // index = index + 1 listImageGalery.listNameElectricImageGalery.updateValue(name as! String , forKey: index)
loadNSData() listImageGalery.listElectricImageGalery.updateValue(ui_image , forKey: index)
} index = index + 1
for strData in dataStrArray { }
let str = self.reverseTransformedValueStr( strData) continue
if str != nil { case 1: // managedObject = Plumber_1
imgName.append(str as! String) for electric in Plumber_1 {
} let name = electric.value(forKey: "imgName")
} let img = electric.value(forKey: "imgData")
var i = 0 let ui_image = UIImage(data: img as! Data)!
for str in imgName { // imgName.append(name as! String) imgData.append(ui_image)
listImageGalery.listNameElectricImageGalery.updateValue(str, forKey: i) listImageGalery.listNamePlumberImageGalery.updateValue(name as! String , forKey: index)
i=i+1 listImageGalery.listPlumberImageGalery.updateValue(ui_image , forKey: index)
} index = index + 1
for imageData in imgNSData { }
let image = reverseTransformedValue( imageData) continue
if image != nil { case 2: // managedObject = Handyman_1
imgData.append(image as! UIImage) for electric in Handyman_1 {
} let name = electric.value(forKey: "imgName")
} let img = electric.value(forKey: "imgData")
i=0 let ui_image = UIImage(data: img as! Data)!
for img in imgData { // imgName.append(name as! String) imgData.append(ui_image)
listImageGalery.listElectricImageGalery.updateValue(img, forKey: i) listImageGalery.listNameHandymanImageGalery.updateValue(name as! String , forKey: index)
i=i+1 listImageGalery.listHandymanImageGalery.updateValue(ui_image , forKey: index)
} index = index + 1
/* var coreDataArray = NSArray() }
for image in imgData { continue
let provider:CGDataProvider = image.cgImage!.dataProvider!; case 3: // managedObject = Locksmith_1
let data:NSData = provider.data!; for electric in Locksmith_1 {
// let data: Data = NSData(image) let name = electric.value(forKey: "imgName")
coreDataArray.adding(data) let img = electric.value(forKey: "imgData")
}*/ let ui_image = UIImage(data: img as! Data)!
/* for (key, value) in listImageGalery.listNameElectricImageGalery { // imgName.append(name as! String) imgData.append(ui_image)
// imgName.append(value) listImageGalery.listNameLocksmithImageGalery.updateValue(name as! String , forKey: index)
key = i listImageGalery.listLocksmithImageGalery.updateValue(ui_image , forKey: index)
value = imgName[i] index = index + 1
i = i+1 }
}*/ default:
return count break
} // print(n)
} // if appDelegate?.sim == 1 { }
// loadNSData()
return index
}
//--------------------------------------------------------------------------------------------
func loadWorkerData(flagWorker:Int)->Int {
getManObj_1()
// let count = Electrician_1.count
// if count == 0 {
// return 0 } //
var index = 0
// imgName.removeAll() imgData.removeAll()
// var Electrician_1: [NSManagedObject] = []
//var managedObject: [NSManagedObject] = []
// for n in 0...3 {
index = 0
switch flagWorker {
case 0: // managedObject = Electrician_1
for electric in Electrician_1 {
let name = electric.value(forKey: "imgName")
let img = electric.value(forKey: "imgData")
let ui_image = UIImage(data: img as! Data)!
// imgName.append(name as! String) imgData.append(ui_image)
listImageGalery.listNameElectricImageGalery.updateValue(name as! String , forKey: index)
listImageGalery.listElectricImageGalery.updateValue(ui_image , forKey: index)
index = index + 1
} // continue
case 1: // managedObject = Plumber_1
for electric in Plumber_1 {
let name = electric.value(forKey: "imgName")
let img = electric.value(forKey: "imgData")
let ui_image = UIImage(data: img as! Data)!
// imgName.append(name as! String) imgData.append(ui_image)
listImageGalery.listNamePlumberImageGalery.updateValue(name as! String , forKey: index)
listImageGalery.listPlumberImageGalery.updateValue(ui_image , forKey: index)
index = index + 1
} // continue
case 2: // managedObject = Handyman_1
for electric in Handyman_1 {
let name = electric.value(forKey: "imgName")
let img = electric.value(forKey: "imgData")
let ui_image = UIImage(data: img as! Data)!
// imgName.append(name as! String) imgData.append(ui_image)
listImageGalery.listNameHandymanImageGalery.updateValue(name as! String , forKey: index)
listImageGalery.listHandymanImageGalery.updateValue(ui_image , forKey: index)
index = index + 1
} // continue
case 3: // managedObject = Locksmith_1
for electric in Locksmith_1 {
let name = electric.value(forKey: "imgName")
let img = electric.value(forKey: "imgData")
let ui_image = UIImage(data: img as! Data)!
// imgName.append(name as! String) imgData.append(ui_image)
listImageGalery.listNameLocksmithImageGalery.updateValue(name as! String , forKey: index)
listImageGalery.listLocksmithImageGalery.updateValue(ui_image , forKey: index)
index = index + 1
}
default:
break // } // print(n)
} // if appDelegate?.sim == 1 { }
// loadNSData()
return index
} }
//------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------
func save(imageData:UIImage,name: String,flagWorker:Int) { func save(imageData:UIImage,name: String,flagWorker:Int) {
/*
Трансформируемые атрибуты являются неизменяемым типом, поэтому их нельзя изменить. var nameWorker:String
Единственный способ изменить их — создать новый объект и снова сохранить его в основных данных.
*/
appDelegate = UIApplication.shared.delegate as? AppDelegate appDelegate = UIApplication.shared.delegate as? AppDelegate
guard let managedContext = appDelegate?.persistentContainer.viewContext guard let managedContext = appDelegate?.persistentContainer.viewContext
else { else {
print("Could not make managedContext.") print("Could not make managedContext.")
return return
} // let set = company.mutableSetValue(forKey: "employee") }
// open class func insertNewObject(forEntityName entityName: String, into context: NSManagedObjectContext) -> NSManagedObject switch flagWorker {
//let electric = NSEntityDescription.insertNewObject(forEntityName: "Electrician_1", into: managedContext) case 0: nameWorker = String("Electrician_1")
var fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Electrician_1") case 1: nameWorker = String("Plumber_1")
case 2: nameWorker = String("Handyman_1")
case 3: nameWorker = String("Locksmith_1")
default: nameWorker = String("Electrician_1")
}
let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: nameWorker)
do { do {
switch flagWorker {
case 0:
Electrician_1 = try managedContext.fetch(fetchRequest) Electrician_1 = try managedContext.fetch(fetchRequest)
case 1:
Plumber_1 = try managedContext.fetch(fetchRequest)
case 2:
Handyman_1 = try managedContext.fetch(fetchRequest)
case 3:
Locksmith_1 = try managedContext.fetch(fetchRequest)
default: break
}
} catch let error as NSError { } catch let error as NSError {
print("Could not fetch. \(error), \(error.userInfo)") print("Could not fetch. \(error), \(error.userInfo)")
return return
} }
// var imgName:[String] = NSArray() as! [String]
// var imgData:[UIImage] = NSArray() as! [UIImage]
/* let strArrayTransformer = StringArrayTransformer()
let NSArrayTransformer = NSArrayValueTransformer()*/
let count = Electrician_1.count var count = 0
if count == 0 {
// let electric/*:NSManagedObject*/ = NSEntityDescription.insertNewObject(forEntityName: "Electrician_1", into: managedContext) let electric/*:NSManagedObject*/ = NSEntityDescription.insertNewObject(forEntityName: nameWorker, into: managedContext)
//// let cmsg = NSManagedObject(entity: fetchRequest, insertInto: managedContext) as! Electrician_1 switch flagWorker {
//// let mRanges = Ranges(ranges: rangeArrays) case 0:
//// cmsg.setValue(mRanges, forKeyPath: "range")
let electric/*:NSManagedObject*/ = NSEntityDescription.insertNewObject(forEntityName: "Electrician_1", into: managedContext)
Electrician_1.append(electric) //= NSEntityDescription.insertNewObject(forEntityName: "Electrician_1", into: managedContext) Electrician_1.append(electric) //= NSEntityDescription.insertNewObject(forEntityName: "Electrician_1", into: managedContext)
count = Electrician_1.count
case 1:
Plumber_1.append(electric)
count = Plumber_1.count
case 2:
Handyman_1.append(electric)
count = Handyman_1.count
case 3:
Locksmith_1.append(electric)
count = Locksmith_1.count
default:
Electrician_1.append(electric)
count = 0
}
imgName.append(name) imgName.append(name)
imgData.append(imageData) imgData.append(imageData)
// массив, который будет храниться в Core Data electric.setValue(name, forKey: "imgName")
var coreDataArray = [NSData]() electric.setValue(imageData.jpegData(compressionQuality: 50.0), forKey: "imgData")
for image in imgData {
let provider:CGDataProvider = image.cgImage!.dataProvider!;
let data:NSData = provider.data!;
// let data: Data = NSData(image)
coreDataArray.append(data)
}
var strCoreDataArray = [NSData]()
for str in imgName {
let data: NSData = str.data(using: .utf8)! as NSData
strCoreDataArray.append(data)
}
//to store array of images using encoding
var images: Data?
do {
images = try NSKeyedArchiver.archivedData(withRootObject: coreDataArray, requiringSecureCoding: true)
} catch {
print("error")
}
// Electrician_1[0].setValue(images, forKeyPath: "imgData")
Electrician_1[0].setValue(imgData, forKeyPath: "imgData")
//Electrician_1[0].setValue(coreDataArray, forKeyPath: "imgData")
var stringes: Data?
do {
stringes = try NSKeyedArchiver.archivedData(withRootObject: strCoreDataArray, requiringSecureCoding: true)
} catch {
print("error")
}
Electrician_1[0].setValue(stringes, forKeyPath: "imgName")
// Electrician_1[0].setValue(strCoreDataArray, forKeyPath: "imgName")
/* // let dataImgName = strArrayTransformer.transformedValue(imgName)
let dataImgName = strArrayTransformer.transformedValue(strCoreDataArray)
let dataImgData = NSArrayTransformer.transformedValue(coreDataArray)
Electrician_1[0].setValue(dataImgName, forKey: "imgName")
// Electrician_1[0].setValue(strCoreDataArray, forKey: "imgName")
Electrician_1[0].setValue(dataImgData, forKey: "imgData")
// Electrician_1[0].setValue(coreDataArray, forKey: "imgData")*/
do {
try managedContext.save()
} catch let error as NSError {
print("Could not save. \(error), \(error.userInfo)")
}
return
}
// var index = 0 /// var arrayStrNSData:[Data] = [Data]() // var arrayImgNSData:[Data] = [Data]()
if appDelegate?.sim == 1
{
loadNSData()
}
for strData in dataStrArray {
let str = self.reverseTransformedValueStr( strData)
if str != nil {
imgName.append(str as! String)
}
}
// imgName.append(name)
var strCoreDataArray = [NSData]()
for str in imgName {
let data: NSData = str.data(using: .utf8)! as NSData
strCoreDataArray.append(data)
}
// массив, который будет храниться в Core Data
// var coreDataArray = NSArray()
for imageData in imgNSData {
let image = reverseTransformedValue( imageData)
if image != nil {
imgData.append(image as! UIImage)
}
}
var coreDataArray = [NSData]()
for image in imgData {
let provider:CGDataProvider = image.cgImage!.dataProvider!;
let data:NSData = provider.data!;
// let data: Data = NSData(image)
coreDataArray.append(data)
}
// imgData.append(imageData)
//let electric = NSEntityDescription.entity(forEntityName: "Electrician_1", in: managedContext)!
// var nameArray:[String] = NSArray() as! [String]
// var imgArray:[UIImage] = NSArray() as! [UIImage]
// let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Electrician_1")
/* fetchRequest //:NSFetchRequest<NSFetchRequestResult>*
= NSFetchRequest.init(entityName: "Electrician_1")
do {
let test = try managedContext.fetch(fetchRequest)
if test.count == 0 {
return
}
let objectUpdate = test[0]
let stringes = strArrayTransformer.transformedValue(strCoreDataArray)
let images = NSArrayTransformer.transformedValue(coreDataArray)
objectUpdate.setValue(stringes, forKey: "imgName")
// objectUpdate.setValue(strCoreDataArray, forKey: "imgName")
objectUpdate.setValue(images, forKey: "imgData")
// objectUpdate.setValue(coreDataArray, forKey: "imgData")
*/
//to store array of images using encoding
var images: Data?
do {
images = try NSKeyedArchiver.archivedData(withRootObject: coreDataArray, requiringSecureCoding: true)
} catch {
print("error")
}
Electrician_1[0].setValue(images, forKeyPath: "imgData")
//Electrician_1[0].setValue(coreDataArray, forKeyPath: "imgData")
var stringes: Data?
do {
stringes = try NSKeyedArchiver.archivedData(withRootObject: strCoreDataArray, requiringSecureCoding: true)
} catch {
print("error")
}
Electrician_1[0].setValue(stringes, forKeyPath: "imgName")
//Electrician_1[0].setValue(strCoreDataArray, forKeyPath: "imgName")
// }
// catch let error as NSError {
// print("Could not save managedContext. \(error), \(error.userInfo)")
// }
do { do {
try managedContext.save() try managedContext.save()
} catch let error as NSError { } catch let error as NSError {
...@@ -476,6 +400,11 @@ class DataStorage: NSObject { ...@@ -476,6 +400,11 @@ class DataStorage: NSObject {
} }
} }
//------------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------------
//no use
/*
Трансформируемые атрибуты являются неизменяемым типом, поэтому их нельзя изменить.
Единственный способ изменить их — создать новый объект и снова сохранить его в основных данных.
*/
public func reverseTransformedValue(_ value: Any?) -> Any? { public func reverseTransformedValue(_ value: Any?) -> Any? {
guard let data = value as? NSData else { return nil } guard let data = value as? NSData else { return nil }
do { do {
...@@ -487,6 +416,7 @@ class DataStorage: NSObject { ...@@ -487,6 +416,7 @@ class DataStorage: NSObject {
} }
} }
//------------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------------
//no use
public func reverseTransformedValueStr(_ value: Any?) -> Any? { public func reverseTransformedValueStr(_ value: Any?) -> Any? {
guard let data = value as? NSData else { return nil } guard let data = value as? NSData else { return nil }
// do { // do {
...@@ -515,37 +445,34 @@ class DataStorage: NSObject { ...@@ -515,37 +445,34 @@ class DataStorage: NSObject {
////UserDefaults().set(imgNSData,forKey: "listNameElectricImageGalery_" + String(ind)) ////UserDefaults().set(imgNSData,forKey: "listNameElectricImageGalery_" + String(ind))
//UserDefaults().set(listImageGalery.listNameElectricImageGalery, forKey: "listNameElectricImageGalery" ) //UserDefaults().set(listImageGalery.listNameElectricImageGalery, forKey: "listNameElectricImageGalery" )
listImageGalery.listNameElectricImageGalery.updateValue(imageName, forKey: listImageGalery.listNameElectricImageGalery.count) listImageGalery.listNameElectricImageGalery.updateValue(imageName, forKey: listImageGalery.listNameElectricImageGalery.count)
save(imageData: image, name: imageName, flagWorker: 0) // save(imageData: image, name: imageName, flagWorker: 0)
// var dictNSData:[Int:Data] = Dictionary() // var dictNSData:[Int:Data] = Dictionary()
/* if appDelegate?.sim == 1 { /* if appDelegate?.sim == 1 { var ind = 0
var ind = 0
for _ in listImageGalery.listElectricImageGalery { for _ in listImageGalery.listElectricImageGalery {
let image = listImageGalery.listElectricImageGalery[ind] let image = listImageGalery.listElectricImageGalery[ind]
do { do { let imgNSData = NSKeyedArchiver.archivedData(withRootObject :image)
let imgNSData = NSKeyedArchiver.archivedData(withRootObject :image) dictNSData.updateValue(imgNSData,forKey:ind) } catch { print("NSKeyedArchiver") }
dictNSData.updateValue(imgNSData,forKey:ind) ind = ind + 1 } UserDefaults().set(dictNSData,forKey: "listElectricImageGalery")
} */
} catch {
print("NSKeyedArchiver")
}
ind = ind + 1
}
UserDefaults().set(dictNSData,forKey: "listElectricImageGalery")
}
*/
case 1: case 1:
listImageGalery.listPlumberImageGalery.updateValue(image, forKey: listImageGalery.listPlumberImageGalery.count) listImageGalery.listPlumberImageGalery.updateValue(image, forKey: listImageGalery.listPlumberImageGalery.count)
listImageGalery.listNamePlumberImageGalery.updateValue(imageName, forKey: listImageGalery.listNamePlumberImageGalery.count) listImageGalery.listNamePlumberImageGalery.updateValue(imageName, forKey: listImageGalery.listNamePlumberImageGalery.count)
UserDefaults().set(listImageGalery.listNamePlumberImageGalery,forKey: "listNamePlumberImageGalery") // UserDefaults().set(listImageGalery.listNamePlumberImageGalery,forKey: "listNamePlumberImageGalery")
//save(imageData: image, name: imageName, flagWorker: 1)
case 2: case 2:
listImageGalery.listHandymanImageGalery.updateValue(image, forKey: listImageGalery.listHandymanImageGalery.count) listImageGalery.listHandymanImageGalery.updateValue(image, forKey: listImageGalery.listHandymanImageGalery.count)
listImageGalery.listNameHandymanImageGalery.updateValue(imageName, forKey: listImageGalery.listNameHandymanImageGalery.count) listImageGalery.listNameHandymanImageGalery.updateValue(imageName, forKey: listImageGalery.listNameHandymanImageGalery.count)
UserDefaults().set(listImageGalery.listNameHandymanImageGalery,forKey: "listNameHandymanImageGalery") // UserDefaults().set(listImageGalery.listNameHandymanImageGalery,forKey: "listNameHandymanImageGalery")
case 3:
listImageGalery.listLocksmithImageGalery.updateValue(image, forKey: listImageGalery.listHandymanImageGalery.count)
listImageGalery.listNameLocksmithImageGalery.updateValue(imageName, forKey: listImageGalery.listNameHandymanImageGalery.count)
// UserDefaults().set(listImageGalery.listNameHandymanImageGalery,forKey: "listNameLocksmithImageGalery")
default: default:
return return
} }
if appDelegate?.sim == 1 { if appDelegate?.sim == 1 {
// self.save(imageData:image,name: imageName,flagWorker:flagTypeGalery) // self.save(imageData:image,name: imageName,flagWorker:flagTypeGalery)
save(imageData: image, name: imageName, flagWorker: flagTypeGalery)
} }
} }
......
...@@ -7,8 +7,10 @@ ...@@ -7,8 +7,10 @@
import UIKit import UIKit
@available(iOS 12.0, *)
@objc(NSArrayValueTransformer) @objc(NSArrayValueTransformer)
class NSArrayValueTransformer: ValueTransformer, NSCoding { class NSArrayValueTransformer: //ValueTransformer,
NSSecureUnarchiveFromDataTransformer {
// let coder:NSCoder // let coder:NSCoder
func encode(with coder: NSCoder) { func encode(with coder: NSCoder) {
} }
...@@ -42,6 +44,7 @@ class NSArrayValueTransformer: ValueTransformer, NSCoding { ...@@ -42,6 +44,7 @@ class NSArrayValueTransformer: ValueTransformer, NSCoding {
override public func reverseTransformedValue(_ value: Any?) -> Any? { override public func reverseTransformedValue(_ value: Any?) -> Any? {
guard let data = value as? NSData else { guard let data = value as? NSData else {
// guard let data = value as? [NSData] else {
return nil } return nil }
let result = try? NSKeyedUnarchiver.unarchivedObject( ofClass: NSArray.self, from: data as Data) let result = try? NSKeyedUnarchiver.unarchivedObject( ofClass: NSArray.self, from: data as Data)
// let result = try? NSKeyedUnarchiver.unarchivedObject( ofClass: NSData.self, from: data as Data) // let result = try? NSKeyedUnarchiver.unarchivedObject( ofClass: NSData.self, from: data as Data)
...@@ -55,6 +58,7 @@ class NSArrayValueTransformer: ValueTransformer, NSCoding { ...@@ -55,6 +58,7 @@ class NSArrayValueTransformer: ValueTransformer, NSCoding {
} }
@available(iOS 12.0, *)
extension NSArrayValueTransformer { extension NSArrayValueTransformer {
/// The name of the transformer. This is the name used to register the transformer using `ValueTransformer.setValueTrandformer(_"forName:)`. /// The name of the transformer. This is the name used to register the transformer using `ValueTransformer.setValueTrandformer(_"forName:)`.
static let name = NSValueTransformerName(rawValue: String(describing: NSArrayValueTransformer.self.classForCoder())) static let name = NSValueTransformerName(rawValue: String(describing: NSArrayValueTransformer.self.classForCoder()))
......
...@@ -45,7 +45,7 @@ class SettingsLauncher : UIViewController, UITableViewDelegate, UITableViewDataS ...@@ -45,7 +45,7 @@ class SettingsLauncher : UIViewController, UITableViewDelegate, UITableViewDataS
let frazes:[String] = [ let frazes:[String] = [
"","Login/Signup","Get Support","Settings","Terms&Conditions","About Fixid", "","Login/Signup","Get Support","Settings","Terms&Conditions","About Fixid",
"Select source", "Camera", "Photogalery","Cancel", "Select source", "Take Photo...", "Choose from Library...","Cancel",
"Electrician Emergency Departure", "Electrician Emergency Departure",
"Entering electricity into the house", "Entering electricity into the house",
"Dismantling the electric heated towel rail", "Dismantling the electric heated towel rail",
...@@ -79,7 +79,7 @@ class SettingsLauncher : UIViewController, UITableViewDelegate, UITableViewDataS ...@@ -79,7 +79,7 @@ class SettingsLauncher : UIViewController, UITableViewDelegate, UITableViewDataS
tableView.tableFooterView = UIView() tableView.tableFooterView = UIView()
tableView.tableHeaderView = UIView() tableView.tableHeaderView = UIView()
tableView.separatorStyle = .none // tableView.separatorStyle = .none
navController = navigVC navController = navigVC
self.dispatcher = dispatcher self.dispatcher = dispatcher
...@@ -152,6 +152,7 @@ class SettingsLauncher : UIViewController, UITableViewDelegate, UITableViewDataS ...@@ -152,6 +152,7 @@ class SettingsLauncher : UIViewController, UITableViewDelegate, UITableViewDataS
UIView.animate(withDuration: 0.5, delay: 0, usingSpringWithDamping: 1, initialSpringVelocity: 1, options: .curveEaseOut, animations: { UIView.animate(withDuration: 0.5, delay: 0, usingSpringWithDamping: 1, initialSpringVelocity: 1, options: .curveEaseOut, animations: {
self.blackView.alpha = 1 self.blackView.alpha = 1
self.tableView.frame = CGRect(x:10, y: yw, width: self.tableView.frame.width-10, height: self.tableView.frame.height) self.tableView.frame = CGRect(x:10, y: yw, width: self.tableView.frame.width-10, height: self.tableView.frame.height)
// self.tableView.frame = CGRect(x:10, y: yw, width: self.tableView.frame.width-10, height: window.frame.height-100)
self.tableView.layer.cornerRadius = 10 self.tableView.layer.cornerRadius = 10
}, completion: nil) }, completion: nil)
} }
......
...@@ -8,8 +8,10 @@ ...@@ -8,8 +8,10 @@
import Foundation import Foundation
/// A value transformer which transforms `UIColor` instances into data using `NSSecureCoding`. /// A value transformer which transforms `UIColor` instances into data using `NSSecureCoding`.
@available(iOS 12.0, *)
@objc(StringArrayTransformer) @objc(StringArrayTransformer)
public final class StringArrayTransformer: ValueTransformer, NSCoding { public final class StringArrayTransformer: //ValueTransformer,
NSSecureUnarchiveFromDataTransformer {
// let coder:NSCoder // let coder:NSCoder
public func encode(with coder: NSCoder) { public func encode(with coder: NSCoder) {
...@@ -61,6 +63,7 @@ public final class StringArrayTransformer: ValueTransformer, NSCoding { ...@@ -61,6 +63,7 @@ public final class StringArrayTransformer: ValueTransformer, NSCoding {
// public static let name = NSValueTransformerName(rawValue: String(describing: StringArrayTransformer.self)) // public static let name = NSValueTransformerName(rawValue: String(describing: StringArrayTransformer.self))
} }
@available(iOS 12.0, *)
extension StringArrayTransformer { extension StringArrayTransformer {
/// The name of the transformer. This is the name used to register the transformer using `ValueTransformer.setValueTrandformer(_"forName:)`. /// The name of the transformer. This is the name used to register the transformer using `ValueTransformer.setValueTrandformer(_"forName:)`.
public static let name = NSValueTransformerName(rawValue: String(describing: StringArrayTransformer.self.classForCoder())) public static let name = NSValueTransformerName(rawValue: String(describing: StringArrayTransformer.self.classForCoder()))
......
...@@ -68,12 +68,14 @@ public final class GlidingCollection: UIView { ...@@ -68,12 +68,14 @@ public final class GlidingCollection: UIView {
override public init(frame: CGRect) { override public init(frame: CGRect) {
super.init(frame: frame) super.init(frame: frame)
commonInit() commonInit()
self.layer.cornerRadius = 12
} }
/// :nodoc: /// :nodoc:
required public init?(coder aDecoder: NSCoder) { required public init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder) super.init(coder: aDecoder)
commonInit() commonInit()
self.layer.cornerRadius = 12
} }
private func commonInit() { private func commonInit() {
...@@ -138,12 +140,17 @@ fileprivate extension GlidingCollection { ...@@ -138,12 +140,17 @@ fileprivate extension GlidingCollection {
setupVerticalStack() setupVerticalStack()
setupPanGesture() setupPanGesture()
setupGradientOverlays() setupGradientOverlays()
collectionView.layer.cornerRadius = 12
layer.cornerRadius = 12
} }
private func setupContainerView() { private func setupContainerView() {
addSubview(containerView) addSubview(containerView)
containerView.alwaysBounceVertical = true containerView.alwaysBounceVertical = true
containerView.delegate = self containerView.delegate = self
containerView.layer.cornerRadius = 12
} }
private func setupCollectionView() { private func setupCollectionView() {
...@@ -162,6 +169,8 @@ fileprivate extension GlidingCollection { ...@@ -162,6 +169,8 @@ fileprivate extension GlidingCollection {
collectionView.delaysContentTouches = true collectionView.delaysContentTouches = true
collectionView.clipsToBounds = false collectionView.clipsToBounds = false
collectionView.collectionViewLayout.invalidateLayout() collectionView.collectionViewLayout.invalidateLayout()
collectionView.layer.cornerRadius = 12
} }
func setupVerticalStack() { func setupVerticalStack() {
...@@ -362,6 +371,8 @@ extension GlidingCollection { ...@@ -362,6 +371,8 @@ extension GlidingCollection {
parallaxView.transform = .identity parallaxView.transform = .identity
} }
cell.contentView.layer.render(in: context) cell.contentView.layer.render(in: context)
// cell.contentView.layer.cornerRadius = 12 //ashar
} }
newCellSnapshotView.image = UIGraphicsGetImageFromCurrentImageContext() newCellSnapshotView.image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext() UIGraphicsEndImageContext()
...@@ -390,6 +401,7 @@ extension GlidingCollection { ...@@ -390,6 +401,7 @@ extension GlidingCollection {
UIGraphicsBeginImageContextWithOptions(cell.bounds.size, true, 0) UIGraphicsBeginImageContextWithOptions(cell.bounds.size, true, 0)
if let context = UIGraphicsGetCurrentContext() { if let context = UIGraphicsGetCurrentContext() {
cell.layer.cornerRadius = 10 //ashar
cell.layer.render(in: context) cell.layer.render(in: context)
} }
newRightSideSnapshotView.image = UIGraphicsGetImageFromCurrentImageContext() newRightSideSnapshotView.image = UIGraphicsGetImageFromCurrentImageContext()
...@@ -726,6 +738,8 @@ extension GlidingCollection: GlidingLayoutDelegate { ...@@ -726,6 +738,8 @@ extension GlidingCollection: GlidingLayoutDelegate {
func collectionViewDidScroll() { func collectionViewDidScroll() {
for cell in collectionView.visibleCells where cell.alpha == 0 { for cell in collectionView.visibleCells where cell.alpha == 0 {
cell.alpha = 1 cell.alpha = 1
// cell.layer.cornerRadius = 10 //ashar
} }
guard animationInProcess else { return } guard animationInProcess else { return }
removeSnapshots() removeSnapshots()
......
...@@ -3,19 +3,31 @@ ...@@ -3,19 +3,31 @@
<entity name="Electrician_1" representedClassName="Electrician_1" syncable="YES" codeGenerationType="class"> <entity name="Electrician_1" representedClassName="Electrician_1" syncable="YES" codeGenerationType="class">
<attribute name="contacts" optional="YES" attributeType="String"/> <attribute name="contacts" optional="YES" attributeType="String"/>
<attribute name="date" optional="YES" attributeType="Date" usesScalarValueType="NO"/> <attribute name="date" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
<attribute name="imgData" attributeType="Transformable" valueTransformerName="NSArrayValueTransformer" customClassName="NSData"/> <attribute name="imgData" optional="YES" attributeType="Binary" valueTransformerName="NSArrayValueTransformer" customClassName="[NSData]"/>
<attribute name="imgName" attributeType="Transformable" valueTransformerName="StringArrayTransformer" customClassName="NSData"/> <attribute name="imgName" optional="YES" attributeType="String" valueTransformerName="StringArrayTransformer"/>
<attribute name="payment" optional="YES" attributeType="String"/> <attribute name="payment" optional="YES" attributeType="String"/>
<attribute name="workLocation" optional="YES" attributeType="String"/> <attribute name="workLocation" optional="YES" attributeType="String"/>
</entity> </entity>
<entity name="ImageProperty" representedClassName="ImageProperty" syncable="YES" codeGenerationType="class"> <entity name="Handyman_1" representedClassName="Handyman_1" syncable="YES" codeGenerationType="class">
<attribute name="attribute" optional="YES" attributeType="Transformable"/> <attribute name="contacts" optional="YES" attributeType="String"/>
<attribute name="nameImageElectric" optional="YES" attributeType="String"/> <attribute name="date" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
<attribute name="nameImageHandyman" optional="YES" attributeType="String"/> <attribute name="imgData" optional="YES" attributeType="Binary"/>
<attribute name="nameImagePlumber" optional="YES" attributeType="String"/> <attribute name="imgName" optional="YES" attributeType="String"/>
<attribute name="payment" optional="YES" attributeType="String"/>
<attribute name="workLocation" optional="YES" attributeType="String"/>
</entity>
<entity name="Locksmith_1" representedClassName="Locksmith_1" syncable="YES" codeGenerationType="class">
<attribute name="imgData" optional="YES" attributeType="Binary"/>
<attribute name="imgName" optional="YES" attributeType="String"/>
</entity>
<entity name="Plumber_1" representedClassName="Plumber_1" syncable="YES" codeGenerationType="class">
<attribute name="imgData" optional="YES" attributeType="Binary"/>
<attribute name="imgName" optional="YES" attributeType="String"/>
</entity> </entity>
<elements> <elements>
<element name="Electrician_1" positionX="-45" positionY="27" width="128" height="133"/> <element name="Electrician_1" positionX="-45" positionY="27" width="128" height="133"/>
<element name="ImageProperty" positionX="-63" positionY="-18" width="128" height="103"/> <element name="Plumber_1" positionX="-45" positionY="72" width="128" height="73"/>
<element name="Handyman_1" positionX="-36" positionY="81" width="128" height="133"/>
<element name="Locksmith_1" positionX="-18" positionY="90" width="128" height="73"/>
</elements> </elements>
</model> </model>
\ No newline at end of file
...@@ -34,8 +34,10 @@ class SOTabBarItem: UIView { ...@@ -34,8 +34,10 @@ class SOTabBarItem: UIView {
guard let selecteImage = item.image else { guard let selecteImage = item.image else {
fatalError("You should set image to all view controllers") fatalError("You should set image to all view controllers")
} }
// if self.image == nil {
self.image = selecteImage self.image = selecteImage
self.title = item.title ?? "" self.title = item.title ?? ""
// }
super.init(frame: .zero) super.init(frame: .zero)
drawConstraints() drawConstraints()
} }
......
...@@ -10,8 +10,9 @@ import UIKit ...@@ -10,8 +10,9 @@ import UIKit
class SmallListWorkVC: UIViewController { class SmallListWorkVC: UIViewController {
let fullView: CGFloat = 100 let fullView: CGFloat = 100
var partialView: CGFloat { var partialView: CGFloat {
return UIScreen.main.bounds.height - (400 + UIApplication.shared.statusBarFrame.height) // return UIScreen.main.bounds.height - (400 + UIApplication.shared.statusBarFrame.height)
// return UIScreen.main.bounds.height - 200 return 50 + UIApplication.shared.statusBarFrame.height
// return UIScreen.main.bounds.height - 100
} }
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
......
...@@ -71,22 +71,12 @@ ...@@ -71,22 +71,12 @@
</textField> </textField>
</subviews> </subviews>
</stackView> </stackView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="B9M-8S-4PD">
<rect key="frame" x="21" y="367" width="372" height="36"/>
<color key="backgroundColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="height" constant="36" id="Loh-aF-Qb1"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<state key="normal" title="DO IT!">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
</button>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="What do you want to do?" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" clearButtonMode="always" translatesAutoresizingMaskIntoConstraints="NO" id="31i-Py-j20"> <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="What do you want to do?" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" clearButtonMode="always" translatesAutoresizingMaskIntoConstraints="NO" id="31i-Py-j20">
<rect key="frame" x="21" y="113" width="324" height="34"/> <rect key="frame" x="20" y="113" width="341" height="34"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints> <constraints>
<constraint firstAttribute="width" constant="324" id="Kci-qW-DmA"/> <constraint firstAttribute="height" constant="34" id="o1S-1F-Uf7"/>
<constraint firstAttribute="height" relation="greaterThanOrEqual" constant="34" id="ptZ-wW-lFP"/>
</constraints> </constraints>
<color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/> <fontDescription key="fontDescription" type="system" pointSize="14"/>
...@@ -97,35 +87,47 @@ ...@@ -97,35 +87,47 @@
</userDefinedRuntimeAttribute> </userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes> </userDefinedRuntimeAttributes>
</textField> </textField>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="Undefined address" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="VWO-IA-oF7"> <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="Undefined address" placeholder="22 Dorlan ave, Manchester" textAlignment="natural" adjustsFontSizeToFit="NO" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="VWO-IA-oF7">
<rect key="frame" x="21" y="60" width="372" height="34"/> <rect key="frame" x="66" y="60" width="327" height="34"/>
<color key="backgroundColor" systemColor="systemGroupedBackgroundColor"/> <color key="backgroundColor" systemColor="systemGroupedBackgroundColor"/>
<constraints>
<constraint firstAttribute="height" constant="34" id="Fzx-ot-jnc"/>
</constraints>
<color key="textColor" white="0.66666666669999997" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <color key="textColor" white="0.66666666669999997" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/> <fontDescription key="fontDescription" type="system" pointSize="15"/>
<textInputTraits key="textInputTraits"/> <textInputTraits key="textInputTraits"/>
</textField> </textField>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="eva_pin-fill" adjustsImageSizeForAccessibilityContentSizeCategory="YES" translatesAutoresizingMaskIntoConstraints="NO" id="1Kn-J7-KjP">
<rect key="frame" x="20" y="60" width="38" height="34"/>
<constraints>
<constraint firstAttribute="width" constant="38" id="HNd-tb-8iq"/>
<constraint firstAttribute="height" constant="34" id="Lwm-Jp-b9h"/>
</constraints>
</imageView>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="microphon" translatesAutoresizingMaskIntoConstraints="NO" id="Sc0-cO-Rk1"> <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="microphon" translatesAutoresizingMaskIntoConstraints="NO" id="Sc0-cO-Rk1">
<rect key="frame" x="353" y="111" width="38" height="38"/> <rect key="frame" x="369" y="120" width="22" height="21.5"/>
</imageView> </imageView>
</subviews> </subviews>
<viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/> <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
<color key="backgroundColor" systemColor="systemGroupedBackgroundColor"/> <color key="backgroundColor" systemColor="systemGroupedBackgroundColor"/>
<constraints> <constraints>
<constraint firstItem="nqP-jn-KuZ" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" constant="20" id="3NQ-iu-OjB"/> <constraint firstItem="nqP-jn-KuZ" firstAttribute="top" secondItem="31i-Py-j20" secondAttribute="bottom" constant="22" id="2JR-Kx-yo0"/>
<constraint firstItem="Sc0-cO-Rk1" firstAttribute="top" secondItem="VWO-IA-oF7" secondAttribute="bottom" constant="17" id="LrC-f6-dlh"/> <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="VWO-IA-oF7" secondAttribute="trailing" constant="21" id="91k-XE-YzU"/>
<constraint firstItem="VWO-IA-oF7" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" constant="21" id="OSi-y4-HpV"/> <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="nqP-jn-KuZ" secondAttribute="trailing" constant="20" id="DDE-re-9Mk"/>
<constraint firstItem="nqP-jn-KuZ" firstAttribute="top" secondItem="Sc0-cO-Rk1" secondAttribute="bottom" constant="20" id="QEO-iQ-tg0"/> <constraint firstItem="VWO-IA-oF7" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" constant="16" id="JbQ-WW-A5y"/>
<constraint firstItem="Sc0-cO-Rk1" firstAttribute="centerY" secondItem="31i-Py-j20" secondAttribute="centerY" id="TDb-ta-TUf"/> <constraint firstItem="Sc0-cO-Rk1" firstAttribute="leading" secondItem="31i-Py-j20" secondAttribute="trailing" constant="8" symbolic="YES" id="LPr-Az-USe"/>
<constraint firstItem="B9M-8S-4PD" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" constant="21" id="TGQ-gf-5CR"/> <constraint firstItem="1Kn-J7-KjP" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" constant="16" id="LQY-V7-tkr"/>
<constraint firstItem="31i-Py-j20" firstAttribute="leading" secondItem="B9M-8S-4PD" secondAttribute="leading" id="V8m-uy-Afk"/> <constraint firstItem="Sc0-cO-Rk1" firstAttribute="top" secondItem="VWO-IA-oF7" secondAttribute="bottom" constant="26" id="LrC-f6-dlh"/>
<constraint firstItem="nqP-jn-KuZ" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" constant="169" id="Vd6-l6-D0K"/> <constraint firstItem="31i-Py-j20" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" constant="20" id="O4L-wy-N82"/>
<constraint firstItem="nqP-jn-KuZ" firstAttribute="top" secondItem="31i-Py-j20" secondAttribute="bottom" constant="22" id="b8j-fB-CM9"/> <constraint firstItem="VWO-IA-oF7" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" constant="66" id="OSi-y4-HpV"/>
<constraint firstItem="Sc0-cO-Rk1" firstAttribute="leading" secondItem="31i-Py-j20" secondAttribute="trailing" constant="8" symbolic="YES" id="PLb-ch-Xoh"/>
<constraint firstItem="VWO-IA-oF7" firstAttribute="leading" secondItem="1Kn-J7-KjP" secondAttribute="trailing" constant="8" id="SWx-MB-wd4"/>
<constraint firstItem="nqP-jn-KuZ" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" constant="20" id="VY3-fz-kPt"/>
<constraint firstItem="31i-Py-j20" firstAttribute="top" secondItem="VWO-IA-oF7" secondAttribute="bottom" constant="19" id="aRO-M5-lJD"/>
<constraint firstItem="1Kn-J7-KjP" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" constant="20" id="cNv-BL-NMI"/>
<constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="Sc0-cO-Rk1" secondAttribute="trailing" constant="23" id="cTk-wz-Zap"/> <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="Sc0-cO-Rk1" secondAttribute="trailing" constant="23" id="cTk-wz-Zap"/>
<constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="VWO-IA-oF7" secondAttribute="trailing" constant="21" id="jLD-sB-2TI"/> <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="VWO-IA-oF7" secondAttribute="trailing" constant="21" id="jLD-sB-2TI"/>
<constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="nqP-jn-KuZ" secondAttribute="trailing" constant="20" id="jyh-hc-rAZ"/> <constraint firstItem="31i-Py-j20" firstAttribute="top" secondItem="VWO-IA-oF7" secondAttribute="bottom" constant="19" id="n42-Md-P9R"/>
<constraint firstItem="Sc0-cO-Rk1" firstAttribute="leading" secondItem="31i-Py-j20" secondAttribute="trailing" constant="8" symbolic="YES" id="lT3-Dz-ylw"/>
<constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="B9M-8S-4PD" secondAttribute="trailing" constant="21" id="mUT-4H-oJU"/>
<constraint firstItem="B9M-8S-4PD" firstAttribute="top" secondItem="nqP-jn-KuZ" secondAttribute="bottom" constant="17" id="nOE-qq-NJe"/>
</constraints> </constraints>
<userDefinedRuntimeAttributes> <userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
...@@ -136,6 +138,7 @@ ...@@ -136,6 +138,7 @@
</view> </view>
</objects> </objects>
<resources> <resources>
<image name="eva_pin-fill" width="12" height="12"/>
<image name="microphon" width="22" height="21.5"/> <image name="microphon" width="22" height="21.5"/>
<systemColor name="systemGroupedBackgroundColor"> <systemColor name="systemGroupedBackgroundColor">
<color red="0.94901960784313721" green="0.94901960784313721" blue="0.96862745098039216" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <color red="0.94901960784313721" green="0.94901960784313721" blue="0.96862745098039216" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
......
...@@ -34,10 +34,10 @@ class CallProfiViewController: UIViewController, UITableViewDelegate, UITableVie ...@@ -34,10 +34,10 @@ class CallProfiViewController: UIViewController, UITableViewDelegate, UITableVie
tableView.rowHeight = UITableView.automaticDimension tableView.rowHeight = UITableView.automaticDimension
tableView.delegate = self tableView.delegate = self
tableView.dataSource = self tableView.dataSource = self
let item1 = setBarButtom(str: "akar-icons_arrow-left") let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true) self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtom(str: "gg_close") let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true) self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
...@@ -49,6 +49,21 @@ class CallProfiViewController: UIViewController, UITableViewDelegate, UITableVie ...@@ -49,6 +49,21 @@ class CallProfiViewController: UIViewController, UITableViewDelegate, UITableVie
let item1 = UIBarButtonItem(customView: btn1) let item1 = UIBarButtonItem(customView: btn1)
return item1 return item1
} }
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc @objc
func back() { func back() {
navigationController?.popViewController( animated: true) navigationController?.popViewController( animated: true)
...@@ -56,10 +71,13 @@ class CallProfiViewController: UIViewController, UITableViewDelegate, UITableVie ...@@ -56,10 +71,13 @@ class CallProfiViewController: UIViewController, UITableViewDelegate, UITableVie
@IBAction func pressShowMap(_ sender: Any) { @IBAction func pressShowMap(_ sender: Any) {
guard let vc = storyboard?.instantiateViewController(withIdentifier: "Logo") guard let vc = storyboard?.instantiateViewController(withIdentifier: "MainVC")
// guard let vc = storyboard?.instantiateViewController(withIdentifier: "Logo")
else { return } else { return }
(vc as! MainViewController).showWorkerMap = 1 // (vc as! MainViewController).showWorkerMap = 1
// (vc as! CalendarViewController).delegate = self (vc as! MainVCViewController).initSecond()
((vc as! MainVCViewController).viewControllers[0] as! MainViewController).showWorkerMap = 1
//// vc.viewControllers[0] as! SOTabBarController
navigationController?.pushViewController(vc, animated: true) navigationController?.pushViewController(vc, animated: true)
// self.present(vc, animated: true, completion: nil) // self.present(vc, animated: true, completion: nil)
} }
......
...@@ -29,7 +29,6 @@ class DoubleElectricVC: UIViewController, UITableViewDelegate, UITableViewDataSo ...@@ -29,7 +29,6 @@ class DoubleElectricVC: UIViewController, UITableViewDelegate, UITableViewDataSo
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
// Register the table view cell class and its reuse id // Register the table view cell class and its reuse id
self.tableView.register(UITableViewCell.self, forCellReuseIdentifier: cellReuseIdentifier) self.tableView.register(UITableViewCell.self, forCellReuseIdentifier: cellReuseIdentifier)
tableView.rowHeight = 45 tableView.rowHeight = 45
...@@ -40,6 +39,37 @@ class DoubleElectricVC: UIViewController, UITableViewDelegate, UITableViewDataSo ...@@ -40,6 +39,37 @@ class DoubleElectricVC: UIViewController, UITableViewDelegate, UITableViewDataSo
setup() setup()
glidingView.isHidden = true glidingView.isHidden = true
// addPhotoTopConstraint.constant = 78 // addPhotoTopConstraint.constant = 78
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
}
func setBarButtom(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.back), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc
func back() {
navigationController?.popViewController( animated: true)
} }
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
...@@ -54,7 +84,7 @@ class DoubleElectricVC: UIViewController, UITableViewDelegate, UITableViewDataSo ...@@ -54,7 +84,7 @@ class DoubleElectricVC: UIViewController, UITableViewDelegate, UITableViewDataSo
else { return } else { return }
settingsLauncher.showSettings(navigVC: navVC,dispatcher:0) settingsLauncher.showSettings(navigVC: navVC,dispatcher:0)
glidingView.isHidden = false glidingView.isHidden = false
addPhotoConstraint.constant = 98 addPhotoConstraint.constant = 108
} }
@IBAction func pressBookNow(_ sender: Any) { @IBAction func pressBookNow(_ sender: Any) {
......
...@@ -46,6 +46,11 @@ class ElectricTableViewController:UIViewController,UITableViewDataSource, UITabl ...@@ -46,6 +46,11 @@ class ElectricTableViewController:UIViewController,UITableViewDataSource, UITabl
tableView.delegate = self tableView.delegate = self
tableView.dataSource = self tableView.dataSource = self
descTextView.delegate = self descTextView.delegate = self
// title = "Electric"
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
setup() setup()
glidingView.isHidden = true glidingView.isHidden = true
...@@ -57,26 +62,24 @@ class ElectricTableViewController:UIViewController,UITableViewDataSource, UITabl ...@@ -57,26 +62,24 @@ class ElectricTableViewController:UIViewController,UITableViewDataSource, UITabl
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated) super.viewWillAppear(animated)
collectionView.reloadData() self.navigationController?.setNavigationBarHidden(false, animated: animated)
collectionView.collectionViewLayout.invalidateLayout()
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 0 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)]
navigationController?.title = "Electric" navigationController?.title = "Electric"
let item1 = setBarButtom(str: "akar-icons_arrow-left") self.navigationController?.navigationBar.topItem?.title = "Electric"
self.navigationItem.setLeftBarButtonItems([item1], animated: true) title = "Electric"
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 1 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)]
let item2 = setBarButtom(str: "gg_close") collectionView.reloadData()
self.navigationItem.setRightBarButtonItems([item2], animated: true) collectionView.collectionViewLayout.invalidateLayout()
/* if dataStorage != nil { countData = dataStorage!.load() countPhotoElectric = (dataStorage?.loadWorkerData(flagWorker:0))! as Int
if countData > 0 { var ind = 0 for _ in images {
images.append(dataStorage?.listImageGalery.listElectricImageGalery[ind])
ind = ind + 1 } } }*/
countPhotoElectric = (dataStorage?.load())! as Int
if countPhotoElectric > 0 { if countPhotoElectric > 0 {
images = dataStorage?.getImageArray(flag:0) as! [UIImage?] images = dataStorage?.getImageArray(flag:0) as! [UIImage?]
if images.count > 0 { if images.count > 0 {
glidingView.isHidden = false
addPhotoTopConstraint.constant = 112
collectionView.reloadData() collectionView.reloadData()
} }
} }
} }
func setBarButtom(str:String)->UIBarButtonItem { func setBarButtom(str:String)->UIBarButtonItem {
...@@ -87,26 +90,48 @@ class ElectricTableViewController:UIViewController,UITableViewDataSource, UITabl ...@@ -87,26 +90,48 @@ class ElectricTableViewController:UIViewController,UITableViewDataSource, UITabl
let item1 = UIBarButtonItem(customView: btn1) let item1 = UIBarButtonItem(customView: btn1)
return item1 return item1
} }
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc @objc
func back() { func back() {
// let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
navigationController?.popViewController( animated: true)
// navigationController?.
// navigationController?.popToRootViewController(animated: true)
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo") let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
// navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true) navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
} }
@IBAction func BookNowClick(_ sender: Any) { @IBAction func BookNowClick(_ sender: Any) {
let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "BookingVK") //Анимация с растворением
let transition = CATransition()
// let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "BookingVK")
/* let transition = CATransition()
transition.duration = 0.99 transition.duration = 0.99
transition.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut) transition.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
transition.type = CATransitionType.fade //растворяется transition.type = CATransitionType.fade //растворяется
// transition.type = CATransitionType.reveal //moving right // transition.type = CATransitionType.reveal //moving right
self.navigationController?.view.layer.add(transition, forKey: nil) self.navigationController?.view.layer.add(transition, forKey: nil)*/
// _ = self.navigationController?.popToRootViewController(animated: false) // _ = self.navigationController?.popToRootViewController(animated: false)
// navigationController?.pushViewController(vc, animated: true)
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc:UIViewController
if #available(iOS 13.0, *) {
vc = storyboard.instantiateViewController(identifier: "BookingVK") as! VKBookingViewController
} else {
vc = storyboard.instantiateViewController(withIdentifier: "BookingVK")
}
navigationController?.pushViewController(vc, animated: true) navigationController?.pushViewController(vc, animated: true)
} }
...@@ -116,7 +141,7 @@ class ElectricTableViewController:UIViewController,UITableViewDataSource, UITabl ...@@ -116,7 +141,7 @@ class ElectricTableViewController:UIViewController,UITableViewDataSource, UITabl
else { return } else { return }
settingsLauncher.showSettings(navigVC: navVC,dispatcher:0) settingsLauncher.showSettings(navigVC: navVC,dispatcher:0)
glidingView.isHidden = false glidingView.isHidden = false
addPhotoTopConstraint.constant = 102 addPhotoTopConstraint.constant = 106
} }
func textFieldShouldReturn(_ textField: UITextField) -> Bool { func textFieldShouldReturn(_ textField: UITextField) -> Bool {
......
...@@ -29,17 +29,18 @@ class EmerElecricianViewController: UIViewController, UITableViewDataSource, UIT ...@@ -29,17 +29,18 @@ class EmerElecricianViewController: UIViewController, UITableViewDataSource, UIT
tableView.delegate = self tableView.delegate = self
tableView.dataSource = self tableView.dataSource = self
addressView.layer.borderColor = UIColor.lightGray.cgColor addressView.layer.borderColor = UIColor.lightGray.cgColor
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtom(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated) super.viewWillAppear(animated)
title = "Electrician emergency" title = "Electrician emergency"
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 255 / 255, green: 94 / 255, blue: 58 / 255, alpha: 1.0)] navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 255 / 255, green: 94 / 255, blue: 58 / 255, alpha: 1.0)]
let item1 = setBarButtom(str: "akar-icons_arrow-left") self.navigationController?.setNavigationBarHidden(false, animated: animated)
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtom(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
func setBarButtom(str:String)->UIBarButtonItem { func setBarButtom(str:String)->UIBarButtonItem {
...@@ -50,7 +51,21 @@ class EmerElecricianViewController: UIViewController, UITableViewDataSource, UIT ...@@ -50,7 +51,21 @@ class EmerElecricianViewController: UIViewController, UITableViewDataSource, UIT
let item1 = UIBarButtonItem(customView: btn1) let item1 = UIBarButtonItem(customView: btn1)
return item1 return item1
} }
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc @objc
func back() { func back() {
navigationController?.popViewController( animated: true) navigationController?.popViewController( animated: true)
......
...@@ -31,18 +31,21 @@ class EmerHandViewController: UIViewController, UITableViewDataSource, ...@@ -31,18 +31,21 @@ class EmerHandViewController: UIViewController, UITableViewDataSource,
tableView.rowHeight = 45 tableView.rowHeight = 45
tableView.delegate = self tableView.delegate = self
tableView.dataSource = self tableView.dataSource = self
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated) super.viewWillAppear(animated)
title = "Emergency handyman" self.navigationController?.setNavigationBarHidden(false, animated: animated)
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 255 / 255, green: 94 / 255, blue: 58 / 255, alpha: 1.0)] navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 255 / 255, green: 94 / 255, blue: 58 / 255, alpha: 1.0)]
title = "Emergency handyman"
self.navigationController?.navigationBar.topItem?.title = "Emergency handyman"
self.navigationController?.navigationItem.title = "Emergency handyman"
let item1 = setBarButtom(str: "akar-icons_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtom(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
func setBarButtom(str:String)->UIBarButtonItem { func setBarButtom(str:String)->UIBarButtonItem {
...@@ -53,10 +56,23 @@ class EmerHandViewController: UIViewController, UITableViewDataSource, ...@@ -53,10 +56,23 @@ class EmerHandViewController: UIViewController, UITableViewDataSource,
let item1 = UIBarButtonItem(customView: btn1) let item1 = UIBarButtonItem(customView: btn1)
return item1 return item1
} }
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc @objc
func back() { func back() {
//// self.dismiss(animated: true, completion: nil)
navigationController?.popViewController( animated: true) navigationController?.popViewController( animated: true)
} }
......
//
// EmerLocksmithVC.swift
// Em-call
//
// Created by Alex Sh on 22.04.2022.
//
import UIKit
class EmerLocksmithVC: UIViewController, UITableViewDelegate, UITableViewDataSource
{
var address = "Unknow address"
var dateAndTime = "2022/02/23"
var contact = "+1 123 112 11 22"
var card = "**** **** **** 1234"
let trackList = Track.getTrackList()
let cellReuseIdentifier = "cell"
@IBOutlet weak var tableView: UITableView!
@IBOutlet weak var addressView: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
tableView.register(UITableViewCell.self, forCellReuseIdentifier: cellReuseIdentifier)
tableView.rowHeight = 25
tableView.delegate = self
tableView.dataSource = self
addressView.layer.borderColor = UIColor.lightGray.cgColor
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
title = "Locksmith emergency"
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 255 / 255, green: 94 / 255, blue: 58 / 255, alpha: 1.0)]
self.navigationController?.setNavigationBarHidden(false, animated: animated)
}
func setBarButtom(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.back), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc
func back() {
navigationController?.popViewController( animated: true)
}
@IBAction func pressButtonAddress(_ sender: Any) {
let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Map")
(vc as! MapViewController).delegate = self
navigationController?.pushViewController(vc, animated: true)
}
@IBAction func pressBookNow(_ sender: Any) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc:UIViewController
vc = storyboard.instantiateViewController(withIdentifier: "BookingVK")
navigationController?.pushViewController(vc, animated: true)
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
//return trackList.count
return 1
}
func tableView(_ tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int) {
// Создаём константу, именнo через неё мы будем обращаться к свойствам и изменять их
let header = view as! UITableViewHeaderFooterView
// Установить цвет текста в label
header.textLabel?.textColor = .black
// Установить цвет фона для секции
header.tintColor = UIColor.white
// Установить шрифт и размер шрифта для label
header.textLabel?.font = UIFont(name: "Helvetica-Regular", size: 10)
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}// Default is 1 if not implemented
func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
switch section {
case 0:
return ("Payment")
default: return ("Work location")
}
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: cellReuseIdentifier, for: indexPath)
let section = indexPath.section
switch section {
case 0: cell.textLabel?.text = card
default: break
}
cell.accessoryType = UITableViewCell.AccessoryType.disclosureIndicator
return cell
}
// method to run when table view cell is tapped
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print("You tapped cell number \(indexPath.row).")
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let nameXibName = ["Map","Calendar"]
let vc:UIViewController
let section = indexPath.section
switch section //if indexPath.row == 0
{
case 0: /* if #available(iOS 13.0, *) {
vc = storyboard.instantiateViewController(identifier: nameXibName[indexPath.row]) as! MapViewController
} else {*/
vc = storyboard.instantiateViewController(withIdentifier: nameXibName[1])
(vc as! CalendarViewController).delegate = self // let mapController:MapViewController! = MapViewController()
navigationController?.pushViewController(vc, animated: true)
/* case 1: vc = storyboard.instantiateViewController(withIdentifier: nameXibName[1])
(vc as! CalendarViewController).delegate = self
navigationController?.pushViewController(vc, animated: true)
case 2: vc = storyboard.instantiateViewController(withIdentifier: nameXibName[1])
(vc as! CalendarViewController).delegate = self
navigationController?.pushViewController(vc, animated: true)
case 3: vc = storyboard.instantiateViewController(withIdentifier: nameXibName[1])
(vc as! CalendarViewController).delegate = self
navigationController?.pushViewController(vc, animated: true)*/
default:
return
}
}
}
extension EmerLocksmithVC:MapViewControllerDelegate {
func delegateClick(text:String) {
address = text // NotificationCenter.default.post(name: NSNotification.Name(rawValue: "delegateClick"), object: nil)
tableView.reloadData()
}
}
extension EmerLocksmithVC:CalendarViewControllerDelegate {
func calendarDelegateClick(text:String,flagData:Int) {
switch flagData {
case 0:
dateAndTime = text
case 1:
contact = text
case 2:
card = text
default:
break
}
tableView.reloadData()
}
}
...@@ -15,7 +15,7 @@ class HandmanViewController: UIViewController, UITableViewDataSource, ...@@ -15,7 +15,7 @@ class HandmanViewController: UIViewController, UITableViewDataSource,
var settingsLauncher:SettingsLauncher = SettingsLauncher() var settingsLauncher:SettingsLauncher = SettingsLauncher()
let appDelegate = UIApplication.shared.delegate as? AppDelegate let appDelegate = UIApplication.shared.delegate as? AppDelegate
var dataStorage:DataStorage? = nil var dataStorage:DataStorage? = nil
var listImageGalery:[String] = Array()
@IBOutlet weak var addPhotoTopConstraint: NSLayoutConstraint! @IBOutlet weak var addPhotoTopConstraint: NSLayoutConstraint!
@IBOutlet weak var tableView: UITableView! @IBOutlet weak var tableView: UITableView!
...@@ -27,8 +27,7 @@ class HandmanViewController: UIViewController, UITableViewDataSource, ...@@ -27,8 +27,7 @@ class HandmanViewController: UIViewController, UITableViewDataSource,
@IBOutlet weak var glidingView: GlidingCollection! @IBOutlet weak var glidingView: GlidingCollection!
fileprivate var collectionView: UICollectionView! fileprivate var collectionView: UICollectionView!
fileprivate var items = ["gloves", "boots", "bindings", "hoodie"] fileprivate var items = ["gloves", "boots", "bindings", "hoodie"]
// fileprivate var images: [[UIImage?]] = []
// fileprivate var images = [UIImage(named: "plus")!]
fileprivate var images: [UIImage?] = [] fileprivate var images: [UIImage?] = []
let cellReuseIdentifier = "cell" let cellReuseIdentifier = "cell"
var selRow:Int = 0 var selRow:Int = 0
...@@ -37,6 +36,7 @@ class HandmanViewController: UIViewController, UITableViewDataSource, ...@@ -37,6 +36,7 @@ class HandmanViewController: UIViewController, UITableViewDataSource,
var dateAndTime = "2022/02/23" var dateAndTime = "2022/02/23"
var contact = "+1 123 112 11 22" var contact = "+1 123 112 11 22"
var card = "**** **** **** 1234" var card = "**** **** **** 1234"
var countPhotoHandyman = 0
override func viewDidLoad() { override func viewDidLoad() {
...@@ -47,6 +47,10 @@ class HandmanViewController: UIViewController, UITableViewDataSource, ...@@ -47,6 +47,10 @@ class HandmanViewController: UIViewController, UITableViewDataSource,
tableView.dataSource = self tableView.dataSource = self
descTextView.delegate = self descTextView.delegate = self
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
settingsLauncher.delegate = self settingsLauncher.delegate = self
setup() setup()
glidingView.isHidden = true glidingView.isHidden = true
...@@ -55,15 +59,22 @@ class HandmanViewController: UIViewController, UITableViewDataSource, ...@@ -55,15 +59,22 @@ class HandmanViewController: UIViewController, UITableViewDataSource,
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated) super.viewWillAppear(animated)
self.navigationController?.setNavigationBarHidden(false, animated: animated)
collectionView.reloadData() collectionView.reloadData()
collectionView.collectionViewLayout.invalidateLayout() collectionView.collectionViewLayout.invalidateLayout()
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 0 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)] navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 0 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)]
title = "Handyman" title = "Handyman"
let item1 = setBarButtom(str: "akar-icons_arrow-left") self.navigationController?.navigationBar.topItem?.title = "Handyman"
self.navigationItem.setLeftBarButtonItems([item1], animated: true) self.navigationController?.navigationItem.title = "Handyman"
countPhotoHandyman = (dataStorage?.loadWorkerData(flagWorker:2))! as Int
let item2 = setBarButtom(str: "gg_close") if countPhotoHandyman > 0 {
self.navigationItem.setRightBarButtonItems([item2], animated: true) images = dataStorage?.getImageArray(flag:2) as! [UIImage?]
if images.count > 0 {
glidingView.isHidden = false
addPhotoTopConstraint.constant = 109
collectionView.reloadData()
}
}
} }
func setBarButtom(str:String)->UIBarButtonItem { func setBarButtom(str:String)->UIBarButtonItem {
...@@ -74,12 +85,26 @@ class HandmanViewController: UIViewController, UITableViewDataSource, ...@@ -74,12 +85,26 @@ class HandmanViewController: UIViewController, UITableViewDataSource,
let item1 = UIBarButtonItem(customView: btn1) let item1 = UIBarButtonItem(customView: btn1)
return item1 return item1
} }
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc @objc
func back() { func backToMain() {
// navigationController?.popViewController( animated: true)
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo") let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true) navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc
func back() {
navigationController?.popViewController( animated: true)
// let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
// navigationController?.pushViewController(firstVC, animated: true)
} }
@IBAction func pressAddPhoto(_ sender: Any) { @IBAction func pressAddPhoto(_ sender: Any) {
...@@ -87,7 +112,7 @@ class HandmanViewController: UIViewController, UITableViewDataSource, ...@@ -87,7 +112,7 @@ class HandmanViewController: UIViewController, UITableViewDataSource,
else { return } else { return }
settingsLauncher.showSettings(navigVC: navVC,dispatcher:0) settingsLauncher.showSettings(navigVC: navVC,dispatcher:0)
glidingView.isHidden = false glidingView.isHidden = false
addPhotoTopConstraint.constant = 102 addPhotoTopConstraint.constant = 108
} }
@IBAction func BOOK_NOW_Click(_ sender: Any) { @IBAction func BOOK_NOW_Click(_ sender: Any) {
...@@ -291,7 +316,12 @@ extension HandmanViewController:SettingsLauncherDelegate { ...@@ -291,7 +316,12 @@ extension HandmanViewController:SettingsLauncherDelegate {
func settingsDelegateClick(img: UIImage?,selRow:Int,imgName:String?) { func settingsDelegateClick(img: UIImage?,selRow:Int,imgName:String?) {
if img != nil { if img != nil {
images.append(img!) images.append(img!)
collectionView.reloadData() collectionView.reloadData()
if imgName != nil {
listImageGalery.append(imgName!)
dataStorage?.addListImageGalery(image: img!, imageName: imgName!, flagTypeGalery: 2)
}
} }
else { else {
self.selRow = selRow self.selRow = selRow
......
//
// LocsmithVCViewController.swift
// Em-call
//
// Created by Alex Sh on 22.04.2022.
//
import UIKit
class LocsmithVCViewController: UIViewController,UITableViewDataSource, UITableViewDelegate, UITextFieldDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextViewDelegate
{
let appDelegate = UIApplication.shared.delegate as? AppDelegate
var dataStorage:DataStorage? = nil
var settingsLauncher:SettingsLauncher = SettingsLauncher()
var listImageGalery:[String] = Array()
var selRow:Int = 0
let cellReuseIdentifier = "cell"
var address = "Unknow address"
var dateAndTime = "2022/02/23"
var contact = "+1 123 112 11 22"
var card = "**** **** **** 1234"
fileprivate var images: [UIImage?] = []
fileprivate var collectionView: UICollectionView!
@IBOutlet weak var glidingView: GlidingCollection!
@IBOutlet weak var addPhotoTopConstraint: NSLayoutConstraint!
@IBOutlet weak var tableview: UITableView!
@IBOutlet weak var textViewDesc: UITextView!
var countPhotoLocksmith = 0
override func viewDidLoad() {
super.viewDidLoad()
self.tableview.register(UITableViewCell.self, forCellReuseIdentifier: cellReuseIdentifier)
tableview.rowHeight = 65
// descTextView.delegate = self
tableview.delegate = self
tableview.dataSource = self
textViewDesc.delegate = self
settingsLauncher.delegate = self
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
//glide setup
setup()
glidingView.isHidden = true
dataStorage = appDelegate?.dataStorage
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationController?.setNavigationBarHidden(false, animated: animated)
collectionView.reloadData()
collectionView.collectionViewLayout.invalidateLayout()
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 0 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)]
title = "Locksmith"
self.navigationController?.navigationBar.topItem?.title = "Locksmithn"
self.navigationController?.navigationItem.title = "Locksmith"
countPhotoLocksmith = (dataStorage?.loadWorkerData(flagWorker:3))! as Int
if countPhotoLocksmith > 0 {
images = dataStorage?.getImageArray(flag:3) as! [UIImage?]
if images.count > 0 {
glidingView.isHidden = false
addPhotoTopConstraint.constant = 109
collectionView.reloadData()
}
}
}
func setBarButtom(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.back), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc
func back() {
navigationController?.popViewController( animated: true)
//let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
// navigationController?.pushViewController(firstVC, animated: true)
}
@IBAction func pressAddPhoto(_ sender: Any) {
guard let navVC = self.navigationController
else { return }
settingsLauncher.showSettings(navigVC: navVC,dispatcher:0)
glidingView.isHidden = false
addPhotoTopConstraint.constant = 102
}
@IBAction func pressBookNow(_ sender: Any) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc:UIViewController
vc = storyboard.instantiateViewController(withIdentifier: "BookingVK")
navigationController?.pushViewController(vc, animated: true)
}
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textViewDesc.resignFirstResponder()
}
func tableView(_ tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int) {
// Создаём константу, именна через неё мы будем обращаться к свойствам и изменять их
let header = view as! UITableViewHeaderFooterView
// Установить цвет текста в label
header.textLabel?.textColor = .black
// Установить цвет фона для секции
header.tintColor = UIColor.white
// Установить шрифт и размер шрифта для label
// header.textLabel?.font = UIFont(name: "Helvetica-Regular", size: 15)
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
func numberOfSections(in tableView: UITableView) -> Int {
return 4
}
func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
switch section {
case 0: return ("Work location")
case 1: return ("Date and Time")
case 2: return ("Your contacts")
case 3: return ("Payment")
default: return ("Work location")
} // return ("Work location")
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
// let cell = tableView.dequeueReusableCell(withIdentifier: cellReuseIdentifier, for: indexPath)
var cell:CustCellTableViewCell
let section = indexPath.section
switch section {
case 0:
cell = tableView.dequeueReusableCell(withIdentifier: "cust_cell") as! CustCellTableViewCell
cell.custCell.text = address
case 1:
cell = tableView.dequeueReusableCell(withIdentifier: "cust_cell") as! CustCellTableViewCell
cell.custCell.text = dateAndTime // cell.imageCell.isHidden = true
cell.imageCell?.image = UIImage(named: "uil_calendar-alt")
case 2:
cell = tableView.dequeueReusableCell(withIdentifier: "cust_cell2") as! CustCellTableViewCell
cell.custCell2?.text = contact
case 3:
cell = tableView.dequeueReusableCell(withIdentifier: "cust_cell") as! CustCellTableViewCell
cell.custCell?.text = card
cell.imageCell?.image = UIImage(named: "Vector")
default:
cell = tableView.dequeueReusableCell(withIdentifier: "cust_cell2") as! CustCellTableViewCell
cell.custCell2?.text = contact
}
cell.accessoryType = UITableViewCell.AccessoryType.disclosureIndicator
return cell
}
// method to run when table view cell is tapped
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let nameXibName = ["Map","Calendar"]
let section = indexPath.section
var vc:UIViewController
switch section //if indexPath.row == 0
{
case 0: vc = storyboard.instantiateViewController(withIdentifier: nameXibName[0])
(vc as! MapViewController).delegate = self
navigationController?.pushViewController(vc , animated: true)
return
case 1: vc = storyboard.instantiateViewController(withIdentifier: nameXibName[1])
(vc as! CalendarViewController).delegate = self
navigationController?.pushViewController(vc, animated: true)
return
case 2: vc = storyboard.instantiateViewController(withIdentifier: nameXibName[1])
(vc as! CalendarViewController).delegate = self
navigationController?.pushViewController(vc, animated: true)
case 3: vc = storyboard.instantiateViewController(withIdentifier: nameXibName[1])
(vc as! CalendarViewController).delegate = self
navigationController?.pushViewController(vc, animated: true)
default: return
}
}
}
extension LocsmithVCViewController:MapViewControllerDelegate {
func delegateClick(text:String) {
address = text
// NotificationCenter.default.post(name: NSNotification.Name(rawValue: "delegateClick"), object: nil)
tableview.reloadData()
}
}
extension LocsmithVCViewController:CalendarViewControllerDelegate {
func calendarDelegateClick(text:String,flagData:Int) {
switch flagData {
case 0:
dateAndTime = text
case 1:
contact = text
case 2:
card = text
default:
break
}
tableview.reloadData()
}
}
//
extension LocsmithVCViewController:SettingsLauncherDelegate {
func settingsDelegateClick(img: UIImage?,selRow:Int,imgName:String?) {
if img != nil {
images.append(img!)
collectionView.reloadData()
if imgName != nil {
listImageGalery.append(imgName!)
dataStorage?.addListImageGalery(image: img!, imageName: imgName!, flagTypeGalery: 3)
}
}
else {
self.selRow = selRow
}
}
}
// MARK: - Setup
extension LocsmithVCViewController {
func setup() {
setupGlidingCollectionView()
// loadImages()
}
private func setupGlidingCollectionView() {
glidingView.dataSource = self
let nib = UINib(nibName: "CollectionCell", bundle: nil)
collectionView = glidingView.collectionView
collectionView.register(nib, forCellWithReuseIdentifier: "Cell")
collectionView.delegate = self
collectionView.dataSource = self
collectionView.backgroundColor = glidingView.backgroundColor
}
}
// MARK: - CollectionView 🎛
extension LocsmithVCViewController: UICollectionViewDataSource, UICollectionViewDelegate {
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
// let section = glidingView.expandedItemIndex
return images.count
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "Cell", for: indexPath) as? CollectionCell else { return UICollectionViewCell() }
////let section = glidingView.expandedItemIndex
if images.count>0 {
let image = images[indexPath.row]
// let image = images[0]
cell.imageView.image = image
}
cell.contentView.clipsToBounds = true
let layer = cell.layer
let config = GlidingConfig.shared
layer.shadowOffset = config.cardShadowOffset
layer.shadowColor = config.cardShadowColor.cgColor
layer.shadowOpacity = config.cardShadowOpacity
layer.shadowRadius = config.cardShadowRadius
layer.shouldRasterize = true
layer.rasterizationScale = UIScreen.main.scale
return cell
}
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let section = glidingView.expandedItemIndex
let item = indexPath.item
print("Selected item #\(item) in section #\(section)")
}
}
// MARK: - Gliding Collection 🎢
extension LocsmithVCViewController: GlidingCollectionDatasource {
func numberOfItems(in collection: GlidingCollection) -> Int {
// return items.count
return 0
}
func glidingCollection(_ collection: GlidingCollection, itemAtIndex index: Int) -> String {
// return "– " + items[index]
return "– "
}
}
...@@ -16,10 +16,10 @@ class MainVCViewController: SOTabBarController { ...@@ -16,10 +16,10 @@ class MainVCViewController: SOTabBarController {
print(viewController.tabBarItem.title ?? "") print(viewController.tabBarItem.title ?? "")
}*/ }*/
var firstVC:UIViewController = UIViewController() var firstVC:UIViewController? = nil //UIViewController()
var secondVC:UIViewController = UIViewController() var secondVC:UIViewController? = nil //UIViewController()
var thrVC :UIViewController = UIViewController() var thrVC :UIViewController? = nil //UIViewController()
var foVC:UIViewController = UIViewController() var foVC:UIViewController? = nil //UIViewController()
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
...@@ -29,17 +29,52 @@ class MainVCViewController: SOTabBarController { ...@@ -29,17 +29,52 @@ class MainVCViewController: SOTabBarController {
thrVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Chat") thrVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Chat")
foVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "ProfileVC") foVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "ProfileVC")
firstVC.tabBarItem = UITabBarItem(title: "Home", image: UIImage(named: "Home_white1"), selectedImage: UIImage(named: "Home_black")) firstVC!.tabBarItem = UITabBarItem(title: "Home", image: UIImage(named: "Home_white1"), selectedImage: UIImage(named: "Home_black"))
secondVC.tabBarItem = UITabBarItem(title: "BookingVK", image: UIImage(named: "Bookings_white"), selectedImage: UIImage(named: "Bookings_black")) secondVC!.tabBarItem = UITabBarItem(title: "BookingVK", image: UIImage(named: "Bookings_white"), selectedImage: UIImage(named: "Bookings_black"))
// thrVC.tabBarItem = UITabBarItem(title: "Chat", image: UIImage(named: "firstImage"), selectedImage: UIImage(named: "firstSelectedImage")) // thrVC.tabBarItem = UITabBarItem(title: "Chat", image: UIImage(named: "firstImage"), selectedImage: UIImage(named: "firstSelectedImage"))
thrVC.tabBarItem = UITabBarItem(title: "Chat", image: UIImage(named: "Chat_white"), selectedImage: UIImage(named: "Chat_black")) thrVC!.tabBarItem = UITabBarItem(title: "Chat", image: UIImage(named: "Chat_white"), selectedImage: UIImage(named: "Chat_black"))
foVC.tabBarItem = UITabBarItem(title: "Profile", image: UIImage(named: "profile_white2"), selectedImage: UIImage(named: "Profile_black2")) foVC!.tabBarItem = UITabBarItem(title: "Profile", image: UIImage(named: "profile_white2"), selectedImage: UIImage(named: "Profile_black2"))
viewControllers = [firstVC, secondVC,thrVC,foVC] self.viewControllers = [firstVC!, secondVC!,thrVC!,foVC!]
} }
func initSecond() {
super.viewDidLoad()
self.delegate = self
/* firstVC.tabBarItem = nil
secondVC.tabBarItem = nil
thrVC.tabBarItem = nil
foVC.tabBarItem = nil
firstVC = nil
secondVC = nil*/
if firstVC == nil {
firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
}
if secondVC == nil {
secondVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "BookingVK")
}
if thrVC == nil {
thrVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Chat")
}
if foVC == nil {
foVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "ProfileVC")
}
/*
firstVC!.tabBarItem = UITabBarItem(title: "Home", image: UIImage(named: "Home_white1"), selectedImage: UIImage(named: "Home_black"))
secondVC!.tabBarItem = UITabBarItem(title: "BookingVK", image: UIImage(named: "Bookings_white"), selectedImage: UIImage(named: "Bookings_black"))
thrVC!.tabBarItem = UITabBarItem(title: "Chat", image: UIImage(named: "Chat_white"), selectedImage: UIImage(named: "Chat_black"))
foVC!.tabBarItem = UITabBarItem(title: "Profile", image: UIImage(named: "profile_white2"), selectedImage: UIImage(named: "Profile_black2"))
*/
if viewControllers == nil {
viewControllers = [firstVC!, secondVC!,thrVC!,foVC!]
}
}
func soTabBar(_ tabBar: SOTabBar, didSelectTabAt index: Int) { func soTabBar(_ tabBar: SOTabBar, didSelectTabAt index: Int) {
print("did Tapped On \(index)") print("did Tapped On \(index)")
} }
override func loadView() { override func loadView() {
super.loadView() super.loadView()
// SOTabBarSetting.propertyToCustomize = value // SOTabBarSetting.propertyToCustomize = value
......
...@@ -109,14 +109,22 @@ class MainViewController: UIViewController, UITextFieldDelegate, MKMapViewDelega ...@@ -109,14 +109,22 @@ class MainViewController: UIViewController, UITextFieldDelegate, MKMapViewDelega
} }
@IBAction func pressElectric(_ sender: Any) { @IBAction func pressElectric(_ sender: Any) {
//let storyboard = UIStoryboard(name: "Main", bundle: nil) // let storyboard = UIStoryboard(name: "Main", bundle: nil)
// var vc:UINavigationController // var vc:UINavigationController
// let tabBar = storyboard.instantiateViewController(withIdentifier: "TabBar") // let tabBar = storyboard.instantiateViewController(withIdentifier: "TabBar")
//let vc = storyboard.instantiateViewController(withIdentifier: "Electric") as! ElectricTableViewController // let vc = storyboard.instantiateViewController(withIdentifier: "Electric") as! ElectricTableViewController
let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "NaviElectric") as! UINavigationController /* let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "NaviElectric") as! UINavigationController
// vc = UINavigationController.init(rootViewController: tabBar) // vc = UINavigationController.init(rootViewController: tabBar)
//// vc.pushViewController(tabBar, animated: true) //// vc.pushViewController(tabBar, animated: true)
navigationController?.present(vc, animated: true, completion: nil) navigationController?.present(vc, animated: true, completion: nil)*/
// self.navigationController?.pushViewController(vc, animated: true)
// navigationController?.pushViewController(vc, animated: true)
/* if let newViewController = storyboard.instantiateViewController(withIdentifier: "NaviElectric") as? UINavigationController {
UINavigationController.modalTransitionStyle = .crossDissolve // это значение можно менять для разных видов анимации появления
// ElectricTableViewController.modalPresentationStyle = .overCurrentContext // это та самая волшебная строка, убрав или закомментировав ее, вы получите появление смахиваемого контроллера
// ElectricTableViewController.transitionStyle = .crossDissolve
present(newViewController, animated: false, completion: nil)
}*/
} }
override func viewDidLoad() { override func viewDidLoad() {
...@@ -200,6 +208,7 @@ class MainViewController: UIViewController, UITextFieldDelegate, MKMapViewDelega ...@@ -200,6 +208,7 @@ class MainViewController: UIViewController, UITextFieldDelegate, MKMapViewDelega
self.navigationController?.navigationBar.topItem?.title = "LOGO" self.navigationController?.navigationBar.topItem?.title = "LOGO"
self.navigationController?.navigationItem.title = "LOGO"*/ self.navigationController?.navigationItem.title = "LOGO"*/
// self.view.removeFromSuperview() // self.view.removeFromSuperview()
buttonDoIt.isHidden = false
self.navigationController?.setNavigationBarHidden(true, animated: animated) self.navigationController?.setNavigationBarHidden(true, animated: animated)
} }
...@@ -233,10 +242,9 @@ class MainViewController: UIViewController, UITextFieldDelegate, MKMapViewDelega ...@@ -233,10 +242,9 @@ class MainViewController: UIViewController, UITextFieldDelegate, MKMapViewDelega
} }
func addBottomSheetView() { func addBottomSheetView() {
buttonDoIt.isHidden = true
// 1- Init bottomSheetVC // 1- Init bottomSheetVC
bottomSheetVC = SmallListWorkVC() bottomSheetVC = SmallListWorkVC()
// mapView.isHidden = true // mapView.isHidden = true
// bottomView.isHidden = true // bottomView.isHidden = true
// 2- Add bottomSheetVC as a child view // 2- Add bottomSheetVC as a child view
...@@ -244,7 +252,6 @@ class MainViewController: UIViewController, UITextFieldDelegate, MKMapViewDelega ...@@ -244,7 +252,6 @@ class MainViewController: UIViewController, UITextFieldDelegate, MKMapViewDelega
self.addChild(bottomSheetVC!) self.addChild(bottomSheetVC!)
self.view.addSubview(bottomSheetVC!.view) self.view.addSubview(bottomSheetVC!.view)
bottomSheetVC!.didMove(toParent: self) bottomSheetVC!.didMove(toParent: self)
// 3- Adjust bottomSheet frame and initial position. // 3- Adjust bottomSheet frame and initial position.
let height = view.frame.height let height = view.frame.height
let width = view.frame.width let width = view.frame.width
......
...@@ -55,17 +55,55 @@ class MapViewController: UIViewController, MKMapViewDelegate { ...@@ -55,17 +55,55 @@ class MapViewController: UIViewController, MKMapViewDelegate {
indexNameImageIconMap = 0 } indexNameImageIconMap = 0 }
mapView.addAnnotation(annotations) mapView.addAnnotation(annotations)
} }
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
override func viewWillAppear(_ animated:Bool) {
super.viewWillAppear(animated)
override func viewDidAppear(_ animated:Bool) {
super.viewDidAppear(animated)
locationManager.checkLocationEnable() locationManager.checkLocationEnable()
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 0 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)]
self.navigationController?.navigationItem.hidesBackButton = true
navigationController?.navigationBar.titleTextAttributes =
[.foregroundColor:UIColor(red: 0 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)]
title = "Work location"
self.navigationController?.navigationBar.topItem?.title = "Work location"
self.navigationController?.navigationItem.title = "Work location"
self.navigationController?.setNavigationBarHidden(false, animated: animated)
} }
func setBarButtom(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.back), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc
func back() {
self.navigationController?.setNavigationBarHidden(true, animated: false)
navigationController?.popViewController( animated: true)
//let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
// navigationController?.pushViewController(firstVC, animated: true)
}
@IBAction func longPress(_ sender: Any) { @IBAction func longPress(_ sender: Any) {
let pressPoint = (sender as AnyObject).location(in:mapView) let pressPoint = (sender as AnyObject).location(in:mapView)
......
...@@ -22,6 +22,7 @@ class PlumViewController: UIViewController, UITableViewDataSource, ...@@ -22,6 +22,7 @@ class PlumViewController: UIViewController, UITableViewDataSource,
@IBOutlet weak var addressView: UIView! @IBOutlet weak var addressView: UIView!
@IBAction func pressButtonAddress(_ sender: Any) { @IBAction func pressButtonAddress(_ sender: Any) {
let storyboard = UIStoryboard(name: "Main", bundle: nil) let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "Map") let vc = storyboard.instantiateViewController(withIdentifier: "Map")
...@@ -42,18 +43,20 @@ class PlumViewController: UIViewController, UITableViewDataSource, ...@@ -42,18 +43,20 @@ class PlumViewController: UIViewController, UITableViewDataSource,
tableView.delegate = self tableView.delegate = self
tableView.dataSource = self // buttonBookNow.becomeFirstResponder(); tableView.dataSource = self // buttonBookNow.becomeFirstResponder();
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated) super.viewWillAppear(animated)
self.navigationController?.setNavigationBarHidden(false, animated: animated)
title = "Emergency plumbers" title = "Emergency plumbers"
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 255 / 255, green: 94 / 255, blue: 58 / 255, alpha: 1.0)] navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 255 / 255, green: 94 / 255, blue: 58 / 255, alpha: 1.0)]
let item1 = setBarButtom(str: "akar-icons_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtom(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
func setBarButtom(str:String)->UIBarButtonItem { func setBarButtom(str:String)->UIBarButtonItem {
...@@ -64,7 +67,25 @@ class PlumViewController: UIViewController, UITableViewDataSource, ...@@ -64,7 +67,25 @@ class PlumViewController: UIViewController, UITableViewDataSource,
let item1 = UIBarButtonItem(customView: btn1) let item1 = UIBarButtonItem(customView: btn1)
return item1 return item1
} }
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc
func back() { //// self.dismiss(animated: true, completion: nil)
navigationController?.popViewController( animated: true)
}
@IBAction func pressBookNow(_ sender: Any) { @IBAction func pressBookNow(_ sender: Any) {
let storyboard = UIStoryboard(name: "Main", bundle: nil) let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc:UIViewController let vc:UIViewController
...@@ -76,10 +97,7 @@ class PlumViewController: UIViewController, UITableViewDataSource, ...@@ -76,10 +97,7 @@ class PlumViewController: UIViewController, UITableViewDataSource,
navigationController?.pushViewController(vc, animated: true) navigationController?.pushViewController(vc, animated: true)
} }
@objc
func back() { //// self.dismiss(animated: true, completion: nil)
navigationController?.popViewController( animated: true)
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1 return 1
......
...@@ -32,7 +32,7 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie ...@@ -32,7 +32,7 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie
@IBOutlet weak var tableview: UITableView! @IBOutlet weak var tableview: UITableView!
@IBOutlet weak var textViewDesc: UITextView! @IBOutlet weak var textViewDesc: UITextView!
var countPhotoPlumber = 0
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
...@@ -44,6 +44,10 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie ...@@ -44,6 +44,10 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie
tableview.dataSource = self tableview.dataSource = self
textViewDesc.delegate = self textViewDesc.delegate = self
settingsLauncher.delegate = self settingsLauncher.delegate = self
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
//glide setup //glide setup
setup() setup()
glidingView.isHidden = true glidingView.isHidden = true
...@@ -52,15 +56,22 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie ...@@ -52,15 +56,22 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated) super.viewWillAppear(animated)
self.navigationController?.setNavigationBarHidden(false, animated: animated)
collectionView.reloadData() collectionView.reloadData()
collectionView.collectionViewLayout.invalidateLayout() collectionView.collectionViewLayout.invalidateLayout()
navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 0 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)] navigationController?.navigationBar.titleTextAttributes = [.foregroundColor:UIColor(red: 0 / 255, green: 0 / 255, blue: 0 / 255, alpha: 1.0)]
title = "Plumber" title = "Plumber"
let item1 = setBarButtom(str: "akar-icons_arrow-left") self.navigationController?.navigationBar.topItem?.title = "Plumber"
self.navigationItem.setLeftBarButtonItems([item1], animated: true) self.navigationController?.navigationItem.title = "Plumber"
countPhotoPlumber = (dataStorage?.loadWorkerData(flagWorker:1))! as Int
let item2 = setBarButtom(str: "gg_close") if countPhotoPlumber > 0 {
self.navigationItem.setRightBarButtonItems([item2], animated: true) images = dataStorage?.getImageArray(flag:1) as! [UIImage?]
if images.count > 0 {
glidingView.isHidden = false
addPhotoTopConstraint.constant = 109
collectionView.reloadData()
}
}
} }
func setBarButtom(str:String)->UIBarButtonItem { func setBarButtom(str:String)->UIBarButtonItem {
...@@ -71,15 +82,28 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie ...@@ -71,15 +82,28 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie
let item1 = UIBarButtonItem(customView: btn1) let item1 = UIBarButtonItem(customView: btn1)
return item1 return item1
} }
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc @objc
func back() { func back() {
//navigationController?.popViewController( animated: true) navigationController?.popViewController( animated: true)
//let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
// navigationController?.pushViewController(firstVC, animated: true)
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo") let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true) navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
} }
@IBAction func pressAddPhoto(_ sender: Any) { @IBAction func pressAddPhoto(_ sender: Any) {
guard let navVC = self.navigationController guard let navVC = self.navigationController
else { return } else { return }
...@@ -92,11 +116,11 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie ...@@ -92,11 +116,11 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie
@IBAction func BOOK_NOW_Click(_ sender: Any) { @IBAction func BOOK_NOW_Click(_ sender: Any) {
let storyboard = UIStoryboard(name: "Main", bundle: nil) let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc:UIViewController let vc:UIViewController
if #available(iOS 13.0, *) { // if #available(iOS 13.0, *) {
vc = storyboard.instantiateViewController(identifier: "BookingVK") as! VKBookingViewController // vc = storyboard.instantiateViewController(identifier: "BookingVK") as! VKBookingViewController
} else { // } else {
vc = storyboard.instantiateViewController(withIdentifier: "BookingVK") vc = storyboard.instantiateViewController(withIdentifier: "BookingVK")
} // }
navigationController?.pushViewController(vc, animated: true) navigationController?.pushViewController(vc, animated: true)
} }
...@@ -104,6 +128,17 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie ...@@ -104,6 +128,17 @@ class PlumbersViewController: UIViewController,UITableViewDataSource, UITableVie
textViewDesc.resignFirstResponder() textViewDesc.resignFirstResponder()
} }
func tableView(_ tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int) {
// Создаём константу, именна через неё мы будем обращаться к свойствам и изменять их
let header = view as! UITableViewHeaderFooterView
// Установить цвет текста в label
header.textLabel?.textColor = .black
// Установить цвет фона для секции
header.tintColor = UIColor.white
// Установить шрифт и размер шрифта для label
// header.textLabel?.font = UIFont(name: "Helvetica-Regular", size: 15)
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1 return 1
} }
...@@ -203,15 +238,16 @@ extension PlumbersViewController:SettingsLauncherDelegate { ...@@ -203,15 +238,16 @@ extension PlumbersViewController:SettingsLauncherDelegate {
func settingsDelegateClick(img: UIImage?,selRow:Int,imgName:String?) { func settingsDelegateClick(img: UIImage?,selRow:Int,imgName:String?) {
if img != nil { if img != nil {
images.append(img!) images.append(img!)
collectionView.reloadData() collectionView.reloadData()
if imgName != nil { if imgName != nil {
listImageGalery.append(imgName!) listImageGalery.append(imgName!)
dataStorage?.addListImageGalery(image: img!, imageName: imgName!, flagTypeGalery: 1)
} }
} }
else { else {
self.selRow = selRow self.selRow = selRow
} }
} }
} }
......
//
// StartNavigationVCViewController.swift
// Em-call
//
// Created by Alex Sh on 10.03.2022.
//
import UIKit
class StartNavigationVCViewController: UINavigationController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}
...@@ -31,17 +31,22 @@ class StartViewController: UIViewController { ...@@ -31,17 +31,22 @@ class StartViewController: UIViewController {
return return
} else { } else {
//debug //debug
let storyboard = UIStoryboard(name: "Main", bundle: nil) // let storyboard = UIStoryboard(name: "Main", bundle: nil)
// var vc:UIViewController // var vc:UIViewController
// var vc:UINavigationController // var vc:UINavigationController
// let tabBar = storyboard.instantiateViewController(withIdentifier: "TabBar") // let tabBar = storyboard.instantiateViewController(withIdentifier: "TabBar")
let vc = storyboard.instantiateViewController(withIdentifier: "MainVC") as! MainVCViewController // let vc = storyboard.instantiateViewController(withIdentifier: "MainVC") as! MainVCViewController
// vc = storyboard.instantiateViewController(withIdentifier: "NaviMainVC") as! UINavigationController // vc = storyboard.instantiateViewController(withIdentifier: "NaviMainVC") as! UINavigationController
// vc = UINavigationController.init(rootViewController: tabBar) // vc = UINavigationController.init(rootViewController: tabBar)
//// vc.pushViewController(tabBar, animated: true) //// vc.pushViewController(tabBar, animated: true)
// self.present(vc, animated: true) // self.present(vc, animated: true)
//// self.present(tabBar, animated: true) //// self.present(tabBar, animated: true)
navigationController?.pushViewController(vc, animated: true) // navigationController?.pushViewController(vc, animated: true)
let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "NaviMainVC") as! UINavigationController
// vc = UINavigationController.init(rootViewController: tabBar)
//// vc.pushViewController(tabBar, animated: true)
navigationController?.present(vc, animated: true, completion: nil)
} }
/* /*
let status = net.reqPostEnter(phone: number,code: psw) let status = net.reqPostEnter(phone: number,code: psw)
......
...@@ -34,29 +34,29 @@ class VKBookingViewController: UIViewController { ...@@ -34,29 +34,29 @@ class VKBookingViewController: UIViewController {
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
self.navigationItem.title = "BOOKING" // self.navigationItem.title = "BOOKING"
segmentControl.addTarget(self, action: #selector(segmentAction(_:)), for: .valueChanged) segmentControl.addTarget(self, action: #selector(segmentAction(_:)), for: .valueChanged)
viewBut.isHidden = true viewBut.isHidden = true
butCost.isHidden = true butCost.isHidden = true
butPrice.isHidden = true butPrice.isHidden = true
viewTop.isHidden = false viewTop.isHidden = false
let item1 = setBarButtom(str: "black_arrow-left")
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtomClose(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
hideKeyboardWhenTappedAround() hideKeyboardWhenTappedAround()
} }
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
self.navigationController?.setNavigationBarHidden(false, animated: animated)
self.navigationController?.navigationItem.hidesBackButton = true self.navigationController?.navigationItem.hidesBackButton = true
//navigationItem.hidesBackButton = true //navigationItem.hidesBackButton = true
self.navigationController?.navigationBar.topItem?.title = "BOOKING" self.navigationController?.navigationBar.topItem?.title = "BOOKING"
self.navigationController?.navigationItem.title = "BOOKING" self.navigationController?.navigationItem.title = "BOOKING"
title = "BOOKING"
self.navigationController?.navigationBar.titleTextAttributes = [.foregroundColor : UIColor.black] self.navigationController?.navigationBar.titleTextAttributes = [.foregroundColor : UIColor.black]
self.navigationController?.navigationBar.barTintColor = UIColor.white self.navigationController?.navigationBar.barTintColor = UIColor.white
let item1 = setBarButtom(str: "akar-icons_arrow-left") self.navigationController?.setNavigationBarHidden(false, animated: animated)
self.navigationItem.setLeftBarButtonItems([item1], animated: true)
let item2 = setBarButtom(str: "gg_close")
self.navigationItem.setRightBarButtonItems([item2], animated: true)
} }
func setBarButtom(str:String)->UIBarButtonItem { func setBarButtom(str:String)->UIBarButtonItem {
...@@ -67,8 +67,25 @@ class VKBookingViewController: UIViewController { ...@@ -67,8 +67,25 @@ class VKBookingViewController: UIViewController {
let item1 = UIBarButtonItem(customView: btn1) let item1 = UIBarButtonItem(customView: btn1)
return item1 return item1
} }
func setBarButtomClose(str:String)->UIBarButtonItem {
let btn1 = UIButton(type: .custom)
btn1.setImage(UIImage(named: str), for: .normal)
btn1.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
btn1.addTarget(self, action: #selector(self.backToMain), for: .touchUpInside)
let item1 = UIBarButtonItem(customView: btn1)
return item1
}
@objc
func backToMain() {
let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Logo")
//navigationController?.popViewController( animated: true)
navigationController?.pushViewController(firstVC, animated: true)
// navigationController?.popToRootViewController(animated: true)
}
@objc @objc
func back() { func back() {
self.navigationController?.setNavigationBarHidden(true, animated: false)
navigationController?.popViewController( animated: true) navigationController?.popViewController( animated: true)
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment