witam. jestem nowy, proszę o wyrozumiałość. Mam joomle poinstalowaną i chciałbym zrobić stronę z pewnymi artykułami tylko dla zarejestrowanych, tak też zrobiłem, ale co to za preszkoda, jeśli na stronie (rozmawiamy o standartowym module logowanie) jest przycisk zarejestruje i koleś dostaje kod aktywacyjny i ma dostęp do sekcji dla zarejestrowanych. Potrzebuje stworzyć kilka kont żeby ci ludzie mogli sobie to oglądać a żadnej rejestracji z poziomu strony nir potrzebuje. najlpeiej jakby nie było tychl inków albo tworzenie nowych użytkowników TYLKO przez panel administrartora joomli.
Dylek
05-01-2007, 23:20
No to sobie zaloz konta z pozziomu PA, wyslij ludziom namiary i z glowy
jabluk
06-01-2007, 01:37
a czy można zrobić taki myk że jak użytkownik się samemu zarejestruje i aktywuje konto - konto będzie wyłączone i dopiero z konta administratora będzie można włączyć konto?????
wielkipytajnik
06-01-2007, 12:26
jabluk myśli dobrze. o to mi chodzi. nie wiem jak to zrobić.
wielkipytajnik
06-01-2007, 13:25
załatwione, można zamknąć temat
jabluk
06-01-2007, 16:09
a jak to dokonałes???
wielkipytajnik
06-01-2007, 23:22
dokładnie nie ja, aczkolwiek musisz zienić pewne rzeczy w plik registration.php i mod_login.php i wszystko śmiga.
jabluk
07-01-2007, 00:23
a możesz dokładnie napisać co trzeba zmienić????
ksiadz
19-01-2007, 10:12
Dołączam sie do pytania,
ewentualnie prosze o zmodyfikowane pliki.
Generalnie potrzebowal bym,
abm to ja jako admnistrator zatwierdzal rejestracje kont tzn.
1. Ludek wchodzi na strone.
2. Zaklada konto.
3. Do mnie przychodzi mail ze taki i taki pan chce sie zarejestrowac.
4. Klikam na link rejestruj
5. Ludek otrzymuje maila ze jego konto zostalo zaaprobowane i moze sie juz logowac.
Coś jak moderacja forum lub komentarzy.
Czy macie jakies pomysly ??
jabluk
19-01-2007, 10:35
Ja to rozwiązałem tak
Wchodzi ludzik na strone i zakłada sobie nowe konto
następnie system wysyła mu maila z prośbą o potwierdzenie rejestracji
Gdy koleś zatwierdzi system zaznacza że konto jest potwierdzone ale nie uaktywnia go tak jak to jest w standardzie. Nadal nie może się zalogować na to konto mimo że potwierdził. Dopiero jak administrator wejdzie i włączy konto użytkownik ma w pełni aktywne konto
A zmieniłem to w pliku registration.php który znajduje się w components/com_registration
na samym dole tego ppliku jest taka funkcja
function activate( $option ) {
global $database, $my;
global $mosConfig_useractivation, $mosConfig_allowUserRegistration;
if($my->id) {
// They're already logged in, so redirect them to the home page
mosRedirect( 'index.php' );
}
if (empty( $activation )) {
echo _REG_ACTIVATE_NOT_FOUND;
return;
}
$query = "SELECT id"
. "\n FROM #__users"
. "\n WHERE activation = '$activation'"
. "\n AND block = 1"
;
$database->setQuery( $query );
$result = $database->loadResult();
if ($result) {
$query = "UPDATE #__users"
. "\n SET block = 1, activation = ''" #zmienione z 0 na 1
. "\n WHERE activation = '$activation'"
. "\n AND block = 1"
;
$database->setQuery( $query );
if (!$database->query()) {
echo "SQL error" . $database->stderr(true);
}
echo _REG_ACTIVATE_COMPLETE;
} else {
echo _REG_ACTIVATE_NOT_FOUND;
}
}
wystarczy że zmienisz block z 0 na 1 (w tym miejscu gdzie jest komentarz #zmienione z 0 na 1) i masz ten efekt który opisałem na górze
Jeszcze tylko pozmieniać trzeba opisy w language/polish.php i zrobione