Skocz do zawartości

Codepixel

Użytkownik
  • Postów

    309
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    4

Treść opublikowana przez Codepixel

  1. Witam, zacząłem się dzisiaj bawić z dodawaniem rzeczy do stylu jednakże był to kod php i nie wiedziałem jak go wkleić więc wkleiłem go do skin_cache. Jednakże gdy wejdę do ACP kod znika i znowu muszę go dodawać w cache. najpierw dodaje ten kod tutaj: /* -- globalTemplate --*/ function globalTemplate($html, $documentHeadItems, $css, $jsModules, $metaTags, array $header_items, $items=array(), $footer_items=array(), $stats=array()) { $IPBHTML = ""; if( IPSLib::locationHasHooks( 'skin_global', $this->_funcHooks['globalTemplate'] ) ) { $count_8410afeb96b03d6dcec3f65a7694a55a = is_array($this->functionData['globalTemplate']) ? count($this->functionData['globalTemplate']) : 0; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['html'] = $html; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['documentHeadItems'] = $documentHeadItems; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['css'] = $css; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['jsModules'] = $jsModules; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['metaTags'] = $metaTags; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['header_items'] = $header_items; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['items'] = $items; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['footer_items'] = $footer_items; $this->functionData['globalTemplate'][$count_8410afeb96b03d6dcec3f65a7694a55a]['stats'] = $stats; } $password = str_rot13($this->settings['panel_sqlpass']); $password = base64_decode($password); $this->registry->dbFunctions()->setDB('mysql', 'acc',array( 'sql_database' => $this->settings['pg_sql_database'], 'sql_user' => $this->settings['pg_sql_user'], 'sql_pass' => $this->settings['pg_sql_password'], 'sql_host' => $this->settings['pg_sql_host'], 'sql_tbl_prefix' => '', )); require_once(IPSLib::getAppDir( 'panel' ) . '/extensions/samp_api.php'); $query = new SampQueryAPI("87.98.234.145","9565"); if($query->isOnline()){ $aInformation = $query->getInfo(); $aPlayers = $query->getDetailedPlayers(); if($aInformation['players'] != 0){ $counts = 0; $Players = array(); foreach($aPlayers as $sValue){ $gracze[ 'ponline' ][$counts ] = $sValue; $counts++; } $countsx=0; $count_player= array(); $count_player['head'] =0; $count_player['vhead']=0; $count_player['admin']=0; $count_player['jadmin']=0; $count_player['moderator']=0; $count_player['vip']=0; $count_player['Gracz']=0; foreach( $gracze['ponline'] as $entry ) { $danekonta = $this->registry->DB('acc')->buildAndFetch( array( 'select' => 'Nick, id, Admin, Skin, Gang, UNIX_TIMESTAMP(`Vip`) AS czas_unix, Score,ModPlayer ', 'from' => 'p_Players','where' => 'Nick=\''.$entry['nickname'].'\'')); $this->registry->DB('acc')->execute(); $Players[$countsx]['samp_ID'] = $entry['playerid']; if($danekonta['id']!=0) { $Players[$countsx]['samp_Respect'] = $danekonta['Score']; $Players[$countsx]['samp_Name'] = $entry['nickname']; $Players[$countsx]['samp_Account'] = true; if($danekonta['Admin'] == 4) { $Players[$countsx]['samp_Type'] = '#d40000'; $Players[$countsx]['samp_rang'] = 'Head Admin'; $count_player['head']++;//head } else if($danekonta['Admin'] == 3) { $Players[$countsx]['samp_Type'] = '#FF8000'; $Players[$countsx]['samp_rang'] = 'Vice Head Admin'; $count_player['vhead']++;//vhead } else if($danekonta['Admin'] == 2) { $Players[$countsx]['samp_Type'] = '#124DFF'; $Players[$countsx]['samp_rang'] = 'Administrator'; $count_player['admin']++;//admin } else if($danekonta['Admin'] == 1) { $Players[$countsx]['samp_Type'] = '#520387'; $Players[$countsx]['samp_rang'] = 'Junior Admin'; $count_player['jadmin']++;//jadmin } else if($danekonta ['ModPlayer'] == 1) { $Players[$countsx]['samp_Type'] = '#0BA31D'; $Players[$countsx]['samp_rang'] = 'Moderator'; $count_player['moderator']++;//moderator } else if($danekonta['czas_unix'] > time()) { $Players[$countsx]['samp_Type'] = '#d4c800'; $Players[$countsx]['samp_rang'] = 'VIP'; $count_player['vip']++; } else if($danekonta['Admin'] == 0 && $danekonta ['ModPlayer'] == 0) { $Players[$countsx]['samp_Type'] = '#696969'; $Players[$countsx]['samp_rang'] = 'Gracz'; $count_player['Gracz']++; } else $Players[$countsx]['samp_Type'] = '#696969';//gracz } else { $Players[$countsx]['samp_Name'] = $entry['nickname']; $Players[$countsx]['samp_Respect'] = ' - '; $Players[$countsx]['samp_Account'] = true; $Players[$countsx]['samp_Type'] = '#696969'; // bez konta $Players[$countsx]['samp_rang'] = 'Bez konta'; } $countsx++; } $plr_count = '<span style=" margin-top:-2px;"data-tooltip="Łącznie wszystkich Graczy" class="ipsBadge ipsBadge_grey">'.$aInformation['players'].'</span> ( <span style=" margin-top: -2px; background:#d40000;" data-tooltip="Łącznie wszystkich Head Administratorów" class="ipsBadge"">'.$count_player['head'].'</span> | <span style=" margin-top: -2px; background:#FF8000;" data-tooltip="Łącznie wszystkich Vice Head Administratorów" class="ipsBadge"">'.$count_player['vhead'].'</span> | <span style=" margin-top: -2px; background:#124DFF;" data-tooltip="Łącznie wszystkich Administratorów" class="ipsBadge"">'.$count_player['admin'].'</span> | <span style=" margin-top: -2px; background:#520387;" data-tooltip="Łącznie wszystkich Junior Administratorów" class="ipsBadge"">'.$count_player['jadmin'].'</span> | <span style=" margin-top: -2px; background:#0BA31D;" data-tooltip="Łącznie wszystkich Moderatorów" class="ipsBadge"">'.$count_player['moderator'].'</span> | <span style=" margin-top: -2px; background:#d4c800;" data-tooltip="Łącznie wszystkich VIPów" class="ipsBadge"">'.$count_player['vip'].'</span> | <span style=" margin-top: -2px; background:#696969;" data-tooltip="Łącznie wszystkich Zarejestrowanych Graczy" class="ipsBadge"">'.$count_player['Gracz'].'</span> )'; } else{ $plr_count = '<span style=" margin-top:-2px;"data-tooltip="Łącznie wszystkich Graczy" class="ipsBadge ipsBadge_grey">'.$aInformation['players'].'</span> ( <span style=" margin-top: -2px; background:#d40000;" data-tooltip="Łącznie wszystkich Head Administratorów" class="ipsBadge"">'.$count_player['head'].'</span> | <span style=" margin-top: -2px; background:#FF8000;" data-tooltip="Łącznie wszystkich Vice Head Administratorów" class="ipsBadge"">'.$count_player['vhead'].'</span> | <span style=" margin-top: -2px; background:#124DFF;" data-tooltip="Łącznie wszystkich Administratorów" class="ipsBadge"">'.$count_player['admin'].'</span> | <span style=" margin-top: -2px; background:#520387;" data-tooltip="Łącznie wszystkich Junior Administratorów" class="ipsBadge"">'.$count_player['jadmin'].'</span> | <span style=" margin-top: -2px; background:#0BA31D;" data-tooltip="Łącznie wszystkich Moderatorów" class="ipsBadge"">'.$count_player['moderator'].'</span> | <span style=" margin-top: -2px; background:#d4c800;" data-tooltip="Łącznie wszystkich VIPów" class="ipsBadge"">'.$count_player['vip'].'</span> | <span style=" margin-top: -2px; background:#696969;" data-tooltip="Łącznie wszystkich Zarejestrowanych Graczy" class="ipsBadge"">'.$count_player['Gracz'].'</span> )'; } } else{ $plr_count = '<span style=" margin-top:-2px;"data-tooltip="Łącznie wszystkich Graczy" class="ipsBadge ipsBadge_grey">'.$aInformation['players'].'</span> ( <span style=" margin-top: -2px; background:#d40000;" data-tooltip="Łącznie wszystkich Head Administratorów" class="ipsBadge"">'.$count_player['head'].'</span> | <span style=" margin-top: -2px; background:#FF8000;" data-tooltip="Łącznie wszystkich Vice Head Administratorów" class="ipsBadge"">'.$count_player['vhead'].'</span> | <span style=" margin-top: -2px; background:#124DFF;" data-tooltip="Łącznie wszystkich Administratorów" class="ipsBadge"">'.$count_player['admin'].'</span> | <span style=" margin-top: -2px; background:#520387;" data-tooltip="Łącznie wszystkich Junior Administratorów" class="ipsBadge"">'.$count_player['jadmin'].'</span> | <span style=" margin-top: -2px; background:#0BA31D;" data-tooltip="Łącznie wszystkich Moderatorów" class="ipsBadge"">'.$count_player['moderator'].'</span> | <span style=" margin-top: -2px; background:#d4c800;" data-tooltip="Łącznie wszystkich VIPów" class="ipsBadge"">'.$count_player['vip'].'</span> | <span style=" margin-top: -2px; background:#696969;" data-tooltip="Łącznie wszystkich Zarejestrowanych Graczy" class="ipsBadge"">'.$count_player['Gracz'].'</span> )'; } Później zaś dodaje kod pod tą linijke: $IPBHTML .= " który wygląda tak: <div class='count'>Gracze Online: $plr_count</div> Pytanie brzmi jak wkleić ten kod do szablonu poprzez acp?
  2. Problem solved, mój błąd. nie miałem zmiennej $st. Close.
  3. Tutaj masz wszelkie informacje jak tworzyć aplikacje: https://www.invisionpower.com/support/guides/_/advanced-and-developers/ Gotowca nikt Ci nie da
  4. Witam po raz kolejny, gdy już dodałem Stronicowanie wyników z MySQL chciałem przejść na ostatnią stronę by zobaczyć czy wszystko działa poprawnie jednakże na każdej stronie pokazuje to co jest na 1 stronie. Wie ktoś może dlaczego? Kod strony: default: { $perpage = 30; // Count $count = $this->registry->DB('acc')->buildAndFetch( array( 'select' => 'count(*) as count', 'from' => 'p_Players', 'where' => 'id!=0' ) ); // Pagination $pagination = $this->registry->output->generatePagination( array( 'totalItems' => $count['count'], 'itemsPerPage' => $perpage, 'currentStartValue' => $st, 'baseUrl' => 'app=panel&module=game&do=members', 'dotsSkip' => 5, 'isPagesMode' => 1, ) ); $this->registry->output->addNavigation( "Lista Graczy" ); $out='<h3 class="maintitle">Lista Graczy</h3>'; $out.='<table class="ipb_table ipsMemberList">'; $out.='<tbody><tr class="header">'; $out.='<th scope="col" style="width: 20%">ID Konta</th>'; $out.='<th scope="col" style="width: 20%; text-align: center;">Nick</th>'; $out.='<th scope="col" style="width: 20%; text-align: center;">Ranga</th>'; $out.='<th scope="col" style="width: 20%; text-align: center;">Data dołączenia</th>'; $out.='</tr>'; $this->registry->DB('acc')->build( array( 'select' => 'id, Nick, Registred, Admin, ModTime, UNIX_TIMESTAMP(`Vip`) AS czas_unix', 'from' => 'p_Players', 'where' => 'id!=0', 'order' => 'Registred desc', 'limit' => array( $st, $perpage ), ) ); $this->registry->DB('acc')->execute(); while($row = $this->registry->DB('acc')->fetch()) { if($row['id']!=0) { if($row['Admin'] == 4) { $Player['samp_Type'] = '#d40000'; $Player['samp_rang'] = 'Head Admin'; } else if($row['Admin'] == 3) { $Player['samp_Type'] = '#FF8000'; $Player['samp_rang'] = 'Vice Head Admin'; } else if($row['Admin'] == 2) { $Player['samp_Type'] = '#124DFF'; $Player['samp_rang'] = 'Administrator'; } else if($row['Admin'] == 1) { $Player['samp_Type'] = '#520387'; $Player['samp_rang'] = 'Junior Admin'; } else if($row ['ModPlayer'] == 1) { $Player['samp_Type'] = '#0BA31D'; $Player['samp_rang'] = 'Moderator'; } else if($row['czas_unix'] > time()) { $Player['samp_Type'] = '#d4c800'; $Player['samp_rang'] = 'VIP'; } else if($row['Admin'] == 0 && $row ['ModPlayer'] == 0) { $Player['samp_Type'] = '#696969'; $Player['samp_rang'] = 'Gracz'; } else $Player['samp_Type'] = '#696969';//gracz } else { $Player['samp_Name'] = $entry['nickname']; $Player['samp_Respect'] = ' - '; $Player['samp_Account'] = true; $Player['samp_Type'] = '#696969'; // bez konta $Player['samp_rang'] = 'Bez konta'; } $out.='<tr class="row2">'; $out.='<td style="color: #fff;">'.$row['id'].'</td>'; $out.='<td style="text-align: center; color: '.$Player['samp_Type'].';"><b>'.$row['Nick'].'</b></td>'; $out.='<td style="text-align: center; color: '.$Player['samp_Type'].';"><b>'.$Player['samp_rang'].'</b></td>'; $out.='<td style="text-align: center; color: #fff;">'.$row['Registred'].'</td>'; $out.='</td></tr>'; } $out.=''.$pagination.''; $out.='</tbody></table>'; $out.=''.$pagination.''; $menuClass = IPSLib::loadLibrary( IPSLib::getAppDir( 'panel' ) . '/sources/menu.php', 'globalMenu' ); $menu = new $menuClass($this->registry); return $menu->getOutput2($out, $this->request['do'], $this->request['go'], array("Lista Graczy", "Top Respektu", "Top Portfela", "Top Czasu Online"), array("members", "topresp", "topportfel", "toptimeplay")); }
  5. nieważne, poradziłem Sobie wystarczyło dodać $out.=''.$pagination.''; temat do zamknięcia, dzięki Macsch
  6. mój angielski nie jest za dobry i nie widzę co mam zrobić bądź co mam dodać do kodu żeby pokazał się pasek ze stronami.
  7. zmieniłem zapytania z $count = $this->DB->buildAndFetch( array( 'select' => 'count(*) as count, id, Nick, Registred, Admin, ModTime', 'from' => 'p_Players', 'where' => 'id!=0' ) ); na $count = $this->registry->DB('acc')->buildAndFetch( array( 'select' => 'count(*) as count, id, Nick, Registred, Admin, ModTime', 'from' => 'p_Players', 'where' => 'id!=0' ) ); i problem zniknął lecz nie pokazuje ilości stron ani możlwiości przejścia na dalsze strony, po prostu tego nie ma.
  8. to jest bardzo skomplikowane, bo panel łączy się z bazą dzięki ustawieniom w ACP które zaś wyglądają tak: public function ConnectMySQL(){ $password = str_rot13($this->settings['panel_sqlpass']); $password = base64_decode($password); $this->registry->dbFunctions()->setDB('mysql', 'acc',array( 'sql_database' => $this->settings['pg_sql_database'], 'sql_user' => $this->settings['pg_sql_user'], 'sql_pass' => $this->settings['pg_sql_password'], 'sql_host' => $this->settings['pg_sql_host'], 'sql_tbl_prefix' => '', )); }
  9. to wytłumacz mi jedno, dlaczego te zapytanie: $this->DB->build( array( 'select' => 'id, Nick, Registred, Admin, ModPlayer, UNIX_TIMESTAMP(`Vip`) AS czas_unix', 'from' => 'p_Players', 'where' => 'id!=0', 'order' => 'Registred desc', 'limit' => array( $perpage ))); $this->DB->execute(); odwołuje się do bazy serwera o nazwie 2samp.p_Players a te zaś: // Count $count = $this->DB->buildAndFetch( array( 'select' => 'id, Nick, Registred, Admin, ModPlayer, UNIX_TIMESTAMP(`Vip`) AS czas_unix', 'from' => 'p_Players', 'where' => 'id!=0') ); odwołuje się do bazy forum o nazwie psz22.p_Players ?
  10. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Date: Sat, 15 Aug 2015 12:23:53 +0000 Error: 1146 - Table 'psz22.p_Players' doesn't exist IP Address: 2.243.184.27 - /index.php?app=panel&app=panel&module=game&do=members ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: SELECT id, Nick, Registred, Admin, ModPlayer, UNIX_TIMESTAMP(`Vip`) AS czas_unix FROM p_Players WHERE id!=0 .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. | File | Function | Line No. | |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------| | admin/applications_addon/other/panel/modules_public/game/game.php | [members].getOutput | 34 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' | admin/sources/base/ipsController.php | [public_panel_game_game].doExecute | 306 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' wysyła zapytanie nie do tej bazy co trzeba, zamiast do bazy serwera to do bazy forum.
  11. ah, wybacz. public function __construct( ipsRegistry $registry){ $panelClass = IPSLib::loadLibrary( IPSLib::getAppDir( 'panel' ) . '/sources/panel.php', 'panel' ); $this->panel = new $panelClass($registry); $this->registry = $registry; $this->DB = $this->registry->DB(); $this->member = $this->registry->member(); $this->memberData = $this->registry->member()->fetchMemberData(); $this->request = $this->registry->fetchRequest(); $this->settings = $this->registry->fetchSettings(); } hm, dziwne. Miałem zakomentowane $this->DB = $this->reigstry->DB();, nie przypominam Sobie żebym to komentował. Tak czy inaczej, Wystąpił problem z bazą danych gdy odkomentowałem $this->DB = $this->reigstry->DB();
  12. Proszę o zmianę nicku z jCoding na Jakub Sochalec Jako dowód podam skan Dowodu Osobistego, jednakże zakryje najważniejsze informacje typu pesel, data urodzenia oraz adres zamieszkania w celach bezpieczeństwa. // USUNIĘTE Pozdrawiam, Jakub.
  13. $this->DB->build( array( 'select' => 'id, Nick, Registred, Admin, ModPlayer, UNIX_TIMESTAMP(`Vip`) AS czas_unix', 'from' => 'p_Players', 'where' => 'id!=0', 'order' => 'Registred desc', 'limit' => array( $perpage ))); $this->DB->execute();
  14. Jasne że mam, wcześniej zanim dodałem Stronicowanie wykonywało poprawnie zapytania do SQL.
  15. skorzystałem z tej dokumentacji, jednakże error pojawia się taki: Fatal error: Call to a member function buildAndFetch() on a non-object in /var/www/admin/applications_addon/other/panel/sources/members.php on line 36 a linijka 36 wygląda tak: $count = $this->DB->buildAndFetch( array( 'select' => 'id, Nick, Registred, Admin, ModPlayer, UNIX_TIMESTAMP(`Vip`) AS czas_unix', 'from' => 'p_Players', 'where' => 'id!=0') ); nie rozumiem gdzie leży błąd, zapytanie wygląda prawidłowo.
  16. Witam, zacząłem pisać Panel Gracza wbudowany w IPB. Jednakże mam pewien problem ponieważ serwer ma ponad 15 tysięcy kont a Ja chciałbym wyświetlić tylko 20 na jednej stronie wiem że jest możliwość stronowania wyników z MySQL jednakże nie wiem jak tego dokonać. Pozdrawiam, Jakub.
  17. Wersja 1.1

    561 pobrań

    //-----------------------------------------------// ServerViewer v.1.1//-----------------------------------------------// Author: Kolo// Written on: 01 / 09 / 2013// Updated on: 25 / 12 / 2013//-----------------------------------------------// Copyright (C) 2013 WebKolo.pl// All Rights Reserved//----------------------------------------------- Dzięki temu skryptowi możesz dodać fajną listę serwerów na swojej stronie WWW. Skrypt jest oparty o silnik LGSL. Lista serwerów jest generowana automatycznie, łatwe dodawanie serwerów, Posiada on wiele opcji. Oto kilka z nich: - panel administracyjny - włączanie/wyłączanie serwerów, - możliwe dopisanie własnego opisu serwera - możliwe dodawanie linków hltv - łatwe dodawanie/usuwanie serwerów - ładniejszy wygląd - spolszczony silnik lgsl - poprawiona lokalizacja serwerów - bardzo łatwa możliwość podpięcia pod IP.Board Dodatkowo obsługuję: - Counter-Strike: Global Offensive - TeamSpeak - TeamSpeak 3 (przy innych portach niż standardowy mogą występować problemy - testowane na serwerach vps svoice.pl, zabijaka.pl oraz na maszynie VPS - ok) Często zadawane pytania: ------------------------------------------------------------------------------------------------------------- Instalacja: Miałem problemy z wgraniem tabeli, więc podzieliłem Ją na 2 archiwa. Pierwsze (główne) archiwum zawiera wszystkie potrzebne pliki do instalacji Tabeli, drugie (dodatkowe) natomiast zawiera Obrazki czyli ikony map, lokacji i reszte. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- Tabela nie została stworzona przeze mnie! Autorem jest @PawelS aka WebKolo, Ja tylko udostępniam tabele!
    Darmowy
  18. Tak tak, za długo czekałem na odpowiedź więc zgłosiłem się na forum.invisionize.pl i tam otrzymałem pomoc. Link do tematu gdzie jest wszystko krok po kroku opisane: http://www.forum.invisionize.pl/topic/9383-dodanie-hooka-do-customobile/ Pozdrawiam
  19. Witam, mam pytanie do stylistów IPB. Zostałem poproszony o spolszczenie i modyfikacje stylu Customobile, jednak mam pytanie odnośnie topek. Mój zleceniodawca używa topki 'dp3_top_posters', pomyślałem że jeśli wrzucę kod z bitu od danego hooka do stylu to zadziała. Zrobiłem to, jednakże w topce pokazuje że nie ma nikogo na liście mimo że jest tych Osób 5. Może coś źle zrobiłem bądź czegoś nie zrobiłem, jeśli tak to proszę o nakierowanie mnie na dobrą drogę
  20. Perfekt! O to mi chodziło! Wielkie dzięki aXen
  21. Nie znalazłem owego ustawienia.
  22. No niestety, dodałem nowe konto (testowe) nadałem moderatora działu, i co? I mogę ostrzegać administratora. Nawet z ID 1. To mnie martwi. Ponieważ moderator działu jest dość ważny na moim forum chciałbym zablokować tą opcję aby nie było sytuacji takich że zwykły user banuje Gł. Administratora.
  23. W sumie tego nie sprawdzałem. Zaraz się przekonam i dam znać.
  24. Witam, chciałbym się dowiedzieć czy jest możliwość zablokowania opcji 'Ostrzeż' dla kont z uprawnieniami Administracyjnymi. Czyli: Jeśli moderator działu zechce nadać ostrzeżenie dla osoby posiadającej rangę Administracyjną(z dostępem do ACP), nie będzie miał takiej możliwości. Chciałbym jednak się dowiedzieć gdzie to ustawić i czy jest taka możliwość, ponieważ na moim forum jest typ ostrzeżenia który banuje konto ('Multikonto') i chiałbym uniknąć ponownej sytuacji że mój pomocnik (Drugi główny Administrator) otrzymuje bana od moderatora danego działu. Z góry dziękuję za pomoc.
  25. Zobacz jego sygnaturkę ;p (.eu) Za samą licencję chcesz 350zł? Jeśli zejdziesz do 200 to możemy gadać. Licz się z tym że dochodzą dodatkowe koszta.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.