diff options
author | Roeland Jago Douma <rullzer@owncloud.com> | 2015-10-31 15:39:08 +0300 |
---|---|---|
committer | Roeland Jago Douma <rullzer@owncloud.com> | 2015-11-04 14:53:02 +0300 |
commit | 37098c96f932babe1270d74a93e82e3916af4575 (patch) | |
tree | b90af0602ca7fbe003f790352a1f067e12511550 /src/gui/ocssharejob.cpp | |
parent | 43800e3d1c01bb74310b0c33901289ea0c47a8cf (diff) |
[Sharing] Add setpermission to sharing code
For user/group/remote shares we were just missing the setPermissions
functionality
Diffstat (limited to 'src/gui/ocssharejob.cpp')
-rw-r--r-- | src/gui/ocssharejob.cpp | 36 |
1 files changed, 30 insertions, 6 deletions
diff --git a/src/gui/ocssharejob.cpp b/src/gui/ocssharejob.cpp index fe6afa65f..37ca5aa39 100644 --- a/src/gui/ocssharejob.cpp +++ b/src/gui/ocssharejob.cpp @@ -83,26 +83,50 @@ void OcsShareJob::setPublicUpload(const QString &shareId, bool publicUpload) start(); } -void OcsShareJob::createShare(const QString &path, Share::ShareType shareType, const QString &password, const QDate &date) +void OcsShareJob::setPermissions(const QString &shareId, + const Share::Permissions permissions) +{ + appendPath(shareId); + setVerb("PUT"); + + addParam(QString::fromLatin1("permissions"), QString::number(permissions)); + _value = (int)permissions; + + start(); +} + +void OcsShareJob::createLinkShare(const QString &path, + const QString &password) { setVerb("POST"); addParam(QString::fromLatin1("path"), path); - addParam(QString::fromLatin1("shareType"), QString::number(static_cast<int>(shareType))); + addParam(QString::fromLatin1("shareType"), QString::number(Share::TypeLink)); if (!password.isEmpty()) { addParam(QString::fromLatin1("password"), password); } - if (date.isValid()) { - addParam(QString::fromLatin1("expireDate"), date.toString("yyyy-MM-dd")); - } - addPassStatusCode(403); start(); } +void OcsShareJob::createShare(const QString& path, + const Share::ShareType shareType, + const QString& shareWith, + const Share::Permissions permissions) +{ + setVerb("POST"); + + addParam(QString::fromLatin1("path"), path); + addParam(QString::fromLatin1("shareType"), QString::number(shareType)); + addParam(QString::fromLatin1("shareWith"), shareWith); + addParam(QString::fromLatin1("permissions"), QString::number(permissions)); + + start(); +} + void OcsShareJob::jobDone(QVariantMap reply) { emit shareJobFinished(reply, _value); |