Enabe/disable smileys for ELCode via display attribute.

This commit is contained in:
2015-03-31 12:07:33 +02:00
parent 633df5f9c4
commit b74db5edb6
5 changed files with 80 additions and 99 deletions
+31
View File
@@ -0,0 +1,31 @@
/********************************************************************\
Name: dnd.js
Created by: Stefan Ritt
Contents: JavaScript code for Drag & Drop interface
\********************************************************************/
function XMLHttpRequestGeneric()
{
var request;
try {
request = new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
}
catch (e) {
try {
request = new ActiveXObject('Msxml2.XMLHTTP'); // Internet Explorer
}
catch (e) {
try {
request = new ActiveXObject('Microsoft.XMLHTTP');
}
catch (e) {
alert('Your browser does not support AJAX!');
return undefined;
}
}
}
return request;
}
+11 -27
View File
@@ -10,43 +10,26 @@
\********************************************************************/
var dummy = 0;
var httpReq;
var imReq;
var elName;
var thumbName;
function im(name, thumb, image, cmd)
{
try {
httpReq = new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
}
catch (e) {
try {
httpReq = new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
}
catch (e) {
try {
httpReq = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {
alert("Your browser does not support AJAX!");
return false;
}
}
}
imReq = XMLHttpRequestGeneric();
elName = name;
thumbName = thumb;
httpReq.onreadystatechange = onReady;
httpReq.open("GET","?cmd=im&req="+cmd+"&img="+image, true);
httpReq.send(null);
imReq.onreadystatechange = onReady;
imReq.open("GET","?cmd=im&req="+cmd+"&img="+image, true);
imReq.send(null);
}
function onReady()
{
if (httpReq.readyState == 4) {
if (httpReq.responseText != "" &&
httpReq.responseText.search(/Fonts/) == -1)
alert(httpReq.responseText);
if (imReq.readyState == 4) {
if (imReq.responseText != "" &&
imReq.responseText.search(/Fonts/) == -1)
alert(imReq.responseText);
o = document.getElementsByName(elName);
if (o[0])
o[0].src = thumbName+'?'+dummy;
@@ -61,11 +44,12 @@ function onReady()
}
dummy++;
}
delete httpReq;
delete imReq;
}
function deleteAtt(idx)
{
submitted = true;
document.form1.smcmd.value='delatt'+idx;
document.form1.submit();
}
+2 -2
View File
@@ -218,7 +218,7 @@ $(document).ready(function() {
event.stopPropagation();
event.preventDefault();
console.log("holder-enter")
holder.css("border", "10px dashed #0c0");
holder.css("border", "6px dashed #0c0");
return false;
},
'dragover' : function(event) {
@@ -230,7 +230,7 @@ $(document).ready(function() {
event.stopPropagation();
event.preventDefault();
console.log("holder-leave");
holder.css("border", "10px dashed #ccc");
holder.css("border", "6px dashed #ccc");
return false;
},
'drop' : function(e) {
+20 -70
View File
@@ -9484,7 +9484,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
{
int i, j, n, index, aindex, size, width, height, fh, length, input_size, input_maxlen,
format_flags[MAX_N_ATTR], year, month, day, hour, min, sec, n_attr, n_disp_attr, n_lines,
attr_index[MAX_N_ATTR], enc_selected, show_smileys, show_text, n_moptions, display_inline,
attr_index[MAX_N_ATTR], enc_selected, show_text, n_moptions, display_inline,
allowed_encoding, thumb_status, max_n_lines, fixed_text, autosave;
char str[2 * NAME_LENGTH], str2[NAME_LENGTH], preset[2 * NAME_LENGTH], *p, *pend, star[80],
comment[10000], reply_string[256], list[MAX_N_ATTR][NAME_LENGTH], file_name[256], *buffer,
@@ -9492,7 +9492,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
attrib[MAX_N_ATTR][NAME_LENGTH], *text, orig_tag[80], reply_tag[MAX_REPLY_TO * 10],
att[MAX_ATTACHMENTS][256], encoding[80], slist[MAX_N_ATTR + 10][NAME_LENGTH],
svalue[MAX_N_ATTR + 10][NAME_LENGTH], owner[256], locked_by[256], class_value[80], class_name[80],
ua[NAME_LENGTH], mid[80], title[256], login_name[256], full_name[256], cookie[256],
ua[NAME_LENGTH], mid[80], title[256], login_name[256], full_name[256],
orig_author[256], attr_moptions[MAX_N_LIST][NAME_LENGTH], ref[256], file_enc[256], tooltip[10000],
enc_attr[NAME_LENGTH], user_email[256], cmd[256], thumb_name[256], thumb_ref[256], **user_list, fid[20],
upwd[80], subdir[256], draft[256], page_title[256];
@@ -9636,20 +9636,6 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
if (getcfg(lbs->name, "Default Encoding", str, sizeof(str)))
enc_selected = atoi(str);
/* determine if smiley bar should be displayed */
show_smileys = 0;
cookie[0] = 0;
if (isparam("hsm") && atoi(getparam("hsm")) == 1) /* cookie */
show_smileys = 0;
if (isparam("smcmd") && strieq(getparam("smcmd"), "hsm")) { /* turn off */
show_smileys = 0;
strcpy(cookie, "hsm=1");
}
if (isparam("smcmd") && strieq(getparam("smcmd"), "ssm")) { /* turn on */
show_smileys = 1;
strcpy(cookie, "hsm=0");
}
/* Overwrite from current entry */
if (encoding[0]) {
if (encoding[0] == 'E')
@@ -9942,7 +9928,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
} else
sprintf(page_title, "ELOG %s", lbs->name);
show_html_header(lbs, FALSE, page_title, FALSE, FALSE, cookie, FALSE, 0);
show_html_header(lbs, FALSE, page_title, FALSE, FALSE, NULL, FALSE, 0);
/* java script for checking required attributes and to check for cancelled edits */
rsprintf("<script type=\"text/javascript\">\n");
@@ -9959,29 +9945,6 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
rsprintf("var entry_modified = false;\n");
rsprintf("var last_key = 0;\n\n");
rsprintf("function XMLHttpRequestGeneric()\n");
rsprintf("{\n");
rsprintf(" var request;\n");
rsprintf(" try {\n");
rsprintf(" request = new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari\n");
rsprintf(" }\n");
rsprintf(" catch (e) {\n");
rsprintf(" try {\n");
rsprintf(" request = new ActiveXObject('Msxml2.XMLHTTP'); // Internet Explorer\n");
rsprintf(" }\n");
rsprintf(" catch (e) {\n");
rsprintf(" try {\n");
rsprintf(" request = new ActiveXObject('Microsoft.XMLHTTP');\n");
rsprintf(" }\n");
rsprintf(" catch (e) {\n");
rsprintf(" alert('Your browser does not support AJAX!');\n");
rsprintf(" return undefined;\n");
rsprintf(" }\n");
rsprintf(" }\n");
rsprintf(" }\n");
rsprintf(" return request;\n");
rsprintf("}\n\n");
rsprintf("function chkform()\n");
rsprintf("{\n");
@@ -10288,16 +10251,18 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
rsprintf(" mod();\n");
rsprintf("}\n\n");
/* switch_smileys turn on/off the smiley bar by setting the smcmd, which in turn
sets the hsm=0/hsm=1 cookie */
/* switch_smileys turn on/off the smiley bar */
rsprintf("function switch_smileys()\n");
rsprintf("{\n");
if (show_smileys)
rsprintf(" document.form1.smcmd.value = 'hsm';\n");
else
rsprintf(" document.form1.smcmd.value = 'ssm';\n");
rsprintf(" submitted = true;\n");
rsprintf(" document.form1.submit();\n");
rsprintf(" s = document.getElementById('smileyRow');\n");
rsprintf(" i = document.getElementById('smileyIcon');\n");
rsprintf(" if (s.style.display == 'none') {\n");
rsprintf(" s.style.display = 'table-row';\n");
rsprintf(" i.src = 'icons/eld_smile.png';\n");
rsprintf(" } else {\n");
rsprintf(" s.style.display = 'none';\n");
rsprintf(" i.src = 'icons/elc_smile.png';\n");
rsprintf(" }\n");
rsprintf("}\n\n");
if (enc_selected != 2 && !getcfg(lbs->name, "Message height", str, sizeof(str)) &&
@@ -10384,7 +10349,10 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
rsprintf("<script type=\"text/javascript\" src=\"../progress/progress.min.js\"></script>\n");
rsprintf("<link rel=\"stylesheet\" type=\"text/css\" href=\"../progress/progressjs.min.css\">\n");
}
/* drag-and-drip script */
rsprintf("<script type=\"text/javascript\" src=\"../dnd.js\"></script>\n\n");
/* external script if requested */
if (isparam("js")) {
rsprintf("<script src=\"%s\" type=\"text/javascript\">\n", getparam("js"));
@@ -11237,13 +11205,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
rsprintf(" ");
ricon("code", loc("Insert code CTRL+O"), "elcode(document.form1.Text, 'CODE','')");
if (show_smileys)
rsprintf
(" <img align=\"middle\" name=\"smileys\" src=\"icons/eld_smile.png\" alt=\"%s\" title=\"%s\" border=\"0\"",
loc("Hide the smiley bar"), loc("Hide the smiley bar"));
else
rsprintf
(" <img align=\"middle\" name=\"smileys\" src=\"icons/elc_smile.png\" alt=\"%s\" title=\"%s\" border=\"0\"",
rsprintf(" <img align=\"middle\" id=\"smileyIcon\" src=\"icons/elc_smile.png\" alt=\"%s\" title=\"%s\" border=\"0\"",
loc("Show the smiley bar"), loc("Show the smiley bar"));
rsprintf(" onclick=\"switch_smileys()\"");
rsprintf(" onmouseover=\"this.style.cursor='pointer';\" />\n");
@@ -11296,33 +11258,21 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
rsprintf("</td></tr>\n");
}
if (enc_selected == 0 && show_smileys) {
if (enc_selected == 0) {
rsprintf("<tr><td colspan=2 class=\"menuframe\">\n");
rsprintf("<tr id=\"smileyRow\" style=\"display:none\"><td colspan=2 class=\"toolframe\">\n");
rsicon("smile", loc("smiling"), ":)");
rsprintf("<br />\n");
rsicon("happy", loc("happy"), ":))");
rsprintf("<br />\n");
rsicon("wink", loc("winking"), ";)");
rsprintf("<br />\n");
rsicon("biggrin", loc("big grin"), ":D");
rsprintf("<br />\n");
rsicon("crying", loc("crying"), ";(");
rsprintf("<br />\n");
rsicon("cool", loc("cool"), "8-)");
rsprintf("<br />\n");
rsicon("frown", loc("frowning"), ":(");
rsprintf("<br />\n");
rsicon("confused", loc("confused"), "?-)");
rsprintf("<br />\n");
rsicon("astonished", loc("astonished"), "8o");
rsprintf("<br />\n");
rsicon("mad", loc("mad"), "X-(");
rsprintf("<br />\n");
rsicon("pleased", loc("pleased"), ":]");
rsprintf("<br />\n");
rsicon("tongue", loc("tongue"), ":P");
rsprintf("<br />\n");
rsicon("yawn", loc("yawn"), ":O");
rsprintf("</td></tr>\n");
+16
View File
@@ -42,6 +42,10 @@
D545158F1399A23B0037D7FB /* elogd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = elogd.h; path = ../src/elogd.h; sourceTree = SOURCE_ROOT; };
D54515901399A23B0037D7FB /* regex.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = regex.c; path = ../src/regex.c; sourceTree = SOURCE_ROOT; };
D54515911399A23B0037D7FB /* regex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = regex.h; path = ../src/regex.h; sourceTree = SOURCE_ROOT; };
D54863091ACA9A7B00BA8C69 /* dnd.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = dnd.js; path = ../scripts/dnd.js; sourceTree = "<group>"; };
D548630A1ACA9A9F00BA8C69 /* im.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = im.js; path = ../scripts/im.js; sourceTree = "<group>"; };
D548630B1ACA9AAB00BA8C69 /* load-ckeditor.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = "load-ckeditor.js"; path = "../scripts/load-ckeditor.js"; sourceTree = "<group>"; };
D548630C1ACA9AC600BA8C69 /* elcode.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = elcode.js; path = ../scripts/elcode.js; sourceTree = "<group>"; };
D58A366615AF103300682DC0 /* elog-version.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "elog-version.h"; path = "../src/elog-version.h"; sourceTree = SOURCE_ROOT; };
D5AC5BF9154AC7200018DD90 /* config.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = config.html; path = ../doc/config.html; sourceTree = SOURCE_ROOT; };
D5F11B9113AFA164002CE8BF /* elogd.cfg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = elogd.cfg; path = ../elogd.cfg; sourceTree = SOURCE_ROOT; };
@@ -62,6 +66,7 @@
isa = PBXGroup;
children = (
D52BA2FD13999DB0000458E3 /* elogd */,
D54863081ACA9A5B00BA8C69 /* Scripts */,
D5F11B9013AFA146002CE8BF /* Resources */,
D52BA2FB13999DB0000458E3 /* Products */,
);
@@ -93,6 +98,17 @@
path = elogd;
sourceTree = "<group>";
};
D54863081ACA9A5B00BA8C69 /* Scripts */ = {
isa = PBXGroup;
children = (
D548630C1ACA9AC600BA8C69 /* elcode.js */,
D548630B1ACA9AAB00BA8C69 /* load-ckeditor.js */,
D548630A1ACA9A9F00BA8C69 /* im.js */,
D54863091ACA9A7B00BA8C69 /* dnd.js */,
);
name = Scripts;
sourceTree = "<group>";
};
D5F11B9013AFA146002CE8BF /* Resources */ = {
isa = PBXGroup;
children = (