Person and group details/form in Vue 3 #3603

Merged
hansegucker merged 36 commits from fix/person-vue3 into master 2025-10-20 22:00:53 +02:00
Owner

Close #1373

Close #1343

Close #1379

Close #1363

Close #1380

Information and screenshots

No further information have been provided.

Checklist

  • tox -e reformat,lint used
  • Changelog updated/No update necessary
  • Documentation (incl. Screenshots) up-to-date
  • Copyright in apps.py and README.rst up-to-date
  • (Unit) tests for new feature/regression tests for bug fixes (only if useful)
  • Adhere to URL scheme
  • Tested with admin account
  • Tested with normal account (based on permissions)

Backend checklist

  • Use permissions for all GraphQL mutations
  • Use query optimizer for all GraphQL queries
  • Don't use inefficient DB queries

Frontend checklist (mandatory with ~"part::frontend")

Close #1373 Close #1343 Close #1379 Close #1363 Close #1380 ## Information and screenshots No further information have been provided. ## Checklist - [x] `tox -e reformat,lint` used - [x] Changelog updated/No update necessary - [x] Documentation (incl. Screenshots) up-to-date - [x] Copyright in `apps.py` and `README.rst` up-to-date - [x] (Unit) tests for new feature/regression tests for bug fixes (only if useful) - [x] Adhere to [URL scheme](https://edugit.org/AlekSIS/official/AlekSIS/-/issues/86) - [x] Tested with admin account - [x] Tested with normal account (based on permissions) ## Backend checklist - [x] Use permissions for all GraphQL mutations - [x] Use query optimizer for all GraphQL queries - [x] Don't use inefficient DB queries ## Frontend checklist (mandatory with ~"part::frontend") - [x] Screenshots are attached (mobile and desktop) - [x] Tested on mobile, tablet, and desktop sizes - [ ] Adhered to [frontend guidelines](https://edugit.org/AlekSIS/official/AlekSIS/-/blob/master/project/frontend_guidelines.rst?ref_type=heads) - [ ] Checked with [Firefox Accessibility Checker](https://firefox-source-docs.mozilla.org/devtools-user/accessibility_inspector/)
Author
Owner

marked the checklist item tox -e reformat,lint used as completed

marked the checklist item **`tox -e reformat,lint` used** as completed
Author
Owner

marked the checklist item tox -e reformat,lint used as incomplete

marked the checklist item **`tox -e reformat,lint` used** as incomplete
Author
Owner

marked the checklist item tox -e reformat,lint used as completed

marked the checklist item **`tox -e reformat,lint` used** as completed
Author
Owner

added 26 commits

  • 00763563...058a3e71 - 25 commits from branch master
  • df70d53d - Merge branch 'master' into fix/person-vue3

Compare with previous version

added 26 commits <ul><li>00763563...058a3e71 - 25 commits from branch <code>master</code></li><li>df70d53d - Merge branch &#39;master&#39; into fix/person-vue3</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72110&start_sha=007635632b1ddbe7d0f7f2391caf8e23f32ce27d)
Author
Owner

grafik

![grafik](/uploads/7921e11f506b0b1ce26871ac16afcf92/grafik.png)
Author
Owner

added 2 commits

Compare with previous version

added 2 commits <ul><li>5eec8a70 - Fix handling of addresses in frontend</li><li>788e0a3d - Fix tox.ini</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72117&start_sha=df70d53d49ddb4f6b15865bdaddfe2adf51ec5cc)
Author
Owner

added 4 commits

Compare with previous version

added 4 commits <ul><li>9ebd5167 - Switch from userid/username to user type</li><li>bbb35f01 - Fix smaller bugs with person form</li><li>be7201a3 - Fix rules/perms for addresses</li><li>0c7e56bb - Fix tox.ini</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72118&start_sha=788e0a3dcf92c7c7e7e85443d4fb9509c8a00269)
Author
Owner

added 3 commits

  • 56954166 - Migrate itemsPerPage to composable
  • aac71687 - Introduce number formatting
  • 45bd9598 - Migrate group components to Vue 3

Compare with previous version

added 3 commits <ul><li>56954166 - Migrate itemsPerPage to composable</li><li>aac71687 - Introduce number formatting</li><li>45bd9598 - Migrate group components to Vue 3</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72119&start_sha=0c7e56bbef779b827f1373eec966c7345fd21c05)
Author
Owner

added 1 commit

  • 3d6bfa49 - Completely migrate editing/creating groups to Vue

Compare with previous version

added 1 commit <ul><li>3d6bfa49 - Completely migrate editing/creating groups to Vue</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72120&start_sha=45bd95983e3a465badc227b3761218291792c87d)
Author
Owner

added 1 commit

  • 22497805 - Migrate the rest of the person components to Vue 3

Compare with previous version

added 1 commit <ul><li>22497805 - Migrate the rest of the person components to Vue 3</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72134&start_sha=3d6bfa49ff91a2d309d4f31857774e1ce23fe417)
Author
Owner

added 1 commit

Compare with previous version

added 1 commit <ul><li>58293d6f - Drop outdated address tests</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72147&start_sha=22497805f9133b0cffecf30460cb0a666b3fc467)
Author
Owner

TODO: Certain fields only editable in certain situations

TODO: Certain fields only editable in certain situations
Author
Owner

Edit form opens on empty?

Edit form opens on empty?
Author
Owner

added 1 commit

Compare with previous version

added 1 commit <ul><li>8a856666 - Fix backOrElse functionality</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72149&start_sha=58293d6fc4fb58a6b27bf2bc4c286b46aa701d42)
Author
Owner

added 1 commit

Compare with previous version

added 1 commit <ul><li>f9634f48 - Fix AvatarContent</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72151&start_sha=8a8566668fd5d6dcce9f8e6e8b7c386bc10ff3ea)
Author
Owner

resolved all threads

resolved all threads
Author
Owner

marked this merge request as ready

marked this merge request as **ready**
Author
Owner

added 3 commits

  • c1949362 - Fix permission handling in App.vue/for person details
  • f10c0895 - Fix group statistics card with less data
  • 61dce2dc - Limit editable fields for persons

Compare with previous version

added 3 commits <ul><li>c1949362 - Fix permission handling in App.vue/for person details</li><li>f10c0895 - Fix group statistics card with less data</li><li>61dce2dc - Limit editable fields for persons</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72153&start_sha=f9634f480fa9f1c1071ceac46bed22f53f5d4d84)
Author
Owner

changed title from Person details/form in Vue 3 to Person and group details/form in Vue 3

<p>changed title from <code class="idiff">Person details/form in Vue 3</code> to <code class="idiff">Person <span class="idiff left right addition">and group </span>details/form in Vue 3</code></p>
Author
Owner

marked the checklist item Documentation (incl. Screenshots) up-to-date as completed

marked the checklist item **Documentation (incl. Screenshots) up-to-date** as completed
Author
Owner

marked the checklist item Copyright in apps.py and README.rst up-to-date as completed

marked the checklist item **Copyright in `apps.py` and `README.rst` up-to-date** as completed
Author
Owner

marked the checklist item Changelog updated/No update necessary as completed

marked the checklist item **Changelog updated/No update necessary** as completed
Author
Owner

marked the checklist item (Unit) tests for new feature/regression tests for bug fixes (only if useful) as completed

marked the checklist item **(Unit) tests for new feature/regression tests for bug fixes (only if useful)** as completed
Author
Owner

marked the checklist item Adhere to URL scheme as completed

marked the checklist item **Adhere to [URL scheme](https://edugit.org/AlekSIS/official/AlekSIS/-/issues/86)** as completed
Author
Owner

marked the checklist item Tested with admin account as completed

marked the checklist item **Tested with admin account** as completed
Author
Owner

marked the checklist item Tested with normal account (based on permissions) as completed

marked the checklist item **Tested with normal account (based on permissions)** as completed
Author
Owner

marked the checklist item Use permissions for all GraphQL mutations as completed

marked the checklist item **Use permissions for all GraphQL mutations** as completed
Author
Owner

marked the checklist item Use query optimizer for all GraphQL queries as completed

marked the checklist item **Use query optimizer for all GraphQL queries** as completed
Author
Owner

marked the checklist item Don't use inefficient DB queries as completed

marked the checklist item **Don't use inefficient DB queries** as completed
Author
Owner

marked the checklist item Screenshots are attached (mobile and desktop) as completed

marked the checklist item **Screenshots are attached (mobile and desktop)** as completed
Author
Owner

marked the checklist item Tested on mobile, tablet, and desktop sizes as completed

marked the checklist item **Tested on mobile, tablet, and desktop sizes** as completed
Author
Owner

added 1 commit

Compare with previous version

added 1 commit <ul><li>b0dffb9c - Fix group editing</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72156&start_sha=61dce2dc488f29f07cd9bc5fe3d249796e69e50c)
Member

where is this component used?
iirc we wanted to delete this, as the crud-provider functions as an iterator already

where is this component used? iirc we wanted to delete this, as the crud-provider functions as an iterator already
Member
        :props="{ disabled }"
```suggestion:-0+0 :props="{ disabled }" ```
Member
          :disabled="disabled"
```suggestion:-0+0 :disabled="disabled" ```
Member
          v-if="!disableDelete && item?.canDelete"
```suggestion:-0+0 v-if="!disableDelete && item?.canDelete" ```
Member
          :disabled="disabled"

... continue this in other components, will not mark it anymore

```suggestion:-0+0 :disabled="disabled" ``` ... continue this in other components, will not mark it anymore
Member

I believe the comment doesn't relate to your addition…

I believe the comment doesn't relate to your addition…
Member

why can this be a boolean?

why can this be a boolean?
Member
```suggestion:-0+0 ```
Member

does this align with the allowed formats from the backend?
what about other raster formats like gif, webp, or maybe even vectors like svg?

does this align with the allowed formats from the backend? what about other raster formats like gif, webp, or maybe even vectors like svg?
Member
    <v-list-item
      :prepend-icon="icon"
      :title="$t(i18nKey)"
    />
```suggestion:-4+0 <v-list-item :prepend-icon="icon" :title="$t(i18nKey)" /> ```
Member

this change renames the component, did you check (in other apps?) for usages?

this change renames the component, did you check (in other apps?) for usages?
Member

requested changes

requested changes
Author
Owner

The name has already been GroupCollection before, hasn't it?

The name has already been `GroupCollection` before, hasn't it?
Member
const tabIndex = ref(0);

defineProps({
```suggestion:-1+0 const tabIndex = ref(0); defineProps({ ```
Member
});

const tabs = collections.coreGroupOverview.items;
const tabSlug = computed(() => {
  return route.hash;
});

onMounted(() => {
```suggestion:-5+0 }); const tabs = collections.coreGroupOverview.items; const tabSlug = computed(() => { return route.hash; }); onMounted(() => { ```
Member

where would this come from?

where would this come from?
Member

why does this either return a component or a string, that seems wrong…

why does this either return a component or a string, that seems wrong…
Member
        v-if="group.statistics.ageAvg"
        prepend-icon="mdi-cake-variant-outline"

v-if is more important → higher

```suggestion:-1+0 v-if="group.statistics.ageAvg" prepend-icon="mdi-cake-variant-outline" ``` `v-if` is more important → higher
Member

why did you remove them?

why did you remove them?
Member

again; returns either component or string, seems weird, why not return component directly or string at all times

again; returns either component or string, seems weird, why not return component directly or string at all times
Member

what now, enabled or disabled

what now, enabled or disabled
Member

either remove or implement

either remove or implement
Member

both these changes seem like some reformatting is gonna happen, even though this happens in lint

both these changes seem like some reformatting is gonna happen, even though this happens in `lint`
Member

this seems wrong

this seems wrong
Member

requested changes

requested changes
Author
Owner

changed the description

changed the description
Author
Owner

Our backend actually supports much more extensions. That's probably something for a different issue.

Our backend actually supports much more extensions. That's probably something for a different issue.
Author
Owner

created #1391 to continue this discussion

created #1391 to continue this discussion
Author
Owner

mentioned in issue #1391

mentioned in issue #1391
Author
Owner

Mixing eslint with formatting breaks everything.

Mixing eslint with formatting breaks everything.
Author
Owner

Yeah, but deleting this is not part of this MR.

Yeah, but deleting this is not part of this MR.
Author
Owner

Because the default is false and this seems to have a special reason, didn't want to deviate from the pattern here (see lines below).

Because the default is `false` and this seems to have a special reason, didn't want to deviate from the pattern here (see lines below).
Author
Owner

That's just to be ready for future use cases.

That's just to be ready for future use cases.
Author
Owner

I think you invented this one ;-)

I think you invented this one ;-)
Author
Owner

Didn't work anymore as expected, this way it works perfectly fine.

Didn't work anymore as expected, this way it works perfectly fine.
Author
Owner

Again your invention ;-)

Again your invention ;-)
Author
Owner

Good catch 😆

Good catch :laughing:
Author
Owner

No, it's todo, I keep this for future usage.

No, it's todo, I keep this for future usage.
Author
Owner

left review comments

left review comments
Author
Owner

changed this line in version 13 of the diff

changed this line in [version 13 of the diff](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72191&start_sha=b0dffb9c9c3bb1d8ebbffb7de96f70fc3c3841fb#3cf2f981bb4c4e395013aede4a6a0eb95308764f_125_122)
Author
Owner

changed this line in version 13 of the diff

changed this line in [version 13 of the diff](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72191&start_sha=b0dffb9c9c3bb1d8ebbffb7de96f70fc3c3841fb#3cf2f981bb4c4e395013aede4a6a0eb95308764f_133_129)
Author
Owner

changed this line in version 13 of the diff

changed this line in [version 13 of the diff](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72191&start_sha=b0dffb9c9c3bb1d8ebbffb7de96f70fc3c3841fb#3cf2f981bb4c4e395013aede4a6a0eb95308764f_142_134)
Author
Owner

changed this line in version 13 of the diff

changed this line in [version 13 of the diff](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72191&start_sha=b0dffb9c9c3bb1d8ebbffb7de96f70fc3c3841fb#3cf2f981bb4c4e395013aede4a6a0eb95308764f_147_139)
Author
Owner

changed this line in version 13 of the diff

changed this line in [version 13 of the diff](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72191&start_sha=b0dffb9c9c3bb1d8ebbffb7de96f70fc3c3841fb#5f6c6de95d80dfbeb2c7d24385ad002aabed2cf2_35_35)
Author
Owner

changed this line in version 13 of the diff

changed this line in [version 13 of the diff](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72191&start_sha=b0dffb9c9c3bb1d8ebbffb7de96f70fc3c3841fb#9def479d8343f93a19d6446195781292b257c775_24_20)
Author
Owner

changed this line in version 13 of the diff

changed this line in [version 13 of the diff](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72191&start_sha=b0dffb9c9c3bb1d8ebbffb7de96f70fc3c3841fb#fbdaa5cf8fd6dc7e1d0f592e5cbf6d0db92a110f_52_52)
Author
Owner

added 1 commit

Compare with previous version

added 1 commit <ul><li>12b91694 - Fix things from review</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-Core/-/merge_requests/1958/diffs?diff_id=72191&start_sha=b0dffb9c9c3bb1d8ebbffb7de96f70fc3c3841fb)
Author
Owner

resolved all threads

resolved all threads
Author
Owner

assigned to @hansegucker

assigned to @hansegucker
Author
Owner

mentioned in commit bbb48f874d

mentioned in commit bbb48f874d7f40b5078203d53c94070835fbffc8
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
aleksis/AlekSIS-Core!3603
No description provided.