Linus Ekström
Jan 18, 2013
visibility 14144
star star star star star
(3 votes)

Resetting your EPiServer views

Note: This functionality was added to "My Settings->Display Options" in EPiServer 7.5.

In EPiServer 7 it’s possible to personalize your views quite extensively. Unfortenately, there is currently no easy way of resetting your views back to “system default”. I have created a simple self executing aspx file that clears add the personalized panels for your views (Currently this applies to the dashboard and new cms edit view). Place the code below in an empty file with an .aspx extension and browse to it to clear your settings:

<%@ Page Language="C#" AutoEventWireup="true" Inherits="System.Web.UI.Page" %>
<%@ Import Namespace="EPiServer.Shell.ViewComposition" %>
<html>
<body>
    <form id="form1" runat="server">
    <div>
        Your view settings have been cleared.
    </div>
    </form>
</body>
</html>
<script runat="server">
 
        protected override void OnInit(System.EventArgs e)
        {
            var repository = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<IPersonalizedViewSettingsRepository>();
            var settings = repository.Load(User);
 
            foreach (PersonalizedViewSettings setting in settings)
            {
                foreach(IContainer component in setting.CustomizedContainers)
                {
                    // Uncomment to delete cookies. Note that you have to add the cookie path in the code below
                    //DeleteCookiesRecursive(component);
                }
                repository.Delete(User, setting.ViewName);
                Response.Write("Deleting custom settings for view: " + setting.ViewName);
            }
        }
 
        //protected void DeleteCookiesRecursive(IComponent component)
        //{
        //    var existingCookie = Request.Cookies[component.Id.ToString()];
        //    if (existingCookie != null)
        //    {
        //        var cookie = new HttpCookie(component.Id.ToString());
        //        cookie.Expires = DateTime.Now.AddDays(-1);
        //        //TODO: If you want to clear the cookies you need to specify the correct path
        //        //We are planning to use local storage instead of cookies in the future to remove this need.
        //        cookie.Path = "/[uipath]/cms/;
        //        Response.Cookies.Add(cookie);
        //        Response.Write("Deleting cookie with id: " + component.Id);
        //    }
 
        //    IContainer container = component as IContainer;
 
        //    if (container == null)
        //    {
        //        return;
        //    }
 
        //    foreach (IComponent subComponent in container.Components)
        //    {
        //        DeleteCookiesRecursive(subComponent);
        //    }
        //}
</script>

Clear cookies

When you change the size of the components (or gadgets if you like) inside a pane we currently store these settings inside a cookie. The code above has code to remove these cookies but the path needs to match the path of the cookie to be able to remove it. This seems to be quite dynamic to I have commented out this code by default. If you want to have this feature you can uncomment this code and just set the correct path value for your site, for instance “/myuipath/cms/”.

We are planning to use local storage in the browsers to remove the need to have cookies since this add size for each request.

Jan 18, 2013

Comments

Jan 24, 2013 09:32 AM

Solved my issue with an empty dashboard.

Just adding some keywords so it will easier to get this page in the search result.

Reset dashboard
Unable to insert child in GridContainer
TypeError
Clear Dashboard
Missing gadgets in dashboard

Linus Ekström
Linus Ekström Jan 24, 2013 09:43 AM

I have added this feature to the "My Settings" screen for the next framework release of EPiServer.

Steve Celius
Steve Celius Mar 11, 2013 10:07 PM

Thanks, this really helped cleaning up my test site!

Mar 29, 2013 10:17 AM

Thanks.. started to get quite annoyed with my interface :)

Oct 21, 2013 02:56 PM

This post is from January. Is there anything like a reset button planned in an upcoming patch?

Linus Ekström
Linus Ekström Oct 22, 2013 07:28 AM

As mentioned before, this will be part of the next release that is not that far away. We will not release any more UI-add-on upgrades before that.

Nov 20, 2014 07:09 AM

We made .NET Framework update from 4.0 to 4.5 for EPiServer 7.0 (Patch 4) site because we had some annoying problems with IE11. Problems with IE11 were solved but some heavy users lost list of pages from page edit side! There were just empty grey area.
This Resetter-script solved problem. Thank you very much!

error Please login to comment.
Latest blogs
Add more scheduled job settings from the Optimizely CMS 12 admin UI -- with OptiScheduledJob.ExtraParameters

  Optimizely (EPiServer) CMS 12 ships a great scheduled-jobs framework, but it has one frustrating gap: a job has nowhere to store its own...

Binh Nguyen Thi | Jun 25, 2026

Automated Search & Navigation to Graph Migration with Claude Code

A Claude Code plugin that scans your S&N codebase, applies Graph SDK transformations, and validates the result. Install once, run one command. CMS ...

Connor Fortin | Jun 24, 2026

Migrating from Find to Graph: Lessons Learned from a Real CMS 13 Project

While migrating a search solution from Optimizely Search & Navigation (Find) to Optimizely Graph in CMS 13, I encountered several issues that were...

Binh Nguyen Thi | Jun 24, 2026

Optimizely: Upgrade Opti-ID and .NET 10 in CMS 12

Many Optimizely customers are planning their roadmap around a future migration to Optimizely CMS 13. As a result, upgrades such as Opti ID adoption...

Madhu | Jun 23, 2026 |

Understanding Optimizely Graph: Caching, Webhooks & Avoiding Stale Content (Optimizely SaaS CMS)

📌 Scope: This post covers Optimizely CMS (SaaS) only — using the official @optimizely/cms-sdk and @optimizely/cms-cli packages with Next.js 15. If...

Kiran Patil | Jun 23, 2026 |

Optimizely Content APIs: the Setup the Docs Don't Walk You Through

CMS 13 is pushing things firmly in the direction of Optimizely Graph, but plenty of teams are still running on older CMS versions, or have good...

Andre | Jun 22, 2026