--UWAGA! Ponizszy skrypt zmienia ustawienia wylaczania wyswietlacza tak samo dla zasilacza i baterii!
--by zmienic ustawienia tylko dla ZASILACZA
--w tresc (shellScr) skryptu powloki nalezy wpisac 'pmset -c displaysleep' zamiast 'pmset displaysleep'
--by zmienic ustawienia tylko dla BATERII
--w tresc (shellScr) skryptu powloki nalezy wpisac 'pmset -b displaysleep' zamiast 'pmset displaysleep'
--stale propertypass : false --na wstepie "reset" haslapropertylogin : "USER" --krotka nazwa uzytkownika, nalezy wstawic w "" swoja
--ustaw dowolnie od 1 do 180; cyfra 0 powoduje ustawienie "nigdy"propertyregularDisp : 20 --czas w minutach po jakim zwykle usypia ekran, np. 20 min.propertytheWait : 90 --czas w sekundach po jakim OS X przywraca zwykle ustawienie (mozna zmieniac na 60+) --koniec staleifpassisfalsethen --jesli haslo jest nieustalone (a nie jest bo tak twierdzi stala) --tell application "Finder" --nakazuje wyswietlic okno dialogowe w Finderze; bez tego, czasem okno chowa sie miedzy innymi oknami
--"with hidden answer" wyswietla kropki w miejsce literdisplay dialog "Podaj haslo:" default answer "" withhidden answer --okno dialogowe prosi o haslo administratora
--end tellsetpasstotext returnedofresult --ustawia haslo na podaneendifmysleepDisplay() --przestawia zegar wylaczania wyswietlacza na 1 min (najmniejsza mozliwa wartosc)mywaitToReverse() --czeka 90 sekund i przywraca ustawienie wylaczania wyswietlacza do wartosci okreslone w stalej 'regularDisp'onsleepDisplay() --wykonuje polecenie 'my sleepDisplay()'setsuccesstofalse --ustala zmienna falszywa na wstepierepeatuntilsuccessistrue --zapetla dopoki zmienna prawdziwatry --wylapuje bledysetshellScrto "pmset displaysleep " & regularDisp & " && pmset displaysleep 1" --tresc skryptu powlokido shell scriptshellScruser nameloginpasswordpasswithadministrator privileges --wykonuje skrypt powloki z haslem jako adminsetsuccesstotrue --zmienna prawdziwa przerywa petle
--pokazuje potwierdzenie oraz ile sekund Ci zostalo by zostawic go do uspienia
--'giving up' powoduje znikniecie okna dialogowego po okreslonej liczbie sekund
--znak ¬ (Alt-Return w Script Editor) kontynuuje zapis polecenia w nowym wierszu, pomaga skracac wierszedisplay alert "Ekran ustawiony na spanie!" message "W ciagu " & ¬
theWait - 60 & "sek. musisz go zostawic na minutke by zasnal." giving up after 4
onerrortheError --jesli nieudanesetpasstofalse --"reset" haslatellapplication "Finder"
display dialog "Nie udalo sie, sprobuj ponownie." & return & ¬
"Podaj haslo:" default answer "" withhidden answer --ponownie prosi o hasloendtellsetpasstotext returnedofresult --ustawia haslo na podane (po czym wraca do poczatku petli)endtryendrepeatendsleepDisplayonwaitToReverse() --wykonuje polecenie 'my waitToReverse()'delaytheWait --przerywa skrypt na zadeklarowana stala 90 sek. (daje to <30 s. na pozostawienie komputera na 1min. w celu wylaczenia wyswietlacza) setsuccesstofalse --ustalamy zmienna na falszywa na wstepierepeatuntilsuccessistrue --zapetla dopoki zmienna prawdziwatrysetshellScrto "pmset displaysleep 1 && pmset displaysleep " & regularDisp --tresc skryptu powlokido shell scriptshellScruser nameloginpasswordpasswithadministrator privileges --wykonuje skrypt powloki jako adminsetsuccesstotrue --zmienna prawdziwa przerywa petleonerrortheError --jesli nieudane, choc w tym miejscu blad jest raczej niemozliwy, jesli powiodlo sie 'my sleepDisplay()'setpasstofalse --"reset" haslatellapplication "Finder"
--prosi ponownie o haslodisplay dialog "Nie udalo sie ustawic z powrotem na " & regularDisp & ¬
"min." & return & ¬
"Sprobuj ponownie." & return & "Podaj haslo:" default answer "" withhidden answerendtellsetpasstotext returnedofresult --ustawia haslo na podane (po czym wraca do poczatku petli)endtryendrepeatendwaitToReverse