private ProjectionSites LoadProjectionSites() { try { if (File.Exists(_rootPath + projectionSitesFile)) { string json = File.ReadAllText(_rootPath + projectionSitesFile); projectionSites = JsonUtility.FromJson <ProjectionSites>(json); } else { SaveProjectionSites(projectionSites); } } catch (Exception ex) { ShowErrorMessage(ex.Message); } RebuildProjectionSites(); if (OnProjectionSitesLoaded != null) { OnProjectionSitesLoaded(projectionSites); } return(projectionSites); }
public void SaveProjectionSites(ProjectionSites projectionSites) { try { var json = JsonUtility.ToJson(projectionSites); File.WriteAllText(_rootPath + projectionSitesFile, json); } catch (Exception ex) { ShowErrorMessage(ex.Message); } }
IEnumerator GetSiteConfigurations(bool rebuildInfoModal = false) { UnityWebRequest www = UnityWebRequest.Get(OnlinePath + "sites.json"); yield return(www.SendWebRequest()); if (www.isNetworkError || www.isHttpError) { CloseLoading(); ShowErrorMessage("Unable to download site configurations, please check your internet connection.", new Exception(www.error)); } else { // Show results as text Debug.Log(www.downloadHandler.text); try { latestProjectionSites = JsonUtility.FromJson <ProjectionSites>(www.downloadHandler.text); RebuildLatestProjectionSites(); RebuildProjectionSites(); if (rebuildInfoModal) { ShowProjectionSiteModal(holdingProjectionSiteMinor, false); } //close the loading modal CloseLoading(); } catch (Exception ex) { //close the loading modal CloseLoading(); ShowErrorMessage("Unable to download site configurations", ex); } // Or retrieve results as binary data byte[] results = www.downloadHandler.data; } }