Largo
Użytkownik-
Postów
1 157 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
1
Typ zawartości
Profile
Forum
Pliki
Galeria
Blogi
Sklep
Wydarzenia
Treść opublikowana przez Largo
-
Witaj, No wiesz? Pytanie trochę nie na miejscu, albo nie do tego typu kategorii osób :-) Oczywiście, że klikam w "Odpowiedz", wcześniej zaznaczam i skrypt reaguje, bo zmienia ikonkę. Ale w odpowiedzi nie ma żadnych cytatów? Tak, jakby skrypt nie umiał odczytać tych Cookies lub coś z ciasteczkami jest nie tak.
-
Tworzy ciastko, bo jest, ale nie wyświetla postów z tymi danymi, dlaczego?
-
/*--------------------------------------------*/ // Multi quote /*--------------------------------------------*/ function multiquote_add(id) { saved = new Array(); clean = new Array(); add = 1; //----------------------------------- // Get any saved info //----------------------------------- if ( tmp = my_getcookie('mqtids') ) { saved = tmp.split(","); } //----------------------------------- // Remove bit if exists //----------------------------------- for( i = 0 ; i < saved.length; i++ ) { if ( saved[i] != "" ) { if ( saved[i] == id ) { add = 0; } else { clean[clean.length] = saved[i]; } } } //----------------------------------- // Add? //----------------------------------- if ( add ) { clean[ clean.length ] = id; eval("document.mad_"+id+".src=removequotebutton"); eval("document.mad_"+id+".title='-'"); } else { eval(" document.mad_"+id+".src=addquotebutton"); eval("document.mad_"+id+".title='+'"); } my_setcookie( 'mqtids', clean.join(','), 0 ); return false; } Hmm?
-
Witam, Dlaczego to dziadostwo znowu nie działa? Czytając kod JS zapisuje ID postów do ciasteczka i faktycznie - ciasteczko zostaje stworzone, ale nie znam jego treści. Dlaczego nie pokazuje nic w postach? Czy mógłby to któryś z użytkowników sprawdzić i powiedzieć mi, w czym jest problem? Pozdrawiam, Largo
-
Parsowanie pętli i dodawania klasy
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witaj, Heh, nie pomyślałem o drugiej pętli, chciałem to w jednej zamknąć, muszę się jeszcze wiele uczyć widać... Ale Twojego kodu nie do końca rozumiem i robi błąd. Po tworzeniu nowego indeksu, ucina kolejny między tworzeniem nowego indeksu tablicy. Nie rozumiem dlaczego to robi. Mógłbyś to sprawdzić PS. Już wiem dlaczego tak robi - w każdy miejscu powinieneś elementy dodawać do nowej tablicy - tam tego nie robisz, dlatego kod gubi ten element. A drugi, to dziwny sposób z separatorem. On nie ma się zwiększać :-) Separator wynosi 10 i każda nowa lista ma mieć 10 elementów, a nie mnożyć przez indeks :-) Pozdrawiam, Largo -
Parsowanie pętli i dodawania klasy
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witaj, Jak tworzę 3 elementy? Zakładając, że będzie mniej niż 40 elementów, a zakładając, że ja nie wiem ile będzie elementów? Możesz mi to symbolicznie zapisać, ponieważ nie do końca to rozumiem. -
Witam, pojęcie o IP.Board ( funkcje, zarządzanie, zmiany w skinie, plikach ( nie wymagane ) )Znasz mnie z Forum InvisionBoard.pl - drugi moderator na owej stronie :-) Więcej nie ma sensu pisać.[*]trochę wolnego czasu Tu trochę problemu, szukam pracy jako programista ( jak się uda, to zapewne GG w robocie ), a tak to własne forum i pisanie ogromnej aplikacji dla IP.Board ( przewidywana ilość kodu już osiągnęła 5k )[*]chęci Jakbym ich nie miał, nie pisałbym ^^[*]znajomość PHP, CSS, XHTML Sam sobie odpowiedź... Uczę się na programistę, szukam pracy jako programista i moim życiowym celem jest programowanie :-)[*] prowadzenie własnego forum ( stałe rozwijanie swoich umiejętności ) URL w Profilu, większość modyfikacji własna, na dawnym forum też :-) PS. Ciekawy jestem, kto jest faworytem :-) Pozdrawiam, Largo
-
Witam, Problem możliwe, że trywialny, ale nie umiem do niego podejść logicznie. Mam dane zawierające wyniki z bazy danych. Składają się one z ID i adresu do odnalezienia URL obrazków. Mają one byś listą po 10 wyników na jedną kolumnę, oczywiście - nie chcę korzystać z tabel do takich danych. Parsowane dane nie chcę robić w PHP i logice, ponieważ nie do końca ma to sens. Jak to ma wyglądać? Opiszę poniżej :-) Załóżmy, że mamy 35 wyników. Po 10 wynikach powinno tworzyć nową listę obok, początek powinien być od lewej strony w kierunku prawym. Problem mam z tym faktem, że nie wiem jak w szablonach parsować licznik - jeżeli wynik równa się 10, zamknij listę i rozpocznij od nowa zliczanie, czyli - jak zapisać zmienną? Pozdrawiam, Largo
-
Witam, Jak zapewne wiadomo, funkcja showError() wyjątkowo się przydaje się do prezentacji błędów, mimo to, ja znalazłem pewną rzecz, która jest nie do końca przemyślana. Otóż, tworząc taką konstrukcję: $this->registry->output->showError( array( $this->lang->words['variable'], $variable, $variable ) ); Powodujemy, że drugi 3 element tablicy nie zostanie wzięty pod uwagę. Czemu? Tworzenie tablicy dla zmiennej jest sprawdzane konstrukcją is_array(), i rozbijane na 2 części - zerowy element to tekst, a drugi to dodatek dla funkcji sprintf(). Wszystko idealnie, ale zakładając, że potrzebuje dwóch parametrów, nie uzyskamy ich! Po co to piszę? Dziś oglądnę to i poprawię na ilość parametrów zależną do programisty. Oczywiście, gotowy kod wyślę do IPS z propozycją poprawy tego nieprzemyślanego kroku. Pozdrawiam, Largo
-
ROZWIĄZANY: Czasowo blokada konta
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witaj, Tak jak myślałem - nie do końca :-) Otwórz: admin/sources/base.php Znajdź: /* Check temporary ban status */ if( self::$handles['member']->getProperty( 'temp_ban' ) ) { $ban_arr = IPSMember::processBanEntry( self::$handles['member']->getProperty( 'temp_ban' ) ); /* No longer banned */ if( time() >= $ban_arr['date_end'] ) { self::DB()->update( 'members', array( 'temp_ban' => '' ), 'member_id=' . self::$handles['member']->getProperty( 'member_id' ) ); } /* Still banned */ else { self::getClass('output')->showError( array( 'account_susp', self::getClass( 'class_localization' )->getDate( $ban_arr['date_end'], 'LONG', 1 ) ), 1001 ); } } Każdorazowo podczas uruchamiana rejestru odbywa się taka akcja i tak myślałem to rozwiązać :-) Pozdrawiam, Largo -
ROZWIĄZANY: Czasowo blokada konta
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witaj, IP.Board tak tego nie rozwiązuje ( możliwe, że się mylę ), więc jak oni tego dokonują? Zawieszenie jest czasowe, aktualizowany jest rekord temp_ban z parametrami: Czas startu Czas zakończenia Typ jednostki czasowej Jednostka czasowa Możesz mi to wyjaśnić? I przeszukiwać co chwilę użytkowników z blokadą to z lekka bezsens... Pozdrawiam, Largo -
Witam, Planuję wprowadzić czasową metodę do blokady konta. Jak to rozwiązuje IP.Board, że zawieszając konto potem je odblokowuje usuwając wartości? Ja np. nadaję czas restrykcji w innej tabeli niż members i jeżeli dobiegnie końca powinien usuwać flagę w members o blokadzie i ustawiać flagę w tabeli tej logów, że wszystko jest już OK. Jak to rozwiązać po stronie serwera? Pozdrawiam, Largo
-
[IP.B 3.X] Tworzenie listy powodów
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witaj, No właśnie mnie to zastanawia... Wyjaśnię Ci dokładnie co mam zamiar osiągnąć w podpunktach :-) W ACP administratorzy tworzą listę powodów. W aplikacji, podczas edycji użytkownika, naciskając Zablokować Forum Gold? pojawia się na dole lista powodów. Muszęą się one składać z:Klucza ( wartość dla opcji wyboru ) Wartości ( zwyczajna nazwa powodu i jego opis ) [*]Wybierając blokadę i podając jeden powód, pobiera z ...* dane i zapisuje je w osobnej tabeli, gdzie będziemy trzymać powód blokady. * - sposób przechowywania danych Jak widzisz, muszę mieć możliwość podania rozwijanej listy powodów. Ma być ona dynamiczna, ponieważ każde forum ma inne powody, nie mogę się ograniczać do swoich potrzeb. Gdzie takie przechowywać? W nowej tabeli? Czy ma to do końca sens logiczny? Chyba innego wyjścia nie ma, zastosuję się raczej do Twoich porad. Pozdrawiam, Largo -
[IP.B 3.X] Tworzenie listy powodów
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witam, Yhm, nowa tabela bazy danych? I po co serializacja, na jaką cholerę? Zapewne ID, klucz, wartość i tyle? Widzieć mają moderatorzy, to nie ma sensu określać, używać to samo i do tego tabela? Hmm, muszę to chyba z kumplem przemyśleć, ale powiedz - po co serializacja danych? -
[IP.B 3.X] Tworzenie listy powodów
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witaj, Teoretycznie, aby tego dokonać, trzeba edytować ustawienie, jak wiadomo, nie jest to możliwe po wyłączeniu trybu IN_DEV lub zainstalowaniu aplikacji normalnie - bez dodawania ustawień "w locie". Nie mogę kazać użytkownikom tworzyć język i edytować to ustawienie. Dalej - takie ustawienie wymaga podanie klucza i wartości, a wartości jako klucz języka, więc co za tym idzie - stworzenie klucza języka z podaną wartością. I tu nie byłoby problemu ( tak mi się wydaje, bo autor lub Ty owej aplikacji planowanej będzie musiał podobnie działać ) i gdzie to zapiszemy? Tabela danych? Pies jest pogrzebany w "sposobie" i sposobie przechowywania. W końcu, nie każdy na swoim forum musi mieć takie same powody co inny użytkowników - warez, a strona o legalnym oprogramowaniu będą miały zupełnie inny pogląd na tą sprawę :-) Pozdrawiam, Largo -
[IP.B 3.X] Tworzenie listy powodów
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witaj, Ale sam przyznasz, że hook mi w tej sytuacji nie jest zbytnio potrzebny Nie wiem jak to rozwiązać. To ma być zwykła lista wyboru, składająca się z klucza i wartości, gdzie mogę ją aktualizować. Jeżeli masz pomysł, rzuć nim, a ja go po prostu wykonam, bo ostatnio mam cięźkie dni z tym IP.Board... -
[IP.B 3.X] Tworzenie listy powodów
Largo odpowiedział(a) na Largo temat w Programowanie / tworzenie styli
Witaj, Wyjaśnij mi ten haczyk, bo teraz to Ty napisałeś za mądrze i ja czegoś nie rozumiem :-) Haczyki, przesłanianie metod? Ja właśnie myślę jak to zrobić bez ingerencji w kod i pliki, znam zasady OO i chcę się ich trzymać dosyć mocno, dlatego napisałem ten temat, bo nie dawało mi to spokoju... Zacznijmy od etapu - co to haczyk? To inaczej hook? Wyjaśnię Ci co mam zamiar zrobić :-) Masz opcję checkbox, ona odpowiada za blokadę konta modyfikacji lub też nie. Zaznaczając blokadę, JS pokazuje listę możliwych powodów ( kodzik mogę podesłać, bardzo przyjemny ^^ ) i tu chciałbym listę generować automatycznie i żeby można było ją łatwo ustalić spod ACP. Wpadłem na pomysł, że stworzę listę w ACP i w nich podepnę informacje z języka, czy to zły pomysł? -
Witam, W związku z Waszym planem nt. usprawnienia systemu ostrzeżeń podsunęliśmy mi świetny pomysł. Tworzenie gotowej listy powodów zdecydowanie ułatwia działania i ogranicza karanie bez sensu. I tu pada moje pytanie. Można to zrobić w sposób trywialny i zrobić tablicę ( lub pole o typie tablicowym ) i w nim nadać klucze i wartości, które miałyby logiczne odwołania do danych. Ale ten sposób wymagałby edycji plików, więc pomyślałem o ACP, żeby dodawać klucz, a obok jego wartość jako klucz dla języka. Pytanie - czy to jest logiczne? Nie ma wg. mnie większego sensu tworzenia tabeli z tymi danymi, bo i po co? Zbędne dane, bo w sumie sam słownik tworzymy do tego. Łatwe odwołania po ID liczbowym, więc i optymalne wyjście? Jak Wy to wymyśliliście? Która opcja jest optymalna? W ACP wydaje się najlogiczniejsza i można dodać prostą weryfikację - jeżeli istnieje klucz, a nie istnieje klucz w języku, pomija się taki powód w przypadku zapisu do wynikowej tablicy? Pozdrawiam, Largo
-
ROZWIĄZANY: Stworzenie własnego 'taska'
Largo odpowiedział(a) na Dr R.I.P temat w Ogólny support IPB
Witaj, Fakt, DawPi ma zupełną rację. Zabierasz się za działania w "obiektowym" świecie programowania, który nie jest taki prosty, a Twój kod jest zupełnie nie poprawny. Masz po zdefiniowaniu funkcji array, co już daje do myślenia, że musisz wiedzieć co to. Na początek Ci powiem, że tablice składają się z indeksów i wartości ( { id => 1 } ), więc gdzie leży błąd w Twoim kodzie? Przecinek w tych miejscach oznacza nowy indeks/wartość. A mimo to, chciałbym Ci pomóc, ale zupełnie nie rozumiem co chcesz osiągnąć. Z tego co widziałem zamiast [RS] chcesz coś dać, ale zapytanie zupełnie leży. Posłuchaj starszych i doucz się o wszystkich, zaczynając od PHP, a kończąc na MySQL. Pozdrawiam, Largo -
Witam, Mam dziwny problem z tym mechanizmem. Oto co zrobiłem - dodałem do kodu HTML taką linijkę: <input class='input_text' type='text' name='member_name' id='username' value='' /> Następnie na samym dole skryptu dodałem: <script type="text/javascript"> new ipb.Autocomplete( $('username'), { multibox: false, url: ipb.vars['base_url'] + 'app=core&module=ajax§ion=findnames&do=get-member-names&name=', templates: { wrap: ipb.templates['autocomplete_wrap'], item: ipb.templates['autocomplete_item'] } } ); </script> Skrypt działa, bo widzę przeładowania. Pomyślałem, że błędem są templates, ale to jest niemożliwe, gdyż są ładowane na samej górze, więc dlaczego skrypt działa, ale nie pokazuje listy? Pozdrawiam, Largo
-
Witam, Modyfikację udostępnię po skończeniu obecnego projektu do wersji 3.0.X, gdzie poprawiłem multum błędów i dodałem masę nowych funkcji. Obecną wersję oddam po napisaniu nowej, wersja ta posiada płatności SMS, dzięki którym można zarobić na forum poprzez SMS i konto w DotPay.pl. Zastanowię się nad oddaniem, ale warunkiem komercyjnym do oddania z SMS będzie opłata. Inna wersja za darmo, do końca 2009 powinienem napisać nową wersję, wtedy tą opublikuję. Pozdrawiam, Largo
-
Witam, Stworzyłem dodatek do swojej aplikacji, który za FG usuwa ostrzeżenia. Wszystko działa idealnie, ale mam pewien problem projektowy. Użytkownik wybierając najmniejszą możliwą wartość zaoszczędzi. Jak sprawdzać, czy wykupił za 10% i dodawać do cen? Pozdrawiam, Largo
-
Witam, if( $('new_name') ) { $('new_name').observe('blur', ipb.FGClass.checkLoginName); } Mam moduł do zmiany nazwy użytkownika. Wpisując nowy nick, sprawdza jego dostępność i to działa elegancko! Ale na dodatek mam poniżej checkBox, który służy do zapytania użytkownika czy ma zmieniać także dane do logowania i używania forum. I tu zaczynają się schody. Na każde kliknięcie powinien ponownie reagować na odpytanie MySQL w tej sprawie. Procedura wygląda tak: Wpisuje nazwę -> Istnieje -> Chcę mieć taki sam wszędzie -> Sprawdza z dodatkowym warunkiem ponownie bazę -> Nie istnieje -> Odznacza CheckBox -> Ponownie działa. Jak zmienić warunek na to? Pozdrawiam, Largo
-
Witaj, Dzięki za moralne wsparcie, ale to chyba nie na moje siły :-) Wszelkie próby nadpisania oryginalnych klas zniszczą forum, więc mogę się jedynie ograniczyć do tworzenia ID w swoim CSS i na tej podstawie te dane wypierać. Zobaczymy, poczekam na magika, ale sam też będę z tym walczył :-) Jak zrobię, oczywiście dam rozwiązanie. PS. Magik wyczarował :-) Element ze stylu - border-right lub inne opcje. Mi akurat do tego potrzebny był ten element, teraz dostosuję go do kolorów i podziękował :-) Pozdrawiam, Largo
-
Witam, Aby tego dokonać, muszę dodać atrybut border, a on nie działa ze standardowymi klasami, a może się mylę? Chodzi o to tylko, aby linie pionowe dawał, mógłby też dzielić komórki, ale na cuda nie liczę ^^
