function cPets(objName) {
this.name = objName;
window[objName] = this;
this.petFields = new Array();
this.petFields['animalID'] = Array();
this.petFields['animalID']['index'] = 0;
this.petFields['animalID']['name'] = 'Animal ID';
this.petFields['status'] = Array();
this.petFields['status']['index'] = 1;
this.petFields['status']['name'] = 'Status';
this.petFields['lastUpdated'] = Array();
this.petFields['lastUpdated']['index'] = 2;
this.petFields['lastUpdated']['name'] = 'Last Update';
this.petFields['rescueID'] = Array();
this.petFields['rescueID']['index'] = 3;
this.petFields['rescueID']['name'] = 'Rescue ID';
this.petFields['name'] = Array();
this.petFields['name']['index'] = 4;
this.petFields['name']['name'] = 'Name';
this.petFields['summary'] = Array();
this.petFields['summary']['index'] = 5;
this.petFields['summary']['name'] = 'Summary';
this.petFields['species'] = Array();
this.petFields['species']['index'] = 6;
this.petFields['species']['name'] = 'Species';
this.petFields['breed'] = Array();
this.petFields['breed']['index'] = 7;
this.petFields['breed']['name'] = 'Breed';
this.petFields['primaryBreed'] = Array();
this.petFields['primaryBreed']['index'] = 8;
this.petFields['primaryBreed']['name'] = 'Primary Breed';
this.petFields['secondaryBreed'] = Array();
this.petFields['secondaryBreed']['index'] = 9;
this.petFields['secondaryBreed']['name'] = 'Secondary Breed';
this.petFields['sex'] = Array();
this.petFields['sex']['index'] = 10;
this.petFields['sex']['name'] = 'Gender';
this.petFields['mixed'] = Array();
this.petFields['mixed']['index'] = 11;
this.petFields['mixed']['name'] = 'Mixed';
this.petFields['dogs'] = Array();
this.petFields['dogs']['index'] = 12;
this.petFields['dogs']['name'] = 'Good with Dogs';
this.petFields['cats'] = Array();
this.petFields['cats']['index'] = 13;
this.petFields['cats']['name'] = 'Good with Cats';
this.petFields['kids'] = Array();
this.petFields['kids']['index'] = 14;
this.petFields['kids']['name'] = 'Good with Kids';
this.petFields['declawed'] = Array();
this.petFields['declawed']['index'] = 15;
this.petFields['declawed']['name'] = 'Declawed';
this.petFields['housetrained'] = Array();
this.petFields['housetrained']['index'] = 16;
this.petFields['housetrained']['name'] = 'House Trained';
this.petFields['age'] = Array();
this.petFields['age']['index'] = 17;
this.petFields['age']['name'] = 'Age';
this.petFields['specialNeeds'] = Array();
this.petFields['specialNeeds']['index'] = 18;
this.petFields['specialNeeds']['name'] = 'Special Needs';
this.petFields['altered'] = Array();
this.petFields['altered']['index'] = 19;
this.petFields['altered']['name'] = 'Altered';
this.petFields['size'] = Array();
this.petFields['size']['index'] = 20;
this.petFields['size']['name'] = 'Size';
this.petFields['uptodate'] = Array();
this.petFields['uptodate']['index'] = 21;
this.petFields['uptodate']['name'] = 'Up-to-date';
this.petFields['color'] = Array();
this.petFields['color']['index'] = 22;
this.petFields['color']['name'] = 'Color';
this.petFields['coatLength'] = Array();
this.petFields['coatLength']['index'] = 23;
this.petFields['coatLength']['name'] = 'Coat Length';
this.petFields['pattern'] = Array();
this.petFields['pattern']['index'] = 24;
this.petFields['pattern']['name'] = 'Pattern';
this.petFields['courtesy'] = Array();
this.petFields['courtesy']['index'] = 25;
this.petFields['courtesy']['name'] = 'Courtesy Listing';
this.petFields['found'] = Array();
this.petFields['found']['index'] = 26;
this.petFields['found']['name'] = 'Found';
this.petFields['foundDate'] = Array();
this.petFields['foundDate']['index'] = 27;
this.petFields['foundDate']['name'] = 'Found Date';
this.petFields['foundZipcode'] = Array();
this.petFields['foundZipcode']['index'] = 28;
this.petFields['foundZipcode']['name'] = 'Found Zip Code';
this.petFields['killDate'] = Array();
this.petFields['killDate']['index'] = 29;
this.petFields['killDate']['name'] = 'Euth Date';
this.petFields['killReason'] = Array();
this.petFields['killReason']['index'] = 30;
this.petFields['killReason']['name'] = 'Euth Reason';
this.petFields['description'] = Array();
this.petFields['description']['index'] = 31;
this.petFields['description']['name'] = 'Description';
this.petFields['pic1'] = Array();
this.petFields['pic1']['index'] = 32;
this.petFields['pic1']['name'] = 'Picture';
this.petFields['pictmn1'] = Array();
this.petFields['pictmn1']['index'] = 33;
this.petFields['pictmn1']['name'] = 'Thumbnail';
this.petFields['pic2'] = Array();
this.petFields['pic2']['index'] = 34;
this.petFields['pic2']['name'] = 'Picture';
this.petFields['pictmn2'] = Array();
this.petFields['pictmn2']['index'] = 35;
this.petFields['pictmn2']['name'] = 'Thumbnail';
this.petFields['pic3'] = Array();
this.petFields['pic3']['index'] = 36;
this.petFields['pic3']['name'] = 'Picture';
this.petFields['pictmn3'] = Array();
this.petFields['pictmn3']['index'] = 37;
this.petFields['pictmn3']['name'] = 'Thumbnail';
this.petFields['pic4'] = Array();
this.petFields['pic4']['index'] = 38;
this.petFields['pic4']['name'] = 'Picture';
this.petFields['pictmn4'] = Array();
this.petFields['pictmn4']['index'] = 39;
this.petFields['pictmn4']['name'] = 'Thumbnail';
this.petFields['video1'] = Array();
this.petFields['video1']['index'] = 40;
this.petFields['video1']['name'] = 'Video';
this.petFields['contactName'] = Array();
this.petFields['contactName']['index'] = 41;
this.petFields['contactName']['name'] = 'Contact Name';
this.petFields['contactEmail'] = Array();
this.petFields['contactEmail']['index'] = 42;
this.petFields['contactEmail']['name'] = 'Contact Email';
this.petFields['contactCellPhone'] = Array();
this.petFields['contactCellPhone']['index'] = 43;
this.petFields['contactCellPhone']['name'] = 'Contact Cell Phone';
this.petFields['contactHomePhone'] = Array();
this.petFields['contactHomePhone']['index'] = 44;
this.petFields['contactHomePhone']['name'] = 'Contact Home Phone';
this.petFields['locationZipcode'] = Array();
this.petFields['locationZipcode']['index'] = 45;
this.petFields['locationZipcode']['name'] = 'Location Zipcode';
this.petFields['locationName'] = Array();
this.petFields['locationName']['index'] = 46;
this.petFields['locationName']['name'] = 'Location Name';
this.petFields['detailLink'] = Array();
this.petFields['detailLink']['index'] = 47;
this.petFields['detailLink']['name'] = 'Name';
this.petFields['created'] = Array();
this.petFields['created']['index'] = 48;
this.petFields['created']['name'] = 'Created';
this.mode = '';
this.pet = new Array();
this.listId = 'rgPetContainer';
this.detailId = 'rgPetDetails';
this.fields = 'name,breed,color,species,age,thumbnail';
this.orderby = this.petFields['name']['index'];
this.order = 'asc';
this.enableSearch = true;
this.smartBrowse = true;
this.sortbyField = 'name';
this.sortbyOrder = 'asc';
this.hideEmptyFields = false;
this.detailTemplate = 'template1';
this.detailWidth = '600';
this.detailHeight = '620';
this.picMaxWidth = '400';
this.pictmnMaxWidth = '100';
this.picSize = 'thumbnail';
this.paging = true;
this.perPage = 10;
this.perRow = 4;
this.rows = 4;
this.detailPage = 'popover';
this.buildPets = function() {
this.pet = [
['21346919','Available','2025-05-09 17:24:20','','Athena *Adoption Pending*','','Dog','Feist / Jack Russell Terrier / Mixed (short coat)','Feist','Jack Russell Terrier','Female','Yes','','','','','','','','Yes','','','White with Tan, Yellow or Fawn','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Athena *Adoption Pending*','2025-03-13 04:19:09'],
['12013648','Available','2023-10-15 07:00:29','','BamBam *Adopt or Foster*','','Dog','Catahoula Leopard Dog / Mixed (short coat)','Catahoula Leopard Dog','','Male','Yes','Yes','','','','','Adult','','Yes','Medium','Yes','Brindle with White','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','BamBam *Adopt or Foster*','2017-09-14 00:12:00'],
['20905946','Available','2025-04-08 20:04:28','','Belle *Adopt*','','Dog','Beagle (short coat)','Beagle','','Female','','','','','','','','','Yes','','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Belle *Adopt*','2024-09-26 05:27:36'],
['20053718','Available','2024-04-07 09:24:38','','Boomer *Adopt or Foster*','','Dog','Beagle / Mixed (short coat)','Beagle','','Male','Yes','','','','','','','','Yes','','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','
','
','
','
','','','','','','','','','','Boomer *Adopt or Foster*','2023-12-07 13:07:17'],
['20334265','Available','2025-04-13 17:40:42','','Brenda *Adopt or Foster *','','Dog','American Staffordshire Terrier / Mixed (short coat)','American Staffordshire Terrier','','Female','Yes','','','','','','Young','','Yes','','','Black with White','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Brenda *Adopt or Foster *','2024-03-26 06:05:07'],
['21403035','Available','2025-04-03 18:50:15','','Charlie *Adopt or Foster*','','Dog','Chihuahua / Mixed (short coat)','Chihuahua','','Male','Yes','','','','','','','','Yes','','','Yellow','Short','','No','No','','','','','','
','
','
','
','','','','','','','','','','','','Charlie *Adopt or Foster*','2025-04-03 18:49:16'],
['18561253','Available','2024-11-16 13:05:56','','Chester 2 *Adopt or Foster*','','Dog','Hound / Mixed (short coat)','Hound','','Male','Yes','','','','','','Adult','','Yes','Medium','','Black with White','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Chester 2 *Adopt or Foster*','2022-09-24 07:54:43'],
['17191723','Available','2024-08-11 08:10:26','','Cindy Lu *Adopt or Foster*','','Dog','Pit Bull Terrier / Labrador Retriever / Mixed (short coat)','Pit Bull Terrier','Labrador Retriever','Female','Yes','','','','','','','','Yes','','','Black with White','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Cindy Lu *Adopt or Foster*','2021-09-06 04:28:44'],
['21471977','Available','2025-04-30 12:11:27','','Cocoa - Cross Post','','Dog','Ibizan Hound / Terrier / Mixed','Ibizan Hound','Terrier','Female','Yes','','','','','','Young','','Yes','Large','','Brown/Chocolate with White','','','No','No','','','','','','
','
','
','
','
','
','','','','','','','','','','Cocoa - Cross Post','2025-04-30 12:07:50'],
['21286961','Available','2025-04-22 16:42:52','','Copper *Adoption Pending*','','Dog','Unknown breed (short coat)','','','Female','','','','','','','','','Yes','','','Brown/Chocolate with Tan','Short','','No','No','','','','','','
','
','
','
','','','','','','','','','','','','Copper *Adoption Pending*','2025-02-16 10:13:00'],
['17203603','Available','2023-05-11 07:13:18','','Diamond *Adopt or Foster*','','Dog','Pit Bull Terrier (short coat)','Pit Bull Terrier','','Female','No','','','','','','','','Yes','','','Blue/Silver/Salt & Pepper','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Diamond *Adopt or Foster*','2021-09-09 18:36:21'],
['20967082','Available','2025-01-17 05:55:24','','Ebony *Adopt*','','Dog','Labrador Retriever / Mixed (short coat)','Labrador Retriever','','Female','Yes','','','','','','','','Yes','','','Black with White','Short','','No','No','','','','','','
','
','
','
','
','
','','','','','','','','','','Ebony *Adopt*','2024-10-17 04:51:46'],
['20589088','Available','2025-04-14 18:48:40','','Frank *Adopt or Foster*','','Dog','Hound / Mixed (short coat)','Hound','','Male','Yes','','','','','','','','Yes','','','White with Red, Golden, Orange or Chestnut','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Frank *Adopt or Foster*','2024-06-23 18:05:56'],
['13148098','Available','2022-11-22 08:07:52','','Gemma *Adopt or Foster*','','Dog','Hound / Mixed (short coat)','Hound','','Female','Yes','','','','','','','','Yes','Medium','','Red/Golden/Orange/Chestnut with White','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Gemma *Adopt or Foster*','2018-06-15 05:55:14'],
['21392410','Available','2025-04-01 07:53:31','','Gracie *Adopt or Foster*','','Dog','Labrador Retriever / Mixed (medium coat)','Labrador Retriever','','Female','Yes','','','','','','','','Yes','','','Tan','Medium','','No','No','','','','','','
','
','','','','','','','','','','','','','','Gracie *Adopt or Foster*','2025-04-01 07:49:15'],
['14628829','Available','2023-07-13 15:27:02','','Holly *Adopt or Foster*','','Dog','Pit Bull Terrier (short coat)','Pit Bull Terrier','','Female','','','','','','','','','Yes','','','Brown/Chocolate with White','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Holly *Adopt or Foster*','2019-07-22 12:21:53'],
['20200607','Available','2024-08-30 19:08:34','','Jamie *Adopt or Foster *','','Dog','Shepherd / Mixed (short coat)','Shepherd','','Female','Yes','','','','','','','','','','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','
','
','
','
','','','','','','','','','','Jamie *Adopt or Foster *','2024-02-04 13:48:56'],
['21458603','Available','2025-04-24 21:16:30','','Jock *Adopt or Foster*','','Dog','Schnauzer / Scottish Terrier Scottie / Mixed (medium coat)','Schnauzer','Scottish Terrier Scottie','Male','Yes','','','','','','','','Yes','','','Black with White','Medium','','No','No','','','','','','
','
','','','','','','','','','','','','','','Jock *Adopt or Foster*','2025-04-24 21:13:53'],
['17101288','Available','2024-04-07 09:49:09','','Luke *Adopt*','','Dog','Beagle / Mixed (short coat)','Beagle','','Male','Yes','','','','','','Adult','','Yes','Small','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Luke *Adopt*','2021-08-09 09:47:34'],
['20695257','Available','2025-04-22 16:48:51','','Max *Adopt*','','Dog','Chihuahua / Mixed (short coat)','Chihuahua','','Male','Yes','','','','','Yes','','','','','','Tan','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Max *Adopt*','2024-07-28 12:49:59'],
['21485535','Available','2025-05-04 19:01:33','','Molly *Adopt or Foster*','','Dog','Hound / Mixed (short coat)','Hound','','Female','Yes','','','','','','','','Yes','','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','
','
','','','','','','','','','','','','Molly *Adopt or Foster*','2025-05-04 19:00:10'],
['20132355','Available','2025-01-15 20:17:13','','Peppermint *Adopt or Foster*','','Dog','Hound (short coat)','Hound','','Female','','','','','','','','','Yes','','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Peppermint *Adopt or Foster*','2024-01-07 12:58:15'],
['20405506','Available','2025-01-12 17:07:00','','Ranger *Adopt*','','Dog','German Shepherd Dog / Mixed (medium coat)','German Shepherd Dog','','Male','Yes','','','','','','','','Yes','','','Tan/Yellow/Fawn with Black','Medium','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Ranger *Adopt*','2024-04-19 09:17:29'],
['21348413','Available','2025-04-24 21:16:04','','Sam*Adopt or Foster*','','Dog','Beagle (short coat)','Beagle','','Male','No','','','','','','','','Yes','','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','','','','','','','','','','','','','','Sam*Adopt or Foster*','2025-03-13 17:35:14'],
['16273275','Available','2024-04-07 09:50:43','','Sooney *Adopt or Foster*','','Dog','Labrador Retriever / Mixed (short coat)','Labrador Retriever','','Female','Yes','','','','','','','','Yes','','','Black','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Sooney *Adopt or Foster*','2020-11-22 16:49:00'],
['20804967','Available','2025-01-18 19:39:00','','Stills *Adopt or Foster*','','Dog','Labrador Retriever / Mixed (short coat)','Labrador Retriever','','Male','Yes','','','','','','','','','','','Tan','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Stills *Adopt or Foster*','2024-08-25 08:35:04'],
['13444875','Available','2025-05-09 17:22:31','','Sudie *Adoption Pending*','','Dog','Beagle (short coat)','Beagle','','Female','No','Yes','','Yes','','','Senior','','Yes','Small','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','
','
','
','
','
','
','','','','','','','','Sudie *Adoption Pending*','2018-08-21 04:29:53'],
['21498984','Available','2025-05-09 17:18:54','','Summer *Adopt or Foster*','','Dog','Shih Tzu / Spaniel / Mixed','Shih Tzu','Spaniel','Female','Yes','','','','','','Adult','','','Small','','White with Gray or Silver','','','No','No','','','','','','
','
','
','
','','','','','','','','','','','','Summer *Adopt or Foster*','2025-05-09 16:28:04'],
['21133928','Available','2024-12-16 11:57:31','','Taylor *Adopt or Foster*','','Dog','Hound / Mixed (short coat)','Hound','','Male','Yes','','','','','','','','Yes','','','Tricolor (Tan/Brown & Black & White)','Short','','No','No','','','','','','
','
','','','','','','','','','','','','','','Taylor *Adopt or Foster*','2024-12-16 11:56:15'],
['21240469','Available','2025-03-19 07:12:00','','Willow *Adoption pending*','','Dog','Terrier / Mixed (medium coat)','Terrier','','Female','Yes','','','','','','Young','','Yes','','Yes','Tan/Yellow/Fawn with White','Medium','','No','No','','','','','','
','
','
','
','
','
','','','','','','','','','','Willow *Adoption pending*','2025-01-28 12:02:24']
];
}
this.init = function() {
this.buildPets();
if (!this.sortbyField) {
this.sortbyField = 'lastUpdated';
this.sortbyOrder = 'desc';
}
if (cgiVar('toolkitAnimalID')) {
showDetails(this.name, null, cgiVar('toolkitAnimalID'));
}
this.fieldsArray = this.fields.split(',');
var orderby = readCookie('rgOrderby');
if (orderby && (this.mode == 'list')) {
if (this.sortbyField && this.sortbyOrder && orderby == this.petFields[this.sortbyField]['index']){
this.order = this.sortbyOrder;
}
this.sortPetArrayOnLoad(orderby);
} else {
if (this.sortbyField && this.sortbyOrder) {
this.order = this.sortbyOrder;
this.sortPetArrayOnLoad(this.petFields[this.sortbyField]['index']);
}
}
this.page = 1;
}
this.list = function(container) {
this.listId = container;
this.mode = 'list';
this.init();
this.writeList();
}
this.list2 = function(container) {
this.listId = container;
this.mode = 'list2';
this.init();
this.writeList2();
}
this.grid = function(container) {
this.listId = container;
this.mode = 'grid';
this.init();
this.writeGrid();
}
this.random = function(div, url) {
this.buildPets();
divObj = document.getElementById(div);
this.petsWithPic = new Array();
for (x = 0; x < this.pet.length; x++) {
if (this.pet[x][this.petFields['pictmn1']['index']]) {
this.petsWithPic.push(x);
}
}
if (this.petsWithPic.length == 0) return false;
var r=Math.floor(Math.random()*this.petsWithPic.length);
divObj.className = 'rgPetRandom';
divObj.innerHTML = '
Featured Adoptable Pet
'+this.pet[this.petsWithPic[r]][this.petFields['pictmn1']['index']] +
''+this.pet[this.petsWithPic[r]][this.petFields['name']['index']]+'
'+
''+this.pet[this.petsWithPic[r]][this.petFields['breed']['index']]+'
';
divObj.animalID = this.pet[this.petsWithPic[r]][this.petFields['animalID']['index']];
divObj.onclick = function(e) {
if (url.indexOf('?') == -1) url += '?';
location.href = url+'&toolkitAnimalID='+this.animalID;
}
}
this.featured = function(div, url, animalID) {
this.buildPets();
divObj = document.getElementById(div);
for (x = 0; x < this.pet.length; x++) {
if (this.pet[x][this.petFields['animalID']['index']] == animalID && this.pet[x][this.petFields['pictmn1']['index']]) {
var rowNumber = x;
break;
}
}
if (rowNumber === false) { alert('failed'); return false; }
divObj.className = 'rgPetRandom';
divObj.innerHTML = 'Featured Adoptable Pet
'+this.pet[rowNumber][this.petFields['pictmn1']['index']] +
''+this.pet[rowNumber][this.petFields['name']['index']]+'
'+
''+this.pet[rowNumber][this.petFields['breed']['index']]+'
';
divObj.animalID = animalID;
divObj.onclick = function(e) {
if (url.indexOf('?') == -1) url += '?';
location.href = url+'&toolkitAnimalID='+animalID;
}
}
this.detail = function() {
this.init();
this.animalID = cgiVar('toolkitAnimalID');
for (x=0; x';
if (this.paging) search += ' | ';
search += ' | ';
if (this.paging) search += ' | ';
if (this.paging) search += '
| ';
search += '
';
var tr = document.createElement('tr');
tr.className = 'rgPetTableHeadSearch';
var td = document.createElement('td');
td.colSpan = this.fieldsArray.length;
td.align = 'center';
td.id = 'rgPetTableHeadSearch'+this.name;
td.innerHTML = search;
tr.appendChild(td);
thead.appendChild(tr);
} else if (this.paging) {
search += '';
if (this.paging) search += ' | '+
' | '+
' | ';
search += '
';
var tr = document.createElement('tr');
tr.className = 'rgPetTableHeadSearch';
var td = document.createElement('td');
td.colSpan = this.fieldsArray.length;
td.align = 'center';
td.id = 'rgPetTableHeadSearch'+this.name;
td.innerHTML = search;
tr.appendChild(td);
thead.appendChild(tr);
}
var tr = document.createElement('tr');
tr.id = 'rgPetTableHeadFields'+this.name;
tr.className = 'rgPetTableHeadFields';
for (x=0; x' + this.petFields[this.fieldsArray[x]]['name'] + '';
tr.appendChild(td);
}
thead.appendChild(tr);
table.appendChild(thead);
var tbody = document.createElement('tbody');
var rowCounter=0;
this.displayablePets = 0;
var petsWrittenOut = 0;
if (this.page) {
start = (this.page-1)*this.perPage;
} else {
this.page = 1;
start = 0;
}
for (var y=0; y this.page * this.perPage) continue;
if (this.displayablePets <= start) continue;
petsWrittenOut += 1;
var tr = document.createElement('tr');
tr.rowNumber = y;
tr.id = this.name+y;
tr.rgPetsClassName = this.name;
tr.animalID = this.pet[y][this.petFields['animalID']['index']];
if (isEven(rowCounter)) {
tr.rowNumber = y;
tr.origClassName = 'rgPetTableRowEven';
tr.className = 'rgPetTableRowEven';
} else {
tr.origClassName = 'rgPetTableRowOdd';
tr.className = 'rgPetTableRowOdd';
}
rowCounter+=1;
if ('Yes' == 'Yes') {
tr.onclick = function(evt) { showDetails(this.rgPetsClassName, this.rowNumber); };
tr.onmouseover = function(evt) { this.className = 'rgPetTableRowOver'; };
tr.onmouseout = function(evt) { this.className = this.origClassName; };
} else {
tr.onmouseover = function(evt) { this.className = 'rgPetTableRowOverInactive'; };
tr.onmouseout = function(evt) { this.className = this.origClassName; };
}
//rgPets.pet[this.rowNumber][rgPets.petFields['animalID']['index']], rgPets.detailId); };
for (x=0; x this.petFields[this.fieldsArray[x]]['listLength']) {
fieldValue = fieldValue.substring(0, this.petFields[this.fieldsArray[x]]['listLength']);
}
}
var val = '';
val += fieldValue + '
';
if (val) {
td.innerHTML = val;
}
tr.appendChild(td);
}
tbody.appendChild(tr);
}
if (rowCounter == 0) {
var tr = document.createElement('tr');
var td = document.createElement('td');
td.colSpan = this.fieldsArray.length;
td.className = 'rgPetTableRowZeroPets';
td.innerHTML = 'No pets found.';
tr.appendChild(td);
tbody.appendChild(tr);
}
table.appendChild(tbody);
petContainer.innerHTML = '';
petContainer.appendChild(table);
if (this.searchText) {
searchForm = eval('document.rgPetsSearchForm'+this.name);
searchForm.rgPetsSearchText.value = this.searchText;
}
this.pages = Math.ceil(this.displayablePets/this.perPage);
if (this.paging && this.displayablePets > rowCounter) {
obj = document.getElementById('nextButtons');
obj2 = document.getElementById('pageCount');
obj2.innerHTML = '(page '+this.page+' of '+this.pages+' )';
if (this.pages > this.page) {
obj.innerHTML = 'Next »';
} else {
obj.innerHTML = 'Next »';
}
obj = document.getElementById('prevButtons');
if (this.page > 1) {
obj.innerHTML = '« Previous';
} else {
obj.innerHTML = '« Previous';
}
}
}
this.writeList2 = function() {
var petContainer = document.getElementById(this.listId);
//alert(this.listId);
var table = document.createElement('table');
table.cellSpacing = 0;
table.id = 'rgPetTable'+this.name;
table.className = 'rgPetTable list2';
var thead = document.createElement('thead');
if (this.enableSearch) {
var search = '';
search += '';
if (this.paging) search += ' | ';
search += ' | ';
if (this.paging) search += ' | ';
if (this.paging) search += '
| ';
search += '
';
var tr = document.createElement('tr');
tr.className = 'rgPetTableHeadSearch';
var td = document.createElement('td');
td.colSpan = this.fieldsArray.length;
td.align = 'center';
td.id = 'rgPetTableHeadSearch'+this.name;
td.innerHTML = search;
tr.appendChild(td);
thead.appendChild(tr);
} else if (this.paging) {
var search = '';
search += '';
if (this.paging) search += ' | '+
' | '+
' | ';
search += '
';
var tr = document.createElement('tr');
tr.className = 'rgPetTableHeadSearch';
var td = document.createElement('td');
td.colSpan = this.fieldsArray.length;
td.align = 'center';
td.id = 'rgPetTableHeadSearch'+this.name;
td.innerHTML = search;
tr.appendChild(td);
thead.appendChild(tr);
}
table.appendChild(thead);
var tbody = document.createElement('tbody');
var rowCounter=0;
this.displayablePets = 0;
var petsWrittenOut = 0;
if (this.page) {
start = (this.page-1)*this.perPage;
} else {
this.page = 1;
start = 0;
}
for (var y=0; y this.page * this.perPage) continue;
if (this.displayablePets <= start) continue;
petsWrittenOut += 1;
var tr = document.createElement('tr');
tr.rowNumber = y;
tr.id = this.name+y;
tr.rgPetsClassName = this.name;
tr.animalID = this.pet[y][this.petFields['animalID']['index']];
if (isEven(rowCounter)) {
tr.rowNumber = y;
tr.origClassName = 'rgPetTableRowEven';
tr.className = 'rgPetTableRowEven';
} else {
tr.origClassName = 'rgPetTableRowOdd';
tr.className = 'rgPetTableRowOdd';
}
rowCounter+=1;
tr.onclick = function(evt) { showDetails(this.rgPetsClassName, this.rowNumber); };
//rgPets.pet[this.rowNumber][rgPets.petFields['animalID']['index']], rgPets.detailId); };
tr.onmouseover = function(evt) { this.className = 'rgPetTableRowOver'; };
tr.onmouseout = function(evt) { this.className = this.origClassName; };
td = document.createElement('td');
var str = '';
if (this.picSize == 'thumbnail') {
if (this.pet[y][this.petFields['pictmn1']['index']] != '') {
str += ''+this.pet[y][this.petFields['pictmn1']['index']]+'
';
}
} else if (this.picSize == 'fullsize') {
if (this.pet[y][this.petFields['pic1']['index']] != '') {
//alert(this.pet[y][this.petFields['pic1']['index']]);
str += ''+this.pet[y][this.petFields['pic1']['index']]+'
';
}
}
for (x=0; x' +
'' + this.petFields[this.fieldsArray[x]]['name'] + ': ' +
'' + this.pet[y][this.petFields[this.fieldsArray[x]]['index']] + '' +
'';
} else {
str += '' +
'' + this.pet[y][this.petFields[this.fieldsArray[x]]['index']] + '' +
'
';
}
}
if (str) {
td.innerHTML = str;
}
tr.appendChild(td);
tbody.appendChild(tr);
}
table.appendChild(tbody);
petContainer.innerHTML = '';
petContainer.appendChild(table);
if (this.searchText) {
searchForm = eval('document.rgPetsSearchForm'+this.name);
searchForm.rgPetsSearchText.value = this.searchText;
}
this.pages = Math.ceil(this.displayablePets/this.perPage);
if (this.paging && this.displayablePets > rowCounter) {
obj = document.getElementById('nextButtons');
obj2 = document.getElementById('pageCount');
obj2.innerHTML = '(page '+this.page+' of '+this.pages+' )';
if (this.pages > this.page) {
obj.innerHTML = 'Next »';
} else {
obj.innerHTML = 'Next »';
}
obj = document.getElementById('prevButtons');
if (this.page > 1) {
obj.innerHTML = '« Previous';
} else {
obj.innerHTML = '« Previous';
}
}
}
this.writeGrid = function() {
if (!this.perRow) this.perRow = 4;
if (!this.rows) this.rows = 3;
this.perPage = (this.perRow * this.rows);
var petContainer = document.getElementById(this.listId);
//alert(this.listId);
var table = document.createElement('table');
table.cellSpacing = 0;
table.id = 'rgPetTable'+this.name;
table.className = 'rgPetTable grid';
var thead = document.createElement('thead');
if (this.enableSearch) {
var search = '';
search += '';
if (this.paging) search += ' | ';
search += ' | ';
if (this.paging) search += ' | ';
if (this.paging) search += '
| ';
search += '
';
var tr = document.createElement('tr');
tr.className = 'rgPetTableHeadSearch';
var td = document.createElement('td');
td.colSpan = this.perRow;
td.align = 'center';
td.id = 'rgPetTableHeadSearch'+this.name;
td.innerHTML = search;
tr.appendChild(td);
thead.appendChild(tr);
} else if (this.paging) {
var search = '';
if (this.paging) search += ' | '+
' | '+
' | ';
search += '
';
var tr = document.createElement('tr');
tr.className = 'rgPetTableHeadSearch';
var td = document.createElement('td');
td.colSpan = this.perRow;
td.align = 'center';
td.id = 'rgPetTableHeadSearch'+this.name;
td.innerHTML = search;
tr.appendChild(td);
thead.appendChild(tr);
}
table.appendChild(thead);
var tbody = document.createElement('tbody');
var rowCounter=0;
this.displayablePets = 0;
var petsWrittenOut = 0;
if (this.page) {
start = (this.page-1)*this.perPage;
} else {
this.page = 1;
start = 0;
}
for (var y=0; y this.page * this.perPage) continue;
if (this.displayablePets <= start) continue;
petsWrittenOut += 1;
if ((petsWrittenOut-1) % this.perRow === 0) {
// We need to create a new row
var tr = document.createElement('tr');
tbody.appendChild(tr);
rowCounter+=1;
}
td = document.createElement('td');
td.className = "rgPetTableCell" + this.fieldsArray[x] + this.name;
td.style.verticalAlign = 'top';
td.animalID = this.pet[y][this.petFields['animalID']['index']];
td.animalNumber = y;
var val = '' +
'
';
if (this.picSize == 'thumbnail') {
val += '' +
this.pet[y][this.petFields['pictmn1']['index']] + ' | ';
} else if (this.picSize == 'fullsize') {
val += '' +
this.pet[y][this.petFields['pic1']['index']] + ' | ';
}
val += '
';
val += ''+this.pet[y][this.petFields['name']['index']] + '
' +
''+this.pet[y][this.petFields['breed']['index']] + '
';
td.innerHTML = val;
if ('Yes' == 'Yes') {
td.rgPetsClassName = this.name;
td.onclick = function(evt) { showDetails(this.rgPetsClassName, this.animalNumber, this.animalID); };
td.onmouseover = function(evt) { this.className = 'rgPetTableCellOver'; };
td.onmouseout = function(evt) { this.className = this.origClassName; };
} else {
td.onmouseover = function(evt) { this.className = 'rgPetTableCellOver'; };
td.onmouseout = function(evt) { this.className = this.origClassName; };
}
tr.appendChild(td);
if (y == this.pet.length-1 && (petsWrittenOut-1) % this.perRow !== 0) {
c = this.displayablePets;
while (c % this.perRow !== 0) {
td = document.createElement('td');
td.className = "rgPetTableCell" + this.fieldsArray[x] + this.name;
td.innerHTML = ' ';
tr.appendChild(td);
c+=1;
}
}
}
if (rowCounter == 0) {
var tr = document.createElement('tr');
var td = document.createElement('td');
td.colSpan = this.perRow;
td.className = 'rgPetTableRowZeroPets';
td.innerHTML = 'No pets found.';
tr.appendChild(td);
tbody.appendChild(tr);
}
table.appendChild(tbody);
petContainer.innerHTML = '';
petContainer.appendChild(table);
if (this.searchText) {
searchForm = eval('document.rgPetsSearchForm'+this.name);
searchForm.rgPetsSearchText.value = this.searchText;
}
this.pages = Math.ceil(this.displayablePets/this.perPage);
if (this.paging && this.displayablePets > rowCounter) {
obj = document.getElementById('nextButtons'+this.name);
obj2 = document.getElementById('pageCount'+this.name);
obj2.innerHTML = '(page '+this.page+' of '+this.pages+' )';
if (this.pages > this.page) {
obj.innerHTML = 'Next »';
} else {
obj.innerHTML = 'Next »';
}
obj = document.getElementById('prevButtons'+this.name);
if (this.page > 1) {
obj.innerHTML = '« Previous';
} else {
obj.innerHTML = '« Previous';
}
}
}
this.clearList = function() {
var petContainer = document.getElementById(this.listId);
petContainer.innerHTML = '';
}
this.clearSearch = function(form) {
form.rgPetsSearchText.value = '';
this.searchText = '';
this.clearList();
if (this.mode == 'list') {
this.writeList();
} else if (this.mode == 'list2') {
this.writeList2();
} else if (this.mode == 'grid') {
this.writeGrid();
}
return false;
}
this.setupSearch = function(form) {
this.searchText = form.rgPetsSearchText.value;
this.clearList();
if (this.mode == 'list') {
this.writeList();
} else if (this.mode == 'list2') {
this.writeList2();
} else if (this.mode == 'grid') {
this.writeGrid();
}
return false;
}
this.sortPetArray = function(fieldIndex) {
if (this.mode == 'list') {
if (this.orderby == fieldIndex) {
if (this.order == 'asc') {
this.order = 'desc';
} else {
this.order = 'asc';
}
} else this.order = 'asc';
}
this.pet.multiSort(fieldIndex);
this.orderby = fieldIndex;
if (this.order == 'desc') this.pet.reverse();
if (this.mode == 'list') {
createCookie('rgOrderby',fieldIndex,3);
}
}
this.sortPetArrayOnLoad = function(fieldIndex) {
this.pet.multiSort(fieldIndex);
this.orderby = fieldIndex;
if (this.order == 'desc') this.pet.reverse();
if (this.mode == 'list') {
createCookie('rgOrderby',fieldIndex,3);
}
}
this.sortby = function(fieldIndex) {
this.doSort(fieldIndex);
this.clearList();
this.writeList();
}
this.doSort = function(fieldIndex) {
this.sortPetArray(fieldIndex);
}
this.nextPet = function() {
if (this.currentDetailRow < this.pet.length-1) {
nextDetailRow = this.currentDetailRow+1;
nextDetailPet = this.pet[nextDetailRow][this.petFields['animalID']['index']];
} else {
nextDetailRow = 0;
nextDetailPet = this.pet[nextDetailRow][this.petFields['animalID']['index']];
}
document.getElementById('detailFrame').src = this.detailUrl(nextDetailPet);
this.currentDetailPet = nextDetailPet;
this.currentDetailRow = nextDetailRow;
}
this.prevPet = function() {
if (this.currentDetailRow > 0) {
nextDetailRow = this.currentDetailRow-1;
nextDetailPet = this.pet[nextDetailRow][this.petFields['animalID']['index']];
} else {
nextDetailRow = this.pet.length-1;
nextDetailPet = this.pet[nextDetailRow][this.petFields['animalID']['index']];
}
document.getElementById('detailFrame').src = this.detailUrl(nextDetailPet);
this.currentDetailPet = nextDetailPet;
this.currentDetailRow = nextDetailRow;
}
this.detailUrl = function(animalID) {
var tempURL = location.href.split('://');
if (tempURL['0'] == 'https') {
var url = 'https://toolkit.rescuegroups.org';
} else {
var url = 'https://toolkit.rescuegroups.org';
}
url += '/javascript/v2.0/'+this.detailTemplate+'?animalID='+animalID+'&key=nUJXxSDq&referer=http%3A%2F%2Ftoolkit.rescuegroups.org%2Fjavascript%2Fv2.0%2F%3Fkey%3DnUJXxSDq';
return url;
}
}
Array.prototype.multiSort = function(index){
// Written By: WillyDuitt@hotmail.com | 03-10-2005 \\;
for(var i=0; i=0; x=(x-1)){
var temp = this[i].splice(index,1);
this[i].unshift(temp);
}
}
return true;
}
function cgiVar(varName) {
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;iPrevious Next