bon j'ai trouvé !
explication :
passer la variable dans l'init de tiny_mce :
1 2 3 4 5 6
|
tinyMCE.init({
...
language : "fr",
user : "toto",
... |
Le code de l'init peut être modifier simplement en php lors d'un simple echo (idéal pour changer le user à la volée en fait, c'est le but !
Créer plusieurs répertoires librairies pour l'upload avec ibrowser, et leur mettre les droits en écriture, exemple :
/media/toto
/media/tata
/media/titi
etc.. bref en fonction de vos utilisateurs du site
ensuite dans le script tiny_mce.js on peut constater qu'il récupère les variables grace à la fonction
soit pour notre exemple
qui renverra "toto"
cette fonction est aussi accessible à ma grande surpise dans les plugins, via le editor_plugin.js de tous les plugins magnifique !
ce qui veut dire que dans le plugin d'ibrowser, je vais pouvoir recevoir cette valeur "user" et la traiter !
ce qui donne dans editor_plugin.js : (ligne 46)
ib.baseURL = tinyMCE.baseURL + '/plugins/ibrowser/ibrowser.php';
à remplacer par :
ib.baseURL = tinyMCE.baseURL + '/plugins/ibrowser/ibrowser.php?user_home='+tinyMCE.getParam('user');
cette méthode va tout simplement passer en paramètre url une variable "user_home" récupérable depuis le ibrowser.php, ou plutot le config.inc.php directement par simple $_GET["user_home"]
Mais il faut corriger tout de même quelque chose dans le common.js car on viens un peu de changer le traitement par défaut, soit remplacer dans common.js (ligne 91) :
var wnd = window.open(ib.baseURL + '?editor=' + ib.editor + '&callback=iBrowser_callback', 'ibrowser', 'status=no, modal=yes, width=625, height=530');
par :
var wnd = window.open(ib.baseURL + '&editor=' + ib.editor + '&callback=iBrowser_callback', 'ibrowser', 'status=no, modal=yes, width=625, height=530');
le ? devient un & pour pas fausser les para de l'url
Ce qui donne au final un ibrowser unique pour autant de user possible, qui peuvent ensuite accedér à leur répertoire perso d'image
voilou
Partager