// onload

////////////////////
// addLoadEvent() //
////////////////////

function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function () {
oldonload();
func();
}
}
}

// Image

function viewImage(url,urlwidth,urlheight) {
	
var url = url || '#';
var urlwidth = urlwidth || 780;
var urlheight = urlheight || 585;
var screenwidth = screen.width;
var screenheight = screen.height;

if (urlwidth > screenwidth || urlheight > screenheight){ // url is larger
var showscroll = 'yes';
} else {
var showscroll = 'no';
}

if (urlwidth > screenwidth){ // width is larger
var leftpos = 0;
var winwidth = screenwidth;
} else {
var leftpos = (screenwidth - urlwidth)/2;
var winwidth = urlwidth;
}

if (urlheight > screenheight){ // height is larger
var toppos = 0;
var winheight = screenheight;
} else {
var toppos = (screenheight - urlheight)/2;
var winheight = urlheight;
}

var win=window.open(url,'new','toolbar=no,status=no,scrollbars='+ showscroll +',location=no,menubar=no,directories=no,resizable=yes,left=' + leftpos + ',top=' + toppos + ',width=' + winwidth + ',height=' + winheight + '');

}

// Email

function encrypt(username,hostname,linktext,subject,message){
var username = username || 'webmestre';
var hostname = hostname || 'csdcab.on.ca';
var address = username + '&#64;' + hostname;
var linktext = linktext || address;
var subject = subject || '';
if (subject != '') {
subject = '?subject=' + subject;
}
var message = message || '';
if (message != '') {
message = '?body=' + message;
}
var output = '<a href="&#109;&#97;&#105;&#108;' + '&#116;&#111;&#58;'+ address + subject + message +'">'+ linktext +'</a>';
document.write(output);
}

// Tree

function toggle(aTag) {
if (aTag.parentNode.tagName == 'LI') { // valid LI
if (aTag.className == 'on') { // turn off
ulDisplay(aTag,'none');
aTag.className = 'off';
} else { // turn off
ulDisplay(aTag,'block');
aTag.className = 'on';
} // end turn on
var aTags = document.getElementsByTagName('A');
for (var i = 0; i < aTags.length; i++) { // for each A tag in the document
childATags = aTags[i].parentNode.getElementsByTagName('A');
aTagFound = false;
for (var j = 0; j < childATags.length; j++) { // for each A tag within the parent LI
if (childATags[j] == aTag) { // aTag found within parent LI
aTagFound = true;
break;
} // end aTag found within parent LI
} // for each A tag within the parent LI
if (!aTagFound) { // aTag not found, set display to 'none'
ulDisplay(aTags[i],'none');
if (aTags[i].className == 'on') { // set className to 'off'
aTags[i].className = 'off';
} // end set className to 'off'
} // end aTag not found, set display to 'none'
} // end for each A tag in the document
} // end valid LI
}

function ulDisplay(aTag,displayValue) {
var parentLI = aTag.parentNode;
var ulTags = parentLI.getElementsByTagName('UL');
var i = ulTags.length;
while (i--) { // for each ul descending
immediateChild = false;
for (var j = 0; j < parentLI.childNodes.length; j++) { // for each child node
if (parentLI.childNodes[j] == ulTags[i]) { // ulTags[i] is immediate child of parentLI
immediateChild = true;
break;
} // end ulTags[i] is immediate child of parentLI
} // end for each child node
if (immediateChild) { // toggle display
ulTags[i].style.display = displayValue;
} // end toggle display
} // end for each ul descending
}

// hide branches
document.write('<link href="/template/shared/css/tree.css" rel="stylesheet" type="text/css" media="screen" />');

// Weather Widget

function weatherWidget(city) {
var cityCode = 'caon0688'; // default code
var placeCodes = new Array (
'caon0001','Aberarder',
'caon0002','Abitibi Canyon',
'caon0003','Acton',
'caon0004','Adolphustown',
'caon0005','Ailsa Craig',
'caon0006','Ajax',
'caon0007','Alban',
'caon1530','Alderville',
'caon0008','Alexandria',
'caon0009','Alfred',
'caon0010','Algoma Mills',
'caon0012','Alliston',
'caon0013','Almonte',
'caon0014','Alvinston',
'caon0015','Amherstburg',
'caon2007','Amherstview',
'caon0016','Ancaster',
'caon1500','Angling Lake',
'caon0017','Angus',
'caon0018','Apsley',
'caon0019','Arden',
'caon1618','Arkell',
'caon0020','Arkona',
'caon0021','Armstrong Station',
'caon0022','Arnprior',
'caon0023','Arthur',
'caon0024','Athens',
'caon0025','Atikokan',
'caon0026','Attawapiskat',
'caon0027','Atwood',
'caon0028','Auburn',
'caon0029','Aurora',
'caon0030','Avonmore',
'caon0031','Aylmer',
'caon0032','Ayr',
'caon0033','Ayton',
'caon0034','Azilda',
'caon0035','Baden',
'caon0036','Bailieboro',
'caon0037','Bala',
'caon0038','Balmertown',
'caon1722','Baltimore',
'caon0039','Bancroft',
'caon0040','Barrie',
'caon0041','Barry\'s Bay',
'caon0042','Barwick',
'caon1723','Batawa',
'caon0043','Batchawana Bay',
'caon0044','Bath',
'caon0045','Bayfield',
'caon0046','Baysville',
'caon0047','Beachburg',
'caon0048','Beachville',
'caon0049','Beamsville',
'caon0051','Beardmore',
'caon1501','Bearskin Lake',
'caon0053','Beaverton',
'caon0054','Beeton',
'caon0055','Belle River',
'caon0056','Belleville',
'caon0057','Belmont',
'caon0058','Bethany',
'caon0059','Bethesda',
'caon0060','Big Trout Lake',
'caon0061','Binbrook',
'caon0789','Birch Island',
'caon0062','Biscotasing',
'caon0063','Blackstock',
'caon0064','Blenheim',
'caon0065','Blezard Valley',
'caon0066','Blind River',
'caon0067','Bloomfield',
'caon0069','Blyth',
'caon0070','Bobcaygeon',
'caon0071','Bolton',
'caon0072','Bonfield',
'caon0073','Borden',
'caon0074','Bothwell',
'caon0075','Bourget',
'caon0076','Bowmanville',
'caon0077','Bracebridge',
'caon0078','Bradford',
'caon0079','Bradford West Gwillimbury',
'caon1724','Braeside',
'caon0080','Brampton',
'caon0598','Brant',
'caon0081','Brantford',
'caon0082','Brechin',
'caon0083','Breslau',
'caon0084','Bridgenorth',
'caon0085','Brigden',
'caon0086','Bright',
'caon0087','Brighton',
'caon0088','Brights Grove',
'caon0089','Britt',
'caon0090','Brockville',
'caon0091','Brooklin',
'caon0092','Brownsville',
'caon0093','Bruce Mines',
'caon0094','Brussels',
'caon0095','Buckhorn',
'caon0096','Burford',
'caon0097','Burgessville',
'caon0098','Burk\'s Falls',
'caon0099','Burleigh Falls',
'caon0100','Burlington',
'caon0101','Cache Bay',
'caon0102','Calabogie',
'caon0103','Caledon',
'caon0104','Caledon East',
'caon0105','Caledonia',
'caon0106','Callander',
'caon0107','Calstock',
'caon0108','Cambray',
'caon0109','Cambridge',
'caon0110','Cameron',
'caon1725','Camlachie',
'caon0111','Campbellford',
'caon0112','Campbellville',
'caon0113','Cannington',
'caon0114','Capreol',
'caon1554','Caradoc First Nation',
'caon0115','Caramat',
'caon0116','Cardiff',
'caon0117','Cardinal',
'caon0118','Cargill',
'caon0119','Carleton Place',
'caon0120','Carnarvon',
'caon0121','Carp',
'caon0122','Cartier',
'caon0123','Casselman',
'caon0124','Castlemore',
'caon0125','Castleton',
'caon0126','Cat Lake',
'caon0127','Cavan',
'caon0128','Cayuga',
'caon0129','Centralia',
'caon0130','Chalk River',
'caon0131','Chapleau',
'caon0132','Charlton',
'caon0133','Chatham',
'caon0134','Chatsworth',
'caon0135','Chelmsford',
'caon0136','Chesley',
'caon0137','Chesterville',
'caon7725','Chippewas of the Thames First Nation 42',
'caon0138','Christian Island',
'caon0140','Claremont',
'caon0141','Clarence Creek',
'caon1383','Clarence-Rockland',
'caon0142','Clarington',
'caon0143','Clarkson',
'caon0144','Clearwater Bay',
'caon0145','Clifford',
'caon0146','Clinton',
'caon0147','Cloud Bay',
'caon2071','Cloyne',
'caon0148','Cobalt',
'caon0149','Cobden',
'caon0150','Coboconk',
'caon0151','Cobourg',
'caon0152','Cochenour',
'caon0153','Cochrane',
'caon0154','Coe Hill',
'caon0155','Colborne',
'caon1726','Colchester',
'caon0156','Cold Springs',
'caon0157','Coldwater',
'caon0158','Collingwood',
'caon0160','Comber',
'caon2033','Commanda',
'caon1763','Concord',
'caon0161','Coniston',
'caon0162','Connaught',
'caon0163','Constance Bay',
'caon1522','Constance Lake 92',
'caon0164','Cookstown',
'caon0165','Cooksville',
'caon0166','Cornwall',
'caon0167','Corunna',
'caon0168','Cottam',
'caon0775','Courtice',
'caon0169','Courtright',
'caon0170','Crediton',
'caon0171','Creemore',
'caon0172','Crysler',
'caon0776','Crystal Beach',
'caon0173','Cumberland',
'caon0174','Dashwood',
'caon0175','Deep River',
'caon0176','Deer Lake',
'caon0773','Deerbrook',
'caon0177','Delhi',
'caon0178','Delta',
'caon0179','Denbigh',
'caon0180','Desbarats',
'caon0181','Deseronto',
'caon0183','Deux-Rivières',
'caon0184','Devlin',
'caon0185','Dokis',
'caon1563','Dokis 9',
'caon0186','Dorchester',
'caon0187','Dorion',
'caon0188','Dorset',
'caon0189','Douglas',
'caon1727','Douglastown',
'caon0190','Drayton',
'caon0191','Dresden',
'caon0192','Drumbo',
'caon0193','Dryden',
'caon0194','Dublin',
'caon0195','Dubreuilville',
'caon1728','Dunchurch',
'caon0196','Dundalk',
'caon0197','Dundas',
'caon0198','Dungannon',
'caon0199','Dunnville',
'caon0200','Dunsford',
'caon0201','Durham',
'caon0202','Dutton',
'caon0203','Dwight',
'caon0204','Dyer\'s Bay',
'caon0205','Eagle River',
'caon0206','Ear Falls',
'caon0207','Earlton',
'caon0208','East Gwillimbury',
'caon0209','East York',
'caon0210','Eastwood',
'caon0211','Echo Bay',
'caon0212','Eganville',
'caon0213','Elgin',
'caon0214','Elk Lake',
'caon0215','Elliot Lake',
'caon0216','Elmira',
'caon0217','Elmvale',
'caon0218','Elora',
'caon0219','Embro',
'caon0220','Embrun',
'caon0221','Emeryville',
'caon0222','Emo',
'caon0223','Emsdale',
'caon0224','Englehart',
'caon1506','English River 21',
'caon0225','Enterprise',
'caon0226','Erin',
'caon0227','Espanola',
'caon0228','Essex',
'caon0229','Estaire',
'caon0230','Etobicoke',
'caon1760','Eugenia',
'caon0231','Exeter',
'caon0232','Fauquier',
'caon0233','Fenelon Falls',
'caon0234','Fenwick',
'caon0235','Fergus',
'caon0236','Feversham',
'caon0237','Field',
'caon0238','Finch',
'caon0239','Fingal',
'caon0240','Fisherville',
'caon0241','Flamborough',
'caon0242','Flanders',
'caon0243','Flesherton',
'caon0244','Foleyet',
'caon0245','Forest',
'caon0246','Fort Albany',
'caon0247','Fort Erie',
'caon0248','Fort Frances',
'caon0249','Fort Hope',
'caon1510','Fort Hope 64',
'caon0250','Fort Severn',
'caon1585','Fort Severn 89',
'caon1508','Fort William 52',
'caon1731','Foxboro',
'caon0251','Foymount',
'caon0252','Frankford',
'caon0253','Freelton',
'caon1476','French River',
'caon0254','Galt',
'caon0255','Gananoque',
'caon0256','Garden Hill',
'caon1475','Garden River',
'caon1555','Garden Village',
'caon0257','Garson',
'caon0258','Georgetown',
'caon0259','Georgina',
'caon0260','Geraldton',
'caon0261','Gilmour',
'caon0262','Glen Robertson',
'caon1732','Glen Williams',
'caon0264','Glencoe',
'caon0263','Glenwater',
'caon0265','Gloucester',
'caon0266','Goderich',
'caon0267','Gogama',
'caon0268','Golden Lake',
'caon0269','Gooderham',
'caon0270','Gore Bay',
'caon0271','Gormley',
'caon0272','Gorrie',
'caon0273','Goulais River',
'caon0274','Gowganda',
'caon0275','Grafton',
'caon0276','Grand Bend',
'caon0277','Grand Valley',
'caon0278','Granton',
'caon0279','Grassy Narrows',
'caon0280','Gravenhurst',
'caon1733','Greensville',
'caon0281','Grimsby',
'caon0282','Guelph',
'caon0283','Gull Bay',
'caon1569','Gull River 55',
'caon0284','Hagersville',
'caon0285','Haileybury',
'caon0286','Haldimand',
'caon0287','Haliburton',
'caon0288','Halton Hills',
'caon0289','Hamilton',
'caon0290','Hampton',
'caon0291','Hanmer',
'caon0292','Hanover',
'caon0293','Harrietsville',
'caon0294','Harriston',
'caon0295','Harrow',
'caon0296','Harrowsmith',
'caon0297','Hastings',
'caon0298','Havelock',
'caon0299','Hawk Junction',
'caon0300','Hawkesbury',
'caon0301','Hearst',
'caon0302','Hemlo',
'caon0303','Hensall',
'caon1483','Henvey Inlet 2',
'caon0304','Hepworth',
'caon0305','Hespeler',
'caon1511','Hiawatha',
'caon0306','Hickson',
'caon0307','Highgate',
'caon0308','Hillsburgh',
'caon0309','Holland Landing',
'caon0310','Holstein',
'caon0311','Honey Harbour',
'caon0312','Hornepayne',
'caon0313','Hudson',
'caon1734','Humphrey',
'caon0314','Huntsville',
'caon0315','Ignace',
'caon0316','Ilderton',
'caon0317','Ingersoll',
'caon0318','Ingleside',
'caon0319','Innerkip',
'caon0320','Innisfil',
'caon0321','Inverary',
'caon0322','Inwood',
'caon0323','Iron Bridge',
'caon0324','Iroquois',
'caon0325','Iroquois Falls',
'caon0327','Jarvis',
'caon1735','Jasper',
'caon0328','Jellicoe',
'caon0329','Jockvale',
'caon1753','Johnstown',
'caon1736','Jordan',
'caon0330','Kaministiquia',
'caon0331','Kamiskotia',
'caon0332','Kanata',
'caon0333','Kapuskasing',
'caon1502','Kasabonika',
'caon1564','Kashechewan',
'caon0336','Kearney',
'caon0337','Keene',
'caon0338','Keewatin',
'caon0339','Kemptville',
'caon0340','Kenora',
'caon1619','Kent Centre',
'caon0341','Kerwood',
'caon0342','Keswick',
'caon1517','Kettle Point',
'caon0343','Killaloe',
'caon0344','Killarney',
'caon0345','Kincardine',
'caon0346','King City',
'caon0348','Kingfisher Lake',
'caon1499','Kingfisher Lake 1',
'caon0349','Kingston',
'caon0350','Kingsville',
'caon0351','Kinmount',
'caon0352','Kintore',
'caon0353','Kirkfield',
'caon0354','Kirkland Lake',
'caon0355','Kirkton',
'caon0356','Kitchener',
'caon0357','Kleinburg',
'caon1977','Klock',
'caon0359','Lac la Croix',
'caon1524','Lac Seul',
'caon0360','Lafontaine',
'caon0361','Lagoon City',
'caon0362','Lakefield',
'caon0363','Lambeth',
'caon0364','Lanark',
'caon0365','Lancaster',
'caon0366','Langton',
'caon0367','Lansdowne',
'caon0368','Lansdowne House',
'caon0369','Larder Lake',
'caon0370','LaSalle',
'caon0371','Latchford',
'caon0372','Leamington',
'caon0373','Lefroy',
'caon0374','Levack',
'caon0375','Lincoln',
'caon0376','Lindsay',
'caon0377','Linwood',
'caon0378','Lion\'s Head',
'caon0379','Listowel',
'caon0380','Little Britain',
'caon0381','Little Current',
'caon0382','Lively',
'caon1737','Lombardy',
'caon0383','London',
'caon1495','Long Lake',
'caon0385','Long Point',
'caon0386','Long Sault',
'caon0387','Longlac',
'caon0358','L\'Orignal',
'caon1754','Lorne',
'caon0388','Lucan',
'caon0389','Lucknow',
'caon1755','Lyn',
'caon0390','Lynden',
'caon0391','Maberly',
'caon0392','Macdiarmid',
'caon0394','MacTier',
'caon0395','Madoc',
'caon0396','Madsen',
'caon0397','Magnetawan',
'caon1484','Magnetewan 1',
'caon0398','Maidstone',
'caon0399','Maitland',
'caon0400','Mallorytown',
'caon0401','Malton',
'caon0402','Manitouwadge',
'caon0403','Manitowaning',
'caon0405','Manotick',
'caon0406','Maple',
'caon0407','Marathon',
'caon3366','Marentette Beach',
'caon0408','Markdale',
'caon0409','Markham',
'caon0410','Markstay',
'caon0411','Marmora',
'caon1509','Marten Falls 65',
'caon0412','Marten River',
'caon0413','Martintown',
'caon0414','Massey',
'caon0415','Matachewan',
'caon0416','Matheson',
'caon0417','Mattawa',
'caon0418','Mattice',
'caon0419','Maxville',
'caon0420','Maynooth',
'caon0421','McDonalds Corners',
'caon0422','McGregor',
'caon0423','McKellar',
'caon0425','Meaford',
'caon0426','Melbourne',
'caon0427','Merlin',
'caon0428','Merrickville',
'caon0429','Metcalfe',
'caon0430','Midland',
'caon1497','Migisi Sahgaigan',
'caon0431','Mildmay',
'caon0432','Milford Bay',
'caon0433','Millbrook',
'caon1738','Millhaven',
'caon0434','Milton',
'caon0435','Milverton',
'caon0436','Minaki',
'caon0437','Mindemoya',
'caon0438','Minden',
'caon0439','Mine Centre',
'caon0440','Missanabie',
'caon0441','Mississauga',
'caon0442','Mitchell',
'caon0443','Monkton',
'caon2069','Montreal River Harbour',
'caon0444','Moonbeam',
'caon0445','Moonstone',
'caon0446','Mooretown',
'caon0447','Moose Creek',
'caon0448','Moose Factory',
'caon0449','Moosonee',
'caon1575','Moraviantown',
'caon0450','Morrisburg',
'caon0451','Morson',
'caon0452','Mount Albert',
'caon0453','Mount Brydges',
'caon0454','Mount Forest',
'caon0455','Mount Hope',
'caon0456','Mount Pleasant',
'caon0774','Muskoka',
'caon1764','Muskoka Falls',
'caon0458','Muskrat Dam',
'caon1584','Muskrat Dam Lake',
'caon0459','Nairn',
'caon1479','Naiscoutaing 17A',
'caon0460','Nakina',
'caon0461','Nanticoke',
'caon0462','Napanee',
'caon0463','Navan',
'caon0464','Nepean',
'caon0465','Nephton',
'caon0466','Nestor Falls',
'caon0467','Neustadt',
'caon0468','New Dundee',
'caon0469','New Hamburg',
'caon0470','New Liskeard',
'caon0471','New Tecumseth',
'caon0472','Newburgh',
'caon1762','Newcastle',
'caon0473','Newmarket',
'caon0474','Newtonville',
'caon0475','Niagara Falls',
'caon0476','Niagara-on-the-Lake',
'caon0477','Nickel Centre',
'caon0478','Nipigon',
'caon0479','Nobel',
'caon0480','Nobleton',
'caon0481','Noëlville',
'caon0483','North Augusta',
'caon0484','North Bay',
'caon0485','North Gower',
'caon0486','North Spirit Lake',
'caon0487','North York',
'caon0488','Northbrook',
'caon1739','Norval',
'caon0489','Norwich',
'caon0491','Norwood',
'caon0492','Oak Ridges',
'caon0493','Oakville',
'caon0494','Oakwood',
'caon0495','Oba',
'caon0496','Odessa',
'caon0497','Ogoki',
'caon0498','Ohsweken',
'caon0499','Oil Springs',
'caon0500','Omemee',
'caon0501','Onaping Falls',
'caon1553','Oneida 41',
'caon0502','Opasatika',
'caon0503','Ophir',
'caon0505','Orangeville',
'caon0506','Orillia',
'caon0507','Orléans',
'caon0508','Oro Station',
'caon0509','Orono',
'caon1740','Orrville',
'caon0510','Osgoode',
'caon0511','Oshawa',
'caon0512','Ottawa',
'caon0514','Otterville',
'caon0515','Owen Sound',
'caon0516','Oxdrift',
'caon1741','Oxford Mills',
'caon0517','Paisley',
'caon0518','Pakenham',
'caon0519','Palgrave',
'caon0520','Palmer Rapids',
'caon0521','Palmerston',
'caon1742','Paquette Corners',
'caon0522','Parham',
'caon0523','Paris',
'caon0524','Parkhill',
'caon0525','Parry Sound',
'caon0526','Pass Lake',
'caon0527','Peawanuck',
'caon0424','Pefferlaw',
'caon0529','Pelee Island',
'caon0530','Pelham',
'caon0531','Pembroke',
'caon0532','Penetanguishene',
'caon0533','Perrault Falls',
'caon0534','Perth',
'caon0535','Petawawa',
'caon0536','Peterborough',
'caon0537','Petrolia',
'caon0538','Pickering',
'caon0539','Pickle Lake',
'caon0540','Picton',
'caon1534','Pikangikum',
'caon0542','Pineal Lake',
'caon0543','Plantagenet',
'caon0544','Plattsville',
'caon0545','Pleasant Park',
'caon0546','Plevna',
'caon0548','Pointe au Baril',
'caon0550','Port Burwell',
'caon0551','Port Carling',
'caon0552','Port Colborne',
'caon0553','Port Credit',
'caon1718','Port Cunnington',
'caon0554','Port Dover',
'caon0555','Port Elgin',
'caon0556','Port Franks',
'caon0557','Port Hope',
'caon0558','Port Lambton',
'caon0559','Port Loring',
'caon0561','Port McNicoll',
'caon0562','Port Perry',
'caon0563','Port Robinson',
'caon0564','Port Rowan',
'caon2027','Port Severn',
'caon0565','Port Stanley',
'caon0566','Port Sydney',
'caon0567','Portland',
'caon0568','Powassan',
'caon0569','Prescott',
'caon0570','Preston',
'caon0571','Princeton',
'caon1743','Puce',
'caon1744','Queenston',
'caon0572','Queensville',
'caon1974','Quinte West',
'caon1576','Rainy Lake 18C',
'caon0573','Rainy River',
'caon0574','Raith',
'caon0575','Ramore',
'caon0577','Rayside-Balfour',
'caon0578','Red Lake',
'caon0579','Red Rock',
'caon0580','Redbridge',
'caon0581','Redditt',
'caon0582','Renfrew',
'caon0583','Restoule',
'caon0584','Richmond',
'caon0585','Richmond Hill',
'caon0586','Ridgetown',
'caon0587','Ridgeway',
'caon0588','Ripley',
'caon0589','Rockland',
'caon0590','Rockwood',
'caon0591','Rodney',
'caon0592','Rolphton',
'caon0593','Rondeau Park',
'caon0594','Roseneath',
'caon0595','Rosseau',
'caon0597','Russell',
'caon1745','Ruthven',
'caon1582','Sachigo Lake',
'caon1756','Salem',
'caon1746','Sandwich',
'caon1759','Sandy Cove Acres',
'caon0599','Sandy Lake',
'caon1581','Sandy Lake 88',
'caon0600','Sapawe',
'caon0601','Sarnia',
'caon1523','Sarnia 45',
'caon0602','Sauble Beach',
'caon1560','Saugeen 29',
'caon0603','Sault Ste. Marie',
'caon0604','Savant Lake',
'caon0605','Scarborough',
'caon0606','Schomberg',
'caon0607','Schreiber',
'caon0608','Scotland',
'caon0609','Seaforth',
'caon0610','Searchmont',
'caon0611','Sebright',
'caon0612','Sebringville',
'caon0613','Seeleys Bay',
'caon0614','Selby',
'caon0615','Selkirk',
'caon1474','Serpent River',
'caon0616','Severn Bridge',
'caon0617','Shakespeare',
'caon1747','Shannonville',
'caon0618','Sharbot Lake',
'caon1480','Shawanaga',
'caon0619','Shebandowan',
'caon0620','Shedden',
'caon0621','Shelburne',
'caon0622','Silver Water',
'caon0623','Simcoe',
'caon0624','Sioux Lookout',
'caon0625','Sioux Narrows',
'caon1477','Six Nations (Part) 40',
'caon0626','Smiths Falls',
'caon1748','Smithville',
'caon0627','Smooth Rock Falls',
'caon0628','Snelgrove',
'caon0629','Sombra',
'caon0630','South Mountain',
'caon0632','South River',
'caon0633','Southampton',
'caon0634','Spanish',
'caon0635','Sparta',
'caon0636','Spencerville',
'caon0637','Sprucedale',
'caon0648','St-Eugène',
'caon0638','St. Catharines',
'caon0639','St. Charles',
'caon1749','St. Clair Beach',
'caon0640','St. Clements',
'caon1757','St. Davids',
'caon0641','St. George',
'caon0642','St. Isidore',
'caon0643','St. Jacobs',
'caon0645','St. Marys',
'caon0647','St. Thomas',
'caon0649','Stayner',
'caon0650','Stevensville',
'caon1750','Stewarttown',
'caon0651','Stirling',
'caon0653','Stokes Bay',
'caon0654','Stoney Creek',
'caon0655','Stoney Point',
'caon0656','Stouffville',
'caon0657','Straffordville',
'caon0658','Stratford',
'caon0659','Strathroy',
'caon0660','Stratton',
'caon0661','Streetsville',
'caon0662','Stroud',
'caon0663','Sturgeon Falls',
'caon0664','Sudbury',
'caon0665','Sultan',
'caon0666','Summer Beaver',
'caon0667','Sunderland',
'caon0668','Sundridge',
'caon0669','Sutton',
'caon0670','Swastika',
'caon0671','Sydenham',
'caon0672','Tamworth',
'caon0673','Tara',
'caon0674','Tavistock',
'caon1751','Taylor Corners',
'caon0675','Tecumseh',
'caon0676','Teeswater',
'caon0677','Temagami',
'caon0541','Temiskaming Shores',
'caon0678','Terrace Bay',
'caon0679','Thamesford',
'caon0680','Thamesville',
'caon0681','Thedford',
'caon0682','Thessalon',
'caon1562','Thessalon 12',
'caon0683','Thornbury',
'caon0684','Thorndale',
'caon0685','Thorne',
'caon0686','Thornhill',
'caon0687','Thorold',
'caon0688','Thunder Bay',
'caon0690','Tilbury',
'caon0691','Tillsonburg',
'caon0692','Timmins',
'caon0693','Tiverton',
'caon0694','Tobermory',
'caon0695','Toledo',
'caon0696','Toronto',
'caon1761','Toronto Islands',
'caon0697','Tottenham',
'caon0698','Trenton',
'caon0699','Trout Creek',
'caon0700','Trowbridge',
'caon0701','Tweed',
'caon1503','Tyendinaga Mohawk Territory',
'caon0702','Udora',
'caon0703','Uniondale',
'caon0704','Unionville',
'caon0705','Upsala',
'caon1752','Utterson',
'caon0706','Uxbridge',
'caon0707','Valley East',
'caon0708','Vanier',
'caon0709','Vankleek Hill',
'caon0710','Vaughan',
'caon0711','Vermilion Bay',
'caon0712','Verner',
'caon0713','Verona',
'caon0714','Victoria',
'caon0715','Vineland',
'caon0716','Virginiatown',
'caon0717','Wabigoon',
'caon0718','Wainfleet',
'caon0719','Walden',
'caon0720','Walkerton',
'caon0721','Wallaceburg',
'caon1526','Walpole Island',
'caon0722','Wardsville',
'caon0723','Warkworth',
'caon0724','Warren',
'caon0725','Wasaga Beach',
'caon0726','Waterdown',
'caon0727','Waterford',
'caon0728','Waterloo',
'caon0729','Watford',
'caon0730','Waubaushene',
'caon0731','Wawa',
'caon0733','Webbwood',
'caon0734','Webequie',
'caon0735','Welcome',
'caon0736','Welland',
'caon0737','Wellandport',
'caon0738','Wellesley',
'caon0739','Wellington',
'caon0790','West Bay',
'caon0740','West Guilford',
'caon0741','West Lincoln',
'caon0742','West Lorne',
'caon0743','Westmeath',
'caon0744','Westport',
'caon0745','Westree',
'caon0746','Wheatley',
'caon0747','Whitby',
'caon0748','Whitchurch-Stouffville',
'caon0750','White River',
'caon0751','Whitefish',
'caon0752','Whitefish Falls',
'caon1516','Whitefish River (Part) 4',
'caon0753','Whitney',
'caon0754','Wiarton',
'caon0791','Wikwemikong',
'caon0755','Wilberforce',
'caon0756','Williamsburg',
'caon0757','Winchester',
'caon0758','Windermere',
'caon0759','Windsor',
'caon0760','Wingham',
'caon0761','Winona',
'caon0763','Woodbridge',
'caon0765','Woodstock',
'caon0766','Woodville',
'caon0767','Wooler',
'caon0768','Wunnummin Lake',
'caon0769','Wyoming',
'caon0770','Yarker',
'caon0771','York',
'caon0772','Zurich'
);
for (var i = 0; i < placeCodes.length; i += 2) { // search array
j = i + 1;
if (city == placeCodes[j]) { // city
cityCode = placeCodes[i];
break;
} // end city
} // end search array
if (cityCode) {
document.write('<iframe style="margin-left: 40px" marginheight="0" marginwidth="0" name="wxButtonFrame" id="wxButtonFrame" height="90" src="http://btn.meteomedia.ca/weatherbuttons/template5.php?placeCode='+ cityCode +'&category0=Cities&containerWidth=150&btnNo=&backgroundColor=blue&multipleCity=0&citySearch=0&celsiusF=C" align="top" frameborder="0" width="150" scrolling="no"></iframe>');
}
}

/* Column */

////////////////////
// columnSelect() //
////////////////////

function columnSelect(selectBox) {
var selectedValue = selectBox.options[selectBox.selectedIndex].value;
var variableSplit = selectedValue.split(',');
// link
var linkSplit = variableSplit[0].split('=>');
var linkURL = linkSplit[1];
// category or content
var selectedValueSplit = variableSplit[1].split('=>');
var selectedType = selectedValueSplit[0];
var selectedName = selectedValueSplit[1];
if (selectedType == 'content') { // content
linkURL = decodeURL(linkURL);
if (linkURL.indexOf('?') == -1) { // mod_rewrite
window.open(linkURL + '/content/' + selectedName);
} else { // no mod_rewrite
window.open(linkURL + '&content=' + selectedName);
} // end no mod_rewrite
} else { // category
var boxID = selectBox.id;
var boxIDSplit = boxID.split('_');
var boxIDNum = Number(boxIDSplit[boxIDSplit.length - 1]);
var targetIDNum = boxIDNum + 1;
var targetColumnID = 'column_' + targetIDNum;
for (var i = targetIDNum; i <= 3; i++) { // empty select boxes
var emptyColumnID = 'column_' + i;
var emptyColumn = (document.getElementById(emptyColumnID)) ? document.getElementById(emptyColumnID) : false;
if (emptyColumn) { // empty column
emptyColumn.innerHTML = '<select size="8"></select>';
} // end empty column
} // end empty select boxes
getColumn(targetColumnID,selectedName,linkURL);
} // end category
}

/////////////////
// getColumn() //
/////////////////

function getColumn(columnID,categoryName,linkURL) {
var request = createXMLHttpRequest();
ajaxRequest(request,'/ajax/column.php',function () { returnTextData(request,columnID); },'column_id',columnID,'category_name',categoryName,'link_url',linkURL);
}

/////////////////
// decodeURL() //
/////////////////

function decodeURL(url) {
if (url) {
url = url.replace(/%3A/g, ':');
url = url.replace(/%2F/g, '/');
url = url.replace(/%3F/g, '?');
url = url.replace(/%3D/g, '=');
url = url.replace(/%26/g, '&');
}
return url;
}