summaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2021-01-17 11:27:07 +0300
committerAndrew Dolgov <[email protected]>2021-01-17 11:27:07 +0300
commit25520e978436b29f77f3504e698f8f8609e60a1f (patch)
treecbbe1331f4d01db5ba4ec6d69d1ce668470057be /classes
parent7a2ad08a7da679e0a8f62e60fa036ff9a23e6e11 (diff)
Select... dropdown: replace dijit Select with DropDownButton, simplify layout
PluginHost: add HOOK_HEADLINE_TOOLBAR_SELECT_MENU_ITEM Headlines.onActionChanged: removed
Diffstat (limited to 'classes')
-rwxr-xr-xclasses/feeds.php59
-rwxr-xr-xclasses/pluginhost.php1
2 files changed, 26 insertions, 34 deletions
diff --git a/classes/feeds.php b/classes/feeds.php
index fcbb2e7f1..a46d008a5 100755
--- a/classes/feeds.php
+++ b/classes/feeds.php
@@ -61,51 +61,42 @@ class Feeds extends Handler_Protected {
$reply .= "<span class=\"right\">";
$reply .= "<span id='selected_prompt'></span>";
$reply .= "&nbsp;";
- $reply .= "<select dojoType=\"fox.form.Select\"
- onchange=\"Headlines.onActionChanged(this)\">";
- $reply .= "<option value=\"0\" disabled='1'>".__('Select...')."</option>";
-
- $reply .= "<option value=\"Headlines.select('all')\">".__('All')."</option>";
- $reply .= "<option value=\"Headlines.select('unread')\">".__('Unread')."</option>";
- $reply .= "<option value=\"Headlines.select('invert')\">".__('Invert')."</option>";
- $reply .= "<option value=\"Headlines.select('none')\">".__('None')."</option>";
-
- $reply .= "<option value=\"0\" disabled=\"1\">".__('Selection toggle:')."</option>";
-
- $reply .= "<option value=\"Headlines.selectionToggleUnread()\">".__('Unread')."</option>
- <option value=\"Headlines.selectionToggleMarked()\">".__('Starred')."</option>
- <option value=\"Headlines.selectionTogglePublished()\">".__('Published')."</option>";
-
- $reply .= "<option value=\"0\" disabled=\"1\">".__('Selection:')."</option>";
-
- $reply .= "<option value=\"Headlines.catchupSelection()\">".__('Mark as read')."</option>";
- $reply .= "<option value=\"Article.selectionSetScore()\">".__('Set score')."</option>";
-
- if ($feed_id == 0 && !$is_cat) {
- $reply .= "<option value=\"Headlines.deleteSelection()\">".__('Delete')."</option>";
- }
+ $reply .= "<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>";
if (PluginHost::getInstance()->get_plugin("mail")) {
- $reply .= "<option value=\"Plugins.Mail.send()\">".__('Forward by email').
- "</option>";
+ $reply .= "<div dojoType='dijit.MenuItem' value='Plugins.Mail.send()'>".__('Forward by email')."</div>";
}
if (PluginHost::getInstance()->get_plugin("mailto")) {
- $reply .= "<option value=\"Plugins.Mailto.send()\">".__('Forward by email').
- "</option>";
+ $reply .= "<div dojoType='dijit.MenuItem' value='Plugins.Mailto.send()'>".__('Forward by email')."</div>";
}
- //$reply .= "<option value=\"0\" disabled=\"1\">".__('Feed:')."</option>";
-
- //$reply .= "<option value=\"catchupPage()\">".__('Mark as read')."</option>";
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_HEADLINE_TOOLBAR_SELECT_MENU_ITEM) as $p) {
+ $reply .= $p->hook_headline_toolbar_select_menu_item($feed_id, $is_cat);
+ }
- /*$reply .= "<option value=\"App.displayDlg('".__("Show as feed")."','generatedFeed', '$feed_id:$is_cat:$rss_link')\">".
- __('Show as feed')."</option>";*/
+ if ($feed_id == 0 && !$is_cat) {
+ $reply .= "<div dojoType='dijit.MenuSeparator'></div>
+ <div dojoType='dijit.MenuItem' class='text-error' onclick='Headlines.deleteSelection()'>".__('Delete permanently')."</div>";
+ }
- $reply .= "</select>";
+ $reply .= "</div>"; /* menu */
- //$reply .= "</h2";
+ $reply .= "</div>"; /* dropdown */
foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_HEADLINE_TOOLBAR_BUTTON) as $p) {
$reply .= $p->hook_headline_toolbar_button($feed_id, $is_cat);
diff --git a/classes/pluginhost.php b/classes/pluginhost.php
index f84b07251..08871af51 100755
--- a/classes/pluginhost.php
+++ b/classes/pluginhost.php
@@ -69,6 +69,7 @@ class PluginHost {
const HOOK_ENCLOSURE_IMPORTED = 45;
const HOOK_HEADLINES_CUSTOM_SORT_MAP = 46;
const HOOK_HEADLINES_CUSTOM_SORT_OVERRIDE = 47;
+ const HOOK_HEADLINE_TOOLBAR_SELECT_MENU_ITEM = 48;
const KIND_ALL = 1;
const KIND_SYSTEM = 2;