Merge branch 'master' into fix-creation-confirmation

This commit is contained in:
Moriz Wahl 2022-01-27 13:17:26 +01:00 committed by GitHub
commit cfee6d64be
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 317 additions and 71 deletions

View File

@ -4,6 +4,164 @@ All notable changes to this project will be documented in this file. Dates are d
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
#### [1.6.0](https://github.com/gradido/gradido/compare/1.5.1...1.6.0)
- fix updatePendingCreation method [`#1346`](https://github.com/gradido/gradido/pull/1346)
- klicktipp_config [`#1348`](https://github.com/gradido/gradido/pull/1348)
- 1351 form to create incorrect due to change of bootstrap version [`#1352`](https://github.com/gradido/gradido/pull/1352)
- first draft of releaseplan [`#1349`](https://github.com/gradido/gradido/pull/1349)
- Rechtschreibfehler behoben, entgültig zu endgültig [`#1354`](https://github.com/gradido/gradido/pull/1354)
- production_deployment [`#1341`](https://github.com/gradido/gradido/pull/1341)
- import_production_data [`#1324`](https://github.com/gradido/gradido/pull/1324)
- remove division / 100 for GDT [`#1339`](https://github.com/gradido/gradido/pull/1339)
- fix: Language Set Correctly after Page Reload in Admin Interface [`#1334`](https://github.com/gradido/gradido/pull/1334)
- fix: Set Locale after Login [`#1328`](https://github.com/gradido/gradido/pull/1328)
- deployment_community_parameters [`#1331`](https://github.com/gradido/gradido/pull/1331)
- bold text if acive page [`#1337`](https://github.com/gradido/gradido/pull/1337)
- 1303 thanks page after set password [`#1335`](https://github.com/gradido/gradido/pull/1335)
- Changed the toasted message for successful creating a creation. [`#1332`](https://github.com/gradido/gradido/pull/1332)
- Added a required to the password repeat field, errors are shown immed… [`#1333`](https://github.com/gradido/gradido/pull/1333)
- fix_rejected_login [`#1329`](https://github.com/gradido/gradido/pull/1329)
- defined fields for Transactionlist in UserSearch in Adminarea, add Lo… [`#1322`](https://github.com/gradido/gradido/pull/1322)
- fix: Render Localized Balance in NavBar [`#1321`](https://github.com/gradido/gradido/pull/1321)
- 1227 vergaenglichkeit besser darstellen [`#1312`](https://github.com/gradido/gradido/pull/1312)
- 1300 gray out register button further when disabled [`#1316`](https://github.com/gradido/gradido/pull/1316)
- change Admin Gradido-Logo font color to white [`#1315`](https://github.com/gradido/gradido/pull/1315)
- 1299 remove text from register publisher [`#1317`](https://github.com/gradido/gradido/pull/1317)
- 1249 gdd gdt values look displaced or cut off [`#1318`](https://github.com/gradido/gradido/pull/1318)
- 1307 admin rename wallet to my account [`#1314`](https://github.com/gradido/gradido/pull/1314)
- 1011 visualize and refine the register process [`#1136`](https://github.com/gradido/gradido/pull/1136)
- New roadmap [`#1219`](https://github.com/gradido/gradido/pull/1219)
- fix: Redirect after Email Confirmation [`#1308`](https://github.com/gradido/gradido/pull/1308)
- fix_docker_logging [`#1309`](https://github.com/gradido/gradido/pull/1309)
- feat: Paginate User Table [`#1293`](https://github.com/gradido/gradido/pull/1293)
- Adding button, to link back to the login page from the error not activated page. [`#1297`](https://github.com/gradido/gradido/pull/1297)
- [WIP] new_deployment_stage2 [`#1290`](https://github.com/gradido/gradido/pull/1290)
- add icons in menu and navbarmenu [`#1298`](https://github.com/gradido/gradido/pull/1298)
- Withdrew horrizontal scrollbar [`#1295`](https://github.com/gradido/gradido/pull/1295)
- transactionCount false or transactionCount error text hide [`#1259`](https://github.com/gradido/gradido/pull/1259)
- 1265 mouse hovering over pencil in settings [`#1270`](https://github.com/gradido/gradido/pull/1270)
- Fix redirect to /logout, now redirects to the wallet login. [`#1285`](https://github.com/gradido/gradido/pull/1285)
- feat: Test and Refactor Send Email [`#1224`](https://github.com/gradido/gradido/pull/1224)
- new_deployment [`#1220`](https://github.com/gradido/gradido/pull/1220)
- Withdrew space at the end of an locale definition. [`#1283`](https://github.com/gradido/gradido/pull/1283)
- Fix removing from masscreationlist now gives right item to the left l… [`#1284`](https://github.com/gradido/gradido/pull/1284)
- onboarding process document [`#1148`](https://github.com/gradido/gradido/pull/1148)
- Don't show the language-switch on the /register page. [`#1282`](https://github.com/gradido/gradido/pull/1282)
- language_updates_bernd [`#1260`](https://github.com/gradido/gradido/pull/1260)
- Admin Logout redirectes to the wallet login page. [`#1271`](https://github.com/gradido/gradido/pull/1271)
- fix: Admin Creation List [`#1276`](https://github.com/gradido/gradido/pull/1276)
- fix: Override Existing Token in Response Header [`#1278`](https://github.com/gradido/gradido/pull/1278)
- fix: Pass Language to Admin Interface [`#1280`](https://github.com/gradido/gradido/pull/1280)
- feat: Seed Garrick Ollivander [`#1277`](https://github.com/gradido/gradido/pull/1277)
- fix: Fix Update of Open Creations [`#1273`](https://github.com/gradido/gradido/pull/1273)
- fix: Change Password in User Profile [`#1266`](https://github.com/gradido/gradido/pull/1266)
- Wallet shows the wrong gdt sum (gdtSum * 100) [`#1269`](https://github.com/gradido/gradido/pull/1269)
- 1240 account not activated needs a button to login page [`#1261`](https://github.com/gradido/gradido/pull/1261)
- reverse filter for unregistered emails [`#1256`](https://github.com/gradido/gradido/pull/1256)
- close row-details automatically when switching to multiple creation page [`#1245`](https://github.com/gradido/gradido/pull/1245)
- change creationdatas if change pending creation [`#1244`](https://github.com/gradido/gradido/pull/1244)
- 1230 details für wiederholte email bestaetigen versenden [`#1255`](https://github.com/gradido/gradido/pull/1255)
- 1221 month names of the open creation in multiple creation [`#1222`](https://github.com/gradido/gradido/pull/1222)
- Documentation Template-Overview-2021 PDF [`#1194`](https://github.com/gradido/gradido/pull/1194)
- Admin create multiple pending creations [`#1203`](https://github.com/gradido/gradido/pull/1203)
- feat: Catch No Cookies Allowed [`#1187`](https://github.com/gradido/gradido/pull/1187)
- Remove confirmation of own pending creation [`#1215`](https://github.com/gradido/gradido/pull/1215)
- feat: Test Create User Mutation [`#1217`](https://github.com/gradido/gradido/pull/1217)
- #751 Änderungen auf Federation und Community-Erstellprozess [`#969`](https://github.com/gradido/gradido/pull/969)
- 1055 concept of operations requirements [`#1129`](https://github.com/gradido/gradido/pull/1129)
- Admin Translations German English [`#1218`](https://github.com/gradido/gradido/pull/1218)
- Roadmap [`#1213`](https://github.com/gradido/gradido/pull/1213)
- pr_admin_refactor [`#1214`](https://github.com/gradido/gradido/pull/1214)
- 1197 admin interface created transactions list [`#1202`](https://github.com/gradido/gradido/pull/1202)
- migration_0006_login_users_collation [`#1207`](https://github.com/gradido/gradido/pull/1207)
- wrong_login_is_not_password_reset [`#1179`](https://github.com/gradido/gradido/pull/1179)
- Moved reverse of the getPendingCreations to the AdminResolver instead… [`#1185`](https://github.com/gradido/gradido/pull/1185)
- Withdrew password argument of createUser. [`#1206`](https://github.com/gradido/gradido/pull/1206)
- fix_optin_code_regeneration [`#1195`](https://github.com/gradido/gradido/pull/1195)
- 1057 display gdd balance when sending [`#1149`](https://github.com/gradido/gradido/pull/1149)
- 1145 refactor admin resolver from master [`#1164`](https://github.com/gradido/gradido/pull/1164)
- Error handling in GddTransactionList.vue [`#1183`](https://github.com/gradido/gradido/pull/1183)
- state-balance balanceDate can't get the date of the last transaction [`#1182`](https://github.com/gradido/gradido/pull/1182)
- feat: Frontend Refactor and Tests [`#1186`](https://github.com/gradido/gradido/pull/1186)
- fix: No Nodemon in Database Scripts [`#1167`](https://github.com/gradido/gradido/pull/1167)
- feat: Test Creation in Admin Interface [`#1172`](https://github.com/gradido/gradido/pull/1172)
- 533 refactor menu remove tim [`#1162`](https://github.com/gradido/gradido/pull/1162)
- database_docker_fixes [`#1176`](https://github.com/gradido/gradido/pull/1176)
- naming_conventions_pending_tasks [`#1184`](https://github.com/gradido/gradido/pull/1184)
- fix_i18n [`#1180`](https://github.com/gradido/gradido/pull/1180)
- fix_corrupted_sender_balance [`#1178`](https://github.com/gradido/gradido/pull/1178)
- Withdrew * 10000 and / 10000 since we need to store the full value. [`#1181`](https://github.com/gradido/gradido/pull/1181)
- catch error Client certificate revoked and pass error.session-expired… [`#1152`](https://github.com/gradido/gradido/pull/1152)
- feat: Test Apollo Provider in Frontend [`#1161`](https://github.com/gradido/gradido/pull/1161)
- fix: Pending Creations are Updated Without Page Reload [`#1160`](https://github.com/gradido/gradido/pull/1160)
- Error on upgrade database after downgrade [`#1119`](https://github.com/gradido/gradido/pull/1119)
- Login fix creation validation [`#1159`](https://github.com/gradido/gradido/pull/1159)
- login_call_resetPassword [`#1130`](https://github.com/gradido/gradido/pull/1130)
- register add tabindex-1 on password show [`#1158`](https://github.com/gradido/gradido/pull/1158)
- feat: Seed Transaction Creations [`#1146`](https://github.com/gradido/gradido/pull/1146)
- Admin confirm pending creation [`#1153`](https://github.com/gradido/gradido/pull/1153)
- Admin delete pending creation query [`#1141`](https://github.com/gradido/gradido/pull/1141)
- fix: Catch Expired Session when Coming from Admin Interface [`#1151`](https://github.com/gradido/gradido/pull/1151)
- docu_release [`#1138`](https://github.com/gradido/gradido/pull/1138)
- feat: Verify Login in Admin Interface [`#1150`](https://github.com/gradido/gradido/pull/1150)
- Admin pending creation queries [`#1140`](https://github.com/gradido/gradido/pull/1140)
- 1137 publisher id as input field on register [`#1147`](https://github.com/gradido/gradido/pull/1147)
- Admin pending creation [`#1135`](https://github.com/gradido/gradido/pull/1135)
- feat: Setup Data Seeding [`#1121`](https://github.com/gradido/gradido/pull/1121)
- fix_admin_token_renewal [`#1139`](https://github.com/gradido/gradido/pull/1139)
- backend_rights [`#1126`](https://github.com/gradido/gradido/pull/1126)
- Login admin interface [`#1125`](https://github.com/gradido/gradido/pull/1125)
- Adminbereich first step [`#1116`](https://github.com/gradido/gradido/pull/1116)
- Login hook elopage [`#1112`](https://github.com/gradido/gradido/pull/1112)
- Since we don't make a request to the login_server we need to catch if… [`#1131`](https://github.com/gradido/gradido/pull/1131)
- feat: Add Server Users Entity [`#1127`](https://github.com/gradido/gradido/pull/1127)
- Stale: 1002-language-selection-register [`#1113`](https://github.com/gradido/gradido/pull/1113)
- Error for removing coin animation [`#1120`](https://github.com/gradido/gradido/pull/1120)
- Adding a check that the user is activated before letting them login. [`#1099`](https://github.com/gradido/gradido/pull/1099)
- Changed the Auto increment so that it is done after the rollback and … [`#1128`](https://github.com/gradido/gradido/pull/1128)
- Login call unsecure login [`#1095`](https://github.com/gradido/gradido/pull/1095)
- feat: Setup Admin Interface [`#1045`](https://github.com/gradido/gradido/pull/1045)
- login_call_updateUserInfos [`#1084`](https://github.com/gradido/gradido/pull/1084)
- fix: Await Resolved Promises in Backend Unit Tests [`#1079`](https://github.com/gradido/gradido/pull/1079)
- feat: Raise Test Coverage Frontend [`#1102`](https://github.com/gradido/gradido/pull/1102)
- login_call_logout [`#1096`](https://github.com/gradido/gradido/pull/1096)
- login_call_hasElopage [`#1083`](https://github.com/gradido/gradido/pull/1083)
- login_call_create_user [`#1070`](https://github.com/gradido/gradido/pull/1070)
- 1036 register page breaks without community [`#1043`](https://github.com/gradido/gradido/pull/1043)
- Apollo create transactions without signation [`#1044`](https://github.com/gradido/gradido/pull/1044)
- change getCustomRepository to createUser function [`#1046`](https://github.com/gradido/gradido/pull/1046)
- fresh_install_instructions [`#1065`](https://github.com/gradido/gradido/pull/1065)
- login_call_check_username [`#1037`](https://github.com/gradido/gradido/pull/1037)
- feat: Setup Unit Tests for Resolvers in Backend [`#951`](https://github.com/gradido/gradido/pull/951)
- Login hotfixes 1.5.1 [`#1075`](https://github.com/gradido/gradido/pull/1075)
- vscode_suggest_extensions [`#1073`](https://github.com/gradido/gradido/pull/1073)
- Documentation on the coin creation and the steps to have the accounts… [`#1052`](https://github.com/gradido/gradido/pull/1052)
- fix open community server user account creation [`#1072`](https://github.com/gradido/gradido/pull/1072)
- when creating the register page, everything in the form is set to blank [`#1025`](https://github.com/gradido/gradido/pull/1025)
- Spelling error fixed 'Berechnungsformel' [`#1048`](https://github.com/gradido/gradido/pull/1048)
- checkEmail.vue page text is displayed correctly now [`#1051`](https://github.com/gradido/gradido/pull/1051)
- Adminarea old [`#1058`](https://github.com/gradido/gradido/pull/1058)
- migrate_login_database [`#1031`](https://github.com/gradido/gradido/pull/1031)
- Text changes for german and english. [`#1041`](https://github.com/gradido/gradido/pull/1041)
- refactor: Transaction Component [`#1026`](https://github.com/gradido/gradido/pull/1026)
- 1017 fixe dashboard layout safari [`#1038`](https://github.com/gradido/gradido/pull/1038)
- 707 separate account overview and send [`#970`](https://github.com/gradido/gradido/pull/970)
- Link to the funding contributions of gradido.net memberships [`#984`](https://github.com/gradido/gradido/pull/984)
- fix: Decay Rounded to Ceil [`#1021`](https://github.com/gradido/gradido/pull/1021)
- fix: Flaky Dashboard Layout Test on Logout [`#1024`](https://github.com/gradido/gradido/pull/1024)
- Move Entity models into database [`#956`](https://github.com/gradido/gradido/pull/956)
- Text 'No decay' replaced by the number 0.00 [`#1023`](https://github.com/gradido/gradido/pull/1023)
- change text 'eingetraten' to 'eingetragen' [`#1022`](https://github.com/gradido/gradido/pull/1022)
- fix: Test Default Publisher ID in Sidebar Menu [`#987`](https://github.com/gradido/gradido/pull/987)
- increase_frontend_coverage [`#1020`](https://github.com/gradido/gradido/pull/1020)
- analyse_bundle [`#1019`](https://github.com/gradido/gradido/pull/1019)
- release_issue_template [`#1013`](https://github.com/gradido/gradido/pull/1013)
- fix_changelog [`#1014`](https://github.com/gradido/gradido/pull/1014)
- removed incorrect mnemonic lists [`08200f4`](https://github.com/gradido/gradido/commit/08200f49f2ceb5ac121534a19ad2a8347c900145)
- update jest, install transform-require-context [`165ed18`](https://github.com/gradido/gradido/commit/165ed1801ba1aba862d0b0006d8c17e322c4b7ff)
- rework roadmap [`b337bcd`](https://github.com/gradido/gradido/commit/b337bcd850423e67b2119c562575b0ec692dddf2)
#### [1.5.1](https://github.com/gradido/gradido/compare/1.5.0...1.5.1) #### [1.5.1](https://github.com/gradido/gradido/compare/1.5.0...1.5.1)
> 15 October 2021 > 15 October 2021

View File

@ -3,7 +3,7 @@
"description": "Administraion Interface for Gradido", "description": "Administraion Interface for Gradido",
"main": "index.js", "main": "index.js",
"author": "Moriz Wahl", "author": "Moriz Wahl",
"version": "0.1.0", "version": "1.6.0",
"license": "MIT", "license": "MIT",
"private": false, "private": false,
"scripts": { "scripts": {
@ -28,12 +28,12 @@
"babel-plugin-component": "^1.1.1", "babel-plugin-component": "^1.1.1",
"babel-preset-env": "^1.7.0", "babel-preset-env": "^1.7.0",
"babel-preset-vue": "^2.0.2", "babel-preset-vue": "^2.0.2",
"bootstrap": "^5.1.3", "bootstrap": "4.3.1",
"bootstrap-vue": "^2.21.2", "bootstrap-vue": "^2.21.2",
"core-js": "^3.6.5", "core-js": "^3.6.5",
"dotenv-webpack": "^7.0.3", "dotenv-webpack": "^7.0.3",
"graphql": "^15.6.1",
"express": "^4.17.1", "express": "^4.17.1",
"graphql": "^15.6.1",
"identity-obj-proxy": "^3.0.0", "identity-obj-proxy": "^3.0.0",
"jest": "26.6.3", "jest": "26.6.3",
"moment": "^2.29.1", "moment": "^2.29.1",

View File

@ -3,9 +3,11 @@
{{ $t('creation_form.form') }} {{ $t('creation_form.form') }}
<div class="shadow p-3 mb-5 bg-white rounded"> <div class="shadow p-3 mb-5 bg-white rounded">
<b-form ref="creationForm"> <b-form ref="creationForm">
<b-row class="m-4"> <div class="ml-4">
<label>{{ $t('creation_form.select_month') }}</label> <label>{{ $t('creation_form.select_month') }}</label>
<b-col class="text-left"> </div>
<b-row class="ml-4">
<b-col>
<b-form-radio <b-form-radio
id="beforeLastMonth" id="beforeLastMonth"
v-model="radioSelected" v-model="radioSelected"
@ -33,7 +35,7 @@
</label> </label>
</b-form-radio> </b-form-radio>
</b-col> </b-col>
<b-col class="text-right"> <b-col>
<b-form-radio <b-form-radio
id="currentMonth" id="currentMonth"
v-model="radioSelected" v-model="radioSelected"
@ -49,7 +51,7 @@
</b-col> </b-col>
</b-row> </b-row>
<b-row class="m-4" v-show="createdIndex != null"> <div class="m-4" v-show="createdIndex != null">
<label>{{ $t('creation_form.select_value') }}</label> <label>{{ $t('creation_form.select_value') }}</label>
<div> <div>
<b-input-group prepend="GDD" append=".00"> <b-input-group prepend="GDD" append=".00">
@ -71,8 +73,8 @@
></b-form-input> ></b-form-input>
</b-input-group> </b-input-group>
</div> </div>
</b-row> </div>
<b-row class="m-4"> <div class="m-4">
<label>{{ $t('creation_form.enter_text') }}</label> <label>{{ $t('creation_form.enter_text') }}</label>
<div> <div>
<b-form-textarea <b-form-textarea
@ -83,9 +85,9 @@
rows="3" rows="3"
></b-form-textarea> ></b-form-textarea>
</div> </div>
</b-row> </div>
<b-row class="m-4"> <b-row class="m-4">
<b-col class="text-center"> <b-col class="text-left">
<b-button type="reset" variant="danger" @click="$refs.creationForm.reset()"> <b-button type="reset" variant="danger" @click="$refs.creationForm.reset()">
{{ $t('creation_form.reset') }} {{ $t('creation_form.reset') }}
</b-button> </b-button>

View File

@ -2,8 +2,10 @@
<div class="component-edit-creation-formular"> <div class="component-edit-creation-formular">
<div class="shadow p-3 mb-5 bg-white rounded"> <div class="shadow p-3 mb-5 bg-white rounded">
<b-form ref="updateCreationForm"> <b-form ref="updateCreationForm">
<b-row class="m-4"> <div class="ml-4">
<label>{{ $t('creation_form.select_month') }}</label> <label>{{ $t('creation_form.select_month') }}</label>
</div>
<b-row class="m-4">
<b-col class="text-left"> <b-col class="text-left">
<b-form-radio <b-form-radio
id="beforeLastMonth" id="beforeLastMonth"
@ -63,7 +65,7 @@
</b-col> </b-col>
</b-row> </b-row>
<b-row class="m-4"> <div class="m-4">
<label>{{ $t('creation_form.select_value') }}</label> <label>{{ $t('creation_form.select_value') }}</label>
<div> <div>
<b-input-group prepend="GDD" append=".00"> <b-input-group prepend="GDD" append=".00">
@ -85,8 +87,8 @@
></b-form-input> ></b-form-input>
</b-input-group> </b-input-group>
</div> </div>
</b-row> </div>
<b-row class="m-4"> <div class="m-4">
<label>{{ $t('creation_form.enter_text') }}</label> <label>{{ $t('creation_form.enter_text') }}</label>
<div> <div>
<b-form-textarea <b-form-textarea
@ -97,9 +99,9 @@
rows="3" rows="3"
></b-form-textarea> ></b-form-textarea>
</div> </div>
</b-row> </div>
<b-row class="m-4"> <b-row class="m-4">
<b-col class="text-center"> <b-col class="text-left">
<b-button type="reset" variant="danger" @click="$refs.updateCreationForm.reset()"> <b-button type="reset" variant="danger" @click="$refs.updateCreationForm.reset()">
{{ $t('creation_form.reset') }} {{ $t('creation_form.reset') }}
</b-button> </b-button>

View File

@ -39,7 +39,7 @@
"overlay": { "overlay": {
"confirm": { "confirm": {
"no": "Nein, nicht speichern.", "no": "Nein, nicht speichern.",
"question": "Willst du diese vorgespeicherte Schöpfung wirklich vollziehen und entgültig speichern?", "question": "Willst du diese vorgespeicherte Schöpfung wirklich vollziehen und endgültig speichern?",
"text": "Nach dem Speichern ist der Datensatz nicht mehr änderbar und kann auch nicht mehr gelöscht werden. Bitte überprüfe genau, dass alles stimmt.", "text": "Nach dem Speichern ist der Datensatz nicht mehr änderbar und kann auch nicht mehr gelöscht werden. Bitte überprüfe genau, dass alles stimmt.",
"title": "Schöpfung bestätigen!", "title": "Schöpfung bestätigen!",
"yes": "Ja, Schöpfung bestätigen und speichern!" "yes": "Ja, Schöpfung bestätigen und speichern!"

View File

@ -3634,16 +3634,16 @@ bootstrap-vue@^2.21.2:
portal-vue "^2.1.7" portal-vue "^2.1.7"
vue-functional-data-merge "^3.1.0" vue-functional-data-merge "^3.1.0"
bootstrap@4.3.1:
version "4.3.1"
resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.3.1.tgz#280ca8f610504d99d7b6b4bfc4b68cec601704ac"
integrity sha512-rXqOmH1VilAt2DyPzluTi2blhk17bO7ef+zLLPlWvG494pDxcM234pJ8wTc/6R40UWizAIIMgxjvxZg5kmsbag==
"bootstrap@>=4.5.3 <5.0.0": "bootstrap@>=4.5.3 <5.0.0":
version "4.6.0" version "4.6.0"
resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.6.0.tgz#97b9f29ac98f98dfa43bf7468262d84392552fd7" resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.6.0.tgz#97b9f29ac98f98dfa43bf7468262d84392552fd7"
integrity sha512-Io55IuQY3kydzHtbGvQya3H+KorS/M9rSNyfCGCg9WZ4pyT/lCxIlpJgG1GXW/PswzC84Tr2fBYi+7+jFVQQBw== integrity sha512-Io55IuQY3kydzHtbGvQya3H+KorS/M9rSNyfCGCg9WZ4pyT/lCxIlpJgG1GXW/PswzC84Tr2fBYi+7+jFVQQBw==
bootstrap@^5.1.3:
version "5.1.3"
resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-5.1.3.tgz#ba081b0c130f810fa70900acbc1c6d3c28fa8f34"
integrity sha512-fcQztozJ8jToQWXxVuEyXWW+dSo8AiXWKwiSSrKWsRB/Qt+Ewwza+JWoLKiTuQLaEPhdNAJ7+Dosc9DOIqNy7Q==
brace-expansion@^1.1.7: brace-expansion@^1.1.7:
version "1.1.11" version "1.1.11"
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"

View File

@ -1,8 +1,11 @@
# Server
PORT=4000 PORT=4000
JWT_SECRET=secret123 JWT_SECRET=secret123
JWT_EXPIRES_IN=10m JWT_EXPIRES_IN=10m
GRAPHIQL=false GRAPHIQL=false
GDT_API_URL=https://gdt.gradido.net GDT_API_URL=https://gdt.gradido.net
# Database
DB_HOST=localhost DB_HOST=localhost
DB_PORT=3306 DB_PORT=3306
DB_USER=root DB_USER=root
@ -10,29 +13,34 @@ DB_PASSWORD=
DB_DATABASE=gradido_community DB_DATABASE=gradido_community
TYPEORM_LOGGING_RELATIVE_PATH=typeorm.backend.log TYPEORM_LOGGING_RELATIVE_PATH=typeorm.backend.log
#EMAIL=true # Klicktipp
#EMAIL_USERNAME= KLICKTIPP=false
#EMAIL_SENDER= KLICKTTIPP_API_URL=https://api.klicktipp.com
#EMAIL_PASSWORD= KLICKTIPP_USER=gradido_test
#EMAIL_SMTP_URL= KLICKTIPP_PASSWORD=secret321
#EMAIL_SMTP_PORT=587 KLICKTIPP_APIKEY_DE=SomeFakeKeyDE
#RESEND_TIME=1 minute, 60 => 1hour, 1440 (60 minutes * 24 hours) => 24 hours KLICKTIPP_APIKEY_EN=SomeFakeKeyEN
#RESEND_TIME=
RESEND_TIME=10
#EMAIL_LINK_VERIFICATION=http://localhost/checkEmail/{code} # Community
#EMAIL_LINK_SETPASSWORD=http://localhost/reset/{code} COMMUNITY_NAME=Gradido Entwicklung
COMMUNITY_URL=http://localhost/
COMMUNITY_REGISTER_URL=http://localhost/register
COMMUNITY_DESCRIPTION=Die lokale Entwicklungsumgebung von Gradido.
#KLICKTIPP_USER= # Login Server
#KLICKTIPP_PASSWORD=
#KLICKTIPP_APIKEY_DE=
#KLICKTIPP_APIKEY_EN=
#KLICKTIPP=true
COMMUNITY_NAME=
COMMUNITY_URL=
COMMUNITY_REGISTER_URL=
COMMUNITY_DESCRIPTION=
LOGIN_APP_SECRET=21ffbbc616fe LOGIN_APP_SECRET=21ffbbc616fe
LOGIN_SERVER_KEY=a51ef8ac7ef1abf162fb7a65261acd7a LOGIN_SERVER_KEY=a51ef8ac7ef1abf162fb7a65261acd7a
# EMail
EMAIL=false
EMAIL_USERNAME=gradido_email
EMAIL_SENDER=info@gradido.net
EMAIL_PASSWORD=xxx
EMAIL_SMTP_URL=gmail.com
EMAIL_SMTP_PORT=587
EMAIL_LINK_VERIFICATION=http://localhost/checkEmail/{code}
EMAIL_LINK_SETPASSWORD=http://localhost/reset/{code}
RESEND_TIME=10
# Webhook
WEBHOOK_ELOPAGE_SECRET=secret WEBHOOK_ELOPAGE_SECRET=secret

View File

@ -1,8 +1,10 @@
PORT=4000 # Server
JWT_SECRET=$JWT_SECRET JWT_SECRET=$JWT_SECRET
JWT_EXPIRES_IN=10m JWT_EXPIRES_IN=10m
GRAPHIQL=false GRAPHIQL=false
GDT_API_URL=$GDT_API_URL GDT_API_URL=$GDT_API_URL
# Database
DB_HOST=localhost DB_HOST=localhost
DB_PORT=3306 DB_PORT=3306
DB_USER=$DB_USER DB_USER=$DB_USER
@ -10,26 +12,35 @@ DB_PASSWORD=$DB_PASSWORD
DB_DATABASE=gradido_community DB_DATABASE=gradido_community
TYPEORM_LOGGING_RELATIVE_PATH=$TYPEORM_LOGGING_RELATIVE_PATH TYPEORM_LOGGING_RELATIVE_PATH=$TYPEORM_LOGGING_RELATIVE_PATH
# Klicktipp
KLICKTIPP=$KLICKTIPP
KLICKTTIPP_API_URL=https://api.klicktipp.com
KLICKTIPP_USER=$KLICKTIPP_USER
KLICKTIPP_PASSWORD=$KLICKTIPP_PASSWORD
KLICKTIPP_APIKEY_DE=$KLICKTIPP_APIKEY_DE
KLICKTIPP_APIKEY_EN=$KLICKTIPP_APIKEY_EN
# Community
COMMUNITY_NAME=$COMMUNITY_NAME
COMMUNITY_URL=$COMMUNITY_URL
COMMUNITY_REGISTER_URL=$COMMUNITY_REGISTER_URL
COMMUNITY_DESCRIPTION=$COMMUNITY_DESCRIPTION
# Login Server
LOGIN_APP_SECRET=21ffbbc616fe
LOGIN_SERVER_KEY=a51ef8ac7ef1abf162fb7a65261acd7a
# EMail
RESEND_TIME=10
EMAIL=$EMAIL EMAIL=$EMAIL
EMAIL_USERNAME=$EMAIL_USERNAME EMAIL_USERNAME=$EMAIL_USERNAME
EMAIL_SENDER=$EMAIL_SENDER EMAIL_SENDER=$EMAIL_SENDER
EMAIL_PASSWORD=$EMAIL_PASSWORD EMAIL_PASSWORD=$EMAIL_PASSWORD
EMAIL_SMTP_URL=$EMAIL_SMTP_URL EMAIL_SMTP_URL=$EMAIL_SMTP_URL
EMAIL_SMTP_PORT=587 EMAIL_SMTP_PORT=587
#RESEND_TIME=1 minute, 60 => 1hour, 1440 (60 minutes * 24 hours) => 24 hours
RESEND_TIME=10
EMAIL_LINK_VERIFICATION=$EMAIL_LINK_VERIFICATION EMAIL_LINK_VERIFICATION=$EMAIL_LINK_VERIFICATION
EMAIL_LINK_SETPASSWORD=$EMAIL_LINK_SETPASSWORD EMAIL_LINK_SETPASSWORD=$EMAIL_LINK_SETPASSWORD
RESEND_TIME=10
#KLICKTIPP_USER= # Webhook
#KLICKTIPP_PASSWORD=
#KLICKTIPP_APIKEY_DE=
#KLICKTIPP_APIKEY_EN=
#KLICKTIPP=true
COMMUNITY_NAME=$COMMUNITY_NAME
COMMUNITY_URL=$COMMUNITY_URL
COMMUNITY_REGISTER_URL=$COMMUNITY_REGISTER_URL
COMMUNITY_DESCRIPTION=$COMMUNITY_DESCRIPTION
WEBHOOK_ELOPAGE_SECRET=$WEBHOOK_ELOPAGE_SECRET WEBHOOK_ELOPAGE_SECRET=$WEBHOOK_ELOPAGE_SECRET

View File

@ -1,6 +1,6 @@
{ {
"name": "gradido-backend", "name": "gradido-backend",
"version": "1.5.1", "version": "1.6.0",
"description": "Gradido unified backend providing an API-Service for Gradido Transactions", "description": "Gradido unified backend providing an API-Service for Gradido Transactions",
"main": "src/index.ts", "main": "src/index.ts",
"repository": "https://github.com/gradido/gradido/backend", "repository": "https://github.com/gradido/gradido/backend",

View File

@ -43,6 +43,7 @@ const loginServer = {
LOGIN_SERVER_KEY: process.env.LOGIN_SERVER_KEY || 'a51ef8ac7ef1abf162fb7a65261acd7a', LOGIN_SERVER_KEY: process.env.LOGIN_SERVER_KEY || 'a51ef8ac7ef1abf162fb7a65261acd7a',
} }
// TODO: Hannes if I find you... this looks like blasphemy
const resendTime = parseInt(process.env.RESEND_TIME ? process.env.RESEND_TIME : 'null') const resendTime = parseInt(process.env.RESEND_TIME ? process.env.RESEND_TIME : 'null')
const email = { const email = {
EMAIL: process.env.EMAIL === 'true' || false, EMAIL: process.env.EMAIL === 'true' || false,

View File

@ -23,6 +23,7 @@ import { UserTransactionRepository } from '../../typeorm/repository/UserTransact
import { BalanceRepository } from '../../typeorm/repository/Balance' import { BalanceRepository } from '../../typeorm/repository/Balance'
import { calculateDecay } from '../../util/decay' import { calculateDecay } from '../../util/decay'
import { LoginUserRepository } from '../../typeorm/repository/LoginUser' import { LoginUserRepository } from '../../typeorm/repository/LoginUser'
import { LoginPendingTasksAdmin } from '@entity/LoginPendingTasksAdmin'
@Resolver() @Resolver()
export class AdminResolver { export class AdminResolver {
@ -113,22 +114,32 @@ export class AdminResolver {
const user = await userRepository.findByEmail(email) const user = await userRepository.findByEmail(email)
const loginPendingTasksAdminRepository = getCustomRepository(LoginPendingTasksAdminRepository) const loginPendingTasksAdminRepository = getCustomRepository(LoginPendingTasksAdminRepository)
const updatedCreation = await loginPendingTasksAdminRepository.findOneOrFail({ id }) const pendingCreationToUpdate = await loginPendingTasksAdminRepository.findOneOrFail({ id })
if (updatedCreation.userId !== user.id) if (pendingCreationToUpdate.userId !== user.id) {
throw new Error('user of the pending creation and send user does not correspond') throw new Error('user of the pending creation and send user does not correspond')
}
updatedCreation.amount = BigInt(amount * 10000) const creationDateObj = new Date(creationDate)
updatedCreation.memo = memo let creations = await getUserCreations(user.id)
updatedCreation.date = new Date(creationDate) if (pendingCreationToUpdate.date.getMonth() === creationDateObj.getMonth()) {
updatedCreation.moderator = moderator creations = updateCreations(creations, pendingCreationToUpdate)
}
await loginPendingTasksAdminRepository.save(updatedCreation) if (!isCreationValid(creations, amount, creationDateObj)) {
throw new Error('Creation is not valid')
}
pendingCreationToUpdate.amount = BigInt(amount * 10000)
pendingCreationToUpdate.memo = memo
pendingCreationToUpdate.date = new Date(creationDate)
pendingCreationToUpdate.moderator = moderator
await loginPendingTasksAdminRepository.save(pendingCreationToUpdate)
const result = new UpdatePendingCreation() const result = new UpdatePendingCreation()
result.amount = parseInt(amount.toString()) result.amount = parseInt(amount.toString())
result.memo = updatedCreation.memo result.memo = pendingCreationToUpdate.memo
result.date = updatedCreation.date result.date = pendingCreationToUpdate.date
result.moderator = updatedCreation.moderator result.moderator = pendingCreationToUpdate.moderator
result.creation = await getUserCreations(user.id) result.creation = await getUserCreations(user.id)
return result return result
@ -322,6 +333,28 @@ async function getUserCreations(id: number): Promise<number[]> {
] ]
} }
function updateCreations(creations: number[], pendingCreation: LoginPendingTasksAdmin): number[] {
const dateMonth = moment().format('YYYY-MM')
const dateLastMonth = moment().subtract(1, 'month').format('YYYY-MM')
const dateBeforeLastMonth = moment().subtract(2, 'month').format('YYYY-MM')
const creationDateMonth = moment(pendingCreation.date).format('YYYY-MM')
switch (creationDateMonth) {
case dateMonth:
creations[2] += parseInt(pendingCreation.amount.toString())
break
case dateLastMonth:
creations[1] += parseInt(pendingCreation.amount.toString())
break
case dateBeforeLastMonth:
creations[0] += parseInt(pendingCreation.amount.toString())
break
default:
throw new Error('UpdatedCreationDate is not in the last three months')
}
return creations
}
function isCreationValid(creations: number[], amount: number, creationDate: Date) { function isCreationValid(creations: number[], amount: number, creationDate: Date) {
const dateMonth = moment().format('YYYY-MM') const dateMonth = moment().format('YYYY-MM')
const dateLastMonth = moment().subtract(1, 'month').format('YYYY-MM') const dateLastMonth = moment().subtract(1, 'month').format('YYYY-MM')

View File

@ -1,6 +1,6 @@
{ {
"name": "gradido-database", "name": "gradido-database",
"version": "0.0.1", "version": "1.6.0",
"description": "Gradido Database Tool to execute database migrations", "description": "Gradido Database Tool to execute database migrations",
"main": "src/index.ts", "main": "src/index.ts",
"repository": "https://github.com/gradido/gradido/database", "repository": "https://github.com/gradido/gradido/database",

View File

@ -37,6 +37,12 @@ COMMUNITY_URL=https://stage1.gradido.net/
COMMUNITY_REGISTER_URL=https://stage1.gradido.net/register COMMUNITY_REGISTER_URL=https://stage1.gradido.net/register
COMMUNITY_DESCRIPTION=Gradido Development Stage1 Test Community COMMUNITY_DESCRIPTION=Gradido Development Stage1 Test Community
KLICKTIPP=false
KLICKTIPP_USER=
KLICKTIPP_PASSWORD=
KLICKTIPP_APIKEY_DE=
KLICKTIPP_APIKEY_EN=
# frontend # frontend
GRAPHQL_URI=https://stage1.gradido.net/graphql GRAPHQL_URI=https://stage1.gradido.net/graphql
ADMIN_AUTH_URL=https://stage1.gradido.net/admin/authenticate?token={token} ADMIN_AUTH_URL=https://stage1.gradido.net/admin/authenticate?token={token}

View File

@ -0,0 +1,25 @@
# Releaseplan V1.6.0
Die folgenden Schritte dienen zur Vorbereitung und Durchführung der Inbetriebnahme von Release V-1.6.0.
| LfdNr. | Aktion | verantwortlich | Status<br />(Ok / Err / Ongoing) | Startzeit | Dauer in min | Endezeit |
| ------ | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- | -------------------------------- | --------- | ------------ | -------- |
| 1 | Finish all PRs & Finally merge everything | **@Hannes** **@ogerly** **@moriz** **@ulfgebh** | | | | |
| 2 | Make a new version 1.6.0 | **@Developer** | | | | |
| 2a | Deploy V1.6.0 on Stage 2 and make Tests to confirm a working release build | **@Developer @Bernd von Gradido** | | | | |
| 3 | Setup Klicktip settings from old production on new production (?)Make a new version 1.6.0 | ****@ulfgebhardt** **@einhornimmon**** | | | | |
| 4 | Deploy 1.6.0 on gdd.gradido.net and make sure things work as expected(rudimentary) | **@ulfgebhardt** | | | | |
| 5a | Disable Klicktipp Hook to current production gdd1.gradido.com | **@einhornimmond** | | | | |
| 5b | Disable Elopage Hook to current production gdd1.gradido.com | **@einhornimmond** | | | | |
| 6 | Deploy Maintenance page to current production & enable it | **@einhornimmond** | | | | |
| 7 | Shut down current production servers except mariadb & nginx serving the maintenance page | **@einhornimmond** | | | | |
| 8 | Create backup from production (correct format & correct data) | **@einhornimmond** | | | | |
| 9 | Shut down mariadb server | **@einhornimmond** | | | | |
| 10 | Transmit backup to new production | **@ulfgebhardt** | | | | |
| 11 | Import production data on new production | **@ulfgebhardt** | | | | |
| 12a | Enable new Klicktipp hook to new production | **@einhornimmond** **@ulfgebhard** | | | | |
| 12b | Enable new Elopage hooks to new production | **@einhornimmond** **@ulfgebhard** | | | | |
| 13 | Do extended tests on the new production | **@Team** | | | | |
| 14 | Have a permanent redirect from all old urls to the new production server:<br />Which one?<br />- URL1<br />- URL2<br />- etc. | **@einhornimmond** | | | | |
| 15 | Update links on Wordpress to the new production server | **@Bernd von Gradido** | | | | |

View File

@ -1,6 +1,6 @@
{ {
"name": "bootstrap-vue-gradido-wallet", "name": "bootstrap-vue-gradido-wallet",
"version": "1.5.1", "version": "1.6.0",
"private": true, "private": true,
"scripts": { "scripts": {
"start": "node run/server.js", "start": "node run/server.js",

View File

@ -1,6 +1,6 @@
{ {
"name": "gradido", "name": "gradido",
"version": "1.5.1", "version": "1.6.0",
"description": "Gradido", "description": "Gradido",
"main": "index.js", "main": "index.js",
"repository": "git@github.com:gradido/gradido.git", "repository": "git@github.com:gradido/gradido.git",