Zobacz pełną wersję : "Jesli nie ma sondy to jest cos innego i na odwrot", da sie?
Witam,
Przedstawiam sytuacje:
Joomla 1.5.13
W templatce umiescilem pozycje na modul w ktorym jest sonda
Sonde zrobilem tylko do wgladu dla zalogowanych, a co za tym idzie, niezalogowani maja w tym miejscu puste pole,
Czy da rade zrobic tak, ze niezalogowani zobacza informacje, ze sonda pojawi sie po zalogowaniu, a po zalogowaniu juz tej informacji nie bedzie a w zamian bedzie sonda?
To powinno byc proste, ale az tak w php nie rzadze by taka regule ustawic w templatce. Zeby nie bylo, szukalem.. Ktos wie co mozna zrobic?
Pozdrawiam
Umieść w tej samej pozycji własny moduł dostępny tylko dla niezalogowanych.
W module cokolwiek (obrazek, tekst), co będzie po kliknięciu prowadziło do formularza zalogowania/zarejestrowania.
Może jeszcze http://forum.joomla.pl/showthread.php?t=27253.
Umieść w tej samej pozycji własny moduł dostępny tylko dla niezalogowanych.
W module cokolwiek (obrazek, tekst), co będzie po kliknięciu prowadziło do formularza zalogowania/zarejestrowania.
Może jeszcze http://forum.joomla.pl/showthread.php?t=27253.
podpowiadasz dobrze i jest to sposob, tyle tylko ze w administratorze nie mozna ustawic by jakis modol byl pokazywany tylko niezalogowanym a zarejestrowanym juz nie, chyba ze da sie tak zrobic, to wtedy jestem w domu.
Poszukaj dobrze.
Poziom dostępu [Access Level]: określa, kto ma prawo przeglądać pozycję - artykuł, kategorię, sekcję, moduł lub stronę. Aktualne opcje:
Powszechny [Public]: prawo ma każdy odwiedzający witrynę;
Rejestrowany [Registered]: prawo mają tylko zalogowani użytkownicy;
Specjalny [Special]: prawo mają użytkownicy z uprawnieniami autora lub wyższymi.
no i wszystko fajnie, ale POWSZECHNY znaczy rowniez to samo, ze zalogowany takze to widzi =D nie ma opcji o jaka mi chodzi
"prawo mają TYLKO NIEzalogowani użytkownicy;" <-- o takiej
Ups, sorki, braki w czytaniu ze zrozumieniem...:)
Pewnie można inaczej (łatwiej): pozycję dla sondy i info umieszczasz w divie z overflow: hidden.
Sonda jest pierwsza.
Niezalogowany jej nie zobaczy, tylko info.
Zalogowany zobaczy sondę - info obetnie.
ooo własnie! wspaniale! dzieki za odpowiedz, juz dalej sobie poradze
ehhh wybacz.. wstawilbys mi przykladowy kod, za cholere mi to nie wychodzi.. i info i sonda mi sie pokazuja.. na pewno robie cos zle..
Witam,
@bazyl wybacz, ale lepiej jest to zrobić wstawiając warunek sprawdzający czy uzytkownik jest zalogowany:
<?php
$user = & JFactory::getUser();
if($user->get('id')) {
tutaj kod modułu
}
else {
tutaj kod komunikatu dla niezalogowanych
}
?>
Pozdrawiam
Witam,
@bazyl wybacz, ale lepiej jest to zrobić wstawiając warunek sprawdzający czy uzytkownik jest zalogowany:
Pozdrawiam
o takie rozwiazanie mi wlasnie chodzilo, tylko podpowiedzcie mi, jak ja mam teraz wstawic kod modułu? w jakiej formie, przeciez
<?php
$user = & JFactory::getUser();
if($user->get('id')) {
<?php if($this->countModules('advert2')) : ?>
<jdoc:include type="modules" name="advert2" style="xhtml" />
<?php endif; ?>
}
else {
<?php if($this->countModules('advert3')) : ?>
<jdoc:include type="modules" name="advert3" style="xhtml" />
<?php endif; ?>
}
?>
w takie formie nie zadziała.. a nie wiem jak inaczej wstawic moduł w template
Pisząc o tej modyfikacji miałam na myśli zmianę w pliku modułu:
modules/mod_poll/mod_poll.php
defined('_JEXEC') or die('Restricted access');
$user = & JFactory::getUser();
if($user->get('id')) {
// Include the syndicate functions only once
require_once (dirname(__FILE__).DS.'helper.php');
$tabclass_arr = array ('sectiontableentry2', 'sectiontableentry1');
$menu = &JSite::getMenu();
$items = $menu->getItems('link', 'index.php?option=com_poll&view=poll');
$itemid = isset($items[0]) ? '&Itemid='.$items[0]->id : '';
$poll = modPollHelper::getPoll($params->get( 'id', 0 ));
if ( $poll && $poll->id ) {
$layout = JModuleHelper::getLayoutPath('mod_poll');
$tabcnt = 0;
$options = modPollHelper::getPollOptions($poll->id);
require($layout);
}
}
else {
echo "nie jesteś zalogowany";
}
:eek: okeeeej O_O rzadzisz o_O wielkie dzieki za pomoc!
@jolaass: bez przesady, spoko.:)
Źle zrozumiałem problem i musiałem jakoś z tego wybrnąć.
Napisałem, że to kwadratura koła...
Jestem pod wrażeniem nieustającym, pozdrawiam.
vBulletin® v4.2.5, Prawa przedruku © 2024 vBulletin Solutions, Inc. Wszystkie prawa zastrzeżone.
Tłumaczenie: Polskie Centrum Joomla!