Advanced

Change History

New api methods will be announced here. Changes in our data that is relevant to checkers scripts/tags will also be announced here.

Message: Re: Checker CSS and helper functions

Changed By: magma1447
Change Date: January 30, 2026 08:59AM

Re: Checker CSS and helper functions
[size=large][b]CSS Classes[/b][/size]

[size=medium][b]Table styles[/b][/size]
[list]
[*]table-bordered
[*]table-striped
[*]table-condensed
[/list]

[size=medium][b]Coloring[/b][/size]

[b]Background colors[/b]
[list]
[*]bg-primary
[*]bg-secondary
[*]bg-success
[*]bg-danger
[*]bg-warning
[*]bg-info
[*]bg-light
[*]bg-dark
[/list]

[b]Text colors[/b]
[list]
[*]text-primary
[*]text-secondary
[*]text-success
[*]text-danger
[*]text-warning
[*]text-info
[*]text-light
[*]text-dark
[/list]

[size=medium][b]Text formatting[/b][/size]
[list]
[*]align-left
[*]align-center
[*]align-right
[*]text-small
(87.5%)
[*]text-smaller (75.0%)
[*]text-monospace
[*]text-monospace-narrow
[/list]
Changed By: magma1447
Change Date: January 29, 2026 10:47PM

Re: Checker CSS and helper functions
[size=large][b]Code Example[/b][/size]

[code]
local args = {...}
local conf = args[1].config
local profileName = args[1].profileName
local profileId = args[1].profileId
local gccode = args[1].gccode -- gccode from the tag


ok = true;

local html = {}

table.insert(html, "<p>Geocache type icon</p>")
table.insert(html, PGC.Icon.GeocacheType('Traditional Cache'))

table.insert(html, "<p>Geocache size icon</p>")
table.insert(html, PGC.Icon.GeocacheSize('Large'))

table.insert(html, "<p>Found/owned</p>")
table.insert(html, PGC.Icon.GeocacheFound())
table.insert(html, PGC.Icon.GeocacheOwned())

table.insert(html, "<p>Misc</p>")
table.insert(html, PGC.Icon.Challenge())
table.insert(html, PGC.Icon.Check())
table.insert(html, PGC.Icon.Stop())
table.insert(html, PGC.Icon.Check(true))
table.insert(html, PGC.Icon.Stop(true))

table.insert(html, "<p>Flags</p>")
table.insert(html, PGC.Icon.CountryFlag('Sweden'))
table.insert(html, PGC.Icon.CountryFlag('United States'))
table.insert(html, PGC.Icon.CountryFlag('Ukraine'))

table.insert(html, "<p>Attributes</p>")
table.insert(html, PGC.Icon.Attribute(29))
table.insert(html, PGC.Icon.Attribute('Telephone nearby'))
table.insert(html, PGC.Icon.Attribute('Telephone nearby', 'yes'))
table.insert(html, PGC.Icon.Attribute('Telephone nearby', 'no'))


-- Showing CSS
table.insert(html, "<h3>Tables</h3>")

table.insert(html, "<h4>Basic table</h4>")
table.insert(html, "<table><tr><th>Header 1</th><th>Header 2</th><th>Header 3</th></tr><tr><td>Cell A1</td><td>Cell A2</td><td>Cell A3</td></tr><tr><td>Cell B1</td><td>Cell B2</td><td>Cell B3</td></tr></table>")

table.insert(html, "<h4>Bordered table</h4>")
table.insert(html, "<table class=\"table-bordered\"><tr><th>Header 1</th><th>Header 2</th><th>Header 3</th></tr><tr><td>Cell A1</td><td>Cell A2</td><td>Cell A3</td></tr><tr><td>Cell B1</td><td>Cell B2</td><td>Cell B3</td></tr></table>")

table.insert(html, "<h4>Striped rows</h4>")
table.insert(html, "<table class=\"table-striped\"><tbody><tr><th>Header 1</th><th>Header 2</th><th>Header 3</th></tr><tr><td>Row 1 Col 1</td><td>Row 1 Col 2</td><td>Row 1 Col 3</td></tr><tr><td>Row 2 Col 1</td><td>Row 2 Col 2</td><td>Row 2 Col 3</td></tr><tr><td>Row 3 Col 1</td><td>Row 3 Col 2</td><td>Row 3 Col 3</td></tr></tbody></table>")

table.insert(html, "<h4>Striped columns</h4>")
table.insert(html, "<table class=\"table-striped-columns\"><tr><th>Header 1</th><th>Header 2</th><th>Header 3</th><th>Header 4</th></tr><tr><td>Row 1 Col 1</td><td>Row 1 Col 2</td><td>Row 1 Col 3</td><td>Row 1 Col 4</td></tr><tr><td>Row 2 Col 1</td><td>Row 2 Col 2</td><td>Row 2 Col 3</td><td>Row 2 Col 4</td></tr></table>")

table.insert(html, "<h3>Colors</h3>")
table.insert(html, "<p><span class=\"bg-primary text-light\">Primary</span> <span class=\"bg-secondary text-light\">Secondary</span> <span class=\"bg-success text-light\">Success</span> <span class=\"bg-danger text-light\">Danger</span></p>")
table.insert(html, "<p><span class=\"bg-warning text-dark\">Warning</span> <span class=\"bg-info text-dark\">Info</span> <span class=\"bg-light text-dark\">Light</span> <span class=\"bg-dark text-light\">Dark</span></p>")

table.insert(html, "<h3>Text colors</h3>")
table.insert(html, "<p><span class=\"text-primary\">Primary text</span> <span class=\"text-success\">Success text</span> <span class=\"text-danger\">Danger text</span> <span class=\"text-warning\">Warning text</span></p>")

table.insert(html, "<h3>Text alignment</h3>")
table.insert(html, "<p class=\"align-left\">Left aligned text</p>")
table.insert(html, "<p class=\"align-center\">Center aligned text</p>")
table.insert(html, "<p class=\"align-right\">Right aligned text</p>")

table.insert(html, "<h3>Text utilities</h3>")
table.insert(html, "<p>Normal text and <span class=\"text-small\">smaller text</span></p>")
table.insert(html, "<p class=\"text-monospace\">This is monospace text for code examples</p>")
-- end CSS


html = table.concat(html, "\n")


return { ok = ok, log = log, html = html }
[/code]
[size=large][b]CSS Classes[/b][/size]

[size=medium][b]Table styles[/b][/size]
[list]
[*]table-bordered
[*]table-striped
[/list]

[size=medium][b]Coloring[/b][/size]

[b]Background colors[/b]
[list]
[*]bg-primary
[*]bg-secondary
[*]bg-success
[*]bg-danger
[*]bg-warning
[*]bg-info
[*]bg-light
[*]bg-dark
[/list]

[b]Text colors[/b]
[list]
[*]text-primary
[*]text-secondary
[*]text-success
[*]text-danger
[*]text-warning
[*]text-info
[*]text-light
[*]text-dark
[/list]

[size=medium][b]Text formatting[/b][/size]
[list]
[*]align-left
[*]align-center
[*]align-right
[*]text-small
[*]text-monospace
[/list]
Changed By: magma1447
Change Date: January 29, 2026 10:46PM

Re: Checker CSS and helper functions
[size=large][b]CSS Classes[/b][/size]

[size=medium][b]Table styles[/b][/size]
[list]
[*]table-bordered
[*]table-striped
[/list]

[size=medium][b]Coloring[/b][/size]

[b]Background colors[/b]
[list]
[*]bg-primary
[*]bg-secondary
[*]bg-success
[*]bg-danger
[*]bg-warning
[*]bg-info
[*]bg-light
[*]bg-dark
[/list]

[b]Text colors[/b]
[list]
[*]text-primary
[*]text-secondary
[*]text-success
[*]text-danger
[*]text-warning
[*]text-info
[*]text-light
[*]text-dark
[/list]

[size=medium][b]Text formatting[/b][/size]
[list]
[*]align-left
[*]align-center
[*]align-right
[*]text-small
[*]text-monospace
[/list]
[size=large][b]Code Example[/b][/size]

[code]
local args = {...}
local conf = args[1].config
local profileName = args[1].profileName
local profileId = args[1].profileId
local gccode = args[1].gccode -- gccode from the tag


ok = true;

local html = {}

table.insert(html, "<p>Geocache type icon</p>")
table.insert(html, PGC.Icon.GeocacheType('Traditional Cache'))

table.insert(html, "<p>Geocache size icon</p>")
table.insert(html, PGC.Icon.GeocacheSize('Large'))

table.insert(html, "<p>Found/owned</p>")
table.insert(html, PGC.Icon.GeocacheFound())
table.insert(html, PGC.Icon.GeocacheOwned())

table.insert(html, "<p>Misc</p>")
table.insert(html, PGC.Icon.Challenge())
table.insert(html, PGC.Icon.Check())
table.insert(html, PGC.Icon.Stop())
table.insert(html, PGC.Icon.Check(true))
table.insert(html, PGC.Icon.Stop(true))

table.insert(html, "<p>Flags</p>")
table.insert(html, PGC.Icon.CountryFlag('Sweden'))
table.insert(html, PGC.Icon.CountryFlag('United States'))
table.insert(html, PGC.Icon.CountryFlag('Ukraine'))

table.insert(html, "<p>Attributes</p>")
table.insert(html, PGC.Icon.Attribute(29))
table.insert(html, PGC.Icon.Attribute('Telephone nearby'))
table.insert(html, PGC.Icon.Attribute('Telephone nearby', 'yes'))
table.insert(html, PGC.Icon.Attribute('Telephone nearby', 'no'))


-- Showing CSS
table.insert(html, "<h3>Tables</h3>")

table.insert(html, "<h4>Basic table</h4>")
table.insert(html, "<table><tr><th>Header 1</th><th>Header 2</th><th>Header 3</th></tr><tr><td>Cell A1</td><td>Cell A2</td><td>Cell A3</td></tr><tr><td>Cell B1</td><td>Cell B2</td><td>Cell B3</td></tr></table>")

table.insert(html, "<h4>Bordered table</h4>")
table.insert(html, "<table class=\"table-bordered\"><tr><th>Header 1</th><th>Header 2</th><th>Header 3</th></tr><tr><td>Cell A1</td><td>Cell A2</td><td>Cell A3</td></tr><tr><td>Cell B1</td><td>Cell B2</td><td>Cell B3</td></tr></table>")

table.insert(html, "<h4>Striped rows</h4>")
table.insert(html, "<table class=\"table-striped\"><tbody><tr><th>Header 1</th><th>Header 2</th><th>Header 3</th></tr><tr><td>Row 1 Col 1</td><td>Row 1 Col 2</td><td>Row 1 Col 3</td></tr><tr><td>Row 2 Col 1</td><td>Row 2 Col 2</td><td>Row 2 Col 3</td></tr><tr><td>Row 3 Col 1</td><td>Row 3 Col 2</td><td>Row 3 Col 3</td></tr></tbody></table>")

table.insert(html, "<h4>Striped columns</h4>")
table.insert(html, "<table class=\"table-striped-columns\"><tr><th>Header 1</th><th>Header 2</th><th>Header 3</th><th>Header 4</th></tr><tr><td>Row 1 Col 1</td><td>Row 1 Col 2</td><td>Row 1 Col 3</td><td>Row 1 Col 4</td></tr><tr><td>Row 2 Col 1</td><td>Row 2 Col 2</td><td>Row 2 Col 3</td><td>Row 2 Col 4</td></tr></table>")

table.insert(html, "<h3>Colors</h3>")
table.insert(html, "<p><span class=\"bg-primary text-light\">Primary</span> <span class=\"bg-secondary text-light\">Secondary</span> <span class=\"bg-success text-light\">Success</span> <span class=\"bg-danger text-light\">Danger</span></p>")
table.insert(html, "<p><span class=\"bg-warning text-dark\">Warning</span> <span class=\"bg-info text-dark\">Info</span> <span class=\"bg-light text-dark\">Light</span> <span class=\"bg-dark text-light\">Dark</span></p>")

table.insert(html, "<h3>Text colors</h3>")
table.insert(html, "<p><span class=\"text-primary\">Primary text</span> <span class=\"text-success\">Success text</span> <span class=\"text-danger\">Danger text</span> <span class=\"text-warning\">Warning text</span></p>")

table.insert(html, "<h3>Text alignment</h3>")
table.insert(html, "<p class=\"align-left\">Left aligned text</p>")
table.insert(html, "<p class=\"align-center\">Center aligned text</p>")
table.insert(html, "<p class=\"align-right\">Right aligned text</p>")

table.insert(html, "<h3>Text utilities</h3>")
table.insert(html, "<p>Normal text and <span class=\"text-small\">smaller text</span></p>")
table.insert(html, "<p class=\"text-monospace\">This is monospace text for code examples</p>")
-- end CSS


html = table.concat(html, "\n")


return { ok = ok, log = log, html = html }
[/code]
Changed By: magma1447
Change Date: January 29, 2026 10:43PM

Re: Checker CSS and helper functions
[size=150large][b]CSS Classes[/b][/size]

[size=125medium][b]Table styles[/b][/size]
[list]
[[*]table-bordered
[*]table-striped
[/list]

[size=125medium][b]Coloring[/b][/size]

[b]Background colors[/b]
[list]
[[*]bg-primary
[*]bg-secondary
[*]bg-success
[*]bg-danger
[*]bg-warning
[*]bg-info
[*]bg-light
[*]bg-dark
[/list]

[b]Text colors[/b]
[list]
[[*]text-primary
[*]text-secondary
[*]text-success
[*]text-danger
[*]text-warning
[*]text-info
[*]text-light
[*]text-dark
[/list]

[size=125medium][b]Text formatting[/b][/size]
[list]
[[*]align-left
[*]align-center
[*]align-right
[*]text-small
[*]text-monospace
[/list]

Original Message

Author: magma1447
Date: January 29, 2026 10:34PM

Re: Checker CSS and helper functions
[size=150][b]CSS Classes[/b][/size]
[size=125][b]Table styles[/b][/size]
[list]
[]table-bordered
[]table-striped
[/list]
[size=125][b]Coloring[/b][/size]
[b]Background colors[/b]
[list]
[]bg-primary
[]bg-secondary
[]bg-success
[]bg-danger
[]bg-warning
[]bg-info
[]bg-light
[]bg-dark
[/list]
[b]Text colors[/b]
[list]
[]text-primary
[]text-secondary
[]text-success
[]text-danger
[]text-warning
[]text-info
[]text-light
[]text-dark
[/list]
[size=125][b]Text formatting[/b][/size]
[list]
[]align-left
[]align-center
[]align-right
[]text-small
[*]text-monospace
[/list]