mirror of
https://github.com/zulip/zulip.git
synced 2025-11-06 06:53:25 +00:00
drafts: Use lists instead of dicts.
We were using a dict to return a sorted list of formatted drafts, instead of building a list.
This commit is contained in:
@@ -255,8 +255,8 @@ run_test('format_drafts', () => {
|
|||||||
updatedAt: new Date(1549958107000).setDate(-2),
|
updatedAt: new Date(1549958107000).setDate(-2),
|
||||||
};
|
};
|
||||||
|
|
||||||
var expected = {
|
var expected = [
|
||||||
id3: {
|
{
|
||||||
draft_id: 'id3',
|
draft_id: 'id3',
|
||||||
is_stream: true,
|
is_stream: true,
|
||||||
stream: 'stream 2',
|
stream: 'stream 2',
|
||||||
@@ -265,28 +265,28 @@ run_test('format_drafts', () => {
|
|||||||
raw_content: 'Test Stream Message 2',
|
raw_content: 'Test Stream Message 2',
|
||||||
time_stamp: 'Jan 21',
|
time_stamp: 'Jan 21',
|
||||||
},
|
},
|
||||||
id4: {
|
{
|
||||||
draft_id: 'id4',
|
draft_id: 'id4',
|
||||||
is_stream: false,
|
is_stream: false,
|
||||||
recipients: 'aaron',
|
recipients: 'aaron',
|
||||||
raw_content: 'Test Private Message 2',
|
raw_content: 'Test Private Message 2',
|
||||||
time_stamp: 'Jan 26',
|
time_stamp: 'Jan 26',
|
||||||
},
|
},
|
||||||
id5: {
|
{
|
||||||
draft_id: 'id5',
|
draft_id: 'id5',
|
||||||
is_stream: false,
|
is_stream: false,
|
||||||
recipients: 'aaron',
|
recipients: 'aaron',
|
||||||
raw_content: 'Test Private Message 3',
|
raw_content: 'Test Private Message 3',
|
||||||
time_stamp: 'Jan 29',
|
time_stamp: 'Jan 29',
|
||||||
},
|
},
|
||||||
id2: {
|
{
|
||||||
draft_id: 'id2',
|
draft_id: 'id2',
|
||||||
is_stream: false,
|
is_stream: false,
|
||||||
recipients: 'aaron',
|
recipients: 'aaron',
|
||||||
raw_content: 'Test Private Message',
|
raw_content: 'Test Private Message',
|
||||||
time_stamp: 'Jan 30',
|
time_stamp: 'Jan 30',
|
||||||
},
|
},
|
||||||
id1: {
|
{
|
||||||
draft_id: 'id1',
|
draft_id: 'id1',
|
||||||
is_stream: true,
|
is_stream: true,
|
||||||
stream: 'stream',
|
stream: 'stream',
|
||||||
@@ -295,7 +295,7 @@ run_test('format_drafts', () => {
|
|||||||
raw_content: 'Test Stream Message',
|
raw_content: 'Test Stream Message',
|
||||||
time_stamp: '7:55 AM',
|
time_stamp: '7:55 AM',
|
||||||
},
|
},
|
||||||
};
|
];
|
||||||
|
|
||||||
blueslip.error = noop;
|
blueslip.error = noop;
|
||||||
$('#drafts_table').append = noop;
|
$('#drafts_table').append = noop;
|
||||||
|
|||||||
@@ -202,17 +202,18 @@ exports.remove_old_drafts = remove_old_drafts;
|
|||||||
|
|
||||||
exports.launch = function () {
|
exports.launch = function () {
|
||||||
function format_drafts(data) {
|
function format_drafts(data) {
|
||||||
var drafts = {};
|
|
||||||
var data_array = [];
|
|
||||||
_.each(data, function (draft, id) {
|
_.each(data, function (draft, id) {
|
||||||
data_array.push([id, data[id]]);
|
draft.id = id;
|
||||||
});
|
});
|
||||||
var data_sorted = data_array.sort(function (draft_a, draft_b) {
|
|
||||||
return draft_a[1].updatedAt - draft_b[1].updatedAt;
|
var unsorted_raw_drafts = _.values(data);
|
||||||
|
|
||||||
|
var sorted_raw_drafts = unsorted_raw_drafts.sort(function (draft_a, draft_b) {
|
||||||
|
return draft_a.updatedAt - draft_b.updatedAt;
|
||||||
});
|
});
|
||||||
_.each(data_sorted, function (data_element) {
|
|
||||||
var draft = data_element[1];
|
function format_draft(draft) {
|
||||||
var id = data_element[0];
|
var id = draft.id;
|
||||||
var formatted;
|
var formatted;
|
||||||
var time = new XDate(draft.updatedAt);
|
var time = new XDate(draft.updatedAt);
|
||||||
var time_stamp = timerender.render_now(time).time_str;
|
var time_stamp = timerender.render_now(time).time_str;
|
||||||
@@ -231,7 +232,7 @@ exports.launch = function () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
formatted = {
|
formatted = {
|
||||||
draft_id: id,
|
draft_id: draft.id,
|
||||||
is_stream: true,
|
is_stream: true,
|
||||||
stream: stream,
|
stream: stream,
|
||||||
stream_color: stream_data.get_color(draft.stream),
|
stream_color: stream_data.get_color(draft.stream),
|
||||||
@@ -251,7 +252,7 @@ exports.launch = function () {
|
|||||||
}).join(', ');
|
}).join(', ');
|
||||||
|
|
||||||
formatted = {
|
formatted = {
|
||||||
draft_id: id,
|
draft_id: draft.id,
|
||||||
is_stream: false,
|
is_stream: false,
|
||||||
recipients: recipients,
|
recipients: recipients,
|
||||||
raw_content: draft.content,
|
raw_content: draft.content,
|
||||||
@@ -275,9 +276,12 @@ exports.launch = function () {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
drafts[id] = formatted;
|
return formatted;
|
||||||
});
|
}
|
||||||
return drafts;
|
|
||||||
|
var sorted_formatted_drafts = _.filter(_.map(sorted_raw_drafts, format_draft));
|
||||||
|
|
||||||
|
return sorted_formatted_drafts;
|
||||||
}
|
}
|
||||||
|
|
||||||
function populate_and_fill() {
|
function populate_and_fill() {
|
||||||
|
|||||||
Reference in New Issue
Block a user