protected override bool DrawWizardGUI() { // Layout base base.DrawWizardGUI(); // True if valid server token return(WitConfigurationUtility.IsServerTokenValid(serverToken)); }
// Apply server token private void RelinkServerToken(bool closeIfInvalid) { // Open Setup if Invalid bool invalid = !WitConfigurationUtility.IsServerTokenValid(serverToken); if (invalid) { // Clear if desired if (string.IsNullOrEmpty(serverToken)) { WitAuthUtility.ServerToken = serverToken; } // Close if desired if (closeIfInvalid) { // Open Setup WitWindowUtility.OpenSetupWindow(WitWindowUtility.OpenConfigurationWindow); // Close this Window Close(); } return; } // Set valid server token WitAuthUtility.ServerToken = serverToken; WitConfigurationUtility.SetServerToken(serverToken); }
// Safe refresh protected virtual void SafeRefresh() { if (WitConfigurationUtility.IsServerTokenValid(_serverToken)) { configuration.SetServerToken(_serverToken); } else if (WitConfigurationUtility.IsClientTokenValid(configuration.clientAccessToken)) { configuration.RefreshData(); } }
public void Initialize() { // Refresh configuration & auth tokens configuration = target as WitConfiguration; // Get app server token _serverToken = WitAuthUtility.GetAppServerToken(configuration); if (CanConfigurationRefresh(configuration) && WitConfigurationUtility.IsServerTokenValid(_serverToken)) { // Get client token if needed _appID = WitConfigurationUtility.GetAppID(configuration); if (string.IsNullOrEmpty(_appID)) { configuration.SetServerToken(_serverToken); } // Refresh additional data else { SafeRefresh(); } } }
protected virtual void LayoutContent() { // Begin vertical box GUILayout.BeginVertical(EditorStyles.helpBox); // Check for app name/id update ReloadAppData(); // Title Foldout GUILayout.BeginHorizontal(); string foldoutText = WitTexts.Texts.ConfigurationHeaderLabel; if (!string.IsNullOrEmpty(_appName)) { foldoutText = foldoutText + " - " + _appName; } _foldout = WitEditorUI.LayoutFoldout(new GUIContent(foldoutText), _foldout); // Refresh button if (CanConfigurationRefresh(configuration)) { if (string.IsNullOrEmpty(_appName)) { bool isValid = WitConfigurationUtility.IsServerTokenValid(_serverToken); GUI.enabled = isValid; if (WitEditorUI.LayoutTextButton(WitTexts.Texts.ConfigurationRefreshButtonLabel)) { ApplyServerToken(_serverToken); } } else { bool isRefreshing = configuration.IsRefreshingData(); GUI.enabled = !isRefreshing; if (WitEditorUI.LayoutTextButton(isRefreshing ? WitTexts.Texts.ConfigurationRefreshingButtonLabel : WitTexts.Texts.ConfigurationRefreshButtonLabel)) { SafeRefresh(); } } } GUI.enabled = true; GUILayout.EndHorizontal(); GUILayout.Space(WitStyles.ButtonMargin); // Show configuration app data if (_foldout) { // Indent EditorGUI.indentLevel++; // Server access token bool updated = false; WitEditorUI.LayoutPasswordField(WitTexts.ConfigurationServerTokenContent, ref _serverToken, ref updated); if (updated) { ApplyServerToken(_serverToken); } // Additional data if (configuration) { LayoutConfigurationData(); } // Undent EditorGUI.indentLevel--; } // End vertical box layout GUILayout.EndVertical(); GUILayout.BeginVertical(EditorStyles.helpBox); LayoutConduitContent(); GUILayout.EndVertical(); // Layout configuration request tabs LayoutConfigurationRequestTabs(); // Additional open wit button GUILayout.FlexibleSpace(); if (GUILayout.Button(OpenButtonLabel, WitStyles.TextButton)) { Application.OpenURL(HeaderUrl); } }