Back to top

Autore Topic: Richiamare da Javascript il text editor joomla  (Letto 2700 volte)

Offline lory1990

  • Esploratore
  • **
  • Post: 156
  • Sesso: Maschio
    • Mostra profilo
Richiamare da Javascript il text editor joomla
« il: 06 Feb 2013, 20:23:38 »
Ciao a tutti! sto sviluppando un componente, volendo utilizzare ajax per non far ricaricare tutta la pagina mi si pone questo problema: se ho un testo in una textarea con editor come si può visualizzare l'editor scelto con javascript? vi allego il codice che purtroppo non funziona
Codice: [Seleziona]

<?php
/**
 * @version     1.0.0
 * @package     com_mtt
 * @copyright   Copyright (C) 2012. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 * @author      Lorenzo <lory1990@gmail.com> - http://
 */


// no direct access
defined('_JEXEC') or die;?>

<script>
function txt_input(name, value){
document.getElementById(name).innerHTML='<input class="inputbox" name="'+name+'" value="'+value+'" />';


}
function show_fileds(){
this.txt_input('lunghezza', '<?=$this->item->lunghezza?>');
this.txt_input('larghezza', '<?=$this->item->larghezza?>');
this.txt_input('immersione', '<?=$this->item->immersione?>');
this.txt_input('peso', '<?=$this->item->peso?>');
this.txt_input('costruzione', '<?=$this->item->costruzione?>');
this.txt_input('materiale', '<?=$this->item->materiale?>');
document.getElementById('tipologia').innerHTML = "<select name=\"tipologia\"><option value=\"1\" <?php if($this->item->tipologia==1) echo ' selected=\"selected\"' ?>><?=JText::_("COM_MTT_MOTORE");?></option> <option value=\"0\" <?php if($this->item->tipologia==0) echo ' selected=\"selected\"' ?>><?=JText::_("COM_MTT_VELA");?></option></select>";
document.getElementById('descrizione').innerHTML ="<?php 
$html JFactory::getEditor()->display('descrizione'$this->item->descrizione'100%''400''70''15',true);
$html str_replace('"','\"',$html);
echo  str_replace('\n','',$html);
?>
";
}
</script>
<?php if( $this->item ) : ?>
<h1 style="display:inline !important" id="nome"><?=$this->item->nome; ?></h1>
<div style="display:inline" id="edit_icon"><img src="components/com_mtt/assets/edit.png" alt="<?=JText::_("COM_MTT_EDIT")?>" title="<?=JText::_("COM_MTT_EDIT")?>" onclick="show_fileds()"/><>


<div class="item_fields">
<table width="100%">
<tr>
<td valign="top" width="50%">
<ul class="fields_list">
<li><?=JText::_("COM_MTT_LUNGHEZZA"); ?>:
                    <span id="lunghezza"><?=$this->item->lunghezza;?></span> m</li>
<li><?=JText::_("COM_MTT_LARGHEZZA"); ?>:
                    <span id="larghezza"><?=$this->item->larghezza;?></span> m</li>
<li><?=JText::_("COM_MTT_IMMERSIONE"); ?>:
                    <span id="immersione"><?=$this->item->immersione;?></span> m</li>
                    <li><?=JText::_("COM_MTT_TIPOLOGIA"); ?>:
<span id="tipologia">
<?php if($this->item->tipologia==1) echo JText::_("COM_MTT_MOTORE"); 
else echo JText::_("COM_MTT_VELA");?>
</span></li>
<li><?=JText::_("COM_MTT_PESO"); ?>:
                    <span id="peso"><?=$this->item->peso;?></span> kg</li>
<li><?=JText::_("COM_MTT_MATERIALE"); ?>:
                    <span id="materiale"><?=$this->item->materiale;?></span></li>
<li><?=JText::_("COM_MTT_COSTRUZIONE"); ?>:
                    <span id="costruzione"><?=$this->item->costruzione;?></span></li>
</ul>
<p></p>
<div id="descrizione"><?=$this->item->descrizione; ?><>
<?php
if(count($this->item->appuntamenti)!=0):?>

<p style="font-weight: bold; font-size:12pt"><?=JText::_("COM_MTT_PROSSIMI_APPUNTAMENTI")?></p>
<ul>
<?php foreach($this->item->appuntamenti as $app):?>
<li><a href="index.php?option=com_jevents&view=icalrepeat&layout=detail&evid=<?=$app->evdet_id?>"><?=$app->summary?></a> <?php if($app->location!="") echo " - " .$app->location?></li>
<?php endforeach;?>
</ul>
<?php endif; ?>
</td>
<td>
<?php
if(count($this->item->id_phoca)!=0):?>

<a href="index.php?option=com_phocagallery&view=category&id=<?=$this->item->phoca_cat?>">
<div id="slideshow">
<?php foreach($this->item->id_phoca as $phoca):?>
<img
style="";
src="images/phocagallery/<?=$phoca?>"
height="200"
alt="<?=$this->item->nome?>"
title="<?=$this->item->nome?>"
/>
<?php endforeach;?>
<></a>
<?php endif; ?>
</td>
</tr>
</table>
<>
<?php endif;?>

mau_develop

  • Visitatore
Re:Richiamare da Javascript il text editor joomla
« Risposta #1 il: 06 Feb 2013, 21:21:48 »
 se ho un testo in una textarea con editor
-------------------------------------------------------
cosa vuol dire?

letto qs?
http://forum.joomla.it/index.php/topic,176225.msg818047.html#msg818047
parte da quel messaggio

poi per l'editor c'è il field tipo editor

Offline lory1990

  • Esploratore
  • **
  • Post: 156
  • Sesso: Maschio
    • Mostra profilo
Re:Richiamare da Javascript il text editor joomla
« Risposta #2 il: 07 Feb 2013, 13:34:17 »
Forse mi sono spiegato male... se mi serve una textarea completa di editor (per intenderci con TinyMCE) in Joomla si può richiamare mettendo nel file XML un field di tipo editor e poi attraverso php...


Se ho uno script javascript come si può visualizzare la stessa cosa? pero di essere stato più chiaro: voglio visualizzare un editor di testo utilizzando non php ma javascript

mau_develop

  • Visitatore
Re:Richiamare da Javascript il text editor joomla
« Risposta #3 il: 07 Feb 2013, 13:53:16 »
se un field di tipo editor ti restituisce l'editor di Tiny è perchè nella libraries nella cartella form / fields c'è una definizione per quel tipo di campo.
In pratica devi fare un field custom con il tuo editor, dovrai poi preoccuparti di passare quei dati perchè se devono essere salvati devono per forza passare per php

Quì trovi uno spunto http://forum.joomla.it/index.php/topic,183575.0.html
la stessa cosa un po' più elaborata la trovi sul mio sito nelle risorse

Offline lory1990

  • Esploratore
  • **
  • Post: 156
  • Sesso: Maschio
    • Mostra profilo
Re:Richiamare da Javascript il text editor joomla
« Risposta #4 il: 07 Feb 2013, 19:28:53 »
Ma io non voglio fare il mio editor, vorrei semplicemente richiamare quello di default... :(
stessa cosa per la selezione immagini!


Oppure non ho capito bene come si usa ajax?! boh!

mau_develop

  • Visitatore
Re:Richiamare da Javascript il text editor joomla
« Risposta #5 il: 07 Feb 2013, 20:02:52 »
quindi ti basta usare un form di tipo editor che centra ajax?
dopo devi usare js per passare il contenuto del box tiny nel tuo input... ma l'hai letto quello che ti ho linkato o hai deciso subito che non era il tuo caso?


Offline simone83

  • Appassionato
  • ***
  • Post: 362
  • Sesso: Maschio
    • Mostra profilo
Re:Richiamare da Javascript il text editor joomla
« Risposta #6 il: 07 Feb 2013, 23:50:00 »
Per Richiamare l'editor in javascript devi inizializzarlo manualmente, se guardi l'html in una pagina dove c'e l'editor vedi che c'e una serie di variabili definite per farlo funzionare, io ci provai anni fa ma smisi subito xche era troppo lungo da fare e optai per una soluzione diversa, comunque i widjetkit genrano multipli editor in javascript puoi guardare quelli come fanno
BRAINCODE
Da Psd a Joomla - Sviluppo componenti joomla - SEO con Joomla
x-brain

Offline lory1990

  • Esploratore
  • **
  • Post: 156
  • Sesso: Maschio
    • Mostra profilo
Re:Richiamare da Javascript il text editor joomla
« Risposta #7 il: 08 Feb 2013, 12:09:01 »
Penso che simone83 abbia capito quello che voglio fare: in parica data una pagina in frontend voglio poterla modificare senza ricaricarla tutta :)
L'articolo è molto utile ma non adatto al mio caso purtroppo :( anche se mi fa venire in mente tante idee e quindi grazie comunque
A questo punto implementerò una modifica di pagina "standard" :) grazie del supporto!

 



Web Design Bolzano Kreatif