1 <div id="reports" class="page-layout simple left-sidenav inner-sidenav">
3 <div class="header md-accent-bg" layout="row" layout-align="space-between center">
5 <div layout="row" layout-align="start center">
6 <div class="logo" layout="row" layout-align="start center">
7 <span class="logo-icon">
8 <md-icon md-font-icon="icon-chart-line" class="s24"></md-icon>
10 <span class="logo-text" translate="ANALYTICS.REPORTS">Reports</span>
18 <div ng-show="vm.selectedReports.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row"
19 layout-align="start center">
20 <div class="close-button-wrapper" ng-click="vm.selectedReports =[]">
21 <md-button layout="row" layout-align="start center">
22 <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>
23 <span translate="APP.BACK">Back</span>
27 <div flex layout="row" layout-align="space-between center">
29 <span class="selected-reports-count">
30 <span>{{vm.selectedReports.length}}</span>
31 <span translate="APP.SELECTED">selected</span>
34 <md-menu class="select-menu" ng-if="!vm.currentThread">
35 <md-button class="md-icon-button" ng-click="$mdMenu.open($event)" aria-label="multi select toggle" translate
36 translate-attr-aria-label="ANALYTICS.MULTI_SELECT_TOGGLE">
37 <md-icon md-font-icon="icon-menu-down"></md-icon>
39 <md-menu-content width="3">
41 <md-button ng-click="vm.selectAllReports()" translate="APP.SELECT_ALL">
46 <md-button ng-click="vm.deselectReports()" translate="APP.SELECT_NONE">
54 <div class="multi-select-actions">
55 <button class="md-icon-button" ng-csv="vm.exportSelectedReports" csv-label="true" filename="reports.csv">
56 <md-icon md-font-icon="icon-file-excel"></md-icon>
58 <md-button ng-if="vm.crudPermissions.canDelete && vm.currentNode.custom" class="md-icon-button"
59 ng-click="vm.deleteSelectedReports($event)" aria-label="delete selected" translate
60 translate-attr-label="APP.DELETE_SELECTED">
61 <md-icon md-font-icon="icon-delete"></md-icon>
66 <!-- / SELECTED BAR -->
69 <div class="content" md-background-bg layout="row" layout-align="start start">
71 <div layout="column" flex="30">
72 <md-card class="padding-top-5 padding-horizontal-10 padding-bottom-0">
74 <div layout="row" layout-align="start center">
75 <label for="searchFolder" class="m-0">
76 <md-icon md-font-icon="icon-magnify"></md-icon>
78 <md-input-container md-no-float class="margin-horizontal-0 margin-bottom-0 margin-top-10" flex>
79 <input id="searchFolder" placeholder="Search folder" type="text" ng-model="vm.search"
80 ng-model-options="{ debounce: 1000 }" translate
81 translate-attr-placeholder="ANALYTICS.SEARCH_FOR_FOLDER" />
86 <md-card class="padding-10 scrollable" ms-scroll>
87 <div js-tree="vm.treeDefaultConfig" tree-events-obj="vm.treeDefaultEvents" ng-model="vm.treeDefaultData"
88 tree="vm.treeDefaultInstance"></div>
90 <md-card class="padding-10 scrollable" ms-scroll>
91 <div js-tree="vm.treeCustomConfig" tree-events-obj="vm.treeCustomEvents" ng-model="vm.treeCustomData"
92 tree="vm.treeCustomInstance"></div>
96 <md-toolbar class="md-table-toolbar md-default">
97 <div class="md-toolbar-tools">
98 <span class="h2 secondary-text">{{vm.currentNode.text}}</span>
99 <p ng-if="vm.currentPath">
100 <span class="text-boxed">{{vm.currentPath}}</span>
103 <ms-search-bar on-search="vm.query.filter = query" on-collapse="vm.query.filter = undefined" debounce="300">
105 <div flow-init flow-file-added="vm.importReport($file, $event, $flow)">
106 <md-button ng-if="vm.crudPermissions.canEdit && vm.currentNode.custom" class="md-icon-button"
107 aria-label="import report" translate translate-attr-label="ANALYTICS.IMPORT_REPORT" flow-btn>
108 <md-icon md-font-icon="icon-upload"></md-icon>
111 <md-button ng-if="vm.crudPermissions.canEdit && vm.currentNode.custom" class="md-icon-button"
112 ng-click="vm.createOrEditReport($event)" aria-label="add report" translate
113 translate-attr-label="ANALYTICS.ADD_REPORT">
114 <md-icon md-font-icon="icon-plus"></md-icon>
119 <table md-table md-row-select multiple ng-model="vm.selectedReports" md-progress="vm.promise">
120 <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getReports">
122 <th md-column md-order-by="id" width="10px">
123 {{ 'APP.ID' | translate }}
125 <th md-column md-order-by="name">{{ 'APP.NAME' | translate }}</th>
126 <th md-column md-order-by="description">
127 {{ 'APP.DESCRIPTION' | translate }}
129 <th md-column md-order-by="createdAt">
130 {{ 'APP.CREATED_AT' | translate }}
132 <th md-column width="10px"></th>
136 <tr md-row ng-hide="vm.reports.rows.length">
137 <td md-cell colspan="5">
138 <div layout="row" layout-align="center center">
139 <span translate="APP.NO_AVAILABLE_INFO">No Available Info</span>
143 <tr md-row md-select="report" md-select-id="id" ng-repeat="report in vm.reports.rows">
145 ng-click="!vm.crudPermissions.canEdit ? vm.currentNode.custom && vm.editstate(report, $event) : vm.currentNode.custom && vm.createOrEditReport($event, report)"
150 ng-click="!vm.crudPermissions.canEdit ? vm.currentNode.custom && vm.editstate(report, $event) : vm.currentNode.custom && vm.createOrEditReport($event, report)"
151 md-cell class="name">
155 ng-click="!vm.crudPermissions.canEdit ? vm.currentNode.custom && vm.editstate(report, $event) : vm.currentNode.custom && vm.createOrEditReport($event, report)"
156 md-cell class="description">
157 {{report.description}}
160 ng-click="!vm.crudPermissions.canEdit ? vm.currentNode.custom && vm.editstate(report, $event) : vm.currentNode.custom && vm.createOrEditReport($event, report)"
161 md-cell class="createdAt">
162 {{report.createdAt | date:'medium'}}
164 <td md-cell class="actions">
166 <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="APP.MORE"
167 ng-click="$mdMenu.open($event)">
168 <md-icon md-font-icon="icon-dots-vertical"></md-icon>
171 <md-menu-content width="3">
172 <md-menu-item ng-if="vm.crudPermissions.canEdit">
173 <md-button ng-click="vm.copydialog(report, $event)" translate="ANALYTICS.COPY_REPORT">
178 <md-button ng-click="vm.previewdialog(report, $event)" translate="ANALYTICS.PREVIEW_REPORT">
183 <md-button ng-click="vm.rundialog(report, $event)" translate="ANALYTICS.RUN_REPORT">
188 <md-button ng-click="vm.downloadfile(report, $event)" translate="ANALYTICS.DOWNLOAD_JSON_REPORT">
193 ng-if="vm.crudPermissions.canEdit && vm.crudPermissions.canDelete && vm.currentNode.custom">
195 <md-menu-item ng-if="vm.crudPermissions.canEdit && vm.currentNode.custom">
196 <md-button ng-click="vm.editstate(report, $event)" translate="ANALYTICS.EDIT_REPORT">
201 <md-menu-item ng-if="vm.crudPermissions.canDelete && vm.currentNode.custom">
202 <md-button ng-click="vm.deleteconfirm(report, $event)" translate="ANALYTICS.DELETE_REPORT">
212 </md-table-container>
215 md-label="{page: '{{'APP.PAGE' | translate}}:', rowsPerPage: '{{'APP.ROWSPERPAGE' | translate}}:', of: '{{'APP.OF' | translate}}'}"
216 md-limit="vm.query.limit" md-limit-options="[10, 15, 20, 50, 100, 250]" md-page="vm.query.page"
217 md-total="{{vm.reports.count}}" md-on-paginate="vm.getReports" md-page-select></md-table-pagination>
223 <!-- NO ADD BUTTON BUTTON -->