diff --git a/ddpRequests/rocketchatchangeuserpresencedefaultstatus.cpp b/ddpRequests/rocketchatchangeuserpresencedefaultstatus.cpp new file mode 100644 index 0000000000000000000000000000000000000000..bdea6037502bc3b104bb44d3df13d551b4d76b72 --- /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 0000000000000000000000000000000000000000..0bc72603eb8366af830b6d275b7b2c384c5ba4df --- /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 0000000000000000000000000000000000000000..b6e356c5c674630035e37fbe5616182a0e209d30 --- /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