Current status maximum length check and ui feedback

Summary

Setting a user status with more than 100 chars results in an error notification about not beeing able to set/update the status and an request, to try it again later. But even trying later can't work, because the status can only contain a maximum of 100 chars by default (persistence).

Why isn't this limit checked prior to accepting the input in the modal. For example GitHub implemented a counter of remaining/overlapping chars right inside the modal, which is quite useful.

Steps to reproduce

Change/set status to a String with more than 100 chars and try to save it from the modal.

Example Project

Not applicable since this is GitLab basic functionality not concerning repositories.

What is the current bug behavior?

The modal accepts my status but will be refused by API with a error message in default GitLab UI.

What is the expected correct behavior?

I would expect, that I can't input a string longer than max length into the modal. At least i would disable the appropriate buttons or somehow display the max length/remaining char count to the user.
Only by taking a look into https://docs.gitlab.com/ee/user/profile/#current-status - or inside the code - you can find information about the 100 char cap.

Relevant logs and/or screenshots

Bildschirmfoto_2019-01-11_um_15.17.02 Unbenannt

Output of checks

This bug happens on GitLab.com and on my GitLab CE 11.6.3 (gitlab-ce@bc9391c294422742a7c0f904cbac4e841a73ae9e) instance.

Possible fixes

Add UI improvements to the modal, for example a display for remaining/overlapping charcount or disable the corresponding button when input to long.

Note: We do provide a better error message when editing the status from the actual profile page, but this could still be improved by either providing help text for this field or limiting the amount of characters the user can enter.

Screenshot_2023-02-13_at_2.26.20_PM

Edited Jan 24, 2024 by Christina Lohr
Assignee Loading
Time tracking Loading