Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zmiana miniaturki zdjecia za pomoca strzałek
Forum PHP.pl > Forum > PHP
nikestylex7
Witam. Mam pytanie czy jest możliwość zrobienia podczas rejestracji wyboru miniaturki nie tak, że input type="radio" czyli kropka do zaznaczenia a miniaturkę na środku i strzałki na boki i klikając w jedną np. prawą pokaże się inna. Oczywiście bez javascript lub z ale jakiś prosty krótki skrypcik. Proszę o pomoc

IceManSpy
Bez JS będzie to raczej nie możliwe. Może jaki slider z jQuery?
piotrooo89
Cytat(IceManSpy @ 2.01.2012, 00:14:58 ) *
Bez JS będzie to raczej nie możliwe. Może jaki slider z jQuery?


dlaczego tak uważasz? przecież można zrobić stronę która będzie się przeładowywać i wczytywać kolejne miniaturki.
IceManSpy
Ah, skasowałem posta biggrin.gif

Ale wtedy będzie problem z obsługą formularza. A jeśli nie problem, to dużo zabawy.
nikestylex7
Właśnie chciałbym uniknąć tego przeładowania dlatego nie wiem jak to zrobić.
Uriziel01
Gotowego skryptu ci raczej nie dam (gdyż go poprostu nie posiadam i nie zwykłem pisać gotowców).
Ale podpowiem że najprościej będzie wyrzucić w tym miejscu (pomiędzy strzałkami) wszystkie twoje miniaturki ale ukrywać je przez style 'display:none;'. Nastepnie nadajesz im unikalne id zwiekszając je o 1 dla każdej miniatury (1,2,3,4...). Do strzałek podpinasz akcje JS, na przykład onclick="scroll_right();" i onclick="scroll_left();". Tworzysz globalną zmienną w JS
  1. var id_miniatury = 1;

I przy odpowiednich akcjach zwiększasz ją lub zmniejszasz o 1. Potem wykonujesz akcje która ukrywa wszystkie miniatury z wyjątkiem tej której id odpowiada wartości zmiennej id_miniatury w danym momencie. Nie ukrywam że nie jest to zdecydowanie najlepszy sposób (tym bardziej nie najwydajniejszy), ale miało być prosto i myślę że raczej jest. Wiem że może ci się to wydać skomplikowane (szczególnie z moimi zdolnościami dydaktycznymi). Ale napisz cokolwiek, postaraj sie zrozumieć zasadę działania a w razie jakichkolwiek problemów z przyjemnością pomożemy.

P.S-Choc gorąco zachęcam abyś napisał to w sposób lepszy i bardziej elastyczny niż ta proteza która Ci tutaj proponuje. Co prawda 'stracisz' odrobinę więcej czasu ale zdecydowanie może to zaowocować jego oszczędnością w przyszłości.
nikestylex7
Pomogłeś do czasu aż nie stanąłem na js, ponieważ nie opanowałem tego języka a nawet nie mam z czego się podstaw nauczyć. Wiem, że na pewno będę potrzebował pętle for oraz if jesli się nie mylę. To co mi napisałeś to już zrobiłem stanąłem na głównym mózgu operacji czyli js. Mam jeszcze pytanie ponieważ jak miałem tą rejestracje i w niej te zdjęcia w inputach każde miało swoje value to jak zrobimy ten skrypt to zdjęcie w którym będzie teraz tylko id bez inputa będzie brane pod uwagę podczas rejestracji?
Tak mam teraz:
  1. <td>Wygląd</td>
  2. <td><img onclick="scroll_left();" src="./images/slewo.jpg" /></td><td><img id="1" src="./images/avatar/1.jpg" style="max-width: 100px; max-height: 100px; display: none;" /><img id="2" src="./images/avatar/2.jpg" style="max-width: 100px; max-height: 100px; display: none; "/></td><td><img onclick="scroll_right();" src="./images/sprawo.jpg" /></td>


a tak miałem:

  1. <td>Wygląd</td>
  2. <td><input type="radio" name="avatar" value="1" /><img src="./images/avatar/1.jpg" style="max-width: 100px; max-height: 100px;" /><input type="radio" name="avatar" value="2" /><img src="./images/avatar/2.jpg" style="max-width: 100px; max-height: 100px;" /></td>
  3. <td class="podpowiedź">Jak będzie wyglądał twój bohater?</td>
Uriziel01
Nie wiem co we mnie wstąpiło ale:
(Wrzuć tylko grafikę, jest to w pełni działający skrypt)
  1. var avatar_id = 1;
  2. function scroll_left()
  3. {
  4. avatar_id-=1;
  5. if (avatar_id < 1)
  6. {
  7. avatar_id = 5;
  8. }
  9. redraw();
  10. }
  11. function scroll_right()
  12. {
  13. avatar_id+=1;
  14. if (avatar_id > 5)
  15. {
  16. avatar_id = 1;
  17. }
  18. redraw();
  19. }
  20. function redraw()
  21. {
  22. for (i=1;i<=5;i++)
  23. {
  24. document.getElementById('avatar_' + i).style.display = 'none';
  25. }
  26. document.getElementById('avatar_' + avatar_id).style.display = 'block';
  27. }
  28. <div>
  29. <tr>
  30. <td>
  31. <img src="arrow_left.png" onclick="scroll_left();" style="cursor:pointer;">
  32. </td>
  33. <td style="width:600px;height:600px;">
  34. <img src="avatar_1.jpg" id="avatar_1">
  35. <img src="avatar_2.jpg" id="avatar_2" style="display:none;">
  36. <img src="avatar_3.jpg" id="avatar_3" style="display:none;">
  37. <img src="avatar_4.jpg" id="avatar_4" style="display:none;">
  38. <img src="avatar_5.jpg" id="avatar_5" style="display:none;">
  39. </td>
  40. <td>
  41. <img src="arrow_right.png" onclick="scroll_right();" style="cursor:pointer;">
  42. </td>
  43. </tr>
  44. <div>


EDIT:
Aby przekazywać wartość wybranego avatara w formularzu rejestracji najprościej będzie jeżeli utworzysz nowe pole typu 'hidden' i przy każdym kliknięciu strzałki będziesz do niego zapisywał wartość zmiennej 'avatar_id'
nikestylex7
Działa smile.gif a ja pół dnia się męczę smile.gif teraz co do tego odwołania to czy mogę zrobić inputa hidden ? i po prostu do niego zapisywać w value="... " wartość avatar_id ?
Uriziel01
Dokładnie tak. Tworzysz ukryty input nadajesz mu 'jakies_tam_id' i przy każdym przełączeniu zdjęcia zapisujesz do niego wartość:
  1. document.getElementById('jakies_tam_id').value = avatar_id;
nikestylex7
Zrobiłem tak jak trzeba ale gdy już się zarejestruje to skrypt zapisuje do bazy liczbę 0 jaki id avataru a powinien wybraną przeze mnie czyli coś z tym inputem nie tak jest ;/

do tego jeśli za value wpisze 1 i usunę id inputa to normalnie zarejestruje tą 1 czyli coś jest nie tak z js

  1. <div>
  2. <tr>
  3. <td>Wygląd</td>
  4. <td><input id="aid" name="avatar" type="hidden" value="document.getElementByName('aid').value = avatar_id;" /></td>
  5. <td>
  6. <img src="./images/slewo.jpg" onclick="scroll_left();" style="cursor:pointer;">
  7. </td>
  8. <td>
  9. <img src="./images/avatar/1.jpg" id="avatar_1">
  10. <img src="./images/avatar/2.jpg" id="avatar_2" style="display:none;">
  11. <img src="./images/avatar/3.jpg" id="avatar_3" style="display:none;">
  12. <img src="./images/avatar/4.jpg" id="avatar_4" style="display:none;">
  13. <img src="./images/avatar/5.jpg" id="avatar_5" style="display:none;">
  14. </td>
  15.  
  16. <td>
  17. <img src="./images/sprawo.jpg" onclick="scroll_right();" style="cursor:pointer;">
  18. </td>
  19. <td class="podpowiedź">Jak będzie wyglądał twój bohater?</td>
  20. </tr>
  21. </table>
  22. </div>
adbacz
A da się w ogóle usunąć value inputa za pomocą JS? Mógłbyś podać kod? Najlepiej wszystko: js, html oraz php. Mi się zdaje, że popełniłes jakiś błąd w nazewnictwie (w sensie ID inputa lub Name używany w PHP).

PS. co to jest:
  1. <input id="aid" name="avatar" type="hidden" value="document.getElementByName('aid').value = avatar_id;" />


Zostaw puste pole hidden, lub ustaw domyślne pierwszego obrazka, a zmieniaj dopiero w kodzie JS który napisał Ci Uriziel. Nie wiem czy na pewno ale chyba przez to masz takie błędy dziwne.
Uriziel01
Pokaż kod lub wrzuć na jakiś zewnętrzny hosting, bez tego nie ma o czym mówić.
nikestylex7
  1. <script type="text/javascript">
  2. var avatar_id = 1;
  3. function scroll_left()
  4. {
  5. avatar_id-=1;
  6. if (avatar_id < 1)
  7. {
  8. avatar_id = 5;
  9. }
  10. redraw();
  11. }
  12. function scroll_right()
  13. {
  14. avatar_id+=1;
  15. if (avatar_id > 5)
  16. {
  17. avatar_id = 1;
  18. }
  19. redraw();
  20. }
  21. function redraw()
  22. {
  23. for (i=1;i<=5;i++)
  24. {
  25. document.getElementById('avatar_' + i).style.display = 'none';
  26. }
  27. document.getElementById('avatar_' + avatar_id).style.display = 'block';
  28. }
  29. </script>


  1. <?php
  2. include "baza.php";
  3. $title = 'Rejestracja';
  4. include "lacznik1.php";
  5. define("OK", 0);
  6. define("ALL", 1);
  7. define("HASLA", 2);
  8. define("EMAILE", 3);
  9. define("REGULAMIN", 4);
  10. define("NICK", 5);
  11. define("HASLO", 6);
  12. define("EMAIL", 7);
  13. define("PEMAIL", 8);
  14. define("WP", 9);
  15. define("NAZWA_ZAJETA", 10);
  16. define("EMAIL_ZAJETY", 11);
  17. define("PRZYDOMEK", 12);
  18. define("AVATAR", 13);
  19. function rejestruj($user, $haslo, $email, $przydomek, $avatar) {
  20. if(!isSet($_POST['user']) || !isSet($_POST['haslo']) || !isSet($_POST['haslo2']) || !isSet($_POST['email']) || !isSet($_POST['email2'])) {
  21. return ALL;
  22. } else if($_POST['haslo'] !== $_POST['haslo2']) {
  23. return HASLA;
  24. } else if($_POST['email'] !== $_POST['email2']) {
  25. return EMAILE;
  26. } else if(!isSet($_POST['regulamin'])) {
  27. return REGULAMIN;
  28. } else if(!isSet($_POST['przydomek'])) {
  29. return PRZYDOMEK;
  30. } else if(!isset($_POST['avatar'])) {
  31. return AVATAR;
  32. }
  33.  
  34. $dlugoscUser = strlen($_POST['user']);
  35. $dlugoscHaslo = strlen($_POST['haslo']);
  36. $dlugoscEmail = strlen($_POST['email']);
  37.  
  38. if($dlugoscUser < 3) {
  39. return NICK;
  40. } else if($dlugoscHaslo < 6) {
  41. return HASLO;
  42. } else if($dlugoscEmail < 5) {
  43. return EMAIL;
  44. } else if(strpos($_POST['email'], '@') === false) {
  45. return PEMAIL;
  46. }
  47. include "baza.php";
  48. $query = "SELECT COUNT(*) FROM user WHERE user='$user' ";
  49.  
  50. if(!$result = mysql_query($query)) {
  51. echo('An error has occurred: Instruction SELECT...');
  52. }
  53. if(!$row = mysql_fetch_row($result)) {
  54. echo('An error has occurred: Incorrect query results...');
  55. } else {
  56. if($row[0] > 0) {
  57. return NAZWA_ZAJETA;
  58. }
  59. }
  60.  
  61. $query = "SELECT COUNT(*) FROM user WHERE email='$email' ";
  62.  
  63. if(!$result = mysql_query($query)) {
  64. echo('An error has occurred: Instruction SELECT...');
  65. }
  66. if(!$row = mysql_fetch_row($result)) {
  67. echo('An error has occurred: Incorrect query results...');
  68. } else {
  69. if($row[0] > 0) {
  70. return EMAIL_ZAJETY;
  71.  
  72. }
  73.  
  74. }
  75.  
  76. $akod = uniqid('akod', true);
  77. $user = htmlspecialchars($_POST['user']);
  78. $email = htmlspecialchars($_POST['email']);
  79. $mail_headers = "From: Mohergame.pl\r\nReply-To: Mohergame.pl\r\n";
  80. $mail_headers.= "Content-Type: text/html;\n";
  81. $mail_headers.= "\tcharset=\"UTF-8\"\n";
  82. $mail_headers.= "Content-Transfer-Encoding: 8bit\n\n";
  83. $temat = ("Kod aktywacyjny");
  84. mail($email, $temat, "http://semczak.xaa.pl/spr.php?akod=$akod", $mail_headers);
  85. mysql_query("INSERT INTO user( user, haslo, email, przydomek, avatar, akod ) VALUES ('$user', '$haslo', '$email', '$przydomek','$avatar', '$akod')");
  86.  
  87.  
  88. $count = mysql_affected_rows();
  89.  
  90. if($count <> 1) {
  91. echo "Rejestracja nieudana!";
  92. } else {
  93. return OK;
  94. }
  95. }
  96.  
  97. if(isSet($_SESSION['mohergame'])) {
  98. echo "Po co chcesz się zarejestrować jeśli jesteś zalogowany?! Jak już to <a href='wyloguj.php'>wyloguj</a> się.";
  99. } else if(!isSet($_POST['user']) || !isSet($_POST['haslo']) || !isSet($_POST['haslo2']) || !isSet($_POST['email']) || !isSet($_POST['email2'])) {
  100. echo "Żeby się zarejestrować idź <a href='rejestracja.php'>tutaj</a>.";
  101. } else {
  102.  
  103. $user = htmlspecialchars(trim(mb_strtolower($_POST['user'], "UTF-8")));
  104. $haslo = md5(htmlspecialchars($_POST['haslo']));
  105. $email = htmlspecialchars($_POST['email']);
  106. if(isSet($_POST['przydomek'])) {
  107. $przydomek = htmlspecialchars($_POST['przydomek']);
  108. } else {
  109. $przydomek = 'Gniewna';
  110. }
  111. if(isset($_POST['avatar'])) {
  112. $avatar = htmlspecialchars($_POST['avatar']);
  113. } else {
  114. $avatar = 1;
  115. }
  116.  
  117.  
  118. $val = rejestruj($user, $haslo, $email, $przydomek, $avatar);
  119.  
  120. if($val == OK) {
  121. echo("Zostałeś zarejestrowany poprawnie. Na podany przez ciebie e-mail wysłaliśmy kod potwierdzający twoją rejestracje. Jeśli tak się nie stanie wyślij go ponownie przechodząc <a href='kod_aktywacyjny.php'>tutaj</a>.");
  122. } else if($val == ALL) {
  123. echo("Wypełnij wszystkie pola! Zrobisz to <a href='java script:history.go(-1)'>powracając</a>.<br />");
  124. } else if($val == HASLA) {
  125. echo("Wpisz poprawnie hasło w dwóch polach! Zrobisz to <a href='java script:history.go(-1)'>powrcając</a>.<br />");
  126. } else if($val == EMAILE) {
  127. echo("Wpisz poprawnie e-mail w dwóch polach! Zrobisz to <a href='java script:history.go(-1)'>powracając</a>.<br />");
  128. } else if($val == REGULAMIN) {
  129. echo("Musisz zaakceptować regulamin! Zrobisz to <a href='java script:history.go(-1)'>powracając</a>.<br />");
  130. } else if($val == NICK) {
  131. echo("Login musi mieć minimum 3 znaki! Poprawisz to <a href='java script:history.go(-1)'>powracając</a>.<br />");
  132. } else if($val == HASLO) {
  133. echo("Hasło musi mieć minimum 6 znaków! Poprawisz to <a href='java script:history.go(-1)'>powracając</a>.<br />");
  134. } else if($val == EMAIL) {
  135. echo("Twój adres e-mail jest niepoprawny! Poprawisz to <a href='java script:history.go(-1)'>powracając</a>.<br />");
  136. } else if($val == PEMAIL) {
  137. echo("Proszę wpisać poprawnie adres e-mail. Zrobisz to <a href='java script:history.go(-1)'>powracając</a>.<br />");
  138. } else if($val == WP) {
  139. echo("Musisz wybrać innego operatora twojej poczty gdyż e-maile do tego operatora mogą nie dochodzić. Zrobisz to <a href='java script:history.go(-1)'>powracając</a>.<br />");
  140. } else if($val == NAZWA_ZAJETA) {
  141. echo("Ta nazwa jest już zajęta. <a href='java script:history.go(-1)'>Wróć</a> i wpisz inna.<br />");
  142. } else if($val == EMAIL_ZAJETY) {
  143. echo("Ktoś już ma taki adres e-mail. <a href='java script:history.go(-1)'>Wróć</a> i wpisz inny.<br />");
  144. } else if($val == PRZYDOMEK) {
  145. echo("Niewłaściwy przydomek. <a href='java script:history.go(-1)'>Wróć</a> i wybierz inny.<br />");
  146. } else if($val == AVATAR) {
  147. echo("Zły numer avataru. <a href='java script:history.go(-1)'>Wróć</a> i wybierz inny.<br />");
  148. } else {
  149. echo("Błąd serwera. Rejestracja przebiegła niepoprawnie.");
  150. }
  151.  
  152. }
  153. include "lacznik2.php";
  154. ?>


a formularz juz podałem
prowseed
Wybacz, to moze glupio zabrzmiec, ale wysyłasz w ogóle avatar_id do bazy?
Rozumiesz, ze hidden musi byc w formie i zostac wyslany w jakis sposob (np przez POST) do "zapisywatora" ktory odczyta dane z tablicy $_POST i wykona odpowiednie zapytanie do bazy?
nikestylex7
jak nie miałem tego skryptu js to wysyłałem do bazy value inputa name="avatar" teraz kiedy wyświetlany obrazek dajmy 1.jpg chce wysłać do bazy to po prostu do inputa hidden jest przypisana końcówka id avatar_... czyli sama liczba i sama liczba mi jest potrzebna w bazie
adbacz
Spróbuj wysłać normalnie formularz (wypełnij wszystkie pola przykłądowymi danymi) i w skrypcie PHP daj takie coś:
  1. print_r($_POST)

Zobaczymy co Ci się wysyła, jakie pola.

Poza tym, zmieniłeś wartość value tego inputa jak pisałem wcześniej? Widzę, że nie piszesz nic o tym jak zmieniasz wartośc tego inputa więc może to coś Ci pomoże:
  1. function redraw()
  2.  
  3. {
  4.  
  5. for (i=1;i<=5;i++)
  6.  
  7. {
  8.  
  9. document.getElementById('avatar_' + i).style.display = 'none';
  10.  
  11. }
  12.  
  13. document.getElementById('avatar_' + avatar_id).style.display = 'block';
  14. document.getElementById('id_pola_input_avatar').value = avatar_id;
  15.  
  16. }
prowseed
Przepraszam, ale otwieram mase podstor na zakladkach, potem czytam, odpisuje, ogolnie nie zauwazylem postow wyzej, natomiast... Wracajac do tematu, to:

Olaboga, co to jest : )
  1. <input id="aid" name="avatar" type="hidden" value="document.getElementByName('aid').value = avatar_id;" />


Po pierwsze, to do funkcji redraw:
  1. document.getElementById('aid').value = avatar_id;


a w formie html jako value wpisz sobie 1, albo co chcesz. To i tak jest podmieniane przez js.
nikestylex7
Zrobiłem tak jak napisałeś dodałem tą część do js oraz wyświetliłem zawartość post a oto ona:

Array
(
[rej] => true
[przydomek] => Gniewna
[user] => babol
[haslo] => bbbbbb
[haslo2] => bbbbbb
[email] => hhh@gmail.com
[email2] => hhh@gmail.com
[avatar] => document.getElementById(\'id_a\').value = avatar_id;
[regulamin] => regulamin
[rejestruj] => Rejestruj
)

a powinna być liczba więc coś jest nie tak w tej zmiennej zamiast tego value powinno wyświetlić liczbe jaka jest dopisana do każdej z miniaturek czyli od 1 do 5
prowseed
Widzisz zatem, ze zwrocilo Ci jakiegos babola w postaci [avatar] => document.getElementById(\'id_a\').value = avatar_id; (Czyli generalnie zwrocilo to, co ma byc wyslane w formularzu). W bazie danych masz pewnie ustawiony typ danych na liczbowy i dlatego podstawia 0. Zrob tak jak Ci ja/adbacz napisalismy wyzej i bedzie ok.

BTW:
Nie masz zielonego pojecia o tym, co teraz robisz, prawda? smile.gif
Bo jezeli dobrze zrozumialem Twoja wypowiedz i do skryptu js dodales doslownie (a na to wyglada, ze doslownie, bo wartosci nie podmienia):
  1. document.getElementById('id_pola_input_avatar').value = avatar_id;

to pozdro : )
nikestylex7
Zrobiłem tak jak napisałem tzn miałem tak zrobione i dalej widzę ten błąd. W redraw dodałem tą linię i dalej d*** tak jak by to co jest w value w ogóle do niczego się nie odwoływało. a w mysql mam to pole jaki int specjalnie żeby w razie w podawało 0 czyli zwykłego avatara unknown

zauważyłem ze wszyscy dobrze robiliśmy tzn ten skrypt powinien działać ale działa tylko na miniaturki od 2 3 4 5 a gdy wybieram miniaturke pierwsza to wyskakuje ten babol czyli coś muszę zmienić w js i będzie dobrze

O dziwo 4 dziają lecz pierwsza nie zminiana nie lecz gdy przejade po kolei 1 2 3 4 5 i znowu 1 i zarejestruje sie to już 1 normalnie dodaje do bazy czyli coś z przetwarzaniem skryptu późno może .
prowseed
w formie html zmien value dla pola avatar na 1 - mowie juz chyba 3 raz exclamation.gif!!!1
Skrypt podmienia value dopiero gdy zostanie wywolana funkcja redraw ktora jest z kolei wywolywana przez onclicki buttonow. Jak nie klikniesz, to value sie nie podmieni, dlatego wysyla to co jest domyslnie w html.

//EDIT
zeby zaoszczedzic grochu:
  1.  
  2. <div>
  3.  
  4.  
  5. <tr>
  6.  
  7. <td>Wygląd</td>
  8.  
  9. <td><input id="aid" name="avatar" type="hidden" value="1" /></td>
  10.  
  11. <td>
  12.  
  13. <img src="./images/slewo.jpg" onclick="scroll_left();" style="cursor:pointer;">
  14.  
  15. </td>
  16.  
  17. <td>
  18.  
  19. <img src="./images/avatar/1.jpg" id="avatar_1">
  20.  
  21. <img src="./images/avatar/2.jpg" id="avatar_2" style="display:none;">
  22.  
  23. <img src="./images/avatar/3.jpg" id="avatar_3" style="display:none;">
  24.  
  25. <img src="./images/avatar/4.jpg" id="avatar_4" style="display:none;">
  26.  
  27. <img src="./images/avatar/5.jpg" id="avatar_5" style="display:none;">
  28.  
  29. </td>
  30.  
  31.  
  32.  
  33. <td>
  34.  
  35. <img src="./images/sprawo.jpg" onclick="scroll_right();" style="cursor:pointer;">
  36.  
  37. </td>
  38.  
  39. <td class="podpowiedź">Jak będzie wyglądał twój bohater?</td>
  40.  
  41. </tr>
  42.  
  43. </table>
  44.  
  45. </div>
nikestylex7
dzięki wszystko śmiga właśnie też to zrobiłem przed tobą ale pamiętam że pisałeś o tym dzięki i dobranoc smile.gif
adbacz
Nie chciałbym siac paniki czy kogoś obrażać, ale tak się składa, że info o tym co ma się znaleźć w polu hidden napisałem w 12 poście, czego chyba autor nie zauważył a później prowseed (tak mi się wydaje) przywłaszczył sobie to i uznał za swoje. Przynajmniej tak to wygląda czytając po kolei posty. Nie mam nic za złe nikomu i nie chcę nikogo obrażać, ale nie ładnie tak.
prowseed
Po pierwsze: Faktycznie nie zauwazylem.
Po drugie: A licencje dolaczyles do swojego kodu?
Po drugie i pół: Nie chciałem celowo Ci sprawić przykrości.
Po trzecie: Jesli zalezy Ci na punkcie "Pomógł", to zwróć się do moderacji, jest o tym zapis na forum na samej górze.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.