Code refactoring

This commit is contained in:
Roman Kelesidis 2024-04-09 19:50:27 +07:00
commit e4ac08e377

View file

@ -172,8 +172,7 @@ foreach ($profile_fields as $field => $can_edit) {
case 'user_active': case 'user_active':
$active = isset($_POST['user_active']) ? (int)$_POST['user_active'] : $pr_data['user_active']; $active = isset($_POST['user_active']) ? (int)$_POST['user_active'] : $pr_data['user_active'];
if ($submit && $adm_edit) { if ($submit && $adm_edit) {
$pr_data['user_active'] = $active; $pr_data['user_active'] = $db_data['user_active'] = $active;
$db_data['user_active'] = $active;
} }
break; break;
@ -189,8 +188,7 @@ foreach ($profile_fields as $field => $can_edit) {
$errors[] = $err; $errors[] = $err;
} }
if ($username != $pr_data['username'] || $mode == 'register') { if ($username != $pr_data['username'] || $mode == 'register') {
$pr_data['username'] = $username; $pr_data['username'] = $db_data['username'] = $username;
$db_data['username'] = $username;
} }
} }
$tp_data['USERNAME'] = $pr_data['username']; $tp_data['USERNAME'] = $pr_data['username'];
@ -269,8 +267,7 @@ foreach ($profile_fields as $field => $can_edit) {
$errors[] = $err; $errors[] = $err;
} }
if ($bb_cfg['reg_email_activation']) { if ($bb_cfg['reg_email_activation']) {
$pr_data['user_active'] = 0; $pr_data['user_active'] = $db_data['user_active'] = 0;
$db_data['user_active'] = 0;
} }
$db_data['user_email'] = $email; $db_data['user_email'] = $email;
} }
@ -284,8 +281,7 @@ foreach ($profile_fields as $field => $can_edit) {
case 'user_lang': case 'user_lang':
$user_lang = isset($_POST['user_lang']) ? (string)$_POST['user_lang'] : $pr_data['user_lang']; $user_lang = isset($_POST['user_lang']) ? (string)$_POST['user_lang'] : $pr_data['user_lang'];
if ($submit && ($user_lang != $pr_data['user_lang'] || $mode == 'register')) { if ($submit && ($user_lang != $pr_data['user_lang'] || $mode == 'register')) {
$pr_data['user_lang'] = $user_lang; $pr_data['user_lang'] = $db_data['user_lang'] = $user_lang;
$db_data['user_lang'] = $user_lang;
} }
break; break;
@ -296,8 +292,7 @@ foreach ($profile_fields as $field => $can_edit) {
$user_timezone = isset($_POST['user_timezone']) ? (float)$_POST['user_timezone'] : (float)$pr_data['user_timezone']; $user_timezone = isset($_POST['user_timezone']) ? (float)$_POST['user_timezone'] : (float)$pr_data['user_timezone'];
if ($submit && ($user_timezone != $pr_data['user_timezone'] || $mode == 'register')) { if ($submit && ($user_timezone != $pr_data['user_timezone'] || $mode == 'register')) {
if (isset($lang['TZ'][str_replace(',', '.', $user_timezone)])) { if (isset($lang['TZ'][str_replace(',', '.', $user_timezone)])) {
$pr_data['user_timezone'] = $user_timezone; $pr_data['user_timezone'] = $db_data['user_timezone'] = $user_timezone;
$db_data['user_timezone'] = $user_timezone;
} }
} }
break; break;
@ -308,8 +303,7 @@ foreach ($profile_fields as $field => $can_edit) {
case 'user_gender': case 'user_gender':
$user_gender = isset($_POST['user_gender']) ? (int)$_POST['user_gender'] : $pr_data['user_gender']; $user_gender = isset($_POST['user_gender']) ? (int)$_POST['user_gender'] : $pr_data['user_gender'];
if ($submit && $user_gender != $pr_data['user_gender']) { if ($submit && $user_gender != $pr_data['user_gender']) {
$pr_data['user_gender'] = $user_gender; $pr_data['user_gender'] = $db_data['user_gender'] = $user_gender;
$db_data['user_gender'] = $user_gender;
} }
$tp_data['USER_GENDER'] = build_select('user_gender', array_flip($lang['GENDER_SELECT']), $pr_data['user_gender']); $tp_data['USER_GENDER'] = build_select('user_gender', array_flip($lang['GENDER_SELECT']), $pr_data['user_gender']);
break; break;
@ -365,8 +359,7 @@ foreach ($profile_fields as $field => $can_edit) {
$tp_data[strtoupper($opt)] = bf($user_opt, 'user_opt', $opt); $tp_data[strtoupper($opt)] = bf($user_opt, 'user_opt', $opt);
} }
if ($submit && ($user_opt != $pr_data['user_opt'] || $reg_mode)) { if ($submit && ($user_opt != $pr_data['user_opt'] || $reg_mode)) {
$pr_data['user_opt'] = $user_opt; $pr_data['user_opt'] = $db_data['user_opt'] = (int)$user_opt;
$db_data['user_opt'] = (int)$user_opt;
} }
break; break;
@ -377,14 +370,12 @@ foreach ($profile_fields as $field => $can_edit) {
if ($submit && !bf($pr_data['user_opt'], 'user_opt', 'dis_avatar')) { if ($submit && !bf($pr_data['user_opt'], 'user_opt', 'dis_avatar')) {
if (isset($_POST['delete_avatar'])) { if (isset($_POST['delete_avatar'])) {
delete_avatar($pr_data['user_id'], $pr_data['avatar_ext_id']); delete_avatar($pr_data['user_id'], $pr_data['avatar_ext_id']);
$pr_data['avatar_ext_id'] = 0; $pr_data['avatar_ext_id'] = $db_data['avatar_ext_id'] = 0;
$db_data['avatar_ext_id'] = 0;
} elseif (!empty($_FILES['avatar']['name']) && $bb_cfg['avatars']['up_allowed']) { } elseif (!empty($_FILES['avatar']['name']) && $bb_cfg['avatars']['up_allowed']) {
$upload = new TorrentPier\Legacy\Common\Upload(); $upload = new TorrentPier\Legacy\Common\Upload();
if ($upload->init($bb_cfg['avatars'], $_FILES['avatar']) and $upload->store('avatar', $pr_data)) { if ($upload->init($bb_cfg['avatars'], $_FILES['avatar']) and $upload->store('avatar', $pr_data)) {
$pr_data['avatar_ext_id'] = $upload->file_ext_id; $pr_data['avatar_ext_id'] = $db_data['avatar_ext_id'] = (int)$upload->file_ext_id;
$db_data['avatar_ext_id'] = (int)$upload->file_ext_id;
} else { } else {
$errors = array_merge($errors, $upload->errors); $errors = array_merge($errors, $upload->errors);
} }
@ -400,8 +391,7 @@ foreach ($profile_fields as $field => $can_edit) {
$icq = isset($_POST['user_icq']) ? (string)$_POST['user_icq'] : $pr_data['user_icq']; $icq = isset($_POST['user_icq']) ? (string)$_POST['user_icq'] : $pr_data['user_icq'];
if ($submit && $icq != $pr_data['user_icq']) { if ($submit && $icq != $pr_data['user_icq']) {
if ($icq == '' || preg_match('#^\d{6,15}$#', $icq)) { if ($icq == '' || preg_match('#^\d{6,15}$#', $icq)) {
$pr_data['user_icq'] = $icq; $pr_data['user_icq'] = $db_data['user_icq'] = (string)$icq;
$db_data['user_icq'] = (string)$icq;
} else { } else {
$pr_data['user_icq'] = ''; $pr_data['user_icq'] = '';
$errors[] = htmlCHR($lang['ICQ_ERROR']); $errors[] = htmlCHR($lang['ICQ_ERROR']);
@ -418,8 +408,7 @@ foreach ($profile_fields as $field => $can_edit) {
$website = htmlCHR($website); $website = htmlCHR($website);
if ($submit && $website != $pr_data['user_website']) { if ($submit && $website != $pr_data['user_website']) {
if ($website == '' || preg_match('#^https?://[\w\#!$%&~/.\-;:=,?@а-яА-Я\[\]+]+$#iu', $website)) { if ($website == '' || preg_match('#^https?://[\w\#!$%&~/.\-;:=,?@а-яА-Я\[\]+]+$#iu', $website)) {
$pr_data['user_website'] = $website; $pr_data['user_website'] = $db_data['user_website'] = $website;
$db_data['user_website'] = (string)$website;
} else { } else {
$pr_data['user_website'] = ''; $pr_data['user_website'] = '';
$errors[] = htmlCHR($lang['WEBSITE_ERROR']); $errors[] = htmlCHR($lang['WEBSITE_ERROR']);
@ -435,8 +424,7 @@ foreach ($profile_fields as $field => $can_edit) {
$from = isset($_POST['user_from']) ? (string)$_POST['user_from'] : $pr_data['user_from']; $from = isset($_POST['user_from']) ? (string)$_POST['user_from'] : $pr_data['user_from'];
$from = htmlCHR($from); $from = htmlCHR($from);
if ($submit && $from != $pr_data['user_from']) { if ($submit && $from != $pr_data['user_from']) {
$pr_data['user_from'] = $from; $pr_data['user_from'] = $db_data['user_from'] = $from;
$db_data['user_from'] = (string)$from;
} }
$tp_data['USER_FROM'] = $pr_data['user_from']; $tp_data['USER_FROM'] = $pr_data['user_from'];
break; break;
@ -455,8 +443,7 @@ foreach ($profile_fields as $field => $can_edit) {
$errors[] = $lang['SIGNATURE_ERROR_HTML']; $errors[] = $lang['SIGNATURE_ERROR_HTML'];
} }
$pr_data['user_sig'] = $sig; $pr_data['user_sig'] = $db_data['user_sig'] = $sig;
$db_data['user_sig'] = (string)$sig;
} }
$tp_data['USER_SIG'] = $pr_data['user_sig']; $tp_data['USER_SIG'] = $pr_data['user_sig'];
break; break;
@ -468,8 +455,7 @@ foreach ($profile_fields as $field => $can_edit) {
$occ = isset($_POST['user_occ']) ? (string)$_POST['user_occ'] : $pr_data['user_occ']; $occ = isset($_POST['user_occ']) ? (string)$_POST['user_occ'] : $pr_data['user_occ'];
$occ = htmlCHR($occ); $occ = htmlCHR($occ);
if ($submit && $occ != $pr_data['user_occ']) { if ($submit && $occ != $pr_data['user_occ']) {
$pr_data['user_occ'] = $occ; $pr_data['user_occ'] = $db_data['user_occ'] = $occ;
$db_data['user_occ'] = (string)$occ;
} }
$tp_data['USER_OCC'] = $pr_data['user_occ']; $tp_data['USER_OCC'] = $pr_data['user_occ'];
break; break;
@ -481,8 +467,7 @@ foreach ($profile_fields as $field => $can_edit) {
$interests = isset($_POST['user_interests']) ? (string)$_POST['user_interests'] : $pr_data['user_interests']; $interests = isset($_POST['user_interests']) ? (string)$_POST['user_interests'] : $pr_data['user_interests'];
$interests = htmlCHR($interests); $interests = htmlCHR($interests);
if ($submit && $interests != $pr_data['user_interests']) { if ($submit && $interests != $pr_data['user_interests']) {
$pr_data['user_interests'] = $interests; $pr_data['user_interests'] = $db_data['user_interests'] = $interests;
$db_data['user_interests'] = (string)$interests;
} }
$tp_data['USER_INTERESTS'] = $pr_data['user_interests']; $tp_data['USER_INTERESTS'] = $pr_data['user_interests'];
break; break;
@ -496,8 +481,7 @@ foreach ($profile_fields as $field => $can_edit) {
if ($skype != '' && !preg_match("#^[a-zA-Z0-9_.\-@,]{6,32}$#", $skype)) { if ($skype != '' && !preg_match("#^[a-zA-Z0-9_.\-@,]{6,32}$#", $skype)) {
$errors[] = $lang['SKYPE_ERROR']; $errors[] = $lang['SKYPE_ERROR'];
} }
$pr_data['user_skype'] = $skype; $pr_data['user_skype'] = $db_data['user_skype'] = (string)$skype;
$db_data['user_skype'] = (string)$skype;
} }
$tp_data['USER_SKYPE'] = $pr_data['user_skype']; $tp_data['USER_SKYPE'] = $pr_data['user_skype'];
break; break;
@ -511,8 +495,7 @@ foreach ($profile_fields as $field => $can_edit) {
if ($twitter != '' && !preg_match("#^[a-zA-Z0-9_]{1,15}$#", $twitter)) { if ($twitter != '' && !preg_match("#^[a-zA-Z0-9_]{1,15}$#", $twitter)) {
$errors[] = $lang['TWITTER_ERROR']; $errors[] = $lang['TWITTER_ERROR'];
} }
$pr_data['user_twitter'] = $twitter; $pr_data['user_twitter'] = $db_data['user_twitter'] = (string)$twitter;
$db_data['user_twitter'] = (string)$twitter;
} }
$tp_data['USER_TWITTER'] = $pr_data['user_twitter']; $tp_data['USER_TWITTER'] = $pr_data['user_twitter'];
break; break;
@ -524,12 +507,10 @@ foreach ($profile_fields as $field => $can_edit) {
$templates = isset($_POST['tpl_name']) ? (string)$_POST['tpl_name'] : $pr_data['tpl_name']; $templates = isset($_POST['tpl_name']) ? (string)$_POST['tpl_name'] : $pr_data['tpl_name'];
$templates = htmlCHR($templates); $templates = htmlCHR($templates);
if ($submit && $templates != $pr_data['tpl_name']) { if ($submit && $templates != $pr_data['tpl_name']) {
$pr_data['tpl_name'] = $bb_cfg['tpl_name']; $pr_data['tpl_name'] = $db_data['tpl_name'] = (string)$bb_cfg['tpl_name'];
$db_data['tpl_name'] = (string)$bb_cfg['tpl_name'];
foreach ($bb_cfg['templates'] as $folder => $name) { foreach ($bb_cfg['templates'] as $folder => $name) {
if ($templates == $folder) { if ($templates == $folder) {
$pr_data['tpl_name'] = $templates; $pr_data['tpl_name'] = $db_data['tpl_name'] = $templates;
$db_data['tpl_name'] = (string)$templates;
} }
} }
} }
@ -551,9 +532,8 @@ if ($submit && !$errors) {
*/ */
if ($mode == 'register') { if ($mode == 'register') {
if ($bb_cfg['reg_email_activation']) { if ($bb_cfg['reg_email_activation']) {
$user_actkey = make_rand_str(ACTKEY_LENGTH);
$db_data['user_active'] = 0; $db_data['user_active'] = 0;
$db_data['user_actkey'] = $user_actkey; $db_data['user_actkey'] = make_rand_str(ACTKEY_LENGTH);
} else { } else {
$db_data['user_active'] = 1; $db_data['user_active'] = 1;
$db_data['user_actkey'] = ''; $db_data['user_actkey'] = '';
@ -671,14 +651,14 @@ $template->assign_vars($tp_data);
$template->assign_vars([ $template->assign_vars([
'PAGE_TITLE' => ($mode == 'editprofile') ? $lang['EDIT_PROFILE'] . ($adm_edit ? " :: {$pr_data['username']}" : '') : $lang['REGISTER'], 'PAGE_TITLE' => ($mode == 'editprofile') ? $lang['EDIT_PROFILE'] . ($adm_edit ? " :: {$pr_data['username']}" : '') : $lang['REGISTER'],
'SHOW_REG_AGREEMENT' => ($mode == 'register' && !IS_ADMIN), 'SHOW_REG_AGREEMENT' => ($mode == 'register' && !IS_ADMIN),
'ERROR_MESSAGE' => ($errors) ? implode('<br />', array_unique($errors)) : '', 'ERROR_MESSAGE' => $errors ? implode('<br />', array_unique($errors)) : '',
'MODE' => $mode, 'MODE' => $mode,
'EDIT_PROFILE' => ($mode == 'editprofile'), 'EDIT_PROFILE' => ($mode == 'editprofile'),
'ADM_EDIT' => $adm_edit, 'ADM_EDIT' => $adm_edit,
'SHOW_PASS' => ($adm_edit || ($mode == 'register' && IS_ADMIN)), 'SHOW_PASS' => ($adm_edit || ($mode == 'register' && IS_ADMIN)),
'PASSWORD_LONG' => sprintf($lang['PASSWORD_LONG'], PASSWORD_MAX_LENGTH, PASSWORD_MIN_LENGTH), 'PASSWORD_LONG' => sprintf($lang['PASSWORD_LONG'], PASSWORD_MAX_LENGTH, PASSWORD_MIN_LENGTH),
'INVITE_CODE' => !empty($_GET['invite']) ? htmlCHR($_GET['invite']) : '', 'INVITE_CODE' => !empty($_GET['invite']) ? htmlCHR($_GET['invite']) : '',
'CAPTCHA_HTML' => ($need_captcha) ? bb_captcha('get') : '', 'CAPTCHA_HTML' => $need_captcha ? bb_captcha('get') : '',
'LANGUAGE_SELECT' => \TorrentPier\Legacy\Select::language($pr_data['user_lang'], 'user_lang'), 'LANGUAGE_SELECT' => \TorrentPier\Legacy\Select::language($pr_data['user_lang'], 'user_lang'),
'TIMEZONE_SELECT' => \TorrentPier\Legacy\Select::timezone($pr_data['user_timezone'], 'user_timezone'), 'TIMEZONE_SELECT' => \TorrentPier\Legacy\Select::timezone($pr_data['user_timezone'], 'user_timezone'),