File indexing completed on 2024-09-29 04:28:04
0001 // SPDX-FileCopyrightText: 2022 Tobias Fella <tobias.fella@kde.org> 0002 // SPDX-License-Identifier: LGPL-2.0-or-later 0003 0004 #include "pollevent.h" 0005 0006 using namespace Quotient; 0007 0008 PollStartEvent::PollStartEvent(const QJsonObject &obj) 0009 : RoomEvent(obj) 0010 { 0011 } 0012 0013 int PollStartEvent::maxSelections() const 0014 { 0015 return contentJson()["org.matrix.msc3381.poll.start"_ls]["max_selections"_ls].toInt(); 0016 } 0017 0018 QString PollStartEvent::question() const 0019 { 0020 return contentJson()["org.matrix.msc3381.poll.start"_ls]["question"_ls]["body"_ls].toString(); 0021 } 0022 0023 PollResponseEvent::PollResponseEvent(const QJsonObject &obj) 0024 : RoomEvent(obj) 0025 { 0026 } 0027 0028 PollEndEvent::PollEndEvent(const QJsonObject &obj) 0029 : RoomEvent(obj) 0030 { 0031 } 0032 0033 PollResponseEvent::PollResponseEvent(const QString &pollStartEventId, QStringList responses) 0034 : RoomEvent(basicJson(TypeId, 0035 {{"org.matrix.msc3381.poll.response"_ls, QJsonObject{{"answers"_ls, QJsonArray::fromStringList(responses)}}}, 0036 {"m.relates_to"_ls, QJsonObject{{"rel_type"_ls, "m.reference"_ls}, {"event_id"_ls, pollStartEventId}}}})) 0037 { 0038 }