odstraneni/vypnuti System Message Container

Karlos
09. bře 2013 17:15 #105128
Dobry den, doufam ze pisi dobre, jsem tu novy, takze za pripadne chyby se omlouvam.

Mam takovy problem, co se tyce jednoho /asi/ divu. Jedna se o kolonku system-message-container a uz asi pres pet hodin se snazim prijit na to, jak ji odstranit, nejsem zadny programator, ale taky nejsem nechapajici. Tak proto se chci obratit na Vas. Jestli se musim hrabat nekde v kodu, ci se jedna o polozku, kterou nastavim z administracniho rozhrani.

obrazek s popisem daneho problemu
dl.dropbox.com/u/20852441/problem.png

kdyz ve Chromeu tento div smazu bud primo div system-message nebo rovnou celou strukturu system-message-container tak se mi clanky krasne zarovnaji s postranim logem KONTAKT. A to presne pozaduju

jedna se zatim o soukrome stranky a nechce se mi je moc zverejnovat, ale pripadnemu zajemci, ktery by mi pomohl vyresit tento problem je klidne PMkem zaslu.

Snad jsem se dostatecne vyjadril a na nic nezapomel, dekuji za vsechnu vynalozenou ochotu o pomoc.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Pavel Napalka
09. bře 2013 17:56 #105129
Asi bych se mrknul co je nastaveno v adminu - globální nastavení - Sever - hlášení chyb = žádný ale to nevím jistě

Pokud víš kam to do css souboru šablony napsat tak by mohlo pomoct toto (nejlépe custom.css), ale chtělo by to vědět jakou šablonu používáš a jestli se tim nevypne něco i někde jinde div#system-message-container {display:none}

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od karel
09. bře 2013 18:17 - 09. bře 2013 18:20 #105130
Pavle, Tvé řešení není zcela vhodné - při takovém nastavení (pokud CSS "nepřenastaví" něco později) uživatel neuvidí nikdy žádnou systémovou hlášku.

Karlosi, máš několik možností:
- zkoumat, proč se prázdný "container" zobrazuje (zda nejde o bug nové verze), zda se zobrazuje "oprávněně", kontrolovat podmínkou co obsahuje, a podle toho element v šabloně vůbec "vypisovat",
- "neřešit proč" a přizpůsobit se - třeba tak, že mu nastavíš position: absolute; a min-height: 1px; (kvůli možnému, a tak minimálnímu "překrytí" některého aktivního, těsně následujícího elementu).

Znáte-li řešení, sdělte ho - pomůžete ostatním při řešení stejného problému, i případný "rádce" bude vědět, poradil-li správně nebo špatně.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od karel
09. bře 2013 18:43 - 09. bře 2013 18:43 #105133
Možná jde o bug.
( Joomla! 3.0.3 Stable [ Ember ] 04-February-2013 14:00 GMT )

~/libraries/joomla/document/html/renderer/message.php obsahuje:

řádka cca č. 100:
// If messages exist render them
		if (is_array($msgList))
kde se testuje $msgList zda je pole, ačkoliv i prázdné pole, je pole, asi by bylo vhodnější:
if (!empty($msgList))

Karlosi - můžeš si to přepsat pomocí overrides - zkopírovat si templates/beez3/html/message.php a přepsat si to na řádce cca 18.

Znáte-li řešení, sdělte ho - pomůžete ostatním při řešení stejného problému, i případný "rádce" bude vědět, poradil-li správně nebo špatně.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Cony
09. bře 2013 22:37 #105148
Nejedná se o bug, ale o úmyslnou funkčnost. div je na stránky vkládán z důvodu AJAX zobrazování zpráv, kdysi jsem to hlásil v Joomla bugtrackeru a bylo mi takto odpovězeno. Neodstraňujte ten div, jen mu nedávejte žádné stylování, aby se neukazoval.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.