Hjälp med installation av: Map Mod 2.0.1

Frågor kring MODdar (modifikationer) för phpBB 2.0.x.

Moderatorer: Moderatorgrupp, Supportgrupp

Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Hjälp med installation av: Map Mod 2.0.1

Inlägg av WickeD »

Hej!

Jag skulle göra denna bit i installationen:

Kod: Markera allt

#-----[ SQL ]------------------------------------------
#

RUN ONCE "db_install.php" (IN YOUR PHPBB MAIN DIRECTORY)
DELETE THE FILE AFTER THAT !
Och då står det på skärmen:

Kod: Markera allt

phpBB : 

Could not connect to the database 
Vad kan det vara för fel då?
Senast redigerad av WickeD den 2006-02-06 12:24, redigerad totalt 2 gånger.
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Inlägg av WickeD »

Sedan körde jag fast på denna rad:

Install säger:

Kod: Markera allt

#-----[ OPEN ]------------------------------------------
#

templates/subSilver/memberlist_body.tpl

#
#-----[ FIND ]------------------------------------------
#

<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen">{memberrow.FROM}</span></td>

#
#-----[ REPLACE WITH ]------------------------------------------
#

<!-- BEGIN switch_user_map -->
<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen"><a href="{memberrow.U_USER_MAP}" class="gen">{memberrow.FROM}</a></span></td>
<!-- END switch_user_map -->
<!-- BEGIN switch_user_no_map -->
<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen">{memberrow.FROM}</span></td>
<!-- END switch_user_no_map -->

I min fil står det:

Kod: Markera allt

<td class="{memberrow.ROW_CLASS}" align="center"><table class="gen"><tr><td align=center width="100%">{memberrow.FROM}</td><td align=right>{memberrow.FLAG}</td></tr></table></td>
Hur gör jag med detta?


(Jag ändrar bara dessa filer i min dator och efter att jag har ändrat databasen så lägger jag in dom)
Senast redigerad av WickeD den 2006-02-06 12:24, redigerad totalt 1 gång.
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Inlägg av WickeD »

Sedan så körde jag fast här också:

Install säger:

Kod: Markera allt

#-----[ OPEN ]------------------------------------------
#

includes/usercp_register.php

#
#-----[ FIND ]------------------------------------------
#

$strip_var_list = array('username' => 'username',

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Begin Map Mod
$strip_vars_mapmod = array('longitude' => 'longitude', 'latitude' => 'latitude');
$strip_var_list = array_merge ($strip_var_list, $strip_vars_mapmod);
// End Map Mod

#
#-----[ FIND ]------------------------------------------
#

$user_avatar_type = ( empty($user_avatar_loc) && $mode == 'editprofile' ) ? $userdata['user_avatar_type'] : '';

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Begin Map Mod
$longitude = ( !empty($HTTP_POST_VARS['longitude']) ) ? str_replace(',','.',trim(strip_tags( $HTTP_POST_VARS['longitude'] ) ) ) : '';
$latitude = ( !empty($HTTP_POST_VARS['latitude']) ) ? str_replace(',','.',trim(strip_tags( $HTTP_POST_VARS['latitude'] ) ) ) : '';
// End Map Mod

EDIT:
Vad pinsamt :oops:
Här är den!


Så här ser min fil ut:
Se längst ned!
Senast redigerad av WickeD den 2006-02-06 13:03, redigerad totalt 5 gånger.
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6571
Blev medlem: 2004-06-09 09:32
Svar: 1

Inlägg av Holger »

Du lade in modd-beskrivningen
Lägg upp includes/usercp_register.php
Holger Gremminger
Ingen support via PM!
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6571
Blev medlem: 2004-06-09 09:32
Svar: 1

Re: Hjälp med installation av: Map Mod 2.0.1

Inlägg av Holger »

WickeD skrev:Hej!

Jag skulle göra denna bit i installationen:

Kod: Markera allt

#-----[ SQL ]------------------------------------------
#

RUN ONCE "db_install.php" (IN YOUR PHPBB MAIN DIRECTORY)
DELETE THE FILE AFTER THAT !
Och då står det på skärmen:

Kod: Markera allt



phpBB : 

Could not connect to the database 
Vad kan det vara för fel då?
Kör detta i phpmyadmin

Kod: Markera allt

CREATE TABLE phpbb_map_mod_map (
	id smallint NOT NULL auto_increment,
	name varchar(50) NOT NULL default '',
	filename varchar(100) NOT NULL default '',
	north float NOT NULL default '0',
	east float NOT NULL default '0',
	south float NOT NULL default '0',
	west float NOT NULL default '0',
	PRIMARY KEY (id)
);
CREATE TABLE phpbb_map_mod_user (
	user_id mediumint(8) NOT NULL default '0',
	longitude float NOT NULL default '0',
	latitude float NOT NULL default '0',
	PRIMARY KEY (user_id)
);
CREATE TABLE phpbb_map_mod_country (
	id smallint NOT NULL auto_increment,
	name varchar(100) NOT NULL default '',
	PRIMARY KEY (id)
);
CREATE TABLE phpbb_map_mod_config (
	config_name varchar(255) NOT NULL default '',
	config_value varchar(255) NOT NULL default '',
	PRIMARY KEY (config_name)
);
CREATE TABLE phpbb_map_mod_place (
	country smallint NOT NULL,
	place varchar(50) NOT NULL default '',
	latitude float NOT NULL default '0',
	longitude float NOT NULL default '0',
	zipcode int NOT NULL default '0',
	KEY idx_country_place (country, place)
);
CREATE TABLE phpbb_map_mod_text (
	id int(11) NOT NULL auto_increment,
	text varchar(50) NOT NULL default '',
	longitude float NOT NULL default '0',
	latitude float NOT NULL default '0',
	map_id int(11) NOT NULL default '0',
	url varchar(200) NOT NULL default '',
	target varchar(20) NOT NULL default '',
	icon varchar(50) NOT NULL default '',
	PRIMARY KEY  (id)
);

INSERT INTO phpbb_map_mod_config VALUES ('default_map', '1');
INSERT INTO phpbb_map_mod_config VALUES ('flag', 'images/map/flags/map_flag.png');
INSERT INTO phpbb_map_mod_config VALUES ('flag_self', 'images/map/flags/map_flag_self.png');
INSERT INTO phpbb_map_mod_config VALUES ('flag_highlight', 'images/map/flags/map_flag_highlight.png');
INSERT INTO phpbb_map_mod_config VALUES ('flag_multiple', 'images/map/flags/map_flag.png');
INSERT INTO phpbb_map_mod_config VALUES ('users_near', '10');
INSERT INTO phpbb_map_mod_config VALUES ('flag_offset_x', '0');
INSERT INTO phpbb_map_mod_config VALUES ('flag_offset_y', '0');
INSERT INTO phpbb_map_mod_config VALUES ('max_picture_width', '600');
INSERT INTO phpbb_map_mod_config VALUES ('max_picture_height', '600');
INSERT INTO phpbb_map_mod_config VALUES ('move_percent', '40');
INSERT INTO phpbb_map_mod_config VALUES ('cluster_distance', '5');
INSERT INTO phpbb_map_mod_config VALUES ('users_near_more', '50');
INSERT INTO phpbb_map_mod_config VALUES ('auth_view', '0');
INSERT INTO phpbb_map_mod_config VALUES ('use_overlib', '1');
INSERT INTO phpbb_map_mod_config VALUES ('overlib_path', '.');

INSERT INTO phpbb_map_mod_map VALUES ('0', 'Germany', 'images/map/map_germany.png', '55.1', '15.0', '47.29', '5.85');
Holger Gremminger
Ingen support via PM!
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6571
Blev medlem: 2004-06-09 09:32
Svar: 1

Inlägg av Holger »

WickeD skrev:Sedan körde jag fast på denna rad:

Install säger:

Kod: Markera allt

#-----[ OPEN ]------------------------------------------
#

templates/subSilver/memberlist_body.tpl

#
#-----[ FIND ]------------------------------------------
#

<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen">{memberrow.FROM}</span></td>

#
#-----[ REPLACE WITH ]------------------------------------------
#

<!-- BEGIN switch_user_map -->
<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen"><a href="{memberrow.U_USER_MAP}" class="gen">{memberrow.FROM}</a></span></td>
<!-- END switch_user_map -->
<!-- BEGIN switch_user_no_map -->
<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen">{memberrow.FROM}</span></td>
<!-- END switch_user_no_map -->

I min fil står det:

Kod: Markera allt

<td class="{memberrow.ROW_CLASS}" align="center"><table class="gen"><tr><td align=center width="100%">{memberrow.FROM}</td><td align=right>{memberrow.FLAG}</td></tr></table></td>
Hur gör jag med detta?
Lösning:

Kod: Markera allt

<!-- BEGIN switch_user_map -->
<td class="{memberrow.ROW_CLASS}" align="center"><table class="gen"><tr><td align=center width="100%"><a href="{memberrow.U_USER_MAP}" class="gen">{memberrow.FROM}</a></td><td align=right>{memberrow.FLAG}</td></tr></table></td>
<!-- END switch_user_map -->
<!-- BEGIN switch_user_no_map -->
<td class="{memberrow.ROW_CLASS}" align="center"><table class="gen"><tr><td align=center width="100%">{memberrow.FROM}</td><td align=right>{memberrow.FLAG}</td></tr></table></td>
<!-- END switch_user_no_map -->
Holger Gremminger
Ingen support via PM!
Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Inlägg av WickeD »

Här är min fil:

Del 1 av 2:

Kod: Markera allt

<?php
/***************************************************************************
 *                            usercp_register.php
 *                            -------------------
 *   begin                : Saturday, Feb 13, 2001
 *   copyright            : (C) 2001 The phpBB Group
 *   email                : support@phpbb.com
 *
 *   $Id: usercp_register.php,v 1.20.2.57 2004/03/25 15:57:20 acydburn Exp $
 *
 *
 ***************************************************************************/

/***************************************************************************
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *
 ***************************************************************************/

if ( !defined('IN_PHPBB') )
{
	die("Hacking attempt");
	exit;
}
function gen_reg_key()
{
	$key = "";
	$max_length_reg_key = 5;
	$chars = array(
		"a","b","c","d","e","f","g","h","i","j","k","l","m",
		"n","o","p","q","r","s","t","u","v","w","x","y","z");

	$count = count($chars) - 1;

	srand((double)microtime()*1000000);

	for($i = 0; $i < $max_length_reg_key; $i++)
	{
		$key .= $chars[rand(0, $count)];
	}

	return($key);
}
$unhtml_specialchars_match = array('#>#', '#<#', '#"#', '#&#');
$unhtml_specialchars_replace = array('>', '<', '"', '&');

// ---------------------------------------
// Load agreement template since user has not yet
// agreed to registration conditions/coppa
//
//
// CBACK CrackerTracker Register Flood Protection
//
  if($ctracker_config['regblock'] == 1 && $HTTP_GET_VARS['mode'] == 'register')
  {
    if($ctracker_config['lastreg'] >= time())
    {
      $lregtimestamp = $ctracker_config['lastreg'];
      $waittime = 0;
      $waittime = $lregtimestamp - time();
      $waitmsg  = '';
      $waitmsg  = sprintf($lang['ct_forum_rfl'], $waittime);
      message_die(GENERAL_MESSAGE, $waitmsg);
    }

    if(!empty($HTTP_SERVER_VARS['REMOTE_ADDR']) && $ctracker_config['lastreg_ip'] == $HTTP_SERVER_VARS['REMOTE_ADDR'])
    {
      // If the same IP wants to register we block this for 400 Seconds
      if($ctracker_config['lastreg'] + 400 >= time())
      {
        message_die(GENERAL_MESSAGE, $lang['ct_forum_ifl']);
      }
    }
  }
function show_coppa()
{
	global $userdata, $template, $lang, $phpbb_root_path, $phpEx;

	$template->set_filenames(array(
		'body' => 'agreement.tpl')
	);

	$template->assign_vars(array(
		'REGISTRATION' => $lang['Registration'],
		'AGREEMENT' => $lang['Reg_agreement'],
		"AGREE_OVER_13" => $lang['Agree_over_13'],
		"AGREE_UNDER_13" => $lang['Agree_under_13'],
		'DO_NOT_AGREE' => $lang['Agree_not'],

		"U_AGREE_OVER13" => append_sid("profile.$phpEx?mode=register&agreed=true"),
		"U_AGREE_UNDER13" => append_sid("profile.$phpEx?mode=register&agreed=true&coppa=true"))
	);

	$template->pparse('body');

}
//
// ---------------------------------------

$error = FALSE;
$error_msg = '';
$page_title = ( $mode == 'editprofile' ) ? $lang['Edit_profile'] : $lang['Register'];

if ( $mode == 'register' && !isset($HTTP_POST_VARS['agreed']) && !isset($HTTP_GET_VARS['agreed']) )
{
	include($phpbb_root_path . 'includes/page_header.'.$phpEx);

	show_coppa();

	include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}

$coppa = ( empty($HTTP_POST_VARS['coppa']) && empty($HTTP_GET_VARS['coppa']) ) ? 0 : TRUE;

//
// Check and initialize some variables if needed
//

if (
	isset($HTTP_POST_VARS['submit']) ||
	isset($HTTP_POST_VARS['avatargallery']) ||
	isset($HTTP_POST_VARS['submitavatar']) ||
	isset($HTTP_POST_VARS['cancelavatar']) ||
	$mode == 'register' )
{
	include($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
	include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
	include($phpbb_root_path . 'includes/functions_post.'.$phpEx);

	if ( $mode == 'editprofile' )
	{
		$user_id = intval($HTTP_POST_VARS['user_id']);
		$current_email = trim(htmlspecialchars($HTTP_POST_VARS['current_email']));
	}

	$strip_var_list = array('email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests', 'car_mark' => 'car_mark', 'car_mark_choice' => 'car_mark_choice', 'car_model' => 'car_model', 'car_model_choice' => 'car_model_choice', 'car_year' => 'car_year', 'car_year_choice' => 'car_year_choice', 'car_engine' => 'car_engine', 'car_engine_choice' => 'car_engine_choice', 'car_wheel' => 'car_wheel', 'car_trans' => 'car_trans', 'car_color' => 'car_color', 'car_rt' => 'car_rt', 'car_sixty' => 'car_sixty', 'car_three' => 'car_three', 'car_eigth' => 'car_eigth', 'car_eigthm' => 'car_eigthm', 'car_thou' => 'car_thou', 'car_quart' => 'car_quart', 'car_quartm' => 'car_quartm', 'mod_engine' => 'mod_engine', 'mod_exterior' => 'mod_exterior', 'mod_interior' => 'mod_interior', 'mod_rims' => 'mod_rims', 'mod_audio' => 'mod_audio', 'mod_future' => 'mod_future', 'confirm_code' => 'confirm_code', 'name_first' => 'name_first', 'name_last' => 'name_last', 'info' => 'info');

	// Strip all tags from data ... may p**s some people off, bah, strip_tags is
	// doing the job but can still break HTML output ... have no choice, have
	// to use htmlspecialchars ... be prepared to be moaned at.
	while( list($var, $param) = @each($strip_var_list) )
	{
		if ( !empty($HTTP_POST_VARS[$param]) )
		{
			$$var = trim(htmlspecialchars($HTTP_POST_VARS[$param]));
		}
	}

$username = ( !empty($HTTP_POST_VARS['username']) ) ? phpbb_clean_username($HTTP_POST_VARS['username']) : '';
	$trim_var_list = array('cur_password' => 'cur_password', 'new_password' => 'new_password', 'password_confirm' => 'password_confirm', 'signature' => 'signature');

	while( list($var, $param) = @each($trim_var_list) )
	{
		if ( !empty($HTTP_POST_VARS[$param]) )
		{
			$$var = trim($HTTP_POST_VARS[$param]);
		}
	}

	$signature = str_replace('<br />', "\n", $signature);
	// Start add - Gender MOD
	$gender = ( isset($HTTP_POST_VARS['gender']) ) ? intval ($HTTP_POST_VARS['gender']) : 0;
	// End add - Gender MOD
	// Start add - Birthday MOD
	if (isset($HTTP_POST_VARS['birthday']) )
	{
		$birthday = intval ($HTTP_POST_VARS['birthday']);
		if ($birthday!=999999)
		{
			$b_day = realdate('j',$birthday); 
			$b_md = realdate('n',$birthday); 
			$b_year = realdate('Y',$birthday);
		}
	} else
	{
		$b_day = ( isset($HTTP_POST_VARS['b_day']) ) ? intval ($HTTP_POST_VARS['b_day']) : 0;
		$b_md = ( isset($HTTP_POST_VARS['b_md']) ) ? intval ($HTTP_POST_VARS['b_md']) : 0;
		$b_year = ( isset($HTTP_POST_VARS['b_year']) ) ? intval ($HTTP_POST_VARS['b_year']) : 0;
		if ($b_day && $b_md && $b_year)
		{
			$birthday = mkrealdate($b_day,$b_md,$b_year);
		} else
		{
			$birthday = 999999;
		}
	}
// End add - Birthday MOD
	// Run some validation on the optional fields. These are pass-by-ref, so they'll be changed to
	// empty strings if they fail.
	validate_optional_fields($icq, $aim, $msn, $yim, $website, $location, $occupation, $interests, $signature, $user_absence_text);

	$viewemail = ( isset($HTTP_POST_VARS['viewemail']) ) ? ( ($HTTP_POST_VARS['viewemail']) ? TRUE : 0 ) : 0;
	$user_allow_new_img_popup = ( isset($HTTP_POST_VARS['user_allow_new_img_popup']) ) ? ( ($HTTP_POST_VARS['user_allow_new_img_popup']) ? TRUE : 0 ) : 0;
	$user_absence_mode = abs( intval($HTTP_POST_VARS['user_absence_mode']) );
	$user_absence = ( isset($HTTP_POST_VARS['user_absence']) ) ? ( ($HTTP_POST_VARS['user_absence']) ? TRUE : 0 ) : 0;
	$user_absence_text = htmlspecialchars($HTTP_POST_VARS['user_absence_text']);
	$allowviewonline = ( isset($HTTP_POST_VARS['hideonline']) ) ? ( ($HTTP_POST_VARS['hideonline']) ? 0 : TRUE ) : TRUE;
	$notifyreply = ( isset($HTTP_POST_VARS['notifyreply']) ) ? ( ($HTTP_POST_VARS['notifyreply']) ? TRUE : 0 ) : 0;
	$notifypm = ( isset($HTTP_POST_VARS['notifypm']) ) ? ( ($HTTP_POST_VARS['notifypm']) ? TRUE : 0 ) : TRUE;
	$popup_pm = ( isset($HTTP_POST_VARS['popup_pm']) ) ? ( ($HTTP_POST_VARS['popup_pm']) ? TRUE : 0 ) : TRUE;
	$setbm = ( isset($HTTP_POST_VARS['setbm']) ) ? ( ($HTTP_POST_VARS['setbm']) ? TRUE : 0 ) : 0;
	
	if ( $mode == 'register' )
	{
		$attachsig = ( isset($HTTP_POST_VARS['attachsig']) ) ? ( ($HTTP_POST_VARS['attachsig']) ? TRUE : 0 ) : $board_config['allow_sig'];

		$allowhtml = ( isset($HTTP_POST_VARS['allowhtml']) ) ? ( ($HTTP_POST_VARS['allowhtml']) ? TRUE : 0 ) : $board_config['allow_html'];
		$allowbbcode = ( isset($HTTP_POST_VARS['allowbbcode']) ) ? ( ($HTTP_POST_VARS['allowbbcode']) ? TRUE : 0 ) : $board_config['allow_bbcode'];
		$allowsmilies = ( isset($HTTP_POST_VARS['allowsmilies']) ) ? ( ($HTTP_POST_VARS['allowsmilies']) ? TRUE : 0 ) : $board_config['allow_smilies'];
	}
	else
	{
		$attachsig = ( isset($HTTP_POST_VARS['attachsig']) ) ? ( ($HTTP_POST_VARS['attachsig']) ? TRUE : 0 ) : $userdata['user_attachsig'];

		$allowhtml = ( isset($HTTP_POST_VARS['allowhtml']) ) ? ( ($HTTP_POST_VARS['allowhtml']) ? TRUE : 0 ) : $userdata['user_allowhtml'];
		$allowbbcode = ( isset($HTTP_POST_VARS['allowbbcode']) ) ? ( ($HTTP_POST_VARS['allowbbcode']) ? TRUE : 0 ) : $userdata['user_allowbbcode'];
		$allowsmilies = ( isset($HTTP_POST_VARS['allowsmilies']) ) ? ( ($HTTP_POST_VARS['allowsmilies']) ? TRUE : 0 ) : $userdata['user_allowsmile'];
	}

	$user_style = ( isset($HTTP_POST_VARS['style']) ) ? intval($HTTP_POST_VARS['style']) : $board_config['default_style'];

	if ( !empty($HTTP_POST_VARS['language']) )
	{
		if ( preg_match('/^[a-z_]+$/i', $HTTP_POST_VARS['language']) )
		{
			$user_lang = htmlspecialchars($HTTP_POST_VARS['language']);
		}
		else
		{
			$error = true;
			$error_msg = $lang['Fields_empty'];
		}
	}
	else
	{
		$user_lang = $board_config['default_lang'];
	}

	$user_timezone = ( isset($HTTP_POST_VARS['timezone']) ) ? doubleval($HTTP_POST_VARS['timezone']) : $board_config['board_timezone'];
	// FLAGHACK-start
	$user_flag = ( !empty($HTTP_POST_VARS['user_flag']) ) ? $HTTP_POST_VARS['user_flag'] : '' ;
	// FLAGHACK-end
	$sql = "SELECT config_value
		FROM " . CONFIG_TABLE . "
		WHERE config_name = 'default_dateformat'";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not select default dateformat', '', __LINE__, __FILE__, $sql);
	}
	$row = $db->sql_fetchrow($result);
	$board_config['default_dateformat'] = $row['config_value'];
	$user_dateformat = ( !empty($HTTP_POST_VARS['dateformat']) ) ? trim(htmlspecialchars($HTTP_POST_VARS['dateformat'])) : $board_config['default_dateformat'];

	$user_avatar_local = ( isset($HTTP_POST_VARS['avatarselect']) && !empty($HTTP_POST_VARS['submitavatar']) && $board_config['allow_avatar_local'] ) ? htmlspecialchars($HTTP_POST_VARS['avatarselect']) : ( ( isset($HTTP_POST_VARS['avatarlocal'])  ) ? htmlspecialchars($HTTP_POST_VARS['avatarlocal']) : '' );
   $user_avatar_category = ( isset($HTTP_POST_VARS['avatarcatname']) && $board_config['allow_avatar_local'] ) ? htmlspecialchars($HTTP_POST_VARS['avatarcatname']) : '' ;

	$user_avatar_remoteurl = ( !empty($HTTP_POST_VARS['avatarremoteurl']) ) ? trim(htmlspecialchars($HTTP_POST_VARS['avatarremoteurl'])) : '';
	$user_avatar_upload = ( !empty($HTTP_POST_VARS['avatarurl']) ) ? trim($HTTP_POST_VARS['avatarurl']) : ( ( $HTTP_POST_FILES['avatar']['tmp_name'] != "none") ? $HTTP_POST_FILES['avatar']['tmp_name'] : '' );
	$user_avatar_name = ( !empty($HTTP_POST_FILES['avatar']['name']) ) ? $HTTP_POST_FILES['avatar']['name'] : '';
	$user_avatar_size = ( !empty($HTTP_POST_FILES['avatar']['size']) ) ? $HTTP_POST_FILES['avatar']['size'] : 0;
	$user_avatar_filetype = ( !empty($HTTP_POST_FILES['avatar']['type']) ) ? $HTTP_POST_FILES['avatar']['type'] : '';

   $user_avatar = ( empty($user_avatar_local) && $mode == 'editprofile' ) ? $userdata['user_avatar'] : ''; 
   $user_avatar_type = ( empty($user_avatar_local) && $mode == 'editprofile' ) ? $userdata['user_avatar_type'] : '';

	if ( (isset($HTTP_POST_VARS['avatargallery']) || isset($HTTP_POST_VARS['submitavatar']) || isset($HTTP_POST_VARS['cancelavatar'])) && (!isset($HTTP_POST_VARS['submit'])) )
	{
		$username = stripslashes($username);
        $name_first = stripslashes($name_first);
        $name_last = stripslashes($name_last);
		$email = stripslashes($email);
		$cur_password = htmlspecialchars(stripslashes($cur_password));
		$new_password = htmlspecialchars(stripslashes($new_password));
		$password_confirm = htmlspecialchars(stripslashes($password_confirm));

		$icq = stripslashes($icq);
		$aim = stripslashes($aim);
		$msn = stripslashes($msn);
		$yim = stripslashes($yim);

		$website = stripslashes($website);
		$location = stripslashes($location);
		$occupation = stripslashes($occupation);
		$interests = stripslashes($interests);
	//
	// START Joe's Car Mod
	//
	$car_mark = stripslashes($car_mark);
        $car_mark_choice = stripslashes($car_mark_choice);

        $car_model = stripslashes($car_model);

        $car_model_choice = stripslashes($car_model_choice);

        $car_year = stripslashes($car_year);
        $car_year_choice = stripslashes($car_year_choice);
        $car_engine = stripslashes($car_engine);
        $car_engine_choice = stripslashes($car_engine_choice);

        $car_wheel = stripslashes($car_wheel);
        $car_trans = stripslashes($car_trans);
        $car_color = stripslashes($car_color);

        $car_rt = stripslashes($car_rt);
        $car_sixty = stripslashes($car_sixty);
        $car_three = stripslashes($car_three);
        $car_eigth = stripslashes($car_eigth);
        $car_eigthm = stripslashes($car_eigthm);
        $car_thou = stripslashes($car_thou);
        $car_quart = stripslashes($car_quart);
        $car_quartm = stripslashes($car_quartm);

        $mod_engine = stripslashes($mod_engine);
        $mod_exterior = stripslashes($mod_exterior);
        $mod_interior = stripslashes($mod_interior);
        $mod_rims = stripslashes($mod_rims);
        $mod_audio = stripslashes($mod_audio);
        $mod_future = stripslashes($mod_future);
	//
	// END Joe's Car Mod
	//
		$info = stripslashes($info);
		$user_absence_text = stripslashes($user_absence_text);
		$signature = htmlspecialchars(stripslashes($signature));

		$user_lang = stripslashes($user_lang);
		$user_dateformat = stripslashes($user_dateformat);

		if ( !isset($HTTP_POST_VARS['cancelavatar']))
		{
			$user_avatar = $user_avatar_category . '/' . $user_avatar_local;
			$user_avatar_type = USER_AVATAR_GALLERY;
		}
	}
}

//
// Let's make sure the user isn't logged in while registering,
// and ensure that they were trying to register a second time
// (Prevents double registrations)
//
if ($mode == 'register' && ($userdata['session_logged_in'] || $username == $userdata['username']))
{
	message_die(GENERAL_MESSAGE, $lang['Username_taken'], '', __LINE__, __FILE__);
}

//
// Did the user submit? In this case build a query to update the users profile in the DB
//
if ( isset($HTTP_POST_VARS['submit']) )
{
	include($phpbb_root_path . 'includes/usercp_avatar.'.$phpEx);

	$passwd_sql = '';
	if ( $mode == 'editprofile' )
	{
		if ( $user_id != $userdata['user_id'] )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Wrong_Profile'];
		}
	///
	/// Begin Names in Profile MOD
	///

	if ( $board_config['name_first_required'] )
	 {
	  if ( empty($name_first) )
	  {
	  $error = TRUE;
	  $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['name_first_empty'];
	  }
	 }
 
	 if ( $board_config['name_last_required'] )
	 {
	  if ( empty($name_last) )
	  {
	  $error = TRUE;
	  $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['name_last_empty'];
	  }
	 }

	///
	/// End Names in Profile MOD
	///
	}
	else if ( $mode == 'register' )
	{
	///
	/// Begin Names in Profile MOD
	///

	if ( $board_config['name_first_required'] )
	 {
	  if ( empty($name_first) )
	  {
	  $error = TRUE;
	  $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['name_first_empty'];
	  }
	 }
 
	 if ( $board_config['name_last_required'] )
	 {
	  if ( empty($name_last) )
	  {
	  $error = TRUE;
	  $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['name_last_empty'];
	  }
	 }

	///
	/// End Names in Profile MOD
	///
		if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
		}
		//
		// Anti Robotic Registration
		//
		$sql = "SELECT * FROM " . ANTI_ROBOT_TABLE . " WHERE session_id = '" . $userdata['session_id'] . "' LIMIT 1";
		if( !$result = $db->sql_query($sql) )
		{
			message_die(GENERAL_ERROR, 'Could not obtain registration information', '', __LINE__, __FILE__, $sql);
		}

		$anti_robot_row = $db->sql_fetchrow($result);
 
		if (( strtolower($HTTP_POST_VARS['reg_key']) != $anti_robot_row['reg_key'] ) or ($anti_robot_row['reg_key'] == ''))
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Wrong_reg_key'];
		}
		else
		{
			$sql = "DELETE FROM " . ANTI_ROBOT_TABLE . " WHERE session_id = '" . $userdata['session_id'] . "'";
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, 'Could not delete validation key', '', __LINE__, __FILE__, $sql);
			}
		}
		// --------------------------
		//
	}

	$passwd_sql = '';
	if ( !empty($new_password) && !empty($password_confirm) )
	{
		// Start add - Protect user account MOD
// validate that the password is complex
$result = validate_complex_password ($username, $new_password);
if ( $result['error'] )
{
	$error = TRUE;
	$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $result['error_msg'];

}
// End add - Protect user account MOD
		if ( $new_password != $password_confirm )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Password_mismatch'];
		}
		else if ( strlen($new_password) > 32 )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Password_long'];
		}
		else
		{
			if ( $mode == 'editprofile' )
			{
				$sql = "SELECT user_password
					FROM " . USERS_TABLE . "
					WHERE user_id = $user_id";
				if ( !($result = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not obtain user_password information', '', __LINE__, __FILE__, $sql);
				}

				$row = $db->sql_fetchrow($result);

				if ( $row['user_password'] != md5($cur_password) )
				{
					$error = TRUE;
					$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Current_password_mismatch'];
				}
			}

			if ( !$error )
			{
				$new_password = md5($new_password);
				$passwd_sql = "user_password = '$new_password', ";
			}
		}
	}
	else if ( ( empty($new_password) && !empty($password_confirm) ) || ( !empty($new_password) && empty($password_confirm) ) )
	{
		$error = TRUE;
		$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Password_mismatch'];
	}

	//
	// Do a ban check on this email address
	//
	if ( $email != $userdata['user_email'] || $mode == 'register' )
	{
		$result = validate_email($email);
		if ( $result['error'] )
		{
			$email = $userdata['user_email'];

			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $result['error_msg'];
		}

		if ( $mode == 'editprofile' )
		{
			$sql = "SELECT user_password
				FROM " . USERS_TABLE . "
				WHERE user_id = $user_id";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not obtain user_password information', '', __LINE__, __FILE__, $sql);
			}

			$row = $db->sql_fetchrow($result);

			if ( $row['user_password'] != md5($cur_password) )
			{
				$email = $userdata['user_email'];

				$error = TRUE;
				$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Current_password_mismatch'];
			}
		}
	}

	$username_sql = '';
	if ( $board_config['allow_namechange'] || $mode == 'register' )
	{
		if ( empty($username) )
		{
			// Error is already triggered, since one field is empty.
			$error = TRUE;
		}
		else if ( $username != $userdata['username'] || $mode == 'register' )
		{
			if (strtolower($username) != strtolower($userdata['username']) || $mode == 'register')
			{
				$result = validate_username($username);
				if ( $result['error'] )
				{
					$error = TRUE;
					$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $result['error_msg'];
				}
			}

			if (!$error)
			{
				$username_sql = "username = '" . str_replace("\'", "''", $username) . "', ";
			}
		}
	}

	if ( $signature != '' )
	{
		if ( strlen($signature) > $board_config['max_sig_chars'] )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Signature_too_long'];
		}

		if ( !isset($signature_bbcode_uid) || $signature_bbcode_uid == '' )
		{
			$signature_bbcode_uid = ( $allowbbcode ) ? make_bbcode_uid() : '';
		}
		$signature = prepare_message($signature, $allowhtml, $allowbbcode, $allowsmilies, $signature_bbcode_uid);
	}

	if ( $website != '' )
	{
		rawurlencode($website);
	}

	$avatar_sql = '';

	if ( isset($HTTP_POST_VARS['avatardel']) && $mode == 'editprofile' )
	{
      $avatar_sql = user_avatar_delete($userdata['user_avatar_type'], $userdata['user_avatar']); 
   } 
   else 
   if ( ( !empty($user_avatar_upload) || !empty($user_avatar_name) ) && $board_config['allow_avatar_upload'] )
	{
		if ( !empty($user_avatar_upload) )
		{
			$avatar_mode = (empty($user_avatar_name)) ? 'remote' : 'local'; 
			$avatar_sql = user_avatar_upload($mode, $avatar_mode, $userdata['user_avatar'], $userdata['user_avatar_type'], $error, $error_msg, $user_avatar_upload, $user_avatar_name, $user_avatar_size, $user_avatar_filetype);
		}
		else if ( !empty($user_avatar_name) )
		{
			$l_avatar_size = sprintf($lang['Avatar_filesize'], round($board_config['avatar_filesize'] / 1024));

			$error = true;
			$error_msg .= ( ( !empty($error_msg) ) ? '<br />' : '' ) . $l_avatar_size;
		}
	}
	else if ( $user_avatar_remoteurl != '' && $board_config['allow_avatar_remote'] )
	{
user_avatar_delete($userdata['user_avatar_type'], $userdata['user_avatar']);
		$avatar_sql = user_avatar_url($mode, $error, $error_msg, $user_avatar_remoteurl);
	}
	else if ( $user_avatar_local != '' && $board_config['allow_avatar_local'] )
	{
      user_avatar_delete($userdata['user_avatar_type'], $userdata['user_avatar']); 
      $avatar_sql = user_avatar_gallery($mode, $error, $error_msg, $user_avatar_local, $user_avatar_category);
	}
	// Start add - Birthday MOD
// find the birthday values, reflected by the $lang['Submit_date_format']
	if ($b_day || $b_md || $b_year) //if a birthday is submited, then validate it
	{
		$user_age=(date('md')>=$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y') - $b_year : date('Y') - $b_year - 1 ;
		// Check date, maximum / minimum user age
		if (!checkdate($b_md,$b_day,$b_year))
		{
			$error = TRUE;
			if( isset($error_msg) )$error_msg .= "<br />";
			$error_msg .= $lang['Wrong_birthday_format'];
		} else
		if ($user_age>$board_config['max_user_age'])
		{
			$error = TRUE;
			if( isset($error_msg) )$error_msg .= "<br />";
			$error_msg .= sprintf($lang['Birthday_to_high'],$board_config['max_user_age']);
		} else
		if ($user_age<$board_config['min_user_age'])
		{
			$error = TRUE;
			if( isset($error_msg) )$error_msg .= "<br />";
			$error_msg .= sprintf($lang['Birthday_to_low'],$board_config['min_user_age']);
		} else
		{
			$birthday = ($error) ? $birthday : mkrealdate($b_day,$b_md,$b_year);
			$next_birthday_greeting = (date('md')<$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y'):date('Y')+1 ;
		}
	} else
	{
		if ($board_config['birthday_required'])
		{
			$error = TRUE;
			if( isset($error_msg) )$error_msg .= "<br />";
			$error_msg .= sprintf($lang['Birthday_require']);
		}
		$birthday = 999999;
	}
// End add - Birthday MOD
	if ( !$error )
	{
		if ( $avatar_sql == '' )
		{
			$avatar_sql = ( $mode == 'editprofile' ) ? '' : "'', " . USER_AVATAR_NONE;
		}

		if ( $mode == 'editprofile' )
		{
			if ( $email != $userdata['user_email'] && $board_config['require_activation'] != USER_ACTIVATION_NONE && $userdata['user_level'] != ADMIN )
			{
				$user_active = 0;

				$user_actkey = gen_rand_string(true);
				$key_len = 54 - ( strlen($server_url) );
				$key_len = ( $key_len > 6 ) ? $key_len : 6;
				$user_actkey = substr($user_actkey, 0, $key_len);

				if ( $userdata['session_logged_in'] )
				{
					session_end($userdata['session_id'], $userdata['user_id']);
				}
			}
			else
			{
				$user_active = 'user_active'; 
				$user_actkey = 'user_actkey'; 
				// Start add - Protect user account MOD
				$passwd_sql .= (empty($passwd_sql)) ? "" : " user_passwd_change=".time().",";
				// End add - Protect user account MOD
			}

               		$car_engine_choice = ($car_engine_choice == $lang['Car_Engine_Choice']['0']) ? '' : $car_engine_choice;
                        $car_mark_choice = ($car_mark_choice == $lang['Car_Mark_Choice']['0']) ? '' : $car_mark_choice;
                        $car_model_choice = ($car_model_choice == $lang['Car_Model_Choice']['0']) ? '' : $car_model_choice;
                        $car_year_choice = ($car_year_choice == $lang['Car_Year_Choice']['0']) ? '' : $car_year_choice;
			$sql = "UPDATE " . USERS_TABLE . "
				SET " . $username_sql . $passwd_sql . "user_email = '" . str_replace("\'", "''", $email) ."', user_icq = '" . str_replace("\'", "''", $icq) . "', user_website = '" . str_replace("\'", "''", $website) . "', user_occ = '" . str_replace("\'", "''", $occupation) . "', user_from = '" . str_replace("\'", "''", $location) . "', user_from_flag = '$user_flag', user_interests = '" . str_replace("\'", "''", $interests) . "', user_car_mark = '" . str_replace("\'", "''", $car_mark) . "', user_car_mark_choice = '" . str_replace("\'", "''", $car_mark_choice) . "', user_car_model = '" . str_replace("\'", "''", $car_model) . "', user_car_model_choice = '" . str_replace("\'", "''", $car_model_choice) . "', user_car_year = '" . str_replace("\'", "''", $car_year) . "', user_car_year_choice = '" . str_replace("\'", "''", $car_year_choice) . "', user_car_engine = '" . str_replace("\'", "''", $car_engine) . "', user_car_engine_choice = '" . str_replace("\'", "''", $car_engine_choice) . "', user_car_wheel = '" . str_replace("\'", "''", $car_wheel) . "', user_car_trans = '" . str_replace("\'", "''", $car_trans) . "', user_car_color = '" . str_replace("\'", "''", $car_color) . "', user_car_rt = '" . str_replace("\'", "''", $car_rt) . "', user_car_sixty = '" . str_replace("\'", "''", $car_sixty) . "', user_car_three = '" . str_replace("\'", "''", $car_three) . "', user_car_eigth = '" . str_replace("\'", "''", $car_eigth) . "', user_car_eigthm = '" . str_replace("\'", "''", $car_eigthm) . "', user_car_thou = '" . str_replace("\'", "''", $car_thou) . "', user_car_quart = '" . str_replace("\'", "''", $car_quart) . "', user_car_quartm = '" . str_replace("\'", "''", $car_quartm) . "', user_mod_engine = '" . str_replace("\'", "''", $mod_engine) . "', user_mod_exterior = '" . str_replace("\'", "''", $mod_exterior) . "', user_mod_interior = '" . str_replace("\'", "''", $mod_interior) . "', user_mod_rims = '" . str_replace("\'", "''", $mod_rims) . "', user_mod_audio = '" . str_replace("\'", "''", $mod_audio) . "', user_mod_future = '" . str_replace("\'", "''", $mod_future) . "', user_name_first = '" . str_replace("\'", "''", $name_first) . "', user_name_last = '" . str_replace("\'", "''", $name_last) . "', user_allow_new_img_popup = $user_allow_new_img_popup, user_modell = '" . str_replace("\'", "''", $info) . "', user_absence_mode = $user_absence_mode, user_absence = $user_absence, user_absence_text = '" . str_replace("\'", "''", $user_absence_text) . "', user_birthday = '$birthday', user_next_birthday_greeting = '$next_birthday_greeting', user_viewemail = $viewemail, user_aim = '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', user_yim = '" . str_replace("\'", "''", $yim) . "', user_msnm = '" . str_replace("\'", "''", $msn) . "', user_attachsig = $attachsig, user_setbm = $setbm, user_allowsmile = $allowsmilies, user_allowhtml = $allowhtml, user_allowbbcode = $allowbbcode, user_allow_viewonline = $allowviewonline, user_notify = $notifyreply, user_notify_pm = $notifypm, user_popup_pm = $popup_pm, user_timezone = $user_timezone, user_dateformat = '" . str_replace("\'", "''", $user_dateformat) . "', user_lang = '" . str_replace("\'", "''", $user_lang) . "', user_style = $user_style, user_active = $user_active, user_actkey = '$user_actkey'" . $avatar_sql . ", user_gender = '$gender'
				WHERE user_id = $user_id";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
			}

			if ( !$user_active )
			{
				//
				// The users account has been deactivated, send them an email with a new activation key
				//
				include($phpbb_root_path . 'includes/emailer.'.$phpEx);
				$emailer = new emailer($board_config['smtp_delivery']);

             if ( $board_config['require_activation'] != USER_ACTIVATION_ADMIN ) 
             { 
                $emailer->from($board_config['board_email']); 
                $emailer->replyto($board_config['board_email']); 
  
                $emailer->use_template('user_activate', stripslashes($user_lang)); 
                $emailer->email_address($email); 
                $emailer->set_subject($lang['Reactivate']); 
  
                $emailer->assign_vars(array( 
                   'SITENAME' => $board_config['sitename'], 
                   'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)), 
                   'EMAIL_SIG' => (!empty($board_config['board_email_sig'])) ? str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']) : '', 
  
                   'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey) 
                ); 
                $emailer->send(); 
                $emailer->reset(); 
             } 
             else if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN ) 
             { 
                $sql = 'SELECT user_email, user_lang 
                   FROM ' . USERS_TABLE . ' 
                   WHERE user_level = ' . ADMIN; 
                 
                if ( !($result = $db->sql_query($sql)) ) 
                { 
                   message_die(GENERAL_ERROR, 'Could not select Administrators', '', __LINE__, __FILE__, $sql); 
                } 
                 
                while ($row = $db->sql_fetchrow($result)) 
                { 
                   $emailer->from($board_config['board_email']); 
                   $emailer->replyto($board_config['board_email']); 
                    
                   $emailer->email_address(trim($row['user_email'])); 
                   $emailer->use_template("admin_activate", $row['user_lang']); 
                   $emailer->set_subject($lang['Reactivate']); 
  
                   $emailer->assign_vars(array( 
                      'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)), 
                      'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']), 
  
                      'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey) 
                   ); 
                   $emailer->send(); 
                   $emailer->reset(); 
                } 
                $db->sql_freeresult($result); 
             }

				$message = $lang['Profile_updated_inactive'] . '<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("portal.$phpEx") . '">', '</a>');
			}
			else
			{
				$message = $lang['Profile_updated'] . '<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("portal.$phpEx") . '">', '</a>');
			}

			$template->assign_vars(array(
				"META" => '<meta http-equiv="refresh" content="5;url=' . append_sid("portal.$phpEx") . '">')
			);

			message_die(GENERAL_MESSAGE, $message);
		}
		else
		{
			$sql = "SELECT MAX(user_id) AS total
				FROM " . USERS_TABLE;
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not obtain next user_id information', '', __LINE__, __FILE__, $sql);
			}

			if ( !($row = $db->sql_fetchrow($result)) )
			{
				message_die(GENERAL_ERROR, 'Could not obtain next user_id information', '', __LINE__, __FILE__, $sql);
			}
			$user_id = $row['total'] + 1;

            // CBACK CrackerTracker Register Flood Protection
            $stime = time() + $ctracker_config['regtime'];
            $sql = "UPDATE " . CTRACK . " SET value = " . $stime . " WHERE name = 'lastreg'";
    	    $db->sql_query($sql);

            if(!empty($HTTP_SERVER_VARS['REMOTE_ADDR']))
            {
	          $sql = "UPDATE " . CTRACK . " SET value = '" . $HTTP_SERVER_VARS['REMOTE_ADDR'] . "' WHERE name = 'lastreg_ip'";
              $db->sql_query($sql);
            }
            // END CBACK CrackerTracker Register Flood Protection
			//
			// Get current date
			//
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Inlägg av WickeD »

Del 2 av 2:

Kod: Markera allt

$sql = "INSERT INTO " . USERS_TABLE . "	(user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_from_flag, user_interests, user_car_mark, user_car_mark_choice, user_car_model, user_car_model_choice, user_car_year, user_car_year_choice, user_car_engine, user_car_engine_choice, user_car_wheel, user_car_trans, user_car_color, user_car_rt, user_car_sixty, user_car_three, user_car_eigth, user_car_eigthm, user_car_thou, user_car_quart, user_car_quartm, user_mod_engine, user_mod_exterior, user_mod_interior, user_mod_rims, user_mod_audio, user_mod_future, user_name_first, user_name_last, user_allow_new_img_popup, user_modell, user_absence_mode, user_absence, user_absence_text, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_setbm, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_gender, user_level, user_allow_pm, user_birthday, user_next_birthday_greeting, user_passwd_change, user_active, user_actkey)
				VALUES ($user_id, '" . str_replace("\'", "''", $username) . "', " . time() . ", '" . str_replace("\'", "''", $new_password) . "', '" . str_replace("\'", "''", $email) . "', '" . str_replace("\'", "''", $icq) . "', '" . str_replace("\'", "''", $website) . "', '" . str_replace("\'", "''", $occupation) . "', '" . str_replace("\'", "''", $location) . "', '$user_flag', '" . str_replace("\'", "''", $interests) . "', '" . str_replace("\'", "''", $car_mark) . "', '" . str_replace("\'", "''", $car_mark_choice) . "', '" . str_replace("\'", "''", $car_model) . "', '" . str_replace("\'", "''", $car_model_choice) . "', '" . str_replace("\'", "''", $car_year) . "', '" . str_replace("\'", "''", $car_year_choice) . "', '" . str_replace("\'", "''", $car_engine) . "', '" . str_replace("\'", "''", $car_engine_choice) . "', '" . str_replace("\'", "''", $car_wheel) . "', '" . str_replace("\'", "''", $car_trans) . "', '" . str_replace("\'", "''", $car_color) . "', '" . str_replace("\'", "''", $car_rt) . "', '" . str_replace("\'", "''", $car_sixty) . "', '" . str_replace("\'", "''", $car_three) . "', '" . str_replace("\'", "''", $car_eigth) . "', '" . str_replace("\'", "''", $car_eigthm) . "', '" . str_replace("\'", "''", $car_thou) . "', '" . str_replace("\'", "''", $car_quart) . "', '" . str_replace("\'", "''", $car_quartm) . "', '" . str_replace("\'", "''", $mod_engine) . "', '" . str_replace("\'", "''", $mod_exterior) . "', '" . str_replace("\'", "''", $mod_interior) . "', '" . str_replace("\'", "''", $mod_rims) . "', '" . str_replace("\'", "''", $mod_audio) . "', '" . str_replace("\'", "''", $mod_future) . "', '" . str_replace("\'", "''", $name_first) . "', '" . str_replace("\'", "''", $name_last) . "', $user_allow_new_img_popup, '" . str_replace("\'", "''", $info) . "', $user_absence_mode, $user_absence, '" . str_replace("\'", "''", $user_absence_text) . "', '" . str_replace("\'", "''", $signature) . "', '$signature_bbcode_uid', $avatar_sql, $viewemail, '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', '" . str_replace("\'", "''", $yim) . "', '" . str_replace("\'", "''", $msn) . "', $attachsig, $setbm, $allowsmilies, $allowhtml, $allowbbcode, $allowviewonline, $notifyreply, $notifypm, $popup_pm, $user_timezone, '" . str_replace("\'", "''", $user_dateformat) . "', '" . str_replace("\'", "''", $user_lang) . "', $user_style, '$gender', 0, 1, '$birthday', '$next_birthday_greeting', ".time().",";
			if ( $board_config['require_activation'] == USER_ACTIVATION_SELF || $board_config['require_activation'] == USER_ACTIVATION_ADMIN || $coppa )
			{
				$user_actkey = gen_rand_string(true);
				$key_len = 54 - (strlen($server_url));
				$key_len = ( $key_len > 6 ) ? $key_len : 6;
				$user_actkey = substr($user_actkey, 0, $key_len);
				$sql .= "0, '" . str_replace("\'", "''", $user_actkey) . "')";
			}
			else
			{
				$sql .= "1, '')";
			}

			if ( !($result = $db->sql_query($sql, BEGIN_TRANSACTION)) )
			{
				message_die(GENERAL_ERROR, 'Could not insert data into users table', '', __LINE__, __FILE__, $sql);
			}

			$sql = "INSERT INTO " . GROUPS_TABLE . " (group_name, group_description, group_single_user, group_moderator)
				VALUES ('', 'Personal User', 1, 0)";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not insert data into groups table', '', __LINE__, __FILE__, $sql);
			}

			$group_id = $db->sql_nextid();

			$sql = "INSERT INTO " . USER_GROUP_TABLE . " (user_id, group_id, user_pending)
				VALUES ($user_id, $group_id, 0)";
			if( !($result = $db->sql_query($sql, END_TRANSACTION)) )
			{
				message_die(GENERAL_ERROR, 'Could not insert data into user_group table', '', __LINE__, __FILE__, $sql);
			}

			if ( $coppa )
			{
				$message = $lang['COPPA'];
				$email_template = 'coppa_welcome_inactive';
			}
			else if ( $board_config['require_activation'] == USER_ACTIVATION_SELF )
			{
				$message = $lang['Account_inactive'];
				$email_template = 'user_welcome_inactive';
			}
			else if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN )
			{
				$message = $lang['Account_inactive_admin'];
				$email_template = 'admin_welcome_inactive';
			}
			else
			{
				$message = $lang['Account_added'];
				$email_template = 'user_welcome';
			}

			include($phpbb_root_path . 'includes/emailer.'.$phpEx);
			$emailer = new emailer($board_config['smtp_delivery']);

			$emailer->from($board_config['board_email']);
			$emailer->replyto($board_config['board_email']);

			$emailer->use_template($email_template, stripslashes($user_lang));
			$emailer->email_address($email);
			$emailer->set_subject(sprintf($lang['Welcome_subject'], $board_config['sitename']));

			if( $coppa )
			{
				$emailer->assign_vars(array(
					'SITENAME' => $board_config['sitename'],
					'WELCOME_MSG' => sprintf($lang['Welcome_subject'], $board_config['sitename']),
					'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
					'PASSWORD' => $password_confirm,
					'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),

					'FAX_INFO' => $board_config['coppa_fax'],
					'MAIL_INFO' => $board_config['coppa_mail'],
					'EMAIL_ADDRESS' => $email,
					'ICQ' => $icq,
					'AIM' => $aim,
					'YIM' => $yim,
					'MSN' => $msn,
					'WEB_SITE' => $website,
					'FROM' => $location,
					'OCC' => $occupation,
					'INTERESTS' => $interests,
					'SITENAME' => $board_config['sitename']));
			}
			else
			{
				$emailer->assign_vars(array(
					'SITENAME' => $board_config['sitename'],
					'WELCOME_MSG' => sprintf($lang['Welcome_subject'], $board_config['sitename']),
					'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
					'PASSWORD' => $password_confirm,
					'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),

					'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
				);
			}

			$emailer->send();
			$emailer->reset();

			if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN )
			{
				$sql = "SELECT user_email, user_lang 
					FROM " . USERS_TABLE . "
					WHERE user_level = " . ADMIN;
				
				if ( !($result = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not select Administrators', '', __LINE__, __FILE__, $sql);
				}
				
				while ($row = $db->sql_fetchrow($result))
				{
					$emailer->from($board_config['board_email']);
					$emailer->replyto($board_config['board_email']);
					
					$emailer->email_address(trim($row['user_email']));
					$emailer->use_template("admin_activate", $row['user_lang']);
					$emailer->set_subject($lang['New_account_subject']);

					$emailer->assign_vars(array(
						'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
						'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),

						'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
					);
					$emailer->send();
					$emailer->reset();
				}
				$db->sql_freeresult($result);
			}

			$message = $message . '<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>');

			message_die(GENERAL_MESSAGE, $message);
		} // if mode == register
	}
} // End of submit


if ( $error )
{
	//
	// If an error occured we need to stripslashes on returned data
	//
	$username = stripslashes($username);
	$name_first = stripslashes($name_first);
	$name_last = stripslashes($name_last);
	$email = stripslashes($email);
	$new_password = '';
	$password_confirm = '';

	$icq = stripslashes($icq);
	$aim = str_replace('+', ' ', stripslashes($aim));
	$msn = stripslashes($msn);
	$yim = stripslashes($yim);

	$website = stripslashes($website);
	$location = stripslashes($location);
	$occupation = stripslashes($occupation);
	$interests = stripslashes($interests);
	//
	// START Joe's Car Mod
	//
	$car_mark = stripslashes($car_mark);
        $car_mark_choice = stripslashes($car_mark_choice);

        $car_model = stripslashes($car_model);

        $car_model_choice = stripslashes($car_model_choice);

        $car_year = stripslashes($car_year);
        $car_year_choice = stripslashes($car_year_choice);
        $car_engine = stripslashes($car_engine);
        $car_engine_choice = stripslashes($car_engine_choice);

        $car_wheel = stripslashes($car_wheel);
        $car_trans = stripslashes($car_trans);
        $car_color = stripslashes($car_color);

        $car_rt = stripslashes($car_rt);
        $car_sixty = stripslashes($car_sixty);
        $car_three = stripslashes($car_three);
        $car_eigth = stripslashes($car_eigth);
        $car_eigthm = stripslashes($car_eigthm);
        $car_thou = stripslashes($car_thou);
        $car_quart = stripslashes($car_quart);
        $car_quartm = stripslashes($car_quartm);

        $mod_engine = stripslashes($mod_engine);
        $mod_exterior = stripslashes($mod_exterior);
        $mod_interior = stripslashes($mod_interior);
        $mod_rims = stripslashes($mod_rims);
        $mod_audio = stripslashes($mod_audio);
        $mod_future = stripslashes($mod_future);
	//
	// END Joe's Car Mod
	//
		//
		// START Joe's Car Mod
		//
		$car_mark = stripslashes($car_mark);
                $car_mark_choice = stripslashes($car_mark_choice);

                $car_model = stripslashes($car_model);

                $car_model_choice = stripslashes($car_model_choice);

                $car_year = stripslashes($car_year);
                $car_year_choice = stripslashes($car_year_choice);

                $car_engine = stripslashes($car_engine);
                $car_engine_choice = stripslashes($car_engine_choice);

                $car_wheel = stripslashes($car_wheel);
                $car_trans = stripslashes($car_trans);
                $car_color = stripslashes($car_color);

                $car_rt = stripslashes($car_rt);
                $car_sixty = stripslashes($car_sixty);
                $car_three = stripslashes($car_three);
                $car_eigth = stripslashes($car_eigth);
                $car_eigthm = stripslashes($car_eigthm);
                $car_thou = stripslashes($car_thou);
                $car_quart = stripslashes($car_quart);
                $car_quartm = stripslashes($car_quartm);

                $mod_engine = stripslashes($mod_engine);
                $mod_exterior = stripslashes($mod_exterior);
                $mod_interior = stripslashes($mod_interior);
                $mod_rims = stripslashes($mod_rims);
                $mod_audio = stripslashes($mod_audio);
                $mod_future = stripslashes($mod_future);
		//
		// END Joe's Car Mod
		//
	$info = stripslashes($info);
	$user_absence_text = stripslashes($user_absence_text);
	$signature = stripslashes($signature);
	$signature = ($signature_bbcode_uid != '') ? preg_replace("/:(([a-z0-9]+:)?)$signature_bbcode_uid(=|\])/si", '\\3', $signature) : $signature;

	$user_lang = stripslashes($user_lang);
	$user_dateformat = stripslashes($user_dateformat);

}
else if ( $mode == 'editprofile' && !isset($HTTP_POST_VARS['avatargallery']) && !isset($HTTP_POST_VARS['submitavatar']) && !isset($HTTP_POST_VARS['cancelavatar']) )
{
	$user_id = $userdata['user_id'];
	$username = $userdata['username'];
	$name_first = $userdata['user_name_first'];
	$name_last = $userdata['user_name_last'];
	$email = $userdata['user_email'];
	$new_password = '';
	$password_confirm = '';

	$icq = $userdata['user_icq'];
	$aim = str_replace('+', ' ', $userdata['user_aim']);
	$msn = $userdata['user_msnm'];
	$yim = $userdata['user_yim'];

	$website = $userdata['user_website'];
	$location = $userdata['user_from'];
	// FLAGHACK-start
	$user_flag = $userdata['user_from_flag'];	
	// FLAGHACK-end
	$occupation = $userdata['user_occ'];
	$interests = $userdata['user_interests'];
	//
	// START Joe's Car Mod
	//
	$car_mark = $userdata['user_car_mark'];
        $car_mark_choice = $userdata['user_car_mark_choice'];

        $car_model = $userdata['user_car_model'];

        $car_model_choice = $userdata['user_car_model_choice'];

        $car_year = $userdata['user_car_year'];
        $car_year_choice = $userdata['user_car_year_choice'];
        $car_engine = $userdata['user_car_engine'];
        $car_engine_choice = $userdata['user_car_engine_choice'];
        $car_wheel = $userdata['user_car_wheel'];
        $car_trans = $userdata['user_car_trans'];
        $car_color = $userdata['user_car_color'];

        $car_rt = $userdata['user_car_rt'];
        $car_sixty = $userdata['user_car_sixty'];
        $car_three = $userdata['user_car_three'];
        $car_eigth = $userdata['user_car_eigth'];
        $car_eigthm = $userdata['user_car_eigthm'];
        $car_thou = $userdata['user_car_thou'];
        $car_quart = $userdata['user_car_quart'];
        $car_quartm = $userdata['user_car_quartm'];

        $mod_engine = $userdata['user_mod_engine'];
        $mod_exterior = $userdata['user_mod_exterior'];
        $mod_interior = $userdata['user_mod_interior'];
        $mod_rims = $userdata['user_mod_rims'];
        $mod_audio = $userdata['user_mod_audio'];
        $mod_future = $userdata['user_mod_future'];
	//
	// END Joe's Car Mod
	//
	$info = $userdata['user_modell'];
	// Start add - Gender MOD
	$gender = $userdata['user_gender']; 
	// End add - Gender MOD
	// Start add - Birthday MOD
	$birthday = $userdata['user_birthday'];
	// End add - Birthday MOD
	$signature_bbcode_uid = $userdata['user_sig_bbcode_uid'];
	$signature = ($signature_bbcode_uid != '') ? preg_replace("/:(([a-z0-9]+:)?)$signature_bbcode_uid(=|\])/si", '\\3', $userdata['user_sig']) : $userdata['user_sig'];

	$viewemail = $userdata['user_viewemail'];
	$user_allow_new_img_popup = $userdata['user_allow_new_img_popup'];
	$user_absence_mode = $userdata['user_absence_mode'];
	$user_absence = $userdata['user_absence'];
	$user_absence_text = $userdata['user_absence_text'];
	$notifypm = $userdata['user_notify_pm'];
	$popup_pm = $userdata['user_popup_pm'];
	$notifyreply = $userdata['user_notify'];
	$attachsig = $userdata['user_attachsig'];
	$setbm = $userdata['user_setbm'];
	$allowhtml = $userdata['user_allowhtml'];
	$allowbbcode = $userdata['user_allowbbcode'];
	$allowsmilies = $userdata['user_allowsmile'];
	$allowviewonline = $userdata['user_allow_viewonline'];

	$user_avatar = ( $userdata['user_allowavatar'] ) ? $userdata['user_avatar'] : '';
	$user_avatar_type = ( $userdata['user_allowavatar'] ) ? $userdata['user_avatar_type'] : USER_AVATAR_NONE;

	$user_style = $userdata['user_style'];
	$user_lang = $userdata['user_lang'];
	$user_timezone = $userdata['user_timezone'];
	$user_dateformat = $userdata['user_dateformat'];
}

//
// Default pages
//
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

make_jumpbox('viewforum.'.$phpEx);

if ( $mode == 'editprofile' )
{
	if ( $user_id != $userdata['user_id'] )
	{
		$error = TRUE;
		$error_msg = $lang['Wrong_Profile'];
	}
}

if( isset($HTTP_POST_VARS['avatargallery']) && !$error )
{
	include($phpbb_root_path . 'includes/usercp_avatar.'.$phpEx);

	$avatar_category = ( !empty($HTTP_POST_VARS['avatarcategory']) ) ? htmlspecialchars($HTTP_POST_VARS['avatarcategory']) : '';

	$template->set_filenames(array(
		'body' => 'profile_avatar_gallery.tpl')
	);

	$allowviewonline = !$allowviewonline;

	display_avatar_gallery($mode, $avatar_category, $user_id, $email, $current_email, $coppa, $username, $email, $new_password, $cur_password, $password_confirm, $icq, $aim, $msn, $yim, $website, $location, $occupation, $interests, $name_first, $name_last, $signature, $viewemail, $notifypm, $popup_pm, $notifyreply, $attachsig, $allowhtml, $allowbbcode, $allowsmilies, $allowviewonline, $user_style, $user_lang, $user_timezone, $user_dateformat, $car_mark, $car_mark_choice, $car_model, $car_model_choice, $car_year, $car_year_choice, $car_engine, $car_engine_choice, $car_wheel, $car_trans, $car_color, $car_rt, $car_sixty, $car_three, $car_eigth, $car_eigthm, $car_thou, $car_quart, $car_quartm, $mod_engine, $mod_exterior, $mod_interior, $mod_rims, $mod_audio, $mod_future, $user_allow_new_img_popup, $userdata['session_id']);
}
else
{
	include($phpbb_root_path . 'includes/functions_selects.'.$phpEx);

	if ( !isset($coppa) )
	{
		$coppa = FALSE;
	}

   if ( !isset($user_style) ) 
   { 
      $user_style = $board_config['default_style'];
	}

	$avatar_img = '';
	if ( $user_avatar_type )
	{
		switch( $user_avatar_type )
		{
			case USER_AVATAR_UPLOAD:
				$avatar_img = ( $board_config['allow_avatar_upload'] ) ? '<img src="' . $board_config['avatar_path'] . '/' . $user_avatar . '" alt="" />' : '';
				break;
			case USER_AVATAR_REMOTE:
				$avatar_img = ( $board_config['allow_avatar_remote'] ) ? '<img src="' . $user_avatar . '" alt="" />' : '';
				break;
			case USER_AVATAR_GALLERY:
				$avatar_img = ( $board_config['allow_avatar_local'] ) ? '<img src="' . $board_config['avatar_gallery_path'] . '/' . $user_avatar . '" alt="" />' : '';
				break;
		}
	}

	$s_hidden_fields = '<input type="hidden" name="mode" value="' . $mode . '" /><input type="hidden" name="agreed" value="true" /><input type="hidden" name="coppa" value="' . $coppa . '" />';
	if( $mode == 'editprofile' )
	{
		$s_hidden_fields .= '<input type="hidden" name="user_id" value="' . $userdata['user_id'] . '" />';
		//
		// Send the users current email address. If they change it, and account activation is turned on
		// the user account will be disabled and the user will have to reactivate their account.
		//
		$s_hidden_fields .= '<input type="hidden" name="current_email" value="' . $userdata['user_email'] . '" />';
	}

	if ( !empty($user_avatar_local) )
	{
		$s_hidden_fields .= '<input type="hidden" name="avatarlocal" value="' . $user_avatar_local . '" /><input type="hidden" name="avatarcatname" value="' . $user_avatar_category . '" />';
	}

	$html_status =  ( $userdata['user_allowhtml'] && $board_config['allow_html'] ) ? $lang['HTML_is_ON'] : $lang['HTML_is_OFF'];
	$bbcode_status = ( $userdata['user_allowbbcode'] && $board_config['allow_bbcode']  ) ? $lang['BBCode_is_ON'] : $lang['BBCode_is_OFF'];
	$smilies_status = ( $userdata['user_allowsmile'] && $board_config['allow_smilies']  ) ? $lang['Smilies_are_ON'] : $lang['Smilies_are_OFF'];
	
	// Start add - Gender MOD
switch ($gender) 
{ 
   case 1: $gender_male_checked="checked=\"checked\"";break; 
   case 2: $gender_female_checked="checked=\"checked\"";break; 
   default:$gender_no_specify_checked="checked=\"checked\""; 
}
// End add - Gender MOD
	// Start add - Birthday MOD
if ( $birthday!=999999 )
{
	$b_day = realdate('j', $birthday);
	$b_md = realdate('n', $birthday);
	$b_year = realdate('Y', $birthday);
	$birthday = realdate($lang['Submit_date_format'], $birthday);
} else
{
	$b_day = '';
	$b_md = '';
	$b_year = '';
	$birthday = '';
}
// End add - Birthday MOD

	if ( $error )
	{
		$template->set_filenames(array(
			'reg_header' => 'error_body.tpl')
		);
		$template->assign_vars(array(
			'ERROR_MESSAGE' => $error_msg)
		);
		$template->assign_var_from_handle('ERROR_BOX', 'reg_header');
	}

	$template->set_filenames(array(
		'body' => 'profile_add_body.tpl')
	);
	$s_car_model_choice = '<select name="car_model_choice">';
        for($i = 0; $i < count($lang['Car_Model_Choice']); $i++ )
        {
                $s_car_model_choice .= '<option value="' . $lang['Car_Model_Choice'][$i] . '">' . $lang['Car_Model_Choice'][$i]. '</option>';
        }
        $s_car_model_choice .= '</select>';
        $s_car_model_choice = str_replace("value=\"".$car_model_choice."\">", "value=\"".$car_model_choice."\" SELECTED>" ,$s_car_model_choice);

        $s_car_year_choice = '<select name="car_year_choice">';
        for($i = 0; $i < count($lang['Car_Year_Choice']); $i++ )
        {
                $s_car_year_choice .= '<option value="' . $lang['Car_Year_Choice'][$i] . '">' . $lang['Car_Year_Choice'][$i]. '</option>';
        }
        $s_car_year_choice .= '</select>';
        $s_car_year_choice = str_replace("value=\"".$car_year_choice."\">", "value=\"".$car_year_choice."\" SELECTED>" ,$s_car_year_choice);

        $s_car_mark_choice = '<select name="car_mark_choice">';
        for($i = 0; $i < count($lang['Car_Mark_Choice']); $i++ )
        {
                $s_car_mark_choice .= '<option value="' . $lang['Car_Mark_Choice'][$i] . '">' . $lang['Car_Mark_Choice'][$i]. '</option>';
        }
        $s_car_mark_choice .= '</select>';
        $s_car_mark_choice = str_replace("value=\"".$car_mark_choice."\">", "value=\"".$car_mark_choice."\" SELECTED>" ,$s_car_mark_choice);


        $s_car_engine_choice = '<select name="car_engine_choice">';
        for($i = 0; $i < count($lang['Car_Engine_Choice']); $i++ )
        {
                $s_car_engine_choice .= '<option value="' . $lang['Car_Engine_Choice'][$i] . '">' . $lang['Car_Engine_Choice'][$i]. '</option>';
        }
        $s_car_engine_choice .= '</select>';
        $s_car_engine_choice = str_replace("value=\"".$car_engine_choice."\">", "value=\"".$car_engine_choice."\" SELECTED>" ,$s_car_engine_choice);
	if ( ($userdata['user_level'] == USER && $board_config['users_allow_absence'] == TRUE) || ($userdata['user_level'] != USER && $userdata['user_level'] != ANONYMOUS) )
	{
		$template->assign_block_vars('allow_absence', array());
	}

	$s_user_absence_mode = '<select name = "user_absence_mode">';
	$s_user_absence_mode .= '<option value = "1">' . $lang['On_holidays'] . '</option>';
	$s_user_absence_mode .= '<option value = "2">' . $lang['User_ill'] . '</option>';
	$s_user_absence_mode .= '<option value = "3">' . $lang['Longer_absenct'] . '</option>';
	$s_user_absence_mode .= '</select>';

	$s_user_absence_mode = str_replace('value = "' . $userdata['user_absence_mode'] . '">', 'value = "' . $userdata['user_absence_mode'] . '" SELECTED>' ,$s_user_absence_mode);
	if ( $mode == 'editprofile' )
	{
		$template->assign_block_vars('switch_edit_profile', array());
	}
	// FLAGHACK-start
	// query to get the list of flags
	$sql = "SELECT *
		FROM " . FLAG_TABLE . "
		ORDER BY flag_id";
	if(!$flags_result = $db->sql_query($sql))
	{
		message_die(GENERAL_ERROR, "Couldn't obtain flags information.", "", __LINE__, __FILE__, $sql);
	}
	$flag_row = $db->sql_fetchrowset($ranksresult);
	$num_flags = $db->sql_numrows($ranksresult) ;

	// build the html select statement
	$flag_start_image = 'blank.gif' ;
	$selected = ( isset($user_flag) ) ? '' : ' selected="selected"'  ;
	$flag_select = "<select name=\"user_flag\" onChange=\"document.images['user_flag'].src = 'images/flags/'
 + this.value;\" >";
	$flag_select .= "<option value=\"blank.gif\"$selected>" . $lang['Select_Country'] . "</option>";
	for ($i = 0; $i < $num_flags; $i++)
	{
		$flag_name = $flag_row[$i]['flag_name'];
		$flag_image = $flag_row[$i]['flag_image'];
		$selected = ( isset( $user_flag) ) ? (($user_flag == $flag_image) ? 'selected="selected"' : '' ) : '' ;
		$flag_select .= "\t<option value=\"$flag_image\"$selected>$flag_name</option>";
		if ( isset( $user_flag) && ($user_flag == $flag_image))
		{
			$flag_start_image = $flag_image ;
		}
	}
	$flag_select .= '</select>';
	// FLAGHACK-end
	if ( ($mode == 'register') || ($board_config['allow_namechange']) )
	{
		$template->assign_block_vars('switch_namechange_allowed', array());
	}
	else
	{
		$template->assign_block_vars('switch_namechange_disallowed', array());
	}
	// Start add - Birthday MOD
	$s_b_day = '<span class="genmed">' . $lang['Day'] . '&nbsp;</span><select name="b_day" size="1" class="gensmall"> 
		<option value="0">&nbsp;-&nbsp;</option> 
		<option value="1">&nbsp;1&nbsp;</option>
		<option value="2">&nbsp;2&nbsp;</option>
		<option value="3">&nbsp;3&nbsp;</option>
		<option value="4">&nbsp;4&nbsp;</option>
		<option value="5">&nbsp;5&nbsp;</option>
		<option value="6">&nbsp;6&nbsp;</option>
		<option value="7">&nbsp;7&nbsp;</option>
		<option value="8">&nbsp;8&nbsp;</option>
		<option value="9">&nbsp;9&nbsp;</option>
		<option value="10">&nbsp;10&nbsp;</option>
		<option value="11">&nbsp;11&nbsp;</option>
		<option value="12">&nbsp;12&nbsp;</option>
		<option value="13">&nbsp;13&nbsp;</option>
		<option value="14">&nbsp;14&nbsp;</option>
		<option value="15">&nbsp;15&nbsp;</option>
		<option value="16">&nbsp;16&nbsp;</option>
		<option value="17">&nbsp;17&nbsp;</option>
		<option value="18">&nbsp;18&nbsp;</option>
		<option value="19">&nbsp;19&nbsp;</option>
		<option value="20">&nbsp;20&nbsp;</option>
		<option value="21">&nbsp;21&nbsp;</option>
		<option value="22">&nbsp;22&nbsp;</option>
		<option value="23">&nbsp;23&nbsp;</option>
		<option value="24">&nbsp;24&nbsp;</option>
		<option value="25">&nbsp;25&nbsp;</option>
		<option value="26">&nbsp;26&nbsp;</option>
		<option value="27">&nbsp;27&nbsp;</option>
		<option value="28">&nbsp;28&nbsp;</option>
		<option value="29">&nbsp;29&nbsp;</option>
		<option value="30">&nbsp;30&nbsp;</option>
		<option value="31">&nbsp;31&nbsp;</option>
	  	</select>&nbsp;&nbsp;';
	$s_b_md = '<span class="genmed">' . $lang['Month'] . '&nbsp;</span><select name="b_md" size="1" class="gensmall"> 
     		<option value="0">&nbsp;-&nbsp;</option> 
		<option value="1">&nbsp;'.$lang['datetime']['January'].'&nbsp;</option>
		<option value="2">&nbsp;'.$lang['datetime']['February'].'&nbsp;</option>
		<option value="3">&nbsp;'.$lang['datetime']['March'].'&nbsp;</option>
		<option value="4">&nbsp;'.$lang['datetime']['April'].'&nbsp;</option>
		<option value="5">&nbsp;'.$lang['datetime']['May'].'&nbsp;</option>
		<option value="6">&nbsp;'.$lang['datetime']['June'].'&nbsp;</option>
		<option value="7">&nbsp;'.$lang['datetime']['July'].'&nbsp;</option>
		<option value="8">&nbsp;'.$lang['datetime']['August'].'&nbsp;</option>
		<option value="9">&nbsp;'.$lang['datetime']['September'].'&nbsp;</option>
		<option value="10">&nbsp;'.$lang['datetime']['October'].'&nbsp;</option>
		<option value="11">&nbsp;'.$lang['datetime']['November'].'&nbsp;</option>
		<option value="12">&nbsp;'.$lang['datetime']['December'].'&nbsp;</option>
		</select>&nbsp;&nbsp;';
	$s_b_day= str_replace("value=\"".$b_day."\">", "value=\"".$b_day."\" SELECTED>" ,$s_b_day);
	$s_b_md = str_replace("value=\"".$b_md."\">", "value=\"".$b_md."\" SELECTED>" ,$s_b_md);
	$s_b_year = '<span class="genmed">' . $lang['Year'] . '&nbsp;</span><input type="text" class="post" style="width: 50px" name="b_year" size="4" maxlength="4" value="' . $b_year . '" />&nbsp;&nbsp;'; 
	$i = 0;
	$s_birthday = '';
	for ($i=0; $i<=strlen($lang['Submit_date_format']); $i++)
	{
		switch ($lang['Submit_date_format'][$i])
		{
			case d:  $s_birthday .= $s_b_day;break;
			case m:  $s_birthday .= $s_b_md;break;
			case Y:  $s_birthday .= $s_b_year;break;
		}
	}
// End add - Birthday MOD
	//
	// Let's do an overall check for settings/versions which would prevent
	// us from doing file uploads....
	//
	$ini_val = ( phpversion() >= '4.0.0' ) ? 'ini_get' : 'get_cfg_var';
	$form_enctype = ( @$ini_val('file_uploads') == '0' || strtolower(@$ini_val('file_uploads') == 'off') || phpversion() == '4.0.4pl1' || !$board_config['allow_avatar_upload'] || ( phpversion() < '4.0.3' && @$ini_val('open_basedir') != '' ) ) ? '' : 'enctype="multipart/form-data"';
	//
	// Anti Robotic Registration
	//
	if ($mode == 'register')
	{
		$sql = "DELETE FROM " . ANTI_ROBOT_TABLE . " WHERE timestamp < '" . (time() - 3600) . "' OR session_id = '" . $userdata['session_id'] . "'";
		if( !$result = $db->sql_query($sql) )
		{
				message_die(GENERAL_ERROR, 'Could not delete validation key', '', __LINE__, __FILE__, $sql);
		}

		$reg_key = gen_reg_key();

		$sql = "INSERT INTO ". ANTI_ROBOT_TABLE . " VALUES ('" . $userdata['session_id'] . "', '" . $reg_key . "', '" . time() . "')";
		if( !$result = $db->sql_query($sql) )
		{
				message_die(GENERAL_ERROR, 'Could not check registration information', '', __LINE__, __FILE__, $sql);
		}
	}
	//-----------------------
	//
	$template->assign_vars(array(
		'USERNAME' => $username,
		'NAME_FIRST' => $name_first,
		'NAME_LAST' => $name_last,
		'CUR_PASSWORD' => $cur_password,
		'NEW_PASSWORD' => $new_password,
		'PASSWORD_CONFIRM' => $password_confirm,
		'EMAIL' => $email,
		//signature editor
		'SIG_EDIT_LINK' => append_sid("profile.$phpEx?mode=signature"),
		'SIG_DESC' => $lang['sig_description'],
		'SIG_BUTTON_DESC' => $lang['sig_edit'],
		//signature editor
		'YIM' => $yim,
		'ICQ' => $icq,
		'MSN' => $msn,
		'AIM' => $aim,
		'OCCUPATION' => $occupation,
		'INTERESTS' => $interests,
		//
		// START Joe's Car Mod
		//
		'CAR_MARK' => $car_mark,
                'L_CAR_MARK' => $lang['Car_Mark'],
                'CAR_MODEL' => $car_model,
                'L_CAR_MODEL' => $lang['Car_Model'],

                'S_CAR_ENGINE_CHOICE' => $s_car_engine_choice,
                'S_CAR_MARK_CHOICE' => $s_car_mark_choice,
                'S_CAR_MODEL_CHOICE' => $s_car_model_choice,
                'S_CAR_YEAR_CHOICE' => $s_car_year_choice,

                'CAR_YEAR' => $car_year,
                'L_CAR_YEAR' => $lang['Car_Year'],
                'CAR_ENGINE' => $car_engine,
                'L_CAR_ENGINE' => $lang['Car_Engine'],
                'CAR_WHEEL' => $car_wheel,
                'L_CAR_WHEEL' => $lang['Car_Wheel'],
                'CAR_TRANS' => $car_trans,
                'L_CAR_TRANS' => $lang['Car_Trans'],
                'CAR_COLOR' => $car_color,
                'L_CAR_COLOR' => $lang['Car_Color'],

                'CAR_RT' => $car_rt,
                'L_CAR_RT' => $lang['Car_Rt'],
                'CAR_SIXTY' => $car_sixty,
                'L_CAR_SIXTY' => $lang['Car_Sixty'],
                'CAR_THREE' => $car_three,
                'L_CAR_THREE' => $lang['Car_Three'],
                'CAR_EIGTH' => $car_eigth,
                'L_CAR_EIGTH' => $lang['Car_Eigth'],
                'CAR_EIGTHM' => $car_eigthm,
                'L_CAR_EIGTHM' => $lang['Car_Eigthm'],
                'CAR_THOU' => $car_thou,
                'L_CAR_THOU' => $lang['Car_Thou'],
                'CAR_QUART' => $car_quart,
                'L_CAR_QUART' => $lang['Car_Quart'],
                'CAR_QUARTM' => $car_quartm,
                'L_CAR_QUARTM' => $lang['Car_Quartm'],

                'MOD_ENGINE' => $mod_engine,
                'L_MOD_ENGINE' => $lang['Car_Engine'],
                'MOD_EXTERIOR' => $mod_exterior,
                'L_MOD_EXTERIOR' => $lang['Car_Exterior'],
                'MOD_INTERIOR' => $mod_interior,
                'L_MOD_INTERIOR' => $lang['Car_Interior'],
                'MOD_RIMS' => $mod_rims,
                'L_MOD_RIMS' => $lang['Car_Rims'],
                'MOD_AUDIO' => $mod_audio,
                'L_MOD_AUDIO' => $lang['Car_Audio'],
                'MOD_FUTURE' => $mod_future,
                'L_MOD_FUTURE' => $lang['Car_Future'],
		//
		// END Joe's Car Mod
		//
		'ALLOW_NEW_IMG_POPUP_YES' => ( $user_allow_new_img_popup ) ? 'checked="checked"' : '',
		'ALLOW_NEW_IMG_POPUP_NO' => ( !$user_allow_new_img_popup ) ? 'checked="checked"' : '',
		'L_ALLOW_NEW_IMG_POPUP' => $lang['User_allow_new_img_popup'],
		'INFO' => $info,
		'L_INFO' => $lang['Info'],
		'L_USER_ABSENCE' => $lang['User_absence'],
		'L_USER_ABSENCE_MODE' => $lang['User_absence_mode'],
		'L_USER_ABSENCE_TEXT' => $lang['User_absence_text'],
		'USER_ABSENCE_YES' => ($user_absence) ? 'checked="checked"' : '',
		'USER_ABSENCE_NO' => (!$user_absence) ? 'checked="checked"' : '',
		'S_USER_ABSENCE_MODE' => $s_user_absence_mode,
		'S_USER_ABSENCE_TEXT' => $user_absence_text,
		// Start add - Birthday MOD
		'S_BIRTHDAY' => $s_birthday,
		'BIRTHDAY_REQUIRED' => ($board_config['birthday_required']) ? '*' : '',
		// End add - Birthday MOD 
		'LOCATION' => $location,
		// FLAGHACK-start
		'L_FLAG' => $lang['Country_Flag'],
		'FLAG_SELECT' => $flag_select,
		'FLAG_START' => $flag_start_image,
		// FLAGHACK-end
		'WEBSITE' => $website,
		'SIGNATURE' => str_replace('<br />', "\n", $signature),
		// Start add - Gender MOD
		'LOCK_GENDER' =>($mode!='register') ? 'DISABLED':'', 
		'GENDER' => $gender, 
		'GENDER_NO_SPECIFY_CHECKED' => $gender_no_specify_checked, 
		'GENDER_MALE_CHECKED' => $gender_male_checked, 
		'GENDER_FEMALE_CHECKED' => $gender_female_checked, 
		// End add - Gender MOD
		'VIEW_EMAIL_YES' => ( $viewemail ) ? 'checked="checked"' : '',
		'VIEW_EMAIL_NO' => ( !$viewemail ) ? 'checked="checked"' : '',
		'HIDE_USER_YES' => ( !$allowviewonline ) ? 'checked="checked"' : '',
		'HIDE_USER_NO' => ( $allowviewonline ) ? 'checked="checked"' : '',
		'NOTIFY_PM_YES' => ( $notifypm ) ? 'checked="checked"' : '',
		'NOTIFY_PM_NO' => ( !$notifypm ) ? 'checked="checked"' : '',
		'POPUP_PM_YES' => ( $popup_pm ) ? 'checked="checked"' : '',
		'POPUP_PM_NO' => ( !$popup_pm ) ? 'checked="checked"' : '',
		'ALWAYS_ADD_SIGNATURE_YES' => ( $attachsig ) ? 'checked="checked"' : '',
		'ALWAYS_ADD_SIGNATURE_NO' => ( !$attachsig ) ? 'checked="checked"' : '',
		'ALWAYS_SET_BOOKMARK_YES' => ( $setbm ) ? 'checked="checked"' : '',
		'ALWAYS_SET_BOOKMARK_NO' => ( !$setbm ) ? 'checked="checked"' : '',
		'NOTIFY_REPLY_YES' => ( $notifyreply ) ? 'checked="checked"' : '',
		'NOTIFY_REPLY_NO' => ( !$notifyreply ) ? 'checked="checked"' : '',
		'ALWAYS_ALLOW_BBCODE_YES' => ( $allowbbcode ) ? 'checked="checked"' : '',
		'ALWAYS_ALLOW_BBCODE_NO' => ( !$allowbbcode ) ? 'checked="checked"' : '',
		'ALWAYS_ALLOW_HTML_YES' => ( $allowhtml ) ? 'checked="checked"' : '',
		'ALWAYS_ALLOW_HTML_NO' => ( !$allowhtml ) ? 'checked="checked"' : '',
		'ALWAYS_ALLOW_SMILIES_YES' => ( $allowsmilies ) ? 'checked="checked"' : '',
		'ALWAYS_ALLOW_SMILIES_NO' => ( !$allowsmilies ) ? 'checked="checked"' : '',
		'ALLOW_AVATAR' => $board_config['allow_avatar_upload'],
		'AVATAR' => $avatar_img,
		'AVATAR_SIZE' => $board_config['avatar_filesize'],
		'LANGUAGE_SELECT' => language_select($user_lang, 'language'),
		'STYLE_SELECT' => style_select($user_style, 'style'),
		'TIMEZONE_SELECT' => tz_select($user_timezone, 'timezone'),
		'DATE_FORMAT_SELECT' => date_format_select($user_dateformat, $user_timezone),
		'HTML_STATUS' => $html_status,
		'BBCODE_STATUS' => sprintf($bbcode_status, '<a href="' . append_sid("faq.$phpEx?mode=bbcode") . '" target="_phpbbcode">', '</a>'),
		'SMILIES_STATUS' => $smilies_status,

		'L_NAME_FIRST' => $lang['name_first'],
		'L_NAME_LAST' => $lang['name_last'],
		'L_NAME_FIRST_DISPLAY_WARNING' => $lang['name_first_display_warning'],
		'L_NAME_LAST_DISPLAY_WARNING' => $lang['name_last_display_warning'],
		'L_CURRENT_PASSWORD' => $lang['Current_password'],
		'L_NEW_PASSWORD' => ( $mode == 'register' ) ? $lang['Password'] : $lang['New_password'],
		'L_CONFIRM_PASSWORD' => $lang['Confirm_password'],
		'L_CONFIRM_PASSWORD_EXPLAIN' => ( $mode == 'editprofile' ) ? $lang['Confirm_password_explain'] : '',
		'L_PASSWORD_IF_CHANGED' => ( $mode == 'editprofile' ) ? $lang['password_if_changed'] : '',
		'L_PASSWORD_CONFIRM_IF_CHANGED' => ( $mode == 'editprofile' ) ? $lang['password_confirm_if_changed'] : '',
		'L_SUBMIT' => $lang['Submit'],
		'L_RESET' => $lang['Reset'],
		'L_ICQ_NUMBER' => $lang['ICQ'],
		'L_MESSENGER' => $lang['MSNM'],
		'L_YAHOO' => $lang['YIM'],
		'L_WEBSITE' => $lang['Website'],
		'L_AIM' => $lang['AIM'],
		'L_LOCATION' => $lang['Location'],
		'L_OCCUPATION' => $lang['Occupation'],
		'L_BOARD_LANGUAGE' => $lang['Board_lang'],
		'L_BOARD_STYLE' => $lang['Board_style'],
		'L_TIMEZONE' => $lang['Timezone'],
		'L_DATE_FORMAT' => $lang['Date_format'],
		'L_DATE_FORMAT_EXPLAIN' => $lang['Date_format_explain'],
		'L_YES' => $lang['Yes'],
		'L_NO' => $lang['No'],
		'L_INTERESTS' => $lang['Interests'],
		// Start add - Gender MOD
		'L_GENDER' =>$lang['Gender'], 
		'L_GENDER_MALE' =>$lang['Male'], 
		'L_GENDER_FEMALE' =>$lang['Female'], 
		'L_GENDER_NOT_SPECIFY' =>$lang['No_gender_specify'], 
		// End add - Gender MOD
		// Start add - Birthday MOD
		'L_BIRTHDAY' => $lang['Birthday'],
		// End add - Birthday MOD
		'L_ALWAYS_ALLOW_SMILIES' => $lang['Always_smile'],
		'L_ALWAYS_ALLOW_BBCODE' => $lang['Always_bbcode'],
		'L_ALWAYS_ALLOW_HTML' => $lang['Always_html'],
		'L_HIDE_USER' => $lang['Hide_user'],
		'L_ALWAYS_ADD_SIGNATURE' => $lang['Always_add_sig'],
		'L_ALWAYS_SET_BOOKMARK' => $lang['Always_set_bm'],
		
		'L_AVATAR_PANEL' => $lang['Avatar_panel'],
		'L_AVATAR_EXPLAIN' => sprintf($lang['Avatar_explain'], $board_config['avatar_max_width'], $board_config['avatar_max_height'], (round($board_config['avatar_filesize'] / 1024))),
		'L_UPLOAD_AVATAR_FILE' => $lang['Upload_Avatar_file'],
		'L_UPLOAD_AVATAR_URL' => $lang['Upload_Avatar_URL'],
		'L_UPLOAD_AVATAR_URL_EXPLAIN' => $lang['Upload_Avatar_URL_explain'],
		'L_AVATAR_GALLERY' => $lang['Select_from_gallery'],
		'L_SHOW_GALLERY' => $lang['View_avatar_gallery'],
		'L_LINK_REMOTE_AVATAR' => $lang['Link_remote_Avatar'],
		'L_LINK_REMOTE_AVATAR_EXPLAIN' => $lang['Link_remote_Avatar_explain'],
		'L_DELETE_AVATAR' => $lang['Delete_Image'],
		'L_CURRENT_IMAGE' => $lang['Current_Image'],

		'L_SIGNATURE' => $lang['Signature'],
		'L_SIGNATURE_EXPLAIN' => sprintf($lang['Signature_explain'], $board_config['max_sig_chars']),
		'L_NOTIFY_ON_REPLY' => $lang['Always_notify'],
		'L_NOTIFY_ON_REPLY_EXPLAIN' => $lang['Always_notify_explain'],
		'L_NOTIFY_ON_PRIVMSG' => $lang['Notify_on_privmsg'],
		'L_POPUP_ON_PRIVMSG' => $lang['Popup_on_privmsg'],
		'L_POPUP_ON_PRIVMSG_EXPLAIN' => $lang['Popup_on_privmsg_explain'],
		'L_PREFERENCES' => $lang['Preferences'],
		'L_PUBLIC_VIEW_EMAIL' => $lang['Public_view_email'],
		'L_ITEMS_REQUIRED' => $lang['Items_required'],
		'L_REGISTRATION_INFO' => $lang['Registration_info'],
		'L_PROFILE_INFO' => $lang['Profile_info'],
		'L_PROFILE_INFO_NOTICE' => $lang['Profile_info_warn'],
		'L_EMAIL_ADDRESS' => $lang['Email_address'],
		// Anti Robotic Registration MOD
		'L_VALIDATION' => $lang['Validation'],
		'L_VALIDATION_EXPLAIN' => $lang['Validation_explain'],
		'S_ANTI_ROBOT1' => append_sid('antirobot_pic.'.$phpEx.'?id=1'),
		'S_ANTI_ROBOT2' => append_sid('antirobot_pic.'.$phpEx.'?id=2'),
		'S_ANTI_ROBOT3' => append_sid('antirobot_pic.'.$phpEx.'?id=3'),
		'S_ANTI_ROBOT4' => append_sid('antirobot_pic.'.$phpEx.'?id=4'),
		'S_ANTI_ROBOT5' => append_sid('antirobot_pic.'.$phpEx.'?id=5'),
		'S_ALLOW_AVATAR_UPLOAD' => $board_config['allow_avatar_upload'],
		'S_ALLOW_AVATAR_LOCAL' => $board_config['allow_avatar_local'],
		'S_ALLOW_AVATAR_REMOTE' => $board_config['allow_avatar_remote'],
		'S_HIDDEN_FIELDS' => $s_hidden_fields,
		'S_FORM_ENCTYPE' => $form_enctype,
		'S_PROFILE_ACTION' => append_sid("profile.$phpEx"))
	);

	//
	// This is another cheat using the block_var capability
	// of the templates to 'fake' an IF...ELSE...ENDIF solution
	// it works well :)
	//
	if ( $mode != 'register' )
	{
		if ( $userdata['session_logged_in'] || $userdata['user_allowavatar'] && ( $board_config['allow_avatar_upload'] || $board_config['allow_avatar_local'] || $board_config['allow_avatar_remote'] ) )
		{
			$template->assign_block_vars('switch_avatar_block', array() );

			if ( $board_config['allow_avatar_upload'] && file_exists(@phpbb_realpath('./' . $board_config['avatar_path'])) )
			{
				if ( $form_enctype != '' )
				{
					$template->assign_block_vars('switch_avatar_block.switch_avatar_local_upload', array() );
				}
				$template->assign_block_vars('switch_avatar_block.switch_avatar_remote_upload', array() );
			}

			if ( $board_config['allow_avatar_remote'] )
			{
				$template->assign_block_vars('switch_avatar_block.switch_avatar_remote_link', array() );
			}

			if ( $board_config['allow_avatar_local'] && file_exists(@phpbb_realpath('./' . $board_config['avatar_gallery_path'])) )
			{
				$template->assign_block_vars('switch_avatar_block.switch_avatar_local_gallery', array() );
			}
		}
	}
	else
	{
		$template->assign_block_vars('switch_validation', array() );
	}
}

///
/// Begin Names in Profile MOD
///

if ( $board_config['name_first_required'] )
	{
	$template->assign_block_vars('switch_name_first_required',array() );
	}

if ( $board_config['name_last_required'] )
	{
	$template->assign_block_vars('switch_name_last_required',array() );
	}
 
if ( $board_config['name_first_display'] )
	{
	$template->assign_block_vars('switch_name_first_display', array());
	}

if ( $board_config['name_last_display'] )
	{
	$template->assign_block_vars('switch_name_last_display', array());
	}

///
/// End Names in Profile MOD
///
$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

?>
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6571
Blev medlem: 2004-06-09 09:32
Svar: 1

Inlägg av Holger »

WickeD skrev:Sedan så körde jag fast här också:

Install säger:

Kod: Markera allt

#-----[ OPEN ]------------------------------------------
#

includes/usercp_register.php

#
#-----[ FIND ]------------------------------------------
#

$strip_var_list = array('username' => 'username',

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Begin Map Mod
$strip_vars_mapmod = array('longitude' => 'longitude', 'latitude' => 'latitude');
$strip_var_list = array_merge ($strip_var_list, $strip_vars_mapmod);
// End Map Mod

#
#-----[ FIND ]------------------------------------------
#

$user_avatar_type = ( empty($user_avatar_loc) && $mode == 'editprofile' ) ? $userdata['user_avatar_type'] : '';

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Begin Map Mod
$longitude = ( !empty($HTTP_POST_VARS['longitude']) ) ? str_replace(',','.',trim(strip_tags( $HTTP_POST_VARS['longitude'] ) ) ) : '';
$latitude = ( !empty($HTTP_POST_VARS['latitude']) ) ? str_replace(',','.',trim(strip_tags( $HTTP_POST_VARS['latitude'] ) ) ) : '';
// End Map Mod

EDIT:
Vad pinsamt :oops:
Här är den!


Så här ser min fil ut:
Se längst ned!
No problem!
Sök endast på

Kod: Markera allt

$strip_var_list =
Du kommer att hitta

Kod: Markera allt

$strip_var_list = array('email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests', 'car_mark' => 'car_mark', 'car_mark_choice' => 'car_mark_choice', 'car_model' => 'car_model', 'car_model_choice' => 'car_model_choice', 'car_year' => 'car_year', 'car_year_choice' => 'car_year_choice', 'car_engine' => 'car_engine', 'car_engine_choice' => 'car_engine_choice', 'car_wheel' => 'car_wheel', 'car_trans' => 'car_trans', 'car_color' => 'car_color', 'car_rt' => 'car_rt', 'car_sixty' => 'car_sixty', 'car_three' => 'car_three', 'car_eigth' => 'car_eigth', 'car_eigthm' => 'car_eigthm', 'car_thou' => 'car_thou', 'car_quart' => 'car_quart', 'car_quartm' => 'car_quartm', 'mod_engine' => 'mod_engine', 'mod_exterior' => 'mod_exterior', 'mod_interior' => 'mod_interior', 'mod_rims' => 'mod_rims', 'mod_audio' => 'mod_audio', 'mod_future' => 'mod_future', 'confirm_code' => 'confirm_code', 'name_first' => 'name_first', 'name_last' => 'name_last', 'info' => 'info'); 
Infoga därefter

Kod: Markera allt

// Begin Map Mod
$strip_vars_mapmod = array('longitude' => 'longitude', 'latitude' => 'latitude');
$strip_var_list = array_merge ($strip_var_list, $strip_vars_mapmod);
// End Map Mod
Sök sedan

Kod: Markera allt

$user_avatar_type = ( empty($user_avatar_local) && $mode == 'editprofile' ) ? $userdata['user_avatar_type'] : '';
Infoga därefter

Kod: Markera allt

// Begin Map Mod
$longitude = ( !empty($HTTP_POST_VARS['longitude']) ) ? str_replace(',','.',trim(strip_tags( $HTTP_POST_VARS['longitude'] ) ) ) : '';
$latitude = ( !empty($HTTP_POST_VARS['latitude']) ) ? str_replace(',','.',trim(strip_tags( $HTTP_POST_VARS['latitude'] ) ) ) : '';
// End Map Mod
Holger Gremminger
Ingen support via PM!
Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Inlägg av WickeD »

Tack så mycket Holger! :D

Då ska jag fortsätta med installationen.
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6571
Blev medlem: 2004-06-09 09:32
Svar: 1

Inlägg av Holger »

Tips:

om du inte hittar en instans som skall ändras/ersättas/utökas så måste du reducera sök-strängen (från höger).

Du hittade inte

Kod: Markera allt

$strip_var_list = array('username' => 'username',
Så försök först med

Kod: Markera allt

$strip_var_list = array('username'
Om det inte hjälper så provar du med

Kod: Markera allt

$strip_var_list =
osv ...

/Holger
Holger Gremminger
Ingen support via PM!
Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Inlägg av WickeD »

Aaaa! Bra tips! :D

Det underlättar en hel del nu när jag vet det.
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6571
Blev medlem: 2004-06-09 09:32
Svar: 1

Inlägg av Holger »

Japp, för arrayen som du letade efter såg ju ut så här:

Kod: Markera allt

$strip_var_list = array('email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests', 'car_mark' => 'car_mark', 'car_mark_choice' => 'car_mark_choice', 'car_model' => 'car_model', 'car_model_choice' => 'car_model_choice', 'car_year' => 'car_year', 'car_year_choice' => 'car_year_choice', 'car_engine' => 'car_engine', 'car_engine_choice' => 'car_engine_choice', 'car_wheel' => 'car_wheel', 'car_trans' => 'car_trans', 'car_color' => 'car_color', 'car_rt' => 'car_rt', 'car_sixty' => 'car_sixty', 'car_three' => 'car_three', 'car_eigth' => 'car_eigth', 'car_eigthm' => 'car_eigthm', 'car_thou' => 'car_thou', 'car_quart' => 'car_quart', 'car_quartm' => 'car_quartm', 'mod_engine' => 'mod_engine', 'mod_exterior' => 'mod_exterior', 'mod_interior' => 'mod_interior', 'mod_rims' => 'mod_rims', 'mod_audio' => 'mod_audio', 'mod_future' => 'mod_future', 'confirm_code' => 'confirm_code', 'name_first' => 'name_first', 'name_last' => 'name_last', 'info' => 'info'); 
Detta:

Kod: Markera allt

$strip_var_list = array('username' => 'username',
har INGEN. Det skulle bara vara ett exempel för det du ska söka. Många modd-autorer gör så, men normalt sett skriver de en kommentar, killen som skrev map-modden är lite slarvig!
Holger Gremminger
Ingen support via PM!
Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Inlägg av WickeD »

Jo det är sant att dom brukar skriva en kommentar när det är ett exempel, eller bara en bit av koden.

Det va därför jag blev osäker när det inte stod något.
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Användarens profilbild
WickeD
Extra aktiv medlem
Extra aktiv medlem
Inlägg: 979
Blev medlem: 2004-11-08 12:17
Svar: 0

Inlägg av WickeD »

Fundering igen:

Install säger:

Kod: Markera allt

#-----[ OPEN ]------------------------------------------
#

templates/subSilver/viewtopic_body.tpl

#
#-----[ FIND ]------------------------------------------
#

<td width="150" align="left" valign="top" class="{postrow.ROW_CLASS}"><span class="name"><a name="{postrow.U_POST_ID}"></a><b>{postrow.POSTER_NAME}</b></span><br /><span class="postdetails">{postrow.POSTER_RANK}<br />{postrow.RANK_IMAGE}{postrow.POSTER_AVATAR}<br /><br />{postrow.POSTER_JOINED}<br />{postrow.POSTER_POSTS}<br />{postrow.POSTER_FROM}</span><br /></td>

#
#-----[ REPLACE WITH ]------------------------------------------
#

<td width="150" align="left" valign="top" class="{postrow.ROW_CLASS}"><span class="name"><a name="{postrow.U_POST_ID}"></a><b>{postrow.POSTER_NAME}</b></span><br /><span class="postdetails">{postrow.POSTER_RANK}<br />{postrow.RANK_IMAGE}{postrow.POSTER_AVATAR}<br /><br />{postrow.POSTER_JOINED}<br />{postrow.POSTER_POSTS}<br />
<!-- BEGIN switch_map -->
<a href="{postrow.switch_map.U_MAP}" class="gensmall">{postrow.POSTER_FROM}</a>
<!-- END switch_map -->
<!-- BEGIN switch_no_map -->
{postrow.POSTER_FROM}
<!-- END switch_no_map -->
</span><br /></td>
Min kod bit ser ut så här:

Kod: Markera allt

<td valign="top" class="row9"> 
<span class="name"><a name="{postrow.U_POST_ID}" id="{postrow.U_POST_ID}"></a><strong>{postrow.POSTER_NAME}</strong><br />{postrow.CARD_IMG}</span>
<span class="postdetails">{postrow.POSTER_RANK}<br /> 
{postrow.RANK_IMAGE}{postrow.POSTER_AVATAR}<br /><br /> 
{postrow.POSTER_AGE}<br />
{postrow.POSTER_JOINED}<br /> 
{postrow.POSTER_POSTS}<br /> 
{postrow.POSTER_FROM}</span><br /> 
{postrow.POSTER_FROM_FLAG}
<img src="images/spacer.gif" alt="" width="150" height="1" /> 
</td>
Hur gör jag här?
Bästa hälsningar - Mikael Andersson

Välkommen till: http://www.bikersite.se - Träffpunkten för svenska bikers!
Skriv svar

Vilka är online

Användare som besöker denna kategori: 0 och 0 gäster