Skip to content

Conversation

@hunternet93
Copy link
Contributor

Issue

https://otwarchive.atlassian.net/browse/AO3-7210

Purpose

Migrates the static skins-creating.html help file to a localized view on the help controller.

@hunternet93
Copy link
Contributor Author

Styling: When in a modal, the skins-creating page is in a context where rules like .userstuff dt apply, causing <dt> headers to appear in bold. However, when rendered directly at /help/skins_creating, the parent userstuff class is not applied, resulting in the page being a bit harder to read. Should this be fixed by applying .userstuff as a class on a parent element, or in some other way?

@slavalamp
Copy link
Contributor

Styling: When in a modal, the skins-creating page is in a context where rules like .userstuff dt apply, causing <dt> headers to appear in bold. However, when rendered directly at /help/skins_creating, the parent userstuff class is not applied, resulting in the page being a bit harder to read. Should this be fixed by applying .userstuff as a class on a parent element, or in some other way?

that's a problem with all new help pages (and not the only problem either), i think the ad&t are still deciding what to do about it, so you don't need to do anything right now. i'm expecting there will be a new issue or several in the future for this

@hunternet93 hunternet93 marked this pull request as ready for review January 21, 2026 21:20
@Bilka2 Bilka2 changed the title AO3-7210: Migrate skins-creating.html help file to help controller AO3-7210 Migrate skins-creating.html help file to help controller Jan 22, 2026
@Bilka2 Bilka2 self-requested a review January 22, 2026 21:39
Copy link
Contributor

@Bilka2 Bilka2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for working on this complicated file!

#
# *** IMPORTANT: if you edit these values please also update the
# skins-creating.html file in public/help ***
# skins-creating.html.erb file in app/views/help ***
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# skins-creating.html.erb file in app/views/help ***
# skins_creating.html.erb file in app/views/help ***

icon: Upload a preview (png, jpeg or gif)
public: Apply to make public
skin_type: Type
skins_creating_help_title: Creating skins
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
skins_creating_help_title: Creating skins
skins_creating_help_title: Skins creating

To match the current site

Comment on lines +9 to +11
<p><code>background, border, column, cue, flex, font, layer-background,
layout-grid, list-style, margin, marker, outline, overflow, padding,
page-break, pause, scrollbar, text, transform, transition</code></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

indentation/formatting fix:

Suggested change
<p><code>background, border, column, cue, flex, font, layer-background,
layout-grid, list-style, margin, marker, outline, overflow, padding,
page-break, pause, scrollbar, text, transform, transition</code></p>
<p>
<code>
background, border, column, cue, flex, font, layer-background,
layout-grid, list-style, margin, marker, outline, overflow, padding,
page-break, pause, scrollbar, text, transform, transition
</code>
</p>

Comment on lines +15 to +50
<p><code>-replace, -use-link-source, accelerator, accent-color, align-content,
align-items, align-self, alignment-adjust, alignment-baseline,
appearance, azimuth, baseline-shift, behavior, binding, bookmark-label,
bookmark-level, bookmark-target, bottom, box-align, box-direction,
box-flex, box-flex-group, box-lines, box-orient, box-pack, box-shadow,
box-sizing, caption-side, clear, clip, color, color-profile,
color-scheme, content, counter-increment, counter-reset, crop, cue,
cue-after, cue-before, cursor, direction, display, dominant-baseline,
drop-initial-after-adjust, drop-initial-after-align,
drop-initial-before-adjust, drop-initial-before-align,
drop-initial-size, drop-initial-value, elevation, empty-cells, filter,
fit, fit-position, float, float-offset, font, font-effect,
font-emphasize, font-emphasize-position, font-emphasize-style,
font-family, font-size, font-size-adjust, font-smooth, font-stretch,
font-style, font-variant, font-weight, grid-columns, grid-rows,
hanging-punctuation, height, hyphenate-after, hyphenate-before,
hyphenate-character, hyphenate-lines, hyphenate-resource, hyphens,
icon, image-orientation, image-resolution, ime-mode, include-source,
inline-box-align, justify-content, layout-flow, left, letter-spacing,
line-break, line-height, line-stacking, line-stacking-ruby,
line-stacking-shift, line-stacking-strategy, mark, mark-after,
mark-before, marks, marquee-direction, marquee-play-count,
marquee-speed, marquee-style, max-height, max-width, min-height,
min-width, move-to, nav-down, nav-index, nav-left, nav-right, nav-up,
opacity, order, orphans, page, page-policy, phonemes, pitch,
pitch-range, play-during, position, presentation-level,
punctuation-trim, quotes, rendering-intent, resize, rest, rest-after,
rest-before, richness, right, rotation, rotation-point, ruby-align,
ruby-overhang, ruby-position, ruby-span, size, speak, speak-header,
speak-numeral, speak-punctuation, speech-rate, stress, string-set,
tab-side, table-layout, target, target-name, target-new,
target-position, top, unicode-bibi, unicode-bidi, user-select,
vertical-align, visibility, voice-balance, voice-duration,
voice-family, voice-pitch, voice-pitch-range, voice-rate, voice-stress,
voice-volume, volume, white-space, white-space-collapse, widows, width,
word-break, word-spacing, word-wrap, writing-mode, z-index</code></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

indentation/formatting fix:

Suggested change
<p><code>-replace, -use-link-source, accelerator, accent-color, align-content,
align-items, align-self, alignment-adjust, alignment-baseline,
appearance, azimuth, baseline-shift, behavior, binding, bookmark-label,
bookmark-level, bookmark-target, bottom, box-align, box-direction,
box-flex, box-flex-group, box-lines, box-orient, box-pack, box-shadow,
box-sizing, caption-side, clear, clip, color, color-profile,
color-scheme, content, counter-increment, counter-reset, crop, cue,
cue-after, cue-before, cursor, direction, display, dominant-baseline,
drop-initial-after-adjust, drop-initial-after-align,
drop-initial-before-adjust, drop-initial-before-align,
drop-initial-size, drop-initial-value, elevation, empty-cells, filter,
fit, fit-position, float, float-offset, font, font-effect,
font-emphasize, font-emphasize-position, font-emphasize-style,
font-family, font-size, font-size-adjust, font-smooth, font-stretch,
font-style, font-variant, font-weight, grid-columns, grid-rows,
hanging-punctuation, height, hyphenate-after, hyphenate-before,
hyphenate-character, hyphenate-lines, hyphenate-resource, hyphens,
icon, image-orientation, image-resolution, ime-mode, include-source,
inline-box-align, justify-content, layout-flow, left, letter-spacing,
line-break, line-height, line-stacking, line-stacking-ruby,
line-stacking-shift, line-stacking-strategy, mark, mark-after,
mark-before, marks, marquee-direction, marquee-play-count,
marquee-speed, marquee-style, max-height, max-width, min-height,
min-width, move-to, nav-down, nav-index, nav-left, nav-right, nav-up,
opacity, order, orphans, page, page-policy, phonemes, pitch,
pitch-range, play-during, position, presentation-level,
punctuation-trim, quotes, rendering-intent, resize, rest, rest-after,
rest-before, richness, right, rotation, rotation-point, ruby-align,
ruby-overhang, ruby-position, ruby-span, size, speak, speak-header,
speak-numeral, speak-punctuation, speech-rate, stress, string-set,
tab-side, table-layout, target, target-name, target-new,
target-position, top, unicode-bibi, unicode-bidi, user-select,
vertical-align, visibility, voice-balance, voice-duration,
voice-family, voice-pitch, voice-pitch-range, voice-rate, voice-stress,
voice-volume, volume, white-space, white-space-collapse, widows, width,
word-break, word-spacing, word-wrap, writing-mode, z-index</code></p>
<p>
<code>
-replace, -use-link-source, accelerator, accent-color, align-content,
align-items, align-self, alignment-adjust, alignment-baseline,
appearance, azimuth, baseline-shift, behavior, binding, bookmark-label,
bookmark-level, bookmark-target, bottom, box-align, box-direction,
box-flex, box-flex-group, box-lines, box-orient, box-pack, box-shadow,
box-sizing, caption-side, clear, clip, color, color-profile,
color-scheme, content, counter-increment, counter-reset, crop, cue,
cue-after, cue-before, cursor, direction, display, dominant-baseline,
drop-initial-after-adjust, drop-initial-after-align,
drop-initial-before-adjust, drop-initial-before-align,
drop-initial-size, drop-initial-value, elevation, empty-cells, filter,
fit, fit-position, float, float-offset, font, font-effect,
font-emphasize, font-emphasize-position, font-emphasize-style,
font-family, font-size, font-size-adjust, font-smooth, font-stretch,
font-style, font-variant, font-weight, grid-columns, grid-rows,
hanging-punctuation, height, hyphenate-after, hyphenate-before,
hyphenate-character, hyphenate-lines, hyphenate-resource, hyphens, icon,
image-orientation, image-resolution, ime-mode, include-source,
inline-box-align, justify-content, layout-flow, left, letter-spacing,
line-break, line-height, line-stacking, line-stacking-ruby,
line-stacking-shift, line-stacking-strategy, mark, mark-after,
mark-before, marks, marquee-direction, marquee-play-count,
marquee-speed, marquee-style, max-height, max-width, min-height,
min-width, move-to, nav-down, nav-index, nav-left, nav-right, nav-up,
opacity, order, orphans, page, page-policy, phonemes, pitch,
pitch-range, play-during, position, presentation-level,
punctuation-trim, quotes, rendering-intent, resize, rest, rest-after,
rest-before, richness, right, rotation, rotation-point, ruby-align,
ruby-overhang, ruby-position, ruby-span, size, speak, speak-header,
speak-numeral, speak-punctuation, speech-rate, stress, string-set,
tab-side, table-layout, target, target-name, target-new,
target-position, top, unicode-bibi, unicode-bidi, user-select,
vertical-align, visibility, voice-balance, voice-duration, voice-family,
voice-pitch, voice-pitch-range, voice-rate, voice-stress, voice-volume,
volume, white-space, white-space-collapse, widows, width, word-break,
word-spacing, word-wrap, writing-mode, z-index
</code>
</p>

".font_family.description.separate_properties_html",
font_code: tag.code("font")
) %>
<code>font-size: 1.1em; font-weight: bold; font-family: Cambria, Constantia, Palatino, Georgia, serif;</code></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think these should not be separate, but instead part of separate_properties_html, similar to what you did with font_code: tag.code("font").

t(".numeric_values.description.various_units"),
"https://w3schools.com/css/css_units.asp"
)
) %><br /><code>cm, em, ex, in, mm, pc, pt, px</code></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this list should be entirely in the locale file, since we need to be able to localise the comma, as it's a sentence, not CSS. And language like Chinese use a different comma character. Ideally this should be part of the precision_html string, if possible

<p><%= t(
".scale.description_html",
transform_code: tag.code("transform"),
scale_numeric_value_code: tag.code("scale(#{t('.scale.numeric_value')})")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm wondering whether it would be better to have the entire scale(numeric value) be in the locale file, not just numeric value. But I can't really come up with a reason for it other than this looking quite strange, which isn't enough of a reason to make you change it

<dd>
<p><%= t(
".css_basics.description.line_of_css_html",
example_css_code: tag.code("selector {property: value;}")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think all of selector {property: value;} should be in the locale file, since we also allow to translate them below in the text that references them, and they're not set names like the CSS property names

selector_bold: tag.strong(t(".css_basics.description.selector")),
body_tag_code: tag.code("body"),
h1_tag_code: tag.code("h1"),
property_bold: tag.strong("property"),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

property should be translatable

<dd>
<p><%= t(
".one_declaration_per_ruleset.description_html",
repeated_declarations_css_code: tag.code(tag.pre(%{
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is missing the <br>

@Bilka2 Bilka2 changed the title AO3-7210 Migrate skins-creating.html help file to help controller AO3-7210 I18n skins-creating.html help file Jan 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants