1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Journler Termine als Growl-Nachrichten

Dieses Thema im Forum "AppleScript" wurde erstellt von Jo_y, 08.02.10.

  1. Jo_y

    Jo_y Kaiser Wilhelm

    Dabei seit:
    11.05.09
    Beiträge:
    177
    Hallo,
    ich habe einfach kein Glueck eine Antwort zu bekommen in anderen Foren mit diesen, meinen Script. Deswegen will ich nix unversucht lassen, auch weil es sich um eine kleineres Problem handeln duerfte. Beide Scripte arbeiten zusammen und veranlassen 'Journler', ein Plan-Organisierungswerkzeug der Oberklasse, Termine mit hilfe von Growl auszugeben.
    Mal ganz ehrlich: es wundert mich, das viele Leute 'Journler' nicht kennen.:eek:


    --Termine als Growls
    --Journler

    Code:
    tell application "Journler"
    try
    set my_item to item 1 of (get selected entries)
    on error number the_error
    if the_error is "-1728" then --if date due is not missing value then
    display dialog "Kein Termindatum!" buttons "Ende"
    else
    display dialog "Wähle Einträge mit Verfallsdatum" buttons "Ende"
    end if
    return 0
    end try
    
    set nm_of to name of my_item
    set {the_txt, dueDate} to {(rich text of my_item), (date due of my_item)}
    set dt_of to date due of my_item
    set {t0, t1, t2, t3, t4} to {(minutes of dt_of), (hours of dt_of), (day of dt_of), (weekday of dt_of as number), (month of dt_of as number)}
    end tell
    
    set model_1 to (tab & tab & "<key>Minute</key>
    <integer>" & t0 & "</integer>" & return & tab & tab & "<key>Hour</key>
    <integer>" & t1 & "</integer>" & return & tab & tab & "<key>Day</key>
    <integer>" & t2 & "</integer>" & return & tab & tab & "<key>Weekday</key>
    <integer>" & t3 & "</integer>" & return & tab & tab & "<key>Month</key>
    <integer>" & t4 & "</integer>" & return as text)
    
    set compo_loc to ((path to scripts folder) & "Utility:Growl:Journler-Growl.scpt" as text)
    set triggeredScriptLocation to POSIX path of (compo_loc as Unicode text)
    set userLibraryPath to (path to library folder from user domain)
    
    tell application "Finder"
    try
    make new folder at userLibraryPath with properties {name:"LaunchAgents"}
    end try
    try
    make new folder at (userLibraryPath & "LaunchAgents:" as text) with properties {name:"Journler"}
    end try
    try
    make new folder at ((path to scripts folder) & "Utility:Growl:" as text) with properties {name:"Journler ads"}
    end try
    end tell
    
    set LaunchAgentsFolder to (userLibraryPath & "LaunchAgents:Journler:" as text)
    set pListLabel to ("com." & nm_of & ".agent" as text)
    set pListfile to ((LaunchAgentsFolder as Unicode text) & pListLabel & ".plist")
    
    set PLIST_File to "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
    <!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">
    <plist version=\"1.0\">
    <dict>
    <key>Label</key>
    <string>" & pListLabel & "</string>
    <key>LowPriorityIO</key>
    <true/>
    <key>Program</key>
    <string>/usr/bin/osascript</string>
    <key>ProgramArguments</key>
    <array>
    <string>osascript</string>
    <string>" & triggeredScriptLocation & "</string>
    </array>
    <key>StartCalendarInterval</key>
    <dict>" & return & model_1 & tab & "</dict>
    </dict>
    </plist>" & return
    
    try
    set ff to open for access file pListfile with write permission
    write PLIST_File to ff as «class utf8»
    close access ff
    set launchctlCmd to "launchctl load -w " & quoted form of POSIX path of pListfile
    do shell script launchctlCmd
    end try
    
    my main(nm_of, the_txt, dt_of)
    
    on main(nm_of, the_txt, dt_of)
    set mmo_tg to ((path to scripts folder from user domain) & "Utility:Growl:Journler ads:" & nm_of & ".txt" as text)
    try
    open for access file mmo_tg with write permission
    on error
    close access file mmo_tg
    return 0
    end try
    write the_txt to file mmo_tg
    close access file mmo_tg
    set mmo_tg to mmo_tg as alias
    tell application "Finder" to set modification date of mmo_tg to dt_of
    end main
    
    Script 2)-> located in my Growl folder of Scripts folder
    
    
    --Journler Termine
    --journler
    
    set cu_dt to current date
    set {dy, mo, ho, mu} to {(day of cu_dt), (month of cu_dt as number), (hours of cu_dt), (minutes of cu_dt)}
    set get_doc to {}
    set pt_fl to ((path to scripts folder from user domain) & "Utility:Growl:Journler ads:" as text)
    tell application "Finder" to repeat with i in alias pt_fl --check for multiple entries
    set thec to modification date of i
    set {v1, v2, v3, v4} to {(day of thec as number), (month of thec as number), (hours of thec), (minutes of thec)}
    if v1 = dy and v2 = mo and v3 = ho and v4 = mu then
    set get_doc to i
    exit repeat
    end if
    end repeat
    if get_doc is not {} then
    set get_doc to get_doc as alias
    else
    return 0
    end if
    
    set th_nm to name of (info for of get_doc)
    set the_txt to read get_doc
    set nm_of to (characters 1 thru -5 of th_nm) as text
    set cat_of to ""
    
    tell application "GrowlHelperApp"
    set the allNotificationsList to ¬
    {cat_of, "Termin"}
    
    set the enabledNotificationsList to ¬
    {cat_of}
    
    register as application ¬
    "Journler-Growl" all notifications allNotificationsList ¬
    default notifications enabledNotificationsList ¬
    icon of application "Journler"
    
    notify with name ¬
    cat_of title ¬
    nm_of description ¬
    cat_of & return & the_txt application name "Journler-Growl" sticky yes priority 3
    end tell
    
    do shell script "rm " & quoted form of POSIX path of get_doc
     
    #1 Jo_y, 08.02.10
    Zuletzt von einem Moderator bearbeitet: 08.02.10
  2. Poljpocket

    Poljpocket Salvatico di Campascio

    Dabei seit:
    07.01.07
    Beiträge:
    432
    Und was ist dein Problem?
     
  3. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Gute Frage...

    Dir ist aber hoffentlich klar, dass Du mit AS auch ordentlich XMLs bzw. Plists erstellen kannst.
    Siehe dazu "System Events".

    Viele Grüße
     
  4. Jo_y

    Jo_y Kaiser Wilhelm

    Dabei seit:
    11.05.09
    Beiträge:
    177
    Ops, anscheinend hab ich mich zu kurz formuliert.
    Also, ich habe beide separat geprueft und sie laufen einwandfrei, aber im Zusammenspiel scheinen sie doch nicht zu funktionieren. Das ist das Problem. Besitzt jemand 'Journler', um mir evt. behilflich zu sein??
    Das wäre wirklich sehr nett.
     
  5. BigDan

    BigDan Granny Smith

    Dabei seit:
    04.07.07
    Beiträge:
    17
    Hast du es schon in der Journler Community versucht? Hab eben die Seite besucht und angeblich soll die ja ganz aktiv sein.
    Das Proggi scheint interessant. Schade nur das es nicht weiter entwickelt wird. Habe es trotzdem mal geladen zum testen.

    Gruss

    BigDan
     

Diese Seite empfehlen