mirror of
https://github.com/nicoverbruggen/phpmon.git
synced 2025-08-10 21:10:08 +02:00
👌 Improved alerts, localization
This commit is contained in:
@@ -32,7 +32,9 @@ struct HomebrewService: Decodable, Equatable {
|
|||||||
.decode([HomebrewService].self, from: data)
|
.decode([HomebrewService].self, from: data)
|
||||||
.filter({ return filter.contains($0.name) })
|
.filter({ return filter.contains($0.name) })
|
||||||
|
|
||||||
completion(services)
|
DispatchQueue.main.async {
|
||||||
|
completion(services)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -164,8 +164,9 @@ extension MainMenu {
|
|||||||
preset.textDescription
|
preset.textDescription
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
.withPrimary(text: "alert.revert_description.ok".localized, action: { _ in
|
.withPrimary(text: "alert.revert_description.ok".localized, action: { alert in
|
||||||
self.performRollback()
|
self.performRollback()
|
||||||
|
alert.close(with: .OK)
|
||||||
})
|
})
|
||||||
.withSecondary(text: "alert.revert_description.cancel".localized)
|
.withSecondary(text: "alert.revert_description.cancel".localized)
|
||||||
.show()
|
.show()
|
||||||
|
@@ -21,27 +21,42 @@ struct Preset: Codable {
|
|||||||
configuration = "configuration"
|
configuration = "configuration"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
What the preset does, in text form. Used to display what's going on.
|
||||||
|
*/
|
||||||
var textDescription: String {
|
var textDescription: String {
|
||||||
var text = ""
|
var text = ""
|
||||||
|
|
||||||
if self.version != nil {
|
if self.version != nil {
|
||||||
text += "Switches to PHP \(self.version!).\n"
|
text += "alert.preset_description.switcher_version".localized(self.version!)
|
||||||
}
|
}
|
||||||
|
|
||||||
if !self.extensions.isEmpty {
|
if !self.extensions.isEmpty {
|
||||||
text += "\nApplies the following extensions:\n"
|
// Show a subsection header
|
||||||
|
text += "alert.preset_description.applying_extensions".localized
|
||||||
}
|
}
|
||||||
|
|
||||||
for (ext, extValue) in self.extensions {
|
for (ext, extValue) in self.extensions {
|
||||||
text += "• \(ext): \(extValue ? "enabled" : "disabled") \n"
|
// An extension is either enabled or disabled
|
||||||
|
let status = extValue
|
||||||
|
? "alert.preset_description.enabled".localized
|
||||||
|
: "alert.preset_description.disabled".localized
|
||||||
|
text += "• \(ext): \(status)\n"
|
||||||
}
|
}
|
||||||
|
|
||||||
if !self.configuration.isEmpty {
|
if !self.configuration.isEmpty {
|
||||||
text += "\nApplies the following configuration values:\n"
|
// Extra spacing if the previous section was extensions
|
||||||
|
if !self.extensions.isEmpty {
|
||||||
|
text += "\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Show a subsection header
|
||||||
|
text += "alert.preset_description.applying_config".localized
|
||||||
}
|
}
|
||||||
|
|
||||||
for (key, value) in self.configuration {
|
for (key, value) in self.configuration {
|
||||||
text += "• \(key)=\(value ?? "(empty)") \n"
|
// A value is either displayed, or the value is "(empty)"
|
||||||
|
text += "• \(key)=\(value ?? "alert.preset_description.empty".localized) \n"
|
||||||
}
|
}
|
||||||
|
|
||||||
return text
|
return text
|
||||||
|
@@ -323,6 +323,14 @@ For optimal support of the latest versions of PHP and proper version switching,
|
|||||||
|
|
||||||
You can do this by running `composer global update` in your terminal. After that, run `valet install` again. For best results, restart PHP Monitor after that.";
|
You can do this by running `composer global update` in your terminal. After that, run `valet install` again. For best results, restart PHP Monitor after that.";
|
||||||
|
|
||||||
|
// Preset text description
|
||||||
|
"alert.preset_description.switcher_version" = "Switches to PHP %@.\n\n";
|
||||||
|
"alert.preset_description.applying_extensions" = "Applies the following extensions:\n";
|
||||||
|
"alert.preset_description.applying_config" = "Applies the following configuration values:\n";
|
||||||
|
"alert.preset_description.enabled" = "enabled";
|
||||||
|
"alert.preset_description.disabled" = "disabled";
|
||||||
|
"alert.preset_description.empty" = "(empty)";
|
||||||
|
|
||||||
// PHP version unavailable
|
// PHP version unavailable
|
||||||
"alert.php_switch_unavailable.title" = "Unsupported PHP version";
|
"alert.php_switch_unavailable.title" = "Unsupported PHP version";
|
||||||
"alert.php_switch_unavailable.subtitle" = "PHP Monitor can't switch to PHP %@, as it may not be installed or available. Applying this preset has been cancelled.";
|
"alert.php_switch_unavailable.subtitle" = "PHP Monitor can't switch to PHP %@, as it may not be installed or available. Applying this preset has been cancelled.";
|
||||||
|
Reference in New Issue
Block a user