Fixed errors joining with users table for images

pull/14/head
Sam Bosley 12 years ago
parent 0ff8772a94
commit ddd029fc32

@ -96,6 +96,8 @@ abstract public class RemoteModel extends AbstractModel {
public static String getPictureUrlFromCursor(TodorooCursor<?> cursor, StringProperty pictureProperty, String size) {
String value = cursor.get(pictureProperty);
try {
if (value == null)
return null;
JSONObject pictureJson = new JSONObject(value);
return pictureJson.optString(size);
} catch (JSONException e) {

@ -38,7 +38,7 @@ public class UserActivity extends RemoteModel {
/** Pushed at */
public static final LongProperty PUSHED_AT = new LongProperty(
TABLE, "pushed_at", Property.PROP_FLAG_DATE);
TABLE, PUSHED_AT_PROPERTY_NAME, Property.PROP_FLAG_DATE);
/** User ID (activity initiator) */
public static final StringProperty USER_UUID = new StringProperty(

@ -54,6 +54,8 @@ import com.todoroo.astrid.actfm.ActFmCameraModule.CameraResultCallback;
import com.todoroo.astrid.actfm.ActFmCameraModule.ClearImageCallback;
import com.todoroo.astrid.actfm.sync.ActFmPreferenceService;
import com.todoroo.astrid.actfm.sync.ActFmSyncService;
import com.todoroo.astrid.actfm.sync.ActFmSyncThread;
import com.todoroo.astrid.actfm.sync.messages.BriefMe;
import com.todoroo.astrid.activity.TaskEditFragment;
import com.todoroo.astrid.adapter.UpdateAdapter;
import com.todoroo.astrid.core.PluginServices;
@ -413,6 +415,7 @@ public class EditNoteActivity extends LinearLayout implements TimerActionListene
callback.started();
callback.incrementMax(100);
}
ActFmSyncThread.getInstance().enqueueMessage(new BriefMe<Task>(Task.class, task.getUuid(), task.getValue(Task.PUSHED_AT)));
// actFmSyncService.fetchUpdatesForTask(task, manual, new Runnable() {

@ -972,7 +972,7 @@ public class TaskListFragment extends ListFragment implements OnScrollListener,
Task.ID.eq(Field.field(TR_METADATA_JOIN + "." + Metadata.TASK.name)))).toString() //$NON-NLS-1$
+ Join.left(Metadata.TABLE.as(TAGS_METADATA_JOIN),
tagsJoinCriterion).toString() //$NON-NLS-1$
+ Join.left(User.TABLE.as(USER_IMAGE_JOIN), Task.USER_ID.eq(User.UUID)).toString()
+ Join.left(User.TABLE.as(USER_IMAGE_JOIN), Task.USER_ID.eq(Field.field(USER_IMAGE_JOIN + "." + User.UUID.name))).toString()
+ filter.getSqlQuery();
sqlQueryTemplate.set(SortHelper.adjustQueryForFlagsAndSort(

@ -119,6 +119,8 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
@SuppressWarnings("nls")
private static final StringProperty TAGS = new StringProperty(null, "group_concat(" + TaskListFragment.TAGS_METADATA_JOIN + "." + TaskToTagMetadata.TAG_NAME.name + ", ' | ')").as("tags");
private static final StringProperty PICTURE = new StringProperty(User.TABLE.as(TaskListFragment.USER_IMAGE_JOIN), User.PICTURE.name);
// --- other constants
/** Properties that need to be read from the action item */
@ -142,7 +144,7 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
Task.USER,
Task.REMINDER_LAST,
Task.SOCIAL_REMINDER,
User.PICTURE,
PICTURE,
TASK_RABBIT_ID, // Task rabbit metadata id (non-zero means it exists)
TAGS // Concatenated list of tags
};
@ -393,7 +395,7 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
if (!titleOnlyLayout) {
viewHolder.isTaskRabbit = (cursor.get(TASK_RABBIT_ID) > 0);
viewHolder.tagsString = cursor.get(TAGS);
viewHolder.imageUrl = RemoteModel.getPictureUrlFromCursor(cursor, User.PICTURE, RemoteModel.PICTURE_THUMB);
viewHolder.imageUrl = RemoteModel.getPictureUrlFromCursor(cursor, PICTURE, RemoteModel.PICTURE_THUMB);
}
Task task = viewHolder.task;

Loading…
Cancel
Save