<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.2.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>alexking.org &#187; PHP Tag Engine | alexking.org</title>
	<link>http://alexking.org</link>
	<description>Alex King's blog - software, photography, sports, etc.</description>
	<pubDate>Fri, 18 Jul 2008 19:22:59 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.3</generator>
	<language>en</language>
			<item>
		<title>PHP Tag Engine 1.0</title>
		<link>http://alexking.org/blog/2007/01/28/php-tag-engine-10</link>
		<comments>http://alexking.org/blog/2007/01/28/php-tag-engine-10#comments</comments>
		<pubDate>Sun, 28 Jan 2007 20:39:14 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
		
		<category><![CDATA[News]]></category>

		<category><![CDATA[PHP Tag Engine]]></category>

		<guid isPermaLink="false">http://alexking.org/blog/2007/01/28/php-tag-engine-10</guid>
		<description><![CDATA[I&#8217;ve released version 1.0 of PHP Tag Engine (the version included in the new releases of Tasks Pro&#8482; and Tasks&#8482;).
The PHP Tag Engine web site has been updated accordingly, as has the download on SourceForge.
I&#8217;ve also created a &#8220;stable&#8221; tag in the public SVN for developers that want to use that for their svn:externals.

	
<script type="text/javascript">SHARETHIS.addEntry({ title: "PHP Tag Engine 1.0", url: "http://alexking.org/blog/2007/01/28/php-tag-engine-10" });</script>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve released version 1.0 of <a href="http://alexking.org/projects/php-tag-engine">PHP Tag Engine</a> (the version included in the new releases of <a href="http://crowdfavorite.net/tasks-pro/">Tasks Pro&trade;</a> and <a href="http://crowdfavorite.net/tasks/">Tasks&trade;</a>).</p>
<p>The <a href="http://phptagengine.com/">PHP Tag Engine web site</a> has been updated accordingly, as has the download on SourceForge.</p>
<p>I&#8217;ve also created a <a href="http://phptagengine.com/browser/tags/stable">&#8220;stable&#8221; tag in the public SVN</a> for developers that want to use that for their svn:externals.</p>
<p><a href="http://sharethis.com/item?&wp=2.2.3&amp;publisher=06654962-d77d-102a-861d-00161729a8a2&amp;title=PHP+Tag+Engine+1.0&amp;url=http%3A%2F%2Falexking.org%2Fblog%2F2007%2F01%2F28%2Fphp-tag-engine-10">ShareThis</a></p>
	<!--
	<rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
	<Work rdf:about="">
		<license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.5/" />
	<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
	</Work>
	<License rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><prohibits rdf:resource="http://web.resource.org/cc/CommercialUse"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF>
	-->
]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2007/01/28/php-tag-engine-10/feed</wfw:commentRss>
		</item>
		<item>
		<title>Tasks Pro&#8482; 1.7 and Tasks&#8482; 2.7</title>
		<link>http://alexking.org/blog/2007/01/16/tasks-pro-17-tasks-27</link>
		<comments>http://alexking.org/blog/2007/01/16/tasks-pro-17-tasks-27#comments</comments>
		<pubDate>Tue, 16 Jan 2007 23:44:57 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
		
		<category><![CDATA[News]]></category>

		<category><![CDATA[PHP Tag Engine]]></category>

		<category><![CDATA[Tasks Pro&trade;]]></category>

		<guid isPermaLink="false">http://alexking.org/blog/2007/01/16/tasks-pro-17-tasks-27</guid>
		<description><![CDATA[Whoohoo! Tasks Pro&#8482; 1.7 and Tasks&#8482; 2.7 have now been officially released!

New features:

Tagging!
Per tag RSS feeds.
Per tag iCalendars.
Searching and browsing by tag.
Editing and appending tags to multiple tasks at once.
Globally edit tag names.
Globally delete tags.
Showing the &#8220;Closing Notes&#8221; form when the Mark Complete button is clicked is now a per-user option.
Ability to add time when [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "Tasks Pro&#8482; 1.7 and Tasks&#8482; 2.7", url: "http://alexking.org/blog/2007/01/16/tasks-pro-17-tasks-27" });</script>]]></description>
			<content:encoded><![CDATA[<p>Whoohoo! <a href="http://crowdfavorite.net/tasks-pro/">Tasks Pro&trade;</a> 1.7 and <a href="http://crowdfavorite.net/tasks/">Tasks&trade;</a> 2.7 have now been officially released!</p>
<p class="center"><a href="http://crowdfavorite.net/tasks-pro/"><img src="http://alexking.org/blog/content/2007-01-16/tasks-pro-tagging.gif" alt="Tagging in Tasks Pro&trade;" /></a></p>
<p>New features:</p>
<ul>
<li>Tagging!</li>
<li>Per tag RSS feeds.</li>
<li>Per tag iCalendars.</li>
<li>Searching and browsing by tag.</li>
<li>Editing and appending tags to multiple tasks at once.</li>
<li>Globally edit tag names.</li>
<li>Globally delete tags.</li>
<li>Showing the &#8220;Closing Notes&#8221; form when the Mark Complete button is clicked is now a per-user option.</li>
<li>Ability to add time when marking a task complete (if you have &#8220;Closing Notes&#8221; enabled).</li>
<li>Icon to indicate recurring tasks.</li>
<li>Font size setting (per user) in preferences.</li>
<li>Task lists now show 200 items.</li>
<li>History screen now shows the last 100 modified tasks.</li>
<li>Attached files are now links in the RSS feeds.</li>
<li>Task URLs are included in the iCalendar item description since Google Calendar seems to ignore the URL field.</li>
<li>Latest version of PHP iCalendar and ADOdb.</li>
<li>Added &#8216;completed&#8217; class to completed tasks for use in themes.</li>
<li>Faster page loads.</li>
<li>Added advanced configuration options (manual config file edit) for turning off checking for new versions and disabling gzip output (since this caused issues in very rare cases).</li>
<li>Discontinued support for MySQL 3.x.</li>
<li>Updated and expanded documentation.</li>
</ul>
<p>These also include a few bug fixes and enhancements:</p>
<ul>
<li>Accesskeys work in IE.</li>
<li>Date range searches work properly.</li>
<li>File uploads work properly in MS SQL Server.</li>
<li>E-mail subject prefix works properly.</li>
<li>Reduce server load when creating RSS feeds and iCalendars for a task and all sub-tasks.</li>
<li>Better compatibility for an alternative e-mail attachment formats (e-mail to task feature).</li>
<li>&#8216;Mark complete and attach sub-tasks to parent task&#8217; works properly.</li>
<li>Support for file:\\ as an URL prefix (the proper file:// was already supported).</li>
<li>Opera mini is now propery detected as a mobile browser.</li>
<li>The e-mail to task feature now works properly with most quoted-printable e-mails.</li>
<li>Upgrade from Tasks Jr. works properly again</li>
<li>Additional changes to improve MS SQL and PostgreSQL compatibility.</li>
</ul>
<p>With the addition of tagging, Tasks Pro&trade; and Tasks&trade; are more Getting Things Done (GTD) compliant than ever.</p>
<p>I also made an adjustment to the free trials so that the date the trial expires is shown in the trial itself. This had been a rarely requested addition, but the folks that did were rather upset that the trial had expired on them <img src='http://alexking.org/images/smilies/ak_scare1.gif' alt=':scare:' class='wp-smiley' /> unexpectedly <img src='http://alexking.org/images/smilies/ak_scare2.gif' alt=':/scare:' class='wp-smiley' /> . Sometimes severity trumps frequency. <img src='http://alexking.org/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>These were a <em>long</em> time in development for seemingly few new features, but there was quite a bit that went into these releases besides the features and bug fixes. The <a href="http://alexking.org/blog/2007/01/15/store-and-support">new store and support options</a> were added, <a href="http://alexking.org/projects/php-tag-engine">PHP Tag Engine</a> was created and released, and the content from the Tasks Pro&trade; web site (at taskspro.com) was finally integrated into the King Design web site (at kingdesign.net/tasks-pro/).</p>
<p>If you want to try the <a href="http://crowdfavorite.net/tasks-pro/demo/">online demo</a> or a <a href="http://crowdfavorite.net/tasks-pro/free-trial/">free trial</a> of Tasks Pro&trade;, those are now hosted on kingdesign.net instead of taskspro.com. I believe I&#8217;ve set up all the necessary redirects.</p>
<p>As the <a href="http://panic.com/" rel="external">Panic</a> guys say: get your upgrade quick - there&#8217;s only a small window to get a major &#8220;dot&#8221; release before the inevitable &#8220;dot one&#8221; release. <img src='http://alexking.org/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
<p><a href="http://sharethis.com/item?&wp=2.2.3&amp;publisher=06654962-d77d-102a-861d-00161729a8a2&amp;title=Tasks+Pro%26trade%3B+1.7+and+Tasks%26trade%3B+2.7&amp;url=http%3A%2F%2Falexking.org%2Fblog%2F2007%2F01%2F16%2Ftasks-pro-17-tasks-27">ShareThis</a></p>
	<!--
	<rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
	<Work rdf:about="">
		<license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.5/" />
	<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
	</Work>
	<License rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><prohibits rdf:resource="http://web.resource.org/cc/CommercialUse"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF>
	-->
]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2007/01/16/tasks-pro-17-tasks-27/feed</wfw:commentRss>
		</item>
		<item>
		<title>PHP Tag Engine SVN Access</title>
		<link>http://alexking.org/blog/2006/11/17/php-tag-engine-svn-access</link>
		<comments>http://alexking.org/blog/2006/11/17/php-tag-engine-svn-access#comments</comments>
		<pubDate>Fri, 17 Nov 2006 15:42:13 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
		
		<category><![CDATA[PHP Tag Engine]]></category>

		<guid isPermaLink="false">http://alexking.org/blog/2006/11/17/php-tag-engine-svn-access</guid>
		<description><![CDATA[Apparently anonymous SVN access to the PHP Tag Engine SVN repository was broken. This should now be properly available again.

	
<script type="text/javascript">SHARETHIS.addEntry({ title: "PHP Tag Engine SVN Access", url: "http://alexking.org/blog/2006/11/17/php-tag-engine-svn-access" });</script>]]></description>
			<content:encoded><![CDATA[<p>Apparently anonymous SVN access to the PHP Tag Engine SVN repository <a href="http://phptagengine.com/ticket/4">was broken</a>. This should now be properly available again.</p>
<p><a href="http://sharethis.com/item?&wp=2.2.3&amp;publisher=06654962-d77d-102a-861d-00161729a8a2&amp;title=PHP+Tag+Engine+SVN+Access&amp;url=http%3A%2F%2Falexking.org%2Fblog%2F2006%2F11%2F17%2Fphp-tag-engine-svn-access">ShareThis</a></p>
	<!--
	<rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
	<Work rdf:about="">
		<license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.5/" />
	<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
	</Work>
	<License rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><prohibits rdf:resource="http://web.resource.org/cc/CommercialUse"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF>
	-->
]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2006/11/17/php-tag-engine-svn-access/feed</wfw:commentRss>
		</item>
		<item>
		<title>PHP Tag Engine &#8220;How To&#8221;</title>
		<link>http://alexking.org/blog/2006/10/11/php-tag-engine-how-to</link>
		<comments>http://alexking.org/blog/2006/10/11/php-tag-engine-how-to#comments</comments>
		<pubDate>Thu, 12 Oct 2006 06:12:05 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
		
		<category><![CDATA[PHP Tag Engine]]></category>

		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.alexking.org/blog/2006/10/11/php-tag-engine-how-to/</guid>
		<description><![CDATA[I&#8217;ve fleshed out the How To page for PHP Tag Engine. It&#8217;s still pretty sparse, but a lot better than what was there before. I think what is really needed is an example implementation so folks can see how easy it is to drop in - maybe for something nice and basic like an open [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "PHP Tag Engine \"How To\"", url: "http://alexking.org/blog/2006/10/11/php-tag-engine-how-to" });</script>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve fleshed out the <a href="http://phptagengine.com/wiki/HowTo">How To page for PHP Tag Engine</a>. It&#8217;s still pretty sparse, but a lot better than what was there before. I think what is really needed is an example implementation so folks can see how easy it is to drop in - maybe for something nice and basic like an open source bookmark app (provided it is written in PHP).</p>
<p>Any nominations for simple but interesting/fun/useful open source PHP apps that could benefit from having tags added?</p>
<p><a href="http://sharethis.com/item?&wp=2.2.3&amp;publisher=06654962-d77d-102a-861d-00161729a8a2&amp;title=PHP+Tag+Engine+%22How+To%22&amp;url=http%3A%2F%2Falexking.org%2Fblog%2F2006%2F10%2F11%2Fphp-tag-engine-how-to">ShareThis</a></p>
	<!--
	<rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
	<Work rdf:about="">
		<license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.5/" />
	<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
	</Work>
	<License rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><prohibits rdf:resource="http://web.resource.org/cc/CommercialUse"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF>
	-->
]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2006/10/11/php-tag-engine-how-to/feed</wfw:commentRss>
		</item>
		<item>
		<title>Tasks Pro&#8482; 1.7 beta 4 and Tasks 2.7 beta 4</title>
		<link>http://alexking.org/blog/2006/08/08/tasks-pro-17-beta-4-and-tasks-27-beta-4</link>
		<comments>http://alexking.org/blog/2006/08/08/tasks-pro-17-beta-4-and-tasks-27-beta-4#comments</comments>
		<pubDate>Tue, 08 Aug 2006 16:40:12 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
		
		<category><![CDATA[PHP Tag Engine]]></category>

		<category><![CDATA[Tasks Pro&trade;]]></category>

		<guid isPermaLink="false">http://www.alexking.org/blog/2006/08/08/tasks-pro-17-beta-4-and-tasks-27-beta-4/</guid>
		<description><![CDATA[I&#8217;ve uploaded beta 4 of Tasks Pro&#8482; 1.7 and Tasks 2.7. This release fixes a few bugs that were reported in the beta 3 releases including one in PHP Tag Engine that caused the install/upgrade to fail. Sorry about that. 

	
<script type="text/javascript">SHARETHIS.addEntry({ title: "Tasks Pro&#8482; 1.7 beta 4 and Tasks 2.7 beta 4", url: "http://alexking.org/blog/2006/08/08/tasks-pro-17-beta-4-and-tasks-27-beta-4" });</script>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve uploaded beta 4 of <a href="http://crowdfavorite.net/tasks-pro/">Tasks Pro&trade;</a> 1.7 and <a href="http://crowdfavorite.net/tasks/">Tasks</a> 2.7. This release fixes a few bugs that were reported in the beta 3 releases including one in <a href="http://phptagengine.com/">PHP Tag Engine</a> that caused the install/upgrade to fail. Sorry about that. <img src='http://alexking.org/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
<p><a href="http://sharethis.com/item?&wp=2.2.3&amp;publisher=06654962-d77d-102a-861d-00161729a8a2&amp;title=Tasks+Pro%26trade%3B+1.7+beta+4+and+Tasks+2.7+beta+4&amp;url=http%3A%2F%2Falexking.org%2Fblog%2F2006%2F08%2F08%2Ftasks-pro-17-beta-4-and-tasks-27-beta-4">ShareThis</a></p>
	<!--
	<rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
	<Work rdf:about="">
		<license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.5/" />
	<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
	</Work>
	<License rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><prohibits rdf:resource="http://web.resource.org/cc/CommercialUse"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF>
	-->
]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2006/08/08/tasks-pro-17-beta-4-and-tasks-27-beta-4/feed</wfw:commentRss>
		</item>
		<item>
		<title>Announcing PHP Tag Engine</title>
		<link>http://alexking.org/blog/2006/07/28/php-tag-engine</link>
		<comments>http://alexking.org/blog/2006/07/28/php-tag-engine#comments</comments>
		<pubDate>Fri, 28 Jul 2006 07:27:43 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
		
		<category><![CDATA[PHP Tag Engine]]></category>

		<category><![CDATA[Tasks Pro&trade;]]></category>

		<guid isPermaLink="false">http://www.alexking.org/blog/2006/07/28/php-tag-engine/</guid>
		<description><![CDATA[PHP Tag Engine is a PHP library that makes it easy to add tagging to a PHP application.

Some of the features include:

Full AJAX front-end.
Easy integration into existing applications.
Built-in support for the Yahoo! Auto-Complete library.
Built-in cache to minimize database queries.
Fully documented in PHP Doc format.

This is, of course, what is powering the new tagging feature in [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "Announcing PHP Tag Engine", url: "http://alexking.org/blog/2006/07/28/php-tag-engine" });</script>]]></description>
			<content:encoded><![CDATA[<p><a href="http://phptagengine.com/">PHP Tag Engine</a> is a PHP library that makes it easy to add tagging to a PHP application.</p>
<p style="text-align: center;"><img src="http://alexking.org/blog/content/2006-07-28/phptagengine.gif" alt="PHP Tag Engine" class="thumbnail" /></p>
<p>Some of the features include:</p>
<ul>
<li>Full AJAX front-end.</li>
<li>Easy integration into existing applications.</li>
<li>Built-in support for the Yahoo! Auto-Complete library.</li>
<li>Built-in cache to minimize database queries.</li>
<li>Fully documented in PHP Doc format.</li>
</ul>
<p>This is, of course, what is powering the new tagging feature in <a href="http://crowdfavorite.net/tasks-pro/">Tasks Pro&trade;</a> and <a href="http://crowdfavorite.net/tasks/">Tasks</a>.</p>
<p>I&#8217;ve started using more open source libraries in Tasks Pro&trade; and Tasks. This biggest one I&#8217;m using is the <a href="http://adodb.sourceforge.net/" rel="external">ADOdb</a> library that allowed me to easily add support for PostgreSQL and MS SQL Server to my existing MySQL support, however I&#8217;m also using the excellent <a href="http://www.bitfolge.de/rsscreator-en.html" rel="external">Feed Creator class</a> as well as distributing a slightly modified version of <a href="http://phpicalendar.net/" rel="external">PHP iCalendar</a> as a viewer for the Tasks Pro&trade; and Tasks iCalendars. So when I was thinking about how best to implement tagging in Tasks Pro&trade; and Tasks, I saw an opportunity to contribute back to the community. <a href="http://conferences.oreillynet.com/os2006/" rel="external">OSCON</a> seemed like a good time to officially release.</p>
<p>For those paying close attention, this is <a href="http://alexking.org/blog/2006/03/07/denver-tech-meetup/">the project I started back in March</a>.</p>
<p>I&#8217;ve set up a Trac site and SVN repository for the project at <a href="http://phptagengine.com/">phptagengine.com</a>. This is hosted on <a href="http://textdrive.com/" rel="external">TextDrive</a>, and many kudos go out to the great folks there that helped me get everything set up and working.</p>
<p>Trac is exactly what I wanted for this project: a wiki, web SVN interface and integrated bug tracking system. However, Trac is not the friendliest of tools to configure and the good folks at TextDrive were very helpful.</p>
<p>One of the interesting things (to me) about Trac is that there is no built-in user system. It can either use your system users, or it can authenticate against a MySQL database using <a href="http://modauthmysql.sourceforge.net/" rel="external">mod_auth_mysql</a>. We used the latter, authenticating against a <a href="http://wordpress.org/" rel="external">WordPress</a> install that I set up to allow people to register themselves.</p>
<p>Once registered, they can log in to Trac and be able to edit the wiki and create tickets. This isn&#8217;t quite as smooth as I&#8217;d like it to be, but I&#8217;m just glad it works at all at this point. <img src='http://alexking.org/wp/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> Many thanks to <a href="http://photomatt.net/" rel="external">Matt</a> for his advice on this subject.</p>
<p>The httpd.conf settings for making Trac authenticate against the WordPress user database (using mod_auth_mysql) are as follows:</p>
<div class="code"><code class="psuedo_code">&lt;Location /login&gt;<br />
AuthName &#8220;PHP Tag Engine&#8221;<br />
AuthType Basic<br />
AuthMySQLHost localhost<br />
AuthMySQLUser your-mysql-username<br />
AuthMySQLPassword your-mysql-password<br />
AuthMySQLDB your-mysql-database-name<br />
AuthMySQLUserTable wp_users<br />
AuthMySQLNameField user_login<br />
AuthMySQLPasswordField user_pass<br />
AuthMySQLMD5Passwords On<br />
Require valid-user<br />
&lt;/Location&gt;</code></div>
<p>Hopefully this will be helpful to the next person who wants to allow folks to register themselves for a Trac installation.</p>
<p>Oh, and there is another OS tagging library for PHP called <a href="http://getluky.net/freetag/" rel="external">FreeTag</a>. If it had launched (or I&#8217;d been able to find it) a little earlier, I&#8217;d probably have extended it instead of building my own. Unfortunately, by the time I found out about it PHP Tag Engine was almost feature complete.</p>
<p><a href="http://sharethis.com/item?&wp=2.2.3&amp;publisher=06654962-d77d-102a-861d-00161729a8a2&amp;title=Announcing+PHP+Tag+Engine&amp;url=http%3A%2F%2Falexking.org%2Fblog%2F2006%2F07%2F28%2Fphp-tag-engine">ShareThis</a></p>
	<!--
	<rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
	<Work rdf:about="">
		<license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.5/" />
	<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
	</Work>
	<License rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><prohibits rdf:resource="http://web.resource.org/cc/CommercialUse"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF>
	-->
]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2006/07/28/php-tag-engine/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
