f41b98 | 2009-05-07 | Martin Stjernholm | |
|
d2bf2c | 1997-11-09 | Francesco Chemolli | |
|
ea0143 | 1997-08-03 | Fredrik Noring | |
|
d2bf2c | 1997-11-09 | Francesco Chemolli | |
|
0917d3 | 2013-03-04 | Anders Johansson | | constant cvs_version = "$Id$";
|
07bf51 | 1997-08-31 | Peter Bortas | | constant thread_safe=1;
|
ea0143 | 1997-08-03 | Fredrik Noring | | #include <module.h>
|
55a866 | 2000-11-20 | Per Hedbor | |
|
07bf51 | 1997-08-31 | Peter Bortas | | inherit "module";
|
ea0143 | 1997-08-03 | Fredrik Noring | |
|
55a866 | 2000-11-20 | Per Hedbor | |
#define SLOCALE(X,Y) _STR_LOCALE("mod_obox",X,Y)
#define LOCALE(X,Y) _DEF_LOCALE("mod_obox",X,Y)
|
d3dd2a | 2017-10-03 | Pontus Ãstlund | |
|
655721 | 2018-03-12 | Pontus Ãstlund | | constant module_type = MODULE_TAG | MODULE_DEPRECATED_SOFT;
|
bc0fa0 | 2001-03-08 | Per Hedbor | | LocaleString module_name = LOCALE(1,"Tags: Outlined box");
|
ff8e66 | 2000-05-05 | Kenneth Johansson | |
|
f0d694 | 2001-01-29 | Per Hedbor | | LocaleString module_doc =
|
55a866 | 2000-11-20 | Per Hedbor | | LOCALE(2,"This module provides the <tt><obox></tt> tag that "
"draws outlined boxes.");
|
ea0143 | 1997-08-03 | Fredrik Noring | |
|
a68f5d | 1999-12-08 | Martin Nilsson | | constant unit_gif = "/internal-roxen-unit";
|
5458ff | 1997-08-23 | Henrik Grubbström (Grubba) | |
|
fc4039 | 2008-08-15 | Martin Stjernholm | | protected string img_placeholder (mapping args)
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | {
int width=((int)args->outlinewidth)||1;
|
049b00 | 2002-05-22 | Dan Nelson | | return sprintf("<img src=\"%s\" alt=\"\" "
"style=\"display:block; border:1;\" "
"width=\"%d\" height=\"%d\"%s>",
|
14ae4b | 1999-07-26 | Martin Nilsson | | unit_gif, width, width, (args->noxml?"":" /"));
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | }
|
fc4039 | 2008-08-15 | Martin Stjernholm | | protected string handle_title(string name, mapping junk_args,
string contents, mapping args)
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | {
args->title=contents;
return "";
}
|
fc4039 | 2008-08-15 | Martin Stjernholm | | protected string horiz_line(mapping args)
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | {
|
9f2fdf | 1998-10-18 | Martin Stjernholm | | args->fixedleft="";
|
14ae4b | 1999-07-26 | Martin Nilsson | | return sprintf("<tr><td colspan=\"5\" bgcolor=\"%s\">\n"
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | "%s</td></tr>\n",
args->outlinecolor,
img_placeholder(args));
}
|
fc4039 | 2008-08-15 | Martin Stjernholm | | protected string title(mapping args)
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | {
if (!args->title)
return horiz_line(args);
string empty=img_placeholder(args);
|
5864ba | 1999-05-24 | David Hedbor | | if (!args->left && !args->fixedleft)
if (args->width && !args->fixedright)
args->fixedleft = "7";
else
args->left = "20";
if (!args->right && !args->fixedright)
args->right = args->width || "20";
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | switch (args->style) {
|
5864ba | 1999-05-24 | David Hedbor | | case "groupbox":
|
14ae4b | 1999-07-26 | Martin Nilsson | | return sprintf("<tr><td colspan=\"2\"><font size=\"-3\"> </font></td>\n"
"<td rowspan=\"3\"%s nowrap=\"nowrap\"> <b>"
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | "%s%s%s"
|
9f2fdf | 1998-10-18 | Martin Stjernholm | | "</b> </td>\n"
|
14ae4b | 1999-07-26 | Martin Nilsson | | "<td colspan=\"2\"><font size=\"-3\"> </font></td></tr>\n"
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | "<tr%s>"
|
14ae4b | 1999-07-26 | Martin Nilsson | | "<td bgcolor=\"%s\" colspan=\"2\">\n"
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | "%s</td>\n"
|
14ae4b | 1999-07-26 | Martin Nilsson | | "<td bgcolor=\"%s\" colspan=\"2\">\n"
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | "%s</td></tr>\n"
"<tr%s><td bgcolor=\"%s\">"
"%s</td>\n"
|
14ae4b | 1999-07-26 | Martin Nilsson | | "<td%s><font size=\"-3\">%s</font></td>"
"<td%s><font size=\"-3\">%s</font></td>\n"
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | "<td bgcolor=\"%s\">"
"%s</td></tr>\n"
,
args->bgcolor ? " bgcolor=\""+args->bgcolor+"\"" : "",
|
e3da5f | 1999-08-16 | Martin Nilsson | | args->titlecolor ? "<font color=\""+args->titlecolor+"\">" : "",
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | args->title,
|
e3da5f | 1999-08-16 | Martin Nilsson | | args->titlecolor ? "</font>" : "",
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | args->bgcolor ? " bgcolor=\""+args->bgcolor+"\"" : "",
args->outlinecolor,
empty,
args->outlinecolor,
empty,
args->bgcolor ? " bgcolor=\""+args->bgcolor+"\"" : "",
args->outlinecolor,
empty,
|
695303 | 2000-03-13 | Martin Nilsson | | args->left ? " width=\""+args->left+"\"" : "",
|
9f2fdf | 1998-10-18 | Martin Stjernholm | | (args->fixedleft ?
|
735de4 | 2002-12-14 | Anders Johansson | | (" "*(int)args->fixedleft) : " "),
|
695303 | 2000-03-13 | Martin Nilsson | | args->right ? " width=\""+args->right+"\"" : "",
|
9f2fdf | 1998-10-18 | Martin Stjernholm | | (args->fixedright ?
|
735de4 | 2002-12-14 | Anders Johansson | | (" "*(int)args->fixedright) : " "),
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | args->outlinecolor,
empty);
|
5864ba | 1999-05-24 | David Hedbor | | case "caption":
|
14ae4b | 1999-07-26 | Martin Nilsson | | return sprintf("<tr%s><td colspan=\"2\"><font size=\"-3\"> </font></td>\n"
"<td rowspan=\"3\" nowrap=\"nowrap\"> <b>"
|
5864ba | 1999-05-24 | David Hedbor | | "%s%s%s"
"</b> </td>\n"
|
14ae4b | 1999-07-26 | Martin Nilsson | | "<td colspan=\"2\"><font size=\"-3\"> </font></td></tr>\n"
|
5864ba | 1999-05-24 | David Hedbor | | "<tr bgcolor=\"%s\">"
|
d3dd2a | 2017-10-03 | Pontus Ãstlund | | "<td colspan=\"2\">\n"
|
5864ba | 1999-05-24 | David Hedbor | | "%s</td>\n"
|
14ae4b | 1999-07-26 | Martin Nilsson | | "<td colspan=\"2\">\n"
|
5864ba | 1999-05-24 | David Hedbor | | "%s</td></tr>\n"
"<tr bgcolor=\"%s\"><td>"
"%s</td>\n"
|
14ae4b | 1999-07-26 | Martin Nilsson | | "<td%s><font size=\"-3\">%s</font></td>"
"<td%s><font size=\"-3\">%s</font></td>\n"
|
5864ba | 1999-05-24 | David Hedbor | | "<td bgcolor=\"%s\">"
"%s</td></tr>\n"
,
args->outlinecolor ? " bgcolor=\""+args->outlinecolor+"\"" : "",
|
e3da5f | 1999-08-16 | Martin Nilsson | | args->titlecolor ? "<font color=\""+args->titlecolor+"\">" : "",
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | args->title,
|
e3da5f | 1999-08-16 | Martin Nilsson | | args->titlecolor ? "</font>" : "",
|
5864ba | 1999-05-24 | David Hedbor | | args->outlinecolor,
empty,
empty,
args->outlinecolor,
empty,
|
695303 | 2000-03-13 | Martin Nilsson | | args->left ? " width=\""+args->left+"\"" : "",
|
5864ba | 1999-05-24 | David Hedbor | | (args->fixedleft ?
|
735de4 | 2002-12-14 | Anders Johansson | | (" "*(int)args->fixedleft) : " "),
|
695303 | 2000-03-13 | Martin Nilsson | | args->right ? " width=\""+args->right+"\"" : "",
|
5864ba | 1999-05-24 | David Hedbor | | (args->fixedright ?
|
735de4 | 2002-12-14 | Anders Johansson | | (" "*(int)args->fixedright) : " "),
|
5864ba | 1999-05-24 | David Hedbor | | args->outlinecolor,
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | empty);
}
}
|
695303 | 2000-03-13 | Martin Nilsson | | string simpletag_obox(string name, mapping args, string contents)
|
ea0143 | 1997-08-03 | Fredrik Noring | | {
|
d2bf2c | 1997-11-09 | Francesco Chemolli | | string s;
|
0e834c | 2000-02-24 | Martin Nilsson | |
|
d2bf2c | 1997-11-09 | Francesco Chemolli | |
args->outlinecolor = args->outlinecolor || "#000000";
args->style = args->style || "groupbox";
if (!args->title) {
contents=parse_html(contents,([]),(["title":handle_title,]),args);
|
ea0143 | 1997-08-03 | Fredrik Noring | | }
|
e3da5f | 1999-08-16 | Martin Nilsson | | s = "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\"" +
(args->align?" align=\""+args->align+"\"":"") +
|
0e834c | 2000-02-24 | Martin Nilsson | | (args->width ? " width=" + args->width : "") +
(args->hspace ? " hspace=" + args->hspace : "") +
|
64324f | 1999-10-04 | Fred van Dijk | | (args->vspace ? " vspace=" + args->vspace : "") + ">\n" +
|
e3da5f | 1999-08-16 | Martin Nilsson | | title(args) +
"<tr" +
(args->bgcolor?" bgcolor=\""+args->bgcolor+"\"":"") +
"><td bgcolor=\"" + args->outlinecolor + "\">" +
img_placeholder(args) + "</td>\n"
"<td" + (args->width && !args->fixedleft && !args->fixedright ? " width=\"1\"" : "") +
(args->aligncontents ? " align=" + args->aligncontents : "") + " colspan=\"3\"" + ">\n"
"<table border=\"0\" cellspacing=\"0\" cellpadding=\"" + (args->padding || "5") + "\""+
(!args->spacing && args->width?" width=\""+(string)((int)args->width-((int)args->outlinewidth*2||2))+"\"":"")+
(args->spacing?" width=\""+(string)args->spacing+"\"":"")+">"
"<tr><td>\n";
if (args->textcolor)
s += "<font color=\""+args->textcolor+"\">" + contents + "</font>";
else
s += contents;
|
0e834c | 2000-02-24 | Martin Nilsson | |
|
e3da5f | 1999-08-16 | Martin Nilsson | | s += "</td></tr></table>\n"
"</td><td bgcolor=\"" + args->outlinecolor + "\">" +
img_placeholder(args) + "</td></tr>\n" +
horiz_line(args) + "</table>\n";
|
0e834c | 2000-02-24 | Martin Nilsson | |
|
ea0143 | 1997-08-03 | Fredrik Noring | | return s;
}
|
55a866 | 2000-11-20 | Per Hedbor | |
TAGDOCUMENTATION
#ifdef manual
|
9b0365 | 2001-03-07 | Kenneth Johansson | | constant tagdoc=([
"obox": ([
|
ce8fb0 | 2001-09-21 | Johan Sundström | | "standard":#"<desc type='cont'><p><short>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | This tag creates an outlined box.</short>
</p></desc>
<attr name='align' value='left|right'><p>
Vertical alignment of the box.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='bgcolor' value='color'><p>
Color of the background and title label.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='fixedleft' value='number'><p>
|
55a866 | 2000-11-20 | Per Hedbor | | Fixed length of line on the left side of the title. The unit is the
|
9b0365 | 2001-03-07 | Kenneth Johansson | | approximate width of a character.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='fixedright' value='number'><p>
|
55a866 | 2000-11-20 | Per Hedbor | | Fixed length of line on the right side of the title. The unit is the
|
9b0365 | 2001-03-07 | Kenneth Johansson | | approximate width of a character.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='left' value='number'><p>
Length of the line on the left of the title.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='outlinecolor' value='color'><p>
Color of the outline.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='outlinewidth' value='number'><p>
Width, in pixels, of the outline.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='right' value='number'><p>
Length of the line on the right of the title.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='spacing' value='number'><p>
Width, in pixels, of the space in the box.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='style' value='caption|groupbox'><p>
Style of the box. Groupbox is default.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='textcolor' value='color'><p>
Color of the text inside the box.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='title' value='string'><p>
Sets the title of the obox.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='titlecolor' value='color'><p>
Color of the title text.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='width' value='number'><p>
Width, in pixels, of the box.</p>
|
55a866 | 2000-11-20 | Per Hedbor | |
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <p>Note that the left and right attributes are constrained by the width
|
55a866 | 2000-11-20 | Per Hedbor | | argument. If the title is not specified in the argument list, you can
|
9b0365 | 2001-03-07 | Kenneth Johansson | | put it in a <tag>title</tag> container in the obox contents.</p>
|
55a866 | 2000-11-20 | Per Hedbor | |
<ex><obox align='left' outlinewidth='5' outlinecolor='green' width='200'>
<title>Sample box</title>
This is just a sample box.
</obox>
</ex>
</attr>",
|
ce8fb0 | 2001-09-21 | Johan Sundström | | "svenska":#"<desc type='cont'><p><short>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | Denna tagg skapar en ramlåda runt dess innehåll.</short>
</p></desc>
|
55a866 | 2000-11-20 | Per Hedbor | |
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='align' value='left|right'><p>
Ramlådans vertikala position.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='bgcolor' value='färg'><p>
Färgen på bakgrunden samt titeln.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='fixedleft' value='nummer'><p>
|
55a866 | 2000-11-20 | Per Hedbor | | Längden på linjen till vänster om titeln. Värdet på 1 'nummer' är den
|
9b0365 | 2001-03-07 | Kenneth Johansson | | ungefärliga bredden av ett tecken.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='fixedright' value='nummer'><p>
|
55a866 | 2000-11-20 | Per Hedbor | | Längden på linjen till vänster om titeln. Värdet på 1 'nummer' är den
|
9b0365 | 2001-03-07 | Kenneth Johansson | | ungefärliga bredden av ett tecken.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='left' value='nummer'><p>
Längden på linjen till vänster om titeln.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='outlinecolor' value='färg'><p>
Färgen på ramen.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='outlinewidth' value='nummer'><p>
Ramens bredd, i antal pixlar.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='right' value='nummer'><p>
Längden på linjen till höger om titeln.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='spacing' value='nummer'><p>
Vidden på utrymmet i ramlådan, i antal pixlar.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='style' value='caption|groupbox'><p>
Ramlådans stil. Groupbox är standardvärde.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='textcolor' value='färg'><p>
Färgen på texten inuti lådan.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='title' value='textsträng'><p>
Ramlådans titel.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='titlecolor' value='färg'><p>
Färgen på titeltexten.</p>
|
55a866 | 2000-11-20 | Per Hedbor | | </attr>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <attr name='width' value='nummer'><p>
Bredden på lådan, i antal pixlar.</p>
|
55a866 | 2000-11-20 | Per Hedbor | |
|
9b0365 | 2001-03-07 | Kenneth Johansson | | <p>Tänk på att <att>left</att> och <att>right</att> attributen begränsas
|
55a866 | 2000-11-20 | Per Hedbor | | av värdet på <att>width</att> attributet. Om titeln inte är satt i
taggen, finns möjligheten att sätta den inuti en <tag>title</tag>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | tagg och placera denna i ramlådans innehåll.</p>
|
55a866 | 2000-11-20 | Per Hedbor | |
<ex><obox align='left' outlinewidth='5' outlinecolor='green' width='200'>
<title>Ramlåda</title>
Detta är innehållet.
</obox>
</ex>
|
9b0365 | 2001-03-07 | Kenneth Johansson | | </attr>"
]) ]);
|
55a866 | 2000-11-20 | Per Hedbor | | #endif
|