table colStyle, cellStyle, html render
This commit is contained in:
parent
1f86e58a86
commit
d2cb821143
@ -1,3 +1,4 @@
|
|||||||
|
[![pipeline status](https://git.basehosts.de:20443/panel/basispanel-ui/badges/master/pipeline.svg)](https://git.basehosts.de:20443/panel/basispanel-ui/commits/master)
|
||||||
# basispanel UI
|
# basispanel UI
|
||||||
|
|
||||||
## Entwicklungsprozess
|
## Entwicklungsprozess
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
<div class="table_header">
|
<div class="table_header">
|
||||||
<div v-for="(col, i) in columns"
|
<div v-for="(col, i) in columns"
|
||||||
:class="['table_cell', {['sortable']: col.orderBy, [`align-${col.align}`]: col.align}]"
|
:class="['table_cell', {['sortable']: col.orderBy, [`align-${col.align}`]: col.align}]"
|
||||||
|
:style="col.colStyle"
|
||||||
:key="i">
|
:key="i">
|
||||||
|
|
||||||
<!-- Column with sorting -->
|
<!-- Column with sorting -->
|
||||||
@ -29,10 +30,11 @@
|
|||||||
<!-- Row content -->
|
<!-- Row content -->
|
||||||
<div v-for="(col, ci) in columns"
|
<div v-for="(col, ci) in columns"
|
||||||
:class="['table_cell', {[`align-${col.align}`]: col.align}]"
|
:class="['table_cell', {[`align-${col.align}`]: col.align}]"
|
||||||
|
:style="typeof col.cellStyle == 'function' ? col.cellStyle(row) : col.cellStyle"
|
||||||
:key="ci + 'c'">
|
:key="ci + 'c'">
|
||||||
|
|
||||||
<span v-if="col.prop" :title="getProp(row, col.prop)">{{ getProp(row, col.prop) }}</span>
|
<span v-if="col.prop" :title="getProp(row, col.prop)">{{ getProp(row, col.prop) }}</span>
|
||||||
<span v-else-if="col.render">{{ col.render(row) }}</span>
|
<span v-else-if="col.render" v-html="col.render(row)"></span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Row actions -->
|
<!-- Row actions -->
|
||||||
|
@ -38,7 +38,13 @@ export default {
|
|||||||
heading: 'ID',
|
heading: 'ID',
|
||||||
prop: 'ID',
|
prop: 'ID',
|
||||||
orderBy: 'id',
|
orderBy: 'id',
|
||||||
align: 'right'
|
align: 'right',
|
||||||
|
colStyle: {
|
||||||
|
width: '70px'
|
||||||
|
},
|
||||||
|
cellStyle: {
|
||||||
|
color: '#999'
|
||||||
|
}
|
||||||
}, {
|
}, {
|
||||||
heading: 'TLD',
|
heading: 'TLD',
|
||||||
prop: 'TLD',
|
prop: 'TLD',
|
||||||
|
@ -38,10 +38,50 @@ export default {
|
|||||||
heading: 'ID',
|
heading: 'ID',
|
||||||
prop: 'ID',
|
prop: 'ID',
|
||||||
orderBy: 'id',
|
orderBy: 'id',
|
||||||
align: 'right'
|
align: 'right',
|
||||||
|
colStyle: {
|
||||||
|
width: '70px'
|
||||||
|
},
|
||||||
|
cellStyle: {
|
||||||
|
color: "#999"
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
heading: 'Benutzertyp',
|
||||||
|
render(row) {
|
||||||
|
switch (row.Type) {
|
||||||
|
case 0: return 'Administrator';
|
||||||
|
case 1: return 'Reseller';
|
||||||
|
case 2: return 'Endkunde';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
orderBy: 'type',
|
||||||
|
align: 'left',
|
||||||
|
cellStyle(row) {
|
||||||
|
switch (row.Type) {
|
||||||
|
case 0: return {color: 'red'};
|
||||||
|
case 1: return {color: 'orange'};
|
||||||
|
case 2: return {color: 'green'};
|
||||||
|
}
|
||||||
|
}
|
||||||
}, {
|
}, {
|
||||||
heading: 'Benutzername',
|
heading: 'Benutzername',
|
||||||
prop: 'Username',
|
render(row) {
|
||||||
|
let reseller = row.Reseller;
|
||||||
|
if (reseller) {
|
||||||
|
if (reseller.Company) {
|
||||||
|
reseller = reseller.Company;
|
||||||
|
} else if (reseller.Lastname) {
|
||||||
|
reseller = reseller.Firstname + reseller.Lastname;
|
||||||
|
} else {
|
||||||
|
reseller = reseller.Username;
|
||||||
|
}
|
||||||
|
|
||||||
|
reseller = '<br><span style="font-size: 0.8em; color: #999">Reseller: ' + reseller + '</style>';
|
||||||
|
} else {
|
||||||
|
reseller = '';
|
||||||
|
}
|
||||||
|
return row.Username + reseller;
|
||||||
|
},
|
||||||
orderBy: 'username',
|
orderBy: 'username',
|
||||||
align: 'left'
|
align: 'left'
|
||||||
}, {
|
}, {
|
||||||
@ -60,14 +100,6 @@ export default {
|
|||||||
heading: 'Email',
|
heading: 'Email',
|
||||||
prop: 'Email',
|
prop: 'Email',
|
||||||
orderBy: 'email'
|
orderBy: 'email'
|
||||||
}, {
|
|
||||||
heading: 'Reseller',
|
|
||||||
prop: 'Reseller.Username'
|
|
||||||
}, {
|
|
||||||
heading: 'Render',
|
|
||||||
render(row) {
|
|
||||||
return '<b>ID:</b>' + row.ID;
|
|
||||||
}
|
|
||||||
}],
|
}],
|
||||||
newRows: [ ],
|
newRows: [ ],
|
||||||
hasMore: true,
|
hasMore: true,
|
||||||
|
Loading…
Reference in New Issue
Block a user