]>
Commit | Line | Data |
---|---|---|
6527f429 DM |
1 | Ext.define('FV.model.Article', {\r |
2 | extend: 'Ext.data.Model',\r | |
3 | \r | |
4 | fields: [{\r | |
5 | name: 'title',\r | |
6 | convert: function(v) {\r | |
7 | return Ext.htmlEncode(v);\r | |
8 | }\r | |
9 | }, 'author', 'link', {\r | |
10 | name: 'pubDate',\r | |
11 | type: 'date'\r | |
12 | }, {\r | |
13 | // Some feeds return the description as the main content\r | |
14 | // Others return description as a summary. Figure this out here\r | |
15 | name: 'description',\r | |
16 | mapping: function(raw) {\r | |
17 | var DQ = Ext.dom.Query,\r | |
18 | content = DQ.selectNode('content', raw),\r | |
19 | key;\r | |
20 | \r | |
21 | if (content && DQ.getNodeValue(content)) {\r | |
22 | key = 'description';\r | |
23 | } else {\r | |
24 | key = 'title';\r | |
25 | }\r | |
26 | return DQ.selectValue(key, raw);\r | |
27 | \r | |
28 | }\r | |
29 | }, {\r | |
30 | name: 'content',\r | |
31 | mapping: function(raw) {\r | |
32 | var DQ = Ext.dom.Query,\r | |
33 | content = DQ.selectNode('content', raw);\r | |
34 | \r | |
35 | if (!content || !DQ.getNodeValue(content)) {\r | |
36 | content = DQ.selectNode('description', raw);\r | |
37 | }\r | |
38 | return DQ.getNodeValue(content, '');\r | |
39 | }\r | |
40 | }]\r | |
41 | }); |