Introduce a task, public flag don't allow editing other people's public tasks

pull/14/head
Sam Bosley 14 years ago
parent c6e15bc251
commit 7b997f36cd

@ -171,6 +171,9 @@ public final class Task extends RemoteModel {
/** whether task is read-only */
public static final int FLAG_IS_READONLY = 1 << 2;
/** whether a task is public */
public static final int FLAG_PUBLIC = 1 << 3;
// --- user id special values
/** user id = doesn't exist/ignore it. For filtering in tags */

@ -1404,6 +1404,9 @@ public final class ActFmSyncService {
model.setFlag(Task.FLAGS, Task.FLAG_REPEAT_AFTER_COMPLETION, true);
else
model.setFlag(Task.FLAGS, Task.FLAG_REPEAT_AFTER_COMPLETION, false);
String privacy = json.optString("privacy");
model.setFlag(Task.FLAGS, Task.FLAG_PUBLIC, privacy.equals("public"));
model.setValue(Task.NOTES, json.optString("notes", ""));
model.setValue(Task.DETAILS_DATE, 0L);
model.setValue(Task.LAST_SYNC, DateUtilities.now() + 1000L);

@ -1048,7 +1048,8 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
return;
long taskId = viewHolder.task.getId();
if (!viewHolder.task.getFlag(Task.FLAGS, Task.FLAG_IS_READONLY)) {
if (!viewHolder.task.getFlag(Task.FLAGS, Task.FLAG_IS_READONLY) &&
!(viewHolder.task.getFlag(Task.FLAGS, Task.FLAG_PUBLIC) && viewHolder.task.getValue(Task.USER_ID) != Task.USER_ID_SELF)) {
editTask(taskId);
}
}

Loading…
Cancel
Save