<html>
<head>
<title>Editable Calendar - RJM Programming - September, 2026</title>
<style>
td {
height: 15%;
vertical-align: top;
padding: 2 2 2 2;
}
td {
border-radius: 8px;
background-color: rgb(252,252,252);
}
.pad {
border-color: transparent;
background-color: transparent;
}
td span {
background: linear-gradient(to bottom, rgba(170,170,170,0.3) 30%, yellow 30%);
font-weight: bold;
}
#calcap {
font-weight: bold;
text-shadow: -1px 1px 1px #952dff;
}
#bsave {
background-color: orange;
}
#calcap { // thanks to https://www.google.com/search?q=background+arrow+background+svg+images+at+left+and+right+of+an+element&rlz=1C5OZZY_en&oq=background+arrow+background+svg+images+at+left+and+right+of+an+element&gs_lcrp=EgZjaHJvbWUyBggAEEUYOdIBCTM1ODAyajBqN6gCALACAA&sourceid=chrome&source=chrome.ob&ie=UTF-8
z-index: 67; padding: 8 8 8 8; box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4); background-color: rgb(240,240,240); border-radius: 8px;
background-image:
url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M15 18l-6-6 6-6"/></svg>'),
url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>');
background-position: left center, right center;
background-repeat: no-repeat;
}
th {
z-index: 67; padding: 8 8 8 8; box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4); color: blue; background-color: rgb(240,240,240); border-radius: 8px;
}
button {
border-radius: 8px;
}
select {
border-radius: 8px;
}
table {
border-radius: 6px;
background-color: transparent;
}
body {
background-image: linear-gradient(rgba(255,255,255,0.8),rgba(255,255,255,0.8)),url(https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSAMB0R0_H50ZU4AW0t51IqB0WwOyF1BEmSPy3MMxisNythxHs69b4lcx8&s=10);
background-size: contain;
background-repeat: repeat;
}
</style>
<script type=text/javascript>
var inplay=false, lastinplayc='', origdd='', oselvalue='', woo=null, fromfor=false, initialgo=true;
var changesmade=false, calcapv='', fullBoringTrIh='', onetd='', origih='', firstlook=true, valvalue='';
var mths=['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
var now = new Date(), firstDayIndex=0, daysThisMonth=0;
var theyear=eval('' + now.getFullYear());
var themonth=eval('' + now.getMonth());
var days=['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
var documentURL=document.URL, blankis='_blank';
var thelang=location.search.split('_x_tr_tl=')[1] ? decodeURIComponent(location.search.split('_x_tr_tl=')[1].split('&')[0].split('#')[0]) : 'en';
var useintl=false, docURL='', usuff='';
if (documentURL.indexOf('localhost') != -1) {
useintl=true;
}
function modething() {
if (useintl) {
document.getElementById('mya').innerHTML='+';
} else {
document.getElementById('mya').innerHTML='-';
}
}
function rechanges(evt) {
changesmade=true;
inplay=true;
lastinplayc=document.body.innerHTML + ' ';
}
function thismonth() {
if (('' + parent.document.URL).indexOf('.php') != -1) { return ''; }
if (origih == '') { origih=document.getElementById('wp-calendar').innerHTML; }
if (document.URL.indexOf('month=') != -1 && document.URL.indexOf('year=') != -1 && firstlook) {
now = new Date(eval('' + document.URL.split('year=')[1].split('&')[0].split('#')[0]), eval('' + document.URL.split('month=')[1].split('&')[0].split('#')[0]), 1);
inplay=true;
} else if (('' + parent.document.URL).indexOf('month=') != -1 && ('' + parent.document.URL).indexOf('year=') != -1 && firstlook) {
now = new Date(eval('' + ('' + parent.document.URL).split('year=')[1].split('&')[0].split('#')[0]), eval('' + ('' + parent.document.URL).split('month=')[1].split('&')[0].split('#')[0]), 1);
inplay=true;
}
firstlook=false;
var bdate=null, kb=0;
var shortblurb='youllneverfindthis', longblurb='';
//if (('' + top.document.URL).indexOf('#' + encodeURIComponent('<')) != -1) {
// document.getElementById('wp-calendar').innerHTML=decodeURIComponent(('' + top.document.URL).split('#')[1]);
//}
if (documentURL.indexOf('_x_tr_tl=') != -1) {
document.getElementById('language').value=documentURL.split('_x_tr_tl=')[1].split('&')[0].split('#')[0];
}
modething();
if (documentURL.indexOf('_x_tr_tl=') == -1) {
var getccviatz='' + Intl.DateTimeFormat().resolvedOptions().timeZone;
//getccviatz='Europe/Istanbul';
document.getElementById('myif').src+='?getccviatz=' + encodeURIComponent(getccviatz);
setTimeout(function() {
if (document.getElementById('language').value.replace('en','').trim() != '') {
useintl=true;
blankis='_self';
ChangeLcodeNow();
}
}, 3000);
}
if (documentURL.indexOf('?_x_tr_tl=en') != -1 || (documentURL.indexOf('_x_tr_tl=') != -1 && thelang.replace('en','') != '')) {
// Thanks to https://www.google.com/search?q=intl+get+arabic+for+January&rlz=1C5OZZY_en&oq=intl+get+arabic+for+January&gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIHCAEQIRigATIHCAIQIRiPAjIHCAMQIRiPAtIBCTE5NTg3ajBqN6gCALACAA&sourceid=chrome&source=chrome.ob&ie=UTF-8
for (kb=0; kb<12; kb++) {
bdate = new Date(now.getFullYear(), kb, 1); // January 1st
mths[kb]=('' + new Intl.DateTimeFormat(thelang, { month: 'long' }).format(bdate));
// Thanks to https://www.google.com/search?q=intl+get+arabic+in+long+date+format+for+Monday&sca_esv=77e7d99cf23041a7&rlz=1C5OZZY_en&biw=1593&bih=778&sxsrf=APpeQntCcCdX1LFLUQlgOzM3udbznwgmVQ%3A1788315178997&ei=KoaXatquPIaXhvcPmuObsA8&ved=2ahUKEwja6_WX6c6WAxWGi-EIHZrxBvYQ4dUDegQIBhAM&uact=5&oq=intl+get+arabic+in+long+date+format+for+Monday&gs_lp=Egxnd3Mtd2l6LXNlcnAiLmludGwgZ2V0IGFyYWJpYyBpbiBsb25nIGRhdGUgZm9ybWF0IGZvciBNb25kYXlI6jpQlgZYkx9wAXgBkAEAmAGMAqABhQ2qAQUwLjQuNLgBA8gBAPgBAZgCB6AChArCAgoQABhHGNYEGLADwgIOEAAY5AIY1gQYsAPYAQHCAhcQLhjcBhi4BhjaBhjYAhjIAxiwA9gBAcICBRAhGKABwgIEECEYFcICBxAhGAoYoAGYAwCIBgGQBg-6BgYIARABGAmSBwUxLjMuM6AHrRKyBwUwLjMuM7gH-QnCBwcwLjUuMS4xyAcUgAgB&sclient=gws-wiz-serp
switch (bdate.getDay()) {
case 0:
longblurb=('' + new Intl.DateTimeFormat(thelang, { weekday: 'long' }).format(bdate));
//shortblurb=('' + new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(bdate));
days[0]=longblurb.replace(shortblurb,'').trim();
document.getElementById('Sunday').innerHTML=longblurb.replace(shortblurb,'').trim();
break;
case 1:
longblurb=('' + new Intl.DateTimeFormat(thelang, { weekday: 'long' }).format(bdate));
//shortblurb=('' + new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(bdate));
days[1]=longblurb.replace(shortblurb,'').trim();
document.getElementById('Monday').innerHTML=longblurb.replace(shortblurb,'').trim(); //('' + ('' + new Intl.DateTimeFormat(thelang, { day: 'long' }).format(bdate)));
break;
case 2:
longblurb=('' + new Intl.DateTimeFormat(thelang, { weekday: 'long' }).format(bdate));
//shortblurb=('' + new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(bdate));
days[2]=longblurb.replace(shortblurb,'').trim();
document.getElementById('Tuesday').innerHTML=longblurb.replace(shortblurb,'').trim(); //('' + ('' + new Intl.DateTimeFormat(thelang, { day: 'long' }).format(bdate)));
break;
case 3:
longblurb=('' + new Intl.DateTimeFormat(thelang, { weekday: 'long' }).format(bdate));
//shortblurb=('' + new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(bdate));
days[3]=longblurb.replace(shortblurb,'').trim();
document.getElementById('Wednesday').innerHTML=longblurb.replace(shortblurb,'').trim(); //('' + ('' + new Intl.DateTimeFormat(thelang, { day: 'long' }).format(bdate)));
break;
case 4:
longblurb=(new Intl.DateTimeFormat(thelang, { weekday: 'long' }).format(bdate));
//shortblurb=(new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(bdate));
days[4]=longblurb.replace(shortblurb,'').trim();
document.getElementById('Thursday').innerHTML=longblurb.replace(shortblurb,'').trim(); //('' + ('' + new Intl.DateTimeFormat(thelang, { day: 'long' }).format(bdate)));
break;
case 5:
longblurb=('' + new Intl.DateTimeFormat(thelang, { weekday: 'long' }).format(bdate));
//shortblurb=('' + new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(bdate));
days[5]=longblurb.replace(shortblurb,'').trim();
document.getElementById('Friday').innerHTML=longblurb.replace(shortblurb,'').trim(); //('' + ('' + new Intl.DateTimeFormat(thelang, { day: 'long' }).format(bdate)));
break;
case 6:
longblurb=('' + new Intl.DateTimeFormat(thelang, { weekday: 'long' }).format(bdate));
//shortblurb=('' + new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(bdate));
days[6]=longblurb.replace(shortblurb,'').trim();
document.getElementById('Saturday').innerHTML=longblurb.replace(shortblurb,'').trim(); //('' + ('' + new Intl.DateTimeFormat(thelang, { day: 'long' }).format(bdate)));
break;
}
}
}
fullBoringTrIh=document.getElementById('week1').innerHTML;
onetd='<td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td>', rowonesofar=document.getElementById('week0').innerHTML.split('</td><td')[0] + '</td>', ij=0, ji=0, ki=0;
firstDayIndex=new Date(now.getFullYear(), now.getMonth(), 1).getDay();
daysThisMonth=new Date(now.getFullYear(), now.getMonth()+1, 0).getDate();
theyear=eval('' + now.getFullYear());
themonth=eval('' + now.getMonth());
document.getElementById('calcap').setAttribute('data-thism', '' + themonth);
document.getElementById('calcap').setAttribute('data-thisy', '' + theyear);
var padder='<td class="pad" colspan="5"></td>';
var cellsSoFar=eval(7 - firstDayIndex), wn='week4';
//alert('first day index of ' + mths[now.getMonth()] + ', ' + now.getFullYear() + ' (which has ' + daysThisMonth + ' days) is ' + firstDayIndex);
//alert('' + firstDayIndex + '#' + rowonesofar);
if ((firstDayIndex == 6 && daysThisMonth > 29) || (firstDayIndex == 5 && daysThisMonth > 30)) {
document.getElementById('calcap').innerHTML= mths[now.getMonth()] + ', ' + now.getFullYear();
calcapv=document.getElementById('calcap').innerHTML;
if (firstDayIndex == 5) {
rowonesofar=rowonesofar.replace('6','' + firstDayIndex);
for (ij=firstDayIndex; ij<=6; ij++) {
rowonesofar+=onetd;
}
document.getElementById('week0').innerHTML=rowonesofar;
}
cellsSoFar+=7;
document.getElementById('week2').innerHTML=fullBoringTrIh;
cellsSoFar+=7;
document.getElementById('week3').innerHTML=fullBoringTrIh;
if (eval(7 + cellsSoFar) <= daysThisMonth) {
//alert('if daysThisMonth=29 does for (ij=0; ij<' + eval(29 - eval(7 + cellsSoFar)) + '; ij++) { } work?');
//document.getElementById('week4').innerHTML=fullBoringTrIh;
rowonesofar='';
for (ij=0; ij<eval(daysThisMonth - eval(7 + cellsSoFar)); ij++) {
rowonesofar+=onetd;
ji++;
if (ji == 7) { document.getElementById('week4').innerHTML=rowonesofar; rowonesofar=''; wn='week5'; } else if (ji > 7) { ki++; }
}
cellsSoFar+=7;
if (wn == 'week5') { rowonesofar+=padder.replace('5', (7 - ki)); }
//alert(rowonesofar);
document.getElementById(wn).innerHTML=rowonesofar;
} else {
rowonesofar='';
for (ij=0; ij<eval(daysThisMonth - eval(7 + cellsSoFar)); ij++) {
rowonesofar+=onetd;
ji++;
if (ji == 7) { document.getElementById('week4').innerHTML=rowonesofar; rowonesofar=''; wn='week5'; } else if (ji > 7) { ki++; }
}
document.getElementById(wn).innerHTML=rowonesofar;
}
} else {
if (firstDayIndex == 0) {
document.getElementById('week0').innerHTML=fullBoringTrIh;
cellsSoFar+=7;
document.getElementById('week2').innerHTML=fullBoringTrIh;
cellsSoFar+=7;
document.getElementById('week3').innerHTML=fullBoringTrIh;
if (eval(7 + cellsSoFar) <= daysThisMonth) {
//alert('if daysThisMonth=29 does for (ij=0; ij<' + eval(29 - eval(7 + cellsSoFar)) + '; ij++) { } work?');
//document.getElementById('week4').innerHTML=fullBoringTrIh;
rowonesofar='';
for (ij=0; ij<eval(daysThisMonth - eval(7 + cellsSoFar)); ij++) {
rowonesofar+=onetd;
ji++;
if (ji == 7) { document.getElementById('week4').innerHTML=rowonesofar; rowonesofar=''; wn='week5'; } else if (ji > 7) { ki++; }
}
cellsSoFar+=7;
if (wn == 'week5') { rowonesofar+=padder.replace('5', (7 - ki)); }
//alert(rowonesofar);
document.getElementById(wn).innerHTML=rowonesofar;
} else {
rowonesofar='';
for (ij=0; ij<eval(daysThisMonth - eval(7 + cellsSoFar)); ij++) {
rowonesofar+=onetd;
ji++;
if (ji == 7) { document.getElementById('week4').innerHTML=rowonesofar; rowonesofar=''; wn='week5'; } else if (ji > 7) { ki++; }
}
document.getElementById(wn).innerHTML=rowonesofar;
}
} else {
rowonesofar=rowonesofar.replace('6','' + firstDayIndex).split('</td>')[0] + '</td>'; // new bits
//alert('' + firstDayIndex + '@' + rowonesofar);
for (ij=firstDayIndex; ij<=6; ij++) {
rowonesofar+=onetd;
//alert('' + ij); //firstDayIndex + '!' + rowonesofar);
}
document.getElementById('week0').innerHTML=rowonesofar;
cellsSoFar+=7;
document.getElementById('week2').innerHTML=fullBoringTrIh;
cellsSoFar+=7;
document.getElementById('week3').innerHTML=fullBoringTrIh;
if (eval(7 + cellsSoFar) <= daysThisMonth) {
//alert('if daysThisMonth=29 does for (ij=0; ij<' + eval(29 - eval(7 + cellsSoFar)) + '; ij++) { } work?');
//document.getElementById('week4').innerHTML=fullBoringTrIh;
rowonesofar='';
for (ij=0; ij<eval(daysThisMonth - eval(7 + cellsSoFar)); ij++) {
rowonesofar+=onetd;
ji++;
if (ji == 7) { document.getElementById('week4').innerHTML=rowonesofar; rowonesofar=''; wn='week5'; } else if (ji > 7) { ki++; }
}
cellsSoFar+=7;
if (wn == 'week5') { rowonesofar+=padder.replace('5', (7 - ki)); }
//alert(rowonesofar);
document.getElementById(wn).innerHTML=rowonesofar;
} else {
rowonesofar='';
for (ij=0; ij<eval(daysThisMonth - eval(7 + cellsSoFar)); ij++) {
rowonesofar+=onetd;
ji++;
if (ji == 7) { document.getElementById('week4').innerHTML=rowonesofar; rowonesofar=''; wn='week5'; } else if (ji > 7) { ki++; }
}
document.getElementById(wn).innerHTML=rowonesofar;
}
}
document.getElementById('calcap').innerHTML= mths[now.getMonth()] + ', ' + now.getFullYear();
document.getElementById('week5').innerHTML='';
document.getElementById('week5').style.display='none';
}
if (documentURL.indexOf('?_x_tr_tl=en') != -1 || (documentURL.indexOf('_x_tr_tl=') != -1 && thelang.replace('en','') != '')) {
document.getElementById('Sunday').innerHTML=days[0];
document.getElementById('Monday').innerHTML=days[1];
document.getElementById('Tuesday').innerHTML=days[2];
document.getElementById('Wednesday').innerHTML=days[3];
document.getElementById('Thursday').innerHTML=days[4];
document.getElementById('Friday').innerHTML=days[5];
document.getElementById('Saturday').innerHTML=days[6];
}
var acnt=eval('' + document.getElementById('week0').innerHTML.split('</td>').length);
//if (acnt > 7) { alert(acnt); }
var rightih='', spareih='';
var acnts=document.getElementById('week0').innerHTML.split('</td>');
var ia=eval(-1 + acnts.length);
if (4 == 6 && eval('' + acnt) > 7) {
while (eval('' + rightih.split('</td>').length) <= 7) {
spareih=rightih;
rightih=acnts[ia] + '</td>' + spareih;
//rightih+='</td>';
rightih=rightih.replace('</td></td>','</td>').replace('</td></td>','</td>');
//alert('rightih=' + rightih);
ia--;
}
document.getElementById('wp-calendar').innerHTML=document.getElementById('wp-calendar').innerHTML.replace(rightih, '</tr><tr>' + rightih);
}
if (initialgo) {
if (documentURL.indexOf('?_x_tr_tl=') != -1) {
document.getElementById('language').value=documentURL.split('?_x_tr_tl=')[1].split('&')[0].split('#')[0];
}
}
initialgo=false;
initializecontent();
}
function initializecontent() {
var cdate=null;
var suffixbit=document.getElementById('calcap').innerHTML, icnt=0;
var spansarr=document.getElementsByTagName('span');
for (var ij=0; ij<spansarr.length; ij++) {
if (spansarr[ij].innerHTML == ' ') {
icnt++;
if (documentURL.indexOf('?_x_tr_tl=en') != -1 || (documentURL.indexOf('_x_tr_tl=') != -1 && thelang.replace('en','') != '')) {
cdate = new Date(now.getFullYear(), now.getMonth(), icnt); // November is month index 10
//alert(('0' + icnt).slice(-2) + ' ' + suffixbit + ' ... ' + ('' + (new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(cdate))));
spansarr[ij].innerHTML=('' + (new Intl.DateTimeFormat(thelang, { dateStyle: 'long' }).format(cdate))) + ' ... ';
} else if (2 == 3) {
spansarr[ij].innerHTML=('0' + icnt).slice(-2) + ' ' + suffixbit + ' ... ';
} else {
spansarr[ij].innerHTML=suffixbit.replace(',', ' ' + icnt + ',') + ' ... ';
}
}
}
}
function ajaxit() {
var zhr = new XMLHttpRequest();
var zform = new FormData();
zform.append('tihis', document.getElementById('wp-calendar').innerHTML.replace('<cap' + 'tion ', '<cap' + 'tion data-durl="' + document.URL.split('?')[0].split('#')[0] + '" '));
zhr.open('post', '//www.rjmprogramming.com.au/' + docURL.split('?')[0].split('#')[0].replace('.html','.php').replace('.htm','.php'), true);
zhr.send(zform);
}
function ChangeLcodeNow(){
var val = document.getElementById('language'), dd=null, pprefix='';
docURL=documentURL.split('rjmprogramming.com.au/')[eval(-1 + documentURL.split('rjmprogramming.com.au/').length)];
if (val.value.trim() != '') { document.getElementById('language').setAttribute('data-lcode', val.value); }
if (docURL.indexOf('.translate.goog/') != -1) { docURL=docURL.split('.translate.goog/')[1]; }
if (changesmade) { docURL=docURL.replace('.html','.php').replace('.htm','.php'); ajaxit(); }
if (documentURL.indexOf('&_x_tr_tl=') == -1) {
if (val.value.length != 0 && val.value.indexOf('en') == (0 - 1)) {
pprefix = val[val.selectedIndex].id;
dd=new Date();
if (documentURL.indexOf('localhost') != -1 || useintl) {
if (changesmade) {
window.open(document.URL.split('?')[0].split('#')[0] + '?_x_tr_tl=' + val.value + usuff + '&iam=' + encodeURIComponent(document.URL.split('//')[0] + '//' + document.URL.split('//')[1].split('/')[0]), blankis, 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
} else {
window.open(document.URL.split('?')[0].split('#')[0] + '?_x_tr_tl=' + val.value, blankis, 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
}
document.getElementById('language').value='';
} else {
altvalvalue=document.URL.split('?')[0].split('#')[0] + '?_x_tr_tl=' + val.value + usuff;
valvalue='//www-rjmprogramming-com-au.translate.goog/' + docURL.split('?')[0].split('#')[0] + '?_x_tr_sl=en&_x_tr_hl=en-GB&_x_tr_pto=nui&_x_tr_tl=' + val.value + usuff + '&iam=' + encodeURIComponent(document.URL.split('//')[0] + '//' + document.URL.split('//')[1].split('/')[0]);
//setTimeout(function(){
woo=window.open(valvalue, '_blank', 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
if (!woo || woo.closed || typeof woo.closed === 'undefined') {
//alert(altvalvalue);
woo=window.open(altvalvalue, myifbottom); //, 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
document.getElementById('myifbottom').src=altvalvalue;
document.getElementById('myifbottom').style.display='block';
location.href='#myifbottom';
} else if (woo.outerWidth === 0 || woo.outerHeight === 0) {
//alert(11);
woo=window.open(altvalvalue, '_blank', 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
document.getElementById('myifbottom').src=altvalvalue;
document.getElementById('myifbottom').style.display='block';
location.href='#myifbottom';
}
//}, 2000);
document.getElementById('language').value='';
}
}
documentURL=documentURL.replace('&_x_tr_tl=', '&xtrtl=');
} else if (documentURL.indexOf('&xtrtl=') == -1) {
if (val.value.length != 0 && val.value.indexOf('en') == (0 - 1)) {
pprefix = val[val.selectedIndex].id;
dd=new Date();
if (documentURL.indexOf('localhost') != -1 || useintl) {
if (changesmade) {
window.open(document.URL.split('?')[0].split('#')[0] + '?_x_tr_tl=' + val.value + usuff, blankis, 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
} else {
window.open(document.URL.split('?')[0].split('#')[0] + '?_x_tr_tl=' + val.value, blankis, 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
}
document.getElementById('language').value='';
} else {
altvalvalue=document.URL.split('?')[0].split('#')[0] + '?_x_tr_tl=' + val.value + usuff;
valvalue='//www-rjmprogramming-com-au.translate.goog/' + docURL.split('?')[0].split('#')[0] + '?_x_tr_sl=en&_x_tr_hl=en-GB&_x_tr_pto=nui&_x_tr_tl=' + val.value + usuff + '&iam=' + encodeURIComponent(document.URL.split('//')[0] + '//' + document.URL.split('//')[1].split('/')[0]);
//setTimeout(function(){
woo=window.open(valvalue, '_top');
if (!woo || woo.closed || typeof woo.closed === 'undefined') {
//alert(111);
woo=window.open(altvalvalue, 'myifbottom', 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
document.getElementById('myifbottom').src=altvalvalue;
document.getElementById('myifbottom').style.display='block';
location.href='#myifbottom';
} else if (woo.outerWidth === 0 || woo.outerHeight === 0) {
//alert(1111);
woo=window.open(altvalvalue, '_blank', 'top=0,width=800,height=800,left=' + eval(-800 + screen.width));
document.getElementById('myifbottom').src=altvalvalue;
document.getElementById('myifbottom').style.display='block';
location.href='#myifbottom';
}
//}, 2000);
document.getElementById('language').value='';
}
}
}
}
function intlvs() {
if (documentURL.indexOf('localhost') == -1) {
useintl=!useintl;
modething();
}
}
function newmy(ocap) {
//alert('theMonth=' + themonth + ' ' + ocap.innerHTML + ' vs ' + calcapv);
if (ocap.innerHTML != calcapv) {
if (ocap.innerHTML.indexOf(',') != -1) {
if (mths.indexOf(ocap.innerHTML.split(',')[0].trim()) != -1 && eval('' + ocap.innerHTML.split(',')[1].trim().length) == 4) {
//changesmade=true;
usuff='&year=' + ocap.innerHTML.split(',')[1].trim() + '&month=' + mths.indexOf(ocap.innerHTML.split(',')[0].trim());
now = new Date(eval('' + ocap.innerHTML.split(',')[1].trim()), eval('' + mths.indexOf(ocap.innerHTML.split(',')[0].trim())), 1);
theyear=eval('' + ocap.innerHTML.split(',')[1].trim());
themonth=eval('' + mths.indexOf(ocap.innerHTML.split(',')[0].trim()));
calcapv=ocap.innerHTML;
//alert('themonth=' + themonth);
document.getElementById('calcap').setAttribute('data-thism', '' + themonth);
document.getElementById('calcap').setAttribute('data-thisy', '' + theyear);
inplay=true;
document.getElementById('wp-calendar').innerHTML=origih;
thismonth();
inplay=true;
lastinplayc=document.body.innerHTML + ' ';
}
}
}
}
function recallsm(osel) {
if (osel.value.trim() != '') {
if (osel.value.substring(0,1) == '-') {
oselvalue=osel.value;
setTimeout(function(){
try {
window.localStorage.removeItem('editable_calendar_' + oselvalue.substring(1).replace(',','_').replace('.','_'));
} catch(jghfjhg) { }
document.getElementById('savedd').innerHTML=origdd;
lscheck();
changesmade=true;
lastinplayc=document.body.innerHTML + ' ';
inplay=true;
}, 2000);
} else {
themonth=eval(-1 + eval('' + osel.value.replace(',','.').split('.')[0]));
theyear=eval('' + eval('' + osel.value.replace(',','.').split('.')[1]));
document.getElementById('calcap').setAttribute('data-thism', '' + themonth);
document.getElementById('calcap').setAttribute('data-thisy', '' + theyear);
usuff='&year=' + theyear + '&month=' + themonth;
now = new Date(eval('' + theyear), eval('' + themonth), 1);
document.body.innerHTML=decodeURIComponent(('' + window.localStorage.getItem('editable_calendar_' + eval(1 + themonth) + '_' + theyear)));
if (document.getElementById('language').outerHTML.indexOf(' data-lcode="') != -1 && document.getElementById('language').outerHTML.indexOf(' data-lcode=""') == -1) {
document.getElementById('language').value=document.getElementById('language').getAttribute('data-lcode');
}
lscheck();
changesmade=true;
lastinplayc=document.body.innerHTML + ' ';
inplay=true;
}
}
}
function lscheck() {
if (origdd == '') { origdd=document.getElementById('savedd').innerHTML; }
Object.keys(window.localStorage).forEach(function(key){
if (('' + key).indexOf('editable_calendar_') == 0) {
//alert(('' + key));
//alert(('' + key).split('editable_calendar_')[1]);
//alert(document.getElementById('savedd').innerHTML);
if (document.getElementById('savedd').innerHTML.indexOf('>' + eval(0 + eval(('' + key).split('editable_calendar_')[1].split('_')[0])) + '/' + ('' + key).split('editable_calendar_')[1].split('_')[1].substring(0,4) + '</option>') == -1) {
//alert('2:' + document.getElementById('savedd').innerHTML);
document.getElementById('savedd').innerHTML+='<option value="' + eval(0 + eval(('' + key).split('editable_calendar_')[1].split('_')[0])) + '.' + ('' + key).split('editable_calendar_')[1].split('_')[1].substring(0,4) + '">' + eval(0 + eval(('' + key).split('editable_calendar_')[1].split('_')[0])) + '/' + ('' + key).split('editable_calendar_')[1].split('_')[1].substring(0,4) + '</option>';
document.getElementById('savedd').innerHTML+='<option value="-' + eval(0 + eval(('' + key).split('editable_calendar_')[1].split('_')[0])) + '.' + ('' + key).split('editable_calendar_')[1].split('_')[1].substring(0,4) + '">Forget ' + eval(0 + eval(('' + key).split('editable_calendar_')[1].split('_')[0])) + '/' + ('' + key).split('editable_calendar_')[1].split('_')[1].substring(0,4) + '</option>';
//alert('3:' + document.getElementById('savedd').innerHTML);
document.getElementById('savedd').style.display='inline-block';
document.getElementById('bsave').style.display='inline-block';
}
}
});
}
function hashlsit() {
//alert(456);
if (('' + location.hash).indexOf(encodeURIComponent('<h' + '1')) != -1) {
//alert(556);
theyear=eval('' + document.getElementById('calcap').innerHTML.replace(' ',',').split(',')[eval(-1 + document.getElementById('calcap').innerHTML.replace(' ',',').split(',').length)].trim());
themonth=eval('' + mths.indexOf(document.getElementById('calcap').innerHTML.replace(' ',',').split(',')[0].trim()));
document.body.innerHTML='<h' + '1' + decodeURIComponent(('' + location.hash).split(encodeURIComponent('<h' + '1'))[1]);
inplay=true;
lastinplayc=document.body.innerHTML + ' ';
lsit();
}
}
function lsit() {
if (inplay && lastinplayc != '') {
if (window.opener) {
// https://www.google.com/search?q=Undef+what+conditions+can+window.opener.parentfunc()+type+of+call+work+when+the+domains+are+different%3F&rlz=1C5OZZY_en&oq=Undef+what+conditions+can+window.opener.parentfunc()+type+of+call+work+when+the+domains+are+different%3F&gs_lcrp=EgZjaHJvbWUyBggAEEUYOdIBCTI2NzQwajBqN6gCALACAA&sourceid=chrome&source=chrome.ob&ie=UTF-8
//window.opener.location.hash='#' + encodeURIComponent(document.body.innerHTML);
//window.opener.hashlsit();
//alert(window.opener.document.URL.split('//')[0] + '//' + window.opener.document.URL.split('//')[1].split('/')[0]);
if (document.URL.indexOf('&iam=') != -1) {
window.opener.postMessage(encodeURIComponent(document.body.innerHTML), decodeURIComponent(document.URL.split('&iam=')[1].split('&')[0].split('#')[0]));
} else {
window.opener.postMessage(encodeURIComponent(document.body.innerHTML), 'https://rjmprogramming.com.au');
}
}
var curval=('' + window.localStorage.getItem('editable_calendar_' + eval(1 + themonth) + '_' + theyear)).replace(/^undefined/g,'').replace(/^null/g,'');
if (curval != '') {
if (decodeURIComponent(curval) != lastinplayc) {
//alert('567:' + themonth);
window.localStorage.removeItem('editable_calendar_' + eval(1 + themonth) + '_' + theyear);
window.localStorage.setItem('editable_calendar_' + eval(1 + themonth) + '_' + theyear, encodeURIComponent(lastinplayc));
//alert('1567:' + lastinplayc);
}
} else {
window.localStorage.setItem('editable_calendar_' + eval(1 + themonth) + '_' + theyear, encodeURIComponent(lastinplayc));
document.getElementById('savedd').innerHTML=origdd;
lscheck();
}
}
fromfor=false;
}
function inpcheck() {
if (inplay) {
if (document.body.innerHTML != lastinplayc) {
lastinplayc=document.body.innerHTML.trim();
document.getElementById('bsave').style.display='inline-block';
}
}
}
function incit(e) {
var x=-999, y=-999;
var rectis=e.target.getBoundingClientRect();
if (e.touches) {
if (e.touches[0].pageX) {
x = e.touches[0].pageX;
y = e.touches[0].pageY;
} else {
x = e.touches[0].clientX;
y = e.touches[0].clientY;
}
} else if (e.clientX || e.clientY) {
x = e.clientX;
y = e.clientY;
} else {
x = e.pageX;
x = e.pageY;
}
if (x >= 0 && y >= 0 && document.getElementById('calcap').getAttribute('data-thism') != '') {
var curm=eval('' + document.getElementById('calcap').getAttribute('data-thism'));
var cury=eval('' + document.getElementById('calcap').getAttribute('data-thisy'));
if (x <= eval(eval('' + rectis.left) + eval(eval('' + rectis.width) / 2))) {
themonth=eval(-1 + curm);
if (themonth < 0) {
themonth=11;
theyear=eval(-1 + cury);
}
e.target.innerHTML='' + mths[themonth] + ', ' + theyear;
calcapv='';
newmy(e.target);
} else {
themonth=eval(1 + curm);
if (themonth > 11) {
themonth=0;
theyear=eval(1 + cury);
}
e.target.innerHTML='' + mths[themonth] + ', ' + theyear;
calcapv='';
newmy(e.target);
}
}
}
window.addEventListener("message", (event) => { // thanks to https://www.google.com/search?q=Undef+what+conditions+can+window.opener.parentfunc()+type+of+call+work+when+the+domains+are+different%3F&rlz=1C5OZZY_en&oq=Undef+what+conditions+can+window.opener.parentfunc()+type+of+call+work+when+the+domains+are+different%3F&gs_lcrp=EgZjaHJvbWUyBggAEEUYOdIBCTI2NzQwajBqN6gCALACAA&sourceid=chrome&source=chrome.ob&ie=UTF-8
var thislang='';
// Always verify the origin of the sender for security
//alert(event.origin);
if (event.origin !== "https://www-rjmprogramming-com-au.translate.goog") return;
//alert(event.origin);
//alert(event.data);
if (('' + event.data).indexOf(encodeURIComponent('<h' + '1')) != -1) {
if (document.getElementById('language').outerHTML.indexOf(' data-lcode="') != -1 && document.getElementById('language').outerHTML.indexOf(' data-lcode=""') == -1) {
thislang=document.getElementById('language').getAttribute('data-lcode');
}
//alert(56);
//alert(document.getElementById('calcap').innerHTML);
//theyear=eval('' + document.getElementById('calcap').innerHTML.replace(' ',',').split(',')[eval(-1 + document.getElementById('calcap').innerHTML.replace(' ',',').split(',').length)].trim());
//themonth=eval('' + mths.indexOf(document.getElementById('calcap').innerHTML.replace(' ',',').split(',')[0].trim()));
//alert(theyear);
document.body.innerHTML='<h' + '1' + decodeURIComponent(('' + event.data).split(encodeURIComponent('<h' + '1'))[1]).split(' id="lastdiv"></div>')[0] + ' id="lastdiv"></div>';
if (thislang.trim() != '') { document.getElementById('language').value=thislang; document.getElementById('language').setAttribute('data-lcode', thislang); }
inplay=true;
lastinplayc=document.body.innerHTML + ' ';
fromfor=true;
setTimeout(lsit, 2000);
}
});
</script>
</head>
<body onload="calcapv=document.getElementById('calcap').innerHTML; document.getElementById('calcap').setAttribute('data-thism', '' + themonth); document.getElementById('calcap').setAttribute('data-thisy', '' + theyear); if (documentURL.indexOf('_x_tr_tl=') != -1) { document.getElementById('language').value=documentURL.split('_x_tr_tl=')[1].split('&')[0].split('#')[0]; } thismonth(); if (inplay) { lastinplayc=document.body.innerHTML + ' '; } lscheck(); setInterval(inpcheck, 5000);">
<h1 translate=yes>Editable <select translate=yes style="background-color:white;color:blue;" data-lcode="" id="language" title="Translations courtesy of Google Translate at http://translate.google.com/" onchange='ChangeLcodeNow();'><option value="">English</option><option value="af">Afrikaans</option><option value="sq">Albanian</option><option value="ar">Arabic</option><option value="hy">Armenian</option><option value="az">Azerbaijani</option><option value="eu">Basque</option><option value="be">Belarusian</option><option value="bg">Bulgarian</option><option value="ca">Catalan</option><option value="zh-CN">Chinese (Simplified)</option><option value="zh-TW">Chinese (Traditional)</option><option value="hr">Croatian</option><option value="cs">Czech</option><option value="da">Danish</option><option value="nl">Dutch</option><option value="en">English</option><option value="et">Estonian</option><option value="tl">Filipino</option><option value="fi">Finnish</option><option value="fr">French</option><option value="gl">Galician</option><option value="ka">Georgian</option><option value="de">German</option><option value="el">Greek</option><option value="ht">Haitian Creole</option><option value="iw">Hebrew</option><option value="hi">Hindi</option><option value="hu">Hungarian</option><option value="is">Icelandic</option><option value="id">Indonesian</option><option value="ga">Irish</option><option value="it">Italian</option><option value="ja">Japanese</option><option value="ko">Korean</option><option value="la">Latin</option><option value="lv">Latvian</option><option value="lt">Lithuanian</option><option value="mk">Macedonian</option><option value="ms">Malay</option><option value="mt">Maltese</option><option value="no">Norwegian</option><option value="fa">Persian</option><option value="pl">Polish</option><option value="pt">Portuguese</option><option value="ro">Romanian</option><option value="ru">Russian</option><option value="sr">Serbian</option><option value="sk">Slovak</option><option value="sl">Slovenian</option><option value="es">Spanish</option><option value="sw">Swahili</option><option value="sv">Swedish</option><option value="th">Thai</option><option value="tr">Turkish</option><option value="uk">Ukrainian</option><option value="ur">Urdu</option><option value="vi">Vietnamese</option><option value="cy">Welsh</option><option value="yi">Yiddish</option></select> Calendar <button id=bsave translate=yes onclick=lsit(); style=display:none;>Save <select onchange=recallsm(this); id=savedd style=display:none;><option translate=yes value=''>Optionally recall a saved Editable Calendar month ...</option></select></button></h1>
<h3 translate=yes>RJM Programming <a onclick=intlvs(); translate=yes style=text-decoration:none;cursor:pointer; id=mya title="Click to use Intl (+) methods rather than Google Translate (-) for non English calendars.">-</a> <span onkeypress=rechanges(event); translate=yes>September, 2026</span> ... thanks to <a target=_blank href='//www.nicepng.com/ourpic/u2q8y3w7q8i1o0i1_february-calendar-image-freeuse-library-calendar-clipart/'>NicePNG</a></h3>
<!--table id="wp-calendar" border=1 style=width:98%;height:70%;>
<caption id=calcap>September 2026</caption>
<thead>
<tr>
<th id=Sunday scope="col" title="Sunday">Sunday</th>
<th id=Monday scope="col" title="Monday">Monday</th>
<th id=Tuesday scope="col" title="Tuesday">Tuesday</th>
<th id=Wednesday scope="col" title="Wednesday">Wednesday</th>
<th id=Thursday scope="col" title="Thursday">Thursday</th>
<th id=Friday scope="col" title="Friday">Friday</th>
<th id=Saturday scope="col" title="Saturday">Saturday</th>
</tr>
</thead>
<tfoot style=display:none;>
<tr>
<td colspan="3" id="prev"><a href="https://www.rjmprogramming.com.au/ITblog/2024/03/">« Mar</a></td>
<td class="pad"> </td>
<td colspan="3" id="next" class="pad"> </td>
</tr>
</tfoot>
<tbody>
<tr id=week0>
<td colspan="2" class="pad"></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td>
</tr>
<tr id=week1>
<td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td><td class=""><span contenteditable=true> </span></td>
</tr>
<tr id=week2>
<td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/09/" aria-label="Posts published on 9 August 2026">9</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/10/" aria-label="Posts published on 10 August 2026">10</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/11/" aria-label="Posts published on 11 August 2026">11</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/12/" aria-label="Posts published on 12 August 2026">12</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/13/" aria-label="Posts published on 13 August 2026">13</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/14/" aria-label="Posts published on 14 August 2026">14</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/15/" aria-label="Posts published on 15 August 2026">15</a></td>
</tr>
<tr id=week3>
<td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/16/" aria-label="Posts published on 16 August 2026">16</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/17/" aria-label="Posts published on 17 August 2026">17</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/18/" aria-label="Posts published on 18 August 2026">18</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/19/" aria-label="Posts published on 19 August 2026">19</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/20/" aria-label="Posts published on 20 August 2026">20</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/21/" aria-label="Posts published on 21 August 2026">21</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/22/" aria-label="Posts published on 22 August 2026">22</a></td>
</tr>
<tr id=week4>
<td>27</td><td>28</td><td>29</td><td>30</td>
<td class="pad" colspan="3"></td>
</tr>
<tr id=week5>
<td class="pad" colspan="7"></td>
</tr>
</tbody>
</table-->
<table id="wp-calendar" border=1 cellpadding=6 style=width:98%;height:70%;><caption ondblclick=incit(event); data-thism='' data-thisy='' title="You can change Month, Year here (and even if it remains the same, allows for Save (leading to Recall dropdown) button appearing) ... double click to left decrements month and to right increments month" onkeypress="inplay=true;" contenteditable=true onblur="newmy(this);" id=calcap>August, 2026</caption>
<thead>
<tr>
<th id=Sunday scope="col" title="Sunday">Sunday</th>
<th id=Monday scope="col" title="Monday">Monday</th>
<th id=Tuesday scope="col" title="Tuesday">Tuesday</th>
<th id=Wednesday scope="col" title="Wednesday">Wednesday</th>
<th id=Thursday scope="col" title="Thursday">Thursday</th>
<th id=Friday scope="col" title="Friday">Friday</th>
<th id=Saturday scope="col" title="Saturday">Saturday</th>
</tr>
</thead>
<tfoot style=display:none;>
<tr>
<td colspan="3" id="prev"><a href="https://www.rjmprogramming.com.au/ITblog/2024/03/">« Mar</a></td>
<td class="pad"> </td>
<td colspan="3" id="next" class="pad"> </td>
</tr>
</tfoot>
<tbody>
<tr id=week0>
<td colspan="6" class="pad"></td><td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td>
</tr>
<tr id=week1>
<td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td><td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td><td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td><td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td><td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td><td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td><td class=""><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td>
</tr>
<tr id=week2>
<td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/09/" aria-label="Posts published on 9 August 2026">9</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/10/" aria-label="Posts published on 10 August 2026">10</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/11/" aria-label="Posts published on 11 August 2026">11</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/12/" aria-label="Posts published on 12 August 2026">12</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/13/" aria-label="Posts published on 13 August 2026">13</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/14/" aria-label="Posts published on 14 August 2026">14</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/15/" aria-label="Posts published on 15 August 2026">15</a></td>
</tr>
<tr id=week3>
<td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/16/" aria-label="Posts published on 16 August 2026">16</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/17/" aria-label="Posts published on 17 August 2026">17</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/18/" aria-label="Posts published on 18 August 2026">18</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/19/" aria-label="Posts published on 19 August 2026">19</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/20/" aria-label="Posts published on 20 August 2026">20</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/21/" aria-label="Posts published on 21 August 2026">21</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/22/" aria-label="Posts published on 22 August 2026">22</a></td>
</tr>
<tr id=week4>
<td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/23/" aria-label="Posts published on 23 August 2026">23</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/24/" aria-label="Posts published on 24 August 2026">24</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/25/" aria-label="Posts published on 25 August 2026">25</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/26/" aria-label="Posts published on 26 August 2026">26</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/27/" aria-label="Posts published on 27 August 2026">27</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/28/" aria-label="Posts published on 28 August 2026">28</a></td><td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/29/" aria-label="Posts published on 29 August 2026">29</a></td>
</tr>
<tr id=week5>
<td class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/30/" aria-label="Posts published on 30 August 2026">30</a></td><td id="today" class=""><a href="https://www.rjmprogramming.com.au/ITblog/2026/08/31/" aria-label="Posts published on 31 August 2026">31</a></td>
<td class="pad" colspan="5"><span onkeypress=rechanges(event); translate=yes contenteditable=true> </span></td>
</tr>
</tbody>
</table>
<iframe src=/PHP/fgc/index.php id=myif style=display:none;></iframe>
<iframe src=/About_Us.html name=myifbottom id=myifbottom style=display:none;width:100%;height:900px;></iframe>
<div id="lastdiv"></div>
</body>
</html>