summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2010-11-17 23:32:32 +0300
committerAndrew Dolgov <[email protected]>2010-11-17 23:32:32 +0300
commit2148e0d5ccafe6eea1234b17d5eac99913ff2685 (patch)
tree75eb6754dd72860a53b120dc2f7c361144b00ee0
parent05f224a3d706aa32e504d23823e91c0ef7b36aa3 (diff)
experimental work on draggable pref feed tree
-rw-r--r--PrefFeedTree.js16
-rw-r--r--modules/pref-feeds.php11
-rw-r--r--prefs.js2
3 files changed, 20 insertions, 9 deletions
diff --git a/PrefFeedTree.js b/PrefFeedTree.js
new file mode 100644
index 000000000..f8d1e7b15
--- /dev/null
+++ b/PrefFeedTree.js
@@ -0,0 +1,16 @@
+dojo.provide("fox.PrefFeedTree");
+
+dojo.require("lib.CheckBoxTree");
+
+dojo.declare("fox.PrefFeedTree", lib.CheckBoxTree, {
+ checkItemAcceptance: function(target, source, position) {
+ var item = dijit.getEnclosingWidget(target).item;
+
+ console.log(source.currentWidget);
+
+ var id = String(item.id);
+ return (id.match("CAT:") || position != "over");
+ return true;
+ },
+});
+
diff --git a/modules/pref-feeds.php b/modules/pref-feeds.php
index f5afbb3e1..10b7462ec 100644
--- a/modules/pref-feeds.php
+++ b/modules/pref-feeds.php
@@ -1046,15 +1046,14 @@
query=\"{id:'root'}\" rootId=\"root\" rootLabel=\"Feeds\"
childrenAttrs=\"items\" checkboxStrict=\"false\" checkboxAll=\"false\">
</div>
- <div dojoType=\"lib.CheckBoxTree\" id=\"feedTree\" _dndController=\"dijit.tree.dndSource\"
+ <div dojoType=\"fox.PrefFeedTree\" id=\"feedTree\"
+ dndController=\"dijit.tree.dndSource\"
betweenThreshold=\"1\"
model=\"feedModel\" openOnClick=\"false\">
<script type=\"dojo/method\" event=\"onClick\" args=\"item\">
var id = String(item.id);
var bare_id = id.substr(id.indexOf(':')+1);
- console.log('onClick: ' + id);
-
if (id.match('FEED')) {
editFeed(bare_id, event);
}
@@ -1063,12 +1062,6 @@
<script type=\"dojo/method\" event=\"onLoad\" args=\"item\">
Element.hide(\"feedlistLoading\");
</script>
- <script type=\"dojo/method\" event=\"checkItemAcceptance\" args=\"item, source, position\">
- var source_item = dijit.getEnclosingWidget(source);
- console.log(item);
- console.log(source_item);
- </script>
-
</div>";
/*
diff --git a/prefs.js b/prefs.js
index e4e002c13..42f51087d 100644
--- a/prefs.js
+++ b/prefs.js
@@ -1175,8 +1175,10 @@ function init() {
dojo.require("dijit.tree.dndSource");
dojo.registerModulePath("lib", "..");
+ dojo.registerModulePath("fox", "../..");
dojo.require("lib.CheckBoxTree");
+ dojo.require("fox.PrefFeedTree");
loading_set_progress(30);