Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [TinyMCE] u is undefined
Forum PHP.pl > Forum > Gotowe rozwiązania
thek
Witam. Załączałem już kilkukrotnie do TinyMCE tinyBrowser ale ostatnio wyskakuje mi niestety ów błąd z tytułu.
Tak wygląda w nagłówku pliku kod. funkcja url::file jest do tworzenia linku w Kohanie. Bo już próbowałem na różne sposoby, w tym ścieżki bezwzględne.
Kod
<!-- TinyMCE -->
<script type="text/javascript" src="<?php echo url::file('media/js/tiny_mce/tiny_mce.js') ?>"></script>
<script type="text/javascript" src="<?php echo url::file('media/js/tiny_mce/plugins/tinybrowser/tb_tinymce.js') ?>"></script>
<script type="text/javascript">
tinyMCE.init({
    relative_urls : false,
    theme : "advanced",
    mode: "exact",
    elements : "calosc",
    theme_advanced_toolbar_location : "top",
    plugins : "safari,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,
motions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,co
textmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xht
lxtras,template,tinybrowser",
    language : 'pl',
    plugin_preview_width : "650",
    font_size_style_values : "8px,10px,12px,14px,18px,24px,36px",
    file_browser_callback : "tinyBrowser",
    // Theme options
    theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justify
enter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizesel
ct",
    theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outd
nt,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,
nsertdate,inserttime,preview,|,forecolor,backcolor",
    theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespe
l,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
    theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,spellchecker,|,ci
e,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,blockquote,pag
break,|,insertfile,insertimage",
    theme_advanced_toolbar_location : "top",
    theme_advanced_toolbar_align : "left",
    theme_advanced_statusbar_location : "bottom",
    height:"400px",
    width:"650px",
    theme_advanced_resizing : true,

    // Example content CSS (should be your site CSS)
    content_css : "<?php echo url::file('media/css/style.css') ?>"

  });

</script>
<!-- /TinyMCE -->

Okno TinyMCE się wywołuje, lecz niestety próba otworzenia dodatkowego po kliknięciu na ikonkę przeglądania (powinno to wywołać file browsera) zwraca błąd: u is undefined
http://192.168.1.103/serwis/media/js/tiny_mce/tiny_mce.js
Line 1
Przeglądałem fora, ale wszyscy wiążą błąd ze ścieżkami błędnymi, kompresją literówkami bądź wpływem pomyłki w wielkości liter nazw. Niestety w moim przypadku wszelkie wariactwa na ten temat są błądzeniem w lesie. Próbowałem debugować ów plik by coś wyniuchać, ale niestety bezskutecznie. Może ktoś się na podobny problem też natknął? Możliwe, że jakiejś kombinacji nie przetestowałem spośrod możliwych. Dlatego jeśli ktoś ma jakiś pomysł, byłbym wdzięczny, bo siedze nad tym już kilkanaście godzin i nie mogę się przebić.
Próbowałem między innymi także wrzucić na sztywno całość katalogu z serwisu gdzie to połaczenie dziala w najlepsze i zmienić na prawidłowe ścieżki w konfigu. Bez efektu. Próbowałem na zmianę stosować lub unikać relative_urls podczas inicjalizacji TinyMCE. Też nic. Po prostu już nie wiem jak podejść do tego już...
lord_t
Mógłbyś zapodać link do wersji online, bo na Twojego localhosta nie sposób się dostać:)
thek
Problem w tym, że konto na którym to będzie działać jest administratorskie i baza już jest częściowo wypełniona danymi. Nie mogę użytkownika i hasła dać w takim wypadku co chyba jest zrozumiałe.

Próbowałem wyciągnąć co nieco Firebugiem poprzez debugowanie zmiennych ale niestety nazewnictwo ich p, q, r, s, t, u, w jest naprawdę mówiące niewiele w zagnieżdżonych wywołaniach _init() winksmiley.jpg

Firebug w konsoli zwraca:
Kod
u is undefined
anonymous() -> tiny_mce.js (wiersz 1)
anonymous("src", "image", "theme_advanced_image_image_browser_callback") -> tiny_mce_popup.js (wiersz 5)
openBrowser("srcbrowser", "src", "image", "theme_advanced_image_image_browser_callback") -> form_utils.js (wiersz 62)
()javascri...llback') -> tiny_mce.js (wiersz 1)
Tyle, że tiny_mce.js jest minimalizowanym plikiem bez znaków przejścia do nowej linii, czyli jednolinijkowcem.
Z tego co doszedłem, to musi jedna ze zmiennych nie inicjalizować się podczas przekazywania do funkcji otwierającej okno czyli openBrowser nie doszedłem jednak, która z nich odpowiada za owe "u". Jako że jest to podpięcie fileBrowsera, to wszystkie próbujące coś przeglądać z kompa w poszukiwaniach zwracają ów błąd. Nie ma błędu jeśli fileBrowser nie jest dołączany dyrektywą file_browser_callback : "tinyBrowser", gdyż wtedy TinyMCE używa domyślnego, rozwijanego select. Czyli problem jest właśnie na styku TinyMCE i owego pluginu :/ Problemem jest także fakt, że owa zmienna występuje kilkukrotnie podczas debuga, za każdym razem "undefined". Zastanawiam się, czy aby na to nie ma wpływu coś innego, czyli choćby FW Kohana. Zagwózdkę sprawia mi jednak jeszcze jedna rzecz... W innym serwisie z Kohaną do jakiego mam wgląd działa to poprawnie. A kod dla pewności wziąłem z niego żywcem Copy-Paste i zmieniłem ścieżki by odpowiadały prawdzie. Próba postawienia od zera TinyMCE i browsera także nie przynosi efektu.

EDIT: Po podmianie oryginalnego tiny_mce.js na jego source wywalił błąd wewnątrz wywołania funkcji execCallback około linii 9340

Błąd tkwił w jednym miejscu... Skopiowałem kod dołączający ale nie zauważyłem jednej rzeczy... Widać to nawet w cytowanym fragmencie.
Jest -> 'media/js/tiny_mce/plugins/tinybrowser/tb_tinymce.js'
Tymczasem powinno być -> 'media/js/tiny_mce/plugins/tinybrowser/tb_tinymce.js.php'
No cóż... Czasem copy-paste bywa przyczyną zagwózdek winksmiley.jpg
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.