Problem sa Joomla modulom (AJAX?)

Ne polažem puno nade ali možda se nađe neka dobra duša koja ima znanja i vremena da se poazabavi ovom mozgalicom…

Problem se može jednstavno reproducirati: Treba vam Joomla 1.5 i besplatni shoutbox modul. Modul radi bez problema ako ga se unutar templatea poziva na standardni način, npr:
<jdoc:include type=“modules” name=“desno” />

Međutim, iz određenog razloga modul moram pozivati na slijedeći način:

$document	= &JFactory::getDocument();
$renderer	= $document->loadRenderer('modules');
$options	= array('style' => 'xhtml');
$position	= 'desno';
echo $renderer->render($position, $options, null);

Sve naizgled radi ok, međutim dolazi do sljedećeg problema:

  • pri slanju poruke ista se prikaže ali u console logu se prikazuje greška jer iz nekog razloga umjesto JS varijable $var (primjer) koja bi trebala dodati broj na
  • , ista kao sadržaj ima source stranice što se može vidjeti u inspectoru. Očigledno negdje varijable nisu dobro parsane ili zbog nekog razloga source završi gdje ne bi trebao.
  • ako se pokuša poslati nova poruka, shoutbox se ne osvježava (moguće da je samo posljedica gornje greške) i u console logu nema baš ništa. Nakon ručnog refresha sve se poruke opet vide.

Čini se da se radi o nekakvom konfliktu koji bi se daso riješiti modifikacijom JS koda, no moje je JS znanje dosta ograničeno. Ako netko ima volje ovo testirati i dijagnosticirati problem, bio bih iznimno zahvalan, a nije isključeno ni plaćanje za rješenje.

Ako ima kakvih nejasnoća, stojim na usluzi. Nažalost nemam live site na raspolaganju gdje se to može odmah vdjeti, ali da se reproducirati lokalno ako imate testnu Joomla instalaciju.

[quote=“Riba”]
Nažalost nemam live site na raspolaganju gdje se to može odmah vdjeti, ali da se reproducirati lokalno ako imate testnu Joomla instalaciju.[/quote]

Ovo nažalost možda nebi išlo jer greška ovisi o nekim drugim modulima ili tvojim modifkacijama na stranici. No velim možda, trebao bi probati na clean verzije od Joomle.

Neki lucky guess.
Pod options si stavio style=>xhtml što ti možda cijeli tvoj modul tretira kao xhtml.
A pod <jdoc:include type=“modules” name=“desno” /> nije to postavljano, možda se postavlja po defaultu neznam ali eto jedina razlika između xml i tvojeg koda je baš u “xhtml”.

Hvala gorrc na odgovoru. Probao sam sa clean install i bez ikakvih drugih modula, probat ću mijenjati style još jednom iako sam prilično siguran da sam već probao sa raw i table, no nije zgoreg probati opet.

Probao sa raznim templateima i raznim stilovima, nema razlike. Čini se da korišteni JS zbog nekog razloga ne voli kada se modul poziva na drugi način.

a da pod options staviš prazan array?

Isprobao i to.

E onda bi morao otvoriti klasu $renderer i metodu render, ali vjerovatno tamo se ništa zanimljivo ne događa već bi trebao prekapati malo dublje po kodu.

Mislim da nije problem u tome tj. uzrok je u js kodu kojeg koristi modul i njegovom modifikacijom bi se to dalo riješiti. Upravo sam probao drugi shoutbox modul i isti nema problema što potvrđuje teoriju, tako da ću vjerojatno morati koristiti njega iako bi u dogledno vrijeme volio osposobiti postojeći ako to bude moguće.

Moguće je i to da ovim kodom echo $renderer->render($position, $options, null); rušiš lifecycle od Joomle. i zbog toga sve ode u pekmez:)

Logički bi bilo da modul samo dodjeliš skupini modula koji pripaduju grupi desno ili ako baš moraš ispucati modul negdje u HTML da ga ispucaš.

Mislim situacija nema smisla.

Uzimaš renderer dodjeluješ mu poziciju i onda ga ispisuješ u HTML sa echo.
Možda malo previše filozofije:)

Postoji razlog zašto je to tako (modul se dinamički prikazuje u postojećem modulu)…ne vidim kako to drugačije napraviti osim sa &JModuleHelper::getModule() i JModuleHelper::renderModule() koji pate od istog problema + što ne povlače parametre individualnog modula.

Neznam ali mislim da sam davno naišao na isti problem, i mislim da bi trebao na joomla ekstenzions pronaći modul koji omogučava prikazivanju modula unutar drugih modula.
Samo po sebi u Joomli 1.5 to ne radi.

Vjeorjatno da ali ne vjerujem da rade na drugi način od ovoga. Mogu baciti oko, ali drugog načina koliko sam vidio nema. Činjenica je da sve radi ok osim ovog određenog modula.

Jesi probao ili možda radiš preko komponente Jumi.

Jumi

Ne, modificirani kod starog modula kojeg sam “preveo” za J1.5.


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja