void ShareManager::fetchShares(const QString &path) { OcsShareJob *job = new OcsShareJob(_account); connect(job, SIGNAL(shareJobFinished(QVariantMap, QVariant)), SLOT(slotSharesFetched(QVariantMap))); connect(job, SIGNAL(ocsError(int, QString)), SLOT(slotOcsError(int, QString))); job->getShares(path); }
void Share::deleteShare() { OcsShareJob *job = new OcsShareJob(_account); connect(job, SIGNAL(shareJobFinished(QVariantMap, QVariant)), SLOT(slotDeleted())); connect(job, SIGNAL(ocsError(int, const QString &)), SLOT(slotOcsError(int, const QString &))); job->deleteShare(getId()); }
void LinkShare::setPassword(const QString &password) { OcsShareJob *job = new OcsShareJob(_account); connect(job, SIGNAL(shareJobFinished(QVariantMap, QVariant)), SLOT(slotPasswordSet(QVariantMap, QVariant))); connect(job, SIGNAL(ocsError(int, QString)), SLOT(slotOcsError(int, QString))); job->setPassword(getId(), password); }
void LinkShare::setExpireDate(const QDate &date) { OcsShareJob *job = new OcsShareJob(_account); connect(job, SIGNAL(shareJobFinished(QVariantMap, QVariant)), SLOT(slotExpireDateSet(QVariantMap, QVariant))); connect(job, SIGNAL(ocsError(int, QString)), SLOT(slotOcsError(int, QString))); job->setExpireDate(getId(), date); }
void LinkShare::setPublicUpload(bool publicUpload) { OcsShareJob *job = new OcsShareJob(_account); connect(job, SIGNAL(shareJobFinished(QVariantMap, QVariant)), SLOT(slotPublicUploadSet(QVariantMap, QVariant))); connect(job, SIGNAL(ocsError(int, QString)), SLOT(slotOcsError(int, QString))); job->setPublicUpload(getId(), publicUpload); }
void ShareManager::slotCreateShare(const QVariantMap &reply) { if (!_jobContinuation.contains(sender())) return; CreateShare cont = _jobContinuation[sender()].value<CreateShare>(); if (cont.path.isEmpty()) return; _jobContinuation.remove(sender()); // Find existing share permissions (if this was shared with us) Share::Permissions existingPermissions = SharePermissionDefault; foreach (const QVariant & element, reply["ocs"].toMap()["data"].toList()) { QVariantMap map = element.toMap(); if (map["file_target"] == cont.path) existingPermissions = Share::Permissions(map["permissions"].toInt()); } // Limit the permissions we request for a share to the ones the item // was shared with initially. if (cont.permissions == SharePermissionDefault) { cont.permissions = existingPermissions; } else if (existingPermissions != SharePermissionDefault) { cont.permissions &= existingPermissions; } OcsShareJob *job = new OcsShareJob(_account); connect(job, SIGNAL(shareJobFinished(QVariantMap, QVariant)), SLOT(slotShareCreated(QVariantMap))); connect(job, SIGNAL(ocsError(int, QString)), SLOT(slotOcsError(int, QString))); job->createShare(cont.path, cont.shareType, cont.shareWith, cont.permissions); }
void ShareManager::createLinkShare(const QString &path, const QString &password) { OcsShareJob *job = new OcsShareJob(_account); connect(job, SIGNAL(shareJobFinished(QVariantMap, QVariant)), SLOT(slotLinkShareCreated(QVariantMap))); connect(job, SIGNAL(ocsError(int, QString)), SLOT(slotOcsError(int, QString))); job->createLinkShare(path, password); }
void ShareManager::createShare(const QString& path, const Share::ShareType shareType, const QString shareWith, const Share::Permissions permissions) { OcsShareJob *job = new OcsShareJob(_account); connect(job, SIGNAL(shareJobFinished(QVariantMap, QVariant)), SLOT(slotShareCreated(QVariantMap))); connect(job, SIGNAL(ocsError(int, QString)), SLOT(slotOcsError(int, QString))); job->createShare(path, shareType, shareWith, permissions); }
void ShareManager::createShare(const QString& path, const Share::ShareType shareType, const QString shareWith, const Share::Permissions permissions) { auto job = new OcsShareJob(_account); // Store values that we need for creating this share later. CreateShare continuation; continuation.path = path; continuation.shareType = shareType; continuation.shareWith = shareWith; continuation.permissions = permissions; _jobContinuation[job] = QVariant::fromValue(continuation); connect(job, SIGNAL(shareJobFinished(QVariantMap,QVariant)), SLOT(slotCreateShare(QVariantMap))); connect(job, SIGNAL(ocsError(int,QString)), SLOT(slotOcsError(int,QString))); job->getSharedWithMe(); }
void OcsShareJob::jobDone(QJsonDocument reply) { emit shareJobFinished(reply, _value); }
void OcsShareJob::jobDone(QVariantMap reply) { emit shareJobFinished(reply, _value); }