Skip to content

Commit 69dc57d

Browse files
committed
Embedded object key change to _embedded_items
1 parent f7ab78d commit 69dc57d

4 files changed

Lines changed: 16 additions & 42 deletions

File tree

Contentstack.Utils/Interfaces/IEmbeddedObject.cs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,6 @@ string Uid
88
get;
99
set;
1010
}
11-
}
12-
13-
public interface IEmbeddedContentTypeUid: IEmbeddedObject
14-
{
1511
string ContentTypeUid
1612
{
1713
get;

Contentstack.Utils/Interfaces/IEntryEmbedable.cs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,7 @@ namespace Contentstack.Utils.Interfaces
55
{
66
public interface IEntryEmbedable
77
{
8-
Dictionary<string, List<IEmbeddedContentTypeUid>> embeddedEntries
9-
{
10-
get;
11-
set;
12-
}
13-
14-
Dictionary<string, List<IEmbeddedAsset>> embeddedAssets
8+
Dictionary<string, List<IEmbeddedObject>> embeddedItems
159
{
1610
get;
1711
set;

Contentstack.Utils/Models/Options.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ public virtual string RenderOption(IEmbeddedObject embeddedObject, Metadata meta
2727
string renderString = "<div><p>" + embeddedObject.Uid +"</p>";
2828
if (embeddedObject is IEmbeddedEntry) {
2929
renderString += "<p>Content type: <span>" + ((IEmbeddedEntry)embeddedObject).Title + "</span></p>";
30-
} else if (embeddedObject is IEmbeddedContentTypeUid) {
31-
renderString += "<p>Content type: <span>" + ((IEmbeddedContentTypeUid)embeddedObject).ContentTypeUid + "</span></p>";
30+
} else {
31+
renderString += "<p>Content type: <span>" + embeddedObject.ContentTypeUid + "</span></p>";
3232
}
3333
renderString = renderString + "</div>";
3434
return renderString;

Contentstack.Utils/Utils.cs

Lines changed: 13 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using HtmlAgilityPack;
44
using Contentstack.Utils.Extensions;
55
using Contentstack.Utils.Interfaces;
6+
using System;
67

78
namespace Contentstack.Utils
89
{
@@ -42,40 +43,23 @@ public static List<string> RenderContent(List<string> contents, Options options)
4243

4344
private static IEmbeddedObject findEmbeddedObject(Metadata metadata, IEntryEmbedable entryEmbedable)
4445
{
45-
switch (metadata.ItemType)
46+
47+
if (entryEmbedable.embeddedItems.Count > 0)
4648
{
47-
case Enums.EmbedItemType.Asset:
48-
if (entryEmbedable.embeddedAssets.Count > 0)
49-
{
50-
foreach (var embed in entryEmbedable.embeddedAssets)
51-
{
52-
if (embed.Value.Count > 0)
53-
{
54-
IEmbeddedAsset embeddedAsset = embed.Value.Find(asset => asset.Uid == metadata.ItemUid);
55-
if (embeddedAsset != null)
56-
{
57-
return embeddedAsset;
58-
}
59-
}
60-
}
61-
}
62-
break;
63-
case Enums.EmbedItemType.Entry:
64-
if (entryEmbedable.embeddedAssets.Count > 0)
49+
foreach (var embed in entryEmbedable.embeddedItems)
50+
{
51+
if (embed.Value.Count > 0)
6552
{
66-
foreach (var embed in entryEmbedable.embeddedEntries)
53+
IEmbeddedObject embeddedObject = embed.Value.Find(entry => {
54+
Console.WriteLine(entry);
55+
return entry.Uid == metadata.ItemUid && entry.ContentTypeUid == metadata.ContentTypeUid;
56+
});
57+
if (embeddedObject != null)
6758
{
68-
if (embed.Value.Count > 0)
69-
{
70-
IEmbeddedObject embeddedObject = embed.Value.Find(entry => entry.Uid == metadata.ItemUid);
71-
if (embeddedObject != null)
72-
{
73-
return embeddedObject;
74-
}
75-
}
59+
return embeddedObject;
7660
}
7761
}
78-
break;
62+
}
7963
}
8064
return null;
8165
}

0 commit comments

Comments
 (0)