1 | function handler(){ |
---|
2 | } |
---|
3 | handler.prototype.del = function(data){ |
---|
4 | var returnVal = data.split('|'); |
---|
5 | var deletedFiles = ""; |
---|
6 | for (i=0; i < returnVal.length; i++) |
---|
7 | if (returnVal[i] == 'False'){ |
---|
8 | write_error(get_lang('Could not delete %1',returnVal[i+1])); |
---|
9 | return; |
---|
10 | }else |
---|
11 | { |
---|
12 | if (returnVal[i] != ""){ |
---|
13 | deletedFiles += ", "+returnVal[i]; |
---|
14 | /*var element = document.getElementById("name_"+returnVal[i]); |
---|
15 | var pai = element.parentNode.parentNode.parentNode; |
---|
16 | pai.parentNode.removeChild(pai);*/ |
---|
17 | } |
---|
18 | if (i > 3) //to avoid big message |
---|
19 | { |
---|
20 | deletedFiles = " " +returnVal.length + " " +get_lang("files"); |
---|
21 | break; |
---|
22 | } |
---|
23 | } |
---|
24 | write_msg(get_lang('Deleted %1',deletedFiles.substr(2))); |
---|
25 | //Repaint stripes |
---|
26 | toolbar.control('reload'); |
---|
27 | //folderList.drawStripes(); |
---|
28 | } |
---|
29 | handler.prototype.rename = function(data) { |
---|
30 | if (data == null){ |
---|
31 | var returnVal = new Array ("True",oldValue,oldValue); |
---|
32 | } |
---|
33 | else |
---|
34 | var returnVal = data.split('|'); |
---|
35 | if ( returnVal[0] == "True" ){ |
---|
36 | if (returnVal[1] != returnVal[2]) write_msg(get_lang('Renamed %1 to %2',returnVal[1],returnVal[2])); |
---|
37 | var nameLink = document.createElement('A'); |
---|
38 | var inputName = document.getElementById('input_'+returnVal[1]); |
---|
39 | var trFile = inputName.parentNode.parentNode.parentNode; |
---|
40 | |
---|
41 | nameLink.innerHTML = returnVal[2]; |
---|
42 | nameLink.href="./index.php?menuaction=filemanager.uifilemanager.view&file="+base64_encode(returnVal[2])+"&path="+base64_encode(currentPath); |
---|
43 | nameLink.target = "_blank"; |
---|
44 | nameLink.id = "name_"+returnVal[2]; |
---|
45 | |
---|
46 | inputName.parentNode.appendChild(nameLink); |
---|
47 | inputName.parentNode.removeChild(inputName); |
---|
48 | trFile.innerHTML = trFile.innerHTML.replace(returnVal[1],returnVal[2]); |
---|
49 | trFile.id = trFile.id.replace(returnVal[1],returnVal[2]); |
---|
50 | } |
---|
51 | else |
---|
52 | { |
---|
53 | if (returnVal[1] == "badchar") |
---|
54 | write_error(get_lang('File names cannot contain "%1"',returnVal[2])); |
---|
55 | else if (returnVal[1] == "slashes") |
---|
56 | write_error(get_lang('File names cannot contain \\ or /')); |
---|
57 | else if (returnVal[1] == "editing") |
---|
58 | write_error(get_lang('This file is being edited right now')); |
---|
59 | else |
---|
60 | write_error(get_lang('Could not rename %1 to %2', returnVal[1], returnVal[2])); |
---|
61 | } |
---|
62 | |
---|
63 | } |
---|
64 | handler.prototype.upload = function(data){ |
---|
65 | close_window(); |
---|
66 | connector.hideProgressBar(); |
---|
67 | var response = unserialize(data); |
---|
68 | if (response[0] == "Ok") |
---|
69 | write_msg(get_lang('All files created sucessfuly')); |
---|
70 | else |
---|
71 | for (var i=0;i < response.length; i++) |
---|
72 | write_error(response[i]); |
---|
73 | toolbar.control('reload'); |
---|
74 | } |
---|
75 | handler.prototype.restricted = function(data){ |
---|
76 | if (data.indexOf("True") == 0){ |
---|
77 | returnVal = data.split('|'); |
---|
78 | var img_lock = document.getElementById('restrict_'+returnVal[1]); |
---|
79 | if (img_lock.style.backgroundImage.indexOf('button_unlock') > 0) |
---|
80 | { |
---|
81 | img_lock.style.backgroundImage = img_lock.style.backgroundImage.replace(/button_unlock/g,'button_lock'); |
---|
82 | write_msg(get_lang('%1 marked as restricted',returnVal[1])); |
---|
83 | } |
---|
84 | else |
---|
85 | { |
---|
86 | img_lock.style.backgroundImage = img_lock.style.backgroundImage.replace(/button_lock/g,'button_unlock'); |
---|
87 | write_msg(get_lang('%1 unmarked as restricted',returnVal[1])); |
---|
88 | } |
---|
89 | } |
---|
90 | else |
---|
91 | write_error("Could not mark as restricted"); |
---|
92 | } |
---|
93 | handler.prototype.archive = function(data) { |
---|
94 | returnVal = data.split('|'); |
---|
95 | if (returnVal[0] == 'False') |
---|
96 | { |
---|
97 | write_error(get_lang('It was not possible to execute it')); |
---|
98 | } |
---|
99 | else |
---|
100 | if (returnVal[0] == 'wpasswd') |
---|
101 | { |
---|
102 | write_error(get_lang('Wrong password')); |
---|
103 | return; |
---|
104 | } |
---|
105 | else |
---|
106 | write_msg(get_lang('Your operation was successfully executed')); |
---|
107 | toolbar.control('reload'); |
---|
108 | |
---|
109 | } |
---|
110 | handler.prototype.updateComment = function (data) { |
---|
111 | var returnVal = data.split('|'); |
---|
112 | if (data.indexOf("True") == 0) |
---|
113 | { |
---|
114 | write_msg(get_lang('Updated comment for %1',returnVal[1])); |
---|
115 | } |
---|
116 | else |
---|
117 | { |
---|
118 | if (returnVal[1] == "badchar") |
---|
119 | write_error(get_lang('Comments cannot contain "%1"',returnVal[2])); |
---|
120 | else |
---|
121 | write_error(get_lang('You have no permission to access this file')); |
---|
122 | } |
---|
123 | |
---|
124 | } |
---|
125 | handler.prototype.draw_folders_list = function (data) { |
---|
126 | toolbar.control('reload'); |
---|
127 | folders_tree = new dFTree({name: 'main'}); |
---|
128 | folders = unserialize(data); |
---|
129 | var rootFold = new dNode({id:'root', caption:get_lang("filemanager")}); |
---|
130 | folders_tree.add(rootFold,'root'); |
---|
131 | for (var i=0;i<folders.length;i++) |
---|
132 | { |
---|
133 | var lastIndex = folders[i].lastIndexOf('/'); |
---|
134 | if (folders[i] != "/home/"+preferences.lid) |
---|
135 | var name = folders[i].substr(lastIndex+1,folders[i].length); |
---|
136 | else |
---|
137 | var name = get_lang("My Folder"); |
---|
138 | var parentDir = folders[i].substr(0,lastIndex); |
---|
139 | if (parentDir == '/home') |
---|
140 | parentDir = 'root'; |
---|
141 | var search_child = function(afolders,name){ |
---|
142 | for (j=0; j < afolders.length; j++) |
---|
143 | if (afolders[j].indexOf(name+'/') == 0) |
---|
144 | return true; |
---|
145 | return false; |
---|
146 | } |
---|
147 | folder = new dNode({id:folders[i], caption:name, plusSign:search_child(folders,folders[i]), onClick:'load(\''+folders[i]+'\',this)'}); |
---|
148 | if (i == 0) |
---|
149 | folders_tree.add(folder,'root'); |
---|
150 | else |
---|
151 | folders_tree.add(folder,parentDir); |
---|
152 | } |
---|
153 | document.getElementById('content_folders').innerHTML = ""; |
---|
154 | folders_tree.draw(document.getElementById('content_folders')); |
---|
155 | folders_tree.openTo(currentPath); |
---|
156 | folders_tree.getNodeById(currentPath)._select(); |
---|
157 | } |
---|
158 | handler.prototype.copyto = function (data) { |
---|
159 | returnVal = data.split('|'); |
---|
160 | if (returnVal[0] == 'NODIR') |
---|
161 | write_error(get_lang('Could not copy file because no destination directory is given')); |
---|
162 | else if(returnVal[0] == 'SOMEERROR'){ |
---|
163 | write_error(get_lang('Could not copy %1 file(s)',returnVal[1])); |
---|
164 | } |
---|
165 | else if(returnVal[0] == 'COPIED'){ |
---|
166 | if (returnVal[1] == 1) |
---|
167 | write_msg(get_lang('File copied successfuly')); |
---|
168 | else |
---|
169 | write_msg(get_lang('%1 files copied successfuly', returnVal[1])); |
---|
170 | } |
---|
171 | } |
---|
172 | handler.prototype.moveto = function (data) { |
---|
173 | returnVal = data.split('|'); |
---|
174 | if (returnVal[0] == 'NODIR') |
---|
175 | write_error(get_lang('Could not copy file because no destination directory is given')); |
---|
176 | else if(returnVal[0] == 'SOMEERROR'){ |
---|
177 | write_error(get_lang('Could not move %1 file(s)',returnVal[1])); |
---|
178 | } |
---|
179 | else if(returnVal[0] == 'MOVED'){ |
---|
180 | if (returnVal[1] == 1) |
---|
181 | write_msg(get_lang('File moved successfuly')); |
---|
182 | else |
---|
183 | write_msg(get_lang('%1 files moved successfuly', returnVal[1])); |
---|
184 | } |
---|
185 | handler.refreshDir(); |
---|
186 | } |
---|
187 | handler.prototype.refreshDir = function (data) { |
---|
188 | cExecute_('./index.php?menuaction=filemanager.uifilemanager.get_folders_list',handler.draw_folders_list); |
---|
189 | } |
---|
190 | |
---|
191 | var handler = new handler(); |
---|