Merge pull request #784 from ekeitho/develop

subject mail populated when user shares >>file/folder<<
This commit is contained in:
jabarros 2014-12-26 09:04:02 +01:00
commit f0905fbaac
3 changed files with 14 additions and 2 deletions

View file

@ -325,4 +325,8 @@
<string name="prefs_instant_video_upload_path_title">Upload Video Path</string>
<string name="shared_subject_header">shared</string>
<string name="with_you_subject_header">with you</string>
<string name="subject_token">%1$s %2$s &gt;&gt;%3$s&lt;&lt; %4$s</string>
</resources>

View file

@ -24,8 +24,10 @@ package com.owncloud.android.operations;
*
*/
import android.content.Context;
import android.content.Intent;
import com.owncloud.android.R;
import com.owncloud.android.datamodel.FileDataStorageManager;
import com.owncloud.android.datamodel.OCFile;
import com.owncloud.android.lib.common.OwnCloudClient;
@ -46,6 +48,7 @@ public class CreateShareOperation extends SyncOperation {
protected FileDataStorageManager mStorageManager;
private Context mContext;
private String mPath;
private ShareType mShareType;
private String mShareWith;
@ -56,6 +59,7 @@ public class CreateShareOperation extends SyncOperation {
/**
* Constructor
* @param context The context that the share is coming from.
* @param path Full path of the file/folder being shared. Mandatory argument
* @param shareType 0 = user, 1 = group, 3 = Public link. Mandatory argument
* @param shareWith User/group ID with who the file should be shared. This is mandatory for shareType of 0 or 1
@ -72,9 +76,10 @@ public class CreateShareOperation extends SyncOperation {
* To obtain combinations, add the desired values together.
* For instance, for Re-Share, delete, read, update, add 16+8+2+1 = 27.
*/
public CreateShareOperation(String path, ShareType shareType, String shareWith, boolean publicUpload,
public CreateShareOperation(Context context, String path, ShareType shareType, String shareWith, boolean publicUpload,
String password, int permissions, Intent sendIntent) {
mContext = context;
mPath = path;
mShareType = shareType;
mShareWith = shareWith;
@ -128,6 +133,9 @@ public class CreateShareOperation extends SyncOperation {
OCFile file = getStorageManager().getFileByPath(mPath);
if (file!=null) {
mSendIntent.putExtra(Intent.EXTRA_TEXT, share.getShareLink());
mSendIntent.putExtra(Intent.EXTRA_SUBJECT, String.format(mContext.getString(R.string.subject_token),
getClient().getCredentials().getUsername(), mContext.getString(R.string.shared_subject_header),
file.getFileName(), mContext.getString(R.string.with_you_subject_header)));
file.setPublicLink(share.getShareLink());
file.setShareByLink(true);
getStorageManager().saveFile(file);

View file

@ -319,7 +319,7 @@ public class OperationsService extends Service {
String remotePath = operationIntent.getStringExtra(EXTRA_REMOTE_PATH);
Intent sendIntent = operationIntent.getParcelableExtra(EXTRA_SEND_INTENT);
if (remotePath.length() > 0) {
operation = new CreateShareOperation(remotePath, ShareType.PUBLIC_LINK,
operation = new CreateShareOperation(OperationsService.this, remotePath, ShareType.PUBLIC_LINK,
"", false, "", 1, sendIntent);
}