Vergleich contact.php - 1.8.2 - 1.8.38

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 11Zeile 11
define("IN_MYBB", 1);
define('THIS_SCRIPT', 'contact.php');


define("IN_MYBB", 1);
define('THIS_SCRIPT', 'contact.php');


$templatelist = "contact,post_captcha";

$templatelist = "contact,post_captcha,post_captcha_recaptcha_invisible,post_captcha_nocaptcha,post_captcha_hcaptcha_invisible,post_captcha_hcaptcha";


require_once "./global.php";
require_once MYBB_ROOT.'inc/class_captcha.php';


require_once "./global.php";
require_once MYBB_ROOT.'inc/class_captcha.php';

Zeile 27Zeile 27
if($mybb->settings['contact'] != 1 || (!$mybb->user['uid'] && $mybb->settings['contact_guests'] == 1))
{
error_no_permission();

if($mybb->settings['contact'] != 1 || (!$mybb->user['uid'] && $mybb->settings['contact_guests'] == 1))
{
error_no_permission();

 
}

if($mybb->settings['contactemail'])
{
$contactemail = $mybb->settings['contactemail'];
}
else
{
$contactemail = $mybb->settings['adminemail'];

}

// Check group limits
if($mybb->usergroup['maxemails'] > 0)

}

// Check group limits
if($mybb->usergroup['maxemails'] > 0)

{
if($mybb->user['uid'] > 0)
{
$user_check = "fromuid='{$mybb->user['uid']}'";
}

{
if($mybb->user['uid'] > 0)
{
$user_check = "fromuid='{$mybb->user['uid']}'";
}

	else
{
$user_check = "ipaddress=".$db->escape_binary($session->packedip);

	else
{
$user_check = "ipaddress=".$db->escape_binary($session->packedip);

	}

	}





	$query = $db->simple_select("maillogs", "COUNT(*) AS sent_count", "{$user_check} AND dateline >= '".(TIME_NOW - (60*60*24))."'");

	$query = $db->simple_select("maillogs", "COUNT(mid) AS sent_count", "{$user_check} AND dateline >= ".(TIME_NOW - (60*60*24)));

	$sent_count = $db->fetch_field($query, "sent_count");
if($sent_count >= $mybb->usergroup['maxemails'])
{

	$sent_count = $db->fetch_field($query, "sent_count");
if($sent_count >= $mybb->usergroup['maxemails'])
{

Zeile 56Zeile 65
	if($mybb->user['uid'] > 0)
{
$user_check = "fromuid='{$mybb->user['uid']}'";

	if($mybb->user['uid'] > 0)
{
$user_check = "fromuid='{$mybb->user['uid']}'";

	}
else

	}
else

	{
$user_check = "ipaddress=".$db->escape_binary($session->packedip);
}

	{
$user_check = "ipaddress=".$db->escape_binary($session->packedip);
}

Zeile 68Zeile 77
	$last_email = $db->fetch_array($query);

// Users last email was within the flood time, show the error

	$last_email = $db->fetch_array($query);

// Users last email was within the flood time, show the error

	if($last_email['mid'])

	if(!empty($last_email['mid']))

	{
$remaining_time = ($mybb->usergroup['emailfloodtime']*60)-(TIME_NOW-$last_email['dateline']);


	{
$remaining_time = ($mybb->usergroup['emailfloodtime']*60)-(TIME_NOW-$last_email['dateline']);


Zeile 114Zeile 123
	}

if(strlen($mybb->input['subject']) > $mybb->settings['contact_maxsubjectlength'] && $mybb->settings['contact_maxsubjectlength'] > 0)

	}

if(strlen($mybb->input['subject']) > $mybb->settings['contact_maxsubjectlength'] && $mybb->settings['contact_maxsubjectlength'] > 0)

	{

	{

		$errors[] = $lang->sprintf($lang->subject_too_long, $mybb->settings['contact_maxsubjectlength'], strlen($mybb->input['subject']));
}

if(empty($mybb->input['message']))
{
$errors[] = $lang->contact_no_message;

		$errors[] = $lang->sprintf($lang->subject_too_long, $mybb->settings['contact_maxsubjectlength'], strlen($mybb->input['subject']));
}

if(empty($mybb->input['message']))
{
$errors[] = $lang->contact_no_message;

	}

	}


if(strlen($mybb->input['message']) > $mybb->settings['contact_maxmessagelength'] && $mybb->settings['contact_maxmessagelength'] > 0)
{


if(strlen($mybb->input['message']) > $mybb->settings['contact_maxmessagelength'] && $mybb->settings['contact_maxmessagelength'] > 0)
{

Zeile 131Zeile 140
	if(strlen($mybb->input['message']) < $mybb->settings['contact_minmessagelength'] && $mybb->settings['contact_minmessagelength'] > 0)
{
$errors[] = $lang->sprintf($lang->message_too_short, $mybb->settings['contact_minmessagelength'], strlen($mybb->input['message']));

	if(strlen($mybb->input['message']) < $mybb->settings['contact_minmessagelength'] && $mybb->settings['contact_minmessagelength'] > 0)
{
$errors[] = $lang->sprintf($lang->message_too_short, $mybb->settings['contact_minmessagelength'], strlen($mybb->input['message']));

	}

	}


if(empty($mybb->input['email']))
{


if(empty($mybb->input['email']))
{

Zeile 141Zeile 150
	{
// Validate email
if(!validate_email_format($mybb->input['email']))

	{
// Validate email
if(!validate_email_format($mybb->input['email']))

		{

		{

			$errors[] = $lang->contact_no_email;
}
}


			$errors[] = $lang->contact_no_email;
}
}


	// Should we have a CAPTCHA? Perhaps yes...
if($mybb->settings['captchaimage'])

	// Should we have a CAPTCHA? Perhaps yes, but only for guests like in other pages...
if($mybb->settings['captchaimage'] && !$mybb->user['uid'])

	{
$captcha = new captcha;


	{
$captcha = new captcha;


Zeile 177Zeile 186
		try {
if($stop_forum_spam_checker->is_user_a_spammer('', $mybb->input['email'], get_ip()))
{

		try {
if($stop_forum_spam_checker->is_user_a_spammer('', $mybb->input['email'], get_ip()))
{

				$errors[] = $lang->error_stop_forum_spam_spammer;




				$errors[] = $lang->sprintf($lang->error_stop_forum_spam_spammer,
$stop_forum_spam_checker->getErrorText(array(
'stopforumspam_check_emails',
'stopforumspam_check_ips')));

			}
}
catch (Exception $e)

			}
}
catch (Exception $e)

Zeile 196Zeile 208
			// Load the post parser
require_once MYBB_ROOT."inc/class_parser.php";
$parser = new postParser;

			// Load the post parser
require_once MYBB_ROOT."inc/class_parser.php";
$parser = new postParser;


$parser_options = array(
'filter_badwords' => 1
);

$mybb->input['subject'] = $parser->parse_message($mybb->input['subject'], $parser_options);
$mybb->input['message'] = $parser->parse_message($mybb->input['message'], $parser_options);
}

$user = $lang->na;
if($mybb->user['uid'])
{
$user = $mybb->user['username'].' - '.$mybb->settings['bburl'].'/'.get_profile_link($mybb->user['uid']);


$mybb->input['subject'] = $parser->parse_badwords($mybb->input['subject']);
$mybb->input['message'] = $parser->parse_badwords($mybb->input['message']);
}

$user = $lang->guest;
if($mybb->user['uid'])
{
$user = htmlspecialchars_uni($mybb->user['username']).' - '.$mybb->settings['bburl'].'/'.get_profile_link($mybb->user['uid']);





		}

$subject = $lang->sprintf($lang->email_contact_subject, $mybb->input['subject']);
$message = $lang->sprintf($lang->email_contact, $mybb->input['email'], $user, $session->ipaddress, $mybb->input['message']);

		}

$subject = $lang->sprintf($lang->email_contact_subject, $mybb->input['subject']);
$message = $lang->sprintf($lang->email_contact, $mybb->input['email'], $user, $session->ipaddress, $mybb->input['message']);





		// Email the administrator

		// Email the administrator

		my_mail($mybb->settings['adminemail'], $subject, $message, $mybb->input['email']);

		my_mail($contactemail, $subject, $message, '', '', '', false, 'text', '', $mybb->get_input('email', MyBB::INPUT_STRING));


$plugins->run_hooks('contact_do_end');



$plugins->run_hooks('contact_do_end');


Zeile 229Zeile 237
				"fromuid" => $mybb->user['uid'],
"fromemail" => $db->escape_string($mybb->input['email']),
"touid" => 0,

				"fromuid" => $mybb->user['uid'],
"fromemail" => $db->escape_string($mybb->input['email']),
"touid" => 0,

				"toemail" => $db->escape_string($mybb->settings['adminemail']),

				"toemail" => $db->escape_string($contactemail),

				"tid" => 0,
"ipaddress" => $db->escape_binary($session->packedip),
"type" => 3
);
$db->insert_query("maillogs", $log_entry);
}

				"tid" => 0,
"ipaddress" => $db->escape_binary($session->packedip),
"type" => 3
);
$db->insert_query("maillogs", $log_entry);
}


// Redirect
redirect('contact.php', $lang->contact_success_message);








		
$mybb->input['from'] = $mybb->get_input('from');
if(!empty($mybb->input['from']))
{
redirect($mybb->input['from'], $lang->contact_success_message, '', true);
}
else
{
redirect('index.php', $lang->contact_success_message, '', true);
}

	}
else
{

	}
else
{

Zeile 252Zeile 267
}

// Generate CAPTCHA?

}

// Generate CAPTCHA?

if($mybb->settings['captchaimage'])



$captcha = '';

if($mybb->settings['captchaimage'] && !$mybb->user['uid'])

{
$post_captcha = new captcha(true, "post_captcha");


{
$post_captcha = new captcha(true, "post_captcha");


Zeile 260Zeile 277
	{
$captcha = $post_captcha->html;
}

	{
$captcha = $post_captcha->html;
}

 
}

$contact_subject = htmlspecialchars_uni($mybb->input['subject']);
$contact_message = htmlspecialchars_uni($mybb->input['message']);

if($mybb->user['uid'] && !$mybb->get_input('email'))
{
$user_email = htmlspecialchars_uni($mybb->user['email']);

}
else
{

}
else
{

	$captcha = '';

	$user_email = htmlspecialchars_uni($mybb->get_input('email'));

}

}


$mybb->input['subject'] = htmlspecialchars_uni($mybb->input['subject']);
$mybb->input['message'] = htmlspecialchars_uni($mybb->input['message']);

if($mybb->user['uid'] && !$mybb->get_input('email'))



if(isset($mybb->input['from']))
{
$redirect_url = htmlspecialchars_uni($mybb->get_input('from'));
}
else if(isset($_SERVER['HTTP_REFERER']) && strpos($_SERVER['HTTP_REFERER'], $mybb->settings['bburl']) !== false && strpos($_SERVER['HTTP_REFERER'], "contact.php") === false)

{

{

	$mybb->input['email'] = htmlspecialchars_uni($mybb->user['email']);

	$redirect_url = htmlentities($_SERVER['HTTP_REFERER']);

}
else
{

}
else
{

	$mybb->input['email'] = htmlspecialchars_uni($mybb->get_input('email'));

	$redirect_url = '';

}

$plugins->run_hooks('contact_end');

}

$plugins->run_hooks('contact_end');