Ignore:
Timestamp:
Aug 25, 2014 7:37:45 PM (11 years ago)
Author:
dungnv
Message:
 
Location:
pro-bachkim-filespace/sourcecode/assets
Files:
4 added
5 edited

Legend:

Unmodified
Added
Removed
  • pro-bachkim-filespace/sourcecode/assets/css/space/style.css

    r42 r66  
    33@import "../jquery/jquery-ui-1.10.4.min.css";
    44@import "../jquery/jquery.contextmenu_new.css";
    5 @import "../jquery/tinyscrollbar.css";
    65@import "../font-awesome.min.css";
    76@import "../ace.min.css";
    87@import "vsgrid.css";
     8@import "grid.css";
    99@import "contextmenu.css";
    1010@import "../uploadfile.min.css";
     
    142142#file-container {
    143143        padding-left: 10px;
    144         padding-right: 5px;
    145         padding-top: 15px;
     144        padding-right: 10px;
     145        padding-top: 10px;
    146146        display: block;
    147147        width:100%;
  • pro-bachkim-filespace/sourcecode/assets/js/filemanager/filemanager.js

    r42 r66  
    7272            });
    7373               
    74                 /*$('#btnNewFolder').click (function(){
    75                         var curDir = privateTree.getCurrentDir();
    76                         privateTree.createDir(curDir);
     74                $('#btnNewFolder').click (function(){
    7775                });
    7876               
    79                 $('#btnCopy').click (function(){
     77                /*$('#btnCopy').click (function(){
    8078                        privateTree.copy();
    8179                });*/
  • pro-bachkim-filespace/sourcecode/assets/js/jquery/jquery.contextMenu.js

    r14 r66  
    2626                       
    2727                        if( o.disabledItems == undefined ) o.disabledItems = null;
     28                        if( o.enabledItems == undefined ) o.enabledItems = null;
    2829                       
    2930                        // Loop each context menu
     
    8283                                                        });
    8384                                                       
    84                                                        
    8585                                                        if (o.disabledItems != null) {
    8686                                                                for (var i = 0; i < o.disabledItems.length; i ++) {
    8787                                                                        $(menu).find('LI.' + o.disabledItems[i]).addClass('disabled');
     88                                                                }
     89                                                        }
     90                                                        else if (o.enabledItems != null) {
     91                                                                for (var i = 0; i < o.enabledItems.length; i ++) {
     92                                                                        $(menu).find('LI.' + o.enabledItems[i]).removeClass('disabled');
    8893                                                                }
    8994                                                        }
  • pro-bachkim-filespace/sourcecode/assets/js/vsgrid.js

    r45 r66  
    2626                                if( d.customEvent == undefined ) d.customEvent = null;
    2727
    28                                 var strHTML = '<div class="vscell" rel="id:' + d.id + '">';
     28                                var strHTML = '<div class="vscell '+ d.minetype +'" rel="id:' + d.id + '">';
    2929                                        strHTML += '<div class="selector unselected">';
    3030                                        strHTML +=      '<div class="icon-' + d.minetype + '"></div>';
     
    3434                               
    3535                                var disabledItemsList = null;
     36                                var enabledItemsList = null;
     37                                var menuName = '';
    3638                               
    3739                                if (d.minetype == 'directory') {
    3840                                        disabledItemsList = ['preview'];
     41                                        menuName = 'gridMenuDir';
     42                                }
     43                                else {
     44                                        disabledItemsList = ['newfolder'];
     45                                        menuName = 'gridMenuFile';
    3946                                }
    4047                               
    4148                                $(o.container).append(strHTML);
    4249
    43                                 $('div[rel="id:'+ d.id +'"]').bind('click',function(e){itemClick(this)});
    44                                
    45                                 $('div[rel="id:'+ d.id +'"]').contextMenu({
    46                                         menu: 'gridMenu',
    47                                         disabledItems: disabledItemsList
     50                                $('div[rel="id:'+ d.id +'"].' + d.minetype).bind('click',function(e){itemClick(this)});
     51                                $('div[rel="id:'+ d.id +'"].' + d.minetype).bind('dblclick',function(e){doubleClick(this)});
     52                               
     53                                $('div[rel="id:'+ d.id +'"].' + d.minetype).draggable({ containment: "parent",helper: "original" });
     54                               
     55                                $('div[rel="id:'+ d.id +'"].' + d.minetype).contextMenu({
     56                                        menu: menuName,
     57                                        disabledItems: disabledItemsList,
     58                                        enabledItems: enabledItemsList
    4859                                }, function(action, el, pos) {
    4960                                        itemClick(el);
     
    106117                                $('#box-newfolder').on('show.bs.modal', function () {
    107118                                        $('#box-newfolder').find('#frm-newfolder').get(0).reset();
    108                                        
    109119                                });
    110120                               
     
    211221                        }
    212222                       
     223                        var doubleClick = function (i) {
     224                                var rel = $(i).attr('rel');
     225                                if ($(i).hasClass('directory')) {                               
     226                                        var id = rel.substring(3, rel.length);
     227                                        o.curentParent = o.dirIDprefix + id;
     228                                        renderGrid(o);
     229                                        o.tree.openTreeOffset(id);
     230                                }
     231                        }
     232                       
    213233                        var searchItemByID = function (itemID, type) {
    214234                                var source = (type == 'directory') ? o.directoryTreeData.DIRECTORIES : (type == 'file') ? o.directoryTreeData.FILES : null;
     
    241261                                var disabledItemsList = ['preview','rename','copy','cut','delete','open'];
    242262                                var item = searchItemByID(currentDirID,'directory');
    243                                 console.log(item);
     263                               
    244264                                $(o.container).contextMenu({
    245265                                        menu: 'gridMenuParent',
     
    380400                                }
    381401                        }
     402                       
     403                        this.searchItem = function (id, type) {
     404                                return searchItemByID (id, type);
     405                        }
    382406
    383407                        this.initialize = function() {
  • pro-bachkim-filespace/sourcecode/assets/js/vstree.js

    r45 r66  
    5656                                o.directoryTreeData = parseData;                               
    5757                                var directoryData = parseData.DIRECTORIES;
    58 
     58                               
    5959                                var homeNode = createNode({
    6060                                        id:0,
     
    6464                                selectDir($(homeNode).find('> A'));
    6565                                if (directoryData != null) {
     66                                        var count = 0;
    6667                                        for (var i = 0; i < directoryData.length ; i++) {
     68                                                var htmlNode = $(o.container).find('#' + o.dirIDprefix + directoryData[i].parentID);
     69                                               
    6770                                                var node = createNode ({
    6871                                                        id: directoryData[i].id,
    6972                                                        name: directoryData[i].name,
    70                                                         currentNode: $(o.container).find('#' + o.dirIDprefix + directoryData[i].parentID).find('> A'),
     73                                                        currentNode: $(htmlNode).find('> A'),
    7174                                                        hidden: (directoryData[i].parentID > 0) ? true : false
    7275                                                })
     76                                               
     77                                                count ++;
    7378                                        };
    7479                                }
     
    104109                                //bind new node to data
    105110                                if (d.addToJSONData == true) {
    106                                         //o.directoryTreeData.DIRECTORIES.length
    107111                                        var newdir = {};
    108112                                        newdir.id = d.id;
    109113                                        newdir.name = d.name;
    110                                        
    111                                         console.log(d.currentNode);
    112                                        
    113114                                        newdir.parentID = $(o.container).find(d.currentNode).parent().attr('id').substring(o.dirIDprefix.length, $(d.currentNode).parent().attr('id').length);
    114115                                        o.directoryTreeData.DIRECTORIES.push(newdir);
     
    164165                                return $(parent).find('UL').size();
    165166                        }
    166 
    167                         var openDir = function (o) {
    168                                 if( $(o).parent().hasClass('collapsed') ) {
    169                                         $(o).parent().find('> UL:hidden').slideDown({ duration: o.expandSpeed, easing: o.expandEasing });
    170                                         $(o).parent().removeClass('collapsed').addClass('expanded');
    171                                 }
    172                                 else if( $(o).parent().hasClass('expanded') ) {
    173                                         $(o).parent().find('> UL').slideUp({ duration: o.collapseSpeed, easing: o.collapseEasing });
    174                                         $(o).parent().removeClass('expanded').addClass('collapsed');
    175                                 }
    176                                 selectDir(o);
     167                       
     168                        var openDirById = function (dirID) {
     169                                console.log(o.grid);
     170                                var item = o.grid.searchItem(dirID, 'directory');
     171                                var treeNode = $(o.container).find('#' + o.dirIDprefix + item.id);
     172                               
     173                                if(item.parentID != 0) {
     174                                        var parent = $(o.container).find('#' + o.dirIDprefix + item.parentID);
     175                                        if( $(parent).hasClass('collapsed') ) {
     176                                                $(parent).removeClass('collapsed').addClass('expanded');
     177                                                $(parent).find('> UL:hidden').slideDown({ duration: o.expandSpeed, easing: o.expandEasing });
     178                                        }
     179                                }
     180                               
     181                                if( $(treeNode).hasClass('collapsed') ) {
     182                                        $(treeNode).find('> UL:hidden').slideDown({ duration: o.expandSpeed, easing: o.expandEasing });
     183                                        $(treeNode).parent().parent().find('> UL:hidden').slideDown({ duration: o.expandSpeed, easing: o.expandEasing });
     184                                        $(treeNode).removeClass('collapsed').addClass('expanded');
     185                                }
     186                               
     187                                selectDir($(treeNode).find('> A'));
     188                        }
     189
     190                        var openDir = function (i) {
     191                                closeAllChild($(i).parent());
     192                               
     193                                if( $(i).parent().hasClass('collapsed') ) {
     194                                        $(i).parent().find('> UL:hidden').slideDown({ duration: o.expandSpeed, easing: o.expandEasing });
     195                                        $(i).parent().removeClass('collapsed').addClass('expanded');
     196                                }
     197                                else if( $(i).parent().hasClass('expanded') ) {
     198                                        $(i).parent().find('> UL').slideUp({ duration: o.collapseSpeed, easing: o.collapseEasing });
     199                                        $(i).parent().removeClass('expanded').addClass('collapsed');
     200                                }
     201                               
     202                                selectDir(i);
     203                        }
     204                       
     205                        var closeAllChild = function (i) {
     206                                if ($(i).hasClass('home')) return;
     207                                var aryChildDir = $(i).find ('UL');
     208                                for (var i = 0; i < aryChildDir.length; i++) {
     209                                        $(aryChildDir[i]).slideUp({ duration: o.collapseSpeed, easing: o.collapseEasing });
     210                                        $(aryChildDir[i]).find('> LI').removeClass('expanded').addClass('collapsed');
     211                                }
    177212                        }
    178213
     
    295330                                        hidden: false,
    296331                                        addToJSONData:true});
    297                         }
     332                        };
    298333
    299334                        this.deleteDir = function (c) {
     
    348383                               
    349384                        }
     385                       
     386                        this.openTreeOffset = function (nodeID) {
     387                                openDirById(nodeID);
     388                        }
    350389
    351390                        this.initialize = function() {
Note: See TracChangeset for help on using the changeset viewer.