
var ProcessMsg="<span style=\"background-color:transparent;color:black\"><img src=\"images/loading.gif\" alt=\"\" />&nbsp;Loading ...&nbsp;</span>";
var JustAddedRaceEntry=false;
var JustModifiedRaceEntry=false;
var SeriesCnt=0;
var ClassCnt=0;
var curTab=0;
function FillRaceSeries(){
document.getElementById('raceSeries_cage').innerHTML=ProcessMsg;
document.getElementById('raceClass_cage').innerHTML="";
document.getElementById('raceNumber_cage').innerHTML="";
document.getElementById('txtRaceTrack').value="";
document.getElementById('txtRaceLocation').value="";
document.getElementById('txtRaceDate').value="";
document.getElementById('txtRacePMname').value="";
ajax_call=action+'=ListRaceSeries&key='+curSeries;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('raceSeries_cage').innerHTML=http_doc.responseText;
curSeries=document.getElementById('txtRaceSeries').value;
SeriesCnt=document.getElementById('txtSeriesCount').value;
FillRaceClasses();}}
http_doc.send(null);}
function FillRaceClasses(){
document.getElementById('raceClass_cage').innerHTML=ProcessMsg;
ajax_call=action+'=ListRaceClasses&key='+curClass;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('raceClass_cage').innerHTML=http_doc.responseText;
curClass=document.getElementById('txtRaceClass').value;
ClassCnt=document.getElementById('txtClassCount').value;
var cmdAddRacer=document.getElementById('cmdAddRaceEntry');
if(SeriesCnt==0||ClassCnt==0){
cmdAddRacer.disabled=true;}
else{
cmdAddRacer.disabled=false;}
FillRaceNumbers();}}
http_doc.send(null);}
function FillRaceNumbers(){
document.getElementById('raceNumber_cage').innerHTML=ProcessMsg;
ajax_call=action+'=ListRaceNumbers&number='+curRace;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('raceNumber_cage').innerHTML=http_doc.responseText;
curRace=document.getElementById('txtRaceNumber').value;
document.getElementById('txtRaceTrack').value=document.getElementById('txtSelectedTrack').value;
document.getElementById('txtRaceLocation').value=document.getElementById('txtSelectedLoc').value;
document.getElementById('txtRaceDate').value=document.getElementById('txtSelectedDate').value;
document.getElementById('txtRacePMname').value=document.getElementById('txtSelectedPMname').value;
GetTabData(1,'');}}
http_doc.send(null);}
function EditError(errno,errmsg){
switch(errno){
case -1:
alert('Cannot make changes in DEMO MODE!');
break;
case -2:
alert(errmsg);
break;}}
function SwitchTab(newTab){
var clrTab=1;
if(curTab>0){
document.getElementById('Page_'+curTab).innerHTML=document.getElementById('tabContent').innerHTML;
clrTab=curTab;}
document.getElementById('tabButton'+clrTab).className='';
document.getElementById('tabButton'+newTab).className='selected';
document.getElementById('tabContent').innerHTML=document.getElementById('Page_'+newTab).innerHTML;
switch(newTab){
case 1:
document.getElementById('txtDriver').focus();
document.getElementById('txtDriver').focus();
break;
case 2:
document.getElementById('txtSeriesName').focus();
document.getElementById('txtSeriesName').focus();
break;
case 3:
document.getElementById('txtDriverFName').focus();
document.getElementById('txtDriverFName').focus();
break;
case 4:
document.getElementById('txtClassName').focus();
document.getElementById('txtClassName').focus();
break;
case 5:
document.getElementById('txtTrackName').focus();
document.getElementById('txtTrackName').focus();
break;
case 6:
document.getElementById('txtPmName').focus();
document.getElementById('txtPmName').focus();
break;
case 7:
document.getElementById('txtMgrTrackName').focus();
document.getElementById('txtMgrTrackName').focus();
break;}
curTab=newTab;
LoadTab(newTab);}
function LoadTab(NewTab){
if(current_popid){
popup_exit(current_popid);}
ajax_call=action+'=TestTabChange&pg='+NewTab;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
if(retval==1){
switch(NewTab){
case 1:
FillRaceSeries();
break;
case 2:
case 3:
case 4:
case 5:
case 6:
GetTabData(NewTab,'');
break;}}}}
http_doc.send(null);}
function GetTabData(pageno,passfield){
if(pageno<1||pageno>6){
return;}
var sort_field="";
var new_order="";
var cur_order=document.getElementById('txtPage'+pageno+'SortOrder');
if(passfield==""){
sort_field=document.getElementById('txtPage'+pageno+'SortField').value;
new_order=cur_order.value;}
else{
sort_field=passfield;
switch(cur_order.value){
case "ASC":
new_order="DESC";
break;
case "DESC":
new_order="ASC";
break;}}
document.getElementById('txtPage'+pageno+'SortField').value=sort_field;
cur_order.value=new_order;
var PrimarySort="";
switch(pageno){
case 1:
PrimarySort="MainPos";
break;
case 2:
PrimarySort="seriesName";
break;
case 3:
PrimarySort="driverLName";
break;
case 4:
PrimarySort="className";
break;
case 5:
PrimarySort="trackName";
break;
case 6:
PrimarySort="pmName";
break;}
var imgName;
var imgName2;
var imgName3;
var imgDefault;
switch(pageno){
case 1:
imgName=document.getElementById('imgSortPage'+pageno+PrimarySort);
imgDefault=document.getElementById('imgSortPage'+pageno+"DriverName");
break;
case 3:
imgName=document.getElementById('imgSortPage'+pageno+"LName");
imgName2=document.getElementById('imgSortPage'+pageno+"FName");
imgName2.style.visibility='hidden';
imgDefault=document.getElementById('imgSortPage'+pageno+'Key');
break;
case 5:
imgName=document.getElementById('imgSortPage'+pageno+"Name");
imgName2=document.getElementById('imgSortPage'+pageno+"City");
imgName3=document.getElementById('imgSortPage'+pageno+"State");
imgName2.style.visibility='hidden';
imgName3.style.visibility='hidden';
imgDefault=document.getElementById('imgSortPage'+pageno+'Key');
break;
default:
imgName=document.getElementById('imgSortPage'+pageno+"Name");
imgDefault=document.getElementById('imgSortPage'+pageno+'Key');
break;}
imgName.style.visibility='hidden';
imgDefault.style.visibility='hidden';
switch(sort_field){
case PrimarySort:
if(new_order=="ASC"){
imgName.src='images/sort_asc.gif';}
else{
imgName.src='images/sort_desc.gif';}
imgName.style.visibility='visible';
break;
case "driverFName":
case "trackCity":
if(new_order=="ASC"){
imgName2.src='images/sort_asc.gif';}
else{
imgName2.src='images/sort_desc.gif';}
imgName2.style.visibility='visible';
break;
case "trackState":
if(new_order=="ASC"){
imgName3.src='images/sort_asc.gif';}
else{
imgName3.src='images/sort_desc.gif';}
imgName3.style.visibility='visible';
break;
default:
if(new_order=="ASC"){
imgDefault.src='images/sort_asc.gif';}
else{
imgDefault.src='images/sort_desc.gif';}
imgDefault.style.visibility='visible';
break;}
document.getElementById('page'+pageno+'_cage').innerHTML=ProcessMsg;
var tab_action='ListTab'+pageno+'Data';
ajax_call=action+'='+tab_action+'&sortfield='+sort_field+'&order='+new_order;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('page'+pageno+'_cage').innerHTML=http_doc.responseText;
if(pageno==1){
if(JustAddedRaceEntry==true){
var objDiv=document.getElementById("page1_cage");
objDiv.scrollTop=objDiv.scrollHeight;
JustAddedRaceEntry=false;}
else{
if(JustModifiedRaceEntry==true){
JustModifiedRaceEntry=false;}
else{
if(passfield==""){
ListCustomRaceQuestions();}}}}
if(pageno==2){
if(passfield==""){
ListPointMethods();
document.getElementById('EventsHead').innerHTML="Events";
document.getElementById('EventList_cage').innerHTML="";
document.getElementById('cmdUpdateEventList').disabled=true;}}
if(pageno>2){
PostTabChange();}}}
http_doc.send(null);}
function ListPointMethods(){
ajax_call=action+'=ListPointMethods';
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
var SeriesPM=http_doc.responseText;
var cage='<select id="cboSeriesPM">\n';
var cage=cage+'    <option value="">--Select--\n';
var cage=cage+SeriesPM;
var cage=cage+'</select>\n';
document.getElementById('cboSeriesPM_cage').innerHTML=cage;
var cage='<select id="cboSeriesPMWin">\n';
var cage=cage+SeriesPM;
var cage=cage+'</select>\n';
document.getElementById('cboSeriesPMWin_cage').innerHTML=cage;
PostTabChange();}}
http_doc.send(null);}
function ListCustomRaceQuestions(){
document.getElementById('CustomPointQuest_cage').innerHTML=ProcessMsg;
ajax_call=action+'=ListCustomRaceQuestions';
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('CustomPointQuest_cage').innerHTML=http_doc.responseText;
PostRaceParameters();}}
http_doc.send(null);}
function PostRaceParameters(){
ajax_call=action+'=PostRaceParameters&mgr='+curMgr+'&series='+curSeries+'&class='+curClass+'&race='+curRace;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
var foo=http_doc.responseText;
if(current_popid){
popup_exit(current_popid);}
try{
document.getElementById('txtDriver').focus();
document.getElementById('txtDriver').focus();}
catch(err){}
PostTabChange();}}
http_doc.send(null);}
function PostTabChange(){
ajax_call=action+'=PostTabChange';
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
var foo=http_doc.responseText;}}
http_doc.send(null);}
function ShowRacePmTip(){
var base=document.getElementById('txtSelectedPMbase').value;
var msg="";
if(SeriesCnt>0){
msg="Point Method Base = <b>"+base+"</b>";}
ddrivetip(msg,200);}
function btnAddRaceEntry(){
if(ajaxNowProcessing==true){
return;}
EditEventMain(document.getElementById('txtMainEvent'));
var DriverKey=document.getElementById('txtDriver_hidden').value;
var DriverName=document.getElementById('txtDriver');
var Main=document.getElementById('txtMainEvent');
var strPos=document.getElementById('txtMainPosition');
var iserr=false;
if(trim(DriverName.value)==""){
if(iserr==false){
alert("Driver Name Required.");
DriverName.focus();
iserr=true;}}
if(trim(Main.value)==""){
if(iserr==false){
alert("Enter Letter of Main completed.");
Main.focus();
iserr=true;}}
if(trim(strPos.value)==""){
if(iserr==false){
alert("Enter Final Position placed by Driver.");
strPos.focus();
iserr=true;}}
var Pos=Number(strPos.value);
if(isNaN(Pos)){
strPos.value="0";
Pos=0;}
if(Pos==0){
if(iserr==false){
alert("Position MUST be greater than 0.");
strPos.focus();
iserr=true;}}
var LName="";
var FName="";
if(iserr==false){
if(DriverKey==0){
var arrName=DriverName.value.split(",");
if(!arrName[1]){
if(iserr==false){
alert('Missing First Name.\n\nEnter a new driver in the form of:  "Last Name, First Name"');
DriverName.focus();
iserr=true;}}
else{
LName=trim(arrName[0]);
FName=trim(arrName[1]);}
if(LName.search(/^[A-Z]/)==-1&&LName.search(/^[a-z]/)==-1){
if(iserr==false){
alert("New Driver's Last Name MUST begin with a Letter.");
DriverName.focus();
iserr=true;}}}}
if(iserr==true){
return;}
var RaceCustom=document.getElementsByName('chkRaceCustom');
var Key;
var checked;
var strData="";
for(var i=0;i<RaceCustom.length;i++){
Key=Number(RaceCustom[i].id.substr(14,5));
checked=0;
if(RaceCustom[i].checked==true){
checked=1;}
if(!isNaN(Key)){
if(strData==""){
strData=Key+","+checked;}
else{
strData=strData+";"+Key+","+checked;}}}
ajax_call=action+'=PostEdits&cmd=add&tbl=race&key='+DriverKey+'&Lname='+Encode4URL(LName)+'&Fname='+Encode4URL(FName)+'&main='+Encode4URL(Main.value)+'&pos='+Pos+'&StrCustom='+strData;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
if(retval==1){
alert('DUPLICATE ENTRY!\n\nDriver already added to '+errmsg);}
else{
DriverName.value='';
Main.value=document.getElementById('txtLastMain').value;
strPos.value=document.getElementById('txtNextPos').value;
for(i=0;i<RaceCustom.length;i++){
if(RaceCustom[i].checked==true){
RaceCustom[i].checked=false;}}
JustAddedRaceEntry=true;
GetTabData(1,'');}
DriverName.focus();
DriverName.focus();}}
http_doc.send(null);}
function btnOpenRaceWindow(pass_DriverKey,pass_DriverName,pass_Main,pass_Pos,pass_CustomKeys){
popup_show('popWindow1','popWindow1Drag','popWindow1Exit','mouse',15,-10);
document.getElementById('txtDriverKey').value=pass_DriverKey;
document.getElementById('txtDriverWin').value=DecodeFromURL(pass_DriverName);
document.getElementById('txtMainEventWin').value=pass_Main;
document.getElementById('txtMainPositionWin').value=pass_Pos;
ajax_call=action+'=ListCustomRaceQuestionsWin&keys='+pass_CustomKeys;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('CustomPointQuestWin_cage').innerHTML=http_doc.responseText;}}
http_doc.send(null);
document.getElementById('txtMainEventWin').focus();}
function btnUpdateRace(){
if(ajaxNowProcessing==true){
return;}
EditEventMain(document.getElementById('txtMainEventWin'));
var DriverKey=document.getElementById('txtDriverKey').value;
var Main=document.getElementById('txtMainEventWin');
var strPos=document.getElementById('txtMainPositionWin');
var iserr=false;
if(trim(Main.value)==""){
if(iserr==false){
alert("Enter Letter of Main completed.");
Main.focus();
iserr=true;}}
if(trim(strPos.value)==""){
if(iserr==false){
alert("Enter Final Position placed by Driver.");
strPos.focus();
iserr=true;}}
var Pos=Number(strPos.value);
if(isNaN(Pos)){
strPos.value="0";
Pos=0;}
if(Pos==0){
if(iserr==false){
alert("Position MUST be greater than 0.");
strPos.focus();
iserr=true;}}
if(iserr==true){
return;}
var RaceCustom=document.getElementsByName('chkRaceCustomWin');
var Key;
var checked;
var strData="";
for(var i=0;i<RaceCustom.length;i++){
Key=Number(RaceCustom[i].id.substr(17,5));
checked=0;
if(RaceCustom[i].checked==true){
checked=1;}
if(!isNaN(Key)){
if(strData==""){
strData=Key+","+checked;}
else{
strData=strData+";"+Key+","+checked;}}}
ajax_call=action+'=PostEdits&cmd=update&tbl=race&key='+DriverKey+'&main='+Encode4URL(Main.value)+'&pos='+Pos+'&StrCustom='+strData;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
popup_exit('popWindow1');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
JustModifiedRaceEntry=true;
GetTabData(1,'');}}
http_doc.send(null);}
function btnDeleteRace(pass_DriverKey,pass_DriverName){
if(confirm('Delete Race Entry for Driver "'+DecodeFromURL(pass_DriverName)+'"?')==true){
ajax_call=action+'=PostEdits&cmd=delete&tbl=race&key='+pass_DriverKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
JustModifiedRaceEntry=true;
GetTabData(1,'');}}
http_doc.send(null);}}
function EditEventMain(el){
el.value=trim(el.value.toUpperCase());}
function ChangeSeries(){
curSeries=document.getElementById('cboRaceSeries').value;
FillRaceSeries();}
function ChangeClass(){
curClass=document.getElementById('cboRaceClass').value;
FillRaceClasses();}
function ChangeRaceNumber(){
curRace=document.getElementById('cboRaceNumber').value;
FillRaceNumbers();}
function btnAddSeries(){
if(ajaxNowProcessing==true){
return;}
var name=document.getElementById('txtSeriesName');
var events=document.getElementById('txtSeriesNumOfEvents');
var cboPM=document.getElementById('cboSeriesPM');
var iserr=false;
if(trim(name.value)==""){
if(iserr==false){
alert("Series Name Required.");
name.focus();
iserr=true;}}
if(trim(events.value)==""||isNaN(events.value)){
events.value=0;}
if(events.value<0){
events.value*=-1;}
if(events.value<1||events.value>20){
if(iserr==false){
alert("ONLY 1 to 20 Events are supported at this time.");
events.focus();
iserr=true;}}
if(trim(cboPM.value)==""){
if(iserr==false){
alert("Point Method Required.");
cboPM.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=add&tbl=series&name='+Encode4URL(name.value)+'&events='+events.value+'&PM='+cboPM.value;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(2,'');
name.value='';
events.value='';
cboPM.value='';
name.focus();
name.focus();}}
http_doc.send(null);}}
function btnOpenSeriesWindow(pass_SeriesKey,pass_SeriesName,pass_NumOfItems,pass_SeriesPM){
popup_show('popWindow2','popWindow2Drag','popWindow2Exit','mouse',15,-10);
document.getElementById('txtSeriesKey').value=pass_SeriesKey;
var Name=document.getElementById('txtSeriesNameWin');
var NumOfEvents=document.getElementById('txtSeriesNumOfEventsWin');
var cboPM=document.getElementById('cboSeriesPMWin');
Name.value=DecodeFromURL(pass_SeriesName);
NumOfEvents.value=pass_NumOfItems;
cboPM.value=pass_SeriesPM;
Name.focus();}
function btnUpdateSeries(){
if(ajaxNowProcessing==true){
return;}
var key=document.getElementById('txtSeriesKey');
var name=document.getElementById('txtSeriesNameWin');
var cboPM=document.getElementById('cboSeriesPMWin');
var iserr=false;
if(trim(name.value)==""){
if(iserr==false){
alert("Series Name Required.");
name.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=update&tbl=series&key='+key.value+'&name='+Encode4URL(name.value)+"&PM="+cboPM.value;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
popup_exit('popWindow2');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(2,'');}}
http_doc.send(null);}}
function btnDeleteSeries(pass_SeriesKey,pass_SeriesName){
if(confirm('Delete Series "'+DecodeFromURL(pass_SeriesName)+'"?')==true){
ajax_call=action+'=PostEdits&cmd=delete&tbl=series&key='+pass_SeriesKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(2,'');
document.getElementById('EventsHead').innerHTML="Events";
document.getElementById('EventList_cage').innerHTML="";
document.getElementById('cmdUpdateEventList').disabled=true;}}
http_doc.send(null);}}
function ListEvents(pass_seriesKey,pass_seriesName){
document.getElementById('EventsHead').innerHTML="Events for \"" + pass_seriesName + "\"";
document.getElementById('EventList_cage').innerHTML=ProcessMsg;
ajax_call=action+'=ListEvents&key='+pass_seriesKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('EventList_cage').innerHTML=http_doc.responseText;
document.getElementById('cmdUpdateEventList').disabled=false;}}
http_doc.send(null);}
function btnUpdateEventList(){
if(ajaxNowProcessing==true){
return;}
var EventDates=document.getElementsByName('txtEventDate');
var EventTracks=document.getElementsByName('cboEventTrack');
var EventPMs=document.getElementsByName('cboEventPM');
var Key=0;
var EventData="";
var strData="";
for(var i=0;i<EventDates.length;i++){
Key=Number(EventDates[i].id.substr(13,5));
EventData=EventDates[i].value+"|"+EventTracks[i].value+"|"+EventPMs[i].value;
if(!isNaN(Key)){
if(strData==""){
strData=Key+","+EventData;}
else{
strData=strData+";"+Key+","+EventData;}}}
var SeriesKey=document.getElementById('txtSelectedSeriesKey').value;
ajax_call=action+'=PostEvents&key='+SeriesKey+'&EventsString='+strData;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
alert("Changes Saved.");}}
http_doc.send(null);}
function ManageClassPM(pass_key,pass_name){
document.getElementById('txtSeriesKey').value=pass_key;
popup_show('popPmByClass','popPmByClassDrag','popPmByClassExit','mouse',-575,-10);
document.getElementById('PmByClassHead').innerHTML=pass_name;
FillClassPM(pass_key);
document.getElementById('cmdUpdatePmByClass').focus();}
function btnUpdateClassPM(){
if(ajaxNowProcessing==true){
return;}
var cboPM=document.getElementsByName('cboPmByClass');
var Key;
var SelectPM;
var strData="";
for(var i=0;i<cboPM.length;i++){
Key=Number(cboPM[i].id.substr(13,5));
SelectPM=Number(cboPM[i].value);
if(isNaN(SelectPM)){
SelectPM=0;}
if(!isNaN(Key)){
if(strData==""){
strData=Key+","+SelectPM;}
else{
strData=strData+";"+Key+","+SelectPM;}}}
var seriesKey=document.getElementById('txtSeriesKey').value;
ajax_call=action+'=PostPmByClass&key='+seriesKey+'&PmString='+strData;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
popup_exit('popPmByClass');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}}}
http_doc.send(null);}
function FillClassPM(pass_key){
document.getElementById('PmByClass_cage').innerHTML=ProcessMsg;
ajax_call=action+'=ListPmByClass&key='+pass_key;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('PmByClass_cage').innerHTML=http_doc.responseText;
var cnt=document.getElementById('txtPmByClassCount').value;
if(cnt>0){
document.getElementById('cmdUpdatePmByClass').disabled=false;}
else{
document.getElementById('cmdUpdatePmByClass').disabled=true;}}}
http_doc.send(null);}
function TestPM(seriesPM,pmKey){
if(seriesPM==pmKey){
alert("WARNING:\n\nThis Point Method is already assigned to selected Series and is not required.");}}
function btnAddDriver(){
if(ajaxNowProcessing==true){
return;}
var Lname=document.getElementById('txtDriverLName');
var Fname=document.getElementById('txtDriverFName');
var iserr=false;
if(trim(Lname.value)==""){
if(iserr==false){
alert("Driver Last Name Required.");
Lname.focus();
iserr=true;}}
if(trim(Fname.value)==""){
if(iserr==false){
alert("Driver First Name Required.");
Fname.focus();
iserr=true;}}
if(Lname.value.search(/^[A-Z]/)==-1&&Lname.value.search(/^[a-z]/)==-1){
if(iserr==false){
alert("Driver's Last Name MUST begin with a Letter.");
Lname.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=add&tbl=driver&Lname='+Encode4URL(Lname.value)+'&Fname='+Encode4URL(Fname.value);
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
if(retval>0){
alert('Cannot ADD.  Driver Name already exists (See Driver ID '+retval+')!');
return;}
GetTabData(3,'');
Lname.value='';
Fname.value='';
Fname.focus();
Fname.focus();}}
http_doc.send(null);}}
function btnOpenDriverWindow(pass_DriverKey,pass_DriverLName,pass_DriverFName){
popup_show('popWindow3','popWindow3Drag','popWindow3Exit','mouse',15,-10);
document.getElementById('txtDriverKey').value=pass_DriverKey;
var Lname=document.getElementById('txtDriverLNameWin');
var Fname=document.getElementById('txtDriverFNameWin');
Lname.value=DecodeFromURL(pass_DriverLName);
Fname.value=DecodeFromURL(pass_DriverFName);
Fname.focus();}
function btnUpdateDriver(){
if(ajaxNowProcessing==true){
return;}
var key=document.getElementById('txtDriverKey');
var Lname=document.getElementById('txtDriverLNameWin');
var Fname=document.getElementById('txtDriverFNameWin');
var iserr=false;
if(trim(Fname.value)==""){
if(iserr==false){
alert("Driver First Name Required.");
Fname.focus();
iserr=true;}}
if(trim(Lname.value)==""){
if(iserr==false){
alert("Driver Last Name Required.");
Lname.focus();
iserr=true;}}
if(Lname.value.search(/^[A-Z]/)==-1&&Lname.value.search(/^[a-z]/)==-1){
if(iserr==false){
alert("Driver's Last Name MUST begin with a Letter.");
Lname.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=update&tbl=driver&key='+key.value+'&Lname='+Encode4URL(Lname.value)+'&Fname='+Encode4URL(Fname.value);
ajaxNowProcessing=true;
http_doc.open('get',ajax_call+"&MergeKey=0",true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
popup_exit('popWindow3');
EditError(retval,errmsg);
return;}
if(retval>0){
if(confirm("Name already exists!  Merge ID #"+key.value+" to ID #"+retval+"?")==true){
MergeDriver(ajax_call,retval);}}
else{
popup_exit('popWindow3');
GetTabData(3,'');}}}
http_doc.send(null);}}
function MergeDriver(ajax_call,MergeKey){
http_doc.open('get',ajax_call+"&MergeKey="+MergeKey,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
popup_exit('popWindow3');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(3,'');}}
http_doc.send(null);}
function btnDeleteDriver(pass_DriverKey,pass_DriverLName,pass_DriverFName){
var fullname=DecodeFromURL(pass_DriverLName)+', '+DecodeFromURL(pass_DriverFName);
if(confirm('Delete Driver "'+fullname+'"?')==true){
ajax_call=action+'=PostEdits&cmd=delete&tbl=driver&key='+pass_DriverKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
if(retval>0){
alert('Cannot DELETE due to Driver being used in the folowing Series:\n\n'+errmsg);
return;}
GetTabData(3,'');}}
http_doc.send(null);}}
function btnAddClass(){
if(ajaxNowProcessing==true){
return;}
var name=document.getElementById('txtClassName');
var iserr=false;
if(trim(name.value)==""){
if(iserr==false){
alert("Class Name Required.");
name.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=add&tbl=class&name='+Encode4URL(name.value);
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(4,'');
name.value='';
name.focus();
name.focus();}}
http_doc.send(null);}}
function btnOpenClassWindow(pass_ClassKey,pass_ClassName){
popup_show('popWindow4','popWindow4Drag','popWindow4Exit','mouse',15,-10);
document.getElementById('txtClassKey').value=pass_ClassKey;
var name=document.getElementById('txtClassNameWin');
name.value=DecodeFromURL(pass_ClassName);
name.focus();}
function btnUpdateClass(){
if(ajaxNowProcessing==true){
return;}
var key=document.getElementById('txtClassKey');
var name=document.getElementById('txtClassNameWin');
var iserr=false;
if(trim(name.value)==""){
if(iserr==false){
alert("Class Name Required.");
name.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=update&tbl=class&key='+key.value+'&name='+Encode4URL(name.value);
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
popup_exit('popWindow4');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(4,'');}}
http_doc.send(null);}}
function btnDeleteClass(pass_ClassKey,pass_ClassName){
if(confirm('Delete Class "'+DecodeFromURL(pass_ClassName)+'"?')==true){
ajax_call=action+'=PostEdits&cmd=delete&tbl=class&key='+pass_ClassKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
if(retval>0){
alert('Cannot DELETE due to Class being used in the folowing Series:\n\n'+errmsg);
return;}
GetTabData(4,'');}}
http_doc.send(null);}}
function btnAddTrack(){
if(ajaxNowProcessing==true){
return;}
var name=document.getElementById('txtTrackName');
var website=document.getElementById('txtTrackWebsite');
var city=document.getElementById('txtTrackCity');
var cboState=document.getElementById('cboTrackState');
var iserr=false;
if(trim(name.value)==""){
if(iserr==false){
alert("Track Name Required.");
name.focus();
iserr=true;}}
if(website.value!=""){
if(website.value.search(/^http/)==-1){
website.value="http://"+website.value;}}
if(trim(city.value)==""){
if(iserr==false){
alert("City Required.");
city.focus();
iserr=true;}}
if(trim(cboState.value)==""){
if(iserr==false){
alert("State Required.");
cboState.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=add&tbl=track&name='+Encode4URL(name.value)+'&website='+Encode4URL(website.value)+'&city='+Encode4URL(city.value)+'&state='+Encode4URL(cboState.value);
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(5,'');
name.value='';
website.value='';
city.value='';
cboState.value='';
name.focus();
name.focus();}}
http_doc.send(null);}}
function btnOpenTrackWindow(pass_TrackKey,pass_TrackName,pass_TrackWebsite,pass_TrackCity,pass_TrackState){
popup_show('popWindow5','popWindow5Drag','popWindow5Exit','mouse',15,-10);
document.getElementById('txtTrackKey').value=pass_TrackKey;
var name=document.getElementById('txtTrackNameWin');
var website=document.getElementById('txtTrackWebsiteWin');
var city=document.getElementById('txtTrackCityWin');
var cboState=document.getElementById('cboTrackStateWin');
name.value=DecodeFromURL(pass_TrackName);
website.value=DecodeFromURL(pass_TrackWebsite);
city.value=DecodeFromURL(pass_TrackCity);
cboState.value=pass_TrackState;
name.focus();}
function btnUpdateTrack(){
if(ajaxNowProcessing==true){
return;}
var key=document.getElementById('txtTrackKey');
var name=document.getElementById('txtTrackNameWin');
var website=document.getElementById('txtTrackWebsiteWin');
var city=document.getElementById('txtTrackCityWin');
var cboState=document.getElementById('cboTrackStateWin');
var iserr=false;
if(trim(name.value)==""){
if(iserr==false){
alert("Track Name Required.");
Lname.focus();
iserr=true;}}
if(website.value!=""){
if(website.value.search(/^http/)==-1){
website.value="http://"+website.value;}}
if(trim(city.value)==""){
if(iserr==false){
alert("City Required.");
Fname.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=update&tbl=track&key='+key.value+'&name='+Encode4URL(name.value)+'&website='+Encode4URL(website.value)+'&city='+Encode4URL(city.value)+'&state='+Encode4URL(cboState.value);
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
popup_exit('popWindow5');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(5,'');}}
http_doc.send(null);}}
function btnDeleteTrack(pass_TrackKey,pass_TrackName){
if(confirm('Delete Track "'+DecodeFromURL(pass_TrackName)+'"?')==true){
ajax_call=action+'=PostEdits&cmd=delete&tbl=track&key='+pass_TrackKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
if(retval>0){
alert('Cannot DELETE due to Track being assigned to the folowing Series:\n\n'+errmsg);
return;}
GetTabData(5,'');}}
http_doc.send(null);}}
function btnAddPointMethod(){
if(ajaxNowProcessing==true){
return;}
var Name=document.getElementById('txtPmName');
var FirstPlace=document.getElementById('txtPmFirstPlace');
var Reduce=document.getElementById('txtPmReduce');
var Bonus=document.getElementById('txtPmBonus');
var Throwouts=document.getElementById('txtPmThrowouts');
var iserr=false;
if(trim(Name.value)==""){
if(iserr==false){
alert("Point Method Name Required.");
Name.focus();
iserr=true;}}
if(trim(FirstPlace.value)==""||isNaN(FirstPlace.value)){
FirstPlace.value=0;}
if(trim(Reduce.value)==""||isNaN(Reduce.value)){
Reduce.value=0;}
if(trim(Bonus.value)==""||isNaN(Bonus.value)){
Bonus.value=0;}
if(trim(Throwouts.value)==""||isNaN(Throwouts.value)){
Throwouts.value=0;}
if(Reduce.value>0){
Reduce.value*=-1;}
if(FirstPlace.value<1){
if(iserr==false){
alert("First Place Points MUST BE Greater than 0.");
FirstPlace.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=add&tbl=pointmethod&Name='+Encode4URL(Name.value)+'&FirstPlace='+FirstPlace.value+'&Reduce='+Reduce.value+'&Bonus='+Bonus.value+'&Throwouts='+Throwouts.value;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(6,'');
Name.value='';
FirstPlace.value='';
Reduce.value='';
Bonus.value='';
Throwouts.value='';
Name.focus();
Name.focus();}}
http_doc.send(null);}}
function btnOpenPointMethodWindow(pass_Key,pass_Name,pass_FirstPlace,pass_Reduce,pass_Throwouts,pass_Bonus,pass_UseGrid){
popup_show('popWindow6','popWindow6Drag','popWindow6Exit','mouse',15,-10);
document.getElementById('txtPmNameWin').value=DecodeFromURL(pass_Name);
document.getElementById('txtPmFirstPlaceWin').value=pass_FirstPlace;
document.getElementById('txtPmReduceWin').value=pass_Reduce;
document.getElementById('txtPmBonusWin').value=pass_Bonus;
document.getElementById('txtPmThrowoutsWin').value=pass_Throwouts;
document.getElementById('txtPmKey').value=pass_Key;
document.getElementById('txtPmUseGrid').value=pass_UseGrid;
document.getElementById('txtPmNameWin').focus();}
function btnUpdatePointMethod(){
if(ajaxNowProcessing==true){
return;}
var Key=document.getElementById('txtPmKey');
var Name=document.getElementById('txtPmNameWin');
var FirstPlace=document.getElementById('txtPmFirstPlaceWin');
var Reduce=document.getElementById('txtPmReduceWin');
var Bonus=document.getElementById('txtPmBonusWin');
var Throwouts=document.getElementById('txtPmThrowoutsWin');
var UseGrid=document.getElementById('txtPmUseGrid');
var iserr=false;
if(trim(Name.value)==""){
if(iserr==false){
alert("Point Method Name Required.");
Name.focus();
iserr=true;}}
if(trim(FirstPlace.value)==""||isNaN(FirstPlace.value)){
FirstPlace.value=0;}
if(trim(Reduce.value)==""||isNaN(Reduce.value)){
Reduce.value=0;}
if(trim(Bonus.value)==""||isNaN(Bonus.value)){
Bonus.value=0;}
if(trim(Throwouts.value)==""||isNaN(Throwouts.value)){
Throwouts.value=0;}
if(Reduce.value>0){
Reduce.value*=-1;}
if(FirstPlace.value<1){
if(iserr==false){
alert("First Place Points MUST BE Greater than 0.");
FirstPlace.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=update&tbl=pointmethod&Key='+Key.value+'&Name='+Encode4URL(Name.value)+'&FirstPlace='+FirstPlace.value+'&Reduce='+Reduce.value+'&Bonus='+Bonus.value+'&Throwouts='+Throwouts.value+'&UseGrid='+UseGrid.value;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
popup_exit('popWindow6');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(6,'');}}
http_doc.send(null);}}
function btnDeletePointMethod(pass_PmKey,pass_PmName){
if(confirm('Delete Point Method "'+DecodeFromURL(pass_PmName)+'"?')==true){
ajax_call=action+'=PostEdits&cmd=delete&tbl=pointmethod&key='+pass_PmKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
var retsrc=Number(document.getElementById('txtRetSrc').value);
var retsrc_desc=document.getElementById('txtRetSrcDesc').value;
if(retval<0){
EditError(retval,errmsg);
return;}
if(retval>0){
var msg="";
switch(retsrc){
case 0:
msg='Cannot DELETE due to Point Method being used in the following Series:';
break;
case 1:
msg='Cannot DELETE due to Point Method being assigned to "'+retsrc_desc+'" in the following Series:';
break;
case 2:
msg='Cannot DELETE due to Point Method being assigned to Class "'+retsrc_desc+'" in the following Series:';
break;}
alert(msg+'\n\n'+errmsg);
return;}
GetTabData(6,'');
document.getElementById('CustomPointsHead').innerHTML="Custom Points";
document.getElementById('CustomPointValues_cage').innerHTML="";
document.getElementById('cmdUpdateCustomPointValues').disabled=true;}}
http_doc.send(null);}}
function ListCustomPointValues(pass_pmKey,pass_pmName){
document.getElementById('CustomPointsHead').innerHTML="Custom Points for \"" + pass_pmName + "\"";
document.getElementById('CustomPointValues_cage').innerHTML=ProcessMsg;
ajax_call=action+'=ListCustomPointValues&key='+pass_pmKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('CustomPointValues_cage').innerHTML=http_doc.responseText;
var cnt=document.getElementById('txtCustomPointValuesCount').value;
if(cnt>0){
document.getElementById('cmdUpdateCustomPointValues').disabled=false;}
else{
document.getElementById('cmdUpdateCustomPointValues').disabled=true;}}}
http_doc.send(null);}
function btnUpdateCustomPointValues(){
if(ajaxNowProcessing==true){
return;}
var CustomPoints=document.getElementsByName('txtCustomPoints');
var Key;
var Points;
var strData="";
for(var i=0;i<CustomPoints.length;i++){
Key=Number(CustomPoints[i].id.substr(16,5));
Points=Number(CustomPoints[i].value);
if(isNaN(Points)){
Points=0;}
if(!isNaN(Key)){
if(strData==""){
strData=Key+","+Points;}
else{
strData=strData+";"+Key+","+Points;}}}
var pmKey=document.getElementById('txtSelectedCustomPmKey').value;
ajax_call=action+'=PostCustomPointValues&key='+pmKey+'&PointsString='+strData;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
alert("Changes Saved.");}}
http_doc.send(null);}
function btnOpenCustomPointsWindow(){
popup_show('popCustomPoints','popCustomPointsDrag','popCustomPointsExit','screen-center',0,0);
FillCustomPoints();
var NewQuest=document.getElementById('txtPcQuestionWin');
NewQuest.value='';
NewQuest.focus();}
function btnAddCustomPoints(){
if(ajaxNowProcessing==true){
return;}
var quest=document.getElementById('txtPcQuestionWin');
var iserr=false;
if(trim(quest.value)==""){
if(iserr==false){
alert("A Custom Point Description is Required.");
quest.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostCustomPoints&cmd=add&NewQuestion='+Encode4URL(quest.value);
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
FillCustomPoints();
quest.value='';
quest.focus();
quest.focus();}}
http_doc.send(null);}}
function btnUpdateCustomPoints(){
if(ajaxNowProcessing==true){
return;}
var CustomDesc=document.getElementsByName('txtCustomDesc');
var Key;
var Desc;
var arrData=new Array();
for(var i=0;i<CustomDesc.length;i++){
Key=Number(CustomDesc[i].id.substr(14,5));
Desc=CustomDesc[i].value;
if(!isNaN(Key)){
arrData[Key]=Encode4URL(Desc);}}
var arrQuest="";
for(var i in arrData){
if(arrQuest==""){
arrQuest="Q["+i+"]="+arrData[i];}
else{
arrQuest=arrQuest+"&Q["+i+"]="+arrData[i];}}
ajax_call=action+'=PostCustomPoints&cmd=update&'+arrQuest;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
popup_exit('popCustomPoints');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
FillCustomPoints();}}
http_doc.send(null);}
function btnDeleteCustomPoint(pass_PcKey,pass_PcName){
if(confirm('Delete Custom Point Description:\n\n"'+DecodeFromURL(pass_PcName)+'"?')==true){
ajax_call=action+'=PostEdits&cmd=delete&tbl=pointcustom&key='+pass_PcKey;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
if(retval>0){
alert('Cannot DELETE due to Custom Points being used in the folowing Series:\n\n'+errmsg);
return;}
FillCustomPoints();
document.getElementById('CustomPointValues_cage').innerHTML="";
document.getElementById('CustomPointsHead').innerHTML="Custom Points";
document.getElementById('cmdUpdateCustomPointValues').disabled=true;}}
http_doc.send(null);}}
function FillCustomPoints(){
document.getElementById('CustomPoints_cage').innerHTML=ProcessMsg;
ajax_call=action+'=ListCustomPoints';
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('CustomPoints_cage').innerHTML=http_doc.responseText;
var cnt=document.getElementById('txtCustomPointsCount').value;
if(cnt>0){
document.getElementById('cmdUpdateCustomPoints').disabled=false;}
else{
document.getElementById('cmdUpdateCustomPoints').disabled=true;}}}
http_doc.send(null);}
function ManagePointsGrid(pass_key,pass_name,pass_first,pass_reduce,pass_usegrid){
document.getElementById('cmdGridClose').innerHTML='<img id="popPointsGridExit" class="PopupExit" alt="" title="Close" src="images/b_close.png" />';
document.getElementById('cmdGridUpdate').innerHTML='<input type="button" class="stdButton" style="width: 100px" value="Update" title="" onclick="btnUpdatePointsGrid()" />';
document.getElementById('cmdGridCalc').innerHTML='<input type="button" class="stdButton" value="Recalculate Grid" title="" onclick="btnRecalcPointsGrid()" />';
popup_show('popPointsGrid','popPointsGridDrag','popPointsGridExit','mouse',40,-10);
document.getElementById('GridHead').innerHTML=pass_name;
if(pass_usegrid=="Y"){
document.getElementById('chkUseGrid').checked=true;}
else{
document.getElementById('chkUseGrid').checked=false;}
document.getElementById('txtGridFirstPlace').value=pass_first;
document.getElementById('txtGridReduce').value=pass_reduce;
document.getElementById('txtPmKey').value=pass_key;
document.getElementById('PointsGrid_cage').innerHTML=ProcessMsg;
ajax_call=action+'=ListPointsGrid&key='+pass_key;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('PointsGrid_cage').innerHTML=http_doc.responseText;}}
http_doc.send(null);
document.getElementById('txtGridFirstPlace').focus();
document.getElementById('txtGridFirstPlace').focus();}
function btnRecalcPointsGrid(){
var FirstPlace=document.getElementById('txtGridFirstPlace');
var Reduce=document.getElementById('txtGridReduce');
var iserr=false;
if(trim(FirstPlace.value)==""||isNaN(FirstPlace.value)){
FirstPlace.value=0;}
if(trim(Reduce.value)==""||isNaN(Reduce.value)){
Reduce.value=0;}
if(Reduce.value>0){
Reduce.value*=-1;}
if(FirstPlace.value<1){
if(iserr==false){
alert("First Place Points MUST BE Greater than 0.");
FirstPlace.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=ListRecalcPointsGrid&FirstPlace='+FirstPlace.value+'&Reduce='+Reduce.value;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('PointsGrid_cage').innerHTML=http_doc.responseText;}}
http_doc.send(null);}}
function btnUpdatePointsGrid(){
if(ajaxNowProcessing==true){
return;}
var PmKey=document.getElementById('txtPmKey').value;
var UseGrid="N";
if(document.getElementById('chkUseGrid').checked==true){
UseGrid="Y";}
var FirstPlace=document.getElementById('txtGridFirstPlace');
var Reduce=document.getElementById('txtGridReduce');
var iserr=false;
if(trim(FirstPlace.value)==""||isNaN(FirstPlace.value)){
FirstPlace.value=0;}
if(trim(Reduce.value)==""||isNaN(Reduce.value)){
Reduce.value=0;}
if(Reduce.value>0){
Reduce.value*=-1;}
if(FirstPlace.value<1){
if(iserr==false){
alert("First Place Points MUST BE Greater than 0.");
FirstPlace.focus();
iserr=true;}}
if(iserr==false){
document.getElementById('cmdGridClose').innerHTML='';
document.getElementById('cmdGridUpdate').innerHTML='';
document.getElementById('cmdGridCalc').innerHTML='<span style="margin-left: -25px"><img src="images/progressbar.gif" style="width: 210px" /></span>';
var GridPoints=document.getElementsByName('txtGridPoints');
var Pos;
var arrData=new Array();
for(var i=0;i<GridPoints.length;i++){
Pos=Number(GridPoints[i].id.substr(14,5));
if(trim(GridPoints[i].value)==""||isNaN(GridPoints[i].value)){
GridPoints[i].value=0;}
if(GridPoints[i].value<0){
GridPoints[i].value=0;}
if(!isNaN(Pos)){
arrData[Pos]=GridPoints[i].value;}}
var arrGrid="";
for(var i in arrData){
arrGrid=arrGrid+"&G["+i+"]="+arrData[i];}
ajax_call=action+'=PostPointsGrid&PmKey='+PmKey+'&UseGrid='+UseGrid+'&FirstPlace='+FirstPlace.value+'&Reduce='+Reduce.value+arrGrid;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
popup_exit('popPointsGrid');
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
GetTabData(6,'');}}
http_doc.send(null);}}
function btnUpdateSettings(){
if(ajaxNowProcessing==true){
return;}
var iserr=false;
var TrackName=document.getElementById('txtMgrTrackName');
var TrackCity=document.getElementById('txtMgrTrackCity');
var cboState=document.getElementById('cboMgrState');
var ContactName=document.getElementById('txtContactName');
var ContactEmail=document.getElementById('txtContactEmail');
var Website=document.getElementById('txtMgrTrackWebsite');
var LogoURL=document.getElementById('txtTrackLogoURL');
var LogoWidth=document.getElementById('txtTrackLogoWidth');
var LogoHeight=document.getElementById('txtTrackLogoHeight');
var errTrackName=document.getElementById('TrackNameErrCell');
var errTrackCity=document.getElementById('TrackCityErrCell');
var errContactName=document.getElementById('ContactNameErrCell');
var errContactEmail=document.getElementById('ContactEmailErrCell');
errTrackName.style.visibility='hidden';
errTrackCity.style.visibility='hidden';
errContactName.style.visibility='hidden';
errContactEmail.style.visibility='hidden';
if(trim(TrackName.value)==""){
errTrackName.innerHTML="Track Name Required.";
errTrackName.style.visibility='visible';
if(iserr==false){
TrackName.focus();
iserr=true;}}
if(trim(TrackCity.value)==""){
errTrackCity.innerHTML="City Required.";
errTrackCity.style.visibility='visible';
if(iserr==false){
TrackCity.focus();
iserr=true;}}
if(trim(ContactName.value)==""){
errContactName.innerHTML="Contact Name Required.";
errContactName.style.visibility='visible';
if(iserr==false){
ContactName.focus();
iserr=true;}}
if(trim(ContactEmail.value)==""){
errContactEmail.innerHTML="Contact Email Required.";
errContactEmail.style.visibility='visible';
if(iserr==false){
ContactEmail.focus();
iserr=true;}}
else{
if(echeck(ContactEmail.value)==false){
errContactEmail.innerHTML="Invalid E-mail ID.";
errContactEmail.style.visibility='visible';
if(iserr==false){
ContactEmail.focus();
iserr=true;}}}
if(Website.value!=""){
if(Website.value.search(/^http/)==-1){
Website.value="http://"+Website.value;}}
if(LogoURL.value!=""){
if(LogoURL.value.search(/^http/)==-1){
LogoURL.value="http://"+LogoURL.value;}}
if(iserr==false){
ajax_call=action+'=PostEdits&cmd=update&tbl=manager&TrackName='+Encode4URL(TrackName.value)+'&TrackCity='+Encode4URL(TrackCity.value)+'&State='+Encode4URL(cboState.value)+'&ContactName='+Encode4URL(ContactName.value)+'&ContactEmail='+Encode4URL(ContactEmail.value)+'&Website='+Encode4URL(Website.value)+'&LogoURL='+Encode4URL(LogoURL.value)+'&LogoWidth='+LogoWidth.value+'&LogoHeight='+LogoHeight.value;
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
document.getElementById('WelcomeMgrName').innerHTML="Welcome "+TrackName.value;
alert("Changes Saved.");}}
http_doc.send(null);}}
function btnOpenPasswordWindow(strMode){
popup_show('popPassword','popPasswordDrag','popPasswordExit','screen-center',0,0);
document.getElementById('txtPwMode').value=strMode;
var heading=document.getElementById('popPasswordHeading');
switch(strMode){
case "1":
heading.innerHTML="&nbsp;Change Manager Password";
break;
case "2":
heading.innerHTML="&nbsp;Change AccountExec Password";
break;
case "3":
heading.innerHTML="&nbsp;Create AccountExec Password";
break;}
document.getElementById('OldPasswordErrCell').style.visibility='hidden';
document.getElementById('NewPasswordErrCell').style.visibility='hidden';
var oldpw=document.getElementById('txtOldPassword');
var newpw=document.getElementById('txtNewPassword');
var newpw2=document.getElementById('txtNewPassword2');
oldpw.value="";
newpw.value="";
newpw2.value="";
var OldPwRow=document.getElementById('OldPasswordRow');
if(strMode=="3"){
OldPwRow.style.visibility='hidden';
newpw.focus();}
else{
OldPwRow.style.visibility='visible';
oldpw.focus();}}
function btnUpdatePasswordChange(){
if(ajaxNowProcessing==true){
return;}
var strMode=document.getElementById('txtPwMode').value;
var errOldPW=document.getElementById('OldPasswordErrCell');
var errNewPW=document.getElementById('NewPasswordErrCell');
errOldPW.style.visibility='hidden';
errNewPW.style.visibility='hidden';
var oldpw=document.getElementById('txtOldPassword');
var newpw=document.getElementById('txtNewPassword');
var newpw2=document.getElementById('txtNewPassword2');
var wrk_oldpw=trim(oldpw.value);
var wrk_newpw=trim(newpw.value);
var wrk_newpw2=trim(newpw2.value);
var iserr=false;
if(strMode!="3"){
if(wrk_oldpw==""){
errOldPW.innerHTML='Old Password Required';
errOldPW.style.visibility='visible';
if(iserr==false){
oldpw.focus();
iserr=true;}}}
if(wrk_newpw==""){
errNewPW.innerHTML='New Password Required';
errNewPW.style.visibility='visible';
if(iserr==false){
newpw.focus();
iserr=true;}}
else{
if(wrk_newpw.length<4){
errNewPW.innerHTML='New Password to short';
errNewPW.style.visibility='visible';
if(iserr==false){
newpw.focus();
iserr=true;}}}
if(wrk_newpw!=wrk_newpw2){
errNewPW.innerHTML='Passwords do not Match';
errNewPW.style.visibility='visible';
if(iserr==false){
newpw2.focus();
iserr=true;}}
if(iserr==false){
ajax_call=action+'=PostPwChange&mode='+strMode+'&oldpw='+Encode4URL(wrk_oldpw)+'&newpw='+Encode4URL(wrk_newpw);
ajaxNowProcessing=true;
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
ajaxNowProcessing=false;
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
switch(retval){
case 0:
popup_exit('popPassword');
if(strMode=="3"){
RefreshAccountExec();}
break;
case -1:
case -2:
EditError(retval,errmsg);
return;
case 1:
errOldPW.innerHTML="Incorrect Password";
errOldPW.style.visibility='visible';
oldpw.focus();
break;}}}
http_doc.send(null);}}
function btnDeleteAcctExecPassword(){
if(confirm('Delete AccountExec Password?')==true){
ajax_call=action+'=PostPwChange&mode=4';
http_doc.open('get',ajax_call,true);
http_doc.onreadystatechange=function(){
if(http_doc.readyState==4){
document.getElementById('ret_cage').innerHTML=http_doc.responseText;
var retval=Number(document.getElementById('txtRetVal').value);
var errmsg=document.getElementById('txtRetValMsg').value;
if(retval<0){
EditError(retval,errmsg);
return;}
RefreshAccountExec();}}
http_doc.send(null);}}
function RefreshAccountExec(){
var WithPW=document.getElementById('AcctExecWithPW');
var WithoutPW=document.getElementById('AcctExecNoPW');
if(WithPW.style.visibility=='visible'){
WithPW.style.visibility='hidden';
WithPW.style.display='none';
WithoutPW.style.visibility='visible';
WithoutPW.style.display='block';}
else{
WithPW.style.visibility='visible';
WithPW.style.display='block';
WithoutPW.style.visibility='hidden';
WithoutPW.style.display='none';}}

