• How to customize the Web Calendar Style Sheet

    DescriptionThis KB aticle shows how to customize the Web calendar style sheet ( WebCalendar.css ), located in \siteroot\workarea\WebCalendar\View . ResolutionImportant! Files stored in the siteroot\workarea folder are overwritten (or deleted) when you upgrade. To avoid problems, back up the edited style sheet file to a folder outside the siteroot\workarea folder.Modify the .RadScheduler classes to change the Web calendar's style. See the following examples.Color CSS Style Chang...

  • How to customize the Web Calendar Tooltip

    DescriptionIf you hover over a calendar event, a tooltip automatically shows its details. This KB article shows how to modify the tooltip display. ResolutionThe telerik:RadToolTip properties govern how the tool tip displays.You can apply many changes to a tool tip. The following example makes the tool tip appear without delay and use fade-in animation, using the EktronTech starter site.Before you begin, add a calendar event and observe the default behavior. Then, open the EktronTech w...

  • How To Detect Server Type Setting in CMS via Ektron API

    Description This article demonstrates the Ektron code that can be used to detect the Server Type setting in the CMS>Settings>Setup>General Tab as seen in the image below.   Resolution The code below will retrieve the setting indicated above. protected void Page_Load(object sender, EventArgs e)    {        Ektron.Cms.CommonApi capi = new Ektron.Cms.CommonApi();        if (!capi.EkSiteRef.RequestInformation.IsStaging)        {            Response.Write("This is a production sit...

  • How To Display An Image By Ektron Content ID

    Description This article describes how a developer can read content from Ektron CMS and load the image content to a page. Resolution The most direct way to manage an image as content and display it on a page would be to: Upload image as a document in DMS. Use an out of the box server control as shown here.    For sample on ContentBlock you can go here which uses id.  If you are using DMS and want some code there are some bits below you may be able to extract with the help of...

  • How to enable Dynamic Debug Compilation and modify Custom Errors mode in the web.config

    DescriptionThis KB article shows how to enable Dynamic Debug Compilation, and modify Custom Errors mode in the web.config.Resolution1. In your site's web.config , locate the following key: <compilation debug=" "  targetFramework=" "> 2. Set the value to true to insert debugging information into the compiled page; the exact wording of the key might vary depending on the version of .NET installed. 3. To deactivate or modify Custom Errors mode, find the following key in your site's web.config f...

  • How To Export XLIFF For Translation via API

    Description This articles contains some information and a sample code for a means to export xliff for translation via Ektron API. Resolution There are some legacy APIs that the workarea uses and can be seen here in the SO post.  As the post suggests this functionality is mostly reserved for internal operation and CMS business logic so it is not entirely supported to be used in this context.  If the solution below cannot be leveraged successfully in your implementation please c...

  • How to Leverage Browser Caching with Ektron

    Description This article demonstrates a sample of how to leverage .NET browser caching in the context of Ektron. Resolution The sample below is an implementation of an HTTP module which adds an expiry at the end of every request. using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Ektron.Com.HttpModules { /// /// Summary description for ExpiresHeaders /// public class ExpiresHeaders : IHttpModule { priv...

  • How to Locate the Templated Server Controls so you can modify them

    DescriptionIf you want to change the styling to fit your site architecture and design, you can modify the templated server controls. ResolutionThe Workarea\FrameworkUI\Templates\ folder contains the templated server controls that you can modify to change the output design on a template. Related LinksTemplated Server Controls

  • How to Modify Ektron JS/CSS QueryString for DB Lookup

    Description This article describes how to affect a change or reset orders to the registered css and js files by the Ektron API. An example of a load url with query string is seen below. Javascripthttp://<mysite.com>/WorkArea/FrameworkUI/js/ektron.javascript.ashx?id=-569449246+-1939951303+-1080527330+-1687560804+-1793043690+-1189826226+-1660625290+825525963+-1823320997+-1377047657+-687746024+-2119520991+609931254+1200042959+986521766+-1799470022+-733086262+586636464+-729461897+-473082503...

  • How to retrieve Smart Form fields programmatically

    DescriptionThis KB article shows how to retrieve a particular Smart Form field programmatically. ResolutionThe following documentation shows information about the methods. The code samples work for various described fields.XmlDocument Classhttp://msdn.microsoft.com/en-us/library/system.xml.xmldocument%28v=vs.110%29.aspxXmlDocument.LoadXml Methodhttp://msdn.microsoft.com/en-us/library/system.xml.xmldocument.loadxml%28v=vs.110%29.aspxLoad the xml and use the next method: SelectSingleNode...

  • How to trigger Solr Crawls via the Ektron API

    Description This article discusses the Ektron internal API that can trigger a crawl.  Some developers are looking for a programmatic way to do this so this article demonstrates this.  However this API is not intended as a publicly supported framework API as found here.  Resolution There are two method for incremental crawl and full crawl. These methods are used by the workarea under node status. These are not documented nor tested in a manner for active use, meaning not fully ...

  • How To Update Within A CMS Strategy

    Description This article describes the special consideration for calling an Update method within the context of a strategy event. If an update is called in the context of the strategy it would then fire the strategy event again and cause an infinite loop and fail. Resolution Here are the steps needed to avoid the inifinite loop and implement an update in a CMS strategy. At the beginning of the strategy, check whether request.items contains a key for content item id and lang T...

  • How to use SvcConfigEditor

    DescriptionThe Microsoft SvcConfigEditor is a tool in the Microsoft Software Developer's Kit (SDK) that can be used to dig deeper into trace logs that were formed by this tool.  ResolutionTo view the tool, see /Tools/SvcConfigEditor .

  • How To Work With SEO Server Control

    This article demonstrates the code needed to work with the SEO Server Control.   Resolution Normally one would use the Visual Studio toolbox to drop an Ektron Server control.  However, with the SEO Server control it has to be done manually.  The code example is below for your convenience.  The SEO Product Documentation can be found here.  <%@ Page Language="C#" %> <%@ Register Assembly="Ektron.Cms.Controls" Namespace="Ektron.Cms.Controls" TagPrefix="CMS" %> <%@ Register Sr...

  • How To: Rebuild Asset Library Tool

    Description If you see discrepancies among the Assets, PrivateAssets, and AssetLibrary folders on the server, synchronize the folders using the Rebuild Asset Library utility. Resolution The Rebuild Asset Library utility rebuilds the Asset Library using the data found in the Assets and PrivateAssets folders. It also can rebuild the Assets and PrivateAssets folders based on the AssetLibrary. Before you run the Rebuild Asset Library utility, you should take the following precaution...

  • Html Forms Not Text Wrapped in Mail on iPhones

    Description This article describes an issue where html forms and surveys are not text wrapped when being mailed and viewed in mail on iPhones. Resolution This issue has been identified in EKTR-370 and is resolved in a cumulative update for 9.1SP3 and 9.2 SP2.  However this fix will be to the following.In siteroot\Workarea\controls\forms\template_buildDataValue.xslt by replacing line 49 <pre style="white-space:pre;word-wrap:break-word;"><xsl:copy-of select="./node()"/></pre...

  • Incorrect syntax near ')' when using the framework UserGroupManager Get List

    You may experience an issue when using the framework UserGroupManager GetList to retrieve a list of user groups under the following circumstances: Converting a 3-tier environment to a 2-tier Using a 3rd party authentication program, such as OAuth Using MVC The problem is that the SQL query is not constructing the CMS group or Membership Group information. For example: Normal SQL query Select count(*) FROM UserGroupList  WHERE ((membership_group = @p0 ) ) SQL query when error occur...

  • Issue with MessageUtilities object when using the code samples on the Developer Reference Guide

    DescriptionOne may notice when using the code samples from Ektron Developer Reference Guide, if copied verbatim, that the code will error on a MessageUtilities object.  For example, the error may be thrown on the following lines:  uxPageMultiView.SetActiveView(uxViewMessage); MessageUtilities.UpdateMessage(uxMessage, ex.Message, Message.DisplayModes.Error); uxPageMultiView.SetActiveView(uxViewMessage); This was specifically developed for the OnTrek starter site as a way to update messages t...

  • Logon API with Active Directory Explained

    DescriptionThis article explains the basic logon APIs in relation to Active Directory. ResolutionThe snippets are simple examples of the different Ektron APIs. The comments provide additional information on the parameters and any special considerations.Here are some of the parameters explained: // Domain Controller Connection String Format string domain = "DC=mysite,DC=com"; // this is an example "mysite.com" // Parameters: // username: The system us...

  • Menu Permission Limitation

    DescriptionDevelopers may have a need to limit the items rendered by permission in the Ektron menu system on the front end. There are some limitations because the menu system does not have a baked in permission model.  Additional custom code would neeed to be developed for this implementation requirement.ResolutionMenuView Control only currently respects privacy settings. The MenuView and the MenuManager framework API which it is built on do not have permission models integrated at this time...

  • Metadata Server Control Does Not Return Expected Tags

    Some customers have incorrectly configured the Metadata Server Control and will not see expected tags returned. This article will describe the steps needed to avoid these configuration missteps.  Resolution If the content is a Pagelayout content item then use the pageid as the parameter as seen below when being dynamic. <html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <CMS:MetaData ID="MetaData1" runat="server" DynamicParameter="pageid" /></he...

  • MVC vs Three-Tier: Discussion of Architecture and Ektron Relevancy

    DescriptionThree-Tier and MVC implementations are becoming more popular for Ektron customers. Many developers hear MVC and Three-Tier used interchangeably and may assume they are the same thing.  This is not the case, and the information below should assist in evaluating those options more clearly.This article points out differences between MVC and Three-Tier architecture, and how they relate to current Ektron product. ResolutionBefore describing the differences and Ektron relevancy, it...

  • Need to automate clearing the cache after syncing

    Description Sometimes you need to have your caching cleared after a sync, for example from staging to production, so changes will be displayed immediately without waiting for the cache to expire.  Normally you would need to wait for it to expire, or for the app pool to get reset, etc, but you can configure Ektron to do this automatically for you. Resolution To automate tasks like this after an eSync event is run, you would setup an eSync Strategy, as documented here: http://do...

  • Page Layout not updating when Master Layout is updated

    DescriptionTwo types of page layouts can be created in the Workarea.  Page Layout - a PageBuilder template initially created by a developer, purpose is for design and placement of functionality on the Web page Master Layout - special type of PageBuilder template that includes specific dropzone called a Master Zone.   Content authors can drag and drop a widget into other dropzones, but cannot edit the specified Master Zone.    ResolutionWhen a master layout is published, you can use it li...

  • Request Manager not Returning Page for Manual Alias

    When applying a manual alias, such as "default.aspx," the requestManager class does not return the target page. The page does return if using any other URL that maps to a manual alias assigned to that content item. var target = requestManager.GetTarget(context.Request.Url, requestInformation.ContentLanguage); Cause Another template named "default.aspx." Because the template already has this name, the alias cannot redirect to the correct page. Resolution ...

  • RequireJS Error: Mismatched Anonymous Define() Module

    Description Templates with scripts that leverage RequireJS code and were working prior to upgrading to 9.0 now show an error in the console of MISMATCHED ANONYMOUS DEFINE() MODULES when the UXToolbar is enabled.    Resolution Fixes to the product were made to workaround these changes in version 9.1 SP2 CU16.  Site UpdatesEktron Version 9.10 SP2, Site Update 18 (EkSiteUpdate910184SP2018) Update 16 (February 5, 2016) 23639 - If you used a JQuery version that did not match the ver...

  • Sample eSync Strategy Implementation

    Description This is an article that provides a sample and steps for implementing an eSync strategy. Resolution This sample was built and tested in 9.1SP3.  This is the complete project. If the version you are on is not on 9.1SP3 you will have to clear references and point to your version and rebuild. The steps to use are the following. Stop EWS Place the objectfactory.config and the EktronEsync.dll in the EWS folder in the Ektron base install folder (not the site folder). Res...

  • Samples on how to leverage Ektron Templated Server Controls programmatically

    DescriptionThis article is to provide you with various samples on how to leverage the Ektron Templated Server Controls programmatically. Below is a list of Ektron's Templated Server controls and what they are used for. AccessPoint-Access Workarea content directly from the Web site. ContentView-Displays a single piece or multiple pieces of content retrieved from the Ektron CMS. FormControl-Displays a single HTML Form retrieved from the Ektron CMS. FormControl loads and executes required form...

  • Setting Breakpoints in Ektron

    DescriptionBreakpoint options when setting column visibility (e.g) within page builder are not reflective of the breakpoint settings defined in the work area.  This article will review how to edit breakpoints in both places to keep them synchronized going forward.Ektron has 2 different ways to define breakpoints. One set of breakpoints is defined in the Workarea at Settings > Configuration > Mobile Settings > View All Device Groups. Another set of breakpoints is defined in siteroot/Pagebuild...

  • Site not working after 9.10 SP1 upgrade when default container set to cache

    After you upgrade to Ektron 9.10 SP1, a site may not work and an error occurs similar to the following when you have the default container option set to Cache:  The type name or alias Cache.IExactTargetManager could not be resolved. Please check your configuration file and verify this type name. Cause is set in the site web.config . Resolution Note that this has now been addressed in 9.1 SP1 CU 2 and higher. 1. Open ektron.cms.framework.unity.con...