Quantcast
Channel: Developer to developer
Viewing all 9076 articles
Browse latest View live

Issue when using 'PropertyDictionaryMultiple' as a backing type for a block in Commerce

$
0
0

Hi,

I have created a Block which I am using on a Commerce Product Node and am running into issues when adding a property and setting the backing type to be 'PropertyDictionaryMultiple'.  The editor is not rendering correctly, I am just seeing a text input, rather than a collection of check boxes.

When I move the same property down to the Product, it is rendered as expected.

Example below

[BackingType(typeof(PropertyDictionaryMultiple))]
[Display(Name = "Connectors2", Order = 7)]
[CultureSpecific]
public virtual PropertyList<string> Connectors2 { get; set; }

I am using Commerce '13.6.0'.

Looking at other posts it seems that this was reported and fixed in commerce 12.

Thanks


Trigger scheduled job on all servers in DXC

$
0
0

I am working on a site where we have a scheduled job that generates a static 500 error page and saves it to the site root. In DXC, when we have multiple web servers, this job will only run on the specific server that the admin user has logged into, so it only generates the 500 error page on one of the servers. Our only options are to update all servers at the moment is to try to log in to each server by trial and error (opening a private window and checking the id in the ARRAffinity cookie) or to wait for the job to run on schedule.

does anyone know if there is a way to get a scheduled job to run on all servers in the dxc environment?

Thanks

Sam

Episerver forms event handler client side or server side

Be able to filter out stopwords for all search not only MoreLike

$
0
0

I was struggeling with the search returning to much result when users wrote for example Episerver and SharePoint since 98% of the result was on the word "and".

After contact with support I learned that Episerver has choose to disable the elastic search feature stopwords (https://www.elastic.co/guide/en/elasticsearch/guide/current/stopwords.html) by default so all words are included in the index.

There exist a stopword function in the framework (http://world.episerver.com/documentation/Class-library/?documentId=find/8/7C04D56A) but that one can only be used for MoreLikeThis-query and I would like to be able to do that for all kinds of query, both unified one and typed one.

Expired pages are still appearing in the search bar at the front end

$
0
0

Expired pages are still appearing in the search bar at the front end

TinyMCE code plugin: Is it possible to display the special characters as characters and not the entity number when viewing source code?

$
0
0

Hi,

When we upgraded to EPi11 from EPi10 the source code view using the "code" plugin started to display html entity number instead of the actual characters for special characters. Is it possible to have the source code view display the characters again and not the html entity number? 

/Tony

Extend EPiServer.SpecializedProperties.LinkItem or EPiServer.Url

$
0
0

We would like to add a LinkItem property to one of our models, but it is not currently mapped to a PropertyDefinitionType. The EPiServer.Url class comes close but is missing some of the properties on a LinkItem. LinkItemCollection is available, but is a collection and we would like to reference a single item. Please either add the "Link name/text" and "Open in" properties to the Url class or add a PropertyDefinitionType for the LinkItem block so it can be referenced directly as a model property.

Updating Episerver to latest version - Backend UI issue

$
0
0

Hi team,

When episerver is updated (including CMS,Commerce,Find) to the latest version with all the dependencies , the backend theme has been changed.

The package EPiServer.CMS.UI is updated to 11.21.5v, but when find is opened in the backend it is redirected to the old UI theme.Please help me with this issue.

Thanks in Advance.


Updating Episerver to latest version - Backend UI issue

$
0
0

Hi team,

When episerver is updated (including CMS,Commerce,Find) to the latest version with all the dependencies , the backend theme has been changed.

The package EPiServer.CMS.UI is updated to 11.21.5v, but when find is opened in the backend it is redirected to the old UI theme.Please help me with this issue.

Thanks in Advance.

Visited Page Picker in Visitor Groups Broken After Upgrade To CMS - 11.12.0

$
0
0

We have upgraded and the Visitor Groups Visited Page picker is now broken.

The dialog to select the page works but when clicking on a page it opens a new window with the same picker which goes on forever every time you pick it.

I can't see this as a reported issue

Make LinkItem a valid property type

$
0
0

LinkItemCollection is great but if you only want one link it would be nice to be able to create a LinkItem property.

How to remove Commerce ContentTypes from CMS database

$
0
0

Hello

I have a solution where Commerce were installed but never used and now we have removed it.

The problem is that now in the set access rights page in Admin we get this message:

Could not create instance of content type "SalesCampaignFolder" since it has an invalid .NET class associated: EPiServer.Commerce.Marketing.SalesCampaignFolder, EPiServer.Business.Commerce, Version=12.17.0.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7

And if I try to delete that type in admin I get this message

The content type could not be deleted since it is in use.
SysCampaignRoot

Are there any way to fix this without doing it directly in the database?

Removing Commerce ContentTypes from CMS database

$
0
0

Hello,

I'm trying to made edits to my Set Access Rights settings but I run into the error

Could not create instance of content type "SalesCampaignFolder" since it has an invalid .NET class associated: EPiServer.Commerce.Marketing.SalesCampaignFolder, EPiServer.Business.Commerce, Version=13.3.1.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7

And when I try to delete the content type I recieve the message

The content type could not be deleted since it is in use.

SysCampaignRoot

Is there a way to fix this?

Find UI not working with CMS.UI refresh

$
0
0

I've tried to install the latest EPI Commerce / CMS and Find packages. However I run into the issue that the EPI Find Admin screens in the back-end are not working anymore after the UI refresh. It throws several Dojo JavaScript errors. Is this 1. a known issue and if so 2. when is a new version expected with support for the refreshed UI?

Exact versions used of packages (related to UI):

  • Commerce.UI: 13.7.0
  • CMS.UI: 11.21.5
  • Find: 13.2.3
  • Find.CMS: 13.2.3
  • Find.Commerce: 11.1.1

Federated Security and Commerce Manager

$
0
0

We're trying to implement a mixed mode authemtication scenario where CMS Editors/Admins login using Azure AD, but Commerce Customers log in using the Commerce database.

Our Startup.cs for the EPiServer CMS is as follows:

{
  public class Startup
  {
    private const string LogoutUrl = "/util/logout.aspx";
    public void Configuration(IAppBuilder app)
    {
      app.AddCmsAspNetIdentity<SiteUser>(new ApplicationOptions
      {
      });
      //// This will configure cookie authentication at the following urls.
      //// In those pages you are responsible for authentication and calling the OwinContext.Authentication.SignIn method to properly sign in the user
      //// and OwinContext.Authentication.SignOut to logout a user
      app.UseCookieAuthentication(new CookieAuthenticationOptions
      {
        AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
        LoginPath = new PathString("/login"),
        LogoutPath = new PathString("/logout"),
        Provider = new CookieAuthenticationProvider
        {
          // Enables the application to validate the security stamp when the user logs in.
          // This is a security feature which is used when you change a password or add an external login to your account.  
          OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager<SiteUser>, SiteUser>(
                                                                                                                     validateInterval: TimeSpan.FromMinutes(30),
                                                                                                                     regenerateIdentity: (manager, user) => manager.GenerateUserIdentityAsync(user)),
          OnApplyRedirect = context => context.Response.Redirect(context.RedirectUri),
          OnResponseSignOut = context => context.Response.Redirect(UrlResolver.Current.GetUrl(ContentReference.StartPage))
        }
      });
      // Enable cookie authentication, used to store the claims between requests 
      app.SetDefaultSignInAsAuthenticationType(
         WsFederationAuthenticationDefaults.AuthenticationType);
      app.UseCookieAuthentication(new CookieAuthenticationOptions
      {
        AuthenticationType = WsFederationAuthenticationDefaults.AuthenticationType
      });
      // Enable federated authentication 
      app.UseWsFederationAuthentication(new WsFederationAuthenticationOptions
      {
        // Trusted URL to federation server meta data 
        MetadataAddress = ConfigurationManager.AppSettings["MetadataAddress"],
        // Value of Wtreal must *exactly* match what is configured in the federation server 
        Wtrealm = ConfigurationManager.AppSettings["Wtrealm"],
        Notifications = new WsFederationAuthenticationNotifications
        {
          RedirectToIdentityProvider = ctx =>
          {
            // To avoid a redirect loop to the federation server send 403 when user is authenticated but does not have access 
            if (ctx.OwinContext.Response.StatusCode == 401&& ctx.OwinContext.Authentication.User.Identity.IsAuthenticated)
            {
              ctx.OwinContext.Response.StatusCode = 403;
              ctx.HandleResponse();
            }
            return Task.FromResult(0);
          },
          SecurityTokenValidated = async ctx =>
          {
            // Ignore scheme/host name in redirect Uri to make sure a redirect to HTTPS does not redirect back to HTTP 
            var redirectUri = new Uri(
                ctx.AuthenticationTicket.Properties.RedirectUri,
                UriKind.RelativeOrAbsolute);
            if (redirectUri.IsAbsoluteUri)
            {
              ctx.AuthenticationTicket.Properties.RedirectUri = redirectUri.PathAndQuery;
            }
            // Create claims for roles
            await ServiceLocator.Current.GetInstance<AzureGraphService>()
               .CreateRoleClaimsAsync(ctx.AuthenticationTicket.Identity);
            try
            {
              // Sync user and add the roles to EPiServer in the background 
              await ServiceLocator.Current.GetInstance<ISynchronizingUserService>()
                 .SynchronizeAsync(ctx.AuthenticationTicket.Identity);
            }
            catch (Exception ex)
            {
              throw new Exception("Name Claim Type: "
                           + ctx.AuthenticationTicket.Identity.NameClaimType,
                            ex);
            }
          }
        }
      });
      // Add stage marker to make sure WsFederation runs on Authenticate (before URL Authorization and virtual roles) 
      app.UseStageMarker(PipelineStage.Authenticate);
      // Remap logout to a federated logout 
      app.Map(
          LogoutUrl,
          map =>
          {
            map.Run(ctx =>
                  {
                    ctx.Authentication.SignOut();
                    return Task.FromResult(0);
                  });
          });
      // Tell antiforgery to use the name claim 
      AntiForgeryConfig.UniqueClaimTypeIdentifier = ClaimTypes.NameIdentifier;
    }
  }
}

In the CMS site's web.config, we've set the authentication mode to "none" and disabled the membership and rolemanager settings.

This works fine when browsing to /episerver - the user is redirected to the authenticaiton provider and once logged in successfully is redirected to the episerver back-end.

Similarly, if a customer logs in to the site at the /Login page, they are prompted for their username and password and can log in OK.

However, when I click the Commerce Manager link in the back-end, I'm prompted to log in using the standard Commerce Admin login page even though my user is a member of the virtual role Commerce Admins - is this correct?

I assume that for Commerce Customers to log in, the Commerce Manager site needs to retain the SQL Server membership and role provider settings, but is it possible to disable authentication for the Commerce Manager site so we don't need to log in to the Commerce Manager back-end?

If so, do I need to provide the same/similar Startup.cs for the Commerce Manager site?

There seems to be some interaction between the MediaChase assemblies and the login porcess that I need to override, but it's not clear what...


Episerver Core - PropertyList class - update issue

$
0
0

On updating Episerver core to the latest version v11.13.0.0, the ParseToObject method in the PropertyList<T> class is removed. Kindly suggest an alternate for this method.

Thanks in advance.

public class PropertyListBase<T> : PropertyList<T>
{
public PropertyListBase()
{
objectSerializer = this.objectSerializerFactory.Service.GetSerializer("application/json");
}

private Injected<ObjectSerializerFactory> objectSerializerFactory;
private IObjectSerializer objectSerializer;

protected override T ParseItem(string value)
{
return objectSerializer.Deserialize<T>(value);
}

public override PropertyData ParseToObject(string value)
{
ParseToSelf(value);
return this;
}
}

The model item passed into the dictionary but requires different model.

$
0
0

I am running into this on alot of projects and still haven't found why or what to do to fix it.

Whenver i use a block controller for my block, and pass a view model of the block that contains lets say a content area on the block.  When i go to my view and do a property for on the cotnent area that is on the block, it tries to pass the view model @model MyBlockViewModel  in as the property instead of the contentarea on MyBlockViewModel.  Why would the propertyfor or displayfor try to render my actual "Model" instead of the property contentarea on the model  PropertyFor(x=>x.CurrentBlock.ContentArea).  I am baffled.

Repair database? missing stored procedures etc.

$
0
0

Hi,

somehow our database in production is missing several stored procedures regarding Activity Log and some columns in tblActivityLog. No idea how that happened, no one has changed anything... :)

Is there a way to recreate these things without loosing data?

We are on Episerver CMS 10.10.4

Thanks in advance!

Animated Gif does not work in Global view

$
0
0

I am using a content editor where i inserted gif image in my content. Animated gif works well when in editor mode but when content goes to Glocal mode(Published mode), animatino does not work. I use TinyMce editor V1.

Any help?

Menu items disappear in the new UI

$
0
0

We are having problem with the new UI and when having a lot of different items in our custom menu. I replicated it so you can see (so, this not how our looks just for you to see what is happening) in the image below. As you can see part of Visitor Groups is gone and if there were any items on the right of it, they would not be possible to select.

Are there any way to fix so it can be scrollable or simular?

Viewing all 9076 articles
Browse latest View live