Beispiel #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ShoppingCartItem"/> class.
        /// </summary>
        /// <param name="item">The content channel item to build from.</param>
        public ShoppingCartItem(ContentChannelItem item)
            : this()
        {
            if (item.Attributes == null)
            {
                item.LoadAttributes();
            }

            ItemId    = item.Id;
            Name      = item.Title;
            Quantity  = 1;
            Price     = item.GetAttributeValue("CubeDown.Price").AsDecimal();
            IsTaxable = item.GetAttributeValue("CubeDown.Taxable").AsBoolean(false);

            //
            // If an Account Guid was provided, convert it to an Id number.
            //
            var accountGuid = item.GetAttributeValue("CubeDown.Account").AsGuidOrNull();

            if (accountGuid.HasValue)
            {
                using (var rockContext = new RockContext())
                {
                    var account = new FinancialAccountService(rockContext).Get(accountGuid.Value);

                    AccountId = account?.Id;
                }
            }
        }
Beispiel #2
0
        private MessageArchiveItem GetArchiveObjectForMessage(ContentChannelItem message)
        {
            message.LoadAttributes(_rockContext);

            var vimeoLinks  = GetVimeoLink(message.GetAttributeValue("VideoId"));
            var messageDate = message.GetAttributeValue("Date").AsDateTime();

            return(new MessageArchiveItem()
            {
                Id = message.Id,
                Title = message.Title,
                Date = messageDate?.ToShortDateString(),
                Content = DotLiquid.StandardFilters.StripHtml(message.Content).Replace("\n\n", "\r\n\r\n"),
                Speaker = message.GetAttributeValue("Speaker"),
                SpeakerTitle = message.GetAttributeValue("SpeakerTitle"),
                VimeoLink = vimeoLinks?.Url,
                VimeoImage = vimeoLinks?.Image,
                AudioLink = GetFileUrlOrNull(message, "PodcastAudio"),
                AudioImage = GetFileUrlOrNull(message, "PodcastImage"),
                Notes = GetFileUrlOrNull(message, "MessageNotes"),
                TalkItOver = GetFileUrlOrNull(message, "TalkItOver")
            });
        }