summaryrefslogtreecommitdiff
path: root/js/Headlines.js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2021-02-15 07:46:24 +0300
committerAndrew Dolgov <[email protected]>2021-02-15 07:46:24 +0300
commit9f31381bb6340349c83c394a6ffa15909a2ba3d1 (patch)
treeda2c8fc9cfae3d58c375c6f5031549f084f1856f /js/Headlines.js
parenta2e688fcb2d463a5db700ebd013c783e3a8f4971 (diff)
renderToolbar: support empty data i.e. dashboard feed
Diffstat (limited to 'js/Headlines.js')
-rwxr-xr-xjs/Headlines.js86
1 files changed, 45 insertions, 41 deletions
diff --git a/js/Headlines.js b/js/Headlines.js
index 954b6b45f..94541b974 100755
--- a/js/Headlines.js
+++ b/js/Headlines.js
@@ -572,49 +572,53 @@ const Headlines = {
const search_query = Feeds._search_query ? Feeds._search_query.query : "";
const target = dijit.byId('toolbar-headlines');
- target.attr('innerHTML',
- `
- <span class='left'>
- <a href="#" title="${__("Show as feed")}"
- onclick='CommonDialogs.generatedFeed("${headlines.id}", ${headlines.is_cat}, "${App.escapeHtml(search_query)}")'>
- <i class='icon-syndicate material-icons'>rss_feed</i>
- </a>
- ${tb.site_url ?
- `<a class="feed_title" target="_blank" href="${App.escapeHtml(tb.site_url)}" title="${tb.last_updated}">${tb.title}</a>` :
- `<span class="feed_title">${tb.title}</span>`}
- ${search_query ?
- `
- <span class='cancel_search'>(<a href='#' onclick='Feeds.cancelSearch()'>${__("Cancel search")}</a>)</span>
- ` : ''}
- ${tb.error ? `<i title="${App.escapeHtml(tb.error)}" class='material-icons icon-error'>error</i>` : ''}
- <span id='feed_current_unread' style='display: none'></span>
- </span>
- <span class='right'>
- <span id='selected_prompt'></span>
- <div dojoType='fox.form.DropDownButton' title='"${__('Select articles')}'>
- <span>${__("Select...")}</span>
- <div dojoType='dijit.Menu' style='display: none;'>
- <div dojoType='dijit.MenuItem' onclick='Headlines.select("all")'>${__('All')}</div>
- <div dojoType='dijit.MenuItem' onclick='Headlines.select("unread")'>${__('Unread')}</div>
- <div dojoType='dijit.MenuItem' onclick='Headlines.select("invert")'>${__('Invert')}</div>
- <div dojoType='dijit.MenuItem' onclick='Headlines.select("none")'>${__('None')}</div>
- <div dojoType='dijit.MenuSeparator'></div>
- <div dojoType='dijit.MenuItem' onclick='Headlines.selectionToggleUnread()'>${__('Toggle unread')}</div>
- <div dojoType='dijit.MenuItem' onclick='Headlines.selectionToggleMarked()'>${__('Toggle starred')}</div>
- <div dojoType='dijit.MenuItem' onclick='Headlines.selectionTogglePublished()'>${__('Toggle published')}</div>
- <div dojoType='dijit.MenuSeparator'></div>
- <div dojoType='dijit.MenuItem' onclick='Headlines.catchupSelection()'>${__('Mark as read')}</div>
- <div dojoType='dijit.MenuItem' onclick='Article.selectionSetScore()'>${__('Set score')}</div>
- ${tb.plugin_menu_items}
- ${headlines.id === 0 && !headlines.is_cat ?
+ if (tb && typeof tb == 'object') {
+ target.attr('innerHTML',
+ `
+ <span class='left'>
+ <a href="#" title="${__("Show as feed")}"
+ onclick='CommonDialogs.generatedFeed("${headlines.id}", ${headlines.is_cat}, "${App.escapeHtml(search_query)}")'>
+ <i class='icon-syndicate material-icons'>rss_feed</i>
+ </a>
+ ${tb.site_url ?
+ `<a class="feed_title" target="_blank" href="${App.escapeHtml(tb.site_url)}" title="${tb.last_updated}">${tb.title}</a>` :
+ `<span class="feed_title">${tb.title}</span>`}
+ ${search_query ?
`
- <div dojoType='dijit.MenuSeparator'></div>
- <div dojoType='dijit.MenuItem' class='text-error' onclick='Headlines.deleteSelection()'>${__('Delete permanently')}</div>
+ <span class='cancel_search'>(<a href='#' onclick='Feeds.cancelSearch()'>${__("Cancel search")}</a>)</span>
` : ''}
- </div>
- ${tb.plugin_buttons}
- </span>
- `);
+ ${tb.error ? `<i title="${App.escapeHtml(tb.error)}" class='material-icons icon-error'>error</i>` : ''}
+ <span id='feed_current_unread' style='display: none'></span>
+ </span>
+ <span class='right'>
+ <span id='selected_prompt'></span>
+ <div dojoType='fox.form.DropDownButton' title='"${__('Select articles')}'>
+ <span>${__("Select...")}</span>
+ <div dojoType='dijit.Menu' style='display: none;'>
+ <div dojoType='dijit.MenuItem' onclick='Headlines.select("all")'>${__('All')}</div>
+ <div dojoType='dijit.MenuItem' onclick='Headlines.select("unread")'>${__('Unread')}</div>
+ <div dojoType='dijit.MenuItem' onclick='Headlines.select("invert")'>${__('Invert')}</div>
+ <div dojoType='dijit.MenuItem' onclick='Headlines.select("none")'>${__('None')}</div>
+ <div dojoType='dijit.MenuSeparator'></div>
+ <div dojoType='dijit.MenuItem' onclick='Headlines.selectionToggleUnread()'>${__('Toggle unread')}</div>
+ <div dojoType='dijit.MenuItem' onclick='Headlines.selectionToggleMarked()'>${__('Toggle starred')}</div>
+ <div dojoType='dijit.MenuItem' onclick='Headlines.selectionTogglePublished()'>${__('Toggle published')}</div>
+ <div dojoType='dijit.MenuSeparator'></div>
+ <div dojoType='dijit.MenuItem' onclick='Headlines.catchupSelection()'>${__('Mark as read')}</div>
+ <div dojoType='dijit.MenuItem' onclick='Article.selectionSetScore()'>${__('Set score')}</div>
+ ${tb.plugin_menu_items}
+ ${headlines.id === 0 && !headlines.is_cat ?
+ `
+ <div dojoType='dijit.MenuSeparator'></div>
+ <div dojoType='dijit.MenuItem' class='text-error' onclick='Headlines.deleteSelection()'>${__('Delete permanently')}</div>
+ ` : ''}
+ </div>
+ ${tb.plugin_buttons}
+ </span>
+ `);
+ } else {
+ target.attr('innerHTML', '');
+ }
dojo.parser.parse(target.domNode);
},