From 7d69e1592eb9945512a9858cf467cea4b0d8f04b Mon Sep 17 00:00:00 2001 From: Armin Felder <armin.felder@osalliance.com> Date: Tue, 13 Nov 2018 00:31:11 +0100 Subject: [PATCH] missing ddp methods --- ...ketchatchangeuserpresencedefaultstatus.cpp | 45 +++++++++++++++++++ .../rocketchatchangeuserpresencestatus.cpp | 44 ++++++++++++++++++ .../rocketchatchangeuserpresencestatus.h | 37 +++++++++++++++ 3 files changed, 126 insertions(+) create mode 100644 ddpRequests/rocketchatchangeuserpresencedefaultstatus.cpp create mode 100644 ddpRequests/rocketchatchangeuserpresencestatus.cpp create mode 100644 ddpRequests/rocketchatchangeuserpresencestatus.h diff --git a/ddpRequests/rocketchatchangeuserpresencedefaultstatus.cpp b/ddpRequests/rocketchatchangeuserpresencedefaultstatus.cpp new file mode 100644 index 0000000..bdea603 --- /dev/null +++ b/ddpRequests/rocketchatchangeuserpresencedefaultstatus.cpp @@ -0,0 +1,45 @@ +/******************************************************************************************** + * * + * Copyright (C) 2017 Armin Felder, Dennis Beier * + * This file is part of RocketChatMobileEngine <https://git.fairkom.net/chat/fairchat>. * + * * + * RocketChatMobileEngine is free software: you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation, either version 3 of the License, or * + * (at your option) any later version. * + * * + * RocketChatMobileEngine is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with RocketChatMobileEngine. If not, see <http://www.gnu.org/licenses/>. * + * * + ********************************************************************************************/ + + +#include "rocketchatchangeuserpresencedefaultstatus.h" +#include "repos/entities/rocketchatuser.h" + +RocketChatChangeUserPresenceDefaultStatus::RocketChatChangeUserPresenceDefaultStatus( const RocketChatUser::status &pStatus ) +{ + QJsonArray params; + + QString statusText; + + if ( pStatus == RocketChatUser::status::AWAY ) { + statusText = QStringLiteral( "away" ); + } else if ( pStatus == RocketChatUser::status::ONLINE ) { + statusText = QStringLiteral( "online" ); + } else if ( pStatus == RocketChatUser::status::OFFLINE ) { + statusText = QStringLiteral( "offline" ); + } else if ( pStatus == RocketChatUser::status::BUSY ) { + statusText = QStringLiteral( "busy" ); + } + + params.append( statusText ); + + buildRequest( QStringLiteral( "UserPresence:setDefaultStatus" ), params ); +} + diff --git a/ddpRequests/rocketchatchangeuserpresencestatus.cpp b/ddpRequests/rocketchatchangeuserpresencestatus.cpp new file mode 100644 index 0000000..0bc7260 --- /dev/null +++ b/ddpRequests/rocketchatchangeuserpresencestatus.cpp @@ -0,0 +1,44 @@ +/******************************************************************************************** + * * + * Copyright (C) 2017 Armin Felder, Dennis Beier * + * This file is part of RocketChatMobileEngine <https://git.fairkom.net/chat/fairchat>. * + * * + * RocketChatMobileEngine is free software: you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation, either version 3 of the License, or * + * (at your option) any later version. * + * * + * RocketChatMobileEngine is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with RocketChatMobileEngine. If not, see <http://www.gnu.org/licenses/>. * + * * + ********************************************************************************************/ + + +#include "rocketchatchangeuserpresencestatus.h" +#include "repos/entities/rocketchatuser.h" + +RocketChatChangeUserPresenceStatus::RocketChatChangeUserPresenceStatus( const RocketChatUser::status &pStatus ) +{ + QJsonArray params; + + QString statusText; + + if ( pStatus == RocketChatUser::status::AWAY ) { + statusText = QStringLiteral( "away" ); + } else if ( pStatus == RocketChatUser::status::ONLINE ) { + statusText = QStringLiteral( "online" ); + } else if ( pStatus == RocketChatUser::status::OFFLINE ) { + statusText = QStringLiteral( "offline" ); + } else if ( pStatus == RocketChatUser::status::BUSY ) { + statusText = QStringLiteral( "busy" ); + } + + params.append( QJsonValue::Null ); + + buildRequest( QStringLiteral( "UserPresence:" ) + statusText, params ); +} diff --git a/ddpRequests/rocketchatchangeuserpresencestatus.h b/ddpRequests/rocketchatchangeuserpresencestatus.h new file mode 100644 index 0000000..b6e356c --- /dev/null +++ b/ddpRequests/rocketchatchangeuserpresencestatus.h @@ -0,0 +1,37 @@ +/******************************************************************************************** + * * + * Copyright (C) 2017 Armin Felder, Dennis Beier * + * This file is part of RocketChatMobileEngine <https://git.fairkom.net/chat/fairchat>. * + * * + * RocketChatMobileEngine is free software: you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation, either version 3 of the License, or * + * (at your option) any later version. * + * * + * RocketChatMobileEngine is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with RocketChatMobileEngine. If not, see <http://www.gnu.org/licenses/>. * + * * + ********************************************************************************************/ + + +#ifndef ROCKETCHATCHANGEUSERPRESANCESTATUS_H +#define ROCKETCHATCHANGEUSERPRESANCESTATUS_H + +#include "ddpmethodrequest.h" +#include "repos/entities/rocketchatuser.h" + + +class RocketChatChangeUserPresenceStatus: public DDPMethodRequest +{ + public: + + RocketChatChangeUserPresenceStatus( const RocketChatUser::status &pStatus ); + +}; + +#endif // ROCKETCHATCHANGEUSERPRESANCEDEFAULTSTATUS_H -- GitLab