phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

FAQFAQ - PIERWSZA POMOC!!  regulaminREGULAMIN  SzukajSZUKAJ  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload  katalog Forów DyskusyjnychKatalog Forów   FAQ Video tutoriale

Poprzedni temat «» Następny temat
Przesunięty przez: Matteo
09-11-2013, 09:36
Przynależność do grupy na określony czas
Autor Wiadomość
Majkelo



Pomógł: 1283 razy
Posty: 3081
Wysłany: 11-12-2012, 15:01   

Aktualizacja - osoby, które instalowały modyfikację przed datą tego postu niech usuną z groupcp.php ten wpis:

Kod:
if ( rand(0, 8) == 8 )
{
    $sql = "DELETE FROM " . USER_GROUP_TABLE . "
        WHERE user_delete_time > 0
        AND user_delete_time <= " . CR_TIME . "";
    if ( !($result = $db->sql_query($sql)) )
    {
        message_die(GENERAL_ERROR, 'Could not obtain user and group information', '', __LINE__, __FILE__, $sql);
    }
    sql_cache('clear', 'groups_data');
}


A następnie w index.php po tym:

Kod:
//
// End session management
//


dodajemy to:

Kod:
if ( rand(0, 8) == 8 )
{
    $sql = "DELETE FROM " . USER_GROUP_TABLE . "
        WHERE user_delete_time > 0
        AND user_delete_time <= " . CR_TIME . "";
    if ( !($result = $db->sql_query($sql)) )
    {
        message_die(GENERAL_ERROR, 'Could not obtain user and group information', '', __LINE__, __FILE__, $sql);
    }
    if ( mysql_affected_rows() > 0 )
    {
        sql_cache('clear', 'groups_data');
    }
}


Aktualizacja ma głównie za zadanie ograniczyć czyszczenie cachu, jesli jest to niepotrzebne.
 
     
Gadatliwa Kasia 

   
Pawlok
Czarna lista


Pomógł: 2 razy
Posty: 245
Wysłany: 11-12-2012, 18:11   

Majkelo napisał/a:
Kolega Pawlok jak zwykle nie przeczytał posta i się wielce dziwi


??

Jak zwykle?? Wypraszam sobie bardzo.

"kolego''
 
     
MQs

Pomógł: 172 razy
Posty: 480
Wysłany: 19-12-2012, 12:37   

Proponuję małe uproszczenie (bo mod niepotrzebnie koliduje z moim "moderator spoza grupy" :P )
w groupcp.php zamiast:
Kod:
    //
    // Get moderator details for this group
    //
    $sql = "SELECT ug.group_id, ug.user_id, ug.user_delete_time, u.username, u.user_id, u.user_viewemail, u.user_posts, u.user_regdate, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_yim, u.user_msnm 
        FROM " . USERS_TABLE . " u LEFT JOIN " . USER_GROUP_TABLE . " ug
        ON u.user_id = ug.user_id
        WHERE u.user_id = " . $group_info['group_moderator'] . " AND ug.group_id = " . $group_id . "";
Wystarczy dać:
Kod:
    //
    // Get moderator details for this group
    //
    $sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_yim, user_msnm, 0 AS user_delete_time 
        FROM " . USERS_TABLE . "
        WHERE user_id = " . $group_info['group_moderator'];

Czyli praktycznie dodać na końcu pól z selecta w oryginalnym zapytaniu:
Kod:
, 0 AS user_delete_time
(group_id chyba nie jest potrzebne, a user_id się powtarza).
Poza tym w admin/admin_groups.php zapytanie ustawiające moderatorowi czas na 0 nie musi być wykonywane za każdym razem tylko w przypadku zmiany moda. Można je dodać po tym:
Kod:
                if ( !($row = $db->sql_fetchrow($result)) )
                {
                    $sql = "INSERT INTO " . USER_GROUP_TABLE . " (group_id, user_id, user_pending)
                        VALUES (" . $group_id . ", " . $group_moderator . ", 0)";
                    if ( !$db->sql_query($sql) )
                    {
                        message_die(GENERAL_ERROR, 'Could not update group moderator', '', __LINE__, __FILE__, $sql);
                    }
                }
Jako:
Kod:
                else
                {
                    $sql = "UPDATE " . USER_GROUP_TABLE . " SET user_delete_time = 0 WHERE user_id = $group_moderator";
                    if ( !$db->sql_query($sql) )
                    {
                        message_die(GENERAL_ERROR, 'Could not update group', '', __LINE__, __FILE__, $sql);
                    }
                }
 
     
Fredx121

Posty: 7
Wysłany: 14-04-2013, 22:35   

Sory, że taki odkop ale mi wyskakuje taki blad gdy chce dodac kogos do grupy


Could not add user to group

DEBUG MODE

INSERT INTO phpbb_user_group (user_id, group_id, user_pending, user_delete_time) VALUES (85, 6, 0, 0)

Line : 554
File : groupcp.php

Jeśli nie potrafisz znaleźć rozwiązania tego problemu,
możesz spróbować poszukać, lub zadać pytanie na forum: http://www.przemo.org/phpBB2/
 
     
Majkelo



Pomógł: 1283 razy
Posty: 3081
Wysłany: 15-04-2013, 23:30   

Zapytanie do SQL wykonałeś ?
 
     
szczurekPROS

Posty: 15
Wysłany: 22-04-2014, 19:32   

Witam. Działa ten mod na wersji 1.12.8?
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Nie możesz ściągać załączników na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Kopiowanie wszelkich treści zawartych na forum, modyfikacji oraz instrukcji bez zgody administracji i autorów tematów/postów zabronione!

Powered by phpBB modified by Przemo © 2003 phpBB
Strona wygenerowana w 0,07 sekundy. Zapytań do SQL: 12
Polecane serwisy

Najlepsze oprogramowanie do prowadzenia sklepu internetowegoNajlepszy program do sklepu firmowany przez Przem'a

Sklep z gadżetami

serwis laptopów

phpbb

Polisy Ubezpieczeniowe TU Europa

Design Cart - Tworzenie sklepu internetowego

dnirozwoju.pl

Ranking Hostingów HostingOnline.pl

• Zamów reklamę