1 /* Useful helper functions */
3 function tree_selection(id) {
4 var tree = document.getElementById(id);
5 var name = tree.columns.getPrimaryColumn();
6 var i = tree.currentIndex;
7 var path = new Array();
9 path.splice(0, 0, tree.view.getCellText(i, name));
10 i = tree.view.getParentIndex(i);
15 /* Functions driving the CherryPy backend */
17 function new_tag(path) {
18 alert('Adding tag: '+path.toString());
19 /* https://developer.mozilla.org/en/RDF_in_Mozilla_FAQ */
22 function add_tag(path, tag) {
23 alert('Add tag '+path.toString()+' to '+tag);
26 function remove_tag(path, tag) {
27 alert('Remove tag '+path.toString()+' from '+tag);
30 /* The bindings themselves */
32 function initialize() {
33 element = document.getElementById('element').file_path = 'UNDEFINED';
36 function new_tag_button() {
37 var text = document.getElementById('new-tag-text').value;
38 new_tag(text.split('/'));
41 function set_selected_element(path) {
42 element = document.getElementById('element');
43 element.file_path = path;
44 alert(path.toString());
47 function raw_tree_select() {
48 set_selected_element(tree_selection('raw-tree'));
51 function tag_tree_select() {
52 set_selected_element(tree_selection('tag-tree'));
55 function tag_check(event) {
56 var path = document.getElementById('element').file_path;
57 if (event.target.checked) {
58 add_tag(path, event.target.id);
60 remove_tag(path, event.target.id);