<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
<head>
<title>phpMyAdmin</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<base href="http://localhost/myadmin/" />
<style type="text/css">
<!--
.shrink a, .shrink td, .shrink th, .shrink img{}
body{
background-image: url('./images/vertical_line.png');
background-repeat: repeat-y;
background-color: #F5F5F5
}
body,td,th,tr,pre,tt,form,input,select,textarea,h3, table, div, a, p, label
{font-family: arial, helvetica, geneva, sans-serif;
font-size: small}
th {font-weight: bold; color: #000; background-color: #D3DCE3}
hi,h2,h3 {font-family: arial, helvetica, geneva, sans-serif;font-weight: bold}
h1 {font-size: large}
h2 {font-size: medium}
a:link,a:visited{text-decoration: none; color: #00F}
a:hover,a.nav:hover
{text-decoration: underline; color: #F00}
a.nav:link,a.nav:visited
{color: #000}
a.h1:link,a.h1:active,a.h1:visited
{font-size: large; font-weight: bold; color: #000}
a.h1:hover {font-size: large; font-weight: bold; color: #F00}
a.h2:link,a.h2:active,a.h2:visited
{font-size: medium; font-weight: bold; color: #000}
a.h2:hover {font-size: medium; font-weight: bold; color: #F00}
a.drop:link,a.drop:visited
{color: #f00}
a.drop:hover {color: #fff; background-color:#f00; text-decoration: none}
dfn {font-style: normal}
dfn:hover {font-style: normal; cursor: help}
.nav {color: #000}
.warning {font-size: small; font-weight: bold; color: #F00}
td.topline {font-size: 1px}
td.tab {
border-top: 1px solid #999;
border-right: 1px solid #666;
border-left: 1px solid #999;
border-bottom: none;
border-radius: 2px;
-moz-border-radius: 2px;
}
table.tabs {
border-top: none;
border-right: none;
border-left: none;
border-bottom: 1px solid #666;
}
.print{font-family:arial;font-size:8pt;}
.syntax {font-family: sans-serif; font-size: 90%;}
.syntax_comment {}
.syntax_digit {}
.syntax_digit_hex {}
.syntax_digit_integer {}
.syntax_digit_float {}
.syntax_punct {}
.syntax_alpha {text-transform: lowercase;}
.syntax_alpha_columnType {text-transform: uppercase;}
.syntax_alpha_columnAttrib {text-transform: uppercase;}
.syntax_alpha_reservedWord {text-transform: uppercase; font-weight: bold;}
.syntax_alpha_functionName {text-transform: uppercase;}
.syntax_alpha_identifier {}
.syntax_alpha_variable {}
.syntax_quote {}
.syntax_quote_backtick {}
.syntax_comment {color: #808000;}
.syntax_comment_mysql {}
.syntax_comment_ansi {}
.syntax_comment_c {}
.syntax_digit {}
.syntax_digit_hex {color: teal;}
.syntax_digit_integer {color: teal;}
.syntax_digit_float {color: aqua;}
.syntax_punct {color: fuchsia;}
.syntax_alpha {}
.syntax_alpha_columnType {color: #FF9900;}
.syntax_alpha_columnAttrib {color: #0000FF;}
.syntax_alpha_reservedWord {color: #990099;}
.syntax_alpha_functionName {color: #FF0000;}
.syntax_alpha_identifier {color: black;}
.syntax_alpha_variable {color: #800000;}
.syntax_quote {color: #008000;}
.syntax_quote_double {}
.syntax_quote_single {}
.syntax_quote_backtick {}
.syntax_indent0 {margin-left: 0em;}
.syntax_indent1 {margin-left: 1em;}
.syntax_indent2 {margin-left: 2em;}
.syntax_indent3 {margin-left: 3em;}
.syntax_indent4 {margin-left: 4em;}
.syntax_indent5 {margin-left: 5em;}
.syntax_indent6 {margin-left: 6em;}
.syntax_indent7 {margin-left: 7em;}
//-->
</style>
<script type="text/javascript" language="javascript">
<!--
// Updates the title of the frameset if possible (ns4 does not allow this)
if (typeof(parent.document) != 'undefined' && typeof(parent.document) != 'unknown'
&& typeof(parent.document.title) == 'string') {
parent.document.title = 'art.artwork running on localhost - phpMyAdmin 2.4.1-dev';
}
// js form validation stuff
var errorMsg0 = 'Missing value in the form !';
var errorMsg1 = 'This is not a number!';
var errorMsg2 = ' is not a valid row number!';
var noDropDbMsg = '"DROP DATABASE" statements are disabled.';
var confirmMsg = 'Do you really want to ';
//-->
</script>
<script src="libraries/functions.js" type="text/javascript" language="javascript"></script>
<script>
if (top.frames.queryframe) {
top.frames.queryframe.document.queryframeform.db.value = "art";
top.frames.queryframe.document.queryframeform.table.value = "artwork";
}
function reload_querywindow () {
if (top.frames.queryframe && top.frames.queryframe.querywindow && !top.frames.queryframe.querywindow.closed && top.frames.queryframe.querywindow.location) {
top.frames.queryframe.querywindow.document.querywindow.db.value = "art";
top.frames.queryframe.querywindow.document.querywindow.query_history_latest_db.value = "art";
top.frames.queryframe.querywindow.document.querywindow.table.value = "artwork";
top.frames.queryframe.querywindow.document.querywindow.query_history_latest_table.value = "artwork";
top.frames.queryframe.querywindow.document.querywindow.query_history_latest.value = "SELECT++%2A++FROM++%60artwork%60+";
top.frames.queryframe.querywindow.document.querywindow.submit();
}
}
function focus_querywindow() {
if (top.frames.queryframe && top.frames.queryframe.querywindow && !top.frames.queryframe.querywindow.closed && top.frames.queryframe.querywindow.location) {
top.frames.queryframe.querywindow.focus();
} else if (top.frames.queryframe) {
top.frames.queryframe.querywindow=window.open('querywindow.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork', 'js_querywindow','toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=yes,resizable=yes,width=550,height=310');
if (!top.frames.queryframe.querywindow.opener) {
top.frames.queryframe.querywindow.opener = top.frames.queryframe;
}
reload_querywindow();
}
}
reload_querywindow();
self.focus();
</script>
</head>
<body bgcolor="#F5F5F5">
<h1>
Database <i><a class="h1" href="db_details_structure.php3?lang=en-iso-8859-1&server=1&db=art">art</a></i>
- Table <i><a class="h1" href="tbl_properties_structure.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork">artwork</a></i>
running on <i><a class="h1" href="main.php3?lang=en-iso-8859-1&server=1">localhost</a></i>
</h1>
<!-- top menu -->
<table border="0" cellspacing="0" cellpadding="3" width="100%" class="tabs">
<tr>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="tbl_properties_structure.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3"><nobr><b>Structure</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="silver" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3&sql_query=SELECT+%2A+FROM+%60artwork%60&pos=0"><nobr><b>Browse</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="tbl_properties.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3"><nobr><b>SQL</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="tbl_select.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3"><nobr><b>Select</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="tbl_change.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3"><nobr><b>Insert</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="tbl_properties_export.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3"><nobr><b>Export</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="tbl_properties_operations.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3"><nobr><b>Operations</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="tbl_properties_options.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3"><nobr><b>Options</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=tbl_properties.php3&sql_query=DELETE+FROM+%60artwork%60&zero_rows=Table+artwork+has+been+emptied" class="drop" onclick="return confirmLink(this, 'DELETE FROM `artwork`')"><nobr><b>Empty</b></a></nobr>
</td>
<td width="1%"> </td>
<td bgcolor="#DFDFDF" align="center" nowrap="nowrap" class="tab" width="9%">
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&goto=tbl_properties.php3&back=db_details.php3&reload=1&purge=1&sql_query=DROP+TABLE+%60artwork%60&zero_rows=Table+artwork+has+been+dropped" class="drop" onclick="return confirmLink(this, 'DROP TABLE `artwork`')"><nobr><b>Drop</b></a></nobr>
</td>
<td width="1%"> </td>
</tr></table><br />
<script type="text/javascript" language="javascript1.2">
<!--
if (typeof(document.getElementById) != 'undefined'
&& typeof(window.parent.frames['nav']) != 'undefined'
&& typeof(window.parent.frames['nav'].document) != 'undefined' && typeof(window.parent.frames['nav'].document) != 'unknown'
&& typeof(window.parent.frames['nav'].document.getElementById('tbl_431a210e866f6a0b95ea506860e8e5cd')) != 'undefined'
&& typeof(window.parent.frames['nav'].document.getElementById('tbl_431a210e866f6a0b95ea506860e8e5cd').title) == 'string') {
window.parent.frames['nav'].document.getElementById('tbl_431a210e866f6a0b95ea506860e8e5cd').title = '(5 Rows)';
}
//-->
</script>
<div align="left">
<table border="0" cellpadding="5">
<tr>
<td bgcolor="#D3DCE3">
<b>Showing rows 0 - 4 (5 total, Query took 0.0127 sec)</b><br />
</td>
</tr>
<tr>
<td bgcolor="#CCCCCC">
SQL-query : [<a href="tbl_properties.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&sql_query=SELECT++%2A++FROM++%60artwork%60+&show_query=1#querybox" onclick="focus_querywindow(); return false;">Edit</a>] [<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&sql_query=EXPLAIN+SELECT++%2A++FROM++%60artwork%60+">Explain SQL</a>] [<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&show_query=1&sql_query=SELECT++%2A++FROM++%60artwork%60+&show_as_php=1">Create PHP Code</a>]<br />
<span class="syntax"><span class="syntax_alpha syntax_alpha_reservedWord">SELECT</span> <span class="syntax_punct">*</span> <br /><span class="syntax_alpha syntax_alpha_reservedWord">FROM</span> <span class="syntax_quote syntax_quote_backtick">`artwork`</span> </span> <span class="syntax"><span class="syntax_alpha syntax_alpha_reservedWord">LIMIT</span> <span class="syntax_digit syntax_digit_integer">0</span> <span class="syntax_punct syntax_punct_listsep">,</span> <span class="syntax_digit syntax_digit_integer">30</span></span>
</td>
</tr>
</table>
</div><br />
<!-- Navigation bar -->
<table border="0">
<tr>
<td>
</td>
<td align="center">
<form action="sql.php3" method="post"
onsubmit="return (checkFormElementInRange(this, 'session_max_rows', 1) && checkFormElementInRange(this, 'pos', 0, 4))">
<input type="hidden" name="lang" value="en-iso-8859-1" />
<input type="hidden" name="server" value="1" />
<input type="hidden" name="db" value="art" />
<input type="hidden" name="table" value="artwork" />
<input type="hidden" name="sql_query" value="SELECT++%2A++FROM++%60artwork%60+" />
<input type="hidden" name="goto" value="tbl_properties_structure.php3" />
<input type="hidden" name="dontlimitchars" value="0" />
<input type="submit" name="navig" value="Show :" />
<input type="text" name="session_max_rows" size="3" value="30" class="textfield" onfocus="this.select()" />
row(s) starting from record #
<input type="text" name="pos" size="6" value="0" class="textfield" onfocus="this.select()" />
<br />
in
<select name="disp_direction">
<option value="horizontal" selected="selected">horizontal</option>
<option value="horizontalflipped">horizontal (rotated headers)</option>
<option value="vertical">vertical</option>
</select>
mode and repeat headers after
<input type="text" size="3" name="repeat_cells" value="100" class="textfield" />
cells
</form>
</td>
<td>
</td>
</tr>
</table>
<!-- Results table -->
<table class=shrink border="0" cellpadding="5">
<!-- Results table headers -->
<tr>
<td colspan="2"></td>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60artworkid%60+ASC" >
artworkid</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60ArtistId%60+ASC" >
ArtistId</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60PicName%60+ASC" >
PicName</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60Format%60+ASC" >
Format</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60PicHeight%60+ASC" >
PicHeight</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60PicWidth%60+ASC" >
PicWidth</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60PicThick%60+ASC" >
PicThick</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60PicPrice%60+ASC" >
PicPrice</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60Media%60+ASC" >
Media</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60PicStatus%60+ASC" >
PicStatus</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60LastMod%60+ASC" >
LastMod</a>
</th>
<th >
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60++ORDER+BY+%60Active%60+ASC" >
Active</a>
</th>
</tr>
<!-- Results table body -->
<tr onmouseover="setPointer(this, 0, 'over', '#DDDDDD', '#CCFFCC', '#FFCC99');" onmouseout="setPointer(this, 0, 'out', '#DDDDDD', '#CCFFCC', '#FFCC99');" onmousedown="setPointer(this, 0, 'click', '#DDDDDD', '#CCFFCC', '#FFCC99');">
<td bgcolor="#DDDDDD">
<a href="tbl_change.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&primary_key=+%60artworkid%60+%3D+%271%27&sql_query=SELECT++%2A++FROM++%60artwork%60+&goto=sql.php3">
Edit</a>
</td>
<td bgcolor="#DDDDDD">
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=DELETE+FROM+%60artwork%60+WHERE+%60artworkid%60+%3D+%271%27+LIMIT+1&zero_rows=The+row+has+been+deleted&goto=sql.php3%3Flang%3Den-iso-8859-1%26server%3D1%26db%3Dart%26table%3Dartwork%26pos%3D0%26session_max_rows%3D30%26disp_direction%3Dhorizontal%26repeat_cells%3D100%26dontlimitchars%3D0%26sql_query%3DSELECT%2B%2B%252A%2B%2BFROM%2B%2B%2560artwork%2560%2B%26zero_rows%3DThe%2Brow%2Bhas%2Bbeen%2Bdeleted%26goto%3Dtbl_properties_structure.php3" onclick="return confirmLink(this, 'DELETE FROM `artwork` WHERE `artworkid` = \'1\' LIMIT 1')">
Delete</a>
</td>
<td align="right" valign="top" bgcolor="#DDDDDD">1</td>
<td align="right" valign="top" bgcolor="#DDDDDD">1</td>
<td valign="top" bgcolor="#DDDDDD">Hammer Head</td>
<td valign="top" bgcolor="#DDDDDD">png</td>
<td align="right" valign="top" bgcolor="#DDDDDD">255</td>
<td align="right" valign="top" bgcolor="#DDDDDD">200</td>
<td align="right" valign="top" bgcolor="#DDDDDD"><i>NULL</i></td>
<td align="right" valign="top" bgcolor="#DDDDDD"><i>NULL</i></td>
<td valign="top" bgcolor="#DDDDDD">Paper and Wood</td>
<td valign="top" bgcolor="#DDDDDD">Unknown</td>
<td align="right" valign="top" bgcolor="#DDDDDD">20021114161022</td>
<td valign="top" bgcolor="#DDDDDD" nowrap="nowrap">2002-11-14 16:10:22</td>
</tr>
<tr onmouseover="setPointer(this, 1, 'over', '#CCCCCC', '#CCFFCC', '#FFCC99');" onmouseout="setPointer(this, 1, 'out', '#CCCCCC', '#CCFFCC', '#FFCC99');" onmousedown="setPointer(this, 1, 'click', '#CCCCCC', '#CCFFCC', '#FFCC99');">
<td bgcolor="#CCCCCC">
<a href="tbl_change.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&primary_key=+%60artworkid%60+%3D+%272%27&sql_query=SELECT++%2A++FROM++%60artwork%60+&goto=sql.php3">
Edit</a>
</td>
<td bgcolor="#CCCCCC">
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=DELETE+FROM+%60artwork%60+WHERE+%60artworkid%60+%3D+%272%27+LIMIT+1&zero_rows=The+row+has+been+deleted&goto=sql.php3%3Flang%3Den-iso-8859-1%26server%3D1%26db%3Dart%26table%3Dartwork%26pos%3D0%26session_max_rows%3D30%26disp_direction%3Dhorizontal%26repeat_cells%3D100%26dontlimitchars%3D0%26sql_query%3DSELECT%2B%2B%252A%2B%2BFROM%2B%2B%2560artwork%2560%2B%26zero_rows%3DThe%2Brow%2Bhas%2Bbeen%2Bdeleted%26goto%3Dtbl_properties_structure.php3" onclick="return confirmLink(this, 'DELETE FROM `artwork` WHERE `artworkid` = \'2\' LIMIT 1')">
Delete</a>
</td>
<td align="right" valign="top" bgcolor="#CCCCCC">2</td>
<td align="right" valign="top" bgcolor="#CCCCCC">1</td>
<td valign="top" bgcolor="#CCCCCC">Peters Hammer</td>
<td valign="top" bgcolor="#CCCCCC">png</td>
<td align="right" valign="top" bgcolor="#CCCCCC">90</td>
<td align="right" valign="top" bgcolor="#CCCCCC">20</td>
<td align="right" valign="top" bgcolor="#CCCCCC"><i>NULL</i></td>
<td align="right" valign="top" bgcolor="#CCCCCC"><i>NULL</i></td>
<td valign="top" bgcolor="#CCCCCC"><i>NULL</i></td>
<td valign="top" bgcolor="#CCCCCC">Unknown</td>
<td align="right" valign="top" bgcolor="#CCCCCC">20020822150802</td>
<td valign="top" bgcolor="#CCCCCC"><i>NULL</i></td>
</tr>
<tr onmouseover="setPointer(this, 2, 'over', '#DDDDDD', '#CCFFCC', '#FFCC99');" onmouseout="setPointer(this, 2, 'out', '#DDDDDD', '#CCFFCC', '#FFCC99');" onmousedown="setPointer(this, 2, 'click', '#DDDDDD', '#CCFFCC', '#FFCC99');">
<td bgcolor="#DDDDDD">
<a href="tbl_change.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&primary_key=+%60artworkid%60+%3D+%273%27&sql_query=SELECT++%2A++FROM++%60artwork%60+&goto=sql.php3">
Edit</a>
</td>
<td bgcolor="#DDDDDD">
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=DELETE+FROM+%60artwork%60+WHERE+%60artworkid%60+%3D+%273%27+LIMIT+1&zero_rows=The+row+has+been+deleted&goto=sql.php3%3Flang%3Den-iso-8859-1%26server%3D1%26db%3Dart%26table%3Dartwork%26pos%3D0%26session_max_rows%3D30%26disp_direction%3Dhorizontal%26repeat_cells%3D100%26dontlimitchars%3D0%26sql_query%3DSELECT%2B%2B%252A%2B%2BFROM%2B%2B%2560artwork%2560%2B%26zero_rows%3DThe%2Brow%2Bhas%2Bbeen%2Bdeleted%26goto%3Dtbl_properties_structure.php3" onclick="return confirmLink(this, 'DELETE FROM `artwork` WHERE `artworkid` = \'3\' LIMIT 1')">
Delete</a>
</td>
<td align="right" valign="top" bgcolor="#DDDDDD">3</td>
<td align="right" valign="top" bgcolor="#DDDDDD">1</td>
<td valign="top" bgcolor="#DDDDDD">My Hammer</td>
<td valign="top" bgcolor="#DDDDDD">png</td>
<td align="right" valign="top" bgcolor="#DDDDDD">10</td>
<td align="right" valign="top" bgcolor="#DDDDDD">50</td>
<td align="right" valign="top" bgcolor="#DDDDDD"><i>NULL</i></td>
<td align="right" valign="top" bgcolor="#DDDDDD">65535</td>
<td valign="top" bgcolor="#DDDDDD"><i>NULL</i></td>
<td valign="top" bgcolor="#DDDDDD">Unknown</td>
<td align="right" valign="top" bgcolor="#DDDDDD">20020822150802</td>
<td valign="top" bgcolor="#DDDDDD"><i>NULL</i></td>
</tr>
<tr onmouseover="setPointer(this, 3, 'over', '#CCCCCC', '#CCFFCC', '#FFCC99');" onmouseout="setPointer(this, 3, 'out', '#CCCCCC', '#CCFFCC', '#FFCC99');" onmousedown="setPointer(this, 3, 'click', '#CCCCCC', '#CCFFCC', '#FFCC99');">
<td bgcolor="#CCCCCC">
<a href="tbl_change.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&primary_key=+%60artworkid%60+%3D+%274%27&sql_query=SELECT++%2A++FROM++%60artwork%60+&goto=sql.php3">
Edit</a>
</td>
<td bgcolor="#CCCCCC">
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=DELETE+FROM+%60artwork%60+WHERE+%60artworkid%60+%3D+%274%27+LIMIT+1&zero_rows=The+row+has+been+deleted&goto=sql.php3%3Flang%3Den-iso-8859-1%26server%3D1%26db%3Dart%26table%3Dartwork%26pos%3D0%26session_max_rows%3D30%26disp_direction%3Dhorizontal%26repeat_cells%3D100%26dontlimitchars%3D0%26sql_query%3DSELECT%2B%2B%252A%2B%2BFROM%2B%2B%2560artwork%2560%2B%26zero_rows%3DThe%2Brow%2Bhas%2Bbeen%2Bdeleted%26goto%3Dtbl_properties_structure.php3" onclick="return confirmLink(this, 'DELETE FROM `artwork` WHERE `artworkid` = \'4\' LIMIT 1')">
Delete</a>
</td>
<td align="right" valign="top" bgcolor="#CCCCCC">4</td>
<td align="right" valign="top" bgcolor="#CCCCCC">1</td>
<td valign="top" bgcolor="#CCCCCC">Next Line Hammer</td>
<td valign="top" bgcolor="#CCCCCC">png</td>
<td align="right" valign="top" bgcolor="#CCCCCC">20</td>
<td align="right" valign="top" bgcolor="#CCCCCC">50</td>
<td align="right" valign="top" bgcolor="#CCCCCC"><i>NULL</i></td>
<td align="right" valign="top" bgcolor="#CCCCCC"><i>NULL</i></td>
<td valign="top" bgcolor="#CCCCCC"><i>NULL</i></td>
<td valign="top" bgcolor="#CCCCCC">Unknown</td>
<td align="right" valign="top" bgcolor="#CCCCCC">20021114161211</td>
<td valign="top" bgcolor="#CCCCCC" nowrap="nowrap">2002-11-14 16:12:11</td>
</tr>
<tr onmouseover="setPointer(this, 4, 'over', '#DDDDDD', '#CCFFCC', '#FFCC99');" onmouseout="setPointer(this, 4, 'out', '#DDDDDD', '#CCFFCC', '#FFCC99');" onmousedown="setPointer(this, 4, 'click', '#DDDDDD', '#CCFFCC', '#FFCC99');">
<td bgcolor="#DDDDDD">
<a href="tbl_change.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&primary_key=+%60artworkid%60+%3D+%275%27&sql_query=SELECT++%2A++FROM++%60artwork%60+&goto=sql.php3">
Edit</a>
</td>
<td bgcolor="#DDDDDD">
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=DELETE+FROM+%60artwork%60+WHERE+%60artworkid%60+%3D+%275%27+LIMIT+1&zero_rows=The+row+has+been+deleted&goto=sql.php3%3Flang%3Den-iso-8859-1%26server%3D1%26db%3Dart%26table%3Dartwork%26pos%3D0%26session_max_rows%3D30%26disp_direction%3Dhorizontal%26repeat_cells%3D100%26dontlimitchars%3D0%26sql_query%3DSELECT%2B%2B%252A%2B%2BFROM%2B%2B%2560artwork%2560%2B%26zero_rows%3DThe%2Brow%2Bhas%2Bbeen%2Bdeleted%26goto%3Dtbl_properties_structure.php3" onclick="return confirmLink(this, 'DELETE FROM `artwork` WHERE `artworkid` = \'5\' LIMIT 1')">
Delete</a>
</td>
<td align="right" valign="top" bgcolor="#DDDDDD">5</td>
<td align="right" valign="top" bgcolor="#DDDDDD">1</td>
<td valign="top" bgcolor="#DDDDDD">A nice pic</td>
<td valign="top" bgcolor="#DDDDDD">png</td>
<td align="right" valign="top" bgcolor="#DDDDDD">12</td>
<td align="right" valign="top" bgcolor="#DDDDDD">23</td>
<td align="right" valign="top" bgcolor="#DDDDDD"><i>NULL</i></td>
<td align="right" valign="top" bgcolor="#DDDDDD">22463</td>
<td valign="top" bgcolor="#DDDDDD"><i>NULL</i></td>
<td valign="top" bgcolor="#DDDDDD">For Sale Online</td>
<td align="right" valign="top" bgcolor="#DDDDDD">20020823193614</td>
<td valign="top" bgcolor="#DDDDDD" nowrap="nowrap">0000-00-00 00:00:00</td>
</tr>
</table>
<span id=ShrinkCard style="display:none">
<b>Smaller</b>
<input type=radio name="resize" VALUE="0" onmouseup="shrink(this.value)">
<input type=radio name="resize" VALUE="1" onmouseup="shrink(this.value)">
<input type=radio name="resize" VALUE="2" onmouseup="shrink(this.value)">
<input type=radio name="resize" VALUE="3" onmouseup="shrink(this.value)">
<input type=radio name="resize" VALUE="4" onmouseup="shrink(this.value)">
<input type=radio name="resize" VALUE="5" onmouseup="shrink(this.value)" CHECKED>
<input type=radio name="resize" VALUE="6" onmouseup="shrink(this.value)">
<b>Larger</b>
<br />
</span>
<script language="JavaScript" type="text/javascript" defer>
<!--
if (navigator.appName.indexOf('Internet Explorer') != -1){
ShrinkCard.style.display = 'inline';
}
function shrink(size){
document.styleSheets[0].rules[0].style.fontSize = (size * 9) + 55 + "%";
document.styleSheets[0].rules[1].style.fontSize= (size * 9) + 55 + "%";
document.styleSheets[0].rules[2].style.fontSize= (size * 9) + 55 + "%";
document.styleSheets[0].rules[3].style.width= (size * 8) + 55 + "%";
document.styleSheets[0].rules[3].style.height= (size * 8) + 55 + "%";
document.styleSheets[0].rules[1].style.padding = size + "px";
document.styleSheets[0].rules[1].style.margin = size + "px";
document.styleSheets[0].rules[2].style.padding = size + "px";
document.styleSheets[0].rules[2].style.margin = size + "px";
}
//-->
</script>
<br />
<!-- Navigation bar -->
<table border="0">
<tr>
<td>
</td>
<td align="center">
<form action="sql.php3" method="post"
onsubmit="return (checkFormElementInRange(this, 'session_max_rows', 1) && checkFormElementInRange(this, 'pos', 0, 4))">
<input type="hidden" name="lang" value="en-iso-8859-1" />
<input type="hidden" name="server" value="1" />
<input type="hidden" name="db" value="art" />
<input type="hidden" name="table" value="artwork" />
<input type="hidden" name="sql_query" value="SELECT++%2A++FROM++%60artwork%60+" />
<input type="hidden" name="goto" value="tbl_properties_structure.php3" />
<input type="hidden" name="dontlimitchars" value="0" />
<input type="submit" name="navig" value="Show :" />
<input type="text" name="session_max_rows" size="3" value="30" class="textfield" onfocus="this.select()" />
row(s) starting from record #
<input type="text" name="pos" size="6" value="0" class="textfield" onfocus="this.select()" />
<br />
in
<select name="disp_direction">
<option value="horizontal" selected="selected">horizontal</option>
<option value="horizontalflipped">horizontal (rotated headers)</option>
<option value="vertical">vertical</option>
</select>
mode and repeat headers after
<input type="text" size="3" name="repeat_cells" value="100" class="textfield" />
cells
</form>
</td>
<td>
</td>
</tr>
</table>
<p>
<!-- Insert a new row -->
<a href="tbl_change.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&dontlimitchars=0&sql_query=SELECT++%2A++FROM++%60artwork%60+&goto=sql.php3%3Flang%3Den-iso-8859-1%26amp%3Bserver%3D1%26amp%3Bdb%3Dart%26amp%3Btable%3Dartwork%26amp%3Bpos%3D0%26amp%3Bsession_max_rows%3D30%26amp%3Bdisp_direction%3Dhorizontal%26amp%3Brepeat_cells%3D100%26amp%3Bdontlimitchars%3D0%26amp%3Bsql_query%3DSELECT%2B%2B%252A%2B%2BFROM%2B%2B%2560artwork%2560%2B">Insert new row</a><br />
<!-- Print view -->
<a href="sql.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&printview=1&sql_query=SELECT++%2A++FROM++%60artwork%60+" target="print_view">Print view</a>
</p>
<!-- Export -->
<a href="tbl_properties_export.php3?lang=en-iso-8859-1&server=1&db=art&table=artwork&pos=0&session_max_rows=30&disp_direction=horizontal&repeat_cells=100&printview=1&sql_query=SELECT++%2A++FROM++%60artwork%60+&unlim_num_rows=5">Export</a>
<script language="JavaScript" type="text/javascript">
<!--
/* $Id: functions.js,v 1.31 2003/02/24 16:07:02 garvinhicking Exp $ */
/**
* Displays an confirmation box beforme to submit a "DROP/DELETE/ALTER" query.
* This function is called while clicking links
*
* @param object the link
* @param object the sql query to submit
*
* @return boolean whether to run the query or not
*/
function confirmLink(theLink, theSqlQuery)
{
// Confirmation is not required in the configuration file
// or browser is Opera (crappy js implementation)
if (confirmMsg == '' || typeof(window.opera) != 'undefined') {
return true;
}
var is_confirmed = confirm(confirmMsg + ' :\n' + theSqlQuery);
if (is_confirmed) {
theLink.href += '&is_js_confirmed=1';
}
return is_confirmed;
} // end of the 'confirmLink()' function
/**
* Displays an error message if a "DROP DATABASE" statement is submitted
* while it isn't allowed, else confirms a "DROP/DELETE/ALTER" query before
* sumitting it if required.
* This function is called by the 'checkSqlQuery()' js function.
*
* @param object the form
* @param object the sql query textarea
*
* @return boolean whether to run the query or not
*
* @see checkSqlQuery()
*/
function confirmQuery(theForm1, sqlQuery1)
{
// Confirmation is not required in the configuration file
if (confirmMsg == '') {
return true;
}
// The replace function (js1.2) isn't supported
else if (typeof(sqlQuery1.value.replace) == 'undefined') {
return true;
}
// js1.2+ -> validation with regular expressions
else {
// "DROP DATABASE" statement isn't allowed
if (noDropDbMsg != '') {
var drop_re = new RegExp('DROP\\s+(IF EXISTS\\s+)?DATABASE\\s', 'i');
if (drop_re.test(sqlQuery1.value)) {
alert(noDropDbMsg);
theForm1.reset();
sqlQuery1.focus();
return false;
} // end if
} // end if
// Confirms a "DROP/DELETE/ALTER" statement
//
// TODO: find a way (if possible) to use the parser-analyser
// for this kind of verification
// For now, I just added a ^ to check for the statement at
// beginning of expression
//var do_confirm_re_0 = new RegExp('DROP\\s+(IF EXISTS\\s+)?(TABLE|DATABASE)\\s', 'i');
//var do_confirm_re_1 = new RegExp('ALTER\\s+TABLE\\s+((`[^`]+`)|([A-Za-z0-9_$]+))\\s+DROP\\s', 'i');
//var do_confirm_re_2 = new RegExp('DELETE\\s+FROM\\s', 'i');
var do_confirm_re_0 = new RegExp('^DROP\\s+(IF EXISTS\\s+)?(TABLE|DATABASE)\\s', 'i');
var do_confirm_re_1 = new RegExp('^ALTER\\s+TABLE\\s+((`[^`]+`)|([A-Za-z0-9_$]+))\\s+DROP\\s', 'i');
var do_confirm_re_2 = new RegExp('^DELETE\\s+FROM\\s', 'i');
if (do_confirm_re_0.test(sqlQuery1.value)
|| do_confirm_re_1.test(sqlQuery1.value)
|| do_confirm_re_2.test(sqlQuery1.value)) {
var message = (sqlQuery1.value.length > 100)
? sqlQuery1.value.substr(0, 100) + '\n ...'
: sqlQuery1.value;
var is_confirmed = confirm(confirmMsg + ' :\n' + message);
// drop/delete/alter statement is confirmed -> update the
// "is_js_confirmed" form field so the confirm test won't be
// run on the server side and allows to submit the form
if (is_confirmed) {
theForm1.elements['is_js_confirmed'].value = 1;
return true;
}
// "DROP/DELETE/ALTER" statement is rejected -> do not submit
// the form
else {
window.focus();
sqlQuery1.focus();
return false;
} // end if (handle confirm box result)
} // end if (display confirm box)
} // end confirmation stuff
return true;
} // end of the 'confirmQuery()' function
/**
* Displays an error message if the user submitted the sql query form with no
* sql query, else checks for "DROP/DELETE/ALTER" statements
*
* @param object the form
*
* @return boolean always false
*
* @see confirmQuery()
*/
function checkSqlQuery(theForm)
{
var sqlQuery = theForm.elements['sql_query'];
var isEmpty = 1;
// The replace function (js1.2) isn't supported -> basic tests
if (typeof(sqlQuery.value.replace) == 'undefined') {
isEmpty = (sqlQuery.value == '') ? 1 : 0;
if (isEmpty && typeof(theForm.elements['sql_file']) != 'undefined') {
isEmpty = (theForm.elements['sql_file'].value == '') ? 1 : 0;
}
if (isEmpty && typeof(theForm.elements['sql_localfile']) != 'undefined') {
isEmpty = (theForm.elements['sql_localfile'].value == '') ? 1 : 0;
}
if (isEmpty && typeof(theForm.elements['id_bookmark']) != 'undefined') {
isEmpty = (theForm.elements['id_bookmark'].value == null || theForm.elements['id_bookmark'].value == '');
}
}
// js1.2+ -> validation with regular expressions
else {
var space_re = new RegExp('\\s+');
isEmpty = (sqlQuery.value.replace(space_re, '') == '') ? 1 : 0;
// Checks for "DROP/DELETE/ALTER" statements
if (!isEmpty && !confirmQuery(theForm, sqlQuery)) {
return false;
}
if (isEmpty && typeof(theForm.elements['sql_file']) != 'undefined') {
isEmpty = (theForm.elements['sql_file'].value.replace(space_re, '') == '') ? 1 : 0;
}
if (isEmpty && typeof(theForm.elements['sql_localfile']) != 'undefined') {
isEmpty = (theForm.elements['sql_localfile'].value.replace(space_re, '') == '') ? 1 : 0;
}
if (isEmpty && typeof(theForm.elements['id_bookmark']) != 'undefined') {
isEmpty = (theForm.elements['id_bookmark'].value == null || theForm.elements['id_bookmark'].value == '');
isEmpty = (theForm.elements['id_bookmark'].selectedIndex == 0);
}
if (isEmpty) {
theForm.reset();
}
}
if (isEmpty) {
sqlQuery.select();
alert(errorMsg0);
sqlQuery.focus();
return false;
}
return true;
} // end of the 'checkSqlQuery()' function
/**
* Displays an error message if an element of a form hasn't been completed and
* should be
*
* @param object the form
* @param string the name of the form field to put the focus on
*
* @return boolean whether the form field is empty or not
*/
function emptyFormElements(theForm, theFieldName)
{
var isEmpty = 1;
var theField = theForm.elements[theFieldName];
// Whether the replace function (js1.2) is supported or not
var isRegExp = (typeof(theField.value.replace) != 'undefined');
if (!isRegExp) {
isEmpty = (theField.value == '') ? 1 : 0;
} else {
var space_re = new RegExp('\\s+');
isEmpty = (theField.value.replace(space_re, '') == '') ? 1 : 0;
}
if (isEmpty) {
theForm.reset();
theField.select();
alert(errorMsg0);
theField.focus();
return false;
}
return true;
} // end of the 'emptyFormElements()' function
/**
* Ensures a value submitted in a form is numeric and is in a range
*
* @param object the form
* @param string the name of the form field to check
* @param integer the minimum authorized value
* @param integer the maximum authorized value
*
* @return boolean whether a valid number has been submitted or not
*/
function checkFormElementInRange(theForm, theFieldName, min, max)
{
var theField = theForm.elements[theFieldName];
var val = parseInt(theField.value);
if (typeof(min) == 'undefined') {
min = 0;
}
if (typeof(max) == 'undefined') {
max = Number.MAX_VALUE;
}
// It's not a number
if (isNaN(val)) {
theField.select();
alert(errorMsg1);
theField.focus();
return false;
}
// It's a number but it is not between min and max
else if (val < min || val > max) {
theField.select();
alert(val + errorMsg2);
theField.focus();
return false;
}
// It's a valid number
else {
theField.value = val;
}
return true;
} // end of the 'checkFormElementInRange()' function
/**
* Ensures the choice between 'transmit', 'zipped', 'gzipped' and 'bzipped'
* checkboxes is consistant
*
* @param object the form
* @param string a code for the action that causes this function to be run
*
* @return boolean always true
*/
function checkTransmitDump(theForm, theAction)
{
var formElts = theForm.elements;
// 'zipped' option has been checked
if (theAction == 'zip' && formElts['zip'].checked) {
if (!formElts['asfile'].checked) {
theForm.elements['asfile'].checked = true;
}
if (typeof(formElts['gzip']) != 'undefined' && formElts['gzip'].checked) {
theForm.elements['gzip'].checked = false;
}
if (typeof(formElts['bzip']) != 'undefined' && formElts['bzip'].checked) {
theForm.elements['bzip'].checked = false;
}
}
// 'gzipped' option has been checked
else if (theAction == 'gzip' && formElts['gzip'].checked) {
if (!formElts['asfile'].checked) {
theForm.elements['asfile'].checked = true;
}
if (typeof(formElts['zip']) != 'undefined' && formElts['zip'].checked) {
theForm.elements['zip'].checked = false;
}
if (typeof(formElts['bzip']) != 'undefined' && formElts['bzip'].checked) {
theForm.elements['bzip'].checked = false;
}
}
// 'bzipped' option has been checked
else if (theAction == 'bzip' && formElts['bzip'].checked) {
if (!formElts['asfile'].checked) {
theForm.elements['asfile'].checked = true;
}
if (typeof(formElts['zip']) != 'undefined' && formElts['zip'].checked) {
theForm.elements['zip'].checked = false;
}
if (typeof(formElts['gzip']) != 'undefined' && formElts['gzip'].checked) {
theForm.elements['gzip'].checked = false;
}
}
// 'transmit' option has been unchecked
else if (theAction == 'transmit' && !formElts['asfile'].checked) {
if (typeof(formElts['zip']) != 'undefined' && formElts['zip'].checked) {
theForm.elements['zip'].checked = false;
}
if ((typeof(formElts['gzip']) != 'undefined' && formElts['gzip'].checked)) {
theForm.elements['gzip'].checked = false;
}
if ((typeof(formElts['bzip']) != 'undefined' && formElts['bzip'].checked)) {
theForm.elements['bzip'].checked = false;
}
}
return true;
} // end of the 'checkTransmitDump()' function
/**
* This array is used to remember mark status of rows in browse mode
*/
var marked_row = new Array;
/**
* Sets/unsets the pointer and marker in browse mode
*
* @param object the table row
* @param interger the row number
* @param string the action calling this script (over, out or click)
* @param string the default background color
* @param string the color to use for mouseover
* @param string the color to use for marking a row
*
* @return boolean whether pointer is set or not
*/
function setPointer(theRow, theRowNum, theAction, theDefaultColor, thePointerColor, theMarkColor)
{
var theCells = null;
// 1. Pointer and mark feature are disabled or the browser can't get the
// row -> exits
if ((thePointerColor == '' && theMarkColor == '')
|| typeof(theRow.style) == 'undefined') {
return false;
}
// 2. Gets the current row and exits if the browser can't get it
if (typeof(document.getElementsByTagName) != 'undefined') {
theCells = theRow.getElementsByTagName('td');
}
else if (typeof(theRow.cells) != 'undefined') {
theCells = theRow.cells;
}
else {
return false;
}
// 3. Gets the current color...
var rowCellsCnt = theCells.length;
var domDetect = null;
var currentColor = null;
var newColor = null;
// 3.1 ... with DOM compatible browsers except Opera that does not return
// valid values with "getAttribute"
if (typeof(window.opera) == 'undefined'
&& typeof(theCells[0].getAttribute) != 'undefined') {
currentColor = theCells[0].getAttribute('bgcolor');
domDetect = true;
}
// 3.2 ... with other browsers
else {
currentColor = theCells[0].style.backgroundColor;
domDetect = false;
} // end 3
// 4. Defines the new color
// 4.1 Current color is the default one
if (currentColor == ''
|| currentColor.toLowerCase() == theDefaultColor.toLowerCase()) {
if (theAction == 'over' && thePointerColor != '') {
newColor = thePointerColor;
}
else if (theAction == 'click' && theMarkColor != '') {
newColor = theMarkColor;
marked_row[theRowNum] = true;
}
}
// 4.1.2 Current color is the pointer one
else if (currentColor.toLowerCase() == thePointerColor.toLowerCase()
&& (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])) {
if (theAction == 'out') {
newColor = theDefaultColor;
}
else if (theAction == 'click' && theMarkColor != '') {
newColor = theMarkColor;
marked_row[theRowNum] = true;
}
}
// 4.1.3 Current color is the marker one
else if (currentColor.toLowerCase() == theMarkColor.toLowerCase()) {
if (theAction == 'click') {
newColor = (thePointerColor != '')
? thePointerColor
: theDefaultColor;
marked_row[theRowNum] = (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])
? true
: null;
}
} // end 4
// 5. Sets the new color...
if (newColor) {
var c = null;
// 5.1 ... with DOM compatible browsers except Opera
if (domDetect) {
for (c = 0; c < rowCellsCnt; c++) {
theCells[c].setAttribute('bgcolor', newColor, 0);
} // end for
}
// 5.2 ... with other browsers
else {
for (c = 0; c < rowCellsCnt; c++) {
theCells[c].style.backgroundColor = newColor;
}
}
} // end 5
return true;
} // end of the 'setPointer()' function
/*
* Sets/unsets the pointer and marker in vertical browse mode
*
* @param object the table row
* @param interger the row number
* @param string the action calling this script (over, out or click)
* @param string the default background color
* @param string the color to use for mouseover
* @param string the color to use for marking a row
*
* @return boolean whether pointer is set or not
*
* @author Garvin Hicking <me@supergarv.de> (rewrite of setPointer.)
*/
function setVerticalPointer(theRow, theRowNum, theAction, theDefaultColor1, theDefaultColor2, thePointerColor, theMarkColor) {
var theCells = null;
// 1. Pointer and mark feature are disabled or the browser can't get the
// row -> exits
if ((thePointerColor == '' && theMarkColor == '')
|| typeof(theRow.style) == 'undefined') {
return false;
}
// 2. Gets the current row and exits if the browser can't get it
if (typeof(document.getElementsByTagName) != 'undefined') {
theCells = theRow.getElementsByTagName('td');
}
else if (typeof(theRow.cells) != 'undefined') {
theCells = theRow.cells;
}
else {
return false;
}
// 3. Gets the current color...
var rowCellsCnt = theCells.length;
var domDetect = null;
var currentColor = null;
var newColor = null;
// 3.1 ... with DOM compatible browsers except Opera that does not return
// valid values with "getAttribute"
if (typeof(window.opera) == 'undefined'
&& typeof(theCells[0].getAttribute) != 'undefined') {
currentColor = theCells[0].getAttribute('bgcolor');
domDetect = true;
}
// 3.2 ... with other browsers
else {
domDetect = false;
} // end 3
var c = null;
// 5.1 ... with DOM compatible browsers except Opera
for (c = 0; c < rowCellsCnt; c++) {
if (domDetect) {
currentColor = theCells[c].getAttribute('bgcolor');
} else {
currentColor = theCells[c].style.backgroundColor;
}
// 4. Defines the new color
// 4.1 Current color is the default one
if (currentColor == ''
|| currentColor.toLowerCase() == theDefaultColor1.toLowerCase()
|| currentColor.toLowerCase() == theDefaultColor2.toLowerCase()) {
if (theAction == 'over' && thePointerColor != '') {
newColor = thePointerColor;
} else if (theAction == 'click' && theMarkColor != '') {
newColor = theMarkColor;
marked_row[theRowNum] = true;
}
}
// 4.1.2 Current color is the pointer one
else if (currentColor.toLowerCase() == thePointerColor.toLowerCase()
&& (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])) {
if (theAction == 'out') {
if (c % 2) {
newColor = theDefaultColor1;
} else {
newColor = theDefaultColor2;
}
}
else if (theAction == 'click' && theMarkColor != '') {
newColor = theMarkColor;
marked_row[theRowNum] = true;
}
}
// 4.1.3 Current color is the marker one
else if (currentColor.toLowerCase() == theMarkColor.toLowerCase()) {
if (theAction == 'click') {
newColor = (thePointerColor != '')
? thePointerColor
: ((c % 2) ? theDefaultColor1 : theDefaultColor2);
marked_row[theRowNum] = (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])
? true
: null;
}
} // end 4
// 5. Sets the new color...
if (newColor) {
if (domDetect) {
theCells[c].setAttribute('bgcolor', newColor, 0);
}
// 5.2 ... with other browsers
else {
theCells[c].style.backgroundColor = newColor;
}
} // end 5
} // end for
return true;
} // end of the 'setVerticalPointer()' function
/**
* Checks/unchecks all tables
*
* @param string the form name
* @param boolean whether to check or to uncheck the element
*
* @return boolean always true
*/
function setCheckboxes(the_form, do_check)
{
var elts = (typeof(document.forms[the_form].elements['selected_db[]']) != 'undefined')
? document.forms[the_form].elements['selected_db[]']
: (typeof(document.forms[the_form].elements['selected_tbl[]']) != 'undefined')
? document.forms[the_form].elements['selected_tbl[]']
: document.forms[the_form].elements['selected_fld[]'];
var elts_cnt = (typeof(elts.length) != 'undefined')
? elts.length
: 0;
if (elts_cnt) {
for (var i = 0; i < elts_cnt; i++) {
elts[i].checked = do_check;
} // end for
} else {
elts.checked = do_check;
} // end if... else
return true;
} // end of the 'setCheckboxes()' function
/**
* Checks/unchecks all options of a <select> element
*
* @param string the form name
* @param string the element name
* @param boolean whether to check or to uncheck the element
*
* @return boolean always true
*/
function setSelectOptions(the_form, the_select, do_check)
{
var selectObject = document.forms[the_form].elements[the_select];
var selectCount = selectObject.length;
for (var i = 0; i < selectCount; i++) {
selectObject.options[i].selected = do_check;
} // end for
return true;
} // end of the 'setSelectOptions()' function
/**
* Allows moving around inputs/select by Ctrl+arrows
*
* @param object event data
*/
function onKeyDownArrowsHandler(e) {
e = e||window.event;
var o = (e.srcElement||e.target);
if (!o) return;
if (o.tagName != "TEXTAREA" && o.tagName != "INPUT" && o.tagName != "SELECT") return;
if (!e.ctrlKey) return;
if (!o.id) return;
var pos = o.id.split("_");
if (pos[0] != "field" || typeof pos[2] == "undefined") return;
var x = pos[2], y=pos[1];
// skip non existent fields
for (i=0; i<10; i++)
{
switch(e.keyCode) {
case 38: y--; break; // up
case 40: y++; break; // down
case 37: x--; break; // left
case 39: x++; break; // right
default: return;
}
var id = "field_" + y + "_" + x;
var nO = document.getElementById(id);
if (nO) break;
}
if (!nO) return;
nO.focus();
if (nO.tagName != 'SELECT') {
nO.select();
}
e.returnValue = false;
}
//-->
</script>
</body>
</html>