For next click establish default text ...";
---
> $ffnos="Text from now on Colour Size Direction Rotation Style Family ideas ...  px  °  
For next click establish default text ...";
715,728d651
< var sofarso='" . $newdts . $newdtssuffix . "';
< var sofarsoatend='';
< var sofarsonext=1;
< var sofarmode=" . $sfm . "; // 1=step through and 2=stop at sequences and dates and 3=fully automate
<
< var curone=2;
< var isokay=true;
< var xans='';
< var onlval='';
< var lsnames=[];
< var curls=-1;
< var origtz='';
< var lsname='';
< var newtz='';
839d761
< sofarsoatend+='@!@' + newcmd.split(' name=')[1].split(' ')[0] + ':' + newcmd.split(' value=')[1].split(' ')[0];
1145d1066
< var retval=true;
1162c1083
< if (sofarmode == 0) { document.getElementById('mytextarea').value=''; }
---
> document.getElementById('mytextarea').value='';
1165,1182c1086
< if (xans != '') {
< var nondebatable=false;
< if (sofarmode == 2 && xans.toUpperCase().indexOf('DATE') != 0 && xans.toUpperCase().replace(' * ',' x ').indexOf(' x ') == -1) { nondebatable=true; }
< if (sofarmode == 3 || nondebatable) {
< ans=xans.trim();
< xans='';
< } else if (sofarmode == 1 || (sofarmode == 2 && !nondebatable)) {
< if (isokay) {
< indef=xans.trim();
< }
< //xans='';
< //retval=false;
< ans=prompt('Append more spaces to default suggestion in order to indicate you want to click again in a new place for this entry, and note that you can change wording, as well over at the textarea if you wish. Enter with nothing to proceed or space to Save As along the way to creating PDF. Else enter text number ' + coordn + ' to place where last click was made. Can use a suffix such as x 5 to repeat value on the 4 clicks to follow. Optionally prefix by text Font Family (for all text if Arial no good versus Courier or Helvetica or Arial or Times or Symbol or ZapfDingbats);Font Style (double semicolon delimit for all text default if Bold no good else single semicolon delimit for this text only versus Normal or Italic or Bold or Underline);Font Size in px (for this text if 16px no good) delimited by semicolon. Line feed via ~~ anywhere.',indef);
< if (ans.trim() == xans.trim() && xans != ans) { retval=false; return retval; } else { retval=true; xans=''; }
< }
< } else {
< ans=prompt('Enter with nothing to proceed or space to Save As along the way to creating PDF. Else enter text number ' + coordn + ' to place where last click was made. Can use a suffix such as x 5 to repeat value on the 4 clicks to follow. Optionally prefix by text Font Family (for all text if Arial no good versus Courier or Helvetica or Arial or Times or Symbol or ZapfDingbats);Font Style (double semicolon delimit for all text default if Bold no good else single semicolon delimit for this text only versus Normal or Italic or Bold or Underline);Font Size in px (for this text if 16px no good) delimited by semicolon. Line feed via ~~ anywhere.',indef);
< }
---
> ans=prompt('Enter with nothing to proceed. Else enter text number ' + coordn + ' to place where last click was made. Can use a suffix such as x 5 to repeat value on the 4 clicks to follow. Optionally prefix by text Font Family (for all text if Arial no good versus Courier or Helvetica or Arial or Times or Symbol or ZapfDingbats);Font Style (double semicolon delimit for all text default if Bold no good else single semicolon delimit for this text only versus Normal or Italic or Bold or Underline);Font Size in px (for this text if 16px no good) delimited by semicolon. Line feed via ~~ anywhere.',indef);
1184,1190d1087
< if (ans.trim() != '' && x >= 0 && y >= 0) {
< sofarsoatend+='@!@' + ans + '!!!' + x + '@@@' + y;
< } else if (ans.trim() == '' && ans != '' && x >= 0 && y >= 0) {
< sofarsoatend+='@!@!!!' + x + '@@@' + y;
< lsnamesaveas();
< ans='';
< }
1205,1206d1101
< if (retval) { xans=''; }
< return retval;
1218d1112
< document.getElementById('thetable').style.display='none';
1239d1132
< sofarso+='@!@' + document.getElementById('slideshow').value;
1252,1253c1145
< document.getElementById('blob').innerHTML+='
';
< setTimeout(askaway,500);
---
> askaway();
1274c1163
< document.getElementById('mybody').title='Click where text is to be placed in your resultant PDF. Can use a suffix such as x 5 to repeat value on the 4 clicks to follow. As far as dates go consult https://www.w3schools.com/php/func_date_date_format.asp DATE_ATOM type entries where DATE_ followed by ymd lowercase character correspondence in second part means change just date via that ymd means whereas date_ followed by hms lowercase character correspondence in second part means change time via that hms means whereas uppercase second part preceeded by ymd lowercase character in first part means change datetime via that ymd means whereas datE_ followed by hms lowercase character correspondence in second part means change datetime via that hms means. Incrementing scale can be defined via ++ or -- or +=2 or -=4 types of strings before x 5 repeat definitions. An offset to the DATE_ATOM type entry meaning of today and now can be achieved via no spaces between it and offset ++ or -=4 type of string. Basis date is " . $newdts . "'; //setTimeout(askaway, 5000); //alert('am here');
---
> document.getElementById('mybody').title='Click where text is to be placed in your resultant PDF. Can use a suffix such as x 5 to repeat value on the 4 clicks to follow. As far as dates go consult https://www.w3schools.com/php/func_date_date_format.asp DATE_ATOM type entries where DATE_ followed by ymd lowercase character correspondence in second part means change just date via that ymd means whereas date_ followed by hms lowercase character correspondence in second part means change time via that hms means whereas uppercase second part preceeded by ymd lowercase character in first part means change datetime via that ymd means whereas datE_ followed by hms lowercase character correspondence in second part means change datetime via that hms means. Incrementing scale can be defined via ++ or -- or +=2 or -=4 types of strings before the x 5 repeat definitions. An offset to the DATE_ATOM type entry meaning of today and now can be achieved via no spaces between it and offset ++ or -- or +=2 or -=4 type of string. Basis date is " . $newdts . "'; //setTimeout(askaway, 5000); //alert('am here');
1279,1342d1167
< if (curls >= 0 && eval('' + lsnames.length) > curone) {
< curls=curone;
< startrecording=true;
< showingc=false;
< if (sofarmode == 3) {
< setTimeout(processcmd, 3000);
< } else {
< x=eval(lsnames[curls].split('!!!')[1].split('@@@')[0]);
< y=eval(lsnames[curls].split('@@@')[1]);
< xans=lsnames[curls].split('!!!')[0] + ' ';
< document.getElementById('mytextarea').value=xans.replace(/" . "\\" . "~" . "\\" . "~/g, String.fromCharCode(10));
< setTimeout(processcmd, 15000);
< }
< }
< }
<
< function nextoneisone(one) {
< if (eval(one + curls) < eval('' + lsnames.length)) {
< document.getElementById('mytextarea').value='';
< if (lsnames[eval(one + curls)].indexOf('!!!') != -1) {
< x=eval(lsnames[eval(one + curls)].split('!!!')[1].split('@@@')[0]);
< y=eval(lsnames[eval(one + curls)].split('@@@')[1]);
< xans=lsnames[eval(one + curls)].split('!!!')[0] + ' ';
< document.getElementById('mytextarea').value=xans.replace(/" . "\\" . "~" . "\\" . "~/g, String.fromCharCode(10));
< }
< }
< return one;
< }
<
< function processcmd() {
< if (isokay && eval('' + curls) < eval(0 + eval('' + lsnames.length))) {
< xans='';
< //document.getElementById('mytextarea').value='';
< if (lsnames[curls].indexOf('!!!') != -1) {
< //alert('curls=' + curls + ' ' + lsnames[curls]);
< x=eval(lsnames[curls].split('!!!')[1].split('@@@')[0]);
< y=eval(lsnames[curls].split('@@@')[1]);
< xans=lsnames[curls].split('!!!')[0] + ' ';
< //alert('Xans=' + xans);
< document.getElementById('mytextarea').value=xans.replace(/" . "\\" . "~" . "\\" . "~/g, String.fromCharCode(10));
< //alert('Will start with command ' + lsnames[curls]);
< startrecording=true;
< showingc=false;
< document.getElementById('blob').innerHTML+='