snipt

Ctrl+h for KB shortcuts

AppleScript

Control Notification Center and Growl.app

#Desc:		Controls Growl.app
#Use:		notification_control <keyword>
#Ex:		notification_control pause
#Version: 	v1.3.1

on alfred_script(q)
	--set global containers
	global vPauseKeyword
	global vResumeKeyword
	global vGrowlKeyword
	global vNCKeyword
	global vCloseKeyword
	global vShowKeyword
	global vHideKeyword
	global vEnableKeyword
	global vDisableKeyword
	global vStatusKeyword
	global vRestartKeyword
	global vSettingsKeyword
	global vPath
	set vHome to path to home folder as text
	set vPath to POSIX path of vHome & "Library/Application Support/Alfred/NCProperties.plist"
	--check if plist exists, if not make new plist
	if mFindPList() = false then
		mMakeNewPList()
	end if
	--check UI scripting status, change if needed
	enable_GUI_scripting()
	
	--set settings to custom settings
	tell application "System Events"
		tell property list file vPath
			tell contents
				set vSettings to value of property list item "Custom Settings"
			end tell
		end tell
	end tell
	
	--extrac keywords from settings, set keywords
	set vSettings to mSettingsExtract(vSettings)
	
	set vPauseKeyword to item 1 of vSettings
	set vResumeKeyword to item 2 of vSettings
	set vGrowlKeyword to item 3 of vSettings
	set vNCKeyword to item 4 of vSettings
	set vCloseKeyword to item 5 of vSettings
	set vShowKeyword to item 6 of vSettings
	set vHideKeyword to item 7 of vSettings
	set vEnableKeyword to item 8 of vSettings
	set vDisableKeyword to item 9 of vSettings
	set vStatusKeyword to item 10 of vSettings
	set vRestartKeyword to item 11 of vSettings
	set vSettingsKeyword to item 12 of vSettings
	--check for keywords in user input
	set vInput to q
	if vPauseKeyword contains vInput then
		tell application "Growl"
			notify with name ¬
				"Extension Output" title ¬
				"Notification Control" description ¬
				"Growl and Notification Center are now paused." application name "Alfred"
		end tell
		delay 2
		if mIsNotificationCenterOn() = true then
			tell application "System Events"
				tell process "NotificationCenter"
					key down option
					click menu bar item 1 of menu bar 1
					key up option
				end tell
			end tell
		end if
		tell application "Growl" to pause
	else if vResumeKeyword contains vInput then
		tell application "Growl" to resume
		if mIsNotificationCenterOn() = false then
			tell application "System Events"
				tell process "NotificationCenter"
					key down option
					click menu bar item 1 of menu bar 1
					key up option
				end tell
			end tell
		end if
		tell application "Growl"
			notify with name ¬
				"Extension Output" title ¬
				"Notification Control" description ¬
				"Growl and Notification Center are running." application name "Alfred"
		end tell
	else if vCloseKeyword contains vInput then
		tell application "Growl" to close all notifications
	else if vGrowlKeyword contains vInput then
		tell application "Growl"
			if is paused = true then
				resume
				notify with name ¬
					"Extension Output" title ¬
					"Notification Control" description ¬
					"Growl is running." application name "Alfred"
				
			else
				notify with name ¬
					"Extension Output" title ¬
					"Notification Control" description ¬
					"Growl is now paused." application name "Alfred"
				pause
			end if
		end tell
	else if vShowKeyword contains vInput then
		tell application "Growl" to show rollup
	else if vHideKeyword contains vInput then
		tell application "Growl" to hide rollup
	else if vEnableKeyword contains vInput then
		tell application "Growl"
			notify with name ¬
				"Extension Output" title ¬
				"Notification Control" description ¬
				"Incomming network is allowed." application name "Alfred"
			enable incoming network
		end tell
	else if vDisableKeyword contains vInput then
		tell application "Growl"
			notify with name ¬
				"Extension Output" title ¬
				"Notification Control" description ¬
				"Incomming network is not allowed." application name "Alfred"
			disable incoming network
		end tell
	else if vRestartKeyword contains vInput then
		tell application "Growl" to quit
		delay 0.5
		tell application "Growl" to activate
	else if vStatusKeyword contains vInput then
		tell application "Growl"
			if is paused = true then
				set vPaused to "paused."
			else
				set vPaused to "running."
			end if
			if allows incoming network = true then
				set vNetW to "is allowed."
			else
				set vNetW to "is not allowed."
			end if
		end tell
		if mIsNotificationCenterOn() = true then
			set vNCStat to "is running."
		else if mIsNotificationCenterOn() = false then
			set vNCStat to "is paused."
		end if
		display dialog "Growl is " & vPaused & return & "Growl's incoming network " & vNetW & return & return & "NotificationCenter" & space & vNCStat buttons {"Ok"} default button 1
	else if vNCKeyword contains vInput then
		tell application "System Events"
			tell process "NotificationCenter"
				key down option
				click menu bar item 1 of menu bar 1
				key up option
			end tell
		end tell
	else
		tell application "System Events"
			tell property list file vPath
				tell contents
					set vSettings to value of property list item "Custom Settings"
				end tell
			end tell
		end tell
		display dialog "To change the settings edit the text between the ||" default answer vSettings buttons {"Change", "Default", "Cancel"} default button 1
		copy the result as list to {text_returned, button_pressed}
		if button_pressed = "Change" then
			if mVerifySettings(text_returned) = false then
				display dialog "There is something wrong with your custom settings!"
				return false
			end if
			tell application "System Events"
				tell property list file vPath
					tell contents
						set value of property list item "Custom Settings" to text_returned
					end tell
				end tell
			end tell
		else if button_pressed = "Default" then
			tell application "System Events"
				tell property list file vPath
					tell contents
						set vSettings to value of property list item "Default Settings"
					end tell
				end tell
			end tell
			tell application "System Events"
				tell property list file vPath
					tell contents
						set value of property list item "Custom Settings" to vSettings
					end tell
				end tell
			end tell
		end if
	end if
end alfred_script

--input: string, output: list of lists
on mSettingsExtract(vInput)
	set vOutPut to {}
	--do stuff
	set x to 2
	repeat 12 times
		set AppleScript's text item delimiters to "|"
		set vTr to text item x of vInput
		set AppleScript's text item delimiters to "/"
		set vTr to every text item in vTr as list
		copy vTr to the end of vOutPut
		set x to x + 2
	end repeat
	return vOutPut
end mSettingsExtract

on mFindPList()
	try
		do shell script "find ~/Library/Application\\ Support/Alfred/NCProperties.plist"
		return true
	on error
		return false
	end try
end mFindPList

on mMakeNewPList()
	set vEmptyPListData to "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">
<plist version=\"1.0\">
<dict>
	<key>Custom Settings</key>
	<string>Pause Growl + Notification Center : |p/pause|
Resume Growl + Notification Center : |r/resume|
Pause Growl : |gr/growl|
Pause or resume Notification Center : |nc|
Close all growl notifications : |c/close|
Shows the rollup : |show/s|
Hides the rollup : |hide/h|
Enables the incoming network : |enable/e|
Disables the incoming network : |disable/d|
Shows the current status of Growl : |status/stat|
Restarts Growl : |restart/res|
Settings : |settings|
Lists these commands : |help/?|</string>
	<key>Default Settings</key>
	<string>Pause Growl + Notification Center : |p/pause|
Resume Growl + Notification Center : |r/resume|
Pause Growl : |gr/growl|
Pause or resume Notification Center : |nc|
Close all growl notifications : |c/close|
Shows the rollup : |show/s|
Hides the rollup : |hide/h|
Enables the incoming network : |enable/e|
Disables the incoming network : |disable/d|
Shows the current status of Growl : |status/stat|
Restarts Growl : |restart/res|
Settings : |settings|
Lists these commands : |help/?|</string>
</dict>
</plist>
"
	set vHome to path to home folder as text
	set vPath to POSIX path of vHome & "Library/Application Support/Alfred/NCProperties.plist"
	set vPList to open for access vPath with write permission
	set eof of vPList to 0
	write vEmptyPListData to vPList starting at eof
	close access vPList
end mMakeNewPList

--input: string, output:bool
on mVerifySettings(vInput)
	set vHome to path to home folder as text
	set vPath to POSIX path of vHome & "Library/Application Support/Alfred/NCProperties.plist"
	tell application "System Events"
		tell property list file vPath
			tell contents
				set vSettings to value of property list item "Default Settings"
			end tell
		end tell
	end tell
	
	set AppleScript's text item delimiters to "|"
	set vInput to every text item in vInput as list
	set vSettings to every text item in vSettings as list
	if (count every text item in vInput)  27 then
		return false
	end if
	if item 1 of vInput  item 1 of vSettings then
		return false
	else if item 3 of vInput  item 3 of vSettings then
		return false
	else if item 5 of vInput  item 5 of vSettings then
		return false
	else if item 7 of vInput  item 7 of vSettings then
		return false
	else if item 9 of vInput  item 9 of vSettings then
		return false
	else if item 11 of vInput  item 11 of vSettings then
		return false
	else if item 13 of vInput  item 13 of vSettings then
		return false
	else if item 15 of vInput  item 15 of vSettings then
		return false
	else if item 17 of vInput  item 17 of vSettings then
		return false
	else if item 19 of vInput  item 19 of vSettings then
		return false
	else if item 21 of vInput  item 21 of vSettings then
		return false
	else if item 23 of vInput  item 23 of vSettings then
		return false
	else if item 25 of vInput  item 25 of vSettings then
		return false
	end if
	return true
end mVerifySettings

--input: void, output: bool
on enable_GUI_scripting()
	try
		if (system attribute "sysv") < 4138 then display dialog "This script requires the installation of Mac OS X 10.3 or higher." buttons {"Cancel"} default button 1 with icon 2
		tell application "System Events" to if not UI elements enabled then
			tell me
				activate
				display dialog "This script requires the built-in Graphic User Interface Scripting architecture of Mac OS X, which is currently disabled." & return & return & "Enable GUI Scripting now? (You may be asked to enter your password)" buttons {"Cancel", "Enable"} default button 2 with icon 2
			end tell
			set UI elements enabled to true
			if not UI elements enabled then error number -128
		end if
		return true
	on error
		return false
	end try
end enable_GUI_scripting

--input: void, output: bool
on mIsNotificationCenterOn()
	tell application "System Events"
		tell process "NotificationCenter"
			set x to value of menu bar item 1 of menu bar 1
		end tell
	end tell
	try
		set x to x as string
		set flag to false
	on error
		set flag to true
	end try
	return flag
end mIsNotificationCenterOn
https://snippets.siftie.com/embed/cbbc93b14413d584d053f43e27a1df88/
/raw/cbbc93b14413d584d053f43e27a1df88/
cbbc93b14413d584d053f43e27a1df88
applescript
AppleScript
351
2019-02-16T06:37:30
True
False
False
Dec 18, 2012 at 07:12 PM
/api/public/snipt/52071/
control-notification-center-and-growlapp
<table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><a href="#L-1"> 1</a> <a href="#L-2"> 2</a> <a href="#L-3"> 3</a> <a href="#L-4"> 4</a> <a href="#L-5"> 5</a> <a href="#L-6"> 6</a> <a href="#L-7"> 7</a> <a href="#L-8"> 8</a> <a href="#L-9"> 9</a> <a href="#L-10"> 10</a> <a href="#L-11"> 11</a> <a href="#L-12"> 12</a> <a href="#L-13"> 13</a> <a href="#L-14"> 14</a> <a href="#L-15"> 15</a> <a href="#L-16"> 16</a> <a href="#L-17"> 17</a> <a href="#L-18"> 18</a> <a href="#L-19"> 19</a> <a href="#L-20"> 20</a> <a href="#L-21"> 21</a> <a href="#L-22"> 22</a> <a href="#L-23"> 23</a> <a href="#L-24"> 24</a> <a href="#L-25"> 25</a> <a href="#L-26"> 26</a> <a href="#L-27"> 27</a> <a href="#L-28"> 28</a> <a href="#L-29"> 29</a> <a href="#L-30"> 30</a> <a href="#L-31"> 31</a> <a href="#L-32"> 32</a> <a href="#L-33"> 33</a> <a href="#L-34"> 34</a> <a href="#L-35"> 35</a> <a href="#L-36"> 36</a> <a href="#L-37"> 37</a> <a href="#L-38"> 38</a> <a href="#L-39"> 39</a> <a href="#L-40"> 40</a> <a href="#L-41"> 41</a> <a href="#L-42"> 42</a> <a href="#L-43"> 43</a> <a href="#L-44"> 44</a> <a href="#L-45"> 45</a> <a href="#L-46"> 46</a> <a href="#L-47"> 47</a> <a href="#L-48"> 48</a> <a href="#L-49"> 49</a> <a href="#L-50"> 50</a> <a href="#L-51"> 51</a> <a href="#L-52"> 52</a> <a href="#L-53"> 53</a> <a href="#L-54"> 54</a> <a href="#L-55"> 55</a> <a href="#L-56"> 56</a> <a href="#L-57"> 57</a> <a href="#L-58"> 58</a> <a href="#L-59"> 59</a> <a href="#L-60"> 60</a> <a href="#L-61"> 61</a> <a href="#L-62"> 62</a> <a href="#L-63"> 63</a> <a href="#L-64"> 64</a> <a href="#L-65"> 65</a> <a href="#L-66"> 66</a> <a href="#L-67"> 67</a> <a href="#L-68"> 68</a> <a href="#L-69"> 69</a> <a href="#L-70"> 70</a> <a href="#L-71"> 71</a> <a href="#L-72"> 72</a> <a href="#L-73"> 73</a> <a href="#L-74"> 74</a> <a href="#L-75"> 75</a> <a href="#L-76"> 76</a> <a href="#L-77"> 77</a> <a href="#L-78"> 78</a> <a href="#L-79"> 79</a> <a href="#L-80"> 80</a> <a href="#L-81"> 81</a> <a href="#L-82"> 82</a> <a href="#L-83"> 83</a> <a href="#L-84"> 84</a> <a href="#L-85"> 85</a> <a href="#L-86"> 86</a> <a href="#L-87"> 87</a> <a href="#L-88"> 88</a> <a href="#L-89"> 89</a> <a href="#L-90"> 90</a> <a href="#L-91"> 91</a> <a href="#L-92"> 92</a> <a href="#L-93"> 93</a> <a href="#L-94"> 94</a> <a href="#L-95"> 95</a> <a href="#L-96"> 96</a> <a href="#L-97"> 97</a> <a href="#L-98"> 98</a> <a href="#L-99"> 99</a> <a href="#L-100">100</a> <a href="#L-101">101</a> <a href="#L-102">102</a> <a href="#L-103">103</a> <a href="#L-104">104</a> <a href="#L-105">105</a> <a href="#L-106">106</a> <a href="#L-107">107</a> <a href="#L-108">108</a> <a href="#L-109">109</a> <a href="#L-110">110</a> <a href="#L-111">111</a> <a href="#L-112">112</a> <a href="#L-113">113</a> <a href="#L-114">114</a> <a href="#L-115">115</a> <a href="#L-116">116</a> <a href="#L-117">117</a> <a href="#L-118">118</a> <a href="#L-119">119</a> <a href="#L-120">120</a> <a href="#L-121">121</a> <a href="#L-122">122</a> <a href="#L-123">123</a> <a href="#L-124">124</a> <a href="#L-125">125</a> <a href="#L-126">126</a> <a href="#L-127">127</a> <a href="#L-128">128</a> <a href="#L-129">129</a> <a href="#L-130">130</a> <a href="#L-131">131</a> <a href="#L-132">132</a> <a href="#L-133">133</a> <a href="#L-134">134</a> <a href="#L-135">135</a> <a href="#L-136">136</a> <a href="#L-137">137</a> <a href="#L-138">138</a> <a href="#L-139">139</a> <a href="#L-140">140</a> <a href="#L-141">141</a> <a href="#L-142">142</a> <a href="#L-143">143</a> <a href="#L-144">144</a> <a href="#L-145">145</a> <a href="#L-146">146</a> <a href="#L-147">147</a> <a href="#L-148">148</a> <a href="#L-149">149</a> <a href="#L-150">150</a> <a href="#L-151">151</a> <a href="#L-152">152</a> <a href="#L-153">153</a> <a href="#L-154">154</a> <a href="#L-155">155</a> <a href="#L-156">156</a> <a href="#L-157">157</a> <a href="#L-158">158</a> <a href="#L-159">159</a> <a href="#L-160">160</a> <a href="#L-161">161</a> <a href="#L-162">162</a> <a href="#L-163">163</a> <a href="#L-164">164</a> <a href="#L-165">165</a> <a href="#L-166">166</a> <a href="#L-167">167</a> <a href="#L-168">168</a> <a href="#L-169">169</a> <a href="#L-170">170</a> <a href="#L-171">171</a> <a href="#L-172">172</a> <a href="#L-173">173</a> <a href="#L-174">174</a> <a href="#L-175">175</a> <a href="#L-176">176</a> <a href="#L-177">177</a> <a href="#L-178">178</a> <a href="#L-179">179</a> <a href="#L-180">180</a> <a href="#L-181">181</a> <a href="#L-182">182</a> <a href="#L-183">183</a> <a href="#L-184">184</a> <a href="#L-185">185</a> <a href="#L-186">186</a> <a href="#L-187">187</a> <a href="#L-188">188</a> <a href="#L-189">189</a> <a href="#L-190">190</a> <a href="#L-191">191</a> <a href="#L-192">192</a> <a href="#L-193">193</a> <a href="#L-194">194</a> <a href="#L-195">195</a> <a href="#L-196">196</a> <a href="#L-197">197</a> <a href="#L-198">198</a> <a href="#L-199">199</a> <a href="#L-200">200</a> <a href="#L-201">201</a> <a href="#L-202">202</a> <a href="#L-203">203</a> <a href="#L-204">204</a> <a href="#L-205">205</a> <a href="#L-206">206</a> <a href="#L-207">207</a> <a href="#L-208">208</a> <a href="#L-209">209</a> <a href="#L-210">210</a> <a href="#L-211">211</a> <a href="#L-212">212</a> <a href="#L-213">213</a> <a href="#L-214">214</a> <a href="#L-215">215</a> <a href="#L-216">216</a> <a href="#L-217">217</a> <a href="#L-218">218</a> <a href="#L-219">219</a> <a href="#L-220">220</a> <a href="#L-221">221</a> <a href="#L-222">222</a> <a href="#L-223">223</a> <a href="#L-224">224</a> <a href="#L-225">225</a> <a href="#L-226">226</a> <a href="#L-227">227</a> <a href="#L-228">228</a> <a href="#L-229">229</a> <a href="#L-230">230</a> <a href="#L-231">231</a> <a href="#L-232">232</a> <a href="#L-233">233</a> <a href="#L-234">234</a> <a href="#L-235">235</a> <a href="#L-236">236</a> <a href="#L-237">237</a> <a href="#L-238">238</a> <a href="#L-239">239</a> <a href="#L-240">240</a> <a href="#L-241">241</a> <a href="#L-242">242</a> <a href="#L-243">243</a> <a href="#L-244">244</a> <a href="#L-245">245</a> <a href="#L-246">246</a> <a href="#L-247">247</a> <a href="#L-248">248</a> <a href="#L-249">249</a> <a href="#L-250">250</a> <a href="#L-251">251</a> <a href="#L-252">252</a> <a href="#L-253">253</a> <a href="#L-254">254</a> <a href="#L-255">255</a> <a href="#L-256">256</a> <a href="#L-257">257</a> <a href="#L-258">258</a> <a href="#L-259">259</a> <a href="#L-260">260</a> <a href="#L-261">261</a> <a href="#L-262">262</a> <a href="#L-263">263</a> <a href="#L-264">264</a> <a href="#L-265">265</a> <a href="#L-266">266</a> <a href="#L-267">267</a> <a href="#L-268">268</a> <a href="#L-269">269</a> <a href="#L-270">270</a> <a href="#L-271">271</a> <a href="#L-272">272</a> <a href="#L-273">273</a> <a href="#L-274">274</a> <a href="#L-275">275</a> <a href="#L-276">276</a> <a href="#L-277">277</a> <a href="#L-278">278</a> <a href="#L-279">279</a> <a href="#L-280">280</a> <a href="#L-281">281</a> <a href="#L-282">282</a> <a href="#L-283">283</a> <a href="#L-284">284</a> <a href="#L-285">285</a> <a href="#L-286">286</a> <a href="#L-287">287</a> <a href="#L-288">288</a> <a href="#L-289">289</a> <a href="#L-290">290</a> <a href="#L-291">291</a> <a href="#L-292">292</a> <a href="#L-293">293</a> <a href="#L-294">294</a> <a href="#L-295">295</a> <a href="#L-296">296</a> <a href="#L-297">297</a> <a href="#L-298">298</a> <a href="#L-299">299</a> <a href="#L-300">300</a> <a href="#L-301">301</a> <a href="#L-302">302</a> <a href="#L-303">303</a> <a href="#L-304">304</a> <a href="#L-305">305</a> <a href="#L-306">306</a> <a href="#L-307">307</a> <a href="#L-308">308</a> <a href="#L-309">309</a> <a href="#L-310">310</a> <a href="#L-311">311</a> <a href="#L-312">312</a> <a href="#L-313">313</a> <a href="#L-314">314</a> <a href="#L-315">315</a> <a href="#L-316">316</a> <a href="#L-317">317</a> <a href="#L-318">318</a> <a href="#L-319">319</a> <a href="#L-320">320</a> <a href="#L-321">321</a> <a href="#L-322">322</a> <a href="#L-323">323</a> <a href="#L-324">324</a> <a href="#L-325">325</a> <a href="#L-326">326</a> <a href="#L-327">327</a> <a href="#L-328">328</a> <a href="#L-329">329</a> <a href="#L-330">330</a> <a href="#L-331">331</a> <a href="#L-332">332</a> <a href="#L-333">333</a> <a href="#L-334">334</a> <a href="#L-335">335</a> <a href="#L-336">336</a> <a href="#L-337">337</a> <a href="#L-338">338</a> <a href="#L-339">339</a> <a href="#L-340">340</a> <a href="#L-341">341</a> <a href="#L-342">342</a> <a href="#L-343">343</a> <a href="#L-344">344</a> <a href="#L-345">345</a> <a href="#L-346">346</a> <a href="#L-347">347</a> <a href="#L-348">348</a> <a href="#L-349">349</a> <a href="#L-350">350</a> <a href="#L-351">351</a></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span id="L-1"><a name="L-1"></a><span class="c">#Desc: Controls Growl.app</span> </span><span id="L-2"><a name="L-2"></a><span class="c">#Use: notification_control &lt;keyword&gt;</span> </span><span id="L-3"><a name="L-3"></a><span class="c">#Ex: notification_control pause</span> </span><span id="L-4"><a name="L-4"></a><span class="c">#Version: v1.3.1</span> </span><span id="L-5"><a name="L-5"></a> </span><span id="L-6"><a name="L-6"></a><span class="k">on</span> <span class="nv">alfred_script</span><span class="p">(</span><span class="nv">q</span><span class="p">)</span> </span><span id="L-7"><a name="L-7"></a> <span class="c">--set global containers</span> </span><span id="L-8"><a name="L-8"></a> <span class="k">global</span> <span class="nv">vPauseKeyword</span> </span><span id="L-9"><a name="L-9"></a> <span class="k">global</span> <span class="nv">vResumeKeyword</span> </span><span id="L-10"><a name="L-10"></a> <span class="k">global</span> <span class="nv">vGrowlKeyword</span> </span><span id="L-11"><a name="L-11"></a> <span class="k">global</span> <span class="nv">vNCKeyword</span> </span><span id="L-12"><a name="L-12"></a> <span class="k">global</span> <span class="nv">vCloseKeyword</span> </span><span id="L-13"><a name="L-13"></a> <span class="k">global</span> <span class="nv">vShowKeyword</span> </span><span id="L-14"><a name="L-14"></a> <span class="k">global</span> <span class="nv">vHideKeyword</span> </span><span id="L-15"><a name="L-15"></a> <span class="k">global</span> <span class="nv">vEnableKeyword</span> </span><span id="L-16"><a name="L-16"></a> <span class="k">global</span> <span class="nv">vDisableKeyword</span> </span><span id="L-17"><a name="L-17"></a> <span class="k">global</span> <span class="nv">vStatusKeyword</span> </span><span id="L-18"><a name="L-18"></a> <span class="k">global</span> <span class="nv">vRestartKeyword</span> </span><span id="L-19"><a name="L-19"></a> <span class="k">global</span> <span class="nv">vSettingsKeyword</span> </span><span id="L-20"><a name="L-20"></a> <span class="k">global</span> <span class="nv">vPath</span> </span><span id="L-21"><a name="L-21"></a> <span class="k">set</span> <span class="nv">vHome</span> <span class="k">to</span> <span class="nb">path to</span> <span class="nv">home</span> <span class="nv">folder</span> <span class="k">as </span><span class="nc">text</span> </span><span id="L-22"><a name="L-22"></a> <span class="k">set</span> <span class="nv">vPath</span> <span class="k">to</span> <span class="nv">POSIX</span> <span class="na">path</span> <span class="k">of</span> <span class="nv">vHome</span> <span class="o">&amp;</span> <span class="s2">&quot;Library/Application Support/Alfred/NCProperties.plist&quot;</span> </span><span id="L-23"><a name="L-23"></a> <span class="c">--check if plist exists, if not make new plist</span> </span><span id="L-24"><a name="L-24"></a> <span class="k">if</span> <span class="nv">mFindPList</span><span class="p">()</span> <span class="o">=</span> <span class="no">false</span> <span class="k">then</span> </span><span id="L-25"><a name="L-25"></a> <span class="nv">mMakeNewPList</span><span class="p">()</span> </span><span id="L-26"><a name="L-26"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-27"><a name="L-27"></a> <span class="c">--check UI scripting status, change if needed</span> </span><span id="L-28"><a name="L-28"></a> <span class="nv">enable_GUI_scripting</span><span class="p">()</span> </span><span id="L-29"><a name="L-29"></a> </span><span id="L-30"><a name="L-30"></a> <span class="c">--set settings to custom settings</span> </span><span id="L-31"><a name="L-31"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-32"><a name="L-32"></a> <span class="k">tell</span> <span class="k">property</span> <span class="nv">list</span> <span class="nv">file</span> <span class="nv">vPath</span> </span><span id="L-33"><a name="L-33"></a> <span class="k">tell</span> <span class="na">contents</span> </span><span id="L-34"><a name="L-34"></a> <span class="k">set</span> <span class="nv">vSettings</span> <span class="k">to</span> <span class="nv">value</span> <span class="k">of</span> <span class="k">property</span> <span class="nv">list</span> <span class="nb">item</span> <span class="s2">&quot;Custom Settings&quot;</span> </span><span id="L-35"><a name="L-35"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-36"><a name="L-36"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-37"><a name="L-37"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-38"><a name="L-38"></a> </span><span id="L-39"><a name="L-39"></a> <span class="c">--extrac keywords from settings, set keywords</span> </span><span id="L-40"><a name="L-40"></a> <span class="k">set</span> <span class="nv">vSettings</span> <span class="k">to</span> <span class="nv">mSettingsExtract</span><span class="p">(</span><span class="nv">vSettings</span><span class="p">)</span> </span><span id="L-41"><a name="L-41"></a> </span><span id="L-42"><a name="L-42"></a> <span class="k">set</span> <span class="nv">vPauseKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">1</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-43"><a name="L-43"></a> <span class="k">set</span> <span class="nv">vResumeKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">2</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-44"><a name="L-44"></a> <span class="k">set</span> <span class="nv">vGrowlKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">3</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-45"><a name="L-45"></a> <span class="k">set</span> <span class="nv">vNCKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">4</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-46"><a name="L-46"></a> <span class="k">set</span> <span class="nv">vCloseKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">5</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-47"><a name="L-47"></a> <span class="k">set</span> <span class="nv">vShowKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">6</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-48"><a name="L-48"></a> <span class="k">set</span> <span class="nv">vHideKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">7</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-49"><a name="L-49"></a> <span class="k">set</span> <span class="nv">vEnableKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">8</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-50"><a name="L-50"></a> <span class="k">set</span> <span class="nv">vDisableKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">9</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-51"><a name="L-51"></a> <span class="k">set</span> <span class="nv">vStatusKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">10</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-52"><a name="L-52"></a> <span class="k">set</span> <span class="nv">vRestartKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">11</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-53"><a name="L-53"></a> <span class="k">set</span> <span class="nv">vSettingsKeyword</span> <span class="k">to</span> <span class="nb">item</span> <span class="mi">12</span> <span class="k">of</span> <span class="nv">vSettings</span> </span><span id="L-54"><a name="L-54"></a> <span class="c">--check for keywords in user input</span> </span><span id="L-55"><a name="L-55"></a> <span class="k">set</span> <span class="nv">vInput</span> <span class="k">to</span> <span class="nv">q</span> </span><span id="L-56"><a name="L-56"></a> <span class="k">if</span> <span class="nv">vPauseKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-57"><a name="L-57"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> </span><span id="L-58"><a name="L-58"></a> <span class="nv">notify</span> <span class="nv">with</span> <span class="na">name</span> <span class="se">¬</span> </span><span id="L-59"><a name="L-59"></a> <span class="s2">&quot;Extension Output&quot;</span> <span class="na">title</span> <span class="se">¬</span> </span><span id="L-60"><a name="L-60"></a> <span class="s2">&quot;Notification Control&quot;</span> <span class="nv">description</span> <span class="se">¬</span> </span><span id="L-61"><a name="L-61"></a> <span class="s2">&quot;Growl and Notification Center are now paused.&quot;</span> <span class="nb">application</span> <span class="na">name</span> <span class="s2">&quot;Alfred&quot;</span> </span><span id="L-62"><a name="L-62"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-63"><a name="L-63"></a> <span class="nb">delay</span> <span class="mi">2</span> </span><span id="L-64"><a name="L-64"></a> <span class="k">if</span> <span class="nv">mIsNotificationCenterOn</span><span class="p">()</span> <span class="o">=</span> <span class="no">true</span> <span class="k">then</span> </span><span id="L-65"><a name="L-65"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-66"><a name="L-66"></a> <span class="k">tell</span> <span class="nv">process</span> <span class="s2">&quot;NotificationCenter&quot;</span> </span><span id="L-67"><a name="L-67"></a> <span class="na">key</span> <span class="nv">down</span> <span class="nv">option</span> </span><span id="L-68"><a name="L-68"></a> <span class="nv">click</span> <span class="na">menu</span> <span class="nv">bar</span> <span class="nb">item</span> <span class="mi">1</span> <span class="k">of</span> <span class="na">menu</span> <span class="nv">bar</span> <span class="mi">1</span> </span><span id="L-69"><a name="L-69"></a> <span class="na">key</span> <span class="nv">up</span> <span class="nv">option</span> </span><span id="L-70"><a name="L-70"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-71"><a name="L-71"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-72"><a name="L-72"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-73"><a name="L-73"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> <span class="k">to</span> <span class="nb">pause</span> </span><span id="L-74"><a name="L-74"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vResumeKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-75"><a name="L-75"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> <span class="k">to</span> <span class="nb">resume</span> </span><span id="L-76"><a name="L-76"></a> <span class="k">if</span> <span class="nv">mIsNotificationCenterOn</span><span class="p">()</span> <span class="o">=</span> <span class="no">false</span> <span class="k">then</span> </span><span id="L-77"><a name="L-77"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-78"><a name="L-78"></a> <span class="k">tell</span> <span class="nv">process</span> <span class="s2">&quot;NotificationCenter&quot;</span> </span><span id="L-79"><a name="L-79"></a> <span class="na">key</span> <span class="nv">down</span> <span class="nv">option</span> </span><span id="L-80"><a name="L-80"></a> <span class="nv">click</span> <span class="na">menu</span> <span class="nv">bar</span> <span class="nb">item</span> <span class="mi">1</span> <span class="k">of</span> <span class="na">menu</span> <span class="nv">bar</span> <span class="mi">1</span> </span><span id="L-81"><a name="L-81"></a> <span class="na">key</span> <span class="nv">up</span> <span class="nv">option</span> </span><span id="L-82"><a name="L-82"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-83"><a name="L-83"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-84"><a name="L-84"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-85"><a name="L-85"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> </span><span id="L-86"><a name="L-86"></a> <span class="nv">notify</span> <span class="nv">with</span> <span class="na">name</span> <span class="se">¬</span> </span><span id="L-87"><a name="L-87"></a> <span class="s2">&quot;Extension Output&quot;</span> <span class="na">title</span> <span class="se">¬</span> </span><span id="L-88"><a name="L-88"></a> <span class="s2">&quot;Notification Control&quot;</span> <span class="nv">description</span> <span class="se">¬</span> </span><span id="L-89"><a name="L-89"></a> <span class="s2">&quot;Growl and Notification Center are running.&quot;</span> <span class="nb">application</span> <span class="na">name</span> <span class="s2">&quot;Alfred&quot;</span> </span><span id="L-90"><a name="L-90"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-91"><a name="L-91"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vCloseKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-92"><a name="L-92"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> <span class="k">to</span> <span class="nb">close</span> <span class="nv">all</span> <span class="nv">notifications</span> </span><span id="L-93"><a name="L-93"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vGrowlKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-94"><a name="L-94"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> </span><span id="L-95"><a name="L-95"></a> <span class="k">if</span> <span class="ow">is</span> <span class="nv">paused</span> <span class="o">=</span> <span class="no">true</span> <span class="k">then</span> </span><span id="L-96"><a name="L-96"></a> <span class="nb">resume</span> </span><span id="L-97"><a name="L-97"></a> <span class="nv">notify</span> <span class="nv">with</span> <span class="na">name</span> <span class="se">¬</span> </span><span id="L-98"><a name="L-98"></a> <span class="s2">&quot;Extension Output&quot;</span> <span class="na">title</span> <span class="se">¬</span> </span><span id="L-99"><a name="L-99"></a> <span class="s2">&quot;Notification Control&quot;</span> <span class="nv">description</span> <span class="se">¬</span> </span><span id="L-100"><a name="L-100"></a> <span class="s2">&quot;Growl is running.&quot;</span> <span class="nb">application</span> <span class="na">name</span> <span class="s2">&quot;Alfred&quot;</span> </span><span id="L-101"><a name="L-101"></a> </span><span id="L-102"><a name="L-102"></a> <span class="k">else</span> </span><span id="L-103"><a name="L-103"></a> <span class="nv">notify</span> <span class="nv">with</span> <span class="na">name</span> <span class="se">¬</span> </span><span id="L-104"><a name="L-104"></a> <span class="s2">&quot;Extension Output&quot;</span> <span class="na">title</span> <span class="se">¬</span> </span><span id="L-105"><a name="L-105"></a> <span class="s2">&quot;Notification Control&quot;</span> <span class="nv">description</span> <span class="se">¬</span> </span><span id="L-106"><a name="L-106"></a> <span class="s2">&quot;Growl is now paused.&quot;</span> <span class="nb">application</span> <span class="na">name</span> <span class="s2">&quot;Alfred&quot;</span> </span><span id="L-107"><a name="L-107"></a> <span class="nb">pause</span> </span><span id="L-108"><a name="L-108"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-109"><a name="L-109"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-110"><a name="L-110"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vShowKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-111"><a name="L-111"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> <span class="k">to</span> <span class="nb">show</span> <span class="nv">rollup</span> </span><span id="L-112"><a name="L-112"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vHideKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-113"><a name="L-113"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> <span class="k">to</span> <span class="nb">hide</span> <span class="nv">rollup</span> </span><span id="L-114"><a name="L-114"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vEnableKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-115"><a name="L-115"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> </span><span id="L-116"><a name="L-116"></a> <span class="nv">notify</span> <span class="nv">with</span> <span class="na">name</span> <span class="se">¬</span> </span><span id="L-117"><a name="L-117"></a> <span class="s2">&quot;Extension Output&quot;</span> <span class="na">title</span> <span class="se">¬</span> </span><span id="L-118"><a name="L-118"></a> <span class="s2">&quot;Notification Control&quot;</span> <span class="nv">description</span> <span class="se">¬</span> </span><span id="L-119"><a name="L-119"></a> <span class="s2">&quot;Incomming network is allowed.&quot;</span> <span class="nb">application</span> <span class="na">name</span> <span class="s2">&quot;Alfred&quot;</span> </span><span id="L-120"><a name="L-120"></a> <span class="nv">enable</span> <span class="nv">incoming</span> <span class="nv">network</span> </span><span id="L-121"><a name="L-121"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-122"><a name="L-122"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vDisableKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-123"><a name="L-123"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> </span><span id="L-124"><a name="L-124"></a> <span class="nv">notify</span> <span class="nv">with</span> <span class="na">name</span> <span class="se">¬</span> </span><span id="L-125"><a name="L-125"></a> <span class="s2">&quot;Extension Output&quot;</span> <span class="na">title</span> <span class="se">¬</span> </span><span id="L-126"><a name="L-126"></a> <span class="s2">&quot;Notification Control&quot;</span> <span class="nv">description</span> <span class="se">¬</span> </span><span id="L-127"><a name="L-127"></a> <span class="s2">&quot;Incomming network is not allowed.&quot;</span> <span class="nb">application</span> <span class="na">name</span> <span class="s2">&quot;Alfred&quot;</span> </span><span id="L-128"><a name="L-128"></a> <span class="nv">disable</span> <span class="nv">incoming</span> <span class="nv">network</span> </span><span id="L-129"><a name="L-129"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-130"><a name="L-130"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vRestartKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-131"><a name="L-131"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> <span class="k">to</span> <span class="nb">quit</span> </span><span id="L-132"><a name="L-132"></a> <span class="nb">delay</span> <span class="mf">0.5</span> </span><span id="L-133"><a name="L-133"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> <span class="k">to</span> <span class="nb">activate</span> </span><span id="L-134"><a name="L-134"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vStatusKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-135"><a name="L-135"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;Growl&quot;</span> </span><span id="L-136"><a name="L-136"></a> <span class="k">if</span> <span class="ow">is</span> <span class="nv">paused</span> <span class="o">=</span> <span class="no">true</span> <span class="k">then</span> </span><span id="L-137"><a name="L-137"></a> <span class="k">set</span> <span class="nv">vPaused</span> <span class="k">to</span> <span class="s2">&quot;paused.&quot;</span> </span><span id="L-138"><a name="L-138"></a> <span class="k">else</span> </span><span id="L-139"><a name="L-139"></a> <span class="k">set</span> <span class="nv">vPaused</span> <span class="k">to</span> <span class="s2">&quot;running.&quot;</span> </span><span id="L-140"><a name="L-140"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-141"><a name="L-141"></a> <span class="k">if</span> <span class="nv">allows</span> <span class="nv">incoming</span> <span class="nv">network</span> <span class="o">=</span> <span class="no">true</span> <span class="k">then</span> </span><span id="L-142"><a name="L-142"></a> <span class="k">set</span> <span class="nv">vNetW</span> <span class="k">to</span> <span class="s2">&quot;is allowed.&quot;</span> </span><span id="L-143"><a name="L-143"></a> <span class="k">else</span> </span><span id="L-144"><a name="L-144"></a> <span class="k">set</span> <span class="nv">vNetW</span> <span class="k">to</span> <span class="s2">&quot;is not allowed.&quot;</span> </span><span id="L-145"><a name="L-145"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-146"><a name="L-146"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-147"><a name="L-147"></a> <span class="k">if</span> <span class="nv">mIsNotificationCenterOn</span><span class="p">()</span> <span class="o">=</span> <span class="no">true</span> <span class="k">then</span> </span><span id="L-148"><a name="L-148"></a> <span class="k">set</span> <span class="nv">vNCStat</span> <span class="k">to</span> <span class="s2">&quot;is running.&quot;</span> </span><span id="L-149"><a name="L-149"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">mIsNotificationCenterOn</span><span class="p">()</span> <span class="o">=</span> <span class="no">false</span> <span class="k">then</span> </span><span id="L-150"><a name="L-150"></a> <span class="k">set</span> <span class="nv">vNCStat</span> <span class="k">to</span> <span class="s2">&quot;is paused.&quot;</span> </span><span id="L-151"><a name="L-151"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-152"><a name="L-152"></a> <span class="nb">display dialog</span> <span class="s2">&quot;Growl is &quot;</span> <span class="o">&amp;</span> <span class="nv">vPaused</span> <span class="o">&amp;</span> <span class="no">return</span> <span class="o">&amp;</span> <span class="s2">&quot;Growl&#39;s incoming network &quot;</span> <span class="o">&amp;</span> <span class="nv">vNetW</span> <span class="o">&amp;</span> <span class="no">return</span> <span class="o">&amp;</span> <span class="no">return</span> <span class="o">&amp;</span> <span class="s2">&quot;NotificationCenter&quot;</span> <span class="o">&amp;</span> <span class="no">space</span> <span class="o">&amp;</span> <span class="nv">vNCStat</span> <span class="nb">buttons</span> <span class="p">{</span><span class="s2">&quot;Ok&quot;</span><span class="p">}</span> <span class="nv">default</span> <span class="nb">button</span> <span class="mi">1</span> </span><span id="L-153"><a name="L-153"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">vNCKeyword</span> <span class="ow">contains</span> <span class="nv">vInput</span> <span class="k">then</span> </span><span id="L-154"><a name="L-154"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-155"><a name="L-155"></a> <span class="k">tell</span> <span class="nv">process</span> <span class="s2">&quot;NotificationCenter&quot;</span> </span><span id="L-156"><a name="L-156"></a> <span class="na">key</span> <span class="nv">down</span> <span class="nv">option</span> </span><span id="L-157"><a name="L-157"></a> <span class="nv">click</span> <span class="na">menu</span> <span class="nv">bar</span> <span class="nb">item</span> <span class="mi">1</span> <span class="k">of</span> <span class="na">menu</span> <span class="nv">bar</span> <span class="mi">1</span> </span><span id="L-158"><a name="L-158"></a> <span class="na">key</span> <span class="nv">up</span> <span class="nv">option</span> </span><span id="L-159"><a name="L-159"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-160"><a name="L-160"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-161"><a name="L-161"></a> <span class="k">else</span> </span><span id="L-162"><a name="L-162"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-163"><a name="L-163"></a> <span class="k">tell</span> <span class="k">property</span> <span class="nv">list</span> <span class="nv">file</span> <span class="nv">vPath</span> </span><span id="L-164"><a name="L-164"></a> <span class="k">tell</span> <span class="na">contents</span> </span><span id="L-165"><a name="L-165"></a> <span class="k">set</span> <span class="nv">vSettings</span> <span class="k">to</span> <span class="nv">value</span> <span class="k">of</span> <span class="k">property</span> <span class="nv">list</span> <span class="nb">item</span> <span class="s2">&quot;Custom Settings&quot;</span> </span><span id="L-166"><a name="L-166"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-167"><a name="L-167"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-168"><a name="L-168"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-169"><a name="L-169"></a> <span class="nb">display dialog</span> <span class="s2">&quot;To change the settings edit the text between the ||&quot;</span> <span class="nv">default</span> <span class="nv">answer</span> <span class="nv">vSettings</span> <span class="nb">buttons</span> <span class="p">{</span><span class="s2">&quot;Change&quot;</span><span class="p">,</span> <span class="s2">&quot;Default&quot;</span><span class="p">,</span> <span class="s2">&quot;Cancel&quot;</span><span class="p">}</span> <span class="nv">default</span> <span class="nb">button</span> <span class="mi">1</span> </span><span id="L-170"><a name="L-170"></a> <span class="nb">copy</span> <span class="nb">the</span> <span class="no">result</span> <span class="k">as </span><span class="nc">list </span><span class="k">to</span> <span class="p">{</span><span class="nv">text_returned</span><span class="p">,</span> <span class="nv">button_pressed</span><span class="p">}</span> </span><span id="L-171"><a name="L-171"></a> <span class="k">if</span> <span class="nv">button_pressed</span> <span class="o">=</span> <span class="s2">&quot;Change&quot;</span> <span class="k">then</span> </span><span id="L-172"><a name="L-172"></a> <span class="k">if</span> <span class="nv">mVerifySettings</span><span class="p">(</span><span class="nv">text_returned</span><span class="p">)</span> <span class="o">=</span> <span class="no">false</span> <span class="k">then</span> </span><span id="L-173"><a name="L-173"></a> <span class="nb">display dialog</span> <span class="s2">&quot;There is something wrong with your custom settings!&quot;</span> </span><span id="L-174"><a name="L-174"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-175"><a name="L-175"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-176"><a name="L-176"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-177"><a name="L-177"></a> <span class="k">tell</span> <span class="k">property</span> <span class="nv">list</span> <span class="nv">file</span> <span class="nv">vPath</span> </span><span id="L-178"><a name="L-178"></a> <span class="k">tell</span> <span class="na">contents</span> </span><span id="L-179"><a name="L-179"></a> <span class="k">set</span> <span class="nv">value</span> <span class="k">of</span> <span class="k">property</span> <span class="nv">list</span> <span class="nb">item</span> <span class="s2">&quot;Custom Settings&quot;</span> <span class="k">to</span> <span class="nv">text_returned</span> </span><span id="L-180"><a name="L-180"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-181"><a name="L-181"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-182"><a name="L-182"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-183"><a name="L-183"></a> <span class="k">else</span> <span class="k">if</span> <span class="nv">button_pressed</span> <span class="o">=</span> <span class="s2">&quot;Default&quot;</span> <span class="k">then</span> </span><span id="L-184"><a name="L-184"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-185"><a name="L-185"></a> <span class="k">tell</span> <span class="k">property</span> <span class="nv">list</span> <span class="nv">file</span> <span class="nv">vPath</span> </span><span id="L-186"><a name="L-186"></a> <span class="k">tell</span> <span class="na">contents</span> </span><span id="L-187"><a name="L-187"></a> <span class="k">set</span> <span class="nv">vSettings</span> <span class="k">to</span> <span class="nv">value</span> <span class="k">of</span> <span class="k">property</span> <span class="nv">list</span> <span class="nb">item</span> <span class="s2">&quot;Default Settings&quot;</span> </span><span id="L-188"><a name="L-188"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-189"><a name="L-189"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-190"><a name="L-190"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-191"><a name="L-191"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-192"><a name="L-192"></a> <span class="k">tell</span> <span class="k">property</span> <span class="nv">list</span> <span class="nv">file</span> <span class="nv">vPath</span> </span><span id="L-193"><a name="L-193"></a> <span class="k">tell</span> <span class="na">contents</span> </span><span id="L-194"><a name="L-194"></a> <span class="k">set</span> <span class="nv">value</span> <span class="k">of</span> <span class="k">property</span> <span class="nv">list</span> <span class="nb">item</span> <span class="s2">&quot;Custom Settings&quot;</span> <span class="k">to</span> <span class="nv">vSettings</span> </span><span id="L-195"><a name="L-195"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-196"><a name="L-196"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-197"><a name="L-197"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-198"><a name="L-198"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-199"><a name="L-199"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-200"><a name="L-200"></a><span class="k">end</span> <span class="nv">alfred_script</span> </span><span id="L-201"><a name="L-201"></a> </span><span id="L-202"><a name="L-202"></a><span class="c">--input: string, output: list of lists</span> </span><span id="L-203"><a name="L-203"></a><span class="k">on</span> <span class="nv">mSettingsExtract</span><span class="p">(</span><span class="nv">vInput</span><span class="p">)</span> </span><span id="L-204"><a name="L-204"></a> <span class="k">set</span> <span class="nv">vOutPut</span> <span class="k">to</span> <span class="p">{}</span> </span><span id="L-205"><a name="L-205"></a> <span class="c">--do stuff</span> </span><span id="L-206"><a name="L-206"></a> <span class="k">set</span> <span class="nv">x</span> <span class="k">to</span> <span class="mi">2</span> </span><span id="L-207"><a name="L-207"></a> <span class="k">repeat</span> <span class="mi">12</span> <span class="k">times</span> </span><span id="L-208"><a name="L-208"></a> <span class="k">set</span> <span class="no">AppleScript</span>&#39;s <span class="no">text item delimiters</span> <span class="k">to</span> <span class="s2">&quot;|&quot;</span> </span><span id="L-209"><a name="L-209"></a> <span class="k">set</span> <span class="nv">vTr</span> <span class="k">to</span> <span class="nb">text</span> <span class="nb">item</span> <span class="nv">x</span> <span class="k">of</span> <span class="nv">vInput</span> </span><span id="L-210"><a name="L-210"></a> <span class="k">set</span> <span class="no">AppleScript</span>&#39;s <span class="no">text item delimiters</span> <span class="k">to</span> <span class="s2">&quot;/&quot;</span> </span><span id="L-211"><a name="L-211"></a> <span class="k">set</span> <span class="nv">vTr</span> <span class="k">to</span> <span class="nb">every</span> <span class="nb">text</span> <span class="nb">item</span> <span class="k">in</span> <span class="nv">vTr</span> <span class="k">as</span> <span class="nv">list</span> </span><span id="L-212"><a name="L-212"></a> <span class="nb">copy</span> <span class="nv">vTr</span> <span class="k">to</span> <span class="nb">the</span> <span class="k">end</span> <span class="k">of</span> <span class="nv">vOutPut</span> </span><span id="L-213"><a name="L-213"></a> <span class="k">set</span> <span class="nv">x</span> <span class="k">to</span> <span class="nv">x</span> <span class="o">+</span> <span class="mi">2</span> </span><span id="L-214"><a name="L-214"></a> <span class="k">end</span> <span class="k">repeat</span> </span><span id="L-215"><a name="L-215"></a> <span class="no">return</span> <span class="nv">vOutPut</span> </span><span id="L-216"><a name="L-216"></a><span class="k">end</span> <span class="nv">mSettingsExtract</span> </span><span id="L-217"><a name="L-217"></a> </span><span id="L-218"><a name="L-218"></a><span class="k">on</span> <span class="nv">mFindPList</span><span class="p">()</span> </span><span id="L-219"><a name="L-219"></a> <span class="k">try</span> </span><span id="L-220"><a name="L-220"></a> <span class="nb">do shell script</span> <span class="s2">&quot;find ~/Library/Application\\ Support/Alfred/NCProperties.plist&quot;</span> </span><span id="L-221"><a name="L-221"></a> <span class="no">return</span> <span class="no">true</span> </span><span id="L-222"><a name="L-222"></a> <span class="nb">on</span> <span class="k">error</span> </span><span id="L-223"><a name="L-223"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-224"><a name="L-224"></a> <span class="k">end</span> <span class="k">try</span> </span><span id="L-225"><a name="L-225"></a><span class="k">end</span> <span class="nv">mFindPList</span> </span><span id="L-226"><a name="L-226"></a> </span><span id="L-227"><a name="L-227"></a><span class="k">on</span> <span class="nv">mMakeNewPList</span><span class="p">()</span> </span><span id="L-228"><a name="L-228"></a> <span class="k">set</span> <span class="nv">vEmptyPListData</span> <span class="k">to</span> <span class="s2">&quot;&lt;?xml version=\&quot;1.0\&quot; encoding=\&quot;UTF-8\&quot;?&gt;</span> </span><span id="L-229"><a name="L-229"></a><span class="s2">&lt;!DOCTYPE plist PUBLIC \&quot;-//Apple//DTD PLIST 1.0//EN\&quot; \&quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd\&quot;&gt;</span> </span><span id="L-230"><a name="L-230"></a><span class="s2">&lt;plist version=\&quot;1.0\&quot;&gt;</span> </span><span id="L-231"><a name="L-231"></a><span class="s2">&lt;dict&gt;</span> </span><span id="L-232"><a name="L-232"></a><span class="s2"> &lt;key&gt;Custom Settings&lt;/key&gt;</span> </span><span id="L-233"><a name="L-233"></a><span class="s2"> &lt;string&gt;Pause Growl + Notification Center : |p/pause|</span> </span><span id="L-234"><a name="L-234"></a><span class="s2">Resume Growl + Notification Center : |r/resume|</span> </span><span id="L-235"><a name="L-235"></a><span class="s2">Pause Growl : |gr/growl|</span> </span><span id="L-236"><a name="L-236"></a><span class="s2">Pause or resume Notification Center : |nc|</span> </span><span id="L-237"><a name="L-237"></a><span class="s2">Close all growl notifications : |c/close|</span> </span><span id="L-238"><a name="L-238"></a><span class="s2">Shows the rollup : |show/s|</span> </span><span id="L-239"><a name="L-239"></a><span class="s2">Hides the rollup : |hide/h|</span> </span><span id="L-240"><a name="L-240"></a><span class="s2">Enables the incoming network : |enable/e|</span> </span><span id="L-241"><a name="L-241"></a><span class="s2">Disables the incoming network : |disable/d|</span> </span><span id="L-242"><a name="L-242"></a><span class="s2">Shows the current status of Growl : |status/stat|</span> </span><span id="L-243"><a name="L-243"></a><span class="s2">Restarts Growl : |restart/res|</span> </span><span id="L-244"><a name="L-244"></a><span class="s2">Settings : |settings|</span> </span><span id="L-245"><a name="L-245"></a><span class="s2">Lists these commands : |help/?|&lt;/string&gt;</span> </span><span id="L-246"><a name="L-246"></a><span class="s2"> &lt;key&gt;Default Settings&lt;/key&gt;</span> </span><span id="L-247"><a name="L-247"></a><span class="s2"> &lt;string&gt;Pause Growl + Notification Center : |p/pause|</span> </span><span id="L-248"><a name="L-248"></a><span class="s2">Resume Growl + Notification Center : |r/resume|</span> </span><span id="L-249"><a name="L-249"></a><span class="s2">Pause Growl : |gr/growl|</span> </span><span id="L-250"><a name="L-250"></a><span class="s2">Pause or resume Notification Center : |nc|</span> </span><span id="L-251"><a name="L-251"></a><span class="s2">Close all growl notifications : |c/close|</span> </span><span id="L-252"><a name="L-252"></a><span class="s2">Shows the rollup : |show/s|</span> </span><span id="L-253"><a name="L-253"></a><span class="s2">Hides the rollup : |hide/h|</span> </span><span id="L-254"><a name="L-254"></a><span class="s2">Enables the incoming network : |enable/e|</span> </span><span id="L-255"><a name="L-255"></a><span class="s2">Disables the incoming network : |disable/d|</span> </span><span id="L-256"><a name="L-256"></a><span class="s2">Shows the current status of Growl : |status/stat|</span> </span><span id="L-257"><a name="L-257"></a><span class="s2">Restarts Growl : |restart/res|</span> </span><span id="L-258"><a name="L-258"></a><span class="s2">Settings : |settings|</span> </span><span id="L-259"><a name="L-259"></a><span class="s2">Lists these commands : |help/?|&lt;/string&gt;</span> </span><span id="L-260"><a name="L-260"></a><span class="s2">&lt;/dict&gt;</span> </span><span id="L-261"><a name="L-261"></a><span class="s2">&lt;/plist&gt;</span> </span><span id="L-262"><a name="L-262"></a><span class="s2">&quot;</span> </span><span id="L-263"><a name="L-263"></a> <span class="k">set</span> <span class="nv">vHome</span> <span class="k">to</span> <span class="nb">path to</span> <span class="nv">home</span> <span class="nv">folder</span> <span class="k">as </span><span class="nc">text</span> </span><span id="L-264"><a name="L-264"></a> <span class="k">set</span> <span class="nv">vPath</span> <span class="k">to</span> <span class="nv">POSIX</span> <span class="na">path</span> <span class="k">of</span> <span class="nv">vHome</span> <span class="o">&amp;</span> <span class="s2">&quot;Library/Application Support/Alfred/NCProperties.plist&quot;</span> </span><span id="L-265"><a name="L-265"></a> <span class="k">set</span> <span class="nv">vPList</span> <span class="k">to</span> <span class="nb">open for access</span> <span class="nv">vPath</span> <span class="nv">with</span> <span class="nb">write</span> <span class="nv">permission</span> </span><span id="L-266"><a name="L-266"></a> <span class="nb">set eof</span> <span class="k">of</span> <span class="nv">vPList</span> <span class="k">to</span> <span class="mi">0</span> </span><span id="L-267"><a name="L-267"></a> <span class="nb">write</span> <span class="nv">vEmptyPListData</span> <span class="k">to</span> <span class="nv">vPList</span> <span class="nv">starting</span> <span class="nb">at</span> <span class="nv">eof</span> </span><span id="L-268"><a name="L-268"></a> <span class="nb">close access</span> <span class="nv">vPList</span> </span><span id="L-269"><a name="L-269"></a><span class="k">end</span> <span class="nv">mMakeNewPList</span> </span><span id="L-270"><a name="L-270"></a> </span><span id="L-271"><a name="L-271"></a><span class="c">--input: string, output:bool</span> </span><span id="L-272"><a name="L-272"></a><span class="k">on</span> <span class="nv">mVerifySettings</span><span class="p">(</span><span class="nv">vInput</span><span class="p">)</span> </span><span id="L-273"><a name="L-273"></a> <span class="k">set</span> <span class="nv">vHome</span> <span class="k">to</span> <span class="nb">path to</span> <span class="nv">home</span> <span class="nv">folder</span> <span class="k">as </span><span class="nc">text</span> </span><span id="L-274"><a name="L-274"></a> <span class="k">set</span> <span class="nv">vPath</span> <span class="k">to</span> <span class="nv">POSIX</span> <span class="na">path</span> <span class="k">of</span> <span class="nv">vHome</span> <span class="o">&amp;</span> <span class="s2">&quot;Library/Application Support/Alfred/NCProperties.plist&quot;</span> </span><span id="L-275"><a name="L-275"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-276"><a name="L-276"></a> <span class="k">tell</span> <span class="k">property</span> <span class="nv">list</span> <span class="nv">file</span> <span class="nv">vPath</span> </span><span id="L-277"><a name="L-277"></a> <span class="k">tell</span> <span class="na">contents</span> </span><span id="L-278"><a name="L-278"></a> <span class="k">set</span> <span class="nv">vSettings</span> <span class="k">to</span> <span class="nv">value</span> <span class="k">of</span> <span class="k">property</span> <span class="nv">list</span> <span class="nb">item</span> <span class="s2">&quot;Default Settings&quot;</span> </span><span id="L-279"><a name="L-279"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-280"><a name="L-280"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-281"><a name="L-281"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-282"><a name="L-282"></a> </span><span id="L-283"><a name="L-283"></a> <span class="k">set</span> <span class="no">AppleScript</span>&#39;s <span class="no">text item delimiters</span> <span class="k">to</span> <span class="s2">&quot;|&quot;</span> </span><span id="L-284"><a name="L-284"></a> <span class="k">set</span> <span class="nv">vInput</span> <span class="k">to</span> <span class="nb">every</span> <span class="nb">text</span> <span class="nb">item</span> <span class="k">in</span> <span class="nv">vInput</span> <span class="k">as</span> <span class="nv">list</span> </span><span id="L-285"><a name="L-285"></a> <span class="k">set</span> <span class="nv">vSettings</span> <span class="k">to</span> <span class="nb">every</span> <span class="nb">text</span> <span class="nb">item</span> <span class="k">in</span> <span class="nv">vSettings</span> <span class="k">as</span> <span class="nv">list</span> </span><span id="L-286"><a name="L-286"></a> <span class="k">if</span> <span class="p">(</span><span class="nb">count</span> <span class="nb">every</span> <span class="nb">text</span> <span class="nb">item</span> <span class="k">in</span> <span class="nv">vInput</span><span class="p">)</span> <span class="o">≠</span> <span class="mi">27</span> <span class="k">then</span> </span><span id="L-287"><a name="L-287"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-288"><a name="L-288"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-289"><a name="L-289"></a> <span class="k">if</span> <span class="nb">item</span> <span class="mi">1</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">1</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-290"><a name="L-290"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-291"><a name="L-291"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">3</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">3</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-292"><a name="L-292"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-293"><a name="L-293"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">5</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">5</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-294"><a name="L-294"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-295"><a name="L-295"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">7</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">7</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-296"><a name="L-296"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-297"><a name="L-297"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">9</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">9</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-298"><a name="L-298"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-299"><a name="L-299"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">11</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">11</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-300"><a name="L-300"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-301"><a name="L-301"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">13</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">13</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-302"><a name="L-302"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-303"><a name="L-303"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">15</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">15</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-304"><a name="L-304"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-305"><a name="L-305"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">17</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">17</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-306"><a name="L-306"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-307"><a name="L-307"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">19</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">19</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-308"><a name="L-308"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-309"><a name="L-309"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">21</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">21</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-310"><a name="L-310"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-311"><a name="L-311"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">23</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">23</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-312"><a name="L-312"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-313"><a name="L-313"></a> <span class="k">else</span> <span class="k">if</span> <span class="nb">item</span> <span class="mi">25</span> <span class="k">of</span> <span class="nv">vInput</span> <span class="o">≠</span> <span class="nb">item</span> <span class="mi">25</span> <span class="k">of</span> <span class="nv">vSettings</span> <span class="k">then</span> </span><span id="L-314"><a name="L-314"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-315"><a name="L-315"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-316"><a name="L-316"></a> <span class="no">return</span> <span class="no">true</span> </span><span id="L-317"><a name="L-317"></a><span class="k">end</span> <span class="nv">mVerifySettings</span> </span><span id="L-318"><a name="L-318"></a> </span><span id="L-319"><a name="L-319"></a><span class="c">--input: void, output: bool</span> </span><span id="L-320"><a name="L-320"></a><span class="k">on</span> <span class="nv">enable_GUI_scripting</span><span class="p">()</span> </span><span id="L-321"><a name="L-321"></a> <span class="k">try</span> </span><span id="L-322"><a name="L-322"></a> <span class="k">if</span> <span class="p">(</span><span class="nb">system attribute</span> <span class="s2">&quot;sysv&quot;</span><span class="p">)</span> <span class="o">&lt;</span> <span class="mi">4138</span> <span class="k">then</span> <span class="nb">display dialog</span> <span class="s2">&quot;This script requires the installation of Mac OS X 10.3 or higher.&quot;</span> <span class="nb">buttons</span> <span class="p">{</span><span class="s2">&quot;Cancel&quot;</span><span class="p">}</span> <span class="nv">default</span> <span class="nb">button</span> <span class="mi">1</span> <span class="nv">with</span> <span class="nv">icon</span> <span class="mi">2</span> </span><span id="L-323"><a name="L-323"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> <span class="k">to</span> <span class="k">if</span> <span class="ow">not</span> <span class="nv">UI</span> <span class="nv">elements</span> <span class="na">enabled</span> <span class="k">then</span> </span><span id="L-324"><a name="L-324"></a> <span class="k">tell</span> <span class="k">me</span> </span><span id="L-325"><a name="L-325"></a> <span class="nb">activate</span> </span><span id="L-326"><a name="L-326"></a> <span class="nb">display dialog</span> <span class="s2">&quot;This script requires the built-in Graphic User Interface Scripting architecture of Mac OS X, which is currently disabled.&quot;</span> <span class="o">&amp;</span> <span class="no">return</span> <span class="o">&amp;</span> <span class="no">return</span> <span class="o">&amp;</span> <span class="s2">&quot;Enable GUI Scripting now? (You may be asked to enter your password)&quot;</span> <span class="nb">buttons</span> <span class="p">{</span><span class="s2">&quot;Cancel&quot;</span><span class="p">,</span> <span class="s2">&quot;Enable&quot;</span><span class="p">}</span> <span class="nv">default</span> <span class="nb">button</span> <span class="mi">2</span> <span class="nv">with</span> <span class="nv">icon</span> <span class="mi">2</span> </span><span id="L-327"><a name="L-327"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-328"><a name="L-328"></a> <span class="k">set</span> <span class="nv">UI</span> <span class="nv">elements</span> <span class="na">enabled</span> <span class="k">to</span> <span class="no">true</span> </span><span id="L-329"><a name="L-329"></a> <span class="k">if</span> <span class="ow">not</span> <span class="nv">UI</span> <span class="nv">elements</span> <span class="na">enabled</span> <span class="k">then</span> <span class="k">error</span> <span class="nv">number</span> <span class="o">-</span><span class="mi">128</span> </span><span id="L-330"><a name="L-330"></a> <span class="k">end</span> <span class="k">if</span> </span><span id="L-331"><a name="L-331"></a> <span class="no">return</span> <span class="no">true</span> </span><span id="L-332"><a name="L-332"></a> <span class="nb">on</span> <span class="k">error</span> </span><span id="L-333"><a name="L-333"></a> <span class="no">return</span> <span class="no">false</span> </span><span id="L-334"><a name="L-334"></a> <span class="k">end</span> <span class="k">try</span> </span><span id="L-335"><a name="L-335"></a><span class="k">end</span> <span class="nv">enable_GUI_scripting</span> </span><span id="L-336"><a name="L-336"></a> </span><span id="L-337"><a name="L-337"></a><span class="c">--input: void, output: bool</span> </span><span id="L-338"><a name="L-338"></a><span class="k">on</span> <span class="nv">mIsNotificationCenterOn</span><span class="p">()</span> </span><span id="L-339"><a name="L-339"></a> <span class="k">tell</span> <span class="nb">application</span> <span class="s2">&quot;System Events&quot;</span> </span><span id="L-340"><a name="L-340"></a> <span class="k">tell</span> <span class="nv">process</span> <span class="s2">&quot;NotificationCenter&quot;</span> </span><span id="L-341"><a name="L-341"></a> <span class="k">set</span> <span class="nv">x</span> <span class="k">to</span> <span class="nv">value</span> <span class="k">of</span> <span class="na">menu</span> <span class="nv">bar</span> <span class="nb">item</span> <span class="mi">1</span> <span class="k">of</span> <span class="na">menu</span> <span class="nv">bar</span> <span class="mi">1</span> </span><span id="L-342"><a name="L-342"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-343"><a name="L-343"></a> <span class="k">end</span> <span class="k">tell</span> </span><span id="L-344"><a name="L-344"></a> <span class="k">try</span> </span><span id="L-345"><a name="L-345"></a> <span class="k">set</span> <span class="nv">x</span> <span class="k">to</span> <span class="nv">x</span> <span class="k">as </span><span class="nc">string</span> </span><span id="L-346"><a name="L-346"></a> <span class="k">set</span> <span class="nv">flag</span> <span class="k">to</span> <span class="no">false</span> </span><span id="L-347"><a name="L-347"></a> <span class="nb">on</span> <span class="k">error</span> </span><span id="L-348"><a name="L-348"></a> <span class="k">set</span> <span class="nv">flag</span> <span class="k">to</span> <span class="no">true</span> </span><span id="L-349"><a name="L-349"></a> <span class="k">end</span> <span class="k">try</span> </span><span id="L-350"><a name="L-350"></a> <span class="no">return</span> <span class="nv">flag</span> </span><span id="L-351"><a name="L-351"></a><span class="k">end</span> <span class="nv">mIsNotificationCenterOn</span> </span></pre></div> </td></tr></table>
"notification center", alfred, applescript, growl