OpenProject is the leading open source project management software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
openproject/frontend/app/components/wp-table/wp-table.directive.html

93 lines
3.7 KiB

<div class="generic-table--container work-package-table--container"
ng-class="{ '-with-footer': displaySums }">
<div class="generic-table--results-container">
<table interactive-table class="keyboard-accessible-list generic-table work-package-table">
<colgroup>
<col highlight-col/>
<col highlight-col ng-repeat="column in columns"/>
</colgroup>
<caption class="hidden-for-sighted">
<span ng-bind="::text.tableSummary"></span>
<span id="wp-table-sort-summary"></span>
<span ng-bind="::text.tableSummaryHints"></span>
</caption>
<thead>
<tr>
<th sort-header
ng-repeat="column in columns"
has-dropdown-menu
position-relative-to=".generic-table--sort-header-outer"
collision-container=".work-packages--list"
target="columnContextMenu"
locals="columns, column"
locale="column.custom_field && columns.custom_field.name_locale || locale"
header-name="column.name"
header-title="column.title"
sortable="column.sortable"
query="query"
ng-class="column.name == 'id' && '-short' ">
</th>
<th class="wp-table--details-column -short hide-when-print">
<div class="generic-table--sort-header-outer">
<accessible-by-keyboard
execute="openColumnsModal()"
link-class="wp-table--columns-selection">
<span class="icon-button icon-columns"></span>
</accessible-by-keyboard>
</div>
</th>
<th class="wp-timeline--th" ng-show="wpTimelineContainer.visible">
<div class="wp-timeline--slider-wrapper">
<div class="wp-timeline--slider"></div>
</div>
<div class="wp-timeline-header-controls generic-table--sort-header-outer">
<timeline-control></timeline-control>
</div>
<div class="wp-timeline-header-container generic-table--sort-header-outer">
<div class="wp-timeline--scroll-wrapper">
<span class="generic-table--sort-header wp-timeline-header">
</span>
</div>
</div>
</th>
</tr>
</thead>
<tbody class="work-package--empty-tbody" ng-if="query.hasError || rowcount === 0">
<tr id="empty-row-notification">
<td colspan="{{ columns.length + 1 }}">
<span ng-if="!query.hasError">
<i class="icon-info1 icon-context"></i>
<strong ng-bind="text.noResults.title"></strong>
<span ng-bind="text.noResults.description"></span>
</span>
<span ng-if="query.hasError">
<i class="wp-table--faulty-query-icon icon-warning icon-context"></i>
<strong ng-bind="text.faultyQuery.title"></strong>
<span ng-bind="text.faultyQuery.description"></span>
</span>
</td>
</tr>
</tbody>
<tbody class="work-package--results-tbody">
</tbody>
<tfoot>
<tr ng-if="sumsLoaded()"
class="sum group all issue work_package">
<td ng-repeat="column in columns">
<div class="generic-table--footer-outer">
<span ng-if="$first">{{ text.sumFor }} {{ text.allWorkPackages }}</span>
<wp-display-attr
attribute="column.name"
custom-schema="resource.sumsSchema"
work-package="resource.totalSums">
</wp-display-attr>
</div>
</td>
</tr>
</tfoot>
</table>
<div class="generic-table--header-background"></div>
<div class="generic-table--footer-background" ng-if="sumsLoaded()"></div>
</div>
</div>