[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kdepim-addons] plugins/messageviewer/bodypartformatter/semantic: Don't parse the ticket token conte
From:       Volker Krause <null () kde ! org>
Date:       2018-04-29 7:15:36
Message-ID: E1fCgYa-0007Ef-OU () code ! kde ! org
[Download RAW message or body]

Git commit 7ec2b95bd6aae9a4a522cdaddde9f9f1c5e58853 by Volker Krause.
Committed on 29/04/2018 at 07:14.
Pushed by vkrause into branch 'master'.

Don't parse the ticket token content manually here

M  +12   -8    plugins/messageviewer/bodypartformatter/semantic/semanticrenderer.cpp

https://commits.kde.org/kdepim-addons/7ec2b95bd6aae9a4a522cdaddde9f9f1c5e58853

diff --git a/plugins/messageviewer/bodypartformatter/semantic/semanticrenderer.cpp \
b/plugins/messageviewer/bodypartformatter/semantic/semanticrenderer.cpp index 521f5303..2c9f7c89 100644
--- a/plugins/messageviewer/bodypartformatter/semantic/semanticrenderer.cpp
+++ b/plugins/messageviewer/bodypartformatter/semantic/semanticrenderer.cpp
@@ -143,15 +143,19 @@ bool SemanticRenderer::render(const MimeTreeParser::MessagePartPtr &msgPart, Mes
         data.insert(QStringLiteral("state"), state);
 
         // generate ticket barcodes
-        const auto ticket = JsonLdDocument::readProperty(res, "reservedTicket");
-        const auto ticketToken = JsonLdDocument::readProperty(ticket, "ticketToken").toString();
+        const auto ticket = JsonLdDocument::readProperty(res, "reservedTicket").value<Ticket>();
         std::unique_ptr<Prison::AbstractBarcode> barcode;
-        if (ticketToken.startsWith(QLatin1String("azteccode:"), Qt::CaseInsensitive)) {
-            barcode.reset(Prison::createBarcode(Prison::Aztec));
-            barcode->setData(ticketToken.mid(10));
-        } else if (ticketToken.startsWith(QLatin1String("qrcode:"), Qt::CaseInsensitive)) {
-            barcode.reset(Prison::createBarcode(Prison::QRCode));
-            barcode->setData(ticketToken.mid(7));
+        switch (ticket.ticketTokenType()) {
+            case Ticket::AztecCode:
+                barcode.reset(Prison::createBarcode(Prison::Aztec));
+                barcode->setData(ticket.ticketTokenData());
+                break;
+            case Ticket::QRCode:
+                barcode.reset(Prison::createBarcode(Prison::QRCode));
+                barcode->setData(ticket.ticketTokenData());
+                break;
+            default:
+                break;
         }
         if (barcode) {
             barcode->toImage(barcode->minimumSize()); // minimumSize is only available after we rendered \
once...


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic