[prev in list] [next in list] [prev in thread] [next in thread]
List: kfm-devel
Subject: Bug#25000: javascript field checking failing
From: matt () e-i-s ! cc
Date: 2001-04-30 14:47:00
[Download RAW message or body]
Package: khtml
Version: 3.0 (using KDE 2.1.0 )
Severity: normal
Installed from: compiled sources
Compiler: gcc version egcs-2.91.66 19990314 (egcs-1.1.2 release)
OS: Linux 2.2.14 i686
OS/Compiler notes:
The enclosed code fails on the submit/javascript verification. However, when I manually enter in a pin \
in the manual area (so it will accept the submission) Konqueror sends the correct information in all \
fields. This is an internal site and probably home-brewed. Otherwise I'd give you a URL.
Here is the code (snipped where huge):
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>AOLPS - Local Paging</title>
</head>
<body bgcolor="#FFFFFF" background="images/aolpsbg.gif" topmargin="4" leftmargin="5">
<div align="left">
<table border="0" cellspacing="0">
<tr>
<td colspan="2"><table border="0" cellspacing="0" cellpadding="3">
<tr>
<td rowspan="2"><font size="4" face="Arial"><strong><img src="images/aolpslogot.gif" alt="Amway \
Online Paging System" border="0" vspace="5" WIDTH="113" HEIGHT="75"></strong></font></td>
<td rowspan="2"><img src="images/animpaget.gif" WIDTH="53" HEIGHT="39"></td>
<td rowspan="2"><img src="images/blank.gif" width="20" height="5"></td>
<td><p align="center"><strong><font face="Arial">Local<br>
Paging</font></strong></td>
<td><font size="1" face="Arial">For sending local (Michigan) pages to any<br>
associate with an alphanumeric pager<br>
issued by Telecommunications in Ada.</font></td>
</tr>
<tr>
<td colspan="2" valign="bottom" align="center"><img src="images/ameritech.gif" alt="ameritech.gif \
(1107 bytes)" WIDTH="96" HEIGHT="37"></td> </tr>
</table>
</td>
</tr>
<tr>
<td valign="top"><!--webbot bot="Include" U-Include="menu.htm" TAG="BODY" startspan -->
<div align="left">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><a href="default.htm"><img src="images/menuhome.gif" alt="Home Page" border="0" WIDTH="150" \
HEIGHT="29"></a></td> </tr>
<tr>
<td><a href="paginghelp.htm"><img src="images/menuhelp.gif" alt="Paging Help" border="0" WIDTH="150" \
HEIGHT="29"></a></td> </tr>
<tr>
<td><MAP NAME="FrontPageMap"><AREA SHAPE="RECT" COORDS="3, 58, 142, 74" HREF="custom.htm"><AREA \
SHAPE="RECT" COORDS="1, 41, 143, 58" HREF="skytel.asp"><AREA SHAPE="RECT" COORDS="2, 23, 143, 41" \
HREF="local.asp"></MAP><a href="_vti_bin/shtml.dll/local.asp/map"><img ismap usemap="#FrontPageMap" \
border="0" height="82" alt="Choose a paging option" src="images/menupaging.gif" width="150"></a></td> \
</tr> <tr>
<td><a href="linking.htm"><img src="images/menulink.gif" alt="How to link to this page" border="0" \
WIDTH="150" HEIGHT="42"></a></td> </tr>
</table>
</div>
<!--webbot bot="Include" endspan i-checksum="55620" -->
</td>
<td width="400"><form action="http://paging.amwaynet/cgi-bin/sendpage.cgi" method="GET" \
name="PagingForm" onsubmit="return FormValidator(this)"> <input type="hidden" name="Phone" \
value="9,451-3777"><input type="hidden" name="result" value="http://paging.amwaynet/results.asp"><script \
language="JavaScript">
<!--
function countChars() {
document.PagingForm.len.value = document.PagingForm.Message.value.length;
}
function FormValidator(theForm)
{
var Public = false;
var Personal= false;
var Pins = false;
// alert("Die WebBot Die!");
// Check to see if any names are selected in the list box
// besides the first one.
//
if (theForm.Name7.selectedIndex > 0)
{
Public = true;
}
if (theForm.Name8.selectedIndex > 0)
{
Personal = true;
}
// Check for content in the PINS fields
//
if (theForm.Name.value.length > 0 )
Pins = true;
if (theForm.Name2.value.length > 0 )
Pins = true;
if (theForm.Name3.value.length > 0 )
Pins = true;
if (theForm.Name4.value.length > 0 )
Pins = true;
if (theForm.Name5.value.length > 0 )
Pins = true;
if (theForm.Name6.value.length > 0 )
Pins = true;
if( !Pins & !Public & !Personal )
{
alert( "You must select name(s) and/or enter PIN number(s).");
theForm.Name7.focus();
return (false);
}
if (theForm.Name.value.length > 12)
{
alert("Please enter at most 12 characters in the \"PIN #1\" field.");
theForm.Name.focus();
return (false);
}
var checkOK = "0123456789";
var checkStr = theForm.Name.value;
var allValid = true;
for (i = 0; i < checkStr.length; i++)
{
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
}
if (!allValid)
{
alert("Please enter only digit characters in the \"PIN #1\" field.");
theForm.Name.focus();
return (false);
}
var checkOK = "0123456789";
var checkStr = theForm.Name2.value;
var allValid = true;
for (i = 0; i < checkStr.length; i++)
{
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
}
if (!allValid)
{
alert("Please enter only digit characters in the \"PIN #2\" field.");
theForm.Name2.focus();
return (false);
}
var checkOK = "0123456789";
var checkStr = theForm.Name3.value;
var allValid = true;
for (i = 0; i < checkStr.length; i++)
{
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
}
if (!allValid)
{
alert("Please enter only digit characters in the \"PIN #3\" field.");
theForm.Name3.focus();
return (false);
}
var checkOK = "0123456789";
var checkStr = theForm.Name4.value;
var allValid = true;
for (i = 0; i < checkStr.length; i++)
{
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
}
if (!allValid)
{
alert("Please enter only digit characters in the \"PIN #4\" field.");
theForm.Name4.focus();
return (false);
}
var checkOK = "0123456789";
var checkStr = theForm.Name5.value;
var allValid = true;
for (i = 0; i < checkStr.length; i++)
{
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
}
if (!allValid)
{
alert("Please enter only digit characters in the \"PIN #5\" field.");
theForm.Name5.focus();
return (false);
}
var checkOK = "0123456789";
var checkStr = theForm.Name6.value;
var allValid = true;
for (i = 0; i < checkStr.length; i++)
{
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
}
if (!allValid)
{
alert("Please enter only digit characters in the \"PIN #6\" field.");
theForm.Name6.focus();
return (false);
}
if (theForm.Message.value == "")
{
alert("Please enter a value for the \"Message Text\" field.");
theForm.Message.focus();
return (false);
}
if (theForm.Message.value.length < 1)
{
alert("Please enter at least 1 characters in the \"Message Text\" field.");
theForm.Message.focus();
return (false);
}
if (theForm.Message.value.length > 170)
{
alert("Please enter at most 170 characters in the \"Message Text\" field.");
theForm.Message.focus();
return (false);
}
var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzÀÁ \
ÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþ0123456789-!@#$%^&*()_+-=[]\\{}|;':\",./<>? \
\t\r\n\f"; var checkStr = theForm.Message.value;
var allValid = true;
for (i = 0; i < checkStr.length; i++)
{
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
}
if (!allValid)
{
alert("Please enter only letter, digit, whitespace and \"!@#$%^&*()_+-=[]\\{}|;':\",./<>?\" \
characters in the \"Message Text\" field."); theForm.Message.focus();
return (false);
}
if (theForm.From.value == "")
{
alert("Please enter a value for the \"Signature\" field.");
theForm.From.focus();
return (false);
}
if (theForm.From.value.length < 1)
{
alert("Please enter at least 1 characters in the \"Signature\" field.");
theForm.From.focus();
return (false);
}
if (theForm.From.value.length > 20)
{
alert("Please enter at most 20 characters in the \"Signature\" field.");
theForm.From.focus();
return (false);
}
var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzÀÁ \
ÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþ0123456789-!@#$%^&*()_+-={}|[]\\:\";'<>?,./ \
\t\r\n\f"; var checkStr = theForm.From.value;
var allValid = true;
for (i = 0; i < checkStr.length; i++)
{
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
}
if (!allValid)
{
alert("Please enter only letter, digit, whitespace and \"!@#$%^&*()_+-={}|[]\\:\";'<>?,./\" \
characters in the \"Signature\" field."); theForm.From.focus();
return (false);
}
return (true);
}
//-->
</script>
<script LANGUAGE="JavaScript1.2">
<!--
if( (navigator.appName == "Netscape")
&& (parseInt(navigator.appVersion) >= 4) ) {
document.captureEvents( Event.KEYUP )
document.onkeyup = countChars;
}
if( (navigator.appName == "Microsoft Internet Explorer")
&& (parseInt(navigator.appVersion) >= 4) ) {
document.onkeyup = countChars;
}
//-->
</script>
<div align="center"><center><table border="0" bordercolor="#C0C0C0" cellspacing="0" cellpadding="0" \
width="400"> <tr>
<td><table border="0" cellspacing="0">
<tr>
<td valign="middle"><img src="images/1bullet.gif" align="middle" border="0" hspace="3" \
WIDTH="27" HEIGHT="27"></td> <td valign="middle"><strong><font face="Arial" size="2">Enter your \
message</font></strong><font size="1" face="Arial">: (Up to 170 characters)</font></td> </tr>
<tr>
<td></td>
<td><font size="3" face="Arial"><input type="text" size="40" maxlength="170" name="Message" \
onChange="countChars();" tabindex="1"></font></td> </tr>
<tr>
<td></td>
<td><font size="1" face="Arial">How long is your message? Length:</font><font \
face="Arial" size="2"><input type="text" size="3" name="len" tabindex="2"></font></td> </tr>
</table>
</td>
</tr>
<tr>
<td><table border="0" cellspacing="0">
<tr>
<td><img src="../images/2bullet.gif" align="middle" hspace="3"></td>
<td colspan="2"><font face="Arial"><strong><small>Choose page recipients:</small></strong>
<small><small>(Any combination, 32 max.)</small></small></font></td>
</tr>
<tr>
<td rowspan="2"></td>
<td><a href="pagerForm.asp"><img src="images/addname.gif" alt="Add your name to the list" \
border="0" WIDTH="169" HEIGHT="15"></a></td>
<td valign="middle"><a href="personal.asp"><img src="images/modify.gif" alt="Modify your \
personal list" border="0" WIDTH="165" HEIGHT="15"></a></td> </tr>
<tr>
<td><font face="Arial" size="2"><select name="Name7" multiple size="10" tabindex="3">
<option selected value="-- Amway's Public List --">-- Amway's Public List --</option>
<option value="1002345">2, pager</option>
<option value="1001234">Animal, John</option>
</select></font></td>
<td valign="middle"><select name="Name8" size="10" multiple tabindex="4">
<option selected>-- Personal List (Empty) --</option>
</select></td>
</tr>
<tr>
<td rowspan="2"></td>
<td rowspan="2"><font face="Arial" size="2"><strong>PIN Numbers: </strong></font><table \
border="0" cellpadding="2" cellspacing="0"> <tr>
<td><font size="3" face="Arial"><input type="text" size="8" maxlength="12" name="Name" \
tabindex="5"></font></td>
<td><font size="3" face="Arial"><input type="text" size="8" name="Name2" \
tabindex="6"></font></td>
<td><font size="3" face="Arial"><input type="text" size="8" name="Name3" \
tabindex="7"></font></td> </tr>
<tr>
<td><font size="3" face="Arial"><input type="text" size="8" name="Name4" \
tabindex="8"></font></td>
<td><font size="3" face="Arial"><input type="text" size="8" name="Name5" \
tabindex="9"></font></td>
<td><font size="3" face="Arial"><input type="text" size="8" name="Name6" \
tabindex="10"></font></td> </tr>
</table>
</td>
<td valign="bottom"><font face="Arial" size="2"><a href="paginghelp.htm#pins">What's a
PIN?</a></font></td>
</tr>
<tr>
<td valign="top"><font face="Arial" size="2"><a href="pinrequest.htm">What's MY PIN
number?</a></font></td>
</tr>
</table>
</td>
</tr>
<tr>
<td><table border="0" cellspacing="0">
<tr>
<td><font face="Arial" size="2"><img src="../images/3bullet.gif"></font></td>
<td valign="middle"><font face="Arial"><strong><small>Sign your message:</small></strong> \
<small><small>(20 chars. max.)</small></small></font></td>
</tr>
<tr>
<td></td>
<td valign="middle"><font face="Arial" size="2">[From:</font><font face="Arial" size="5"> \
</font><font size="3" face="Arial"><input type="text" size="20" maxlength="20" name="From" \
tabindex="11"></font><font face="Arial" size="2">]</font></td> </tr>
</table>
</td>
</tr>
<tr>
<td><table border="0" cellspacing="0">
<tr>
<td align="right"><font face="Arial" size="2"><img src="../images/4bullet.gif"></font></td>
<td align="right"><font face="Arial" size="2"><input type="submit" name="B1" value="Send \
page" tabindex="12"></font></td>
<td align="center" nowrap valign="middle"><font face="Arial" size="2"><strong>-or-</strong>
</font></td>
<td nowrap><font face="Arial" size="2"><input type="reset" name="B2" value="Reset fields" \
tabindex="13"></font></td> </tr>
</table>
</td>
</tr>
</table>
</center></div>
</form>
</td>
</tr>
<tr>
<td colspan="2"><!--webbot bot="Include" U-Include="footer.htm" TAG="BODY" startspan -->
<div align="center"><center>
<table border="0">
<tr>
<td><p align="center"><MAP NAME="FrontPageMap1"><AREA SHAPE="RECT" COORDS="235, 2, 395, 39" \
HREF="http://telecomm.amwaynet"><AREA SHAPE="RECT" COORDS="145, 2, 233, 39" \
HREF="http://amway.amwaynet"><AREA SHAPE="RECT" COORDS="63, 1, 144, 39" \
HREF="webmailform.asp?subject=the+Online+Paging+System"><AREA SHAPE="RECT" COORDS="1, 2, 58, 39" \
HREF="default.htm"></MAP><a href="_vti_bin/shtml.dll/local.asp/map1"><img ismap usemap="#FrontPageMap1" \
border="0" height="44" src="images/footer.gif" width="401"></a></td> </tr>
</table>
</center></div>
<!--webbot bot="Include" endspan i-checksum="23144" -->
</td>
</tr>
</table>
</div>
</body>
</html>
(Submitted via bugs.kde.org)
(Called from KBugReport dialog)
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic