1 <!-- report template builder -->
2 <ng-form name="reportTemplateForm" class="form-validated">
6 [% l('Template Name') %]
9 <div><input type="text" class="form-control" ng-model="templateName" required/></div>
11 <div class="col-md-2">
12 [% l('Documentation URL') %]
14 <div class="col-md-4">
15 <div><input type="text" class="form-control" ng-model="templateDocURL"/></div>
20 <div class="col-md-2">
21 [% l('Template Description') %]
23 <div class="col-md-10">
24 <div><textarea class="form-control" ng-model="templateDescription" /></div>
29 <div class="col-md-2">
30 <button ng-disabled="reportTemplateForm.$invalid" ng-click="saveTemplate()" class="btn btn-default">[% l('Save Template') %]</button>
37 <div class="row panel" style="max-height: 400px; min-height: 400px;">
38 <div class="col-md-5" style="max-height: 400px; min-height: 400px; overflow-y: scroll;">
41 <div class="col-xs-3"><strong>[% l('Core Source') %]</strong></div>
42 <div class="col-xs-6">
43 <div class="source-selector nullable">
44 <select class="form-control" ng-model="coreSource" ng-change="changeCoreSource()"
45 ng-options="s.name as s.label group by s.core_label for s in allSources">
46 <option value="">[% l('-- Select Source --') %]</option>
50 <div class="col-xs-3">
51 <label for="enable_nullability_cb">
52 [% l('Nullability') %]
54 <input type="checkbox" ng-model="enable_nullability"/>
62 tree-model="class_tree"
63 on-node-toggle="treeExpand(node, expanded)"
64 on-selection="selectSource(node, selected, $path)"
67 ng-show="enable_nullability"
69 ng-init="join_types = [{type:'inner',label:'[% l('Default') %]'},{type:'left',label:'[% l('Child nullable') %]'},{type:'right',label:'[% l('Parent nullable') %]'}]"
70 ng-options="j.type as j.label for j in join_types"></select>
71 {{ node.label || n.id }}
75 <div class="col-md-7">
77 <div class="col-md-7" style="max-height: 400px; min-height: 400px; overflow-y: scroll;">
79 <div class="col-xs-3"><strong>[% l('Source Path') %]</strong></div>
80 <div class="col-xs-9"><input type="text" class="form-control" ng-model="currentPathLabel"/></div>
87 tree-model="selected_source_fields"
88 selected-nodes="selected_source_field_list"
89 on-selection="selectFields()"
90 options="field_tree_opts"
91 filter-expression="filterFields"
93 <span ng-switch="" on="node.datatype">
94 <span ng-switch-when="bool" class="glyphicon glyphicon-ok-sign" aria-hidden="true"></span>
95 <span ng-switch-when="float" class="glyphicon glyphicon-sound-5-1" aria-hidden="true"></span>
96 <span ng-switch-when="id" class="glyphicon glyphicon-barcode" aria-hidden="true"></span>
97 <span ng-switch-when="int" class="glyphicon glyphicon-scale" aria-hidden="true"></span>
98 <span ng-switch-when="interval" class="glyphicon glyphicon-resize-horizontal" aria-hidden="true"></span>
99 <span ng-switch-when="link" class="glyphicon glyphicon-link" aria-hidden="true"></span>
100 <span ng-switch-when="money" class="glyphicon glyphicon-usd" aria-hidden="true"></span>
101 <span ng-switch-when="number" class="glyphicon glyphicon-scale" aria-hidden="true"></span>
102 <span ng-switch-when="org_unit" class="glyphicon glyphicon-tree-conifer" aria-hidden="true"></span>
103 <span ng-switch-when="text" class="glyphicon glyphicon-font" aria-hidden="true"></span>
104 <span ng-switch-when="timestamp" class="glyphicon glyphicon-calendar" aria-hidden="true"></span>
106 {{ node.label || node.name }}
109 <div class="col-md-5" style="max-height: 400px; min-height: 400px; overflow-y: scroll;">
110 <strong>[% l('Transform') %]</strong>
116 tree-model="available_field_transforms"
117 selected-node="selected_transform"
118 options="field_transforms_tree_opts"
120 {{ node.label || node.transform }}
129 <div class="col-md-12">
132 <uib-tab index="0" heading="[% l('Display Fields') %]">
135 features="-sort,-multisort,-multiselect"
136 items-provider="grid_display_fields_provider"
137 grid-controls="display_grid_controls"
140 handler="changeDisplayLabel"
141 label="[% l('Change Column Label') %]">
145 handler="changeDisplayFieldDoc"
146 label="[% l('Change Column Documentation') %]">
150 handler="changeTransform"
151 label="[% l('Change Transform') %]">
155 handler="moveDisplayFieldUp"
156 label="[% l('Move Field Up') %]">
160 handler="moveDisplayFieldDown"
161 label="[% l('Move Field Down') %]">
165 handler="removeDisplayField"
166 label="[% l('Remove Field') %]">
169 <eg-grid-menu-item handler="addDisplayFields"
170 label="[% l('Add Fields') %]"></eg-grid-menu-item>
172 <eg-grid-field path='path_label' label="[% l('Source Path') %]"></eg-grid-field>
173 <eg-grid-field path='name' label="[% l('Column') %]" hidden></eg-grid-field>
174 <eg-grid-field path='doc_text' label="[% l('Documentation') %]" hidden></eg-grid-field>
175 <eg-grid-field path='label' label="[% l('Column Label') %]"></eg-grid-field>
176 <eg-grid-field path='datatype' label="[% l('Data Type') %]"></eg-grid-field>
177 <eg-grid-field path='transform.label' label="[% l('Field Transform') %]"></eg-grid-field>
181 <uib-tab index="1" heading="[% l('Filters') %]">
184 features="-sort,-multisort,-multiselect"
185 items-provider="grid_filter_fields_provider"
186 grid-controls="filter_grid_controls"
189 handler="changeFilterFieldDoc"
190 label="[% l('Change Column Documentation') %]">
194 handler="changeTransform"
195 label="[% l('Change Transform') %]">
199 handler="changeOperator"
200 label="[% l('Change Operator') %]">
204 handler="changeFilterValue"
205 label="[% l('Change Filter Value') %]">
209 handler="removeFilterValue"
210 label="[% l('Remove Filter Value') %]">
214 handler="removeFilterField"
215 label="[% l('Remove Field') %]">
218 <eg-grid-menu-item handler="addFilterFields"
219 label="[% l('Add Fields') %]"></eg-grid-menu-item>
221 <eg-grid-field path='path_label' label="[% l('Source Path') %]"></eg-grid-field>
222 <eg-grid-field path='label' label="[% l('Name') %]"></eg-grid-field>
223 <eg-grid-field path='name' label="[% l('Column') %]"></eg-grid-field>
224 <eg-grid-field path='datatype' label="[% l('Data Type') %]"></eg-grid-field>
225 <eg-grid-field path='operator.label' label="[% l('Operator') %]"></eg-grid-field>
226 <eg-grid-field path='transform.label' label="[% l('Field Transform') %]"></eg-grid-field>
227 <eg-grid-field path='value' label="[% l('Filter Value') %]"></eg-grid-field>