chiark / gitweb /
Typo fix.
[disorder] / templates / macros.tmpl
index 1da66d402cdde054fd3e3722dc6b09a9e075fbd4..320e68808f6b2ebdba4443ed347cdf4d8ae0de9b 100644 (file)
@@ -1,20 +1,18 @@
 This file is part of DisOrder.
 Copyright (C) 2008 Richard Kettlewell
 
-This program is free software; you can redistribute it and/or modify
+This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
+the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.
 
-This program is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-General Public License for more details.
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
-USA
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
 ------------------------------------------------------------------------
@@ -24,7 +22,7 @@ Standard macros
 This file is read before any other template.  Its output is discarded
 but side effects (definitions of macros) are retained.  To override it,
 create /etc/disorder/macros.tmpl that includes this file by absolute path
-and then redefines macros as desired.
+and then redefine macros as desired.
 ------------------------------------------------------------------------
 
 
@@ -56,20 +54,19 @@ and then redefines macros as desired.
 @menuitem{@current}{new}{true}
 @menuitem{@current}{login}{true}
 @menuitem{@current}{help}{true}
-@menuitem{@current}{about}{true}
    </p>
    <div class=logo>
-    <a href="http://www.greenend.org.uk/rjk/disorder/">
-     <img src="@image{logosmall}"
-          style="border-style:none"
-          alt="DisOrder"
-          title="Quack quack!  Visit the DisOrder website">
-    </a>
+@menuicon{@current}{about}{true}{logosmall}
    </div>
   <div style="clear:both"></div>
   </div>
 }
 
+@define {menuurl} {name}
+        {@if{@eq{name}{playing}}
+           {@url}
+           {@url?action=@name}}
+
 @# Menu entry
 @#  Used by @stdmenu
 @#  @current is the name of the current page (not necessarily the action that
@@ -82,13 +79,37 @@ and then redefines macros as desired.
             {    <a @if{@eq{@current}{@name}}
                        {class=activemenu}
                        {class=inactivemenu}
-@if{@eq{name}{playing}}
-   {       href="@url"}
-   {       href="@url?action=@name"}
+       href="@menuurl{@name}"
        title="@label{menu.@q{@name}verbose}">@label{menu.@name}</a>}
             {    <span class=invalidmenu 
           title="@label{menu.@q{@name}verbose}">@label{menu.@name}</span>}}
 
+@# Icon-based menu entry (very similar to @menuitem)
+@#  Used by @stdmenu
+@#  @current is the name of the current page
+@#  @name is the name of the menu item
+@#  @available is true if the menu item is available, else false
+@#  @icon is the name of the icon
+@#  
+@define {menuicon} {current name available icon}  
+        {@if{@available}
+            {    <a class=menuicon
+       href="@menuurl{@name}">
+     <img @if{@eq{@current}{@name}}
+             {class=activemenu}
+             {class=inactivemenu}
+          title="@label{menu.@q{@name}verbose}"
+          alt="@label{menu.@name}"
+          src="@image{@icon}">
+    </a>}
+            {    <span class=menuicon>
+     <img @if{@eq{@current}{@name}}
+             {class=activemenu}
+             {class=inactivemenu}
+          title="@label{menu.@q{@name}verbose}"
+          alt="@label{menu.@name}"
+          src="@image{@icon@_inactive}">
+    </a>}}
 
 @# Standard footer text
 @define {credits} {}
@@ -254,6 +275,26 @@ and then redefines macros as desired.
    </table>
 }
 
+@# Expand to a submit button
+@#  @text is the text to put inside the button
+@define {submit} {text}
+        {<button class=button name=submit type=submit>@text</button>}
+
+@# Expand to an action button
+@#  @text is the text to put inside the button
+@#  @long is the text to put in the caption
+@#  @action is the target action
+@define {actbutton} {text long action}
+        {<form method=POST class=button action="@url">
+           <input type=hidden name=action value="@action">
+           <input type=submit name=submit value="@text" title="@long">
+@formback@#
+         </form>}
+
+@# Used for inserting back= elements
+@define {back} {} {}
+@define {formback} {} {}
+
 Local variables:
 mode:sgml
 sgml-always-quote-attributes:nil