START.applescript aktualisiert

showWelcomeDialogIfNeeded()
angepasst.
Ruft jetzt externen Handler in /Helpers/scripts/_text_about.scpt
This commit is contained in:
2026-08-18 10:08:11 +00:00
parent 8f029d9deb
commit 5ad8ca95ed
+34 -30
View File
@@ -234,50 +234,48 @@ on findConfigInCurrentDB()
set configRecord to my findChildByName(configGroupRecord, configRecordName)
return configRecord
end findConfigInCurrentDB
(*
showWelcomeDialogIfNeeded()
---------------------------
Zeigt den Start-/Willkommensdialog an, falls die Konfiguration dies wünscht.
Zeigt den Willkommensdialog beim Start an, falls konfiguriert (SHOW_README=true).
Ablauf:
1. Config-Datei relativ zur aktuellen Auswahl suchen
2. Config-Datei lesen
3. Wert SHOW_README auslesen
4. falls SHOW_README=true -> Hinweisdialog anzeigen
5. falls User "Diesen Dialog nicht mehr anzeigen" wählt:
SHOW_README auf false in der Config zurückschreiben
Hinweis:
2. Wert SHOW_README auslesen
3. falls SHOW_README=true -> Dialog mit "Nicht mehr anzeigen"-Option anzeigen
4. falls User "Diesen Dialog nicht mehr anzeigen" wählt:
-> SHOW_README auf false in der Config zurückschreiben
Wichtig:
--------
START.scpt führt selbst keine Einrichtung und keinen Versand durch.
Der Dialog ist nur eine Hilfe für Anwender:innen.
Er verweist auf die interne README-Datei in _config.
Bewusst einfach:
----------------
Es gibt hier nur zwei Buttons:
- "Weiter"
- "Diesen Dialog nicht mehr anzeigen"
Die README wird nicht direkt aus dem Dialog geöffnet.
Der Dialog-Text wird aus Helpers/scripts/_text_about.scpt geladen.
So wird verhindert, dass buildAboutText() doppelt definiert ist.
*)
on showWelcomeDialogIfNeeded()
set configRecord to my findConfigInCurrentDB()
if configRecord is missing value then return
set cfgText to my recordText(configRecord)
set showReadmeVal to my configValue(cfgText, "SHOW_README")
if showReadmeVal is missing value then return
set showReadmeLower to do shell script "printf %s " & quoted form of showReadmeVal & " | tr '[:upper:]' '[:lower:]'"
if showReadmeLower is not "true" then return
set msgText to "Willkommen beim Belegversand, Version 1.4." & return & return & ¬
"Mit dieser Funktion kannst du Dokumente aus dieser DEVONthink-Datenbank auswählen, in ein ZIP-Archiv packen und als Mail-Entwurf vorbereiten." & return & return & ¬
"Anschließend können die verarbeiteten Dokumente mit dem Tag 'gesendet' markiert werden. Der Versand wird zusätzlich in Protokolldateien dokumentiert." & return & return & ¬
"Hinweise zur Einrichtung und Benutzung findest du in der Datei:" & return & ¬
"README-Belegversand" & return & ¬
"im Ordner:" & return & ¬
"_config"
set basePath to (do shell script "echo ~") & "/Library/Application Scripts/com.devon-technologies.think/Menu/Belegversand"
set textScript to basePath & "/Helpers/scripts/_text_about.scpt"
try
set loadedScript to load script (POSIX file textScript as alias)
run loadedScript
set msgText to (tell loadedScript to buildAboutText())
on error errMsg
display dialog "Fehler beim Laden des About-Textes:" & return & errMsg buttons {"OK"}
return
end try
set choice to button returned of (display dialog msgText buttons {"Diesen Dialog nicht mehr anzeigen", "Weiter"} default button "Weiter")
if choice is "Diesen Dialog nicht mehr anzeigen" then
set newCfgText to ""
repeat with oneLine in paragraphs of cfgText
@@ -288,7 +286,7 @@ on showWelcomeDialogIfNeeded()
set newCfgText to newCfgText & lineText & return
end if
end repeat
tell application id "DNtp"
try
set plain text of configRecord to newCfgText
@@ -298,6 +296,7 @@ on showWelcomeDialogIfNeeded()
end tell
end if
end showWelcomeDialogIfNeeded
(*
run
---
@@ -314,7 +313,12 @@ Dort wird geprüft:
- oder muss erst eingerichtet werden?
*)
on run
with timeout of 3600 seconds
my showWelcomeDialogIfNeeded()
my runSiblingScript(setupScriptName)
end timeout
end run
with timeout of 3600 seconds
my showWelcomeDialogIfNeeded()