Affichage :
Le laboratoire de Darathor Index du Forum

Le laboratoire de Darathor

Ressources diverses, principalement sur les fourms phpBB
[MOD] Extended profile (DEV - M)

Poster un nouveau sujet Répondre au sujet

Rechercher dans ce sujet :
Messages
Darathor Sexe : Masculin
Site Admin
Membre

Inscrit le : 02 Nov 2003
Messages : 1101
Localisation : Strasbourg
MessagePosté le : 21 Oct 2006 13:45
Masquer ce messageAfficher ce message
Répondre en citantAjouter à liste des messages à citerRetirer de la liste des messages à citer
Citation :
But : Ce MOD permet d'ajouter des champs dans le profil depuis le panneau d'administration.

Prérequis :
- [Sous-MOD] Additionnal files (1.0)
- [Sous-MOD] Get table fields (1.0)
- [Sous-MOD] Fields types (1.0)

Auteur : Darathor (darathor@free.fr)
Version : DEV - M (07/10/2006)
Compatibilité phpBB : 2.0.21


Requêtes SQL :
Code :
CREATE TABLE `phpbb_extended_profile_contexts` (
  `context_id` mediumint(8) NOT NULL auto_increment,
  `context_name` varchar(50) NOT NULL default '',
  `context_name_key` tinyint(1) NOT NULL default '0',
  `context_internal_name` varchar(25) NOT NULL default '',
  `context_alias` varchar(25) NOT NULL default '',
  `context_test_visibility` tinyint(1) NOT NULL default '1',
  `context_display_empty` tinyint(1) NOT NULL default '0',
  `context_generate_values` tinyint(1) NOT NULL default '1',
  `context_template_block` varchar(50) NOT NULL default '',
  PRIMARY KEY  (`context_id`),
  UNIQUE KEY `context_name` (`context_name`)
);

INSERT INTO `phpbb_extended_profile_contexts` (`context_id`, `context_name`, `context_name_key`, `context_internal_name`, `context_alias`, `context_test_visibility`, `context_display_empty`, `context_generate_values`, `context_template_block`) VALUES (1, 'ChSu_contexts_posts', 1, 'posts', '', 1, 0, 1, 'display_posts_block');
INSERT INTO `phpbb_extended_profile_contexts` (`context_id`, `context_name`, `context_name_key`, `context_internal_name`, `context_alias`, `context_test_visibility`, `context_display_empty`, `context_generate_values`, `context_template_block`) VALUES (2, 'ChSu_contexts_memberlist', 1, 'memberlist', '', 1, 1, 1, 'display_memberlist_block');
INSERT INTO `phpbb_extended_profile_contexts` (`context_id`, `context_name`, `context_name_key`, `context_internal_name`, `context_alias`, `context_test_visibility`, `context_display_empty`, `context_generate_values`, `context_template_block`) VALUES (3, 'ChSu_contexts_profile_view', 1, 'profile_view', '', 1, 0, 1, 'display_profile_view_block');
INSERT INTO `phpbb_extended_profile_contexts` (`context_id`, `context_name`, `context_name_key`, `context_internal_name`, `context_alias`, `context_test_visibility`, `context_display_empty`, `context_generate_values`, `context_template_block`) VALUES (4, 'ChSu_contexts_profile_edit', 1, 'profile_edit', '', 0, 1, 1, 'edit_block');
INSERT INTO `phpbb_extended_profile_contexts` (`context_id`, `context_name`, `context_name_key`, `context_internal_name`, `context_alias`, `context_test_visibility`, `context_display_empty`, `context_generate_values`, `context_template_block`) VALUES (5, 'ChSu_contexts_admin_edit', 1, 'admin_edit', '', 0, 1, 1, 'edit_block');
INSERT INTO `phpbb_extended_profile_contexts` (`context_id`, `context_name`, `context_name_key`, `context_internal_name`, `context_alias`, `context_test_visibility`, `context_display_empty`, `context_generate_values`, `context_template_block`) VALUES (6, 'ChSu_contexts_memberlist_header', 1, 'memberlist_header', 'memberlist', 1, 1, 0, 'display_memberlist_header_block');

CREATE TABLE `phpbb_extended_profile_fields` (
  `field_id` mediumint(8) unsigned NOT NULL auto_increment,
  `unique_id` varchar(250) NOT NULL default '',
  `field_position` mediumint(8) unsigned NOT NULL default '1',
  `field_type` varchar(30) NOT NULL default '0',
  `field_configuration` varchar(255) NOT NULL default '',
  `field_reference` tinyint(1) NOT NULL default '0',
  `field_alias` varchar(60) default NULL,
  `field_name` varchar(50) NOT NULL default '',
  `field_name_key` tinyint(1) NOT NULL default '0',
  `field_description` text NOT NULL,
  `field_description_key` tinyint(1) NOT NULL default '0',
  `field_text` text NOT NULL,
  `field_text_key` tinyint(1) NOT NULL default '0',
  `field_needed` tinyint(1) NOT NULL default '0',
  `field_visibility` varchar(50) NOT NULL default '',
  `field_contexts` varchar(250) NOT NULL default '',
  `field_mod` int(11) NOT NULL default '0',
  PRIMARY KEY  (`field_id`),
  KEY `champ_position` (`field_position`)
);

CREATE TABLE `phpbb_extended_profile_choices` (
  `choice_id` mediumint(8) unsigned NOT NULL auto_increment,
  `unique_id` varchar(250) NOT NULL default '',
  `field_id` mediumint(8) unsigned NOT NULL default '0',
  `choice_position` mediumint(8) unsigned NOT NULL default '1',
  `choice_internal_value` varchar(40) NOT NULL default '',
  `choice_name` varchar(255) NOT NULL default '',
  `choice_name_key` tinyint(1) NOT NULL default '0',
  `choice_description` text NOT NULL,
  `choice_description_key` tinyint(1) NOT NULL default '0',
  `choice_default` tinyint(1) default '0',
  `choice_mod` int(11) NOT NULL default '0',
  PRIMARY KEY  (`choice_id`)
);


Dans "admin/admin_users.php" :
Code :
#
# Trouver
#
require($phpbb_root_path . 'includes/functions_validate.'.$phpEx);

#
# Ajouter après
#
// DEBUT MOD Extended Profile
$added_fields = new AddedFields($db, $lang);
// FIN MOD Extended Profile

#
# Trouver
#
      //
      // Update entry in DB
      //

#
# Ajouter avant
#
      // DEBUT MOD Extended Profile
      $extended_profile_sql = $added_fields->get_fields_update_sql($userdata, $userdata, 'admin_edit', $error, $error_msg);
      // FIN MOD Extended Profile

#
# Trouver
#
         $sql = "UPDATE " . USERS_TABLE . "

#
# Ajouter avant
#
         // COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
         // -- DEBUT Ajouté
         //  " . $extended_profile_sql[0] . "
         // -- FIN Ajouté

#
# Trouver une ligne commençant par
#
            SET " . $username_sql . $passwd_sql

#
# Ajouter à la fin de la ligne
#
 " . $extended_profile_sql[0] . "

#
# Trouver
#
         $s_hidden_fields .= '<input type="hidden" name="user_rank" value="' . $user_rank . '" />';

#
# Ajouter après
#
         // DEBUT MOD Extended Profile
         $s_hidden_fields .= $added_fields->get_fields_values($this_userdata, $userdata, 'admin_edit', 'hidden_fields');
         // FIN MOD Extended Profile

#
# Trouver
#
         'S_PROFILE_ACTION' => append_sid("admin_users.$phpEx"))
      );

#
# Ajouter après
#
      // DEBUT MOD Extended Profile
      $added_fields->get_edit_fields($this_userdata, $userdata, 'admin_edit');
      // 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
#
   {ADVANCED_BLOCK}


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/bbcode.'.$phpEx);
include_once($phpbb_root_path . 'includes/functions_post.'.$phpEx);
$added_fields = new AddedFields($db, $lang);
// FIN MOD Extended Profile

#
# Trouver
#
   include($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
   include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
   include($phpbb_root_path . 'includes/functions_post.'.$phpEx);

#
# Remplacer par
#
   // DEBUT MOD Extended Profile
   // -- DEBUT Enlevé
   // include($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
   // include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
   //  include($phpbb_root_path . 'includes/functions_post.'.$phpEx);
   // -- FIN Enlevé
   include_once($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
   // FIN MOD Extended Profile

#
# Trouver
#
   if ( !$error )
   {
      if ( $avatar_sql == '' )

#
# Ajouter avant
#
   // DEBUT MOD Extended Profile
   $extended_profile_sql = $added_fields->get_fields_update_sql($userdata, $userdata, 'profile_edit', $error, $error_msg);
   // FIN MOD Extended Profile

#
# Trouver
#
         $sql = "UPDATE " . USERS_TABLE . "

#
# Ajouter avant
#
         // COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
         // -- DEBUT Ajouté
         //  " . $extended_profile_sql[0] . "
         // -- FIN Ajouté

#
# Trouver une ligne commençant par
#
            SET " . $username_sql . $passwd_sql

#
# Ajouter à la fin de la ligne
# Attention à bien ajouter comme indiqué (il doit y avoir un espace et pas de virgule avant cette portion).
#
 " . $extended_profile_sql[0] . "

#
# Trouver
#
         //
         // Get current date
         //

#
# Ajouter après
#
         // COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
         // -- DEBUT Ajouté
         //  " . $extended_profile_sql[1] . "
         //  " . $extended_profile_sql[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).
#
 " . $extended_profile_sql[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).
#
 " . $extended_profile_sql[2] . "

#
# Trouver une ligne commençant par
#
   display_avatar_gallery(

#
# Remplacer ce début de ligne par
#
   // DEBUT MOD Extended Profile
   $extended_profile_values = $added_fields->get_fields_values($userdata, $userdata, 'profile_edit', 'tableau');
   // FIN MOD Extended Profile
   // COMMENTAIRE MOD Extended Profile : La ligne qui suit a été modifiée.
   // -- DEBUT Ajouté
   // $extended_profile_values,
   // -- FIN Ajouté
   display_avatar_gallery($extended_profile_values,

#
# Trouver
#
      'S_PROFILE_ACTION' => append_sid("profile.$phpEx"))
   );

#
# Ajouter après
#
   // DEBUT MOD Extended Profile
   $added_fields->get_edit_fields($userdata, $userdata, 'profile_edit');
   // 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 ligne qui suit a été modifiée.
// -- DEBUT Ajouté
// $extended_profile_values,
// -- FIN Ajouté
function display_avatar_gallery($extended_profile_values,

#
# Trouver
#
   for($i = 0; $i < count($params); $i++)
   {
      $s_hidden_vars .= '<input type="hidden" name="' . $params[$i] . '" value="' . str_replace('"', '&quot;', $$params[$i]) . '" />';
   }
   
#
# Ajouter après
#
   // DEBUT MOD Extended Profile
   foreach($extended_profile_values as $key => $value)
   {
      $s_hidden_vars .= '<input type="hidden" name="' . $key . '" value="' . str_replace('"', '&quot;', $value) . '" />';
   }
   // FIN MOD Extended Profile


Dans "subsilver/profile_add_body.tpl" :
Code :
#
# Trouver
#
   <!-- BEGIN switch_avatar_block -->

#
# Ajouter avant
#
   {ADVANCED_BLOCK}


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/bbcode.' . $phpEx);
include_once($phpbb_root_path . 'includes/functions_post.' . $phpEx);
$added_fields = new AddedFields($db, $lang);
$added_fields->get_field_display($profiledata, $userdata, 'profile_view');
// 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
#

      {ADVANCED_BLOCK}


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_post.' . $phpEx);
$added_fields = new AddedFields($db, $lang);
$sql_select_field_list = $added_fields->get_sql_select_field_list($userdata, 'posts', 'u');
// FIN MOD Extended Profile
// COMMENTAIRE MOD Extended Profile : La requête qui suit a été modifiée.
// -- DEBUT Ajouté
//  " . $sql_select_field_list . "
// -- FIN Ajouté

#
# Dans une ligne, trouver
#
pt.bbcode_uid

#
# Dans la ligne, ajouter après
#
 " . $sql_select_field_list . "

#
# Trouver
#
}

$template->pparse('body');

#
# Ajouter avant
#
   // DEBUT MOD Extended Profile
   $added_fields->get_field_display($postrow[$i], $userdata, 'posts', 'ADVANCED_BLOCK', 'postrow.advanced_block');
   // FIN MOD Extended Profile


Dans "subsilver/viewtopic.tpl" :
Code :
#
# Dans une ligne, trouver
#
{postrow.POSTER_FROM}

#
# Dans la ligne, ajouter après
#
         <!-- BEGIN advanced_block -->
         <br />{postrow.advanced_block.ADVANCED_BLOCK}
         <!-- END advanced_block -->


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/bbcode.' . $phpEx);
include_once($phpbb_root_path . 'includes/functions_post.' . $phpEx);
$added_fields = new AddedFields($db, $lang);
$added_fields->get_field_display('', $userdata, 'memberlist_header');
// FIN MOD Extended Profile

#
# Trouver une ligne commençant par
#
$sql = "SELECT username, user_id, user_viewemail, user_posts,

#
# Remplacer TOUTE 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&amp;" . POST_USERS_URL . "=$user_id"))
      );

#
# Ajouter après
#
      // DEBUT MOD Extended Profile
      $added_fields->get_field_display($row, $userdata, 'memberlist', 'ADVANCED_BLOCK', $row = 'memberrow.advanced_block');
      // FIN MOD Extended Profile


Dans "template/subSilver/memberlist_body.tpl" :
Code :
#
# Trouver
#
     <th class="thCornerR" nowrap="nowrap">{L_WEBSITE}</th>

#
# Ajouter avant
#
   {ADVANCED_BLOCK}

#
# Trouver
#
     <td class="{memberrow.ROW_CLASS}" align="center">&nbsp;{memberrow.WWW_IMG}&nbsp;</td>

#
# Ajouter avant
#
   <!-- BEGIN advanced_block -->
   {memberrow.advanced_block.ADVANCED_BLOCK}
   <!-- END advanced_block -->

#
# Trouver
# Note : suivant les mods installé, la valeur du colspan peut avoir changé.
#
     <td class="catBottom" colspan="8" height="28">&nbsp;</td>

#
# Remplacer par
#
   <td class="catBottom" colspan="{CHSU_COLSPAN_VALUE}"></td>


Uploader les fichiers suivants :
- admin/admin_extended_profile_choices.php
- admin/admin_extended_profile_fields.php
- includes/classes/class_added_fieds.php
- includes/constants/constants_extended_profile.php
- includes/functions_all/functions_all_extended_profile.php
- language/lang_french/lang_all/lang_all_extended_profile.php
- subsilver/extended_profile_blocks.tpl
- subsilver/admin/extended_profile_choices_edit_body.tpl
- subsilver/admin/extended_profile_choices_list_body.tpl
- subsilver/admin/extended_profile_field_edit_body.tpl
- subsilver/admin/extended_profile_field_list_body.tpl
Revenir en haut Aller en bas
Hors ligne | Profil | MP | E-mail | Site web
Dernière édition par Darathor le 03 Mai 2007 21:53; édité 1 fois
  Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum