User:Johan G/Messagebox: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
(Finally getting to this)
(Some further)
Line 1: Line 1:
{| class="wikitable" <!-- Begin box -->  
{| class="wikitable" <!-- Begin box -->  
|
|
{{#switch: {{lc: {{{box|top}}} }} <!-- What type of box? -->
{{#switch: {{lc: {{{box|top}}} }} <!-- What type of box? -->
  | box =
  | box =
  box
  box
Line 8: Line 8:
  | top
  | top
  | #default =
  | #default =
  top
  {{#ifeq: {{{box|top}}} | top  <!-- Is there an unspecified or valid type of box specified? -->
  }};<!--
  |  <!-- Yes, the type of box is unspecified or a valid type of box is specified -->
-->{{#switch: {{lc: {{{style|notice}}} }} <!-- Which colours to use? -->
  top
  |  <!-- No, an invalid type of box is specified -->
  invalid box type
  }}
}};<!--
-->{{#switch: {{lc: {{{style|notice}}} }} <!-- Which colours to use? -->
  | immediate =
  | immediate =
  immediate
  immediate
Line 23: Line 28:
  | notice
  | notice
  | #default  =
  | #default  =
  notice
  {{#ifeq: {{{style|notice}}} | notice  <!-- Is there an unspecified or valid type of box specified? -->
  }};<!--
  |  <!-- Yes, the box style is unspecified or a valid box style is specified -->
-->{{#if: {{{image|}}} <!-- Is there an image? -->
  notice
  |
  |  <!-- No, an invalid box style is specified -->
  image
  invalid box style
  |
  }}
}};<!--
-->{{#if: {{{image|}}} <!-- Is there an image? -->
  | <!-- Yes, there is an image -->
{{#ifeq: {{IsNum| {{{image-width|1}}} }} | 1  <!-- Is there a valid or unspecified custom image width? -->
  |  <!-- Yes, there is a valid or unspecified custom image width -->
  {{#if: {{{image-width|}}}  <!-- Was there a custom image width specified? -->
  |  <!-- Yes, use the specified custom image width -->
  custom image width
  |  <!-- No custom image width specified, use standard widths -->
  {{#if: {{{oneliner|}}}  <!-- Oneliner or not? (For image size) -->
    |
    standard oneliner image width
    |
    standard multiliner image width
  }}
  }};<!--
-->{{#switch: {{{image|}}}  <!-- Is icon shortcuts used? -->
  | /!\ =
  /!\
  | (!) =
  (!)
  | (?) =
  (?)
  | (i) =
  (i)
  | (x) =
  (x)
  | U =
  U
  | #default =  <!-- Or is a custom image used?? -->
  {{#ifexist: File:{{{image|ai.png}}}  <!-- Does the specified custom image exist? -->  <!-- REMINDER: Remove File:ai.png link later on! -->
    | <!-- Yes, the specified image exist -->
    {{{image|image}}}
    | <!-- No the specified image does not exist -->
    non-existent image
  }}
  }}
  | <!-- No, an invalid custom image width was specified -->
  custom image width not a number
}}
|  <!-- No there is no image -->
  no image
  no image
}};<!--
}};<!--
-->{{#ifeq: {{lc: {{{oneliner|}}} }} | true | <!-- Oneliner or not? (For image size) -->
-->{{#if: {{{oneliner|}}}
  oneliner (image)
| <!-- Oneliner or not? (For text padding) -->
oneliner text padding
  | <!-- Not a oneliner -->
  | <!-- Not a oneliner -->
  not a oneliner (image)
  multiliner text padding
  }};<!--
}};<!--
-->{{#ifeq: {{lc: {{{oneliner|}}} }} | true | <!-- Oneliner or not? (For text padding) -->
  oneliner (text)
| <!-- Not a oneliner -->
  not a oneliner (text)
}};<!--
-->{{{title|title}}};<!--
-->{{{title|title}}};<!--
-->{{{text|text}}}
-->{{{text|text}}}
|}
|}<!-- End box
<!-- End box


--><!-- Snippet with automatic categorisation
--><!-- Snippet with automatic categorisation
Line 72: Line 113:
  <nowiki>|</nowiki> ''image''      =  
  <nowiki>|</nowiki> ''image''      =  
  <nowiki>|</nowiki> ''image-width'' =  
  <nowiki>|</nowiki> ''image-width'' =  
   
<!--
 
  Hiding these for a while
 
  <nowiki>|</nowiki> ''box-style''  =  
  <nowiki>|</nowiki> ''box-style''  =  
  <nowiki>|</nowiki> ''text-style''  =  
  <nowiki>|</nowiki> ''text-style''  =  
  <nowiki>|</nowiki> ''image-style'' =  
  <nowiki>|</nowiki> ''image-style'' = -->
   
   
  <nowiki>|</nowiki> ''page''        =  
  <nowiki>|</nowiki> ''page''        =  
Line 93: Line 137:
;style:  Style of the messagebox.  Valid values are '''immediate''', '''danger''', '''caution''', '''notice''', '''tip''' and '''protected'''. Defaults to '''notice'''.
;style:  Style of the messagebox.  Valid values are '''immediate''', '''danger''', '''caution''', '''notice''', '''tip''' and '''protected'''. Defaults to '''notice'''.


;one-liner:  Makes the messagebox a one-liner if '''one-liner=true'''.
;one-liner:  Makes the messagebox a one-liner if not empty.


;image:  Image or icon to use excluding the '''File:''' namespace prefix, for example '''Cleanup.png'''.  Instead of an image name a shortcut can be used.  When using the shortcuts the icons will automatically get the right colour for the style.  Valid icon shortcuts are: '''/!\''', '''(!)''', '''(?)''', '''(i)''', '''(x)''' and '''U''' (for padlock).
;image:  Image or icon to use excluding the '''File:''' namespace prefix, for example '''Cleanup.png'''.  Instead of an image name a shortcut can be used.  When using the shortcuts the icons will automatically get the right colour for the style.  Valid icon shortcuts are: '''/!\''', '''(!)''', '''(?)''', '''(i)''', '''(x)''' and '''U''' (for padlock).


;image-width:  Width of the image.  Defaults to 40 pixels or for one-liners 24 pixels.
;image-width:  Width of the image in pixels.  Defaults to 40 pixels or for one-liners 24 pixels.
<!--
 
Hiding these for a while


=== CSS Style parameters ===
=== CSS Style parameters ===
Line 106: Line 153:
;text-style:  CSS attributes applied to the text cell.
;text-style:  CSS attributes applied to the text cell.


;image-style:  CSS attributes applied to the image cell.
;image-style:  CSS attributes applied to the image cell. -->


=== Parameters for demonstration and testing ===
=== Parameters for demonstration and testing ===

Revision as of 18:04, 24 May 2014

top;notice;no image;multiliner text padding;title;text

The following template description is not displayed when the template is inserted in an article.

Goal

This template is a meta template for messagebox templates of various kinds.

Adding this template to a page in the template namespace will automatically add Category:Messagebox templates and the hidden Category:Templates using messagebox meta template to that page.

Usage

{{messagebox
| title       = 
| text        = 

| box         = 
| style       = 
| one-liner   = 
| image       = 
| image-width = 

| page        = 
| nocat       = 
}}

Main parameters

title
Optional alternative title for the messagebox that will be shown in bold, for example Danger, Warning, Caution, Cleanup, Note, Notice, Tip, Hint, Protected etc. Defaults to Notice.
text
Text to be shown in the messagebox.

Parameters affecting the appearance

Optional parameters affecting the appearance of the messagebox.

box
Will override the box format. Valid values are box, top and section. The defaults are box for the talk namespaces and the category namespace, and top for any other namespace.
style
Style of the messagebox. Valid values are immediate, danger, caution, notice, tip and protected. Defaults to notice.
one-liner
Makes the messagebox a one-liner if not empty.
image
Image or icon to use excluding the File: namespace prefix, for example Cleanup.png. Instead of an image name a shortcut can be used. When using the shortcuts the icons will automatically get the right colour for the style. Valid icon shortcuts are: /!\, (!), (?), (i), (x) and U (for padlock).
image-width
Width of the image in pixels. Defaults to 40 pixels or for one-liners 24 pixels.

Parameters for demonstration and testing

Optional parameters for demonstration and testing.

page
Wiki page. Use page = {{{page|}}} to forward this behaviour to a template.
nocat
If nocat=true pages are not categorized, if nocat=false pages are always categorized, and if nocat is empty or undefined only pages in the template namespace are categorised.
Do not forward this parameter to a template for category suppression, instead use the techniques discussed in Category suppression below.

Category suppression

In cases where a template using {{messagebox}} is automatically categorising pages it is highly recommended to use {{messagebox}} together with a namespace template to suppress categorisation if a template is used on other pages than the intended ones, like for example in lists of templates. Some common namespace templates are for example {{category handler}}, {{main other}}, {{talk other}} and {{category other}}.

Where one of the "other" templates are sufficient, a way to add a nocat parameter working in a similar way as in {{category handler}} to a template is to do as in the below example:

...{{#switch: {{nocat|}}
| true =                                                   <!-- Will not categorise a page -->
| false = [[Category:Some category]]                       <!-- Will always categorise a page -->
| #default = {{main other | [[Category:Same category]] }}  <!-- Will categorise a page only if it is in the main namespace, the article namespace. -->
}}...

Examples

Examples using different options.

Related templates