Example #1
0
 private static void OnLoginButtonClicked()
 {
     PlayFabEditorApi.Login(new LoginRequest()
     {
         DeveloperToolProductName    = PlayFabEditorHelper.EDEX_NAME,
         DeveloperToolProductVersion = PlayFabEditorHelper.EDEX_VERSION,
         Email    = _userEmail,
         Password = _userPass
     }, (result) =>
     {
         PlayFabEditorPrefsSO.Instance.DevAccountToken = result.DeveloperClientToken;
         PlayFabEditorPrefsSO.Instance.DevAccountEmail = _userEmail;
         PlayFabEditorDataService.RefreshStudiosList();
         PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnLogin);
         PlayFabEditorPrefsSO.Save();
         PlayFabEditorMenu._menuState = PlayFabEditorMenu.MenuStates.Sdks;
     }, (error) =>
     {
         if ((int)error.Error == 1246 || error.ErrorMessage.Contains("TwoFactor"))
         {
             // pop 2FA dialog
             PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnWarning, "This account requires 2-Factor Authentication.");
             activeState = PanelDisplayStates.TwoFactorPrompt;
         }
         else
         {
             PlayFabEditorHelper.SharedErrorCallback(error);
         }
     });
 }
Example #2
0
 public static void RefreshStudiosList(bool onlyIfNull = false)
 {
     if (string.IsNullOrEmpty(PlayFabEditorPrefsSO.Instance.DevAccountToken))
     {
         return; // Can't load studios when not logged in
     }
     if (onlyIfNull && PlayFabEditorPrefsSO.Instance.StudioList != null)
     {
         return; // Don't spam load this, only load it the first time
     }
     if (PlayFabEditorPrefsSO.Instance.StudioList != null)
     {
         PlayFabEditorPrefsSO.Instance.StudioList.Clear();
     }
     PlayFabEditorApi.GetStudios(new GetStudiosRequest(), (getStudioResult) =>
     {
         if (PlayFabEditorPrefsSO.Instance.StudioList == null)
         {
             PlayFabEditorPrefsSO.Instance.StudioList = new List <Studio>();
         }
         foreach (var eachStudio in getStudioResult.Studios)
         {
             PlayFabEditorPrefsSO.Instance.StudioList.Add(eachStudio);
         }
         PlayFabEditorPrefsSO.Instance.StudioList.Add(Studio.OVERRIDE);
         PlayFabEditorPrefsSO.Save();
     }, PlayFabEditorHelper.SharedErrorCallback);
 }
        private static void BeginCloudScriptUpload()
        {
            var filePath = File.Exists(PlayFabEditorDataService.EnvDetails.localCloudScriptPath) ? PlayFabEditorDataService.EnvDetails.localCloudScriptPath : PlayFabEditorHelper.CLOUDSCRIPT_PATH;

            if (!File.Exists(PlayFabEditorDataService.EnvDetails.localCloudScriptPath) && !File.Exists(PlayFabEditorHelper.CLOUDSCRIPT_PATH))
            {
                PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnError, "Cloud Script Upload Failed: null or corrupt file at path(" + filePath + ").");
                return;
            }

            var s        = File.OpenText(filePath);
            var contents = s.ReadToEnd();

            s.Close();

            var request = new UpdateCloudScriptRequest();

            request.Publish = EditorUtility.DisplayDialog("Deployment Options", "Do you want to make this Cloud Script live after uploading?", "Yes", "No");
            request.Files   = new List <CloudScriptFile>()
            {
                new CloudScriptFile()
                {
                    Filename     = PlayFabEditorHelper.CLOUDSCRIPT_FILENAME,
                    FileContents = contents
                }
            };

            PlayFabEditorApi.UpdateCloudScript(request, (UpdateCloudScriptResult result) =>
            {
                PlayFabEditorDataService.EnvDetails.localCloudScriptPath = filePath;
                PlayFabEditorDataService.SaveEnvDetails();

                Debug.Log("CloudScript uploaded successfully!");
            }, PlayFabEditorHelper.SharedErrorCallback);
        }
Example #4
0
        private static void OnRegisterClicked()
        {
            if (_userPass != _userPass2)
            {
                Debug.LogError("PlayFab developer account passwords must match.");
                return;
            }

            PlayFabEditorApi.RegisterAccount(new RegisterAccountRequest()
            {
                DeveloperToolProductName    = PlayFabEditorHelper.EDEX_NAME,
                DeveloperToolProductVersion = PlayFabEditorHelper.EDEX_VERSION,
                Email      = _userEmail,
                Password   = _userPass,
                StudioName = _studio
            }, (result) =>
            {
                PlayFabEditorPrefsSO.Instance.DevAccountToken = result.DeveloperClientToken;
                PlayFabEditorPrefsSO.Instance.DevAccountEmail = _userEmail;

                PlayFabEditorDataService.RefreshStudiosList();

                PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnLogin);
                PlayFabEditorMenu._menuState = PlayFabEditorMenu.MenuStates.Sdks;
                PlayFabEditorPrefsSO.Save();
            }, PlayFabEditorHelper.SharedErrorCallback);
        }
Example #5
0
        public void SaveRecords()
        {
            //reset dirty status.
            showSave = false;
            Dictionary <string, string> dirtyItems = new Dictionary <string, string>();

            foreach (var item in items)
            {
                if (item.isDirty)
                {
                    dirtyItems.Add(item.Key, item.Value);
                }
            }

            if (dirtyItems.Count > 0)
            {
                PlayFabEditorApi.SetTitleInternalData(dirtyItems, (result) =>
                {
                    foreach (var item in items)
                    {
                        item.CleanItem();
                    }
                }, PlayFabEditorHelper.SharedErrorCallback);
            }
        }
 private static void GetCloudScriptRevision()
 {
     // empty request object gets latest versions
     PlayFabEditorApi.GetCloudScriptRevision(new EditorModels.GetCloudScriptRevisionRequest(), (GetCloudScriptRevisionResult result) =>
     {
         var csPath   = PlayFabEditorHelper.CLOUDSCRIPT_PATH;
         var location = Path.GetDirectoryName(csPath);
         try
         {
             if (!Directory.Exists(location))
             {
                 Directory.CreateDirectory(location);
             }
             if (!File.Exists(csPath))
             {
                 using (var newfile = File.Create(csPath)) { }
             }
             File.WriteAllText(csPath, result.Files[0].FileContents);
             Debug.Log("CloudScript uploaded successfully!");
             PlayFabEditorDataService.EnvDetails.localCloudScriptPath = csPath;
             PlayFabEditorDataService.SaveEnvDetails();
             AssetDatabase.Refresh();
         }
         catch (Exception ex)
         {
             Debug.LogException(ex);
             // PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnError, ex.Message);
             return;
         }
     }, PlayFabEditorHelper.SharedErrorCallback);
 }
        private IEnumerator SaveItem(KeyValuePair <string, string> dirtyItem, float seconds)
        {
            yield return(new EditorCoroutine.EditorWaitForSeconds(seconds));

            //Debug.LogFormat("{0} - Co-Start: {1}", dirtyItem.Key, seconds);
            var itemToUpdateDic = new Dictionary <string, string> {
                { dirtyItem.Key, dirtyItem.Value }
            };

            PlayFabEditorApi.SetTitleData(itemToUpdateDic, null, PlayFabEditorHelper.SharedErrorCallback);
        }
Example #8
0
        public void RefreshInternalTitleData()
        {
            Action <PlayFab.PfEditor.EditorModels.GetTitleDataResult> cb = (result) =>
            {
                items.Clear();
                showSave = false;
                foreach (var kvp in result.Data)
                {
                    items.Add(new KvpItem(kvp.Key, kvp.Value));
                }

                PlayFabEditorDataService.EnvDetails.titleInternalData = result.Data;
                PlayFabEditorDataService.SaveEnvDetails();
            };

            PlayFabEditorApi.GetTitleInternalData(cb, PlayFabEditorHelper.SharedErrorCallback);
        }
 private static void OnContinueButtonClicked()
 {
     PlayFabEditorApi.Login(new LoginRequest()
     {
         DeveloperToolProductName    = PlayFabEditorHelper.EDEX_NAME,
         DeveloperToolProductVersion = PlayFabEditorHelper.GetApiVersion(ApiCategory.editorextensions),
         TwoFactorAuth = _2FaCode,
         Email         = _userEmail,
         Password      = _userPass
     }, (result) =>
     {
         PlayFabEditorPrefsSO.Instance.DevAccountToken = result.DeveloperClientToken;
         PlayFabEditorPrefsSO.Instance.DevAccountEmail = _userEmail;
         PlayFabEditorDataService.RefreshStudiosList();
         PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnLogin);
         PlayFabEditorPrefsSO.Save();
     }, PlayFabEditorHelper.SharedErrorCallback);
 }
 private static void OnContinueButtonClicked()
 {
     PlayFabEditorApi.Login(new LoginRequest()
     {
         DeveloperToolProductName    = PlayFabEditorHelper.EDEX_NAME,
         DeveloperToolProductVersion = PlayFabEditorHelper.EDEX_VERSION,
         TwoFactorAuth = _2FaCode,
         Email         = _userEmail,
         Password      = _userPass
     }, (result) =>
     {
         PlayFabEditorDataService.AccountDetails.devToken = result.DeveloperClientToken;
         PlayFabEditorDataService.AccountDetails.email    = _userEmail;
         PlayFabEditorDataService.RefreshStudiosList();
         PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnLogin);
         PlayFabEditorDataService.SaveAccountDetails();
         PlayFabEditorMenu._menuState = PlayFabEditorMenu.MenuStates.Sdks;
     }, PlayFabEditorHelper.SharedErrorCallback);
 }
 public static void RefreshStudiosList()
 {
     if (AccountDetails.studios != null)
     {
         AccountDetails.studios.Clear();
     }
     PlayFabEditorApi.GetStudios(new GetStudiosRequest(), (getStudioResult) =>
     {
         if (AccountDetails.studios == null)
         {
             AccountDetails.studios = new List <Studio>();
         }
         foreach (var eachStudio in getStudioResult.Studios)
         {
             AccountDetails.studios.Add(eachStudio);
         }
         AccountDetails.studios.Add(Studio.OVERRIDE);
         SaveAccountDetails();
     }, PlayFabEditorHelper.SharedErrorCallback);
 }
Example #12
0
 private static void GetCloudScriptRevision()
 {
     // empty request object gets latest versions
     PlayFabEditorApi.GetCloudScriptRevision(new EditorModels.GetCloudScriptRevisionRequest(), (GetCloudScriptRevisionResult result) =>
     {
         var csPath = PlayFabEditorHelper.CLOUDSCRIPT_PATH;
         try
         {
             File.WriteAllText(csPath, result.Files[0].FileContents);
             Debug.Log("CloudScript uploaded successfully!");
             PlayFabEditorDataService.EnvDetails.localCloudScriptPath = csPath;
             PlayFabEditorDataService.SaveEnvDetails();
         }
         catch (Exception ex)
         {
             PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnError, ex.Message);
             return;
         }
     }, PlayFabEditorHelper.SharedErrorCallback);
 }
Example #13
0
        public static void Logout()
        {
            PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnLogout);

            PlayFabEditorApi.Logout(new LogoutRequest
            {
                DeveloperClientToken = PlayFabEditorPrefsSO.Instance.DevAccountToken
            }, null, PlayFabEditorHelper.SharedErrorCallback);

            _userPass  = string.Empty;
            _userPass2 = string.Empty;

            activeState = PanelDisplayStates.Login;

            PlayFabEditorPrefsSO.Instance.StudioList      = null;
            PlayFabEditorPrefsSO.Instance.DevAccountToken = string.Empty;
            PlayFabEditorPrefsSO.Save();

            PlayFabEditorPrefsSO.Instance.TitleDataCache.Clear();
            PlayFabEditorDataService.SaveEnvDetails();
        }
        public static void Logout()
        {
            PlayFabEditor.RaiseStateUpdate(PlayFabEditor.EdExStates.OnLogout);

            PlayFabEditorApi.Logout(new LogoutRequest
            {
                DeveloperClientToken = PlayFabEditorDataService.AccountDetails.devToken
            }, null, PlayFabEditorHelper.SharedErrorCallback);

            _userPass  = string.Empty;
            _userPass2 = string.Empty;

            activeState = PanelDisplayStates.Login;

            PlayFabEditorDataService.AccountDetails.studios  = null;
            PlayFabEditorDataService.AccountDetails.devToken = string.Empty;
            PlayFabEditorDataService.SaveAccountDetails();

            PlayFabEditorDataService.EnvDetails.titleData.Clear();
            PlayFabEditorDataService.SaveEnvDetails();
        }
        public void RefreshTitleData()
        {
            Action <PlayFab.PfEditor.EditorModels.GetTitleDataResult> dataRequest = (result) =>
            {
                items.Clear();
                showSave = false;
                foreach (var kvp in result.Data)
                {
                    items.Add(new KvpItem(kvp.Key, kvp.Value));
                }

                PlayFabEditorPrefsSO.Instance.TitleDataCache.Clear();
                foreach (var pair in result.Data)
                {
                    PlayFabEditorPrefsSO.Instance.TitleDataCache.Add(pair.Key, pair.Value);
                }
                PlayFabEditorDataService.SaveEnvDetails();
            };

            PlayFabEditorApi.GetTitleData(dataRequest, PlayFabEditorHelper.SharedErrorCallback);
        }