add select all/none functionality to several edit dialogs

master
Andrew Dolgov 12 years ago
parent f0755b7c7e
commit ddb575c744

@ -80,12 +80,25 @@ class Dlg extends Protected_Handler {
function editPrefProfiles() {
print "<div dojoType=\"dijit.Toolbar\">";
print "<div dojoType=\"dijit.form.DropDownButton\">".
"<span>" . __('Select')."</span>";
print "<div dojoType=\"dijit.Menu\" style=\"display: none;\">";
print "<div onclick=\"selectTableRows('prefFeedProfileList', 'all')\"
dojoType=\"dijit.MenuItem\">".__('All')."</div>";
print "<div onclick=\"selectTableRows('prefFeedProfileList', 'none')\"
dojoType=\"dijit.MenuItem\">".__('None')."</div>";
print "</div></div>";
print "<div style=\"float : right\">";
print "<input name=\"newprofile\" dojoType=\"dijit.form.ValidationTextBox\"
required=\"1\">
<button dojoType=\"dijit.form.Button\"
onclick=\"dijit.byId('profileEditDlg').addProfile()\">".
__('Create profile')."</button></div>";
print "</div>";
$result = db_query($this->link, "SELECT title,id FROM ttrss_settings_profiles
WHERE owner_uid = ".$_SESSION["uid"]." ORDER BY title");
@ -96,9 +109,10 @@ class Dlg extends Protected_Handler {
print "<table width=\"100%\" class=\"prefFeedProfileList\"
cellspacing=\"0\" id=\"prefFeedProfileList\">";
print "<tr class=\"\" id=\"FCATR-0\">"; #odd
print "<tr class=\"placeholder\" id=\"FCATR-0\">"; #odd
print "<td width='5%' align='center'><input
id='FCATC-0'
onclick='toggleSelectRow2(this);'
dojoType=\"dijit.form.CheckBox\"
type=\"checkbox\"></td>";
@ -123,12 +137,13 @@ class Dlg extends Protected_Handler {
$profile_id = $line["id"];
$this_row_id = "id=\"FCATR-$profile_id\"";
print "<tr class=\"\" $this_row_id>";
print "<tr class=\"placeholder\" $this_row_id>";
$edit_title = htmlspecialchars($line["title"]);
print "<td width='5%' align='center'><input
onclick='toggleSelectRow2(this);'
id='FCATC-$profile_id'
dojoType=\"dijit.form.CheckBox\"
type=\"checkbox\"></td>";
@ -577,6 +592,17 @@ class Dlg extends Protected_Handler {
print __("These feeds have not been updated with new content for 3 months (oldest first):");
print "<div dojoType=\"dijit.Toolbar\">";
print "<div dojoType=\"dijit.form.DropDownButton\">".
"<span>" . __('Select')."</span>";
print "<div dojoType=\"dijit.Menu\" style=\"display: none;\">";
print "<div onclick=\"selectTableRows('prefInactiveFeedList', 'all')\"
dojoType=\"dijit.MenuItem\">".__('All')."</div>";
print "<div onclick=\"selectTableRows('prefInactiveFeedList', 'none')\"
dojoType=\"dijit.MenuItem\">".__('None')."</div>";
print "</div></div>";
print "</div>"; #toolbar
print "<div class=\"inactiveFeedHolder\">";
print "<table width=\"100%\" cellspacing=\"0\" id=\"prefInactiveFeedList\">";
@ -589,13 +615,15 @@ class Dlg extends Protected_Handler {
$feed_id = $line["id"];
$this_row_id = "id=\"FUPDD-$feed_id\"";
print "<tr class=\"\" $this_row_id>";
# class needed for selectTableRows()
print "<tr class=\"placeholder\" $this_row_id>";
$edit_title = htmlspecialchars($line["title"]);
# id needed for selectTableRows()
print "<td width='5%' align='center'><input
onclick='toggleSelectRow2(this);' dojoType=\"dijit.form.CheckBox\"
type=\"checkbox\"></td>";
type=\"checkbox\" id=\"FUPDC-$feed_id\"></td>";
print "<td>";
print "<a class=\"visibleLink\" href=\"#\" ".
@ -633,6 +661,17 @@ class Dlg extends Protected_Handler {
$result = db_query($this->link, "SELECT id,title,feed_url,last_error,site_url
FROM ttrss_feeds WHERE last_error != '' AND owner_uid = ".$_SESSION["uid"]);
print "<div dojoType=\"dijit.Toolbar\">";
print "<div dojoType=\"dijit.form.DropDownButton\">".
"<span>" . __('Select')."</span>";
print "<div dojoType=\"dijit.Menu\" style=\"display: none;\">";
print "<div onclick=\"selectTableRows('prefErrorFeedList', 'all')\"
dojoType=\"dijit.MenuItem\">".__('All')."</div>";
print "<div onclick=\"selectTableRows('prefErrorFeedList', 'none')\"
dojoType=\"dijit.MenuItem\">".__('None')."</div>";
print "</div></div>";
print "</div>"; #toolbar
print "<div class=\"inactiveFeedHolder\">";
print "<table width=\"100%\" cellspacing=\"0\" id=\"prefErrorFeedList\">";
@ -645,13 +684,15 @@ class Dlg extends Protected_Handler {
$feed_id = $line["id"];
$this_row_id = "id=\"FUPDD-$feed_id\"";
print "<tr class=\"\" $this_row_id>";
# class needed for selectTableRows()
print "<tr class=\"placeholder\" $this_row_id>";
$edit_title = htmlspecialchars($line["title"]);
# id needed for selectTableRows()
print "<td width='5%' align='center'><input
onclick='toggleSelectRow2(this);' dojoType=\"dijit.form.CheckBox\"
type=\"checkbox\"></td>";
type=\"checkbox\" id=\"FUPDC-$feed_id\"></td>";
print "<td>";
print "<a class=\"visibleLink\" href=\"#\" ".

@ -1171,11 +1171,25 @@ class Pref_Feeds extends Protected_Handler {
}
}
print "<div dojoType=\"dijit.Toolbar\">
<input dojoType=\"dijit.form.ValidationTextBox\" required=\"1\" name=\"newcat\">
print "<div dojoType=\"dijit.Toolbar\">";
print "<div dojoType=\"dijit.form.DropDownButton\">".
"<span>" . __('Select')."</span>";
print "<div dojoType=\"dijit.Menu\" style=\"display: none;\">";
print "<div onclick=\"selectTableRows('prefFeedCatList', 'all')\"
dojoType=\"dijit.MenuItem\">".__('All')."</div>";
print "<div onclick=\"selectTableRows('prefFeedCatList', 'none')\"
dojoType=\"dijit.MenuItem\">".__('None')."</div>";
print "</div></div>";
print "<div style='float : right'>";
print "<input dojoType=\"dijit.form.ValidationTextBox\" required=\"1\" name=\"newcat\">
<button dojoType=\"dijit.form.Button\" onclick=\"dijit.byId('feedCatEditDlg').addCategory()\">".
__('Create category')."</button></div>";
print "</div>";
$result = db_query($this->link, "SELECT title,id FROM ttrss_feed_categories
WHERE owner_uid = ".$_SESSION["uid"]."
ORDER BY title");
@ -1196,11 +1210,11 @@ class Pref_Feeds extends Protected_Handler {
$cat_id = $line["id"];
$this_row_id = "id=\"FCATR-$cat_id\"";
print "<tr class=\"\" $this_row_id>";
print "<tr class=\"placeholder\" $this_row_id>";
$edit_title = htmlspecialchars($line["title"]);
print "<td width='5%' align='center'><input
print "<td width='5%' align='center'><input id=\"FCATC-$cat_id\"
onclick='toggleSelectRow2(this);' dojoType=\"dijit.form.CheckBox\"
type=\"checkbox\"></td>";

@ -313,7 +313,7 @@ class Pref_Prefs extends Protected_Handler {
$profile_qpart = "profile IS NULL";
}
$result = db_query($this->link, "SELECT
$result = db_query($this->link, "SELECT DISTINCT
ttrss_user_prefs.pref_name,short_desc,help_text,value,type_name,
section_name,def_value,section_id
FROM ttrss_prefs,ttrss_prefs_types,ttrss_prefs_sections,ttrss_user_prefs

@ -1340,6 +1340,7 @@ function selectTableRows(id, mode) {
for (var i = 0; i < rows.length; i++) {
var row = rows[i];
var cb = false;
var dcb = false;
if (row.id && row.className) {
var bare_id = row.id.replace(/^[A-Z]*?-/, "");
@ -1352,27 +1353,33 @@ function selectTableRows(id, mode) {
input.id.match(bare_id)) {
cb = input;
dcb = dijit.getEnclosingWidget(cb);
break;
}
}
if (cb) {
if (cb || dcb) {
var issel = row.hasClassName("Selected");
if (mode == "all" && !issel) {
row.addClassName("Selected");
cb.checked = true;
if (dcb) dcb.set("checked", true);
} else if (mode == "none" && issel) {
row.removeClassName("Selected");
cb.checked = false;
if (dcb) dcb.set("checked", false);
} else if (mode == "invert") {
if (issel) {
row.removeClassName("Selected");
cb.checked = false;
if (dcb) dcb.set("checked", false);
} else {
row.addClassName("Selected");
cb.checked = true;
if (dcb) dcb.set("checked", true);
}
}
}

@ -377,7 +377,7 @@ div.prefFeedCatHolder, div.prefFeedOPMLHolder, div.inactiveFeedHolder {
background-color : #ecf4ff;
}
div.prefFeedOPMLHolder, div.inactiveFeedHolder {
div.prefFeedOPMLHolder {
border-width : 1px 1px 1px 1px;
}

Loading…
Cancel
Save