diff options
author | Andrew Dolgov <[email protected]> | 2011-12-13 13:34:43 +0400 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2011-12-13 13:34:43 +0400 |
commit | cbe50c800d4846be184673e623063abee7101a0c (patch) | |
tree | dfd6273794a753a783b44653c98fa082b68ce676 /modules | |
parent | c4c5cca12d92c439daec176b1b0e8381e8b49c15 (diff) |
add pref_labels class
Diffstat (limited to 'modules')
-rw-r--r-- | modules/pref-labels.php | 321 |
1 files changed, 0 insertions, 321 deletions
diff --git a/modules/pref-labels.php b/modules/pref-labels.php deleted file mode 100644 index f9f2c19e3..000000000 --- a/modules/pref-labels.php +++ /dev/null @@ -1,321 +0,0 @@ -<?php - function module_pref_labels($link) { - - $method = $_REQUEST["method"]; - - if ($method == "edit") { - $label_id = db_escape_string($_REQUEST['id']); - - $result = db_query($link, "SELECT * FROM ttrss_labels2 WHERE - id = '$label_id' AND owner_uid = " . $_SESSION["uid"]); - - $line = db_fetch_assoc($result); - -# print "<form id=\"label_edit_form\" name=\"label_edit_form\" -# onsubmit=\"return false;\">"; - - print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"id\" value=\"$label_id\">"; - print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"op\" value=\"pref-labels\">"; - print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"method\" value=\"save\">"; - - print "<div class=\"dlgSec\">".__("Caption")."</div>"; - - print "<div class=\"dlgSecCont\">"; - - $fg_color = $line['fg_color']; - $bg_color = $line['bg_color']; - - print "<span class=\"labelColorIndicator\" id=\"label-editor-indicator\" style='color : $fg_color; background-color : $bg_color; margin-bottom : 4px; margin-right : 4px'>α</span>"; - - print "<input style=\"font-size : 16px\" name=\"caption\" - dojoType=\"dijit.form.ValidationTextBox\" - required=\"true\" - value=\"".htmlspecialchars($line['caption'])."\">"; - - print "</div>"; - print "<div class=\"dlgSec\">" . __("Colors") . "</div>"; - print "<div class=\"dlgSecCont\">"; - - print "<table cellspacing=\"0\">"; - - print "<tr><td>".__("Foreground:")."</td><td>".__("Background:"). - "</td></tr>"; - - print "<tr><td style='padding-right : 10px'>"; - - print "<input dojoType=\"dijit.form.TextBox\" - style=\"display : none\" id=\"labelEdit_fgColor\" - name=\"fg_color\" value=\"$fg_color\">"; - print "<input dojoType=\"dijit.form.TextBox\" - style=\"display : none\" id=\"labelEdit_bgColor\" - name=\"bg_color\" value=\"$bg_color\">"; - - print "<div dojoType=\"dijit.ColorPalette\"> - <script type=\"dojo/method\" event=\"onChange\" args=\"fg_color\"> - dijit.byId(\"labelEdit_fgColor\").attr('value', fg_color); - $('label-editor-indicator').setStyle({color: fg_color}); - </script> - </div>"; - print "</div>"; - - print "</td><td>"; - - print "<div dojoType=\"dijit.ColorPalette\"> - <script type=\"dojo/method\" event=\"onChange\" args=\"bg_color\"> - dijit.byId(\"labelEdit_bgColor\").attr('value', bg_color); - $('label-editor-indicator').setStyle({backgroundColor: bg_color}); - </script> - </div>"; - print "</div>"; - - print "</td></tr></table>"; - print "</div>"; - -# print "</form>"; - - print "<div class=\"dlgButtons\">"; - print "<button dojoType=\"dijit.form.Button\" onclick=\"dijit.byId('labelEditDlg').execute()\">". - __('Save')."</button>"; - print "<button dojoType=\"dijit.form.Button\" onclick=\"dijit.byId('labelEditDlg').hide()\">". - __('Cancel')."</button>"; - print "</div>"; - - return; - } - - if ($method == "getlabeltree") { - $root = array(); - $root['id'] = 'root'; - $root['name'] = __('Labels'); - $root['items'] = array(); - - $result = db_query($link, "SELECT * - FROM ttrss_labels2 - WHERE owner_uid = ".$_SESSION["uid"]." - ORDER BY caption"); - - while ($line = db_fetch_assoc($result)) { - $label = array(); - $label['id'] = 'LABEL:' . $line['id']; - $label['bare_id'] = $line['id']; - $label['name'] = $line['caption']; - $label['fg_color'] = $line['fg_color']; - $label['bg_color'] = $line['bg_color']; - $label['type'] = 'label'; - $label['checkbox'] = false; - - array_push($root['items'], $label); - } - - $fl = array(); - $fl['identifier'] = 'id'; - $fl['label'] = 'name'; - $fl['items'] = array($root); - - print json_encode($fl); - return; - } - - if ($method == "color-set") { - $kind = db_escape_string($_REQUEST["kind"]); - $ids = split(',', db_escape_string($_REQUEST["ids"])); - $color = db_escape_string($_REQUEST["color"]); - $fg = db_escape_string($_REQUEST["fg"]); - $bg = db_escape_string($_REQUEST["bg"]); - - foreach ($ids as $id) { - - if ($kind == "fg" || $kind == "bg") { - db_query($link, "UPDATE ttrss_labels2 SET - ${kind}_color = '$color' WHERE id = '$id' - AND owner_uid = " . $_SESSION["uid"]); - } else { - db_query($link, "UPDATE ttrss_labels2 SET - fg_color = '$fg', bg_color = '$bg' WHERE id = '$id' - AND owner_uid = " . $_SESSION["uid"]); - } - - $caption = db_escape_string(label_find_caption($link, $id, $_SESSION["uid"])); - - /* Remove cached data */ - - db_query($link, "UPDATE ttrss_user_entries SET label_cache = '' - WHERE label_cache LIKE '%$caption%' AND owner_uid = " . $_SESSION["uid"]); - - } - - return; - } - - if ($method == "color-reset") { - $ids = split(',', db_escape_string($_REQUEST["ids"])); - - foreach ($ids as $id) { - db_query($link, "UPDATE ttrss_labels2 SET - fg_color = '', bg_color = '' WHERE id = '$id' - AND owner_uid = " . $_SESSION["uid"]); - - $caption = db_escape_string(label_find_caption($link, $id, $_SESSION["uid"])); - - /* Remove cached data */ - - db_query($link, "UPDATE ttrss_user_entries SET label_cache = '' - WHERE label_cache LIKE '%$caption%' AND owner_uid = " . $_SESSION["uid"]); - } - - } - - if ($method == "save") { - - $id = db_escape_string($_REQUEST["id"]); - $caption = db_escape_string(trim($_REQUEST["caption"])); - - db_query($link, "BEGIN"); - - $result = db_query($link, "SELECT caption FROM ttrss_labels2 - WHERE id = '$id' AND owner_uid = ". $_SESSION["uid"]); - - if (db_num_rows($result) != 0) { - $old_caption = db_fetch_result($result, 0, "caption"); - - $result = db_query($link, "SELECT id FROM ttrss_labels2 - WHERE caption = '$caption' AND owner_uid = ". $_SESSION["uid"]); - - if (db_num_rows($result) == 0) { - if ($caption) { - $result = db_query($link, "UPDATE ttrss_labels2 SET - caption = '$caption' WHERE id = '$id' AND - owner_uid = " . $_SESSION["uid"]); - - /* Update filters that reference label being renamed */ - - $old_caption = db_escape_string($old_caption); - - db_query($link, "UPDATE ttrss_filters SET - action_param = '$caption' WHERE action_param = '$old_caption' - AND action_id = 7 - AND owner_uid = " . $_SESSION["uid"]); - - print $_REQUEST["value"]; - } else { - print $old_caption; - } - } else { - print $old_caption; - } - } - - db_query($link, "COMMIT"); - - return; - } - - if ($method == "remove") { - - $ids = split(",", db_escape_string($_REQUEST["ids"])); - - foreach ($ids as $id) { - label_remove($link, $id, $_SESSION["uid"]); - } - - } - - if ($method == "add") { - $caption = db_escape_string($_REQUEST["caption"]); - $output = db_escape_string($_REQUEST["output"]); - - if ($caption) { - - if (label_create($link, $caption)) { - if (!$output) { - print T_sprintf("Created label <b>%s</b>", htmlspecialchars($caption)); - } - } - - if ($output == "select") { - header("Content-Type: text/xml"); - - print "<rpc-reply><payload>"; - - print_label_select($link, "select_label", - $caption, ""); - - print "</payload></rpc-reply>"; - } - } - - return; - } - - $sort = db_escape_string($_REQUEST["sort"]); - - if (!$sort || $sort == "undefined") { - $sort = "caption"; - } - - $label_search = db_escape_string($_REQUEST["search"]); - - if (array_key_exists("search", $_REQUEST)) { - $_SESSION["prefs_label_search"] = $label_search; - } else { - $label_search = $_SESSION["prefs_label_search"]; - } - - print "<div id=\"pref-label-wrap\" dojoType=\"dijit.layout.BorderContainer\" gutters=\"false\">"; - print "<div id=\"pref-label-header\" dojoType=\"dijit.layout.ContentPane\" region=\"top\">"; - print "<div id=\"pref-label-toolbar\" dojoType=\"dijit.Toolbar\">"; - - print "<div dojoType=\"dijit.form.DropDownButton\">". - "<span>" . __('Select')."</span>"; - print "<div dojoType=\"dijit.Menu\" style=\"display: none;\">"; - print "<div onclick=\"dijit.byId('labelTree').model.setAllChecked(true)\" - dojoType=\"dijit.MenuItem\">".__('All')."</div>"; - print "<div onclick=\"dijit.byId('labelTree').model.setAllChecked(false)\" - dojoType=\"dijit.MenuItem\">".__('None')."</div>"; - print "</div></div>"; - - print"<button dojoType=\"dijit.form.Button\" onclick=\"return addLabel()\">". - __('Create label')."</button dojoType=\"dijit.form.Button\"> "; - - print "<button dojoType=\"dijit.form.Button\" onclick=\"removeSelectedLabels()\">". - __('Remove')."</button dojoType=\"dijit.form.Button\"> "; - - print "<button dojoType=\"dijit.form.Button\" onclick=\"labelColorReset()\">". - __('Clear colors')."</button dojoType=\"dijit.form.Button\">"; - - - print "</div>"; #toolbar - print "</div>"; #pane - print "<div id=\"pref-label-content\" dojoType=\"dijit.layout.ContentPane\" region=\"center\">"; - - print "<div id=\"labellistLoading\"> - <img src='images/indicator_tiny.gif'>". - __("Loading, please wait...")."</div>"; - - print "<div dojoType=\"dojo.data.ItemFileWriteStore\" jsId=\"labelStore\" - url=\"backend.php?op=pref-labels&method=getlabeltree\"> - </div> - <div dojoType=\"lib.CheckBoxStoreModel\" jsId=\"labelModel\" store=\"labelStore\" - query=\"{id:'root'}\" rootId=\"root\" - childrenAttrs=\"items\" checkboxStrict=\"false\" checkboxAll=\"false\"> - </div> - <div dojoType=\"fox.PrefLabelTree\" id=\"labelTree\" - model=\"labelModel\" openOnClick=\"true\"> - <script type=\"dojo/method\" event=\"onLoad\" args=\"item\"> - Element.hide(\"labellistLoading\"); - </script> - <script type=\"dojo/method\" event=\"onClick\" args=\"item\"> - var id = String(item.id); - var bare_id = id.substr(id.indexOf(':')+1); - - if (id.match('LABEL:')) { - editLabel(bare_id); - } - </script> - </div>"; - - print "</div>"; #pane - print "</div>"; #container - } - -?> |