PDA

Zobacz pełną wersję : Sonda jak schować wyniki ??



T.A.
15-06-2009, 01:45
Witam, wie ktoś jak schować wyniki w sondach ?? Sonda ma być umieszczona dla wszystkich, a wyniki maja być widoczne po zalogowaniu.

zwiastun
15-06-2009, 01:58
Ustawić pozycję menu Sondy jako dostępną dla zalogowanych

stasio
15-06-2009, 08:14
proponuje wymienić komponent na http://www.joomlaxt.com/ pollxt.... ma fajne możliwości i można importować dane z poprzednich sond z komponentu wbudowanego

magdaa
15-06-2009, 09:53
na marginesie: zawsze podawaj wersję joomli i umieszczaj posty w odpowiednich działach.

stasio
15-06-2009, 10:17
no działa pod 1.5 mam, używam, fajne , ...

T.A.
15-06-2009, 10:52
Witam jestem nowy od wczoraj, bede wstawiał w odpowiednich działach :). Mam wersje joomla 1.5.11. Jak wstawiam Sondy jako dostępną dla zalogowanych znika mi cała, a ja chciałem aby była widoczna a wyniki po zalogowaniu. Mam sonde standardową.

Jola
15-06-2009, 11:06
Można to osiągnąć przez małą modyfikację kodu PHP w pliku komponentu.
Jeśli poradzisz sobie z taką zmianą mogę podać sposób.
Pozdrawiam

T.A.
15-06-2009, 11:13
Tak poradzę sobie.Bardzo proszę :) pozdrawiam T.A.

Jola
15-06-2009, 11:50
Plik components/com_poll/views/poll/tmpl/default.php - zrób kopię;

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

<?php
$user = & JFactory::getUser();
if($user->get('id')) {
JHTML::_('stylesheet', 'poll_bars.css', 'components/com_poll/assets/'); ?>

<form action="index.php" method="post" name="poll" id="poll">
<?php if ($this->params->get( 'show_page_title', 1)) : ?>
<div class="componentheading<?php echo $this->params->get( 'pageclass_sfx' ) ?>">
<?php echo $this->escape($this->params->get('page_title')); ?>
</div>
<?php endif; ?>
<div class="contentpane<?php echo $this->params->get( 'pageclass_sfx' ) ?>">
<label for="id">
<?php echo JText::_('Select Poll'); ?>
<?php echo $this->lists['polls']; ?>
</label>
</div>
<div class="contentpane<?php echo $this->params->get( 'pageclass_sfx' ) ?>">
<?php echo $this->loadTemplate('graph'); ?>
</div>
</form>
<?php
}
else echo JText::_('Musisz się zalogować');
?>Elementyzaznaczone na czerwono zostały dodane do orginalnego kodu.
Zamiast echo JText::_('Musisz się zalogować'); możesz wstawić: echo MOJ_KOMUNIKAT;
a stałą MOJ_KOMUNIKAT zdefiniuj po swojemu w pliku językowym.
Pozdrawiam.
Edit!
Muszę wprowadzić poprawki żeby wszystko było zgodne z najnowszymi możliwościami Joomla ( technika nadpisywania szablonów - template overrides). :)
Zmieniony plik należy umieścić w katalogu /aktualny_szablon/html/com_poll/poll/
a plik components/com_poll/views/poll/tmpl/default.php pozostawić bez zmian.
Poza tym poprawniej jest używać echo JText::_('Musisz się zalogować'); zamiast echo 'Musisz się zalogować';
Czuję się jak w szkole! ;)

T.A.
17-06-2009, 00:58
Witam !!! Dziękuje bardzo za kod :) Wszystko doskonale działa. Mam jednak kolejne pytanie? Na stronie bede miał kilka sondarzy niektóre chce aby wyniki były widoczne dla wszystkich a nie które po zalogowaniu. Czyli. Sonda nr 1 chciałbym aby wyniki tej sondy były widoczne. A wyniki sondy nr 2 chce aby nie były widoczne dla odwiedzających moja stronę. Jak to zrobić ? :) pozdr T.A.

zwiastun
17-06-2009, 01:26
Za dużo chcesz. Albo, albo. To prosty komponent.

Jola
17-06-2009, 02:14
Uzyskanie takiej funkcjonalności, żeby każdemu sondażowi przypisywać dodatkowo parametr dla kogo ma być widoczny, to duża ingerencja w kod.
Można przyjąć założenie, że sondy opublikowane są widoczne dla wszystkich, a nieopublikowane tylko dla zalogowanych.
Łatwiej będzie osiągnąć zamierzony efekt ale i tak jest co zmieniać, bo modyfikacje powinny być zrobione w plikach komponentu i modułu.
Przykro mi ale nie mogę tego umieścić w tym wątku bo zakres zmian "lekko" odbiega od formuły porady.

T.A.
17-06-2009, 14:24
Dzieki za informacje jolaass vbmenu_register("postmenu_120358", true); . A możemy porozmawiać o usłudze z twojej strony? Aby zrobić taki moduł.