Changeset 6
- Timestamp:
- May 29, 2014 5:50:37 PM (11 years ago)
- Location:
- pro-bachkim-filespace/violetspace-prototype
- Files:
-
- 6 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
pro-bachkim-filespace/violetspace-prototype/assets/css/space/style.css
r5 r6 95 95 background: #FFFFFF; 96 96 float: left; 97 width: calc(100% - 22 3px);97 width: calc(100% - 228px); 98 98 margin: 0px; 99 99 padding: 0px; … … 124 124 padding-right: 5px; 125 125 padding-top: 15px; 126 border-right: #F5F5F5 5px solid;127 126 display: block; 128 127 width:100%; -
pro-bachkim-filespace/violetspace-prototype/assets/js/filemanager/filemanager.js
r5 r6 19 19 $('#directory-view-container').height(dirTreeHeight); 20 20 $('#directory-content-view-container').height(dirTreeHeight); 21 $('#directory-content-view-container').width('calc(100% - ' + ($('#directory-view-container').width() + 3) + 'px)');21 $('#directory-content-view-container').width('calc(100% - ' + ($('#directory-view-container').width() + 8) + 'px)'); 22 22 var scollWidth = $('#directory-content-view-container').width(); 23 23 … … 49 49 */ 50 50 51 var privateGrid = $('#file-container').violetGrid ({directoryContent:null}); 52 51 53 var privateTree = $('#treeview-container').violetTree({ 52 54 script:'getdata.php', 53 55 expandEasing: 'easeOutBounce', 54 56 collapseEasing: 'easeOutBounce', 55 homeDirNameDisplay: "Thư mục gá»c" 57 homeDirNameDisplay: "Thư mục gá»c", 58 grid: privateGrid 56 59 }); 57 60 -
pro-bachkim-filespace/violetspace-prototype/assets/js/vsfilemanager.js
r5 r6 15 15 if( o.collapseEasing == undefined ) o.collapseEasing = null; 16 16 17 if( o.directoryTreeData == undefined ) o.directoryTreeData = null; 18 if( o.grid == undefined ) o.grid = null; 19 17 20 // PRIVATE methods 18 21 var sendCommand = function (p) { … … 42 45 43 46 var renderTree = function (parseData) { 47 48 o.directoryTreeData = parseData; 49 var directoryData = parseData.DIRECTORIES; 50 44 51 var homeNode = createNode({ 45 52 id:0, … … 48 55 49 56 selectDir($(homeNode).find('> A')); 50 if ( parseData != null) {51 for (var i = 0; i < parseData.length ; i++) {57 if (directoryData != null) { 58 for (var i = 0; i < directoryData.length ; i++) { 52 59 var node = createNode ({ 53 id: parseData[i].id,54 name: parseData[i].name,55 curentNode: $('#' + o.dirIDprefix + parseData[i].parentID).find('> A'),56 hidden: ( parseData[i].parentID > 0) ? true : false60 id: directoryData[i].id, 61 name: directoryData[i].name, 62 curentNode: $('#' + o.dirIDprefix + directoryData[i].parentID).find('> A'), 63 hidden: (directoryData[i].parentID > 0) ? true : false 57 64 }) 58 65 }; … … 71 78 72 79 if (d.curentNode != null) { 73 var strHTML = '<ul class=" jqueryFileTree"><li id="' + o.dirIDprefix + d.id + '" class="directory collapsed"><a href="#" rel="' + d.name + '">' + d.name + '</a></li></ul>';80 var strHTML = '<ul class="vstree"><li id="' + o.dirIDprefix + d.id + '" class="directory collapsed"><a href="#" rel="' + d.name + '">' + d.name + '</a></li></ul>'; 74 81 75 82 $(d.curentNode).parent().append(strHTML); … … 78 85 79 86 }else if (d.id == 0){ 80 var strHTML = '<ul class=" jqueryFileTree"><li id="' + o.dirIDprefix + d.id + '" class="home"><a href="#" rel="' + d.name + '">' + d.name + '</a></li></ul>';87 var strHTML = '<ul class="vstree"><li id="' + o.dirIDprefix + d.id + '" class="home"><a href="#" rel="' + d.name + '">' + d.name + '</a></li></ul>'; 81 88 $(o.container).append(strHTML); 82 89 } 83 90 84 91 //bind event on new node 85 $('#' + o.dirIDprefix + d.id).find('a').bind("click", function(e){d.clickEvent(this) });92 $('#' + o.dirIDprefix + d.id).find('a').bind("click", function(e){d.clickEvent(this);return false;}); 86 93 $('#' + o.dirIDprefix + d.id).find('a').bind("contextmenu",function(e){ 87 94 e.preventDefault(); … … 126 133 $('.currentDir').removeClass('currentDir'); 127 134 $(c).addClass('currentDir'); 135 sendtoGrid(); 128 136 } 129 137 … … 131 139 alert ('showContextMenu on ' + $(n).text()); 132 140 }; 141 142 var sendtoGrid = function () { 143 o.grid.getData({ 144 directoryTreeData: o.directoryTreeData, 145 curentParent:$(o.container).find('.currentDir').parent().attr('id'), 146 dirIDprefix: o.dirIDprefix 147 }); 148 } 133 149 134 150 loadTree(); … … 205 221 206 222 violetGrid: function (o) { 223 if( !o ) var o = {}; 207 224 if( o.container == undefined ) o.container = $(this); 208 225 if( o.defaultViewMode == undefined ) o.defaultViewMode = 'thumbnail';//or 'list' 209 210 if( o.directoryContent == undefined ) o.directoryContent = null; 211 226 if( o.directoryTreeData == undefined ) o.directoryTreeData = null; 227 if( o.dirIDprefix == undefined ) o.dirIDprefix = null; 228 229 var createNode = function (d) { 230 if( !d ) var d = {}; 231 if( d.id == undefined ) d.id = null; 232 if( d.name == undefined ) d.name = null; 233 if( d.minetype == undefined ) d.minetype = 'directory'; 234 if( d.parentID == undefined ) d.parentID = null; 235 if( d.clickEvent == undefined ) d.clickEvent = null; 236 if( d.customEvent == undefined ) d.customEvent = null; 237 238 var strHTML = '<div class="vscell" rel="id:' + d.id + '">'; 239 strHTML += '<div class="selector unselected">'; 240 strHTML += '<div class="icon-' + d.minetype + '"></div>'; 241 strHTML += '</div>'; 242 strHTML += '<div class="file-name unselected">' + d.name + '</div>'; 243 strHTML += '</div>'; 244 245 $(o.container).append(strHTML); 246 247 $('div[rel="id:'+ d.id +'"]').bind('click',function(e){itemClick(this)}); 248 } 249 250 var itemClick = function (i) { 251 $(i).parent().find('.selector').removeClass('selected'); 252 $(i).parent().find('.selector').addClass('unselected'); 253 $(i).parent().find('.file-name').removeClass('selected'); 254 $(i).parent().find('.file-name').addClass('unselected'); 255 256 $(i).find('.file-name').removeClass('unselected'); 257 $(i).find('.file-name').addClass('selected'); 258 $(i).find('.selector').removeClass('unselected'); 259 $(i).find('.selector').addClass('selected'); 260 } 261 262 var renderGrid = function (o) { 263 $(o.container).find ('.vscell').remove(); 264 var childDir = o.directoryTreeData.DIRECTORIES; 265 var childFile = o.directoryTreeData.FILES; 266 var curentDirID = o.curentParent.substring(o.dirIDprefix.length, o.curentParent.length); 267 268 for (var i = 0 ; i < childDir.length; i++) { 269 if (childDir[i].parentID != curentDirID) continue; 270 createNode ({ 271 id: childDir[i].id, 272 name: childDir[i].name, 273 parentID: curentDirID, 274 }); 275 } 276 277 for (var i = 0 ; i < childFile.length; i++) { 278 if (childFile[i].parentID != curentDirID) continue; 279 createNode ({ 280 id: childFile[i].id, 281 name: childFile[i].name, 282 parentID: curentDirID, 283 minetype: childFile[i].minetype, 284 }); 285 } 286 } 287 288 this.getData = function (data) { 289 o.directoryTreeData = data.directoryTreeData; 290 o.curentParent = data.curentParent; 291 o.dirIDprefix = data.dirIDprefix 292 renderGrid(o); 293 } 294 295 this.initialize = function() { 296 return this; 297 }; 298 299 return this.initialize(); 212 300 } 213 301 }); -
pro-bachkim-filespace/violetspace-prototype/getdata.php
r5 r6 1 1 <?php 2 /**3 *array(4 * 0 => array ('id' => 1, 'name' => 'Dir 1', 'parentID' => 0),5 * 1 => array ('id' => 2, 'name' => 'Dir 2', 'parentID' => 0),6 * 2 => array ('id' => 3, 'name' => 'Dir 1.1', 'parentID' => 1),7 * 3 => array ('id' => 4, 'name' => 'Dir 1.1.1', 'parentID' => 3),8 * 4 => array ('id' => 5, 'name' => 'Dir 1.1.1.1', 'parentID' => 4),9 *)10 **/11 12 2 13 3 $aryDir = array( … … 22 12 ); 23 13 14 $aryFile = array( 15 0 => array('id' => 1, 'name' => 'File 1', 'minetype' => 'text', 'size' => '1.5MB', 'parentID' => 1), 16 1 => array('id' => 2, 'name' => 'File 2', 'minetype' => 'text', 'size' => '1.6MB', 'parentID' => 1), 17 2 => array('id' => 3, 'name' => 'File 3', 'minetype' => 'text', 'size' => '1.7MB', 'parentID' => 2), 18 3 => array('id' => 4, 'name' => 'File 4', 'minetype' => 'text', 'size' => '1.8MB', 'parentID' => 2), 19 4 => array('id' => 5, 'name' => 'File 5', 'minetype' => 'text', 'size' => '1.8MB', 'parentID' => 0), 20 5 => array('id' => 6, 'name' => 'File 6', 'minetype' => 'text', 'size' => '1.8MB', 'parentID' => 3), 21 5 => array('id' => 7, 'name' => 'File 7', 'minetype' => 'text', 'size' => '1.8MB', 'parentID' => 5) 22 ); 23 24 $aryData = array('DIRECTORIES' => $aryDir, 'FILES' => $aryFile); 25 26 24 27 if (isset($_POST['action'])) { 25 if ($_POST['action'] == 'create_dir') {28 /*if ($_POST['action'] == 'create_dir') { 26 29 $newID = 9; 27 30 $aryNewDir = array('id' => $newID, 'name' => $_POST['name'], 'parentID' => $_POST['parentID']); … … 31 34 $aryDelDir = array('id' => $_POST['id'], 'isSuccess' => true); 32 35 echo json_encode($aryDelDir); 33 } 36 }*/ 34 37 } 35 38 else { 36 echo json_encode($aryD ir);39 echo json_encode($aryData); 37 40 } -
pro-bachkim-filespace/violetspace-prototype/index.html
r5 r6 61 61 <div id="directory-content-view-container"> 62 62 <div id="file-container" class="vsgrid"> 63 < div class="vscell">64 <div class="selector ">63 <!-- <div class="vscell"> 64 <div class="selector unselected"> 65 65 <div class="icon-directory"></div> 66 66 </div> 67 <div class="file-name ">Dir 1</div>67 <div class="file-name unselected">Dir 1</div> 68 68 </div> 69 69 70 70 <div class="vscell"> 71 <div class="selector ">71 <div class="selector selected"> 72 72 <div class="icon-directory"></div> 73 73 </div> 74 <div class="file-name ">Dir 2</div>74 <div class="file-name selected">Dir 2</div> 75 75 </div> 76 76 77 77 <div class="vscell"> 78 <div class="selector ">78 <div class="selector unselected"> 79 79 <div class="icon-directory"></div> 80 80 </div> 81 <div class="file-name ">Dir 3</div>81 <div class="file-name unselected">Dir 3</div> 82 82 </div> 83 83 84 84 <div class="vscell"> 85 <div class="selector ">85 <div class="selector unselected"> 86 86 <div class="icon-text"></div> 87 87 </div> 88 <div class="file-name ">File 1</div>88 <div class="file-name unselected">File 1</div> 89 89 </div> 90 90 91 91 <div class="vscell"> 92 <div class="selector ">92 <div class="selector unselected"> 93 93 <div class="icon-text"></div> 94 94 </div> 95 <div class="file-name ">File 2</div>95 <div class="file-name unselected">File 2</div> 96 96 </div> 97 97 98 98 <div class="vscell"> 99 <div class="selector ">99 <div class="selector selected"> 100 100 <div class="icon-text"></div> 101 101 </div> 102 <div class="file-name ">File 3</div>102 <div class="file-name selected">File 3</div> 103 103 </div> 104 104 105 105 <div class="vscell"> 106 <div class="selector ">106 <div class="selector unselected"> 107 107 <div class="icon-text"></div> 108 108 </div> 109 <div class="file-name ">File 4</div>110 </div> 109 <div class="file-name unselected">File 4</div> 110 </div> --> 111 111 </div> 112 112 </div>
Note: See TracChangeset
for help on using the changeset viewer.