Skip to content
Snippets Groups Projects
Commit 0f36798c authored by jenkins's avatar jenkins
Browse files

Merge branch 'v2_17_1'

parents 39998ba0 3a84c2b8
No related branches found
No related tags found
No related merge requests found
Pipeline #9253 passed
......@@ -5,7 +5,7 @@
<parent>
<artifactId>BudgetMaster</artifactId>
<groupId>de.deadlocker8</groupId>
<version>2.17.0</version>
<version>2.17.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -50,7 +50,7 @@ public class AboutController extends BaseController
newsEntries.add(NewsEntry.createWithLocalizationKey("accountEndDate"));
newsEntries.add(NewsEntry.createWithLocalizationKey("accountDescription"));
newsEntries.add(NewsEntry.createWithLocalizationKey("transactionNameSuggestionsSort"));
newsEntries.add(NewsEntry.createWithLocalizationKey("transactionNameSuggestionsSort"));
newsEntries.add(NewsEntry.createWithLocalizationKey("bugfixCsvImport"));
model.addAttribute(ModelAttributes.NEWS_ENTRIES, newsEntries);
return ReturnValues.WHATS_NEW;
......
......@@ -24,6 +24,10 @@
opacity: 0.5;
}
#table-transaction-rows tr {
border-bottom: none !important;
}
#table-transaction-rows td {
padding: 5px;
}
......@@ -33,10 +37,10 @@
margin: auto;
}
#table-transaction-rows_filter input {
height: 1rem;
border: none;
border-radius: 0;
.dt-search input[type=search] {
height: 1rem !important;
border: none !important;
border-radius: 0 !important;
}
/* override custom select styling*/
......@@ -57,30 +61,30 @@
}
/* label focus color */
#table-transaction-rows_filter input[type=search]:focus + label {
.dt-search input[type=search]:focus + label {
color: var(--color-blue) !important;
}
/* label underline focus color */
#table-transaction-rows_filter input[type=search]:focus:not(.invalid) {
.dt-search input[type=search]:focus:not(.invalid) {
border-bottom: 1px solid var(--color-blue) !important;
box-shadow: 0 1px 0 0 #CCCCCC !important;
}
/* input text color */
[data-theme="dark"] #table-transaction-rows_filter input[type=search] {
color: var(--color-white);
border-bottom: 1px solid var(--color-white);
box-shadow: 0 1px 0 0 #CCCCCC;
[data-theme="dark"] .dt-search input[type=search] {
color: var(--color-white) !important;
border-bottom: 1px solid var(--color-white) !important;
box-shadow: 0 1px 0 0 #CCCCCC !important;
}
/* input label color */
[data-theme="dark"] #table-transaction-rows_filter input[type=search] + label {
[data-theme="dark"] .dt-search input[type=search] + label {
color: var(--color-white) !important;
}
/* label underline focus color */
[data-theme="dark"] #table-transaction-rows_filter input[type=search]:focus:not(.invalid) {
[data-theme="dark"] .dt-search input[type=search]:focus:not(.invalid) {
border-bottom: 1px solid var(--color-blue) !important;
box-shadow: 0 1px 0 0 var(--color-blue) !important;
}
\ No newline at end of file
......@@ -7,14 +7,23 @@ $(document).ready(function()
$('.collapsible').collapsible();
DataTable.type('date', 'className', 'dt-center');
$('#table-transaction-rows').DataTable({
paging: false,
order: [[2, 'desc']],
order: [[1, 'desc']],
info: false,
scrollX: true,
scrollY: false,
columnDefs: [
{ orderable: false, targets: 6}
{
className: "dt-head-center",
targets: [0, 1, 3, 4, 6]
},
{
// amount column
orderable: false,
targets: 5
}
],
language: {search: '', searchPlaceholder: localizedSearch},
});
......@@ -24,7 +33,10 @@ $(document).ready(function()
let nameElements = document.querySelectorAll('.autocomplete');
let autoCompleteInstances = M.Autocomplete.init(nameElements, {
data: transactionNameSuggestions,
sortFunction: function(a,b, inputString) {return false;}
sortFunction: function(a, b, inputString)
{
return false;
}
});
// prevent tab traversal for dropdown (otherwise "tab" needs to be hit twice to jump from name input to amount input)
......
......@@ -167,10 +167,9 @@
<#macro renderCsvTransactions>
<div id="transaction-import-list">
<table class="bordered centered" id="table-transaction-rows" style="width:100%">
<table class="centered" id="table-transaction-rows" style="width:100%">
<thead>
<tr>
<td class="hidden"></td>
<td class="bold">${locale.getString("transactions.import.status")}</td>
<td class="bold">${locale.getString("transaction.new.label.date")}</td>
<td class="bold">${locale.getString("transaction.new.label.category")}</td>
......@@ -187,6 +186,14 @@
</#list>
</tbody>
</table>
<div class="hidden">
<#list csvTransactions as csvTransaction>
<form name="NewTransactionInPlace" id="newTransactionInPlace_${csvTransaction?index}" method="POST" action="<@s.url '/transactionImport/' + csvTransaction?index + '/newTransactionInPlace'/>" data-index="${csvTransaction?index}">
<input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
</form>
</#list>
</div>
</div>
<@newTransactionMacros.insertNameSuggestions/>
......@@ -194,11 +201,6 @@
<#macro renderCsvTransaction csvTransaction index>
<tr class="transaction-import-row <#if csvTransaction.getStatus().name() == 'SKIPPED'>transaction-import-row-skipped</#if>" id="transaction-import-row-${index}">
<td class="hidden">
<form name="NewTransactionInPlace" id="newTransactionInPlace_${index}" method="POST" action="<@s.url '/transactionImport/' + index + '/newTransactionInPlace'/>" data-index="${index}">
<input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
</form>
</td>
<td data-order="${locale.getString(csvTransaction.getStatus().getLocalizationKey())}" data-search="${locale.getString(csvTransaction.getStatus().getLocalizationKey())}"><@statusBanner csvTransaction.getStatus()/></td>
<td data-order="${csvTransaction.getDate()}" data-search="${csvTransaction.getDate()}">${csvTransaction.getDate()}</td>
<td data-order="${csvTransaction.getCategory().getName()}" data-search="${csvTransaction.getCategory().getName()}">
......
......@@ -655,23 +655,23 @@ class CsvImportTest extends SeleniumTestBase
{
final List<WebElement> columns = row.findElements(By.tagName("td"));
assertThat(columns.get(1).findElements(By.cssSelector(".banner.background-" + statusColor)))
assertThat(columns.get(0).findElements(By.cssSelector(".banner.background-" + statusColor)))
.hasSize(1);
assertThat(columns.get(2).getText())
assertThat(columns.get(1).getText())
.isEqualTo(date);
final WebElement categoryCircle = columns.get(3).findElement(By.className("category-circle"));
final WebElement categoryCircle = columns.get(2).findElement(By.className("category-circle"));
categoryName = categoryName.substring(0, 1).toUpperCase();
assertThat(categoryCircle.findElement(By.tagName("span"))).hasFieldOrPropertyWithValue("text", categoryName);
assertThat(columns.get(4).findElement(By.name("name")).getAttribute("value"))
assertThat(columns.get(3).findElement(By.name("name")).getAttribute("value"))
.isEqualTo(name);
assertThat(columns.get(5).findElement(By.name("description")).getAttribute("value"))
assertThat(columns.get(4).findElement(By.name("description")).getAttribute("value"))
.isEqualTo(description);
assertThat(columns.get(6).getText())
assertThat(columns.get(5).getText())
.isEqualTo(amount);
}
}
\ No newline at end of file
......@@ -8,7 +8,7 @@ ARG APP_DIR=/BudgetMaster
RUN mkdir -p $APP_DIR
RUN mkdir -p /root/.Deadlocker/BudgetMaster
COPY BudgetMasterServer/build/2.17.0/BudgetMasterServer-v2.17.0.jar /BudgetMaster/BudgetMaster.jar
COPY BudgetMasterServer/build/2.17.1/BudgetMasterServer-v2.17.1.jar /BudgetMaster/BudgetMaster.jar
COPY BudgetMasterServer/src/main/resources/config/templates/settings-docker.properties /root/.Deadlocker/BudgetMaster/settings.properties
RUN echo "server.port=9000" > ~/.Deadlocker/BudgetMaster/settings.properties
......
......@@ -2,7 +2,7 @@
Manage your monthly budget easily with BudgetMaster
- __start:__ 17.12.16
- __current release:__ v2.17.0 (47) from 05.10.24
- __current release:__ v2.17.1 (48) from 14.10.24
## Key Features
- Keep your data private - Host your own BudgetMaster server or use it in standalone mode. All data remains on your machines.
......
......@@ -7,7 +7,7 @@
<groupId>de.deadlocker8</groupId>
<artifactId>BudgetMaster</artifactId>
<packaging>pom</packaging>
<version>2.17.0</version>
<version>2.17.1</version>
<name>BudgetMaster</name>
<modules>
......@@ -50,7 +50,7 @@
<app.versionDate>${maven.build.timestamp}</app.versionDate>
<maven.build.timestamp.format>dd.MM.yy</maven.build.timestamp.format>
<app.versionCode>47</app.versionCode>
<app.versionCode>48</app.versionCode>
<app.author>Robert Goldmann</app.author>
<testcontainer.version>1.20.2</testcontainer.version>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment