OSDN Git Service

Merge branch 'skinnable-master' of ssh://shizuki@git.sourceforge.jp/gitroot/nucleus...
[nucleus-jp/nucleus-next.git] / nucleus / documentation / help.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4         <!-- $Id: help.html 1500 2011-03-01 19:32:53Z ftruscot $ -->
5
6         <title>Nucleus Admin Help</title>
7         <style type="text/css">
8         <!--
9                 body {
10                         font-family: verdana, arial;
11                         font-size: small;
12                 }
13
14                 h1 {
15                         font-size: large;
16                         border-bottom: 1px gray dashed;
17                         color: #596d9d;
18                         text-align: left;
19                 }
20
21                 h2 {
22                         font-size: medium;
23                         border: 1px solid #ddd;
24                         background-color: whitesmoke;
25                         text-align: left;
26                 }
27
28                 .page {
29                         height: 2400px;
30                         text-align: justify;
31                         margin-bottom: 100px;
32                 }
33
34                 pre {
35                         background-color: #ddd;
36                         padding: 5px;
37                         font-size: small;
38                 }
39
40                 .example {
41                         background-color: #ddd;
42                         padding: 5px;
43                 }
44
45                 ul.templates {
46                         font-size: x-small;
47                         line-height: 1.1;
48                         list-style: none;
49                         text-indent: -20px;
50                         margin-left: 20px;
51                 }
52
53                 ul {
54                         text-align: left;
55                 }
56
57                 a:link, a:visited {
58                         color: #1D3565;
59                         font-weight: bold;
60                         text-decoration: underline;
61                 }
62
63                 a:hover {
64                         background-color: whitesmoke;
65                 }
66
67                 .deprecated {
68                         border: 3px solid red;
69                         padding: 5px;
70                         font-size: medium;
71                 }
72
73                 tt, code {
74                         font-size: small;
75                 }
76
77                 table {
78                         border: 1px solid #ccc;
79                 }
80
81                 th {
82                         background-color: #eee;
83                 }
84
85                 td {
86                         vertical-align: top;
87                 }
88
89                 .note {
90                         background-color: #eee;
91                         padding: 5px;
92                 }
93         -->
94         </style>
95 </head>
96 <body>
97
98 <div class="page">
99 <h1>Nucleus Popup Help</h1>
100 <p>Please hold on while the page is being downloaded (about 100KB).</p>
101 </div>
102
103
104 <div class="page">
105 <a name="future"></a>
106 <a name="allowpastposting"></a>
107 <h1>Add Later/Earlier</h1>
108 <h2>Add Later</h2>
109 <p>The 'Add Later' option on add-item forms allows you to mark an item to become visible only at the exact time you've specified. Before that time has come, the item will not be viewable anywhere in the public part of your site.</p>
110 <p>This date <strong>must</strong> be in the future, unless the 'Allow posting to the past' option is enabled for the blog to which you want to add the item.</p>
111 <h2>Allow posting to the past</h2>
112 <p>When enabled, you'll be allowed to specify the date on which an item should be added, and to edit the timestamp of already existing items.</p>
113 </div>
114
115 <div class="page"><a name="changedate"></a>
116 <h1>Change post date/time</h1>
117 <p>
118 The 'Update Timestamp' option allows you to change the posting date and/or time of an item. If you changed the content of an item, this is a way bring the story back to the top of your front page.</p>
119 <p>But, the unique id connected to the item will not change, so your visitors can still find out that the item was originally posted later than items with a lower id.</p>
120 </div>
121
122
123 <div class="page"><a name="autosave"></a>
124 <h1>Autosave</h1>
125 <p>The Autosave function saves an item as a <a href="#draft">draft</a> after 10 minutes editing. It should avoid that unsaved changes get lost. It is usefull for users that work for a long time on an item and often forget to save their work.</p>
126 <p>If you want to invoke Autosave before the 10 minutes are past, you can press the '<strong>Auto save now</strong>' button at the end of the form.</p>
127 <p>The Autosave function can be enabled and disabled in the member options.</p>
128 </div>
129
130
131 <div class="page"><a name="draft"></a>
132 <h1>Drafts</h1>
133 <p>
134 Draft items are not yet viewable in the public blog. They might come in handy when you are working on a story, and something comes in between. Your draft items will be listed on the main page, so you can continue your work when you have the time to do so.</p>
135 <p>When editing drafts, choose the '<strong>Add now</strong>' radiobutton and hit the 'Edit item' button to make them visible.
136 </p>
137 </div>
138
139 <div class="page"><a name="extended"></a>
140 <h1>Extended part</h1>
141 <p>
142 Items have an optional extended part that you can use for continued stories. e.g. when a story is too long to put on the main page of your blog, you can write an introduction in the body part and the rest in the extended part. When viewing your main blog page, you will then see 'read more' links (as defined by the templates).
143 </p>
144 <p>
145 If you want to write an introduction only for <em>some</em> of your items, you could use the <a href="#templatevar-smartbody">smartbody</a> template variable to make a selection out of the body text and the extended text.
146 </p>
147 </div>
148
149 <div class="page"><a name="shortblogname"></a>
150 <h1>Short Blog Name</h1>
151 <p>
152 The short blog name is used mainly in the admin area to indicate which items are associated with which blog.
153 </p>
154 <p>
155 It can also be used in alternative index files, to make a second weblog available:
156 </p>
157 <pre>
158 &lt;?
159         include('./config.php');
160         selectBlog('myshortblogname');
161         selector();
162 ?&gt;
163 </pre>
164 </div>
165
166 <div class="page"><a name="blogdefaultskin"></a>
167 <h1>Default Skin</h1>
168 <p>
169 The default skin selected in the blog settings is the skin that should be used when the blog is displayed, and there is no other skin selected (through arguments in the URL)
170 </p>
171 </div>
172
173
174 <div class="page"><a name="blognotify"></a>
175 <h1>Notify Address</h1>
176 <p>
177 This option contains one or multiple e-mail addresses to which notification e-mails should be sent when new comments are added. Leave empty if you don't want notification. The given e-mail addresses must, of course, be valid.
178 </p>
179 <p>
180 If you're using multiple addresses, you should use a semicolon (<strong>;</strong>) as a separator.
181 </p>
182 <div class="note">
183 <b>Note:</b> As the maximum length of the settings fields is 128 characters, there's only a limited amount of e-mail addresses you can list.
184 </div>
185 <div class="note">
186 <b>Note:</b> When you set up your own e-mail address as notification address, you won't get notified of the items/comments that you wrote yourself. Assuming that you know what you wrote, that shouldn't be a problem.
187 </div>
188 </div>
189
190 <div class="page"><a name="blogmaxcomments"></a>
191 <h1>Max Amount of Comments</h1>
192 <p>
193 This is the maximum number of comments that will be shown on the <em>main page</em>. <strong>This is NOT a restriction on the total number of comments that can be made</strong>. On the detail pages, all comments will be shown, even if there are more than the maximum amount chosen.
194 </p>
195 <p class="note"><strong>Note:</strong>
196 Inside templates, this variable can be overridden by an optional parameter of the <a href="#templatevar-comments">comments</a> templatevar.
197 </p>
198 </div>
199
200 <div class="page"><a name="blogtimeoffset"></a>
201 <h1>Time Offset</h1>
202 <p>
203 If the time on your server is not equal to the time where you live, you might want to add an offset to the server time in order to get the correct time. Use negative values to subtract (negation sign). The current server time is listed as a reference.
204 </p>
205 <h2>Example</h2>
206 <p>If your local time is 20:35 and the server time is listed as 14:35, you'll need to set the time offset equal to 6 in order to get your blog time to 20:35
207 </p>
208 <p class="note"><strong>Note:</strong> Fractional offsets can be used as well, for people living in half time zones. e.g. an offset of <strong>1.5</strong> equals an offset of 1 hour and 30 minutes.</p>
209 </div>
210
211 <div class="page"><a name="blogupdatefile"></a>
212 <h1>Update File</h1>
213 <p>
214 Nucleus can edit a file for you whenever a new item is added to the blog. The contents of that file will be a timestamp of the last change. The use of such a file could be useful for services which check a file on your server once in a while to see if there were updates, and generate 'updated weblogs' from that. Pointing them to your main blog could cause false update warnings to be sent out when visitors add comments or when you change something to the skins or templates.
215 </p>
216 <p>
217 When you don't need an update file, just leave the field empty.
218 </p>
219 <p>
220 Please note that the location of the update file is relative to the admin-area, so you might want to use an absolute path (something like <tt>/path/to/your/website/update.txt</tt>). Also make sure the update file already exists and is writable (<a href="tips.html#filepermissions" onclick="window.open(this.href);return false;" class="out" title="quick guide on changing file permissions">chmod it to 666</a> if you want to be sure).
221 </p>
222 </div>
223
224 <div class="page"><a name="teamadmin"></a>
225 <h1>Blog Admin</h1>
226 <p>
227 Blog administrators have the following extra rights:
228 </p>
229
230 <ul>
231         <li>They can manage the team</li>
232         <li>They can edit blog settings</li>
233         <li>They can edit/delete all items by all authors (from the blog of which they are admin)</li>
234         <li>They can delete the blog</li>
235 </ul>
236
237 <p>
238 A blog can have multiple admins, but there must be at least one admin at all times.
239 </p>
240 </div>
241
242
243 <div class="page"><a name="superadmin"></a>
244 <h1>Administrator Privileges</h1>
245
246 <p>
247 A so called <em>super-admin</em> has <strong>full access</strong> to all functions and all weblogs, even if she is not on the blog team.
248 </p>
249
250 <p>
251 On top of that: a super-admin has the right to create new weblogs, to change general settings, to change templates, to change skins and to manage the members (creation/ manipulation/ deletion of members).
252 </p>
253
254 <p>
255 Usually, there will be only one super-admin, the site administrator.
256 </p>
257
258 </div>
259
260 <div class="page"><a name="canlogin"></a>
261 <h1>Can Login?</h1>
262 <p>
263 As a <a href="#superadmin" title="Administrator Privileges">superadmin</a>, you can disallow individual members to login to the admin area.
264 </p>
265 </div>
266
267 <div class="page"><a name="defaultblog"></a>
268 <h1>Default Blog</h1>
269 <p>
270 This is the blog that will be used when no other blog has been specified in the request.
271 </p>
272 </div>
273
274 <div class="page"><a name="baseskin"></a>
275 <h1>Base Skin</h1>
276
277 <p>The option tells Nucleus which skin to fall back to when no such decision can be automatically made. This happens when skin parts are empty, when no blog or skin is implicitly/explicitly selected.</p>
278 <p>Most users don't need to worry about this setting.</p>
279 </div>
280
281 <div class="page"><a name="cookies"></a>
282 <h1>Cookies</h1>
283
284 <h2>Cookie Lifetime</h2>
285 <p>
286 When a member logs in, a cookie is stored in his browser, so she doesn't need to log in again when she comes back the next day. The lifetime of this cookie decided when it will become invalid:</p>
287 <ul>
288         <li><strong>Session cookies</strong> get deleted when you exit the browser</li>
289         <li>Cookies with a lifetime of <strong>one month</strong> will stay on the computer until you don't use/visit the site for a month. Using this option, you'll never have to login again (unless you've logged out yourself, or logged in from another computer)</li>
290 </ul>
291
292 <h2>Cookie Path &amp; Cookie Domain</h2>
293 <p>
294 These settings are advanced settings. Normally, you shouldn't change them at all. In that case, cookie path is a simple slash ('/') and cookie domain is empty.
295 </p>
296
297 <h2>Secure Cookies</h2>
298 <p>
299 Normally, this should be set to 'no'. You should only set it to 'yes' when you have a HTTPS url and want cookies only to be sent over such a https connection.
300 </p>
301
302 <h2>'Last Visit' Cookie</h2>
303 <p>
304 You can setup Nucleus to store a cookie in which the time of the visitors last visit is stored. This can be used to put indications next to <a href="#templatenew">new items</a>
305 </p>
306
307 </div>
308
309
310 <div class="page"><a name="locale"></a>
311 <h1>Locale</h1>
312 <p>
313 You can choose a locale to be used when nucleus creates content for you. The content generated by Nucleus includes the admin-area, the error messages, forms in skins, ...
314 </p>
315
316 <p>
317 There are two places where a translation can be chosen: the global site settings include a locale option.
318 Next to that, logged in members can override this setting if they want to.
319 </p>
320
321 <p>
322 When both of these settings are invalid, 'en_Latn_US' is used as the default locale.
323 </p>
324
325 <p class="note"><strong>Note:</strong> Extra translation files can be downloaded from the <a href="http://www.nucleuscms.org/" onclick="window.open(this.href);return false;" class="out" title="Nucleus CMS Website">Nucleus Website</a>. (opens a new window)</p>
326
327 </div>
328
329 <div class="page"><a name="allowaccountcreation"></a>
330 <h1>Account Creation</h1>
331 <p>
332 You can either allow or disallow your visitors to create their own 'member' account. They won't be allowed to add items to a blog (unless the admin adds them to a team), but they can login to the administration area and change their settings, and even delete or modify the comments they made.
333 </p>
334 </div>
335
336 <div class="page"><a name="allownewmemberlogin"></a>
337 <h1>New Member: can login ?</h1>
338 <p>
339 When you allow <a href="#allowaccountcreation">creation of member accounts</a> by your visitors, this setting defines whether or not accounts created in that way will have the ability to <a href="#canlogin">login to the administration area</a>.
340 </p>
341 </div>
342
343
344 <div class="page"><a name="messageservice"></a>
345 <h1>Message Service</h1>
346
347 <p>
348 For the privacy of your members, you can hide all e-mail addresses and allow members to send an e-mail message to each other through the script. The message that will be sent out will however contain the e-mail addresses of both users, so they can then do continued communication through regular e-mail. This service can be disabled.
349 </p>
350
351 <h2>Non-members</h2>
352 <p>
353 By default, non members cannot use the message service (because there's no way to check the validity of the e-mail address they enter). You can relax this restriction by allowing non-members to use the message service too. When submitting a message, they will be asked to enter their e-mail address, which will show up in the <tt>From:</tt> headers of the e-mail you receive.
354 </p>
355
356 </div>
357
358 <div class="page"><a name="disablesite"></a>
359 <h1>Disable Site</h1>
360 <p>
361 It's possible to disable your entire Nucleus site. You might want to do this when you are doing some configuration, or when something went horribly wrong :-)
362 </p>
363 <p>
364 The URL that needs to be configured is an URL to which the visitor will be redirected.
365 </p>
366 <p>
367 Exceptions: the <strong>admin-area</strong> is still available, and <strong><a href="#superadmin">super-admins</a></strong> can still see the entire site. (don't forget to re-enable your site afterwards ;-))
368 </p>
369 </div>
370
371
372 <div class="page"><a name="urlmode"></a>
373 <h1>URL Mode</h1>
374 <p>Using this option, you can switch between URL styles:</p>
375 <ul>
376         <li><strong>Normal</strong>: URLs looking like <code>http://host/index.php?itemid=1234</code></li>
377         <li><strong>Fancy</strong>: URLs looking like <code>http://host/item/1234</code></li>
378 </ul>
379 <p class="note"><strong>Note:</strong> In order to get the 'Fancy URL' mode working, some extra actions are required. They're described in the <a href="tips.html" class="out" onclick="window.open(this.href);return false;">Tips &amp; Suggestions</a> (opens in new window)</p>
380
381 </div>
382
383 <div class="page"><a name="defaultlistsize"></a>
384 <h1>Default List Size</h1>
385 <p>(3.40) Using this option, you can set the default size of lists in the Admin Area. Value should be an integer. 10 is a good default for most users.</p>
386 </div>
387
388 <div class="page"><a name="debugvars"></a>
389 <h1>Debug Vars</h1>
390 <p>(3.40) Using this option, you can set whether unresolved Vars (SkinVars, TemplateVars, ItemVars) are shown on the blog. Default is <code>No</code>.</p>
391 </div>
392
393 <div class="page"><a name="templateitems"></a>
394 <h1>Templates: Items</h1>
395 <p>
396 When items are shown, the following setup is repeated for each item:
397 </p>
398
399 <pre>
400 item header
401 item body
402 item footer
403 </pre>
404
405 <p>These three blocks all refer to a template-part, which define what the result looks like.</p>
406
407 <h2>Variables</h2>
408
409 <p>Within these template, a series of so called <a href="#templatevars-overview" title="Find out which variables are available">template variables can be used</a> to insert item data.</p>
410
411 <h2>Example</h2>
412 <p><a href="#templateitemsexample">An example</a></p>
413
414 </div>
415
416 <div class="page"><a name="templateitemsexample"></a>
417 <h1>Templates: Items</h1>
418 <p>
419 An example for the <b>item body</b> template:
420 </p>
421
422 <pre>&lt;h1&gt;&lt;%title%&gt;&lt;/h1&gt;
423
424 &lt;p&gt;&lt;%body%&gt;&lt;/p&gt;
425
426 &lt;div class="metadata"&gt;
427  &lt;a href="&lt;%itemlink%&gt;"&gt;link&lt;/a&gt; -
428  &lt;%date%&gt; &lt;%time%&gt; -
429  &lt;a href="&lt;%authorlink%&gt;"&gt;&lt;%author%&gt;&lt;/a&gt; -
430  &lt;%comments%&gt;
431 &lt;/div&gt;</pre>
432
433 <p>The result would become something like this:</p>
434
435 <div class="example">
436 <h4 style="margin: 2px;">This is an item</h4>
437 <p style="margin: 2px; padding: 0px;">This is the text for the item</p>
438 <div style="font-style: italic; margin: 2px;">
439  <a href="#templateitemsexample">link</a> -
440  August 8th 2002 18:51 -
441  <a href="#templateitemsexample">karma</a> -
442  <a href="#templateitemsexample">no comments</a>
443 </div>
444 </div>
445
446 </div>
447
448
449 <div class="page"><a name="templatecomments"></a>
450 <h1>Templates: comments</h1>
451
452 <p>There are three possible structures for a comments block.</p>
453
454 <ol>
455         <li>
456                 When comments are displayed (like on detail pages, or on the main page when there are less than the maximum allowed amount of comments)
457 <pre>comments header
458   comments body (repeated)
459 comments footer</pre>
460         </li>
461         <li>
462                 When there are no comments at all
463 <pre>
464 no comments
465 </pre>
466         </li>
467         <li>
468                 When there are comments, but there are more than the maximum allowed number. (only applies when not on a detailed item page)
469 <pre>
470 too much comments
471 </pre>
472         </li>
473 </ol>
474
475 <p>Inside these template-parts, some <a href="#templatevars-comments" title="Overview of comments-related template variables">comments-related variables</a> are available</p>
476
477 </div>
478
479 <div class="page">
480 <a name="templatecommentheaders"></a>
481 <a name="templatecommentfooters"></a>
482 <h1>Templates: Comment headers/footers</h1>
483
484 <h2>Description</h2>
485
486 <p>While the comments-body is repeated for each comment, the header and footer are only displayed once. A typicall structure would look like this:</p>
487 <pre>comments header
488   comments body 1
489   comments body 2
490   comments body 3
491 comments footer</pre>
492 <p>In these template-parts, <a href="#templatevars-comments" title="Overview of comments-related template variables">comments-related templatevars</a> are available</p>
493
494 <h2>Examples</h2>
495
496 <p>Header:</p>
497 <pre>&lt;ul&gt;</pre>
498 <p>Body:</p>
499 <pre>&lt;li&gt;&lt;%user%&gt;: &lt;%body%&gt;&lt;/li&gt;</pre>
500 <p>Footer</p>
501 <pre>&lt;/ul&gt;</pre>
502 <p>Result</p>
503
504 <ul class="example">
505         <li>karma: nice!</li>
506         <li>xiffy: yes indeed!</li>
507 </ul>
508
509 </div>
510
511 <div class="page"><a name="templatemorelink"></a>
512 <h1>Templates: Link to extended entry</h1>
513 <p>
514 This is the template that will be used to format the <a href="#templatevar-morelink">morelink templatevar</a> that is available in the item templates. <a href="#templatevars-overview">Available variables</a> are the same as in the item templates.
515 </p>
516 <p>
517 When there's no extended part of the item, the <code>&lt;%morelink%&gt;</code> templatevar will have no effect.
518 </p>
519
520 <h2>Example</h2>
521 <pre><code>&lt;a href="&lt;%itemlink%&gt;"&gt;[Read More!]&lt;/a&gt;</code></pre>
522
523 </div>
524
525 <div class="page"><a name="templatearchivelists"></a>
526
527 <h1>Templates: Archive Lists</h1>
528
529 <p>The archive lists are formatted as listed below:</p>
530
531 <pre>archivelist header
532   archivelist listitem (repeated for each archive)
533 archivelist footer</pre>
534
535 <p>
536 Available variables: (in the header and footer, only <tt>blogid</tt> is allowed)
537 </p>
538
539 <table><tr>
540         <th>Name</th>
541         <th>Description</th>
542 </tr><tr>
543         <td>blogid</td>
544         <td>ID of the weblog</td>
545 </tr><tr>
546         <td>archivelink</td>
547         <td>link to the archive, which you can embed in a <code>&lt;a href=".."&gt;</code> tag.</td>
548 </tr><tr>
549         <td>month</td>
550         <td>Number of the month (2 digits: 01-12)</td>
551 </tr><tr>
552         <td>year</td>
553         <td>Year (4 digits)</td>
554 </tr><tr>
555         <td>day</td>
556         <td>Day of month (2 digits; only when in day mode)</td>
557 </tr></table>
558
559 <p>A more flexible way to add the date of the archive to the listitem, is to use <a href="#strftime">strftime</a> variables. If you find this too complicated, use the following:</p>
560
561 <pre><code>&lt;a href="&lt;%archivelink%&gt;"&gt;%B, %Y&lt;/a&gt;&lt;br /&gt;</code></pre>
562
563
564 <p>To change the locale to your local settings, change the <a href="#templatelocale">locale</a>.</p>
565
566 </div>
567
568
569
570
571 <div class="page"><a name="templatecategorylists"></a>
572 <h1>Templates: Category Lists</h1>
573
574 <p>The category lists are formatted as listed below:</p>
575
576 <pre>categorylist header
577   categorylist listitem (repeated)
578 categorylist footer</pre>
579
580 <p>Available variables: (in the header and footer, only <tt>blogid</tt>, <tt>blogurl</tt>, <tt>self</tt>, <tt>catiscurrent</tt>, and <tt>currentcat</tt> are allowed)</p>
581
582 <table><tr>
583         <th>Name</th>
584         <th>Description</th>
585 </tr><tr>
586         <td>blogid</td>
587         <td>ID of the weblog</td>
588 </tr><tr>
589         <td>blogurl</td>
590         <td>URL of the blog (as defined in blogsettings)</td>
591 </tr><tr>
592         <td>self</td>
593         <td>Current page, without parameters (e.g. <tt>index.php</tt>)</td>
594 </tr><tr>
595         <td>catlink</td>
596         <td>a link to the most recent items for a category, which you can embed in a &lt;a href=".."&gt; tag.</td>
597 </tr><tr>
598         <td>catid</td>
599         <td>Category ID</td>
600 </tr><tr>
601         <td>catname</td>
602         <td>Category name</td>
603 </tr><tr>
604         <td>catdesc</td>
605         <td>Category description</td>
606 </tr><tr>
607         <td>catiscurrent</td>
608         <td>yes if category is currently selected, no if it is not. Useful to style current category.</td>
609 </tr><tr>
610         <td>currentcat</td>
611         <td>Synonym of catiscurrent</td>
612 </tr></table>
613
614 <p><a href="#categorylistexample">View an example</a></p>
615
616 </div>
617
618 <div class="page"><a name="categorylistexample"></a>
619 <h1>Templates: Category Lists Example</h1>
620 <p>
621 <a href="#templatecategorylists">(go back)</a>
622 </p>
623
624 <h2>Header</h2>
625 <pre><code>&lt;ul&gt;
626   &lt;li&gt;&lt;a href="&lt;blogurl%&gt;"&gt;All&lt;/a&gt;&lt;/li&gt;</code></pre>
627
628 <h2>List Item</h2>
629 <pre><code>&lt;li&gt;&lt;a href="&lt;%catlink%&gt;"&gt;&lt;%catname%&gt;&lt;/a&gt;&lt;/li&gt;</code></pre>
630
631 <h2>Footer</h2>
632 <pre><code>&lt;/ul&gt;</code></pre>
633
634 <h2>Results in:</h2>
635
636 <ul class="example">
637         <li><a href="#categorylistexample">All</a></li>
638         <li><a href="#categorylistexample">myCategory</a></li>
639         <li><a href="#categorylistexample">yourCategory</a></li>
640 </ul>
641
642 </div>
643
644 <div class="page"><a name="templatebloglists"></a>
645 <h1>Templates: Blog Lists</h1>
646
647 <p>The blog lists are formatted as listed below:</p>
648
649 <pre>bloglist header
650   bloglist listitem (repeated)
651 bloglist footer</pre>
652
653 <p>Available variables in list item field: </p>
654
655 <table><tr>
656         <th>Name</th>
657         <th>Description</th>
658 </tr><tr>
659         <td>bloglink</td>
660         <td>URL of the blog (as generated by Link::create_blogid_link() function)</td>
661 </tr><tr>
662         <td>blogurl</td>
663         <td>URL of the blog (as defined in blogsettings)</td>
664 </tr><tr>
665         <td>blogdesc</td>
666         <td>Description of the blog</td>
667 </tr><tr>
668         <td>blogname</td>
669         <td>Name of the blog (either full or short, depending on skinvar parameter).</td>
670 </tr></table>
671
672 <p>Available variables in header and footer fields: </p>
673
674 <table><tr>
675         <th>Name</th>
676         <th>Description</th>
677 </tr><tr>
678         <td>siteurl</td>
679         <td>URL of the site (as defined in global settings)</td>
680 </tr><tr>
681         <td>sitename</td>
682         <td>Name of the site (as defined in global settings).</td>
683 </tr></table>
684
685 <p><a href="#bloglistexample">View an example</a></p>
686
687 </div>
688
689 <div class="page"><a name="bloglistexample"></a>
690 <h1>Templates: Blog Lists Example</h1>
691 <p>
692 <a href="#templatebloglists">(go back)</a>
693 </p>
694
695 <h2>Header</h2>
696 <pre><code>&lt;ul&gt;
697   &lt;li&gt;&lt;a href="&lt;siteurl%&gt;"&gt;&lt;sitename%&gt;&lt;/a&gt;&lt;/li&gt;</code></pre>
698
699 <h2>List Item</h2>
700 <pre><code>&lt;li&gt;&lt;a href="&lt;%bloglink%&gt;"&gt;&lt;%blogname%&gt;&lt;/a&gt;&lt;/li&gt;</code></pre>
701
702 <h2>Footer</h2>
703 <pre><code>&lt;/ul&gt;</code></pre>
704
705 <h2>Results in:</h2>
706
707 <ul class="example">
708         <li><a href="#bloglistexample">My Site</a></li>
709         <li><a href="#bloglistexample">mainblog</a></li>
710         <li><a href="#bloglistexample">newsblog</a></li>
711 </ul>
712
713 </div>
714
715
716
717
718
719
720
721 <div class="page"><a name="templatelocale"></a>
722 <h1>Templates: Locale</h1>
723 <p>
724 This is actually not a template-part, it's a setting. Setting it allows the date and time preferences when to be localized. Names of months and days will be in the desired locale, etc.
725 </p>
726
727 <p>
728 The possible values depend according to which machine Nucleus is running on. Some possible values are
729 </p>
730
731 <ul>
732         <li><strong>en</strong>: English</li>
733         <li><strong>dutch</strong>: Dutch</li>
734         <li>...</li>
735 </ul>
736
737 <p>
738 More info in the <a href="http://www.opengroup.org/onlinepubs/7908799/xsh/strftime.html" onclick="window.open(this.href);return false;" class="out" title="Open Group specification">Open Group Specification</a> for strftime. (opens a new window)
739 </p>
740
741 <p>
742 The locale is used for the <a href="#templatedatetime">date and time format</a>, for the <a href="#templatedateheads">dateheaders</a>, and for the <a href="#templatearchivelists">archivelist items</a>
743 </p>
744
745 </div>
746
747 <div class="page"><a name="templatedatetime"></a>
748 <h1>Templates: Date and Time formats</h1>
749 <p>
750 These are used to format dates and times into the <code>&lt;%date%&gt;</code> and <code>&lt;%time%&gt;</code> vars (see <a href="#templatevars-overview">template vars</a>). The formatting is done according to the <a href="#templatelocale">locale</a>
751 </p>
752
753 <p>
754 <a href="#strftime">More info on the available vars</a>. If want to get started quickly, use "%x" to format the date and "%X" to format the time.
755 </p>
756
757 </div>
758
759 <div class="page"><a name="templatedateheads"></a>
760 <h1>Template: Date headers/footers</h1>
761
762 <p>
763 The date header and date footer can contain date and time vars. <a href="#strftime">More info on the available vars</a>. If you want to get started quickly, use "%x" to format the date. The locale which is used to format the date, is determined by the <a href="#templatelocale">locale-setting</a> in the template.</p>
764
765 <p>
766 In the date header, the template variable &lt;%%daylink%%&gt; is allowed to insert a link to the archive for that day. <strong>Note the double '%'! It's necessary to avoid %d to be expanded as the current day of the month.</strong> Also, if you just want to add a '%' character somewhere, you should also put it twice ('%%') or it will be gone on your website.
767 </p>
768
769 <p>
770 Sample for date header:
771 </p>
772
773 <pre>
774 &lt;div class="day"&gt;
775 &lt;h1&gt;%d %B&lt;/h1&gt;
776 </pre>
777
778 <p>
779 Sample for date footer:
780 </p>
781
782 <pre>
783 &lt;/div&gt;
784 </pre>
785
786 <p>And another example for the date head using daylink</p>
787
788 <pre>
789 &lt;div class="day"&gt;
790 &lt;h1&gt;%d %B&lt;/h1&gt;
791 &lt;a href="&lt;%%daylink%%&gt;"&gt;(archive)&lt;/a&gt;
792 </pre>
793
794 </div>
795
796 <div class="page"><a name="templatehighlight"></a>
797 <h1>Templates: Highlight</h1>
798 <p>
799 The highlighting is used when performing searches. This is actually used in a regular expression, so you might want to escape some characters by putting a backslash before them. The place where the highlighted word will come, is indicated by "\0".
800 </p>
801
802 <h2>Example</h2>
803
804 <pre><code>&lt;span style='background-color:yellow'&gt;\0&lt;/span&gt;</code></pre>
805
806 </div>
807
808 <div class="page"><a name="templatenothingfound"></a>
809 <h1>Templates: nothing found</h1>
810
811 <p>
812 Shown when a search has been performed and no results were found.
813 </p>
814
815 <p>Available variables:</p>
816
817 <table><tr>
818         <th>Name</th>
819         <th>Description</th>
820 </tr><tr>
821         <td>blogid</td>
822         <td>ID of the weblog</td>
823 </tr><tr>
824         <td>query</td>
825         <td>the query that was used in the search</td>
826 </tr></table>
827
828 <h2>Example</h2>
829
830 <pre><code>No search results found for &lt;b&gt;&lt;%query%&gt;&lt;/b&gt;</code></pre>
831
832 </div>
833
834 <div class="page"><a name="templatecommentbody"></a>
835 <h1>Templates: Comment body</h1>
836 <p>
837 This is the part of the template used to display a single comment. In this template-part, <a href="#templatevars-comments" title="Overview of comments-related template variables">comments-related templatevars</a> are available.</p>
838
839 <h2>Example</h2>
840 <pre><code>&lt;h2&gt;Comment by &lt;%userlink%&gt;:&lt;/h2&gt;
841
842 &lt;p&gt;&lt;%body%&gt;&lt;/p&gt;
843
844 &lt;div class="metadata"&gt;
845  (from &lt;%host%&gt; on &lt;%date%&gt; at &lt;%time%&gt;)
846 &lt;/div&gt;</code></pre>
847
848 <p>Result:</p>
849
850 <div class="example">
851 <h4 style="margin: 2px;">Comment by <a href="#templatecommentbody">karma</a>:</h4>
852 <p style="margin: 2px;">Nice!</p>
853 <div style="margin:2px;font-size:smaller;">(from host.example.org on 2003-03-02 at 13:30)</div>
854 </div>
855
856 </div>
857
858 <div class="page"><a name="templatepopups"></a>
859 <h1>Templates: Media &amp; Popups</h1>
860 <p>
861 These templates are used to format links to popup image windows and media objects (non-pictures). The available variables for each of the templates are described below
862 </p>
863
864 <h2>Popup Link Code</h2>
865
866 <table><tr>
867         <th>Name</th>
868         <th>Description</th>
869 </tr><tr>
870         <td>popuplink</td>
871         <td>an &lt;a href... link ready to use</td>
872 </tr><tr>
873         <td>rawpopuplink</td>
874         <td>only the url inside href="..."</td>
875 </tr><tr>
876         <td>popupcode</td>
877         <td>javascript code to open window</td>
878 </tr><tr>
879         <td>text</td>
880         <td>the alternate text (link text)</td>
881 </tr><tr>
882         <td>width</td>
883         <td>image width</td>
884 </tr><tr>
885         <td>height</td>
886         <td>image width</td>
887 </tr><tr>
888         <td>popuptext</td>
889         <td>(=same as text)</td>
890 </tr><tr>
891         <td>link</td>
892         <td>direct link to the image (URL)</td>
893 </tr><tr>
894         <td>media</td>
895         <td>a non-popup A-tag to the image, ready to use.</td>
896 </tr></table>
897
898
899 <h2>Inline Image Code</h2>
900
901 <table><tr>
902         <th>Name</th>
903         <th>Description</th>
904 </tr><tr>
905         <td>image</td>
906         <td>an IMG-tag, ready to use</td>
907 </tr><tr>
908         <td>link</td>
909         <td>direct link to the image (URL)</td>
910 </tr><tr>
911         <td>text</td>
912         <td>the alternate text (link text)</td>
913 </tr><tr>
914         <td>width</td>
915         <td>image width</td>
916 </tr><tr>
917         <td>height</td>
918         <td>image width</td>
919 </tr><tr>
920         <td>media</td>
921         <td>an A-tag to the image, ready to use.</td>
922 </tr></table>
923
924 <h2>Media Object Link Code</h2>
925
926 <table><tr>
927         <th>Name</th>
928         <th>Description</th>
929 </tr><tr>
930         <td>media</td>
931         <td>an A-tag, ready to use</td>
932 </tr><tr>
933         <td>link</td>
934         <td>direct link to the file (URL)</td>
935 </tr><tr>
936         <td>text</td>
937         <td>the alternate text (link text)</td>
938 </tr></table>
939
940 </div>
941
942 <div class="page"><a name="templatememberextra"></a>
943 <h1>Templates: Member Extra</h1>
944 <p>
945 This is a template you can use to add an extra indication that a comment-author is a member. It ends up in the <code>&lt;%authtext%&gt;</code> variable for use in the <a href="#templatecommentbody">comment body</a>
946 </p>
947
948 <p>Inside this template-part, some <a href="#templatevars-comments" title="Overview of comments-related template variables">comments-related variables</a> are available.</p>
949
950 </div>
951
952 <div class="page"><a name="templatecommentcontinued"></a>
953 <h1>Templates: Comments Read More</h1>
954 <p>
955 This is the format of the link that will be added at the end of <code>&lt;%short%&gt;</code>, which is a variable for use in the <a href="#templatecommentbody">comment body</a>
956 </p>
957
958 <p>Inside this template-part, some <a href="#templatevars-comments" title="Overview of comments-related template variables">comments-related variables</a> are available (except for the <code>&lt;%short%&gt;</code> variable).</p>
959
960 <p>Example:</p>
961
962 <pre>
963  &lt;a href="&lt;%itemlink%&gt;"&gt;[more]&lt;/a&gt;
964 </pre>
965
966 </div>
967
968 <div class="page"><a name="templatecommentwords"></a>
969 <h1>Templates: commentword</h1>
970 <p>
971 Most likely, you'll rather want to write "1 comment" than "1 comment(s)". The "One comment" and "Many comments" template parts can be used for this purpose. They will be used to fill the <code>&lt;%commentword%&gt;</code> variable that you can use elsewhere.
972 </p>
973
974 <p>
975 If there is only 1 comment, <code>&lt;%commentword%&gt;</code> will be equal to the contents of the "one comment" part. If there are many comments (more than one), <code>&lt;%commentword%&gt;</code> will be equal to the contents of the "two (or more) comments" part.
976 </p>
977
978 <p>
979 Typical values are "comment" and "comments". <strong>No special variables can be used here</strong>.
980 </p>
981 </div>
982
983
984
985 <div class="page"><a name="templateeditlink"></a>
986 <h1>Templates: Edit Link</h1>
987 <p>
988 This template defines how the <a href="#templatevar-edit">edit-templatevar</a> will be marked up. You can use any of the <a href="#templatevars-overview">template variables</a> here.
989 </p>
990
991 <h2>Example:</h2>
992
993 <pre><code>&lt;a href="&lt;%editlink%&gt;"
994    onclick="&lt;%editpopupcode%&gt;"&gt;edit&lt;/a&gt;</code></pre>
995
996 </div>
997
998
999
1000
1001 <div class="page"><a name="skinpartindex"></a>
1002 <h1>Skins: Main Index</h1>
1003 <p>
1004 This skinpart is used to show the most recent entries of your weblog. It's usually the home page of your site.
1005 </p>
1006
1007 <p>
1008 Very basic buildup for a main index:
1009 </p>
1010
1011 <pre>
1012 &lt;html&gt;
1013   &lt;head&gt;
1014     &lt;title&gt;My Weblog&lt;/title&gt;
1015   &lt;/head&gt;
1016   &lt;body&gt;
1017
1018     &lt;h1&gt;My Weblog&lt;/h1&gt;
1019     &lt;%blog(mytemplate,20)%&gt;
1020
1021   &lt;/body&gt;
1022 &lt;/html&gt;
1023 </pre>
1024
1025 <p>
1026         This will show the 20 most recent items of the default weblog (unless overridden), using the 'mytemplate' template.
1027 </p>
1028 </div>
1029
1030
1031 <div class="page"><a name="skinpartitem"></a>
1032 <h1>Skins: Detail Pages</h1>
1033 <p>
1034 These pages are used to show the full items, all comments that were made and a form to add comments.
1035 </p>
1036
1037 <p>
1038 Very basic buildup for a detailed item page:
1039 </p>
1040
1041 <pre>
1042 &lt;html&gt;
1043   &lt;head&gt;
1044     &lt;title&gt;My Weblog :: Item&lt;/title&gt;
1045   &lt;/head&gt;
1046   &lt;body&gt;
1047
1048     &lt;h1&gt;Item&lt;/h1&gt;
1049     &lt;%item(detailed)%&gt;
1050
1051     &lt;h1&gt;Comments&lt;/h1&gt;
1052     &lt;%comments(detailed)%&gt;
1053
1054     &lt;h1&gt;Add Comment&lt;/h1&gt;
1055     &lt;%commentform%&gt;
1056
1057   &lt;/body&gt;
1058 &lt;/html&gt;
1059 </pre>
1060
1061 <p>
1062         This will show the item and comments using the 'detailed' template, and add a standard commentform.
1063 </p>
1064
1065
1066 </div>
1067
1068 <div class="page"><a name="skinpartarchivelist"></a>
1069 <h1>Skins: Archive List</h1>
1070 <p>
1071 An overview of all the months for which archives are available, and links to those archives
1072 </p>
1073
1074 <p>
1075 Very basic buildup for an archive list:
1076 </p>
1077
1078 <pre>
1079 &lt;html&gt;
1080   &lt;head&gt;
1081     &lt;title&gt;My Weblog :: Archives&lt;/title&gt;
1082   &lt;/head&gt;
1083   &lt;body&gt;
1084
1085     &lt;h1&gt;Archives&lt;/h1&gt;
1086     &lt;%archivelist(default)%&gt;
1087
1088   &lt;/body&gt;
1089 &lt;/html&gt;
1090 </pre>
1091
1092 <p>
1093         This will show the list of all available archive files, using the 'default' template
1094 </p>
1095
1096 </div>
1097
1098 <div class="page"><a name="skinpartarchive"></a>
1099 <h1>Skins: Archive</h1>
1100 <p>
1101 An archive for one month. Behaves like a main index, but shows all the items from a certain month.
1102 </p>
1103
1104 <p>
1105 Very basic buildup for an archive page:
1106 </p>
1107
1108 <pre>
1109 &lt;html&gt;
1110   &lt;head&gt;
1111     &lt;title&gt;My Weblog :: Archive&lt;/title&gt;
1112   &lt;/head&gt;
1113   &lt;body&gt;
1114
1115     &lt;h1&gt;Archive&lt;/h1&gt;
1116     &lt;%archive(default)%&gt;
1117
1118   &lt;/body&gt;
1119 &lt;/html&gt;
1120 </pre>
1121
1122 <p>
1123         This will show the requested archive using the 'default' template
1124 </p>
1125
1126
1127 </div>
1128
1129
1130 <div class="page"><a name="skinpartsearch"></a>
1131 <h1>Skins: Search</h1>
1132 <p>
1133 Used to show search results.
1134 </p>
1135
1136 <p>
1137 Very basic buildup for a searchresults page:
1138 </p>
1139
1140 <pre>
1141 &lt;html&gt;
1142   &lt;head&gt;
1143     &lt;title&gt;My Weblog :: Search&lt;/title&gt;
1144   &lt;/head&gt;
1145   &lt;body&gt;
1146
1147     &lt;h1&gt;Search&lt;/h1&gt;
1148     &lt;%searchform%&gt;
1149
1150     &lt;h1&gt;Searchresults&lt;/h1&gt;
1151     &lt;%searchresults(default)%&gt;
1152
1153   &lt;/body&gt;
1154 &lt;/html&gt;
1155 </pre>
1156
1157 <p>
1158         This will show search results using the 'default' template.
1159 </p>
1160
1161 </div>
1162
1163 <div class="page"><a name="skinparterror"></a>
1164 <h1>Skins: Errors</h1>
1165 <p>
1166 Used when there is an error
1167 </p>
1168
1169 <pre>
1170 &lt;html&gt;
1171   &lt;head&gt;
1172     &lt;title&gt;My Weblog :: Error&lt;/title&gt;
1173   &lt;/head&gt;
1174   &lt;body&gt;
1175
1176     &lt;h1&gt;Error!&lt;/h1&gt;
1177     &lt;%errormessage%&gt;
1178
1179     &lt;br /&gt;&lt;br /&gt;
1180
1181     &lt;a href="javascript:history.back();"&gt;Back&lt;/a&gt;
1182
1183   &lt;/body&gt;
1184 &lt;/html&gt;
1185 </pre>
1186
1187 <p>
1188         This will show the error message, plus a link to go back.
1189 </p>
1190
1191 </div>
1192
1193 <div class="page"><a name="skinpartmember"></a>
1194 <h1>Skins: Member</h1>
1195 <p>
1196 Used to show member details.
1197 </p>
1198
1199 <p>
1200 Very basic buildup for a member-detail page:
1201 </p>
1202
1203 <pre>
1204 &lt;html&gt;
1205   &lt;head&gt;
1206     &lt;title&gt;My Weblog :: Member details&lt;/title&gt;
1207   &lt;/head&gt;
1208   &lt;body&gt;
1209
1210     &lt;h1&gt;Info about &lt;%member(name)%&gt;&lt;/h1&gt;
1211     Website:
1212     &lt;a href="&lt;%member(url)%&gt;"&gt;&lt;%member(url)%&gt;&lt;/a&gt;
1213
1214     &lt;h1&gt;Send Message&lt;/h1&gt;
1215     &lt;%membermailform%&gt;
1216
1217   &lt;/body&gt;
1218 &lt;/html&gt;
1219 </pre>
1220
1221 <p>
1222         This will show the members name, website address and a mailform.
1223 </p>
1224
1225 </div>
1226
1227
1228 <div class="page"><a name="skinpartimagepopup"></a>
1229 <h1>Skins: Image Popup</h1>
1230 <p>
1231 Used when a media file (image) needs to be shown in a popup window. This skin defines the layout that will be used in that case.
1232 </p>
1233
1234 <p>
1235 Very basic buildup for an imagepopup page:
1236 </p>
1237
1238 <pre>
1239 &lt;html&gt;
1240 &lt;head&gt;
1241   &lt;title&gt;&lt;%imagetext%&gt;&lt;/title&gt;
1242   &lt;style type="text/css"&gt;
1243    img { border: none; }
1244   &lt;/style&gt;
1245 &lt;/head&gt;
1246 &lt;body&gt;
1247   &lt;a href="javascript:window.close();"&gt;&lt;%image%&gt;&lt;/a&gt;
1248 &lt;/body&gt;
1249 &lt;/html&gt;
1250 </pre>
1251
1252 </div>
1253
1254
1255 <div class="page"><a name="skinpartspecial"></a>
1256 <h1>Skins: Main Index</h1>
1257 <p>
1258 This skinpart is used to show special, non-blog, content on your site. It can be used to show static content, or to wrap other 
1259 dynamic applications, like forms, inside the skin of your blog. It is accessed by the name of the special skin part, in this way 
1260 (assuming the special skin part is named <code>fred</code>):
1261 </p>
1262 <code>http://www.yoursite.tld/index.php?special=fred</code>
1263
1264 <p>Further discussion of the use of this feature can be found on the support forum: 
1265 <a href="http://forum.nucleuscms.org/viewtopic.php?t=16501" title="Special Skin Parts">Nucleus 3.31 and Static Pages</a>
1266 </p>
1267
1268 <p>
1269 Very basic buildup for a special skin part:
1270 </p>
1271
1272 <pre>
1273 &lt;html&gt;
1274   &lt;head&gt;
1275     &lt;title&gt;My Weblog&lt;/title&gt;
1276   &lt;/head&gt;
1277   &lt;body&gt;
1278
1279     &lt;h1&gt;About My Site&lt;/h1&gt;
1280     &lt;p&gt;This page was published in order 
1281         to provide a platform to publicize the plight 
1282         of the peeping-polly parrot whose present 
1283         prognosis is perturbingly pessimistic.&lt;/p&gt;
1284
1285   &lt;/body&gt;
1286 &lt;/html&gt;
1287 </pre>
1288
1289 <p>
1290         This will show the text of the body as indicated above. Also, many SkinVars work on special pages, so you can make 
1291         the page look just like the other pages and use SkinVars to show an index of the whole site, or a list of members, etc...
1292 </p>
1293 </div>
1294
1295
1296
1297
1298 <div class="page"><a name="shortnames"></a>
1299 <h1>Shortnames &amp; Display Names</h1>
1300 <p>
1301 Weblogs, templates and skin should all have a short name next to the full name or description.
1302 </p>
1303
1304 <p>
1305 A short name consists of <strong>only</strong> the characters a-z and 0-9, and <strong>cannot</strong> contain spaces
1306 </p>
1307
1308 <p>
1309 Display names are used for members. They can contain a-z, A-Z, 0-9 and spaces, but the spaces cannot be placed at the beginning or end of the name.
1310 </p>
1311 </div>
1312
1313
1314
1315
1316
1317
1318 <div class="page"><a name="templatenew"></a>
1319 <h1>Template: 'New' indication</h1>
1320 <p>
1321 When the <a href="#cookies">'last visit' cookie</a> option is activated, the contents of the 'Indication of new item'-template is copied into the &lt;%new%&gt; variable for items that have been added since the last visit. The <code>&lt;%new%&gt;</code> variable can e.g. be used in the <a href="#templateitems">item body</a>-template.
1322 </p>
1323
1324 <p>
1325 When the 'last visit' cookie is disabled, or the item is not 'new', this template part will not be used.
1326 </p>
1327 </div>
1328
1329
1330 <div class="page"><a name="strftime"></a>
1331 <h1>Time variables overview</h1>
1332
1333 <p>The following conversion specifiers are recognized in the format string <small>(taken from the PHP documentation for the strftime function)</small>. More info in the <a href="http://www.opengroup.org/onlinepubs/7908799/xsh/strftime.html" onclick="window.open(this.href);return false;" class="out" title="Open Group specification">Open Group Specification</a></p>
1334
1335 <ul>
1336         <li><strong>%a</strong> - abbreviated weekday name according to the current locale</li>
1337         <li><strong>%A</strong> - full weekday name according to the current locale</li>
1338         <li><strong>%b</strong> - abbreviated month name according to the current locale</li>
1339         <li><strong>%B</strong> - full month name according to the current locale</li>
1340         <li><strong>%c</strong> - preferred date and time representation for the current locale</li>
1341         <li><strong>%d</strong> - day of the month as a decimal number (range 00 to 31)</li>
1342         <li><strong>%H</strong> - hour as a decimal number using a 24-hour clock (range 00 to 23)</li>
1343         <li><strong>%I</strong> - hour as a decimal number using a 12-hour clock (range 01 to 12)</li>
1344         <li><strong>%j</strong> - day of the year as a decimal number (range 001 to 366)</li>
1345         <li><strong>%m</strong> - month as a decimal number (range 1 to 12)</li>
1346         <li><strong>%M</strong> - minute as a decimal number</li>
1347         <li><strong>%p</strong> - either `am' or `pm' according to the given time value, or the corresponding strings for the current locale</li>
1348         <li><strong>%S</strong> - second as a decimal number</li>
1349         <li><strong>%U</strong> - week number of the current year as a decimal number, starting with the first Sunday as the first day of the first week</li>
1350         <li><strong>%W</strong> - week number of the current year as a decimal number, starting with the first Monday as the first day of the first week</li>
1351         <li><strong>%w</strong> - day of the week as a decimal, Sunday being 0</li>
1352         <li><strong>%x</strong> - preferred date representation for the current locale without the time</li>
1353         <li><strong>%X</strong> - preferred time representation for the current locale without the date</li>
1354         <li><strong>%y</strong> - year as a decimal number without a century (range 00 to 99)</li>
1355         <li><strong>%Y</strong> - year as a decimal number including the century</li>
1356         <li><strong>%Z</strong> - time zone or name or abbreviation</li>
1357         <li><strong>%%</strong> - a literal `%' character</li>
1358 </ul>
1359
1360 </div>
1361
1362 <div class="page"><a name="sendping"></a>
1363 <h1>Ping weblog listing services</h1>
1364 <p>
1365 When updating your weblog, you can choose to send an update notification (ping) to various weblog listing services. They provides a list of recently updated weblogs to everyone who requests it. Lots of websites are using this data, so you might receive some extra hits when enabling the ping.
1366 </p>
1367 <p class="note"><strong>Note:</strong> For this feature to work correctly, you need to fill out both the weblog URL and the weblog name in the blogsettings.
1368 </p>
1369
1370 </div>
1371
1372 <div class="page"><a name="blogsearchable"></a>
1373
1374 <h1>Always include in search</h1>
1375
1376 <p>When the 'include in search' option is selected, the weblog will <strong>always</strong> be included in searches, even if the search is done on another weblog.</p>
1377
1378 <p>As an example, suppose you have two blogs called 'lifelog' and 'linkdump', with the 'include in search' enabled for 'linkdump'. Now, a search query on 'lifelog' will also search through 'linkdump', while a search query on 'linkdump' will only search entries in 'linkdump'</p>
1379
1380
1381 </div>
1382
1383
1384 <div class="page"><a name="convertbreaks"></a>
1385 <h1>Convert Linebreaks</h1>
1386 <p>
1387 By default, Nucleus converts linebreaks in your items to <code>&lt;br /&gt;</code> tags, so a linebreak will also show up in your (X)HTML output
1388 </p>
1389 <p>
1390 Advanced users, or users striving for the semantic web (<tt>br</tt> tags don't add any information, they're just used for markup), might find this feature annoying, and turn this feature off.
1391 </p>
1392 </div>
1393
1394
1395 <div class="page"><a name="media"></a>
1396 <h1>Media</h1>
1397 <p>
1398 Nucleus allows you to upload media files (images, video, sound, ...) to your website
1399 </p>
1400 <p>
1401 Some settings are needed to do this:
1402 </p>
1403 <ul>
1404         <li><strong>Media dir</strong>: location on the server where the media files will be saved (local filesystem)</li>
1405         <li><strong>Media URL</strong>: location of the media files</li>
1406         <li><strong>Allow upload</strong>: It's possible to disable file upload</li>
1407         <li><strong>Allowed filetypes for upload</strong>: a bunch of extensions uploaded files can have (seperated by commas, case insensitive)</li>
1408         <li><strong>Max. upload file size</strong>: Puts a limit on the size of uploaded files</li>
1409         <li><strong>Prefix Media Files</strong>: When this option is turned on, uploaded file will be prefixed with the current date. Uploading a file named 'bunny.jpg' on April 8, 2003 will then result in a file named 20030408-bunny.jpg. The reason why you might want to do this, is when you're uploading tons of files, and don't want problems with duplicate names.</li>
1410 </ul>
1411
1412 <p>
1413 Each member has his own private collection of media files. Next to that, subdirectories that are under the media dir are seen as global collections (shared between members).
1414 </p>
1415
1416 <p>Uploading is only possible when a member is on the team of at least one of the blogs, to prevent abuse.</p>
1417 </div>
1418
1419
1420 <div class="page"><a name="protectmemnames"></a>
1421 <h1>Protect Member Names</h1>
1422 <p>When this option is enabled, non-logged in members cannot add comments using the same name as registered members. The reason to do this would be to avoid guest impersonating members.</p>
1423 </div>
1424
1425
1426 <div class="page"><a name="pluginurl"></a>
1427 <h1>Plugin URL</h1>
1428 <p>This setting is the base URL for plugin admin areas. Usually it will look like the following</p>
1429 <pre>http://hostname.com/nucleus/plugins/</pre>
1430 </div>
1431
1432 <div class="page"><a name="skinsurl"></a>
1433 <h1>Skins URL</h1>
1434 <p>This setting is the base URL for the Nucleus skins directory. Usually it will look like the following</p>
1435 <pre>http://hostname.com/skins/</pre>
1436 </div>
1437
1438 <div class="page"><a name="actionurl"></a>
1439 <h1>Action URL</h1>
1440 <p>This setting is the absolute URL of the <code>action.php</code> script that comes with Nucleus. Usually it will look like the following</p>
1441 <pre>http://hostname.com/actions.php</pre>
1442 </div>
1443
1444
1445
1446 <div class="page"><a name="additem"></a>
1447 <h1>Adding items</h1>
1448 <p>When adding items to a weblog, there are four kinds of template variables that you can use in the body text, title or extended part:</p>
1449 <ul>
1450         <li><a href="#templatevar-popup">&lt;%popup(...)%&gt;</a> to insert a popup image</li>
1451         <li><a href="#templatevar-popup">&lt;%image(...)%&gt;</a> to insert an inline image</li>
1452         <li><a href="#templatevar-popup">&lt;%media(...)%&gt;</a> to insert a media object</li>
1453 </ul>
1454 <p>Usually, these tags are inserted by the 'insert media' button in the JavaScript toolbar</p>
1455
1456
1457 </div>
1458
1459
1460
1461
1462 <div class="page">
1463 <a name="skinvar-referer"></a>
1464 <h1>Skinvar: referer</h1>
1465 <p>Inserts the refering URL (can be empty)</p>
1466 <h2>Arguments</h2>
1467 <p>None</p>
1468 <h2>Skintypes</h2>
1469 <p>all</p>
1470 <h2>Examples</h2>
1471 <pre>
1472 &lt;a href="&lt;%referer%&gt;"&gt;back&lt;/a&gt;
1473 </pre>
1474 </div>
1475
1476
1477 <div class="page">
1478 <a name="skinvar-itemid"></a>
1479 <h1>Skinvar: itemid</h1>
1480 <p>Inserts the ID of the currently selected item</p>
1481 <h2>Arguments</h2>
1482 <p>None</p>
1483 <h2>Skintypes</h2>
1484 <p>item</p>
1485 <h2>Examples</h2>
1486 <pre>
1487 &lt;%itemid%&gt;
1488 </pre>
1489 </div>
1490
1491
1492 <div class="page">
1493 <a name="skinvar-itemlink"></a>
1494
1495 <h1>Skinvar: itemlink</h1>
1496
1497 <p>Adds a permanent link for the item.</p>
1498
1499 <h2>Arguments</h2>
1500
1501 <p>
1502         Optional
1503         <ul>
1504                 <li><strong><em>linktext</em></strong>: when present, a full <code>&lt;a href...</code> tag will be outputted, rather than a raw link</li>
1505         </ul>
1506 </p>
1507 <h2>Skintypes</h2>
1508
1509 <p>item</p>
1510
1511 <h2>Examples</h2>
1512
1513 <pre>
1514 &lt;%itemlink%&gt;
1515 </pre>
1516 </div>
1517
1518 <div class="page">
1519 <a name="skinvar-itemtitle"></a>
1520 <h1>Skinvar: itemtitle</h1>
1521 <p>Inserts the title of the item, with HTML-stripped off and entities encoded</p>
1522 <h2>Arguments</h2>
1523 <p>None</p>
1524 <h2>Skintypes</h2>
1525 <p>item</p>
1526 <h2>Examples</h2>
1527 <pre>
1528 &lt;%itemtitle%&gt;
1529 </pre>
1530 </div>
1531
1532
1533 <div class="page">
1534 <a name="skinvar-archivedate"></a>
1535 <h1>Skinvar: archivedate</h1>
1536 <p>Inserts a formatted date for an archive date. Using no parameters, this will either insert '15 august 2002' or 'august 2002' if the archive is for august 2002</p>
1537 <h2>Arguments</h2>
1538 <ul>
1539         <li>Optional
1540                 <table><tr>
1541                         <th>Name</th>
1542                         <th>Value</th>
1543                 </tr><tr>
1544                         <td>Locale</td>
1545                         <td><a href="#templatelocale">Locale</a> in which the date must be formatted</td>
1546                 </tr><tr>
1547                         <td>Format</td>
1548                         <td>Date format (<a href="#strftime">strftime variables</a>)</td>
1549                 </tr></table>
1550         </li>
1551 </ul>
1552 <h2>Skintypes</h2>
1553 <p>archive</p>
1554 <h2>Examples</h2>
1555 <pre>
1556 Archive for &lt;%archivedate%&gt;
1557 Archive for &lt;%archivedate(dutch)%&gt;
1558 Archive for &lt;%archivedate(en,%B %Y)%&gt;
1559 </pre>
1560 </div>
1561
1562
1563
1564 <div class="page">
1565 <a name="skinvar-blog"></a>
1566 <h1>Skinvar: blog</h1>
1567
1568 <p>
1569 Inserts the most recently added items of the currently active blog (usually the default one) into the skin.
1570 </p>
1571
1572 <h2>Arguments</h2>
1573 <p>
1574         Required:
1575         <ul>
1576                 <li><strong>template</strong>: name of the template to use</li>
1577         </ul>
1578         Optional:
1579         <ul>
1580                 <li><strong><em>amount</em></strong>: the amount of items to show (default = 10). Can also contain an offset telling Nucleus to start only from the given item. e.g. <code>10(5)</code> shows 10 items starting from item 5</li>
1581                 <li><strong><em>category</em></strong>: name of the category to show</li>
1582         </ul>
1583 </p>
1584
1585 <h2>Skintypes</h2>
1586
1587 <p>
1588 index, item, archive, archivelist, search
1589 </p>
1590
1591 <h2>Examples</h2>
1592
1593 <pre>
1594 &lt;%blog(default,15)%&gt;
1595 &lt;%blog(default,5(15))%&gt;
1596 &lt;%blog(mytemplate)%&gt;
1597 &lt;%blog(mytemplate,5,mycategory)%&gt;
1598 </pre>
1599
1600 </div>
1601
1602 <div class="page">
1603 <a name="skinvar-bloglist"></a>
1604 <h1>Skinvar: bloglist</h1>
1605
1606 <p>
1607 Shows a list of all blogs that are defined in your Nucles CMS.
1608 </p>
1609
1610 <h2>Arguments</h2>
1611 <p>
1612         Required:
1613         <ul>
1614                 <li><strong>template</strong>: name of the template to use</li>
1615         </ul>
1616         Optional:
1617         <ul>
1618                 <li><strong>bnametype</strong>: whether the Blog Name (<code>name</code>) or the Short Blog Name (<code>shortname</code>) of the Blog is used. Default setting is the Blog name (<code>name</code>).</li>
1619         </ul>
1620         <ul>
1621                 <li><strong>orderby</strong>: (3.40) Attribute of the blog used for determinig the order in which the blogs are listed. Supported values are <code>number</code>, <code>name</code>, <code>shortname</code>, <code>description</code>. Default is <code>number</code>.</li>
1622         </ul>
1623         <ul>
1624                 <li><strong>direction</strong>: (3.40) Direction of the sorting, <code>asc</code> for ascending order, or <code>desc</code> for descending order. Default is <code>asc</code>.
1625         </ul>
1626 </p>
1627
1628 <h2>Skintypes</h2>
1629
1630 <p>
1631 all
1632 </p>
1633
1634 <h2>Examples</h2>
1635
1636 <pre>
1637 &lt;%bloglist(default/index)%&gt;
1638 &lt;%bloglist(default/index,name)%&gt; 
1639 &lt;%bloglist(default/index,shortname)%&gt;
1640 &lt;%bloglist(default/index,name,name,asc)%&gt; 
1641 </pre>
1642
1643 </div>
1644
1645
1646
1647 <div class="page">
1648 <a name="skinvar-otherblog"></a>
1649 <h1>Skinvar: otherblog</h1>
1650
1651 <p>
1652 Inserts the most recently added items of a given blog into the skin.
1653 </p>
1654
1655 <h2>Arguments</h2>
1656 <p>
1657         Required:
1658         <ul>
1659                 <li><strong>blogname</strong>: name of the blog to show</li>
1660                 <li><strong>template</strong>: name of the template to use</li>
1661         </ul>
1662         Optional:
1663         <ul>
1664                 <li><strong><em>amount</em></strong>: the amount of items to show (default = 10). Can also contain an offset telling Nucleus to start only from the given item. e.g. <code>10(5)</code> shows 10 items starting from item 5</li>
1665                 <li><strong><em>category</em></strong>: name of the category to show</li>
1666         </ul>
1667 </p>
1668
1669 <h2>Skintypes</h2>
1670
1671 <p>
1672 all
1673 </p>
1674
1675 <h2>Examples</h2>
1676
1677 <pre>
1678 &lt;%otherblog(myblog,default,15)%&gt;
1679 &lt;%otherblog(yourblog,mytemplate)%&gt;
1680 &lt;%otherblog(yourblog,mytemplate,15,mycategory)%&gt;
1681 &lt;%otherblog(yourblog,mytemplate,5(15),mycategory)%&gt;
1682 </pre>
1683
1684 </div>
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694 <div class="page">
1695 <a name="skinvar-item"></a>
1696 <h1>Skinvar: item</h1>
1697
1698 <p>
1699 Shows the currently selected item (without comments) using a given template
1700 </p>
1701
1702 <h2>Arguments</h2>
1703 <ul>
1704         <li><strong>template</strong>: name of the template to use</li>
1705 </ul>
1706
1707 <h2>Skintypes</h2>
1708
1709 <p>
1710 item
1711 </p>
1712
1713 <h2>Examples</h2>
1714
1715 <pre>
1716 &lt;%item(mytemplate)%&gt;
1717 </pre>
1718
1719 </div>
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729 <div class="page">
1730 <a name="skinvar-comments"></a>
1731 <h1>Skinvar: comments</h1>
1732
1733 <p>
1734 Shows the comments for the currently selected item using a given template.
1735 </p>
1736
1737 <h2>Arguments</h2>
1738 <ul>
1739         <li><strong>template</strong>: name of the template to use</li>
1740 </ul>
1741
1742 <h2>Skintypes</h2>
1743
1744 <p>
1745 item
1746 </p>
1747
1748 <h2>Examples</h2>
1749
1750 <pre>
1751 &lt;%comments(mytemplate)%&gt;
1752 </pre>
1753
1754 </div>
1755
1756
1757
1758
1759
1760
1761
1762 <div class="page">
1763 <a name="skinvar-archive"></a>
1764 <h1>Skinvar: archive</h1>
1765
1766 <p>
1767 Shows the archive for the selected month and the selected blog (usually the default one), using a given template
1768 </p>
1769
1770 <h2>Arguments</h2>
1771 <p>
1772         Required
1773         <ul>
1774                 <li><strong>template</strong>: name of the template to use</li>
1775         </ul>
1776         Optional
1777         <ul>
1778                 <li><strong><em>category</em></strong>: name of the category to show</li>
1779         </ul>
1780 </p>
1781
1782 <h2>Skintypes</h2>
1783
1784 <p>
1785 archive
1786 </p>
1787
1788 <h2>Examples</h2>
1789
1790 <pre>
1791 &lt;%archive(mytemplate)%&gt;
1792 &lt;%archive(mytemplate,mycategory)%&gt;
1793 </pre>
1794
1795 </div>
1796
1797
1798
1799
1800 <div class="page">
1801 <a name="skinvar-otherarchive"></a>
1802 <h1>Skinvar: otherarchive</h1>
1803
1804 <p>
1805 Shows the archive for the selected month, using the given blog and template
1806 </p>
1807
1808 <h2>Arguments</h2>
1809 <p>
1810         Required
1811         <ul>
1812                 <li><strong>blogname</strong>: name of the blog to use</li>
1813                 <li><strong>template</strong>: name of the template to use</li>
1814         </ul>
1815         Optional
1816         <ul>
1817                 <li><strong><em>category</em></strong>: name of the category to show</li>
1818         </ul>
1819 </p>
1820
1821 <h2>Skintypes</h2>
1822
1823 <p>
1824 archive
1825 </p>
1826
1827 <h2>Examples</h2>
1828
1829 <pre>
1830 &lt;%otherarchive(myblog,mytemplate)%&gt;
1831 &lt;%otherarchive(myblog,mytemplate,mycategory)%&gt;
1832 </pre>
1833
1834 </div>
1835
1836
1837
1838
1839
1840
1841
1842 <div class="page">
1843 <a name="skinvar-archivelist"></a>
1844 <h1>Skinvar: archivelist</h1>
1845
1846 <p>
1847 Shows the list of available archives for the currently selected blog (usually the default one), using a given template
1848 </p>
1849
1850 <h2>Arguments</h2>
1851 <p>
1852         Required
1853         <ul>
1854                 <li><strong>template</strong>: name of the template to use</li>
1855         </ul>
1856         Optional
1857         <ul>
1858                 <li><strong><em>category</em></strong>: name of the category to show</li>
1859                 <li><strong><em>limit</em></strong>: limits the amount of links shown (e.g. if you only want to show links to the past 3 months)</li>
1860         </ul>
1861 </p>
1862
1863 <h2>Skintypes</h2>
1864
1865 <p>
1866 index, archive, archivelist, search, item
1867 </p>
1868 </div>
1869
1870 <div class="page">
1871 <a name="skinvar-archivedaylist"></a>
1872 <h1>Skinvar: archivedaylist</h1>
1873
1874 <p>
1875 The same as the <a href="#skinvar-archivelist">archivelist</a> skinvar, but shows an entry for each <em>day</em> instead of for each <em>month</em>
1876 </p>
1877
1878 <h2>Arguments</h2>
1879 <p>
1880         Required
1881         <ul>
1882                 <li><strong>template</strong>: name of the template to use</li>
1883         </ul>
1884         Optional
1885         <ul>
1886                 <li><strong><em>category</em></strong> name of the category to show</li>
1887                 <li><strong><em>limit</em></strong>: limits the amount of links shown (e.g. if you only want to show links to the past 3 months)</li>
1888         </ul>
1889 </p>
1890
1891 <h2>Skintypes</h2>
1892
1893 <p>
1894 index, archive, archivelist, search, item
1895 </p>
1896
1897
1898 <h2>Examples</h2>
1899
1900 <pre>
1901 &lt;%archivedaylist(mytemplate)%&gt;
1902 &lt;%archivedaylist(mytemplate,mycategory)%&gt;
1903 </pre>
1904
1905 </div>
1906
1907
1908 <div class="page">
1909 <a name="skinvar-otherarchivedaylist"></a>
1910 <h1>Skinvar: otherarchivedaylist</h1>
1911
1912 <p>
1913 The same as the <a href="#skinvar-otherarchivelist">otherarchivelist</a> skinvar, but shows an entry for each <em>day</em> instead of for each <em>month</em>
1914
1915 </p>
1916
1917 <h2>Arguments</h2>
1918 <p>
1919         Required
1920         <ul>
1921                 <li><strong>blogname</strong>: name of the blog</li>
1922                 <li><strong>template</strong>: name of the template to use</li>
1923         </ul>
1924         Optional
1925         <ul>
1926                 <li><strong><em>category</em></strong>: name of the category to show</li>
1927         </ul>
1928 </p>
1929
1930 <h2>Skintypes</h2>
1931
1932 <p>
1933 all
1934 </p>
1935
1936 <h2>Examples</h2>
1937
1938 <pre>
1939 &lt;%otherarchivedaylist(yourblog,mytemplate)%&gt;
1940 &lt;%otherarchivedaylist(yourblog,mytemplate,mycategory)%&gt;
1941 </pre>
1942
1943 </div>
1944
1945 <div class="page">
1946 <a name="skinvar-archiveyearlist"></a>
1947 <h1>Skinvar: archiveyearlist</h1>
1948
1949 <p>
1950 The same as the <a href="#skinvar-archivelist">archivelist</a> skinvar, but shows an entry for each <em>year</em> instead of for each <em>month</em>
1951 </p>
1952
1953 <h2>Arguments</h2>
1954 <p>
1955         Required
1956         <ul>
1957                 <li><strong>template</strong>: name of the template to use</li>
1958         </ul>
1959         Optional
1960         <ul>
1961                 <li><strong><em>category</em></strong> name of the category to show</li>
1962                 <li><strong><em>limit</em></strong>: limits the amount of links shown (e.g. if you only want to show links to the past 3 years)</li>
1963         </ul>
1964 </p>
1965
1966 <h2>Skintypes</h2>
1967
1968 <p>
1969 index, archive, archivelist, search, item
1970 </p>
1971
1972
1973 <h2>Examples</h2>
1974
1975 <pre>
1976 &lt;%archiveyearlist(mytemplate)%&gt;
1977 &lt;%archiveyearlist(mytemplate,mycategory)%&gt;
1978 </pre>
1979
1980 </div>
1981
1982
1983 <div class="page">
1984 <a name="skinvar-otherarchiveyearlist"></a>
1985 <h1>Skinvar: otherarchiveyearlist</h1>
1986
1987 <p>
1988 The same as the <a href="#skinvar-otherarchivelist">otherarchivelist</a> skinvar, but shows an entry for each <em>year</em> instead of for each <em>month</em>
1989
1990 </p>
1991
1992 <h2>Arguments</h2>
1993 <p>
1994         Required
1995         <ul>
1996                 <li><strong>blogname</strong>: name of the blog</li>
1997                 <li><strong>template</strong>: name of the template to use</li>
1998         </ul>
1999         Optional
2000         <ul>
2001                 <li><strong><em>category</em></strong>: name of the category to show</li>
2002         </ul>
2003 </p>
2004
2005 <h2>Skintypes</h2>
2006
2007 <p>
2008 all
2009 </p>
2010
2011 <h2>Examples</h2>
2012
2013 <pre>
2014 &lt;%otherarchiveyearlist(yourblog,mytemplate)%&gt;
2015 &lt;%otherarchiveyearlist(yourblog,mytemplate,mycategory)%&gt;
2016 </pre>
2017
2018 </div>
2019
2020
2021
2022 <div class="page">
2023 <a name="skinvar-otherarchivelist"></a>
2024 <h1>Skinvar: otherarchivelist</h1>
2025
2026 <p>
2027 Shows the list of available archives for a given blog, using a given template
2028 </p>
2029
2030 <h2>Arguments</h2>
2031 <p>
2032         Required
2033         <ul>
2034                 <li><strong>blogname</strong>: name of the blog</li>
2035                 <li><strong>template</strong>: name of the template to use</li>
2036         </ul>
2037         Optional
2038         <ul>
2039                 <li><strong><em>category</em></strong>: name of the category to show</li>
2040         </ul>
2041 </p>
2042
2043 <h2>Skintypes</h2>
2044
2045 <p>
2046 all
2047 </p>
2048
2049 <h2>Examples</h2>
2050
2051 <pre>
2052 &lt;%otherarchivelist(yourblog,mytemplate)%&gt;
2053 &lt;%otherarchivelist(yourblog,mytemplate,mycategory)%&gt;
2054 </pre>
2055
2056 </div>
2057
2058
2059
2060 <div class="page">
2061 <a name="skinvar-categorylist"></a>
2062 <h1>Skinvar: categorylist</h1>
2063
2064 <p>
2065 Inserts a list of categories for a blog (defaults to the currently selected blog), using a given template
2066 </p>
2067
2068 <h2>Arguments</h2>
2069 <p>
2070         Required
2071         <ul>
2072                 <li><strong>template</strong>: name of the template to use</li>
2073         </ul>
2074         Optional
2075         <ul>
2076                 <li><strong><em>blogname</em></strong>: short name of the blog to use</li>
2077         </ul>
2078 </p>
2079
2080 <h2>Skintypes</h2>
2081
2082 <p>
2083 index, archive, archivelist, search, item, [error, member, special if blogname parameter specified]
2084 </p>
2085
2086 <h2>Examples</h2>
2087
2088 <pre>
2089 &lt;%categorylist(mytemplate)%&gt;
2090 &lt;%categorylist(mytemplate,myweblog)%&gt;
2091 </pre>
2092
2093 </div>
2094
2095
2096
2097 <div class="page">
2098 <a name="skinvar-category"></a>
2099 <h1>Skinvar: category</h1>
2100
2101 <p>
2102 Inserts some information about the currently selected category. When no category is selected, does nothing.
2103 </p>
2104
2105 <h2>Arguments</h2>
2106 <p>
2107         Optional
2108         <ul>
2109                 <li><strong><em>type</em></strong>: What information to include. Can be <b>name</b> (default), <b>desc</b> or <b>id</b></li>
2110         </ul>
2111 </p>
2112
2113 <h2>Skintypes</h2>
2114
2115 <p>
2116 all
2117 </p>
2118
2119 <h2>Examples</h2>
2120
2121 <pre>
2122 &lt;%category%&gt;
2123 &lt;%category(id)%&gt;
2124 &lt;%category(desc)%&gt;
2125 &lt;%category(name)%&gt;
2126 </pre>
2127
2128 </div>
2129
2130
2131 <div class="page">
2132 <a name="skinvar-ifcat"></a>
2133 <h1>Skinvar: ifcat</h1>
2134
2135 <p class="deprecated">Deprecated as of Nucleus v2.0. Use <a href="#skinvar-if">&lt;%if(category)%&gt;</a> instead.</p>
2136
2137 <h2>Arguments</h2>
2138 <p>
2139         None
2140         <ul>
2141                 <li><em>text</em>: Text to show</li>
2142         </ul>
2143 </p>
2144
2145 <h2>Skintypes</h2>
2146
2147 <p>
2148 all
2149 </p>
2150
2151 <h2>Examples</h2>
2152
2153 <pre>
2154 &lt;%ifcat(Current Category: )%&gt;&lt;%category%&gt;
2155 </pre>
2156
2157 </div>
2158
2159
2160
2161
2162 <div class="page">
2163 <a name="skinvar-searchresults"></a>
2164 <h1>Skinvar: searchresults</h1>
2165
2166 <p>
2167 Shows the searchresult for the current query
2168 </p>
2169
2170 <h2>Arguments</h2>
2171 <p>
2172         Required:
2173         <ul>
2174                 <li><strong>template</strong>: name of the template to use</li>
2175         </ul>
2176         Optional:
2177         <ul>
2178                 <li><strong><em>maxresults</em></strong>: maximum amount of results to show</li>
2179         </ul>
2180 </p>
2181
2182 <h2>Skintypes</h2>
2183
2184 <p>
2185 search
2186 </p>
2187
2188 <h2>Examples</h2>
2189
2190 <pre>
2191 &lt;%searchresults(mytemplate)%&gt;
2192 </pre>
2193
2194 </div>
2195
2196
2197
2198
2199 <div class="page">
2200 <a name="skinvar-othersearchresults"></a>
2201 <h1>Skinvar: othersearchresults</h1>
2202
2203 <p>
2204 Shows the searchresult in a give blog for the current query, using the given template
2205 </p>
2206
2207 <h2>Arguments</h2>
2208 <p>
2209         Required:
2210         <ul>
2211                 <li><strong>blogname</strong>: name of the blog to use</li>
2212                 <li><strong>template</strong>: name of the template to use</li>
2213         </ul>
2214         Optional:
2215         <ul>
2216                 <li><strong><em>maxresults</em></strong>: maximum amount of results to show</li>
2217         </ul>
2218 </p>
2219
2220 <h2>Skintypes</h2>
2221
2222 <p>
2223 search
2224 </p>
2225
2226 <h2>Examples</h2>
2227
2228 <pre>
2229 &lt;%othersearchresults(myblog,mytemplate)%&gt;
2230 </pre>
2231
2232 </div>
2233
2234
2235
2236
2237
2238
2239
2240 <div class="page">
2241 <a name="skinvar-query"></a>
2242 <h1>Skinvar: query</h1>
2243
2244 <p>
2245 Inserts the current search query.
2246 </p>
2247
2248 <h2>Arguments</h2>
2249 <p>
2250 None
2251 </p>
2252
2253 <h2>Skintypes</h2>
2254
2255 <p>
2256 search
2257 </p>
2258
2259 <h2>Examples</h2>
2260
2261 <pre>
2262 &lt;%query%&gt;
2263 </pre>
2264
2265 </div>
2266
2267
2268
2269
2270
2271
2272
2273
2274 <div class="page">
2275 <a name="skinvar-version"></a>
2276 <h1>Skinvar: version</h1>
2277
2278 <p>Inserts the current Nucleus version.</p>
2279
2280 <h2>Arguments</h2>
2281
2282 <p>
2283 None
2284 </p>
2285
2286 <h2>Skintypes</h2>
2287
2288 <p>
2289 all
2290 </p>
2291
2292 <h2>Examples</h2>
2293
2294 <pre>
2295 &lt;%version%&gt;
2296 </pre>
2297
2298 </div>
2299
2300
2301 <div class="page">
2302 <a name="skinvar-charset"></a>
2303 <h1>Skinvar: charset</h1>
2304
2305 <p>Inserts the character set encoding used by the current translation file.</p>
2306
2307 <h2>Arguments</h2>
2308
2309 <p>
2310 None
2311 </p>
2312
2313 <h2>Skintypes</h2>
2314
2315 <p>
2316 all
2317 </p>
2318
2319 <h2>Examples</h2>
2320
2321 <pre>
2322 &lt;%charset%&gt;
2323 </pre>
2324
2325 </div>
2326
2327
2328
2329
2330
2331 <div class="page">
2332 <a name="skinvar-previtem"></a>
2333 <h1>Skinvar: previtem</h1>
2334
2335 <p>
2336 Inserts the ID of the previous item in the blog
2337 </p>
2338
2339 <h2>Arguments</h2>
2340 <p>None</p>
2341
2342 <h2>Skintypes</h2>
2343
2344 <p>
2345 item
2346 </p>
2347
2348 <h2>Examples</h2>
2349
2350 <pre>
2351 &lt;%previtem%&gt;
2352 </pre>
2353
2354 </div>
2355
2356
2357
2358
2359
2360
2361 <div class="page">
2362 <a name="skinvar-nextitem"></a>
2363 <h1>Skinvar: nextitem</h1>
2364
2365 <p>
2366 Inserts the ID of the next item in the blog
2367 </p>
2368
2369 <h2>Arguments</h2>
2370 <p>None</p>
2371
2372 <h2>Skintypes</h2>
2373
2374 <p>
2375 item
2376 </p>
2377
2378 <h2>Examples</h2>
2379
2380 <pre>
2381 &lt;%nextitem%&gt;
2382 </pre>
2383
2384 </div>
2385
2386
2387 <div class="page">
2388 <a name="skinvar-nextitemtitle"></a>
2389 <h1>Skinvar: nextitemtitle</h1>
2390
2391 <p>
2392 Inserts the title of the next item in the blog
2393 </p>
2394
2395 <h2>Arguments</h2>
2396 <p>None</p>
2397
2398 <h2>Skintypes</h2>
2399
2400 <p>
2401 item
2402 </p>
2403
2404 <h2>Examples</h2>
2405
2406 <pre>
2407 &lt;%nextitemtitle%&gt;
2408 </pre>
2409
2410 </div>
2411
2412
2413 <div class="page">
2414 <a name="skinvar-previtemtitle"></a>
2415 <h1>Skinvar: previtemtitle</h1>
2416
2417 <p>
2418 Inserts the title of the previous item in the blog
2419 </p>
2420
2421 <h2>Arguments</h2>
2422 <p>None</p>
2423
2424 <h2>Skintypes</h2>
2425
2426 <p>
2427 item
2428 </p>
2429
2430 <h2>Examples</h2>
2431
2432 <pre>
2433 &lt;%previtemtitle%&gt;
2434 </pre>
2435
2436 </div>
2437
2438
2439
2440
2441 <div class="page">
2442 <a name="skinvar-prevarchive"></a>
2443 <h1>Skinvar: prevarchive</h1>
2444
2445 <p>
2446 Inserts the <code>archive</code> attribute that corresponds to the archive of either 1 day or 1 month back. This value can be used inside URLs to select an archive.
2447 </p>
2448
2449 <ul>
2450         <li>If the shown archive is for one specific day, the value has the form <code>YYYY-MM-DD</code></li>
2451         <li>If the shown archive is for a full month, the value has the form <code>YYYY-MM</code></li>
2452 </ul>
2453
2454 <h2>Arguments</h2>
2455 <p>None</p>
2456
2457 <h2>Skintypes</h2>
2458
2459 <p>
2460 archive
2461 </p>
2462
2463 <h2>Examples</h2>
2464
2465 <pre><code>&lt;a href="index.php?archive=&lt;%prevarchive%&gt;&gt;....</code></pre>
2466
2467 </div>
2468
2469
2470
2471
2472
2473
2474 <div class="page">
2475 <a name="skinvar-nextarchive"></a>
2476 <h1>Skinvar: nextarchive</h1>
2477
2478 <p>
2479 Inserts the <code>archive</code> attribute that corresponds to the archive of either 1 day or 1 month further in time. This value can be used inside URLs to select an archive.
2480 </p>
2481
2482 <ul>
2483         <li>If the shown archive is for one specific day, the value has the form <code>YYYY-MM-DD</code></li>
2484         <li>If the shown archive is for a full month, the value has the form <code>YYYY-MM</code></li>
2485 </ul>
2486
2487 <h2>Arguments</h2>
2488 <p>None</p>
2489
2490 <h2>Skintypes</h2>
2491
2492 <p>
2493 archive
2494 </p>
2495
2496 <h2>Examples</h2>
2497
2498 <pre><code>&lt;a href="index.php?archive=&lt;%nextarchive%&gt;&gt;....</code></pre>
2499
2500 </div>
2501
2502
2503 <div class="page">
2504 <a name="skinvar-archivetype"></a>
2505 <h1>Skinvar: archivetype</h1>
2506
2507 <p>
2508 Either <tt>day</tt> or <tt>month</tt>, indicating which type of archive is currently being shown
2509 </p>
2510
2511 <h2>Arguments</h2>
2512 <p>None</p>
2513
2514 <h2>Skintypes</h2>
2515
2516 <p>
2517 archive
2518 </p>
2519
2520 </div>
2521
2522
2523
2524
2525
2526 <div class="page">
2527 <a name="skinvar-todaylink"></a>
2528 <h1>Skinvar: todaylink</h1>
2529
2530 <p>
2531 Inserts a link to the main page of the weblog. Takes into account the currently selected blog and category.
2532 </p>
2533
2534 <h2>Arguments</h2>
2535 <p>
2536         Optional
2537         <ul>
2538                 <li><strong><em>linktext</em></strong>: when present, a full <code>&lt;a href...</code> tag will be outputted, rather than a raw link</li>
2539         </ul>
2540 </p>
2541
2542
2543 <h2>Skintypes</h2>
2544
2545 <p>
2546 all
2547 </p>
2548
2549 <h2>Examples</h2>
2550
2551 <pre>
2552 &lt;%todaylink%&gt;
2553 </pre>
2554
2555 </div>
2556
2557
2558
2559
2560
2561
2562
2563 <div class="page">
2564 <a name="skinvar-archivelink"></a>
2565 <h1>Skinvar: archivelink</h1>
2566
2567 <p>
2568 Inserts a link to the archive for the currently selected blog and category (or the default blog when no blog selected)
2569 </p>
2570
2571 <h2>Arguments</h2>
2572
2573 <p>
2574         Optional
2575         <ul>
2576                 <li><strong><em>linktext</em></strong>: when present, a full <code>&lt;a href...</code> tag will be outputted, rather than a raw link</li>
2577         </ul>
2578 </p>
2579
2580
2581 <h2>Skintypes</h2>
2582
2583 <p>
2584 all
2585 </p>
2586
2587 <h2>Examples</h2>
2588
2589 <pre>
2590 &lt;%archivelink%&gt;
2591 </pre>
2592
2593 </div>
2594
2595
2596
2597
2598
2599
2600 <div class="page">
2601 <a name="skinvar-nextlink"></a>
2602 <h1>Skinvar: nextlink</h1>
2603
2604 <p>
2605 Inserts a link to the next item (on item pages) or to the next archive (on archive pages)
2606 </p>
2607
2608 <h2>Arguments</h2>
2609 <p>
2610         Optional
2611         <ul>
2612                 <li><strong><em>linktext</em></strong>: when present, a full <code>&lt;a href...</code> tag will be outputted, rather than a raw link</li>
2613                 <li><strong><em>amount</em></strong>: for search and index skins: the amount of items to go forward/backward</li>
2614                 <li><strong><em>recount</em></strong>: for search and index skins: set to yes to force extra query to recount items on page. 
2615                 This is useful for more complex pages where the blog skinvar may be called multiple times because of the use of the offset. 
2616                 Try setting this if nextlink seems to be not advancing the expected number of items.</li>
2617         </ul>
2618 </p>
2619
2620
2621 <h2>Skintypes</h2>
2622
2623 <p>
2624 item, archive, search, index
2625 </p>
2626
2627 <h2>Examples</h2>
2628
2629 <pre>
2630 &lt;%nextlink%&gt;
2631 &lt;%nextlink(Next Page,10)%&gt;
2632 &lt;%nextlink(,10)%&gt;
2633 &lt;%nextlink(,10,yes)%&gt;
2634 </pre>
2635
2636 </div>
2637
2638
2639
2640
2641
2642
2643
2644
2645 <div class="page">
2646 <a name="skinvar-prevlink"></a>
2647 <h1>Skinvar: prevlink</h1>
2648
2649 <p>
2650 Inserts a link to the previous item (on item pages) or to the previous archive (on archive pages). For search and index pages
2651 </p>
2652
2653 <h2>Arguments</h2>
2654 <p>
2655         Optional
2656         <ul>
2657                 <li><strong><em>linktext</em></strong>: when present, a full <code>&lt;a href...</code> tag will be outputted, rather than a raw link</li>
2658                 <li><strong><em>amount</em></strong>: for search and index skins: the amount of items to go forward/backward</li>
2659         </ul>
2660 </p>
2661
2662 <h2>Skintypes</h2>
2663
2664 <p>
2665 item, archive, search, index
2666 </p>
2667
2668 <h2>Examples</h2>
2669
2670 <pre>
2671 &lt;%prevlink%&gt;
2672 </pre>
2673
2674 </div>
2675
2676
2677
2678
2679
2680
2681
2682
2683 <div class="page">
2684 <a name="skinvar-errormessage"></a>
2685 <h1>Skinvar: errormessage</h1>
2686
2687 <p>
2688 Inserts the message corresponding to the error that occurred
2689 </p>
2690
2691 <h2>Arguments</h2>
2692 <p>None</p>
2693
2694 <h2>Skintypes</h2>
2695
2696 <p>
2697 error
2698 </p>
2699
2700 <h2>Examples</h2>
2701
2702 <pre>
2703 &lt;%errormessage%&gt;
2704 </pre>
2705
2706 </div>
2707
2708
2709
2710
2711
2712
2713
2714
2715 <div class="page">
2716 <a name="skinvar-imagetext"></a>
2717 <h1>Skinvar: imagetext</h1>
2718
2719 <p class="deprecated">This skinvar is deprecated since Nucleus v2.0. You should use <a href="#skinvar-image"><code>&lt;%image(caption)%&gt;</code></a> instead</p>
2720
2721 <p>
2722 Inserts the caption text for a popup image
2723 </p>
2724
2725 <h2>Arguments</h2>
2726 <p>None</p>
2727
2728 <h2>Skintypes</h2>
2729
2730 <p>
2731 imagepopup
2732 </p>
2733
2734 <h2>Examples</h2>
2735
2736 <pre>
2737 &lt;%imagetext%&gt;
2738 </pre>
2739
2740 </div>
2741
2742
2743
2744 <div class="page">
2745 <a name="skinvar-image"></a>
2746 <h1>Skinvar: image</h1>
2747
2748 <p>
2749 Inserts the selected image (for popup images)
2750 </p>
2751
2752 <h2>Arguments</h2>
2753
2754 <p>Optional</p>
2755 <ul>
2756         <li>
2757                 <em>type</em>
2758                 <table><tr>
2759                         <td><strong>imgtag</strong> (default)</td>
2760                         <td>Full XHTML <code>&lt;img ... /&gt;</code> tag</td>
2761                 </tr><tr>
2762                         <td><strong>url</strong></td>
2763                         <td>Image file URL</td>
2764                 </tr><tr>
2765                         <td><strong>width</strong></td>
2766                         <td>image width</td>
2767                 </tr><tr>
2768                         <td><strong>height</strong></td>
2769                         <td>image height</td>
2770                 </tr><tr>
2771                         <td><strong>caption</strong></td>
2772                         <td>image caption (text to go with image)</td>
2773                 </tr></table>
2774         </li>
2775 </ul>
2776
2777 <h2>Skintypes</h2>
2778
2779 <p>
2780 imagepopup
2781 </p>
2782
2783 <h2>Examples</h2>
2784
2785 <pre>
2786 &lt;%image%&gt;
2787 </pre>
2788
2789 </div>
2790
2791
2792 <div class="page">
2793 <a name="skinvar-vars"></a>
2794 <h1>Skinvar: vars</h1>
2795
2796 <p class="deprecated">This skinvar is deprecated since Nucleus v2.0. It's a small pain to insert this HTML yourself using the <a href="#skinvar-itemid">itemid skinvar</a></p>
2797
2798 <p>
2799 Inserts a hidden form-input field with the itemid.
2800 </p>
2801
2802 <code>&lt;input type="hidden" name="itemid" value="<strong>1234</strong>" /&gt;</code>
2803
2804 <h2>Arguments</h2>
2805 <p>None</p>
2806
2807 <h2>Skintypes</h2>
2808
2809 <p>
2810 item
2811 </p>
2812
2813
2814 </div>
2815
2816
2817
2818
2819
2820
2821 <div class="page">
2822 <a name="skinvar-sitevar"></a>
2823 <h1>Skinvar: sitevar</h1>
2824
2825 <p>
2826 Includes a site variable
2827 </p>
2828
2829 <h2>Arguments</h2>
2830 <ul>
2831         <li><strong>type</strong>: name of the variable to show:
2832         <ul>
2833                 <li><em>url</em>: URL of the site</li>
2834                 <li><em>name</em>: Name of the site</li>
2835                 <li><em>admin</em>: E-mail address of the administrator</li>
2836         </ul>
2837         </li>
2838 </ul>
2839
2840 <h2>Skintypes</h2>
2841
2842 <p>
2843 all
2844 </p>
2845
2846 <h2>Examples</h2>
2847
2848 <pre>
2849 &lt;%sitevar(name)%&gt;
2850 &lt;%sitevar(url)%&gt;
2851 &lt;a href="mailto:&lt;%sitevar(email)%&gt;"&gt;Admin&lt;/a&gt;
2852 </pre>
2853
2854 </div>
2855
2856
2857
2858
2859
2860
2861 <div class="page">
2862 <a name="skinvar-blogsetting"></a>
2863 <h1>Skinvar: blogsetting</h1>
2864
2865 <p>
2866 Inserts a setting specific to the currently selected blog (usually the default one)
2867 </p>
2868
2869 <h2>Arguments</h2>
2870 <ul>
2871         <li><strong>type</strong>: which setting to add
2872             <ul>
2873                 <li><em>id</em>: ID of the blog</li>
2874                 <li><em>url</em>: URL of the blog</li>
2875                 <li><em>name</em>: Name of the blog (long name)</li>
2876                 <li><em>desc</em>: Description of the blog</li>
2877                 <li><em>short</em>: Short name of the blog</li>
2878             </ul>
2879         </li>
2880 </ul>
2881
2882 <h2>Skintypes</h2>
2883
2884 <p>
2885 index, archive, archivelist, search, item, member
2886 </p>
2887
2888 <h2>Examples</h2>
2889
2890 <pre>
2891 &lt;%blogsetting(name)%&gt;
2892 &lt;%blogsetting(id)%&gt;
2893 &lt;%blogsetting(desc)%&gt;
2894 &lt;a href="&lt;%blogsetting(url)%&gt;"&gt;...&lt;/a&gt;
2895 </pre>
2896
2897 </div>
2898
2899
2900
2901
2902
2903
2904 <div class="page">
2905 <a name="skinvar-member"></a>
2906 <h1>Skinvar: member</h1>
2907
2908 <p>
2909 Inserts some info about on the currently logged in member. On member detail pages, extra options are available to show the same information for the requested member.
2910 </p>
2911
2912 <p>When the visitor is not logged in, the <em>your...</em> parameters will insert nothing</p>
2913
2914 <h2>Arguments</h2>
2915 <ul>
2916         <li><strong>type</strong>: which information to show.
2917                 <p>Information on the logged in member:</p>
2918             <ul>
2919                 <li><em>yourname</em>: nickname of the member (the one used to login)</li>
2920                 <li><em>yourrealname</em>: full name of the member</li>
2921                 <li><em>yournotes</em>: extra information a member can set for him/herself</li>
2922                 <li><em>yoururl</em>: URL of the members website</li>
2923                 <li><em>youremail</em>: email address </li>
2924                 <li><em>yourid</em>: ID</li>
2925                 <li><em>yourprofileurl</em>: URL of the members profile (member details) page</li>
2926             </ul>
2927             <p>Information on the requested member (only available on member detail pages):</p>
2928             <ul>
2929                 <li><em>name</em>: nickname of the member (the one used to login)</li>
2930                 <li><em>realname</em>: full name of the member</li>
2931                 <li><em>notes</em>: extra information a member can set for him/herself</li>
2932                 <li><em>url</em>: URL of the members website</li>
2933                 <li><em>email</em>: email address of the member</li>
2934                 <li><em>id</em>: ID</li>
2935             </ul>
2936         </li>
2937 </ul>
2938
2939 <h2>Skintypes</h2>
2940
2941 <p>
2942 all
2943 </p>
2944
2945 <h2>Examples</h2>
2946
2947 <pre><code>
2948 &lt;%if(loggedin)%&gt;
2949 you are &lt;%member(yourrealname)%&gt;
2950 &lt;%endif%&gt;
2951 </code></pre>
2952
2953 </div>
2954
2955
2956
2957
2958
2959
2960 <div class="page">
2961 <a name="skinvar-preview"></a>
2962 <h1>Skinvar: preview</h1>
2963
2964 <p>
2965 Inserts an item-preview into the page, using a given template (to be used in conjunction with <a href="#skinvar-additemform">additemform</a>)
2966 </p>
2967
2968 <h2>Arguments</h2>
2969 <ul>
2970         <li><strong>template</strong>: name of the template to be used</li>
2971 </ul>
2972
2973 <h2>Skintypes</h2>
2974
2975 <p>
2976 index
2977 </p>
2978
2979 <h2>Examples</h2>
2980
2981 <pre>
2982 &lt;%preview(mytemplate)%&gt;
2983 </pre>
2984
2985 </div>
2986
2987
2988
2989 <div class="page">
2990 <a name="skinvar-adminurl"></a>
2991 <h1>Skinvar: adminurl</h1>
2992
2993 <p>Inserts the full URL to the Admin Area</p>
2994
2995 <h2>Arguments</h2>
2996 <p>None</p>
2997
2998 <h2>Skintypes</h2>
2999
3000 <p>
3001 all
3002 </p>
3003
3004 <h2>Examples</h2>
3005
3006 <pre>
3007 &lt;a href="&lt;%adminurl%&gt;"&gt;Admin Area&lt;/a&gt;
3008 </pre>
3009
3010 </div>
3011
3012
3013
3014
3015 <div class="page">
3016 <a name="skinvar-additemform"></a>
3017 <h1>Skinvar: additemform</h1>
3018
3019 <p>
3020 Shows an add-item form for the currently selected blog (usually the default one). Mostly used in conjunction with <a href="#skinvar-preview">preview</a>
3021 </p>
3022
3023 <h2>Arguments</h2>
3024 <p>None</p>
3025
3026 <h2>Skintypes</h2>
3027
3028 <p>
3029 index
3030 </p>
3031
3032 <h2>Examples</h2>
3033
3034 <pre>
3035 &lt;%additemform%&gt;
3036 </pre>
3037
3038 </div>
3039
3040
3041
3042
3043
3044
3045 <div class="page">
3046 <a name="skinvar-include"></a>
3047 <h1>Skin/Templatevar: include</h1>
3048
3049 <p>
3050 Includes a textfile into the output. The contents of the file is not parsed in any way, so you cannot use skin/templatevars or use PHP code (see <a href="#skinvar-parsedinclude">parsedinclude</a> and <a href="#skinvar-phpinclude">phpinclude</a> if you want parsed includes)
3051 </p>
3052
3053 <h2>Arguments</h2>
3054 <ul>
3055         <li><strong>filename</strong>: the name of the file to be included (either relative to the position of index.php, or absolute). Note that an URL can also be used here.</li>
3056 </ul>
3057
3058 <h2>Notes</h2>
3059 <ul>
3060         <li>This tag is affected by the <a href="#parser-properties">parser settings <code>IncludeMode</code> and <code>IncludePrefix</code></a></li>
3061 </ul>
3062
3063 <h2>Skintypes</h2>
3064
3065 <p>
3066 all
3067 </p>
3068
3069 <h2>Examples</h2>
3070
3071 <pre>
3072 &lt;%include(filename.txt)%&gt;
3073 &lt;%include(/home/user/myself/filename.txt)%&gt;
3074 &lt;%include(http://mydomain.com/filename.html)%&gt;
3075 </pre>
3076
3077 </div>
3078
3079
3080
3081
3082
3083
3084
3085 <div class="page">
3086 <a name="skinvar-phpinclude"></a>
3087 <h1>Skin/Templatevar: phpinclude</h1>
3088
3089 <p>
3090 Includes a php-file into the output. The contents of the file is parsed by the PHP parser, so be careful. Nucleus skin/templatevars are <b>not</b> parsed! (see <a href="#skinvar-parsedinclude">parsedinclude</a> and <a href="#skinvar-include">include</a> for other include options).
3091 </p>
3092
3093 <h2>Arguments</h2>
3094 <ul>
3095         <li><strong>filename</strong>: the name of the file to be included (either relative to the position of index.php, or absolute)</li>
3096 </ul>
3097
3098 <h2>Notes</h2>
3099 <ul>
3100         <li>This tag is affected by the <a href="#parser-properties">parser settings <code>IncludeMode</code> and <code>IncludePrefix</code></a></li>
3101         <li>Your file will be included using the standard php <code>include()</code> command. This command will be called from <em>inside</em> a class method, so <strong>you'll need to declare which global variables you want to access</strong> yourself. Most of the <a href="#skinvar-phpinclude-vars">standard variables</a> are automatically declared global by Nucleus itself.</li>
3102 </ul>
3103
3104 <h2>Skintypes</h2>
3105
3106 <p>
3107 all
3108 </p>
3109
3110 <h2>Examples</h2>
3111
3112 <pre><code>&lt;%phpinclude(filename.php)%&gt;
3113 &lt;%phpinclude(/home/user/myself/filename.php)%&gt;</code></pre>
3114
3115 </div>
3116
3117
3118
3119 <div class="page">
3120 <a name="skinvar-phpinclude-vars"></a>
3121 <h1>Skin/Templatevar: phpinclude : vars</h1>
3122
3123 <p>
3124 The following global variables are accessible from within files included by the <a href="#skinvar-phpinclude">phpinclude</a> skin/templatevar:
3125 </p>
3126
3127 <p>
3128 $GATEWAY_INTERFACE, $SERVER_NAME, $SERVER_SOFTWARE
3129 <br />$SERVER_PROTOCOL, $REQUEST_METHOD, $QUERY_STRING
3130 <br />$DOCUMENT_ROOT, $HTTP_ACCEPT, $HTTP_ACCEPT_CHARSET
3131 <br />$HTTP_ACCEPT_ENCODING, $HTTP_ACCEPT_LANGUAGE
3132 <br />$HTTP_CONNECTION, $HTTP_HOST, $HTTP_REFERER
3133 <br />$HTTP_USER_AGENT, $REMOTE_ADDR, $REMOTE_PORT
3134 <br />$SCRIPT_FILENAME, $SERVER_ADMIN, $SERVER_PORT
3135 <br />$SERVER_SIGNATURE, $PATH_TRANSLATED, $SCRIPT_NAME
3136 <br />$REQUEST_URI, $argv, $argc, $PHP_SELF
3137 <br />$HTTP_COOKIE_VARS, $HTTP_GET_VARS, $HTTP_POST_VARS
3138 <br />$HTTP_POST_FILES, $HTTP_ENV_VARS, $HTTP_SERVER_VARS
3139 <br />$HTTP_SESSION_VARS, $PATH_INFO, $HTTPS
3140 <br />$HTTP_RAW_POST_DATA, $HTTP_X_FORWARDED_FOR
3141 </p>
3142
3143 <p>
3144 For others variables, you'll need to add '<tt>global $varname;</tt>' explicitly in your code
3145 </p>
3146
3147 </div>
3148
3149
3150
3151 <div class="page">
3152 <a name="skinvar-parsedinclude"></a>
3153 <h1>Skin/Templatevar: parsedinclude</h1>
3154
3155 <p>
3156 Includes a file into the output. The contents of the file is parsed by the Nucleus skin/template parser, so you can use skin/templatevars. (see <a href="#skinvar-phpinclude">phpinclude</a> and <a href="#skinvar-include">include</a> for other include options)
3157 </p>
3158
3159 <h2>Arguments</h2>
3160 <ul>
3161         <li><strong>filename</strong>: the name of the file to be included (either relative to the position of index.php, or absolute)</li>
3162 </ul>
3163
3164 <h2>Notes</h2>
3165 <ul>
3166         <li>This tag is affected by the <a href="#parser-properties">parser settings <code>IncludeMode</code> and <code>IncludePrefix</code></a></li>
3167         <li>From inside the included file, you can call <code>&lt;%parsedinclude(filename)%&gt;</code> again. To avoid endless loops, the maximum depth level you can go is 3.</li>
3168 </ul>
3169
3170
3171 <h2>Skintypes</h2>
3172
3173 <p>
3174 all
3175 </p>
3176
3177 <h2>Examples</h2>
3178
3179 <pre>
3180 &lt;%parsedinclude(filename.txt)%&gt;
3181 &lt;%parsedinclude(/home/user/myself/filename.txt)%&gt;
3182 </pre>
3183
3184 </div>
3185
3186
3187
3188
3189
3190
3191 <div class="page">
3192 <a name="skinvar-plugin"></a>
3193 <h1>Skin/Templatevar: plugin</h1>
3194
3195 <p>
3196 Calls a plugin
3197 </p>
3198
3199 <h2>Arguments</h2>
3200 <ul>
3201         <li>
3202                 <p>Required</p>
3203                 <table><tr>
3204                         <th>Name</th>
3205                         <th>Contents</th>
3206                 </tr><tr>
3207                         <td>PlugName</td>
3208                         <td>Name of the plugin that should be called. <strong>This name is case sensitive!</strong></td>
3209                 </tr></table>
3210         </li>
3211         <li><p>Extra parameters can be added, depending on the plugin</p></li>
3212 </ul>
3213
3214 <h2>Notes</h2>
3215 <ul>
3216         <li>When a plugin name does not conflict with existing variables, it can be called directly using <code>&lt;%PluginName(parameters)%&gt;</code></li>
3217 </ul>
3218
3219 <h2>Skintypes</h2>
3220
3221 <p>
3222 all
3223 </p>
3224
3225 <h2>Examples</h2>
3226
3227 <pre>
3228 &lt;%plugin(Calendar)%&gt;
3229 &lt;%plugin(LastComments,myweblog)%&gt;
3230 &lt;%LastComments(myweblog)%&gt;
3231 </pre>
3232
3233 </div>
3234
3235
3236
3237
3238 <div class="page">
3239 <a name="skinvar-loginform"></a>
3240 <h1>Skinvar: loginform</h1>
3241
3242 <p>Adds a loginform, or shows a "You are karma (Log out)" message</p>
3243
3244 <h2>Arguments</h2>
3245 <p>
3246         None
3247 </p>
3248
3249 <h2>Skintypes</h2>
3250
3251 <p>all</p>
3252
3253 <h2>Examples</h2>
3254
3255 <pre><code>&lt;%loginform%&gt;</code></pre>
3256
3257 </div>
3258
3259
3260
3261
3262 <div class="page">
3263 <a name="skinvar-commentform"></a>
3264 <h1>Skinvar: commentform</h1>
3265
3266 <p>
3267 Adds a commentform to an item page.
3268 </p>
3269
3270 <h2>Arguments</h2>
3271 <p>
3272         Optional:
3273         <ul>
3274                 <li><strong><em>destinationurl</em></strong>: sets the URL to where Nucleus needs to redirect after adding the comment (by default, Nucleus redirects to the item detail page for the item)</li>
3275         </ul>
3276 </p>
3277
3278 <h2>Skintypes</h2>
3279
3280 <p>
3281 item
3282 </p>
3283
3284 <h2>Examples</h2>
3285
3286 <pre>
3287 &lt;%commentform%&gt;
3288 &lt;%commentform(http://host/thanks.html)%&gt;
3289 </pre>
3290
3291 </div>
3292
3293
3294
3295 <div class="page">
3296 <a name="skinvar-set"></a>
3297 <h1>Skin/Templatevar: set</h1>
3298
3299 <p>
3300 Sets a <a href="#parser-properties" title="A list of available parser properties">parser property</a>.
3301 </p>
3302
3303 <h2>Arguments</h2>
3304 <p>
3305         <ul>
3306                 <li><strong>property</strong>: name of the property</li>
3307                 <li><strong>value</strong>: value of the property</li>
3308         </ul>
3309 </p>
3310
3311 <h2>Skintypes</h2>
3312
3313 <p>
3314 all
3315 </p>
3316
3317 <h2>Examples</h2>
3318
3319 <pre>
3320 &lt;%set(IncludeMode,skindir)%&gt;
3321 &lt;%set(IncludePrefix,somedir/)%&gt;
3322 </pre>
3323
3324 </div>
3325
3326
3327 <div class="page">
3328 <a name="skinvar-skinfile"></a>
3329 <h1>Skin/Templatevar: skinfile</h1>
3330
3331 <p>Used by imported skins to put a link relative to the skins-URL. Use it in conjunction with the <tt>IncludePrefix</tt> <a href="#parser-properties">parser property</a> to get the best results</p>
3332
3333 <h2>Arguments</h2>
3334 <p>
3335         <ul>
3336                 <li><strong>filename</strong>: filename of which you want the correct URL</li>
3337         </ul>
3338 </p>
3339
3340 <h2>Skintypes</h2>
3341
3342 <p>
3343 all
3344 </p>
3345
3346 <h2>Examples</h2>
3347
3348 <pre>
3349 &lt;%skinfile(mystyle.css)%&gt;
3350 </pre>
3351
3352 </div>
3353
3354
3355
3356 <div class="page">
3357 <a name="skinvar-skinname"></a>
3358 <h1>Skin/Templatevar: skinname</h1>
3359
3360 <p>Inserts the name of the skin that's currently being used.</p>
3361
3362 <h2>Arguments</h2>
3363 <p>
3364 None
3365 </p>
3366
3367 <h2>Skintypes</h2>
3368
3369 <p>
3370 all
3371 </p>
3372
3373 <h2>Examples</h2>
3374
3375 <pre>
3376 &lt;%skinname%&gt;
3377 </pre>
3378
3379 </div>
3380
3381
3382
3383 <div class="page">
3384 <a name="skinvar-if"></a>
3385 <a name="skinvar-else"></a>
3386 <a name="skinvar-endif"></a>
3387 <a name="skinvar-ifnot"></a>
3388 <a name="skinvar-elseifnot"></a>
3389 <a name="skinvar-elseif"></a>
3390 <h1>Skinvars: if/ifnot/else/elseif/elseifnot/endif</h1>
3391
3392 <p>Inserts a content block only when certain conditions are fullfilled. Can be used in the item and comment fields of templates as of 3.60, as well as in Item bodies (same as item template fields).</p>
3393
3394 <h2>Arguments</h2>
3395 <p>Only the <code>if</code>, <code>ifnot</code>, <code>elseif</code>, and <code>elseifnot</code> skinvars have options</p>
3396
3397
3398 <ul>
3399         <li><strong>type</strong>: type of condition</li>
3400         <li><em>name</em>: name of option (optional)</li>
3401         <li><em>value</em>: value to be checked (optional)</li>
3402 </ul>
3403
3404 <h2>Condition types</h2>
3405
3406 <ul>
3407         <li><strong>category</strong>: condition is fullfilled when a category is selected
3408                 <ul>
3409                         <li><strong>category</strong>: checks if any category is selected</li>
3410                         <li><strong>category,catname,<em>CategoryName</em></strong>: checks if the current category is <em>CategoryName</em></li>
3411                         <li><strong>category,catid,<em>CategoryId</em></strong>: checks if the current category is <em>CategoryId</em></li>
3412                 </ul>
3413         </li>
3414         <li><strong>blogsetting</strong>: checks if the value <em>name</em> blogsetting equals <em>value</em> (the name is the column name from the nucleus_blog sql table)</li>
3415         <li><strong>loggedin</strong>: condition is fullfilled if visiting member is currently logged in</li>
3416         <li><strong>onteam</strong>: condition is fullfilled if visiting member is currently logged in &amp; member of the blog team of the current blog (or the blog given in the <em>name</em> parameter)</li>
3417         <li><strong>admin</strong>: condition is fullfilled if visiting member is currently logged in &amp; member with blog admin rights to the current blog (or the blog given in the <em>name</em> parameter)</li>
3418         <li><strong>nextitem</strong>: true if there is a more recent item available for the current weblog (item skintype)</li>
3419         <li><strong>previtem</strong>: true if there is an older item available for the current weblog (item skintype)</li>
3420         <li><strong>archivenextexists</strong>: true if there is a more recent archive available for the current weblog (archive skintype)</li>
3421         <li><strong>archiveprevexists</strong>: true if there is an older archive available for the current weblog (archive skintype)</li>
3422         <li><strong>skintype</strong>: checks if the current skin type is equal to <em>value</em> (index, search, item, archive, archivelist, ...). For special skin parts, the skin type is the name of the special skin part.</li>
3423         <li><strong>hasplugin</strong>: checks if the a plugin is installed, or if a plugin option has been set to a specific value
3424                 <ul>
3425                         <li><strong>hasplugin,<em>PluginName</em></strong>: checks if plugin is available</li>
3426                         <li><strong>hasplugin,<em>PluginName</em>,<em>OptionName</em></strong>: checks if a plugin option is not set to 'no'</li>
3427                         <li><strong>hasplugin,<em>PluginName</em>,<em>OptionName=value</em></strong>: checks if a plugin option is set to a specific value</li>
3428                 </ul>
3429         </li>
3430         <li><strong><em>PluginName</em></strong>: checks if the a plugin is installed, and executes doIf() method of plugin to check condition of name/value pair. This allows plugins to do conditional checks in a skin. See documentation for your plugin to determine what conditionals it can perform and the syntax required for its use.
3431                 <ul>
3432                         <li><strong><em>PluginName</em>,<em>AttributeName</em></strong>: uses <em>PluginName</em> plugin to check if <em>AttributeName</em> has empty value</li>
3433                         <li><strong><em>PluginName</em>,<em>AttributeName</em>,<em>AttributeValue</em></strong>: uses <em>PluginName</em> plugin to check if <em>AttributeName</em> is <em>AttributeValue</em></li>
3434                 </ul>
3435         </li>
3436         <li><strong>itemcategory</strong>: checks conditions related to the category of the current item (item and comment template fields only)
3437                 <ul>
3438                         <li><strong>itemcategory</strong>: checks if current item has a category (always true)</li>
3439                         <li><strong>itemcategory,catname,<em>CategoryName</em></strong>: checks if the category of the current item is <em>CategoryName</em></li>
3440                         <li><strong>itemcategory,catid,<em>CategoryId</em></strong>: checks if the id of the item's category is <em>CategoryId</em></li>
3441                 </ul>
3442         </li>
3443         <li><strong>itemblogsetting</strong>: checks if the value <em>name</em> blogsetting of the current item's blog equals <em>value</em> (the name is the column name from the nucleus_blog sql table) (item and comment template fields only)</li>
3444         <li><strong>author</strong>: checks conditions related to the author of the current item (item and comment template fields only)
3445                 <ul>
3446                         <li><strong>author</strong>: checks if the current visitor is the author of the item</li>
3447                         <li><strong>author,isadmin</strong>: checks if the author of the item is an admin of the blog</li>
3448                         <li><strong>author,name,<em>AuthorName</em></strong>: checks if the user name of the item's author is <em>AuthorName</em></li>
3449                         <li><strong>author,isauthor</strong>: checks if the comment author is also the author of the item. (comment template fields only)</li>
3450                         <li><strong>author,isonteam</strong>: checks if the comment author is a member of blog team of current item. (comment template fields only)</li>
3451                 </ul>
3452         </li>
3453         
3454 </ul>
3455
3456 <h2>Skintypes</h2>
3457
3458 <p>
3459 all
3460 </p>
3461
3462 <h2>Examples</h2>
3463
3464 <pre>
3465 &lt;%if(loggedin)%&gt;
3466 Welcome back!
3467 &lt;%else%&gt;
3468 Welcom guest!
3469 &lt;%endif%&gt;
3470 </pre>
3471
3472 <pre>
3473 &lt;%if(category,catname,Off Topic)%&gt;
3474 Welcome to the 'Off Topic' category.
3475 &lt;%endif%&gt;
3476 </pre>
3477
3478 <pre>
3479 &lt;%ifnot(loggedin)%&gt;
3480 Access Denied!
3481 &lt;%elseif(admin)%&gt;
3482 Welcome O Mighty Admin of this Blog!
3483 &lt;%elseif(onteam)%&gt;
3484 Welcome O Worthy Blog Team Member!
3485 &lt;%else%&gt;
3486 Welcome O Humble Site Member!
3487 &lt;%endif%&gt;
3488 </pre>
3489
3490 <h2>Notes</h2>
3491
3492 <p>If you want something to be displayed only if a condition is not fullfilled, you can use a construct like this:</p>
3493
3494 <pre>
3495 &lt;%ifnot(skintype,error)%&gt;
3496 &lt;%blogsetting(name)%&gt;
3497 &lt;%endif%&gt;
3498 </pre>
3499
3500 </div>
3501
3502
3503
3504
3505
3506
3507 <div class="page">
3508 <a name="skinvar-membermailform"></a>
3509 <h1>Skinvar: membermailform</h1>
3510
3511 <p>
3512 Shows a form through which a logged-in member can send a message to the member which details are being shown (on member detail pages)
3513 </p>
3514
3515 <h2>Arguments</h2>
3516 <p>
3517         Optional:
3518         <ul>
3519                 <li><strong><em>rows</em></strong>: Amount of rows in the box (default = 10)</li>
3520                 <li><strong><em>cols</em></strong>: Amount of columns in the box (default = 40)</li>
3521                 <li><strong><em>destination url</em></strong>: URL to where Nucleus needs to redirection after sending the message</li>
3522         </ul>
3523 </p>
3524
3525 <h2>Skintypes</h2>
3526
3527 <p>
3528 member
3529 </p>
3530
3531 <h2>Examples</h2>
3532
3533 <pre>
3534 &lt;%membermailform%&gt;
3535 </pre>
3536
3537 </div>
3538
3539
3540
3541
3542
3543
3544 <div class="page">
3545 <a name="skinvar-searchform"></a>
3546 <h1>Skinvar: searchform</h1>
3547
3548 <p>
3549 Shows a search form for the current blog.
3550 </p>
3551
3552 <h2>Arguments</h2>
3553 <p>
3554         Optional:
3555         <ul>
3556                 <li><strong><em>blogname</em></strong>: The name of the blog for which you want a search form (short blog name)</li>
3557         </ul>
3558 </p>
3559
3560 <h2>Skintypes</h2>
3561
3562 <p>
3563 index, archive, archivelist, search, item
3564 </p>
3565
3566 <h2>Examples</h2>
3567
3568 <pre>
3569 &lt;%searchform%&gt;
3570 &lt;%searchform(otherweblog)%&gt;
3571 </pre>
3572
3573 </div>
3574
3575
3576
3577
3578
3579
3580 <div class="page">
3581 <a name="skinvar-nucleusbutton"></a>
3582 <h1>Skinvar: nucleusbutton</h1>
3583
3584 <p>Inserts a nucleus button, with link to the <a href="http://nucleuscms.org/" class="out" onclick="window.open(this.href);return false;" title="Nucleus website (opens in new window)">Nucleus website</a>.</p>
3585
3586 <h2>Arguments</h2>
3587 <p>
3588         Optional:
3589         <ul>
3590                 <li><strong><em>imgurl</em></strong>: URL of the image (if you don't want the default)</li>
3591                 <li><strong><em>imgwidth</em></strong>: width of the image (in pixels)</li>
3592                 <li><strong><em>imgheight</em></strong>: height of the image (in pixels)</li>
3593         </ul>
3594 </p>
3595
3596 <h2>Notes</h2>
3597 <ul>
3598         <li>This tag is affected by the <a href="#parser-properties">parser settings <code>IncludeMode</code> and <code>IncludePrefix</code></a></li>
3599 </ul>
3600
3601 <h2>Skintypes</h2>
3602
3603 <p>
3604 all
3605 </p>
3606
3607 <h2>Examples</h2>
3608
3609 <pre>
3610 &lt;%nucleusbutton%&gt;
3611 &lt;%nucleusbutton(nucleus/nucleus.gif,46,43)%&gt;
3612 </pre>
3613
3614 </div>
3615
3616
3617
3618
3619 <div class="page">
3620 <a name="skinvar-self"></a>
3621 <h1>Skinvar: self</h1>
3622
3623 <p>
3624 Inserts the filename of the page currently being displayed (index.php or whatever you changed it to)
3625 </p>
3626
3627 <h2>Arguments</h2>
3628 <p>None</p>
3629
3630 <h2>Skintypes</h2>
3631
3632 <p>
3633 all
3634 </p>
3635
3636 <h2>Examples</h2>
3637
3638 <pre>
3639 &lt;%self%&gt;
3640 </pre>
3641
3642 </div>
3643
3644
3645 <div class="page">
3646 <a name="skinvar-addlink"></a>
3647 <h1>Skinvar: addlink</h1>
3648
3649 <p>
3650 Inserts a URL to the new item bookmarklet form. Only shown for members who have rights on the current blog.
3651 </p>
3652
3653 <h2>Arguments</h2>
3654 <p>None</p>
3655
3656 <h2>Skintypes</h2>
3657
3658 <p>
3659 all
3660 </p>
3661
3662 <h2>Examples</h2>
3663
3664 <pre>
3665 &lt;dd&gt;&lt;a href="&lt;%addlink%&gt;" onclick="&lt;%addpopupcode%&gt;" title="Add an item to your blog"&gt;Add an item&lt;/a&gt;&lt;/dd&gt;
3666 </pre>
3667
3668 </div>
3669
3670 <div class="page">
3671 <a name="skinvar-addpopupcode"></a>
3672 <h1>Skinvar: addpopupcode</h1>
3673
3674 <p>
3675 Inserts javascript code to open a bookmarklet in an popup window. Use with <code>&lt;%addlink%&gt;</code>
3676 </p>
3677
3678 <h2>Arguments</h2>
3679 <p>None</p>
3680
3681 <h2>Skintypes</h2>
3682
3683 <p>
3684 all
3685 </p>
3686
3687 <h2>Examples</h2>
3688
3689 <pre>
3690 &lt;dd&gt;&lt;a href="&lt;%addlink%&gt;" onclick="&lt;%addpopupcode%&gt;" title="Add an item to your blog"&gt;Add an item&lt;/a&gt;&lt;/dd&gt;
3691 </pre>
3692
3693 </div>
3694
3695
3696 <div class="page">
3697 <a name="skinvar-sticky"></a>
3698 <h1>Skinvar: sticky</h1>
3699
3700 <p>
3701 Inserts the indicated item into the skin.
3702 </p>
3703
3704 <h2>Arguments</h2>
3705 <p>
3706         Required:
3707         <ul>
3708                 <li><strong>itemid</strong>: id of the item to show</li>
3709                 <li><strong>template</strong>: name of the template to use</li>
3710         </ul>
3711 </p>
3712
3713 <h2>Skintypes</h2>
3714
3715 <p>
3716 all
3717 </p>
3718
3719 <h2>Examples</h2>
3720
3721 <pre>
3722 &lt;%sticky(11,default/index)%&gt;
3723 </pre>
3724
3725 </div>
3726
3727
3728
3729 <div class="page">
3730 <a name="templatevars-overview"></a>
3731 <h1>Template variables: Overview</h1>
3732
3733 <h2>What?</h2>
3734
3735 <p>Template variables largely work in exact the same way as skin variables, with the only difference that they are being used inside templates. The variables are called using <code>&lt;%<i>varname</i>%&gt;</code>, and include some text depending on the variable function. Some variables also have extra optional parameters.</p>
3736
3737 <h2>Available variables</h2>
3738
3739 <p>
3740 These template variables be used in the following template-parts: <tt>item header, item body, item footer, date header, date footer, morelink, editlink</tt> (The variables <tt>image</tt>, <tt>popup</tt> and <tt>media</tt> can also be used inside weblog items.)
3741 </p>
3742
3743 <ul>
3744         <li><a href="#templatevars-basic">Basic variables...</a> (title, body, ...)</li>
3745         <li><a href="#templatevars-advanced">Advanced variables...</a> (include, plugin, ...)</li>
3746 </ul>
3747
3748 <p>Comments-related template-parts (<tt>comments header, comments body, comments footer, one comment, two comments, comments read more, no comments, too much comments</tt>) have a different set of available variables:</p>
3749
3750 <ul>
3751         <li><a href="#templatevars-comments">Comments-related variables...</a></li>
3752 </ul>
3753
3754
3755 </div>
3756
3757
3758
3759 <div class="page">
3760 <a name="templatevars-basic"></a>
3761 <h1>Template variables: Basic variables</h1>
3762
3763 <p>All these variables concern the item that's currently being parsed.</p>
3764
3765 <table><tr>
3766         <th>Name</th>
3767         <th>Description</th>
3768 </tr><tr>
3769         <td>title</td>
3770         <td>item title</td>
3771 </tr><tr>
3772         <td>body</td>
3773         <td>body text</td>
3774 </tr><tr>
3775         <td>more</td>
3776         <td>extended text</td>
3777 </tr><tr>
3778         <td>category</td>
3779         <td>name of the category</td>
3780 </tr><tr>
3781         <td>categorylink</td>
3782         <td>raw link to the category</td>
3783 </tr><tr>
3784         <td><a href="#templatevar-karma">karma</a></td>
3785         <td>karma score</td>
3786 </tr><tr>
3787         <td>authorlink</td>
3788         <td>raw link to the author</td>
3789 </tr><tr>
3790         <td>itemlink</td>
3791         <td>raw permanent link for the item</td>
3792 </tr><tr>
3793         <td><a href="#templatevar-author">author</a></td>
3794         <td>name of the author</td>
3795 </tr><tr>
3796         <td><a href="#templatevar-smartbody">smartbody</a></td>
3797         <td>either the body text or the extended text</td>
3798 </tr><tr>
3799         <td><a href="#templatevar-morelink">morelink</a></td>
3800         <td>'read more'-link</td>
3801 </tr><tr>
3802         <td><a href="#templatevar-date">date</a></td>
3803         <td>Formatted date</td>
3804 </tr><tr>
3805         <td><a href="#templatevar-time">time</a></td>
3806         <td>Formatted time</td>
3807 </tr><tr>
3808         <td>daylink</td>
3809         <td>raw link to the daily archive</td>
3810 </tr><tr>
3811         <td><a href="#templatevar-comments">comments</a></td>
3812         <td>comments block or commentcount</td>
3813 </tr><tr>
3814         <td>itemid</td>
3815         <td>ID of the item</td>
3816 </tr><tr>
3817         <td>blogurl</td>
3818         <td>URL of the blog</td>
3819 </tr></table>
3820
3821 <p><a href="#templatevars-overview">Template variables overview...</a></p>
3822
3823
3824 </div>
3825
3826
3827
3828 <div class="page">
3829 <a name="templatevars-advanced"></a>
3830 <h1>Template variables: Advanced variables</h1>
3831
3832
3833 <table><tr>
3834         <th>Name</th>
3835         <th>Description</th>
3836 </tr><tr>
3837         <td>authorid</td>
3838         <td>ID of the current items author</td>
3839 </tr><tr>
3840         <td>blogid</td>
3841         <td>ID of the blog</td>
3842 </tr><tr>
3843         <td>catid</td>
3844         <td>ID of the category for the current item</td>
3845 </tr><tr>
3846         <td>query</td>
3847         <td>search query (if there is one)</td>
3848 </tr><tr>
3849         <td><a href="#templatevar-syndicate_title">syndicate_title</a></td>
3850         <td>Syndicated title</td>
3851 </tr><tr>
3852         <td><a href="#templatevar-syndicate_description">syndicate_description</a></td>
3853         <td>Syndicated body text</td>
3854 </tr><tr>
3855         <td>karmaposlink</td>
3856         <td>raw vote link</td>
3857 </tr><tr>
3858         <td>karmaneglink</td>
3859         <td>raw vote link</td>
3860 </tr><tr>
3861         <td>new</td>
3862         <td>'New Item!'-text</td>
3863 </tr><tr>
3864         <td><a href="#skinvar-include">include</a></td>
3865         <td>includes a file, whithout parsing</td>
3866 </tr><tr>
3867         <td><a href="#skinvar-parsedinclude">parsedinclude</a></td>
3868         <td>includes a file, parsing it</td>
3869 </tr><tr>
3870         <td><a href="#skinvar-phpinclude">phpinclude</a></td>
3871         <td>includes a file, parsing by PHP</td>
3872 </tr><tr>
3873         <td><a href="#skinvar-if">if-ifnot-else-elseif-elseifnot-endif</a></td>
3874         <td>performs condition statements in templates (3.60)</td>
3875 </tr><tr>
3876         <td><a href="#skinvar-plugin">plugin</a></td>
3877         <td>executes a plugin</td>
3878 </tr><tr>
3879         <td><a href="#templatevar-edit">edit</a></td>
3880         <td>inserts an 'edit this item' link</td>
3881 </tr><tr>
3882         <td><a href="#templatevar-editlink">editlink</a></td>
3883         <td>raw 'edit item' link (links to bookmarklet)</td>
3884 </tr><tr>
3885         <td><a href="#templatevar-editpopupcode">editpopupcode</a></td>
3886         <td>javascript code to open a popup window for editlink</td>
3887 </tr><tr>
3888         <td><a href="#skinvar-skinfile">skinfile</a></td>
3889         <td>includes the correct URL for a file belonging to an imported skin</td>
3890 </tr><tr>
3891         <td><a href="#skinvar-set">set</a></td>
3892         <td>sets a parser property</td>
3893 </tr><tr>
3894         <td><a href="#templatevar-image">image</a></td>
3895         <td>inline image from media library</td>
3896 </tr><tr>
3897         <td><a href="#templatevar-popup">popup</a></td>
3898         <td>popup image from media dir</td>
3899 </tr><tr>
3900         <td><a href="#templatevar-media">media</a></td>
3901         <td>other media object from media dir</td>
3902 </tr><tr>
3903         <td>relevance</td>
3904         <td>Includes the 'search hit relevance' in templates that display search results</td>
3905 </tr></table>
3906
3907 <p><a href="#templatevars-overview">Template variables overview...</a></p>
3908
3909 </div>
3910
3911
3912
3913
3914 <div class="page">
3915 <a name="templatevars-comments"></a>
3916 <h1>Template variables: Comments</h1>
3917
3918
3919 <table><tr>
3920         <th>Name</th>
3921         <th>Description</th>
3922 </tr><tr>
3923         <td>body</td>
3924         <td>comment body</td>
3925 </tr><tr>
3926         <td>user</td>
3927         <td>user name</td>
3928 </tr><tr>
3929         <td>userid</td>
3930         <td>users URL or e-mail address</td>
3931 </tr><tr>
3932         <td>userlink</td>
3933         <td>a smart link to either the e-mail or URL for non members, or the member detail page for members. Note: this link already includes the &lt;a href="..."&gt; and &lt;/a&gt; tags ! (when no valid URL or e-mail is available, only the name of the member will be shown)</td>
3934 </tr><tr>
3935         <td>userlinkraw</td>
3936         <td>same as above, but without the &lt;a href.., empty when no valid URL or e-mail available</td>
3937 </tr><tr>
3938         <td>useremail</td>
3939         <td>the e-mail address of the user, empty if the e-mail address was not provided by the user</td>
3940 </tr><tr>
3941         <td>userwebsite</td>
3942         <td>the URL of the users website, empty if the URL was not provided by the user</td>
3943 </tr><tr>
3944         <td>userwebsitelink</td>
3945         <td>a smart link to URL for non members, or the member detail page for members. Note: this link already includes the &lt;a href="..."&gt; and &lt;/a&gt; tags ! (when no valid URL, only the name of the member will be shown)</td>
3946 </tr><tr>
3947         <td>memberid</td>
3948         <td>ID of the member (0 for non-members)</td>
3949 </tr><tr>
3950         <td>commentcount</td>
3951         <td>total amount of comments for the item</td>
3952 </tr><tr>
3953         <td><a href="#templatecommentwords" title="commentword()">commentword</a></td>
3954         <td>1 'comment', 2 'comments'</td>
3955 </tr><tr>
3956         <td><a href="#templatevar-date" title="date([format])">date</a></td>
3957         <td>date on which comment was added</td>
3958 </tr><tr>
3959         <td><a href="#templatevar-time" title="time([format])">time</a></td>
3960         <td>time at which comment was added</td>
3961 </tr><tr>
3962         <td>host</td>
3963         <td>host from where comment was added</td>
3964 </tr><tr>
3965         <td>ip</td>
3966         <td>IP-address from where comment was added</td>
3967 </tr><tr>
3968         <td>commentid</td>
3969         <td>ID of the current comment</td>
3970 </tr><tr>
3971         <td>itemid</td>
3972         <td>ID of the current item</td>
3973 </tr><tr>
3974         <td>itemlink</td>
3975         <td>link to the detailed item page</td>
3976 </tr><tr>
3977         <td><a href="#templateitemtitle" title="itemtitle([maxlength])">itemtitle</a></td>
3978         <td>Title of the current item</td>
3979 </tr><tr>
3980         <td>blogid</td>
3981         <td>ID of the weblog</td>
3982 </tr><tr>
3983         <td>blogurl</td>
3984         <td>URL of the weblog</td>
3985 </tr><tr>
3986         <td><a href="#templatememberextra" title="authtext()">authtext</a></td>
3987         <td>the extra text</a> for members, empty for non members</td>
3988 </tr><tr>
3989         <td>short</td>
3990         <td>a cut off version of the body, which truncates after the first line break. <a href="#templatecommentcontinued">A link is added</a> at the end according to the template</td>
3991 </tr><tr>
3992         <td>excerpt</td>
3993         <td>the body of the comment, cut at 60 characters and appended with '...'</td>
3994 </tr><tr>
3995         <td>timestamp</td>
3996         <td>time at which comment was added</td>
3997 </tr><tr>
3998         <td><a href="#skinvar-if">if-ifnot-else-elseif-elseifnot-endif</a></td>
3999         <td>performs condition statements in templates (3.60)</td>
4000 </tr><tr>
4001         <td><a href="#skinvar-include" title="include(filename)">include</a></td>
4002         <td>includes a file, whithout parsing</td>
4003 </tr><tr>
4004         <td><a href="#skinvar-parsedinclude" title="parsedinclude(filename)">parsedinclude</a></td>
4005         <td>includes a file, parsing it</td>
4006 </tr><tr>
4007         <td><a href="#skinvar-phpinclude" title="phpinclude(filename)">phpinclude</a></td>
4008         <td>includes a file, parsing by PHP</td>
4009 </tr><tr>
4010         <td><a href="#skinvar-plugin" title="plugin(name,[options...])">plugin</a></td>
4011         <td>executes a plugin</td>
4012 </tr><tr>
4013         <td><a href="#skinvar-skinfile" title="skinfile(filename)">skinfile</a></td>
4014         <td>includes the correct URL for a file belonging to an imported skin</td>
4015 </tr><tr>
4016         <td><a href="#skinvar-set" title="set(property,value)">set</a></td>
4017         <td>sets a parser property</td>
4018 </tr></table>
4019
4020
4021
4022 <p><a href="#templatevars-overview">Template variables overview...</a></p>
4023
4024 </div>
4025
4026
4027
4028 <div class="page">
4029 <a name="templatevar-karma"></a>
4030 <h1>Templatevar: karma</h1>
4031
4032 <p>Inserts karma votes data. Karma votes are a method to vote the 'karma' of an item. With a single click, the visitor can vote either positive or negative. The total of all these votes gives an idea of how much an item is liked by the visitors</p>
4033
4034 <h2>Arguments</h2>
4035
4036
4037 <ul>Optional:
4038         <ul>
4039                 <li><strong><em>what</em></strong>: Choose a type of information to be displayed:
4040                         <ul>
4041                                 <li><strong>totalscore</strong>: the total karma vote score (=amount of positive votes minus the amount of negative votes) <em>(default)</em></li>
4042                                 <li><strong>pos</strong>: total number of positive votes</li>
4043                                 <li><strong>neg</strong>: total number of negative votes</li>
4044                                 <li><strong>votes</strong>: total number of votes</li>
4045                                 <li><strong>posp</strong>: percentage of votes that is positive</li>
4046                                 <li><strong>negp</strong>: percentage of votes that is negative</li>
4047                         </ul>
4048                 </li>
4049         </ul>
4050 </ul>
4051
4052 <h2>Examples</h2>
4053 <pre><code>&lt;%karma(posp)%&gt; out of &lt;%karma(votes)%&gt; were positive</code></pre>
4054
4055
4056 </div>
4057
4058
4059
4060 <div class="page">
4061 <a name="templateitemtitle"></a>
4062 <h1>Templatevar: templateitemtitle</h1>
4063
4064 <p>On comments-releated templateparts, inserts the title of the associated item.</p>
4065
4066 <h2>Arguments</h2>
4067
4068 <ul>Optional:
4069         <ul>
4070                 <li><strong><em>maxlength</em></strong>: When provided, makes the itemtitle behave like the <a href="#templatevar-syndicate_title">syndicate_title templatevar</a>.
4071                 </li>
4072         </ul>
4073 </ul>
4074
4075 </div>
4076
4077
4078
4079
4080
4081
4082 <div class="page">
4083 <a name="templatevar-author"></a>
4084 <h1>Templatevar: author</h1>
4085
4086 <p>Inserts the name of the author</p>
4087
4088 <h2>Arguments</h2>
4089 <ul>Optional:
4090         <ul>
4091                 <li><strong><em>what</em></strong>: Choose a type of information to be displayed:
4092                         <ul>
4093                                 <li><strong>name</strong>: display name <em>(default)</em></li>
4094                                 <li><strong>realname</strong>: the real name of the author instead of the display name</li>
4095                                 <li><strong>id</strong>: Nucleus membet ID</li>
4096                                 <li><strong>url</strong>: URL of members website</li>
4097                                 <li><strong>email</strong>: email address of member (use of this one should be avoided)</li>
4098                         </ul>
4099                 </li>
4100         </ul>
4101 </ul>
4102
4103 <h2>Examples</h2>
4104
4105 <pre><code>&lt;%author%&gt;
4106 &lt;%author(realname)%&gt;
4107 &lt;a href="&lt;%author(url)%&gt;"&gt;&lt;%author%&gt;&lt;/a&gt;</code></pre>
4108
4109 </div>
4110
4111
4112
4113
4114 <div class="page">
4115 <a name="templatevar-smartbody"></a>
4116 <h1>Templatevar: smartbody</h1>
4117
4118 <p>
4119 Examines the current item and then decides to show either the body text or the expanded text.
4120 </p>
4121
4122 <p>When the extended part is empty, the body part is chosen. Otherwise the extended part is shown.</p>
4123
4124 <table style="text-align: center;"><tr>
4125         <th>Part</th><th colspan="2">Empty?</th>
4126 </tr><tr>
4127         <td>Body</td><td>No</td><td>No</td>
4128 </tr><tr>
4129         <td>Extended</td><td>Yes</td><td>No</td>
4130 </tr><tr>
4131         <th>smartbody=</th><th>body part</th><th>extended part</th>
4132 </tr></table>
4133
4134 <h2>Example use</h2>
4135
4136 <p>The body text could be interpreted as your full text, and the extended part could be interpreted as an 'introduction' or 'exerpt', which you want to show on the front page.</p>
4137 <p>In the template used on the front page, you would use <tt>&lt;%smartbody%&gt;</tt> to insert an excerpt (if there is one), or the full text (if no excerpt). In the template for detailed items, <tt>&lt;%body%&gt;</tt> can then be used instead of the usual <tt>&lt;%body%&gt;</tt> + <tt>&lt;%more%&gt;</tt>, since <tt>&lt;%body%&gt;</tt> will contain the full item anyway.</p>
4138
4139
4140
4141
4142 </div>
4143
4144
4145 <div class="page">
4146 <a name="templatevar-morelink"></a>
4147 <h1>Templatevar: morelink</h1>
4148
4149 <p>
4150 Inserts a link to the detail page for the item, as defined in the template (<a href="#templatemorelink">link to extended entry</a>). This is empty when there is no extended part.
4151 </p>
4152
4153 <p>Note that the contents of the 'link to extended entry' templatepart is also parsed and can thus also contain <a href="#templatevars-overview">templatevariables</a>.</p>
4154 </div>
4155
4156
4157 <div class="page">
4158 <a name="templatevar-date"></a>
4159 <h1>Templatevar: date</h1>
4160
4161 <p>
4162 Inserts a date using the <a href="#templatedatetime">date format specified in the template</a>. Optionally, a custom date format can be given as a parameter.
4163 </p>
4164
4165 <h2>Arguments</h2>
4166 <ul>Optional
4167         <ul>
4168                 <li><strong><i>format</i></strong>: format to be used to format the date</li>
4169         </ul>
4170 </ul>
4171
4172 <h2>Specials</h2>
4173
4174 <p>Four special parameters are possible:</p>
4175 <ol>
4176  <li><code>rfc822</code>: RFC822 date in local time</li>
4177  <li><code>rfc822GMT</code>: RFC date in GMT time</li>
4178  <li><code>iso8601</code>: ISO-8601 date (<a href="http://www.w3.org/TR/NOTE-datetime">W3C Date and Time Format</a> profile). Example: 2002-10-02T10:00:00-05:00</li>
4179  <li><code>utc</code>: Same as iso8601, but the date is expressed in UTC, using a "Z" for the timezone indicator.</li>
4180 </ol>
4181
4182 <h2>Examples</h2>
4183 <pre>
4184 &lt;%date%&gt;
4185 &lt;%date(%x)%&gt;
4186 &lt;%date(rfc822)%&gt;
4187 &lt;%date(rfc822GMT)%&gt;
4188 </pre>
4189
4190
4191 </div>
4192
4193 <div class="page">
4194 <a name="templatevar-time"></a>
4195 <h1>Templatevar: time</h1>
4196
4197 <p>
4198 Inserts a time using the <a href="#templatedatetime">time format specified in the template</a>. Optionally, a custom time format can be given as a parameter.
4199 </p>
4200
4201 <h2>Arguments</h2>
4202 <ul>Optional
4203         <ul>
4204                 <li><strong><i>format</i></strong>: format to be used to format the time</li>
4205         </ul>
4206 </ul>
4207
4208 <h2>Examples</h2>
4209 <pre>
4210 &lt;%time%&gt;
4211 &lt;%time(%X)%&gt;
4212 </pre>
4213
4214 </div>
4215
4216
4217 <div class="page">
4218 <a name="templatevar-comments"></a>
4219 <h1>Templatevar: comments</h1>
4220
4221 <p>
4222 Inserts a comments 'block'. <a href="#templatecomments">More information about the structure of this block</a>.
4223 </p>
4224
4225 <h2>Arguments</h2>
4226 <ul><p>Optional:</p>
4227         <table><tr>
4228                 <th>Name</th>
4229                 <th>Contents</th>
4230         </tr><tr>
4231                 <td>MaxToShow</td>
4232                 <td>Amount of comments to show (when set, this overrides the <a href="#blogmaxcomments">max. comments blogsetting</a>)</td>
4233         </tr></table>
4234 </ul>
4235
4236 <h2>Examples</h2>
4237
4238 <pre>
4239 &lt;%comments%&gt;
4240 &lt;%comments(5)%&gt;
4241 </pre>
4242
4243 </div>
4244
4245
4246 <div class="page">
4247 <a name="templatevar-syndicate_title"></a>
4248 <h1>Templatevar: syndicate_title</h1>
4249
4250 <p>
4251 Inserts the title of the item, with HTML tags-stripped off, and shortened to 100 characters. When the text needs to be shortened, "..." is added at the end of the text.
4252 </p>
4253
4254 <p>
4255 This variable was originally intended for use in the XML-RSS skin that comes with Nucleus, but can also be of use in other situations.
4256 </p>
4257
4258 <h2>Arguments</h2>
4259 <ul>
4260         <li>
4261                 <p>Optional:</p>
4262                 <table><tr>
4263                         <th>Name</th>
4264                         <th>Contents</th>
4265                 </tr><tr>
4266                         <td>MaxChars</td>
4267                         <td>Maximum amount of characters to keep (defaults to 100)</td>
4268                 </tr></table>
4269         </li>
4270 </ul>
4271
4272 <h2>Examples</h2>
4273
4274 <pre>
4275 &lt;%syndicate_title%&gt;
4276 &lt;%syndicate_title(25)%&gt;
4277 </pre>
4278
4279 </div>
4280
4281 <div class="page">
4282 <a name="templatevar-syndicate_description"></a>
4283 <h1>Templatevar: syndicate_description</h1>
4284
4285 <p>
4286 Inserts the body of the item, with HTML tags-stripped off, and shortened to 250 characters. When the text needs to be shortened, "..." is added at the end of the text.
4287 </p>
4288
4289 <p>
4290 This variable was originally intended for use in the XML-RSS skin that comes with Nucleus, but can also be of use in other situations.
4291 </p>
4292
4293 <h2>Arguments</h2>
4294 <ul>
4295         <li>
4296                 <p>Optional:</p>
4297                 <table><tr>
4298                         <th>Name</th>
4299                         <th>Contents</th>
4300                 </tr><tr>
4301                         <td>MaxChars</td>
4302                         <td>Maximum amount of characters to keep (defaults to 250)</td>
4303                 </tr></table>
4304         </li>
4305 </ul>
4306
4307 <h2>Examples</h2>
4308
4309 <pre>
4310 &lt;%syndicate_description%&gt;
4311 &lt;%syndicate_description(25)%&gt;
4312 </pre>
4313
4314 </div>
4315
4316
4317 <div class="page">
4318 <a name="templatevar-image"></a>
4319 <h1>Templatevar: image</h1>
4320
4321 <p>Inserts an inline image into an item body or template.</p>
4322
4323 <p>In normal use, the image-templatevar is generated automatically when adding images through the media library. You can call it from within templates too, though. Note that in this last case, the image will come out of the media dir of the current item's author.</p>
4324
4325 <h2>Arguments</h2>
4326 <ul>
4327         <li>
4328                 <p>Required:</p>
4329                 <table><tr>
4330                         <th>Name</th>
4331                         <th>Contents</th>
4332                 </tr><tr>
4333                         <td>filename</td>
4334                         <td>Name of the image file (file gets)</td>
4335                 </tr><tr>
4336                         <td>width</td>
4337                         <td>Width of the image (pixels or percentage)</td>
4338                 </tr><tr>
4339                         <td>height</td>
4340                         <td>Height of the image</td>
4341                 </tr><tr>
4342                         <td>text</td>
4343                         <td>alt-text for the image</td>
4344                 </tr></table>
4345         </li>
4346         <li><strong>Note:</strong> for the image, popup and media tags, the parameters must be separated by the '|' character, <em>not</em> by a comma!</li>
4347 </ul>
4348
4349 <h2>Examples</h2>
4350
4351 <pre>
4352 &lt;%image(myphoto.jpg|100|200|this is me)%&gt;
4353 &lt;%image(myphoto.jpg|50%|50%|this is me, but smaller)%&gt;
4354 </pre>
4355
4356 </div>
4357
4358
4359
4360 <div class="page">
4361 <a name="templatevar-popup"></a>
4362 <h1>Templatevar: popup</h1>
4363
4364 <p>Inserts a popup image into an item body or template.</p>
4365
4366 <p>In normal use, the popup-templatevar is generated automatically when adding images through the media library. You can call it from within templates too, though. Note that in this last case, the image will come out of the media dir of the current item's author.</p>
4367
4368 <h2>Arguments</h2>
4369 <ul>
4370         <li>
4371                 <p>Required:</p>
4372                 <table><tr>
4373                         <th>Name</th>
4374                         <th>Contents</th>
4375                 </tr><tr>
4376                         <td>filename</td>
4377                         <td>Name of the image file (file gets)</td>
4378                 </tr><tr>
4379                         <td>width</td>
4380                         <td>Width of the image (pixels or percentage)</td>
4381                 </tr><tr>
4382                         <td>height</td>
4383                         <td>Height of the image</td>
4384                 </tr><tr>
4385                         <td>text</td>
4386                         <td>alt-text for the image</td>
4387                 </tr></table>
4388         </li>
4389         <li><strong>Note:</strong> for the image, popup and media tags, the parameters must be separated by the '|' character, <em>not</em> by a comma!</li>
4390 </ul>
4391
4392 <h2>Examples</h2>
4393
4394 <pre>
4395 &lt;%popup(myphoto.jpg|100|200|this is me)%&gt;
4396 &lt;%popup(myphoto.jpg|50%|50%|this is me, but smaller)%&gt;
4397 </pre>
4398
4399 </div>
4400
4401
4402
4403 <div class="page">
4404 <a name="templatevar-media"></a>
4405 <h1>Templatevar: media</h1>
4406
4407 <p>Inserts a media object into an item body or template.</p>
4408
4409 <p>In normal use, the media-templatevar is generated automatically when adding images through the media library. You can call it from within templates too, though. Note that in this last case, the object will come out of the media dir of the current item's author.</p>
4410
4411 <h2>Arguments</h2>
4412 <ul>
4413         <li>
4414                 <p>Required:</p>
4415                 <table><tr>
4416                         <th>Name</th>
4417                         <th>Contents</th>
4418                 </tr><tr>
4419                         <td>filename</td>
4420                         <td>Name of the image file (file gets)</td>
4421                 </tr><tr>
4422                         <td>text</td>
4423                         <td>descriptive text for the media object</td>
4424                 </tr></table>
4425         </li>
4426         <li><strong>Note:</strong> for the image, popup and media tags, the parameters must be separated by the '|' character, <em>not</em> by a comma!</li>
4427 </ul>
4428
4429 <h2>Examples</h2>
4430
4431 <pre><code>&lt;%media(mysong.mp3|listen to my new song)%&gt;</code></pre>
4432
4433 </div>
4434
4435
4436 <div class="page">
4437 <a name="templatevar-edit"></a>
4438 <h1>Templatevar: edit</h1>
4439
4440 <p>
4441 From within your template, you can add an 'edit item' link by using this template variable. By default, it will link to a popup-bookmarklet-window, but that behaviour can be changed through the <a href="#templateeditlink">editlink template</a>.
4442 </p>
4443
4444 <p><strong>Note:</strong> only logged in members that are allowed to edit the item will see this link. In other cases, the edit-templatevar does nothing at all.</p>
4445
4446 <h2>Example</h2>
4447 <p>An example for the item body template</p>
4448 <pre><code>&lt;h1&gt;&lt;%title%&gt;&lt;/h1&gt;
4449 &lt;p&gt;&lt;%body%&gt; &lt;%morelink%&gt;&lt;/p&gt;
4450 &lt;div class="metadata"&gt;
4451         &lt;%edit%&gt; &lt;%comments%&gt;
4452 &lt;/div&gt;</code></pre>
4453
4454 <h2>Results in</h2>
4455
4456 <div class="example">
4457 <h4 style="margin:2px;">Title</h4>
4458 <p style="margin:2px;">This is an item</p>
4459 <div style="margin:2px;"><a href="#templatevar-edit">edit</a> - <a href="#templatevar-edit">5 comments</a></div>
4460 </div>
4461
4462 </div>
4463
4464
4465 <div class="page">
4466 <a name="templatevar-editlink"></a>
4467 <h1>Templatevar: editlink</h1>
4468
4469 <p>
4470 Insert a link to the 'edit item' bookmarklet. This can be used in the <a href="#templateeditlink">editlink template</a> for simplicity.
4471 </p>
4472
4473 <h2>Example</h2>
4474
4475 <p>The <a href="#templateeditlink">'edit link'-template</a> could look like this:</p>
4476 <pre>
4477 &lt;a href="&lt;%editlink%&gt;"
4478    onclick="&lt;%editpopupcode%&gt;"&gt;edit&lt;/a&gt; -
4479 </pre>
4480
4481 </div>
4482
4483
4484 <div class="page">
4485 <a name="templatevar-editpopupcode"></a>
4486 <h1>Templatevar: editpopupcode</h1>
4487
4488 <p>
4489 To open a popup window for the 'edit link' window, you'll need to add some javascript code to your link. To avoid having to enter this code in the 'edit link'-template, you can insert it using the editpopupcode-templatevar.
4490 </p>
4491
4492 <h2>Example</h2>
4493 <p>See the example for the <a href="#templatevar-editlink">editlink templatevar</a></p>
4494 </div>
4495
4496
4497
4498 <div class="page">
4499 <a name="plugins"></a>
4500 <h1>Plugins</h1>
4501 <p>
4502 Nucleus allows you to install custom plugins, adding extra functionality. Plugins can do different things:
4503 </p>
4504 <ol>
4505         <li>Act as a skin variable</li>
4506         <li>Act as a template variable</li>
4507         <li>Hook into events generated by Nucleus. The 'move up' and 'move down' links in 'manage plugins' screen can be used to define the order in which plugins will be called when such an event occurs. The first plugin in the list will be called first, the last one will be called last.</li>
4508         <li>Act as actors when called through <tt>action.php</tt></li>
4509 </ol>
4510 <p>
4511 Note that the responsibility for plugins is entirely with the plugin author. He should make sure that everything works fine.
4512 </p>
4513 <a name="getplugins"></a>
4514 <p>
4515 There are two main repositories where you can find plugins for Nucleus CMS:
4516 </p>
4517 <ul>
4518         <li><a href="http://wiki.nucleuscms.org/plugin" title="Plugin Wiki">English</a></li>
4519         <li><a href="http://japan.nucleuscms.org/wiki/plugins" title="Japanese Plugin Wiki">Japanese</a></li>
4520 </ul>
4521 <p>
4522 Neither or these repositories is entirely complete. You will find some plugins in one, but not in the other, and vice versa. 
4523 Do not be scared off of one or the other on account of locale, as there are a few free translation services on the Internet that 
4524 will help you get by.
4525 </p>
4526 Another resource that will help you while working with plugins is the search function at the 
4527 <a href="http://forum.nucleuscms.org/" title="Support Forum">support forum</a>. You will even find some 
4528 smaller plugins on the forum that never made it to the wiki.
4529 <p>
4530 </p>
4531 </div>
4532
4533 <div class="page">
4534 <a name="parser-properties"></a>
4535 <a name="includemode"></a>
4536 <a name="includeprefix"></a>
4537 <h1>Parser Properties</h1>
4538
4539 <p>The available parser options are described below.</p>
4540
4541 <table>
4542  <caption>Parser properties</caption>
4543  <tr>
4544         <th>Option Name</th>
4545         <th>Values</th>
4546  </tr><tr>
4547         <td>IncludeMode</td>
4548         <td>
4549                 <ul>
4550                         <li><strong>normal</strong>: normal behaviour; included files are taken relative to the directory/url of the .php file generating the page.</li>
4551                         <li><strong>skindir</strong>: included files are taken relative to the skindir/skinurl</li>
4552                 </ul>
4553                 <p>This property affects the following skinvars: <a href="#skinvar-include">include</a>, <a href="#skinvar-phpinclude">phpinclude</a>, <a href="#skinvar-parsedinclude">parsedinclude</a>, <a href="#skinvar-nucleusbutton">nucleusbutton</a></p>
4554         </td>
4555  </tr><tr>
4556         <td>IncludePrefix</td>
4557         <td>
4558                 <p>This property is a prefix that get's added in front of each filename you want to include. For example, if the prefix is <tt>base/</tt> and you want to include <tt>somefile.txt</tt>, you'll end up including <tt>base/somefile.txt</tt></p>
4559                 <p>This property is intended to be used in conjunction with the IncludeMode property. This way, a skin imported to <tt><em>skindir/</em>somename/</tt> can set <tt>IncludeMode</tt> to <tt>skindir</tt> and <tt>IncludePrefix</tt> to <tt>somename/</tt></p>
4560                 <p>This property affects the following skinvars: <a href="#skinvar-include">include</a>, <a href="#skinvar-phpinclude">phpinclude</a>, <a href="#skinvar-parsedinclude">parsedinclude</a>, <a href="#skinvar-nucleusbutton">nucleusbutton</a></p>
4561         </td>
4562   </tr>
4563 </table>
4564
4565 <p>The <tt>IncludePrefix</tt> and <tt>IncludeMode</tt> properties can be set globally for a skin in the general settings of a skin. Also note that from the moment a property is set, it applies to all parsed data, thus also for templates.</p>
4566
4567 </div>
4568
4569 <div class="page">
4570 <a id="adminskinvar-actionurl" name="adminskinvar-actionurl"></a>
4571 <h1>AdminSkinvar: actionurl</h1>
4572 <p>The contents of $CONF['ActionURL'] are indicated.</p>
4573 <h2>Arguments</h2>
4574 <p>None</p>
4575 <h2>Skintypes</h2>
4576 <p>All</p>
4577 <h2>Examples</h2>
4578 <pre>
4579 &lt;%actionurl%&gt;
4580 </pre>
4581 </div>
4582
4583 <div class="page">
4584 <a id="adminskinvar-addtickettourl" name="adminskinvar-addtickettourl"></a>
4585 <h1>AdminSkinvar: addtickettourl</h1>
4586 <p>A ticket is added to URL to which it was given.</p>
4587 <h2>Arguments</h2>
4588 <p>URL</p>
4589 <h2>Skintypes</h2>
4590 <p>All</p>
4591 <h2>Examples</h2>
4592 <pre>
4593 &lt;%addtickettourl(index.php)%&gt;
4594 </pre>
4595 </div>
4596
4597 <div class="page">
4598 <a id="adminskinvar-adminurl" name="adminskinvar-adminurl"></a>
4599 <h1>AdminSkinvar: adminurl</h1>
4600 <p>The contents of $CONF['AdminURL'] are indicated.</p>
4601 <h2>Arguments</h2>
4602 <p>None</p>
4603 <h2>Skintypes</h2>
4604 <p>All</p>
4605 <h2>Examples</h2>
4606 <pre>
4607 &lt;%adminurl%&gt;
4608 </pre>
4609 </div>
4610
4611 <div class="page">
4612 <a id="adminskinvar-codename" name="adminskinvar-codename"></a>
4613 <h1>AdminSkinvar: codename</h1>
4614 <p>The contents of $nucleus['codename'] are indicated.</p>
4615 <h2>Arguments</h2>
4616 <p>None</p>
4617 <h2>Skintypes</h2>
4618 <p>All</p>
4619 <h2>Examples</h2>
4620 <pre>
4621 &lt;%codename%&gt;
4622 </pre>
4623 </div>
4624
4625 <div class="page">
4626 <a id="adminskinvar-date" name="adminskinvar-date"></a>
4627 <h1>AdminSkinvar: date</h1>
4628 <p>Formatted datetime is indicated.</p>
4629 <h2>Arguments</h2>
4630 <p>date format</p>
4631 <h2>Skintypes</h2>
4632 <p>All</p>
4633 <h2>Examples</h2>
4634 <pre>
4635 &lt;%date(c)%&gt;
4636 </pre>
4637 </div>
4638
4639 <div class="page">
4640 <a id="adminskinvar-extrahead" name="adminskinvar-extrahead"></a>
4641 <h1>AdminSkinvar: extrahead</h1>
4642 <p>The contents of extra &lt;head&gt; contents are indicated.</p>
4643 <h2>Arguments</h2>
4644 <p>None</p>
4645 <h2>Skintypes</h2>
4646 <p>All</p>
4647 <h2>Examples</h2>
4648 <pre>
4649 &lt;%extrahead%&gt;
4650 </pre>
4651 </div>
4652
4653 <div class="page">
4654 <a id="adminskinvar-headmessage" name="adminskinvar-headmessage"></a>
4655 <h1>AdminSkinvar: headmessage</h1>
4656 <p>Adminpagr headmessage is indicated.</p>
4657 <h2>Arguments</h2>
4658 <p>None</p>
4659 <h2>Skintypes</h2>
4660 <p>All</p>
4661 <h2>Examples</h2>
4662 <pre>
4663 &lt;%headmessage%&gt;
4664 </pre>
4665 </div>
4666
4667 <div class="page">
4668 <a id="adminskinvar-helplink" name="adminskinvar-helplink"></a>
4669 <h1>AdminSkinvar: helplink</h1>
4670 <p>Link to help topic is indicated.</p>
4671 <h2>Arguments</h2>
4672 <p>topic</p>
4673 <h2>Skintypes</h2>
4674 <p>All</p>
4675 <h2>Examples</h2>
4676 <pre>
4677 &lt;%helplink(adminskinvar-helplink)%&gt;
4678 </pre>
4679 </div>
4680
4681 <div class="page">
4682 <a id="adminskinvar-member" name="adminskinvar-member"></a>
4683 <h1>AdminSkinvar: member</h1>
4684 <p>Member information is indicated.</p>
4685 <h2>Arguments</h2>
4686         <p>Required:</p>
4687         <table><tr>
4688                 <th>Name</th>
4689                 <th>Contents</th>
4690         </tr><tr>
4691                 <td>name</td>
4692                 <td>Display name of member</td>
4693         </tr><tr>
4694                 <td>realname</td>
4695                 <td>Real name of member</td>
4696         </tr><tr>
4697                 <td>notes</td>
4698                 <td>Notes of member</td>
4699         </tr><tr>
4700                 <td>url</td>
4701                 <td>Site URL of member</td>
4702         </tr><tr>
4703                 <td>email</td>
4704                 <td>E-mail of member</td>
4705         </tr><tr>
4706                 <td>id</td>
4707                 <td>ID of member</td>
4708         </tr><tr>
4709                 <td>yourname</td>
4710                 <td>Display name of reading member</td>
4711         </tr><tr>
4712                 <td>yourrealname</td>
4713                 <td>Real name of reading member</td>
4714         </tr><tr>
4715                 <td>yournotes</td>
4716                 <td>Notes of reading member</td>
4717         </tr><tr>
4718                 <td>yoururl</td>
4719                 <td>Site URL of reading member</td>
4720         </tr><tr>
4721                 <td>youremail</td>
4722                 <td>E-mail of reading member</td>
4723         </tr><tr>
4724                 <td>yourid</td>
4725                 <td>ID of reading member</td>
4726         </tr><tr>
4727                 <td>yourprofileurl</td>
4728                 <td>Profile page URL of reading member</td>
4729         </tr></table>
4730 <h2>Skintypes</h2>
4731 <p>All</p>
4732 <h2>Examples</h2>
4733 <pre>
4734 &lt;%member(realname)%&gt;
4735 </pre>
4736 </div>
4737
4738 <div class="page">
4739 <a id="adminskinvar-newestcompare" name="adminskinvar-newestcompare"></a>
4740 <h1>AdminSkinvar: newestcompare</h1>
4741 <p>I inquire whether the version of the core file is the latest edition.</p>
4742 <h2>Arguments</h2>
4743 <p>None</p>
4744 <h2>Skintypes</h2>
4745 <p>All</p>
4746 <h2>Examples</h2>
4747 <pre>
4748 &lt;%newestcompare%&gt;
4749 </pre>
4750 </div>
4751
4752 <div class="page">
4753 <a id="adminskinvar-pagehead" name="adminskinvar-pagehead"></a>
4754 <h1>AdminSkinvar: pagehead</h1>
4755 <p>The contents of page header are indicated.</p>
4756 <h2>Arguments</h2>
4757 <p>None</p>
4758 <h2>Skintypes</h2>
4759 <p>All</p>
4760 <h2>Examples</h2>
4761 <pre>
4762 &lt;%pagehead%&gt;
4763 </pre>
4764 </div>
4765
4766 <div class="page">
4767 <a id="adminskinvar-pagefoot" name="adminskinvar-pagefoot"></a>
4768 <h1>AdminSkinvar: pagefoot</h1>
4769 <p>The contents of page footer are indicated.</p>
4770 <h2>Arguments</h2>
4771 <p>None</p>
4772 <h2>Skintypes</h2>
4773 <p>All</p>
4774 <h2>Examples</h2>
4775 <pre>
4776 &lt;%pagefoot%&gt;
4777 </pre>
4778 </div>
4779
4780 <div class="page">
4781 <a id="adminskinvar-qmenuaddselect" name="adminskinvar-qmenuaddselect"></a>
4782 <h1>AdminSkinvar: qmenuaddselect</h1>
4783 <p>Selection box of the blog to which an item is added on the quick menu bar.</p>
4784 <h2>Arguments</h2>
4785 <p>Template name</p>
4786 <h2>Skintypes</h2>
4787 <p>All</p>
4788 <h2>Examples</h2>
4789 <pre>
4790 &lt;%qmenuaddselect(admin/default)%&gt;
4791 </pre>
4792 </div>
4793
4794 <div class="page">
4795 <a id="adminskinvar-quickmenu" name="adminskinvar-quickmenu"></a>
4796 <h1>AdminSkinvar: quickmenu</h1>
4797 <p>The contents of quick menu bar are indicated.</p>
4798 <h2>Arguments</h2>
4799 <p>Template name</p>
4800 <h2>Skintypes</h2>
4801 <p>All</p>
4802 <h2>Examples</h2>
4803 <pre>
4804 &lt;%quickmenu(admin/default)%&gt;
4805 </pre>
4806 </div>
4807
4808 <div class="page">
4809 <a id="adminskinvar-sitevar" name="adminskinvar-sitevar"></a>
4810 <h1>AdminSkinvar: sitevar</h1>
4811 <p>Site configuration vars are indicated.</p>
4812 <h2>Arguments</h2>
4813         <p>Required:</p>
4814         <table><tr>
4815                 <th>Name</th>
4816                 <th>Contents</th>
4817         </tr><tr>
4818                 <td>url</td>
4819                 <td>$CONF['IndexURL']</td>
4820         </tr><tr>
4821                 <td>name</td>
4822                 <td>$CONF['SiteName']</td>
4823         </tr><tr>
4824                 <td>admin</td>
4825                 <td>$CONF['AdminEmail']</td>
4826         </tr><tr>
4827                 <td>adminurl</td>
4828                 <td>$CONF['AdminURL']</td>
4829         </tr></table>
4830 <h2>Skintypes</h2>
4831 <p>All</p>
4832 <h2>Examples</h2>
4833 <pre>
4834 &lt;%sitevar(adminurl)%&gt;
4835 </pre>
4836 </div>
4837
4838 <div class="page">
4839 <a id="adminskinvar-sprinttext" name="adminskinvar-sprinttext"></a>
4840 <h1>AdminSkinvar: sprinttext</h1>
4841 <p>A string produced according to the formatting string format.</p>
4842 <h2>Arguments</h2>
4843 <p>format(The fixed number or character string), args(value)</p>
4844 <h2>Skintypes</h2>
4845 <p>All</p>
4846 <h2>Examples</h2>
4847 <pre>
4848 &lt;%sprinttext(_PLUGIN_OPTIONS_TITLE,&lt;|%geteditpluginfo(name)%|&gt;)%&gt;
4849 </pre>
4850 </div>
4851
4852 <div class="page">
4853 <a id="adminskinvar-ticket" name="adminskinvar-ticket"></a>
4854 <h1>AdminSkinvar: ticket</h1>
4855 <p>"type" the attribute, "hidden", a ticket is output by a input tag.</p>
4856 <h2>Arguments</h2>
4857 <p>None</p>
4858 <h2>Skintypes</h2>
4859 <p>All</p>
4860 <h2>Examples</h2>
4861 <pre>
4862 &lt;%ticket%&gt;
4863 </pre>
4864 </div>
4865
4866 <div class="page">
4867 <a id="adminskinvar-version" name="adminskinvar-version"></a>
4868 <h1>AdminSkinvar: version</h1>
4869 <p>The contents of $nucleus['version'] are indicated.</p>
4870 <h2>Arguments</h2>
4871 <p>None</p>
4872 <h2>Skintypes</h2>
4873 <p>All</p>
4874 <h2>Examples</h2>
4875 <pre>
4876 &lt;%version%&gt;
4877 </pre>
4878 </div>
4879
4880 <div class="page">
4881 <a id="adminskinvar-versioncheckurl" name="adminskinvar-versioncheckurl"></a>
4882 <h1>AdminSkinvar: version</h1>
4883 <p>URL of which I inquire a newest version of a core file is output.</p>
4884 <h2>Arguments</h2>
4885 <p>None</p>
4886 <h2>Skintypes</h2>
4887 <p>All</p>
4888 <h2>Examples</h2>
4889 <pre>
4890 &lt;%versioncheckurl%&gt;
4891 </pre>
4892 </div>
4893
4894 </body>
4895 </html>