Korzystam z szablonów smarty, ale te nie mają żadnego wpływu na działanie skryptów. Zastosowałem się do porady @Johna, ale to tez nic nie dało.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8"> <meta name="author" content="jetshop"> <meta name="Keywords" content="{$lang_META_KEYWORDS}"> <meta name="description" content="{$lang_META_DESCRIPTION}"> <meta name="robots" content="noodp"> <link rel="shortcut icon" href="templates/{$current_template}/images/favicon.ico"> <link rel="stylesheet" type="text/css" href="templates/{$current_template}/styles/stylesheet.css"> <script language="JavaScript" src="js/overlib_mini.js"></script> <script language="JavaScript" src="js/kalendarz.js"></script> {literal}
<script language="javascript" type="text/javascript" src="tinymce/jscripts/tiny_mce/tiny_mce.js"></script> <script language="javascript" type="text/javascript"> tinyMCE.init({
mode : "textareas",
elements : "ajaxfilemanager",
theme : "advanced",
plugins : "table,advhr,advimage,advlink,flash,paste,fullscreen,noneditable,contextmenu",
theme_advanced_buttons1_add_before : "newdocument,separator",
theme_advanced_buttons1_add : "fontselect,fontsizeselect",
theme_advanced_buttons2_add : "separator,forecolor,backcolor,liststyle",
theme_advanced_buttons2_add_before: "cut,copy,paste,pastetext,pasteword,separator,",
theme_advanced_buttons3_add_before : "tablecontrols,separator",
theme_advanced_buttons3_add : "flash,advhr,separator,fullscreen",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
extended_valid_elements : "hr[class|width|size|noshade]",
file_browser_callback : "ajaxfilemanager",
paste_use_dialog : false,
theme_advanced_resizing : true,
theme_advanced_resize_horizontal : true,
apply_source_formatting : true,
force_br_newlines : true,
force_p_newlines : false,
relative_urls : true
});
var ajaxfilemanagerurl = "../../plugins/ajaxfilemanager/ajaxfilemanager.php";
function ajaxfilemanager(field_name, url, type, win) {
switch (type) {
case "image":
ajaxfilemanagerurl += "?type=img";
break;
case "media":
ajaxfilemanagerurl += "?type=media";
break;
case "flash": //for older versions of tinymce
ajaxfilemanagerurl += "?type=media";
break;
case "file":
ajaxfilemanagerurl += "?type=files";
break;
default:
return false;
}
var fileBrowserWindow = new Array();
fileBrowserWindow["file"] = ajaxfilemanagerurl;
fileBrowserWindow["title"] = "Ajax File Manager";
fileBrowserWindow["width"] = "782";
fileBrowserWindow["height"] = "440";
fileBrowserWindow["close_previous"] = "no";
tinyMCE.openWindow(fileBrowserWindow, {
window : win,
input : field_name,
resizable : "yes",
inline : "yes",
editor_id : tinyMCE.getWindowArg("editor_id")
});
return false;
}
<script type="text/javascript"> function DodajElement()
{
var element = document.createElement('input');
element.setAttribute('type', 'file');
element.setAttribute('onChange', 'javascript:DodajElement();');
var liczba = 0;
var ilosc = document.forms['newsy_edit'].elements.length;
for (var i = 0; i < ilosc; i++ )
{
if (document.forms['newsy_edit'].elements[i].type == 'file')
{
liczba += 1;
}
}
element.setAttribute('name', 'file-'+(liczba+1));
element.style.display = "block";
element.style.margin= "2px";
var div = document.getElementById('dodatkowe');
div.appendChild(element);
document.forms["newsy_edit"].dodatkowe_ilosc.value = liczba;
}
{/literal}
<body onload="javascript:DodajElement();">
A tak wygląda div o id dodatkowe:
<div id="dodatkowe"><input type="hidden" name="dodatkowe_ilosc"></div>