break;
 case 'signature':
     if ($forum_config['o_signatures'] == '0') {
         message($lang_profile['Signatures disabled']);
     }
     ($hook = get_hook('pf_change_details_signature_validation')) ? eval($hook) : null;
     // Clean up signature from POST
     $form['signature'] = forum_linebreaks(forum_trim($_POST['signature']));
     // Validate signature
     if (utf8_strlen($form['signature']) > $forum_config['p_sig_length']) {
         $errors[] = sprintf($lang_profile['Sig too long'], forum_number_format($forum_config['p_sig_length']), forum_number_format(utf8_strlen($form['signature']) - $forum_config['p_sig_length']));
     }
     if (substr_count($form['signature'], "\n") > $forum_config['p_sig_lines'] - 1) {
         $errors[] = sprintf($lang_profile['Sig too many lines'], forum_number_format($forum_config['p_sig_lines']));
     }
     if ($form['signature'] != '' && $forum_config['p_sig_all_caps'] == '0' && check_is_all_caps($form['signature']) && !$forum_user['is_admmod']) {
         $form['signature'] = utf8_ucwords(utf8_strtolower($form['signature']));
     }
     // Validate BBCode syntax
     if ($forum_config['p_sig_bbcode'] == '1' || $forum_config['o_make_links'] == '1') {
         if (!defined('FORUM_PARSER_LOADED')) {
             require FORUM_ROOT . 'include/parser.php';
         }
         $form['signature'] = preparse_bbcode($form['signature'], $errors, true);
     }
     break;
 case 'avatar':
     if ($forum_config['o_avatars'] == '0') {
         message($lang_profile['Avatars disabled']);
     }
     ($hook = get_hook('pf_change_details_avatar_validation')) ? eval($hook) : null;
Example #2
0
         }
         if (is_banned_email($email)) {
             $errors[] = $lang_profile['Banned e-mail'];
         }
     }
 }
 // If we're an administrator or moderator, make sure the CSRF token in $_POST is valid
 if ($forum_user['is_admmod'] && (!isset($_POST['csrf_token']) || $_POST['csrf_token'] !== generate_form_token(get_current_url()))) {
     $errors[] = $lang_post['CSRF token mismatch'];
 }
 // Clean up message from POST
 $message = forum_linebreaks(forum_trim($_POST['req_message']));
 if (strlen($message) > FORUM_MAX_POSTSIZE_BYTES) {
     $errors[] = sprintf($lang_post['Too long message'], forum_number_format(strlen($message)), forum_number_format(FORUM_MAX_POSTSIZE_BYTES));
 } else {
     if ($forum_config['p_message_all_caps'] == '0' && check_is_all_caps($message) && !$forum_page['is_admmod']) {
         $errors[] = $lang_post['All caps message'];
     }
 }
 // Validate BBCode syntax
 if ($forum_config['p_message_bbcode'] == '1' || $forum_config['o_make_links'] == '1') {
     if (!defined('FORUM_PARSER_LOADED')) {
         require FORUM_ROOT . 'include/parser.php';
     }
     $message = preparse_bbcode($message, $errors);
 }
 if ($message == '') {
     $errors[] = $lang_post['No message'];
 }
 $hide_smilies = isset($_POST['hide_smilies']) ? 1 : 0;
 $subscribe = isset($_POST['subscribe']) ? 1 : 0;