Zeile 11 | Zeile 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";
|
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 27 | Zeile 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 56 | Zeile 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); }
|
|
|
$timecut = TIME_NOW-$mybb->usergroup['emailfloodtime']*60;
$query = $db->simple_select("maillogs", "mid, dateline", "{$user_check} AND dateline > '{$timecut}'", array('order_by' => "dateline", 'order_dir' => "DESC"));
| $timecut = TIME_NOW-$mybb->usergroup['emailfloodtime']*60;
$query = $db->simple_select("maillogs", "mid, dateline", "{$user_check} AND dateline > '{$timecut}'", array('order_by' => "dateline", 'order_dir' => "DESC"));
|
Zeile 83 | Zeile 92 |
---|
elseif($remaining_time > 60 && $remaining_time < 120) { $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_1_minute, $mybb->usergroup['emailfloodtime']);
|
elseif($remaining_time > 60 && $remaining_time < 120) { $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_1_minute, $mybb->usergroup['emailfloodtime']);
|
} else
| } else
|
{ $remaining_time_minutes = ceil($remaining_time/60); $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_minutes, $mybb->usergroup['emailfloodtime'], $remaining_time_minutes);
| { $remaining_time_minutes = ceil($remaining_time/60); $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_minutes, $mybb->usergroup['emailfloodtime'], $remaining_time_minutes);
|
Zeile 95 | Zeile 104 |
---|
}
$errors = array();
|
}
$errors = array();
|
|
|
$mybb->input['message'] = trim_blank_chrs($mybb->get_input('message')); $mybb->input['subject'] = trim_blank_chrs($mybb->get_input('subject')); $mybb->input['email'] = trim_blank_chrs($mybb->get_input('email'));
| $mybb->input['message'] = trim_blank_chrs($mybb->get_input('message')); $mybb->input['subject'] = trim_blank_chrs($mybb->get_input('subject')); $mybb->input['email'] = trim_blank_chrs($mybb->get_input('email'));
|
Zeile 111 | Zeile 120 |
---|
if(empty($mybb->input['subject'])) { $errors[] = $lang->contact_no_subject;
|
if(empty($mybb->input['subject'])) { $errors[] = $lang->contact_no_subject;
|
}
| }
|
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(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']));
|
Zeile 146 | Zeile 155 |
---|
} }
|
} }
|
// 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 177 | Zeile 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 197 | Zeile 209 |
---|
require_once MYBB_ROOT."inc/class_parser.php"; $parser = new postParser;
|
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);
| $mybb->input['subject'] = $parser->parse_badwords($mybb->input['subject']); $mybb->input['message'] = $parser->parse_badwords($mybb->input['message']);
|
}
|
}
|
$user = $lang->na;
| $user = $lang->guest;
|
if($mybb->user['uid']) {
|
if($mybb->user['uid']) {
|
$user = $mybb->user['username'].' - '.$mybb->settings['bburl'].'/'.get_profile_link($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']);
// Email the administrator
|
}
$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
|
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 229 | Zeile 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
| "tid" => 0, "ipaddress" => $db->escape_binary($session->packedip), "type" => 3
|
Zeile 237 | Zeile 245 |
---|
$db->insert_query("maillogs", $log_entry); }
|
$db->insert_query("maillogs", $log_entry); }
|
// Redirect redirect('contact.php', $lang->contact_success_message);
| if($mybb->usergroup['emailfloodtime'] > 0 || (isset($sent_count) && $sent_count + 1 >= $mybb->usergroup['maxemails'])) { redirect('index.php', $lang->contact_success_message, '', true); } else { redirect('contact.php', $lang->contact_success_message, '', true); }
|
} else
|
} else
|
{
| {
|
$errors = inline_error($errors);
|
$errors = inline_error($errors);
|
} }
| } }
|
if(empty($errors))
|
if(empty($errors))
|
{
| {
|
$errors = ''; }
|
$errors = ''; }
|
|
|
// 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 260 | Zeile 276 |
---|
{ $captcha = $post_captcha->html; }
|
{ $captcha = $post_captcha->html; }
|
} else { $captcha = '';
| |
}
|
}
|
$mybb->input['subject'] = htmlspecialchars_uni($mybb->input['subject']); $mybb->input['message'] = htmlspecialchars_uni($mybb->input['message']);
| $contact_subject = htmlspecialchars_uni($mybb->input['subject']); $contact_message = htmlspecialchars_uni($mybb->input['message']);
|
if($mybb->user['uid'] && !$mybb->get_input('email')) {
|
if($mybb->user['uid'] && !$mybb->get_input('email')) {
|
$mybb->input['email'] = htmlspecialchars_uni($mybb->user['email']);
| $user_email = htmlspecialchars_uni($mybb->user['email']);
|
} else {
|
} else {
|
$mybb->input['email'] = htmlspecialchars_uni($mybb->get_input('email'));
| $user_email = htmlspecialchars_uni($mybb->get_input('email'));
|
}
$plugins->run_hooks('contact_end');
| }
$plugins->run_hooks('contact_end');
|