aboutsummaryrefslogtreecommitdiffstats
path: root/profile.php
diff options
context:
space:
mode:
authorEric <eric@piwigo.org>2009-10-08 21:05:08 +0000
committerEric <eric@piwigo.org>2009-10-08 21:05:08 +0000
commit3a5c8759d18f2b693f63de416435a43cc5cadfbe (patch)
tree50d1ce04e2c12a4dc46af8e2feec248308f79d90 /profile.php
parent2afb92238db9fc6a3b478f2fb49cef8672fcb51f (diff)
[Piwigo] Bug 1079 fixed : Return to default settings in user profile page.
(I don't really enjoy the code but it's the simplest way i've found) git-svn-id: http://piwigo.org/svn/trunk@3995 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to '')
-rw-r--r--profile.php74
1 files changed, 74 insertions, 0 deletions
diff --git a/profile.php b/profile.php
index 2412f2e19..e84ace65b 100644
--- a/profile.php
+++ b/profile.php
@@ -40,6 +40,79 @@ if (!defined('PHPWG_ROOT_PATH'))
trigger_action('loc_begin_profile');
+// Reset to default (Guest) custom settings
+ if (isset($_POST['reset_to_default']))
+ {
+ global $conf;
+ // Get the Guest custom settings
+ $query = 'SELECT * FROM '.USER_INFOS_TABLE.
+ ' WHERE user_id = '.$conf['default_user_id'].';';
+
+ $result = pwg_query($query);
+
+ $cache['default_user'] = mysql_fetch_assoc($result);
+
+ $default_user = array();
+
+ foreach ($cache['default_user'] as $name => $value)
+ {
+ // If the field is true or false, the variable is transformed into a
+ // boolean value.
+ if ($value == 'true' or $value == 'false')
+ {
+ $default_user[$name] = get_boolean($value);
+ }
+ else
+ {
+ $default_user[$name] = $value;
+ }
+ }
+ // Changing $userdata array values with default ones
+ foreach ($userdata as $key => $valeur)
+ {
+ if ($key == 'nb_image_line')
+ {
+ $userdata[$key] = $default_user['nb_image_line'];
+ $_POST['nb_image_line'] = $userdata['nb_image_line'];
+ }
+ if ($key == 'nb_line_page')
+ {
+ $userdata[$key] = $default_user['nb_line_page'];
+ $_POST['nb_line_page'] = $userdata['nb_line_page'];
+ }
+ if ($key == 'maxwidth')
+ {
+ $userdata[$key] = $default_user['maxwidth'];
+ $_POST['maxwidth'] = $userdata['maxheight'];
+ }
+ if ($key == 'maxheight')
+ {
+ $userdata[$key] = $default_user['maxheight'];
+ $_POST['maxheight'] = $userdata['maxheight'];
+ }
+ if ($key == 'expand')
+ {
+ $userdata[$key] = $default_user['expand'];
+ $_POST['expand'] = $userdata['expand'];
+ }
+ if ($key == 'show_nb_comments')
+ {
+ $userdata[$key] = $default_user['show_nb_comments'];
+ $_POST['show_nb_comments'] = $userdata['show_nb_comments'];
+ }
+ if ($key == 'recent_period')
+ {
+ $userdata[$key] = $default_user['recent_period'];
+ $_POST['recent_period'] = $userdata['recent_period'];
+ }
+ if ($key == 'show_nb_hits')
+ {
+ $userdata[$key] = $default_user['show_nb_hits'];
+ $_POST['show_nb_hits'] = $userdata['show_nb_hits'];
+ }
+ }
+ }
+
save_profile_from_post($userdata, $errors);
$title= l10n('customize_page_title');
@@ -257,6 +330,7 @@ function load_profile_in_template($url_action, $url_redirect, $userdata)
}
$language_options[$language_code] = $language_name;
}
+
$template->assign('language_options', $language_options);
$special_user = in_array($userdata['id'], array($conf['guest_id'], $conf['default_user_id']));