OpenShift template “object already exists” error

I have developed an Openshift template which basically creates two objects (A cluster & a container operator).

I understand that templates run oc create under the hood. So, in case any of these two objects already exists then trying to create the objects through template would through an error. Is there any way to override this behaviour? I want my template to re-configure the object even if it exists.

Error opening a 2013 template workflow for Sharepoint Online site using designer

When I try to open one of my SPO site 2013 template based workflow in SPD, I am getting error as “Server side activities have been updated you need to restart SharePoint designer”.

I can open 2010 template workflow, error occurs only for 2013 template based workflow.

Already tried clearing cache and website data, but it didn’t helped.

Please let me know if you have any sugesstion/idea on who to fix this issue.

Thanks in advance.

loop through paragraphs ID’s in node template

In a custom twig template for content type “legal”, I’m trying to loop through a 3-field paragraph called “legal_section.” It’s referenced by my content type, using an entity reference field called “field_legal_section” – set to allow unlimited entries. For each, I want to print the paragraph id. I’m not quite sure how, in this scenario. Maybe there’s a little more involved than I thought?

I’m currently trying something like this, in the twig template:

{% if content.field_legal_section %}  {% for item in content.field_legal_section %}   id: {{ content.field_legal_section.id }}<br/>   show the 3 fields: {{ content.field_legal_section }}  {% endfor %} {% endif %} 

If relevant, the individual fields within the paragraph called legal_section are:

 field_legal_section_title  field_legal_section_subtitle  field_legal_section_body 

Import and copy paste to template table

My code works fine when I’ve written it last week and this week when I got new file and run my code, it didn’t work to copy paste to another sheet. Can someone helps me please?

Option Explicit

Sub Import_ClientRating()

'1. First Import data 1-to-1 to  Table template '2. Used Find function to find the matching header from Client Class in New Data '3. Copy and Paste the required column from New Data in Clien Class  Dim FiletoOpen As Variant Dim FileCnt As Byte Dim SelectedBook As Workbook Dim lastrow As Long, LastTemp As Long 'lasttemp is "last row for table template Const StartRowTemp As Byte = 1 Dim c As Byte 'number of columns Dim GetHeader As Range 'find  Call Entry_Point On Error GoTo Handle  'pick files to import - allow multiselect FiletoOpen = Application.GetOpenFilename _ (FileFilter:="Excel Files (*.xlsx), *.xlsx", Title:="Select Workbook to Import", MultiSelect:=True)  If IsArray(FiletoOpen) Then     For FileCnt = 1 To UBound(FiletoOpen)     Set SelectedBook = Workbooks.Open(Filename:=FiletoOpen(FileCnt))     ShDataN.Cells.Clear     SelectedBook.Worksheets("Client").Cells.Copy     ShDataN.Range("A1").PasteSpecial xlPasteValuesAndNumberFormats     SelectedBook.Close      'locate last empty row in Client Class Table     lastrow = ShTrial.Cells(Rows.Count, 1).End(xlUp).Row + 1      'locate last row in the new data     LastTemp = ShDataN.Cells(Rows.Count, 1).End(xlUp).Row      'use find function to match headers, since the template could have a different order of columns than the Client Class Table      c = 1     Do While ShTrial.Cells(1, c) <> ""      Set GetHeader = ShDataN.Rows(StartRowTemp).Find _     (What:=ShTrial.Cells(1, c).Value, LookIn:=xlValues, MatchCase:=False, lookat:=xlWhole)     If Not GetHeader Is Nothing Then         ShDataN.Range(ShDataN.Cells(StartRowTemp + 1, GetHeader.Column), ShDataN.Cells(LastTemp, GetHeader.Column)).Copy         ShTrial.Cells(lastrow, c).PasteSpecial      End If 'get Header     c = c + 1    Loop      Next FileCnt     MsgBox "Data imported sucessfully", vbInformation, "General Information"  End If 'isArray ShTrial.Select Range("A1").Select  Call Exit_Point  Exit Sub 

Handle: If Err.Number = 9 Then Else MsgBox “An error has occured” End If

Call Exit_Point

End Sub

Cleanest way of making templated friend function with required template parameters visible to ADL

Given the following example:

template<typename T> struct foo {     template<typename O>     friend foo<O> cast(foo const &) { return {}; }     friend foo bar(foo const &) { return {}; } };  int main(int, char**) {     foo<int> a;     auto b = bar(a);     auto c = cast<double>(a);     return 0; } 

cast is not visible for argument dependent lookup (ADL), while bar is. This is due to the fact that cast is a templated friend function with a required template parameter. What is the cleanest way of making cast visible to ADL?

The shortest is probably

template<typename O> void cast(); 

which can be enhanced by adding delete to make it clear that it cannot be called at compile time instead of at link time:

template<typename O> void cast() = delete; 

Furthermore an arbitrary argument could be added as well, to make the expected number of parameters visible, such as

template<typename O> void cast(void *) = delete; 

However the type here does not match the actual final type. In this simple case, I could use

template<typename O, typename T> void cast(foo<T> const &) = delete; 

But if I later add another class, e.g., qux, which also provides a friend cast this might actually be more misleading. A template-template parameter, while possible seems overly complex.

Which version would you prefer, and why, or do you have better suggestions?

The actual code has a specialized cast function (with a longer, more descriptive name).

Strange error in Display Template after removing other web part

I’m facing a strange error when a user edits a web part page. There are a couple of web parts on this page, like content editor, a search content web part (for displaying some user information from UPS), a content query web part (displaying some news entries in a nicer way), a custom calendar web part (made with spfx) and another search content web part with my display template:

<html xmlns:mso="urn:schemas-microsoft-com:office:office" xmlns:msdt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882">      <head>     <title>Customer Zwei Zeilen</title>     <!--[if gte mso 9]>         <xml>             <mso:CustomDocumentProperties>                 <mso:TemplateHidden msdt:dt="string">0</mso:TemplateHidden>                 <mso:ManagedPropertyMapping msdt:dt="string">                     'Link URL'{Link-URL}:'Path','Line 1'{Zeile 1}:'Title','Line 2'{Zeile 2}:'','FileExtension','SecondaryFileExtension'                 </mso:ManagedPropertyMapping>                 <mso:MasterPageDescription msdt:dt="string">                     Diese Elementanzeigevorlage zeigt ein kleines Miniaturansichtssymbol neben einem Link des Elementtitels an mit einer zusätzlichen Zeile, die für eine benutzerdefinierte, verwaltete Eigenschaft zur Verfügung steht.                 </mso:MasterPageDescription>                 <mso:ContentTypeId msdt:dt="string">                     0x0101002039C03B61C64EC4A04F5361F385106603                 </mso:ContentTypeId>                 <mso:TargetControlType msdt:dt="string">                     ;#Content Web Parts;#<                         /mso:TargetControlType>                 <mso:HtmlDesignAssociated msdt:dt="string">                     1                 </mso:HtmlDesignAssociated>             </mso:CustomDocumentProperties>         </xml>     <![endif]-->     </head>     <body>         <!--             Warning: Do not try to add HTML to this section. Only the contents of the first <div>             inside the <body> tag will be used while executing Display Template code. Any HTML that             you add to this section will NOT become part of your Display Template.         -->         <script>             $  includeLanguageScript(this.url, "~sitecollection/_catalogs/masterpage/Display Templates/Language Files/{Locale}/CustomStrings.js");         </script>         <!--             Use the div below to author your Display Template. Here are some things to keep in mind:             * Surround any JavaScript logic as shown below using a "pound underscore" (#_ ... _#) token             inside a comment.              * Use the values assigned to your variables using an "underscore pound equals"             (_#= ... =#_) token.         -->         <div id="TwoLines">         <!--#_             var encodedId = $  htmlEncode(ctx.ClientControl.get_nextUniqueId() + "_2lines_");             var linkURL = $  getItemValue(ctx, "Link URL");             linkURL.overrideValueRenderer($  urlHtmlEncodeValueObject);             var iconURL = Srch.ContentBySearch.getIconSourceFromItem(ctx.CurrentItem);             var fields = iconURL.split('/');             var leer = fields[0];             var layout = fields[1];             var hive = fields[2];             var images = fields[3];             var fileIcon = fields[4];             switch(fileIcon){                 case "icpdf.png": fileIconUrl="/sites/intranet/_catalogs/masterpage/customer/Images/file-pdf.png";                 console.log("PDF")                 break;                 case "icdocx.png": fileIconUrl="/sites/intranet/_catalogs/masterpage/customer/Images/File-word.png";                 console.log("Word")                 break;                 default: fileIconUrl="/sites/intranet/_catalogs/masterpage/customer/Images/file.png";                 console.log("Default")             };             var line1 = $  getItemValue(ctx, "Line 1");             var line2 = $  getItemValue(ctx, "Line 2");             line1.overrideValueRenderer($  contentLineText);             line2.overrideValueRenderer($  contentLineText);              var containerId = encodedId + "container";             var pictureLinkId = encodedId + "pictureLink";             var pictureId = encodedId + "picture";             var dataContainerId = encodedId + "dataContainer";             var line1LinkId = encodedId + "line1Link";             var line1Id = encodedId + "line1";             var line2Id = encodedId + "line2";         _#-->             <div class="Customer-Item" id="_#= containerId =#_" data-displaytemplate="Item2Lines">                 <a class="cbs-ItemLink">                     <img class="Customer-Thumbnail" src="_#= $  urlHtmlEncodeString(fileIconUrl) =#_"/>                 </a>                 <div class="cbs-Detail">                     <a class="cbs-Line1Link ms-noWrap ms-displayBlock" href="_#= linkURL =#_">                         _#= line1 =#_                     </a>                 </div>             </div>         </div>     </body> </html> 

All together work like a charm as long as the content query web part for the news is present. Maybe one of you can give me another pair of eyes and point to where I miss something. Deleting/Adding any other web part works totally fine, but not deleting this one. Here’s the error message (one per item which should be shown):

ScriptResource.axd?d=FFxeseaSoWXo9gkSVNkf0f5LtyKoLH2QHaiGhJtbyDsJ3ttCypJjBfBiFg9MElUG1wQdtNwKNSgQw-XbxDVjmEiskDvqsdzF7-wskDQtc64AAkXFgi56fKBgECfv_g8Q_CdKYxOYObvClk-1EumeDKfKQOnYUlwwqimM3_HgPeB_TfyyOLOzQn5_nXwRWKEO0&t=ffffffff999c3159:5 [400][ctl00_ctl48_g_27d8fed2_e5ec_48f1_b2f0_8e47179b8996_csr:Srch.Result][ProcessCategoryMessages][ Message:  Level: 2  Code: -1  Type: RuntimeException  Details: Cannot read property 'getIconSourceFromItem' of undefined (CoreRender: ~sitecollection/_catalogs/masterpage/Display Templates/Content Web Parts/SVT_Item_TwoLines.js)  Correlation ID:   Stack Trace: ] 

I’m adding here the Display Templates for the news web part:

Slideshow Handler:

<html xmlns:mso="urn:schemas-microsoft-com:office:office" xmlns:msdt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882">  <head> <title>Customer-Slider</title>  <!--[if gte mso 9]><xml> <mso:CustomDocumentProperties> <mso:TemplateHidden msdt:dt="string">0</mso:TemplateHidden> <mso:MasterPageDescription msdt:dt="string">Diese Steuerelement-Anzeigevorlage zeigt eine Bildschirmpräsentation mit Bildern an, die alle 5 Sekunden einen Satz von Elementen durchläuft. Es wird immer ein Element gleichzeitig angezeigt, wobei der Titel des Elements das Bild überlagert.</mso:MasterPageDescription> <mso:ContentTypeId msdt:dt="string">0x0101002039C03B61C64EC4A04F5361F385106601</mso:ContentTypeId> <mso:TargetControlType msdt:dt="string">;#Content Web Parts;#</mso:TargetControlType> <mso:HtmlDesignAssociated msdt:dt="string">1</mso:HtmlDesignAssociated> </mso:CustomDocumentProperties> </xml><![endif]--> </head>  <body>      <!--             Warning: Do not try to add HTML to this section. Only the contents of the first <div>             inside the <body> tag will be used while executing Display Template code. Any HTML that             you add to this section will NOT become part of your Display Template.     -->     <script>         $  includeLanguageScript(this.url, "~sitecollection/_catalogs/masterpage/Display Templates/Language Files/{Locale}/CustomStrings.js");     </script>      <!--         Use the div below to author your Display Template. Here are some things to keep in mind:         * Surround any JavaScript logic as shown below using a "pound underscore" (#_ ... _#) token         inside a comment.          * Use the values assigned to your variables using an "underscore pound equals"         (_#= ... =#_) token.     -->      <div id="Customer-Slideshow"> <!--#_  var $  noResults = Srch.ContentBySearch.getControlTemplateEncodedNoResultsMessage(ctx.ClientControl);  if (!$  isNull(ctx.ClientControl) &&     !$  isNull(ctx.ClientControl.shouldRenderControl) &&     !ctx.ClientControl.shouldRenderControl()) {     return ""; } ctx.ListDataJSONGroupsKey = "ResultTables";  window.cbs_Slideshow_init = function(controlDiv){     if(!controlDiv.timer){         cbs_Slideshow_setSlideStatus(controlDiv.children[0].children[0], controlDiv.children[2].children[0], true);         var timer = document.createAttribute("timer");         controlDiv.setAttributeNode(timer);          cbs_addMouseHandlers(controlDiv);          var numResults = ctx.ClientControl.get_numberOfItems();         if($  isNull(window._slideShowCount))         {             window._slideShowCount = {};         }         window._slideShowCount[controlDiv.id] = numResults;          var startIndex = cbs_getStyle(controlDiv, 'direction') != 'rtl' ? 0 : numResults - 1;         cbs_Slideshow_changeSlide(controlDiv, startIndex);         cbs_Slideshow_timer(controlDiv, startIndex);     } };  window.cbs_addMouseHandlers = function(slideshow) {     if($  isNull(slideshow) || $  isNull(slideshow.children) || slideshow.children.length == 0 ||          $  isNull(slideshow.children[0].children) || slideshow.children[0].children.length == 0){         return;     }     var slideItems = slideshow.children[0].children;     for(var slideNum = 0; slideNum < slideItems.length; slideNum++){          (function()         {             var currentSlideNumber = slideNum;             var slideItem = slideItems[currentSlideNumber];             cbs_addEventListener(slideItem, 'mouseover', function(){ clearTimeout(slideshow.timer); });             cbs_addEventListener(slideItem, 'mouseout', function(){ cbs_Slideshow_changeSlide(slideshow, currentSlideNumber); });          })();     } }  window.cbs_Slideshow_timer = function(controlDiv, currentIdx){     var TimerDelayMilliSeconds = 5000;     if($  isNull(controlDiv) || controlDiv.children.length == 0){         setTimeout(function(){cbs_Slideshow_timer(controlDiv, currentIdx); controlDiv = null; currentIdx = null;}, TimerDelayMilliSeconds);         return;     }      currentIdx += cbs_getStyle(controlDiv, 'direction') != 'rtl' ? 1 : -1;     var numResults = window._slideShowCount[controlDiv.id];     if(currentIdx >= numResults){         currentIdx = 0;     }     else if(currentIdx < 0)     {         currentIdx = numResults - 1;     }     clearTimeout(controlDiv.timer);     controlDiv.timer = setTimeout(function(){cbs_Slideshow_changeSlide(controlDiv, currentIdx); controlDiv = null; currentIdx = null;}, TimerDelayMilliSeconds); };  window.cbs_Slideshow_onclick = function(target, idx){     var slideshow = target.parentNode.parentNode;      clearTimeout(slideshow.timer);     cbs_Slideshow_changeSlide(slideshow, idx); };  window.cbs_Slideshow_changeSlide = function(slideshow, slideIndex){     if($  isNull(slideshow)){return;}     if($  isNull(slideshow.children) || slideshow.children.length == 0){cbs_Slideshow_timer(slideshow, slideIndex); return;}      var slideItems = slideshow.children[0].children;     var buttonItems = slideshow.children[2].children;     var numResults = slideItems.length;     for(var k = 0; k < numResults; k++){         if(k == slideIndex) {continue;}         var buttonElement = k < buttonItems.length ? buttonItems[k] : null;         cbs_Slideshow_setSlideStatus(slideItems[k], buttonElement, false);     }     if(slideIndex >= 0 && slideIndex < numResults){         var buttonElement = slideIndex < buttonItems.length ? buttonItems[slideIndex] : null;         cbs_Slideshow_setSlideStatus(slideItems[slideIndex], buttonElement, true);     }      cbs_Slideshow_timer(slideshow, slideIndex);  };  window.cbs_Slideshow_setSlideStatus = function(slideElement, buttonElement, isActive){     if(!$  isNull(slideElement)){         slideElement.style.display = isActive ? "block" : "none";     }     if(!$  isNull(buttonElement)){         var activeButtonClassName = "Customer-SlideshowPagingLink-Active";         var inactiveButtonClassName = "Customer-SlideshowPagingLink-Inactive";         var oldClassName = isActive ? inactiveButtonClassName : activeButtonClassName;         var newClassName = isActive ? activeButtonClassName : inactiveButtonClassName;         buttonElement.className = buttonElement.className.replace(oldClassName, newClassName);     } }  window.cbs_getStyle = function(element,propertyName) {     var styleValue = null;     if($  isNull(element)){return styleValue;}      if (element.currentStyle){         styleValue = element.currentStyle[propertyName];     }     else if (window.getComputedStyle){         styleValue = document.defaultView.getComputedStyle(element,null).getPropertyValue(propertyName);     }     return styleValue; }  window.cbs_addEventListener = function(element, eventName, func) {     if(!$  isNull(element) && !$  isEmptyString(eventName) && !$  isNull(func))     {         if(!$  isNull(element.addEventListener))         {             element.addEventListener(eventName, func);         }         else if (!$  isNull(element.attachEvent))         {             eventName = eventName.indexOf("on") == 0 ? eventName : "on" + eventName;             element.attachEvent(eventName, func);         }     } }  var encodedId = $  htmlEncode(ctx.ClientControl.get_nextUniqueId() + "_slideShow_"); var itemsContainerId = encodedId + "container"; var pagingOverlayId = encodedId + "pagingOverlay"; var pagingBarId = encodedId + "pagingBar"; var pagingMoreId = encodedId + "pagingMore";  ctx.OnPostRender = [];  ctx.OnPostRender.push(function(){     var slideshows = document.querySelectorAll(".Customer-Slideshow");      for(var i = 0; i < slideshows.length; i++){         cbs_Slideshow_init(slideshows[i]);     } }); _#-->         <div class="Customer-Slideshow" id="_#= encodedId =#_" data-displaytemplate="ControlSlideshow">             <div class="Customer-SlideshowItems" id="_#= itemsContainerId =#_">                 _#= ctx.RenderGroups(ctx) =#_             </div> <!--#_ if (ctx.ClientControl.get_shouldShowNoResultMessage()){ _#-->             <div class="Customer-SlideShow-noResults">_#= $  noResults =#_</div> <!--#_ } _#-->             <div class="Customer-SlideshowPagingBarOverlay" id="_#= pagingOverlayId =#_"></div>             <div class="Customer-SlideshowPagingBar" id="_#= pagingBarId =#_"> <!--#_ var MaxNumOfResults = 12; var numResults = ctx.ClientControl.get_numberOfItems(); var numResultsToShowPaging = Math.min(numResults, MaxNumOfResults); for(var i = 0; i < numResultsToShowPaging; i++){     var anchorId = encodedId + "pagingControl" + i; _#-->                 <a class="Customer-SlideshowPagingLink-Inactive" href="javascript:{}" onclick="cbs_Slideshow_onclick(this, _#= i =#_);" id="_#= anchorId =#_">                     <span>&nbsp;</span>                 </a> <!--#_ } if(numResults > numResultsToShowPaging){ _#-->                 <div class="Customer-SlideshowPaging-More" id="_#= pagingMoreId =#_">                     <span>&hellip;</span>                 </div> <!--#_ } _#-->             </div>         </div>     </div> </body> </html> 

Items:

<html xmlns:mso="urn:schemas-microsoft-com:office:office" xmlns:msdt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882">  <head> <title>Customer News</title>     <!--[if gte mso 9]><xml>     <mso:CustomDocumentProperties>     <mso:TemplateHidden msdt:dt="string">0</mso:TemplateHidden>     <mso:ManagedPropertyMapping msdt:dt="string">'Picture URL'{Bild-URL}:'PublishingImage;PictureURL;PictureThumbnailURL','Link URL'{Link-URL}:'Path','Line 1'{Titel}:'Title','Line 2'{Text}:'Body;Description','Line 3'{Autor}:'CreatedBy;Author','Line 4'{Erstellt}:'Created'</mso:ManagedPropertyMapping>     <mso:MasterPageDescription msdt:dt="string">Diese Elementanzeigevorlage zeigt ein Bild des Elements mit der Aufloesung 150 x 150 auf der linken Seite an. Rechts sind Titel, Erstellungsdatum und Anrisstext zu finden.</mso:MasterPageDescription>     <mso:ContentTypeId msdt:dt="string">0x0101002039C03B61C64EC4A04F5361F385106603</mso:ContentTypeId>     <mso:TargetControlType msdt:dt="string">;#Content Web Parts;#</mso:TargetControlType>     <mso:HtmlDesignAssociated msdt:dt="string">1</mso:HtmlDesignAssociated>     </mso:CustomDocumentProperties>     </xml><![endif]--> </head>  <body>     <!--         Warning: Do not try to add HTML to this section. Only the contents of the first <div>         inside the <body> tag will be used while executing Display Template code. Any HTML that         you add to this section will NOT become part of your Display Template.     -->     <script>         $  includeLanguageScript(this.url, "~sitecollection/_catalogs/masterpage/Display Templates/Language Files/{Locale}/CustomStrings.js");     </script>     <!--         Use the div below to author your Display Template. Here are some things to keep in mind:         * Surround any JavaScript logic as shown below using a "pound underscore" (#_ ... _#) token         inside a comment.         * Use the values assigned to your variables using an "underscore pound equals"         (_#= ... =#_) token.     -->     <div id="Customer_Item_Picture3Lines">         <!--#_         var encodedId = $  htmlEncode(ctx.ClientControl.get_nextUniqueId() + "_picture3Lines_");         var linkURL = $  getItemValue(ctx, "Link URL");         linkURL.overrideValueRenderer($  urlHtmlEncodeValueObject);         var line1 = $  getItemValue(ctx, "Line 1");         var line2 = $  getItemValue(ctx, "Line 2");         var line3 = $  getItemValue(ctx, "Line 3");         var line4 = $  getItemValue(ctx, "Line 4");         var pictureURL = $  getItemValue(ctx, "Picture URL");         var pictureId = encodedId + "picture";         var pictureMarkup = Srch.ContentBySearch.getPictureMarkup(pictureURL, 150, 150, ctx.CurrentItem, "cbs-picture3LinesImg", line1, pictureId);         line1.overrideValueRenderer($  contentLineText);         line2.overrideValueRenderer($  contentLineText);         line3.overrideValueRenderer($  contentLineText);         line4.overrideValueRenderer($  contentLineText);         var containerId = encodedId + "container";         var pictureLinkId = encodedId + "pictureLink";         var pictureContainerId = encodedId + "pictureContainer";         var dataContainerId = encodedId + "dataContainer";         var line1LinkId = encodedId + "line1Link";         var line1Id = encodedId + "line1";         var line2Id = encodedId + "line2";         var line3Id = encodedId + "line3";         var line4Id = encodedId + "line4";         var dataDisplayTemplateTitle = "ItemPicture3Lines";         _#-->          <div class="container-fluid" id="Customer-Slider-Container">             <div class="row">                 <div class="col-3" id="Customer-Slider-Left">                     <div class="Customer-Slider-Image">                         <a class="Customer-Slider_Image-Link" href="_#= linkURL =#_" title="_#= $  htmlEncode(line1.defaultValueRenderer(line1)) =#_" id="_#= pictureLinkId =#_">                             _#= pictureMarkup =#_                         </a>                     </div>                 </div>                 <div class="col-9" id="Customer-Slider-Right">                     <div class="row">                         <div class="col-12" id="Customer-Slider-Title">                             <a href="_#= linkURL =#_">                                 <h2 class="Customer-Slider-Title-Link" id="_#= line1Id =#_" title="_#= $  htmlEncode(line1.defaultValueRenderer(line1)) =#_">                                     _#= line1 =#_                                 </h2>                             </a>                         </div>                         <div class="col-12" id="Customer-Slider-Date">                             _#= line4 =#_                         </div>                         <div class="col-12" id="Customer-Slider-Body">                             _#= STSHtmlDecode(line2.value) =#_                         </div>                     </div>                 </div>             </div>         </div>     </div> </body> </html> 

Angular 7 add array values in @Component template

I’m trying to dynamically add components to my @Component template however it’s getting populated but not displaying?

I have a component..

@Component({ selector: 'map-toolbar-action', //templateUrl: './map-toolbar-  action.component.html', template:'<p style="position: absolute;z-  index:5000">' + mapValues.buttonString +  '</p>', styleUrls: ['./map-toolbar-  action.component.scss'] }) export class MapToolbarActionComponent  implements OnInit {  constructor() { mapValues.buttonString =  mapValues.arrayToString(mapValues.buttons); }  ngOnInit() { }  } 

I have a singleton with these elements…

public static buttons = ['<tool-map-zoom>  </tool-map-zoom>', '<tool-map-undo></tool-map-undo>', '<tool-import></tool-import>', '<tool-map-download></tool-map-download>', '<tool-map-print></tool-map-print>']  public static buttonString = "";      public static      arrayToString(arrayItems:Array<string>)      {     let val:string = "";     arrayItems.forEach(element => {       val = val + element;     });     return val;     } 

I was hoping that this would populate

'<tool-map-zoom></tool-map-zoom>', '<tool-map-undo></tool-map-undo>', '<tool-import></tool-import>', '<tool-map-download></tool-map-download>', '<tool-map-print></tool-map-print>' 

and that would in-turn add the components to the template but it’s not working like that…how can I accomplish this?

Any help is greatly appreciated!!

How to apply a Google Docs template styles to an existing doc

I have a Google Document that was created using default styles. Our company has since created some Google Docs templates to use for styling. I’d like to apply the template’s styling to this existing document, which is quite long, without having to copy/paste each heading and body text element into a new document. Is there a way to do this?

I found this Google documentation on how to create a new document from a template, but I couldn’t find anything about how to apply template styling to a pre-existing document.

Remote server not using the client syslog template

I have following as a template to be used by the remote server:

$  template tpl1,"%timegenerated:::date-rfc3339% %HOSTNAME% %msg%\n" $  ActionForwardDefaultTemplate tpl1 

When i look at my own machine’s syslog, the logs use this format perfectly. The targeted remote server does show messages received in the log but they don’t show them using the template i send them in. I do the following on client side:

1xx.xx.xx.xxx:514;tpl1 

Am i doing something wrong or is there something i need to do on the server side as well.