private void setUserButton_Click(object sender, RoutedEventArgs e) { if (Globals.DeviceIdExists() == false && Globals.DeviceId != "csv") { outputField.Text = "No device ID currently in memory. Press " + submitDeviceId.Content + " then try again."; return; } string user = !String.IsNullOrEmpty(Globals.User) ? Globals.User : "******"; string newUser = GetInput.getInput("What would you like to set the user to?", user, !String.IsNullOrEmpty(Globals.SerialNumber) ? "Modify Device User: "******"Modify Device User: "******"You didn't enter anything or you pressed cancel, silly goose!"; return; } string gamResult = null; if (Globals.DeviceId == "csv") { gamResult = GAM.RunGAMFormatted(GAM.GetGAMCSVCommand(Globals.CsvLocation, "update cros", "user " + newUser)); } else { gamResult = GAM.RunGAMFormatted("update cros " + Globals.DeviceId + " user " + newUser); } Globals.User = newUser; outputField.Text = gamResult + "\nAs long as you don't see an error, this query completed successfully."; }
/// <summary> /// Set the location of the device. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void setLocationButton_Click(object sender, RoutedEventArgs e) { if (Globals.DeviceIdExists() == false && Globals.DeviceId != "csv") { outputField.Text = "No device ID currently in memory. Press " + submitDeviceId.Content + " then try again."; return; } string location = !String.IsNullOrEmpty(Globals.Location) ? Globals.Location : "Enter a location..."; string newLocation = GetInput.getInput("What would you like to set the location to?", location, !String.IsNullOrEmpty(Globals.SerialNumber) ? "Add/Change Device Location: " + Globals.SerialNumber : "Add/Change Device Location: " + Globals.DeviceId, new Button { IsEnabled = true, Text = "Clear Location" }); if (newLocation == null | newLocation == location) { outputField.Text = "You didn't enter anything or pressed cancel."; return; } else if (newLocation == "ExtraButtonClicked") { newLocation = ""; } string gamResult = null; if (Globals.DeviceId == "csv") { gamResult = GAM.RunGAMFormatted(GAM.GetGAMCSVCommand(Globals.CsvLocation, "update cros", "location \"" + newLocation + "\"")); } else { gamResult = GAM.RunGAMFormatted("update cros " + Globals.DeviceId + " location \"" + newLocation + "\""); } Globals.Location = newLocation; outputField.Text = gamResult + "\nAs long as you don't see an error, the location has been updated."; }
/// <summary> /// Set the asset id of the device. If an asset id is in the Globals, it will prefill that in the text box. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void setAssetIdButton_Click(object sender, RoutedEventArgs e) { if (Globals.DeviceIdExists() == false && Globals.DeviceId != "csv") { outputField.Text = "No device ID currently in memory. Press " + submitDeviceId.Content + " then try again."; return; } string assetId = !String.IsNullOrEmpty(Globals.AssetId) ? Globals.AssetId : "Enter an Asset ID..."; string newAssetId = GetInput.getInput("What would you like to set the asset ID to?", assetId, !String.IsNullOrEmpty(Globals.SerialNumber) ? "Enter/Change Device Asset ID: " + Globals.SerialNumber : "Enter/Change Device Asset ID: " + Globals.DeviceId, new Button { IsEnabled = true, Text = "Clear Asset ID" }); if (newAssetId == null) { outputField.Text = "You didn't enter anything or you pressed cancel, silly goose!"; return; } else if (newAssetId == "ExtraButtonClicked") { newAssetId = ""; } string gamResult = null; if (Globals.DeviceId == "csv") { gamResult = GAM.RunGAMFormatted(GAM.GetGAMCSVCommand(Globals.CsvLocation, "update cros ", "assetid \"" + newAssetId + "\"")); } else { gamResult = GAM.RunGAMFormatted("update cros " + Globals.DeviceId + " assetid \"" + newAssetId + "\""); } Globals.AssetId = newAssetId; outputField.Text = gamResult + "\nAs long as you don't see an error, this query completed successfully."; }
private async void noteButton_Click(object sender, RoutedEventArgs e) { if (Globals.DeviceIdExists() == false) { outputField.Text = "No device ID currently in memory. Press " + submitDeviceId.Content + " then try again."; } string note = null; IsLoading = true; if (String.IsNullOrEmpty(Globals.Note) && Globals.DeviceId != "csv") { List <string> gamResult = await Task.Run(() => GAM.RunGAM("info cros " + Globals.DeviceId + " fields notes")); if (gamResult.Count < 2) { note = "No note found. Enter a new one here..."; } else { note = gamResult[1].Substring(9); } } else if (!String.IsNullOrEmpty(Globals.Note)) { note = Globals.Note; } else if (Globals.DeviceId == "csv") { note = "Set a note for all devices from this CSV..."; } string newNote = GetInput.getInput("Edit/modify note:", note, !String.IsNullOrEmpty(Globals.SerialNumber) ? "Add/Change Device Note: " + Globals.SerialNumber : "Add/Change Device Note: " + Globals.DeviceId); if (newNote == null | newNote == note) { outputField.Text = "You didn't change the note so I'm leaving it as it is."; return; } string finalGamResult; if (Globals.DeviceId == "csv") { finalGamResult = await Task.Run(() => GAM.RunGAMFormatted(GAM.GetGAMCSVCommand(Globals.CsvLocation, "update cros", "notes \"" + newNote + "\""))); } else { finalGamResult = await Task.Run(() => GAM.RunGAMFormatted("update cros " + Globals.DeviceId + " notes \"" + newNote + "\"")); } IsLoading = false; Globals.Note = newNote; outputField.Text = "As long as there's no error, the note was updated."; }
private async void ImportFromGoogleAdminQueryStringBulk_Click(object sender, RoutedEventArgs e) { currentView.IsLoading = true; string inputBoxPrefill = "example: user:jsmith\nThat imports all devices with the user:jsmith.\nClick the link on the bottom left for more information."; string queryString = GetInput.getInput( "Enter an Admin Console query string.", inputBoxPrefill, "Import from Google Admin query string", new Button() { IsEnabled = true, Text = "Open Help Page" } ); if (queryString == "ExtraButtonClicked") { Process.Start("https://support.google.com/chrome/a/answer/1698333#search"); ImportFromGoogleAdminQueryStringBulk_Click(sender, e); return; } else if (queryString == inputBoxPrefill || queryString == null) { GetInput.ShowInfoDialog("ChromebookGUI: No input", "No Input", "No query string entered, silly goose!"); currentView.IsLoading = false; return; } List <string> gamResult = await Task.Run(() => GAM.RunGAM("print cros query \"" + queryString + "\"")); if (gamResult.Count == 0) { GetInput.ShowInfoDialog("ChromebookGUI: Invalid Query String", "Invalid Query String", "That's an invalid query string. If you don't think it is, try running this in cmd:\n\ngam print cros query \"" + queryString + "\""); currentView.IsLoading = false; return; } else if (gamResult.Count < 2) { GetInput.ShowInfoDialog("ChromebookGUI: No Results", "No Results from Query String", "No results from that query (" + queryString + ")"); currentView.IsLoading = false; return; } File.WriteAllLines(System.IO.Path.GetTempPath() + "ChromebookGUI.csv", gamResult.ToArray()); Globals.ClearGlobals(); Globals.CsvLocation = System.IO.Path.GetTempPath() + "ChromebookGUI.csv"; Globals.DeviceId = "csv"; currentView.IsLoading = false; GetInput.ShowInfoDialog("ChromebookGUI: Success", "Successful Query", "Found " + (gamResult.Count - 1) + " devices using query " + queryString + "."); // subtract 1 because the first is "deviceId" }