Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [AJAX][JavaScript] FileBrowser - TinyMCE, Jak działa FileBrowser ?
parzygnat
post
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 6
Dołączył: 31.12.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


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ć?


Go to the top of the page
+Quote Post
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




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

Ten post edytował thek 21.10.2009, 10:36:06


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
parzygnat
post
Post #3





Grupa: Zarejestrowani
Postów: 155
Pomógł: 6
Dołączył: 31.12.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


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?
Go to the top of the page
+Quote Post
thek
post
Post #4





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Google nie boli winksmiley.jpg http://www.lunarvis.com/products/tinymcefi...rwithupload.php Poniżej opisu masz download smile.gif


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
parzygnat
post
Post #5





Grupa: Zarejestrowani
Postów: 155
Pomógł: 6
Dołączył: 31.12.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


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??
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 09:48