Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX][JavaScript] FileBrowser - TinyMCE
Forum PHP.pl > Forum > Przedszkole
parzygnat
Witam zaistalowałem TinyMCE w panelu administracyjnym i bez problemów wszystko zaczęło śmigać. Później pokusiłem się o FILEBROWSER i tu zaczęły się moje schody. Nie będę opisywał ile już wydrapałem włosów z głowy ale coś się dzięki temu udało.

Nie wiem dlaczego się udało?
Nie wiem dlaczego tak działa okienko pop-up?


Przedstawie to co obecnie zrobiłem:


Dodałem skrypty na stronie z panelem administracyjnym: (nie wiem czy wszystkie)
CODE

<script language="javascript" type="text/javascript" src="tinymce/jscripts/tiny_mce_popup.js"></script>
<script type="text/javascript" src="tinymce/jscripts/tiny_mce/tiny_mce.js"></script>




Dodałem skrypt na stronie z panelem admininstracyjnym
CODE

<script type="text/javascript">
tinyMCE.init({
// General options
mode : "textareas",
theme : "advanced",
plugins : "safari,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink
,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,c
ontextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xh
tmlxtras,template,imagemanager,filemanager",
// Theme options
theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justif
ycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizese
lect",
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,out
dent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|
,insertdate,inserttime,preview,|,forecolor,backcolor",
theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iesp
ell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,spellchecker,|,c
ite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,blockquote,pa
gebreak,|,insertfile,insertimage",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true,
file_browser_callback : 'myFileBrowser'
// Example content CSS (should be your site CSS)
//content_css : "css/example.css",
// Drop lists for link/image/media/template dialogs
//template_external_list_url : "js/template_list.js",
//external_link_list_url : "js/link_list.js",
//external_image_list_url : "js/image_list.js",
//media_external_list_url : "js/media_list.js",
//document_base_url : "http://localhost/rolkiwodzu/"
});

function myFileBrowser (field_name, url, type, win) {
//alert("Field_Name: " + field_name + "\nURL: " + url + "\nType: " + type + "\nWin: " + win); // debug/testing

/* If you work with sessions in PHP and your client doesn't accept cookies you might need to carry
the session name and session ID in the request string (can look like this: "?PHPSESSID=88p0n70s9dsknra96qhuk6etm5").
These lines of code extract the necessary parameters and add them back to the filebrowser URL again. */

var cmsURL = window.location.toString(); // script URL - use an absolute path!
if (cmsURL.indexOf("?") < 0) {
//add the type as the only query parameter
cmsURL = cmsURL + "?type=" + type;
}
else {
//add the type as an additional query parameter
// (PHP session ID is now included if there is one at all)
cmsURL = cmsURL + "&type=" + type;
}

tinyMCE.activeEditor.windowManager.open({
file : cmsURL,
title : 'My File Browser',
width : 420, // Your dimensions may differ - toy around with them!
height : 400,
resizable : "yes",
inline : "yes", // This parameter only has an effect if you use the inlinepopups plugin!
close_previous : "no"
}, {
window : win,
input : field_name
});
return false;
}

var FileBrowserDialogue = {
init : function () {
// Here goes your code for setting your custom things onLoad.
},
mySubmit : function () {
// Here goes your code to insert the retrieved URL value into the original dialogue window.
// For example code see below.
}
}

tinyMCEPopup.onInit.add(FileBrowserDialogue.init, FileBrowserDialogue);
 </script>


Czytałem dokunetację ale nie jestem w stanie z różnych przyczyn wszystkiego pojąć.
To co mi się udało uruchomić:
- wyskakuje okienko pop-up po naciśnięciu przycisku "browser" - obok linku do dodawania obrazków lub mediów, ale w okienku pajawia się strona z panelem administracyjnym (tak jakby się powieliła) smile.gif - nie wiem gdzie coś pozmieniać, ponieważ kod wklejiłem standardowy z dokumentacji TinyMCE.


Prosiłbym o wskazówki lub poprostu zasadę działania:
- jak się inicjuje
- jak się konfiguruje
- czy trzeba dodawać jakieś swoje funkcje aby to uruchomić?


thek
Za dużo motasz niepotrzebnie smile.gif Wystarczy w sekcji head coś w stylu
  1. <!-- TinyMCE -->
  2. <script type="text/javascript" src="tiny_mce/tiny_mce.js"></script>
  3. <script type="text/javascript" src="tiny_mce/plugins/tinybrowser/tb_tinymce.js.php"></script>
  4. <script type="text/javascript">
  5. tinyMCE.init({
  6. // General options
  7. language: "pl",
  8. relative_urls : false,
  9. mode : "textareas",
  10. theme : "advanced",
  11. plugins : "safari,layer,table,advimage,advlink,iespell,inlinepopups,insertdatetime,pre
    view,media,searchreplace,contextmenu,paste,directionality,noneditable,tinybrowser
    ,visualchars,nonbreaking,xhtmlxtras",
  12. file_browser_callback : "tinyBrowser",
  13. // Theme options
  14. theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyrigh
    t,justifyfull,formatselect,fontselect,fontsizeselect",
  15. theme_advanced_buttons2 : "cut,copy,paste,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquo
    te,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,insertti
    me,preview,|,forecolor,backcolor",
  16. theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,iespell,media",
  17. theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,cite,visualchars,nonbreakin
    g",
  18. theme_advanced_toolbar_location : "top",
  19. theme_advanced_toolbar_align : "left",
  20. theme_advanced_statusbar_location : "bottom",
  21. font_size_style_values: "8px, 10px, 12px, 14px, 18px, 24px, 36px",
  22. theme_advanced_resizing : true,
  23. width: "600",
  24. entity_encoding : "numeric",
  25.  
  26.  
  27. // Example content CSS (should be your site CSS)
  28. content_css : "css/content.css"
  29. });
  30. <!-- /TinyMCE -->
Gdzie pierwsza linia to ścieżka do tiny_mce.js, a druga do tb_tinymce.js.php od tinybrowsera.
Potem już tylko init dla niego i powinno działać. Jedynie sobie skonfiguruj config_tinybrowser.php w katalogu tego dodatku, do swoich potrzeb oraz pokaż że używasz tinybrowser jako plugin (dodaj do plugins w init) oraz do wywołań przeglądarki plików, czyli linia:
Kod
file_browser_callback : "tinyBrowser",
Wiele z opcji jakie ja rzuciłem w init jest dla Ciebie zbędna, no i możesz sobie dorzucić obsługę polskiego jak ja, ale to już Pikuś... Pan Pikuś winksmiley.jpg Uwierz, że tak jest najprościej i według manuala biggrin.gif
parzygnat
Ok zaraz popróbuje tylko nie mam tinybrowsera - plugin. Skąd Ty go masz?

Ok juz znalazlem plugina

A jednak nie znalazlem, sorrki za zamieszanie. Mozesz mi podać link do tego dodatku?
thek
Google nie boli winksmiley.jpg http://www.lunarvis.com/products/tinymcefi...rwithupload.php Poniżej opisu masz download smile.gif
parzygnat
wiem ze nie boli ale mam w pracy bardzo ciniutki internet i czasami nie działa nawet google smile.gif - już ssam smile.gif

Faktycznie jak się ma ten dodatek to reszta to Pan Pikuś biggrin.gif
Wszystko smiga tak jak chciałem - DZIEKUJE
Ale mam jeszcze jedno pytanie - LINKI BEZPOŚREDNIE - da się to jakoś rozwiązać w konfiguracji, czy trzeba bawić się PHP i tam wyłuskiwać src i dodawać przedrostki??
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.