This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/models/top_list.js
2014-04-17 10:52:57 -04:00

37 lines
1015 B
JavaScript

/**
A data model representing a list of top topic lists
@class TopList
@extends Discourse.Model
@namespace Discourse
@module Discourse
**/
Discourse.TopList = Discourse.Model.extend({});
Discourse.TopList.reopenClass({
find: function(filter) {
return PreloadStore.getAndRemove("top_lists", function() {
var url = Discourse.getURL("/") + (filter || "top") + ".json";
return Discourse.ajax(url);
}).then(function (result) {
var topList = Discourse.TopList.create({
can_create_topic: result.can_create_topic,
draft: result.draft,
draft_key: result.draft_key,
draft_sequence: result.draft_sequence
});
Discourse.Site.currentProp('periods').forEach(function(period) {
// if there is a list for that period
if (result[period]) {
// instanciate a new topic list with no sorting
topList.set(period, Discourse.TopicList.from(result[period]));
}
});
return topList;
});
}
});