- <div class="container main" v-show="session.valid" v-cloak>
- <div class="row">
- <div class="col-lg-12">
- <center v-show="!uploadStatus.busy">
- <form id="fileUploadForm">
- <input type="file" v-el:upload style="display: none" id="uploadInput" multiple/>
- <button class="btn btn-primary" v-on:click.stop.prevent="upload()" id="uploadButton">Upload</button>
- </form>
- </center>
- </div>
- <div class="col-lg-12">
- <ol class="breadcrumb">
- <li><a href="#/"><i class="fa fa-home"></i></a></li>
- <li v-for="part in pathParts.slice(0, -1)">
- <a href="{{ part.link }}">{{ part.name }}</a>
- </li>
- <li>{{ pathParts.slice(-1)[0].name }}</li>
- <button class="btn btn-default btn-sm pull-right" v-on:click="createDirectoryAsk()">Create Folder</button>
- </ol>
- </div>
- <div class="col-lg-12" v-show="busy">
- <br/>
- <br/>
- <center>
- <i class="fa fa-refresh fa-4x fa-spin"></i>
- </center>
- </div>
- <div class="col-lg-12" v-show="!busy">
- <table class="table table-hover table-condensed">
- <thead>
- <tr>
- <th>Type</th>
- <th>Name</th>
- <th>Size</th>
- <th>Modified</th>
- <th> </th>
- </tr>
- </thead>
- <tbody>
- <tr v-show="entries.length === 0">
- <th colspan="5"><i>Empty folder</i></th>
- </tr>
- <tr v-for="entry in entries" v-on:click="open(entry)" class="hand">
- <th>
- <img v-bind:src="entry.previewUrl" height="48px" width="48px"/>
- </th>
- <th>{{ entry.filePath }}</th>
- <th>{{ entry.size | prettyFileSize }}</th>
- <th><span v-my-tooltip="foobar" data-toggle="tooltip" title="{{ entry.mtime }}">{{ entry.mtime | prettyDate }}</span></th>
- <th style="text-align: right;">
- <span class="entry-toolbar">
- <button class="btn btn-sm btn-default" v-on:click.stop="renameAsk(entry)" title="Rename"><i class="fa fa-pencil"></i></button>
- <button class="btn btn-sm btn-danger" v-on:click.stop="delAsk(entry)" title="Delete"><i class="fa fa-trash"></i></button>
- </span>
- </th>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
+ <div v-show="!busy && session.valid" v-cloak>
+ <center>
+ <el-table :data="entries" style="max-width: 1280px; width: 100%" height="100%" empty-text="Folder is emtpy" :default-sort="{ prop: 'filePath', order: 'descending' }" @row-click="open">
+ <el-table-column prop="previewUrl" label="Type" width="80px" sortable>
+ <template slot-scope="scope">
+ <el-image v-bind:src="scope.row.previewUrl" class="list-icon" style="width: 32px; height: 32px" fit="cover"></el-image>
+ </template>
+ </el-table-column>
+ <el-table-column prop="filePath" label="Name" sortable>
+ <template slot-scope="scope">
+ <el-input size="small" v-on:keyup.native.enter="onRenameSubmit(scope.row)" v-on:keyup.native.esc="onRenameEnd(scope.row)" @blur="onRenameEnd(scope.row)" v-model="scope.row.filePathNew" :id="'filePathRenameInputId-' + scope.$index" v-show="scope.row.rename"></el-input>
+ <span v-show="!scope.row.rename">{{ scope.row.filePath }}</span>
+ <el-button size="small" icon="el-icon-edit" type="text" plain circle class="rename-action" v-show="!scope.row.rename" @click.stop="onRename(scope.row, scope)"></el-button>
+ </template>
+ </el-table-column>
+ <el-table-column prop="size" label="Size" width="150px" sortable :formatter="prettyFileSize"></el-table-column>
+ <el-table-column prop="mtime" label="Modified" width="150px" sortable :formatter="prettyDate"></el-table-column>
+ <el-table-column label="Actions" align="right" width="200px" class-name="list-actions">
+ <template slot-scope="scope">
+ <el-button size="small" icon="el-icon-download" type="text" plain circle v-show="!scope.row.rename && scope.row.isFile" @click.stop="onDownload(scope.row)"></el-button>
+ <el-button size="small" icon="el-icon-delete" type="text" plain circle v-show="!scope.row.rename" @click.stop="onDelete(scope.row)"></el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ </center>