public ActionResult GetAd(string id) { id = id.NullSafe(); JsonViewData viewData = Validate <JsonViewData>( new Validation(() => string.IsNullOrEmpty(id), "Identyfikator reklamy nie może być pusty."), new Validation(() => id.ToGuid().IsEmpty(), "Niepoprawny reklamy artykułu."), new Validation(() => !IsCurrentUserAuthenticated, "Nie jesteś zalogowany."), new Validation(() => !CurrentUser.CanModerate(), "Nie masz praw do woływania tej metody.") ); if (viewData == null) { try { IRecommendation recommendation = _recommendationRepository.FindById(id.ToGuid()); if (recommendation == null) { viewData = new JsonViewData { errorMessage = "Podana rekalama nie istnieje." }; } else { return(Json( new { id = recommendation.Id.Shrink(), recommendationLink = recommendation.RecommendationLink, recommendationTitle = recommendation.RecommendationTitle, imageLink = recommendation.ImageLink, imageTitle = recommendation.ImageTitle, startTime = recommendation.StartTime.ToString("yyyy-MM-dd"), endTime = recommendation.EndTime.ToString("yyyy-MM-dd"), position = recommendation.Position, email = recommendation.Email, notificationIsSent = recommendation.NotificationIsSent, isBanner = recommendation.IsBanner } )); } } catch (Exception e) { Log.Exception(e); viewData = new JsonViewData { errorMessage = FormatStrings.UnknownError.FormatWith("pobierania reklamy") }; } } return(Json(viewData)); }