initial commit

This commit is contained in:
Chris Sewell
2012-11-28 03:55:08 -05:00
parent 7adb399b2e
commit cf140a2e97
3247 changed files with 492437 additions and 0 deletions

132
html/js/dropdown.js Executable file
View File

@ -0,0 +1,132 @@
function handleKey(e)
{
keycode = event.keyCode;
ele = event.srcElement;
//alert(keycode);
if(ele != null) {
if(keycode == 8 || keycode == 127) // backspace
{
if(isNaN(ele.insertIndex) || ele.insertIndex == -1) {
ele.enteredText = ele.enteredText.substring(0,ele.enteredText.length-1);
ele.insertIndex = -1;
}
else{
ele.enteredText = ele.enteredText.substr(0,ele.insertIndex-1) + ele.enteredText.substr(ele.insertIndex);
if(ele.insertIndex > 0 ) {
ele.insertIndex = ele.insertIndex - 1;
}
}
resetTime(ele);
event.cancelbubble=true;
setSelected();
return false;
}
else if(keycode == 46){ // delete
if(event.shiftKey) {
ele.enteredText = "";
ele.selectedIndex=0;
ele.insertIndex = -1;
}
else {
ele.enteredText = ele.enteredText.substr(0,ele.insertIndex) + ele.enteredText.substr(ele.insertIndex+1);
}
resetTime(ele);
setSelected();
}
else if(keycode == 37){ // left arrow
if(isNaN(ele.insertIndex) || ele.insertIndex == -1) {
ele.insertIndex = ele.enteredText.length-1;
}
else {
if(ele.insertIndex > 0 ) {
ele.insertIndex = ele.insertIndex - 1;
}
}
resetTime(ele);
setSelected();
}
else if(keycode == 39){ // right arrow
if(isNaN(ele.insertIndex) || ele.insertIndex == -1) {
ele.insertIndex = ele.enteredText.length;
}
else {
if(ele.insertIndex < ele.enteredText.length) {
ele.insertIndex = ele.insertIndex + 1;
}
}
resetTime(ele);
setSelected();
}
else if(keycode == 9 || keycode == 39 || keycode == 40){ // tab,up and down arrow
event.cancelbubble=false;
ele.enteredText = "";
ele.insertIndex = -1;
return true;
}
}
return true;
}
function resetTime(ele){
var curTime = new Date();
var t = curTime.getTime() - ele.lastEntered;
ele.lastEntered = curTime;
window.status= ":Search Text=" + ele.enteredText + ":Selected Index=" + ele.selectedIndex + ":Current position=" + ele.insertIndex;
}
function setSelected(){
ele = event.srcElement;
if (ele != null)
{ // detect if element exists
enteredText = ele.enteredText.toLowerCase();
var selectIndex = -1;
var selectLength = 20000;
for(k=0; k < ele.children.length;k++){
txt = ele.children[k].text.toLowerCase()
if( txt.indexOf(enteredText) == 0) {
if(txt == enteredText){
selectIndex =k;
break;
}
var len = txt.length;
if(selectLength > len) {
selectLength = len;
selectIndex = k;
}
}
}
if(selectIndex > -1) {
ele.selectedIndex=selectIndex;
window.status= ":Search Text=" + ele.enteredText + ":Selected Index=" + ele.selectedIndex + ":Current position=" + ele.insertIndex;
return false;
}
} // end if
return false;
}
function selectItem(txtField,tier2){
ele = event.srcElement;
if(isNaN(ele.insertIndex)) {
ele.insertIndex = -1;
}
if(ele.insertIndex > -1) {
ele.enteredText = ele.enteredText.substr(0,ele.insertIndex) + String.fromCharCode(event.keyCode) + ele.enteredText.substr(ele.insertIndex);
ele.insertIndex = ele.insertIndex +1;
}
else {
if(ele.enteredText == "") {
ele.lastEntered = new Date();
}
else {
var curTime = new Date();
var t = curTime.getTime() - ele.lastEntered;
ele.lastEntered = curTime;
if(t > 2000) {
ele.enteredText = "";
}
}
ele.enteredText = ele.enteredText + String.fromCharCode(event.keyCode);
}
event.cancelBubble=true;
window.status= ":Search Text=" + ele.enteredText + ":Selected Index=" + ele.selectedIndex + ":Current position=" + ele.insertIndex;
return setSelected();
}