Adding WYSIWYG. Todo: remove all uneccesary stuff.
git-svn-id: http://svn.automattic.com/wordpress/trunk@2748 1a063a9b-81f0-0310-95a4-ce76da25c4cd
|
@ -9,6 +9,26 @@ if (!isset($_GET["page"])) require_once('admin.php'); ?>
|
|||
<link rel="stylesheet" href="<?php echo get_settings('siteurl') ?>/wp-admin/wp-admin.css?version=<?php bloginfo('version'); ?>" type="text/css" />
|
||||
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_settings('blog_charset'); ?>" />
|
||||
|
||||
<?php if ( get_option('rich_editing') ) :?>
|
||||
<script type="text/javascript" src="tinymce/tiny_mce_gzip.php"></script>
|
||||
<script type="text/javascript">
|
||||
tinyMCE.init({
|
||||
mode : "specific_textareas",
|
||||
textarea_trigger : "title",
|
||||
theme : "advanced",
|
||||
theme_advanced_buttons1 : "bold,italic,strikethrough,separator,bullist,numlist,separator,justifyleft,justifycenter,justifyright,separator,link,unlink,image,emotions,separator,undo,redo,code",
|
||||
theme_advanced_buttons2 : "",
|
||||
theme_advanced_buttons3 : "",
|
||||
theme_advanced_toolbar_location : "top",
|
||||
theme_advanced_toolbar_align : "left",
|
||||
theme_advanced_path_location : "bottom",
|
||||
entity_encoding : "numeric",
|
||||
extended_valid_elements : "a[name|href|target|title|onclick],img[class|src|border=0|alt|title|width|height|align],hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]",
|
||||
plugins : "emotions"
|
||||
});
|
||||
</script>
|
||||
<?php endif; ?>
|
||||
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
|
||||
|
|
|
@ -136,21 +136,23 @@ endforeach;
|
|||
</fieldset>
|
||||
|
||||
<fieldset id="postdiv">
|
||||
<legend><?php _e('Post') ?></legend>
|
||||
<legend><?php _e('Post') ?></legend>
|
||||
<?php if ( !get_option('rich_editing') ) : ?>
|
||||
<?php the_quicktags(); ?>
|
||||
<?php
|
||||
$rows = get_settings('default_post_edit_rows');
|
||||
if (($rows < 3) || ($rows > 100)) {
|
||||
$rows = 10;
|
||||
}
|
||||
?>
|
||||
<div><textarea rows="<?php echo $rows; ?>" cols="40" name="content" tabindex="2" id="content"><?php echo $post->post_content ?></textarea></div>
|
||||
</fieldset>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
edCanvas = document.getElementById('content');
|
||||
//-->
|
||||
</script>
|
||||
<?php endif; ?>
|
||||
<?php
|
||||
$rows = get_settings('default_post_edit_rows');
|
||||
if (($rows < 3) || ($rows > 100)) {
|
||||
$rows = 12;
|
||||
}
|
||||
?>
|
||||
<div><textarea title="true" rows="<?php echo $rows; ?>" cols="40" name="content" tabindex="2" id="content"><?php echo $post->post_content ?></textarea></div>
|
||||
</fieldset>
|
||||
|
||||
<?php echo $form_pingback ?>
|
||||
<?php echo $form_prevstatus ?>
|
||||
|
|
|
@ -11,21 +11,24 @@ include('admin-header.php');
|
|||
<h2><?php _e('Writing Options') ?></h2>
|
||||
<form name="form1" method="post" action="options.php">
|
||||
<input type="hidden" name="action" value="update" />
|
||||
<input type="hidden" name="page_options" value="'default_post_edit_rows','use_smilies','use_balanceTags','ping_sites','mailserver_url', 'mailserver_port','mailserver_login','mailserver_pass','default_category','default_email_category'" />
|
||||
<input type="hidden" name="page_options" value="'default_post_edit_rows','use_smilies','rich_editing','ping_sites','mailserver_url', 'mailserver_port','mailserver_login','mailserver_pass','default_category','default_email_category'" />
|
||||
<table width="100%" cellspacing="2" cellpadding="5" class="editform">
|
||||
<tr valign="top">
|
||||
<th width="33%" scope="row"> <?php _e('Size of the post box:') ?></th>
|
||||
<td><input name="default_post_edit_rows" type="text" id="default_post_edit_rows" value="<?php form_option('default_post_edit_rows'); ?>" size="2" style="width: 1.5em; " />
|
||||
<?php _e('lines') ?></td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<th scope="row"><?php _e('Formatting:') ?></th>
|
||||
<td> <label for="label">
|
||||
<input name="use_smilies" type="checkbox" id="label" value="1" <?php checked('1', get_settings('use_smilies')); ?> />
|
||||
<?php _e('Convert emoticons like <code>:-)</code> and <code>:-P</code> to graphics on display') ?></label> <br /> <label for="label2">
|
||||
<input name="use_balanceTags" type="checkbox" id="label2" value="1" <?php checked('1', get_settings('use_balanceTags')); ?> />
|
||||
<?php _e('WordPress should correct invalidly nested XHTML automatically') ?></label></td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<th scope="row"><?php _e('Formatting:') ?></th>
|
||||
<td>
|
||||
<label for="rich_editing">
|
||||
<input name="rich_editing" type="checkbox" id="rich_editing" value="true" <?php checked('true', get_settings('rich_editing')); ?> />
|
||||
<?php _e('Use the visual rich editor when writing') ?></label><br />
|
||||
<label for="use_smilies">
|
||||
<input name="use_smilies" type="checkbox" id="use_smilies" value="1" <?php checked('1', get_settings('use_smilies')); ?> />
|
||||
<?php _e('Convert emoticons like <code>:-)</code> and <code>:-P</code> to graphics on display') ?></label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<th scope="row"><?php _e('Default post category:') ?></th>
|
||||
<td><select name="default_category" id="default_category">
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
<!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 class="mceContentBody">
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,39 @@
|
|||
// 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?';
|
||||
tinyMCELang['lang_popup_blocked'] = 'Sorry, but we have noticed that your popup-blocker has disabled a window that provides application functionality. You will need to disable popup blocking on this site in order to fully utilize this tool.';
|
|
@ -0,0 +1,60 @@
|
|||
.contextMenuIEPopup {
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
border: 0px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.contextMenu {
|
||||
position: absolute;
|
||||
cursor: default;
|
||||
z-index: 1000;
|
||||
border: 1px solid #D4D0C8;
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
|
||||
.contextMenuItem, .contextMenuItemOver {
|
||||
}
|
||||
|
||||
.contextMenuItemOver {
|
||||
background-color: #B6BDD2;
|
||||
}
|
||||
|
||||
.contextMenuSeparator {
|
||||
width: 100%;
|
||||
background-color: #D4D0C8;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
.contextMenuImage, .contextMenuItemDisabled {
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
.contextMenuIcon {
|
||||
background-color: #F0F0EE;
|
||||
}
|
||||
|
||||
.contextMenuItemOver .contextMenuIcon {
|
||||
background-color: #B6BDD2;
|
||||
}
|
||||
|
||||
.contextMenuIcon {
|
||||
background-color: #F0F0EE;
|
||||
}
|
||||
|
||||
.contextMenuItemDisabled img {
|
||||
filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30);
|
||||
-moz-opacity:0.3;
|
||||
opacity: 0.3;
|
||||
}
|
||||
|
||||
.contextMenuText {
|
||||
font-family: Tahoma, Verdana, Arial, Helvetica;
|
||||
font-size: 11px;
|
||||
margin-left: 5px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.contextMenuItemDisabled {
|
||||
color: #AAAAAA;
|
||||
}
|
|
@ -0,0 +1,292 @@
|
|||
/* Import plugin specific language pack */
|
||||
//tinyMCE.importPluginLanguagePack('contextmenu', 'en,zh_cn,cs,fa,fr_ca,fr,de');
|
||||
if (!tinyMCE.settings['contextmenu_skip_plugin_css'])
|
||||
tinyMCE.loadCSS(tinyMCE.baseURL + "/plugins/contextmenu/contextmenu.css");
|
||||
|
||||
// Global contextmenu class instance
|
||||
var TinyMCE_contextmenu_contextMenu = null;
|
||||
|
||||
function TinyMCE_contextmenu_initInstance(inst) {
|
||||
// Is not working on MSIE 5.0
|
||||
if (tinyMCE.isMSIE5_0)
|
||||
return;
|
||||
|
||||
// Add hide event handles
|
||||
tinyMCE.addEvent(inst.getDoc(), "click", TinyMCE_contextmenu_hideContextMenu);
|
||||
tinyMCE.addEvent(inst.getDoc(), "keypress", TinyMCE_contextmenu_hideContextMenu);
|
||||
tinyMCE.addEvent(inst.getDoc(), "keydown", TinyMCE_contextmenu_hideContextMenu);
|
||||
tinyMCE.addEvent(document, "click", TinyMCE_contextmenu_hideContextMenu);
|
||||
tinyMCE.addEvent(document, "keypress", TinyMCE_contextmenu_hideContextMenu);
|
||||
tinyMCE.addEvent(document, "keydown", TinyMCE_contextmenu_hideContextMenu);
|
||||
|
||||
var contextMenu = new ContextMenu({
|
||||
commandhandler : "TinyMCE_contextmenu_commandHandler",
|
||||
spacer_image : tinyMCE.baseURL + "/plugins/contextmenu/images/spacer.gif"
|
||||
});
|
||||
|
||||
// Register global reference
|
||||
TinyMCE_contextmenu_contextMenu = contextMenu;
|
||||
|
||||
// Attach contextmenu event
|
||||
if (tinyMCE.isGecko) {
|
||||
tinyMCE.addEvent(inst.getDoc(), "contextmenu", function(e) {TinyMCE_contextmenu_showContextMenu(tinyMCE.isMSIE ? inst.contentWindow.event : e, inst);});
|
||||
} else
|
||||
tinyMCE.addEvent(inst.getDoc(), "contextmenu", TinyMCE_contextmenu_onContextMenu);
|
||||
}
|
||||
|
||||
function TinyMCE_contextmenu_onContextMenu(e) {
|
||||
var elm = tinyMCE.isMSIE ? e.srcElement : e.target;
|
||||
var targetInst, body;
|
||||
|
||||
// Find instance
|
||||
if ((body = tinyMCE.getParentElement(elm, "body")) != null) {
|
||||
for (var n in tinyMCE.instances) {
|
||||
var inst = tinyMCE.instances[n];
|
||||
|
||||
if (body == inst.getBody()) {
|
||||
targetInst = inst;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return TinyMCE_contextmenu_showContextMenu(tinyMCE.isMSIE ? targetInst.contentWindow.event : e, targetInst);
|
||||
}
|
||||
}
|
||||
|
||||
function TinyMCE_contextmenu_showContextMenu(e, inst) {
|
||||
function getAttrib(elm, name) {
|
||||
return elm.getAttribute(name) ? elm.getAttribute(name) : "";
|
||||
}
|
||||
|
||||
var x, y, elm, contextMenu;
|
||||
var pos = tinyMCE.getAbsPosition(inst.iframeElement);
|
||||
|
||||
x = tinyMCE.isMSIE ? e.screenX : pos.absLeft + (e.pageX - inst.getBody().scrollLeft);
|
||||
y = tinyMCE.isMSIE ? e.screenY : pos.absTop + (e.pageY - inst.getBody().scrollTop);
|
||||
elm = tinyMCE.isMSIE ? e.srcElement : e.target;
|
||||
contextMenu = TinyMCE_contextmenu_contextMenu;
|
||||
contextMenu.inst = inst;
|
||||
|
||||
// Mozilla needs some time
|
||||
window.setTimeout(function () {
|
||||
var theme = tinyMCE.getParam("theme");
|
||||
|
||||
contextMenu.clearAll();
|
||||
var sel = inst.getSelectedText().length != 0 || elm.nodeName == "IMG";
|
||||
|
||||
// Default items
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/cut.gif", "$lang_cut_desc", "Cut", "", !sel);
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/copy.gif", "$lang_copy_desc", "Copy", "", !sel);
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/paste.gif", "$lang_paste_desc", "Paste", "", false);
|
||||
|
||||
// Get element
|
||||
elm = tinyMCE.getParentElement(elm, "img,table,td");
|
||||
if (elm) {
|
||||
switch (elm.nodeName) {
|
||||
case "IMG":
|
||||
contextMenu.addSeparator();
|
||||
|
||||
// If flash
|
||||
if (tinyMCE.getAttrib(elm, 'name', '').indexOf('mce_plugin_flash') == 0)
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/flash/images/flash.gif", "$lang_flash_props", "mceFlash");
|
||||
else
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/image.gif", "$lang_image_props_desc", "mceImage");
|
||||
break;
|
||||
|
||||
case "TABLE":
|
||||
case "TD":
|
||||
// Is table plugin loaded
|
||||
if (typeof(TinyMCE_table_getControlHTML) != "undefined") {
|
||||
var colspan = (elm.nodeName == "TABLE") ? "" : getAttrib(elm, "colspan");
|
||||
var rowspan = (elm.nodeName == "TABLE") ? "" : getAttrib(elm, "rowspan");
|
||||
|
||||
colspan = colspan == "" ? "1" : colspan;
|
||||
rowspan = rowspan == "" ? "1" : rowspan;
|
||||
|
||||
contextMenu.addSeparator();
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/cut.gif", "$lang_table_cut_row_desc", "mceTableCutRow");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/copy.gif", "$lang_table_copy_row_desc", "mceTableCopyRow");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/paste.gif", "$lang_table_paste_row_before_desc", "mceTablePasteRowBefore", "", inst.tableRowClipboard == null);
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/paste.gif", "$lang_table_paste_row_after_desc", "mceTablePasteRowAfter", "", inst.tableRowClipboard == null);
|
||||
|
||||
/* contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/left.gif", "$lang_justifyleft_desc", "JustifyLeft", "", false);
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/center.gif", "$lang_justifycenter_desc", "JustifyCenter", "", false);
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/right.gif", "$lang_justifyright_desc", "JustifyRight", "", false);
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/full.gif", "$lang_justifyfull_desc", "JustifyFull", "", false);*/
|
||||
contextMenu.addSeparator();
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table.gif", "$lang_table_insert_desc", "mceInsertTable", "insert");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table.gif", "$lang_table_props_desc", "mceInsertTable");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_cell_props.gif", "$lang_table_cell_desc", "mceTableCellProps");
|
||||
contextMenu.addSeparator();
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_row_props.gif", "$lang_table_row_desc", "mceTableRowProps");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_insert_row_before.gif", "$lang_table_insert_row_before_desc", "mceTableInsertRowBefore");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_insert_row_after.gif", "$lang_table_insert_row_after_desc", "mceTableInsertRowAfter");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_delete_row.gif", "$lang_table_delete_row_desc", "mceTableDeleteRow");
|
||||
contextMenu.addSeparator();
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_insert_col_before.gif", "$lang_table_insert_col_before_desc", "mceTableInsertColBefore");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_insert_col_after.gif", "$lang_table_insert_col_after_desc", "mceTableInsertColAfter");
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_delete_col.gif", "$lang_table_delete_col_desc", "mceTableDeleteCol");
|
||||
contextMenu.addSeparator();
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_split_cells.gif", "$lang_table_split_cells_desc", "mceTableSplitCells", "", (colspan == "1" && rowspan == "1"));
|
||||
contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_merge_cells.gif", "$lang_table_merge_cells_desc", "mceTableMergeCells", "", false);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
contextMenu.show(x, y);
|
||||
}, 10);
|
||||
|
||||
// Cancel default handeling
|
||||
tinyMCE.cancelEvent(e);
|
||||
return false;
|
||||
}
|
||||
|
||||
function TinyMCE_contextmenu_hideContextMenu() {
|
||||
TinyMCE_contextmenu_contextMenu.hide();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function TinyMCE_contextmenu_commandHandler(command, value) {
|
||||
TinyMCE_contextmenu_contextMenu.hide();
|
||||
|
||||
// UI must be true on these
|
||||
var ui = false;
|
||||
if (command == "mceInsertTable" || command == "mceTableCellProps" || command == "mceTableRowProps" || command == "mceTableMergeCells")
|
||||
ui = true;
|
||||
|
||||
if (command == "Paste")
|
||||
value = null;
|
||||
|
||||
TinyMCE_contextmenu_contextMenu.inst.execCommand(command, ui, value);
|
||||
}
|
||||
|
||||
// Context menu class
|
||||
|
||||
function ContextMenu(settings) {
|
||||
// Default value function
|
||||
function defParam(key, def_val) {
|
||||
settings[key] = typeof(settings[key]) != "undefined" ? settings[key] : def_val;
|
||||
}
|
||||
|
||||
var self = this;
|
||||
|
||||
this.isMSIE = (navigator.appName == "Microsoft Internet Explorer");
|
||||
|
||||
// Setup contextmenu div
|
||||
this.contextMenuDiv = document.createElement("div");
|
||||
this.contextMenuDiv.className = "contextMenu";
|
||||
this.contextMenuDiv.setAttribute("class", "contextMenu");
|
||||
this.contextMenuDiv.style.display = "none";
|
||||
this.contextMenuDiv.style.position = 'absolute';
|
||||
this.contextMenuDiv.style.zindex = 1000;
|
||||
this.contextMenuDiv.style.left = '0px';
|
||||
this.contextMenuDiv.style.top = '0px';
|
||||
this.contextMenuDiv.unselectable = "on";
|
||||
|
||||
document.body.appendChild(this.contextMenuDiv);
|
||||
|
||||
// Setup default values
|
||||
defParam("commandhandler", "");
|
||||
defParam("spacer_image", "images/spacer.gif");
|
||||
|
||||
this.items = new Array();
|
||||
this.settings = settings;
|
||||
this.html = "";
|
||||
|
||||
// IE Popup
|
||||
if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0) {
|
||||
this.pop = window.createPopup();
|
||||
doc = this.pop.document;
|
||||
doc.open();
|
||||
doc.write('<html><head><link href="' + tinyMCE.baseURL + '/plugins/contextmenu/contextmenu.css" rel="stylesheet" type="text/css" /></head><body unselectable="yes" class="contextMenuIEPopup"></body></html>');
|
||||
doc.close();
|
||||
}
|
||||
};
|
||||
|
||||
ContextMenu.prototype.clearAll = function() {
|
||||
this.html = "";
|
||||
this.contextMenuDiv.innerHTML = "";
|
||||
};
|
||||
|
||||
ContextMenu.prototype.addSeparator = function() {
|
||||
this.html += '<tr class="contextMenuItem"><td class="contextMenuIcon"><img src="' + this.settings['spacer_image'] + '" width="20" height="1" class="contextMenuImage" /></td><td><img class="contextMenuSeparator" width="1" height="1" src="' + this.settings['spacer_image'] + '" /></td></tr>';
|
||||
};
|
||||
|
||||
ContextMenu.prototype.addItem = function(icon, title, command, value, disabled) {
|
||||
if (title.charAt(0) == '$')
|
||||
title = tinyMCE.getLang(title.substring(1));
|
||||
|
||||
var onMouseDown = '';
|
||||
var html = '';
|
||||
|
||||
if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0)
|
||||
onMouseDown = 'contextMenu.execCommand(\'' + command + '\', \'' + value + '\');return false;';
|
||||
else
|
||||
onMouseDown = this.settings['commandhandler'] + '(\'' + command + '\', \'' + value + '\');return false;';
|
||||
|
||||
if (icon == "")
|
||||
icon = this.settings['spacer_image'];
|
||||
|
||||
if (!disabled)
|
||||
html += '<tr class="contextMenuItem" onmousedown="' + onMouseDown + '" onmouseover="tinyMCE.switchClass(this,\'contextMenuItemOver\');" onmouseout="tinyMCE.switchClass(this,\'contextMenuItem\');">';
|
||||
else
|
||||
html += '<tr class="contextMenuItemDisabled">';
|
||||
|
||||
html += '<td class="contextMenuIcon"><img src="' + icon + '" width="20" height="20" class="contextMenuImage" /></td>';
|
||||
html += '<td><div class="contextMenuText">';
|
||||
|
||||
// Add text
|
||||
html += title;
|
||||
|
||||
html += '</div></td>';
|
||||
html += '</tr>';
|
||||
|
||||
// Add to main
|
||||
this.html += html;
|
||||
};
|
||||
|
||||
ContextMenu.prototype.show = function(x, y) {
|
||||
if (this.html == "")
|
||||
return;
|
||||
|
||||
var html = '';
|
||||
|
||||
html += '<table border="0" cellpadding="0" cellspacing="0">';
|
||||
html += this.html;
|
||||
html += '</table>';
|
||||
|
||||
this.contextMenuDiv.innerHTML = html;
|
||||
|
||||
if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0) {
|
||||
var width, height;
|
||||
|
||||
// Get dimensions
|
||||
this.contextMenuDiv.style.display = "block";
|
||||
width = this.contextMenuDiv.offsetWidth;
|
||||
height = this.contextMenuDiv.offsetHeight;
|
||||
this.contextMenuDiv.style.display = "none";
|
||||
|
||||
// Setup popup and show
|
||||
this.pop.document.body.innerHTML = '<div class="contextMenu">' + html + "</div>";
|
||||
this.pop.document.tinyMCE = tinyMCE;
|
||||
this.pop.document.contextMenu = this;
|
||||
this.pop.show(x, y, width, height);
|
||||
} else {
|
||||
this.contextMenuDiv.style.left = x + 'px';
|
||||
this.contextMenuDiv.style.top = y + 'px';
|
||||
this.contextMenuDiv.style.display = "block";
|
||||
}
|
||||
};
|
||||
|
||||
ContextMenu.prototype.hide = function() {
|
||||
if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0)
|
||||
this.pop.hide();
|
||||
else
|
||||
this.contextMenuDiv.style.display = "none";
|
||||
};
|
||||
|
||||
ContextMenu.prototype.execCommand = function(command, value) {
|
||||
eval(this.settings['commandhandler'] + "(command, value);");
|
||||
};
|
After Width: | Height: | Size: 43 B |
|
@ -0,0 +1 @@
|
|||
Check the TinyMCE documentation for details on this plugin.
|
|
@ -0,0 +1,2 @@
|
|||
/* Import plugin specific language pack */
|
||||
tinyMCE.importPluginLanguagePack('emotions','en,sv,zh_cn,cs,fa,fr_ca,fr,de,pl,pt_br,nl');function TinyMCE_emotions_getControlHTML(control_name){switch(control_name){case "emotions":return '<img id="{$editor_id}_emotions" src="{$pluginurl}/images/emotions.gif" title="{$lang_emotions_desc}" width="20" height="20" class="mceButtonNormal" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.restoreClass(this);" onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceEmotion\');">';}return "";}function TinyMCE_emotions_execCommand(editor_id,element,command,user_interface,value){switch(command){case "mceEmotion":var template=new Array();template['file']='../../plugins/emotions/emotions.htm';template['width']=150;template['height']=180;tinyMCE.openWindow(template,{editor_id:editor_id});return true;}return false;}
|
|
@ -0,0 +1,36 @@
|
|||
/* Import plugin specific language pack */
|
||||
tinyMCE.importPluginLanguagePack('emotions', 'en,sv,zh_cn,cs,fa,fr_ca,fr,de,pl,pt_br,nl');
|
||||
|
||||
/**
|
||||
* Returns the HTML contents of the emotions control.
|
||||
*/
|
||||
function TinyMCE_emotions_getControlHTML(control_name) {
|
||||
switch (control_name) {
|
||||
case "emotions":
|
||||
return '<img id="{$editor_id}_emotions" src="{$pluginurl}/images/emotions.gif" title="{$lang_emotions_desc}" width="20" height="20" class="mceButtonNormal" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.restoreClass(this);" onmousedown="tinyMCE.restoreAndSwitchClass(this,\'mceButtonDown\');tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceEmotion\');">';
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
/**
|
||||
* Executes the mceEmotion command.
|
||||
*/
|
||||
function TinyMCE_emotions_execCommand(editor_id, element, command, user_interface, value) {
|
||||
// Handle commands
|
||||
switch (command) {
|
||||
case "mceEmotion":
|
||||
var template = new Array();
|
||||
|
||||
template['file'] = '../../plugins/emotions/emotions.htm'; // Relative to theme
|
||||
template['width'] = 150;
|
||||
template['height'] = 180;
|
||||
|
||||
tinyMCE.openWindow(template, {editor_id : editor_id});
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// Pass to next handler in chain
|
||||
return false;
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
<html>
|
||||
<head>
|
||||
<title>{$lang_insert_emotions_title}</title>
|
||||
<script language="javascript" src="../../tiny_mce_popup.js"></script>
|
||||
<script language="javascript">
|
||||
function insertEmotion(file_name) {
|
||||
if (window.opener) {
|
||||
tinyMCE.insertImage(tinyMCE.baseURL + "/plugins/emotions/images/" + file_name);
|
||||
window.close();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body onload="">
|
||||
<div align="center">
|
||||
<div class="title">{$lang_insert_emotions_title}:<br /><br /></div>
|
||||
<table border="0" cellspacing="0" cellpadding="4">
|
||||
<tr>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-cool.gif');"><img src="images/smiley-cool.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-cry.gif');"><img src="images/smiley-cry.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-embarassed.gif');"><img src="images/smiley-embarassed.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-foot-in-mouth.gif');"><img src="images/smiley-foot-in-mouth.gif" width="18" height="18" border="0" /></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-frown.gif');"><img src="images/smiley-frown.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-innocent.gif');"><img src="images/smiley-innocent.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-kiss.gif');"><img src="images/smiley-kiss.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-laughing.gif');"><img src="images/smiley-laughing.gif" width="18" height="18" border="0" /></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-money-mouth.gif');"><img src="images/smiley-money-mouth.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-sealed.gif');"><img src="images/smiley-sealed.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-smile.gif');"><img src="images/smiley-smile.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-surprised.gif');"><img src="images/smiley-surprised.gif" width="18" height="18" border="0" /></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-tongue-out.gif');"><img src="images/smiley-tongue-out.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-undecided.gif');"><img src="images/smiley-undecided.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-wink.gif');"><img src="images/smiley-wink.gif" width="18" height="18" border="0" /></a></td>
|
||||
<td><a href="javascript:void(0);" onmousedown="insertEmotion('smiley-yell.gif');"><img src="images/smiley-yell.gif" width="18" height="18" border="0" /></a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,2 @@
|
|||
These emotions where taken from Mozilla Thunderbird.
|
||||
I hope they don't get angry if I use them here after all this is a open source project aswell.
|
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,4 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Vložit emotikon';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Emotikony';
|
|
@ -0,0 +1,6 @@
|
|||
// DE lang variables
|
||||
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Emotion einfügen';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Emotion';
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
// Greek lang variables by Jacaranda Bill
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'ÅéóáãùãÞ åíüò åéêïíéäßïõ emoticon';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Åéêïíßäéá emoticons';
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Insert emotion';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Emotions';
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
// IR lang variables
|
||||
// Persian (Farsi) language pack (for IRAN)
|
||||
// By: Morteza Zafari
|
||||
// Lost@LostLord.com
|
||||
// http://www.LostLord.com
|
||||
|
||||
tinyMCELang['lang_dir'] = 'rtl';
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'افزودن شکلک';
|
||||
tinyMCELang['lang_emotions_desc'] = 'شکلکها';
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
// French lang variables by Laurent Dran
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Insèrer un émoticon';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Émoticons';
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
// Canadian French lang variables by Virtuelcom last modification: 2005-06-15
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Insérer un émoticon';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Émoticons';
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
//IT lang variables
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Inserisci una emoticon';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Emoticon';
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
// KO lang variables
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = '이모티콘 넣기';
|
||||
tinyMCELang['lang_emotions_desc'] = '이모티콘';
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
// NL lang variables
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Emotion invoegen';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Smilie';
|
|
@ -0,0 +1,4 @@
|
|||
// PL lang variables
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Wstaw emtoiconę';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Emtoicony';
|
|
@ -0,0 +1,5 @@
|
|||
// pt_BR lang variables
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Inserir Emoticon';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Emoticons';
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
// SE lang variables
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = 'Klistra in känsla';
|
||||
tinyMCELang['lang_emotions_desc'] = 'Känslor';
|
|
@ -0,0 +1,6 @@
|
|||
// Simplified Chinese lang variables contributed by cube316 (cube316@gmail.com)
|
||||
//请访问 http://www.cube316.net/ 以获取TinyMCE的中文支持
|
||||
|
||||
tinyMCELang['lang_insert_emotions_title'] = '插入表情';
|
||||
tinyMCELang['lang_emotions_desc'] = '表情';
|
||||
|
|
@ -0,0 +1 @@
|
|||
Check the TinyMCE documentation for details on this plugin.
|
|
@ -0,0 +1,2 @@
|
|||
/* Import plugin specific language pack */
|
||||
tinyMCE.importPluginLanguagePack('iespell','cs,el,en,fr_ca,it,ko,sv,zh_cn,fr,de,pl,pt_br,nl');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;}
|
|
@ -0,0 +1,37 @@
|
|||
/* Import plugin specific language pack */
|
||||
tinyMCE.importPluginLanguagePack('iespell', 'cs,el,en,fr_ca,it,ko,sv,zh_cn,fr,de,pl,pt_br,nl');
|
||||
|
||||
/**
|
||||
* 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;
|
||||
}
|
After Width: | Height: | Size: 151 B |
|
@ -0,0 +1,4 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Spustit kontrolu pravopisu';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell nedetekován. Kliknìte na OK a otevøete stahovací stránku."
|
|
@ -0,0 +1,4 @@
|
|||
// DE lang variables by Tobias Heer
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Rechtschreibprüfung';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell nicht gefunden. Klicken Sie OK um auf die Download Seite zu gelangen."
|
|
@ -0,0 +1,4 @@
|
|||
// Greek lang variables by Jacaranda Bill
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Ορθογραφικός έλεγχος';
|
||||
tinyMCELang['lang_iespell_download'] = "Το πρόγραμμα ieSpell δεν βρέθηκε. Πατήστε OK για να μεταβείτε στην ιστοσελίδα λήψης του προγράμματος."
|
|
@ -0,0 +1,4 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Run spell checking';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell not detected. Click OK to go to download page."
|
|
@ -0,0 +1,4 @@
|
|||
// French lang variables by Laurent Dran
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Executer le vérificateur d\'orthographe';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell n\'a pas été trouvé. Cliquez sur OK pour aller au site de téléchargement."
|
|
@ -0,0 +1,4 @@
|
|||
// Canadian French lang variables by Virtuelcom last modification: 2005-06-15
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Executer le vérificateur d\'orthographe';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell n\'a pas été trouvé. Cliquez sur OK pour aller au site de téléchargement.";
|
|
@ -0,0 +1,4 @@
|
|||
// IT lang variables
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Avvia il controllo ortografico';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell non trovato. Clicca OK per andare alla pagina di download."
|
|
@ -0,0 +1,4 @@
|
|||
// KO lang variables
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = '맞춤법 검사 실행';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell을 찾을 수 없습니다. OK를 누르면 다운로드 페이지로 이동합니다."
|
|
@ -0,0 +1,4 @@
|
|||
// NL lang variables
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Spelling checker';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell niet gedetecteerd. Klik OK om naar de download pagina te gaan."
|
|
@ -0,0 +1,4 @@
|
|||
// PL lang variables
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Uruchom sprawdzanie pisowni';
|
||||
tinyMCELang['lang_iespell_download'] = "Nie wykryto pluginu, kliknij aby przejść do strony z pluginami."
|
|
@ -0,0 +1,4 @@
|
|||
// pt_BR lang variables
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Executar verificação ortográfica';
|
||||
tinyMCELang['lang_iespell_download'] = "Verificador ieSpell não detectado. Click OK para ir à página de download."
|
|
@ -0,0 +1,4 @@
|
|||
// SE lang variables
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = 'Kör rättstavningskontroll';
|
||||
tinyMCELang['lang_iespell_download'] = "ieSpell verkar inte vara installerad. Klicka OK för att ladda hem."
|
|
@ -0,0 +1,5 @@
|
|||
// Simplified Chinese lang variables contributed by cube316 (cube316@gmail.com)
|
||||
//请访问 http://www.cube316.net/ 以获取TinyMCE的中文支持
|
||||
|
||||
tinyMCELang['lang_iespell_desc'] = '运行拼写检查';
|
||||
tinyMCELang['lang_iespell_download'] = "未检测到ieSpell拼写检查,点击 OK 前往下载页面。"
|
|
@ -0,0 +1 @@
|
|||
Check the TinyMCE documentation for details on this plugin.
|
|
@ -0,0 +1,2 @@
|
|||
/* Import plugin specific language pack */
|
||||
tinyMCE.importPluginLanguagePack('preview','cs,de,el,en,fr_ca,it,ko,pt,sv,zh_cn,fa,fr,pl,pt_br,nl');function TinyMCE_preview_getControlHTML(control_name){switch(control_name){case "preview":return '<img id="{$editor_id}_preview" src="{$pluginurl}/images/preview.gif" title="{$lang_preview_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}\',\'mcePreview\');" />';}return "";}function TinyMCE_preview_execCommand(editor_id,element,command,user_interface,value){switch(command){case "mcePreview":var previewPage=tinyMCE.getParam("plugin_preview_pageurl",null);var previewWidth=tinyMCE.getParam("plugin_preview_width","550");var previewHeight=tinyMCE.getParam("plugin_preview_height","600");if(previewPage){var template=new Array();template['file']=previewPage;template['width']=previewWidth;template['height']=previewHeight;tinyMCE.openWindow(template,{editor_id:editor_id,resizable:"yes",scrollbars:"yes",content:tinyMCE.getContent(),content_css:tinyMCE.getParam("content_css")});}else{var win=window.open("","mcePreview","menubar=no,toolbar=no,scrollbars=yes,resizable=yes,left=20,top=20,width="+previewWidth+",height="+previewHeight);var html="";html+='<!doctype html public "-//w3c//dtd html 4.0 transitional//en">';html+='<html>';html+='<head>';html+='<title>'+tinyMCE.getLang('lang_preview_desc')+'</title>';html+='<base href="'+tinyMCE.getParam("document_base_url")+'">';html+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">';html+='<link href="'+tinyMCE.getParam("content_css")+'" rel="stylesheet" type="text/css">';html+='</head>';html+='<body>';html+=tinyMCE.getContent();html+='</body>';html+='</html>';win.document.write(html);win.document.close();}return true;}return false;}
|
|
@ -0,0 +1,62 @@
|
|||
/* Import plugin specific language pack */
|
||||
tinyMCE.importPluginLanguagePack('preview', 'cs,de,el,en,fr_ca,it,ko,pt,sv,zh_cn,fa,fr,pl,pt_br,nl');
|
||||
|
||||
/**
|
||||
* Returns the HTML contents of the preview control.
|
||||
*/
|
||||
function TinyMCE_preview_getControlHTML(control_name) {
|
||||
switch (control_name) {
|
||||
case "preview":
|
||||
return '<img id="{$editor_id}_preview" src="{$pluginurl}/images/preview.gif" title="{$lang_preview_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}\',\'mcePreview\');" />';
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
/**
|
||||
* Executes the mcePreview command.
|
||||
*/
|
||||
function TinyMCE_preview_execCommand(editor_id, element, command, user_interface, value) {
|
||||
// Handle commands
|
||||
switch (command) {
|
||||
case "mcePreview":
|
||||
var previewPage = tinyMCE.getParam("plugin_preview_pageurl", null);
|
||||
var previewWidth = tinyMCE.getParam("plugin_preview_width", "550");
|
||||
var previewHeight = tinyMCE.getParam("plugin_preview_height", "600");
|
||||
|
||||
// Use a custom preview page
|
||||
if (previewPage) {
|
||||
var template = new Array();
|
||||
|
||||
template['file'] = previewPage;
|
||||
template['width'] = previewWidth;
|
||||
template['height'] = previewHeight;
|
||||
|
||||
tinyMCE.openWindow(template, {editor_id : editor_id, resizable : "yes", scrollbars : "yes", content : tinyMCE.getContent(), content_css : tinyMCE.getParam("content_css")});
|
||||
} else {
|
||||
var win = window.open("", "mcePreview", "menubar=no,toolbar=no,scrollbars=yes,resizable=yes,left=20,top=20,width=" + previewWidth + ",height=" + previewHeight);
|
||||
var html = "";
|
||||
|
||||
html += '<!doctype html public "-//w3c//dtd html 4.0 transitional//en">';
|
||||
html += '<html>';
|
||||
html += '<head>';
|
||||
html += '<title>' + tinyMCE.getLang('lang_preview_desc') + '</title>';
|
||||
html += '<base href="' + tinyMCE.getParam("document_base_url") + '">';
|
||||
html += '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">';
|
||||
html += '<link href="' + tinyMCE.getParam("content_css") + '" rel="stylesheet" type="text/css">';
|
||||
html += '</head>';
|
||||
html += '<body>';
|
||||
html += tinyMCE.getContent();
|
||||
html += '</body>';
|
||||
html += '</html>';
|
||||
|
||||
win.document.write(html);
|
||||
win.document.close();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// Pass to next handler in chain
|
||||
return false;
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||
<html>
|
||||
<head>
|
||||
<script language="javascript" src="../../tiny_mce_popup.js"></script>
|
||||
<title>Example of a custom preview page</title>
|
||||
<link href="{$content_css}" rel="stylesheet" type="text/css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
Editor contents: <br />
|
||||
{$content}
|
||||
|
||||
</body>
|
||||
</html>
|
After Width: | Height: | Size: 1.0 KiB |
|
@ -0,0 +1,3 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Náhled';
|
|
@ -0,0 +1,3 @@
|
|||
// DE lang variables by Tobias Heer
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Vorschau';
|
|
@ -0,0 +1,3 @@
|
|||
// Greek lang variables by Jacaranda Bill
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Ðñïåðéóêüðçóç éóôïóåëßäáò';
|
|
@ -0,0 +1,3 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Preview';
|
|
@ -0,0 +1,8 @@
|
|||
// IR lang variables
|
||||
// Persian (Farsi) language pack (for IRAN)
|
||||
// By: Morteza Zafari
|
||||
// Lost@LostLord.com
|
||||
// http://www.LostLord.com
|
||||
|
||||
tinyMCELang['lang_dir'] = 'rtl';
|
||||
tinyMCELang['lang_preview_desc'] = 'پیش نمایش';
|
|
@ -0,0 +1,3 @@
|
|||
// French lang variables by Laurent Dran
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Prévisualisation';
|
|
@ -0,0 +1,3 @@
|
|||
// Canadian French lang variables by Virtuelcom last modification: 2005-06-15
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Prévisualisation';
|
|
@ -0,0 +1,3 @@
|
|||
// IT lang variables
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Anteprima';
|
|
@ -0,0 +1,3 @@
|
|||
// KO lang variables
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = '미리보기';
|
|
@ -0,0 +1,3 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Voorbeeld';
|
|
@ -0,0 +1,4 @@
|
|||
// PL lang variables
|
||||
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Podgląd';
|
|
@ -0,0 +1,3 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Pré-visualização';
|
|
@ -0,0 +1,3 @@
|
|||
// pt_BR lang variables
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Visualizar';
|
|
@ -0,0 +1,3 @@
|
|||
// SE lang variables
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Förhandsgranska';
|
|
@ -0,0 +1,3 @@
|
|||
// Simplified Chinese lang variables contributed by cube316 (cube316@etang.com)
|
||||
|
||||
tinyMCELang['lang_preview_desc'] = 'Ô¤ÀÀ';
|
|
@ -0,0 +1 @@
|
|||
Check the TinyMCE documentation for details on this plugin.
|
|
@ -0,0 +1,2 @@
|
|||
/* Import plugin specific language pack */
|
||||
tinyMCE.importPluginLanguagePack('save','en,zh_cn,cs,fa,fr_ca,fr,de,pl,pt_br,nl');function TinyMCE_save_getControlHTML(control_name){switch(control_name){case "save":return '<img id="{$editor_id}_save" src="{$pluginurl}/images/save.gif" title="{$lang_save_desc}" width="20" height="20" class="mceButtonNormal" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.switchClass(this,\'mceButtonNormal\');" onmousedown="tinyMCE.switchClass(this,\'mceButtonDown\');" onclick="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceSave\');" />';}return "";}function TinyMCE_save_execCommand(editor_id,element,command,user_interface,value){switch(command){case "mceSave":var formObj=tinyMCE.selectedInstance.formElement.form;if(formObj){tinyMCE.triggerSave();for(var i=0;i<formObj.elements.length;i++){var elementId=formObj.elements[i].name?formObj.elements[i].name:formObj.elements[i].id;if(elementId.indexOf('mce_editor_')==0)formObj.elements[i].disabled=true;}tinyMCE.selectedInstance.formElement.form.submit();}else alert("Error: No form element found.");return true;}return false;}
|
|
@ -0,0 +1,43 @@
|
|||
/* Import plugin specific language pack */
|
||||
tinyMCE.importPluginLanguagePack('save', 'en,zh_cn,cs,fa,fr_ca,fr,de,pl,pt_br,nl');
|
||||
|
||||
/**
|
||||
* Returns the HTML contents of the save control.
|
||||
*/
|
||||
function TinyMCE_save_getControlHTML(control_name) {
|
||||
switch (control_name) {
|
||||
case "save":
|
||||
return '<img id="{$editor_id}_save" src="{$pluginurl}/images/save.gif" title="{$lang_save_desc}" width="20" height="20" class="mceButtonNormal" onmouseover="tinyMCE.switchClass(this,\'mceButtonOver\');" onmouseout="tinyMCE.switchClass(this,\'mceButtonNormal\');" onmousedown="tinyMCE.switchClass(this,\'mceButtonDown\');" onclick="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceSave\');" />';
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
/**
|
||||
* Executes the save command.
|
||||
*/
|
||||
function TinyMCE_save_execCommand(editor_id, element, command, user_interface, value) {
|
||||
// Handle commands
|
||||
switch (command) {
|
||||
case "mceSave":
|
||||
var formObj = tinyMCE.selectedInstance.formElement.form;
|
||||
|
||||
if (formObj) {
|
||||
tinyMCE.triggerSave();
|
||||
|
||||
// Disable all UI form elements that TinyMCE created
|
||||
for (var i=0; i<formObj.elements.length; i++) {
|
||||
var elementId = formObj.elements[i].name ? formObj.elements[i].name : formObj.elements[i].id;
|
||||
|
||||
if (elementId.indexOf('mce_editor_') == 0)
|
||||
formObj.elements[i].disabled = true;
|
||||
}
|
||||
|
||||
tinyMCE.selectedInstance.formElement.form.submit();
|
||||
} else
|
||||
alert("Error: No form element found.");
|
||||
|
||||
return true;
|
||||
}
|
||||
// Pass to next handler in chain
|
||||
return false;
|
||||
}
|
After Width: | Height: | Size: 1001 B |
|
@ -0,0 +1,3 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_save_desc'] = 'Uložit';
|
|
@ -0,0 +1,3 @@
|
|||
// DE lang variables
|
||||
|
||||
tinyMCELang['lang_save_desc'] = 'Speichern';
|
|
@ -0,0 +1,3 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_save_desc'] = 'Save';
|
|
@ -0,0 +1,8 @@
|
|||
// IR lang variables
|
||||
// Persian (Farsi) language pack (for IRAN)
|
||||
// By: Morteza Zafari
|
||||
// Lost@LostLord.com
|
||||
// http://www.LostLord.com
|
||||
|
||||
tinyMCELang['lang_dir'] = 'rtl';
|
||||
tinyMCELang['lang_save_desc'] = 'ضبط';
|
|
@ -0,0 +1,3 @@
|
|||
// French lang variables by Laurent Dran
|
||||
|
||||
tinyMCELang['lang_save_desc'] = 'Sauver';
|
|
@ -0,0 +1,3 @@
|
|||
// Canadian French lang variables by Virtuelcom last modification: 2005-06-15
|
||||
|
||||
tinyMCELang['lang_save_desc'] = 'Enregistrer';
|
|
@ -0,0 +1,3 @@
|
|||
// UK lang variables
|
||||
|
||||
tinyMCELang['lang_save_desc'] = 'Opslaan';
|
|
@ -0,0 +1,4 @@
|
|||
// PL lang variables
|
||||
|
||||
|
||||
tinyMCELang['lang_save_desc'] = 'Zachowaj';
|
|
@ -0,0 +1,3 @@
|
|||
// pt_BR lang variables
|
||||
|
||||
tinyMCELang['lang_save_desc'] = 'Salvar';
|
|
@ -0,0 +1,4 @@
|
|||
// Simplified Chinese lang variables contributed by cube316 (cube316@gmail.com)
|
||||
//请访问 http://www.cube316.net/ 以获取TinyMCE的中文支持
|
||||
|
||||
tinyMCELang['lang_save_desc'] = '保存';
|
|
@ -0,0 +1 @@
|
|||
Check the TinyMCE documentation for details on this plugin.
|
|
@ -0,0 +1,32 @@
|
|||
<!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>
|
|
@ -0,0 +1,163 @@
|
|||
<!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>
|
After Width: | Height: | Size: 5.1 KiB |