Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
On admin/user, the user's roles are separated both by a comma and a [br /]. The comma is quite enough - the [br /] merely makes the page look retarded ("fat" rows) on screens that have plenty of width to accomodate the entire table without the BR. On smaller width'd browsers, the "fat" rows will return, but naturally wrapped, not forced with inline HTML. Likewise, [BR] and the comma are both delimiters: only one is needed (if we use [BR], the newline becomes the visual delimiter; if we use comma, then we don't need the newlines). The attached patch removes the [BR].
Comment | File | Size | Author |
---|---|---|---|
#6 | roles_span.patch | 944 bytes | factoryjoe |
#5 | roles_div.patch | 930 bytes | jhriggs |
_patch_usermodulebr.patch | 848 bytes | Morbus Iff | |
Comments
Comment #1
Dries CreditAttribution: Dries commentedCommitted to HEAD.
Comment #2
jhriggs CreditAttribution: jhriggs commentedI'm not sure how I feel about this. Removing the break is OK, I suppose, but removing the comma would not be. You could not have breaks alone, because roles can have spaces in them, and they may not break properly. So, we need to leave the commas in. Personally, I think it is nicer to see what we have now:
rather than:
We probably shouldn't have the hardcoded break, but maybe they should be in a div. That way a theme can display them inline if desired.
Comment #3
jhriggs CreditAttribution: jhriggs commentedCross-posted with Dries there. Setting back to active, because I don't think this is the best fix.
Comment #4
jhriggs CreditAttribution: jhriggs commentedHere's a patch that wraps each role in a div:
This way they still appear on separate lines unless the theme decides to make div.class display inline.
Comment #5
jhriggs CreditAttribution: jhriggs commentedUgh...and the patch
Comment #6
factoryjoe CreditAttribution: factoryjoe commentedI would prefer that these be spans, since they're the least semantically offensive.
If you want to have breaks, you can do so in your theme (span.user-role{display:block;}), otherwise they sit snuggly in a single line.
Comment #7
Bèr Kessels CreditAttribution: Bèr Kessels commented+1 from me.
However, were we not going to make a generlal wrapper function? Should we then not wait for that function, instead of seeding HTML all over the place?
Comment #8
factoryjoe CreditAttribution: factoryjoe commentedWhat's interesting about your point, Ber, is that in this case, we really don't need a wrapper per se... instead, if you just threw a class on the containing TD, you could wrap the roles in spans and then style them that way:
However, the broader question here is what should be wrapped by Drupal (and at what level of granularity -- i.e. wrap each role as in this patch or wrap the container with a class?). Furthermore, does it make sense to make this themeable or not?
At some point we're going to need to hash out how to make decisions about this kind of thing, since the BRs that were removed were not semantic and were purely presentational. I would strongly suggest erring on the side of semantic defaults that themers can manipulate to their will; the question though, is, what consistent parts of Drupal should be themeable without overcomplicating things?
Comment #9
pfaocleJust to stir things up a bit, you could also say its a list, and define HTML and CSS to display it as desired, whether that be inline or as a block list...
Anyways, I was just checking this patch against CVS - does it still apply? I no longer see a column for roles in the table at all. It seems user_admin_account() function no longer SELECTs or displays it?
Comment #10
Robrecht Jacques CreditAttribution: Robrecht Jacques commentedNo longer applies to current CVS-HEAD: the "roles" column was removed in rev 1.471.