Exemplo n.º 1
0
        public override void ExpandView(MixCmsContext _context = null, IDbContextTransaction _transaction = null)
        {
            var getMedia = MixMedias.UpdateViewModel.Repository.GetSingleModel(p => p.Id == MediaId && p.Specificulture == Specificulture
                                                                               , _context: _context, _transaction: _transaction
                                                                               );

            if (getMedia.IsSucceed)
            {
                Media = getMedia.Data;
            }
        }
Exemplo n.º 2
0
        private void ParseModelValue(JToken property, MixAttributeSetValues.ODataMobileViewModel item)
        {
            switch (item.Field.DataType)
            {
            case MixEnums.MixDataType.DateTime:
                item.DateTimeValue = property.Value <DateTime?>();
                item.StringValue   = property.Value <string>();
                break;

            case MixEnums.MixDataType.Date:
                item.DateTimeValue = property.Value <DateTime?>();
                item.StringValue   = property.Value <string>();
                break;

            case MixEnums.MixDataType.Time:
                item.DateTimeValue = property.Value <DateTime?>();
                item.StringValue   = property.Value <string>();
                break;

            case MixEnums.MixDataType.Double:
                item.DoubleValue = property.Value <double?>();
                item.StringValue = property.Value <string>();
                break;

            case MixEnums.MixDataType.Boolean:
                item.BooleanValue = property.Value <bool?>();
                item.StringValue  = property.Value <string>().ToLower();
                break;

            case MixEnums.MixDataType.Number:
                item.IntegerValue = property.Value <int?>();
                item.StringValue  = property.Value <string>();
                break;

            case MixEnums.MixDataType.Reference:
                item.StringValue = property.Value <string>();
                break;

            case MixEnums.MixDataType.Upload:
                string mediaData = property.Value <string>();
                if (mediaData.IsBase64())
                {
                    MixMedias.UpdateViewModel media = new MixMedias.UpdateViewModel()
                    {
                        Specificulture = Specificulture,
                        Status         = MixEnums.MixContentStatus.Published,
                        MediaFile      = new FileViewModel()
                        {
                            FileStream = mediaData,
                            Extension  = ".png",
                            Filename   = Guid.NewGuid().ToString(),
                            FileFolder = "Attributes"
                        }
                    };
                    var saveMedia = media.SaveModel(true);
                    if (saveMedia.IsSucceed)
                    {
                        item.StringValue = saveMedia.Data.FullPath;
                        Data[item.AttributeFieldName] = item.StringValue;
                    }
                }
                else
                {
                    item.StringValue = mediaData;
                }
                break;

            case MixEnums.MixDataType.Custom:
            case MixEnums.MixDataType.Duration:
            case MixEnums.MixDataType.PhoneNumber:
            case MixEnums.MixDataType.Text:
            case MixEnums.MixDataType.Html:
            case MixEnums.MixDataType.MultilineText:
            case MixEnums.MixDataType.EmailAddress:
            case MixEnums.MixDataType.Password:
            case MixEnums.MixDataType.Url:
            case MixEnums.MixDataType.ImageUrl:
            case MixEnums.MixDataType.CreditCard:
            case MixEnums.MixDataType.PostalCode:
            case MixEnums.MixDataType.Color:
            case MixEnums.MixDataType.Icon:
            case MixEnums.MixDataType.VideoYoutube:
            case MixEnums.MixDataType.TuiEditor:
            default:
                item.StringValue = property.Value <string>();
                break;
            }
        }