To create new wiki account, please join us on #znc at Libera.Chat and ask admins to create a wiki account for you. You can say thanks to spambots for this inconvenience.

ZNC Templating

From ZNC
Revision as of 11:53, 28 March 2012 by >Jakoch (initial draft for templating guide)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

ZNC Templating

These are my notes on templating for ZNC. I (jakoch) made them while creating the "znc-ation" skin. I had to figure the stuff out by reading the C source or asking around. Its a work in progress and others should/may contribute and enhance the pieces of information provided here. I hope it saves you some time, when doing templates for ZNC.

All template commands are placed in shorttags: <? ... ?>.

How to print a variable on template side?

<? VAR variablename ?>

Comparisons and Expressions

There are the following comparisons and expressions available:

IF AND (&&)

<? IF varA && varB ?> BOOLEAN AND <? ENDIF ?>

IF OR (||)

<? IF varA || varB ?> BOOLEAN OR <? ENDIF ?>

IF NOT (!)

Example usage on form input fields: <? IF !variablename ?> disabled="disabled" <? ENDIF ?>

More Expressions

!=

==

>=

<=

>

<

Template Commands

INC - Includes a file <? INC myfile.tmp ?>

SETOPTION

ADDROW

SET

JOIN

ESC - Escape

<? VAR VARIABLE ESC=ASCII ?>

SETBLOCK ENDSETBLOCK

EXPAND

LT - <?

GT - ?>

BREAK

CONTINUE

EXIT

DEBUG

LOOP ENDLOOP

REVERSE

SORT ASC DESC

REM - Comment inside Templates ENDREM

IF ELSE ENDIF

LOOP

Documentation of variables assigned to the template

Set by webmodules.cpp - CWebSock::SetVars()
Variable name Getter for the data Description
SessionUser GetUser() Prints username
SessionIP GetRemoteIP() Prints users IP
Tag CZNC::GetTag() Prints ZNC Version and Website Link
Version CZNC::GetVersion() Prints ZNC Version Number
SkinName GetSkinName() Prints name of the active theme
CSRF_Check GetCSRFCheck() ...
IsAdmin LoggedIn bool