<?xml version="1.0"?>
<rss version="2.0">
<channel>
<title>TiddlyWiki by Swytch</title>
<link>http://swytch.tiddlyspot.com//</link>
<description>Random Tidbits Of Useful Information</description>
<language>en-us</language>
<copyright>Copyright 2007 Swytch</copyright>
<pubDate>Wed, 10 Jan 2007 14:43:49 GMT</pubDate>
<lastBuildDate>Wed, 10 Jan 2007 14:43:49 GMT</lastBuildDate>
<docs>http://blogs.law.harvard.edu/tech/rss</docs>
<generator>TiddlyWiki 2.1.3</generator>
<item>
<title>UploadLog</title>
<description>&lt;table&gt;&lt;tbody&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;th align=&quot;center&quot;&gt;date&lt;/th&gt;&lt;th align=&quot;center&quot;&gt;user&lt;/th&gt;&lt;th align=&quot;center&quot;&gt;location&lt;/th&gt;&lt;th align=&quot;center&quot;&gt;storeUrl&lt;/th&gt;&lt;th align=&quot;center&quot;&gt;uploadDir&lt;/th&gt;&lt;th align=&quot;center&quot;&gt;toFilename&lt;/th&gt;&lt;th align=&quot;center&quot;&gt;backupdir&lt;/th&gt;&lt;th align=&quot;center&quot;&gt;origin&lt;/th&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;9/1/2007 9:34:56&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/&quot; href=&quot;http://swytch.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;/&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Ok&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;9/1/2007 9:39:57&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/&quot; href=&quot;http://swytch.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;/&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;9/1/2007 16:9:18&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/&quot; href=&quot;http://swytch.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;/&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;9/1/2007 16:11:47&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/index.html&quot; href=&quot;http://swytch.tiddlyspot.com/index.html&quot; class=&quot;externalLink&quot;&gt;index.html&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;9/1/2007 16:39:40&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/index.html&quot; href=&quot;http://swytch.tiddlyspot.com/index.html&quot; class=&quot;externalLink&quot;&gt;index.html&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Ok&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;9/1/2007 16:42:12&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/index.html&quot; href=&quot;http://swytch.tiddlyspot.com/index.html&quot; class=&quot;externalLink&quot;&gt;index.html&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;10/1/2007 9:40:11&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/&quot; href=&quot;http://swytch.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;/&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Ok&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;10/1/2007 9:42:5&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/&quot; href=&quot;http://swytch.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;/&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Ok&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;10/1/2007 9:42:28&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/&quot; href=&quot;http://swytch.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;/&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Ok&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;center&quot;&gt;10/1/2007 9:43:49&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;Swytch&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/&quot; href=&quot;http://swytch.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;/&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/store.cgi&quot; href=&quot;http://swytch.tiddlyspot.com/store.cgi&quot; class=&quot;externalLink&quot;&gt;store.cgi&lt;/a&gt;&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;index.html&lt;/td&gt;&lt;td align=&quot;center&quot;&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</description>
<link>http://swytch.tiddlyspot.com//#UploadLog</link>
<pubDate>Wed, 10 Jan 2007 14:43:49 GMT</pubDate>
</item>
<item>
<title>Quick Reports for Domain Users and Groups</title>
<description>Quick Reports for Domain Users and Groups:&lt;br&gt;&lt;br&gt;(The NET commands and the Windows Resource Kit ADDUSERS.EXE and PERMS.EXE utilities can be used to create limited administrative reports by piping the output to a text file.)&lt;br&gt;&lt;br&gt;Limited report generation is possible through the following commands: &lt;br&gt;&lt;br&gt;Note: Removal of the /domain switch will generate a report for the local machine. &lt;br&gt;&lt;br&gt;&lt;br&gt;NET USERS /DOMAIN &amp;gt;USERS.TXT&lt;br&gt;&lt;br&gt;This command will return the user accounts from the Primary Domain Controller (PDC) of the current domain, and write them to a file called USER.TXT &lt;br&gt;&lt;strike&gt;-&lt;/strike&gt;&lt;br&gt;&lt;br&gt;NET ACCOUNTS /DOMAIN &amp;gt;ACCOUNTS.TXT&lt;br&gt;&lt;br&gt;This command will return the account policy information from the PDC of the current domain, and write it to a file called ACCOUNTS.TXT &lt;br&gt;&lt;strike&gt;-&lt;/strike&gt;&lt;br&gt;&lt;br&gt;NET CONFIG SERVER &amp;gt;SERVER.TXT&lt;br&gt;&lt;br&gt;This command will return the server name, version of Windows, active network adapter information/MAC address, Server hidden status, Maximum Logged On Users, Maximum open files per session, Idle session time, and assign it to a file called SERVER.TXT &lt;br&gt;&lt;strike&gt;-&lt;/strike&gt;&lt;br&gt;&lt;br&gt;NET CONFIG WORKSTATION &amp;gt;WKST.TXT&lt;br&gt;&lt;br&gt;This command will return the workstation name, user name, version of Windows, network adapter, network adapter information/MAC address, Logon domain, COM Open Timeout, COM Send Count, COM Send Timout, and write it to a file called WKST.TXT. &lt;br&gt;&lt;strike&gt;-&lt;br&gt;NET GROUP /DOMAIN &amp;gt;DGRP.TXT&lt;/strike&gt;&lt;br&gt;&lt;br&gt;This command will return the global groups on the PDC of the current domain, and write them to a file called GRP.TXT. &lt;br&gt;&lt;strike&gt;-&lt;/strike&gt;&lt;br&gt;&lt;br&gt;NET LOCALGROUP &amp;gt;LGRP.TXT&lt;br&gt;&lt;br&gt;This command will return the local groups on the local machine, and write them to a file call LGRP.TXT. &lt;br&gt;&lt;strike&gt;-&lt;br&gt;NET VIEW /DOMAIN:DOMAINNAME &amp;gt;VIEW.TXT&lt;/strike&gt;&lt;br&gt;&lt;br&gt;This command will return the resources in the specified domain, and write them to a file called VIEW.TXT. &lt;br&gt;&lt;br&gt;Using Resource Kit Tools&lt;br&gt;&lt;br&gt;ADDUSERS \\COMPUTERNAME /D USERINFO.TXT&lt;br&gt;&lt;br&gt;This Windows Resource Kit command will return a comma delimited file (for spreadsheets) containing user and group information, and write it to a file called USERINFO.TXT. &lt;br&gt;&lt;strike&gt;-&lt;/strike&gt;&lt;br&gt;&lt;br&gt;PERMS COMPUTERNAME\USERNAME C:\*.* /S &amp;gt;PERMS.TXT&lt;br&gt;&lt;br&gt;This Windows Resource Kit command will return the username permissions on all files in all subdirectories on the c:\ drive of the computername, and write it to a file called PERMS.TXT &lt;br&gt;In addition to these user management tools, there are many tools and scripts out there to help in querying, creating, modifying and deleting user objects in the directory. You should explore the Support Tools from the Windows 2000 product CD and the Windows 2000 Resource Kit to get acquainted with some of them at least, since they can really ease your work sometimes. Here is a quick description of some of those tools: &lt;br&gt;The Windows 2000 Resource Kit offers us some scripts for handling users:&lt;br&gt;&lt;a tiddlylink=&quot;ClassifyMembers&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #ClassifyMembers&quot; href=&quot;#ClassifyMembers&quot; class=&quot;externalLink&quot;&gt;ClassifyMembers&lt;/a&gt;.vbs&lt;br&gt;&lt;br&gt;Will list objects in a container/OU or a domain. &lt;br&gt;&lt;strike&gt;-&lt;/strike&gt;&lt;br&gt;&lt;br&gt;&lt;a tiddlylink=&quot;ListProperties&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #ListProperties&quot; href=&quot;#ListProperties&quot; class=&quot;externalLink&quot;&gt;ListProperties&lt;/a&gt;.vbs&lt;br&gt;&lt;br&gt;This script can be used with the &lt;a tiddlylink=&quot;WinNT&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #WinNT&quot; href=&quot;#WinNT&quot; class=&quot;externalLink&quot;&gt;WinNT&lt;/a&gt;:&lt;em&gt; namespace against Windows NT, Member or Workstation machines, or with the LDAP:&lt;/em&gt; namespace for Active Directory Domain Controllers. Pay attention that this script is case-sensitive in its syntax. &lt;br&gt;As for enumerating group membership, there are several tools, such as:&lt;br&gt;&lt;br&gt;&lt;a tiddlylink=&quot;FindGrp&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #FindGrp&quot; href=&quot;#FindGrp&quot; class=&quot;externalLink&quot;&gt;FindGrp&lt;/a&gt;.exe&lt;br&gt;&lt;a tiddlylink=&quot;IfMember&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #IfMember&quot; href=&quot;#IfMember&quot; class=&quot;externalLink&quot;&gt;IfMember&lt;/a&gt;.exe&lt;br&gt;&lt;a tiddlylink=&quot;ShowGrps&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #ShowGrps&quot; href=&quot;#ShowGrps&quot; class=&quot;externalLink&quot;&gt;ShowGrps&lt;/a&gt;.exe&lt;br&gt;&lt;br&gt;Each gives different results, so you might want to run them and compare the outputs of each tool. &lt;a tiddlylink=&quot;ShowGrps&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #ShowGrps&quot; href=&quot;#ShowGrps&quot; class=&quot;externalLink&quot;&gt;ShowGrps&lt;/a&gt;.exe, for example, can also query for group membership of computer objects:&lt;br&gt;&lt;br&gt;&lt;a tiddlylink=&quot;FindGrp&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #FindGrp&quot; href=&quot;#FindGrp&quot; class=&quot;externalLink&quot;&gt;FindGrp&lt;/a&gt;.exe &amp;lt;Domainname&amp;gt;\&amp;lt;&lt;a tiddlylink=&quot;MachineName&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #MachineName&quot; href=&quot;#MachineName&quot; class=&quot;externalLink&quot;&gt;MachineName&lt;/a&gt;&amp;gt;$&lt;br&gt;If you want to search for users satisfying a given criteria, you can try out&lt;br&gt;&lt;br&gt;chkusers.vbs&lt;br&gt;&lt;br&gt;This script checks your domain for users that satisfy a certain criteria that you define. &lt;br&gt;&lt;strike&gt;-&lt;/strike&gt;&lt;br&gt;&lt;br&gt;Cscript CHKUSERS.VBS /A:&lt;a tiddlylink=&quot;WinNT&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #WinNT&quot; href=&quot;#WinNT&quot; class=&quot;externalLink&quot;&gt;WinNT&lt;/a&gt;:&lt;em&gt;&lt;a tiddlylink=&quot;YourDomainName&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #YourDomainName&quot; href=&quot;#YourDomainName&quot; class=&quot;externalLink&quot;&gt;YourDomainName&lt;/a&gt; /P:&lt;a tiddlylink=&quot;FullName&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #FullName&quot; href=&quot;#FullName&quot; class=&quot;externalLink&quot;&gt;FullName&lt;/a&gt;;Description/C:&quot;((&lt;a tiddlylink=&quot;LastLogin&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #LastLogin&quot; href=&quot;#LastLogin&quot; class=&quot;externalLink&quot;&gt;LastLogin&lt;/a&gt;:&amp;gt;4/3/01 or &lt;a tiddlylink=&quot;LastLogin&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #LastLogin&quot; href=&quot;#LastLogin&quot; class=&quot;externalLink&quot;&gt;LastLogin&lt;/a&gt;:&amp;lt;8/4/01) and &lt;a tiddlylink=&quot;AccountDisabled&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #AccountDisabled&quot; href=&quot;#AccountDisabled&quot; class=&quot;externalLink&quot;&gt;AccountDisabled&lt;/a&gt;:=False)&quot;&lt;br&gt;This will output the full name and description of all active users whose last login was between 4/3/01 to 8/4/01. &lt;br&gt;&lt;strike&gt;-&lt;/strike&gt;&lt;br&gt;&lt;br&gt;Using LDIFDE&lt;br&gt;&lt;br&gt;From the support tools we can find LDIFDE.exe, which is a tool for bulk import and export of Active Directory Objects. You can use LDIFDE to import new user records into the directory, or export specific information on specific users into a text file. LDIFDE defaults to export mode (reading From the Directory). When you add the -i option it can be used to write changes into the Directory. Also, if you want to export and extract only specific details, such as the user name, title and login name for all the users in a specific OU (Organizational Unit), you can run the following command: &lt;br&gt;&lt;br&gt;ldifde&lt;br&gt;-f C:\ldif\&lt;a tiddlylink=&quot;ExportUsers&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #ExportUsers&quot; href=&quot;#ExportUsers&quot; class=&quot;externalLink&quot;&gt;ExportUsers&lt;/a&gt;.ldf –s SERVERNAME -d&lt;br&gt;&quot;OU=&lt;a tiddlylink=&quot;YourOUname&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #YourOUname&quot; href=&quot;#YourOUname&quot; class=&quot;externalLink&quot;&gt;YourOUname&lt;/a&gt;,dc=&lt;a tiddlylink=&quot;YourDomainName&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #YourDomainName&quot; href=&quot;#YourDomainName&quot; class=&quot;externalLink&quot;&gt;YourDomainName&lt;/a&gt;,dc=com&quot; -p subtree -r&lt;br&gt;&quot;(objectClass=User)&quot; -l &quot;cn,givenName,Title,&lt;a tiddlylink=&quot;SamAccountName&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #SamAccountName&quot; href=&quot;#SamAccountName&quot; class=&quot;externalLink&quot;&gt;SamAccountName&lt;/a&gt;&quot;&lt;br&gt; &lt;br&gt;Original Info Source:&lt;br&gt;http:&lt;/em&gt;www.petri.co.il/list_all_users_and_groups_in_domain.htm&lt;br&gt; &lt;br&gt;&lt;br&gt;</description>
<category>users</category>
<category>groups</category>
<category>windows</category>
<category>domain</category>
<link>http://swytch.tiddlyspot.com//#%5B%5BQuick%20Reports%20for%20Domain%20Users%20and%20Groups%5D%5D</link>
<pubDate>Wed, 10 Jan 2007 14:43:39 GMT</pubDate>
</item>
<item>
<title>Installing PGP 8.3</title>
<description>Step By Step PGP 8.3 Installation Tutorial&lt;br&gt;&lt;br&gt; &lt;br&gt;To download PGP 8.3, click on the link provided below:&lt;br&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://www.pgpi.org/products/pgp/versions/freeware/&quot; href=&quot;http://www.pgpi.org/products/pgp/versions/freeware/&quot; class=&quot;externalLink&quot;&gt;http://www.pgpi.org/products/pgp/versions/freeware/&lt;/a&gt;&lt;br&gt;&lt;br&gt; When prompted, select “Save to Desktop”&lt;br&gt;&lt;br&gt; Double-click on the new install file, &lt;a tiddlylink=&quot;PGP8_3&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #PGP8_3&quot; href=&quot;#PGP8_3&quot; class=&quot;externalLink&quot;&gt;PGP8_3&lt;/a&gt;.zip, to proceed with the install&lt;br&gt;&lt;br&gt;You will see the screen above, click NEXT&lt;br&gt;&lt;br&gt;Click YES to accept&lt;br&gt;&lt;br&gt;Click NEXT&lt;br&gt;&lt;br&gt;&lt;br&gt;Select NO to create a new key pair (Public/Private)&lt;br&gt;&lt;br&gt;Click NEXT&lt;br&gt; &lt;br&gt;Select only the &lt;a tiddlylink=&quot;PGPDisk&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #PGPDisk&quot; href=&quot;#PGPDisk&quot; class=&quot;externalLink&quot;&gt;PGPDisk&lt;/a&gt; Volume Security option, then click NEXT&lt;br&gt;&lt;br&gt; Click NEXT&lt;br&gt;&lt;br&gt; You will see PGP installing&lt;br&gt;&lt;br&gt;Select YES to reboot your PC, click FINISH&lt;br&gt;&lt;br&gt;After reboot PGP will automatically startup to complete the process.&lt;br&gt;&lt;br&gt;You will be prompted to enter license information to which you may simply click “LATER”.&lt;br&gt;&lt;br&gt;You will be greeted with the Welcome to PGP screen.  Click NEXT to continue.&lt;br&gt; &lt;br&gt;Enter your Full Name and email address. (This information is used to configure your key.  You will not be sent solicitations)&lt;br&gt;&lt;br&gt;Select Attempt to Find, click NEXT&lt;br&gt;&lt;br&gt;Enter a “private” passphrase which will be for your use only.  Do not share this passphrase with others.  This passphrase is your key to opening encrypted documents.  Click NEXT when finished entering.&lt;br&gt;&lt;br&gt;Click NEXT&lt;br&gt;&lt;br&gt; Click FINISH and your installation is complete.&lt;br&gt; &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;To Exchange PGP Public Keys&lt;br&gt;&lt;br&gt;&lt;br&gt;You will first need to EXPORT your PGP Public Key&lt;br&gt;&lt;br&gt;Right-click on the PGP lock icon in the lower right side of your screen.  Click on &lt;a tiddlylink=&quot;PGPKeys&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #PGPKeys&quot; href=&quot;#PGPKeys&quot; class=&quot;externalLink&quot;&gt;PGPKeys&lt;/a&gt; to open your key ring.&lt;br&gt;&lt;br&gt; Right-click on your PGP Key and click on EXPORT&lt;br&gt;&lt;br&gt; A second window will appear asking where you wish to export to, select desktop.&lt;br&gt;&lt;br&gt;You will now see your PGP public key on your desktop area.&lt;br&gt;&lt;br&gt;Simply attached that public key to an email as you would a normal file.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt; &lt;br&gt;To Encrypt A File Using PGP&lt;br&gt;&lt;br&gt;&lt;br&gt;Right-click on the file you wish to encrypt&lt;br&gt;&lt;br&gt;Click on PGP option -&amp;gt; Encrypt&lt;br&gt;&lt;br&gt;&lt;br&gt;Double-click on the recipient you wish to encrypt to.&lt;br&gt;&lt;br&gt;Choose where you wish to put the encrypted file (DESKTOP suggested)&lt;br&gt;&lt;br&gt;You will see the newly encrypted file (ex: on your DESKTOP)&lt;br&gt;&lt;br&gt;To Create An SDA (Self Decrypting Archive) PGP File&lt;br&gt;&lt;br&gt; (&lt;a tiddlylink=&quot;SDAs&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #SDAs&quot; href=&quot;#SDAs&quot; class=&quot;externalLink&quot;&gt;SDAs&lt;/a&gt; are used when the recipient does not have PGP Encryption software installed)&lt;br&gt;&lt;br&gt; To send an encrypted document to a selected recipient, right-click on the file&lt;br&gt;&lt;br&gt;Right-click on the file you wish to encrypt&lt;br&gt;&lt;br&gt;Click on PGP option -&amp;gt; Create SDA&lt;br&gt;&lt;br&gt; You will see a window appear requesting that you enter a separate passphrase to encrypt this document.  This passphrase should not match your private passphrase (the private passphrase you use to decrypt files with).  This is a passphrase which you will share with the recipient so that he/she can open the file after it is received.&lt;br&gt;&lt;br&gt; &lt;br&gt;Select where you wish to place the newly encrypted file (DESKTOP suggested), click SAVE&lt;br&gt;&lt;br&gt; &lt;br&gt;You will now see your newly encrypted file (ex: on your DESKTOP)&lt;br&gt;</description>
<category>PGP</category>
<category>v8.3</category>
<category>install</category>
<category>encryption</category>
<link>http://swytch.tiddlyspot.com//#%5B%5BInstalling%20PGP%208.3%5D%5D</link>
<pubDate>Tue, 09 Jan 2007 21:39:00 GMT</pubDate>
</item>
<item>
<title>Steps to Removing Most Viruses From Your PC</title>
<description>How to “Clean Up” after a virus has been detected on your PC&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;&lt;br&gt;Process Overview:&lt;br&gt;&lt;br&gt;   1. Disable System Restore (Windows Me/XP).&lt;br&gt;   2. Remove all the entries that the risk added to the hosts file.&lt;br&gt;   3. Update the virus definitions.&lt;br&gt;   4. Run a full system scan and delete all the files detected.&lt;br&gt;   5. Delete any values added to the registry.&lt;br&gt;   6. Disable unneeded Windows startup programs&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;The following instructions.&lt;br&gt;&lt;br&gt;1. To disable System Restore (Windows Me/XP)&lt;br&gt;If you are running Windows Me or Windows XP, it is almost always the case that you will need to disable this feature in Windows temporarily.  When you chose disable, Windows will delete any saved System Restore entries that are present.  This is to be done because if a virus, worm, or Trojan infects a computer, System Restore may back up the virus, worm, or Trojan on the computer.  Since the Windows OS prevents modification of this area by anything other than itself, antivirus tools can not enter, analyze and disinfect any virus that may be hiding in it.&lt;br&gt;&lt;br&gt;I have included 2 short articles with instructions for disabling System Restore in both Windows ME and XP.&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;How to disable or enable Windows Me System Restore&lt;br&gt;&lt;br&gt;How to turn off or turn on Windows XP System Restore&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;ul&gt;&lt;li&gt; Once you have completed the process of disinfecting your PC, you will want to re-enable System Restore in Windows.  To do this you will simply reverse the disable instructions.  &lt;/li&gt;&lt;/ul&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;&lt;br&gt;2. To remove all the entries that the risk added to the hosts file&lt;br&gt;&lt;br&gt;   1. Navigate to the following location:&lt;br&gt;          * Windows 95/98/Me:&lt;br&gt;            %Windir%&lt;br&gt;          * Windows NT/2000/XP:&lt;br&gt;            %Windir%\System32\drivers\etc&lt;br&gt;&lt;br&gt;&lt;br&gt;   2. Right-click on the HOSTS file, select Copy and Paste to your desktop for a backup&lt;br&gt;   3. Now, right-click the HOSTS file again and select “Open With” -&amp;gt; Browse.&lt;br&gt;   4. Scroll through the list of programs and double-click Notepad.&lt;br&gt;   5. When the file opens, delete all the entries added by the particular virus you are disinfecting. (See the technical details on the virus in question, search the online Virus Encyclopedia)&lt;br&gt;   6. By default, most systems will only have the following line:&lt;br&gt;&lt;br&gt;127.0.0.1                     localhost&lt;br&gt;&lt;br&gt;   7. Close Notepad and save your changes when prompted.&lt;br&gt;&lt;br&gt;To learn more about Window’s HOST file, click here.&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;3. Make sure your current Antivirus program’s virus signature files are completely up to date.  Follow the necessary step to update your antivirus program.  See manufacturer’s website for specific details on this operation.&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;4.  Run a full system scan on you PC.  If you do not have media in your &lt;a tiddlylink=&quot;CD-Rom&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #CD-Rom&quot; href=&quot;#CD-Rom&quot; class=&quot;externalLink&quot;&gt;CD-Rom&lt;/a&gt;/DVD/Floppy Drives, you may omit them from your scan.  If you have more than one hard drive, though, be sure and select it in addition to your C Drive (main boot drive).&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;5.  To delete a value from the registry&lt;br&gt;I strongly recommend that you back up the registry before making any changes to it.  Changes to the registry that are incorrect can cause permanent data loss or even cause Windows to crash.  &lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;Click here for more information on that process.&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;After you have backed up the registry, modify only the Registry Subkeys that pertain to the particular virus you are disinfecting.  Pay close attention to this.  Information on exactly what Registry Subkeys to change can be found when you research the virus on sites such as Antivirus.com or Symantec.com.  When you search the web on the subject, be sure the information you are getting is from a valid and trustworthy source.  There are many website posts out there from individuals who are not truly experienced and may inadvertently suggest you delete an important or necessary Registry key or some other type of serious modification.&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;To enter the Windows Registry:&lt;br&gt;&lt;br&gt;   1. Click Start &amp;gt; Run.&lt;br&gt;   2. Type regedit&lt;br&gt;   3. Click OK.&lt;br&gt;&lt;br&gt;&lt;ul&gt;&lt;li&gt;If, after you have proceeded though the above instructions, the Windows Registry refuses to open, the virus may have altered the executable prohibiting you from further getting rid of it.  It is a survival tactic viruses occasionally use.  To get by this, Symantec’s Security Response Center has created a tool to assist you.  Click here to download it and remember to read the instructions carefully. &lt;/li&gt;&lt;/ul&gt;&lt;br&gt; &lt;br&gt;Examples of Registry Subkeys you will navigate through are shown below in the following example on removing the virus: Trojan.Tooso.L&lt;br&gt;&lt;br&gt;Browse to:&lt;br&gt;&lt;br&gt;&lt;a tiddlylink=&quot;HKEY_LOCAL_MACHINE&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #HKEY_LOCAL_MACHINE&quot; href=&quot;#HKEY_LOCAL_MACHINE&quot; class=&quot;externalLink&quot;&gt;HKEY_LOCAL_MACHINE&lt;/a&gt;\SOFTWARE\Microsoft\Windows\&lt;a tiddlylink=&quot;CurrentVersion&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #CurrentVersion&quot; href=&quot;#CurrentVersion&quot; class=&quot;externalLink&quot;&gt;CurrentVersion&lt;/a&gt;\Run&lt;br&gt;&lt;a tiddlylink=&quot;HKEY_CURRENT_USER&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #HKEY_CURRENT_USER&quot; href=&quot;#HKEY_CURRENT_USER&quot; class=&quot;externalLink&quot;&gt;HKEY_CURRENT_USER&lt;/a&gt;\Software\Microsoft\Windows\&lt;a tiddlylink=&quot;CurrentVersion&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #CurrentVersion&quot; href=&quot;#CurrentVersion&quot; class=&quot;externalLink&quot;&gt;CurrentVersion&lt;/a&gt;\Run&lt;br&gt;&lt;br&gt;   4. In the right pane, delete the value:&lt;br&gt;&lt;br&gt;      &quot;winshost.exe&quot; = &quot;%System%\winshost.exe&quot;&lt;br&gt;   5. Navigate to the subkeys:&lt;br&gt;&lt;br&gt;      &lt;a tiddlylink=&quot;HKEY_LOCAL_MACHINE&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #HKEY_LOCAL_MACHINE&quot; href=&quot;#HKEY_LOCAL_MACHINE&quot; class=&quot;externalLink&quot;&gt;HKEY_LOCAL_MACHINE&lt;/a&gt;\SYSTEM\&lt;a tiddlylink=&quot;CurrentControlSet&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #CurrentControlSet&quot; href=&quot;#CurrentControlSet&quot; class=&quot;externalLink&quot;&gt;CurrentControlSet&lt;/a&gt;\Services\Alerter&lt;br&gt;      &lt;a tiddlylink=&quot;HKEY_LOCAL_MACHINE&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #HKEY_LOCAL_MACHINE&quot; href=&quot;#HKEY_LOCAL_MACHINE&quot; class=&quot;externalLink&quot;&gt;HKEY_LOCAL_MACHINE&lt;/a&gt;\SYSTEM\&lt;a tiddlylink=&quot;CurrentControlSet&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #CurrentControlSet&quot; href=&quot;#CurrentControlSet&quot; class=&quot;externalLink&quot;&gt;CurrentControlSet&lt;/a&gt;\Services\&lt;a tiddlylink=&quot;SharedAccess&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #SharedAccess&quot; href=&quot;#SharedAccess&quot; class=&quot;externalLink&quot;&gt;SharedAccess&lt;/a&gt;&lt;br&gt;      &lt;a tiddlylink=&quot;HKEY_LOCAL_MACHINE&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #HKEY_LOCAL_MACHINE&quot; href=&quot;#HKEY_LOCAL_MACHINE&quot; class=&quot;externalLink&quot;&gt;HKEY_LOCAL_MACHINE&lt;/a&gt;\SYSTEM\&lt;a tiddlylink=&quot;CurrentControlSet&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #CurrentControlSet&quot; href=&quot;#CurrentControlSet&quot; class=&quot;externalLink&quot;&gt;CurrentControlSet&lt;/a&gt;\Services\wuauserv&lt;br&gt;   6. In the right pane, restore the value to the original value if applicable.&lt;br&gt;   7. Exit the Registry Editor&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;6.  To Edit your System Startup Area&lt;br&gt;&lt;br&gt;Last, you’ll need to go into Windows OS startup area also known as “System Configuration Utility or msconfig” and remove any unwanted startup programs.  If you have an active virus, you will see it’s entry in this area.  Again, the precise entries to remove will be outlined in your target virus’s description found on Antivirus.com or Symantec.com.  NOTE: It is good practice to only have what you absolutely need (checked) in this startup area.  By having less programs running at start up, your PC will boot faster.&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;a. Click here for a good overview on this process.&lt;br&gt;&lt;br&gt; </description>
<category>viruses</category>
<category>removal</category>
<category>pc</category>
<category>steps</category>
<link>http://swytch.tiddlyspot.com//#%5B%5BSteps%20to%20Removing%20Most%20Viruses%20From%20Your%20PC%5D%5D</link>
<pubDate>Tue, 09 Jan 2007 21:32:00 GMT</pubDate>
</item>
<item>
<title>Welcome to TiddlyWiki by Swytch</title>
<description>Browse this Wiki for various techie tips &amp;amp; tricks I've picked up along the way!</description>
<link>http://swytch.tiddlyspot.com//#%5B%5BWelcome%20to%20TiddlyWiki%20by%20Swytch%5D%5D</link>
<pubDate>Tue, 09 Jan 2007 21:11:00 GMT</pubDate>
</item>
<item>
<title>DefaultTiddlers</title>
<description>&lt;a tiddlylink=&quot;Welcome to your tiddlyspot.com site!&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #Welcome to your tiddlyspot.com site!&quot; href=&quot;#Welcome%20to%20your%20tiddlyspot.com%20site%21&quot; class=&quot;externalLink&quot;&gt;Welcome to your tiddlyspot.com site!&lt;/a&gt; &lt;a tiddlylink=&quot;GettingStarted&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #GettingStarted&quot; href=&quot;#GettingStarted&quot; class=&quot;externalLink&quot;&gt;GettingStarted&lt;/a&gt; &lt;a tiddlylink=&quot;Tutorials&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #Tutorials&quot; href=&quot;#Tutorials&quot; class=&quot;externalLink&quot;&gt;Tutorials&lt;/a&gt;</description>
<link>http://swytch.tiddlyspot.com//#DefaultTiddlers</link>
<pubDate>Tue, 09 Jan 2007 21:08:00 GMT</pubDate>
</item>
<item>
<title>Welcome</title>
<description>This document is a TiddlyWiki from tiddlyspot.com.  A TiddlyWiki is an electronic notebook that is great for managing todo lists, personal information, and all sorts of things.&lt;br&gt;&lt;br&gt;&lt;span style=&quot;font-weight: bold; font-size: 1.3em; color: rgb(68, 68, 68);&quot;&gt; &lt;em&gt;What now?&lt;/em&gt; &lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; Before you can save any changes, you need to enter your password in the form below.  Then configure privacy and other site settings at your &lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/controlpanel&quot; href=&quot;http://swytch.tiddlyspot.com/controlpanel&quot; class=&quot;externalLink&quot;&gt;control panel&lt;/a&gt; (your control panel username is &lt;em&gt;swytch&lt;/em&gt;).&lt;br&gt;&lt;span tiddler=&quot;tiddlyspotControls&quot; refresh=&quot;content&quot;&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;right&quot;&gt;tiddlyspot password:&lt;/td&gt;&lt;td&gt;&lt;input class=&quot;pasOptionInput pasUploadPassword&quot; option=&quot;pasUploadPassword&quot; type=&quot;password&quot;&gt;&lt;input class=&quot;chkOptionInput pasUploadPassword&quot; option=&quot;chkpasUploadPassword&quot; type=&quot;checkbox&quot;&gt;Save this password on this computer&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td align=&quot;right&quot;&gt;site management:&lt;/td&gt;&lt;td&gt;&lt;a accesskey=&quot;U&quot; class=&quot;button&quot; title=&quot;Save and Upload this TiddlyWiki in http://swytch.tiddlyspot.com&quot; href=&quot;javascript:;&quot;&gt;save to web&lt;/a&gt;&lt;em&gt;(requires tiddlyspot password)&lt;/em&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/controlpanel&quot; href=&quot;http://swytch.tiddlyspot.com/controlpanel&quot; class=&quot;externalLink&quot;&gt;control panel&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/download&quot; href=&quot;http://swytch.tiddlyspot.com/download&quot; class=&quot;externalLink&quot;&gt;download (go offline)&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;right&quot;&gt;links:&lt;/td&gt;&lt;td&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlyspot.com/&quot; href=&quot;http://tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;tiddlyspot.com&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://faq.tiddlyspot.com/&quot; href=&quot;http://faq.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;FAQs&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://announce.tiddlyspot.com/&quot; href=&quot;http://announce.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;announcements&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlyspot.com/blog/&quot; href=&quot;http://tiddlyspot.com/blog/&quot; class=&quot;externalLink&quot;&gt;blog&lt;/a&gt;, email &lt;a target=&quot;_blank&quot; title=&quot;External link to mailto:support@tiddlyspot.com&quot; href=&quot;mailto:support@tiddlyspot.com&quot; class=&quot;externalLink&quot;&gt;support&lt;/a&gt; &amp;amp; &lt;a target=&quot;_blank&quot; title=&quot;External link to mailto:feedback@tiddlyspot.com&quot; href=&quot;mailto:feedback@tiddlyspot.com&quot; class=&quot;externalLink&quot;&gt;feedback&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlyspot.com/?page=donate&quot; href=&quot;http://tiddlyspot.com/?page=donate&quot; class=&quot;externalLink&quot;&gt;donate&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/span&gt;&lt;br&gt;&lt;span style=&quot;font-weight: bold; font-size: 1.3em; color: rgb(68, 68, 68);&quot;&gt; &lt;em&gt;Working online&lt;/em&gt; &lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; You can edit this TiddlyWiki right now, and save your changes using the &quot;save to web&quot; button in the column on the right.&lt;br&gt;&lt;br&gt;&lt;span style=&quot;font-weight: bold; font-size: 1.3em; color: rgb(68, 68, 68);&quot;&gt; &lt;em&gt;Working offline&lt;/em&gt; &lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; A fully functioning copy of this TiddlyWiki can be saved onto your hard drive or USB stick.  You can make changes and save them locally without being connected to the Internet.  When you're ready to sync up again, just click &quot;upload&quot; and your TiddlyWiki will be saved back to tiddlyspot.com.&lt;br&gt;&lt;br&gt;&lt;span style=&quot;font-weight: bold; font-size: 1.3em; color: rgb(68, 68, 68);&quot;&gt; &lt;em&gt;Help!&lt;/em&gt; &lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; Find out more about TiddlyWiki at &lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlywiki.com&quot; href=&quot;http://tiddlywiki.com&quot; class=&quot;externalLink&quot;&gt;TiddlyWiki.com&lt;/a&gt;.  Also visit &lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlywikiguides.org&quot; href=&quot;http://tiddlywikiguides.org&quot; class=&quot;externalLink&quot;&gt;TiddlyWiki Guides&lt;/a&gt; for documentation on learning and using TiddlyWiki. New users are especially welcome on the &lt;a target=&quot;_blank&quot; title=&quot;External link to http://groups.google.com/group/TiddlyWiki&quot; href=&quot;http://groups.google.com/group/TiddlyWiki&quot; class=&quot;externalLink&quot;&gt;TiddlyWiki mailing list&lt;/a&gt;, which is an excellent place to ask questions and get help.  If you have a tiddlyspot related problem email &lt;a target=&quot;_blank&quot; title=&quot;External link to mailto:support@tiddlyspot.com&quot; href=&quot;mailto:support@tiddlyspot.com&quot; class=&quot;externalLink&quot;&gt;tiddlyspot support&lt;/a&gt;.&lt;br&gt;&lt;br&gt;&lt;span style=&quot;font-weight: bold; font-size: 1.3em; color: rgb(68, 68, 68);&quot;&gt; &lt;em&gt;Enjoy :)&lt;/em&gt; &lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; We hope you like using your tiddlyspot.com site.  Please email &lt;a target=&quot;_blank&quot; title=&quot;External link to mailto:feedback@tiddlyspot.com&quot; href=&quot;mailto:feedback@tiddlyspot.com&quot; class=&quot;externalLink&quot;&gt;feedback@tiddlyspot.com&lt;/a&gt; with any comments or suggestions.</description>
<category>tiddlyspot</category>
<link>http://swytch.tiddlyspot.com//#Welcome</link>
<pubDate>Tue, 09 Jan 2007 21:06:00 GMT</pubDate>
</item>
<item>
<title>AdvancedOptions</title>
<description>&lt;input class=&quot;chkOptionInput chkGenerateAnRssFeed&quot; option=&quot;chkGenerateAnRssFeed&quot; type=&quot;checkbox&quot;&gt; &lt;a tiddlylink=&quot;GenerateAnRssFeed&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #GenerateAnRssFeed&quot; href=&quot;#GenerateAnRssFeed&quot; class=&quot;externalLink&quot;&gt;GenerateAnRssFeed&lt;/a&gt;&lt;br&gt;&lt;input class=&quot;chkOptionInput chkOpenInNewWindow&quot; option=&quot;chkOpenInNewWindow&quot; type=&quot;checkbox&quot;&gt; &lt;a tiddlylink=&quot;OpenLinksInNewWindow&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #OpenLinksInNewWindow&quot; href=&quot;#OpenLinksInNewWindow&quot; class=&quot;externalLink&quot;&gt;OpenLinksInNewWindow&lt;/a&gt;&lt;br&gt;&lt;input class=&quot;chkOptionInput chkSaveEmptyTemplate&quot; option=&quot;chkSaveEmptyTemplate&quot; type=&quot;checkbox&quot;&gt; &lt;a tiddlylink=&quot;SaveEmptyTemplate&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #SaveEmptyTemplate&quot; href=&quot;#SaveEmptyTemplate&quot; class=&quot;externalLink&quot;&gt;SaveEmptyTemplate&lt;/a&gt;&lt;br&gt;&lt;input class=&quot;chkOptionInput chkToggleLinks&quot; option=&quot;chkToggleLinks&quot; type=&quot;checkbox&quot;&gt; Clicking on links to tiddlers that are already open causes them to close&lt;br&gt;&lt;sup&gt;(override with Control or other modifier key)&lt;/sup&gt;&lt;br&gt;&lt;input class=&quot;chkOptionInput chkHttpReadOnly&quot; option=&quot;chkHttpReadOnly&quot; type=&quot;checkbox&quot;&gt; &lt;a tiddlylink=&quot;HideEditingFeatures&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #HideEditingFeatures&quot; href=&quot;#HideEditingFeatures&quot; class=&quot;externalLink&quot;&gt;HideEditingFeatures&lt;/a&gt; when viewed over HTTP&lt;br&gt;&lt;input class=&quot;chkOptionInput chkForceMinorUpdate&quot; option=&quot;chkForceMinorUpdate&quot; type=&quot;checkbox&quot;&gt; Treat edits as &lt;a tiddlylink=&quot;MinorChanges&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #MinorChanges&quot; href=&quot;#MinorChanges&quot; class=&quot;externalLink&quot;&gt;MinorChanges&lt;/a&gt; by preserving date and time&lt;br&gt;&lt;sup&gt;(override with Shift key when clicking 'done' or by pressing &lt;a tiddlylink=&quot;Ctrl-Shift-Enter&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #Ctrl-Shift-Enter&quot; href=&quot;#Ctrl-Shift-Enter&quot; class=&quot;externalLink&quot;&gt;Ctrl-Shift-Enter&lt;/a&gt;&lt;/sup&gt;&lt;br&gt;&lt;input class=&quot;chkOptionInput chkConfirmDelete&quot; option=&quot;chkConfirmDelete&quot; type=&quot;checkbox&quot;&gt; &lt;a tiddlylink=&quot;ConfirmBeforeDeleting&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #ConfirmBeforeDeleting&quot; href=&quot;#ConfirmBeforeDeleting&quot; class=&quot;externalLink&quot;&gt;ConfirmBeforeDeleting&lt;/a&gt;&lt;br&gt;Maximum number of lines in a tiddler edit box: &lt;input class=&quot;txtOptionInput txtMaxEditRows&quot; option=&quot;txtMaxEditRows&quot;&gt;&lt;br&gt;Folder name for backup files: &lt;input class=&quot;txtOptionInput txtBackupFolder&quot; option=&quot;txtBackupFolder&quot;&gt;&lt;br&gt;&lt;input class=&quot;chkOptionInput chkInsertTabs&quot; option=&quot;chkInsertTabs&quot; type=&quot;checkbox&quot;&gt; Use tab key to insert tab characters instead of jumping to next field</description>
<link>http://swytch.tiddlyspot.com//#AdvancedOptions</link>
<pubDate>Tue, 09 Jan 2007 14:21:00 GMT</pubDate>
</item>
<item>
<title>About This Wiki</title>
<description>&lt;a tiddlylink=&quot;TiddlyWiki&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #TiddlyWiki&quot; href=&quot;#TiddlyWiki&quot; class=&quot;externalLink&quot;&gt;TiddlyWiki&lt;/a&gt; by Swytch is a repository for random bits of techie information which I have collected and wish to share.&lt;br&gt;&lt;br&gt;More Links To My &lt;a tiddlylink=&quot;WebWorld&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #WebWorld&quot; href=&quot;#WebWorld&quot; class=&quot;externalLink&quot;&gt;WebWorld&lt;/a&gt;:&lt;br&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://www.cyberfindz.com&quot; href=&quot;http://www.cyberfindz.com&quot; class=&quot;externalLink&quot;&gt;http://www.cyberfindz.com&lt;/a&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytchit.blogspot.com&quot; href=&quot;http://swytchit.blogspot.com&quot; class=&quot;externalLink&quot;&gt;http://swytchit.blogspot.com&lt;/a&gt;</description>
<link>http://swytch.tiddlyspot.com//#%5B%5BAbout%20This%20Wiki%5D%5D</link>
<pubDate>Tue, 09 Jan 2007 14:18:00 GMT</pubDate>
</item>
<item>
<title>MainMenu</title>
<description>&lt;a tiddlylink=&quot;How-Tos&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #How-Tos&quot; href=&quot;#How-Tos&quot; class=&quot;externalLink&quot;&gt;How-Tos&lt;/a&gt;&lt;br&gt;Random Tidbits</description>
<link>http://swytch.tiddlyspot.com//#MainMenu</link>
<pubDate>Tue, 09 Jan 2007 14:14:00 GMT</pubDate>
</item>
<item>
<title>GettingStarted</title>
<description>To get started with this blank &lt;a tiddlylink=&quot;TiddlyWiki&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #TiddlyWiki&quot; href=&quot;#TiddlyWiki&quot; class=&quot;externalLink&quot;&gt;TiddlyWiki&lt;/a&gt;, you'll need to modify the following tiddlers:&lt;br&gt;&lt;ul&gt;&lt;li&gt; &lt;a tiddlylink=&quot;SiteTitle&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #SiteTitle&quot; href=&quot;#SiteTitle&quot; class=&quot;externalLink&quot;&gt;SiteTitle&lt;/a&gt; &amp;amp; &lt;a tiddlylink=&quot;SiteSubtitle&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #SiteSubtitle&quot; href=&quot;#SiteSubtitle&quot; class=&quot;externalLink&quot;&gt;SiteSubtitle&lt;/a&gt;: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)&lt;/li&gt;&lt;li&gt; &lt;a tiddlylink=&quot;MainMenu&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #MainMenu&quot; href=&quot;#MainMenu&quot; class=&quot;externalLink&quot;&gt;MainMenu&lt;/a&gt;: The menu (usually on the left)&lt;/li&gt;&lt;li&gt; &lt;a tiddlylink=&quot;DefaultTiddlers&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #DefaultTiddlers&quot; href=&quot;#DefaultTiddlers&quot; class=&quot;externalLink&quot;&gt;DefaultTiddlers&lt;/a&gt;: Contains the names of the tiddlers that you want to appear when the &lt;a tiddlylink=&quot;TiddlyWiki&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #TiddlyWiki&quot; href=&quot;#TiddlyWiki&quot; class=&quot;externalLink&quot;&gt;TiddlyWiki&lt;/a&gt; is opened&lt;/li&gt;&lt;/ul&gt;You'll also need to enter your username for signing your edits: Swytch</description>
<link>http://swytch.tiddlyspot.com//#GettingStarted</link>
<pubDate>Tue, 09 Jan 2007 14:13:00 GMT</pubDate>
</item>
<item>
<title>SiteSubtitle</title>
<description>Random Tidbits Of Useful Information</description>
<link>http://swytch.tiddlyspot.com//#SiteSubtitle</link>
<pubDate>Tue, 09 Jan 2007 14:11:00 GMT</pubDate>
</item>
<item>
<title>SiteTitle</title>
<description>&lt;a tiddlylink=&quot;TiddlyWiki&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #TiddlyWiki&quot; href=&quot;#TiddlyWiki&quot; class=&quot;externalLink&quot;&gt;TiddlyWiki&lt;/a&gt; by Swytch</description>
<link>http://swytch.tiddlyspot.com//#SiteTitle</link>
<pubDate>Tue, 09 Jan 2007 14:10:00 GMT</pubDate>
</item>
<item>
<title>UploadPlugin</title>
<description>&lt;table&gt;&lt;tbody&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Name:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;UploadPlugin&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Description:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;Save to web a TiddlyWiki&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Version:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;3.4.4&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Date:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;Sep 30, 2006&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Source:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlywiki.bidix.info/#UploadPlugin&quot; href=&quot;http://tiddlywiki.bidix.info/#UploadPlugin&quot; class=&quot;externalLink&quot;&gt;http://tiddlywiki.bidix.info/#UploadPlugin&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Documentation:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlywiki.bidix.info/#UploadDoc&quot; href=&quot;http://tiddlywiki.bidix.info/#UploadDoc&quot; class=&quot;externalLink&quot;&gt;http://tiddlywiki.bidix.info/#UploadDoc&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Author:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;BidiX (BidiX (at) bidix (dot) info)&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;License:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D &quot; href=&quot;http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D%20&quot; class=&quot;externalLink&quot;&gt;BSD open source license&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;CoreVersion:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;2.0.0&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Browser:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;Firefox 1.5; InternetExplorer 6.0; Safari&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Include:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;config.lib.file; config.lib.log; config.lib.options; PasswordTweak&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Require:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlywiki.bidix.info/#UploadService&quot; href=&quot;http://tiddlywiki.bidix.info/#UploadService&quot; class=&quot;externalLink&quot;&gt;UploadService&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;pre&gt;version.extensions.UploadPlugin = {
	major: 3, minor: 4, revision: 4, 
	date: new Date(2006,8,30),
	source: 'http://tiddlywiki.bidix.info/#UploadPlugin',
	documentation: 'http://tiddlywiki.bidix.info/#UploadDoc',
	author: 'BidiX (BidiX (at) bidix (dot) info',
	license: '[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D]]',
	coreVersion: '2.0.0',
	browser: 'Firefox 1.5; InternetExplorer 6.0; Safari'
};
&lt;/pre&gt;&lt;br&gt;&lt;em&gt;&lt;/em&gt;+++!![config.lib.file]&lt;br&gt;&lt;br&gt;&lt;pre&gt;if (!config.lib) config.lib = {};
if (!config.lib.file) config.lib.file= {
	author: 'BidiX',
	version: {major: 0, minor: 1, revision: 0}, 
	date: new Date(2006,3,9)
};
config.lib.file.dirname = function (filePath) {
	var lastpos;
	if ((lastpos = filePath.lastIndexOf(&quot;/&quot;)) != -1) {
		return filePath.substring(0, lastpos);
	} else {
		return filePath.substring(0, filePath.lastIndexOf(&quot;\\&quot;));
	}
};
config.lib.file.basename = function (filePath) {
	var lastpos;
	if ((lastpos = filePath.lastIndexOf(&quot;#&quot;)) != -1) 
		filePath = filePath.substring(0, lastpos);
	if ((lastpos = filePath.lastIndexOf(&quot;/&quot;)) != -1) {
		return filePath.substring(lastpos + 1);
	} else
		return filePath.substring(filePath.lastIndexOf(&quot;\\&quot;)+1);
};
window.basename = function() {return &quot;@@deprecated@@&quot;;};
&lt;/pre&gt;&lt;em&gt;&lt;/em&gt;&lt;strike&gt;=&lt;br&gt;&lt;br&gt;&lt;em&gt;&lt;/em&gt;+++!![config.lib.log]&lt;br&gt;&lt;br&gt;&lt;pre&gt;if (!config.lib) config.lib = {};
if (!config.lib.log) config.lib.log= {
	author: 'BidiX',
	version: {major: 0, minor: 1, revision: 1}, 
	date: new Date(2006,8,19)
};
config.lib.Log = function(tiddlerTitle, logHeader) {
	if (version.major &amp;lt; 2)
		this.tiddler = store.tiddlers[tiddlerTitle];
	else
		this.tiddler = store.getTiddler(tiddlerTitle);
	if (!this.tiddler) {
		this.tiddler = new Tiddler();
		this.tiddler.title = tiddlerTitle;
		this.tiddler.text = &quot;| !date | !user | !location |&quot; + logHeader;
		this.tiddler.created = new Date();
		this.tiddler.modifier = config.options.txtUserName;
		this.tiddler.modified = new Date();
	if (version.major &amp;lt; 2)
		store.tiddlers[tiddlerTitle] = this.tiddler;
	else
		store.addTiddler(this.tiddler);
	}
	return this;
};

config.lib.Log.prototype.newLine = function (line) {
	var now = new Date();
	var newText = &quot;| &quot;;
	newText += now.getDate()+&quot;/&quot;+(now.getMonth()+1)+&quot;/&quot;+now.getFullYear() + &quot; &quot;;
	newText += now.getHours()+&quot;:&quot;+now.getMinutes()+&quot;:&quot;+now.getSeconds()+&quot; | &quot;;
	newText += config.options.txtUserName + &quot; | &quot;;
	var location = document.location.toString();
	var filename = config.lib.file.basename(location);
	if (!filename) filename = '/';
	newText += &quot;[[&quot;+filename+&quot;|&quot;+location + &quot;]] |&quot;;
	this.tiddler.text = this.tiddler.text + &quot;\n&quot; + newText;
	this.addToLine(line);
};

config.lib.Log.prototype.addToLine = function (text) {
	this.tiddler.text = this.tiddler.text + text;
	this.tiddler.modifier = config.options.txtUserName;
	this.tiddler.modified = new Date();
	if (version.major &amp;lt; 2)
	store.tiddlers[this.tiddler.tittle] = this.tiddler;
	else {
		store.addTiddler(this.tiddler);
		story.refreshTiddler(this.tiddler.title);
		store.notify(this.tiddler.title, true);
	}
	if (version.major &amp;lt; 2)
		store.notifyAll(); 
};
&lt;/pre&gt;&lt;em&gt;&lt;/em&gt;&lt;/strike&gt;=&lt;br&gt;&lt;br&gt;&lt;em&gt;&lt;/em&gt;+++!![config.lib.options]&lt;br&gt;&lt;br&gt;&lt;pre&gt;if (!config.lib) config.lib = {};
if (!config.lib.options) config.lib.options = {
	author: 'BidiX',
	version: {major: 0, minor: 1, revision: 0}, 
	date: new Date(2006,3,9)
};

config.lib.options.init = function (name, defaultValue) {
	if (!config.options[name]) {
		config.options[name] = defaultValue;
		saveOptionCookie(name);
	}
};
&lt;/pre&gt;&lt;em&gt;&lt;/em&gt;&lt;strike&gt;=&lt;br&gt;&lt;br&gt;&lt;em&gt;&lt;/em&gt;+++!![PasswordTweak]&lt;br&gt;&lt;br&gt;&lt;pre&gt;version.extensions.PasswordTweak = {
	major: 1, minor: 0, revision: 3, date: new Date(2006,8,30),
	type: 'tweak',
	source: 'http://tiddlywiki.bidix.info/#PasswordTweak'
};
&lt;/pre&gt;&lt;h2&gt;config.macros.option&lt;/h2&gt;&lt;pre&gt;config.macros.option.passwordCheckboxLabel = &quot;Save this password on this computer&quot;;
config.macros.option.passwordType = &quot;password&quot;; // password | text

config.macros.option.onChangeOption = function(e)
{
	var opt = this.getAttribute(&quot;option&quot;);
	var elementType,valueField;
	if(opt) {
		switch(opt.substr(0,3)) {
			case &quot;txt&quot;:
				elementType = &quot;input&quot;;
				valueField = &quot;value&quot;;
				break;
			case &quot;pas&quot;:
				elementType = &quot;input&quot;;
				valueField = &quot;value&quot;;
				break;
			case &quot;chk&quot;:
				elementType = &quot;input&quot;;
				valueField = &quot;checked&quot;;
				break;
		}
		config.options[opt] = this[valueField];
		saveOptionCookie(opt);
		var nodes = document.getElementsByTagName(elementType);
		for(var t=0; t&amp;lt;nodes.length; t++) 
			{
			var optNode = nodes[t].getAttribute(&quot;option&quot;);
			if (opt == optNode) 
				nodes[t][valueField] = this[valueField];
			}
		}
	return(true);
};

config.macros.option.handler = function(place,macroName,params)
{
    var opt = params[0];
    if(config.options[opt] === undefined) {
        return;}
    var c;
    switch(opt.substr(0,3)) {
		case &quot;txt&quot;:
			c = document.createElement(&quot;input&quot;);
			c.onkeyup = this.onChangeOption;
			c.setAttribute (&quot;option&quot;,opt);
			c.className = &quot;txtOptionInput &quot;+opt;
			place.appendChild(c);
			c.value = config.options[opt];
			break;
		case &quot;pas&quot;:
			// input password
			c = document.createElement (&quot;input&quot;);
			c.setAttribute(&quot;type&quot;,config.macros.option.passwordType);
			c.onkeyup = this.onChangeOption;
			c.setAttribute(&quot;option&quot;,opt);
			c.className = &quot;pasOptionInput &quot;+opt;
			place.appendChild(c);
			c.value = config.options[opt];
			// checkbox link with this password &quot;save this password on this computer&quot;
			c = document.createElement(&quot;input&quot;);
			c.setAttribute(&quot;type&quot;,&quot;checkbox&quot;);
			c.onclick = this.onChangeOption;
			c.setAttribute(&quot;option&quot;,&quot;chk&quot;+opt);
			c.className = &quot;chkOptionInput &quot;+opt;
			place.appendChild(c);
			c.checked = config.options[&quot;chk&quot;+opt];
			// text savePasswordCheckboxLabel
			place.appendChild(document.createTextNode(config.macros.option.passwordCheckboxLabel));
			break;
		case &quot;chk&quot;:
			c = document.createElement(&quot;input&quot;);
			c.setAttribute(&quot;type&quot;,&quot;checkbox&quot;);
			c.onclick = this.onChangeOption;
			c.setAttribute(&quot;option&quot;,opt);
			c.className = &quot;chkOptionInput &quot;+opt;
			place.appendChild(c);
			c.checked = config.options[opt];
			break;
	}
};
&lt;/pre&gt;&lt;h2&gt; Option cookie stuff&lt;/h2&gt;&lt;pre&gt;window.loadOptionsCookie_orig_PasswordTweak = window.loadOptionsCookie;
window.loadOptionsCookie = function()
{
	var cookies = document.cookie.split(&quot;;&quot;);
	for(var c=0; c&amp;lt;cookies.length; c++) {
		var p = cookies[c].indexOf(&quot;=&quot;);
		if(p != -1) {
			var name = cookies[c].substr(0,p).trim();
			var value = cookies[c].substr(p+1).trim();
			switch(name.substr(0,3)) {
				case &quot;txt&quot;:
					config.options[name] = unescape(value);
					break;
				case &quot;pas&quot;:
					config.options[name] = unescape(value);
					break;
				case &quot;chk&quot;:
					config.options[name] = value == &quot;true&quot;;
					break;
			}
		}
	}
};

window.saveOptionCookie_orig_PasswordTweak = window.saveOptionCookie;
window.saveOptionCookie = function(name)
{
	var c = name + &quot;=&quot;;
	switch(name.substr(0,3)) {
		case &quot;txt&quot;:
			c += escape(config.options[name].toString());
			break;
		case &quot;chk&quot;:
			c += config.options[name] ? &quot;true&quot; : &quot;false&quot;;
			// is there an option link with this chk ?
			if (config.options[name.substr(3)]) {
				saveOptionCookie(name.substr(3));
			}
			break;
		case &quot;pas&quot;:
			if (config.options[&quot;chk&quot;+name]) {
				c += escape(config.options[name].toString());
			} else {
				c += &quot;&quot;;
			}
			break;
	}
	c += &quot;; expires=Fri, 1 Jan 2038 12:00:00 UTC; path=/&quot;;
	document.cookie = c;
};
&lt;/pre&gt;&lt;h2&gt; Initializations&lt;/h2&gt;&lt;pre&gt;// define config.options.pasPassword
if (!config.options.pasPassword) {
	config.options.pasPassword = 'defaultPassword';
	window.saveOptionCookie('pasPassword');
}
// since loadCookies is first called befor password definition
// we need to reload cookies
window.loadOptionsCookie();
&lt;/pre&gt;&lt;em&gt;&lt;/em&gt;&lt;/strike&gt;=&lt;br&gt;&lt;br&gt;&lt;em&gt;&lt;/em&gt;+++!![config.macros.upload]&lt;br&gt;&lt;br&gt;&lt;pre&gt;config.macros.upload = {
	accessKey: &quot;U&quot;,
	formName: &quot;UploadPlugin&quot;,
	contentType: &quot;text/html;charset=UTF-8&quot;,
	defaultStoreScript: &quot;store.php&quot;
};

// only this two configs need to be translated
config.macros.upload.messages = {
	aboutToUpload: &quot;About to upload TiddlyWiki to %0&quot;,
	backupFileStored: &quot;Previous file backuped in %0&quot;,
	crossDomain: &quot;Certainly a cross-domain isue: access to an other site isn't allowed&quot;,
	errorDownloading: &quot;Error downloading&quot;,
	errorUploadingContent: &quot;Error uploading content&quot;,
	fileLocked: &quot;Files is locked: You are not allowed to Upload&quot;,
	fileNotFound: &quot;file to upload not found&quot;,
	fileNotUploaded: &quot;File %0 NOT uploaded&quot;,
	mainFileUploaded: &quot;Main TiddlyWiki file uploaded to %0&quot;,
	passwordEmpty: &quot;Unable to upload, your password is empty&quot;,
	urlParamMissing: &quot;url param missing&quot;,
	rssFileNotUploaded: &quot;RssFile %0 NOT uploaded&quot;,
	rssFileUploaded: &quot;Rss File uploaded to %0&quot;
};

config.macros.upload.label = {
	promptOption: &quot;Save and Upload this TiddlyWiki with UploadOptions&quot;,
	promptParamMacro: &quot;Save and Upload this TiddlyWiki in %0&quot;,
	saveLabel: &quot;save to web&quot;, 
	saveToDisk: &quot;save to disk&quot;,
	uploadLabel: &quot;upload&quot;	
};

config.macros.upload.handler = function(place,macroName,params){
	// parameters initialization
	var storeUrl = params[0];
	var toFilename = params[1];
	var backupDir = params[2];
	var uploadDir = params[3];
	var username = params[4];
	var password; // for security reason no password as macro parameter
	var label;
	if (document.location.toString().substr(0,4) == &quot;http&quot;)
		label = this.label.saveLabel;
	else
		label = this.label.uploadLabel;
	var prompt;
	if (storeUrl) {
		prompt = this.label.promptParamMacro.toString().format([this.toDirUrl(storeUrl, uploadDir, username)]);
	}
	else {
		prompt = this.label.promptOption;
	}
	createTiddlyButton(place, label, prompt, 
						function () {
							config.macros.upload.upload(storeUrl, toFilename, uploadDir, backupDir, username, password); 
							return false;}, 
						null, null, this.accessKey);
};
config.macros.upload.UploadLog = function() {
	return new config.lib.Log('UploadLog', &quot; !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |&quot; );
};
config.macros.upload.UploadLog.prototype = config.lib.Log.prototype;
config.macros.upload.UploadLog.prototype.startUpload = function(storeUrl, toFilename, uploadDir,  backupDir) {
	var line = &quot; [[&quot; + config.lib.file.basename(storeUrl) + &quot;|&quot; + storeUrl + &quot;]] | &quot;;
	line += uploadDir + &quot; | &quot; + toFilename + &quot; | &quot; + backupDir + &quot; |&quot;;
	this.newLine(line);
};
config.macros.upload.UploadLog.prototype.endUpload = function() {
	this.addToLine(&quot; Ok |&quot;);
};
config.macros.upload.basename = config.lib.file.basename;
config.macros.upload.dirname = config.lib.file.dirname;
config.macros.upload.toRootUrl = function (storeUrl, username)
{
	return root = (this.dirname(storeUrl)?this.dirname(storeUrl):this.dirname(document.location.toString()));
}
config.macros.upload.toDirUrl = function (storeUrl,  uploadDir, username)
{
	var root = this.toRootUrl(storeUrl, username);
	if (uploadDir &amp;amp;&amp;amp; uploadDir != '.')
		root = root + '/' + uploadDir;
	return root;
}
config.macros.upload.toFileUrl = function (storeUrl, toFilename,  uploadDir, username)
{
	return this.toDirUrl(storeUrl, uploadDir, username) + '/' + toFilename;
}
config.macros.upload.upload = function(storeUrl, toFilename, uploadDir, backupDir, username, password)
{
	// parameters initialization
	storeUrl = (storeUrl ? storeUrl : config.options.txtUploadStoreUrl);
	toFilename = (toFilename ? toFilename : config.options.txtUploadFilename);
	backupDir = (backupDir ? backupDir : config.options.txtUploadBackupDir);
	uploadDir = (uploadDir ? uploadDir : config.options.txtUploadDir);
	username = (username ? username : config.options.txtUploadUserName);
	password = config.options.pasUploadPassword; // for security reason no password as macro parameter
	if (!password || password === '') {
		alert(config.macros.upload.messages.passwordEmpty);
		return;
	}
	if (storeUrl === '') {
		storeUrl = config.macros.upload.defaultStoreScript;
	}
	if (config.lib.file.dirname(storeUrl) === '') {
		storeUrl = config.lib.file.dirname(document.location.toString())+'/'+storeUrl;
	}
	if (toFilename === '') {
		toFilename = config.lib.file.basename(document.location.toString());
	}

	clearMessage();
	// only for forcing the message to display
	 if (version.major &amp;lt; 2)
		store.notifyAll();
	if (!storeUrl) {
		alert(config.macros.upload.messages.urlParamMissing);
		return;
	}
	// Check that file is not locked
	if (window.BidiX &amp;amp;&amp;amp; BidiX.GroupAuthoring &amp;amp;&amp;amp; BidiX.GroupAuthoring.lock) {
		if (BidiX.GroupAuthoring.lock.isLocked() &amp;amp;&amp;amp; !BidiX.GroupAuthoring.lock.isMyLock()) {
			alert(config.macros.upload.messages.fileLocked);
			return;
		}
	}
	
	var log = new this.UploadLog();
	log.startUpload(storeUrl, toFilename, uploadDir,  backupDir);
	if (document.location.toString().substr(0,5) == &quot;file:&quot;) {
		saveChanges();
	}
	var toDir = config.macros.upload.toDirUrl(storeUrl, toFilename, uploadDir, username);
	displayMessage(config.macros.upload.messages.aboutToUpload.format([toDir]), toDir);
	this.uploadChanges(storeUrl, toFilename, uploadDir, backupDir, username, password);
	if(config.options.chkGenerateAnRssFeed) {
		//var rssContent = convertUnicodeToUTF8(generateRss());
		var rssContent = generateRss();
		var rssPath = toFilename.substr(0,toFilename.lastIndexOf(&quot;.&quot;)) + &quot;.xml&quot;;
		this.uploadContent(rssContent, storeUrl, rssPath, uploadDir, '', username, password, 
			function (responseText) {
				if (responseText.substring(0,1) != '0') {
					displayMessage(config.macros.upload.messages.rssFileNotUploaded.format([rssPath]));
				}
				else {
					var toFileUrl = config.macros.upload.toFileUrl(storeUrl, rssPath, uploadDir, username);
					displayMessage(config.macros.upload.messages.rssFileUploaded.format(
						[toFileUrl]), toFileUrl);
				}
				// for debugging store.php uncomment last line
				//DEBUG alert(responseText);
			});
	}
	return;
};

config.macros.upload.uploadChanges = function(storeUrl, toFilename, uploadDir, backupDir, 
		username, password) {
	var original;
	if (document.location.toString().substr(0,4) == &quot;http&quot;) {
		original =  this.download(storeUrl, toFilename, uploadDir, backupDir, username, password);
		return;
	}
	else {
		// standard way : Local file
		
		original = loadFile(getLocalPath(document.location.toString()));
		if(window.Components) {
			// it's a mozilla browser
			try {
				netscape.security.PrivilegeManager.enablePrivilege(&quot;UniversalXPConnect&quot;);
				var converter = Components.classes[&quot;@mozilla.org/intl/scriptableunicodeconverter&quot;]
									.createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
				converter.charset = &quot;UTF-8&quot;;
				original = converter.ConvertToUnicode(original);
			}
			catch(e) {
			}
		}
	}
	//DEBUG alert(original);
	this.uploadChangesFrom(original, storeUrl, toFilename, uploadDir, backupDir, 
		username, password);
};

config.macros.upload.uploadChangesFrom = function(original, storeUrl, toFilename, uploadDir, backupDir, 
		username, password) {
	var startSaveArea = '&amp;lt;div id=&quot;' + 'storeArea&quot;&amp;gt;'; // Split up into two so that indexOf() of this source doesn't find it
	var endSaveArea = '&amp;lt;/d' + 'iv&amp;gt;';
	// Locate the storeArea div's
	var posOpeningDiv = original.indexOf(startSaveArea);
	var posClosingDiv = original.lastIndexOf(endSaveArea);
	if((posOpeningDiv == -1) || (posClosingDiv == -1))
		{
		alert(config.messages.invalidFileError.format([document.location.toString()]));
		return;
		}
	var revised = original.substr(0,posOpeningDiv + startSaveArea.length) + 
				allTiddlersAsHtml() + &quot;\n\t\t&quot; +
				original.substr(posClosingDiv);
	var newSiteTitle;
	if(version.major &amp;lt; 2){
		newSiteTitle = (getElementText(&quot;siteTitle&quot;) + &quot; - &quot; + getElementText(&quot;siteSubtitle&quot;)).htmlEncode();
	} else {
		newSiteTitle = (wikifyPlain (&quot;SiteTitle&quot;) + &quot; - &quot; + wikifyPlain (&quot;SiteSubtitle&quot;)).htmlEncode();
	}

	revised = revised.replaceChunk(&quot;&amp;lt;title&quot;+&quot;&amp;gt;&quot;,&quot;&amp;lt;/title&quot;+&quot;&amp;gt;&quot;,&quot; &quot; + newSiteTitle + &quot; &quot;);
	revised = revised.replaceChunk(&quot;&amp;lt;!--PRE-HEAD-START--&quot;+&quot;&amp;gt;&quot;,&quot;&amp;lt;!--PRE-HEAD-END--&quot;+&quot;&amp;gt;&quot;,&quot;\n&quot; + store.getTiddlerText(&quot;MarkupPreHead&quot;,&quot;&quot;) + &quot;\n&quot;);
	revised = revised.replaceChunk(&quot;&amp;lt;!--POST-HEAD-START--&quot;+&quot;&amp;gt;&quot;,&quot;&amp;lt;!--POST-HEAD-END--&quot;+&quot;&amp;gt;&quot;,&quot;\n&quot; + store.getTiddlerText(&quot;MarkupPostHead&quot;,&quot;&quot;) + &quot;\n&quot;);
	revised = revised.replaceChunk(&quot;&amp;lt;!--PRE-BODY-START--&quot;+&quot;&amp;gt;&quot;,&quot;&amp;lt;!--PRE-BODY-END--&quot;+&quot;&amp;gt;&quot;,&quot;\n&quot; + store.getTiddlerText(&quot;MarkupPreBody&quot;,&quot;&quot;) + &quot;\n&quot;);
	revised = revised.replaceChunk(&quot;&amp;lt;!--POST-BODY-START--&quot;+&quot;&amp;gt;&quot;,&quot;&amp;lt;!--POST-BODY-END--&quot;+&quot;&amp;gt;&quot;,&quot;\n&quot; + store.getTiddlerText(&quot;MarkupPostBody&quot;,&quot;&quot;) + &quot;\n&quot;);

	var response = this.uploadContent(revised, storeUrl, toFilename, uploadDir, backupDir, 
		username, password, function (responseText) {
					if (responseText.substring(0,1) != '0') {
						alert(responseText);
						displayMessage(config.macros.upload.messages.fileNotUploaded.format([getLocalPath(document.location.toString())]));
					}
					else {
						if (uploadDir !== '') {
							toFilename = uploadDir + &quot;/&quot; + config.macros.upload.basename(toFilename);
						} else {
							toFilename = config.macros.upload.basename(toFilename);
						}
						var toFileUrl = config.macros.upload.toFileUrl(storeUrl, toFilename, uploadDir, username);
						if (responseText.indexOf(&quot;destfile:&quot;) &amp;gt; 0) {
							var destfile = responseText.substring(responseText.indexOf(&quot;destfile:&quot;)+9, 
							responseText.indexOf(&quot;\n&quot;, responseText.indexOf(&quot;destfile:&quot;)));
							toFileUrl = config.macros.upload.toRootUrl(storeUrl, username) + '/' + destfile;
						}
						else {
							toFileUrl = config.macros.upload.toFileUrl(storeUrl, toFilename, uploadDir, username);
						}
						displayMessage(config.macros.upload.messages.mainFileUploaded.format(
							[toFileUrl]), toFileUrl);
						if (backupDir &amp;amp;&amp;amp; responseText.indexOf(&quot;backupfile:&quot;) &amp;gt; 0) {
							var backupFile = responseText.substring(responseText.indexOf(&quot;backupfile:&quot;)+11, 
							responseText.indexOf(&quot;\n&quot;, responseText.indexOf(&quot;backupfile:&quot;)));
							toBackupUrl = config.macros.upload.toRootUrl(storeUrl, username) + '/' + backupFile;
							displayMessage(config.macros.upload.messages.backupFileStored.format(
								[toBackupUrl]), toBackupUrl);
						}
						var log = new config.macros.upload.UploadLog();
						log.endUpload();
						store.setDirty(false);
						// erase local lock
						if (window.BidiX &amp;amp;&amp;amp; BidiX.GroupAuthoring &amp;amp;&amp;amp; BidiX.GroupAuthoring.lock) {
							BidiX.GroupAuthoring.lock.eraseLock();
							// change mtime with new mtime after upload
							var mtime = responseText.substr(responseText.indexOf(&quot;mtime:&quot;)+6);
							BidiX.GroupAuthoring.lock.mtime = mtime;
						}
						
						
					}
					// for debugging store.php uncomment last line
					//DEBUG alert(responseText);
				}
			);
};

config.macros.upload.uploadContent = function(content, storeUrl, toFilename, uploadDir, backupDir, 
		username, password, callbackFn) {
	var boundary = &quot;---------------------------&quot;+&quot;AaB03x&quot;;		
	var request;
	try {
		request = new XMLHttpRequest();
		} 
	catch (e) { 
		request = new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;); 
		}
	if (window.netscape){
			try {
				if (document.location.toString().substr(0,4) != &quot;http&quot;) {
					netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead');}
			}
			catch (e) {}
		}		
	//DEBUG alert(&quot;user[&quot;+config.options.txtUploadUserName+&quot;] password[&quot; + config.options.pasUploadPassword + &quot;]&quot;);
	// compose headers data
	var sheader = &quot;&quot;;
	sheader += &quot;--&quot; + boundary + &quot;\r\nContent-disposition: form-data; name=\&quot;&quot;;
	sheader += config.macros.upload.formName +&quot;\&quot;\r\n\r\n&quot;;
	sheader += &quot;backupDir=&quot;+backupDir
				+&quot;;user=&quot; + username 
				+&quot;;password=&quot; + password
				+&quot;;uploaddir=&quot; + uploadDir;
	// add lock attributes to sheader
	if (window.BidiX &amp;amp;&amp;amp; BidiX.GroupAuthoring &amp;amp;&amp;amp; BidiX.GroupAuthoring.lock) {
		var l = BidiX.GroupAuthoring.lock.myLock;
		sheader += &quot;;lockuser=&quot; + l.user
				+ &quot;;mtime=&quot; + l.mtime
				+ &quot;;locktime=&quot; + l.locktime;
	}
	sheader += &quot;;;\r\n&quot;; 
	sheader += &quot;\r\n&quot; + &quot;--&quot; + boundary + &quot;\r\n&quot;;
	sheader += &quot;Content-disposition: form-data; name=\&quot;userfile\&quot;; filename=\&quot;&quot;+toFilename+&quot;\&quot;\r\n&quot;;
	sheader += &quot;Content-Type: &quot; + config.macros.upload.contentType + &quot;\r\n&quot;;
	sheader += &quot;Content-Length: &quot; + content.length + &quot;\r\n\r\n&quot;;
	// compose trailer data
	var strailer = new String();
	strailer = &quot;\r\n--&quot; + boundary + &quot;--\r\n&quot;;
	//strailer = &quot;--&quot; + boundary + &quot;--\r\n&quot;;
	var data;
	data = sheader + content + strailer;
	//request.open(&quot;POST&quot;, storeUrl, true, username, password);
	try {
		request.open(&quot;POST&quot;, storeUrl, true);		
	}
	catch(e) {
		alert(config.macros.upload.messages.crossDomain + &quot;\nError:&quot; +e);
		exit;
	}
	request.onreadystatechange = function () {
				if (request.readyState == 4) {
				     if (request.status == 200)
						callbackFn(request.responseText);
					else
						alert(config.macros.upload.messages.errorUploadingContent + &quot;\nStatus: &quot;+request.status.statusText);
				}
		};
	request.setRequestHeader(&quot;Content-Length&quot;,data.length);
	request.setRequestHeader(&quot;Content-Type&quot;,&quot;multipart/form-data; boundary=&quot;+boundary);
	request.send(data); 
};


config.macros.upload.download = function(uploadUrl, uploadToFilename, uploadDir, uploadBackupDir, 
	username, password) {
	var request;
	try {
		request = new XMLHttpRequest();
	} 
	catch (e) { 
		request = new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;); 
	}
	try {
		if (uploadUrl.substr(0,4) == &quot;http&quot;) {
			netscape.security.PrivilegeManager.enablePrivilege(&quot;UniversalBrowserRead&quot;);
			}
		else {
			netscape.security.PrivilegeManager.enablePrivilege(&quot;UniversalXPConnect&quot;);
		}
	} catch (e) { }
	//request.open(&quot;GET&quot;, document.location.toString(), true, username, password);
	try {
		request.open(&quot;GET&quot;, document.location.toString(), true);
	}
	catch(e) {
		alert(config.macros.upload.messages.crossDomain + &quot;\nError:&quot; +e);
		exit;
	}
	
	request.onreadystatechange = function () {
		if (request.readyState == 4) {
			if(request.status == 200) {
				config.macros.upload.uploadChangesFrom(request.responseText, uploadUrl, 
					uploadToFilename, uploadDir, uploadBackupDir, username, password);
			}
			else
				alert(config.macros.upload.messages.errorDownloading.format(
					[document.location.toString()]) + &quot;\nStatus: &quot;+request.status.statusText);
		}
	};
	request.send(null);
};
&lt;/pre&gt;&lt;em&gt;&lt;/em&gt;&lt;strike&gt;=&lt;br&gt;&lt;br&gt;&lt;em&gt;&lt;/em&gt;+++!![Initializations]&lt;br&gt;&lt;br&gt;&lt;pre&gt;config.lib.options.init('txtUploadStoreUrl','store.php');
config.lib.options.init('txtUploadFilename','');
config.lib.options.init('txtUploadDir','');
config.lib.options.init('txtUploadBackupDir','');
config.lib.options.init('txtUploadUserName',config.options.txtUserName);
config.lib.options.init('pasUploadPassword','');
setStylesheet(
	&quot;.pasOptionInput {width: 11em;}\n&quot;+
	&quot;.txtOptionInput.txtUploadStoreUrl {width: 25em;}\n&quot;+
	&quot;.txtOptionInput.txtUploadFilename {width: 25em;}\n&quot;+
	&quot;.txtOptionInput.txtUploadDir {width: 25em;}\n&quot;+
	&quot;.txtOptionInput.txtUploadBackupDir {width: 25em;}\n&quot;+
	&quot;&quot;,
	&quot;UploadOptionsStyles&quot;);
config.shadowTiddlers.UploadDoc = &quot;[[Full Documentation|http://tiddlywiki.bidix.info/l#UploadDoc ]]\n&quot;; 
config.options.chkAutoSave = false; saveOptionCookie('chkAutoSave');
&lt;/pre&gt;&lt;em&gt;&lt;/em&gt;&lt;/strike&gt;=&lt;br&gt;&lt;br&gt;&lt;em&gt;&lt;/em&gt;+++!![Core Hijacking]&lt;br&gt;&lt;br&gt;&lt;pre&gt;config.macros.saveChanges.label_orig_UploadPlugin = config.macros.saveChanges.label;
config.macros.saveChanges.label = config.macros.upload.label.saveToDisk;

config.macros.saveChanges.handler_orig_UploadPlugin = config.macros.saveChanges.handler;

config.macros.saveChanges.handler = function(place)
{
	if ((!readOnly) &amp;amp;&amp;amp; (document.location.toString().substr(0,4) != &quot;http&quot;))
		createTiddlyButton(place,this.label,this.prompt,this.onClick,null,null,this.accessKey);
};
&lt;/pre&gt;&lt;em&gt;&lt;/em&gt;&lt;strike&gt;=&lt;br&gt;&lt;/strike&gt;</description>
<category>systemConfig</category>
<category>Upload</category>
<category>plugin</category>
<link>http://swytch.tiddlyspot.com//#UploadPlugin</link>
<pubDate>Sat, 30 Sep 2006 21:15:00 GMT</pubDate>
</item>
<item>
<title>tiddlyspotControls</title>
<description>&lt;table&gt;&lt;tbody&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;right&quot;&gt;tiddlyspot password:&lt;/td&gt;&lt;td&gt;&lt;input class=&quot;pasOptionInput pasUploadPassword&quot; option=&quot;pasUploadPassword&quot; type=&quot;password&quot;&gt;&lt;input class=&quot;chkOptionInput pasUploadPassword&quot; option=&quot;chkpasUploadPassword&quot; type=&quot;checkbox&quot;&gt;Save this password on this computer&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td align=&quot;right&quot;&gt;site management:&lt;/td&gt;&lt;td&gt;&lt;a accesskey=&quot;U&quot; class=&quot;button&quot; title=&quot;Save and Upload this TiddlyWiki in http://swytch.tiddlyspot.com&quot; href=&quot;javascript:;&quot;&gt;save to web&lt;/a&gt;&lt;em&gt;(requires tiddlyspot password)&lt;/em&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/controlpanel&quot; href=&quot;http://swytch.tiddlyspot.com/controlpanel&quot; class=&quot;externalLink&quot;&gt;control panel&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://swytch.tiddlyspot.com/download&quot; href=&quot;http://swytch.tiddlyspot.com/download&quot; class=&quot;externalLink&quot;&gt;download (go offline)&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td align=&quot;right&quot;&gt;links:&lt;/td&gt;&lt;td&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlyspot.com/&quot; href=&quot;http://tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;tiddlyspot.com&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://faq.tiddlyspot.com/&quot; href=&quot;http://faq.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;FAQs&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://announce.tiddlyspot.com/&quot; href=&quot;http://announce.tiddlyspot.com/&quot; class=&quot;externalLink&quot;&gt;announcements&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlyspot.com/blog/&quot; href=&quot;http://tiddlyspot.com/blog/&quot; class=&quot;externalLink&quot;&gt;blog&lt;/a&gt;, email &lt;a target=&quot;_blank&quot; title=&quot;External link to mailto:support@tiddlyspot.com&quot; href=&quot;mailto:support@tiddlyspot.com&quot; class=&quot;externalLink&quot;&gt;support&lt;/a&gt; &amp;amp; &lt;a target=&quot;_blank&quot; title=&quot;External link to mailto:feedback@tiddlyspot.com&quot; href=&quot;mailto:feedback@tiddlyspot.com&quot; class=&quot;externalLink&quot;&gt;feedback&lt;/a&gt;, &lt;a target=&quot;_blank&quot; title=&quot;External link to http://tiddlyspot.com/?page=donate&quot; href=&quot;http://tiddlyspot.com/?page=donate&quot; class=&quot;externalLink&quot;&gt;donate&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</description>
<category>tiddlyspot</category>
<link>http://swytch.tiddlyspot.com//#tiddlyspotControls</link>
<pubDate>Mon, 18 Sep 2006 03:23:00 GMT</pubDate>
</item>
<item>
<title>AllowOnlineEdit</title>
<description>config.options.chkHttpReadOnly = false;&lt;br&gt;</description>
<category>systemConfig</category>
<category>excludeSearch</category>
<category>tiddlyspot</category>
<link>http://swytch.tiddlyspot.com//#AllowOnlineEdit</link>
<pubDate>Tue, 15 Aug 2006 07:51:00 GMT</pubDate>
</item>
<item>
<title>LegacyStrikeThroughPlugin</title>
<description>&lt;table&gt;&lt;tbody&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Name:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;LegacyStrikeThroughPlugin&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Description:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;Support for  legacy (pre 2.1) strike through formatting&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Version:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;1.0.1&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Date:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;Jul 21, 2006&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Source:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://www.tiddlywiki.com/#LegacyStrikeThroughPlugin&quot; href=&quot;http://www.tiddlywiki.com/#LegacyStrikeThroughPlugin&quot; class=&quot;externalLink&quot;&gt;http://www.tiddlywiki.com/#LegacyStrikeThroughPlugin&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Author:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;MartinBudden (mjbudden (at) gmail (dot) com)&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;License:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a tiddlylink=&quot;BSD open source license&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to #BSD open source license&quot; href=&quot;#BSD%20open%20source%20license&quot; class=&quot;externalLink&quot;&gt;BSD open source license&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;oddRow&quot;&gt;&lt;td&gt;&lt;strong&gt;CoreVersion:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;2.1.0&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&quot;evenRow&quot;&gt;&lt;td&gt;&lt;strong&gt;Browser:&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;Firefox 1.0.4+; Firefox 1.5; InternetExplorer 6.0&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br&gt;&lt;br&gt;&lt;pre&gt;// Ensure that the LegacyStrikeThrough Plugin is only installed once.
if(!version.extensions.LegacyStrikeThroughPlugin)
	{
	version.extensions.LegacyStrikeThroughPlugin = true;

config.formatters.push(
{
	name: &quot;legacyStrikeByChar&quot;,
	match: &quot;==&quot;,
	termRegExp: /(==)/mg,
	element: &quot;strike&quot;,
	handler: config.formatterHelpers.createElementAndWikify
});

} // end of &quot;install only once&quot;
&lt;/pre&gt;</description>
<category>systemConfig</category>
<link>http://swytch.tiddlyspot.com//#LegacyStrikeThroughPlugin</link>
<pubDate>Fri, 21 Jul 2006 00:00:00 GMT</pubDate>
</item>
</channel>
</rss>