# HG changeset patch # User Marcin Kuzminski # Date 2012-05-28 16:51:22 # Node ID ef71d7e63806a0418e923efa7a829bfc2676cb1e # Parent 90e06f53af8cc0305b275bef4187a8189ddc952c highly improved performance of my_account page by removing super heavy htmlfill call on whole page diff --git a/rhodecode/controllers/admin/settings.py b/rhodecode/controllers/admin/settings.py --- a/rhodecode/controllers/admin/settings.py +++ b/rhodecode/controllers/admin/settings.py @@ -338,12 +338,14 @@ class SettingsController(BaseController) return redirect(url('users')) defaults = c.user.get_dict() - return htmlfill.render( - render('admin/users/user_edit_my_account.html'), + + c.form = htmlfill.render( + render('admin/users/user_edit_my_account_form.html'), defaults=defaults, encoding="UTF-8", force_defaults=False ) + return render('admin/users/user_edit_my_account.html') def my_account_update(self): """PUT /_admin/my_account_update: Update an existing item""" @@ -373,12 +375,13 @@ class SettingsController(BaseController) .all() c.user_repos = ScmModel().get_repos(all_repos) - return htmlfill.render( - render('admin/users/user_edit_my_account.html'), + c.form = htmlfill.render( + render('admin/users/user_edit_my_account_form.html'), defaults=errors.value, errors=errors.error_dict or {}, prefix_error=False, encoding="UTF-8") + return render('admin/users/user_edit_my_account.html') except Exception: log.error(traceback.format_exc()) h.flash(_('error occurred during update of user %s') \ diff --git a/rhodecode/templates/admin/users/user_edit_my_account.html b/rhodecode/templates/admin/users/user_edit_my_account.html --- a/rhodecode/templates/admin/users/user_edit_my_account.html +++ b/rhodecode/templates/admin/users/user_edit_my_account.html @@ -21,91 +21,7 @@ ${self.breadcrumbs()} -
- ${h.form(url('admin_settings_my_account_update'),method='put')} -
- -
-
-
gravatar
-

- %if c.use_gravatar: - ${_('Change your avatar at')} gravatar.com -
${_('Using')} ${c.user.email} - %else: -
${c.user.email} - %endif -

-
-
-
-
- ${c.user.api_key} -
-
-
-
-
- -
-
- ${h.text('username',class_="medium")} -
-
- -
-
- -
-
- ${h.password('new_password',class_="medium",autocomplete="off")} -
-
- -
-
- -
-
- ${h.password('password_confirmation',class_="medium",autocomplete="off")} -
-
- -
-
- -
-
- ${h.text('name',class_="medium")} -
-
- -
-
- -
-
- ${h.text('lastname',class_="medium")} -
-
- -
-
- -
-
- ${h.text('email',class_="medium")} -
-
- -
- ${h.submit('save',_('Save'),class_="ui-button")} - ${h.reset('reset',_('Reset'),class_="ui-button")} -
-
-
- ${h.end_form()} -
+ ${c.form|n}
diff --git a/rhodecode/templates/admin/users/user_edit_my_account_form.html b/rhodecode/templates/admin/users/user_edit_my_account_form.html new file mode 100644 --- /dev/null +++ b/rhodecode/templates/admin/users/user_edit_my_account_form.html @@ -0,0 +1,85 @@ +
+ ${h.form(url('admin_settings_my_account_update'),method='put')} +
+ +
+
+
gravatar
+

+ %if c.use_gravatar: + ${_('Change your avatar at')} gravatar.com +
${_('Using')} ${c.user.email} + %else: +
${c.user.email} + %endif +

+
+
+
+
+ ${c.user.api_key} +
+
+
+
+
+ +
+
+ ${h.text('username',class_="medium")} +
+
+ +
+
+ +
+
+ ${h.password('new_password',class_="medium",autocomplete="off")} +
+
+ +
+
+ +
+
+ ${h.password('password_confirmation',class_="medium",autocomplete="off")} +
+
+ +
+
+ +
+
+ ${h.text('name',class_="medium")} +
+
+ +
+
+ +
+
+ ${h.text('lastname',class_="medium")} +
+
+ +
+
+ +
+
+ ${h.text('email',class_="medium")} +
+
+ +
+ ${h.submit('save',_('Save'),class_="ui-button")} + ${h.reset('reset',_('Reset'),class_="ui-button")} +
+
+
+ ${h.end_form()} +
\ No newline at end of file