Šablona:FAQ: Porovnání verzí

Z Wiki JU
Ofara (diskuse | příspěvky)
založena nová stránka s textem „<includeonly> <!-- Jedna FAQ položka s tematyzací a možností permanentně rozbalit. Parametry (EN): que= (required) question text ans= (required) answer content (wiki markup allowed) permanentne= 1 → always expanded (no arrow) tema= default | uni (theming preset) -- Styling overrides (optional): bg, q_color, ramecek (1/0), barva_ramecku, radius, barva_sipky, ans_bg, ans_ramecek (1/0), ans_…“
 
Ofara (diskuse | příspěvky)
Bez shrnutí editace
 
(Nejsou zobrazeny 4 mezilehlé verze od stejného uživatele.)
Řádek 1: Řádek 1:
<includeonly>
<includeonly>{{#ifeq:{{{permanent|0}}}|1|<div class="faq-item"><div class="faq-qrow">{{{que|Question}}}</div><div class="faq-answer">{{{ans|}}}</div></div>|<details class="faq-item"><summary class="faq-qrow"><span>{{{que|Question}}}</span><span class="faq-arrow"><span class="arrow-down">▼</span><span class="arrow-up">▲</span></span></summary><div class="faq-answer">{{{ans|}}}</div></details>}}</includeonly><noinclude>== Použití ==
<!-- Jedna FAQ položka s tematyzací a možností permanentně rozbalit.
* Standard: <nowiki>{{FAQ|que=Otázka?|ans=Odpověď.}}</nowiki>
    Parametry (EN):
* Permanentně: <nowiki>{{FAQ|que=Otázka?|ans=Odpověď.|permanent=1}}</nowiki></noinclude>
      que= (required) question text
      ans= (required) answer content (wiki markup allowed)
      permanentne= 1 → always expanded (no arrow)
      tema= default | uni    (theming preset)
      -- Styling overrides (optional):
      bg, q_color, ramecek (1/0), barva_ramecku, radius, barva_sipky,
      ans_bg, ans_ramecek (1/0), ans_barva_ramecku, ans_radius, ans_inset
-->
 
<!-- 0) vstupy -->
{{#vardefine: tema | {{{tema|default}}} }}
{{#vardefine: permanentne | {{{permanentne|0}}} }}
{{#vardefine: que | {{{que|Question}}} }}
{{#vardefine: ans | {{{ans|}}} }}
 
<!-- 1) theme defaults -->
{{#vardefine: def_bg | {{#switch: {{#var:tema}}
  | uni = #E00034
  | #default = #ffffff
}} }}
{{#vardefine: def_q_color | {{#switch: {{#var:tema}}
  | uni = #ffffff
  | #default = #000000
}} }}
{{#vardefine: def_barva_sipky | {{#switch: {{#var:tema}}
  | uni = #ffffff
  | #default = #000000
}} }}
{{#vardefine: def_ramecek | {{#switch: {{#var:tema}}
  | uni = 0
  | #default = 1
}} }}
{{#vardefine: def_barva_ramecku | {{#switch: {{#var:tema}}
  | uni = #E00034
  | #default = #00000033
}} }}
 
<!-- odpověď (panel) – necháme neutrální, ale lze přepsat -->
{{#vardefine: def_ans_bg | #f5f5f5 }}
{{#vardefine: def_ans_ramecek | 1 }}
{{#vardefine: def_ans_barva_ramecku | #00000033 }}
{{#vardefine: def_radius | 10px }}
{{#vardefine: def_ans_radius | 0 0 10px 10px }}
{{#vardefine: def_ans_inset | 12px }}
 
<!-- 2) final values (user override > theme default) -->
{{#vardefine: bg | {{#if: {{{bg|}}} | {{{bg}}} | {{#var:def_bg}} }} }}
{{#vardefine: q_color | {{#if: {{{q_color|}}} | {{{q_color}}} | {{#var:def_q_color}} }} }}
{{#vardefine: barva_sipky | {{#if: {{{barva_sipky|}}} | {{{barva_sipky}}} | {{#var:def_barva_sipky}} }} }}
{{#vardefine: ramecek | {{#if: {{{ramecek|}}} | {{{ramecek}}} | {{#var:def_ramecek}} }} }}
{{#vardefine: barva_ramecku | {{#if: {{{barva_ramecku|}}} | {{{barva_ramecku}}} | {{#var:def_barva_ramecku}} }} }}
{{#vardefine: radius | {{{radius|{{#var:def_radius}}}}} }}
 
{{#vardefine: ans_bg | {{{ans_bg|{{#var:def_ans_bg}}}}} }}
{{#vardefine: ans_ramecek | {{{ans_ramecek|{{#var:def_ans_ramecek}}}}} }}
{{#vardefine: ans_barva_ramecku | {{{ans_barva_ramecku|{{#var:def_ans_barva_ramecku}}}}} }}
{{#vardefine: ans_radius | {{{ans_radius|{{#var:def_ans_radius}}}}} }}
{{#vardefine: ans_inset | {{{ans_inset|{{#var:def_ans_inset}}}}} }}
 
<!-- 3) derived styles -->
{{#vardefine: box-border | {{#ifeq: {{#var:ramecek}} | 1 | 1px solid {{#var:barva_ramecku}} | none}} }}
{{#vardefine: ans-border | {{#ifeq: {{#var:ans_ramecek}} | 1 | 1px solid {{#var:ans_barva_ramecku}} | none}} }}
 
<!-- 4) render -->
{{#ifeq: {{#var:permanentne}} | 1 |
  <!-- permanent (no arrow) -->
  <div class="faq-item faq-permanent"
      style="background:{{#var:bg}}; border:{{#var:box-border}}; border-radius:{{#var:radius}}; padding:0; margin:.5rem 0;">
    <div class="faq-qrow" role="heading"
        style="display:flex; align-items:center; gap:.5rem; padding:.75rem 1rem; font-weight:700; color:{{#var:q_color}};">
      <span class="faq-qtext" style="flex:1 1 auto;">{{#var:que}}</span>
    </div>
    <div class="faq-answer"
        style="margin:.25rem {{#var:ans_inset}} 1rem {{#var:ans_inset}}; padding:.75rem 1rem;
                background:{{#var:ans_bg}}; border:{{#var:ans-border}}; border-radius:{{#var:ans_radius}};">
      {{#var:ans}}
    </div>
  </div>
|
  <!-- collapsible details with arrow -->
  <details class="faq-item"
          style="background:{{#var:bg}}; border:{{#var:box-border}}; border-radius:{{#var:radius}}; padding:0; margin:.5rem 0;">
    <summary class="faq-qrow"
            style="display:flex; align-items:center; gap:.5rem; padding:.75rem 1rem; font-weight:700; color:{{#var:q_color}}; list-style:none; cursor:pointer;">
      <span class="faq-qtext" style="flex:1 1 auto;">{{#var:que}}</span>
      <span class="faq-arrow" style="margin-left:auto; color:{{#var:barva_sipky}};">
        <span class="arrow-down">▼</span><span class="arrow-up">▲</span>
      </span>
    </summary>
    <div class="faq-answer"
        style="margin:.25rem {{#var:ans_inset}} 1rem {{#var:ans_inset}}; padding:.75rem 1rem;
                background:{{#var:ans_bg}}; border:{{#var:ans-border}}; border-radius:{{#var:ans_radius}};">
      {{#var:ans}}
    </div>
  </details>
}}
</includeonly>
 
<noinclude>
== Template:FAQ ==
* EN parametry: que, ans, permanentne (0/1), tema (default|uni)
* Volitelné overrides: bg, q_color, ramecek, barva_ramecku, radius, barva_sipky, ans_bg, ans_ramecek, ans_barva_ramecku, ans_radius, ans_inset
 
Příklady:
<pre>
{{FAQ
| que = How do I change my password?
| ans = Go to [[Special:ChangePassword]] and follow the steps.
}}
 
{{FAQ
| que = Important notice
| ans = This procedure is mandatory for all users.
| permanentne = 1
}}
 
{{FAQ
| que = Upload limit
| ans = Contact IT to increase the limit; alternatively use external storage.
| tema = uni
}}
 
{{FAQ
| que = Custom styled item
| ans = You can override theme defaults per item.
| bg = #fff | q_color = #111 | ramecek = 1 | barva_ramecku = #00000022
| ans_bg = #f2f2f2 | ans_barva_ramecku = #00000022
| radius = 12px | ans_radius = 0 0 12px 12px | ans_inset = 16px
}}
</pre>
</noinclude>

Aktuální verze z 24. 9. 2025, 14:05

Použití

  • Standard: {{FAQ|que=Otázka?|ans=Odpověď.}}
  • Permanentně: {{FAQ|que=Otázka?|ans=Odpověď.|permanent=1}}