Darathor
MODs réquis à installer impérativement avant :
- [Sous-MOD] Images utiles (DEV - D)
- [Sous-MOD] Reorder functions (DEV - C)
- [Sous-MOD] Get table fields (DEV - A)
- [MOD] XHTML Validity (DEV - C) (ce dernier n'est pas absolument necessaire, il ne fait qu'améliorer quelque détails d'affichage)
Requêtes SQL :
Dans "include/constants.php" :
Dans "lang_admin.php" :
Dans "admin/admin_users.php" :
Dans "subsilver/admin/user_edit_body.tpl" :
Dans "includes/usercp_register.php" :
Dans "includes/usercp_avatar.php" :
Dans "subsilver/profile_add_body.tpl" :
Dans "include/usercp_viewprofile.php" :
Dans "subsilver/profile_view_body.tpl" :
Dans "viewtopic.php" :
Dans "subsilver/viewtopic.tpl" :
Dans "memberlist.php"
Dans "template/subSilver/memberlist_body.tpl" :
Uploader les fichiers suivants :
- admin/admin_champs_supl.php
- admin/admin_champs_supl_attachement.php
- includes/functions_champs_suppl.php
- subsilver/profile_advanced_bloc.tpl
- subsilver/admin/champ_supl_list_body.tpl
- subsilver/admin/champ_supl_attach_list_body.tpl
- subsilver/admin/champ_supl_valeur_edit_body.tpl
- subsilver/admin/champ_supl_desc_edit_body.tpl
- language/lang_french/lang_champs_suppl.php
- [Sous-MOD] Images utiles (DEV - D)
- [Sous-MOD] Reorder functions (DEV - C)
- [Sous-MOD] Get table fields (DEV - A)
- [MOD] XHTML Validity (DEV - C) (ce dernier n'est pas absolument necessaire, il ne fait qu'améliorer quelque détails d'affichage)
Citation :
Changements par rapport à la version DEV - I :
- Meilleure gestion des bbcodes dans les champs de type texte (qui était assez buguée). Cependant, les champs antérieurs à cette mise à jour auront besoin d'être nettoyés de leurs bbcode_uid.
- Les flèches de montée/descente de champs et choix sont désactivées quand le champ/choix est déjà en haut ou en bas.
- Possibilité d'attacher des champs à des MODs. Ceci les protège contre l'effacement.
- Possibilité de configurer les formats de date.
Fichiers modifiés :
- les fichiers du zip.
- admin/admin_users.php
- includes/usercp_register.php
- lang_admin.php
- templates/subSilver/memberlist_body.tpl
- [Sous-MOD] Images utiles
- Ajout d'une table et modification d'une autre :Code :CREATE TABLE `phpbb_champs_supl_attachments` (
`attachment_id` mediumint(8) unsigned NOT NULL auto_increment,
`champ_id` mediumint(8) unsigned NOT NULL default '0',
`mod_name` varchar(150) NOT NULL default '',
PRIMARY KEY (`attachment_id`)
);
ALTER TABLE `phpbb_champs_supl_desc` ADD `champ_config` VARCHAR( 255 ) NOT NULL AFTER `champ_type`;
Citation :
Changements par rapport à la version DEV - H :
- Gestion propre des types multiples en références.
- Ordonnacement des choix dans les champs multiples.
- Affichage dans la liste des membres.
Fichiers modifiés :
- les fichiers du zip.
- memberlist.php
- templates/subSilver/memberlist_body.tpl
- modification des deux tables. La requête suivante peut être exécutée pour mettre à jour la table :Code :ALTER TABLE `phpbb_champs_supl_valeurs`
ADD `rep_valeur_interne` VARCHAR( 40 ) NOT NULL AFTER `champ_id`;
ADD `rep_position` MEDIUMINT( 8 ) UNSIGNED DEFAULT '1' NOT NULL AFTER `champ_id`;
ALTER TABLE `phpbb_champs_supl_desc` ADD `visible_memberlist` ENUM( 'oui', 'non' ) DEFAULT 'non' NOT NULL AFTER `visible_post`;
Citation :
Changements par rapport à la version DEV - G :
- Ajout du type date J/M/A (éditable) mais le format de la date n'est pas encore modifiable.
- Ajout du type "référence personnalisée".
Fichiers modifiés :
- les fichiers du zip.
- include/constants.php
- modification d'une des deux tables. La requête suivante peut être exécutée pour mettre à jour la table :Code :ALTER TABLE `phpbb_champs_supl_desc`
ADD `champ_texte` TEXT DEFAULT '' NOT NULL AFTER `champ_desc_lang` ,
ADD `champ_texte_lang` ENUM( 'oui', 'non' ) DEFAULT 'non' NOT NULL AFTER `champ_texte`;
Citation :
Changements par rapport à la version DEV - F :
- amélioration de l'affichage.
- ajout de textes explicatifs.
- demande de confirmation pour les suppressions.
Fichiers modifiés :
- les fichiers du zip.
- certains des sous-mods requis.
Citation :
Changements par rapport à la version DEV - E :
- correction d'un bug dans admin_users.php.
- les alias de champs de type références sont maintenant sélectionnables depuis un menu déroulant plutôt que saisis à la main.
Citation :
Changements par rapport à la version DEV - D :
- champs de type date (en référence seulement).
- les champs texte et lien dont le contenu se limite à une chaine vide, ne sont plus affichés.
- on peut maintenant spécifier une variable de langue comme nom ou description de champ ou de choix plutôt qu'une chaine fixe.
Fichiers modifiés :
- include/constants.php.
- les fichiers du zip.
Citation :
Changements par rapport à la version DEV - C :
- Corrections de bugs et ajout de textes explicatifs.
- Ajout de champs références.
(Modifications dans les fichiers inclus et dans certains autres)
Citation :
Changements par rapport à la version DEV - B :
Pas de modification dans les requêtes mais dans quasiment tout le reste.
Citation :
Changements par rapport à la version DEV - A :
- Modifié : 2e requête SQL
- Modifié : lang_french/lang_admin.php
- Modifié : subsilver/profile_add_body.tpl
- Modifié : subsilver/admin/user_edit_body.tpl
- Modifié : includes/functions_champs_suppl.php
- Ajouté : subsilver/profile_advanced_bloc.tpl
Requêtes SQL :
Code :
CREATE TABLE `phpbb_champs_supl_desc` (
`champ_id` mediumint(8) unsigned NOT NULL auto_increment,
`champ_position` mediumint(8) unsigned NOT NULL default '1',
`champ_type` mediumint(8) NOT NULL default '0',
`champ_config` varchar(255) NOT NULL default '',
`champ_reference` enum('oui','non') NOT NULL default 'non',
`champ_alias` varchar(60) default NULL,
`champ_nom` varchar(50) NOT NULL default '',
`champ_nom_lang` enum('oui','non') NOT NULL default 'non',
`champ_desc` text NOT NULL,
`champ_desc_lang` enum('oui','non') NOT NULL default 'non',
`champ_texte` text NOT NULL,
`champ_texte_lang` enum('oui','non') NOT NULL default 'non',
`champ_obligatoire` enum('oui','non') NOT NULL default 'non',
`visible_membre` enum('oui','non') NOT NULL default 'oui',
`visible_public` enum('oui','non') NOT NULL default 'oui',
`visible_post` enum('oui','non') NOT NULL default 'non',
`visible_memberlist` enum('oui','non') NOT NULL default 'non',
PRIMARY KEY (`champ_id`),
KEY `champ_position` (`champ_position`)
);
CREATE TABLE `phpbb_champs_supl_valeurs` (
`rep_id` mediumint(8) unsigned NOT NULL auto_increment,
`champ_id` mediumint(8) unsigned NOT NULL default '0',
`rep_position` mediumint(8) unsigned NOT NULL default '1',
`rep_valeur_interne` varchar(40) NOT NULL default '',
`rep_nom` varchar(255) NOT NULL default '',
`rep_nom_lang` enum('oui','non') NOT NULL default 'non',
`rep_desc` text NOT NULL,
`rep_desc_lang` enum('oui','non') NOT NULL default 'non',
`rep_default` enum('oui','non') default 'non',
PRIMARY KEY (`rep_id`)
);
CREATE TABLE `phpbb_champs_supl_attachments` (
`attachment_id` mediumint(8) unsigned NOT NULL auto_increment,
`champ_id` mediumint(8) unsigned NOT NULL default '0',
`mod_name` varchar(150) NOT NULL default '',
PRIMARY KEY (`attachment_id`)
);
Dans "include/constants.php" :
Code :
#
# Trouver
#
?>
#
# Ajouter avant
#
// DEBUT MOD Extended Profile
define('CHAMPS_SUPL_DESC_TABLE', $table_prefix.'champs_supl_desc');
define('CHAMPS_SUPL_ATTACHMENTS_TABLE', $table_prefix.'champs_supl_attachments');
define('CHAMPS_SUPL_VALEURS_TABLE', $table_prefix.'champs_supl_valeurs');
// Les valeurs des types de champs doivent être consécutives et commencer à 1.
define('CHSU_BOOLEAN', 1);
define('CHSU_MULTIPLE', 2);
define('CHSU_SMALLTEXT', 3);
define('CHSU_TEXT', 4);
define('CHSU_EXTENDED_BOOLEAN', 5);
define('CHSU_LINK', 6);
define('CHSU_DATE1', 7);
define('CHSU_DATE2', 8);
define('CHSU_CUSTOM', 9);
// Ne pas oublier d'incrémenter cette valeur après avoir ajouté un type.
define('CHSU_NB_TYPES', 9);
// FIN MOD Extended Profile
Dans "lang_admin.php" :
Code :
#
# Trouver
#
$lang['Styles'] = 'Administration des Thèmes';
#
# Ajouter après
#
// DEBUT MOD Champs supplémentaires
$lang['ChampsSupl'] = 'Profils avancés';
// FIN MOD Champs supplémentaires
#
# Trouver
#
$lang['Restore_DB'] = 'Restaurer la base de données';
#
# Ajouter après
#
// DEBUT MOD Champs supplémentaires
$lang['ChampsSuplAdmin'] = 'Gérer les champs';
$lang['ChampsSuplAttach'] = 'Attacher des champs';
// FIN MOD Champs supplémentaires
Dans "admin/admin_users.php" :
Code :
#
# Trouver
#
require($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
#
# Ajouter après
#
// DEBUT MOD Extended Profile
include_once($phpbb_root_path . 'includes/functions_champs_suppl.' . $phpEx);
// FIN MOD Extended Profile
#
# Trouver
#
//
// Update entry in DB
//
#
# Ajouter avant
#
// DEBUT MOD Extended Profile
$sql_liste_champs = get_champs_sql_update('all', $error, $error_msg);
// FIN MOD Extended Profile
#
# Trouver
#
$sql = "UPDATE " . USERS_TABLE . "
#
# Ajouter avant
#
// DEBUT MOD Extended Profile
$sql_champs_suppl = $sql_liste_champs[0];
// FIN MOD Extended Profile
// COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
// -- DEBUT Ajouté
// $sql_champs_suppl
// -- FIN Ajouté
#
# Trouver une ligne commençant par
#
SET " . $username_sql . $passwd_sql
#
# Ajouter à la fin de la ligne
#
$sql_champs_suppl
#
# Trouver
#
$s_hidden_fields .= '<input type="hidden" name="user_rank" value="' . $user_rank . '" />';
#
# Ajouter après
#
// DEBUT MOD Extended Profile
$s_hidden_fields .= get_champs_values('all', 'hidden_fields');
// FIN MOD Extended Profile
#
# Trouver
#
'S_PROFILE_ACTION' => append_sid("admin_users.$phpEx"))
);
#
# Ajouter après
#
// DEBUT MOD Extended Profile
champs_supl_edit($this_userdata, 'all');
// FIN MOD Extended Profile
Dans "subsilver/admin/user_edit_body.tpl" :
Code :
#
# Trouver
#
<input class="post" type="text" name="dateformat" value="{DATE_FORMAT}" maxlength="16" />
</td>
</tr>
#
# Ajouter après
#
<!-- DEBUT MOD Extended Profile -->
{ADVANCED_BLOC}
<!-- FIN MOD Extended Profile -->
Dans "includes/usercp_register.php" :
Code :
#
# Trouver
#
//
// Check and initialize some variables if needed
//
#
# Ajouter après
#
// DEBUT MOD Extended Profile
include_once($phpbb_root_path . 'includes/functions_champs_suppl.' . $phpEx);
// FIN MOD Extended Profile
#
# Trouver
#
if ( !$error )
{
if ( $avatar_sql == '' )
#
# Ajouter avant
#
// DEBUT MOD Extended Profile
$sql_liste_champs = get_champs_sql_update('visible_membre', $error, $error_msg);
// FIN MOD Extended Profile
#
# Trouver
#
$sql = "UPDATE " . USERS_TABLE . "
#
# Ajouter avant
#
// DEBUT MOD Extended Profile
$sql_champs_suppl = $sql_liste_champs[0];
// FIN MOD Extended Profile
// COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
// -- DEBUT Ajouté
// $sql_champs_suppl
// -- FIN Ajouté
#
# Trouver une ligne commençant par
#
SET " . $username_sql . $passwd_sql
#
# Ajouter à la fin de la ligne
#
$sql_champs_suppl
#
# Trouver
#
//
// Get current date
//
#
# Ajouter après
#
// DEBUT MOD Extended Profile
$sql_champs_suppl_1 = $sql_liste_champs[1];
$sql_champs_suppl_2 = $sql_liste_champs[2];
// FIN MOD Extended Profile
// COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
// -- DEBUT Ajouté
// $sql_champs_suppl_1
// $sql_champs_suppl_2
// -- FIN Ajouté
#
# Dans une ligne, trouver
#
, user_active, user_actkey
#
# Dans la ligne, ajouter avant
# Attention à bien ajouter comme indiqué (il doit y avoir un espace et pas de virgule avant cette portion).
#
$sql_champs_suppl_1
#
# Dans la ligne qui suit, trouver
#
, ";
#
# Dans cette ligne, ajouter avant
# Attention à bien ajouter comme indiqué (il doit y avoir un espace et pas de virgule avant cette portion).
#
$sql_champs_suppl_2
#
# Trouver
#
$allowviewonline = !$allowviewonline;
#
# Ajouter après
#
// DEBUT MOD Extended Profile
$champs_suppl_tableau = get_champs_values('visible_membre', 'tableau');
// FIN MOD Extended Profile
// COMMENTAIRE MOD Extended Profile : La ligne qui suit a été modifiée.
// -- DEBUT Ajouté
// $champs_suppl_tableau,
// -- FIN Ajouté
#
# Dans une ligne, trouver
#
display_avatar_gallery(
#
# Dans la ligne, ajouter après
#
$champs_suppl_tableau,
#
# Trouver
#
'S_PROFILE_ACTION' => append_sid("profile.$phpEx"))
);
#
# Ajouter après
#
// DEBUT MOD Extended Profile
champs_supl_edit($userdata, 'visible_membre');
// FIN MOD Extended Profile
Dans "includes/usercp_avatar.php" :
Code :
#
# Trouver une ligne commençant par
#
function display_avatar_gallery(
#
# Remplacer ce début de ligne par
#
// COMMENTAIRE MOD Extended Profile : La luigne qui suit a été modifiée.
// -- DEBUT Ajouté
// $champs_suppl_tableau,
// -- FIN Ajouté
function display_avatar_gallery($champs_suppl_tableau,
#
# Trouver
#
for($i = 0; $i < count($params); $i++)
{
$s_hidden_vars .= '<input type="hidden" name="' . $params[$i] . '" value="' . str_replace('"', '"', $$params[$i]) . '" />';
}
#
# Ajouter après
#
// DEBUT MOD Extended Profile
foreach($champs_suppl_tableau as $key => $value)
{
$s_hidden_vars .= '<input type="hidden" name="' . $key . '" value="' . str_replace('"', '"', $value) . '" />';
}
// FIN MOD Extended Profile
Dans "subsilver/profile_add_body.tpl" :
Code :
#
# Trouver
#
<!-- BEGIN switch_avatar_block -->
#
# Ajouter avant
#
<!-- DEBUT MOD Extended Profile -->
{ADVANCED_BLOC}
<!-- FIN MOD Extended Profile -->
Dans "include/usercp_viewprofile.php" :
Code :
#
# Trouver
#
'S_PROFILE_ACTION' => append_sid("profile.$phpEx"))
);
#
# Ajouter après
#
// DEBUT MOD Extended Profile
include_once($phpbb_root_path . 'includes/functions_champs_suppl.' . $phpEx);
champs_supl_affiche($profiledata, 'visible_public', 'advanced_affiche_table_bloc');
// FIN MOD Extended Profile
Dans "subsilver/profile_view_body.tpl" :
Code :
#
# Trouver
#
<tr>
<td valign="top" align="right" nowrap="nowrap"><span class="gen">{L_INTERESTS}:</span></td>
<td><b><span class="gen">{INTERESTS}</span></b></td>
</tr>
#
# Ajouter après
#
<!-- DEBUT MOD Extended Profile -->
{ADVANCED_BLOC}
<!-- FIN MOD Extended Profile -->
Dans "viewtopic.php" :
Code :
#
# Trouver
#
//
// Go ahead and pull all data for this topic
//
#
# Ajouter après
#
// DEBUT MOD Extended Profile
include_once($phpbb_root_path . 'includes/functions_champs_suppl.' . $phpEx);
$sql_champs_spl = get_champs_sql_select('visible_post', 'u');
// FIN MOD Extended Profile
// COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
// -- DEBUT Ajouté
// $sql_champs_spl
// -- FIN Ajouté
#
# Dans une ligne, trouver
#
pt.bbcode_uid
#
# Dans la ligne, ajouter après
#
$sql_champs_spl
#
# Trouver
#
'POSTER_FROM' => $poster_from,
#
# Ajouter après
#
// DEBUT MOD Extended Profile
'ADVANCED_BLOC' => champs_supl_affiche($postrow[$i], 'visible_post'),
// FIN MOD Extended Profile
Dans "subsilver/viewtopic.tpl" :
Code :
#
# Dans une ligne, trouver
#
{postrow.POSTER_FROM}
#
# Dans la ligne, ajouter après
#
<br />{postrow.ADVANCED_BLOC}
Dans "memberlist.php"
Code :
#
# Trouver
#
'S_MODE_ACTION' => append_sid("memberlist.$phpEx"))
);
#
# Ajouter après
#
// DEBUT MOD Extended Profile
include_once($phpbb_root_path . 'includes/functions_champs_suppl.' . $phpEx);
$nb_champs_suppl = champs_supl_memberlist_header('visible_memberlist');
$template->assign_vars(array(
'COLSPAN_VALUE' => 9 + $nb_champs_suppl)
);
// FIN MOD Extended Profile
#
# Trouver une ligne commençant par
#
$sql = "SELECT username, user_id, user_viewemail, user_posts,
#
# Remplacer TOUT la ligne par
#
// COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
// -- DEBUT Enlevé
// username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar
// -- FIN Enlevé
// -- DEBUT Remplacé par
// *
// -- FIN Remplacé par
$sql = "SELECT *
#
# Trouver
#
'U_VIEWPROFILE' => append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id"))
);
#
# Ajouter après
#
// DEBUT MOD Extended Profile
champs_supl_memberlist_affiche($row, 'visible_memberlist', 'memberrow.');
// FIN MOD Extended Profile
Dans "template/subSilver/memberlist_body.tpl" :
Code :
#
# Trouver
#
<th class="thCornerR" nowrap="nowrap">{L_WEBSITE}</th>
#
# Ajouter avant
#
<!-- BEGIN champ_head_row -->
<th class="thTop" nowrap="nowrap">{champ_head_row.L_CHAMP}</th>
<!-- END champ_head_row -->
#
# Trouver
#
<td class="{memberrow.ROW_CLASS}" align="center"> {memberrow.WWW_IMG} </td>
#
# Ajouter avant
#
<!-- BEGIN champ_row -->
<td class="{memberrow.ROW_CLASS}" align="center"><span class="gensmall">{memberrow.champ_row.CHAMP}</span></td>
<!-- END champ_row -->
#
# Trouver
# Note : suivant les mods installé, la valeur du colspan peut avoir changé.
#
<td class="catBottom" colspan="8" height="28"> </td>
#
# Remplacer par
#
<td class="catBottom" colspan="{COLSPAN_VALUE}" height="28"> </td>
Uploader les fichiers suivants :
- admin/admin_champs_supl.php
- admin/admin_champs_supl_attachement.php
- includes/functions_champs_suppl.php
- subsilver/profile_advanced_bloc.tpl
- subsilver/admin/champ_supl_list_body.tpl
- subsilver/admin/champ_supl_attach_list_body.tpl
- subsilver/admin/champ_supl_valeur_edit_body.tpl
- subsilver/admin/champ_supl_desc_edit_body.tpl
- language/lang_french/lang_champs_suppl.php