<?php // -*- php -*-
// some real-world examples using html-class, compared to previous usage (commented)
require_once ("html-class.php");
function empty_row ($colspan = false) {
if ($colspan)
return HTML::tr(HTML::td(array(colspan=>$colspan),NBSP)) . "\n";
//return "<tr><td colspan=\"$colspan\"> </td></tr>\n";
else
return HTML::tr(HTML::td(NBSP)) . "\n";
//return "<tr><td> </td></tr>\n";
}
function display_error ($msg, $colspan=5) {
return HTML::tr(array(valign=>"top"),
HTML::td(array(align => "right"),
HTML::img(array(src=>"img/icon_red.gif",alt => _("Error"),
width => 20, height => 20)),
NBSP, NBSP),
HTML::td(array(colspan => $colspan-1), HTML::div(array('class' => 'error'),
$msg))) . "\n";
//echo '<tr valign="top"><td align="right"><img src="img/icon_red.gif" alt="Error" '.$size.'> </td>';
//echo "<td colspan=\"",$colspan-1,"\"><div class=\"error\">$msg</div></tr>\n";
}
function check_file_js() {
return HTML::jscript("
var check = new Array();
function check_file(key,v) {
var Match = /^\w[\w/\.]+$/;
return Match.test(v);
}
");
}
function browserAgent() {
static $HTTP_USER_AGENT = false;
if (!$HTTP_USER_AGENT)
$HTTP_USER_AGENT = @$GLOBALS['HTTP_SERVER_VARS']['HTTP_USER_AGENT'];
if (!$HTTP_USER_AGENT) // CGI
$HTTP_USER_AGENT = $GLOBALS['HTTP_ENV_VARS']['HTTP_USER_AGENT'];
return $HTTP_USER_AGENT;
}
function browserDetect($match) {
return strstr(browserAgent(), $match);
}
function isBrowserMozilla() {
return (browserDetect('Mozilla/') and
browserDetect('Gecko/') and
!browserDetect('MSIE'));
}
// mixed usage of dirty tags as string, and the functional html-class style, which guarantees proper nesting.
function show_main_buttons() {
global $mid_width, $HTTP_POST_VARS;
$out = '';
if (!isBrowserMozilla())
$js = "onmouseover=\"hover(this,'#0072e4','')\" onmouseout=\"hover(this,'#005abd','')\"";
if (HAVE_FORM_JS) $js .= ' onclick="return checkForm()"';
$out .= '<tr><td width="'.$mid_width.'"><table width="'.$mid_width.'" border="0"><tr>';
if (!$GLOBALS['error']) {
$out .= HTML::td(array(align=>'right'),NBSP,HTML_Input::submit(array('class'=>'gumb',name=>"check",value=>"Check",'accesskey'=>"P",'more_attr_pairs'=>$js)),NBSP,HTML_Input::submit(array('class'=>'gumb',name=>"save",value=>"Save",'accesskey'=>"S",'more_attr_pairs'=>$js)));
}
//...
$out .= "</tr></table></td></tr>\n";
return $out;
}
echo "<html>";
echo HTML::head(check_file_js(),
HTML::style('
.gumb { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-weight: bold; background-color: #005abd; color: #EEEEEE; border-color: #000000; border-width: 1px; text-decoration: none; }
a.gumb, a.gumb:link, a.gumb:visited { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-weight: bold; background-color: #005abd; color: #EEEEEE; border-color: #000000; border-width: 1px; text-decoration: none; border-style: groove; }
'));
echo "<body>";
//echo "<table>";
$mid_width=480;
echo HTML::form(array(action=>$_SERVER['PHP_SELF']),
HTML::table(array(),
empty_row(2),
display_error('wrong setting',2),
empty_row(2),
show_main_buttons())
);
//echo "</table>";
echo "</body>";
echo "</html>";
?>
|