[Liste] Mises à jours des MODs

Base de données des MODs de phpBB-fr : Télécharger des MODs.

Modérateurs: ABDev, Equipe

[Liste] Mises à jours des MODs

Messagepar Théonaute » 04 Mai 2008 à 04:57

Bonjour à tous,

dans ce sujet seront listés les différentes mises à jours des MODs de la base de données de phpBB-fr.

@+

Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Re: [Liste] Mises à jours des MODs

Messagepar Théonaute » 05 Mai 2008 à 01:43

[4 Mai 2008] Genders: 1.0.0 -> 1.0.1

Procédure:
Ouvrir le fichier includes/acp/acp_users.php
Trouver et supprimer
Code: Tout sélectionner
//-- mod : Genders ------------------------------------------------------------
//-- add
                     
'user_gender'   => $data['gender'],
//-- fin mod : Genders --------------------------------------------------------    

Trouver :
Code: Tout sélectionner
                            'user_birthday'    => $data['user_birthday'],    

Ajouter, après :
Code: Tout sélectionner
//-- mod : Genders ------------------------------------------------------------
//-- add
                            
'user_gender'    => $data['gender'],
//-- fin mod : Genders --------------------------------------------------------
    


Le zip et le topic de présentation ont été mis à jour
Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Re: [Liste] Mises à jours des MODs

Messagepar ErnadoO » 23 Mai 2008 à 16:19

[23 Mai 2008] Purger le cache depuis n'importe quelle page: 1.0.0 -> 1.0.0a

Procédure:
Code: Tout sélectionner
#
#-----[ OUVRIR ]----------------------------------------------
#
includes/acp/acp_board.php

#
#-----[ TROUVER ]---------------------------------------------
#
    //-- mod : purge cache from any page --------------------------------------------------------
    //-- add
                            'purge_cache'            => array('lang' => 'ALLOW_PURGE_CACHE',        'validate' => 'int',    'type' => 'custom', 'method' => 'select_user_authorized', 'explain' => true),
    //-- end : purge cache from any page --------------------------------------------------------    

#
#-----[ REMPLACER PAR ] ------------------------------------
# Supprimer

#
#-----[ TROUVER ]---------------------------------------------
#
                break;

                case 'avatar':    

#
#-----[ AVANT, AJOUTER ]---------------------------------------------
#
    //-- mod : purge cache from any page --------------------------------------------------------
    //-- add
                    if ($user->data['user_type'] == USER_FOUNDER)
                    {
                        $display_vars['vars']['purge_cache'] = array('lang' => 'ALLOW_PURGE_CACHE',        'validate' => 'int',    'type' => 'custom', 'method' => 'select_user_authorized', 'explain' => true);
                    }
    //-- end : purge cache from any page --------------------------------------------------------    


#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 

# EoM
  


Source: http://www.modsphpbb3.fr/viewtopic.php?p=89#p89

Le zip et le topic de présentation ont été mis à jour
ErnadoO
 

Re: [Liste] Mises à jours des MODs

Messagepar ErnadoO » 29 Mai 2008 à 12:10

[29 Mai 2008] Purger le cache depuis n'importe quelle page: 1.0.0a -> 1.0.1

Procédure de mise à jour :

Code: Tout sélectionner
#
#-----[ OUVRIR ]----------------------------------------------
#
includes/functions.php

#
#-----[ TROUVER ]---------------------------------------------
#
    if ( $config['purge_cache'] == PURGE_BY_FOUNDER && $user->data['user_type'] == USER_FOUNDER)
    {
        $s_authorized = true;
    }
    elseif ( $config['purge_cache'] == PURGE_BY_ADMIN && $auth->acl_get('a_'))
    {
        $s_authorized = true;
    }
    else
    
{
        $s_authorized = false;
    }

#
#-----[ REMPLACER PAR ] ------------------------------------
#
    $s_authorized = ( ($config['purge_cache'] == PURGE_BY_FOUNDER && $user->data['user_type'] == USER_FOUNDER) || ($config['purge_cache'] == PURGE_BY_ADMIN && $auth->acl_get('a_')) ) ? true : false;


#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 

# EoM
    


Source: http://www.modsphpbb3.fr/viewtopic.php?p=93#p93

Le zip et le topic de présentation ont été mis à jour
ErnadoO
 

Re: [Liste] Mises à jours des MODs

Messagepar Théonaute » 31 Mai 2008 à 00:42

[29 Mai 2008] Nombre de lignes dans les signatures: 1.0.0 -> 1.0.1

Le zip et le topic de présentation ont été mis à jour
Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Re: [Liste] Mises à jours des MODs

Messagepar Théonaute » 09 Juil 2008 à 16:36

[9 juillet 2008] Anti Double Posts: 1.0.1 -> 1.0.5

Procédure:
Ouvrir le fichier posting.php
Trouver
Code: Tout sélectionner
    //*****************************
    // Begin : Anti Double Posts 
    //*****************************
        $adp_time = $config['adp_days']*86400+$config['adp_hours']*3600+$config['adp_mins']*60+$config['adp_secs'];
            
        
//Check if last poster is the current poster
        $sql = 'SELECT t.topic_last_post_id,t.topic_last_poster_id, t.topic_last_post_time, p.post_text
                FROM '
 . TOPICS_TABLE . ' AS t, ' . POSTS_TABLE . ' AS p 
                WHERE t.topic_id = '
 . $topic_id . '
                    AND p.post_id = t.topic_last_post_id'
;
                
        $result 
= $db->sql_query_limit($sql, 1);
        
        if 
($row = $db->sql_fetchrow($result))
        {
            $topic_last_post_id = $row['topic_last_post_id'];
            $topic_last_poster_id = $row['topic_last_poster_id'];
            $topic_last_post_time = $row['topic_last_post_time'];
            $post_text = $row['post_text'];
        }
        $db->sql_freeresult($result);


        if ($mode == 'reply' && $config['adp_enable'] && $user->data['user_id']==$topic_last_poster_id && ($topic_last_post_time + $adp_time) > $current_time)
        {        
            if
(!$config['adp_auto_edit'] && !(($config['adp_admins'] && $auth->acl_get('a_')) || ($config['adp_modos'] && $auth->acl_get('m_'))))
            {
                trigger_error('ADP_DOUBLE_POST');
            }
        }
    //*****************************
    // End : Anti Double Posts
    //*****************************      

Remplacer par
Code: Tout sélectionner
// Begin : Anti Double Posts 
$mod_adp = false;
if ($config['adp_enable'])
{
    if ($mode == 'quote')
    {
        // Get topic id for this post
        $sql_topic = 'SELECT topic_id
                    FROM '
 . POSTS_TABLE . '
                    WHERE post_id = '
 . $post_id;
            
        $result_topic 
= $db->sql_query_limit($sql_topic, 1);
        
        if 
($row_topic = $db->sql_fetchrow($result_topic))
        {
            $topic_id = $row_topic['topic_id'];
        }

        $db->sql_freeresult($result_topic);
    }
    
    $adp_time 
= $config['adp_days'] * 86400 + $config['adp_hours'] * 3600 + $config['adp_mins'] * 60 + $config['adp_secs'];
        
    
    if 
($mode == 'reply' || $mode == 'quote')
    { 
        
// Check if last poster is the current poster
        $sql = 'SELECT t.topic_last_post_id,t.topic_last_poster_id, t.topic_last_post_time, p.post_subject, p.post_text, p.post_checksum, p.bbcode_uid, p.bbcode_bitfield
                FROM '
 . TOPICS_TABLE . ' AS t, ' . POSTS_TABLE . ' AS p 
                WHERE t.topic_id = '
 . $topic_id . '
                    AND p.post_id = t.topic_last_post_id'
;
                
        $result 
= $db->sql_query_limit($sql, 1);
        
        if 
($row = $db->sql_fetchrow($result))
        {
            $post_subject = $row['post_subject'];
            $topic_last_post_id = $row['topic_last_post_id'];
            $topic_last_poster_id = $row['topic_last_poster_id'];
            $topic_last_post_time = $row['topic_last_post_time'];
            $post_text = $row['post_text'];
            $post_checksum = $row['post_checksum'];
            $post_bbcode_uid = $row['bbcode_uid'];
            $post_bbcode_bitfield = $row['bbcode_bitfield'];
        }
        $db->sql_freeresult($result);
        
        
// Conditions
        if ($submit && $user->data['user_id'] == $topic_last_poster_id && ($topic_last_post_time + $adp_time) > $current_time && !(($config['adp_admins'] && $auth->acl_get('a_')) || ($config['adp_modos'] && $auth->acl_get('m_'))))
        {
            $mod_adp = true;
        }
    }

    if ($mod_adp && !$config['adp_auto_edit'])
    {
        trigger_error('ADP_DOUBLE_POST');
    }
}
// End : Anti Double Posts  


Trouver
Code: Tout sélectionner
    //*****************************
    // Begin : Anti Double Posts 
    //*****************************
        if ($mode == 'reply' && $config['adp_enable'] && $user->data['user_id']==$topic_last_poster_id && ($topic_last_post_time + $adp_time) > $current_time)
        {        
            if
($config['adp_auto_edit'] && !(($config['adp_admins'] && $auth->acl_get('a_')) || ($config['adp_modos'] && $auth->acl_get('m_'))))
            {
                $mode = 'edit';
                $post_id = $topic_last_post_id;
                $message_parser->message = $post_text . '<br /><br />' . $config['adp_text_edit'] . '<br /><br />' . $message_parser->message;
                    
            
}
        }
    //*****************************
    // End : Anti Double Posts
    //*****************************    

    // Validate username      


Remplacer par
Code: Tout sélectionner
    // Validate username      


Trouver
Code: Tout sélectionner
    $post_data['enable_sig']        = (!$config['allow_sig'] || !$auth->acl_get('f_sigs', $forum_id) || !$auth->acl_get('u_sig')) ? false : ((isset($_POST['attach_sig']) && $user->data['is_registered']) ? true : false); 


Ajouter après
Code: Tout sélectionner
// Begin : Anti Double Posts 
            if ($mod_adp && $config['adp_auto_edit'])
            {        

                $mode 
= 'edit';
                $post_id = $topic_last_post_id;
                $post_data['poster_id'] = $topic_last_poster_id;
                $post_data['post_subject'] = $post_subject;
                $post_data['post_checksum'] = $post_checksum;
                $post_data['username'] = $user->data['username'];

                $message_parser->bbcode_uid = $post_bbcode_uid;
                $message_parser->bbcode_bitfield = $post_bbcode_bitfield;


                decode_message($post_text,$post_bbcode_uid);
                
                
// Petit traitement des URL, encodées dans la BDD, ce qui empêche la détection des url dans les bbcodes img et url
                $post_text = str_replace(array('&#58;', '&#46;'), array(':', '.'), $post_text);
                
                $message_parser
->message = $post_text . '<br /><br />' . $config['adp_text_edit'] . '<br /><br />' . $message_parser->message;
            }            

// End : Anti Double Posts  


Le zip et le topic de présentation ont été mis à jour
Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Re: [Liste] Mises à jours des MODs

Messagepar Théonaute » 23 Juil 2008 à 09:57

[23 Juillet 2008] Afficher l'adresse IP d'un message privé: 1.0.0 -> 1.0.1

Le zip et le topic de présentation ont été mis à jour

Ouvrir: includes/acp/acp_board.php
Trouver et supprimer
Code: Tout sélectionner
//-- mod : Display IP address of private message ------------------------------------------
//-- add
                
if ($user->data['user_type'] == USER_FOUNDER)
                {
                    
$display_vars['vars']['display_pm_ip'] = array('lang' => 'DISPLAY_IP_PM',        'validate' => 'int',    'type' => 'select''method' => 'display_pm_ip_select''explain' => true);                }
//-- end : Display IP address of private message ------------------------------------------       

Trouver et supprimer
Code: Tout sélectionner
//-- mod : Display IP address of private message ------------------------------------------
//-- add
    /**
    * Select user autorized to view IP of private message
    */
    
function display_pm_ip_select($value$key '')
    {
        global 
$user;
        
        
$user->add_lang('acp/users');
        
        return 
'<option value="'VIEW_PM_IP_FOUNDER .'"' . (($value == VIEW_PM_IP_FOUNDER ) ? ' selected="selected"' '') . '>' $user->lang['FOUNDER'] . '</option><option value="'VIEW_PM_IP_ADMIN '"' . (($value == VIEW_PM_IP_ADMIN) ? ' selected="selected"' '') . '>' $user->lang['G_ADMINISTRATORS'] . '</option><option value="'VIEW_PM_IP_MOD '"' . (($value == VIEW_PM_IP_MOD) ? ' selected="selected"' '') . '>' $user->lang['G_GLOBAL_MODERATORS'] . '</option>';
    }
//-- end : Display IP address of private message ------------------------------------------       

Ouvrir: includes/constants.php
Trouver et supprimer
Code: Tout sélectionner
//-- mod : Display IP address of private message ------------------------------------------
//-- add
define('VIEW_PM_IP_FOUNDER'0);
define('VIEW_PM_IP_ADMIN'1);
define('VIEW_PM_IP_MOD'2);
//-- end : Display IP address of private message ------------------------------------------       

Ouvrir: includes/ucp/ucp_pm_viewmessage.php
Trouver
Code: Tout sélectionner
    if ( ($config['display_pm_ip'] == VIEW_PM_IP_FOUNDER && $user->data['user_type'] == USER_FOUNDER) || ($config['display_pm_ip'] == VIEW_PM_IP_ADMIN && $auth->acl_get('a_')) || ($config['display_pm_ip'] == VIEW_PM_IP_MOD && $auth->acl_get('m_')) )       

Remplacer par
Code: Tout sélectionner
    if ( $user->data['user_type'] == USER_FOUNDER) || $auth->acl_get('m_display_pm_ip') )       

Ouvrir: language/en/acp/board.php
Trouver et supprimer
Code: Tout sélectionner
//-- mod : Display IP address of private message ------------------------------------------
//-- add
    
'DISPLAY_IP_PM'                => 'Display IP adress in private messages',
    
'DISPLAY_IP_PM_EXPLAIN'        => 'You have to specify the minimum permission’s level to view this information.',
//-- end : Display IP address of private message ------------------------------------------       

Ouvrir: language/en/acp/permissions_phpbb.php
Trouver
Code: Tout sélectionner
    'acl_m_ban'        => array('lang' => 'Can manage bans<br /><em>This setting is only assigned globally. It is not forum based.</em>''cat' => 'misc'), // This moderator setting is only global (and not local)       

Ajouter après
Code: Tout sélectionner
//-- mod : Display IP address of private message ------------------------------------------
//-- add
    
'acl_m_display_pm_ip'    => array('lang'    => 'Can display Ip adress of private message''cat' => 'pm'),
//-- end : Display IP address of private message ------------------------------------------       

Ouvrir: language/fr/acp/board.php
Trouver et supprimer
Code: Tout sélectionner
//-- mod : Display IP address of private message ------------------------------------------
//-- add
    
'DISPLAY_IP_PM'                => 'Afficher l’adresse IP des messages privés',
    
'DISPLAY_IP_PM_EXPLAIN'        => 'Vous devez indiquer quel niveau de permission est requis pour visualiser cette information.',
//-- end : Display IP address of private message ------------------------------------------       

Ouvrir: language/fr/acp/permissions_phpbb.php
Trouver
Code: Tout sélectionner
    'acl_m_ban'        => array('lang'    => 'Peut gérer les bannissements<br /><em>Notez que ce réglage est assigné globalement. Il n’est pas basé sur le forum.</em>''cat' => 'misc'), // This moderator setting is only global (and not local)       

Ajouter après
Code: Tout sélectionner
//-- mod : Display IP address of private message ------------------------------------------
//-- add
    
'acl_m_display_pm_ip'    => array('lang'    => 'Peut afficher l’adresse IP d’un message privé''cat' => 'pm'),
//-- end : Display IP address of private message ------------------------------------------       
Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Re: [Liste] Mises à jours des MODs

Messagepar Théonaute » 30 Juil 2008 à 03:53

[29 juillet 2008] Anti Double Posts: 1.0.5 -> 1.0.7

Procédure:
Ouvrir le fichier posting.php
Trouver
Code: Tout sélectionner
            if ($user->data['user_id'] == $topic_last_poster_id && ($topic_last_post_time + $adp_time) > $current_time && !(($config['adp_admins'] && $auth->acl_get('a_')) || ($config['adp_modos'] && $auth->acl_get('m_'))))   

Remplacer par
Code: Tout sélectionner
            if ($submit && $user->data['user_id'] == $topic_last_poster_id && ($topic_last_post_time + $adp_time) > $current_time && !(($config['adp_admins'] && $auth->acl_get('a_')) || ($config['adp_modos'] && $auth->acl_get('m_'))))   

Trouver
Code: Tout sélectionner
                    $post_data['username'] = $user->data['username'];    

Ajouter après
Code: Tout sélectionner
                // Attachments
                    // Do not change to SELECT *
                    $sql = 'SELECT attach_id, is_orphan, attach_comment, real_filename
                        FROM '
 . ATTACHMENTS_TABLE . "
                        WHERE post_msg_id = $post_id
                            AND in_message = 0
                            AND is_orphan = 0
                        ORDER BY filetime DESC"
;
                    $result = $db->sql_query($sql);
                    $message_parser->attachment_data = array_merge($message_parser->attachment_data, $db->sql_fetchrowset($result));
                    $db->sql_freeresult($result);
                // End Attachments     
Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Re: [Liste] Mises à jours des MODs

Messagepar Théonaute » 30 Juil 2008 à 03:56

[29 juillet 2008] Début et fin de messages automatiques: 1.0.1 -> 1.0.2

Procédure:
n/a

Mise en conformité de l'archive à la version MODx 1.0.2
Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Re: [Liste] Mises à jours des MODs

Messagepar ErnadoO » 27 Sep 2008 à 11:21

[27 Septembre 2008] Filtre sur le pseudo dans la liste des membres: 1.0.0a -> 1.0.1

Procédure:
Code: Tout sélectionner
#
#-----[ OUVRIR ]----------------------------------------------
#
memberlist.php

#
#-----[ TROUVER ]---------------------------------------------
#
if(($username_filter = request_var('username_filter', '')) !== '')

#
#-----[ REMPLACER PAR ] ------------------------------------
#
if(($username_filter = request_var('username_filter', '', true)) !== '')


#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 

# EoM
  


Source: http://www.phpbb.com/community/viewtopi ... 5#p3785075

Le zip et le topic de présentation ont été mis à jour
ErnadoO
 

Re: [Liste] Mises à jours des MODs

Messagepar ErnadoO » 27 Sep 2008 à 14:04

[27 Septembre 2008] Gestionnaire de FAQ: 1.2.2 -> 1.2.5

Procédure:
- Remplacez le fichier includes/acp/acp_faq_manager.php par celui de l'archive

Source: base-de-donnees-mods-phpbb3/sujet144395-30.html#p1170280

Le zip et le topic de présentation ont été mis à jour
ErnadoO
 

Re: [Liste] Mises à jours des MODs

Messagepar ErnadoO » 27 Sep 2008 à 14:56

[27 Septembre 2008] BBcode spoiler: 1.4.2 -> 1.4.5

Procédure:
Code: Tout sélectionner
#
#-----[ OUVRIR ]----------------------------------------------
#
styles/prosilver/theme/stylesheet.css

#
#-----[ TROUVER ]---------------------------------------------
#
@import url("prime_bbcode_spoiler.css");

#
#-----[ REMPLACER PAR ] ------------------------------------
# (Supprimer)



#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 

# EoM        

Remplacez le fichier styles/prosilver/template/prime_bbcode_spoiler.js par celui de l'archive
Remplacez le fichier styles/prosilver/template/prime_bbcode_spoiler.html par celui de l'archive
Vider le cache du forum

Source: base-de-donnees-mods-phpbb3/sujet144001-15.html#p1170290

Le zip et le topic de présentation ont été mis à jour
ErnadoO
 

Re: [Liste] Mises à jours des MODs

Messagepar Théonaute » 28 Sep 2008 à 20:39

[28 Septembre 2008] Coloriser le fond des messages des admins et modos: 1.0.0 -> 1.0.1

Procédure:
SQL :
Code: Tout sélectionner
INSERT INTO phpbb_config (config_nameconfig_valueis_dynamicVALUES ('load_cbgm_default''1'1);
INSERT INTO phpbb_config (config_nameconfig_valueis_dynamicVALUES ('cbgm_admin_color''F6DEE1'1);
INSERT INTO phpbb_config (config_nameconfig_valueis_dynamicVALUES ('cbgm_mod_color''DEF6E4'1);
ALTER TABLE phpbb_posts ADD enable_cbgm TINYINT(1) DEFAULT 0;   


Ouvrir posting.php
Trouver
Code: Tout sélectionner
$bbcode_status    = ($config['allow_bbcode'] && $auth->acl_get('f_bbcode'$forum_id)) ? true false;   

Ajouter avant :
Code: Tout sélectionner
// Begin : Colored background messages for admin and moderators
$cbgm_status    = (($config['load_cbgm_admin'] && $auth->acl_get('a_')) || ($config['load_cbgm_mod'] && $auth->acl_get('m_'$forum_id))) ? true false;
// End : Colored background messages for admin and moderators       


Trouver
Code: Tout sélectionner
    $post_data['enable_bbcode']        = (!$bbcode_status || isset($_POST['disable_bbcode'])) ? false true;   

Ajouter avant :
Code: Tout sélectionner
// Begin : Colored background messages for admin and moderators
    
$post_data['enable_cbgm']        = (isset($_POST['enable_cbgm'])) ? true false;
// End : Colored background messages for admin and moderators       


Trouver
Code: Tout sélectionner
                'post_approved'            => (isset($post_data['post_approved'])) ? $post_data['post_approved'] : false,   

Ajouter après :
Code: Tout sélectionner
// Begin : Colored background messages for admin and moderators
                
'enable_cbgm'            => (bool) $post_data['enable_cbgm'],
// End : Colored background messages for admin and moderators       


Trouver
Code: Tout sélectionner
$bbcode_checked        = (isset($post_data['enable_bbcode'])) ? !$post_data['enable_bbcode'] : (($config['allow_bbcode']) ? !$user->optionget('bbcode') : 1);   

Ajouter avant :
Code: Tout sélectionner
// Begin : Colored background messages for admin and moderators
$cbgm_checked        = (isset($post_data['enable_cbgm'])) ? $post_data['enable_cbgm'] : (($config['load_cbgm_default']) ? $config['load_cbgm_default'] : 0);
// End : Colored background messages for admin and moderators       


Trouver
Code: Tout sélectionner
    'S_BBCODE_ALLOWED'            => $bbcode_status,   

Ajouter avant :
Code: Tout sélectionner
// Begin : Colored background messages for admin and moderators
    
'S_CBGM_ALLOWED'            => $cbgm_status,
    
'S_CBGM_CHECKED'            => ($cbgm_checked) ? ' checked="checked"' '',    
// End : Colored background messages for admin and moderators       



Ouvrir viewtopic.php
Trouver
Code: Tout sélectionner
        'foe'                => $row['foe'],   

Ajouter après :
Code: Tout sélectionner
// Begin : Colored background messages for admin and moderators
        
'enable_cbgm'        => $row['enable_cbgm'],
// End : Colored background messages for admin and moderators       


Trouver
Code: Tout sélectionner
        'S_POSTER_IS_ADMIN'    => ($config['load_cbgm_admin']) ? $poster_is_admin false,
        
'S_POSTER_IS_MOD'    => ($config['load_cbgm_mod']) ? $poster_is_mod false

Remplacer par :
Code: Tout sélectionner
        'S_POSTER_IS_ADMIN'    => ($config['load_cbgm_admin'] && $row['enable_cbgm']) ? $poster_is_admin false,
        
'S_POSTER_IS_MOD'    => ($config['load_cbgm_mod'] && $row['enable_cbgm']) ? $poster_is_mod false


Ouvrir includes/functions.php
Trouver
Code: Tout sélectionner
        'T_THEME_PATH'            => "{$phpbb_root_path}styles/" $user->theme['theme_path'] . '/theme',   

Ajouter avant :
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
        
'CBGM_ADMIN_COLOR'        => $config['cbgm_admin_color'],
        
'CBGM_MOD_COLOR'        => $config['cbgm_mod_color'],
//End : Colored background messages for admin and moderators       



Ouvrir includes/functions_posting.php
Trouver
Code: Tout sélectionner
                'enable_bbcode'        => $data['enable_bbcode'],   

Ajouter avant :
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
                
'enable_cbgm'        => $data['enable_cbgm'],
//End : Colored background messages for admin and moderators       


Trouver
Code: Tout sélectionner
                'enable_bbcode'        => $data['enable_bbcode'],   

Ajouter avant :
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
                
'enable_cbgm'        => $data['enable_cbgm'],
//End : Colored background messages for admin and moderators       



Ouvrir includes/acp/acp_board.php
Trouver
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
                        
'load_cbgm_admin'    => array('lang' => 'LOAD_CBGM_ADMINS',    'validate' => 'bool',    'type' => 'radio:yes_no''explain' => true),
                        
'load_cbgm_mod'    => array('lang' => 'LOAD_CBGM_MODOS',    'validate' => 'bool',    'type' => 'radio:yes_no''explain' => true),
//End : Colored background messages for admin and moderators               

Remplacer par :
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
                        
'legend3'                => 'ACP_LOAD_CBGM',                        
                        
'load_cbgm_default'        => array('lang' => 'LOAD_CBGM_DEFAULT',    'validate' => 'bool',    'type' => 'radio:yes_no''explain' => true),
                        
'load_cbgm_admin'        => array('lang' => 'LOAD_CBGM_ADMINS',    'validate' => 'bool',    'type' => 'radio:yes_no''explain' => true),
                        
'cbgm_admin_color'        => array('lang' => 'CBGM_ADMINS_COLOR',    'validate' => 'string',    'type' => 'text:6:6''explain' => false),
                        
'load_cbgm_mod'            => array('lang' => 'LOAD_CBGM_MODS',    'validate' => 'bool',    'type' => 'radio:yes_no''explain' => true),
                        
'cbgm_mod_color'        => array('lang' => 'CBGM_MODS_COLOR',    'validate' => 'string',    'type' => 'text:6:6''explain' => false),
//End : Colored background messages for admin and moderators       



Ouvrir language/en/posting.php
Trouver
Code: Tout sélectionner

Ajouter avant :
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
$lang array_merge($lang, array(
    
'ENABLE_CBGM'            => 'Change background color for this post',    
));
//End : Colored background messages for admin and moderators       



Ouvrir language/en/acp/board.php
Trouver
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
$lang array_merge($lang, array(
    
'LOAD_CBGM_ADMINS'            => 'Change background color for administrators\' posts.',
    
'LOAD_CBGM_ADMINS_EXPLAIN'        => 'When reading a topic, administrators\' background color posts is change.',
    
'LOAD_CBGM_MODOS'            => 'Change background color for moderators\' posts.',
    
'LOAD_CBGM_MODOS_EXPLAIN'        => 'When reading a topic, moderator\' background color posts is change, if moderators have moderators\' permissions in the current forum.',
));
//End : Colored background messages for admin and moderators       

Remplacer par :
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
$lang array_merge($lang, array(
    
'ACP_LOAD_CBGM'                => 'Colored background for admins and modos MOD settings',    
    
'LOAD_CBGM_DEFAULT'            => 'Enable colored background by default',
    
'LOAD_CBGM_DEFAULT_EXPLAIN'    => 'If you enable this option, the MOD will be enabled by defaut : the checkbox in posting.php will be checked by default.',
    
'LOAD_CBGM_ADMINS'            => 'Change background color for administrators\' posts',
    
'CBGM_ADMINS_COLOR'            => 'Administrators\' messages color',
    
'LOAD_CBGM_ADMINS_EXPLAIN'    => 'When reading a topic, administrators\' background color posts is change.',
    
'LOAD_CBGM_MODS'            => 'Change background color for moderators\' posts',
    
'CBGM_MODS_COLOR'            => 'Moderators\' messages color',
    
'LOAD_CBGM_MODS_EXPLAIN'    => 'When reading a topic, moderators\' background color posts is change, if moderators have moderators\' permissions in the current forum.',
));
//End : Colored background messages for admin and moderators       



Ouvrir language/fr/posting.php
Trouver
Code: Tout sélectionner

Ajouter avant :
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
$lang array_merge($lang, array(
    
'ENABLE_CBGM'            => 'Changer la couleur du fond du message',    
));
//End : Colored background messages for admin and moderators       



Ouvrir language/fr/acp/board.php
Trouver
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
$lang array_merge($lang, array(
    
'LOAD_CBGM_ADMINS'            => 'Modifier la couleur de fond des messages des administrateurs.',
    
'LOAD_CBGM_ADMINS_EXPLAIN'        => 'Lors de la lecture d\'un sujet, la couleur de fond des messages des administrateurs est modifiée.',
    
'LOAD_CBGM_MODOS'            => 'Modifier la couleur de fond des messages des modérateurs.',
    
'LOAD_CBGM_MODOS_EXPLAIN'        => 'Lors de la lecture d\'un sujet, la couleur de fond des messages des modérateurs ayant des pouvoirs dans le forum en cours de lecture, est modifiée.',
));
//End : Colored background messages for admin and moderators       

Remplacer par :
Code: Tout sélectionner
//Begin : Colored background messages for admin and moderators
$lang array_merge($lang, array(
    
'ACP_LOAD_CBGM'                => 'Paramètres du MOD de colorisation des messages pour admins et modos',    
    
'LOAD_CBGM_DEFAULT'            => 'Activer la colorisation des messages par défaut',
    
'LOAD_CBGM_DEFAULT_EXPLAIN'    => 'Si vous activez cette option, les messages des administrateurs et des modérateurs seront colorés par défaut : la case à cocher sera cochée par défaut dans posting.php',
    
'LOAD_CBGM_ADMINS'            => 'Modifier la couleur de fond des messages des administrateurs',
    
'CBGM_ADMINS_COLOR'            => 'Couleur des messages des administrateurs',
    
'LOAD_CBGM_ADMINS_EXPLAIN'    => 'Lors de la lecture d\'un sujet, la couleur de fond des messages des administrateurs est modifiée.',
    
'LOAD_CBGM_MODS'            => 'Modifier la couleur de fond des messages des modérateurs',
    
'CBGM_MODS_COLOR'            => 'Couleur des messages des modérateurs',
    
'LOAD_CBGM_MODS_EXPLAIN'    => 'Lors de la lecture d\'un sujet, la couleur de fond des messages des modérateurs ayant des pouvoirs dans le forum en cours de lecture, est modifiée.',
));
//End : Colored background messages for admin and moderators       



Ouvrir styles/prosilver/template/overall_header.html
Trouver
Code: Tout sélectionner
<title>{SITENAME} &bull; <!-- IF S_IN_MCP -->{L_MCP} &bull; <!-- ELSEIF S_IN_UCP -->{L_UCP} &bull; <!-- ENDIF -->{PAGE_TITLE}</title>   

Ajouter avant :
Code: Tout sélectionner
<style type="text/css">
/* Begin : Colored background messages for admin and moderators */
.cbgm_admin    background-color#{CBGM_ADMIN_COLOR};}
.cbgm_mod    background-color#{CBGM_MOD_COLOR};}
/* End : Colored background messages for admin and moderators */
</style>   



Ouvrir styles/prosilver/template/posting_editor.html
Trouver
Code: Tout sélectionner
            <!-- IF S_BBCODE_ALLOWED -->
                <
div><label for="disable_bbcode"><input type="checkbox" name="disable_bbcode" id="disable_bbcode"{S_BBCODE_CHECKED} /> {L_DISABLE_BBCODE}</label></div>
            <!-- ENDIF -->   

Ajouter avant :
Code: Tout sélectionner
            <!-- IF S_CBGM_ALLOWED -->            
                <
div><label for="enable_cbgm"><input type="checkbox" name="enable_cbgm" id="enable_cbgm"{S_CBGM_CHECKED} /> {L_ENABLE_CBGM}</label></div>
            <!-- ENDIF -->   



Ouvrir styles/prosilver/template/viewtopic_body.html
Trouver
Code: Tout sélectionner
    <div id="p{postrow.POST_ID}" class="post <!-- IF postrow.S_POSTER_IS_ADMIN -->cbgm_admin<!-- ELSEIF postrow.S_POSTER_IS_MOD -->cbgm_modo<!-- ELSE --><!-- IF postrow.S_ROW_COUNT is odd -->bg1<!-- ELSE -->bg2<!-- ENDIF --><!-- ENDIF --><!-- IF postrow.S_UNREAD_POST --> unreadpost<!-- ENDIF --><!-- IF postrow.S_POST_REPORTED --> reported<!-- ENDIF --><!-- IF postrow.S_ONLINE --> online<!-- ENDIF -->">   

Remplacer par :
Code: Tout sélectionner
    <div id="p{postrow.POST_ID}" class="post <!-- IF postrow.S_POSTER_IS_ADMIN -->cbgm_admin<!-- ELSEIF postrow.S_POSTER_IS_MOD -->cbgm_mod<!-- ELSE --><!-- IF postrow.S_ROW_COUNT is odd -->bg1<!-- ELSE -->bg2<!-- ENDIF --><!-- ENDIF --><!-- IF postrow.S_UNREAD_POST --> unreadpost<!-- ENDIF --><!-- IF postrow.S_POST_REPORTED --> reported<!-- ENDIF --><!-- IF postrow.S_ONLINE --> online<!-- ENDIF -->">   



Ouvrir styles/prosilver/theme/colours.css
Trouver
Code: Tout sélectionner
.bg3    background-color#cadceb; }
/* Begin : Colored background messages for admin and moderators */
.cbgm_admin    background-color#F6DEE1; }
.cbgm_modo    background-color#DEF6E4;  }
/* End : Colored background messages for admin and moderators */   

Remplacer par :
Code: Tout sélectionner
.bg3    background-color#cadceb; }       



Ouvrir styles/subsilver2/template/overall_header.html
Trouver
Code: Tout sélectionner
<link rel="stylesheet" href="{T_STYLESHEET_LINK}" type="text/css" />   

Ajouter après :
Code: Tout sélectionner
<style type="text/css">
/* Begin : Colored background messages for admin and moderators */
.cbgm_admin    background-color#{CBGM_ADMIN_COLOR};}
.cbgm_mod    background-color#{CBGM_MOD_COLOR};}
/* End : Colored background messages for admin and moderators */
</style>   



Ouvrir styles/subsilver2/template/posting_body.html
Trouver
Code: Tout sélectionner
        <!-- IF S_BBCODE_ALLOWED -->
            <
tr>
                <
td><input type="checkbox" class="radio" name="disable_bbcode"{S_BBCODE_CHECKED} /></td>
                <
td class="gen">{L_DISABLE_BBCODE}</td>
            </
tr>
        <!-- ENDIF -->   

Ajouter avant :
Code: Tout sélectionner
        <!-- IF S_CBGM_ALLOWED -->            
            <
tr>
                <
td><input type="checkbox" class="radio" name="enable_cbgm"{S_CBGM_CHECKED} /></td>
                <
td class="gen">{L_ENABLE_CBGM}</td>
            </
tr>
        <!-- ENDIF -->   



Ouvrir styles/subsilver2/template/viewtopic_body.html
Trouver
Code: Tout sélectionner
    <!-- IF postrow.S_POSTER_IS_ADMIN --><tr class="cbgm_admin"><!-- ELSEIF postrow.S_POSTER_IS_MOD --><tr class="cbgm_modo"><!-- ELSE --><!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF --><!-- ENDIF -->   

Remplacer par :
Code: Tout sélectionner
        <!-- IF postrow.S_POSTER_IS_ADMIN --><tr class="cbgm_admin"><!-- ELSEIF postrow.S_POSTER_IS_MOD --><tr class="cbgm_mod"><!-- ELSE --><!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF --><!-- ENDIF -->   


Trouver
Code: Tout sélectionner
    <!-- IF postrow.S_POSTER_IS_ADMIN --><tr class="cbgm_admin"><!-- ELSEIF postrow.S_POSTER_IS_MOD --><tr class="cbgm_modo"><!-- ELSE --><!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF --><!-- ENDIF -->   

Remplacer par :
Code: Tout sélectionner
        <!-- IF postrow.S_POSTER_IS_ADMIN --><tr class="cbgm_admin"><!-- ELSEIF postrow.S_POSTER_IS_MOD --><tr class="cbgm_mod"><!-- ELSE --><!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF --><!-- ENDIF -->   


Trouver
Code: Tout sélectionner
    <!-- IF postrow.S_POSTER_IS_ADMIN --><tr class="cbgm_admin"><!-- ELSEIF postrow.S_POSTER_IS_MOD --><tr class="cbgm_modo"><!-- ELSE --><!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF --><!-- ENDIF -->   

Remplacer par :
Code: Tout sélectionner
        <!-- IF postrow.S_POSTER_IS_ADMIN --><tr class="cbgm_admin"><!-- ELSEIF postrow.S_POSTER_IS_MOD --><tr class="cbgm_mod"><!-- ELSE --><!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF --><!-- ENDIF -->   



Ouvrir styles/prosilver/theme/stylesheet.css
Trouver
Code: Tout sélectionner
.row2 {
    
background-color#DCE1E5;
    
padding4px;
}
/* Begin : Colored background messages for admin and moderators */
.cbgm_admin {
    
background-color#F6DEE1;
    
padding4px;
}

.
cbgm_modo {
    
background-color#DEF6E4;
    
padding4px;
}
/* End : Colored background messages for admin and moderators */   

Remplacer par :
Code: Tout sélectionner
.row2 {
    
background-color#DCE1E5;
    
padding4px;
}   


Source: base-de-donnees-mods-phpbb3/sujet152380-30.html#p1170832

Le zip et le topic de présentation ont été mis à jour
Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Re: [Liste] Mises à jours des MODs

Messagepar ErnadoO » 04 Oct 2008 à 12:42

[04 Octobre 2008] Pas de citation pour le dernier message: 1.0.0 -> 1.2.0

Procédure:
Suivez la procédure décrite dans le fichier NoQuote_in_Last_Post_1.2.0/contrib/Update_1.0.0_to_1.2.0/update.xml

Le zip et le topic de présentation ont été mis à jour
ErnadoO
 

Re: [Liste] Mises à jours des MODs

Messagepar Théonaute » 23 Oct 2008 à 18:14

[23 Octobre 2008] Anti Double Posts: 1.0.7 -> 2.0.2

Procédure:
Requêtes SQL :
Code: Tout sélectionner
DELETE FROM phpbb_config WHERE config_name='adp_enable';
DELETE FROM phpbb_config WHERE config_name='adp_admins';
DELETE FROM phpbb_config WHERE config_name='adp_modos';
DELETE FROM phpbb_config WHERE config_name='adp_auto_edit';
DELETE FROM phpbb_config WHERE config_name='adp_text_edit';
DELETE FROM phpbb_config WHERE config_name='adp_days';
DELETE FROM phpbb_config WHERE config_name='adp_hours';
DELETE FROM phpbb_config WHERE config_name='adp_mins';
DELETE FROM phpbb_config WHERE config_name='adp_secs';

INSERT INTO phpbb_acl_options VALUES('','u_adp_allow',1,0,0);
ALTER TABLE phpbb_forums ADD adp_enable tinyint(1) NOT NULL DEFAULT 1;
ALTER TABLE phpbb_forums ADD adp_admins tinyint(1) NOT NULL DEFAULT 0;
ALTER TABLE phpbb_forums ADD adp_modos tinyint(1) NOT NULL DEFAULT 0;
ALTER TABLE phpbb_forums ADD adp_auto_edit tinyint(1) NOT NULL DEFAULT 1;
ALTER TABLE phpbb_forums ADD adp_text_edit varchar(255) NOT NULL DEFAULT '-- %D --';  
ALTER TABLE phpbb_forums ADD adp_always tinyint
(1) NOT NULL DEFAULT 1;
ALTER TABLE phpbb_forums ADD adp_days int(11) NOT NULL DEFAULT 1;
ALTER TABLE phpbb_forums ADD adp_hours int(11) NOT NULL DEFAULT 0;
ALTER TABLE phpbb_forums ADD adp_mins int(11) NOT NULL DEFAULT 0;
ALTER TABLE phpbb_forums ADD adp_secs int(11) NOT NULL DEFAULT 0;   


Copie :
root/language/en/mods/anti_double_post.php :arrow: language/en/mods/anti_double_post.php
root/language/en/mods/permissions_anti_double_post.php :arrow: language/en/mods/permissions_anti_double_post.php
root/language/fr/mods/anti_double_post.php :arrow: language/fr/mods/anti_double_post.php
root/language/fr/mods/permissions_anti_double_post.php :arrow: language/fr/mods/permissions_anti_double_post.php

Ouvrir posting.php
Trouver
Code: Tout sélectionner
$current_time = time();
// Begin : Anti Double Posts 
$mod_adp = false;
if ($config['adp_enable'])
{
    if ($mode == 'quote')
    {
        // Get topic id for this post
        $sql_topic = 'SELECT topic_id
                    FROM '
 . POSTS_TABLE . '
                    WHERE post_id = '
 . $post_id;
            
        $result_topic 
= $db->sql_query_limit($sql_topic, 1);
        
        if 
($row_topic = $db->sql_fetchrow($result_topic))
        {
            $topic_id = $row_topic['topic_id'];
        }

        $db->sql_freeresult($result_topic);
    }
    
    $adp_time 
= $config['adp_days'] * 86400 + $config['adp_hours'] * 3600 + $config['adp_mins'] * 60 + $config['adp_secs'];
        
    
    if 
($mode == 'reply' || $mode == 'quote')
    { 
        
// Check if last poster is the current poster
        $sql = 'SELECT t.topic_last_post_id,t.topic_last_poster_id, t.topic_last_post_time, p.post_subject, p.post_text, p.post_checksum, p.bbcode_uid, p.bbcode_bitfield
                FROM '
 . TOPICS_TABLE . ' AS t, ' . POSTS_TABLE . ' AS p 
                WHERE t.topic_id = '
 . $topic_id . '
                    AND p.post_id = t.topic_last_post_id'
;
                
        $result 
= $db->sql_query_limit($sql, 1);
        
        if 
($row = $db->sql_fetchrow($result))
        {
            $post_subject = $row['post_subject'];
            $topic_last_post_id = $row['topic_last_post_id'];
            $topic_last_poster_id = $row['topic_last_poster_id'];
            $topic_last_post_time = $row['topic_last_post_time'];
            $post_text = $row['post_text'];
            $post_checksum = $row['post_checksum'];
            $post_bbcode_uid = $row['bbcode_uid'];
            $post_bbcode_bitfield = $row['bbcode_bitfield'];
        }
        $db->sql_freeresult($result);
        
        
// Conditions
        if ($submit && $user->data['user_id'] == $topic_last_poster_id && ($topic_last_post_time + $adp_time) > $current_time && !(($config['adp_admins'] && $auth->acl_get('a_')) || ($config['adp_modos'] && $auth->acl_get('m_'))))
        {
            $mod_adp = true;
        }
    }

    if ($mod_adp && !$config['adp_auto_edit'])
    {
        trigger_error('ADP_DOUBLE_POST');
    }
}
// End : Anti Double Posts     

Remplacer par
Code: Tout sélectionner
$current_time = time(); 

Trouver
Code: Tout sélectionner
$message_parser = new parse_message(); 

Ajouter, avant
Code: Tout sélectionner
// Begin : Anti Double Posts 
$mod_adp = false;
if (!empty($post_data['adp_enable']))
{
    if ($mode == 'quote')
    {
        // Get topic id for this post
        $sql_topic = 'SELECT topic_id
                    FROM '
 . POSTS_TABLE . '
                    WHERE post_id = '
 . $post_id;
            
        $result_topic 
= $db->sql_query_limit($sql_topic, 1);
        
        if 
($row_topic = $db->sql_fetchrow($result_topic))
        {
            $topic_id = $row_topic['topic_id'];
        }

        $db->sql_freeresult($result_topic);
    }
    
    $adp_time 
= $post_data['adp_days'] * 86400 + $post_data['adp_hours'] * 3600 + $post_data['adp_mins'] * 60 + $post_data['adp_secs'];
        
    
    if 
($mode == 'reply' || $mode == 'quote')
    { 
        
// Check if last poster is the current poster
        $sql = 'SELECT t.topic_last_post_id,t.topic_last_poster_id, t.topic_last_post_time, t.poll_title, t.poll_start, t.poll_length, t.poll_max_options, t.poll_last_vote, t.poll_vote_change, p.post_subject, p.post_text, p.post_checksum, p.bbcode_uid, p.bbcode_bitfield
                FROM '
 . TOPICS_TABLE . ' AS t, ' . POSTS_TABLE . ' AS p 
                WHERE t.topic_id = '
 . $topic_id . '
                    AND p.post_id = t.topic_last_post_id'
;
                
        $result 
= $db->sql_query_limit($sql, 1);
        
        if 
($row = $db->sql_fetchrow($result))
        {
            $adp_post_subject = $row['post_subject'];
            $adp_topic_last_post_id = $row['topic_last_post_id'];
            $adp_topic_last_poster_id = $row['topic_last_poster_id'];
            $adp_topic_last_post_time = $row['topic_last_post_time'];
            $adp_post_text = $row['post_text'];
            $adp_post_checksum = $row['post_checksum'];
            $adp_post_bbcode_uid = $row['bbcode_uid'];
            $adp_post_bbcode_bitfield = $row['bbcode_bitfield'];
            
            
//Poll options            
            $adp_poll_title = $row['poll_title'];
            $adp_poll_start = $row['poll_start'];
            $adp_poll_length = $row['poll_length'];
            $adp_poll_max_options = $row['poll_max_options'];
            $adp_poll_last_vote = $row['poll_last_vote'];
            $adp_poll_vote_change = $row['vote_change'];

        }
        $db->sql_freeresult($result);        
        
        
//Poll options
        $adp_poll_option_text = implode("\n", $post_data['poll_options']);
        
        
        
// Conditions
        if($post_data['adp_always'] || (($adp_topic_last_post_time + $adp_time) > $current_time))
        {
            $adp_time_parameter = true;
        }
        else
        
{
            $adp_time_parameter = false;
        }
        
        if 
(($user->data['user_id'] == $adp_topic_last_poster_id) && $adp_time_parameter)
        {
            if(!$post_data['adp_admins'] && $auth->acl_get('a_')) //Check if user is admin and admins are allowed to double post
            {
                $mod_adp = true;
            }
            else if(!$post_data['adp_modos'] && $auth->acl_get('m_',$forum_id) && !$auth->acl_get('a_')) //Check if user is moderator and moderators are allowed to double post
            {
                $mod_adp = true;
            }
            else if(!$auth->acl_get('u_adp_allow') && !$auth->acl_get('a_') && !$auth->acl_get('m_',$forum_id))
            {
                $mod_adp = true;
            } 
        
}
    }

    if ($mod_adp && !$post_data['adp_auto_edit'])
    {
        $user->add_lang('mods/anti_double_post');
        $adp_error = sprintf($user->lang['ADP_DOUBLE_POST'], '<a href="' . append_sid("{$phpbb_root_path}posting.$phpEx", 'mode=edit&amp;f=' . $forum_id . '&amp;p=' . $adp_topic_last_post_id) . '">', '</a>');

        trigger_error($adp_error);
    }   
}
// End : Anti Double Posts     

Trouver
Code: Tout sélectionner
    $post_data['enable_sig']        = (!$config['allow_sig'] || !$auth->acl_get('f_sigs', $forum_id) || !$auth->acl_get('u_sig')) ? false : ((isset($_POST['attach_sig']) && $user->data['is_registered']) ? true : false);
// Begin : Anti Double Posts 
            if ($mod_adp && $config['adp_auto_edit'])
            {        

                $mode 
= 'edit';
                $post_id = $topic_last_post_id;
                $post_data['poster_id'] = $topic_last_poster_id;
                $post_data['post_subject'] = $post_subject;
                $post_data['post_checksum'] = $post_checksum;
                $post_data['username'] = $user->data['username'];
                
            
// Attachments
                // Do not change to SELECT *
                $sql = 'SELECT attach_id, is_orphan, attach_comment, real_filename
                    FROM '
 . ATTACHMENTS_TABLE . "
                    WHERE post_msg_id = $post_id
                        AND in_message = 0
                        AND is_orphan = 0
                    ORDER BY filetime DESC"
;
                $result = $db->sql_query($sql);
                $message_parser->attachment_data = array_merge($message_parser->attachment_data, $db->sql_fetchrowset($result));
                $db->sql_freeresult($result);
            // End Attachments
                
                $message_parser
->bbcode_uid = $post_bbcode_uid;
                $message_parser->bbcode_bitfield = $post_bbcode_bitfield;


                decode_message($post_text,$post_bbcode_uid);
                
                
// Petit traitement des URL, encodées dans la BDD, ce qui empêche la détection des url dans les bbcodes img et url
                $post_text = str_replace(array('&#58;', '&#46;'), array(':', '.'), $post_text);
                
                $message_parser
->message = $post_text . '<br /><br />' . $config['adp_text_edit'] . '<br /><br />' . $message_parser->message;
            }
// End : Anti Double Posts       &nbsp; &nbsp;        

Remplacer par
Code: Tout sélectionner
    $post_data['enable_sig']        = (!$config['allow_sig'] || !$auth->acl_get('f_sigs', $forum_id) || !$auth->acl_get('u_sig')) ? false : ((isset($_POST['attach_sig']) && $user->data['is_registered']) ? true : false);   

Trouver
Code: Tout sélectionner
    // If replying/quoting and last post id has changed
    // give user option to continue submit or return to post
    // notify and show user the post made between his request and the final submit     

Ajouter, avant
Code: Tout sélectionner
    // Begin : Anti Double Posts 
        if ($submit && $mod_adp && !empty($post_data['adp_auto_edit']))
        {        
            $mode 
= 'edit';
            $post_id = $adp_topic_last_post_id;
            $post_data['poster_id'] = $adp_topic_last_poster_id;
            $post_data['post_subject'] = $adp_post_subject;
            $post_data['post_checksum'] = $adp_post_checksum;
            $post_data['username'] = $user->data['username'];
            
            $post_data
['poll_title'] = $adp_poll_title;
            $post_data['poll_start'] = $adp_poll_start;
            $post_data['poll_length'] = $adp_poll_length;
            $post_data['poll_max_options'] = $adp_poll_max_options;
            $post_data['poll_last_vote'] = $adp_poll_last_vote;
            $post_data['vote_change'] = $adp_poll_vote_change;
            $post_data['poll_option_text'] = $adp_poll_option_text;

            // Attachments
            // Do not change to SELECT *
            $sql = 'SELECT attach_id, is_orphan, attach_comment, real_filename
                FROM '
 . ATTACHMENTS_TABLE . "
                WHERE post_msg_id = $post_id
                    AND in_message = 0
                    AND is_orphan = 0
                ORDER BY filetime DESC"
;
            $result = $db->sql_query($sql);
            $message_parser->attachment_data = array_merge($message_parser->attachment_data, $db->sql_fetchrowset($result));
            $db->sql_freeresult($result);
            // End Attachments
            
            $message_parser
->bbcode_uid = $adp_post_bbcode_uid;
            $message_parser->bbcode_bitfield = $adp_post_bbcode_bitfield;

            //Decode last post
            decode_message($adp_post_text,$adp_post_bbcode_uid);
            
            
// Decode URLs
            $adp_post_text = str_replace(array('&#58;', '&#46;'), array(':', '.'), $adp_post_text);
            
            
//Parse "%D" in the ADP Text edit
            $post_data['adp_text_edit'] = str_replace("%D", $user->format_date($current_time), $post_data['adp_text_edit']);                
            
            
//Do the job...
            $message_parser->message = $adp_post_text . '<br /><br />' . $post_data['adp_text_edit'] . '<br /><br />' . $message_parser->message;
        }
    // End : Anti Double Posts     


Ouvrir adm/style/acp_forums.html
Trouver
Code: Tout sélectionner
   <fieldset class="submit-buttons">
      <legend>{L_SUBMIT}</legend>
      <input class="button1" type="submit" id="submit" name="update" value="{L_SUBMIT}" />&nbsp;
      <input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
      {S_FORM_TOKEN}
   </fieldset>

Ajouter, avant
Code: Tout sélectionner
   <div id="forum_adp_options">
      <fieldset>
         <legend>{L_FORUM_ADP}</legend>
      <dl>
         <dt><label for="adp_enable">{L_ADP_ENABLE}:</label><br /></dt>
         <dd><label><input type="radio" class="radio" name="adp_enable" value="1"<!-- IF S_ADP_ENABLE --> id="adp_enable" checked="checked"<!-- ENDIF --> /> {L_YES}</label>
            <label><input type="radio" class="radio" name="adp_enable" value="0"<!-- IF not S_ADP_ENABLE --> id="adp_enable" checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
      </dl>
      <dl>
         <dt><label for="adp_admins">{L_ADP_ADMINS}:</label><br /></dt>
         <dd><label><input type="radio" class="radio" name="adp_admins" value="1"<!-- IF S_ADP_ADMINS --> id="adp_admins" checked="checked"<!-- ENDIF --> /> {L_YES}</label>
            <label><input type="radio" class="radio" name="adp_admins" value="0"<!-- IF not S_ADP_ADMINS --> id="adp_admins" checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
      </dl>
      <dl>
         <dt><label for="adp_modos">{L_ADP_MODOS}:</label><br /></dt>
         <dd><label><input type="radio" class="radio" name="adp_modos" value="1"<!-- IF S_ADP_MODOS --> id="adp_modos" checked="checked"<!-- ENDIF --> /> {L_YES}</label>
            <label><input type="radio" class="radio" name="adp_modos" value="0"<!-- IF not S_ADP_MODOS --> id="adp_modos" checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
      </dl>
      <dl>
         <dt><label for="adp_auto_edit">{L_ADP_AUTO_EDIT}:</label><br /><span>{L_ADP_AUTO_EDIT_EXPLAIN}</span></dt>
         <dd><label><input type="radio" class="radio" name="adp_auto_edit" value="1"<!-- IF S_ADP_AUTO_EDIT --> id="adp_auto_edit" checked="checked"<!-- ENDIF --> /> {L_YES}</label>
            <label><input type="radio" class="radio" name="adp_auto_edit" value="0"<!-- IF not S_ADP_AUTO_EDIT --> id="adp_auto_edit" checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
      </dl>
      <dl>
         <dt><label for="adp_text_edit">{L_ADP_TEXT_EDIT}:</label><br /><span>{L_ADP_TEXT_EDIT_EXPLAIN}</span></dt>
         <dd><input class="text medium" type="text" id="adp_text_edit" name="adp_text_edit" value="{ADP_TEXT_EDIT}" maxlength="255" /></dd>
      </dl>
      <dl>
         <dt><label for="adp_always">{L_ADP_ALWAYS}:</label><br /><span>{L_ADP_ALWAYS_EXPLAIN}</span></dt>
         <dd><label><input type="radio" class="radio" name="adp_always" value="1"<!-- IF S_ADP_ALWAYS --> id="adp_always" checked="checked"<!-- ENDIF --> /> {L_YES}</label>
            <label><input type="radio" class="radio" name="adp_always" value="0"<!-- IF not S_ADP_ALWAYS --> id="adp_always" checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
      </dl>
      <dl>
         <dt><label for="adp_days">{L_ADP_DAYS}:</label><br /><span>{L_ADP_DAYS_EXPLAIN}</span></dt>
         <dd><input type="text" id="adp_days" name="adp_days" value="{ADP_DAYS}" maxlength="4" size="4" /></dd>
      </dl>
      <dl>
         <dt><label for="adp_hours">{L_ADP_HOURS}:</label><br /><span>{L_ADP_HOURS_EXPLAIN}</span></dt>
         <dd><input type="text" id="adp_hours" name="adp_hours" value="{ADP_HOURS}" maxlength="4" size="4" /></dd>
      </dl>
      <dl>
         <dt><label for="adp_mins">{L_ADP_MINS}:</label><br /><span>{L_ADP_MINS_EXPLAIN}</span></dt>
         <dd><input type="text" id="adp_mins" name="adp_mins" value="{ADP_MINS}" maxlength="4" size="4" /></dd>
      </dl>
      <dl>
         <dt><label for="adp_secs">{L_ADP_SECS}:</label><br /><span>{L_ADP_SECS_EXPLAIN}</span></dt>
         <dd><input type="text" id="adp_secs" name="adp_secs" value="{ADP_SECS}" maxlength="4" size="4" /></dd>
      </dl>
      </fieldset>
   </div>

Ouvrir includes/acp/acp_board.php
Trouver
Code: Tout sélectionner
// Begin : Anti Double Posts 
            case 'anti_double_posts':
                $display_vars = array(
                    'title'    => 'ACP_ANTI_DOUBLE_POSTS',
                    'vars'    => array(
                        'legend1'                => 'GENERAL_OPTIONS',
                        'adp_enable'            => array('lang' => 'ADP_ENABLE',            'validate' => 'bool',    'type' => 'radio:enabled_disabled', 'explain' => false),
                        'adp_admins'            => array('lang' => 'ADP_ADMINS',            'validate' => 'bool',    'type' => 'radio:yes_no', 'explain' => false),
                        'adp_modos'                => array('lang' => 'ADP_MODOS',                'validate' => 'bool',    'type' => 'radio:yes_no', 'explain' => false),
                        
                        
'legend2'                => 'GENERAL_SETTINGS',
                        'adp_auto_edit'            => array('lang' => 'ADP_AUTO_EDIT',            'validate' => 'bool',    'type' => 'radio:yes_no', 'explain' => true),
                        'adp_text_edit'            => array('lang' => 'ADP_TEXT_EDIT',            'validate' => 'string',    'type' => 'text:25:255', 'explain' => true),
                        
                        
'legend3'                => 'ADP_TIME',
                        'adp_days'                => array('lang' => 'ADP_DAYS',                'validate' => 'int:0',    'type' => 'text:4:5', 'explain' => true),
                        'adp_hours'                => array('lang' => 'ADP_HOURS',                'validate' => 'int:0',    'type' => 'text:4:5', 'explain' => true),
                        'adp_mins'                => array('lang' => 'ADP_MINS',                'validate' => 'int:0',    'type' => 'text:4:5', 'explain' => true),
                        'adp_secs'                => array('lang' => 'ADP_SECS',                'validate' => 'int:0',    'type' => 'text:4:5', 'explain' => true),
                    )
                );
            break;

// End : Anti Double Posts
default: 

Remplacer par
Code: Tout sélectionner
default: 


Ouvrir includes/acp/acp_forums.php
Trouver
Code: Tout sélectionner
        $user->add_lang('acp/forums');  

Ajouter, après
Code: Tout sélectionner
// Begin : Anti Double Posts        
        $user->add_lang('mods/anti_double_post');
// End : Anti Double Posts        &nbsp; &nbsp;        

Trouver
Code: Tout sélectionner
                        'forum_password_unset'    => request_var('forum_password_unset', false), 

Ajouter, après
Code: Tout sélectionner
// Begin : Anti Double Posts
                        'adp_enable'            => request_var('adp_enable', true),
                        'adp_admins'            => request_var('adp_admins', false),
                        'adp_modos'                => request_var('adp_modos', false),
                        'adp_auto_edit'            => request_var('adp_auto_edit', true),
                        'adp_text_edit'            => request_var('adp_text_edit', '-- %D --'),   
                        
'adp_always'            => request_var('adp_always', true),
                        'adp_days'                => request_var('adp_days', 1),
                        'adp_hours'                => request_var('adp_hours', 0),
                        'adp_mins'                => request_var('adp_mins', 0),
                        'adp_secs'                => request_var('adp_secs', 0),
// End : Anti Double Posts     

Trouver
Code: Tout sélectionner
                            'forum_password_confirm'=> '', 

Ajouter, après
Code: Tout sélectionner
// Begin : Anti Double Posts
                            'adp_enable'            => true,
                            'adp_admins'            => false,
                            'adp_modos'                => false,
                            'adp_auto_edit'            => true,
                            'adp_text_edit'            => '',
                            'adp_always'            => true,
                            'adp_days'                => 1,
                            'adp_hours'                => 0,
                            'adp_mins'                => 0,
                            'adp_secs'                => 0,
// End : Anti Double Posts     

Trouver
Code: Tout sélectionner
                    'S_CAN_COPY_PERMISSIONS'    => ($action != 'edit' || empty($forum_id) || ($auth->acl_get('a_fauth') && $auth->acl_get('a_authusers') && $auth->acl_get('a_authgroups') && $auth->acl_get('a_mauth'))) ? true : false, 

Ajouter, après
Code: Tout sélectionner
// Begin : Anti Double Posts                     
                    'S_ADP_ENABLE'                => ($forum_data['adp_enable']) ? true : false,
                    'S_ADP_ADMINS'                => ($forum_data['adp_admins']) ? true : false,
                    'S_ADP_MODOS'                => ($forum_data['adp_modos']) ? true : false,
                    'S_ADP_AUTO_EDIT'            => ($forum_data['adp_auto_edit']) ? true : false,
                    'S_ADP_ALWAYS'                => ($forum_data['adp_always']) ? true : false,
                    'ADP_TEXT_EDIT'                => $forum_data['adp_text_edit'],
                    'ADP_DAYS'                    => $forum_data['adp_days'],
                    'ADP_HOURS'                    => $forum_data['adp_hours'],
                    'ADP_MINS'                    => $forum_data['adp_mins'],
                    'ADP_SECS'                    => $forum_data['adp_secs'],
// End : Anti Double Posts     


Ouvrir includes/acp/info/acp_board.php
Trouver
Code: Tout sélectionner
                'registration'    => array('title' => 'ACP_REGISTER_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),
// Begin : Anti Double Posts 
            
                
'anti_double_posts'    => array('title' => 'ACP_ANTI_DOUBLE_POSTS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),                
// END : Anti Double Posts     

Remplacer par
Code: Tout sélectionner
                'registration'    => array('title' => 'ACP_REGISTER_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')), 


Ouvrir language/en/common.php
Trouver et supprimer
Code: Tout sélectionner
// Begin : Anti Double Posts 
$lang = array_merge($lang, array(
    'ADP_DOUBLE_POST'        => 'You cannot post because you are the latest poster for this topic. Thank you for editing your message instead of posting new post.', 
));
// End : Anti Double Posts     



Ouvrir language/en/acp/board.php
Trouver et supprimer
Code: Tout sélectionner
// Begin : Anti Double Posts
$lang = array_merge($lang, array(
    'ACP_ANTI_DOUBLE_POSTS'    => 'MOD Anti Double Posts settings',
    'ACP_ANTI_DOUBLE_POSTS_EXPLAIN'    => 'Set what to do when an user wants to make double posts.', 

    
'ADP_ENABLE'    => 'MOD activation',
    
    
'ADP_ADMINS'    => 'Administrators can make double post.',
    'ADP_MODOS'    => 'Moderators can make double post.',
    
    
'ADP_AUTO_EDIT'    => 'Add to the latest message',
    'ADP_AUTO_EDIT_EXPLAIN'    => '<strong>Yes</strong> : double posts are added to the topic\'s latest message.<br/><strong>No</strong> : display a mistake message.', 
    
'ADP_TEXT_EDIT'    => 'Separator',
    'ADP_TEXT_EDIT_EXPLAIN'    => 'This text is insered between the latest post and the double post.', 
    
    
'ADP_TIME'    => 'Time settings (those settings are cumulative)', 
    
'ADP_DAYS'    => 'Number of days',
    'ADP_DAYS_EXPLAIN'    => 'Number of days during which double posts are not possible.',
    'ADP_HOURS'    => 'Number of hours',
    'ADP_HOURS_EXPLAIN'    => 'Number of hours during which double posts are not possible.',
    'ADP_MINS'    => 'Number of minutes',
    'ADP_MINS_EXPLAIN'    => 'Number of minutes during which double posts are not possible.',
    'ADP_SECS'    => 'Number of  seconds',
    'ADP_SECS_EXPLAIN'    => 'Number of seconds during which double posts are not possible.',
));
// End : Anti Double Posts    



Ouvrir language/en/acp/common.php
Trouver et supprimer
Code: Tout sélectionner
// Begin : Anti Double Posts 
$lang = array_merge($lang, array(
    'ACP_ANTI_DOUBLE_POSTS'        => 'MOD Anti Double Posts settings',
    'LOG_CONFIG_ANTI_DOUBLE_POSTS'    => '<strong>Set Anti Double Posts MOD</strong>',
));
// End : Anti Double Posts    



Ouvrir language/fr/common.php
Trouver et supprimer
Code: Tout sélectionner
// Begin : Anti Double Posts 
$lang = array_merge($lang, array(
    'ADP_DOUBLE_POST'        => 'Vous ne pouvez pas poster alors que vous êtes le dernier posteur de ce sujet. Merci d\'éditer votre message.',
));
// End : Anti Double Posts    



Ouvrir language/fr/acp/board.php
Trouver et supprimer
Code: Tout sélectionner
// Begin : Anti Double Posts
$lang = array_merge($lang, array(
    'ACP_ANTI_DOUBLE_POSTS'    => 'Paramètres du MOD Anti Double Posts',
    'ACP_ANTI_DOUBLE_POSTS_EXPLAIN'    => 'Configure le comportement du forum lors d\'une tentative de double posts.',

    'ADP_ENABLE'    => 'Activation du MOD',
    
    
'ADP_ADMINS'    => 'Les administrateurs peuvent faire des doubles posts',
    'ADP_MODOS'    => 'Les modérateurs peuvent faire des doubles posts',
    
    
'ADP_AUTO_EDIT'    => 'Fusion avec le dernier message',
    'ADP_AUTO_EDIT_EXPLAIN'    => '<strong>Oui</strong> : le double post est fusionné avec le dernier message du topic.<br/><strong>Non</strong> : un message d\'erreur apparaît.',
    'ADP_TEXT_EDIT'    => 'Texte de séparation',
    'ADP_TEXT_EDIT_EXPLAIN'    => 'Texte délimitant le message original du double post lorsque la fusion est effectuée autmatiquement (oui à l\'option précédente).',
    
    
'ADP_TIME'    => 'Paramètres temporels (les paramètres sont cumulatifs)',
    'ADP_DAYS'    => 'Nombre de jours',
    'ADP_DAYS_EXPLAIN'    => 'Nombre de jours pendant lesquels un double post n\'est pas possible.',
    'ADP_HOURS'    => 'Nombre d\'heures',
    'ADP_HOURS_EXPLAIN'    => 'Nombre d\'heures pendant lesquels un double post n\'est pas possible.',
    'ADP_MINS'    => 'Nombre de minutes',
    'ADP_MINS_EXPLAIN'    => 'Nombre de minutes pendant lesquels un double post n\'est pas possible.',
    'ADP_SECS'    => 'Nombre de secondes',
    'ADP_SECS_EXPLAIN'    => 'Nombre de secondes pendant lesquels un double post n\'est pas possible.',
));
// End : Anti Double Posts    



Ouvrir language/fr/acp/common.php
Trouver et supprimer
Code: Tout sélectionner
// Begin : Anti Double Posts 
$lang = array_merge($lang, array(
    'ACP_ANTI_DOUBLE_POSTS'        => 'Paramètres du MOD Anti Double Posts',
    'LOG_CONFIG_ANTI_DOUBLE_POSTS'    => '<strong>Configuration du MOD Anti Double Posts.</strong>',
));
// End : Anti Double Posts    


Le zip et le topic de présentation ont été mis à jour
Théonaute | Retraité de l'équipe des MODs
Citation :
<?php while(!($succeed = try())) ?>
Désolé, je ne fais plus de support pour phpBB et tous mes MODs ont été arrêtés.
Avatar de l’utilisateur
Théonaute
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5702
Inscription: 22 Jan 2006 à 15:45
Localisation: Montréal

Suivante

Retourner vers Base de données des MODs

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités

Partenaires : phpBBHacks.com • phpBB-Seo.com • EzCom-fr.com • phpBB3 Styles • phpBB podpora • phpBB Portugal    Liens : Net Avenir • PromoBenef • Ticket Gagnant