AMIGAnTOMEK Opublikowano 18 Sierpnia 2009 Opublikowano 18 Sierpnia 2009 Potrzebna mi modyfikacja ograniczająca możliwość wstawiania nowych tematów użytkownikom ze stażem na forum mniejszym niż.. np 3 miesiące. Jest coś takiego?
Manager DawPi Opublikowano 18 Sierpnia 2009 Manager Opublikowano 18 Sierpnia 2009 W jakim sensie ograniczająca? intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 19 Sierpnia 2009 Autor Opublikowano 19 Sierpnia 2009 W jakim sensie ograniczająca? No żeby użytkownik o stażu krótszym niż 3 miesiące (np.) nie mógł wstawiać nowych tematów w określonym dziale forum
Manager DawPi Opublikowano 19 Sierpnia 2009 Manager Opublikowano 19 Sierpnia 2009 Hym, a szukałeś po stronach z tutoriala w którym umieszczono linki do stron z modyfikacjami? Bo z tego, co pamiętam to takiej modyfikacji nie ma, ale pewny nie jestem. Druga sprawa, że na sztywno można by spróbować wymodzić takiego moda, ale z wpisaniem na sztywno ID for w kod oraz na sztywno czasu jaki musi upłynąć od rejestracji. intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 19 Sierpnia 2009 Autor Opublikowano 19 Sierpnia 2009 Hym, a szukałeś po stronach z tutoriala w którym umieszczono linki do stron z modyfikacjami? Bo z tego, co pamiętam to takiej modyfikacji nie ma, ale pewny nie jestem. Druga sprawa, że na sztywno można by spróbować wymodzić takiego moda, ale z wpisaniem na sztywno ID for w kod oraz na sztywno czasu jaki musi upłynąć od rejestracji. Można i na sztywno. Wprowadziliśmy ograniczenie w jednym dziale dla nowych userów i więcej nie przewidujemy więc można i na sztywno. Po stronach szukałem ale jakoś nic nie znalazłem
Manager DawPi Opublikowano 19 Sierpnia 2009 Manager Opublikowano 19 Sierpnia 2009 Otwórz plik: sources/classes/post/class_post_new.php Znajdź: function show_form() { Dodaj poniżej: /* (DP23) Restrict New Topics for New Members */ $joined = $this->ipsclass->member['joined']; $hour = 3600; // Jedna godzina $day = 86400; // Jeden dzien $month = 2592000; // Jeden miesiac, 30 dni $forumIds = array(2, 3, 4); // ID for w ktorych ma dzialac mod $timeInterval = $month * 3; // Trzy miesiace, dla 5 dni byloby "$day * 5;" if ( ( time() > ( $joined + timeInterval ) ) AND in_array( intval( $this->ipsclass->input['f'] ), $forumIds ) ) { $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'no_permission') ); } Zapisz i wyślij. Starałem się napisać to jasno w komentarzach. Jednak jak coś to pytaj. intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 20 Sierpnia 2009 Autor Opublikowano 20 Sierpnia 2009 (edytowane) Coś jest nie tak bo nawet ja nie mogę stworzyć tematu Prawidłowo odczytuje ID for bo tylko tam są problemy ale nie tak jest cos z odczytem czasu od rejestracji Edytowane 20 Sierpnia 2009 przez AMIGAnTOMEK
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Jak tę linię wpisałeś: $timeInterval = ................ intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 20 Sierpnia 2009 Autor Opublikowano 20 Sierpnia 2009 Tak jak TY $timeInterval = $month * 3; // Trzy miesiace, dla 5 dni byloby "$day * 5;"
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Jeśli obecny czas [time()] minus [-] trzy miesiące w formacie UNIX ]$timeInterval] są większe [>] niż data dołączenia w formacie UNIX [$joined] to wywal błąd. Dla mnie to ma sens. Hym, możesz tam dodać pod ten powyższy kod, co wkleiłeś ten poniższy i napisać, co się pojawiło na górze pisania nowego formularza? Kod: echo $joined . " " . $timeInterval . " " . time(); intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 20 Sierpnia 2009 Autor Opublikowano 20 Sierpnia 2009 Rozumiem że miałem wkleić tak: /* (DP23) Restrict New Topics for New Members */ $joined = $this->ipsclass->member['joined']; $hour = 3600; // Jedna godzina $day = 86400; // Jeden dzien $month = 2592000; // Jeden miesiac, 30 dni $forumIds = array(38, 80, 81, 82); // ID for w ktorych ma dzialac mod $timeInterval = $month * 3; // Trzy miesiace, dla 5 dni byloby "$day * 5;" if ( ( ( time() - $timeInterval ) > $joined ) AND in_array( intval( $this->ipsclass->input['f'] ), $forumIds ) ) { $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'no_permission1') ); } echo $joined . " " . $timeInterval . " " . time(); Efekt masz w załączniku
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Tak: $joined = $this->ipsclass->member['joined']; $hour = 3600; // Jedna godzina $day = 86400; // Jeden dzien $month = 2592000; // Jeden miesiac, 30 dni $forumIds = array(38, 80, 81, 82); // ID for w ktorych ma dzialac mod $timeInterval = $month * 3; // Trzy miesiace, dla 5 dni byloby "$day * 5;" echo $joined . " " . $timeInterval . " " . time(); if ( ( ( time() - $timeInterval ) > $joined ) AND in_array( intval( $this->ipsclass->input['f'] ), $forumIds ) ) { $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'no_permission1') ); } intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 20 Sierpnia 2009 Autor Opublikowano 20 Sierpnia 2009 Wywaliło: 1162579290 7776000 1250784727
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Albo mam zaćmienie albo to powinno przecież tak być. Coś kumasz z .php - widzisz tam błąd? Albo Ty dołączyłeś na forum mniej niż 3 miesiące temu. ( coś czuję, że się zbłaźnię tym tematem ) intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Spróbuj ten kod: intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 20 Sierpnia 2009 Autor Opublikowano 20 Sierpnia 2009 Myslalem ze jest jakis blad z mnozeniem albo czym innym wiec wstawilem jako zmienna $month=7776000 i usunąłem mnozenie *3 ale to nic nie dało. Nadal blokuje całkowicie pisanie postów. a mój staż: Dołączył: 3-11 06 NIe zbłaźnisz się w końcu dojdziemy co jest nie tak
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Zamień: if ( ( time() > ( $joined + timeInterval ) ) AND in_array( intval( $this->ipsclass->input['f'] ), $forumIds ) ) Na: if ( ( time() > ( $joined + $timeInterval ) ) AND in_array( intval( $this->ipsclass->input['f'] ), $forumIds ) ) Zapomniałem o jednym $. intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 20 Sierpnia 2009 Autor Opublikowano 20 Sierpnia 2009 Wstawiłem: /* (DP23) Restrict New Topics for New Members */ $joined = $this->ipsclass->member['joined']; $hour = 3600; // Jedna godzina $day = 86400; // Jeden dzien $month = 2592000; // Jeden miesiac, 30 dni $forumIds = array(38, 80, 81, 82); // ID for w ktorych ma dzialac mod $timeInterval = $month * 3; // Trzy miesiace, dla 5 dni byloby "$day * 5;" if ( ( time() > ( $joined + $timeInterval ) ) AND in_array( intval( $this->ipsclass->input['f'] ), $forumIds ) ) { $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'no_permission') ); } I bez zmian
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Ostatnia próba: if ( ( ( time() - $joined ) < $timeInterval ) AND in_array( intval( $this->ipsclass->input['f'] ), $forumIds ) ) intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
AMIGAnTOMEK Opublikowano 20 Sierpnia 2009 Autor Opublikowano 20 Sierpnia 2009 DZIAŁA!!!!!!!!!!!!!!!!!!!! ku potomności pełen kod do wstawienia: /* (DP23) Restrict New Topics for New Members */ $joined = $this->ipsclass->member['joined']; $hour = 3600; // Jedna godzina $day = 86400; // Jeden dzien $month = 2592000; // Jeden miesiac, 30 dni $forumIds = array(38, 80, 81, 82); // ID for w ktorych ma dzialac mod $timeInterval = $month * 3; // Trzy miesiace, dla 5 dni byloby "$day * 5;" if ( ( ( time() - $joined ) < $timeInterval ) AND in_array( intval( $this->ipsclass->input['f'] ), $forumIds ) ) { $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'no_permission') ); }
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Nie ma za co. intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
Manager DawPi Opublikowano 20 Sierpnia 2009 Manager Opublikowano 20 Sierpnia 2009 Problem ROZWIĄZANY. Jeśli są jakiekolwiek wątpliwości, pytania proszę o założenie nowego tematu. Wszelkie uzasadnione reklamacje/pretensje/sugestie/rady przyjmuje ekipa forum. intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
Rekomendowane odpowiedzi