public void SetGoal(string currentItemId, string linkedId, string goalId) { if (string.IsNullOrEmpty(currentItemId) || string.IsNullOrEmpty(linkedId) || string.IsNullOrEmpty(goalId)) { return; } Database db = Sitecore.Context.Database; if (db == null || db.Name.ToLower() == "core") { db = Sitecore.Context.ContentDatabase; } if (db == null) { return; } Item currentItem = SitecoreItemFinder.GetItem(db, currentItemId); Item linkedItem = SitecoreItemFinder.GetItem(db, linkedId); Item goalItem = SitecoreItemFinder.GetItem(db, goalId); if (currentItem.IsNull() || linkedItem.IsNull() || goalItem.IsNull()) { return; } PageStatisticsContext pageStatistics = new PageStatisticsContext(); pageStatistics.SetGoalMet(currentItem, linkedItem, goalItem, Tracker.CurrentVisit.VisitId, Tracker.CurrentVisit.VisitorId); }
/// <summary> /// Takes a variation code from the database and returns the proper variation item name from sitecore /// </summary> /// <param name="code"></param> /// <returns></returns> private string GetVariationName(string code) { if (string.IsNullOrEmpty(code)) { return("Default"); } if (TestComponentItem.IsNull()) { return(string.Empty); } List <Item> variationItems = SitecoreItemFinder.GetSubItemsOfTemplate(TestComponentItem, Sitecore.SharedSource.Analytics.CustomItems.Testing.MultivariateTestValueItem.TemplateId, true); if (variationItems == null || variationItems.Count == 0) { return(string.Empty); } code = code.Substring(3, 1); int codeValue = 0; int.TryParse(code, out codeValue); if (variationItems[codeValue] == null) { return(string.Empty); } Sitecore.SharedSource.Analytics.CustomItems.Testing.MultivariateTestValueItem variationItem = variationItems[codeValue]; return(variationItem.TestValue.Name.Text); }
/// <summary> /// Checks to see if the passed in item guid represents a valid item. /// </summary> /// <param name = "db">The db.</param> /// <param name = "mediaItemGuid">The media item GUID.</param> /// <param name = "checkForFile">if set to <c>true</c> [check for file].</param> /// <param name = "applicationBasePath">The application base path.</param> /// <returns></returns> public static bool MediaItemIsValid(Database db, string mediaItemGuid, bool checkForFile, string applicationBasePath) { if (string.IsNullOrEmpty(mediaItemGuid) || db == null) { return(false); } MediaItem mediaItem = SitecoreItemFinder.GetItem(db, mediaItemGuid); if (mediaItem == null) { return(false); } if (checkForFile) { string filePath = applicationBasePath + mediaItem.FilePath.Replace("/", "\\"); if (!File.Exists(filePath)) { return(false); } } return(true); }