Changeset 140
- Timestamp:
- Sep 19, 2014 7:10:40 PM (11 years ago)
- Location:
- pro-bachkim-filespace/sourcecode/assets/js
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
pro-bachkim-filespace/sourcecode/assets/js/grid.js
r121 r140 118 118 var parentDirID = o.manager.getTreeCurrentNode(); 119 119 if (o.data.DIRECTORIES.length > 0) { 120 for (var i = 0; i < o.data.DIRECTORIES.length; i++) {121 if (o.data.DIRECTORIES[ i].parentID == parentDirID) {122 var li = createNode ({item: o.data.DIRECTORIES[ i]});120 for (var d in o.data.DIRECTORIES) { 121 if (o.data.DIRECTORIES[d].parentID == parentDirID) { 122 var li = createNode ({item: o.data.DIRECTORIES[d]}); 123 123 $(ul).append(li); 124 124 } … … 127 127 128 128 if (o.data.FILES.length > 0) { 129 for (var i = 0; i < o.data.FILES.length; i++) {130 if (o.data.FILES[ i].parentID == parentDirID) {131 var li = createNode ({item: o.data.FILES[ i]});129 for (var f in o.data.FILES) { 130 if (o.data.FILES[f].parentID == parentDirID) { 131 var li = createNode ({item: o.data.FILES[f]}); 132 132 $(ul).append(li); 133 133 } … … 192 192 ******************/ 193 193 194 this.reloadGrid = function ( nodeID) {194 this.reloadGrid = function () { 195 195 initGrid(); 196 196 } -
pro-bachkim-filespace/sourcecode/assets/js/manager.js
r121 r140 197 197 } 198 198 199 for (var i = 0; i < data.length; i++) { 200 if (data[i].id == id) return i; 199 //for (var i = 0; i < data.length; i++) { 200 for (var i in data) { 201 if (data[i].id == id) { 202 return i; 203 } 201 204 } 202 205 } … … 218 221 } 219 222 220 for (var i = 0; i < data.length; i++) {223 for(i in data) { 221 224 if (data[i].parentID == parentID) { 222 225 aryItem[index] = data[i]; … … 238 241 self.updateData({updateAll:true}); 239 242 o.oTree.refeshTree(); 240 console.log(o);241 243 }, 242 244 callbackDone:function () {$(o).find('i').removeClass('icon-spin');}, … … 261 263 262 264 var btnCopyClick = function () { 263 copy( );265 copy('copy'); 264 266 } 265 267 … … 268 270 } 269 271 272 var btnCutClick = function () { 273 copy('move'); 274 } 270 275 271 276 var bindEventToToolbars = function () { … … 275 280 $(btnDel).click(function(e){btnDelClick()}); 276 281 $(btnCopy).click(function(e){btnCopyClick()}); 282 $(btnCut).click(function(e){btnCutClick()}); 277 283 $(btnPaste).click(function(e){btnPasteClick()}) 278 284 279 /*btnCut 280 btnShare 285 /*btnShare 281 286 btnPreview 282 287 btnDownload … … 364 369 o.oTree.createNode(node); 365 370 o.data.DIRECTORIES[$(o.data.DIRECTORIES).length] = node; 366 if (o.oGrid) o.oGrid.reloadGrid( parseData.parentID);371 if (o.oGrid) o.oGrid.reloadGrid(); 367 372 } 368 373 } … … 372 377 /******************************** 373 378 * COPY & PASTE & MOVE - START * 374 ************=*******************/ 375 var copy = function ( ){379 ************=*******************/ 380 var copy = function (act){ 376 381 //detect selected items 377 382 //push to clipboard … … 381 386 var node = o.oTree.getSelectedNode(); 382 387 var itemID = $(node).attr('id'); 388 389 if (itemID == 0) return false; 390 383 391 items[0] = o.data.DIRECTORIES[searchItemByID(itemID, 'directory')]; 384 392 items[0].type = 'directory'; … … 387 395 if ($(items).length > 0) { 388 396 oClipBoard.items = items; 389 oClipBoard.act = 'copy'; 390 } 397 oClipBoard.act = act; 398 } 399 return true; 391 400 } 392 401 … … 398 407 var items = []; 399 408 var destination = self.getTreeCurrentNode(); 400 401 $(oClipBoard.items).each(function (index) { 402 var node = new Object; 403 if (this.type == 'directory') 404 buildTreeFromParent(this.id, node); 405 else { 406 node.id = this.id; 407 node.type = 'file'; 408 } 409 410 items[index] = node; 411 }); 412 413 var postdata = {destination:destination,data:JSON.stringify(items)}; 414 var script = 'copy'; 409 if (oClipBoard.act != 'copy') { 410 $(oClipBoard.items).each(function (index) { 411 var node = new Object; 412 if (this.type == 'directory') 413 buildTreeFromParent(this.id, node); 414 else { 415 node.id = this.id; 416 node.type = 'file'; 417 } 418 419 items[index] = node; 420 }); 421 } 422 else { 423 items = oClipBoard.items; 424 } 425 426 var postdata = {act:oClipBoard.act,destination:destination,data:JSON.stringify(items)}; 427 var script = oClipBoard.act; 428 415 429 sendCommand ({ 416 430 postdata:postdata, 417 431 script:script, 418 432 callbackSuccess:function(parseData){ 419 console.log(parseData); 433 if (oClipBoard.act == 'copy'){ 434 $(parseData.DIRECTORIES).each(function (index) { 435 o.data.DIRECTORIES[$(o.data.DIRECTORIES).length] = this; 436 }); 437 438 $(parseData.FILES).each(function (index) { 439 o.data.FILES[$(o.data.FILES).length] = this; 440 }); 441 442 o.data.DIRECTORIES.sort(function (a,b) { 443 return a.parentID - b.parentID; 444 }); 445 446 o.oTree.setData (o.data.DIRECTORIES); 447 o.oGrid.setData (o.data); 448 o.oTree.createCopyNode(parseData.DIRECTORIES); 449 o.oGrid.reloadGrid(); 450 } 420 451 } 421 452 }); … … 424 455 425 456 var move = function () { 426 457 427 458 } 428 459 … … 453 484 454 485 confirmText += '<br /><div style="color:red">(hà nh Äá»ng nà y sẜ xóa tất cả thư mục con và các file trong các thư mục Äã chá»n)</div>'; 486 487 var parentID = item[0].parentID; 455 488 456 489 for (var i = 0; i < item.length; i++) { … … 496 529 var delobj = JSON.stringify(item); 497 530 var postdata = {delobj:delobj}; 498 var script = 'delete dir';531 var script = 'delete'; 499 532 sendCommand ({ 500 533 postdata:postdata, … … 516 549 }, 517 550 callbackDone: function (obj) { 518 var dirs = [];519 var files = [];520 551 if($(parseData.DIRECTORIES).length > 0) { 521 $(o.data.DIRECTORIES).each(function (index){ 522 var found = $.inArray(this.id, parseData.DIRECTORIES); 523 if(found == -1) { 524 dirs[$(dirs).length] = this; 525 } 552 $(parseData.DIRECTORIES).each(function(index){ 553 delete o.data.DIRECTORIES[searchItemByID(this, 'directory')]; 526 554 }); 527 528 o.data.DIRECTORIES = dirs;529 555 } 530 556 531 557 if($(parseData.FILES).length > 0) { 532 $(o.data.FILES).each(function (index){ 533 var found = $.inArray(this.id, parseData.FILES); 534 if(found == -1) { 535 files[$(dirs).length] = this; 536 } 537 }) 538 539 o.data.FILES = files; 558 $(parseData.FILES).each(function(index){ 559 delete o.data.FILES[searchItemByID(this, 'file')]; 560 }); 540 561 } 541 562 542 563 o.oTree.setData (o.data.DIRECTORIES); 543 564 o.oGrid.setData (o.data); 544 }, 565 self.setTreeCurrentNode(parentID); 566 o.oGrid.reloadGrid(); 567 }, 545 568 callbackFail: function(){} 546 569 }); … … 556 579 //then fire action of Grid 557 580 treeCurrentNode = treeNode; 558 if (o.oGrid) o.oGrid.reloadGrid( treeNode);581 if (o.oGrid) o.oGrid.reloadGrid(); 559 582 }; 560 583 -
pro-bachkim-filespace/sourcecode/assets/js/tree.js
r70 r140 18 18 var selectedNode = null; 19 19 var documentBoundEvent = false; 20 var self = this; 20 21 21 22 var createNode = function (node) { 22 23 23 if( !node ) var node = {}; 24 24 if( node.item == undefined ) node.item = null; //item.id, item.name, item.parentID … … 258 258 259 259 this.refeshTree = function () { 260 for (var i = 0; i < o.data.length; i++) { 260 //for (var i = 0; i < o.data.length; i++) { 261 for (var i in o.data) { 261 262 var node = nodeIsExisted(o.data[i].id); 262 263 var defaulState = isCollapsedNode(node) ? 0:1; … … 287 288 return treeNodes[0]; 288 289 } 289 290 this.initialize = function () { 291 initTree(); 292 return this; 293 }; 290 291 this.createCopyNode = function (data) { 292 for(var i in data) { 293 createNode ({item: data[i]}); 294 } 295 self.refeshTree(); 296 } 294 297 295 298 this.rename = function (key) { … … 305 308 } 306 309 310 this.initialize = function () { 311 initTree(); 312 return this; 313 }; 314 307 315 return this.initialize(); 308 316 }
Note: See TracChangeset
for help on using the changeset viewer.