Skip to content

Commit

Permalink
Feature/ticketing (#126)
Browse files Browse the repository at this point in the history
* no message

* added new UI

* Ticketing solution logic update

- Added model to handle QR scan from ticket service
- Added blueprint of method to obtain list of auth services

* Refactored list of service method

* Implemented method to fetch list of services

* added new UI

* server list view controller

* Access token for ticketing

- Request implemented
- Model for response added

* added selected and deselected state

* List of services implemented

* Public key generation added

* Small refactoring to avoid crash

* AccessTokenRequest fixed

- Filtering for certificates added

* Selection code adjusted with model

* Comment removed

* fixed small UI bugs

* Consent screen added

- request for validation added

* Fixed UI part of selection of cert

* xnonce added

* Fixed navigation in wallet app

* Fixed navigation and cells. Added Certificate controller to navigation.

* Added services controller

* Remove obsolete sources

* Removed unnecessary fields

* minor fixes

* Replaced x-buttons

* Removed unnecessary code

* Validation request added

* Refactored ut8 string to base64decoded data

* Code clean up

* Identity services refactored

* Code clean up

* Validation Result view controller added

* fixed QR class

* Fixed navigation

* Fixed navigation

* Bug fix session

#108
#111
#113

* Added remove certificate functionality

* Added delete alert

* Fixed deleting

* Fixed reload bug in ListCertificates

* Add Developer Team

* Changed cert compare

* Fixed certificates table with edit

* Added 2 controller files to storyboard

* Fixed crash on verification result if no validation info passed

* Update project

* Scan Moved from Core

* Added viewers to storyboard

* Added remove messages to ImageViewer and PDF

* Fixed Remove action

* Removed xibs from controllers

* Minor fix storyboard

* Removed last xib

* Fixed deleting, crash with race and some textes

* Fix public in Date extention

* Added activity check

* Fixed crash with reload table

* Added flash of added item

* Added OK button

* Fixed rule cell

* Updated buttons

* Fixed Grant layout

* Minor fix

* Fix crash with adding certs

* minor fix

* Fix selecting of sertificates

* Added new version

* added logsto requests

* remove print

* Fixed posting certificates

* Added delete button

* Removed FloatingPanel, Added delete certificate button

* Finalized remove certificate

* Fixed layout

* Fixed deleting calbacks

* Removed FloatingPanel package

* Removed FloatingPanel resources

* removed unnecessary import directives

* Aded common core

* Removed errors with cert

* Fixed wallet app after core mege

* fix in project tree

* Access token info added on Certificate list screen

* fixed storyboards

* minor fixes

* Added activity indicator

* Added config

* Fixed navigation issues

* Fixed classe names in storyboards

* fixed fetch time

* Fixed reloadingData

* fixed storyboard - added reload cell

* Added reload after dismissing

* Fixed Scan of ticketing QR code

* minor changes in project tree

* Fixed page controller

* removed selected country code

* Fixed landscape orientation for iPad

* refactor UI cells

* increased build num

* temp data

* correct data

* fixed project settings

* Fixed issue - Certificate for Ticketing can not be found

* Added loading to confirm validity

* x5c type changed in PublicKeyJWK structure

Replaced x5c type of String with [String] in order to follow backend changes

* Refactor controller names and data managers

* fixed crash in ticketing

* Business data were removed from TicketingAcceptanceController controller

* Fixed back buttons

* added background

* Added Alerts to the Ticketing

* refactor project tree

* Replaced UserDefaults storage with keyChain

* removed queue from request

* Updated localization strings

* Changed in localizations

* Removed keys from Localization file

* Added Safe thread array.

* Fixed string format

* Added de-localization

* Added localisations to resource files

* Added app localised name

* Fixed localizations

* Added localized property. Added alert on save PDF, fixed alerts

* Optimised loading on main screen

* Fixed reload page on main screen

* Fixed layout in Image and PDF cells

* Fixed reload table on main screen

* upgrade version num

* Fixed Localized strings

* Added one line to localization

* Refactored Access Token functionality

* Added error processing to the ticketing

* Fix verification fields

* Fixed search of validation data

* Fixed main thread methods

* Fixed incorrect alert messages

* Updated localized strings

* Fixed json logic

* Added revocation to walllet

* removed database

* removed dismiss delegate (added timer)

Co-authored-by: Alexandr Chernyy <[email protected]>
Co-authored-by: Illia Vlasov <[email protected]>
Co-authored-by: Test <[email protected]>
Co-authored-by: ikhomiak <[email protected]>
  • Loading branch information
5 people authored Feb 28, 2022
1 parent 82ec657 commit e70994d
Show file tree
Hide file tree
Showing 118 changed files with 7,507 additions and 4,430 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -217,4 +217,5 @@ xcuserdata/
#


/Pods/
/Pods/
DGCAWallet.xcodeproj/project.xcworkspace/xcshareddata
9 changes: 3 additions & 6 deletions Context/Release/context.jsonc
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
{
// Origin in ISO alpha 2 code:
"origin": "DE",
"versions": {
"default": {
// catch-all for normal versions
"privacyUrl": "https://publications.europa.eu/en/web/about-us/legal-notices/eu-mobile-apps",
"context": {
"url": "https://dgca-issuance-web-eu-acc.cfapps.eu10.hana.ondemand.com/dgca-issuance-service/context",
Expand All @@ -21,21 +19,21 @@
]
},
"countryList": {
"url": "https://dgca-businessrule-service.cfapps.eu10.hana.ondemand.com/countrylist",
"url": "https://dgca-businessrule-service-eu-acc2.cfapps.eu10.hana.ondemand.com/countrylist",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
]
},
"rules": {
"url": "https://dgca-businessrule-service.cfapps.eu10.hana.ondemand.com/rules",
"url": "https://dgca-businessrule-service-eu-acc2.cfapps.eu10.hana.ondemand.com/rules",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
]
},
"valuesets": {
"url": "https://dgca-businessrule-service.cfapps.eu10.hana.ondemand.com/valuesets",
"url": "https://dgca-businessrule-service-eu-acc2.cfapps.eu10.hana.ondemand.com/valuesets",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
Expand All @@ -44,7 +42,6 @@
}
},
"0.1.0": {
// Example for a version that is insecure and shouldn't start.
"outdated": true
}
}
Expand Down
25 changes: 11 additions & 14 deletions Context/Test/context.jsonc
Original file line number Diff line number Diff line change
@@ -1,41 +1,39 @@
{
// Origin in ISO alpha 2 code:
"origin": "DE",
"versions": {
"default": {
// catch-all for normal versions
"privacyUrl": "https://publications.europa.eu/en/web/about-us/legal-notices/eu-mobile-apps",
"context": {
"url": "https://dgca-verifier-service.cfapps.eu10.hana.ondemand.com/context",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
]
},
"context": {
"url": "https://issuance-dgca-test.cfapps.eu10.hana.ondemand.com/dgca-issuance-service/context",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
]
},
"endpoints": {
"claim": {
"url": "https://issuance-dgca-test.cfapps.eu10.hana.ondemand.com/dgca-issuance-service/dgci/wallet/claim",
"url": "https://dgca-issuance-web-eu-test.cfapps.eu10.hana.ondemand.com/dgca-issuance-service/dgci/wallet/claim",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
]
},
"countryList": {
"url": "https://dgca-businessrule-service.cfapps.eu10.hana.ondemand.com/countrylist",
"url": "https://dgca-businessrule-service-eu-test.cfapps.eu10.hana.ondemand.com/countrylist",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
]
},
"rules": {
"url": "https://dgca-businessrule-service.cfapps.eu10.hana.ondemand.com/rules",
"url": "https://dgca-businessrule-service-eu-test.cfapps.eu10.hana.ondemand.com/rules",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
]
},
"valuesets": {
"url": "https://dgca-businessrule-service.cfapps.eu10.hana.ondemand.com/valuesets",
"url": "https://dgca-businessrule-service-eu-test.cfapps.eu10.hana.ondemand.com/valuesets",
"pubKeys": [
"lKdU1EbQubxyDDm2q3N8KclZ2C94Num3xXjG0pk+3eI=",
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="
Expand All @@ -44,7 +42,6 @@
}
},
"0.1.0": {
// Example for a version that is insecure and shouldn't start.
"outdated": true
}
}
Expand Down
711 changes: 426 additions & 285 deletions DGCAWallet.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

This file was deleted.

This file was deleted.

61 changes: 61 additions & 0 deletions DGCAWallet/Components/Cells/CertificateTVC.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
//
/*-
* ---license-start
* eu-digital-green-certificates / dgca-wallet-app-ios
* ---
* Copyright (C) 2021 T-Systems International GmbH and all other contributors
* ---
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ---license-end
*/
//
// CertificateCell.swift
// DGCAWallet
//
// Created by Alexandr Chernyy on 21.09.2021.
//
// Updated by Igor Khomiak on 11.10.2021.


import UIKit
import SwiftDGC

class CertificateCell: UITableViewCell {

@IBOutlet weak var nameLabel: UILabel!
@IBOutlet weak var descriptionLabel: UILabel!

private var hCert: HCert? {
didSet {
setupView()
}
}

private func setupView() {
if let hCert = hCert {
nameLabel.text = hCert.fullName
descriptionLabel.text = hCert.exp.dateString
} else {
nameLabel.text = ""
descriptionLabel.text = ""
}
}

public func setCertificate(cert: HCert) {
hCert = cert
}

override func prepareForReuse() {
hCert = nil
}
}
62 changes: 62 additions & 0 deletions DGCAWallet/Components/Cells/ServerTVC.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
//
/*-
* ---license-start
* eu-digital-green-certificates / dgca-wallet-app-ios
* ---
* Copyright (C) 2021 T-Systems International GmbH and all other contributors
* ---
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ---license-end
*/
//
// ServerCell.swift
// DGCAWallet
//
// Created by Alexandr Chernyy on 21.09.2021.
//
// Updated by Igor Khomiak on 11.10.2021.


import UIKit
import SwiftDGC

class ServerCell: UITableViewCell {

@IBOutlet weak var nameLabel: UILabel!
@IBOutlet weak var descriptionLabel: UILabel!

private var service: ValidationService? {
didSet {
setupView()
}
}

private func setupView() {
if let service = service {
nameLabel.text = service.name
descriptionLabel.text = service.serviceEndpoint
} else {
nameLabel.text = ""
descriptionLabel.text = ""
}
}

public func setService(serv: ValidationService) {
service = serv
}

override func prepareForReuse() {
service = nil
}

}
Loading

0 comments on commit e70994d

Please sign in to comment.