summaryrefslogtreecommitdiff
path: root/pyinotify._SysProcessEvent-class.html
diff options
context:
space:
mode:
Diffstat (limited to 'pyinotify._SysProcessEvent-class.html')
-rw-r--r--pyinotify._SysProcessEvent-class.html494
1 files changed, 494 insertions, 0 deletions
diff --git a/pyinotify._SysProcessEvent-class.html b/pyinotify._SysProcessEvent-class.html
new file mode 100644
index 0000000..c736554
--- /dev/null
+++ b/pyinotify._SysProcessEvent-class.html
@@ -0,0 +1,494 @@
+<?xml version="1.0" encoding="ascii"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <title>pyinotify._SysProcessEvent</title>
+ <link rel="stylesheet" href="epydoc.css" type="text/css" />
+ <script type="text/javascript" src="epydoc.js"></script>
+</head>
+
+<body bgcolor="white" text="black" link="blue" vlink="#204080"
+ alink="#204080">
+<!-- ==================== NAVIGATION BAR ==================== -->
+<table class="navbar" border="0" width="100%" cellpadding="0"
+ bgcolor="#a0c0ff" cellspacing="0">
+ <tr valign="middle">
+ <!-- Home link -->
+ <th>&nbsp;&nbsp;&nbsp;<a
+ href="pyinotify-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
+
+ <!-- Tree link -->
+ <th>&nbsp;&nbsp;&nbsp;<a
+ href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
+
+ <!-- Index link -->
+ <th>&nbsp;&nbsp;&nbsp;<a
+ href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
+
+ <!-- Help link -->
+ <th>&nbsp;&nbsp;&nbsp;<a
+ href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
+
+ <th class="navbar" width="100%"></th>
+ </tr>
+</table>
+<table width="100%" cellpadding="0" cellspacing="0">
+ <tr valign="top">
+ <td width="100%">
+ <span class="breadcrumbs">
+ <a href="pyinotify-module.html">Module&nbsp;pyinotify</a> ::
+ Class&nbsp;_SysProcessEvent
+ </span>
+ </td>
+ <td>
+ <table cellpadding="0" cellspacing="0">
+ <!-- hide/show private -->
+ <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
+ onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
+ <tr><td align="right"><span class="options"
+ >[<a href="frames.html" target="_top">frames</a
+ >]&nbsp;|&nbsp;<a href="pyinotify._SysProcessEvent-class.html"
+ target="_top">no&nbsp;frames</a>]</span></td></tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<!-- ==================== CLASS DESCRIPTION ==================== -->
+<h1 class="epydoc">Class _SysProcessEvent</h1><p class="nomargin-top"><span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent">source&nbsp;code</a></span></p>
+<center>
+<center> <map id="uml_class_diagram_for_pyinotif_29" name="uml_class_diagram_for_pyinotif_29">
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#__init__" title="x.__init__(...) initializes x; see x.__class__.__doc__ for signature" alt="" coords="17,129,313,148"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#cleanup" title="Cleanup (delete) old (&gt;1mn) records contained in self._mv_cookie and &#160;self._mv." alt="" coords="17,148,313,167"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#process_IN_CREATE" title="If the event affects a directory and the auto_add flag of the targetted &#160;watch is set to True, a new watch is added on this new directory, with the &#160;same attribute values than those of this watch." alt="" coords="17,167,313,185"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#process_IN_MOVED_FROM" title="Map the cookie with the source path (+ date for cleaning)." alt="" coords="17,185,313,204"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#process_IN_MOVED_TO" title="Map the source path with the destination path (+ date for cleaning)." alt="" coords="17,204,313,223"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#process_IN_MOVE_SELF" title="STATUS: the following bug has been fixed in recent kernels (FIXME: which &#160;version ?)." alt="" coords="17,223,313,241"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#process_IN_Q_OVERFLOW" title="Only signal an overflow, most of the common flags are irrelevant for this &#160;event (path, wd, name)." alt="" coords="17,241,313,260"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#process_IN_IGNORED" title="The watch descriptor raised by this event is now ignored (forever), it can &#160;be safely deleted from the watch manager dictionary." alt="" coords="17,260,313,279"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html#process_default" title="Commons handling for the followings events:" alt="" coords="17,279,313,297"/>
+<area shape="rect" href="pyinotify._SysProcessEvent-class.html" title="There is three kind of processing according to each event:" alt="" coords="16,104,315,299"/>
+<area shape="rect" href="pyinotify._ProcessEvent-class.html#__call__" title="To behave like a functor the object must be callable." alt="" coords="105,36,225,55"/>
+<area shape="rect" href="pyinotify._ProcessEvent-class.html#__repr__" title="repr(x)" alt="" coords="105,55,225,73"/>
+<area shape="rect" href="pyinotify._ProcessEvent-class.html" title="Abstract processing event class." alt="" coords="104,11,227,75"/>
+</map>
+ <img src="uml_class_diagram_for_pyinotif_29.gif" alt='' usemap="#uml_class_diagram_for_pyinotif_29" ismap="ismap" class="graph-without-title" />
+</center>
+</center>
+<hr />
+<p>There is three kind of processing according to each event:</p>
+ <ol start="1">
+ <li>
+ special handling (deletion from internal container, bug, ...).
+ </li>
+ <li>
+ default treatment: which is applied to the majority of events.
+ </li>
+ <li>
+ IN_ISDIR is never sent alone, he is piggybacked with a standard
+ event, he is not processed as the others events, instead, its value
+ is captured and appropriately aggregated to dst event.
+ </li>
+ </ol>
+
+<!-- ==================== INSTANCE METHODS ==================== -->
+<a name="section-InstanceMethods"></a>
+<table class="summary" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr bgcolor="#70b0f0" class="table-header">
+ <td colspan="2" class="table-header">
+ <table border="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr valign="top">
+ <td align="left"><span class="table-header">Instance Methods</span></td>
+ <td align="right" valign="top"
+ ><span class="options">[<a href="#section-InstanceMethods"
+ class="privatelink" onclick="toggle_private();"
+ >hide private</a>]</span></td>
+ </tr>
+ </table>
+ </td>
+</tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="pyinotify._SysProcessEvent-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">wm</span>,
+ <span class="summary-sig-arg">notifier</span>)</span><br />
+ x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.__init__">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="cleanup"></a><span class="summary-sig-name">cleanup</span>(<span class="summary-sig-arg">self</span>)</span><br />
+ Cleanup (delete) old (&gt;1mn) records contained in self._mv_cookie
+ and self._mv.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.cleanup">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="process_IN_CREATE"></a><span class="summary-sig-name">process_IN_CREATE</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">raw_event</span>)</span><br />
+ If the event affects a directory and the auto_add flag of the
+ targetted watch is set to True, a new watch is added on this new
+ directory, with the same attribute values than those of this watch.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_IN_CREATE">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="process_IN_MOVED_FROM"></a><span class="summary-sig-name">process_IN_MOVED_FROM</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">raw_event</span>)</span><br />
+ Map the cookie with the source path (+ date for cleaning).</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_IN_MOVED_FROM">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="process_IN_MOVED_TO"></a><span class="summary-sig-name">process_IN_MOVED_TO</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">raw_event</span>)</span><br />
+ Map the source path with the destination path (+ date for cleaning).</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_IN_MOVED_TO">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="pyinotify._SysProcessEvent-class.html#process_IN_MOVE_SELF" class="summary-sig-name">process_IN_MOVE_SELF</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">raw_event</span>)</span><br />
+ STATUS: the following bug has been fixed in recent kernels (FIXME:
+ which version ?).</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_IN_MOVE_SELF">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="process_IN_Q_OVERFLOW"></a><span class="summary-sig-name">process_IN_Q_OVERFLOW</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">raw_event</span>)</span><br />
+ Only signal an overflow, most of the common flags are irrelevant for
+ this event (path, wd, name).</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_IN_Q_OVERFLOW">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="pyinotify._SysProcessEvent-class.html#process_IN_IGNORED" class="summary-sig-name">process_IN_IGNORED</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">raw_event</span>)</span><br />
+ The watch descriptor raised by this event is now ignored (forever),
+ it can be safely deleted from the watch manager dictionary.</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_IN_IGNORED">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type">&nbsp;</span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a href="pyinotify._SysProcessEvent-class.html#process_default" class="summary-sig-name">process_default</a>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">raw_event</span>,
+ <span class="summary-sig-arg">to_append</span>=<span class="summary-sig-default">None</span>)</span><br />
+ Commons handling for the followings events:</td>
+ <td align="right" valign="top">
+ <span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_default">source&nbsp;code</a></span>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" class="summary">
+ <p class="indent-wrapped-lines"><b>Inherited from <code><a href="pyinotify._ProcessEvent-class.html" onclick="show_private();">_ProcessEvent</a></code></b>:
+ <code><a href="pyinotify._ProcessEvent-class.html#__call__">__call__</a></code>,
+ <code><a href="pyinotify._ProcessEvent-class.html#__repr__">__repr__</a></code>
+ </p>
+ <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
+ <code>__delattr__</code>,
+ <code>__format__</code>,
+ <code>__getattribute__</code>,
+ <code>__hash__</code>,
+ <code>__new__</code>,
+ <code>__reduce__</code>,
+ <code>__reduce_ex__</code>,
+ <code>__setattr__</code>,
+ <code>__sizeof__</code>,
+ <code>__str__</code>,
+ <code>__subclasshook__</code>
+ </p>
+ </td>
+ </tr>
+</table>
+<!-- ==================== PROPERTIES ==================== -->
+<a name="section-Properties"></a>
+<table class="summary" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr bgcolor="#70b0f0" class="table-header">
+ <td colspan="2" class="table-header">
+ <table border="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr valign="top">
+ <td align="left"><span class="table-header">Properties</span></td>
+ <td align="right" valign="top"
+ ><span class="options">[<a href="#section-Properties"
+ class="privatelink" onclick="toggle_private();"
+ >hide private</a>]</span></td>
+ </tr>
+ </table>
+ </td>
+</tr>
+ <tr>
+ <td colspan="2" class="summary">
+ <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
+ <code>__class__</code>
+ </p>
+ </td>
+ </tr>
+</table>
+<!-- ==================== METHOD DETAILS ==================== -->
+<a name="section-MethodDetails"></a>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr bgcolor="#70b0f0" class="table-header">
+ <td colspan="2" class="table-header">
+ <table border="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr valign="top">
+ <td align="left"><span class="table-header">Method Details</span></td>
+ <td align="right" valign="top"
+ ><span class="options">[<a href="#section-MethodDetails"
+ class="privatelink" onclick="toggle_private();"
+ >hide private</a>]</span></td>
+ </tr>
+ </table>
+ </td>
+</tr>
+</table>
+<a name="__init__"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">wm</span>,
+ <span class="sig-arg">notifier</span>)</span>
+ <br /><em class="fname">(Constructor)</em>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.__init__">source&nbsp;code</a></span>&nbsp;
+ </td>
+ </tr></table>
+
+ <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
+ signature</p>
+ <dl class="fields">
+ <dt>Parameters:</dt>
+ <dd><ul class="nomargin-top">
+ <li><strong class="pname"><code>wm</code></strong> (WatchManager instance) - Watch Manager.</li>
+ <li><strong class="pname"><code>notifier</code></strong> (Notifier instance) - Notifier.</li>
+ </ul></dd>
+ <dt>Overrides:
+ object.__init__
+ </dt>
+ </dl>
+</td></tr></table>
+</div>
+<a name="process_IN_MOVE_SELF"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">process_IN_MOVE_SELF</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">raw_event</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_IN_MOVE_SELF">source&nbsp;code</a></span>&nbsp;
+ </td>
+ </tr></table>
+
+ <p>STATUS: the following bug has been fixed in recent kernels (FIXME:
+ which version ?). Now it raises IN_DELETE_SELF instead.</p>
+ <p>Old kernels were bugged, this event raised when the watched item were
+ moved, so we had to update its path, but under some circumstances it was
+ impossible: if its parent directory and its destination directory wasn't
+ watched. The kernel (see include/linux/fsnotify.h) doesn't bring us
+ enough informations like the destination path of moved items.</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="process_IN_IGNORED"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">process_IN_IGNORED</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">raw_event</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_IN_IGNORED">source&nbsp;code</a></span>&nbsp;
+ </td>
+ </tr></table>
+
+ <p>The watch descriptor raised by this event is now ignored (forever), it
+ can be safely deleted from the watch manager dictionary. After this event
+ we can be sure that neither the event queue nor the system will raise an
+ event associated to this wd again.</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<a name="process_default"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">process_default</span>(<span class="sig-arg">self</span>,
+ <span class="sig-arg">raw_event</span>,
+ <span class="sig-arg">to_append</span>=<span class="sig-default">None</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ ><span class="codelink"><a href="pyinotify-pysrc.html#_SysProcessEvent.process_default">source&nbsp;code</a></span>&nbsp;
+ </td>
+ </tr></table>
+
+ <p>Commons handling for the followings events:</p>
+ <p>IN_ACCESS, IN_MODIFY, IN_ATTRIB, IN_CLOSE_WRITE, IN_CLOSE_NOWRITE,
+ IN_OPEN, IN_DELETE, IN_DELETE_SELF, IN_UNMOUNT.</p>
+ <dl class="fields">
+ </dl>
+</td></tr></table>
+</div>
+<br />
+<!-- ==================== NAVIGATION BAR ==================== -->
+<table class="navbar" border="0" width="100%" cellpadding="0"
+ bgcolor="#a0c0ff" cellspacing="0">
+ <tr valign="middle">
+ <!-- Home link -->
+ <th>&nbsp;&nbsp;&nbsp;<a
+ href="pyinotify-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
+
+ <!-- Tree link -->
+ <th>&nbsp;&nbsp;&nbsp;<a
+ href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
+
+ <!-- Index link -->
+ <th>&nbsp;&nbsp;&nbsp;<a
+ href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
+
+ <!-- Help link -->
+ <th>&nbsp;&nbsp;&nbsp;<a
+ href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
+
+ <th class="navbar" width="100%"></th>
+ </tr>
+</table>
+<table border="0" cellpadding="0" cellspacing="0" width="100%%">
+ <tr>
+ <td align="left" class="footer">
+ Generated by Epydoc 3.0.1 on Wed Sep 15 22:06:14 2010
+ </td>
+ <td align="right" class="footer">
+ <a target="mainFrame" href="http://epydoc.sourceforge.net"
+ >http://epydoc.sourceforge.net</a>
+ </td>
+ </tr>
+</table>
+
+<script type="text/javascript">
+ <!--
+ // Private objects are initially displayed (because if
+ // javascript is turned off then we want them to be
+ // visible); but by default, we want to hide them. So hide
+ // them unless we have a cookie that says to show them.
+ checkCookie();
+ // -->
+</script>
+</body>
+</html>