diff options
author | Meik Sievertsen <acydburn@phpbb.com> | 2006-11-04 17:19:33 +0000 |
---|---|---|
committer | Meik Sievertsen <acydburn@phpbb.com> | 2006-11-04 17:19:33 +0000 |
commit | 63c0c798c83df387bcb71f17c0b98120e89a5467 (patch) | |
tree | b788476b60fd5c7e799590961cfcb5ce5108df74 /phpBB/includes/ucp | |
parent | 8b90d5998b944c055c24fd0d17dba25e2de9860c (diff) | |
download | forums-63c0c798c83df387bcb71f17c0b98120e89a5467.tar forums-63c0c798c83df387bcb71f17c0b98120e89a5467.tar.gz forums-63c0c798c83df387bcb71f17c0b98120e89a5467.tar.bz2 forums-63c0c798c83df387bcb71f17c0b98120e89a5467.tar.xz forums-63c0c798c83df387bcb71f17c0b98120e89a5467.zip |
- use the $var_ary for settings in a more logical way (hopefully removes the clutter and shows where which variable is set how)
- hopefully utf8 passwords are working too now
git-svn-id: file:///svn/phpbb/trunk@6552 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/ucp')
-rw-r--r-- | phpBB/includes/ucp/ucp_prefs.php | 112 | ||||
-rw-r--r-- | phpBB/includes/ucp/ucp_profile.php | 77 | ||||
-rw-r--r-- | phpBB/includes/ucp/ucp_register.php | 45 |
3 files changed, 85 insertions, 149 deletions
diff --git a/phpBB/includes/ucp/ucp_prefs.php b/phpBB/includes/ucp/ucp_prefs.php index 5dce0b80c2..378562a2dd 100644 --- a/phpBB/includes/ucp/ucp_prefs.php +++ b/phpBB/includes/ucp/ucp_prefs.php @@ -30,44 +30,30 @@ class ucp_prefs case 'personal': $data = array( - 'notifymethod' => $user->data['user_notify_type'], - 'dateformat' => $user->data['user_dateformat'], - 'lang' => $user->data['user_lang'], - 'style' => $user->data['user_style'], - 'tz' => $user->data['user_timezone'], + 'notifymethod' => request_var('notifymethod', $user->data['user_notify_type']), + 'dateformat' => request_var('dateformat', $user->data['user_dateformat']), + 'lang' => request_var('lang', $user->data['user_lang']), + 'style' => request_var('style', (int) $user->data['user_style']), + 'tz' => request_var('tz', (float) $user->data['user_timezone']), + + 'dst' => request_var('dst', (bool) $user->data['user_dst']), + 'viewemail' => request_var('viewemail', (bool) $user->data['user_allow_viewemail']), + 'massemail' => request_var('massemail', (bool) $user->data['user_allow_massemail']), + 'hideonline' => request_var('hideonline', (bool) !$user->data['user_allow_viewonline']), + 'notifypm' => request_var('notifypm', (bool) $user->data['user_notify_pm']), + 'popuppm' => request_var('popuppm', (bool) $user->optionget('popuppm')), + 'allowpm' => request_var('allowpm', (bool) $user->data['user_allow_pm']), ); if ($submit) { - $var_ary = array( - 'dateformat' => (string) $config['default_dateformat'], - 'lang' => (string) $config['default_lang'], - 'tz' => (float) $config['board_timezone'], - 'style' => (int) $config['default_style'], - 'dst' => (bool) $config['board_dst'], - 'viewemail' => false, - 'massemail' => true, - 'hideonline' => false, - 'notifymethod' => 0, - 'notifypm' => true, - 'popuppm' => false, - 'allowpm' => true, - ); - - foreach ($var_ary as $var => $default) - { - $data[$var] = request_var($var, $default); - } - $data['style'] = ($config['override_user_style']) ? $config['default_style'] : $data['style']; - $var_ary = array( + $error = validate_data($data, array( 'dateformat' => array('string', false, 3, 30), 'lang' => array('match', false, '#^[a-z0-9_\-]{2,}$#i'), 'tz' => array('num', false, -14, 14), - ); - - $error = validate_data($data, $var_ary); + )); if (!sizeof($error)) { @@ -128,13 +114,13 @@ class ucp_prefs 'S_NOTIFY_EMAIL' => ($data['notifymethod'] == NOTIFY_EMAIL) ? true : false, 'S_NOTIFY_IM' => ($data['notifymethod'] == NOTIFY_IM) ? true : false, 'S_NOTIFY_BOTH' => ($data['notifymethod'] == NOTIFY_BOTH) ? true : false, - 'S_VIEW_EMAIL' => (isset($data['viewemail'])) ? $data['viewemail'] : $user->data['user_allow_viewemail'], - 'S_MASS_EMAIL' => (isset($data['massemail'])) ? $data['massemail'] : $user->data['user_allow_massemail'], - 'S_ALLOW_PM' => (isset($data['allowpm'])) ? $data['allowpm'] : $user->data['user_allow_pm'], - 'S_HIDE_ONLINE' => (isset($data['hideonline'])) ? $data['hideonline'] : !$user->data['user_allow_viewonline'], - 'S_NOTIFY_PM' => (isset($data['notifypm'])) ? $data['notifypm'] : $user->data['user_notify_pm'], - 'S_POPUP_PM' => (isset($data['popuppm'])) ? $data['popuppm'] : $user->optionget('popuppm'), - 'S_DST' => (isset($data['dst'])) ? $data['dst'] : $user->data['user_dst'], + 'S_VIEW_EMAIL' => $data['viewemail'], + 'S_MASS_EMAIL' => $data['massemail'], + 'S_ALLOW_PM' => $data['allowpm'], + 'S_HIDE_ONLINE' => $data['hideonline'], + 'S_NOTIFY_PM' => $data['notifypm'], + 'S_POPUP_PM' => $data['popuppm'], + 'S_DST' => $data['dst'], 'DATE_FORMAT' => $data['dateformat'], 'S_DATEFORMAT_OPTIONS' => $dateformat_options, @@ -161,32 +147,23 @@ class ucp_prefs 'post_sk' => (!empty($user->data['user_post_sortby_type'])) ? $user->data['user_post_sortby_type'] : 't', 'post_sd' => (!empty($user->data['user_post_sortby_dir'])) ? $user->data['user_post_sortby_dir'] : 'a', 'post_st' => (!empty($user->data['user_post_show_days'])) ? $user->data['user_post_show_days'] : 0, + + 'images' => request_var('images', (bool) $user->optionget('viewimg')), + 'flash' => request_var('flash', (bool) $user->optionget('viewflash')), + 'smilies' => request_var('smilies', (bool) $user->optionget('viewsmilies')), + 'sigs' => request_var('sigs', (bool) $user->optionget('viewsigs')), + 'avatars' => request_var('avatars', (bool) $user->optionget('viewavatars')), + 'wordcensor' => request_var('wordcensor', (bool) $user->optionget('viewcensors')), ); if ($submit) { - $var_ary = array_merge($data, array( - 'images' => true, - 'flash' => false, - 'smilies' => true, - 'sigs' => true, - 'avatars' => true, - 'wordcensor'=> false, - )); - - foreach ($var_ary as $var => $default) - { - $data[$var] = request_var($var, $default); - } - - $var_ary = array( + $error = validate_data($data, array( 'topic_sk' => array('string', false, 1, 1), 'topic_sd' => array('string', false, 1, 1), 'post_sk' => array('string', false, 1, 1), 'post_sd' => array('string', false, 1, 1), - ); - - $error = validate_data($data, $var_ary); + )); if (!sizeof($error)) { @@ -271,12 +248,12 @@ class ucp_prefs $template->assign_vars(array( 'ERROR' => (sizeof($error)) ? implode('<br />', $error) : '', - 'S_IMAGES' => (isset($data['images'])) ? $data['images'] : $user->optionget('viewimg'), - 'S_FLASH' => (isset($data['flash'])) ? $data['flash'] : $user->optionget('viewflash'), - 'S_SMILIES' => (isset($data['smilies'])) ? $data['smilies'] : $user->optionget('viewsmilies'), - 'S_SIGS' => (isset($data['sigs'])) ? $data['sigs'] : $user->optionget('viewsigs'), - 'S_AVATARS' => (isset($data['avatars'])) ? $data['avatars'] : $user->optionget('viewavatars'), - 'S_DISABLE_CENSORS' => (isset($data['wordcensor'])) ? $data['wordcensor'] : $user->optionget('viewcensors'), + 'S_IMAGES' => $data['images'], + 'S_FLASH' => $data['flash'], + 'S_SMILIES' => $data['smilies'], + 'S_SIGS' => $data['sigs'], + 'S_AVATARS' => $data['avatars'], + 'S_DISABLE_CENSORS' => $data['wordcensor'], 'S_CHANGE_CENSORS' => ($auth->acl_get('u_chgcensors')) ? true : false, @@ -293,21 +270,14 @@ class ucp_prefs case 'post': $data = array( - 'bbcode' => $user->optionget('bbcode'), - 'smilies' => $user->optionget('smilies'), - 'sig' => $user->optionget('attachsig'), - 'notify' => $user->data['user_notify'], + 'bbcode' => request_var('bbcode', $user->optionget('bbcode')), + 'smilies' => request_var('smilies', $user->optionget('smilies')), + 'sig' => request_var('sig', $user->optionget('attachsig')), + 'notify' => request_var('notify', $user->data['user_notify']), ); if ($submit) { - $var_ary = $data; - - foreach ($var_ary as $var => $default) - { - $data[$var] = request_var($var, $default); - } - $user->optionset('bbcode', $data['bbcode']); $user->optionset('smilies', $data['smilies']); $user->optionset('attachsig', $data['sig']); diff --git a/phpBB/includes/ucp/ucp_profile.php b/phpBB/includes/ucp/ucp_profile.php index 61e1aefcec..7aab239f39 100644 --- a/phpBB/includes/ucp/ucp_profile.php +++ b/phpBB/includes/ucp/ucp_profile.php @@ -34,23 +34,18 @@ class ucp_profile case 'reg_details': $data = array( - 'username' => $user->data['username'], - 'email' => $user->data['user_email'], - 'email_confirm' => (string) '', - 'new_password' => (string) '', - 'cur_password' => (string) '', - 'password_confirm' => (string) '', + 'username' => request_var('username', $user->data['username'], true), + 'email' => request_var('email', $user->data['user_email']), + 'email_confirm' => request_var('email_confirm', ''), + 'new_password' => request_var('new_password', '', true), + 'cur_password' => request_var('cur_password', '', true), + 'password_confirm' => request_var('password_confirm', '', true), ); if ($submit) { - foreach ($data as $var => $default) - { - $data[$var] = ($var == 'username') ? request_var($var, $default, true) : request_var($var, $default); - } - // Do not check cur_password, it is the old one. - $var_ary = array( + $check_ary = array( 'new_password' => array( array('string', true, $config['min_pass_chars'], $config['max_pass_chars']), array('password')), @@ -63,13 +58,13 @@ class ucp_profile if ($auth->acl_get('u_chgname') && $config['allow_namechange']) { - $var_ary['username'] = array( + $check_ary['username'] = array( array('string', false, $config['min_name_chars'], $config['max_name_chars']), array('username', $data['username']), ); } - $error = validate_data($data, $var_ary); + $error = validate_data($data, $check_ary); if ($auth->acl_get('u_chgpasswd') && $data['new_password'] && $data['password_confirm'] != $data['new_password']) { @@ -249,15 +244,15 @@ class ucp_profile $cp_data = $cp_error = array(); $data = array( - 'icq' => (string) $user->data['user_icq'], - 'aim' => (string) $user->data['user_aim'], - 'msn' => (string) $user->data['user_msnm'], - 'yim' => (string) $user->data['user_yim'], - 'jabber' => (string) $user->data['user_jabber'], - 'website' => (string) $user->data['user_website'], - 'location' => (string) $user->data['user_from'], - 'occupation' => (string) $user->data['user_occ'], - 'interests' => (string) $user->data['user_interests'], + 'icq' => request_var('icq', $user->data['user_icq']), + 'aim' => request_var('aim', $user->data['user_aim']), + 'msn' => request_var('msn', $user->data['user_msnm']), + 'yim' => request_var('yim', $user->data['user_yim']), + 'jabber' => request_var('jabber', $user->data['user_jabber']), + 'website' => request_var('website', $user->data['user_website']), + 'location' => request_var('location', $user->data['user_from'], true), + 'occupation' => request_var('occupation', $user->data['user_occ'], true), + 'interests' => request_var('interests', $user->data['user_interests']), 'bday_day' => 0, 'bday_month' => 0, 'bday_year' => 0, @@ -268,14 +263,13 @@ class ucp_profile list($data['bday_day'], $data['bday_month'], $data['bday_year']) = explode('-', $user->data['user_birthday']); } + $data['bday_day'] = request_var('bday_day', $data['bday_day']); + $data['bday_month'] = request_var('bday_month', $data['bday_month']); + $data['bday_year'] = request_var('bday_year', $data['bday_year']); + if ($submit) { - foreach ($data as $var => $default) - { - $data[$var] = (in_array($var, array('location', 'occupation', 'interests'))) ? request_var($var, $default, true) : request_var($var, $default); - } - - $var_ary = array( + $error = validate_data($data, array( 'icq' => array( array('string', true, 3, 15), array('match', true, '#^[0-9]+$#i')), @@ -294,9 +288,7 @@ class ucp_profile 'bday_day' => array('num', true, 1, 31), 'bday_month' => array('num', true, 1, 12), 'bday_year' => array('num', true, 1901, gmdate('Y', time())), - ); - - $error = validate_data($data, $var_ary); + )); // validate custom profile fields $cp->submit_cp_field('profile', $user->get_iso_lang_id(), $cp_data, $cp_error); @@ -510,26 +502,19 @@ class ucp_profile if ($submit) { - $var_ary = array( - 'uploadurl' => (string) '', - 'remotelink' => (string) '', - 'width' => (string) '', - 'height' => (string) '', + $data = array( + 'uploadurl' => request_var('uploadurl', ''), + 'remotelink' => request_var('remotelink', ''), + 'width' => request_var('width', ''), + 'height' => request_var('height', ''), ); - foreach ($var_ary as $var => $default) - { - $data[$var] = request_var($var, $default); - } - - $var_ary = array( + $error = validate_data($data, array( 'uploadurl' => array('string', true, 5, 255), 'remotelink' => array('string', true, 5, 255), 'width' => array('string', true, 1, 3), 'height' => array('string', true, 1, 3), - ); - - $error = validate_data($data, $var_ary); + )); if (!sizeof($error)) { diff --git a/phpBB/includes/ucp/ucp_register.php b/phpBB/includes/ucp/ucp_register.php index 9db221520f..897a24fdc9 100644 --- a/phpBB/includes/ucp/ucp_register.php +++ b/phpBB/includes/ucp/ucp_register.php @@ -59,7 +59,7 @@ class ucp_register $cp = new custom_profile(); - $error = $data = $cp_data = $cp_error = array(); + $error = $cp_data = $cp_error = array(); // if (!$agreed) @@ -110,36 +110,22 @@ class ucp_register $timezone = $config['board_timezone']; } - $var_ary = array( - 'username' => (string) '', - 'password_confirm' => (string) '', - 'new_password' => (string) '', - 'cur_password' => (string) '', - 'email' => (string) '', - 'email_confirm' => (string) '', - 'confirm_code' => (string) '', - 'lang' => (string) $user->lang_name, - 'tz' => (float) $timezone, + $data = array( + 'username' => request_var('username', '', true), + 'password_confirm' => request_var('password_confirm', '', true), + 'new_password' => request_var('new_password', '', true), + 'cur_password' => request_var('cur_password', '', true), + 'email' => request_var('email', ''), + 'email_confirm' => request_var('email_confirm', ''), + 'confirm_code' => request_var('confirm_code', ''), + 'lang' => request_var('lang', $user->lang_name), + 'tz' => request_var('tz', (float) $timezone), ); - // If we change the language inline, we do not want to display errors, but pre-fill already filled out values - if ($change_lang) - { - foreach ($var_ary as $var => $default) - { - $data[$var] = ($var == 'username') ? request_var($var, $default, true) : request_var($var, $default); - } - } - // Check and initialize some variables if needed if ($submit) { - foreach ($var_ary as $var => $default) - { - $data[$var] = ($var == 'username') ? request_var($var, $default, true) : request_var($var, $default); - } - - $var_ary = array( + $error = validate_data($data, array( 'username' => array( array('string', false, $config['min_name_chars'], $config['max_name_chars']), array('username')), @@ -154,9 +140,7 @@ class ucp_register 'confirm_code' => array('string', !$config['enable_confirm'], 5, 8), 'tz' => array('num', false, -14, 14), 'lang' => array('match', false, '#^[a-z_\-]{2,}$#i'), - ); - - $error = validate_data($data, $var_ary); + )); // Replace "error" strings with their real, localised form $error = preg_replace('#^([A-Z_]+)$#e', "(!empty(\$user->lang['\\1'])) ? \$user->lang['\\1'] : '\\1'", $error); @@ -481,9 +465,6 @@ class ucp_register $user_char_ary = array('.*' => 'USERNAME_CHARS_ANY', '[\w]+' => 'USERNAME_ALPHA_ONLY', '[\w_\+\. \-\[\]]+' => 'USERNAME_ALPHA_SPACERS'); $pass_char_ary = array('.*' => 'PASS_TYPE_ANY', '[a-zA-Z]' => 'PASS_TYPE_CASE', '[a-zA-Z0-9]' => 'PASS_TYPE_ALPHA', '[a-zA-Z\W]' => 'PASS_TYPE_SYMBOL'); - $data['lang'] = (isset($data['lang'])) ? $data['lang'] : $config['default_lang']; - $data['tz'] = (isset($data['tz'])) ? $data['tz'] : $timezone; - // $template->assign_vars(array( 'ERROR' => (sizeof($error)) ? implode('<br />', $error) : '', |