Skocz do zawartości

Rejestracja gościa na forum i wybieranie nazwy profilu


edjazoli25
 Udostępnij

Przejdź do rozwiązania Rozwiązane przez SeNioR,

Rekomendowane odpowiedzi

Cześć. Dzisiaj jeden z gości po założeniu tematu i dostaniu kilku odpowiedzi postanowił się zarejestrować ale napisał mi że nie może wybrać nazwy profilu jaki użył w poście dla gości (dodał extra literę aby dokończyć rejestracje) „ nazwa użytkownika niedostępna” mu na początku wyskakiwało, a wiec pytanie.

Czy są jakieś ustawienia aby goście mogli używać nazwy użytkownika podczas rejestracji takiej jakiej użyli w pytaniu bez rejestracji?? I wtedy post będzie zaznaczony już jako ich a nie gościa?

Odnośnik do komentarza
Udostępnij na innych stronach

  • Założyciel
  • Rozwiązanie

Cześć. Nawet nie zdawałem sobie sprawy że tak jest. Faktycznie masz rację jeżeli gość użyje jakiegoś nicku to nie można go później użyć podczas rejestracji.

Sprawdziłem opcję "Publikacja przed rejestracją konta", ale nie rozwiązuje problemu.

Wydaje mi się że najlepszą opcją będzie usunięcie pola "Twoje imię" tak aby gość nazywał się po prostu "Gość" albo zapełnienie pola stałą wartością i zablokowanie możliwości edycji.

Sprawdzę czy jest to w ogóle możliwe i dam znać.

Edit (15 minut później):

Można pole "Twoje imię" całkowicie usunąć wtedy niezarejestrowany będzie nazywał się po prostu "Gość". Da się też ustawić aby pole miało automatycznie uzupełnioną treść i wtedy można je ukryć bądź zablokować pole przed możliwością edycji 👍

Odnośnik do komentarza
Udostępnij na innych stronach

@SeNioR no właśnie wiem i próbowałem na kilka sposobów ale nawet jak ustawie na stałą nazwę to chciałbym aby jednak gość po rejestracji miał post zaliczony pod siebie, mógł zaznaczyć rozwiązanie czy nawet dodał edit etc. Czyli nowy topic dla IPS jako pomysł na następną aktualizacje? 

Odnośnik do komentarza
Udostępnij na innych stronach

  • Premium

Nie wiem jak wygląda to w IPB jeśli chodzi o bazę danych. W MyBB można było by to zrobić ręcznie tzn: Gość rejestruje się pod innym nickiem, w bazie danych zmieniasz mu na taki sam a następnie kopiujesz jego id i w bazie danych podmieniasz user id autora posta dla obecnego użytkownika. Analogicznie wydaje mi się że ipb też powinno to być ale nie mam technicznie dostępu do żadnej bazy danych, musiałby to zobaczyć ktoś kto ma i dać znać

Edytowane przez SimLay
Odnośnik do komentarza
Udostępnij na innych stronach

On 10/1/2021 at 12:18 PM, SeNioR said:

Można pole "Twoje imię" całkowicie usunąć wtedy niezarejestrowany będzie nazywał się po prostu "Gość". Da się też ustawić aby pole miało automatycznie uzupełnioną treść i wtedy można je ukryć bądź zablokować pole przed możliwością edycji 👍

Napisalbys gdzie I jak to zrobic? Html?  Chcialbym ustawic stala wartosc,

Z gory dziekuje. 

Odnośnik do komentarza
Udostępnij na innych stronach

  • Założyciel

Nie ma tego w ACP 🙂 

Trzeba dokonać edycji w pliku system/Content/Item.php. Najlepiej byłoby to zrobić przez wtyczkę aby nie trzeba było edytować tego pliku za każdym razem podczas aktualizacji. Jak znajdę czas to mogę podesłać wtyczkę, a teraz podaję gotowy kod.

Otwórz plik Item.php i znajdź linijkę:

$return['guest_name']	= new \IPS\Helpers\Form\Text( 'guest_name', NULL,

Zamień pierwszą wartość "NULL" na nazwę gościa np.

$return['guest_name']	= new \IPS\Helpers\Form\Text( 'guest_name', 'SeNioR',

Zapisz plik i sprawdź efekt.

Teraz wypadałoby zablokować pole przed możliwością edycji.

Najlepszym sposobem byłoby dodanie do tagu input atrybutu readonly albo disabled. Niestety tego pierwszego IPS nie obsługuje a drugi co prawda działa ale tylko jeżeli atrybut value nie ma żadnej wartości.. tzn jest NULL.

'disabled' => "disabled"

Można jednak zablokować możliwość edycji pola przy użyciu CSS. Aby to zrobić, edytuj CSS motywu i dodaj do szablonu custom.css:

body[data-pagecontroller="forums"] form input[name="guest_name"]{pointer-events: none;}

Zapisz szablon i sprawdź efekt.

your-name-twoje-imie_guest_name-field_Invision-Community.webp

Opcjonalnie można to pole również całkowicie ukryć bo w zasadzie jest ono zbędne. Jeżeli chcesz je ukryć to dodaj do custom.css dodatkową linijkę:

body[data-pagecontroller="forums"] form ul li#guest_name{display:none;}

Zapisz szablon i sprawdź efekt.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...
43 minutes ago, SeNioR said:

Jack, tego nie edytuje się w ACP. Musisz edytować plik bezpośrednio na serwerze (przez klient FTP).

Tak wlasnie myslalem ale zawsze lepiej sie upewnic. Dzieki za szybka odpowiedz. 

w ACP wyskakuje mi błąd ze pliki orginalne zostały zmodyfikowane, zagaduje ze tak ma być?

Odnośnik do komentarza
Udostępnij na innych stronach

  • Ekspert
1 hour ago, edjazoli25 said:

w ACP wyskakuje mi błąd ze pliki orginalne zostały zmodyfikowane, zagaduje ze tak ma być?

Podczas aktualizacji IPS pliki zostaną nadpisane i stracisz to co zrobiłeś. Warto do tego zrobić aplikację. Modyfikacja plików to ostateczność.

Odnośnik do komentarza
Udostępnij na innych stronach

Problem wciąż nierozwiązany? Dodaj swoją odpowiedź

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto. Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
 Udostępnij

×