o upgrade tinymce to 2.0.6.1. get it out of the web-client source tree and do the extract into the assembling war file.
o fix submit error in forms. i rejiggered ids and didn't update the code to send the right ones for submit. o improvements to how ajax requests are made. centralizing that code, serializing requests, and adding a gmail style "Loading..." thing (mostly for diagnostic purposes). o tinymce fixes - still a lot of work to be done. reduced (by way too much) the number of buttons in the toolbar - i'll iron that out today. it's still sizing itself irresponsibly - and i really want a way to get blur events. may need to patch it. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3868 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
@@ -57,6 +57,12 @@
|
|||||||
dest="${dir.assemble}/scripts/ajax/dojo"/>
|
dest="${dir.assemble}/scripts/ajax/dojo"/>
|
||||||
<delete dir="${dir.assemble}/scripts/ajax/dojo/tests"/>
|
<delete dir="${dir.assemble}/scripts/ajax/dojo/tests"/>
|
||||||
<delete dir="${dir.assemble}/scripts/ajax/dojo/demos"/>
|
<delete dir="${dir.assemble}/scripts/ajax/dojo/demos"/>
|
||||||
|
|
||||||
|
<unzip src="${dir.common.lib}/tinymce_2_0_6_1.zip"
|
||||||
|
dest="${dir.assemble}/scripts"/>
|
||||||
|
<move file="${dir.assemble}/scripts/tinymce/jscripts/tiny_mce"
|
||||||
|
todir="${dir.assemble}/scripts/"/>
|
||||||
|
<delete dir="${dir.assemble}/scripts/tinymce"/>
|
||||||
|
|
||||||
<!-- add config files to WEB-INF/classes -->
|
<!-- add config files to WEB-INF/classes -->
|
||||||
<copy todir="${dir.assemble}/WEB-INF/classes">
|
<copy todir="${dir.assemble}/WEB-INF/classes">
|
||||||
|
@@ -9,29 +9,23 @@ dojo.require("dojo.widget.Spinner");
|
|||||||
dojo.require("dojo.fx.html");
|
dojo.require("dojo.fx.html");
|
||||||
dojo.require("dojo.lfx.html");
|
dojo.require("dojo.lfx.html");
|
||||||
dojo.hostenv.writeIncludes();
|
dojo.hostenv.writeIncludes();
|
||||||
dojo.addOnLoad(xforms_init);
|
dojo.addOnLoad(function()
|
||||||
|
{
|
||||||
|
document.xform = new alfresco.xforms.XForm();
|
||||||
|
});
|
||||||
tinyMCE.init({
|
tinyMCE.init({
|
||||||
theme: "advanced",
|
theme: "advanced",
|
||||||
mode: "exact",
|
mode: "exact",
|
||||||
encoding: null,
|
encoding: null,
|
||||||
save_callback : "document.xform.setXFormsValue",
|
save_callback: "document.xform.setXFormsValue",
|
||||||
add_unload_trigger: false,
|
add_unload_trigger: false,
|
||||||
add_form_submit_trigger: false,
|
add_form_submit_trigger: false,
|
||||||
theme_advanced_toolbar_location : "top",
|
theme_advanced_toolbar_location: "top",
|
||||||
theme_advanced_toolbar_align : "left",
|
theme_advanced_toolbar_align: "left",
|
||||||
theme_advanced_buttons1_add : "fontselect,fontsizeselect",
|
theme_advanced_buttons1: "fontselect,fontsizeselect",
|
||||||
theme_advanced_buttons2_add : "separator,forecolor,backcolor"
|
theme_advanced_buttons2: "separator,forecolor,backcolor"
|
||||||
});
|
});
|
||||||
|
|
||||||
var control_images = [ "plus", "minus", "arrow_up", "arrow_down" ];
|
|
||||||
for (var i in control_images)
|
|
||||||
{
|
|
||||||
var s = control_images[i];
|
|
||||||
control_images[i] = new Image();
|
|
||||||
control_images[i].src = s;
|
|
||||||
}
|
|
||||||
|
|
||||||
dojo.declare("alfresco.xforms.Widget",
|
dojo.declare("alfresco.xforms.Widget",
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
@@ -238,21 +232,28 @@ dojo.declare("alfresco.xforms.TextArea",
|
|||||||
alfresco.xforms.Widget,
|
alfresco.xforms.Widget,
|
||||||
{
|
{
|
||||||
initializer: function(xform, node)
|
initializer: function(xform, node)
|
||||||
{
|
{
|
||||||
this.inherited("initializer", [ xform, node ]);
|
this.inherited("initializer", [ xform, node ]);
|
||||||
dojo.debug("created a TextArea");
|
dojo.debug("created a TextArea");
|
||||||
},
|
},
|
||||||
render: function(attach_point)
|
render: function(attach_point)
|
||||||
{
|
{
|
||||||
dojo.debug("xxx " + this.id);
|
this.domNode = document.createElement("div");
|
||||||
var nodeRef = document.createElement("div");
|
attach_point.appendChild(this.domNode);
|
||||||
attach_point.appendChild(nodeRef);
|
this.domNode.setAttribute("style", "height: 200px; border: solid 1px black;");
|
||||||
nodeRef.setAttribute("style", "height: 200px; width: 100%; border: solid 1px black;");
|
this.domNode.setAttribute("id", this.id);
|
||||||
nodeRef.setAttribute("id", this.id);
|
this.domNode.innerHTML = this.getInitialValue() || "";
|
||||||
|
dojo.event.connect(this.domNode, "onclick", this, this._clickHandler);
|
||||||
nodeRef.innerHTML = this.getInitialValue() || "";
|
dojo.event.connect(this.domNode, "onblur", this, this._blurHandler);
|
||||||
tinyMCE.addMCEControl(nodeRef, this.id);
|
},
|
||||||
}
|
_clickHandler: function(event)
|
||||||
|
{
|
||||||
|
tinyMCE.addMCEControl(this.domNode, this.id);
|
||||||
|
},
|
||||||
|
_blurHandler: function(event)
|
||||||
|
{
|
||||||
|
alert('blurry');
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
dojo.declare("alfresco.xforms.Select1",
|
dojo.declare("alfresco.xforms.Select1",
|
||||||
@@ -449,9 +450,11 @@ dojo.declare("alfresco.xforms.Group",
|
|||||||
contentDiv.setAttribute("id", child.id + "-content");
|
contentDiv.setAttribute("id", child.id + "-content");
|
||||||
d.appendChild(contentDiv);
|
d.appendChild(contentDiv);
|
||||||
contentDiv.style.position = "relative";
|
contentDiv.style.position = "relative";
|
||||||
|
// contentDiv.style.width = (d.offsetWidth - contentDiv.offsetLeft) + "px";
|
||||||
child.render(contentDiv);
|
child.render(contentDiv);
|
||||||
if (!(child instanceof alfresco.xforms.Group))
|
if (!(child instanceof alfresco.xforms.Group))
|
||||||
{
|
{
|
||||||
|
contentDiv.style.width = (d.offsetWidth * .7) + "px";
|
||||||
d.style.height = contentDiv.offsetHeight + "px";
|
d.style.height = contentDiv.offsetHeight + "px";
|
||||||
d.style.lineHeight = d.style.height;
|
d.style.lineHeight = d.style.height;
|
||||||
}
|
}
|
||||||
@@ -463,7 +466,7 @@ dojo.declare("alfresco.xforms.Group",
|
|||||||
contentDiv.style.left = (child instanceof alfresco.xforms.Group
|
contentDiv.style.left = (child instanceof alfresco.xforms.Group
|
||||||
? "0px"
|
? "0px"
|
||||||
: "30%");
|
: "30%");
|
||||||
contentDiv.style.width = (d.offsetWidth - contentDiv.offsetLeft) + "px";
|
|
||||||
|
|
||||||
d.style.borderColor = "pink";
|
d.style.borderColor = "pink";
|
||||||
d.style.borderWidth = "0px";
|
d.style.borderWidth = "0px";
|
||||||
@@ -527,7 +530,7 @@ dojo.declare("alfresco.xforms.Repeat",
|
|||||||
controls.style.bottom = "0px";
|
controls.style.bottom = "0px";
|
||||||
|
|
||||||
var images = [
|
var images = [
|
||||||
{ src: "plus", action: this._insertRepeatItem_handler },
|
{ src: "plus", action: this._insertRepeatItemAfter_handler },
|
||||||
{ src: "arrow_up", action: this._moveRepeatItemUp_handler },
|
{ src: "arrow_up", action: this._moveRepeatItemUp_handler },
|
||||||
{ src: "arrow_down", action: this._moveRepeatItemDown_handler },
|
{ src: "arrow_down", action: this._moveRepeatItemDown_handler },
|
||||||
{ src: "minus", action: this._removeRepeatItem_handler }
|
{ src: "minus", action: this._removeRepeatItem_handler }
|
||||||
@@ -554,17 +557,26 @@ dojo.declare("alfresco.xforms.Repeat",
|
|||||||
if (this.selectedIndex == position)
|
if (this.selectedIndex == position)
|
||||||
this.handleIndexChanged(Math.min(this.children.length - 1, position));
|
this.handleIndexChanged(Math.min(this.children.length - 1, position));
|
||||||
},
|
},
|
||||||
_insertRepeatItem_handler: function(event)
|
_insertRepeatItemAfter_handler: function(event)
|
||||||
{
|
{
|
||||||
var trigger = _findElementById(this.node.parentNode,
|
if (!this.insertRepeatItemAfterTrigger)
|
||||||
this.id + "-insert_after");
|
this.insertRepeatItemAfterTrigger =
|
||||||
this.xform.fireAction(trigger.getAttribute("id"));
|
_findElementById(this.node.parentNode, this.id + "-insert_after");
|
||||||
|
this.xform.fireAction(this.insertRepeatItemAfterTrigger.getAttribute("id"));
|
||||||
|
},
|
||||||
|
_insertRepeatItemBefore_handler: function(event)
|
||||||
|
{
|
||||||
|
if (!this.insertRepeatItemBeforeTrigger)
|
||||||
|
this.insertRepeatItemBeforeTrigger =
|
||||||
|
_findElementById(this.node.parentNode, this.id + "-insert_before");
|
||||||
|
this.xform.fireAction(this.insertRepeatItemBeforeTrigger.getAttribute("id"));
|
||||||
},
|
},
|
||||||
_removeRepeatItem_handler: function(event)
|
_removeRepeatItem_handler: function(event)
|
||||||
{
|
{
|
||||||
var trigger = _findElementById(this.node.parentNode,
|
if (!this.removeRepeatItemTrigger)
|
||||||
this.id + "-delete");
|
this.removeRepeatItemTrigger = _findElementById(this.node.parentNode,
|
||||||
this.xform.fireAction(trigger.getAttribute("id"));
|
this.id + "-delete");
|
||||||
|
this.xform.fireAction(this.removeRepeatItemTrigger.getAttribute("id"));
|
||||||
},
|
},
|
||||||
_moveRepeatItemUp_handler: function(event)
|
_moveRepeatItemUp_handler: function(event)
|
||||||
{
|
{
|
||||||
@@ -673,15 +685,7 @@ dojo.declare("alfresco.xforms.Repeat",
|
|||||||
addElement.style.top = "0px";
|
addElement.style.top = "0px";
|
||||||
addElement.style.left = "80%";
|
addElement.style.left = "80%";
|
||||||
|
|
||||||
dojo.event.browser.addListener(addElement,
|
dojo.event.connect(addElement, "onclick", this, this._insertRepeatItemBefore_handler);
|
||||||
"onclick",
|
|
||||||
function(event)
|
|
||||||
{
|
|
||||||
var repeat = event.currentTarget.parentNode.repeat;
|
|
||||||
var trigger = _findElementById(repeat.node.parentNode,
|
|
||||||
repeat.id + "-insert_before");
|
|
||||||
repeat.xform.fireAction(trigger.getAttribute("id"));
|
|
||||||
});
|
|
||||||
|
|
||||||
return this.domNode;
|
return this.domNode;
|
||||||
},
|
},
|
||||||
@@ -744,55 +748,45 @@ dojo.declare("alfresco.xforms.Trigger",
|
|||||||
alfresco.xforms.Widget,
|
alfresco.xforms.Widget,
|
||||||
{
|
{
|
||||||
initializer: function(xform, node)
|
initializer: function(xform, node)
|
||||||
{
|
{
|
||||||
this.inherited("initializer", [ xform, node ]);
|
this.inherited("initializer", [ xform, node ]);
|
||||||
},
|
},
|
||||||
|
|
||||||
render: function(attach_point)
|
render: function(attach_point)
|
||||||
{
|
{
|
||||||
var nodeRef = document.createElement("div");
|
var nodeRef = document.createElement("div");
|
||||||
attach_point.appendChild(nodeRef);
|
attach_point.appendChild(nodeRef);
|
||||||
var w = dojo.widget.createWidget("Button",
|
this.widget = dojo.widget.createWidget("Button",
|
||||||
{
|
{
|
||||||
widgetId: this.id + "-widget",
|
widgetId: this.id + "-widget",
|
||||||
caption: this.getLabel() + " " + this.id
|
caption: this.getLabel() + " " + this.id
|
||||||
},
|
},
|
||||||
nodeRef);
|
nodeRef);
|
||||||
w.onClick = function()
|
dojo.event.connect(this.widget, "onClick", this, this._clickHandler);
|
||||||
{
|
this.domContainer.style.display = "none";
|
||||||
fireAction(w.widgetId);
|
},
|
||||||
};
|
_clickHandler: function(event)
|
||||||
this.domContainer.style.display = "none";
|
{
|
||||||
}
|
this.xform.fireAction(this.id);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
dojo.declare("alfresco.xforms.Submit",
|
dojo.declare("alfresco.xforms.Submit",
|
||||||
alfresco.xforms.Trigger,
|
alfresco.xforms.Trigger,
|
||||||
{
|
{
|
||||||
initializer: function(xform, node)
|
initializer: function(xform, node)
|
||||||
{
|
{
|
||||||
this.inherited("initializer", [ xform, node ]);
|
this.inherited("initializer", [ xform, node ]);
|
||||||
},
|
},
|
||||||
render: function(attach_point)
|
render: function(attach_point)
|
||||||
{
|
{
|
||||||
var nodeRef = document.createElement("div");
|
this.inherited("render", [ attach_point ]);
|
||||||
attach_point.appendChild(nodeRef);
|
document.submitWidget = this;
|
||||||
var w = dojo.widget.createWidget("Button",
|
},
|
||||||
{
|
_clickHandler: function(event)
|
||||||
widgetId: this.id + "-widget",
|
{
|
||||||
caption: "submit"
|
document.submitWidget.done = false;
|
||||||
},
|
this.xform.fireAction(this.id);
|
||||||
nodeRef);
|
}
|
||||||
w.widget = this;
|
|
||||||
this.widget = w;
|
|
||||||
document.submitWidget = this;
|
|
||||||
w.onClick = function()
|
|
||||||
{
|
|
||||||
document.submitWidget.done = false;
|
|
||||||
w.widget.xform.fireAction(w.widgetId);
|
|
||||||
};
|
|
||||||
this.domContainer.style.display = "none";
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
dojo.declare("alfresco.xforms.XFormsEvent",
|
dojo.declare("alfresco.xforms.XFormsEvent",
|
||||||
@@ -823,229 +817,200 @@ dojo.declare("alfresco.xforms.XFormsEvent",
|
|||||||
dojo.declare("alfresco.xforms.XForm",
|
dojo.declare("alfresco.xforms.XForm",
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
initializer: function(document)
|
initializer: function()
|
||||||
{
|
{
|
||||||
this.document = document;
|
send_ajax_request(create_ajax_request(this,
|
||||||
this.node = document.documentElement;
|
"getXForm",
|
||||||
this._bindings = this._loadBindings(this.getModel());
|
{},
|
||||||
},
|
function(type, data, evt)
|
||||||
getModel: function()
|
{
|
||||||
{
|
this.xform._loadHandler(data);
|
||||||
return this.node.getElementsByTagName("model")[0];
|
}));
|
||||||
},
|
},
|
||||||
getInstance: function()
|
_loadHandler: function(xformDocument)
|
||||||
{
|
{
|
||||||
var model = this.getModel();
|
this.xformDocument = xformDocument;
|
||||||
return model.getElementsByTagName("instance")[0];
|
this.node = xformDocument.documentElement;
|
||||||
},
|
this._bindings = this._loadBindings(this.getModel());
|
||||||
getBody: function()
|
|
||||||
{
|
|
||||||
var b = this.node.getElementsByTagName("body");
|
|
||||||
return b[b.length - 1];
|
|
||||||
},
|
|
||||||
getType: function(node)
|
|
||||||
{
|
|
||||||
return this.getBinding(node).type;
|
|
||||||
},
|
|
||||||
getBinding: function(node)
|
|
||||||
{
|
|
||||||
return this._bindings[node.getAttribute("xforms:bind")];
|
|
||||||
},
|
|
||||||
getBindings: function()
|
|
||||||
{
|
|
||||||
return this._bindings;
|
|
||||||
},
|
|
||||||
_loadBindings: function(bind, parent, result)
|
|
||||||
{
|
|
||||||
result = result || [];
|
|
||||||
dojo.debug("loading bindings for " + bind.nodeName);
|
|
||||||
for (var i = 0; i < bind.childNodes.length; i++)
|
|
||||||
{
|
|
||||||
if (bind.childNodes[i].nodeName.toLowerCase() == "xforms:bind")
|
|
||||||
{
|
|
||||||
var id = bind.childNodes[i].getAttribute("id");
|
|
||||||
dojo.debug("loading binding " + id);
|
|
||||||
result[id] = {
|
|
||||||
id: bind.childNodes[i].getAttribute("id"),
|
|
||||||
required: bind.childNodes[i].getAttribute("xforms:required"),
|
|
||||||
nodeset: bind.childNodes[i].getAttribute("xforms:nodeset"),
|
|
||||||
type: bind.childNodes[i].getAttribute("xforms:type"),
|
|
||||||
constraint: bind.childNodes[i].getAttribute("xforms:constraint"),
|
|
||||||
parent: parent
|
|
||||||
};
|
|
||||||
this._loadBindings(bind.childNodes[i], result[id], result);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
},
|
|
||||||
setRepeatIndex: function(id, index)
|
|
||||||
{
|
|
||||||
dojo.debug("setting repeat index " + index + " on " + id);
|
|
||||||
var req = {
|
|
||||||
xform: this,
|
|
||||||
url: WEBAPP_CONTEXT + "/ajax/invoke/XFormsBean.setRepeatIndex",
|
|
||||||
content: { id: id, index: index },
|
|
||||||
mimetype: "text/xml",
|
|
||||||
load: function(type, data, evt)
|
|
||||||
{
|
|
||||||
this.xform._handleEventLog(data.documentElement);
|
|
||||||
},
|
|
||||||
error: function(type, e)
|
|
||||||
{
|
|
||||||
alert("error!! " + type + " e = " + e.message);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
dojo.io.bind(req);
|
|
||||||
},
|
|
||||||
fireAction: function(id)
|
|
||||||
{
|
|
||||||
var req = {
|
|
||||||
xform: this,
|
|
||||||
url: WEBAPP_CONTEXT + "/ajax/invoke/XFormsBean.fireAction",
|
|
||||||
content: { id: id },
|
|
||||||
mimetype: "text/xml",
|
|
||||||
load: function(type, data, evt)
|
|
||||||
{
|
|
||||||
dojo.debug("fireAction." + type);
|
|
||||||
this.xform._handleEventLog(data.documentElement);
|
|
||||||
},
|
|
||||||
error: function(type, e)
|
|
||||||
{
|
|
||||||
alert("error!! " + type + " e = " + e.message);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
dojo.io.bind(req);
|
|
||||||
},
|
|
||||||
setXFormsValue: function(id, value)
|
|
||||||
{
|
|
||||||
dojo.debug("setting value " + id + " = " + value);
|
|
||||||
var req = {
|
|
||||||
xform: this,
|
|
||||||
url: WEBAPP_CONTEXT + "/ajax/invoke/XFormsBean.setXFormsValue",
|
|
||||||
content: { id: id, value: value },
|
|
||||||
mimetype: "text/xml",
|
|
||||||
load: function(type, data, evt)
|
|
||||||
{
|
|
||||||
this.xform._handleEventLog(data.documentElement);
|
|
||||||
},
|
|
||||||
error: function(type, e)
|
|
||||||
{
|
|
||||||
alert("error!! " + type + " e = " + e.message);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
dojo.io.bind(req);
|
|
||||||
},
|
|
||||||
_handleEventLog: function(events)
|
|
||||||
{
|
|
||||||
var prototypeClones = [];
|
|
||||||
for (var i = 0; i < events.childNodes.length; i++)
|
|
||||||
{
|
|
||||||
if (events.childNodes[i].nodeType == dojo.dom.ELEMENT_NODE)
|
|
||||||
{
|
|
||||||
var xfe = new alfresco.xforms.XFormsEvent(events.childNodes[i]);
|
|
||||||
dojo.debug("parsing " + xfe.type +
|
|
||||||
"(" + xfe.targetId + ", " + xfe.targetName + ")");
|
|
||||||
switch (xfe.type)
|
|
||||||
{
|
|
||||||
case "chiba-index-changed":
|
|
||||||
{
|
|
||||||
var index = Number(xfe.properties["index"]) - 1;
|
|
||||||
xfe.getTarget().handleIndexChanged(index);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "chiba-prototype-cloned":
|
|
||||||
{
|
|
||||||
var prototypeId = xfe.properties["prototypeId"];
|
|
||||||
var clone = xfe.getTarget().handlePrototypeCloned(prototypeId);
|
|
||||||
prototypeClones.push(clone);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "chiba-id-generated":
|
|
||||||
{
|
|
||||||
var originalId = xfe.properties["originalId"];
|
|
||||||
|
|
||||||
dojo.debug("handleIdGenerated(" + xfe.targetId + ", " + originalId + ")");
|
var bindings = this.getBindings();
|
||||||
var clone = prototypeClones[prototypeClones.length - 1];
|
for (var i in bindings)
|
||||||
var node = _findElementById(clone, originalId);
|
{
|
||||||
if (node)
|
dojo.debug("bindings[" + i + "]=" + bindings[i].id +
|
||||||
{
|
", parent = " + (bindings[i].parent
|
||||||
dojo.debug("applying id " + xfe.targetId +
|
? bindings[i].parent.id
|
||||||
" to " + node.nodeName + "(" + originalId + ")");
|
: 'null'));
|
||||||
node.setAttribute("id", xfe.targetId);
|
}
|
||||||
}
|
var alfUI = document.getElementById("alf-ui");
|
||||||
else
|
alfUI.style.width = "100%";
|
||||||
throw new Error("unable to find " + originalId +
|
|
||||||
" in clone " + dojo.dom.innerXML(clone));
|
var root = new alfresco.xforms.Group(this, alfUI);
|
||||||
break;
|
root.render(alfUI);
|
||||||
}
|
load_body(this, this.getBody(), root);
|
||||||
case "chiba-item-inserted":
|
},
|
||||||
|
getModel: function()
|
||||||
|
{
|
||||||
|
return this.node.getElementsByTagName("model")[0];
|
||||||
|
},
|
||||||
|
getInstance: function()
|
||||||
|
{
|
||||||
|
var model = this.getModel();
|
||||||
|
return model.getElementsByTagName("instance")[0];
|
||||||
|
},
|
||||||
|
getBody: function()
|
||||||
|
{
|
||||||
|
var b = this.node.getElementsByTagName("body");
|
||||||
|
return b[b.length - 1];
|
||||||
|
},
|
||||||
|
getType: function(node)
|
||||||
|
{
|
||||||
|
return this.getBinding(node).type;
|
||||||
|
},
|
||||||
|
getBinding: function(node)
|
||||||
|
{
|
||||||
|
return this._bindings[node.getAttribute("xforms:bind")];
|
||||||
|
},
|
||||||
|
getBindings: function()
|
||||||
|
{
|
||||||
|
return this._bindings;
|
||||||
|
},
|
||||||
|
_loadBindings: function(bind, parent, result)
|
||||||
|
{
|
||||||
|
result = result || [];
|
||||||
|
dojo.debug("loading bindings for " + bind.nodeName);
|
||||||
|
for (var i = 0; i < bind.childNodes.length; i++)
|
||||||
|
{
|
||||||
|
if (bind.childNodes[i].nodeName.toLowerCase() == "xforms:bind")
|
||||||
|
{
|
||||||
|
var id = bind.childNodes[i].getAttribute("id");
|
||||||
|
dojo.debug("loading binding " + id);
|
||||||
|
result[id] = {
|
||||||
|
id: bind.childNodes[i].getAttribute("id"),
|
||||||
|
required: bind.childNodes[i].getAttribute("xforms:required"),
|
||||||
|
nodeset: bind.childNodes[i].getAttribute("xforms:nodeset"),
|
||||||
|
type: bind.childNodes[i].getAttribute("xforms:type"),
|
||||||
|
constraint: bind.childNodes[i].getAttribute("xforms:constraint"),
|
||||||
|
parent: parent
|
||||||
|
};
|
||||||
|
this._loadBindings(bind.childNodes[i], result[id], result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
},
|
||||||
|
setRepeatIndex: function(id, index)
|
||||||
|
{
|
||||||
|
dojo.debug("setting repeat index " + index + " on " + id);
|
||||||
|
var req = create_ajax_request(this,
|
||||||
|
"setRepeatIndex",
|
||||||
|
{ id: id, index: index },
|
||||||
|
function(type, data, evt)
|
||||||
|
{
|
||||||
|
this.xform._handleEventLog(data.documentElement);
|
||||||
|
});
|
||||||
|
send_ajax_request(req);
|
||||||
|
},
|
||||||
|
fireAction: function(id)
|
||||||
|
{
|
||||||
|
var req = create_ajax_request(this,
|
||||||
|
"fireAction",
|
||||||
|
{ id: id },
|
||||||
|
function(type, data, evt)
|
||||||
|
{
|
||||||
|
dojo.debug("fireAction." + type);
|
||||||
|
this.xform._handleEventLog(data.documentElement);
|
||||||
|
});
|
||||||
|
send_ajax_request(req);
|
||||||
|
},
|
||||||
|
setXFormsValue: function(id, value)
|
||||||
|
{
|
||||||
|
dojo.debug("setting value " + id + " = " + value);
|
||||||
|
var req = create_ajax_request(this,
|
||||||
|
"setXFormsValue",
|
||||||
|
{ id: id, value: value },
|
||||||
|
function(type, data, evt)
|
||||||
|
{
|
||||||
|
this.xform._handleEventLog(data.documentElement);
|
||||||
|
});
|
||||||
|
send_ajax_request(req);
|
||||||
|
},
|
||||||
|
_handleEventLog: function(events)
|
||||||
|
{
|
||||||
|
var prototypeClones = [];
|
||||||
|
for (var i = 0; i < events.childNodes.length; i++)
|
||||||
|
{
|
||||||
|
if (events.childNodes[i].nodeType == dojo.dom.ELEMENT_NODE)
|
||||||
|
{
|
||||||
|
var xfe = new alfresco.xforms.XFormsEvent(events.childNodes[i]);
|
||||||
|
dojo.debug("parsing " + xfe.type +
|
||||||
|
"(" + xfe.targetId + ", " + xfe.targetName + ")");
|
||||||
|
switch (xfe.type)
|
||||||
|
{
|
||||||
|
case "chiba-index-changed":
|
||||||
|
{
|
||||||
|
var index = Number(xfe.properties["index"]) - 1;
|
||||||
|
xfe.getTarget().handleIndexChanged(index);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case "chiba-prototype-cloned":
|
||||||
|
{
|
||||||
|
var prototypeId = xfe.properties["prototypeId"];
|
||||||
|
var clone = xfe.getTarget().handlePrototypeCloned(prototypeId);
|
||||||
|
prototypeClones.push(clone);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case "chiba-id-generated":
|
||||||
|
{
|
||||||
|
var originalId = xfe.properties["originalId"];
|
||||||
|
|
||||||
|
dojo.debug("handleIdGenerated(" + xfe.targetId + ", " + originalId + ")");
|
||||||
|
var clone = prototypeClones[prototypeClones.length - 1];
|
||||||
|
var node = _findElementById(clone, originalId);
|
||||||
|
if (node)
|
||||||
{
|
{
|
||||||
var position = Number(xfe.properties["position"]) - 1;
|
dojo.debug("applying id " + xfe.targetId +
|
||||||
|
" to " + node.nodeName + "(" + originalId + ")");
|
||||||
|
node.setAttribute("id", xfe.targetId);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
throw new Error("unable to find " + originalId +
|
||||||
|
" in clone " + dojo.dom.innerXML(clone));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case "chiba-item-inserted":
|
||||||
|
{
|
||||||
|
var position = Number(xfe.properties["position"]) - 1;
|
||||||
|
|
||||||
var clone = prototypeClones.pop();
|
var clone = prototypeClones.pop();
|
||||||
xfe.getTarget().handleItemInserted(clone, position);
|
xfe.getTarget().handleItemInserted(clone, position);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "chiba-item-deleted":
|
case "chiba-item-deleted":
|
||||||
|
{
|
||||||
|
var position = Number(xfe.properties["position"]) - 1;
|
||||||
|
xfe.getTarget().handleItemDeleted(position);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case "chiba-replace-all":
|
||||||
|
if (document.submitWidget)
|
||||||
{
|
{
|
||||||
var position = Number(xfe.properties["position"]) - 1;
|
document.submitWidget.done = true;
|
||||||
xfe.getTarget().handleItemDeleted(position);
|
document.submitWidget.currentButton.click();
|
||||||
break;
|
document.submitWidget.currentButton = null;
|
||||||
}
|
|
||||||
case "chiba-replace-all":
|
|
||||||
if (document.submitWidget)
|
|
||||||
{
|
|
||||||
document.submitWidget.done = true;
|
|
||||||
document.submitWidget.currentButton.click();
|
|
||||||
document.submitWidget.currentButton = null;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "xforms-submit-error":
|
|
||||||
alert("you gotta fill out the form first!");
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
{
|
|
||||||
dojo.debug("unhandled event " + events.childNodes[i].nodeName);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
|
case "xforms-submit-error":
|
||||||
|
alert("Please provide values for all required fields.");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
dojo.debug("unhandled event " + events.childNodes[i].nodeName);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
function xforms_init()
|
|
||||||
{
|
|
||||||
var req = {
|
|
||||||
url: WEBAPP_CONTEXT + "/ajax/invoke/XFormsBean.getXForm",
|
|
||||||
content: { },
|
|
||||||
mimetype: "text/xml",
|
|
||||||
load: function(type, data, evt)
|
|
||||||
{
|
|
||||||
var xform = new alfresco.xforms.XForm(data);
|
|
||||||
var bindings = xform.getBindings();
|
|
||||||
for (var i in bindings)
|
|
||||||
{
|
|
||||||
dojo.debug("bindings[" + i + "]=" + bindings[i].id +
|
|
||||||
", parent = " + (bindings[i].parent
|
|
||||||
? bindings[i].parent.id
|
|
||||||
: 'null'));
|
|
||||||
}
|
|
||||||
var alfUI = document.getElementById("alf-ui");
|
|
||||||
alfUI.style.width = "100%";
|
|
||||||
|
|
||||||
var root = new alfresco.xforms.Group(xform, alfUI);
|
|
||||||
root.render(alfUI);
|
|
||||||
load_body(xform, xform.getBody(), root);
|
|
||||||
document.xform = xform;
|
|
||||||
},
|
|
||||||
error: function(type, e)
|
|
||||||
{
|
|
||||||
alert("error!! " + type + " e = " + e.message);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
dojo.io.bind(req);
|
|
||||||
}
|
|
||||||
|
|
||||||
function create_widget(xform, node)
|
function create_widget(xform, node)
|
||||||
{
|
{
|
||||||
switch (node.nodeName.toLowerCase())
|
switch (node.nodeName.toLowerCase())
|
||||||
@@ -1159,3 +1124,102 @@ function _findElementById(node, id)
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function create_ajax_request(xform, serverMethod, methodArgs, load, error)
|
||||||
|
{
|
||||||
|
var result = {};
|
||||||
|
result.xform = xform;
|
||||||
|
result.url = WEBAPP_CONTEXT + "/ajax/invoke/XFormsBean." + serverMethod;
|
||||||
|
result.content = methodArgs;
|
||||||
|
result.load = load;
|
||||||
|
dojo.event.connect(result, "load", function(type, data, evt)
|
||||||
|
{
|
||||||
|
ajax_request_load_handler(this);
|
||||||
|
});
|
||||||
|
result.mimetype = "text/xml";
|
||||||
|
result.error = error || function(type, e)
|
||||||
|
{
|
||||||
|
alert("error [" + type + "] " + e.message);
|
||||||
|
ajax_request_load_handler(this);
|
||||||
|
};
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
function send_ajax_request(req)
|
||||||
|
{
|
||||||
|
ajax_request_send_handler(req);
|
||||||
|
dojo.io.queueBind(req);
|
||||||
|
}
|
||||||
|
|
||||||
|
function _get_ajax_loader_element()
|
||||||
|
{
|
||||||
|
var result = document.getElementById("alf-ajax-loader");
|
||||||
|
if (result)
|
||||||
|
return result;
|
||||||
|
result = document.createElement("div");
|
||||||
|
result.setAttribute("id", "alf-ajax-loader");
|
||||||
|
result.setAttribute("style", "position: absolute; background-color: red; color: white; top: 0px; right: 0px;");
|
||||||
|
dojo.style.hide(result);
|
||||||
|
document.body.appendChild(result);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
var _ajax_requests = [];
|
||||||
|
|
||||||
|
function ajax_request_send_handler(req)
|
||||||
|
{
|
||||||
|
_ajax_requests.push(req);
|
||||||
|
ajax_loader_update_display();
|
||||||
|
}
|
||||||
|
|
||||||
|
function ajax_loader_update_display()
|
||||||
|
{
|
||||||
|
var ajaxLoader = _get_ajax_loader_element();
|
||||||
|
ajaxLoader.innerHTML = (_ajax_requests.length == 0
|
||||||
|
? "Idle"
|
||||||
|
: "Loading" + (_ajax_requests.length > 1
|
||||||
|
? " (" + _ajax_requests.length + ")"
|
||||||
|
: "..."));
|
||||||
|
dojo.debug(ajaxLoader.innerHTML);
|
||||||
|
if (/*dojo.style.isVisible(ajaxLoader) && */ _ajax_requests.length == 0)
|
||||||
|
{
|
||||||
|
// dojo.fx.html.fadeOut(ajaxLoader,
|
||||||
|
// 200,
|
||||||
|
// function(node)
|
||||||
|
// {
|
||||||
|
dojo.style.hide(ajaxLoader);
|
||||||
|
// });
|
||||||
|
}
|
||||||
|
else if (/*!dojo.style.isVisible(ajaxLoader) && */ _ajax_requests.length != 0)
|
||||||
|
{
|
||||||
|
// dojo.fx.html.fadeIn(ajaxLoader,
|
||||||
|
// 100,
|
||||||
|
// function(node)
|
||||||
|
// {
|
||||||
|
dojo.style.show(ajaxLoader);
|
||||||
|
// });
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
alert("v " + dojo.style.isVisible(ajaxLoader) + " l " + _ajax_requests.length);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function ajax_request_load_handler(req)
|
||||||
|
{
|
||||||
|
var ajaxLoader = _get_ajax_loader_element();
|
||||||
|
var index = -1;
|
||||||
|
for (var i = 0; i < _ajax_requests.length; i++)
|
||||||
|
{
|
||||||
|
if (_ajax_requests[i] == req)
|
||||||
|
{
|
||||||
|
index = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (index == -1)
|
||||||
|
_ajax_requests.splice(index, 1);
|
||||||
|
else
|
||||||
|
throw new Error("unable to find " + req.url);
|
||||||
|
ajax_loader_update_display();
|
||||||
|
}
|
@@ -1,10 +0,0 @@
|
|||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>blank_page</title>
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
38
source/web/scripts/tiny_mce/langs/en.js
vendored
@@ -1,38 +0,0 @@
|
|||||||
// UK lang variables
|
|
||||||
|
|
||||||
tinyMCELang['lang_bold_desc'] = 'Bold';
|
|
||||||
tinyMCELang['lang_italic_desc'] = 'Italic';
|
|
||||||
tinyMCELang['lang_underline_desc'] = 'Underline';
|
|
||||||
tinyMCELang['lang_striketrough_desc'] = 'Striketrough';
|
|
||||||
tinyMCELang['lang_justifyleft_desc'] = 'Align left';
|
|
||||||
tinyMCELang['lang_justifycenter_desc'] = 'Align center';
|
|
||||||
tinyMCELang['lang_justifyright_desc'] = 'Align right';
|
|
||||||
tinyMCELang['lang_justifyfull_desc'] = 'Align full';
|
|
||||||
tinyMCELang['lang_bullist_desc'] = 'Unordered list';
|
|
||||||
tinyMCELang['lang_numlist_desc'] = 'Ordered list';
|
|
||||||
tinyMCELang['lang_outdent_desc'] = 'Outdent';
|
|
||||||
tinyMCELang['lang_indent_desc'] = 'Indent';
|
|
||||||
tinyMCELang['lang_undo_desc'] = 'Undo';
|
|
||||||
tinyMCELang['lang_redo_desc'] = 'Redo';
|
|
||||||
tinyMCELang['lang_link_desc'] = 'Insert/edit link';
|
|
||||||
tinyMCELang['lang_unlink_desc'] = 'Unlink';
|
|
||||||
tinyMCELang['lang_image_desc'] = 'Insert/edit image';
|
|
||||||
tinyMCELang['lang_cleanup_desc'] = 'Cleanup messy code';
|
|
||||||
tinyMCELang['lang_focus_alert'] = 'A editor instance must be focused before using this command.';
|
|
||||||
tinyMCELang['lang_edit_confirm'] = 'Do you want to use the WYSIWYG mode for this textarea?';
|
|
||||||
tinyMCELang['lang_insert_link_title'] = 'Insert/edit link';
|
|
||||||
tinyMCELang['lang_insert'] = 'Insert';
|
|
||||||
tinyMCELang['lang_update'] = 'Update';
|
|
||||||
tinyMCELang['lang_cancel'] = 'Cancel';
|
|
||||||
tinyMCELang['lang_insert_link_url'] = 'Link URL';
|
|
||||||
tinyMCELang['lang_insert_link_target'] = 'Target';
|
|
||||||
tinyMCELang['lang_insert_link_target_same'] = 'Open link in the same window';
|
|
||||||
tinyMCELang['lang_insert_link_target_blank'] = 'Open link in a new window';
|
|
||||||
tinyMCELang['lang_insert_image_title'] = 'Insert/edit image';
|
|
||||||
tinyMCELang['lang_insert_image_src'] = 'Image URL';
|
|
||||||
tinyMCELang['lang_insert_image_alt'] = 'Image description';
|
|
||||||
tinyMCELang['lang_help_desc'] = 'Help';
|
|
||||||
tinyMCELang['lang_bold_img'] = "bold.gif";
|
|
||||||
tinyMCELang['lang_italic_img'] = "italic.gif";
|
|
||||||
tinyMCELang['lang_underline_img'] = "underline.gif";
|
|
||||||
tinyMCELang['lang_clipboard_msg'] = 'Copy/Cut/Paste is not available in Mozilla and Firefox.\nDo you want more information about this issue?';
|
|
2
source/web/scripts/tiny_mce/langs/readme.txt
vendored
@@ -1,2 +0,0 @@
|
|||||||
The language pack codes are based on ISO-639-2
|
|
||||||
http://www.loc.gov/standards/iso639-2/englangn.html
|
|
@@ -1,2 +0,0 @@
|
|||||||
/* Import plugin specific language pack */
|
|
||||||
tinyMCE.importPluginLanguagePack('fullscreen','en,sv');function TinyMCE_fullscreen_getControlHTML(control_name){switch(control_name){case "fullscreen":return '<img id="{$editor_id}_fullscreen" src="{$pluginurl}/images/fullscreen.gif" title="{$lang_fullscreen_desc}" width="20" height="20" class="mceButton'+(tinyMCE.getParam('fullscreen_is_enabled')?'Selected':'Normal')+'" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.restoreClass(this);" onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');" onclick="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceFullScreen\');" />';}return "";}function TinyMCE_fullscreen_execCommand(editor_id,element,command,user_interface,value){switch(command){case "mceFullScreen":if(tinyMCE.getParam('fullscreen_is_enabled')){window.opener.tinyMCE.execInstanceCommand(tinyMCE.getParam('fullscreen_editor_id'),'mceSetContent',false,tinyMCE.getContent(editor_id));top.close();}else{tinyMCE.setWindowArg('editor_id',editor_id);var win=window.open(tinyMCE.baseURL+"/plugins/fullscreen/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);}return true;}return false;}
|
|
@@ -1,34 +0,0 @@
|
|||||||
/* Import plugin specific language pack */
|
|
||||||
tinyMCE.importPluginLanguagePack('fullscreen', 'en,sv');
|
|
||||||
|
|
||||||
function TinyMCE_fullscreen_getControlHTML(control_name) {
|
|
||||||
switch (control_name) {
|
|
||||||
case "fullscreen":
|
|
||||||
return '<img id="{$editor_id}_fullscreen" src="{$pluginurl}/images/fullscreen.gif" title="{$lang_fullscreen_desc}" width="20" height="20" class="mceButton' + (tinyMCE.getParam('fullscreen_is_enabled') ? 'Selected' : 'Normal') + '" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.restoreClass(this);" onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');" onclick="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceFullScreen\');" />';
|
|
||||||
}
|
|
||||||
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
|
|
||||||
function TinyMCE_fullscreen_execCommand(editor_id, element, command, user_interface, value) {
|
|
||||||
// Handle commands
|
|
||||||
switch (command) {
|
|
||||||
case "mceFullScreen":
|
|
||||||
if (tinyMCE.getParam('fullscreen_is_enabled')) {
|
|
||||||
// In fullscreen mode
|
|
||||||
window.opener.tinyMCE.execInstanceCommand(tinyMCE.getParam('fullscreen_editor_id'), 'mceSetContent', false, tinyMCE.getContent(editor_id));
|
|
||||||
top.close();
|
|
||||||
} else {
|
|
||||||
tinyMCE.setWindowArg('editor_id', editor_id);
|
|
||||||
|
|
||||||
var win = window.open(tinyMCE.baseURL + "/plugins/fullscreen/fullscreen.htm", "mceFullScreenPopup", "fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width=" + screen.availWidth + ",height=" + screen.availHeight);
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Pass to next handler in chain
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@@ -1,43 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title></title>
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
||||||
<script language="javascript" type="text/javascript" src="../../tiny_mce.js"></script>
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
var settings = new Array();
|
|
||||||
|
|
||||||
// Clone array
|
|
||||||
for (var name in window.opener.tinyMCE.settings)
|
|
||||||
settings[name] = window.opener.tinyMCE.settings[name];
|
|
||||||
|
|
||||||
// Set options
|
|
||||||
settings['mode'] = 'exact';
|
|
||||||
settings['elements'] = 'fullscreenarea';
|
|
||||||
settings['ask'] = false;
|
|
||||||
settings['setupcontent_callback'] = 'setupContent';
|
|
||||||
settings['fullscreen_is_enabled'] = true;
|
|
||||||
settings['fullscreen_editor_id'] = window.opener.tinyMCE.getWindowArg("editor_id");
|
|
||||||
|
|
||||||
// Init
|
|
||||||
tinyMCE.init(settings);
|
|
||||||
|
|
||||||
function setupContent(editor_id, body, doc) {
|
|
||||||
var inst = tinyMCE.getInstanceById(editor_id);
|
|
||||||
var backInst = window.opener.tinyMCE.getInstanceById(tinyMCE.getParam('fullscreen_editor_id'));
|
|
||||||
|
|
||||||
// Setup title
|
|
||||||
var divElm = document.createElement("div");
|
|
||||||
divElm.innerHTML = tinyMCELang['lang_fullscreen_title'];
|
|
||||||
document.title = divElm.innerHTML;
|
|
||||||
|
|
||||||
// Get content
|
|
||||||
inst.getBody().innerHTML = backInst.getBody().innerHTML;
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body style="margin: 0px; overflow: hidden;" scrolling="no" scroll="no" onload="window.focus();">
|
|
||||||
|
|
||||||
<textarea id="fullscreenarea" style="width: 100%; height: 100%"></textarea>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 391 B |
@@ -1,4 +0,0 @@
|
|||||||
// UK lang variables
|
|
||||||
|
|
||||||
tinyMCELang['lang_fullscreen_title'] = 'Fullscreen mode'
|
|
||||||
tinyMCELang['lang_fullscreen_desc'] = 'Toggle fullscreen mode'
|
|
@@ -1,17 +0,0 @@
|
|||||||
Fullscreen plugin for TinyMCE
|
|
||||||
------------------------------
|
|
||||||
|
|
||||||
This plugin adds fullscreen mode to TinyMCE.
|
|
||||||
|
|
||||||
Installation instructions:
|
|
||||||
* Add plugin to TinyMCE plugin option list example: plugins : "fullscreen".
|
|
||||||
* Add the fullscreen button name to button list, example: theme_advanced_buttons3_add : "fullscreen".
|
|
||||||
|
|
||||||
Initialization example:
|
|
||||||
tinyMCE.init({
|
|
||||||
theme : "advanced",
|
|
||||||
mode : "textareas",
|
|
||||||
plugins : "fullscreen",
|
|
||||||
theme_advanced_buttons3_add : "fullscreen",
|
|
||||||
plaintext_create_paragraphs : false
|
|
||||||
});
|
|
@@ -1,2 +0,0 @@
|
|||||||
/* Import plugin specific language pack */
|
|
||||||
tinyMCE.importPluginLanguagePack('iespell','cs,el,en,fr_ca,it,ko,sv,zh_cn,fr,de,pl');function TinyMCE_iespell_getControlHTML(control_name){if(control_name=="iespell"&&tinyMCE.isMSIE)return '<img id="{$editor_id}_iespell" src="{$pluginurl}/images/iespell.gif" title="{$lang_iespell_desc}" width="20" height="20" class="mceButtonNormal" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.restoreClass(this);" onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');" onclick="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceIESpell\');">';return "";}function TinyMCE_iespell_execCommand(editor_id,element,command,user_interface,value){if(command=="mceIESpell"){try{var ieSpell=new ActiveXObject("ieSpell.ieSpellExtension");ieSpell.CheckDocumentNode(tinyMCE.getInstanceById(editor_id).contentDocument.documentElement);}catch(e){if(e.number==-2146827859){if(confirm(tinyMCE.getLang("lang_iespell_download","",true)))window.open('http://www.iespell.com/download.php','ieSpellDownload','');}else alert("Error Loading ieSpell: Exception "+e.number);}return true;}return false;}
|
|
@@ -1,37 +0,0 @@
|
|||||||
/* Import plugin specific language pack */
|
|
||||||
tinyMCE.importPluginLanguagePack('iespell', 'cs,el,en,fr_ca,it,ko,sv,zh_cn,fr,de,pl');
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns the HTML contents of the iespell control.
|
|
||||||
*/
|
|
||||||
function TinyMCE_iespell_getControlHTML(control_name) {
|
|
||||||
// Is it the iespell control and is the brower MSIE.
|
|
||||||
if (control_name == "iespell" && tinyMCE.isMSIE)
|
|
||||||
return '<img id="{$editor_id}_iespell" src="{$pluginurl}/images/iespell.gif" title="{$lang_iespell_desc}" width="20" height="20" class="mceButtonNormal" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.restoreClass(this);" onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');" onclick="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceIESpell\');">';
|
|
||||||
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Executes the mceIESpell command.
|
|
||||||
*/
|
|
||||||
function TinyMCE_iespell_execCommand(editor_id, element, command, user_interface, value) {
|
|
||||||
// Handle ieSpellCommand
|
|
||||||
if (command == "mceIESpell") {
|
|
||||||
try {
|
|
||||||
var ieSpell = new ActiveXObject("ieSpell.ieSpellExtension");
|
|
||||||
ieSpell.CheckDocumentNode(tinyMCE.getInstanceById(editor_id).contentDocument.documentElement);
|
|
||||||
} catch (e) {
|
|
||||||
if (e.number == -2146827859) {
|
|
||||||
if (confirm(tinyMCE.getLang("lang_iespell_download", "", true)))
|
|
||||||
window.open('http://www.iespell.com/download.php', 'ieSpellDownload', '');
|
|
||||||
} else
|
|
||||||
alert("Error Loading ieSpell: Exception " + e.number);
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Pass to next handler in chain
|
|
||||||
return false;
|
|
||||||
}
|
|
Before Width: | Height: | Size: 151 B |
@@ -1,4 +0,0 @@
|
|||||||
// UK lang variables
|
|
||||||
|
|
||||||
tinyMCELang['lang_iespell_desc'] = 'Run spell checking';
|
|
||||||
tinyMCELang['lang_iespell_download'] = "ieSpell not detected. Click OK to go to download page."
|
|
@@ -1,20 +0,0 @@
|
|||||||
ieSpell plugin for TinyMCE
|
|
||||||
----------------------------
|
|
||||||
|
|
||||||
Installation instructions:
|
|
||||||
* Copy the iespell directory to the plugins directory of TinyMCE (/jscripts/tiny_mce/plugins).
|
|
||||||
* Add plugin to TinyMCE plugin option list example: plugins : "iespell".
|
|
||||||
* Add the iespell button name to button list, example: theme_advanced_buttons3_add : "iespell".
|
|
||||||
|
|
||||||
Initialization example:
|
|
||||||
tinyMCE.init({
|
|
||||||
theme : "advanced",
|
|
||||||
mode : "textareas",
|
|
||||||
plugins : "iespell",
|
|
||||||
theme_advanced_buttons3_add : "iespell"
|
|
||||||
});
|
|
||||||
|
|
||||||
Requirements:
|
|
||||||
The end user will need MSIE on Windows with the ieSpell installed. This can be downloaded
|
|
||||||
from http://www.iespell.com/download.php. Notice on other browsers than MSIE the spellchecking
|
|
||||||
button will not be visible.
|
|
@@ -1 +0,0 @@
|
|||||||
This is the location you place TinyMCE plugins.
|
|
139
source/web/scripts/tiny_mce/plugins/table/cell.htm
vendored
@@ -1,139 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{$lang_table_cell_title}</title>
|
|
||||||
<script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
// Disable auto resize
|
|
||||||
tinyMCE.getWindowArg('mce_windowresize', false);
|
|
||||||
|
|
||||||
function insertTable() {
|
|
||||||
if (window.opener) {
|
|
||||||
var args = new Array();
|
|
||||||
|
|
||||||
args["width"] = document.forms[0].width.value;
|
|
||||||
args["height"] = document.forms[0].height.value;
|
|
||||||
args["align"] = document.forms[0].align.options[document.forms[0].align.selectedIndex].value;
|
|
||||||
args["valign"] = document.forms[0].valign.options[document.forms[0].valign.selectedIndex].value;
|
|
||||||
args["className"] = document.forms[0].styleSelect.options[document.forms[0].styleSelect.selectedIndex].value;
|
|
||||||
args["bordercolor"] = document.forms[0].bordercolor.value;
|
|
||||||
args["bgcolor"] = document.forms[0].bgcolor.value;
|
|
||||||
|
|
||||||
window.opener.tinyMCE.execCommand("mceTableCellProps", false, args);
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function init() {
|
|
||||||
if (tinyMCE.settings['table_color_fields']) {
|
|
||||||
document.getElementById('colors').style.display = tinyMCE.isMSIE ? 'block' : 'table-row';
|
|
||||||
TinyMCEPlugin_onLoad(); // Resize again
|
|
||||||
}
|
|
||||||
|
|
||||||
document.forms[0].bordercolor.value = tinyMCE.getWindowArg('bordercolor');
|
|
||||||
document.forms[0].bgcolor.value = tinyMCE.getWindowArg('bgcolor');
|
|
||||||
|
|
||||||
for (var i=0; i<document.forms[0].align.options.length; i++) {
|
|
||||||
if (document.forms[0].align.options[i].value == tinyMCE.getWindowArg('align'))
|
|
||||||
document.forms[0].align.options.selectedIndex = i;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (var i=0; i<document.forms[0].valign.options.length; i++) {
|
|
||||||
if (document.forms[0].valign.options[i].value == tinyMCE.getWindowArg('valign'))
|
|
||||||
document.forms[0].valign.options.selectedIndex = i;
|
|
||||||
}
|
|
||||||
|
|
||||||
var className = tinyMCE.getWindowArg('className');
|
|
||||||
var styleSelectElm = document.forms[0].styleSelect;
|
|
||||||
var stylesAr = tinyMCE.getParam('theme_advanced_styles', false);
|
|
||||||
if (stylesAr) {
|
|
||||||
stylesAr = stylesAr.split(';');
|
|
||||||
|
|
||||||
for (var i=0; i<stylesAr.length; i++) {
|
|
||||||
var key, value;
|
|
||||||
|
|
||||||
key = stylesAr[i].split('=')[0];
|
|
||||||
value = stylesAr[i].split('=')[1];
|
|
||||||
|
|
||||||
styleSelectElm.options[styleSelectElm.length] = new Option(key, value);
|
|
||||||
if (value == className)
|
|
||||||
styleSelectElm.options.selectedIndex = styleSelectElm.options.length-1;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
var csses = tinyMCE.getCSSClasses(tinyMCE.getWindowArg('editor_id'));
|
|
||||||
for (var i=0; i<csses.length; i++) {
|
|
||||||
styleSelectElm.options[styleSelectElm.length] = new Option(csses[i], csses[i]);
|
|
||||||
if (csses[i] == className)
|
|
||||||
styleSelectElm.options.selectedIndex = styleSelectElm.options.length-1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var formObj = document.forms[0];
|
|
||||||
formObj.width.value = tinyMCE.getWindowArg('width');
|
|
||||||
formObj.height.value = tinyMCE.getWindowArg('height');
|
|
||||||
|
|
||||||
// Autoresize and focus
|
|
||||||
TinyMCEPopup_autoResize();
|
|
||||||
window.focus();
|
|
||||||
}
|
|
||||||
|
|
||||||
function cancelAction() {
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="window.focus();init();">
|
|
||||||
<form onsubmit="insertTable();return false;">
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="200">
|
|
||||||
<tr>
|
|
||||||
<td align="center" valign="middle"><table border="0" cellpadding="4" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td colspan="4" class="title">{$lang_table_cell_title}</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_align}:</td>
|
|
||||||
<td><select name="align">
|
|
||||||
<option value="">{$lang_insert_table_align_default}</option>
|
|
||||||
<option value="center">{$lang_insert_table_align_middle}</option>
|
|
||||||
<option value="left">{$lang_insert_table_align_left}</option>
|
|
||||||
<option value="right">{$lang_insert_table_align_right}</option>
|
|
||||||
</select></td>
|
|
||||||
<td>{$lang_insert_table_class}:</td>
|
|
||||||
<td><select name="styleSelect">
|
|
||||||
<option value="" selected="selected">-- {$lang_theme_style_select} --</option>
|
|
||||||
</select></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_valign}:</td>
|
|
||||||
<td><select name="valign">
|
|
||||||
<option value="">{$lang_insert_table_align_default}</option>
|
|
||||||
<option value="top">{$lang_insert_table_align_top}</option>
|
|
||||||
<option value="middle">{$lang_insert_table_align_middle}</option>
|
|
||||||
<option value="bottom">{$lang_insert_table_align_bottom}</option>
|
|
||||||
</select></td>
|
|
||||||
<td> </td>
|
|
||||||
<td> </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_width}:</td>
|
|
||||||
<td><input name="width" type="text" id="width" value="" size="4" maxlength="4"></td>
|
|
||||||
<td>{$lang_insert_table_height}: </td>
|
|
||||||
<td><input name="height" type="text" id="height" value="" size="4" maxlength="4"></td>
|
|
||||||
</tr>
|
|
||||||
<tr id="colors" style="display: none">
|
|
||||||
<td>{$lang_table_bordercolor}:</td>
|
|
||||||
<td><input name="bordercolor" type="text" id="bordercolor" value="" size="9" maxlength="7"></td>
|
|
||||||
<td>{$lang_table_bgcolor}:</td>
|
|
||||||
<td><input name="bgcolor" type="text" id="bgcolor" value="" size="9" maxlength="7"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><input type="button" id="insert" name="insert" value="{$lang_update}" onclick="insertTable();"></td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
<td align="right"><input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="cancelAction();"></td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 1018 B |
Before Width: | Height: | Size: 369 B |
Before Width: | Height: | Size: 929 B |
Before Width: | Height: | Size: 942 B |
Before Width: | Height: | Size: 936 B |
Before Width: | Height: | Size: 935 B |
Before Width: | Height: | Size: 928 B |
Before Width: | Height: | Size: 928 B |
Before Width: | Height: | Size: 383 B |
Before Width: | Height: | Size: 367 B |
Before Width: | Height: | Size: 396 B |
@@ -1,40 +0,0 @@
|
|||||||
// UK lang variables
|
|
||||||
|
|
||||||
tinyMCELang['lang_table_desc'] = 'Inserts a new table';
|
|
||||||
tinyMCELang['lang_table_insert_row_before_desc'] = 'Insert row before';
|
|
||||||
tinyMCELang['lang_table_insert_row_after_desc'] = 'Insert row after';
|
|
||||||
tinyMCELang['lang_table_delete_row_desc'] = 'Delete row';
|
|
||||||
tinyMCELang['lang_table_insert_col_before_desc'] = 'Insert column before';
|
|
||||||
tinyMCELang['lang_table_insert_col_after_desc'] = 'Insert column after';
|
|
||||||
tinyMCELang['lang_table_delete_col_desc'] = 'Remove col';
|
|
||||||
tinyMCELang['lang_insert_table_title'] = 'Insert/Modify table';
|
|
||||||
tinyMCELang['lang_insert_table_width'] = 'Width';
|
|
||||||
tinyMCELang['lang_insert_table_height'] = 'Height';
|
|
||||||
tinyMCELang['lang_insert_table_cols'] = 'Columns';
|
|
||||||
tinyMCELang['lang_insert_table_rows'] = 'Rows';
|
|
||||||
tinyMCELang['lang_insert_table_cellspacing'] = 'Cellspacing';
|
|
||||||
tinyMCELang['lang_insert_table_cellpadding'] = 'Cellpadding';
|
|
||||||
tinyMCELang['lang_insert_table_border'] = 'Border';
|
|
||||||
tinyMCELang['lang_insert_table_align'] = 'Alignment';
|
|
||||||
tinyMCELang['lang_insert_table_align_default'] = 'Default';
|
|
||||||
tinyMCELang['lang_insert_table_align_left'] = 'Left';
|
|
||||||
tinyMCELang['lang_insert_table_align_right'] = 'Right';
|
|
||||||
tinyMCELang['lang_insert_table_align_middle'] = 'Center';
|
|
||||||
tinyMCELang['lang_insert_table_class'] = 'Class';
|
|
||||||
tinyMCELang['lang_table_row_title'] = 'Table row properties';
|
|
||||||
tinyMCELang['lang_table_cell_title'] = 'Table cell properties';
|
|
||||||
tinyMCELang['lang_table_row_desc'] = 'Table row properties';
|
|
||||||
tinyMCELang['lang_table_cell_desc'] = 'Table cell properties';
|
|
||||||
tinyMCELang['lang_insert_table_valign'] = 'Vertical alignment';
|
|
||||||
tinyMCELang['lang_insert_table_align_top'] = 'Top';
|
|
||||||
tinyMCELang['lang_insert_table_align_bottom'] = 'Bottom';
|
|
||||||
tinyMCELang['lang_table_props_desc'] = 'Table properties';
|
|
||||||
tinyMCELang['lang_table_bordercolor'] = 'Border color';
|
|
||||||
tinyMCELang['lang_table_bgcolor'] = 'Bg color';
|
|
||||||
tinyMCELang['lang_table_merge_cells_title'] = 'Merge table cells';
|
|
||||||
tinyMCELang['lang_table_split_cells_desc'] = 'Split table cells';
|
|
||||||
tinyMCELang['lang_table_merge_cells_desc'] = 'Merge table cells';
|
|
||||||
tinyMCELang['lang_table_cut_row_desc'] = 'Cut table row';
|
|
||||||
tinyMCELang['lang_table_copy_row_desc'] = 'Copy table row';
|
|
||||||
tinyMCELang['lang_table_paste_row_before_desc'] = 'Paste table row before';
|
|
||||||
tinyMCELang['lang_table_paste_row_after_desc'] = 'Paste table row after';
|
|
@@ -1,60 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{$lang_table_merge_cells_title}</title>
|
|
||||||
<script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
// Disable auto resize
|
|
||||||
tinyMCE.getWindowArg('mce_windowresize', false);
|
|
||||||
|
|
||||||
function init() {
|
|
||||||
var formObj = document.forms[0];
|
|
||||||
|
|
||||||
formObj.numcols.value = tinyMCE.getWindowArg('numcols', 1);
|
|
||||||
formObj.numrows.value = tinyMCE.getWindowArg('numrows', 1);
|
|
||||||
|
|
||||||
// Autoresize and focus
|
|
||||||
TinyMCEPopup_autoResize();
|
|
||||||
window.focus();
|
|
||||||
}
|
|
||||||
|
|
||||||
function mergeCells() {
|
|
||||||
if (window.opener) {
|
|
||||||
var args = new Array();
|
|
||||||
var formObj = document.forms[0];
|
|
||||||
|
|
||||||
args["numcols"] = formObj.numcols.value;
|
|
||||||
args["numrows"] = formObj.numrows.value;
|
|
||||||
|
|
||||||
window.opener.tinyMCE.execCommand("mceTableMergeCells", false, args);
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function cancelAction() {
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="window.focus();init();" style="margin: 8px">
|
|
||||||
<form onsubmit="insertTable();return false;">
|
|
||||||
<fieldset>
|
|
||||||
<legend>{$lang_table_merge_cells_title}</legend>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="3" width="200">
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_cols}:</td>
|
|
||||||
<td align="right"><input type="text" name="numcols" value="" style="width: 30px" /></td>
|
|
||||||
<td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_rows}:</td>
|
|
||||||
<td align="right"><input type="text" name="numrows" value="" style="width: 30px" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><input type="button" id="insert" name="insert" value="{$lang_update}" onclick="mergeCells();"></td>
|
|
||||||
<td align="right"><input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="cancelAction();"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</fieldset>
|
|
||||||
</form>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@@ -1,44 +0,0 @@
|
|||||||
Table plugin for TinyMCE
|
|
||||||
------------------------------
|
|
||||||
|
|
||||||
Installation instructions:
|
|
||||||
* Copy the table directory to the plugins directory of TinyMCE (/jscripts/tiny_mce/plugins).
|
|
||||||
* Add plugin to TinyMCE plugin option list example: plugins : "table".
|
|
||||||
* Add the table button name to button list, example: theme_advanced_buttons3_add_before : "tablecontrols".
|
|
||||||
|
|
||||||
Initialization example:
|
|
||||||
tinyMCE.init({
|
|
||||||
theme : "advanced",
|
|
||||||
mode : "textareas",
|
|
||||||
plugins : "table",
|
|
||||||
theme_advanced_buttons3_add_before : "tablecontrols"
|
|
||||||
});
|
|
||||||
|
|
||||||
Table controls:
|
|
||||||
tablecontrols All table control below and some separators between them.
|
|
||||||
table Insert table control.
|
|
||||||
row_props Edit row properties (tr).
|
|
||||||
cell_props Edit cell properties (td).
|
|
||||||
delete_col Delete column control.
|
|
||||||
delete_row Delete row control.
|
|
||||||
col_after Column after control.
|
|
||||||
col_before Column before control.
|
|
||||||
row_after Row after control.
|
|
||||||
row_before Row before control.
|
|
||||||
row_after Row after control.
|
|
||||||
row_before Row before control.
|
|
||||||
|
|
||||||
Table plugin commands:
|
|
||||||
mceInsertTable Inserts a new table at cursor location the default size is 2x2.
|
|
||||||
If the value parameter is specified it should contain a name/value array,
|
|
||||||
this array has the following options cols, rows, border, cellspacing, cellpadding.
|
|
||||||
The default border is set to: 0.
|
|
||||||
mceTableInsertRowBefore Inserts a row before/above the current cursor location.
|
|
||||||
mceTableInsertRowAfter Inserts a row after/under the current cursor location.
|
|
||||||
mceTableDeleteRow Deletes the row at the current cursor location.
|
|
||||||
mceTableInsertColBefore Inserts a column before the current cursor location.
|
|
||||||
mceTableInsertColAfter Inserts a column after the current cursor location.
|
|
||||||
mceTableDeleteCol Deletes the column at the current cursor location.
|
|
||||||
|
|
||||||
Options:
|
|
||||||
table_color_fields If set to true, tables dialogs will have color fields.
|
|
131
source/web/scripts/tiny_mce/plugins/table/row.htm
vendored
@@ -1,131 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{$lang_table_row_title}</title>
|
|
||||||
<script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
// Disable auto resize
|
|
||||||
tinyMCE.getWindowArg('mce_windowresize', false);
|
|
||||||
|
|
||||||
function insertTable() {
|
|
||||||
if (window.opener) {
|
|
||||||
var args = new Array();
|
|
||||||
|
|
||||||
args["height"] = document.forms[0].height.value;
|
|
||||||
args["align"] = document.forms[0].align.options[document.forms[0].align.selectedIndex].value;
|
|
||||||
args["valign"] = document.forms[0].valign.options[document.forms[0].valign.selectedIndex].value;
|
|
||||||
args["className"] = document.forms[0].styleSelect.options[document.forms[0].styleSelect.selectedIndex].value;
|
|
||||||
args["bordercolor"] = document.forms[0].bordercolor.value;
|
|
||||||
args["bgcolor"] = document.forms[0].bgcolor.value;
|
|
||||||
|
|
||||||
window.opener.tinyMCE.execCommand("mceTableRowProps", false, args);
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function init() {
|
|
||||||
if (tinyMCE.settings['table_color_fields']) {
|
|
||||||
document.getElementById('colors').style.display = tinyMCE.isMSIE ? 'block' : 'table-row';
|
|
||||||
TinyMCEPlugin_onLoad(); // Resize again
|
|
||||||
}
|
|
||||||
|
|
||||||
document.forms[0].bordercolor.value = tinyMCE.getWindowArg('bordercolor');
|
|
||||||
document.forms[0].bgcolor.value = tinyMCE.getWindowArg('bgcolor');
|
|
||||||
|
|
||||||
for (var i=0; i<document.forms[0].align.options.length; i++) {
|
|
||||||
if (document.forms[0].align.options[i].value == tinyMCE.getWindowArg('align'))
|
|
||||||
document.forms[0].align.options.selectedIndex = i;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (var i=0; i<document.forms[0].valign.options.length; i++) {
|
|
||||||
if (document.forms[0].valign.options[i].value == tinyMCE.getWindowArg('valign'))
|
|
||||||
document.forms[0].valign.options.selectedIndex = i;
|
|
||||||
}
|
|
||||||
|
|
||||||
var className = tinyMCE.getWindowArg('className');
|
|
||||||
var styleSelectElm = document.forms[0].styleSelect;
|
|
||||||
var stylesAr = tinyMCE.getParam('theme_advanced_styles', false);
|
|
||||||
if (stylesAr) {
|
|
||||||
stylesAr = stylesAr.split(';');
|
|
||||||
|
|
||||||
for (var i=0; i<stylesAr.length; i++) {
|
|
||||||
var key, value;
|
|
||||||
|
|
||||||
key = stylesAr[i].split('=')[0];
|
|
||||||
value = stylesAr[i].split('=')[1];
|
|
||||||
|
|
||||||
styleSelectElm.options[styleSelectElm.length] = new Option(key, value);
|
|
||||||
if (value == className)
|
|
||||||
styleSelectElm.options.selectedIndex = styleSelectElm.options.length-1;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
var csses = tinyMCE.getCSSClasses(tinyMCE.getWindowArg('editor_id'));
|
|
||||||
for (var i=0; i<csses.length; i++) {
|
|
||||||
styleSelectElm.options[styleSelectElm.length] = new Option(csses[i], csses[i]);
|
|
||||||
if (csses[i] == className)
|
|
||||||
styleSelectElm.options.selectedIndex = styleSelectElm.options.length-1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var formObj = document.forms[0];
|
|
||||||
formObj.height.value = tinyMCE.getWindowArg('height');
|
|
||||||
|
|
||||||
// Autoresize and focus
|
|
||||||
TinyMCEPopup_autoResize();
|
|
||||||
window.focus();
|
|
||||||
}
|
|
||||||
|
|
||||||
function cancelAction() {
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="window.focus();init();">
|
|
||||||
<form onsubmit="insertTable();return false;">
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="200">
|
|
||||||
<tr>
|
|
||||||
<td align="center" valign="middle"><table border="0" cellpadding="4" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td colspan="4" class="title">{$lang_table_row_title}</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_align}:</td>
|
|
||||||
<td><select name="align">
|
|
||||||
<option value="">{$lang_insert_table_align_default}</option>
|
|
||||||
<option value="center">{$lang_insert_table_align_middle}</option>
|
|
||||||
<option value="left">{$lang_insert_table_align_left}</option>
|
|
||||||
<option value="right">{$lang_insert_table_align_right}</option>
|
|
||||||
</select></td>
|
|
||||||
<td>{$lang_insert_table_class}:</td>
|
|
||||||
<td><select name="styleSelect">
|
|
||||||
<option value="" selected="selected">-- {$lang_theme_style_select} --</option>
|
|
||||||
</select></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_valign}:</td>
|
|
||||||
<td><select name="valign">
|
|
||||||
<option value="">{$lang_insert_table_align_default}</option>
|
|
||||||
<option value="top">{$lang_insert_table_align_top}</option>
|
|
||||||
<option value="middle">{$lang_insert_table_align_middle}</option>
|
|
||||||
<option value="bottom">{$lang_insert_table_align_bottom}</option>
|
|
||||||
</select></td>
|
|
||||||
<td>{$lang_insert_table_height}: </td>
|
|
||||||
<td><input name="height" type="text" id="height" value="" size="4" maxlength="4" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr id="colors" style="display: none">
|
|
||||||
<td>{$lang_table_bordercolor}:</td>
|
|
||||||
<td><input name="bordercolor" type="text" id="bordercolor" value="" size="9" maxlength="7"></td>
|
|
||||||
<td>{$lang_table_bgcolor}:</td>
|
|
||||||
<td><input name="bgcolor" type="text" id="bgcolor" value="" size="9" maxlength="7"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><input type="button" id="insert" name="insert" value="{$lang_update}" onclick="insertTable();"></td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
<td align="right"><input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="cancelAction();"></td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
156
source/web/scripts/tiny_mce/plugins/table/table.htm
vendored
@@ -1,156 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{$lang_insert_table_title}</title>
|
|
||||||
<script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
// Disable auto resize
|
|
||||||
tinyMCE.getWindowArg('mce_windowresize', false);
|
|
||||||
|
|
||||||
function insertTable() {
|
|
||||||
if (window.opener) {
|
|
||||||
var args = new Array();
|
|
||||||
|
|
||||||
args["cols"] = document.forms[0].cols.value;
|
|
||||||
args["rows"] = document.forms[0].rows.value;
|
|
||||||
args["border"] = document.forms[0].border.value;
|
|
||||||
args["cellpadding"] = document.forms[0].cellpadding.value;
|
|
||||||
args["cellspacing"] = document.forms[0].cellspacing.value;
|
|
||||||
args["width"] = document.forms[0].width.value;
|
|
||||||
args["height"] = document.forms[0].height.value;
|
|
||||||
args["bordercolor"] = document.forms[0].bordercolor.value;
|
|
||||||
args["bgcolor"] = document.forms[0].bgcolor.value;
|
|
||||||
args["align"] = document.forms[0].align.options[document.forms[0].align.selectedIndex].value;
|
|
||||||
args["className"] = document.forms[0].styleSelect.options[document.forms[0].styleSelect.selectedIndex].value;
|
|
||||||
|
|
||||||
window.opener.tinyMCE.execCommand("mceInsertTable", false, args);
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function init() {
|
|
||||||
if (tinyMCE.settings['table_color_fields']) {
|
|
||||||
document.getElementById('colors').style.display = tinyMCE.isMSIE ? 'block' : 'table-row';
|
|
||||||
TinyMCEPlugin_onLoad(); // Resize again
|
|
||||||
}
|
|
||||||
|
|
||||||
for (var i=0; i<document.forms[0].align.options.length; i++) {
|
|
||||||
if (document.forms[0].align.options[i].value == tinyMCE.getWindowArg('align'))
|
|
||||||
document.forms[0].align.options.selectedIndex = i;
|
|
||||||
}
|
|
||||||
|
|
||||||
var className = tinyMCE.getWindowArg('className');
|
|
||||||
var styleSelectElm = document.forms[0].styleSelect;
|
|
||||||
var stylesAr = tinyMCE.getParam('theme_advanced_styles', false);
|
|
||||||
if (stylesAr) {
|
|
||||||
stylesAr = stylesAr.split(';');
|
|
||||||
|
|
||||||
for (var i=0; i<stylesAr.length; i++) {
|
|
||||||
var key, value;
|
|
||||||
|
|
||||||
key = stylesAr[i].split('=')[0];
|
|
||||||
value = stylesAr[i].split('=')[1];
|
|
||||||
|
|
||||||
styleSelectElm.options[styleSelectElm.length] = new Option(key, value);
|
|
||||||
if (value == className)
|
|
||||||
styleSelectElm.options.selectedIndex = styleSelectElm.options.length-1;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
var csses = tinyMCE.getCSSClasses(tinyMCE.getWindowArg('editor_id'));
|
|
||||||
for (var i=0; i<csses.length; i++) {
|
|
||||||
styleSelectElm.options[styleSelectElm.length] = new Option(csses[i], csses[i]);
|
|
||||||
if (csses[i] == className)
|
|
||||||
styleSelectElm.options.selectedIndex = styleSelectElm.options.length-1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tinyMCE.getWindowArg('action') == "update") {
|
|
||||||
document.forms[0].cols.disabled = true;
|
|
||||||
document.forms[0].rows.disabled = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
var formObj = document.forms[0];
|
|
||||||
formObj.cols.value = tinyMCE.getWindowArg('cols');
|
|
||||||
formObj.rows.value = tinyMCE.getWindowArg('rows');
|
|
||||||
formObj.border.value = tinyMCE.getWindowArg('border');
|
|
||||||
formObj.cellpadding.value = tinyMCE.getWindowArg('cellpadding');
|
|
||||||
formObj.cellspacing.value = tinyMCE.getWindowArg('cellspacing');
|
|
||||||
formObj.width.value = tinyMCE.getWindowArg('width');
|
|
||||||
formObj.height.value = tinyMCE.getWindowArg('height');
|
|
||||||
formObj.bordercolor.value = tinyMCE.getWindowArg('bordercolor');
|
|
||||||
formObj.bgcolor.value = tinyMCE.getWindowArg('bgcolor');
|
|
||||||
formObj.insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('action'), 'Insert', true);
|
|
||||||
|
|
||||||
// Autoresize and focus
|
|
||||||
TinyMCEPopup_autoResize();
|
|
||||||
window.focus();
|
|
||||||
}
|
|
||||||
|
|
||||||
function cancelAction() {
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="window.focus();init();">
|
|
||||||
<form onsubmit="insertTable();return false;">
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="200">
|
|
||||||
<tr>
|
|
||||||
<td align="center" valign="middle"><table border="0" cellpadding="4" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td colspan="4" class="title">{$lang_insert_table_title}</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_cols}:</td>
|
|
||||||
<td><input name="cols" type="text" id="cols" value="" size="3" maxlength="3"></td>
|
|
||||||
<td>{$lang_insert_table_rows}:</td>
|
|
||||||
<td><input name="rows" type="text" id="rows" value="" size="3" maxlength="3"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_cellpadding}:</td>
|
|
||||||
<td><input name="cellpadding" type="text" id="cellpadding" value="" size="3" maxlength="3"></td>
|
|
||||||
<td>{$lang_insert_table_cellspacing}:</td>
|
|
||||||
<td><input name="cellspacing" type="text" id="cellspacing" value="" size="3" maxlength="3"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_align}:</td>
|
|
||||||
<td><select name="align">
|
|
||||||
<option value="">{$lang_insert_table_align_default}</option>
|
|
||||||
<option value="center">{$lang_insert_table_align_middle}</option>
|
|
||||||
<option value="left">{$lang_insert_table_align_left}</option>
|
|
||||||
<option value="right">{$lang_insert_table_align_right}</option>
|
|
||||||
</select></td>
|
|
||||||
<td>{$lang_insert_table_border}:</td>
|
|
||||||
<td><input name="border" type="text" id="border" value="" size="3" maxlength="3"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_width}:</td>
|
|
||||||
<td><input name="width" type="text" id="width" value="" size="4" maxlength="4"></td>
|
|
||||||
<td>{$lang_insert_table_height}: </td>
|
|
||||||
<td><input name="height" type="text" id="height" value="" size="4" maxlength="4"></td>
|
|
||||||
</tr>
|
|
||||||
<tr id="colors" style="display: none">
|
|
||||||
<td>{$lang_table_bordercolor}:</td>
|
|
||||||
<td><input name="bordercolor" type="text" id="bordercolor" value="" size="9" maxlength="7"></td>
|
|
||||||
<td>{$lang_table_bgcolor}:</td>
|
|
||||||
<td><input name="bgcolor" type="text" id="bgcolor" value="" size="9" maxlength="7"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{$lang_insert_table_class}:</td>
|
|
||||||
<td>
|
|
||||||
<select name="styleSelect">
|
|
||||||
<option value="" selected>-- {$lang_theme_style_select} --</option>
|
|
||||||
</select></td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertTable();"></td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
<td align="right"><input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="cancelAction();"></td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@@ -1,52 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{$lang_insert_anchor_title}</title>
|
|
||||||
<script language="javascript" src="../../tiny_mce_popup.js"></script>
|
|
||||||
<script language="javascript">
|
|
||||||
// Disable auto resize
|
|
||||||
tinyMCE.getWindowArg('mce_windowresize', false);
|
|
||||||
|
|
||||||
function init() {
|
|
||||||
document.forms[0].anchorName.value = tinyMCE.getWindowArg('name');
|
|
||||||
document.forms[0].insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('action'), 'Insert', true);
|
|
||||||
|
|
||||||
// Autoresize and focus
|
|
||||||
TinyMCEPopup_autoResize();
|
|
||||||
window.focus();
|
|
||||||
}
|
|
||||||
|
|
||||||
function insertAnchor() {
|
|
||||||
if (window.opener) {
|
|
||||||
tinyMCE.execInstanceCommand(tinyMCE.getWindowArg('editor_id'), 'mceAnchor', false, document.forms[0].anchorName.value);
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function cancelAction() {
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="init();">
|
|
||||||
<form onsubmit="insertAnchor();return false;">
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="200">
|
|
||||||
<tr>
|
|
||||||
<td align="center" valign="middle"><table border="0" cellpadding="4" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" class="title">{$lang_insert_anchor_title}</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">{$lang_insert_anchor_name}:</td>
|
|
||||||
<td><input name="anchorName" type="text" id="anchorName" value="" style="width: 200px"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertAnchor();">
|
|
||||||
</td>
|
|
||||||
<td align="right"><input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="cancelAction();"></td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@@ -1,380 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{$lang_theme_charmap_title}</title>
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
|
||||||
<script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
<!--
|
|
||||||
var charmap = new Array();
|
|
||||||
|
|
||||||
// for mor details please see w3c.org
|
|
||||||
// now here is the complete list ;)
|
|
||||||
|
|
||||||
charmap = [
|
|
||||||
[' ', ' ', true, 'no-break space'],
|
|
||||||
['&', '&', true, 'ampersand'],
|
|
||||||
['"', '"', true, 'quotation mark'],
|
|
||||||
// finance
|
|
||||||
['¢', '¢', true, 'cent sign'],
|
|
||||||
['€', '€', true, 'euro sign'],
|
|
||||||
['£', '£', true, 'pound sign'],
|
|
||||||
['¥', '¥', true, 'yen sign'],
|
|
||||||
// signs
|
|
||||||
['©', '©', true, 'copyright sign'],
|
|
||||||
['®', '®', true, 'registered sign'],
|
|
||||||
['™', '™', true, 'trade mark sign'],
|
|
||||||
['‰', '‰', true, 'per mille sign'],
|
|
||||||
['µ', 'µ', true, 'micro sign'],
|
|
||||||
['·', '·', true, 'middle dot'],
|
|
||||||
['•', '•', true, 'bullet'],
|
|
||||||
['…', '…', true, 'three dot leader'],
|
|
||||||
['′', '′', true, 'minutes / feet'],
|
|
||||||
['″', '″', true, 'seconds / inches'],
|
|
||||||
['§', '§', true, 'section sign'],
|
|
||||||
['¶', '¶', true, 'paragraph sign'],
|
|
||||||
['ß', 'ß', true, 'sharp s / ess-zed'],
|
|
||||||
// quotations
|
|
||||||
['‹', '‹', true, 'single left-pointing angle quotation mark'],
|
|
||||||
['›', '›', true, 'single right-pointing angle quotation mark'],
|
|
||||||
['«', '«', true, 'left pointing guillemet'],
|
|
||||||
['»', '»', true, 'right pointing guillemet'],
|
|
||||||
['‘', '‘', true, 'left single quotation mark'],
|
|
||||||
['’', '’', true, 'right single quotation mark'],
|
|
||||||
['“', '“', true, 'left double quotation mark'],
|
|
||||||
['”', '”', true, 'right double quotation mark'],
|
|
||||||
['‚', '‚', true, 'single low-9 quotation mark'],
|
|
||||||
['„', '„', true, 'double low-9 quotation mark'],
|
|
||||||
['<', '<', true, 'less-than sign'],
|
|
||||||
['>', '>', true, 'greater-than sign'],
|
|
||||||
['≤', '≤', true, 'less-than or equal to'],
|
|
||||||
['≥', '≥', true, 'greater-than or equal to'],
|
|
||||||
['–', '–', true, 'en dash'],
|
|
||||||
['—', '—', true, 'em dash'],
|
|
||||||
['¯', '¯', true, 'macron'],
|
|
||||||
['‾', '‾', true, 'overline'],
|
|
||||||
['¤', '¤', true, 'currency sign'],
|
|
||||||
['¦', '¦', true, 'broken bar'],
|
|
||||||
['¨', '¨', true, 'diaeresis'],
|
|
||||||
['¡', '¡', true, 'inverted exclamation mark'],
|
|
||||||
['¿', '¿', true, 'turned question mark'],
|
|
||||||
['ˆ', 'ˆ', true, 'circumflex accent'],
|
|
||||||
['˜', '˜', true, 'small tilde'],
|
|
||||||
['°', '°', true, 'degree sign'],
|
|
||||||
['−', '−', true, 'minus sign'],
|
|
||||||
['±', '±', true, 'plus-minus sign'],
|
|
||||||
['÷', '÷', true, 'division sign'],
|
|
||||||
['⁄', '⁄', true, 'fraction slash'],
|
|
||||||
['×', '×', true, 'multiplication sign'],
|
|
||||||
['¹', '¹', true, 'superscript one'],
|
|
||||||
['²', '²', true, 'superscript two'],
|
|
||||||
['³', '³', true, 'superscript three'],
|
|
||||||
['¼', '¼', true, 'fraction one quarter'],
|
|
||||||
['½', '½', true, 'fraction one half'],
|
|
||||||
['¾', '¾', true, 'fraction three quarters'],
|
|
||||||
// math / logical
|
|
||||||
['ƒ', 'ƒ', true, 'function / florin'],
|
|
||||||
['∫', '∫', true, 'integral'],
|
|
||||||
['∑', '∑', true, 'n-ary sumation'],
|
|
||||||
['∞', '∞', true, 'infinity'],
|
|
||||||
['√', '√', true, 'square root'],
|
|
||||||
['∼', '∼', false,'similar to'],
|
|
||||||
['≅', '≅', false,'approximately equal to'],
|
|
||||||
['≈', '≈', true, 'almost equal to'],
|
|
||||||
['≠', '≠', true, 'not equal to'],
|
|
||||||
['≡', '≡', true, 'identical to'],
|
|
||||||
['∈', '∈', false,'element of'],
|
|
||||||
['∉', '∉', false,'not an element of'],
|
|
||||||
['∋', '∋', false,'contains as member'],
|
|
||||||
['∏', '∏', true, 'n-ary product'],
|
|
||||||
['∧', '∧', false,'logical and'],
|
|
||||||
['∨', '∨', false,'logical or'],
|
|
||||||
['¬', '¬', true, 'not sign'],
|
|
||||||
['∩', '∩', true, 'intersection'],
|
|
||||||
['∪', '∪', false,'union'],
|
|
||||||
['∂', '∂', true, 'partial differential'],
|
|
||||||
['∀', '∀', false,'for all'],
|
|
||||||
['∃', '∃', false,'there exists'],
|
|
||||||
['∅', '∅', false,'diameter'],
|
|
||||||
['∇', '∇', false,'backward difference'],
|
|
||||||
['∗', '∗', false,'asterisk operator'],
|
|
||||||
['∝', '∝', false,'proportional to'],
|
|
||||||
['∠', '∠', false,'angle'],
|
|
||||||
// undefined
|
|
||||||
['´', '´', true, 'acute accent'],
|
|
||||||
['¸', '¸', true, 'cedilla'],
|
|
||||||
['ª', 'ª', true, 'feminine ordinal indicator'],
|
|
||||||
['º', 'º', true, 'masculine ordinal indicator'],
|
|
||||||
['†', '†', true, 'dagger'],
|
|
||||||
['‡', '‡', true, 'double dagger'],
|
|
||||||
// alphabetical special chars
|
|
||||||
['À', 'À', true, 'A - grave'],
|
|
||||||
['Á', 'Á', true, 'A - acute'],
|
|
||||||
['Â', 'Â', true, 'A - circumflex'],
|
|
||||||
['Ã', 'Ã', true, 'A - tilde'],
|
|
||||||
['Ä', 'Ä', true, 'A - diaeresis'],
|
|
||||||
['Å', 'Å', true, 'A - ring above'],
|
|
||||||
['Æ', 'Æ', true, 'ligature AE'],
|
|
||||||
['Ç', 'Ç', true, 'C - cedilla'],
|
|
||||||
['È', 'È', true, 'E - grave'],
|
|
||||||
['É', 'É', true, 'E - acute'],
|
|
||||||
['Ê', 'Ê', true, 'E - circumflex'],
|
|
||||||
['Ë', 'Ë', true, 'E - diaeresis'],
|
|
||||||
['Ì', 'Ì', true, 'I - grave'],
|
|
||||||
['Í', 'Í', true, 'I - acute'],
|
|
||||||
['Î', 'Î', true, 'I - circumflex'],
|
|
||||||
['Ï', 'Ï', true, 'I - diaeresis'],
|
|
||||||
['Ð', 'Ð', true, 'ETH'],
|
|
||||||
['Ñ', 'Ñ', true, 'N - tilde'],
|
|
||||||
['Ò', 'Ò', true, 'O - grave'],
|
|
||||||
['Ó', 'Ó', true, 'O - acute'],
|
|
||||||
['Ô', 'Ô', true, 'O - circumflex'],
|
|
||||||
['Õ', 'Õ', true, 'O - tilde'],
|
|
||||||
['Ö', 'Ö', true, 'O - diaeresis'],
|
|
||||||
['Ø', 'Ø', true, 'O - slash'],
|
|
||||||
['Œ', 'Œ', true, 'ligature OE'],
|
|
||||||
['Š', 'Š', true, 'S - caron'],
|
|
||||||
['Ù', 'Ù', true, 'U - grave'],
|
|
||||||
['Ú', 'Ú', true, 'U - acute'],
|
|
||||||
['Û', 'Û', true, 'U - circumflex'],
|
|
||||||
['Ü', 'Ü', true, 'U - diaeresis'],
|
|
||||||
['Ý', 'Ý', true, 'Y - acute'],
|
|
||||||
['Ÿ', 'Ÿ', true, 'Y - diaeresis'],
|
|
||||||
['Þ', 'Þ', true, 'THORN'],
|
|
||||||
['à', 'à', true, 'a - grave'],
|
|
||||||
['á', 'á', true, 'a - acute'],
|
|
||||||
['â', 'â', true, 'a - circumflex'],
|
|
||||||
['ã', 'ã', true, 'a - tilde'],
|
|
||||||
['ä', 'ä', true, 'a - diaeresis'],
|
|
||||||
['å', 'å', true, 'a - ring above'],
|
|
||||||
['æ', 'æ', true, 'ligature ae'],
|
|
||||||
['ç', 'ç', true, 'c - cedilla'],
|
|
||||||
['è', 'è', true, 'e - grave'],
|
|
||||||
['é', 'é', true, 'e - acute'],
|
|
||||||
['ê', 'ê', true, 'e - circumflex'],
|
|
||||||
['ë', 'ë', true, 'e - diaeresis'],
|
|
||||||
['ì', 'ì', true, 'i - grave'],
|
|
||||||
['í', 'í', true, 'i - acute'],
|
|
||||||
['î', 'î', true, 'i - circumflex'],
|
|
||||||
['ï', 'ï', true, 'i - diaeresis'],
|
|
||||||
['ð', 'ð', true, 'eth'],
|
|
||||||
['ñ', 'ñ', true, 'n - tilde'],
|
|
||||||
['ò', 'ò', true, 'o - grave'],
|
|
||||||
['ó', 'ó', true, 'o - acute'],
|
|
||||||
['ô', 'ô', true, 'o - circumflex'],
|
|
||||||
['õ', 'õ', true, 'o - tilde'],
|
|
||||||
['ö', 'ö', true, 'o - diaeresis'],
|
|
||||||
['ø', 'ø', true, 'o slash'],
|
|
||||||
['œ', 'œ', true, 'ligature oe'],
|
|
||||||
['š', 'š', true, 's - caron'],
|
|
||||||
['ù', 'ù', true, 'u - grave'],
|
|
||||||
['ú', 'ú', true, 'u - acute'],
|
|
||||||
['û', 'û', true, 'u - circumflex'],
|
|
||||||
['ü', 'ü', true, 'u - diaeresis'],
|
|
||||||
['ý', 'ý', true, 'y - acute'],
|
|
||||||
['þ', 'þ', true, 'thorn'],
|
|
||||||
['ÿ', 'ÿ', true, 'y - diaeresis'],
|
|
||||||
// ['Α', 'Α', true, 'Alpha'],
|
|
||||||
['Β', 'Β', true, 'Beta'],
|
|
||||||
['Γ', 'Γ', true, 'Gamma'],
|
|
||||||
['Δ', 'Δ', true, 'Delta'],
|
|
||||||
['Ε', 'Ε', true, 'Epsilon'],
|
|
||||||
['Ζ', 'Ζ', true, 'Zeta'],
|
|
||||||
['Η', 'Η', true, 'Eta'],
|
|
||||||
['Θ', 'Θ', true, 'Theta'],
|
|
||||||
['Ι', 'Ι', true, 'Iota'],
|
|
||||||
['Κ', 'Κ', true, 'Kappa'],
|
|
||||||
['Λ', 'Λ', true, 'Lambda'],
|
|
||||||
['Μ', 'Μ', true, 'Mu'],
|
|
||||||
['Ν', 'Ν', true, 'Nu'],
|
|
||||||
['Ξ', 'Ξ', true, 'Xi'],
|
|
||||||
['Ο', 'Ο', true, 'Omicron'],
|
|
||||||
['Π', 'Π', true, 'Pi'],
|
|
||||||
['Ρ', 'Ρ', true, 'Rho'],
|
|
||||||
['Σ', 'Σ', true, 'Sigma'],
|
|
||||||
['Τ', 'Τ', true, 'Tau'],
|
|
||||||
['Υ', 'Υ', true, 'Upsilon'],
|
|
||||||
['Φ', 'Φ', true, 'Phi'],
|
|
||||||
['Χ', 'Χ', true, 'Chi'],
|
|
||||||
['Ψ', 'Ψ', true, 'Psi'],
|
|
||||||
['Ω', 'Ω', true, 'Omega'],
|
|
||||||
['α', 'α', true, 'alpha'],
|
|
||||||
['β', 'β', true, 'beta'],
|
|
||||||
['γ', 'γ', true, 'gamma'],
|
|
||||||
['δ', 'δ', true, 'delta'],
|
|
||||||
['ε', 'ε', true, 'epsilon'],
|
|
||||||
['ζ', 'ζ', true, 'zeta'],
|
|
||||||
['η', 'η', true, 'eta'],
|
|
||||||
['θ', 'θ', true, 'theta'],
|
|
||||||
['ι', 'ι', true, 'iota'],
|
|
||||||
['κ', 'κ', true, 'kappa'],
|
|
||||||
['λ', 'λ', true, 'lambda'],
|
|
||||||
['μ', 'μ', true, 'mu'],
|
|
||||||
['ν', 'ν', true, 'nu'],
|
|
||||||
['ξ', 'ξ', true, 'xi'],
|
|
||||||
['ο', 'ο', true, 'omicron'],
|
|
||||||
['π', 'π', true, 'pi'],
|
|
||||||
['ρ', 'ρ', true, 'rho'],
|
|
||||||
['ς', 'ς', true, 'final sigma'],
|
|
||||||
['σ', 'σ', true, 'sigma'],
|
|
||||||
['τ', 'τ', true, 'tau'],
|
|
||||||
['υ', 'υ', true, 'upsilon'],
|
|
||||||
['φ', 'φ', true, 'phi'],
|
|
||||||
['χ', 'χ', true, 'chi'],
|
|
||||||
['ψ', 'ψ', true, 'psi'],
|
|
||||||
['ω', 'ω', true, 'omega'],
|
|
||||||
// symbols
|
|
||||||
['ℵ', 'ℵ', false,'alef symbol'],
|
|
||||||
['ϖ', 'ϖ', false,'pi symbol'],
|
|
||||||
['ℜ', 'ℜ', false,'real part symbol'],
|
|
||||||
['ϑ','ϑ', false,'theta symbol'],
|
|
||||||
['ϒ', 'ϒ', false,'upsilon - hook symbol'],
|
|
||||||
['℘', '℘', false,'Weierstrass p'],
|
|
||||||
['ℑ', 'ℑ', false,'imaginary part'],
|
|
||||||
// arrows
|
|
||||||
['←', '←', true, 'leftwards arrow'],
|
|
||||||
['↑', '↑', true, 'upwards arrow'],
|
|
||||||
['→', '→', true, 'rightwards arrow'],
|
|
||||||
['↓', '↓', true, 'downwards arrow'],
|
|
||||||
['↔', '↔', true, 'left right arrow'],
|
|
||||||
['↵', '↵', false,'carriage return'],
|
|
||||||
['⇐', '⇐', false,'leftwards double arrow'],
|
|
||||||
['⇑', '⇑', false,'upwards double arrow'],
|
|
||||||
['⇒', '⇒', false,'rightwards double arrow'],
|
|
||||||
['⇓', '⇓', false,'downwards double arrow'],
|
|
||||||
['⇔', '⇔', false,'left right double arrow'],
|
|
||||||
['∴', '∴', false,'therefore'],
|
|
||||||
['⊂', '⊂', false,'subset of'],
|
|
||||||
['⊃', '⊃', false,'superset of'],
|
|
||||||
['⊄', '⊄', false,'not a subset of'],
|
|
||||||
['⊆', '⊆', false,'subset of or equal to'],
|
|
||||||
['⊇', '⊇', false,'superset of or equal to'],
|
|
||||||
['⊕', '⊕', false,'circled plus'],
|
|
||||||
['⊗', '⊗', false,'circled times'],
|
|
||||||
['⊥', '⊥', false,'perpendicular'],
|
|
||||||
['⋅', '⋅', false,'dot operator'],
|
|
||||||
['⌈', '⌈', false,'left ceiling'],
|
|
||||||
['⌉', '⌉', false,'right ceiling'],
|
|
||||||
['⌊', '⌊', false,'left floor'],
|
|
||||||
['⌋', '⌋', false,'right floor'],
|
|
||||||
['⟨', '〈', false,'left-pointing angle bracket'],
|
|
||||||
['⟩', '〉', false,'right-pointing angle bracket'],
|
|
||||||
['◊', '◊', true,'lozenge'],
|
|
||||||
['♠', '♠', false,'black spade suit'],
|
|
||||||
['♣', '♣', true, 'black club suit'],
|
|
||||||
['♥', '♥', true, 'black heart suit'],
|
|
||||||
['♦', '♦', true, 'black diamond suit'],
|
|
||||||
[' ', ' ', false,'en space'],
|
|
||||||
[' ', ' ', false,'em space'],
|
|
||||||
[' ', ' ', false,'thin space'],
|
|
||||||
['‌', '‌', false,'zero width non-joiner'],
|
|
||||||
['‍', '‍', false,'zero width joiner'],
|
|
||||||
['‎', '‎', false,'left-to-right mark'],
|
|
||||||
['‏', '‏', false,'right-to-left mark'],
|
|
||||||
['­', '­', false,'soft hyphen']
|
|
||||||
];
|
|
||||||
|
|
||||||
function renderCharMapHTML() {
|
|
||||||
var charsPerRow = 20, tdWidth=20, tdHeight=20;
|
|
||||||
var html = '<table border="0" cellspacing="1" cellpadding="0" width="' + (tdWidth*charsPerRow) + '"><tr height="' + tdHeight + '">';
|
|
||||||
var cols=-1;
|
|
||||||
for (var i=0; i<charmap.length; i++) {
|
|
||||||
if (charmap[i][2]==true) {
|
|
||||||
cols++;
|
|
||||||
html += ''
|
|
||||||
+ '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap"'
|
|
||||||
+ ' onmouseover="tinyMCE.switchClass(this,\'charmapOver\');'
|
|
||||||
+ 'previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');"'
|
|
||||||
+ ' onmouseout="tinyMCE.restoreClass(this,\'charmapOver\');"'
|
|
||||||
+ ' onclick="insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');return false;"'
|
|
||||||
+ ' title="' + charmap[i][3] + '" nowrap="nowrap">'
|
|
||||||
+ charmap[i][1]
|
|
||||||
+ '</td>';
|
|
||||||
if ((cols+1) % charsPerRow == 0)
|
|
||||||
html += '</tr><tr height="' + tdHeight + '">';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (cols % charsPerRow > 0) {
|
|
||||||
var padd = charsPerRow - (cols % charsPerRow);
|
|
||||||
for (var i=0; i<padd-1; i++)
|
|
||||||
html += '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap"> </td>';
|
|
||||||
}
|
|
||||||
html += '</tr></table>';
|
|
||||||
document.write(html);
|
|
||||||
}
|
|
||||||
|
|
||||||
function insertChar(chr) {
|
|
||||||
tinyMCE.execInstanceCommand(tinyMCE.getWindowArg('editor_id'), 'mceInsertContent', false, '\&#' + chr + ';');
|
|
||||||
//window.close();
|
|
||||||
self.focus();
|
|
||||||
}
|
|
||||||
|
|
||||||
function previewChar(codeA, codeB, codeN) {
|
|
||||||
var elmA = document.getElementById('codeA');
|
|
||||||
var elmB = document.getElementById('codeB');
|
|
||||||
var elmV = document.getElementById('codeV');
|
|
||||||
var elmN = document.getElementById('codeN');
|
|
||||||
|
|
||||||
if (codeA=='#160;') {
|
|
||||||
elmV.innerHTML = '__';
|
|
||||||
} else {
|
|
||||||
elmV.innerHTML = '&' + codeA;
|
|
||||||
}
|
|
||||||
|
|
||||||
elmB.innerHTML = '&' + codeA;
|
|
||||||
elmA.innerHTML = '&' + codeB;
|
|
||||||
elmN.innerHTML = codeN;
|
|
||||||
}
|
|
||||||
|
|
||||||
window.focus();
|
|
||||||
//-->
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table align="center" border="0" cellspacing="0" cellpadding="2">
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" class="title">{$lang_theme_charmap_title}</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td rowspan="2" align="left" valign="top">
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
<!--
|
|
||||||
renderCharMapHTML();
|
|
||||||
//-->
|
|
||||||
</script>
|
|
||||||
</td>
|
|
||||||
<td width="100" align="center" valign="top">
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100" height="100">
|
|
||||||
<tr>
|
|
||||||
<td class="charmapOver" style="font-size: 40px; height:80px;" id="codeV"> </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="font-size: 10px; font-family: Arial, Helvetica, sans-serif; text-align:center;" id="codeN"> </td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td valign="bottom" style="padding-bottom: 3px;">
|
|
||||||
<table width="100" align="center" border="0" cellpadding="2" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td align="center" style="border-left: 1px solid #666699; border-top: 1px solid #666699; border-right: 1px solid #666699;">HTML-Code</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="font-size: 16px; font-weight: bold; border-left: 1px solid #666699; border-bottom: 1px solid #666699; border-right: 1px solid #666699;" id="codeA" align="center"> </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="font-size: 1px;"> </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center" style="border-left: 1px solid #666699; border-top: 1px solid #666699; border-right: 1px solid #666699;">NUM-Code</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="font-size: 16px; font-weight: bold; border-left: 1px solid #666699; border-bottom: 1px solid #666699; border-right: 1px solid #666699;" id="codeB" align="center"> </td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@@ -1,272 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{$lang_theme_colorpicker_title}</title>
|
|
||||||
<script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
<!--
|
|
||||||
function selectColor() {
|
|
||||||
var color = document.getElementById("selectedColorBox").value;
|
|
||||||
if (window.opener)
|
|
||||||
window.opener.tinyMCE.execInstanceCommand(tinyMCE.getWindowArg('editor_id'),tinyMCE.getWindowArg('command'),false,color);
|
|
||||||
window.close();
|
|
||||||
}
|
|
||||||
function showColor(color) {
|
|
||||||
document.getElementById("selectedColor").style.backgroundColor = color;
|
|
||||||
document.getElementById("selectedColorBox").value = color;
|
|
||||||
}
|
|
||||||
|
|
||||||
window.focus();
|
|
||||||
|
|
||||||
var colorPicker = "";
|
|
||||||
var colors = new Array(
|
|
||||||
"#000000",
|
|
||||||
"#000033",
|
|
||||||
"#000066",
|
|
||||||
"#000099",
|
|
||||||
"#0000cc",
|
|
||||||
"#0000ff",
|
|
||||||
"#330000",
|
|
||||||
"#330033",
|
|
||||||
"#330066",
|
|
||||||
"#330099",
|
|
||||||
"#3300cc",
|
|
||||||
"#3300ff",
|
|
||||||
"#660000",
|
|
||||||
"#660033",
|
|
||||||
"#660066",
|
|
||||||
"#660099",
|
|
||||||
"#6600cc",
|
|
||||||
"#6600ff",
|
|
||||||
"#990000",
|
|
||||||
"#990033",
|
|
||||||
"#990066",
|
|
||||||
"#990099",
|
|
||||||
"#9900cc",
|
|
||||||
"#9900ff",
|
|
||||||
"#cc0000",
|
|
||||||
"#cc0033",
|
|
||||||
"#cc0066",
|
|
||||||
"#cc0099",
|
|
||||||
"#cc00cc",
|
|
||||||
"#cc00ff",
|
|
||||||
"#ff0000",
|
|
||||||
"#ff0033",
|
|
||||||
"#ff0066",
|
|
||||||
"#ff0099",
|
|
||||||
"#ff00cc",
|
|
||||||
"#ff00ff",
|
|
||||||
"#003300",
|
|
||||||
"#003333",
|
|
||||||
"#003366",
|
|
||||||
"#003399",
|
|
||||||
"#0033cc",
|
|
||||||
"#0033ff",
|
|
||||||
"#333300",
|
|
||||||
"#333333",
|
|
||||||
"#333366",
|
|
||||||
"#333399",
|
|
||||||
"#3333cc",
|
|
||||||
"#3333ff",
|
|
||||||
"#663300",
|
|
||||||
"#663333",
|
|
||||||
"#663366",
|
|
||||||
"#663399",
|
|
||||||
"#6633cc",
|
|
||||||
"#6633ff",
|
|
||||||
"#993300",
|
|
||||||
"#993333",
|
|
||||||
"#993366",
|
|
||||||
"#993399",
|
|
||||||
"#9933cc",
|
|
||||||
"#9933ff",
|
|
||||||
"#cc3300",
|
|
||||||
"#cc3333",
|
|
||||||
"#cc3366",
|
|
||||||
"#cc3399",
|
|
||||||
"#cc33cc",
|
|
||||||
"#cc33ff",
|
|
||||||
"#ff3300",
|
|
||||||
"#ff3333",
|
|
||||||
"#ff3366",
|
|
||||||
"#ff3399",
|
|
||||||
"#ff33cc",
|
|
||||||
"#ff33ff",
|
|
||||||
"#006600",
|
|
||||||
"#006633",
|
|
||||||
"#006666",
|
|
||||||
"#006699",
|
|
||||||
"#0066cc",
|
|
||||||
"#0066ff",
|
|
||||||
"#336600",
|
|
||||||
"#336633",
|
|
||||||
"#336666",
|
|
||||||
"#336699",
|
|
||||||
"#3366cc",
|
|
||||||
"#3366ff",
|
|
||||||
"#666600",
|
|
||||||
"#666633",
|
|
||||||
"#666666",
|
|
||||||
"#666699",
|
|
||||||
"#6666cc",
|
|
||||||
"#6666ff",
|
|
||||||
"#996600",
|
|
||||||
"#996633",
|
|
||||||
"#996666",
|
|
||||||
"#996699",
|
|
||||||
"#9966cc",
|
|
||||||
"#9966ff",
|
|
||||||
"#cc6600",
|
|
||||||
"#cc6633",
|
|
||||||
"#cc6666",
|
|
||||||
"#cc6699",
|
|
||||||
"#cc66cc",
|
|
||||||
"#cc66ff",
|
|
||||||
"#ff6600",
|
|
||||||
"#ff6633",
|
|
||||||
"#ff6666",
|
|
||||||
"#ff6699",
|
|
||||||
"#ff66cc",
|
|
||||||
"#ff66ff",
|
|
||||||
"#009900",
|
|
||||||
"#009933",
|
|
||||||
"#009966",
|
|
||||||
"#009999",
|
|
||||||
"#0099cc",
|
|
||||||
"#0099ff",
|
|
||||||
"#339900",
|
|
||||||
"#339933",
|
|
||||||
"#339966",
|
|
||||||
"#339999",
|
|
||||||
"#3399cc",
|
|
||||||
"#3399ff",
|
|
||||||
"#669900",
|
|
||||||
"#669933",
|
|
||||||
"#669966",
|
|
||||||
"#669999",
|
|
||||||
"#6699cc",
|
|
||||||
"#6699ff",
|
|
||||||
"#999900",
|
|
||||||
"#999933",
|
|
||||||
"#999966",
|
|
||||||
"#999999",
|
|
||||||
"#9999cc",
|
|
||||||
"#9999ff",
|
|
||||||
"#cc9900",
|
|
||||||
"#cc9933",
|
|
||||||
"#cc9966",
|
|
||||||
"#cc9999",
|
|
||||||
"#cc99cc",
|
|
||||||
"#cc99ff",
|
|
||||||
"#ff9900",
|
|
||||||
"#ff9933",
|
|
||||||
"#ff9966",
|
|
||||||
"#ff9999",
|
|
||||||
"#ff99cc",
|
|
||||||
"#ff99ff",
|
|
||||||
"#00cc00",
|
|
||||||
"#00cc33",
|
|
||||||
"#00cc66",
|
|
||||||
"#00cc99",
|
|
||||||
"#00cccc",
|
|
||||||
"#00ccff",
|
|
||||||
"#33cc00",
|
|
||||||
"#33cc33",
|
|
||||||
"#33cc66",
|
|
||||||
"#33cc99",
|
|
||||||
"#33cccc",
|
|
||||||
"#33ccff",
|
|
||||||
"#66cc00",
|
|
||||||
"#66cc33",
|
|
||||||
"#66cc66",
|
|
||||||
"#66cc99",
|
|
||||||
"#66cccc",
|
|
||||||
"#66ccff",
|
|
||||||
"#99cc00",
|
|
||||||
"#99cc33",
|
|
||||||
"#99cc66",
|
|
||||||
"#99cc99",
|
|
||||||
"#99cccc",
|
|
||||||
"#99ccff",
|
|
||||||
"#cccc00",
|
|
||||||
"#cccc33",
|
|
||||||
"#cccc66",
|
|
||||||
"#cccc99",
|
|
||||||
"#cccccc",
|
|
||||||
"#ccccff",
|
|
||||||
"#ffcc00",
|
|
||||||
"#ffcc33",
|
|
||||||
"#ffcc66",
|
|
||||||
"#ffcc99",
|
|
||||||
"#ffcccc",
|
|
||||||
"#ffccff",
|
|
||||||
"#00ff00",
|
|
||||||
"#00ff33",
|
|
||||||
"#00ff66",
|
|
||||||
"#00ff99",
|
|
||||||
"#00ffcc",
|
|
||||||
"#00ffff",
|
|
||||||
"#33ff00",
|
|
||||||
"#33ff33",
|
|
||||||
"#33ff66",
|
|
||||||
"#33ff99",
|
|
||||||
"#33ffcc",
|
|
||||||
"#33ffff",
|
|
||||||
"#66ff00",
|
|
||||||
"#66ff33",
|
|
||||||
"#66ff66",
|
|
||||||
"#66ff99",
|
|
||||||
"#66ffcc",
|
|
||||||
"#66ffff",
|
|
||||||
"#99ff00",
|
|
||||||
"#99ff33",
|
|
||||||
"#99ff66",
|
|
||||||
"#99ff99",
|
|
||||||
"#99ffcc",
|
|
||||||
"#99ffff",
|
|
||||||
"#ccff00",
|
|
||||||
"#ccff33",
|
|
||||||
"#ccff66",
|
|
||||||
"#ccff99",
|
|
||||||
"#ccffcc",
|
|
||||||
"#ccffff",
|
|
||||||
"#ffff00",
|
|
||||||
"#ffff33",
|
|
||||||
"#ffff66",
|
|
||||||
"#ffff99",
|
|
||||||
"#ffffcc",
|
|
||||||
"#ffffff"
|
|
||||||
);
|
|
||||||
|
|
||||||
colorPicker += '<table border="0" cellspacing="1" cellpadding="0">'
|
|
||||||
+ '<tr>';
|
|
||||||
for (var i=0; i<colors.length; i++) {
|
|
||||||
colorPicker += '<td bgcolor="' + colors[i] + '">'
|
|
||||||
+ '<a href="#top" onclick="selectColor();return false;" onmouseover="showColor(\'' + colors[i] + '\');">'
|
|
||||||
+ '<img border="0" src="images/spacer.gif" width="10" height="10" /></a></td>';
|
|
||||||
if ((i+1) % 18 == 0)
|
|
||||||
colorPicker += '</tr><tr>';
|
|
||||||
}
|
|
||||||
colorPicker += '<tr><td colspan="18">'
|
|
||||||
+ '<table width="100%" border="0" cellspacing="0" cellpadding="0">'
|
|
||||||
+ '<tr><td>'
|
|
||||||
+ '<img id="selectedColor" style="background-color:' + tinyMCE.getWindowArg('input_color') + '" border="0" src="images/spacer.gif" width="80" height="16" />'
|
|
||||||
+ '</td><td align="right">'
|
|
||||||
+ '<input id="selectedColorBox" name="selectedColorBox" type="text" size="7" maxlength="7" style="width:65px" value="' + tinyMCE.getWindowArg('input_color') + '" />'
|
|
||||||
+ '</td></tr>'
|
|
||||||
+ '</table>'
|
|
||||||
+ '<input type="button" id="insert" name="insert" value="{$lang_theme_colorpicker_apply}" style="margin-top:3px" onclick="selectColor();">'
|
|
||||||
+ '</td></tr>'
|
|
||||||
+ '</table>';
|
|
||||||
//-->
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body marginheight="3" topmargin="3" leftmargin="3" marginwidth="3">
|
|
||||||
<div align="center">
|
|
||||||
<script language="javascript" type="text/javascript">
|
|
||||||
<!--
|
|
||||||
document.write(colorPicker);
|
|
||||||
//-->
|
|
||||||
</script>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@@ -1,32 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<TITLE>About TinyMCE</TITLE>
|
|
||||||
<link href="style.css" rel="stylesheet" type="text/css">
|
|
||||||
</HEAD>
|
|
||||||
|
|
||||||
<BODY>
|
|
||||||
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">
|
|
||||||
<tr>
|
|
||||||
<td><span class="title">About TinyMCE</span></td>
|
|
||||||
<td align="right"><a href="index.htm">TOC</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr noshade>
|
|
||||||
<br>
|
|
||||||
TinyMCE is a small WYSIWYG editor control for web browsers such as MSIE or Mozilla
|
|
||||||
that enables you to edit HTML contents in a more user friendly way. It has common
|
|
||||||
features that are found in most word processors and should not be difficult to
|
|
||||||
use.<br>
|
|
||||||
<br>
|
|
||||||
<hr noshade>
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">
|
|
||||||
<tr>
|
|
||||||
<td>Go to: <a href="index.htm">Table of contents</a></td>
|
|
||||||
<td align="right"><a href="#">Top</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,163 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<TITLE>Common buttons</TITLE>
|
|
||||||
<link href="style.css" rel="stylesheet" type="text/css">
|
|
||||||
</HEAD>
|
|
||||||
|
|
||||||
<BODY>
|
|
||||||
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">
|
|
||||||
<tr>
|
|
||||||
<td><span class="title">Common buttons</span></td>
|
|
||||||
<td align="right"><a href="index.htm">TOC</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr noshade>
|
|
||||||
<br>
|
|
||||||
Below is a short description about each button.<img src="../../images/spacer.gif" width="1" height="1">
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<table border="1" cellpadding="3" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/bold.gif" width="20" height="20"></td>
|
|
||||||
<td>Bold text style.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/italic.gif" width="20" height="20"></td>
|
|
||||||
<td>Italic text style.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/underline.gif" width="20" height="20"></td>
|
|
||||||
<td>Underline text style.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/strikethrough.gif" width="20" height="20"></td>
|
|
||||||
<td>Strikethrough text style.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/left.gif" width="20" height="20"></td>
|
|
||||||
<td>Align left.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/center.gif" width="20" height="20"></td>
|
|
||||||
<td>Align center.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/right.gif" width="20" height="20"></td>
|
|
||||||
<td>Align right.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/full.gif" width="20" height="20"></td>
|
|
||||||
<td>Align full.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/bullist.gif" width="20" height="20"></td>
|
|
||||||
<td>Unordered list/bullet list.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/numlist.gif" width="20" height="20"></td>
|
|
||||||
<td>Ordered list/numbered list</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/outdent.gif" width="20" height="20"></td>
|
|
||||||
<td>Outdent/decrease indentation.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/indent.gif" width="20" height="20"></td>
|
|
||||||
<td>Indent/incread indentation.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/undo.gif" width="20" height="20"></td>
|
|
||||||
<td>Undo the last operation.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/redo.gif" width="20" height="20"></td>
|
|
||||||
<td>Redo the last operation.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/link.gif" width="20" height="20"></td>
|
|
||||||
<td>Insert a new link, read more about this function in the <a href="insert_link_button.htm">Insert
|
|
||||||
link section</a>.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/unlink.gif" width="20" height="20"></td>
|
|
||||||
<td>Unlinks the current selection/removes all selected links.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/anchor.gif" width="20" height="20"></td>
|
|
||||||
<td>Insert a new anchor, read more about this function in the <a href="insert_anchor_button.htm">Insert anchor section.</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/image.gif" width="20" height="20"></td>
|
|
||||||
<td>Insert a new image, read more about this function in the <a href="insert_image_button.htm">Insert
|
|
||||||
image section</a>.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/cleanup.gif" width="20" height="20"></td>
|
|
||||||
<td>Cleanup code/Removes unwanted formating. This function is useful when
|
|
||||||
you copy contents from for example a office product.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/help.gif" width="20" height="20"></td>
|
|
||||||
<td>Shows this help window.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/code.gif" width="20" height="20"></td>
|
|
||||||
<td>Opens HTML source code editor. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../images/table.gif" width="20" height="20"></td>
|
|
||||||
<td>Inserts a new 2x2 table at the current location. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../images/table_insert_row_before.gif" width="20" height="20"></td>
|
|
||||||
<td>Adds a row above the current one. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../images/table_insert_row_after.gif" width="20" height="20"></td>
|
|
||||||
<td>Adds a row under the current one. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../images/table_delete_row.gif" width="20" height="20"></td>
|
|
||||||
<td>Removes the row. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../images/table_insert_col_before.gif" width="20" height="20"></td>
|
|
||||||
<td>Adds a column before the current one.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../images/table_insert_col_after.gif" width="20" height="20"></td>
|
|
||||||
<td>Adds a column after the current one.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../images/table_delete_col.gif" width="20" height="20"></td>
|
|
||||||
<td>Removes the current column.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/hr.gif" width="20" height="20"></td>
|
|
||||||
<td>Inserts a new horizontal ruler </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/removeformat.gif" width="20" height="20"></td>
|
|
||||||
<td>Removes formatting from the selection. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/sub.gif" width="20" height="20"></td>
|
|
||||||
<td>Makes the selection to be subscript. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="../../images/sup.gif" width="20" height="20"></td>
|
|
||||||
<td>Makes the selection to be superscripted. </td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<hr noshade>
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">
|
|
||||||
<tr>
|
|
||||||
<td>Go to: <a href="index.htm">Table of contents</a></td>
|
|
||||||
<td align="right"><a href="#">Top</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 6.9 KiB |
@@ -1,27 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<TITLE>Help Index</TITLE>
|
|
||||||
<link href="style.css" rel="stylesheet" type="text/css">
|
|
||||||
</HEAD>
|
|
||||||
<BODY onload="window.focus();">
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">
|
|
||||||
<tr>
|
|
||||||
<td><span class="title">Table of contents</span></td>
|
|
||||||
<td align="right"> </td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr noshade>
|
|
||||||
<br>
|
|
||||||
Click the links below to go to the different help sections.
|
|
||||||
<ul class="toc_ul">
|
|
||||||
<li class="toc_li"><a href="about.htm">About TinyMCE</a></li>
|
|
||||||
<li class="toc_li"><a href="common_buttons.htm">Common buttons</a></li>
|
|
||||||
<li class="toc_li"><a href="insert_image_button.htm">Insert image button</a></li>
|
|
||||||
<li class="toc_li"><a href="insert_link_button.htm">Insert link button</a></li>
|
|
||||||
<li class="toc_li"><a href="insert_anchor_button.htm">Insert anchor button</a></li>
|
|
||||||
<li class="toc_li"><a href="insert_table_button.htm">Insert table button</a></li>
|
|
||||||
</ul>
|
|
||||||
<hr noshade>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,33 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<TITLE>Insert anchor button</TITLE>
|
|
||||||
<link href="style.css" rel="stylesheet" type="text/css">
|
|
||||||
</HEAD>
|
|
||||||
|
|
||||||
<BODY>
|
|
||||||
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">
|
|
||||||
<tr>
|
|
||||||
<td><span class="title">Insert anchor button</span></td>
|
|
||||||
<td align="right"><a href="index.htm">TOC</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr noshade>
|
|
||||||
<br>
|
|
||||||
This button opens a new window with the insert/edit anchor function.<br>
|
|
||||||
<br>
|
|
||||||
<img src="images/insert_anchor_window.gif" width="330" height="139"><br>
|
|
||||||
<br>
|
|
||||||
There are one field in this window, this is where you enter the name of you anchor point. Remember the anchor name needs to be unique. <br>
|
|
||||||
<br>
|
|
||||||
<hr noshade>
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">
|
|
||||||
<tr>
|
|
||||||
<td>Go to: <a href="index.htm">Table of contents</a></td>
|
|
||||||
<td align="right"><a href="#">Top</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,66 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<TITLE>Insert image button</TITLE>
|
|
||||||
<link href="style.css" rel="stylesheet" type="text/css">
|
|
||||||
</HEAD>
|
|
||||||
|
|
||||||
<BODY>
|
|
||||||
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">
|
|
||||||
<tr>
|
|
||||||
<td><span class="title">Insert image button</span></td>
|
|
||||||
<td align="right"><a href="index.htm">TOC</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr noshade>
|
|
||||||
<br>
|
|
||||||
The insert image button opens the window shown below.<br>
|
|
||||||
<br>
|
|
||||||
<img src="images/insert_image_window.gif"><br>
|
|
||||||
<br>
|
|
||||||
You simply enter a URL to the image you want to link to and enter a image description,
|
|
||||||
this is then displayed as an alternative text descripton of the image on the page.<br>
|
|
||||||
<br>
|
|
||||||
<strong>Field descriptions:</strong><br>
|
|
||||||
<table border="1" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td width="150"><strong>Image URL </strong></td>
|
|
||||||
<td>URL/path to the image.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td width="150"><strong>Image description </strong></td>
|
|
||||||
<td>Alternative description of image contents.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Dimentions</strong></td>
|
|
||||||
<td>Image width/height. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Alignment</strong></td>
|
|
||||||
<td>Image alignment, useful when wrapping text around images.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Border</strong></td>
|
|
||||||
<td>Border thickness. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>VSpace</strong></td>
|
|
||||||
<td>Vertical space, useful when wrapping text around images.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>HSpace</strong></td>
|
|
||||||
<td>Horizontal space, useful when wrapping text around images.</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<hr noshade>
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">
|
|
||||||
<tr>
|
|
||||||
<td>Go to: <a href="index.htm">Table of contents</a></td>
|
|
||||||
<td align="right"><a href="#">Top</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,34 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<TITLE>Insert link button</TITLE>
|
|
||||||
<link href="style.css" rel="stylesheet" type="text/css">
|
|
||||||
</HEAD>
|
|
||||||
|
|
||||||
<BODY>
|
|
||||||
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">
|
|
||||||
<tr>
|
|
||||||
<td><span class="title">Insert link button</span></td>
|
|
||||||
<td align="right"><a href="index.htm">TOC</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr noshade>
|
|
||||||
<br>
|
|
||||||
This button opens a new window with the insert/edit link function.<br>
|
|
||||||
<br>
|
|
||||||
<img src="images/insert_link_window.gif" width="330" height="159"><br>
|
|
||||||
<br>
|
|
||||||
There are two fields in this window the first one "Link URL" is the
|
|
||||||
URL of the link. The target enables you to select how the link is to be opened.<br>
|
|
||||||
<br>
|
|
||||||
<hr noshade>
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">
|
|
||||||
<tr>
|
|
||||||
<td>Go to: <a href="index.htm">Table of contents</a></td>
|
|
||||||
<td align="right"><a href="#">Top</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,72 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<TITLE>Insert table button</TITLE>
|
|
||||||
<link href="style.css" rel="stylesheet" type="text/css">
|
|
||||||
</HEAD>
|
|
||||||
|
|
||||||
<BODY>
|
|
||||||
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">
|
|
||||||
<tr>
|
|
||||||
<td><span class="title">Insert table button</span></td>
|
|
||||||
<td align="right"><a href="index.htm">TOC</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr noshade>
|
|
||||||
<br>
|
|
||||||
The insert table button opens the window shown below. This action enables you to create tables. <br>
|
|
||||||
<br>
|
|
||||||
<img src="images/insert_table_window.gif" width="340" height="229"><br>
|
|
||||||
<br>
|
|
||||||
<strong>Field descriptions:</strong><br>
|
|
||||||
<table border="1" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td width="150"><strong>Columns</strong></td>
|
|
||||||
<td>Number of columns in the table. </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td width="150"><strong>Rows</strong></td>
|
|
||||||
<td>Number of rows in the new table.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Cellpadding</strong></td>
|
|
||||||
<td>Cellpadding of the table . </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Cellspacing</strong></td>
|
|
||||||
<td>Cellspacing of the table .</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Alignment</strong></td>
|
|
||||||
<td>Table alignment . </td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Border</strong></td>
|
|
||||||
<td>Border thinkness of table.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Width</strong></td>
|
|
||||||
<td>Width in pixels of table .</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Height</strong></td>
|
|
||||||
<td>Height in pixels of table.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Class</strong></td>
|
|
||||||
<td>Style or CSS class of table.</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<hr noshade>
|
|
||||||
<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">
|
|
||||||
<tr>
|
|
||||||
<td>Go to: <a href="index.htm">Table of contents</a></td>
|
|
||||||
<td align="right"><a href="#">Top</a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,28 +0,0 @@
|
|||||||
body { background-color: #FFFFFF; }
|
|
||||||
body, td, .content { font-family: Verdana, Arial, helvetica, sans-serif; font-size: 12px; }
|
|
||||||
.title { font-family: Verdana, Arial, helvetica, sans-serif; font-size: 16px; font-weight: bold; }
|
|
||||||
.subtitle { font-size: 12px; font-weight: bold; }
|
|
||||||
|
|
||||||
.toc_ul, .toc_li { margin-left: 8 px; line-height: 16px; }
|
|
||||||
.step_ol, .step_li { margin-left: 11 px; line-height: 16px; }
|
|
||||||
img { border: #000000 solid 1px; }
|
|
||||||
|
|
||||||
a:visited { color: #666666; text-decoration: underline; }
|
|
||||||
a:active { color: #666666; text-decoration: underline; }
|
|
||||||
a:hover { color: #666666; text-decoration: underline; }
|
|
||||||
a { color: #666666; text-decoration: underline; }
|
|
||||||
|
|
||||||
.pageheader { border: #E0E0E0 solid 1px; }
|
|
||||||
.pagefooter { border: #E0E0E0 solid 1px; }
|
|
||||||
.sample { background-color: #FFFFFF; border: #000000 solid 1px; }
|
|
||||||
.samplecontent { font-size: 10px; }
|
|
||||||
|
|
||||||
.code { background-color: #FFFFFF; border: #000000 solid 1px; }
|
|
||||||
.codecontent { font-size: 10px; }
|
|
||||||
.codecontent a:visited { color: #666666; text-decoration: none; font-weight: bold }
|
|
||||||
.codecontent a:active { color: #666666; text-decoration: none; font-weight: bold }
|
|
||||||
.codecontent a:hover { color: #666666; text-decoration: none; font-weight: bold }
|
|
||||||
.codecontent a { color: #666666; text-decoration: none; font-weight: bold }
|
|
||||||
|
|
||||||
hr { height: 1px; }
|
|
||||||
|
|
@@ -1,27 +0,0 @@
|
|||||||
body {
|
|
||||||
background-color: #FFFFFF;
|
|
||||||
font-family: Verdana, Arial, Helvetica, sans-serif;
|
|
||||||
font-size: 10px;
|
|
||||||
scrollbar-3dlight-color: #F0F0EE;
|
|
||||||
scrollbar-arrow-color: #676662;
|
|
||||||
scrollbar-base-color: #F0F0EE;
|
|
||||||
scrollbar-darkshadow-color: #DDDDDD;
|
|
||||||
scrollbar-face-color: #E0E0DD;
|
|
||||||
scrollbar-highlight-color: #F0F0EE;
|
|
||||||
scrollbar-shadow-color: #F0F0EE;
|
|
||||||
scrollbar-track-color: #F5F5F5;
|
|
||||||
}
|
|
||||||
|
|
||||||
td {
|
|
||||||
font-family: Verdana, Arial, Helvetica, sans-serif;
|
|
||||||
font-size: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
pre {
|
|
||||||
font-family: Verdana, Arial, Helvetica, sans-serif;
|
|
||||||
font-size: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceVisualAid {
|
|
||||||
border: 1px dashed #BBBBBB;
|
|
||||||
}
|
|
@@ -1,121 +0,0 @@
|
|||||||
body {
|
|
||||||
background-color: #F0F0EE;
|
|
||||||
font-family: Verdana, Arial, Helvetica, sans-serif;
|
|
||||||
font-size: 11px;
|
|
||||||
scrollbar-3dlight-color: #F0F0EE;
|
|
||||||
scrollbar-arrow-color: #676662;
|
|
||||||
scrollbar-base-color: #F0F0EE;
|
|
||||||
scrollbar-darkshadow-color: #DDDDDD;
|
|
||||||
scrollbar-face-color: #E0E0DD;
|
|
||||||
scrollbar-highlight-color: #F0F0EE;
|
|
||||||
scrollbar-shadow-color: #F0F0EE;
|
|
||||||
scrollbar-track-color: #F5F5F5;
|
|
||||||
}
|
|
||||||
|
|
||||||
td {
|
|
||||||
font-family: Verdana, Arial, Helvetica, sans-serif;
|
|
||||||
font-size: 11px;
|
|
||||||
}
|
|
||||||
|
|
||||||
input {
|
|
||||||
background: #FFFFFF;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
}
|
|
||||||
|
|
||||||
td, input, select, textarea {
|
|
||||||
font-family: Verdana, Arial, Helvetica, sans-serif;
|
|
||||||
font-size: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
input, select, textarea {
|
|
||||||
border: 1px solid #808080;
|
|
||||||
}
|
|
||||||
|
|
||||||
.input_noborder {
|
|
||||||
border: 0px solid #808080;
|
|
||||||
}
|
|
||||||
|
|
||||||
#insert {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
#cancel {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title {
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.charmap {
|
|
||||||
border-style: solid;
|
|
||||||
border-width: 1px;
|
|
||||||
border-color: #AAAAAA;
|
|
||||||
}
|
|
||||||
|
|
||||||
td.charmap, td.charmapOver {
|
|
||||||
color: #000000;
|
|
||||||
border-color: #AAAAAA;
|
|
||||||
border-style: solid;
|
|
||||||
border-width: 1px;
|
|
||||||
text-align: center;
|
|
||||||
font-size: 12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
td.charmapOver {
|
|
||||||
background-color: #CCCCCC;
|
|
||||||
cursor: arrow;
|
|
||||||
}
|
|
||||||
|
|
||||||
a.charmap {
|
|
||||||
color: #000000;
|
|
||||||
text-decoration: none
|
|
||||||
}
|
|
||||||
|
|
||||||
.wordWrapCode {
|
|
||||||
vertical-align: middle;
|
|
||||||
border: 1px none #000000;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
input.radio {
|
|
||||||
border: 1px none #000000;
|
|
||||||
background-color: transparent;
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
|
|
||||||
input.checkbox {
|
|
||||||
border: 1px none #000000;
|
|
||||||
background-color: transparent;
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonNormal, .mceButtonOver, .mceButtonDown, .mceSeparator, .mceButtonDisabled, .mceButtonSelected {
|
|
||||||
margin-left: 1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonNormal {
|
|
||||||
border-top: 1px solid;
|
|
||||||
border-left: 1px solid;
|
|
||||||
border-bottom: 1px solid;
|
|
||||||
border-right: 1px solid;
|
|
||||||
border-color: #F0F0EE;
|
|
||||||
cursor: arrow;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonOver {
|
|
||||||
border: 1px solid #0A246A;
|
|
||||||
cursor: arrow;
|
|
||||||
background-color: #B6BDD2;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonDown {
|
|
||||||
cursor: arrow;
|
|
||||||
border: 1px solid #0A246A;
|
|
||||||
background-color: #8592B5;
|
|
||||||
}
|
|
||||||
|
|
||||||
legend {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
@@ -1,763 +0,0 @@
|
|||||||
/* Import theme specific language pack */
|
|
||||||
tinyMCE.importThemeLanguagePack('advanced');
|
|
||||||
|
|
||||||
// Variable declarations
|
|
||||||
var TinyMCE_advanced_autoImportCSSClasses = true;
|
|
||||||
var TinyMCE_advanced_foreColor = "#000000";
|
|
||||||
var TinyMCE_advanced_anchorName = "";
|
|
||||||
var TinyMCE_advanced_buttons = [
|
|
||||||
// Control id, button img, button title, command, user_interface, value
|
|
||||||
['bold', '{$lang_bold_img}', '{$lang_bold_desc}', 'Bold'],
|
|
||||||
['italic', '{$lang_italic_img}', '{$lang_italic_desc}', 'Italic'],
|
|
||||||
['underline', '{$lang_underline_img}', '{$lang_underline_desc}', 'Underline'],
|
|
||||||
['strikethrough', 'strikethrough.gif', '{$lang_striketrough_desc}', 'Strikethrough'],
|
|
||||||
['justifyleft', 'left.gif', '{$lang_justifyleft_desc}', 'JustifyLeft'],
|
|
||||||
['justifycenter', 'center.gif', '{$lang_justifycenter_desc}', 'JustifyCenter'],
|
|
||||||
['justifyright', 'right.gif', '{$lang_justifyright_desc}', 'JustifyRight'],
|
|
||||||
['justifyfull', 'full.gif', '{$lang_justifyfull_desc}', 'JustifyFull'],
|
|
||||||
['bullist', 'bullist.gif', '{$lang_bullist_desc}', 'InsertUnorderedList'],
|
|
||||||
['numlist', 'numlist.gif', '{$lang_numlist_desc}', 'InsertOrderedList'],
|
|
||||||
['outdent', 'outdent.gif', '{$lang_outdent_desc}', 'Outdent'],
|
|
||||||
['indent', 'indent.gif', '{$lang_indent_desc}', 'Indent'],
|
|
||||||
['cut', 'cut.gif', '{$lang_cut_desc}', 'Cut'],
|
|
||||||
['copy', 'copy.gif', '{$lang_copy_desc}', 'Copy'],
|
|
||||||
['paste', 'paste.gif', '{$lang_paste_desc}', 'Paste'],
|
|
||||||
['undo', 'undo.gif', '{$lang_undo_desc}', 'Undo'],
|
|
||||||
['redo', 'redo.gif', '{$lang_redo_desc}', 'Redo'],
|
|
||||||
['link', 'link.gif', '{$lang_link_desc}', 'mceLink', true],
|
|
||||||
['unlink', 'unlink.gif', '{$lang_unlink_desc}', 'unlink'],
|
|
||||||
['image', 'image.gif', '{$lang_image_desc}', 'mceImage', true],
|
|
||||||
['cleanup', 'cleanup.gif', '{$lang_cleanup_desc}', 'mceCleanup'],
|
|
||||||
['help', 'help.gif', '{$lang_help_desc}', 'mceHelp'],
|
|
||||||
['code', 'code.gif', '{$lang_theme_code_desc}', 'mceCodeEditor'],
|
|
||||||
['hr', 'hr.gif', '{$lang_theme_hr_desc}', 'inserthorizontalrule'],
|
|
||||||
['removeformat', 'removeformat.gif', '{$lang_theme_removeformat_desc}', 'removeformat'],
|
|
||||||
['sub', 'sub.gif', '{$lang_theme_sub_desc}', 'subscript'],
|
|
||||||
['sup', 'sup.gif', '{$lang_theme_sup_desc}', 'superscript'],
|
|
||||||
['forecolor', 'forecolor.gif', '{$lang_theme_forecolor_desc}', 'mceForeColor', true],
|
|
||||||
['backcolor', 'backcolor.gif', '{$lang_theme_backcolor_desc}', 'mceBackColor', true],
|
|
||||||
['charmap', 'charmap.gif', '{$lang_theme_charmap_desc}', 'mceCharMap'],
|
|
||||||
['visualaid', 'visualaid.gif', '{$lang_theme_visualaid_desc}', 'mceToggleVisualAid'],
|
|
||||||
['anchor', 'anchor.gif', '{$lang_theme_anchor_desc}', 'mceInsertAnchor'],
|
|
||||||
['newdocument', 'newdocument.gif', '{$lang_newdocument_desc}', 'mceSetContent', false, '']
|
|
||||||
];
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns HTML code for the specificed control.
|
|
||||||
*/
|
|
||||||
function TinyMCE_advanced_getControlHTML(button_name) {
|
|
||||||
var buttonTileMap = new Array('anchor.gif','backcolor.gif','bullist.gif','center.gif','charmap.gif','cleanup.gif','code.gif','copy.gif','custom_1.gif','cut.gif','forecolor.gif','full.gif','help.gif','hr.gif','image.gif','indent.gif','left.gif','link.gif','numlist.gif','outdent.gif','paste.gif','redo.gif','removeformat.gif','right.gif','strikethrough.gif','sub.gif','sup.gif','undo.gif','unlink.gif','visualaid.gif');
|
|
||||||
|
|
||||||
// Lookup button in button list
|
|
||||||
for (var i=0; i<TinyMCE_advanced_buttons.length; i++) {
|
|
||||||
var but = TinyMCE_advanced_buttons[i];
|
|
||||||
if (but[0] == button_name) {
|
|
||||||
var safariPatch = '" onclick="';
|
|
||||||
|
|
||||||
if (tinyMCE.isSafari)
|
|
||||||
safariPatch = "";
|
|
||||||
|
|
||||||
// Check for it in tilemap
|
|
||||||
if (tinyMCE.settings['button_tile_map']) {
|
|
||||||
for (var x=0; !tinyMCE.isMSIE && x<buttonTileMap.length; x++) {
|
|
||||||
if (buttonTileMap[x] == but[1])
|
|
||||||
return '<img id="{$editor_id}_' + but[0] + '" src="{$themeurl}/images/spacer.gif" style="background-image:url({$themeurl}/images/buttons.gif); background-position: ' + (0-(x*20)) + 'px 0px" title="' + but[2] + '" width="20" height="20" class="mceButtonNormal" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.restoreClass(this);" onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');' + safariPatch + 'tinyMCE.execInstanceCommand(\'{$editor_id}\',\'' + but[3] + '\', ' + (but.length > 4 ? but[4] : false) + (but.length > 5 ? ', \'' + but[5] + '\'' : '') + ')">';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Old style
|
|
||||||
return '<img id="{$editor_id}_' + but[0] + '" src="{$themeurl}/images/' + but[1] + '" title="' + but[2] + '" width="20" height="20" class="mceButtonNormal" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.restoreClass(this);" onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');' + safariPatch + 'tinyMCE.execInstanceCommand(\'{$editor_id}\',\'' + but[3] + '\', ' + (but.length > 4 ? but[4] : false) + (but.length > 5 ? ', \'' + but[5] + '\'' : '') + ')">';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Custom controlls other than buttons
|
|
||||||
switch (button_name) {
|
|
||||||
case "formatselect":
|
|
||||||
var html = '<select id="{$editor_id}_formatSelect" name="{$editor_id}_formatSelect" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FormatBlock\',false,this.options[this.selectedIndex].value);" class="mceSelectList">';
|
|
||||||
var formats = tinyMCE.getParam("theme_advanced_blockformats", "p,address,pre,h1,h2,h3,h4,h5,h6", true).split(',');
|
|
||||||
var lookup = [
|
|
||||||
['p', '{$lang_theme_paragraph}'],
|
|
||||||
['address', '{$lang_theme_address}'],
|
|
||||||
['pre', '{$lang_theme_pre}'],
|
|
||||||
['h1', '{$lang_theme_h1}'],
|
|
||||||
['h2', '{$lang_theme_h2}'],
|
|
||||||
['h3', '{$lang_theme_h3}'],
|
|
||||||
['h4', '{$lang_theme_h4}'],
|
|
||||||
['h5', '{$lang_theme_h5}'],
|
|
||||||
['h6', '{$lang_theme_h6}']
|
|
||||||
];
|
|
||||||
|
|
||||||
// Build format select
|
|
||||||
for (var i=0; i<formats.length; i++) {
|
|
||||||
for (var x=0; x<lookup.length; x++) {
|
|
||||||
if (formats[i] == lookup[x][0])
|
|
||||||
html += '<option value="<' + lookup[x][0] + '>">' + lookup[x][1] + '</option>';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
html += '</select>';
|
|
||||||
|
|
||||||
return html;
|
|
||||||
|
|
||||||
|
|
||||||
case "styleselect":
|
|
||||||
return '<select id="{$editor_id}_styleSelect" onmousedown="TinyMCE_advanced_setupCSSClasses(\'{$editor_id}\');" name="{$editor_id}_styleSelect" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceSetCSSClass\',false,this.options[this.selectedIndex].value);" class="mceSelectList">{$style_select_options}</select>';
|
|
||||||
|
|
||||||
case "fontselect":
|
|
||||||
return '<select id="{$editor_id}_fontNameSelect" name="{$editor_id}_fontNameSelect" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FontName\',false,this.options[this.selectedIndex].value);" class="mceSelectList">\
|
|
||||||
<option value="">{$lang_theme_fontdefault}</option>\
|
|
||||||
<option value="arial,helvetica,sans-serif">Arial</option>\
|
|
||||||
<option value="times new roman,times,serif">Times New Roman</option>\
|
|
||||||
<option value="verdana,arial,helvetica,sans-serif">Verdana</option>\
|
|
||||||
<option value="courier new,courier,monospace">Courier</option>\
|
|
||||||
<option value="georgia,times new roman,times,serif">Georgia</option>\
|
|
||||||
<option value="tahoma,arial,helvetica,sans-serif">Tahoma</option>\
|
|
||||||
</select>';
|
|
||||||
|
|
||||||
case "fontsizeselect":
|
|
||||||
return '<select id="{$editor_id}_fontSizeSelect" name="{$editor_id}_fontSizeSelect" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FontSize\',false,this.options[this.selectedIndex].value);" class="mceSelectList">\
|
|
||||||
<option value="0">-- {$lang_theme_font_size} --</option>\
|
|
||||||
<option value="1">1 (8 pt)</option>\
|
|
||||||
<option value="2">2 (10 pt)</option>\
|
|
||||||
<option value="3">3 (12 pt)</option>\
|
|
||||||
<option value="4">4 (14 pt)</option>\
|
|
||||||
<option value="5">5 (18 pt)</option>\
|
|
||||||
<option value="6">6 (24 pt)</option>\
|
|
||||||
<option value="7">7 (36 pt)</option>\
|
|
||||||
</select>';
|
|
||||||
|
|
||||||
case "|":
|
|
||||||
case "separator":
|
|
||||||
return '<img src="{$themeurl}/images/spacer.gif" width="1" height="15" class="mceSeparatorLine">';
|
|
||||||
|
|
||||||
case "spacer":
|
|
||||||
return '<img src="{$themeurl}/images/spacer.gif" width="1" height="15" border="0" class="mceSeparatorLine" style="vertical-align: middle" />';
|
|
||||||
|
|
||||||
case "rowseparator":
|
|
||||||
return '<br />';
|
|
||||||
}
|
|
||||||
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Theme specific exec command handeling.
|
|
||||||
*/
|
|
||||||
function TinyMCE_advanced_execCommand(editor_id, element, command, user_interface, value) {
|
|
||||||
switch (command) {
|
|
||||||
case "mceForeColor":
|
|
||||||
var template = new Array();
|
|
||||||
var inputColor = TinyMCE_advanced_foreColor;
|
|
||||||
|
|
||||||
if (!inputColor)
|
|
||||||
inputColor = "#000000";
|
|
||||||
|
|
||||||
template['file'] = 'color_picker.htm';
|
|
||||||
template['width'] = 210;
|
|
||||||
template['height'] = 200;
|
|
||||||
|
|
||||||
tinyMCE.openWindow(template, {editor_id : editor_id, command : "forecolor", input_color : inputColor});
|
|
||||||
return true;
|
|
||||||
|
|
||||||
case "mceBackColor":
|
|
||||||
var template = new Array();
|
|
||||||
var inputColor = TinyMCE_advanced_foreColor;
|
|
||||||
|
|
||||||
if (!inputColor)
|
|
||||||
inputColor = "#000000";
|
|
||||||
|
|
||||||
template['file'] = 'color_picker.htm';
|
|
||||||
template['width'] = 210;
|
|
||||||
template['height'] = 200;
|
|
||||||
|
|
||||||
tinyMCE.openWindow(template, {editor_id : editor_id, command : "HiliteColor", input_color : inputColor});
|
|
||||||
return true;
|
|
||||||
|
|
||||||
case "mceCodeEditor":
|
|
||||||
var template = new Array();
|
|
||||||
|
|
||||||
template['file'] = 'source_editor.htm';
|
|
||||||
template['width'] = tinyMCE.getParam("theme_advanced_source_editor_width", 500);
|
|
||||||
template['height'] = tinyMCE.getParam("theme_advanced_source_editor_height", 400);
|
|
||||||
|
|
||||||
tinyMCE.openWindow(template, {editor_id : editor_id, resizable : "yes", scrollbars : "no"});
|
|
||||||
return true;
|
|
||||||
|
|
||||||
case "mceCharMap":
|
|
||||||
var template = new Array();
|
|
||||||
|
|
||||||
template['file'] = 'charmap.htm';
|
|
||||||
template['width'] = 550;
|
|
||||||
template['height'] = 280;
|
|
||||||
|
|
||||||
tinyMCE.openWindow(template, {editor_id : editor_id});
|
|
||||||
return true;
|
|
||||||
|
|
||||||
case "mceInsertAnchor":
|
|
||||||
var template = new Array();
|
|
||||||
|
|
||||||
template['file'] = 'anchor.htm';
|
|
||||||
template['width'] = 320;
|
|
||||||
template['height'] = 130;
|
|
||||||
|
|
||||||
tinyMCE.openWindow(template, {editor_id : editor_id, name : TinyMCE_advanced_anchorName, action : (TinyMCE_advanced_anchorName == "" ? "insert" : "update")});
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Default behavior
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Editor instance template function.
|
|
||||||
*/
|
|
||||||
function TinyMCE_advanced_getEditorTemplate(settings) {
|
|
||||||
function removeFromArray(in_array, remove_array) {
|
|
||||||
var outArray = new Array();
|
|
||||||
for (var i=0; i<in_array.length; i++) {
|
|
||||||
skip = false;
|
|
||||||
|
|
||||||
for (var j=0; j<remove_array.length; j++) {
|
|
||||||
if (in_array[i] == remove_array[j])
|
|
||||||
skip = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!skip)
|
|
||||||
outArray[outArray.length] = in_array[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
return outArray;
|
|
||||||
}
|
|
||||||
|
|
||||||
function addToArray(in_array, add_array) {
|
|
||||||
for (var i=0; i<add_array.length; i++)
|
|
||||||
in_array[in_array.length] = add_array[i];
|
|
||||||
|
|
||||||
return in_array;
|
|
||||||
}
|
|
||||||
|
|
||||||
var template = new Array();
|
|
||||||
var deltaHeight = 0;
|
|
||||||
|
|
||||||
//###########################################################################################################
|
|
||||||
// <Layout Manager Modification by SlyD, 14.1.2005>
|
|
||||||
//###########################################################################################################
|
|
||||||
|
|
||||||
var pathHTML = '{$lang_theme_path}: <span id="{$editor_id}_path"> </span>';
|
|
||||||
var layoutManager = tinyMCE.getParam("theme_advanced_layout_manager", "SimpleLayout");
|
|
||||||
|
|
||||||
switch(layoutManager) {
|
|
||||||
case "SimpleLayout" : //the default TinyMCE Layout (for backwards compatibility)...
|
|
||||||
var toolbarHTML = "";
|
|
||||||
var toolbarLocation = tinyMCE.getParam("theme_advanced_toolbar_location", "bottom");
|
|
||||||
var toolbarAlign = tinyMCE.getParam("theme_advanced_toolbar_align", "center");
|
|
||||||
var pathLocation = tinyMCE.getParam("theme_advanced_path_location", "none");
|
|
||||||
|
|
||||||
// Render row 1
|
|
||||||
var buttonNamesRow1 = tinyMCE.getParam("theme_advanced_buttons1", "bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,styleselect,formatselect", true, ',');
|
|
||||||
buttonNamesRow1 = removeFromArray(buttonNamesRow1, tinyMCE.getParam("theme_advanced_disable", "", true, ','));
|
|
||||||
buttonNamesRow1 = addToArray(buttonNamesRow1, tinyMCE.getParam("theme_advanced_buttons1_add", "", true, ','));
|
|
||||||
buttonNamesRow1 = addToArray(tinyMCE.getParam("theme_advanced_buttons1_add_before", "", true, ','), buttonNamesRow1);
|
|
||||||
for (var i=0; i<buttonNamesRow1.length; i++)
|
|
||||||
toolbarHTML += tinyMCE.getControlHTML(buttonNamesRow1[i]);
|
|
||||||
|
|
||||||
if (buttonNamesRow1.length > 0) {
|
|
||||||
toolbarHTML += "<br />";
|
|
||||||
deltaHeight -= 23;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Render row 2
|
|
||||||
var buttonNamesRow2 = tinyMCE.getParam("theme_advanced_buttons2", "bullist,numlist,separator,outdent,indent,separator,undo,redo,separator,link,unlink,anchor,image,cleanup,help,code", true, ',');
|
|
||||||
buttonNamesRow2 = removeFromArray(buttonNamesRow2, tinyMCE.getParam("theme_advanced_disable", "", true, ','));
|
|
||||||
buttonNamesRow2 = addToArray(buttonNamesRow2, tinyMCE.getParam("theme_advanced_buttons2_add", "", true, ','));
|
|
||||||
buttonNamesRow2 = addToArray(tinyMCE.getParam("theme_advanced_buttons2_add_before", "", true, ','), buttonNamesRow2);
|
|
||||||
for (var i=0; i<buttonNamesRow2.length; i++)
|
|
||||||
toolbarHTML += tinyMCE.getControlHTML(buttonNamesRow2[i]);
|
|
||||||
|
|
||||||
if (buttonNamesRow2.length > 0) {
|
|
||||||
toolbarHTML += "<br />";
|
|
||||||
deltaHeight -= 23;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Render row 3
|
|
||||||
var buttonNamesRow3 = tinyMCE.getParam("theme_advanced_buttons3", "hr,removeformat,visualaid,separator,sub,sup,separator,charmap", true, ',');
|
|
||||||
buttonNamesRow3 = removeFromArray(buttonNamesRow3, tinyMCE.getParam("theme_advanced_disable", "", true, ','));
|
|
||||||
buttonNamesRow3 = addToArray(buttonNamesRow3, tinyMCE.getParam("theme_advanced_buttons3_add", "", true, ','));
|
|
||||||
buttonNamesRow3 = addToArray(tinyMCE.getParam("theme_advanced_buttons3_add_before", "", true, ','), buttonNamesRow3);
|
|
||||||
for (var i=0; i<buttonNamesRow3.length; i++)
|
|
||||||
toolbarHTML += tinyMCE.getControlHTML(buttonNamesRow3[i]);
|
|
||||||
|
|
||||||
if (buttonNamesRow3.length > 0)
|
|
||||||
deltaHeight -= 20;
|
|
||||||
|
|
||||||
// Setup template html
|
|
||||||
template['html'] = '<table class="mceEditor" border="0" cellpadding="0" cellspacing="0" width="{$width}" height="{$height}"><tbody>';
|
|
||||||
|
|
||||||
if (toolbarLocation == "top")
|
|
||||||
template['html'] += '<tr><td class="mceToolbarTop" align="' + toolbarAlign + '" height="1" nowrap="nowrap">' + toolbarHTML + '</td></tr>';
|
|
||||||
|
|
||||||
if (pathLocation == "top") {
|
|
||||||
template['html'] += '<tr><td class="mcePathTop" height="1">' + pathHTML + '</td></tr>';
|
|
||||||
deltaHeight -= 23;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* template['html'] += '<tr><td align="center">\
|
|
||||||
<iframe id="{$editor_id}" class="mceEditorArea" border="1" frameborder="0" src="{$default_document}" marginwidth="0" marginheight="0" leftmargin="0" topmargin="0" style="width:{$area_width};height:{$area_height}" width="{$area_width}" height="{$area_height}"></iframe>\
|
|
||||||
</td></tr>';*/
|
|
||||||
template['html'] += '<tr><td align="center">\
|
|
||||||
<span id="{$editor_id}"></span>\
|
|
||||||
</td></tr>';
|
|
||||||
|
|
||||||
if (toolbarLocation == "bottom")
|
|
||||||
template['html'] += '<tr><td class="mceToolbarBottom" align="' + toolbarAlign + '" height="1">' + toolbarHTML + '</td></tr>';
|
|
||||||
|
|
||||||
if (pathLocation == "bottom") {
|
|
||||||
template['html'] += '<tr><td class="mcePathBottom" height="1">' + pathHTML + '</td></tr>';
|
|
||||||
deltaHeight -= 23;
|
|
||||||
}
|
|
||||||
|
|
||||||
template['html'] += '</table>';
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "RowLayout" : //Container Layout - containers defined in "theme_advanced_containers" are rendered from top to bottom.
|
|
||||||
template['html'] = '<table class="mceEditor" border="0" cellpadding="0" cellspacing="0" width="{$width}" height="{$height}"><tbody>';
|
|
||||||
|
|
||||||
var containers = tinyMCE.getParam("theme_advanced_containers", "", true, ",");
|
|
||||||
var defaultContainerCSS = tinyMCE.getParam("theme_advanced_containers_default_class", "container");
|
|
||||||
var defaultContainerAlign = tinyMCE.getParam("theme_advanced_containers_default_align", "center");
|
|
||||||
|
|
||||||
//Render Containers:
|
|
||||||
for(var i = 0; i < containers.length; i++)
|
|
||||||
{
|
|
||||||
if(containers[i] == "mceEditor") //Exceptions for mceEditor and ...
|
|
||||||
{
|
|
||||||
template['html'] += '<tr><td align="center" class="mceEditor_border">\
|
|
||||||
<span id="{$editor_id}"></span>\
|
|
||||||
</td></tr>';
|
|
||||||
}
|
|
||||||
else if(containers[i] == "mceElementpath") // ... mceElementpath:
|
|
||||||
{
|
|
||||||
var pathClass = "mcePath";
|
|
||||||
|
|
||||||
if (i == containers.length-1)
|
|
||||||
pathClass = "mcePathBottom";
|
|
||||||
else if (i == 0)
|
|
||||||
pathClass = "mcePathTop";
|
|
||||||
else
|
|
||||||
deltaHeight-=2;
|
|
||||||
|
|
||||||
template['html'] += '<tr><td class="' + pathClass + '" height="1">' + pathHTML + '</td></tr>';
|
|
||||||
deltaHeight -= 22;
|
|
||||||
}
|
|
||||||
else //Render normal Container:
|
|
||||||
{
|
|
||||||
var curContainer = tinyMCE.getParam("theme_advanced_container_"+containers[i], "", true, ',');
|
|
||||||
var curContainerHTML = "";
|
|
||||||
var curAlign = tinyMCE.getParam("theme_advanced_container_"+containers[i]+"_align", defaultContainerAlign);
|
|
||||||
var curCSS = tinyMCE.getParam("theme_advanced_container_"+containers[i]+"_class", defaultContainerCSS);
|
|
||||||
|
|
||||||
for (var j=0; j<curContainer.length; j++)
|
|
||||||
curContainerHTML += tinyMCE.getControlHTML(curContainer[j]);
|
|
||||||
|
|
||||||
if (curContainer.length > 0) {
|
|
||||||
curContainerHTML += "<br />";
|
|
||||||
deltaHeight -= 23;
|
|
||||||
}
|
|
||||||
|
|
||||||
template['html'] += '<tr><td class="' + curCSS + '" align="' + curAlign + '" height="1">' + curContainerHTML + '</td></tr>';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
template['html'] += '</tbody></table>';
|
|
||||||
break;
|
|
||||||
case "BorderLayout" : //will be like java.awt.BorderLayout of SUN Java...
|
|
||||||
// Not implemented yet...
|
|
||||||
break;
|
|
||||||
case "CustomLayout" : //User defined layout callback...
|
|
||||||
var customLayout = tinyMCE.getParam("theme_advanced_custom_layout","");
|
|
||||||
if (customLayout != "" && eval("typeof(" + customLayout + ")") != "undefined")
|
|
||||||
template = eval(customLayout + "(template);");
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
alert('UNDEFINED LAYOUT MANAGER! PLEASE CHECK YOUR TINYMCE CONFIG!');
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
//###########################################################################################################
|
|
||||||
// </Modification by SlyD, 14.1.2005>
|
|
||||||
//###########################################################################################################
|
|
||||||
|
|
||||||
// Setup style select options
|
|
||||||
var styleSelectHTML = '<option value="">-- {$lang_theme_style_select} --</option>';
|
|
||||||
if (settings['theme_advanced_styles']) {
|
|
||||||
var stylesAr = settings['theme_advanced_styles'].split(';');
|
|
||||||
for (var i=0; i<stylesAr.length; i++) {
|
|
||||||
var key, value;
|
|
||||||
|
|
||||||
key = stylesAr[i].split('=')[0];
|
|
||||||
value = stylesAr[i].split('=')[1];
|
|
||||||
|
|
||||||
styleSelectHTML += '<option value="' + value + '">' + key + '</option>';
|
|
||||||
}
|
|
||||||
|
|
||||||
TinyMCE_advanced_autoImportCSSClasses = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
template['html'] = tinyMCE.replaceVar(template['html'], 'style_select_options', styleSelectHTML);
|
|
||||||
template['delta_width'] = 0;
|
|
||||||
template['delta_height'] = deltaHeight;
|
|
||||||
|
|
||||||
return template;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Insert link template function.
|
|
||||||
*/
|
|
||||||
function TinyMCE_advanced_getInsertLinkTemplate() {
|
|
||||||
var template = new Array();
|
|
||||||
|
|
||||||
template['file'] = 'link.htm';
|
|
||||||
template['width'] = 300;
|
|
||||||
template['height'] = 150;
|
|
||||||
|
|
||||||
// Language specific width and height addons
|
|
||||||
template['width'] += tinyMCE.getLang('lang_insert_link_delta_width', 0);
|
|
||||||
template['height'] += tinyMCE.getLang('lang_insert_link_delta_height', 0);
|
|
||||||
|
|
||||||
return template;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Insert image template function.
|
|
||||||
*/
|
|
||||||
function TinyMCE_advanced_getInsertImageTemplate() {
|
|
||||||
var template = new Array();
|
|
||||||
|
|
||||||
template['file'] = 'image.htm?src={$src}';
|
|
||||||
template['width'] = 340;
|
|
||||||
template['height'] = 280;
|
|
||||||
|
|
||||||
// Language specific width and height addons
|
|
||||||
template['width'] += tinyMCE.getLang('lang_insert_image_delta_width', 0);
|
|
||||||
template['height'] += tinyMCE.getLang('lang_insert_image_delta_height', 0);
|
|
||||||
|
|
||||||
return template;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Node change handler.
|
|
||||||
*/
|
|
||||||
function TinyMCE_advanced_handleNodeChange(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {
|
|
||||||
function selectByValue(select_elm, value) {
|
|
||||||
if (select_elm) {
|
|
||||||
for (var i=0; i<select_elm.options.length; i++) {
|
|
||||||
if (select_elm.options[i].value == value) {
|
|
||||||
select_elm.selectedIndex = i;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// No node provided
|
|
||||||
if (node == null)
|
|
||||||
return;
|
|
||||||
|
|
||||||
// Update path
|
|
||||||
var pathElm = document.getElementById(editor_id + "_path");
|
|
||||||
if (pathElm) {
|
|
||||||
// Get node path
|
|
||||||
var parentNode = node;
|
|
||||||
var path = new Array();
|
|
||||||
while (parentNode) {
|
|
||||||
if (parentNode.nodeName.toLowerCase() == "body")
|
|
||||||
break;
|
|
||||||
|
|
||||||
// Only append element nodes to path
|
|
||||||
if (parentNode.nodeType == 1)
|
|
||||||
path[path.length] = parentNode;
|
|
||||||
|
|
||||||
parentNode = parentNode.parentNode;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Setup HTML
|
|
||||||
var html = "";
|
|
||||||
for (var i=path.length-1; i>=0; i--) {
|
|
||||||
var nodeName = path[i].nodeName.toLowerCase();
|
|
||||||
var nodeData = "";
|
|
||||||
var className = tinyMCE.getVisualAidClass(tinyMCE.getAttrib(path[i], 'class'), false);
|
|
||||||
|
|
||||||
if (nodeName == "b")
|
|
||||||
nodeName = "strong";
|
|
||||||
|
|
||||||
if (nodeName == "i")
|
|
||||||
nodeName = "em";
|
|
||||||
|
|
||||||
if (tinyMCE.getAttrib(path[i], 'id') != "")
|
|
||||||
nodeData += "id: " + path[i].getAttribute('id') + " ";
|
|
||||||
|
|
||||||
if (className != "")
|
|
||||||
nodeData += "class: " + className + " ";
|
|
||||||
|
|
||||||
if (tinyMCE.getAttrib(path[i], 'src') != "")
|
|
||||||
nodeData += "src: " + path[i].getAttribute('src') + " ";
|
|
||||||
|
|
||||||
if (tinyMCE.getAttrib(path[i], 'href') != "")
|
|
||||||
nodeData += "href: " + path[i].getAttribute('href') + " ";
|
|
||||||
|
|
||||||
if (nodeName == "img" && tinyMCE.getAttrib(path[i], 'name') == "mce_plugin_flash") {
|
|
||||||
nodeName = "flash";
|
|
||||||
nodeData = "";
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tinyMCE.getAttrib(path[i], 'name').indexOf("mce_") != 0) {
|
|
||||||
if (className != "")
|
|
||||||
nodeName += "." + className;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tinyMCE.isMSIE || tinyMCE.isSafari)
|
|
||||||
html += '<a title="' + nodeData + '" href="javascript:void(0);" onmousedown="tinyMCE.execInstanceCommand(\'' + editor_id + '\',\'mceSelectNodeDepth\',false,\'' + i + '\');return false;" class="mcePathItem">' + nodeName + '</a>';
|
|
||||||
else
|
|
||||||
html += '<a title="' + nodeData + '" href="javascript:tinyMCE.execInstanceCommand(\'' + editor_id + '\',\'mceSelectNodeDepth\',false,\'' + i + '\');" class="mcePathItem">' + nodeName + '</a>';
|
|
||||||
|
|
||||||
if (i > 0)
|
|
||||||
html += " » ";
|
|
||||||
}
|
|
||||||
|
|
||||||
pathElm.innerHTML = html + " ";
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get element color
|
|
||||||
var colorElm = tinyMCE.getParentElement(node, "font", "color");
|
|
||||||
if (colorElm)
|
|
||||||
TinyMCE_advanced_foreColor = "" + colorElm.color.toUpperCase();
|
|
||||||
|
|
||||||
// Reset old states
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_justifyleft', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_justifyright', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_justifycenter', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_justifyfull', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_bold', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_italic', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_underline', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_strikethrough', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_bullist', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_numlist', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_sub', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_sup', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_anchor', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_link', 'mceButtonDisabled', true);
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_unlink', 'mceButtonDisabled', true);
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_outdent', 'mceButtonDisabled', true);
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_image', 'mceButtonNormal');
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_hr', 'mceButtonNormal');
|
|
||||||
|
|
||||||
// Get anchor name
|
|
||||||
var anchorName = tinyMCE.getParentElement(node, "a", "name");
|
|
||||||
TinyMCE_advanced_anchorName = "";
|
|
||||||
if (anchorName) {
|
|
||||||
TinyMCE_advanced_anchorName = anchorName.getAttribute("name");
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_anchor', 'mceButtonSelected');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get link
|
|
||||||
var anchorLink = tinyMCE.getParentElement(node, "a", "href");
|
|
||||||
if (anchorLink || any_selection) {
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_link', anchorLink ? 'mceButtonSelected' : 'mceButtonNormal', false);
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_unlink', anchorLink ? 'mceButtonSelected' : 'mceButtonNormal', false);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle visual aid
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_visualaid', visual_aid ? 'mceButtonSelected' : 'mceButtonNormal', false);
|
|
||||||
|
|
||||||
if (undo_levels != -1) {
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_undo', 'mceButtonDisabled', true);
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_redo', 'mceButtonDisabled', true);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Within li, blockquote
|
|
||||||
if (tinyMCE.getParentElement(node, "li,blockquote"))
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_outdent', 'mceButtonNormal', false);
|
|
||||||
|
|
||||||
// Has redo levels
|
|
||||||
if (undo_index != -1 && (undo_index < undo_levels-1 && undo_levels > 0))
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_redo', 'mceButtonNormal', false);
|
|
||||||
|
|
||||||
// Has undo levels
|
|
||||||
if (undo_index != -1 && (undo_index > 0 && undo_levels > 0))
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_undo', 'mceButtonNormal', false);
|
|
||||||
|
|
||||||
// Select class in select box
|
|
||||||
var selectElm = document.getElementById(editor_id + "_styleSelect");
|
|
||||||
if (selectElm) {
|
|
||||||
TinyMCE_advanced_setupCSSClasses(editor_id);
|
|
||||||
|
|
||||||
classNode = node;
|
|
||||||
breakOut = false;
|
|
||||||
var index = 0;
|
|
||||||
|
|
||||||
do {
|
|
||||||
if (classNode && classNode.className) {
|
|
||||||
for (var i=0; i<selectElm.options.length; i++) {
|
|
||||||
if (selectElm.options[i].value == classNode.className) {
|
|
||||||
index = i;
|
|
||||||
breakOut = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} while (!breakOut && classNode != null && (classNode = classNode.parentNode));
|
|
||||||
|
|
||||||
selectElm.selectedIndex = index;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Select formatblock
|
|
||||||
var selectElm = document.getElementById(editor_id + "_formatSelect");
|
|
||||||
if (selectElm) {
|
|
||||||
var elm = tinyMCE.getParentElement(node, "p,div,h1,h2,h3,h4,h5,h6,pre,address");
|
|
||||||
if (elm) {
|
|
||||||
selectByValue(selectElm, "<" + elm.nodeName.toLowerCase() + ">");
|
|
||||||
} else
|
|
||||||
selectByValue(selectElm, "<p>");
|
|
||||||
}
|
|
||||||
|
|
||||||
// Select fontselect
|
|
||||||
var selectElm = document.getElementById(editor_id + "_fontNameSelect");
|
|
||||||
if (selectElm) {
|
|
||||||
var elm = tinyMCE.getParentElement(node, "font", "face");
|
|
||||||
if (elm)
|
|
||||||
selectByValue(selectElm, elm.getAttribute("face"));
|
|
||||||
else
|
|
||||||
selectByValue(selectElm, "");
|
|
||||||
}
|
|
||||||
|
|
||||||
// Select fontsize
|
|
||||||
var selectElm = document.getElementById(editor_id + "_fontSizeSelect");
|
|
||||||
if (selectElm) {
|
|
||||||
var elm = tinyMCE.getParentElement(node, "font", "size");
|
|
||||||
if (elm && tinyMCE.getAttrib(elm, "size") != "")
|
|
||||||
selectByValue(selectElm, elm.getAttribute("size"));
|
|
||||||
else
|
|
||||||
selectByValue(selectElm, "0");
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle align attributes
|
|
||||||
alignNode = node;
|
|
||||||
breakOut = false;
|
|
||||||
do {
|
|
||||||
if (!alignNode.getAttribute || !alignNode.getAttribute('align'))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
switch (alignNode.getAttribute('align').toLowerCase()) {
|
|
||||||
case "left":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_justifyleft', 'mceButtonSelected');
|
|
||||||
breakOut = true;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "right":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_justifyright', 'mceButtonSelected');
|
|
||||||
breakOut = true;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "middle":
|
|
||||||
case "center":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_justifycenter', 'mceButtonSelected');
|
|
||||||
breakOut = true;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "justify":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_justifyfull', 'mceButtonSelected');
|
|
||||||
breakOut = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} while (!breakOut && (alignNode = alignNode.parentNode));
|
|
||||||
|
|
||||||
// Do special text
|
|
||||||
if (tinyMCE.isGecko && node.nodeType == 3) {
|
|
||||||
var inst = tinyMCE.getInstanceById(editor_id);
|
|
||||||
var doc = inst.getDoc();
|
|
||||||
|
|
||||||
if (doc.queryCommandState("Bold"))
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_bold', 'mceButtonSelected');
|
|
||||||
|
|
||||||
if (doc.queryCommandState("Italic"))
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_italic', 'mceButtonSelected');
|
|
||||||
|
|
||||||
if (doc.queryCommandState("Underline") && (node.parentNode == null || node.parentNode.nodeName != "A"))
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_underline', 'mceButtonSelected');
|
|
||||||
|
|
||||||
if (doc.queryCommandState("Strikethrough"))
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_strikethrough', 'mceButtonSelected');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle elements
|
|
||||||
do {
|
|
||||||
switch (node.nodeName.toLowerCase()) {
|
|
||||||
case "b":
|
|
||||||
case "strong":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_bold', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "i":
|
|
||||||
case "em":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_italic', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "u":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_underline', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "strike":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_strikethrough', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "ul":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_bullist', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "ol":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_numlist', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "sub":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_sub', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "sup":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_sup', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "hr":
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_hr', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "img":
|
|
||||||
if (tinyMCE.getAttrib(node, 'name').indexOf('mce_') != 0)
|
|
||||||
tinyMCE.switchClassSticky(editor_id + '_image', 'mceButtonSelected');
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} while ((node = node.parentNode));
|
|
||||||
}
|
|
||||||
|
|
||||||
// This function auto imports CSS classes into the class selection droplist
|
|
||||||
function TinyMCE_advanced_setupCSSClasses(editor_id) {
|
|
||||||
if (!TinyMCE_advanced_autoImportCSSClasses)
|
|
||||||
return;
|
|
||||||
|
|
||||||
var selectElm = document.getElementById(editor_id + '_styleSelect');
|
|
||||||
|
|
||||||
if (selectElm && selectElm.getAttribute('cssImported') != 'true') {
|
|
||||||
var csses = tinyMCE.getCSSClasses(editor_id);
|
|
||||||
if (csses && selectElm) {
|
|
||||||
for (var i=0; i<csses.length; i++)
|
|
||||||
selectElm.options[selectElm.length] = new Option(csses[i], csses[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Only do this once
|
|
||||||
if (csses != null && csses.length > 0)
|
|
||||||
selectElm.setAttribute('cssImported', 'true');
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,148 +0,0 @@
|
|||||||
.mceButtonNormal, .mceButtonOver, .mceButtonDown, .mceSeparator, .mceButtonDisabled, .mceButtonSelected {
|
|
||||||
margin-top: 1px;
|
|
||||||
margin-left: 1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonNormal {
|
|
||||||
border-top: 1px solid;
|
|
||||||
border-left: 1px solid;
|
|
||||||
border-bottom: 1px solid;
|
|
||||||
border-right: 1px solid;
|
|
||||||
border-color: #F0F0EE;
|
|
||||||
cursor: arrow;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonOver {
|
|
||||||
/* border-top: 1px solid buttonhighlight;
|
|
||||||
border-left: 1px solid buttonhighlight;
|
|
||||||
border-bottom: 1px solid buttonshadow;
|
|
||||||
border-right: 1px solid buttonshadow;*/
|
|
||||||
border: 1px solid #0A246A;
|
|
||||||
cursor: arrow;
|
|
||||||
background-color: #B6BDD2;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonDown {
|
|
||||||
/* border-bottom: 1px solid buttonhighlight;
|
|
||||||
border-right: 1px solid buttonhighlight;
|
|
||||||
border-top: 1px solid buttonshadow;
|
|
||||||
border-left: 1px solid buttonshadow;*/
|
|
||||||
cursor: arrow;
|
|
||||||
border: 1px solid #0A246A;
|
|
||||||
background-color: #8592B5;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonSelected {
|
|
||||||
border: 1px solid;
|
|
||||||
border-color: #C0C0BB;
|
|
||||||
cursor: arrow;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceButtonDisabled {
|
|
||||||
filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30);
|
|
||||||
-moz-opacity:0.3;
|
|
||||||
opacity: 0.3;
|
|
||||||
border-top: 1px solid;
|
|
||||||
border-left: 1px solid;
|
|
||||||
border-bottom: 1px solid;
|
|
||||||
border-right: 1px solid;
|
|
||||||
border-color: #F0F0EE;
|
|
||||||
cursor: arrow;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceSeparator {
|
|
||||||
border-top: 1px solid buttonhighlight;
|
|
||||||
border-left: 1px solid buttonhighlight;
|
|
||||||
border-bottom: 1px solid buttonshadow;
|
|
||||||
border-right: 1px solid buttonshadow;
|
|
||||||
margin-right: 2px;
|
|
||||||
margin-left: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceSeparatorLine {
|
|
||||||
margin:2px;
|
|
||||||
margin-left: 4px;
|
|
||||||
background-color: #F0F0EE;
|
|
||||||
border-top: 1px solid buttonshadow;
|
|
||||||
border-left: 1px solid buttonshadow;
|
|
||||||
border-bottom: 1px solid buttonhighlight;
|
|
||||||
border-right: 1px solid buttonhighlight;
|
|
||||||
width: 0px;
|
|
||||||
height: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceSelectList {
|
|
||||||
font-family: "MS Sans Serif";
|
|
||||||
font-size: 7pt;
|
|
||||||
font-weight: normal;
|
|
||||||
margin-top: 3px;
|
|
||||||
padding: 0px;
|
|
||||||
display: inline;
|
|
||||||
vertical-align: top;
|
|
||||||
background-color: #F0F0EE
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceLabel, .mceLabelDisabled {
|
|
||||||
font-family: "MS Sans Serif";
|
|
||||||
font-size: 9pt;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceLabel {
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceLabelDisabled {
|
|
||||||
cursor: text;
|
|
||||||
color: #999999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceEditor {
|
|
||||||
background: #F0F0EE;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceEditorArea {
|
|
||||||
font-family: "MS Sans Serif";
|
|
||||||
background: #FFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceToolbarTop, .mceToolbarBottom {
|
|
||||||
background: #F0F0EE;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceToolbarTop {
|
|
||||||
border-bottom: 1px solid #cccccc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mceToolbarBottom {
|
|
||||||
border-top: 1px solid #cccccc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mcePathTop, .mcePathBottom, .mcePath {
|
|
||||||
font-family: "MS Sans Serif";
|
|
||||||
font-size: 9pt;
|
|
||||||
padding: 2px;
|
|
||||||
height: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mcePathTop {
|
|
||||||
border-bottom: 1px solid #cccccc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mcePathBottom {
|
|
||||||
border-top: 1px solid #cccccc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mcePathItem, .mcePathItem:link, .mcePathItem:visited, .mcePathItem:hover {
|
|
||||||
text-decoration: none;
|
|
||||||
font-family: "MS Sans Serif";
|
|
||||||
font-size: 9pt;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mcePathItem:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mcePath {
|
|
||||||
border-bottom: 1px solid #cccccc;
|
|
||||||
}
|
|
@@ -1,193 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>{$lang_insert_image_title}</title>
|
|
||||||
<script language="javascript" src="../../tiny_mce_popup.js"></script>
|
|
||||||
<script language="javascript">
|
|
||||||
var url = tinyMCE.getParam("external_image_list_url");
|
|
||||||
if (url != null) {
|
|
||||||
// Fix relative
|
|
||||||
if (url.charAt(0) != '/')
|
|
||||||
url = tinyMCE.documentBasePath + "/" + url;
|
|
||||||
|
|
||||||
document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '?rnd=' + new Date().getTime() + '"></sc'+'ript>');
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<script language="javascript">
|
|
||||||
// Disable auto resize
|
|
||||||
tinyMCE.getWindowArg('mce_windowresize', false);
|
|
||||||
|
|
||||||
function insertImage() {
|
|
||||||
if (window.opener) {
|
|
||||||
var src = document.forms[0].src.value;
|
|
||||||
var alt = document.forms[0].alt.value;
|
|
||||||
var border = document.forms[0].border.value;
|
|
||||||
var vspace = document.forms[0].vspace.value;
|
|
||||||
var hspace = document.forms[0].hspace.value;
|
|
||||||
var width = document.forms[0].width.value;
|
|
||||||
var height = document.forms[0].height.value;
|
|
||||||
var align = document.forms[0].align.options[document.forms[0].align.selectedIndex].value;
|
|
||||||
|
|
||||||
window.opener.tinyMCE.insertImage(src, alt, border, hspace, vspace, width, height, align);
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function init() {
|
|
||||||
var formObj = document.forms[0];
|
|
||||||
|
|
||||||
for (var i=0; i<document.forms[0].align.options.length; i++) {
|
|
||||||
if (document.forms[0].align.options[i].value == tinyMCE.getWindowArg('align'))
|
|
||||||
document.forms[0].align.options.selectedIndex = i;
|
|
||||||
}
|
|
||||||
|
|
||||||
formObj.src.value = tinyMCE.getWindowArg('src');
|
|
||||||
formObj.alt.value = tinyMCE.getWindowArg('alt');
|
|
||||||
formObj.border.value = tinyMCE.getWindowArg('border');
|
|
||||||
formObj.vspace.value = tinyMCE.getWindowArg('vspace');
|
|
||||||
formObj.hspace.value = tinyMCE.getWindowArg('hspace');
|
|
||||||
formObj.width.value = tinyMCE.getWindowArg('width');
|
|
||||||
formObj.height.value = tinyMCE.getWindowArg('height');
|
|
||||||
formObj.insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('action'), 'Insert', true);
|
|
||||||
|
|
||||||
// Handle file browser
|
|
||||||
if (tinyMCE.getParam("file_browser_callback") != null) {
|
|
||||||
document.getElementById('src').style.width = '180px';
|
|
||||||
|
|
||||||
var html = '';
|
|
||||||
|
|
||||||
html += '<img id="browserBtn" src="images/browse.gif"';
|
|
||||||
html += ' onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');"';
|
|
||||||
html += ' onmouseout="tinyMCE.restoreClass(this);"';
|
|
||||||
html += ' onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');"';
|
|
||||||
html += ' onclick="javascript:tinyMCE.openFileBrowser(\'src\',document.forms[0].src.value,\'image\',window);"';
|
|
||||||
html += ' width="20" height="18" border="0" title="' + tinyMCE.getLang('lang_browse') + '"';
|
|
||||||
html += ' class="mceButtonNormal" alt="' + tinyMCE.getLang('lang_browse') + '" />';
|
|
||||||
|
|
||||||
document.getElementById('browser').innerHTML = html;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Auto select image in list
|
|
||||||
if (typeof(tinyMCEImageList) != "undefined" && tinyMCEImageList.length > 0) {
|
|
||||||
for (var i=0; i<formObj.image_list.length; i++) {
|
|
||||||
if (formObj.image_list.options[i].value == tinyMCE.getWindowArg('src'))
|
|
||||||
formObj.image_list.options[i].selected = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Autoresize and focus
|
|
||||||
TinyMCEPopup_autoResize();
|
|
||||||
window.focus();
|
|
||||||
}
|
|
||||||
|
|
||||||
function cancelAction() {
|
|
||||||
top.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
var preloadImg = new Image();
|
|
||||||
|
|
||||||
function resetImageData() {
|
|
||||||
var formObj = document.forms[0];
|
|
||||||
formObj.width.value = formObj.height.value = "";
|
|
||||||
}
|
|
||||||
|
|
||||||
function updateImageData() {
|
|
||||||
var formObj = document.forms[0];
|
|
||||||
|
|
||||||
if (formObj.width.value == "")
|
|
||||||
formObj.width.value = preloadImg.width;
|
|
||||||
|
|
||||||
if (formObj.height.value == "")
|
|
||||||
formObj.height.value = preloadImg.height;
|
|
||||||
}
|
|
||||||
|
|
||||||
function getImageData() {
|
|
||||||
preloadImg = new Image();
|
|
||||||
tinyMCE.addEvent(preloadImg, "load", updateImageData);
|
|
||||||
tinyMCE.addEvent(preloadImg, "error", function () {var formObj = document.forms[0];formObj.width.value = formObj.height.value = "";});
|
|
||||||
preloadImg.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], document.forms[0].src.value);
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="window.focus();init();">
|
|
||||||
<form onsubmit="insertImage();return false;">
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="200">
|
|
||||||
<tr>
|
|
||||||
<td align="center" valign="middle"><table border="0" cellpadding="4" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" class="title" nowrap="nowrap">{$lang_insert_image_title}</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">{$lang_insert_image_src}:</td>
|
|
||||||
<td><table border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tr>
|
|
||||||
<td><input name="src" type="text" id="src" value="" style="width: 200px" onchange="getImageData();"></td>
|
|
||||||
<td id="browser"></td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
<!-- Image list -->
|
|
||||||
<script language="javascript">
|
|
||||||
if (typeof(tinyMCEImageList) != "undefined" && tinyMCEImageList.length > 0) {
|
|
||||||
var html = "";
|
|
||||||
|
|
||||||
html += '<tr><td>{$lang_image_list}:</td>';
|
|
||||||
html += '<td><select name="image_list" style="width: 200px" onchange="this.form.src.value=this.options[this.selectedIndex].value;resetImageData();getImageData();">';
|
|
||||||
html += '<option value="">---</option>';
|
|
||||||
|
|
||||||
for (var i=0; i<tinyMCEImageList.length; i++)
|
|
||||||
html += '<option value="' + tinyMCEImageList[i][1] + '">' + tinyMCEImageList[i][0] + '</option>';
|
|
||||||
|
|
||||||
html += '</select></td></tr>';
|
|
||||||
|
|
||||||
document.write(html);
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<!-- /Image list -->
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">{$lang_insert_image_alt}:</td>
|
|
||||||
<td><input name="alt" type="text" id="alt" value="" style="width: 200px"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">{$lang_insert_image_align}:</td>
|
|
||||||
<td><select name="align">
|
|
||||||
<option value="">{$lang_insert_image_align_default}</option>
|
|
||||||
<option value="baseline">{$lang_insert_image_align_baseline}</option>
|
|
||||||
<option value="top">{$lang_insert_image_align_top}</option>
|
|
||||||
<option value="middle">{$lang_insert_image_align_middle}</option>
|
|
||||||
<option value="bottom">{$lang_insert_image_align_bottom}</option>
|
|
||||||
<option value="texttop">{$lang_insert_image_align_texttop}</option>
|
|
||||||
<option value="absmiddle">{$lang_insert_image_align_absmiddle}</option>
|
|
||||||
<option value="absbottom">{$lang_insert_image_align_absbottom}</option>
|
|
||||||
<option value="left">{$lang_insert_image_align_left}</option>
|
|
||||||
<option value="right">{$lang_insert_image_align_right}</option>
|
|
||||||
</select></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">{$lang_insert_image_dimensions}:</td>
|
|
||||||
<td><input name="width" type="text" id="width" value="" size="3" maxlength="3">
|
|
||||||
x
|
|
||||||
<input name="height" type="text" id="height" value="" size="3" maxlength="3"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">{$lang_insert_image_border}:</td>
|
|
||||||
<td><input name="border" type="text" id="border" value="" size="3" maxlength="3"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">{$lang_insert_image_vspace}:</td>
|
|
||||||
<td><input name="vspace" type="text" id="vspace" value="" size="3" maxlength="3"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">{$lang_insert_image_hspace}:</td>
|
|
||||||
<td><input name="hspace" type="text" id="hspace" value="" size="3" maxlength="3"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap"><input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertImage();">
|
|
||||||
</td>
|
|
||||||
<td align="right"><input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="cancelAction();"></td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 943 B |
Before Width: | Height: | Size: 943 B |
Before Width: | Height: | Size: 864 B |
Before Width: | Height: | Size: 79 B |
Before Width: | Height: | Size: 78 B |
Before Width: | Height: | Size: 77 B |
Before Width: | Height: | Size: 113 B |
Before Width: | Height: | Size: 883 B |
Before Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 855 B |
Before Width: | Height: | Size: 958 B |
Before Width: | Height: | Size: 977 B |
Before Width: | Height: | Size: 110 B |
Before Width: | Height: | Size: 987 B |
Before Width: | Height: | Size: 854 B |
Before Width: | Height: | Size: 358 B |
Before Width: | Height: | Size: 605 B |
Before Width: | Height: | Size: 856 B |
Before Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 844 B |
Before Width: | Height: | Size: 194 B |
Before Width: | Height: | Size: 890 B |
Before Width: | Height: | Size: 860 B |
Before Width: | Height: | Size: 81 B |
Before Width: | Height: | Size: 78 B |
Before Width: | Height: | Size: 856 B |
Before Width: | Height: | Size: 545 B |
Before Width: | Height: | Size: 230 B |
Before Width: | Height: | Size: 889 B |
Before Width: | Height: | Size: 887 B |
Before Width: | Height: | Size: 1022 B |
Before Width: | Height: | Size: 942 B |
Before Width: | Height: | Size: 340 B |
Before Width: | Height: | Size: 855 B |
Before Width: | Height: | Size: 43 B |
Before Width: | Height: | Size: 873 B |
Before Width: | Height: | Size: 900 B |
Before Width: | Height: | Size: 906 B |
Before Width: | Height: | Size: 1018 B |
Before Width: | Height: | Size: 929 B |
Before Width: | Height: | Size: 942 B |
Before Width: | Height: | Size: 936 B |