Release 0.39
[awl.git] / docs / api / awl / iCalendar / iCalendar.html
blobacf88ef0f29018f8baead1d70d064f10b6f0587a
1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4 <head>
5 <!-- template designed by Marco Von Ballmoos -->
6 <title>Docs For Class iCalendar</title>
7 <link rel="stylesheet" href="../../media/stylesheet.css" />
8 <script src="../../media/lib/classTree.js"></script>
9 <script language="javascript" type="text/javascript">
10 var imgPlus = new Image();
11 var imgMinus = new Image();
12 imgPlus.src = "../../media/images/plus.png";
13 imgMinus.src = "../../media/images/minus.png";
15 function showNode(Node){
16 switch(navigator.family){
17 case 'nn4':
18 // Nav 4.x code fork...
19 var oTable = document.layers["span" + Node];
20 var oImg = document.layers["img" + Node];
21 break;
22 case 'ie4':
23 // IE 4/5 code fork...
24 var oTable = document.all["span" + Node];
25 var oImg = document.all["img" + Node];
26 break;
27 case 'gecko':
28 // Standards Compliant code fork...
29 var oTable = document.getElementById("span" + Node);
30 var oImg = document.getElementById("img" + Node);
31 break;
33 oImg.src = imgMinus.src;
34 oTable.style.display = "block";
37 function hideNode(Node){
38 switch(navigator.family){
39 case 'nn4':
40 // Nav 4.x code fork...
41 var oTable = document.layers["span" + Node];
42 var oImg = document.layers["img" + Node];
43 break;
44 case 'ie4':
45 // IE 4/5 code fork...
46 var oTable = document.all["span" + Node];
47 var oImg = document.all["img" + Node];
48 break;
49 case 'gecko':
50 // Standards Compliant code fork...
51 var oTable = document.getElementById("span" + Node);
52 var oImg = document.getElementById("img" + Node);
53 break;
55 oImg.src = imgPlus.src;
56 oTable.style.display = "none";
59 function nodeIsVisible(Node){
60 switch(navigator.family){
61 case 'nn4':
62 // Nav 4.x code fork...
63 var oTable = document.layers["span" + Node];
64 break;
65 case 'ie4':
66 // IE 4/5 code fork...
67 var oTable = document.all["span" + Node];
68 break;
69 case 'gecko':
70 // Standards Compliant code fork...
71 var oTable = document.getElementById("span" + Node);
72 break;
74 return (oTable && oTable.style.display == "block");
77 function toggleNodeVisibility(Node){
78 if (nodeIsVisible(Node)){
79 hideNode(Node);
80 }else{
81 showNode(Node);
84 </script>
85 </head>
86 <body>
87 <div class="page-body">
88 <h2 class="class-name"><img src="../../media/images/Class_logo.png"
89 alt=" Class"
90 title=" Class"
91 style="vertical-align: middle"> iCalendar</h2>
93 <a name="sec-description"></a>
94 <div class="info-box">
95 <div class="info-box-title">Description</div>
96 <div class="nav-bar">
97 <span class="disabled">Description</span> |
98 <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
100 </div>
101 <div class="info-box-body">
102 <!-- ========== Info from phpDoc block ========= -->
103 <p class="short-description">A Class for handling Events on a calendar</p>
104 <p class="notes">
105 Located in <a class="field" href="_iCalendar.php.html">/iCalendar.php</a> (line <span class="field">893</span>)
106 </p>
109 <pre></pre>
111 </div>
112 </div>
117 <a name="sec-method-summary"></a>
118 <div class="info-box">
119 <div class="info-box-title">Method Summary</span></div>
120 <div class="nav-bar">
121 <a href="#sec-description">Description</a> |
122 <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
123 </div>
124 <div class="info-box-body">
125 <div class="method-summary">
127 <div class="method-definition">
128 <img src="../../media/images/Constructor.png" alt=" "/>
129 <span class="method-result">iCalendar</span>
130 <a href="#iCalendar" title="details" class="method-name">iCalendar</a>
131 (<span class="var-type"></span>&nbsp;<span class="var-name">$args</span>)
132 </div>
134 <div class="method-definition">
135 <img src="../../media/images/Method.png" alt=" "/>
136 <span class="method-result">void</span>
137 <a href="#Add" title="details" class="method-name">Add</a>
138 (<span class="var-type">string</span>&nbsp;<span class="var-name">$key</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$value</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$parameters</span> = <span class="var-default">null</span>])
139 </div>
141 <div class="method-definition">
142 <img src="../../media/images/Method.png" alt=" "/>
143 <span class="method-result">void</span>
144 <a href="#AddComponent" title="details" class="method-name">AddComponent</a>
145 (<span class="var-type"><a href="../../awl/iCalendar/iCalComponent.html">iCalComponent</a></span>&nbsp;<span class="var-name">$new_component</span>)
146 </div>
148 <div class="method-definition">
149 <img src="../../media/images/Method.png" alt=" "/>
150 <span class="method-result">boolean</span>
151 <a href="#ApplyFilter" title="details" class="method-name">ApplyFilter</a>
152 (<span class="var-type">array</span>&nbsp;<span class="var-name">$filter</span>, <span class="var-type">mixed</span>&nbsp;<span class="var-name">$value</span>)
153 </div>
155 <div class="method-definition">
156 <img src="../../media/images/Method.png" alt=" "/>
157 <span class="method-result">void</span>
158 <a href="#BuildFromText" title="details" class="method-name">BuildFromText</a>
159 (<span class="var-type"></span>&nbsp;<span class="var-name">$icalendar</span>)
160 </div>
162 <div class="method-definition">
163 <img src="../../media/images/Method.png" alt=" "/>
164 <span class="method-result">void</span>
165 <a href="#ClearComponents" title="details" class="method-name">ClearComponents</a>
166 ([<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span> = <span class="var-default">null</span>])
167 </div>
169 <div class="method-definition">
170 <img src="../../media/images/Method.png" alt=" "/>
171 <span class="method-result">void</span>
172 <a href="#DealWithTimeZones" title="details" class="method-name">DealWithTimeZones</a>
174 </div>
176 <div class="method-definition">
177 <img src="../../media/images/Method.png" alt=" "/>
178 <span class="method-result">void</span>
179 <a href="#DefaultPropertyList" title="details" class="method-name">DefaultPropertyList</a>
181 </div>
183 <div class="method-definition">
184 <img src="../../media/images/Method.png" alt=" "/>
185 <span class="method-result">array</span>
186 <a href="#ExtractProperty" title="details" class="method-name">ExtractProperty</a>
187 (<span class="var-type">array</span>&nbsp;<span class="var-name">$component</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$type</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$count</span> = <span class="var-default">9999</span>])
188 </div>
190 <div class="method-definition">
191 <img src="../../media/images/Method.png" alt=" "/>
192 <span class="method-result">array</span>
193 <a href="#ExtractSubComponent" title="details" class="method-name">ExtractSubComponent</a>
194 (<span class="var-type">array</span>&nbsp;<span class="var-name">$component</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$type</span>, [<span class="var-type">int</span>&nbsp;<span class="var-name">$count</span> = <span class="var-default">9999</span>])
195 </div>
197 <div class="method-definition">
198 <img src="../../media/images/Method.png" alt=" "/>
199 <span class="method-result">void</span>
200 <a href="#Get" title="details" class="method-name">Get</a>
201 (<span class="var-type"></span>&nbsp;<span class="var-name">$key</span>)
202 </div>
204 <div class="method-definition">
205 <img src="../../media/images/Method.png" alt=" "/>
206 <span class="method-result">array</span>
207 <a href="#GetComponents" title="details" class="method-name">GetComponents</a>
208 ([<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span> = <span class="var-default">null</span>], [<span class="var-type">boolean</span>&nbsp;<span class="var-name">$normal_match</span> = <span class="var-default">true</span>])
209 </div>
211 <div class="method-definition">
212 <img src="../../media/images/Method.png" alt=" "/>
213 <span class="method-result">void</span>
214 <a href="#HttpDateFormat" title="details" class="method-name">HttpDateFormat</a>
216 </div>
218 <div class="method-definition">
219 <img src="../../media/images/Method.png" alt=" "/>
220 <span class="method-result">void</span>
221 <a href="#iCalFooter" title="details" class="method-name">iCalFooter</a>
223 </div>
225 <div class="method-definition">
226 <img src="../../media/images/Method.png" alt=" "/>
227 <span class="method-result">void</span>
228 <a href="#iCalHeader" title="details" class="method-name">iCalHeader</a>
230 </div>
232 <div class="method-definition">
233 <img src="../../media/images/Method.png" alt=" "/>
234 <span class="method-result">string</span>
235 <a href="#JustThisBitPlease" title="details" class="method-name">JustThisBitPlease</a>
236 (<span class="var-type"></span>&nbsp;<span class="var-name">$type</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$count</span> = <span class="var-default">1</span>])
237 </div>
239 <div class="method-definition">
240 <img src="../../media/images/Method.png" alt=" "/>
241 <span class="method-result">void</span>
242 <a href="#MaskComponents" title="details" class="method-name">MaskComponents</a>
243 (<span class="var-type">array</span>&nbsp;<span class="var-name">$keep</span>)
244 </div>
246 <div class="method-definition">
247 <img src="../../media/images/Method.png" alt=" "/>
248 <span class="method-result">arrayref</span>
249 <a href="#ParseSomeLines" title="details" class="method-name">&amp;ParseSomeLines</a>
250 (<span class="var-type"></span>&nbsp;<span class="var-name">$type</span>)
251 </div>
253 <div class="method-definition">
254 <img src="../../media/images/Method.png" alt=" "/>
255 <span class="method-result">void</span>
256 <a href="#Render" title="details" class="method-name">Render</a>
257 ([<span class="var-type">boolean</span>&nbsp;<span class="var-name">$as_calendar</span> = <span class="var-default">true</span>], [<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span> = <span class="var-default">null</span>], [<span class="var-type">array</span>&nbsp;<span class="var-name">$restrict_properties</span> = <span class="var-default">null</span>])
258 </div>
260 <div class="method-definition">
261 <img src="../../media/images/Method.png" alt=" "/>
262 <span class="method-result">void</span>
263 <a href="#RFC2445ContentEscape" title="details" class="method-name">RFC2445ContentEscape</a>
264 (<span class="var-type">string</span>&nbsp;<span class="var-name">$name</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$value</span>)
265 </div>
267 <div class="method-definition">
268 <img src="../../media/images/Method.png" alt=" "/>
269 <span class="method-result">string</span>
270 <a href="#RFC2445ContentUnescape" title="details" class="method-name">RFC2445ContentUnescape</a>
271 (<span class="var-type">string</span>&nbsp;<span class="var-name">$escaped</span>)
272 </div>
274 <div class="method-definition">
275 <img src="../../media/images/Method.png" alt=" "/>
276 <span class="method-result">void</span>
277 <a href="#SaveTimeZones" title="details" class="method-name">SaveTimeZones</a>
279 </div>
281 <div class="method-definition">
282 <img src="../../media/images/Method.png" alt=" "/>
283 <span class="method-result">void</span>
284 <a href="#Set" title="details" class="method-name">Set</a>
285 (<span class="var-type"></span>&nbsp;<span class="var-name">$key</span>, <span class="var-type"></span>&nbsp;<span class="var-name">$value</span>)
286 </div>
288 <div class="method-definition">
289 <img src="../../media/images/Method.png" alt=" "/>
290 <span class="method-result">void</span>
291 <a href="#SetComponents" title="details" class="method-name">SetComponents</a>
292 (<span class="var-type">array</span>&nbsp;<span class="var-name">$new_component</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span> = <span class="var-default">null</span>])
293 </div>
295 <div class="method-definition">
296 <img src="../../media/images/Method.png" alt=" "/>
297 <span class="method-result">void</span>
298 <a href="#SqlDateFormat" title="details" class="method-name">SqlDateFormat</a>
300 </div>
302 <div class="method-definition">
303 <img src="../../media/images/Method.png" alt=" "/>
304 <span class="method-result">void</span>
305 <a href="#SqlDurationFormat" title="details" class="method-name">SqlDurationFormat</a>
307 </div>
309 <div class="method-definition">
310 <img src="../../media/images/Method.png" alt=" "/>
311 <span class="method-result">void</span>
312 <a href="#SqlUTCFormat" title="details" class="method-name">SqlUTCFormat</a>
314 </div>
316 <div class="method-definition">
317 <img src="../../media/images/Method.png" alt=" "/>
318 <span class="method-result">boolean</span>
319 <a href="#TestFilter" title="details" class="method-name">TestFilter</a>
320 (<span class="var-type"></span>&nbsp;<span class="var-name">$filters</span>, <span class="var-type">array</span>&nbsp;<span class="var-name">$filter</span>)
321 </div>
322 </div>
323 </div>
324 </div>
327 <a name="sec-methods"></a>
328 <div class="info-box">
329 <div class="info-box-title">Methods</div>
330 <div class="nav-bar">
331 <a href="#sec-description">Description</a> |
332 <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
334 </div>
335 <div class="info-box-body">
336 <A NAME='method_detail'></A>
337 <a name="methodiCalendar" id="iCalendar"><!-- --></a>
338 <div class="oddrow">
340 <div class="method-header">
341 <img src="../../media/images/Constructor.png" />
342 <span class="method-title">Constructor iCalendar</span> (line <span class="line-number">935</span>)
343 </div>
345 <!-- ========== Info from phpDoc block ========= -->
346 <p class="short-description">The constructor takes an array of args. If there is an element called 'icalendar' then that will be parsed into the iCalendar object. Otherwise the array elements are converted into properties of the iCalendar object directly.</p>
348 <div class="method-signature">
349 <span class="method-result">iCalendar</span>
350 <span class="method-name">
351 iCalendar
352 </span>
353 (<span class="var-type"></span>&nbsp;<span class="var-name">$args</span>)
354 </div>
356 <ul class="parameters">
357 <li>
358 <span class="var-type"></span>
359 <span class="var-name">$args</span> </li>
360 </ul>
363 </div>
364 <a name="methodAdd" id="Add"><!-- --></a>
365 <div class="evenrow">
367 <div class="method-header">
368 <img src="../../media/images/Method.png" />
369 <span class="method-title">Add</span> (line <span class="line-number">1341</span>)
370 </div>
372 <!-- ========== Info from phpDoc block ========= -->
373 <p class="short-description">Add a new property/value, regardless of whether it exists already</p>
375 <div class="method-signature">
376 <span class="method-result">void</span>
377 <span class="method-name">
379 </span>
380 (<span class="var-type">string</span>&nbsp;<span class="var-name">$key</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$value</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$parameters</span> = <span class="var-default">null</span>])
381 </div>
383 <ul class="parameters">
384 <li>
385 <span class="var-type">string</span>
386 <span class="var-name">$key</span><span class="var-description">: The property key</span> </li>
387 <li>
388 <span class="var-type">string</span>
389 <span class="var-name">$value</span><span class="var-description">: The property value</span> </li>
390 <li>
391 <span class="var-type">string</span>
392 <span class="var-name">$parameters</span><span class="var-description">: Any parameters to set for the property, as an array of key/value pairs</span> </li>
393 </ul>
396 </div>
397 <a name="methodAddComponent" id="AddComponent"><!-- --></a>
398 <div class="oddrow">
400 <div class="method-header">
401 <img src="../../media/images/Method.png" />
402 <span class="method-title">AddComponent</span> (line <span class="line-number">1394</span>)
403 </div>
405 <!-- ========== Info from phpDoc block ========= -->
406 <p class="short-description">Adds a new subcomponent</p>
408 <div class="method-signature">
409 <span class="method-result">void</span>
410 <span class="method-name">
411 AddComponent
412 </span>
413 (<span class="var-type"><a href="../../awl/iCalendar/iCalComponent.html">iCalComponent</a></span>&nbsp;<span class="var-name">$new_component</span>)
414 </div>
416 <ul class="parameters">
417 <li>
418 <span class="var-type"><a href="../../awl/iCalendar/iCalComponent.html">iCalComponent</a></span>
419 <span class="var-name">$new_component</span><span class="var-description">: The new component to append to the set</span> </li>
420 </ul>
423 </div>
424 <a name="methodApplyFilter" id="ApplyFilter"><!-- --></a>
425 <div class="evenrow">
427 <div class="method-header">
428 <img src="../../media/images/Method.png" />
429 <span class="method-title">ApplyFilter</span> (line <span class="line-number">1549</span>)
430 </div>
432 <!-- ========== Info from phpDoc block ========= -->
433 <p class="short-description">Applies the filter conditions, possibly recursively, to the value which will be either a single property, or an array of lines of the component under test.</p>
434 <ul class="tags">
435 <li><span class="field">return:</span> Whether the filter passed / failed.</li>
436 <li><span class="field">todo:</span> Eventually we need to handle all of these possibilities, which will mean writing several routines: <ul><li>Get Property from Component</li><li>Get Parameter from Property</li><li>Test TimeRange</li></ul> For the moment we will leave these, until there is a perceived need.</li>
437 </ul>
439 <div class="method-signature">
440 <span class="method-result">boolean</span>
441 <span class="method-name">
442 ApplyFilter
443 </span>
444 (<span class="var-type">array</span>&nbsp;<span class="var-name">$filter</span>, <span class="var-type">mixed</span>&nbsp;<span class="var-name">$value</span>)
445 </div>
447 <ul class="parameters">
448 <li>
449 <span class="var-type">array</span>
450 <span class="var-name">$filter</span><span class="var-description">: An array of XMLElement defining the filter(s)</span> </li>
451 <li>
452 <span class="var-type">mixed</span>
453 <span class="var-name">$value</span><span class="var-description">: Either a string which is the single property, or an array of lines, for the component.</span> </li>
454 </ul>
457 </div>
458 <a name="methodBuildFromText" id="BuildFromText"><!-- --></a>
459 <div class="oddrow">
461 <div class="method-header">
462 <img src="../../media/images/Method.png" />
463 <span class="method-title">BuildFromText</span> (line <span class="line-number">1195</span>)
464 </div>
466 <!-- ========== Info from phpDoc block ========= -->
467 <p class="short-description">Build the iCalendar object from a text string which is a single iCalendar resource</p>
468 <ul class="tags">
469 <li><span class="field">var:</span> The RFC2445 iCalendar resource to be parsed</li>
470 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
471 <li><span class="field">todo:</span> Remove this function.</li>
472 </ul>
474 <div class="method-signature">
475 <span class="method-result">void</span>
476 <span class="method-name">
477 BuildFromText
478 </span>
479 (<span class="var-type"></span>&nbsp;<span class="var-name">$icalendar</span>)
480 </div>
482 <ul class="parameters">
483 <li>
484 <span class="var-type"></span>
485 <span class="var-name">$icalendar</span> </li>
486 </ul>
489 </div>
490 <a name="methodClearComponents" id="ClearComponents"><!-- --></a>
491 <div class="evenrow">
493 <div class="method-header">
494 <img src="../../media/images/Method.png" />
495 <span class="method-title">ClearComponents</span> (line <span class="line-number">1373</span>)
496 </div>
498 <!-- ========== Info from phpDoc block ========= -->
499 <p class="short-description">Clear all components, or the components matching a particular type</p>
501 <div class="method-signature">
502 <span class="method-result">void</span>
503 <span class="method-name">
504 ClearComponents
505 </span>
506 ([<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span> = <span class="var-default">null</span>])
507 </div>
509 <ul class="parameters">
510 <li>
511 <span class="var-type">string</span>
512 <span class="var-name">$type</span><span class="var-description">: The type of component - omit for all components</span> </li>
513 </ul>
516 </div>
517 <a name="methodDealWithTimeZones" id="DealWithTimeZones"><!-- --></a>
518 <div class="oddrow">
520 <div class="method-header">
521 <img src="../../media/images/Method.png" />
522 <span class="method-title">DealWithTimeZones</span> (line <span class="line-number">1249</span>)
523 </div>
525 <!-- ========== Info from phpDoc block ========= -->
526 <p class="short-description">Do what must be done with time zones from on file. Attempt to turn them into something that PostgreSQL can understand...</p>
527 <ul class="tags">
528 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
529 <li><span class="field">todo:</span> Remove this function.</li>
530 </ul>
532 <div class="method-signature">
533 <span class="method-result">void</span>
534 <span class="method-name">
535 DealWithTimeZones
536 </span>
538 </div>
542 </div>
543 <a name="methodDefaultPropertyList" id="DefaultPropertyList"><!-- --></a>
544 <div class="evenrow">
546 <div class="method-header">
547 <img src="../../media/images/Method.png" />
548 <span class="method-title">DefaultPropertyList</span> (line <span class="line-number">1071</span>)
549 </div>
551 <!-- ========== Info from phpDoc block ========= -->
552 <p class="short-description">An array of property names that we should always want when rendering an iCalendar</p>
553 <ul class="tags">
554 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
555 <li><span class="field">todo:</span> Remove this function.</li>
556 </ul>
558 <div class="method-signature">
559 <span class="method-result">void</span>
560 <span class="method-name">
561 DefaultPropertyList
562 </span>
564 </div>
568 </div>
569 <a name="methodExtractProperty" id="ExtractProperty"><!-- --></a>
570 <div class="oddrow">
572 <div class="method-header">
573 <img src="../../media/images/Method.png" />
574 <span class="method-title">ExtractProperty</span> (line <span class="line-number">1519</span>)
575 </div>
577 <!-- ========== Info from phpDoc block ========= -->
578 <p class="short-description">Extract a particular property from the provided component. In doing so we assume that the content was unescaped when iCalComponent::ParseFrom() called iCalComponent::UnwrapComponent().</p>
579 <ul class="tags">
580 <li><span class="field">return:</span> An array of iCalProperty objects</li>
581 </ul>
583 <div class="method-signature">
584 <span class="method-result">array</span>
585 <span class="method-name">
586 ExtractProperty
587 </span>
588 (<span class="var-type">array</span>&nbsp;<span class="var-name">$component</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$type</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$count</span> = <span class="var-default">9999</span>])
589 </div>
591 <ul class="parameters">
592 <li>
593 <span class="var-type">array</span>
594 <span class="var-name">$component</span><span class="var-description">: An array of lines of this component</span> </li>
595 <li>
596 <span class="var-type">string</span>
597 <span class="var-name">$type</span><span class="var-description">: The type of parameter</span> </li>
598 <li>
599 <span class="var-type"></span>
600 <span class="var-name">$count</span> </li>
601 </ul>
604 </div>
605 <a name="methodExtractSubComponent" id="ExtractSubComponent"><!-- --></a>
606 <div class="evenrow">
608 <div class="method-header">
609 <img src="../../media/images/Method.png" />
610 <span class="method-title">ExtractSubComponent</span> (line <span class="line-number">1485</span>)
611 </div>
613 <!-- ========== Info from phpDoc block ========= -->
614 <p class="short-description">Return all sub-components of the given type, which are part of the component we pass in as an array of lines.</p>
615 <ul class="tags">
616 <li><span class="field">return:</span> The sub-component lines</li>
617 </ul>
619 <div class="method-signature">
620 <span class="method-result">array</span>
621 <span class="method-name">
622 ExtractSubComponent
623 </span>
624 (<span class="var-type">array</span>&nbsp;<span class="var-name">$component</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$type</span>, [<span class="var-type">int</span>&nbsp;<span class="var-name">$count</span> = <span class="var-default">9999</span>])
625 </div>
627 <ul class="parameters">
628 <li>
629 <span class="var-type">array</span>
630 <span class="var-name">$component</span><span class="var-description">: The component to be parsed</span> </li>
631 <li>
632 <span class="var-type">string</span>
633 <span class="var-name">$type</span><span class="var-description">: The type of sub-components to be extracted</span> </li>
634 <li>
635 <span class="var-type">int</span>
636 <span class="var-name">$count</span><span class="var-description">: The number of sub-components to extract (default: 9999)</span> </li>
637 </ul>
640 </div>
641 <a name="methodGet" id="Get"><!-- --></a>
642 <div class="oddrow">
644 <div class="method-header">
645 <img src="../../media/images/Method.png" />
646 <span class="method-title">Get</span> (line <span class="line-number">1302</span>)
647 </div>
649 <!-- ========== Info from phpDoc block ========= -->
650 <p class="short-description">Get the value of a property in the first non-VTIMEZONE</p>
652 <div class="method-signature">
653 <span class="method-result">void</span>
654 <span class="method-name">
656 </span>
657 (<span class="var-type"></span>&nbsp;<span class="var-name">$key</span>)
658 </div>
660 <ul class="parameters">
661 <li>
662 <span class="var-type"></span>
663 <span class="var-name">$key</span> </li>
664 </ul>
667 </div>
668 <a name="methodGetComponents" id="GetComponents"><!-- --></a>
669 <div class="evenrow">
671 <div class="method-header">
672 <img src="../../media/images/Method.png" />
673 <span class="method-title">GetComponents</span> (line <span class="line-number">1364</span>)
674 </div>
676 <!-- ========== Info from phpDoc block ========= -->
677 <p class="short-description">Get all sub-components, or at least get those matching a type, or failling to match, should the second parameter be set to false.</p>
678 <ul class="tags">
679 <li><span class="field">return:</span> an array of the sub-components</li>
680 </ul>
682 <div class="method-signature">
683 <span class="method-result">array</span>
684 <span class="method-name">
685 GetComponents
686 </span>
687 ([<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span> = <span class="var-default">null</span>], [<span class="var-type">boolean</span>&nbsp;<span class="var-name">$normal_match</span> = <span class="var-default">true</span>])
688 </div>
690 <ul class="parameters">
691 <li>
692 <span class="var-type">string</span>
693 <span class="var-name">$type</span><span class="var-description">: The type to match (default: All)</span> </li>
694 <li>
695 <span class="var-type">boolean</span>
696 <span class="var-name">$normal_match</span><span class="var-description">: Set to false to invert the match (default: true)</span> </li>
697 </ul>
700 </div>
701 <a name="methodHttpDateFormat" id="HttpDateFormat"><!-- --></a>
702 <div class="oddrow">
704 <div class="method-header">
705 <img src="../../media/images/Method.png" />
706 <span class="method-title">HttpDateFormat</span> (line <span class="line-number">1412</span>)
707 </div>
709 <!-- ========== Info from phpDoc block ========= -->
710 <p class="short-description">Returns a PostgreSQL Date Format string suitable for returning HTTP (RFC2068) dates Preferred is &quot;Sun, 06 Nov 1994 08:49:37 GMT&quot; so we do that.</p>
712 <div class="method-signature">
713 <span class="method-result">void</span>
714 <span class="method-name">
715 HttpDateFormat
716 </span>
718 </div>
722 </div>
723 <a name="methodiCalFooter" id="iCalFooter"><!-- --></a>
724 <div class="evenrow">
726 <div class="method-header">
727 <img src="../../media/images/Method.png" />
728 <span class="method-title">iCalFooter</span> (line <span class="line-number">1664</span>)
729 </div>
731 <!-- ========== Info from phpDoc block ========= -->
732 <p class="short-description">Returns the footer we always use at the finish of our iCalendar resources</p>
733 <ul class="tags">
734 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
735 <li><span class="field">todo:</span> Remove this function.</li>
736 </ul>
738 <div class="method-signature">
739 <span class="method-result">void</span>
740 <span class="method-name">
741 iCalFooter
742 </span>
744 </div>
748 </div>
749 <a name="methodiCalHeader" id="iCalHeader"><!-- --></a>
750 <div class="oddrow">
752 <div class="method-header">
753 <img src="../../media/images/Method.png" />
754 <span class="method-title">iCalHeader</span> (line <span class="line-number">1647</span>)
755 </div>
757 <!-- ========== Info from phpDoc block ========= -->
758 <p class="short-description">Returns the header we always use at the start of our iCalendar resources</p>
759 <ul class="tags">
760 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
761 <li><span class="field">todo:</span> Remove this function.</li>
762 </ul>
764 <div class="method-signature">
765 <span class="method-result">void</span>
766 <span class="method-name">
767 iCalHeader
768 </span>
770 </div>
774 </div>
775 <a name="methodJustThisBitPlease" id="JustThisBitPlease"><!-- --></a>
776 <div class="evenrow">
778 <div class="method-header">
779 <img src="../../media/images/Method.png" />
780 <span class="method-title">JustThisBitPlease</span> (line <span class="line-number">1090</span>)
781 </div>
783 <!-- ========== Info from phpDoc block ========= -->
784 <p class="short-description">A function to extract the contents of a BEGIN:SOMETHING to END:SOMETHING (perhaps multiply) and return just that bit (or, of course, those bits :-)</p>
785 <ul class="tags">
786 <li><span class="field">var:</span> The type of thing(s) we want returned.</li>
787 <li><span class="field">return:</span> A string from BEGIN:SOMETHING to END:SOMETHING, possibly multiple of these</li>
788 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
789 <li><span class="field">todo:</span> Remove this function.</li>
790 </ul>
792 <div class="method-signature">
793 <span class="method-result">string</span>
794 <span class="method-name">
795 JustThisBitPlease
796 </span>
797 (<span class="var-type"></span>&nbsp;<span class="var-name">$type</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$count</span> = <span class="var-default">1</span>])
798 </div>
800 <ul class="parameters">
801 <li>
802 <span class="var-type"></span>
803 <span class="var-name">$type</span> </li>
804 <li>
805 <span class="var-type"></span>
806 <span class="var-name">$count</span> </li>
807 </ul>
810 </div>
811 <a name="methodMaskComponents" id="MaskComponents"><!-- --></a>
812 <div class="oddrow">
814 <div class="method-header">
815 <img src="../../media/images/Method.png" />
816 <span class="method-title">MaskComponents</span> (line <span class="line-number">1403</span>)
817 </div>
819 <!-- ========== Info from phpDoc block ========= -->
820 <p class="short-description">Mask components, removing any that are not of the types in the list</p>
822 <div class="method-signature">
823 <span class="method-result">void</span>
824 <span class="method-name">
825 MaskComponents
826 </span>
827 (<span class="var-type">array</span>&nbsp;<span class="var-name">$keep</span>)
828 </div>
830 <ul class="parameters">
831 <li>
832 <span class="var-type">array</span>
833 <span class="var-name">$keep</span><span class="var-description">: An array of component types to be kept</span> </li>
834 </ul>
837 </div>
838 <a name="methodParseSomeLines" id="ParseSomeLines"><!-- --></a>
839 <div class="evenrow">
841 <div class="method-header">
842 <img src="../../media/images/Method.png" />
843 <span class="method-title">ParseSomeLines</span> (line <span class="line-number">1124</span>)
844 </div>
846 <!-- ========== Info from phpDoc block ========= -->
847 <p class="short-description">Function to parse lines from BEGIN:SOMETHING to END:SOMETHING into a nested array structure</p>
848 <ul class="tags">
849 <li><span class="field">var:</span> The &quot;SOMETHING&quot; from the BEGIN:SOMETHING line we just met</li>
850 <li><span class="field">return:</span> An array of the things we found between (excluding) the BEGIN &amp; END, some of which might be sub-arrays</li>
851 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
852 <li><span class="field">todo:</span> Remove this function.</li>
853 </ul>
855 <div class="method-signature">
856 <span class="method-result">arrayref</span>
857 <span class="method-name">
858 &amp;ParseSomeLines
859 </span>
860 (<span class="var-type"></span>&nbsp;<span class="var-name">$type</span>)
861 </div>
863 <ul class="parameters">
864 <li>
865 <span class="var-type"></span>
866 <span class="var-name">$type</span> </li>
867 </ul>
870 </div>
871 <a name="methodRender" id="Render"><!-- --></a>
872 <div class="oddrow">
874 <div class="method-header">
875 <img src="../../media/images/Method.png" />
876 <span class="method-title">Render</span> (line <span class="line-number">1677</span>)
877 </div>
879 <!-- ========== Info from phpDoc block ========= -->
880 <p class="short-description">Render the iCalendar object as a text string which is a single VEVENT (or other)</p>
882 <div class="method-signature">
883 <span class="method-result">void</span>
884 <span class="method-name">
885 Render
886 </span>
887 ([<span class="var-type">boolean</span>&nbsp;<span class="var-name">$as_calendar</span> = <span class="var-default">true</span>], [<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span> = <span class="var-default">null</span>], [<span class="var-type">array</span>&nbsp;<span class="var-name">$restrict_properties</span> = <span class="var-default">null</span>])
888 </div>
890 <ul class="parameters">
891 <li>
892 <span class="var-type">boolean</span>
893 <span class="var-name">$as_calendar</span><span class="var-description">: Whether or not to wrap the event in a VCALENDAR</span> </li>
894 <li>
895 <span class="var-type">string</span>
896 <span class="var-name">$type</span><span class="var-description">: The type of iCalendar object (VEVENT, VTODO, VFREEBUSY etc.)</span> </li>
897 <li>
898 <span class="var-type">array</span>
899 <span class="var-name">$restrict_properties</span><span class="var-description">: The names of the properties we want in our rendered result.</span> </li>
900 </ul>
903 </div>
904 <a name="methodRFC2445ContentEscape" id="RFC2445ContentEscape"><!-- --></a>
905 <div class="evenrow">
907 <div class="method-header">
908 <img src="../../media/images/Method.png" />
909 <span class="method-title">RFC2445ContentEscape</span> (line <span class="line-number">1451</span>)
910 </div>
912 <!-- ========== Info from phpDoc block ========= -->
913 <p class="short-description">Returns a suitably escaped RFC2445 content string.</p>
914 <ul class="tags">
915 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
916 <li><span class="field">todo:</span> Remove this function.</li>
917 </ul>
919 <div class="method-signature">
920 <span class="method-result">void</span>
921 <span class="method-name">
922 RFC2445ContentEscape
923 </span>
924 (<span class="var-type">string</span>&nbsp;<span class="var-name">$name</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$value</span>)
925 </div>
927 <ul class="parameters">
928 <li>
929 <span class="var-type">string</span>
930 <span class="var-name">$name</span><span class="var-description">: The incoming name[;param] prefixing the string.</span> </li>
931 <li>
932 <span class="var-type">string</span>
933 <span class="var-name">$value</span><span class="var-description">: The incoming string to be escaped.</span> </li>
934 </ul>
937 </div>
938 <a name="methodRFC2445ContentUnescape" id="RFC2445ContentUnescape"><!-- --></a>
939 <div class="oddrow">
941 <div class="method-header">
942 <img src="../../media/images/Method.png" />
943 <span class="method-title">RFC2445ContentUnescape</span> (line <span class="line-number">1232</span>)
944 </div>
946 <!-- ========== Info from phpDoc block ========= -->
947 <p class="short-description">Returns a content string with the RFC2445 escaping removed</p>
948 <ul class="tags">
949 <li><span class="field">return:</span> The string with RFC2445 content escaping removed.</li>
950 <li><span class="field">deprecated:</span> This function is deprecated and will be removed eventually.</li>
951 <li><span class="field">todo:</span> Remove this function.</li>
952 </ul>
954 <div class="method-signature">
955 <span class="method-result">string</span>
956 <span class="method-name">
957 RFC2445ContentUnescape
958 </span>
959 (<span class="var-type">string</span>&nbsp;<span class="var-name">$escaped</span>)
960 </div>
962 <ul class="parameters">
963 <li>
964 <span class="var-type">string</span>
965 <span class="var-name">$escaped</span><span class="var-description">: The incoming string to be escaped.</span> </li>
966 </ul>
969 </div>
970 <a name="methodSaveTimeZones" id="SaveTimeZones"><!-- --></a>
971 <div class="evenrow">
973 <div class="method-header">
974 <img src="../../media/images/Method.png" />
975 <span class="method-title">SaveTimeZones</span> (line <span class="line-number">1007</span>)
976 </div>
978 <!-- ========== Info from phpDoc block ========= -->
979 <p class="short-description">Save any timezones by TZID in the PostgreSQL database for future re-use.</p>
981 <div class="method-signature">
982 <span class="method-result">void</span>
983 <span class="method-name">
984 SaveTimeZones
985 </span>
987 </div>
991 </div>
992 <a name="methodSet" id="Set"><!-- --></a>
993 <div class="oddrow">
995 <div class="method-header">
996 <img src="../../media/images/Method.png" />
997 <span class="method-title">Set</span> (line <span class="line-number">1321</span>)
998 </div>
1000 <!-- ========== Info from phpDoc block ========= -->
1001 <p class="short-description">Set the value of a property</p>
1003 <div class="method-signature">
1004 <span class="method-result">void</span>
1005 <span class="method-name">
1007 </span>
1008 (<span class="var-type"></span>&nbsp;<span class="var-name">$key</span>, <span class="var-type"></span>&nbsp;<span class="var-name">$value</span>)
1009 </div>
1011 <ul class="parameters">
1012 <li>
1013 <span class="var-type"></span>
1014 <span class="var-name">$key</span> </li>
1015 <li>
1016 <span class="var-type"></span>
1017 <span class="var-name">$value</span> </li>
1018 </ul>
1021 </div>
1022 <a name="methodSetComponents" id="SetComponents"><!-- --></a>
1023 <div class="evenrow">
1025 <div class="method-header">
1026 <img src="../../media/images/Method.png" />
1027 <span class="method-title">SetComponents</span> (line <span class="line-number">1384</span>)
1028 </div>
1030 <!-- ========== Info from phpDoc block ========= -->
1031 <p class="short-description">Sets some or all sub-components of the component to the supplied new components</p>
1033 <div class="method-signature">
1034 <span class="method-result">void</span>
1035 <span class="method-name">
1036 SetComponents
1037 </span>
1038 (<span class="var-type">array</span>&nbsp;<span class="var-name">$new_component</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span> = <span class="var-default">null</span>])
1039 </div>
1041 <ul class="parameters">
1042 <li>
1043 <span class="var-type">string</span>
1044 <span class="var-name">$type</span><span class="var-description">: The type of components to be replaced. Defaults to null, which means all components will be replaced.</span> </li>
1045 <li>
1046 <span class="var-type">array</span>
1047 <span class="var-name">$new_component</span><span class="var-description">: of iCalComponent $new_components The new components to replace the existing ones</span> </li>
1048 </ul>
1051 </div>
1052 <a name="methodSqlDateFormat" id="SqlDateFormat"><!-- --></a>
1053 <div class="oddrow">
1055 <div class="method-header">
1056 <img src="../../media/images/Method.png" />
1057 <span class="method-title">SqlDateFormat</span> (line <span class="line-number">1420</span>)
1058 </div>
1060 <!-- ========== Info from phpDoc block ========= -->
1061 <p class="short-description">Returns a PostgreSQL Date Format string suitable for returning iCal dates</p>
1063 <div class="method-signature">
1064 <span class="method-result">void</span>
1065 <span class="method-name">
1066 SqlDateFormat
1067 </span>
1069 </div>
1073 </div>
1074 <a name="methodSqlDurationFormat" id="SqlDurationFormat"><!-- --></a>
1075 <div class="evenrow">
1077 <div class="method-header">
1078 <img src="../../media/images/Method.png" />
1079 <span class="method-title">SqlDurationFormat</span> (line <span class="line-number">1438</span>)
1080 </div>
1082 <!-- ========== Info from phpDoc block ========= -->
1083 <p class="short-description">Returns a PostgreSQL Date Format string suitable for returning iCal durations</p>
1084 <p class="description"><p><ul><li>this doesn't work for negative intervals, but events should not have such!</li></ul></p></p>
1086 <div class="method-signature">
1087 <span class="method-result">void</span>
1088 <span class="method-name">
1089 SqlDurationFormat
1090 </span>
1092 </div>
1096 </div>
1097 <a name="methodSqlUTCFormat" id="SqlUTCFormat"><!-- --></a>
1098 <div class="oddrow">
1100 <div class="method-header">
1101 <img src="../../media/images/Method.png" />
1102 <span class="method-title">SqlUTCFormat</span> (line <span class="line-number">1429</span>)
1103 </div>
1105 <!-- ========== Info from phpDoc block ========= -->
1106 <p class="short-description">Returns a PostgreSQL Date Format string suitable for returning dates which</p>
1107 <p class="description"><p>have been cast to UTC</p></p>
1109 <div class="method-signature">
1110 <span class="method-result">void</span>
1111 <span class="method-name">
1112 SqlUTCFormat
1113 </span>
1115 </div>
1119 </div>
1120 <a name="methodTestFilter" id="TestFilter"><!-- --></a>
1121 <div class="evenrow">
1123 <div class="method-header">
1124 <img src="../../media/images/Method.png" />
1125 <span class="method-title">TestFilter</span> (line <span class="line-number">1623</span>)
1126 </div>
1128 <!-- ========== Info from phpDoc block ========= -->
1129 <p class="short-description">Test a PROP-FILTER or COMP-FILTER and return a true/false COMP-FILTER (is-defined | is-not-defined | (time-range?, prop-filter*, comp-filter*)) PROP-FILTER (is-defined | is-not-defined | ((time-range | text-match)?, param-filter*))</p>
1130 <ul class="tags">
1131 <li><span class="field">return:</span> Whether or not this iCalendar passes the test</li>
1132 </ul>
1134 <div class="method-signature">
1135 <span class="method-result">boolean</span>
1136 <span class="method-name">
1137 TestFilter
1138 </span>
1139 (<span class="var-type"></span>&nbsp;<span class="var-name">$filters</span>, <span class="var-type">array</span>&nbsp;<span class="var-name">$filter</span>)
1140 </div>
1142 <ul class="parameters">
1143 <li>
1144 <span class="var-type">array</span>
1145 <span class="var-name">$filter</span><span class="var-description">: An array of XMLElement defining the filter</span> </li>
1146 <li>
1147 <span class="var-type"></span>
1148 <span class="var-name">$filters</span> </li>
1149 </ul>
1152 </div>
1154 </div>
1155 </div>
1158 <p class="notes" id="credit">
1159 Documentation generated on Mon, 21 Dec 2009 23:33:37 +1300 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.3.2</a>
1160 </p>
1161 </div></body>
1162 </html>