source: branches/dev/html/test/uehara/js/tree.js @ 8

Revision 8, 5.0 KB checked in by root, 17 years ago (diff)

new import

Line 
1var IMG_FOLDER_CLOSE   = "./img/folder_close.gif";              // ¥Õ¥©¥ë¥À¥¯¥í¡¼¥º»þ²èÁü
2var IMG_FOLDER_OPEN    = "./img/folder_open.gif";               // ¥Õ¥©¥ë¥À¥ª¡¼¥×¥ó»þ²èÁü
3var IMG_PLUS           = "./img/plus.gif";                      // ¥×¥é¥¹¥é¥¤¥ó
4var IMG_MINUS          = "./img/minus.gif";                     // ¥Þ¥¤¥Ê¥¹¥é¥¤¥ó
5var IMG_NORMAL         = "./img/normal.gif";                    // ¥Î¡¼¥Þ¥ë¥é¥¤¥ó
6
7var tree = "";                      // À¸À®HTML³ÊǼ
8var count = 0;                      // ¥ë¡¼¥×¥«¥¦¥ó¥¿
9var arrTreeStatus = new Array();    // ¥Ä¥ê¡¼¾õÂÖÊÝ»ý
10var old_select_id = '';             // Á°²óÁªÂò¤·¤Æ¤¤¤¿¥Õ¥¡¥¤¥ë
11
12// ¥Ä¥ê¡¼É½¼¨
13function fnTreeView(view_id, arrTree, openFolder) {
14
15    //tree += '<form name="tree_form">';
16    for(i = 0; i < arrTree.length; i++) {
17       
18        id = arrTree[i][0];
19        level = arrTree[i][3];
20       
21        if(i == 0) {
22            old_id = "0";
23            old_level = 0;
24        } else {
25            old_id = arrTree[i-1][0];
26            old_level = arrTree[i-1][3];
27        }
28   
29        // ³¬Áؾå¤ØÌá¤ë
30        if(level <= (old_level - 1)) {
31            tmp_level = old_level - level;
32            for(up_roop = 0; up_roop <= tmp_level; up_roop++) {
33                tree += '</div>';
34            }
35        }
36       
37        // Ʊ°ì³¬ÁؤǼ¡¤Î¥Õ¥©¥ë¥À¤Ø
38        if(id != old_id && level == old_level) tree += '</div>';
39   
40        // ³¬ÁؤÎʬ¤À¤±¥¹¥Ú¡¼¥¹¤òÆþ¤ì¤ë
41        for(space_cnt = 0; space_cnt < arrTree[i][3]; space_cnt++) {
42            tree += "&nbsp;&nbsp;&nbsp;";
43        }
44
45        // ³¬ÁزèÁü¤Îɽ¼¨¡¦Èóɽ¼¨½èÍý
46        if(arrTree[i][4]) {
47            if(arrTree[i][1] == '_parent') {
48                rank_img = IMG_MINUS;
49            } else {
50                rank_img = IMG_NORMAL;
51            }
52            // ³«¤­¾õÂÖ¤òÊÝ»ý
53            arrTreeStatus.push(arrTree[i][2]);
54            display = 'block';
55        } else {
56            if(arrTree[i][1] == '_parent') {
57                rank_img = IMG_PLUS;
58            } else {
59                rank_img = IMG_NORMAL;
60            }
61            display = 'none';
62        }
63       
64        // ¥Õ¥©¥ë¥À¤Î²èÁü¤òÁªÂò
65        if(arrTree[i][2] == openFolder) {
66            folder_img = IMG_FOLDER_OPEN;
67        } else {
68            folder_img = IMG_FOLDER_CLOSE;
69        }
70
71        arrFileSplit = arrTree[i][2].split("/");
72        file_name = arrFileSplit[arrFileSplit.length-1];
73
74        // ³¬ÁزèÁü¤¬¥Î¡¼¥Þ¥ë¤Î»þ¤Î¤ß¥ª¥ó¥¯¥ê¥Ã¥¯½èÍý¤ò¤Ä¤±¤ë
75        if(rank_img != IMG_NORMAL) {
76            tree += '<input type="image" src="'+ rank_img +'" border="0" name="rank_img'+ i +'" id="rank_img'+ i +'" onclick="fnTreeMenu(\'tree'+ i +'\',\'rank_img'+ i +'\',\''+ arrTree[i][2] +'\')">';
77        } else {
78            tree += '<img src="'+ rank_img +'" border="0" name="rank_img'+ i +'" id="rank_img'+ i +'">';
79        }
80        tree += '<input type="image" src="'+ folder_img +'" border="0" name="tree_img'+ i +'" id="tree_img'+ i +'" onclick="fnFolderOpen(\''+ arrTree[i][2] +'\')">&nbsp;'+ file_name +'<br/>';
81        tree += '<div id="tree'+ i +'" style="display:'+ display +'">';
82   
83    }
84    //tree += '</form>';
85    fnDrow(view_id, tree);
86    //document.tree_form.tree_test2.focus();   
87}
88
89// Tree¾õÂÖ¤òhidden¤Ë¥»¥Ã¥È
90function setTreeStatus(name) {
91    var tree_status = "";
92    for(i=0; i < arrTreeStatus.length ;i++) {
93        if(i != 0) tree_status += '|';
94        tree_status += arrTreeStatus[i];
95    }
96    document.form1[name].value = tree_status;
97}
98
99// Tree¾õÂÖ¤òºï½ü¤¹¤ë(ÊĤ¸¤ë¾õÂÖ¤Ø)
100function fnDelTreeStatus(path) {
101    for(i=0; i < arrTreeStatus.length ;i++) {
102        if(arrTreeStatus[i] == path) {
103            arrTreeStatus[i] = "";
104        }
105    }
106}
107// ¥Ä¥ê¡¼ÉÁ²è
108function fnDrow(id, tree) {
109    // ¥Ö¥é¥¦¥¶¼èÆÀ
110    MyBR = fnGetMyBrowser();
111    // ¥Ö¥é¥¦¥¶»ö¤Ë½èÍý¤òÀÚ¤êʬ¤±
112    switch(myBR) {
113        // IE4¤Î»þ¤Îɽ¼¨
114        case 'I4':
115            document.all(id).innerHTML = tree;
116            break;
117        // NN4¤Î»þ¤Îɽ¼¨
118        case 'N4':
119            document.layers[id].document.open();
120            document.layers[id].document.write("<div>");
121            document.layers[id].document.write(tree);
122            document.layers[id].document.write("</div>");
123            document.layers[id].document.close();
124            break;
125        default:
126            document.getElementById(id).innerHTML=tree;
127            break;
128    }
129}
130
131// ³¬Áإĥ꡼¥á¥Ë¥å¡¼É½¼¨¡¦Èóɽ¼¨½èÍý
132function fnTreeMenu(tName, imgName, path) {
133
134    tMenu = document.all[tName].style;
135
136    if(tMenu.display == 'none') {
137        fnChgImg(IMG_MINUS, imgName);
138        tMenu.display = "block";
139        // ³¬Áؤ㫤¤¤¿¾õÂÖ¤òÊÝ»ý
140        arrTreeStatus.push(path);
141
142    } else {
143        fnChgImg(IMG_PLUS, imgName);
144        tMenu.display = "none";
145        // ÊĤ¸¾õÂÖ¤òÊÝ»ý
146        fnDelTreeStatus(path);
147    }
148}
149
150// ¥Õ¥©¥ë¥À¥ª¡¼¥×¥ó½èÍý
151function fnFolderOpen(path) {
152
153    // ¥¯¥ê¥Ã¥¯¤·¤¿¥Õ¥©¥ë¥À¾ðÊó¤òÊÝ»ý
154    document.form1['tree_select_file'].value = path;
155    // tree¤Î¾õÂÖ¤ò¥»¥Ã¥È
156    setTreeStatus('tree_status');
157    // submit
158    fnModeSubmit('move','','');
159}
160
161
162// ±ÜÍ÷¥Ö¥é¥¦¥¶¼èÆÀ
163function fnGetMyBrowser() {
164    myOP = window.opera;            // OP
165    myN6 = document.getElementById; // N6
166    myIE = document.all;            // IE
167    myN4 = document.layers;         // N4
168    if      (myOP) myBR="O6";       // OP6°Ê¾å
169    else if (myIE) myBR="I4";       // IE4°Ê¾å
170    else if (myN6) myBR="N6";       // NS6°Ê¾å
171    else if (myN4) myBR="N4";       // NN4
172    else           myBR="";         // ¤½¤Î¾
173       
174    return myBR;
175}
176
177// img¥¿¥°¤Î²èÁüÊѹ¹
178function fnChgImg(fileName,imgName){
179    document.getElementById(imgName).src = fileName;
180}
181
182// ¥Õ¥¡¥¤¥ëÁªÂò
183function fnSelectFile(id, val) {
184    if(old_select_id != '') document.getElementById(old_select_id).style.backgroundColor = '';
185    document.getElementById(id).style.backgroundColor = val;
186    old_select_id = id;
187}
188
189// ÇØ·Ê¿§¤òÊѤ¨¤ë
190function fnChangeBgColor(id, val) {
191    if (old_select_id != id) {
192        document.getElementById(id).style.backgroundColor = val;
193    }
194}
Note: See TracBrowser for help on using the repository browser.