Ejemplo n.º 1
0
    public static void GetGalleryImagesFromDB()
    {
        Debug.Log("Retrieving gallery image urls database");
        List <string> galleryUrls = new List <string>();

        GalleryUrlsRef
        .GetValueAsync()
        .ContinueWith(task =>
        {
            if (task.IsFaulted)
            {
                Debug.Log("Failed to retrieve visited places for user " + FO.userId + ". " + task.Exception);
            }
            else if (task.IsCompleted)
            {
                Debug.Log("Successfully retrieved gallery urls data");
                DataSnapshot snapshot = task.Result;
                //FO.visitedPlace.Clear();

                foreach (var child in snapshot.Children)
                {
                    Debug.Log("adding " + child.Value + " to gallery urls.");
                    galleryUrls.Add(child.Value.ToString());
                }
                FO.galleryImages = new List <string>(galleryUrls);
                Debug.Log("gallery urls data gathered");
            }
        });
    }
Ejemplo n.º 2
0
    public static IEnumerator GetGalleryUrls(Action <List <string> > galleryUrls)
    {
        //TASK IS BUGGY WHEN REFERENCE HAS NO VALUE!! DON'T USE THIS FOR THE MOMENT!!!!

        elapsedTime = 0;
        List <string> urls = new List <string>();

        Debug.Log("Get Gallery Urls try getvalue async");

        var task = GalleryUrlsRef.GetValueAsync();

        yield return(new WaitUntil(() => IsTask(task.IsCompleted)));

        Debug.Log("Get Gallery urls task completed");

        if (task.IsFaulted || task.IsCanceled)
        {
            Debug.Log("Network error " + task.Exception);
            yield break;
        }

        var result = task.Result;

        if (result == null)
        {
            Debug.Log("No urls yet");
            yield break;
        }
        else
        {
            foreach (var p in result.Children)
            {
                urls.Add(p.Value.ToString());
                yield return(null);
            }
            Debug.Log("Gallery urls gathered.");
            galleryUrls.Invoke(new List <string>(urls));
            yield return(null);
        }
        Debug.Log("Get gallery urls called.");
        yield return(null);
    }