public object GetItemPublishedHistory(/*JObject IDs*/) { //dynamic iDs = tcmIDs; //var itemIDs = iDs.IDs; GetPublishedInfo publishedInfos = new GetPublishedInfo(); return(publishedInfos.GetPublishedHistory(Client.GetListPublishInfo("tcm:14-495-64"))); }
public List <Publications> GetPublicationList() { GetPublishedInfo getPublishedInfo = new GetPublishedInfo(); XmlDocument publicationList = new XmlDocument(); PublicationsFilterData filter = new PublicationsFilterData(); XElement publications = Client.GetSystemWideListXml(filter); if (publications == null) { throw new ArgumentNullException(nameof(publications)); } List <Publications> publicationsList = getPublishedInfo.Publications(publicationList, publications); return(publicationsList); }
public object GetSummaryPanelData(TcmIds tcmIDs) { try { GetPublishedInfo getFinalPublishedInfo = new GetPublishedInfo(); var multipleListItems = new List <ListItems>(); XmlDocument doc = new XmlDocument(); foreach (var tcmId in tcmIDs.IDs) { var listXml = Client.GetListXml(tcmId.ToString(), new RepositoryItemsFilterData { ItemTypes = new[] { ItemType.Component, ItemType.ComponentTemplate, ItemType.Category, ItemType.Page }, Recursive = true, BaseColumns = ListBaseColumns.Extended }); if (listXml == null) { throw new ArgumentNullException(nameof(listXml)); } doc.LoadXml(listXml.ToString()); multipleListItems.Add(TransformObjectAndXml.Deserialize <ListItems>(doc)); } List <Item> finalList = new List <Item>(); foreach (var publishedItem in getFinalPublishedInfo.FilterIsPublishedItem(multipleListItems)) { foreach (var item in publishedItem) { var publishInfo = Client.GetListPublishInfo(item.ID); foreach (var item1 in getFinalPublishedInfo.ReturnFinalList(publishInfo, item)) { finalList.Add(item1); } } } IEnumerable <Analytics> analytics = finalList.GroupBy(x => new { x.PublicationTarget, x.Type }).Select(g => new Analytics { Count = g.Count(), PublicationTarget = g.Key.PublicationTarget, ItemType = g.Key.Type, }); var tfilter = new TargetTypesFilterData(); List <ItemSummary> itemssummary = getFinalPublishedInfo.SummaryPanelData(analytics, Client.GetSystemWideList(tfilter)); return(itemssummary); } catch (Exception ex) { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message)); } }
public object GetAllPublishedItems(TcmIds tcmIDs) { GetPublishedInfo getFinalPublishedInfo = new GetPublishedInfo(); var multipleListItems = new List <ListItems>(); XmlDocument doc = new XmlDocument(); try { foreach (var tcmId in tcmIDs.IDs) { TCM.TcmUri iTcmUri = new TCM.TcmUri(tcmId.ToString()); XElement listXml = null; switch (iTcmUri.ItemType.ToString()) { case CONSTANTS.PUBLICATION: listXml = Client.GetListXml(tcmId.ToString(), new RepositoryItemsFilterData { ItemTypes = new[] { ItemType.Component, ItemType.ComponentTemplate, ItemType.Category, ItemType.Page }, Recursive = true, BaseColumns = ListBaseColumns.Extended }); break; case CONSTANTS.FOLDER: listXml = Client.GetListXml(tcmId.ToString(), new OrganizationalItemItemsFilterData { ItemTypes = new[] { ItemType.Component, ItemType.ComponentTemplate }, Recursive = true, BaseColumns = ListBaseColumns.Extended }); break; case CONSTANTS.STRUCTUREGROUP: listXml = Client.GetListXml(tcmId.ToString(), new OrganizationalItemItemsFilterData() { ItemTypes = new[] { ItemType.Page }, Recursive = true, BaseColumns = ListBaseColumns.Extended }); break; case CONSTANTS.CATEGORY: listXml = Client.GetListXml(tcmId.ToString(), new RepositoryItemsFilterData { ItemTypes = new[] { ItemType.Category }, Recursive = true, BaseColumns = ListBaseColumns.Extended }); break; default: throw new ArgumentOutOfRangeException(); } if (listXml == null) { throw new ArgumentNullException(nameof(listXml)); } doc.LoadXml(listXml.ToString()); multipleListItems.Add(TransformObjectAndXml.Deserialize <ListItems>(doc)); } return(getFinalPublishedInfo.FilterIsPublishedItem(multipleListItems).SelectMany(publishedItem => publishedItem, (publishedItem, item) => new { publishedItem, item }).Select(@t => new { @t, publishInfo = Client.GetListPublishInfo(@t.item.ID) }).SelectMany(@t => getFinalPublishedInfo.ReturnFinalList(@t.publishInfo, @[email protected])).ToList()); } catch (Exception ex) { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message)); } }