UNPKG

sheercms

Version:

Sheer Cliff CMS is a simple and powerful content management system (CMS) for Node JS.

147 lines (136 loc) 7.45 kB
<div class="row main-container stats-view"> <div class="col-md-12"> <div ng-if="data.isAuthorized !== true" class="no-auth alert alert-danger"> You are not authorized to use this tool. </div> <div class="toolbar" ng-if="data.isAuthorized === true"> <ul> <li> <a href="javascript:void(0);" title="Reload the statistics" ng-click="refresh()"> <img src="/cms/static/images/icons/32/update.png" alt="Refresh"/> <span>Refresh</span> </a> </li> <li> <a href="javascript:void(0);" title="Backup the database" ng-click="backupDatabase()"> <img src="/cms/static/images/icons/32/backup.png" alt="Backup Database"/> <span>Backup Database</span> </a> </li> <li> <a href="javascript:void(0);" title="Upload a database backup to the server" ng-click="uploadBackup()"> <img src="/cms/static/images/icons/32/install.png" alt="Upload Backup"/> <span>Upload Backup</span> </a> </li> </ul> </div> <div ng-if="data.isAuthorized === true" style="padding-top:20px;"> <div ng-if="data.message != null && data.message.length > 0"> <div class="alert {{data.messageType}} max-width-medium">{{data.message}}</div> </div> <!-- Nav tabs --> <ul class="nav nav-pills" role="tablist"> <li role="presentation" ng-class="{active: data.tab == 'stats'}"><a href="javascript:void(0);" role="tab" data-toggle="tab" ng-click="changeTab('stats')">Statistics</a></li> <li role="presentation" ng-class="{active: data.tab == 'backups'}"><a href="javascript:void(0);" role="tab" data-toggle="tab" ng-click="changeTab('backups')">Database Backups</a></li> </ul> <!-- Tab panes --> <div class="tab-content"> <div role="tabpanel" class="tab-pane" ng-class="{active: data.tab == 'stats'}" id="tabStats"> <div class="row system-stats"> <div class="col-sm-12 col-md-4 col-lg-2"> <h3>Database</h3> <table> <tr> <td class="stat-label">Name:</td> <td>{{stats.database.db}}</td> </tr> <tr> <td class="stat-label">Collections:</td> <td>{{stats.database.collections}}</td> </tr> <tr> <td class="stat-label">Documents:</td> <td>{{stats.database.objects}}</td> </tr> <tr> <td class="stat-label">Data Size:</td> <td>{{stats.database.dataSize}} KB</td> </tr> <tr> <td class="stat-label">Storage Size:</td> <td>{{stats.database.storageSize}} KB</td> </tr> <tr> <td class="stat-label">Index Size:</td> <td>{{stats.database.indexSize}} KB</td> </tr> <tr> <td class="stat-label">File Size:</td> <td>{{stats.database.fileSize}} KB</td> </tr> </table> </div> <div class="col-sm-12 col-md-4 col-lg-2"> <h3>Collections</h3> <div ng-repeat="col in stats.collections"> <table> <tr> <td class="stat-label">Name:</td> <td>{{col.name}}</td> </tr> <tr> <td class="stat-label">Documents:</td> <td>{{col.count}}</td> </tr> <tr> <td class="stat-label">Data Size:</td> <td>{{col.size}} KB</td> </tr> <tr> <td class="stat-label">Storage Size:</td> <td>{{col.storageSize}} KB</td> </tr> <tr> <td class="stat-label">Index Size:</td> <td>{{col.totalIndexSize}} KB</td> </tr> </table> </div> </div> </div> <div class="system-stats-json"> <button type="button" ng-click="showJson()" class="btn btn-primary">Show JSON</button> <textarea ng-show="isJsonVisible">{{statsString}}</textarea> </div> </div> <div role="tabpanel" class="tab-pane" ng-class="{active: data.tab == 'backups'}" id="tabBackups"> <table class="table table-striped backups"> <thead> <tr> <th>Backup Name</th> <th style="width:240px;">Options</th> </tr> </thead> <tbody> <tr ng-repeat="b in backups"> <td>{{b.name}}</td> <td> <a href="{{b.url}}" title="Download this backup to your computer">Download</a> <a href="javascript:void(0);" ng-click="restoreBackup(b)" title="Overwrite the database with this backup">Restore</a> <a href="javascript:void(0);" ng-click="deleteBackup(b)" title="Delete this backup from the server">Delete</a> </td> </tr> </tbody> </table> <div class="backup-restore-result" ng-if="data.resultText && data.resultText.length > 0"> <strong>Database restore results:</strong> <div> {{data.resultText}} </div> </div> </div> </div> </div> </div> </div>