Technical References - [hideif]

[HideIf Comparison]Hide This HTML[/HideIf]

numero = 179
interpreted = N
texte = Hides HTML conditionally only if the comparison is true. To hide some HTML (or [xxx] tags) only if certain conditions are met, place the text inside a [hideif] container. The comparison, which may contain any [xxx] tags, is first evaluated to see if it is true, and if true then the contained text is hidden. If not true, then any text or [xxx] tags inside the container displays. See [showif].

hideif 'does the correct thing' when it hides its container: any contexts inside the [ hideif ] container (e.g. [append] or [replace] or [delete]) will NOT be executed if hideif evaluates to true.

Example (normally you would put the following text into a .dna file on your server and use a web browser to link to it):
[hideif [username]=Grant][Authenticate User Grant][/hideif]
Comparisons are always case-insensitive so "grant" equals "GRANT".
ComparisonExample
equal = [hideif [username]=SAGEHEN]You're not Mr. Sagehen![/hideif]
not equal
!
[hideif [random]!45]...[/hideif]
contains ^ [hideif [browsername]^Mozilla]...[/showif]
begins with ~ [hideif [ipaddress]~245.078.013]...[/hideif].
Notice the IP address has been typed with 3 digits in each portion of the address. This is very important for making these comparison work as expected.
less than < [hideif [random]<50]...[/hideif]
greater than > [hideif [lastrandom]>25]...[/hideif]
divisible by \ [hideif [index]\3]...[/hideif]

if both sides of the equation are numbers, then the comparison for greater than, less than, and equals is performed numerically. If either side is not a number, then the comparison is performed alphabetically.

make sure neither side of the comparison equation contains any of the special comparison letters listed above. For example, [hideif I'm Friendly! Are you?=[question]] contains an exclamation point inside the sentence being compared, so WebDNA sees this as "I'm Friendly" is not equal to " Are you?=[question]", which is not what the author meant to compare.
The solution is to wrap each side of the comparison with [URL] contexts, like this:
[hideif [URL]I'm Friendly! Are you?[/URL]=[URL][question][/URL]]. This causes any embedded ! = > < symbols to be converted to their URL equivalents, which can then be compared correctly.

Hides HTML conditionally only if the comparison is true.

To hide some HTML (or [xxx] tags) only if certain conditions are met, place the text inside a [hideif] container. The comparison, which may contain any [xxx] tags, is first evaluated to see if it is true, and if true then the contained text is hidden. If not true, then any text or [xxx] tags inside the container displays. See [showif].


hideif 'does the correct thing' when it hides its container: any contexts inside the [ hideif ] container (e.g. [append] or [replace] or [delete]) will NOT be executed if hideif evaluates to true.


Example (normally you would put the following text into a .dna file on your server and use a web browser to link to it):
[hideif [username]=Grant][Authenticate User Grant][/hideif]

Comparisons are always case-insensitive so "grant" equals "GRANT".

ComparisonExample
equal = [hideif [username]=SAGEHEN]You're not Mr. Sagehen![/hideif]
not equal
!
[hideif [random]!45]...[/hideif]
contains ^ [hideif [browsername]^Mozilla]...[/showif]
begins with ~ [hideif [ipaddress]~245.078.013]...[/hideif].

Notice the IP address has been typed with 3 digits in each portion of the address. This is very important for making these comparison work as expected.
less than < [hideif [random]<50]...[/hideif]
greater than > [hideif [lastrandom]>25]...[/hideif]
divisible by \ [hideif [index]\3]...[/hideif]


if both sides of the equation are numbers, then the comparison for greater than, less than, and equals is performed numerically. If either side is not a number, then the comparison is performed alphabetically.



make sure neither side of the comparison equation contains any of the special comparison letters listed above. For example, [hideif I'm Friendly! Are you?=[question]] contains an exclamation point inside the sentence being compared, so WebDNA sees this as "I'm Friendly" is not equal to " Are you?=[question]", which is not what the author meant to compare.


The solution is to wrap each side of the comparison with [url] contexts, like this:

[hideif [url]I'm Friendly! Are you?[/URL]=[url][question][/URL]]. This causes any embedded ! = > < symbols to be converted to their URL equivalents, which can then be compared correctly.


DOWNLOAD WEBDNA NOW!

Top Articles:

Tips and Tricks

A list of user-submitted tips ...

WebDNA reference

...

F.A.Q

A compilation of some user's questions...

WebDNA Modules

A list of the currently available modules...

Technical Change History

This Technical Change History provides a reverse chronological list of WebDNA changes...

Download WebDNA Applications

WebDNA applications...

Related Readings:

[addfields]

[addfields db=...

[JSONstore]

[JSONstore] stores a multidimentional JSON object into a WebDNA database...

[redirect]

...

[convertchars]

[url]...

[cart]

Putting [cart] in your template automatically creates a unique shopping cart...

[array]

Array Operation...