Пример #1
0
        public ScavengerHuntCellViewModel(ScavengerHuntView item)
        {
            HuntItem = item;

            IsCaptured          = item.IsCaptured;
            CapturedImage       = item.CaptureImage;
            HuntItemDescription = item.ItemDescription;
        }
Пример #2
0
        public ObservableCollection <ScavengerHuntView> GetScavengerHuntItems()
        {
            var db = _couchbaseService.Db;

            var shList = db.GetExistingView("scavenger-hunt-list");
            var q      = shList.CreateQuery();
            var query  = q.ToLiveQuery();

            query.GroupLevel = 1;

            Func <QueryRow, ScavengerHuntView> transform = row => {
                var k   = row.Key as JArray;
                var key = k.ToObject <string[]> ();

                var v               = row.Value as object[];
                var itemId          = key[0].ToString();
                var itemDescription = v[1].ToString();
                var order           = (int)((long)v[2]);
                var captureDocId    = (v[3] == null) ? null : v[3].ToString();

                var itemDoc   = _couchbaseService.Db.GetExistingDocument(itemId);
                var itemImage = GetBytes(itemDoc.Properties["image"]);

                byte[] captureImage = null;

                if (String.IsNullOrWhiteSpace(captureDocId) == false)
                {
                    Document captureDoc = _couchbaseService.Db.GetExistingDocument(captureDocId);

                    if (captureDoc != null)
                    {
                        var imageData = captureDoc.Properties["image"];
                        if (imageData != null)
                        {
                            captureImage = GetBytes(imageData);
                        }
                    }
                }

                var item = new ScavengerHuntView()
                {
                    ItemId          = itemId,
                    ItemDescription = itemDescription,
                    Order           = order,
                    ItemImage       = itemImage,
                    CaptureImage    = captureImage
                };

                return(item);
            };

            var result = new LiveQueryObservableCollection <ScavengerHuntView> (query, transform);

            return(result);
        }