<?xml version="1.0" encoding="UTF-8"?>
<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/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CMS &#124; Website Content Management Systeem &#187; Drupal 6.x</title>
	<atom:link href="http://www.connexx-contentmanagement.nl/teg/drupal-6-x/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.connexx-contentmanagement.nl</link>
	<description>Reclamebureau Connexx CMS weblog</description>
	<lastBuildDate>Fri, 03 Feb 2012 07:00:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Drupal 7.12 and 6.24 released</title>
		<link>http://www.connexx-contentmanagement.nl/drupal-7-12-and-6-24-released/</link>
		<comments>http://www.connexx-contentmanagement.nl/drupal-7-12-and-6-24-released/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 18:23:01 +0000</pubDate>
		<dc:creator>webchick</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[Drupal 7.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[Drupal News]]></category>
		<category><![CDATA[News and announcements]]></category>

		<guid isPermaLink="false">1424776 at http://drupal.org</guid>
		<description><![CDATA[<p>Drupal 7.11 and 6.23, maintenance releases which fix <strong>security vulnerabilities</strong> are now available for download.</p>
<p>Drupal 7.12 and 6.24 also fix other issues reported through the bug tracking system.</p>
<div style="float: right;margin: 0 0 1em 1em;text-align: center">
<a href="http://ftp.drupal.org/files/projects/drupal-7.12.tar.gz" class="link-button"><span>Download Drupal 7.12</span></a><br />
<a href="http://ftp.drupal.org/files/projects/drupal-6.24.tar.gz" class="link-button"><span>Download Drupal 6.24</span></a></div>
<p><strong><a href="/upgrade/">Upgrading</a> your existing Drupal 7 and 6 sites is strongly recommended.</strong> There are no new features in these releases. For more information about the Drupal 7.x release series, consult the <a href="http://drupal.org/drupal-7.0">Drupal 7.0 release announcement</a>, more information on the 6.x releases can be found in the <a href="http://drupal.org/drupal-6.0">Drupal 6.0 release announcement</a>. Drupal 5 is no longer maintained, <a href="http://drupal.org/upgrade">upgrading to Drupal 6</a> is recommended.</p>
<!--break--><!--break--><div style="float: right;padding: 0 0 2em 1em;margin-left: 2em;width: 35%;border-left: 1px solid #cdcdcd">
<h2>Security information</h2>
<p>We have a <a href="/security">security announcement mailing list</a>, a <a href="/security">history of all security advisories</a>, and <a href="/security/rss.xml">an RSS feed with the most recent security advisories</a>.  We <strong>strongly advise Drupal administrators to <a href="/security">sign up</a></strong> for the list.</p>
<p>Drupal 7 and 6 include the built-in Update status module, which informs you about important updates to your modules and themes.</p>
<h2>Bug reports</h2>
<p>Both Drupal 7.x and 6.x branches are being maintained, so given enough <a href="http://drupal.org/project/issues/search/drupal?categories%5B%5D=bug&#38;status%5B%5D=8">bug fixes</a> (not just <a href="http://drupal.org/project/issues/search/drupal?categories%5B%5D=bug&#38;status%5B%5D=1">bug reports</a>) more maintenance releases will be made available, according to our <a href="http://drupal.org/documentation/version-info#when">monthly release cycle</a>.
</p></div>
<h2>Changelog</h2>
<p><a href="http://drupal.org/node/1425092">Drupal 7.11</a> only includes fixes for security issues. Drupal 7.12 also includes bugfixes. The full list of changes between the 7.10 and 7.12 releases can be found by reading the <a href="http://drupal.org/node/1425104">7.12 release notes</a>. A complete list of all bug fixes in the stable 7.x branch can be found in <a href="http://drupalcode.org/project/drupal.git/shortlog/refs/heads/7.x">the git commit log</a>.</p>
<p><a href="http://drupal.org/node/1425082">Drupal 6.23</a> only includes fixes for security issues. Drupal 6.24 also includes bugfixes. The full list of changes between the 6.22 and 6.24 releases can be found by reading the <a href="http://drupal.org/node/1425094">6.24 release notes</a>. A complete list of all bug fixes in the stable 6.x branch can be found at <a href="http://drupalcode.org/project/drupal.git/shortlog/refs/heads/6.x">git commit log</a>.</p>
<h2>Security vulnerabilities</h2>
<p>Drupal 7.11 and 6.23 were released in response to the discovery of security vulnerabilities. Details can be found in the official security advisory:</p>
<ul>
<li><a href="http://drupal.org/node/1425084">SA-CORE-2012-001</a></li>
</ul>
<p>To fix the security problem, please upgrade Drupal. </p>
<h2 style="clear: both">What is included with each release?</h2>
<div style="text-align: center;margin: 1em 0"><a href="http://drupal.org/files/20120201SecurityChartBig.png"><img src="http://drupal.org/files/20120201SecurityChart_0.png" alt="Release explanation" /></a></div>
<p><strong>We made two versions of both Drupal 7 and 6 available</strong>, so you can choose to only include security fixes (Drupal 7.11 and 6.23 respectively) or security fixes and bugfixes (Drupal 7.12 and 6.24). You can choose your preferred version. We are trying to make it easier and quicker to roll out security updates by making security-only releases available as well as ones with bugfixes included. We hope this helps you roll out the fixes as soon as possible. Read <a href="http://drupal.org/node/1173280">more details in the handbook</a>.</p>
<h2>Update notes</h2>
<p><a href="/node/1309278">The default.settings.php file was changed</a> in Drupal 7.12, to add documentation about PDO attribute override capabilities that were added as a result of <span class="project-issue-status-7 project-issue-status-info"><a href="/node/1309278" title="Status: closed (fixed), Assigned to: basic">#1309278: Make PDO connection options configurable</a></span>.</p>
<p><a href="http://drupal.org/node/1137848">The robots.txt file was changed</a> in Drupal 6.24 to block filter tips from search engines. The .htaccess and (default.)settings.php files were not changed in Drupal 6. Additionally, indexes were added to the <a href="http://drupal.org/node/336483">node_comment_statistics</a> and <a href="http://drupal.org/node/289504">comment</a> tables, for performance.</p>
<h2>Known issues <a name="known-issues" id="known-issues" href="#known-issues">#</a></h2>
<h3>Drupal 7</h3>
<p>Bug fixes in 7.12 release cause problems with the <a href="http://drupal.org/project/i18n">Internationalization (i18n)</a> module. Users of these modules are encouraged to update to 7.11 to get the security fixes, and hold off on the 7.12 upgrade until the 7.x-1.4 release.</p>
<p>Drupal 7.12 is also only compatible with <a href="http://drupal.org/project/menu_block">Menu Block</a> 7.x-2.3 and higher.</p>
<h3>Drupal 6</h3>
<p>In Drupal 6.24, if you have the contributed user_delete module enabled on your site, the update will fail with a <em>Cannot redeclare user_delete_access()</em> error. An <a href="http://drupal.org/node/1425182">update of user_delete module is being worked on</a>.</p>
<p>In Drupal 6.24 if you had locale module enabled earlier, but it is not currently turned on, the update will fail with <em>Call to undefined function locale_inc_callback()</em>. A fix <a href="http://drupal.org/node/1425260">is being worked on for Drupal core</a>.</p>
<p>In Drupal 6.24 if you run your updates with Drush, you might experience duplicate entry errors in your system table. See the ongoing discussion at <a href="http://drupal.org/node/1425868" title="http://drupal.org/node/1425868">http://drupal.org/node/1425868</a></p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fdrupal-7-12-and-6-24-released%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fdrupal-7-12-and-6-24-released%2F" height="61" width="51" /></a></div><p style="position: inherit;">Drupal 7.11 and 6.23, maintenance releases which fix <strong>security vulnerabilities</strong> are now available for download.</p>
<p>Drupal 7.12 and 6.24 also fix other issues reported through the bug tracking system.</p>
<div style="float: right; margin: 0 0 1em 1em; text-align: center;">
<a href="http://ftp.drupal.org/files/projects/drupal-7.12.tar.gz" class="link-button" style="margin: 0 0 0.6em 0;"><span>Download Drupal 7.12</span></a><br />
<a href="http://ftp.drupal.org/files/projects/drupal-6.24.tar.gz" class="link-button"><span>Download Drupal 6.24</span></a></div>
<p style="position: inherit;"><strong><a href="http://drupal.org/upgrade/">Upgrading</a> your existing Drupal 7 and 6 sites is strongly recommended.</strong> There are no new features in these releases. For more information about the Drupal 7.x release series, consult the <a href="http://drupal.org/drupal-7.0">Drupal 7.0 release announcement</a>, more information on the 6.x releases can be found in the <a href="http://drupal.org/drupal-6.0">Drupal 6.0 release announcement</a>. Drupal 5 is no longer maintained, <a href="http://drupal.org/upgrade">upgrading to Drupal 6</a> is recommended.</p>
<p><!--break--><!--break-->
<div style="float: right; padding: 0 0 2em 1em; margin-left: 2em; width: 35%; border-left: 1px solid #cdcdcd;">
<h2>Security information</h2>
<p>We have a <a href="http://drupal.org/security">security announcement mailing list</a>, a <a href="http://drupal.org/security">history of all security advisories</a>, and <a href="http://drupal.org/security/rss.xml">an RSS feed with the most recent security advisories</a>.  We <strong>strongly advise Drupal administrators to <a href="http://drupal.org/security">sign up</a></strong> for the list.</p>
<p>Drupal 7 and 6 include the built-in Update status module, which informs you about important updates to your modules and themes.</p>
<h2>Bug reports</h2>
<p>Both Drupal 7.x and 6.x branches are being maintained, so given enough <a href="http://drupal.org/project/issues/search/drupal?categories%5B%5D=bug&amp;status%5B%5D=8">bug fixes</a> (not just <a href="http://drupal.org/project/issues/search/drupal?categories%5B%5D=bug&amp;status%5B%5D=1">bug reports</a>) more maintenance releases will be made available, according to our <a href="http://drupal.org/documentation/version-info#when">monthly release cycle</a>.
</p>
</div>
<h2>Changelog</h2>
<p><a href="http://drupal.org/node/1425092">Drupal 7.11</a> only includes fixes for security issues. Drupal 7.12 also includes bugfixes. The full list of changes between the 7.10 and 7.12 releases can be found by reading the <a href="http://drupal.org/node/1425104">7.12 release notes</a>. A complete list of all bug fixes in the stable 7.x branch can be found in <a href="http://drupalcode.org/project/drupal.git/shortlog/refs/heads/7.x">the git commit log</a>.</p>
<p><a href="http://drupal.org/node/1425082">Drupal 6.23</a> only includes fixes for security issues. Drupal 6.24 also includes bugfixes. The full list of changes between the 6.22 and 6.24 releases can be found by reading the <a href="http://drupal.org/node/1425094">6.24 release notes</a>. A complete list of all bug fixes in the stable 6.x branch can be found at <a href="http://drupalcode.org/project/drupal.git/shortlog/refs/heads/6.x">git commit log</a>.</p>
<h2>Security vulnerabilities</h2>
<p>Drupal 7.11 and 6.23 were released in response to the discovery of security vulnerabilities. Details can be found in the official security advisory:</p>
<ul>
<li><a href="http://drupal.org/node/1425084">SA-CORE-2012-001</a></li>
</ul>
<p>To fix the security problem, please upgrade Drupal. </p>
<h2 style="clear: both;">What is included with each release?</h2>
<div style="text-align: center; margin: 1em 0;"><a href="http://drupal.org/files/20120201SecurityChartBig.png"><img src="http://drupal.org/files/20120201SecurityChart_0.png" alt="Release explanation" /></a></div>
<p><strong>We made two versions of both Drupal 7 and 6 available</strong>, so you can choose to only include security fixes (Drupal 7.11 and 6.23 respectively) or security fixes and bugfixes (Drupal 7.12 and 6.24). You can choose your preferred version. We are trying to make it easier and quicker to roll out security updates by making security-only releases available as well as ones with bugfixes included. We hope this helps you roll out the fixes as soon as possible. Read <a href="http://drupal.org/node/1173280">more details in the handbook</a>.</p>
<h2>Update notes</h2>
<p><a href="http://drupal.org/node/1309278">The default.settings.php file was changed</a> in Drupal 7.12, to add documentation about PDO attribute override capabilities that were added as a result of <span class="project-issue-status-7 project-issue-status-info"><a href="http://drupal.org/node/1309278" title="Status: closed (fixed), Assigned to: basic">#1309278: Make PDO connection options configurable</a></span>.</p>
<p><a href="http://drupal.org/node/1137848">The robots.txt file was changed</a> in Drupal 6.24 to block filter tips from search engines. The .htaccess and (default.)settings.php files were not changed in Drupal 6. Additionally, indexes were added to the <a href="http://drupal.org/node/336483">node_comment_statistics</a> and <a href="http://drupal.org/node/289504">comment</a> tables, for performance.</p>
<h2>Known issues <a name="known-issues" id="known-issues" href="http://drupal.org/drupal-7.12#known-issues">#</a></h2>
<h3>Drupal 7</h3>
<p>Bug fixes in 7.12 release cause problems with the <a href="http://drupal.org/project/i18n">Internationalization (i18n)</a> module. Users of these modules are encouraged to update to 7.11 to get the security fixes, and hold off on the 7.12 upgrade until the 7.x-1.4 release.</p>
<p>Drupal 7.12 is also only compatible with <a href="http://drupal.org/project/menu_block">Menu Block</a> 7.x-2.3 and higher.</p>
<h3>Drupal 6</h3>
<p>In Drupal 6.24, if you have the contributed user_delete module enabled on your site, the update will fail with a <em>Cannot redeclare user_delete_access()</em> error. An <a href="http://drupal.org/node/1425182">update of user_delete module is being worked on</a>.</p>
<p>In Drupal 6.24 if you had locale module enabled earlier, but it is not currently turned on, the update will fail with <em>Call to undefined function locale_inc_callback()</em>. A fix <a href="http://drupal.org/node/1425260">is being worked on for Drupal core</a>.</p>
<p>In Drupal 6.24 if you run your updates with Drush, you might experience duplicate entry errors in your system table. See the ongoing discussion at <a href="http://drupal.org/node/1425868" title="http://drupal.org/node/1425868">http://drupal.org/node/1425868</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/drupal-7-12-and-6-24-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drupal 7.2 and 6.22 released</title>
		<link>http://www.connexx-contentmanagement.nl/drupal-7-2-and-6-22-released/</link>
		<comments>http://www.connexx-contentmanagement.nl/drupal-7-2-and-6-22-released/#comments</comments>
		<pubDate>Wed, 25 May 2011 10:02:33 +0000</pubDate>
		<dc:creator>Gábor Hojtsy</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[Drupal 7.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[Drupal News]]></category>
		<category><![CDATA[News and announcements]]></category>

		<guid isPermaLink="false">1168244 at http://drupal.org</guid>
		<description><![CDATA[<p>Drupal 7.1 and 6.21, maintenance releases which fix <strong>security vulnerabilities</strong> are now available for download.</p>
<p>Drupal 7.2 and 6.22 also fix other issues reported through the bug tracking system.</p>
<div style="float: right;margin: 0 0 1em 1em;text-align: center">
<a href="http://ftp.drupal.org/files/projects/drupal-7.2.tar.gz" class="link-button"><span>Download Drupal 7.2</span></a><br />
<a href="http://ftp.drupal.org/files/projects/drupal-6.22.tar.gz" class="link-button"><span>Download Drupal 6.22</span></a></div>
<p><strong><a href="/upgrade/">Upgrading</a> your existing Drupal 7 and 6 sites is strongly recommended.</strong> There are no new features in these releases. For more information about the Drupal 7.x release series, consult the <a href="http://drupal.org/drupal-7.0">Drupal 7.0 release announcement</a>, more information on the 6.x releases can be found in the <a href="http://drupal.org/drupal-6.0">Drupal 6.0 release announcement</a>. Drupal 5 is no longer maintained, <a href="http://drupal.org/upgrade">upgrading to Drupal 6</a> is recommended.</p>
<!--break--><!--break--><div style="float: right;padding: 0 0 2em 1em;margin-left: 2em;width: 35%;border-left: 1px solid #cdcdcd">
<h2>Security information</h2>
<p>We have a <a href="/security">security announcement mailing list</a>, a <a href="/security">history of all security advisories</a>, and <a href="/security/rss.xml">an RSS feed with the most recent security advisories</a>.  We <strong>strongly advise Drupal administrators to <a href="/security">sign up</a></strong> for the list.</p>
<p>Drupal 7 and 6 include the built-in Update status module, which informs you about important updates to your modules and themes.</p>
<h2>Bug reports</h2>
<p>Both Drupal 7.x and 6.x branches are being maintained, so given enough <a href="http://drupal.org/project/issues/search/drupal?categories%5B%5D=bug&#38;status%5B%5D=8">bug fixes</a> (not just <a href="http://drupal.org/project/issues/search/drupal?categories%5B%5D=bug&#38;status%5B%5D=1">bug reports</a>) more maintenance releases will be made available.
</p></div>
<h2>Changelog</h2>
<p><a href="http://drupal.org/node/1168910">Drupal 7.1</a> only includes fixes for security issues. Drupal 7.2 also includes bugfixes. The full list of changes between the 7.0 and 7.2 releases can be found by reading the <a href="http://drupal.org/node/1168946">7.2 release notes</a>. A complete list of all bug fixes in the stable 7.x branch can be found in <a href="http://drupalcode.org/project/drupal.git/shortlog/refs/heads/7.x">the git commit log</a>.</p>
<p><a href="http://drupal.org/node/1168908">Drupal 6.21</a> only includes fixes for security issues. Drupal 6.22 also includes bugfixes. The full list of changes between the 6.20 and 6.22 releases can be found by reading the <a href="http://drupal.org/node/1168950">6.22 release notes</a>. A complete list of all bug fixes in the stable 6.x branch can be found at <a href="http://drupalcode.org/project/drupal.git/shortlog/refs/heads/6.x">git commit log</a>.</p>
<h2>Security vulnerabilities</h2>
<p>Drupal 7.1 and 6.21 were released in response to the discovery of security vulnerabilities. Details can be found in the official security advisory:</p>
<ul>
<li><a href="http://drupal.org/node/1168756">SA-CORE-2011-001</a></li>
</ul>
<p>To fix the security problem, please upgrade Drupal. </p>
<h2 style="clear: both">What is included with each release?</h2>
<div style="text-align: center;margin: 1em 0"><a href="http://drupal.org/files/DrupalSecurityFigure.png"><img src="http://drupal.org/files/DrupalSecurityFigureSmall.png" alt="Release explanation" /></a></div>
<p><strong>We made two versions of both Drupal 7 and 6 available</strong>, so you can choose to only include security fixes (Drupal 7.1 and 6.21 respectively) or security fixes and bugfixes (Drupal 7.2 and 6.22). You can choose your preferred version. We are trying to make it easier and quicker to roll out security updates by making security-only releases available as well as ones with bugfixes included. We hope this helps you roll out the fixes as soon as possible. Read <a href="http://drupal.org/node/1173280">more details in the handbook</a>.</p>
<h2>Update notes</h2>
<p><a href="http://drupal.org/node/919596">The .htaccess file was changed</a> in Drupal 7.2 to allow for simpler server configuration, while <a href="http://drupal.org/node/999538">the (default.)settings.php just got a minor documentation fix</a> that should not affect any copies. The robots.txt file did not change in Drupal 7.</p>
<p><a href="http://drupal.org/node/905576">The robots.txt file was changed</a> in Drupal 6.22 to allow crawlers to index the contact page. The .htaccess and (default.)settings.php files were not changed in Drupal 6.</p>
<h2>Known issues </h2>
<p>When updating to Drupal 6.22, you might loose some of your block configuration. Follow <span class="project-issue-status-2 project-issue-status-info"><a href="/node/1173012" title="Status: fixed">#1173012: Blocks lose settings during update.php and cache clears</a></span> for more information. If you need to update to Drupal 6.22 and experience this issue in testing, you can roll back the patch from <span class="project-issue-status-7 project-issue-status-info"><a href="/node/235673" title="Status: closed (fixed)">#235673: Changes to block caching mode not caught</a></span>.</p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fdrupal-7-2-and-6-22-released%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fdrupal-7-2-and-6-22-released%2F" height="61" width="51" /></a></div><p style="position: inherit;">Drupal 7.1 and 6.21, maintenance releases which fix <strong>security vulnerabilities</strong> are now available for download.</p>
<p>Drupal 7.2 and 6.22 also fix other issues reported through the bug tracking system.</p>
<div style="float: right; margin: 0 0 1em 1em; text-align: center;">
<a href="http://ftp.drupal.org/files/projects/drupal-7.2.tar.gz" class="link-button" style="margin: 0 0 0.6em 0;"><span>Download Drupal 7.2</span></a><br />
<a href="http://ftp.drupal.org/files/projects/drupal-6.22.tar.gz" class="link-button"><span>Download Drupal 6.22</span></a></div>
<p style="position: inherit;"><strong><a href="http://drupal.org/upgrade/">Upgrading</a> your existing Drupal 7 and 6 sites is strongly recommended.</strong> There are no new features in these releases. For more information about the Drupal 7.x release series, consult the <a href="http://drupal.org/drupal-7.0">Drupal 7.0 release announcement</a>, more information on the 6.x releases can be found in the <a href="http://drupal.org/drupal-6.0">Drupal 6.0 release announcement</a>. Drupal 5 is no longer maintained, <a href="http://drupal.org/upgrade">upgrading to Drupal 6</a> is recommended.</p>
<p><!--break--><!--break-->
<div style="float: right; padding: 0 0 2em 1em; margin-left: 2em; width: 35%; border-left: 1px solid #cdcdcd;">
<h2>Security information</h2>
<p>We have a <a href="http://drupal.org/security">security announcement mailing list</a>, a <a href="http://drupal.org/security">history of all security advisories</a>, and <a href="http://drupal.org/security/rss.xml">an RSS feed with the most recent security advisories</a>.  We <strong>strongly advise Drupal administrators to <a href="http://drupal.org/security">sign up</a></strong> for the list.</p>
<p>Drupal 7 and 6 include the built-in Update status module, which informs you about important updates to your modules and themes.</p>
<h2>Bug reports</h2>
<p>Both Drupal 7.x and 6.x branches are being maintained, so given enough <a href="http://drupal.org/project/issues/search/drupal?categories%5B%5D=bug&amp;status%5B%5D=8">bug fixes</a> (not just <a href="http://drupal.org/project/issues/search/drupal?categories%5B%5D=bug&amp;status%5B%5D=1">bug reports</a>) more maintenance releases will be made available.
</p>
</div>
<h2>Changelog</h2>
<p><a href="http://drupal.org/node/1168910">Drupal 7.1</a> only includes fixes for security issues. Drupal 7.2 also includes bugfixes. The full list of changes between the 7.0 and 7.2 releases can be found by reading the <a href="http://drupal.org/node/1168946">7.2 release notes</a>. A complete list of all bug fixes in the stable 7.x branch can be found in <a href="http://drupalcode.org/project/drupal.git/shortlog/refs/heads/7.x">the git commit log</a>.</p>
<p><a href="http://drupal.org/node/1168908">Drupal 6.21</a> only includes fixes for security issues. Drupal 6.22 also includes bugfixes. The full list of changes between the 6.20 and 6.22 releases can be found by reading the <a href="http://drupal.org/node/1168950">6.22 release notes</a>. A complete list of all bug fixes in the stable 6.x branch can be found at <a href="http://drupalcode.org/project/drupal.git/shortlog/refs/heads/6.x">git commit log</a>.</p>
<h2>Security vulnerabilities</h2>
<p>Drupal 7.1 and 6.21 were released in response to the discovery of security vulnerabilities. Details can be found in the official security advisory:</p>
<ul>
<li><a href="http://drupal.org/node/1168756">SA-CORE-2011-001</a></li>
</ul>
<p>To fix the security problem, please upgrade Drupal. </p>
<h2 style="clear: both;">What is included with each release?</h2>
<div style="text-align: center; margin: 1em 0;"><a href="http://drupal.org/files/DrupalSecurityFigure.png"><img src="http://drupal.org/files/DrupalSecurityFigureSmall.png" alt="Release explanation" /></a></div>
<p><strong>We made two versions of both Drupal 7 and 6 available</strong>, so you can choose to only include security fixes (Drupal 7.1 and 6.21 respectively) or security fixes and bugfixes (Drupal 7.2 and 6.22). You can choose your preferred version. We are trying to make it easier and quicker to roll out security updates by making security-only releases available as well as ones with bugfixes included. We hope this helps you roll out the fixes as soon as possible. Read <a href="http://drupal.org/node/1173280">more details in the handbook</a>.</p>
<h2>Update notes</h2>
<p><a href="http://drupal.org/node/919596">The .htaccess file was changed</a> in Drupal 7.2 to allow for simpler server configuration, while <a href="http://drupal.org/node/999538">the (default.)settings.php just got a minor documentation fix</a> that should not affect any copies. The robots.txt file did not change in Drupal 7.</p>
<p><a href="http://drupal.org/node/905576">The robots.txt file was changed</a> in Drupal 6.22 to allow crawlers to index the contact page. The .htaccess and (default.)settings.php files were not changed in Drupal 6.</p>
<h2>Known issues </h2>
<p>When updating to Drupal 6.22, you might loose some of your block configuration. Follow <span class="project-issue-status-2 project-issue-status-info"><a href="http://drupal.org/node/1173012" title="Status: fixed">#1173012: Blocks lose settings during update.php and cache clears</a></span> for more information. If you need to update to Drupal 6.22 and experience this issue in testing, you can roll back the patch from <span class="project-issue-status-7 project-issue-status-info"><a href="http://drupal.org/node/235673" title="Status: closed (fixed)">#235673: Changes to block caching mode not caught</a></span>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/drupal-7-2-and-6-22-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Society for Human Resource Management &#8211; Case Study</title>
		<link>http://www.connexx-contentmanagement.nl/society-for-human-resource-management-case-study/</link>
		<comments>http://www.connexx-contentmanagement.nl/society-for-human-resource-management-case-study/#comments</comments>
		<pubDate>Tue, 24 May 2011 05:12:20 +0000</pubDate>
		<dc:creator>saforian</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[Drupal showcase]]></category>

		<guid isPermaLink="false">1061526 at http://drupal.org</guid>
		<description><![CDATA[<h2>SHRM Chapter Websites: Worldwide Membership, Powered by Drupal</h2>
<p><img src="http://drupal.org/files/issues/SHRM300.gif" class="right" alt="SHRM screenshot" /><br />
The Society for Human Resource Management (SHRM) is the world’s largest association serving the needs of the HR industry. With more than 240 chapters in over 140 countries worldwide, SHRM represents a total membership that exceeds 250,000 human resource professionals.<br />
Each SHRM chapter oversees its own site which acts as a local hub of SHRM activity, providing news, industry updates, and event and conference announcements, as well as a complete member directory.  Site updates are deployed by SHRM headquarters, while administration is handled by local chapter directors, who may or may not have any experience with website management. Here is an example of the new chapter site capabilities: <a href="http://shrmcv.shrm.org/">Cumberland Valley SHRM</a>.</p>
<h2>Pitfalls of a Proprietary System</h2>
<p>The original SHRM chapter site network was run on a proprietary CMS created with IIS and ASP under Windows. Expensive, clunky and difficult for newly-minted SHRM chapter webmasters to use, only a select few were able to successfully navigate the system well enough to add or modify content on their local chapter site. Seeing the need for a unified, accessible, and easily extensible solution, SHRM approached <a href="http://www.saforian.com">Saforian</a> to revamp the chapter site network.</p>
<h2>The Open Source Approach</h2>
<p>Our challenge was twofold: not only did each SHRM chapter need a well-architected, branded site that less web-savvy administrators could comfortably maintain, they also needed a way to migrate old data stored in the existing MSSQL database to the new set-up. </p>
<p>We knew out of the gate that new websites would need to be rapidly configured and deployed as new chapters were founded, and we also knew that the chosen CMS would need to dextrously  accommodate a significant amount of custom code.</p>
<p>Drupal’s extensible multi-site functionality, ease of customization, open-source ethos and massive module base fit the bill as an ideal platform replacement for the existing system.</p>
<h2>Keeping Updates Manageable</h2>
<p>It was clear that without a networked approach, performing maintenance and updates on 240 websites would quickly become a logistical nightmare. Leveraging Drupal’s multi-site capabilities, we crafted a site configuration to keep maintenance as undemanding as possible.</p>
<p>Each chapter site uses a single code base, but separate databases and files directories, meaning that while module and Drupal core updates need only be deployed once, each site has the flexibility to manage divergent content, users and settings. </p>
<h2>Command-line Fu</h2>
<p>The Drupal shell utility <a href="http://drupal.org/project/drush">Drush</a> was instrumental in keeping maintenance and deployment times down, giving us the power to automate updates or install modules to all sites with a single command. Coupled with the Permissions_API, Drush let us batch set module permissions via the command line.</p>
<h2>Merging Old and New</h2>
<p>Data migration was at once the most challenging and interesting aspect of this project. The old chapter sites ran on IIS/ASP/MSSQL, and each site was associated with anywhere from dozens to hundreds of members, files and disparate content types. After a several-weeks-long investigation into the best transfer process, a series of tools and procedures were developed to carefully relocate and reorganize the data.</p>
<p>Working with batches of five chapter websites at a time, we first ran custom scripts to move production data and files into a Drupal 6/MySQL system hosted on a migration server. Once any migration errors were fixed, code was placed in open source version control system Subversion, and the chapter site was transferred from a migration server to a staging system. The new site was cleaned up using Drupal, and finally transferred to its home on the production system, where site data underwent a thorough review from front-end and back-end users.  </p>
<p>MSSQL and MS Access data was scrubbed and inserted into MySQL using a custom-built Drupal module, which could be run via the Drupal admin panel or the command line. The module imported HTML pages from the previous system and jettisoned superfluous tags, maintained the integrity of user profile data during transfer, and slotted survey results from the old system into a Drupal Webform-readable format.   </p>
<h2>Snazzy Features</h2>
<p>After all was said and done, the completed SHRM chapter sites were intuitive, flexible and packed with useful tools.<br />
<img src="http://drupal.org/files/pic-admindashboard.png" align="right" hspace="5" vspace="5" /></p>
<h2>SHRM Administration Panel</h2>
<p>Drupal made it easy to create a tailor-made administration panel that helps administrators jump straight to the most important tasks while keeping the techie stuff safely out of the way. Through the panel, administrators can add and edit content, activate or disable memberships, tweak the registration process, assign roles and permissions, manage comments, and edit navigation menus. </p>
<h2>Easy Site Configuration Panel</h2>
<p>Using this fire-and-forget site setup interface, administrators can choose from five different template color schemes, upload logos, set the site title and contact information, set home page block configuration options, and integrate their site with Facebook, Twitter and Linkedin.</p>
<h2>Searchable member directory</h2>
<p>Provides member search by name and keyword, or by alphabetical browsing. Administrators can also use the directory as a filtering tool to send out mass emails to their member base, or only to certain member categories.</p>
<h2>Customizable Member Profiles</h2>
<p>While SHRM global requires that certain profile data be gathered on each member, local branches wanted the ability to add their own fields to member profiles. The Drupal <a href="http://drupal.org/documentation/modules/profile">Profile module</a> was adapted to give administrators the power to define customized profile fields for their members, while allowing members to choose whether fields are private or publicly viewable in the member directory.</p>
<h2>Paypal Integration</h2>
<p>Chapter administrators are able to seamlessly accept donations and event registration payments via Paypal.</p>
<h2>Meetings &#38; Events Management</h2>
<p>Admins were given an easy way to keep their members abreast of SHRM’s busy conference schedule with custom event content types automatically hooked in to collapsible home page blocks. </p>
<h2>Forms &#38; Surveys</h2>
<p>The forms and surveys feature lets administrators gather, store, sort and download data from members and non-members.  </p>
<h2>Training Center</h2>
<p>A detailed, all-encompassing built-in training center was created and included on each chapter site, with dozens of video tutorials and articles to help new administrators perform common tasks.</p>
<h2>Notable Contributed Modules</h2>
<p><a href="http://drupal.org/project/backup_migrate">Backup and Migrate</a> - Simplified the process of migrating databases from development, staging and production environments, particularly useful in that it fully supports Drush integration.<br />
<a href="http://drupal.org/project/calendar">Calendar</a> – This module came in handy in the creation of a custom events calendar for SHRM conferences and chapter meetings.<br />
<a href="http://drupal.org/project/ckeditor">CKeditor</a> and CKfinder – A powerful WYSIWYG library and interface.<br />
<a href="http://drupal.org/project/private">Private</a> – Node access control for members-only content.<br />
<a href="http://drupal.org/project/scheduler">Scheduler</a> – Future-dating content publishing and unpublishing.</p>
<h2>Infrastructure</h2>
<p>Four total servers were used, here are the configurations:</p>
<h3>2 Load Balanced Web Servers</h3>
<ul>
<li>Processors: Two (2) Intel Xeon Quad Core E5410 2.33 GHz w/ 1333 FSB</li>
<li>Memory: 8 GB DDR2 PC2-5300</li>
<li>Hard Drives: 2 x 146GB SAS 15K RPM Mirrored in Raid 1 (for redundancy)</li>
<li>OS: CentOS 5.5 64bit (Redhat Enterprise)</li>
<li>PHP: 5.2.10</li>
</ul>
<h3>MySQL server (with a second identical one for failover)</h3>
<ul>
<li>MySQL server (with a second identical one for failover)</li>
<li>Processors: Two (2) Intel Xeon Quad Core E5410 2.33 GHz w/ 1333 FSB</li>
<li>Memory: 8 GB DDR2 PC2-5300</li>
<li>Hard Drives: 2 x 146GB SAS 15K RPM Mirrored in Raid 1 (for OS) Hard Drives: 2 x 146GB SAS 15K RPM</li>
<li>Mirrored in Raid 1 (for MySQL)</li>
<li>OS: CentOS 5.5 64bit (Redhat Enterprise)</li>
<li>MySQL: 5.1.34</li>
</ul>
<h2>Accomplishing the Work</h2>
<p>At Saforian we believe in open source software and have promoted it since our inception. Drupal has played a significant role in allowing us to continue to create flexible, web-based user experiences that foster great visual design and efficient, easy-to-use functionality. It has become our go-to CMS system.</p>
<p>This particular project utilized a team of five individuals with the majority of the development effort being handled by a single, senior-level developer. We had several work streams running simultaneously to ensure an on-time release. Strategy and back-end architecture work started the project, with design and production work following and then full development and migration to finalize.</p>
<p>Our information architect and designers worked initially to define the structure, content hierarchies and overall design styling. An interactive prototype was created to support testing and to serve as a vehicle for gathering feedback from stakeholders and chapter members. Once the design was approved, we quickly moved into our development efforts, which included front-end HTML template production work; Drupal theme integration; module development and configuration; and complete migration exercises.</p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fsociety-for-human-resource-management-case-study%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fsociety-for-human-resource-management-case-study%2F" height="61" width="51" /></a></div><h2>SHRM Chapter Websites: Worldwide Membership, Powered by Drupal</h2>
<p><img src="http://drupal.org/files/issues/SHRM300.gif" class="right" title="SHRM" alt="SHRM screenshot" /><br />
The Society for Human Resource Management (SHRM) is the world’s largest association serving the needs of the HR industry. With more than 240 chapters in over 140 countries worldwide, SHRM represents a total membership that exceeds 250,000 human resource professionals.<br />
Each SHRM chapter oversees its own site which acts as a local hub of SHRM activity, providing news, industry updates, and event and conference announcements, as well as a complete member directory.  Site updates are deployed by SHRM headquarters, while administration is handled by local chapter directors, who may or may not have any experience with website management. Here is an example of the new chapter site capabilities: <a href="http://shrmcv.shrm.org/">Cumberland Valley SHRM</a>.</p>
<h2>Pitfalls of a Proprietary System</h2>
<p>The original SHRM chapter site network was run on a proprietary CMS created with IIS and ASP under Windows. Expensive, clunky and difficult for newly-minted SHRM chapter webmasters to use, only a select few were able to successfully navigate the system well enough to add or modify content on their local chapter site. Seeing the need for a unified, accessible, and easily extensible solution, SHRM approached <a href="http://www.saforian.com">Saforian</a> to revamp the chapter site network.</p>
<h2>The Open Source Approach</h2>
<p>Our challenge was twofold: not only did each SHRM chapter need a well-architected, branded site that less web-savvy administrators could comfortably maintain, they also needed a way to migrate old data stored in the existing MSSQL database to the new set-up. </p>
<p>We knew out of the gate that new websites would need to be rapidly configured and deployed as new chapters were founded, and we also knew that the chosen CMS would need to dextrously  accommodate a significant amount of custom code.</p>
<p>Drupal’s extensible multi-site functionality, ease of customization, open-source ethos and massive module base fit the bill as an ideal platform replacement for the existing system.</p>
<h2>Keeping Updates Manageable</h2>
<p>It was clear that without a networked approach, performing maintenance and updates on 240 websites would quickly become a logistical nightmare. Leveraging Drupal’s multi-site capabilities, we crafted a site configuration to keep maintenance as undemanding as possible.</p>
<p>Each chapter site uses a single code base, but separate databases and files directories, meaning that while module and Drupal core updates need only be deployed once, each site has the flexibility to manage divergent content, users and settings. </p>
<h2>Command-line Fu</h2>
<p>The Drupal shell utility <a href="http://drupal.org/project/drush">Drush</a> was instrumental in keeping maintenance and deployment times down, giving us the power to automate updates or install modules to all sites with a single command. Coupled with the Permissions_API, Drush let us batch set module permissions via the command line.</p>
<h2>Merging Old and New</h2>
<p>Data migration was at once the most challenging and interesting aspect of this project. The old chapter sites ran on IIS/ASP/MSSQL, and each site was associated with anywhere from dozens to hundreds of members, files and disparate content types. After a several-weeks-long investigation into the best transfer process, a series of tools and procedures were developed to carefully relocate and reorganize the data.</p>
<p>Working with batches of five chapter websites at a time, we first ran custom scripts to move production data and files into a Drupal 6/MySQL system hosted on a migration server. Once any migration errors were fixed, code was placed in open source version control system Subversion, and the chapter site was transferred from a migration server to a staging system. The new site was cleaned up using Drupal, and finally transferred to its home on the production system, where site data underwent a thorough review from front-end and back-end users.  </p>
<p>MSSQL and MS Access data was scrubbed and inserted into MySQL using a custom-built Drupal module, which could be run via the Drupal admin panel or the command line. The module imported HTML pages from the previous system and jettisoned superfluous tags, maintained the integrity of user profile data during transfer, and slotted survey results from the old system into a Drupal Webform-readable format.   </p>
<h2>Snazzy Features</h2>
<p>After all was said and done, the completed SHRM chapter sites were intuitive, flexible and packed with useful tools.<br />
<img src="http://drupal.org/files/pic-admindashboard.png" align="right" hspace="5" vspace="5" /></p>
<h2>SHRM Administration Panel</h2>
<p>Drupal made it easy to create a tailor-made administration panel that helps administrators jump straight to the most important tasks while keeping the techie stuff safely out of the way. Through the panel, administrators can add and edit content, activate or disable memberships, tweak the registration process, assign roles and permissions, manage comments, and edit navigation menus. </p>
<h2>Easy Site Configuration Panel</h2>
<p>Using this fire-and-forget site setup interface, administrators can choose from five different template color schemes, upload logos, set the site title and contact information, set home page block configuration options, and integrate their site with Facebook, Twitter and Linkedin.</p>
<h2>Searchable member directory</h2>
<p>Provides member search by name and keyword, or by alphabetical browsing. Administrators can also use the directory as a filtering tool to send out mass emails to their member base, or only to certain member categories.</p>
<h2>Customizable Member Profiles</h2>
<p>While SHRM global requires that certain profile data be gathered on each member, local branches wanted the ability to add their own fields to member profiles. The Drupal <a href="http://drupal.org/documentation/modules/profile">Profile module</a> was adapted to give administrators the power to define customized profile fields for their members, while allowing members to choose whether fields are private or publicly viewable in the member directory.</p>
<h2>Paypal Integration</h2>
<p>Chapter administrators are able to seamlessly accept donations and event registration payments via Paypal.</p>
<h2>Meetings &amp; Events Management</h2>
<p>Admins were given an easy way to keep their members abreast of SHRM’s busy conference schedule with custom event content types automatically hooked in to collapsible home page blocks. </p>
<h2>Forms &amp; Surveys</h2>
<p>The forms and surveys feature lets administrators gather, store, sort and download data from members and non-members.  </p>
<h2>Training Center</h2>
<p>A detailed, all-encompassing built-in training center was created and included on each chapter site, with dozens of video tutorials and articles to help new administrators perform common tasks.</p>
<h2>Notable Contributed Modules</h2>
<p><a href="http://drupal.org/project/backup_migrate">Backup and Migrate</a> &#8211; Simplified the process of migrating databases from development, staging and production environments, particularly useful in that it fully supports Drush integration.<br />
<a href="http://drupal.org/project/calendar">Calendar</a> – This module came in handy in the creation of a custom events calendar for SHRM conferences and chapter meetings.<br />
<a href="http://drupal.org/project/ckeditor">CKeditor</a> and CKfinder – A powerful WYSIWYG library and interface.<br />
<a href="http://drupal.org/project/private">Private</a> – Node access control for members-only content.<br />
<a href="http://drupal.org/project/scheduler">Scheduler</a> – Future-dating content publishing and unpublishing.</p>
<h2>Infrastructure</h2>
<p>Four total servers were used, here are the configurations:</p>
<h3>2 Load Balanced Web Servers</h3>
<ul>
<li>Processors: Two (2) Intel Xeon Quad Core E5410 2.33 GHz w/ 1333 FSB</li>
<li>Memory: 8 GB DDR2 PC2-5300</li>
<li>Hard Drives: 2 x 146GB SAS 15K RPM Mirrored in Raid 1 (for redundancy)</li>
<li>OS: CentOS 5.5 64bit (Redhat Enterprise)</li>
<li>PHP: 5.2.10</li>
</ul>
<h3>MySQL server (with a second identical one for failover)</h3>
<ul>
<li>MySQL server (with a second identical one for failover)</li>
<li>Processors: Two (2) Intel Xeon Quad Core E5410 2.33 GHz w/ 1333 FSB</li>
<li>Memory: 8 GB DDR2 PC2-5300</li>
<li>Hard Drives: 2 x 146GB SAS 15K RPM Mirrored in Raid 1 (for OS) Hard Drives: 2 x 146GB SAS 15K RPM</li>
<li>Mirrored in Raid 1 (for MySQL)</li>
<li>OS: CentOS 5.5 64bit (Redhat Enterprise)</li>
<li>MySQL: 5.1.34</li>
</ul>
<h2>Accomplishing the Work</h2>
<p>At Saforian we believe in open source software and have promoted it since our inception. Drupal has played a significant role in allowing us to continue to create flexible, web-based user experiences that foster great visual design and efficient, easy-to-use functionality. It has become our go-to CMS system.</p>
<p>This particular project utilized a team of five individuals with the majority of the development effort being handled by a single, senior-level developer. We had several work streams running simultaneously to ensure an on-time release. Strategy and back-end architecture work started the project, with design and production work following and then full development and migration to finalize.</p>
<p>Our information architect and designers worked initially to define the structure, content hierarchies and overall design styling. An interactive prototype was created to support testing and to serve as a vehicle for gathering feedback from stakeholders and chapter members. Once the design was approved, we quickly moved into our development efforts, which included front-end HTML template production work; Drupal theme integration; module development and configuration; and complete migration exercises.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/society-for-human-resource-management-case-study/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pagebuild Case Study</title>
		<link>http://www.connexx-contentmanagement.nl/pagebuild-case-study/</link>
		<comments>http://www.connexx-contentmanagement.nl/pagebuild-case-study/#comments</comments>
		<pubDate>Tue, 17 May 2011 15:18:52 +0000</pubDate>
		<dc:creator>ac</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[Drupal showcase]]></category>

		<guid isPermaLink="false">993166 at http://drupal.org</guid>
		<description><![CDATA[<p><img src="http://drupal.org/files/issues/pagebuild_front_end_thumb_0.png" alt="pagebuild" class="right"><a href="http://www.pagebuild.net" rel="nofollow">Pagebuild</a> allows non technical users to build websites very quickly and easily. It was built on top of Drupal, with the idea behind it being to provide an editing interface that is so simple, even an adult could use it. This is a explanation of what we did and how we went about doing it (and why).</p>
<h2>Motivation</h2>
<p><a href="http://www.spoon.com.au" rel="nofollow">Spoon Media</a> has been building Drupal sites for the last 6 years. We generally do mid to large size projects and pretty quickly we noticed how often we were turning away business from companies with modest budgets. That wasn't great for them, because most low budget web solutions are pretty ordinary and it also meant we were sending small jobs elsewhere. This was the main motivation for building Pagebuild - we wanted to let small business get a great website at a inexpensive price but still retain a high standard of product.</p>
<h2>High Level Architecture</h2>
<p>Pagebuild as a product consists of two main systems which we've dubbed <em>front-end</em> and <em>back-end</em>.</p>
<p>The front-end is the software that allows customers to edit their Pagebuild site. This consists of a series of custom Drupal modules and a whole lot of JavaScript that provides the easy to use WYSIWYG experience.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_new_site_0.png" rel="nofollow"><img src="http://drupal.org/files/issues/pagebuild_new_site_thumb.png" class="right" width="300px" height="200px"></a></p>
<p>The back-end is the software that allows customers to signup, create and manage their websites. <a href="http://aegirproject.org" rel="nofollow">Aegir</a> is used to provision and manage sites and custom Drupal modules provide a simple customer interface to the site provisioning and management process, as well as the standard account and billing settings.</p>
<p>Both the front-end and back-end are powered by their own Aegir platforms.</p>
<p>Of course we use a bunch of great Drupal community modules across both systems. More on that follows.</p>
<h2>Front-end</h2>
<p>In order to provide an incredibly simple site editing interface it was clear from the beginning that the bulk of the work on the front-end would involve using JavaScript to implement the desired UX.</p>
<p><a href="http://jquery.com" rel="nofollow">jQuery</a>, <a href="http://jqueryui.com" rel="nofollow">jQuery UI</a> and a series of jQuery plugins are used extensively.</p>
<p>I'll explain the motivations and provide some light implementation details for selected features.</p>
<h2>Editing</h2>
<p>It was very important for us that the editor was truly WYSIWYG. It wasn't enough that a heading was a heading and bolded text was bold. We needed headings to be styled exactly the same whether the user is editing a content area or viewing it. As a result we threw out the idea of using IFrame based WYSIWYG editors such as CKEditor or TinyMCE.</p>
<p>Another requirement was that users should be able to freely drag and drop images from our Media Manager into the content area. Doing this with an IFrame based editor was not possible.</p>
<p>After much back and forth we settled on Twoism's <a href="https://github.com/twoism/reviser" rel="nofollow">reviser</a> as the base for the WYSIWYG editor. I say base, as significant Pagebuild specific changes were made in order to get it work just so.</p>
<p>The result is that we are able to provide a true WYSIWYG editing experience that is completely tailored to the Pagebuild Way.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_content_area_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_content_area_thumb_0.png" width="300px" height="200px"></a></p>
<p>One of coolest features of Pagebuild's editing would have to be the ability to drag images from the Media Manager toolbar and drop them into the content area at a position that makes sense visually. Unlike other drag and drop solutions in web WYSIWYGs, Pagebuild won't allow you drop an image in the middle of a sentence. With jQuery UI's <em>sortable</em> plugin we are able to force the image to be moved around the content area and dropped in sensible drop zones.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_image_dragging_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_image_dragging_thumb_0.png" width="300px" height="200px"></a></p>
<h2>Blocks and regions</h2>
<p>Of course it's not enough for users to be able to edit the main content area. In order to allow the user to create unique and flexible page layouts we leverage Drupal's regions and blocks to make this happen.</p>
<p>When editing a page regions can be shown or hidden, and blocks can be added to regions. This all happens via AJAX, and creating/editing/deleting blocks happens on the page itself to prevent interrupting the editing experience. As an added bonus existing blocks can be dragged from one region to another.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_block_dragging_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_block_dragging_thumb_0.png" width="300px" height="200px"></a></p>
<h2>Themes</h2>
<p>We provide a number of free themes for customers to choose from. All Pagebuild themes are <a href="http://drupal.org/project/zen" rel="nofollow">Zen</a> subthemes. On top of being a great base for our themes it was required in order for our JavaScript to work, as we need all DOM classes and IDs to be consistent across themes.</p>
<p>When a user selects a theme from the Switch theme toolbar we simply set that theme to be the default for all users, and make sure the block visibility remains the same.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_theme_switcher_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_theme_switcher_thumb_0.png" width="300px" height="200px"></a></p>
<p>I'll talk more about how themes are put together a below.</p>
<h2>Back-end</h2>
<p>Where the front-end development was largely JavaScript backed up by Drupal modules to make the magic happen, the back-end is true to its name in being largely the work of Aegir and custom Drupal modules.</p>
<h2>Provisioning</h2>
<p>From a customer's perspective the Pagebuild adventure begins with sign-up. Here we capture the customer's details, process the payment and provision the site.</p>
<p>We use Aegir to provision new sites automagically when the customer has finished signing up. Aegir, being as wonderful as it is, makes this incredibly simple. All you need to do is create a node of type site, and it will be added to Aegir's task queue.</p>
<p>After sign-up the customer is automatically logged in and presented with the Pagebuild Dashboard. Once the site has been provisioned (which usually happens inside of 60 seconds) they can login to it and start editing right away.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_dashboard_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_dashboard_thumb_0.png" width="300px" height="200px"></a></p>
<p>In order to implement a Single Sign On the back-end acts as an OpenID provider. Our custom Drupal install profile adds an entry into the <em>authmap</em> table allowing them to login to their site without having to re-enter their login details.</p>
<p>The custom Drupal install profile on the front-end communicates with the back-end database to setup themes, roles, filters, pathauto and imagecache settings, amongst other things.</p>
<p>Once a customer has signed up they can add new sites to their subscription with a simple single page form.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_new_site_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_new_site_thumb_0.png" width="300px" height="200px"></a></p>
<h2>Domain settings</h2>
<p>When a customer first signs up they are asked to enter a subdomain for their website. Initially the site is provisioned as <em>example.pagebuild.net</em>.</p>
<p>Once the site is provisioned though, the customer has the option to use any domain of their choosing for their site.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_domain_settings_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_domain_settings_thumb_0.png" width="300px" height="200px"></a></p>
<p>Again Aegir makes this very simple. When the customer submits the form we check that the domain they have specified points to our IP address. This prevents the site from being unreachable if the A record doesn't match. Once we've checked the A record points to the correct IP address we create a <em>migrate</em> task in Aegir, which goes off and renames the site.</p>
<p>Thanks Aegir!</p>
<h2>Theme editor</h2>
<p>Customers are able to choose from a set of free themes or they can make their own theme.</p>
<p>Using one of our themes as a starting point, the user can alter every aspect of the design from their browser. They can then save their theme with a new name, effectively forking it from the pre built theme we provided. This concept is used in both Drupal Gardens and in the <a href="http://drupal.org/project/sweaver" rel="nofollow">Sweaver</a> module, however both of those implementations allow so much freedom as to be confusing to a non technical user. We have taken the concept and made it harder to do silly things to your theme by restricting what HTML elements you can actually modify. Whilst this limits the power of the theme editor, on the whole it results in a better theme when used by a novice.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_theme_editor.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_theme_editor_thumb_0.png" width="300px" height="200px"></a></p>
<h2>Custom themes</h2>
<p>While we provide free themes for customers to use on their site, we also provide them with a service whereby they can purchase a customised design. This is not automated and involves the customer talking with a designer to get a result.</p>
<p>In order to greatly simplify the process of creating themes for Pagebuild we implemented a simple templating language that allows designers to write minimal HTML and as much CSS as they require to get the look right. Each theme only requires a single theme template. This is about all it needs to be:</p>
<p>
<div class="codeblock"><div class="codeblock"><code>[START]<br />[REGION:header]<br />[NAVIGATION]<br />&#60;!-- #masthead, #masthead-inner --&#62;<br />&#60;div id=&#34;masthead&#34;&#62;<br />&#60;div id=&#34;masthead-inner&#34; class=&#34;clear-block&#34;&#62;<br />[LOGO]<br />[SITENAME]<br />&#60;/div&#62;<br />&#60;/div&#62;<br />&#60;!-- /#masthead-inner, /#masthead--&#62;<br />&#60;!-- #main, #main-inner --&#62;<br />&#60;div id=&#34;main&#34;&#62;<br />&#60;div id=&#34;main-inner&#34; class=&#34;clear-block&#34;&#62;<br />[BREADCRUMB]<br />&#60;!-- #content, #content-inner --&#62;<br />&#60;div id=&#34;content&#34;&#62;<br />&#60;div id=&#34;content-inner&#34;&#62;<br />[REGION:top]<br />[PAGENAME]<br />[CONTENT]<br />[REGION:bottom]<br />&#60;/div&#62;<br />&#60;/div&#62;<br />&#60;!-- /#content-inner, /#content--&#62;<br />[REGION:left]<br />[REGION:right]<br />&#60;/div&#62;<br />&#60;/div&#62; <br />&#60;!-- /#main-inner, /#main--&#62;<br />[REGION:footer] <br />[END]</code></div></div>
</p>
<p>Using the token module we replace the Pagebuild theme tags with the Zen markup required to make sure the theme works with the Pagebuild editor.</p>
<p>Designers upload the template file, a CSS file and whatever images are required and a complete Zen subtheme is automatically generated and copied into <em>sites/all/themes</em> ready for use.</p>
<p>The permissions on individual theme nodes ensures the theme is available only to the customer who purchased it.</p>
<p>Custom themes are currently only available to designers we have an existing relationship with. In the future we plan to open this feature up to more designers. Further down the track we will open the feature  to customers themselves.</p>
<h2>Subscriptions</h2>
<p>Initially we tried using Ubercart, uc_recurring and various payment modules for the checkout and subscription payments. It turned out this added an unnecessary layer of complexity to the system. The Ubercart product wasn't meshing well with the existing Aegir and Pagebuild CCK types. Eventually we replaced the whole thing with a simpler custom built payment and subscription module.</p>
<p>The uc_hosting module to integrate Aegir and Ubercart looks promising, but we needed to move quickly, and rolling our own system allowed us to do that. Another benefit is that the payment system is tightly integrated with the rest of the Pagebuild system. This allowed us to do exactly what we need to do without working around the assumptions inherent in Ubercart, uc_recurring and the payment modules.</p>
<h2>Main challenges</h2>
<h3>Internet Explorer</h3>
<p>The the first half of development we aimed to support IE7+ for page editing. After considerable effort we decided to ditch native IE support, and instead create a simple UX for the customer to install <a href="http://code.google.com/chrome/chromeframe/" rel="nofollow">Google Chrome Frame</a>.</p>
<p>We are really pushing the limit of WebKit and Gecko browsers when it comes to building WYSIWYGs, and we decided that a superior experience was preferable to a lowest-common-denominator one.</p>
<p>The UX we provide for customers to install GCF is as simple as possible, and we doubt it will deter customers.</p>
<p>Of course, GCF is only required for customers when editing their site. We support IE6+ as well as the proper browsers when viewing Pagebuild sites.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_google_chrome_frame_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_google_chrome_frame_thumb_0.png" width="300px" height="200px"></a></p>
<h3>Content editable</h3>
<p>Instead of using an IFrame based WYSIWYG editor we decided to use a feature of some browsers called <a href="http://www.quirksmode.org/dom/execCommand.html" rel="nofollow">content editable</a>.</p>
<p>While we believe this provides a superior editing experience, the cost is in the fact that it is not uniformly supported across all browsers. Worse, some implementations are particularly bad. Anecdote alert: In order to fix a bug caused by Firefox's implementation of document.execCommand we were forced to build a debug binary of Firefox and step through the rendering code in gdb.</p>
<p>Despite the additional effort required in rolling our own WYSIWYG editor, we are very happy with the experience we've managed to produce.</p>
<h2>Outro</h2>
<p>So that is about it. If you want to see it in action you can sign up for a free trial at <a href="https://my.pagebuild.net/signup/demo" rel="nofollow">https://my.pagebuild.net/signup/demo</a> or take a look at some of the live sites built with Pagebuild:</p>
<ul>
<li><a href="http://www.intrinsicinteriors.com.au/" rel="nofollow">Intrinsic Interiors</a></li>
<li><a href="http://www.workingprogress.com.au/" rel="nofollow">Learn Microsoft Excel</a></li>
<li><a href="http://www.barbaramordini.com.au/" rel="nofollow">Barbara Mordini</a></li>
</ul>
<p>We are really interested to hear what people think about it so please leave us a comment and we will reply. We are constantly developing the product (we roll a new release weekly) and so genuine feedback is really helpful and may even end up becoming part of the product.</p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fpagebuild-case-study%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fpagebuild-case-study%2F" height="61" width="51" /></a></div><p><img src="http://drupal.org/files/issues/pagebuild_front_end_thumb_0.png" alt="pagebuild" class="right"><a href="http://www.pagebuild.net" rel="nofollow">Pagebuild</a> allows non technical users to build websites very quickly and easily. It was built on top of Drupal, with the idea behind it being to provide an editing interface that is so simple, even an adult could use it. This is a explanation of what we did and how we went about doing it (and why).</p>
<h2>Motivation</h2>
<p><a href="http://www.spoon.com.au" rel="nofollow">Spoon Media</a> has been building Drupal sites for the last 6 years. We generally do mid to large size projects and pretty quickly we noticed how often we were turning away business from companies with modest budgets. That wasn&#8217;t great for them, because most low budget web solutions are pretty ordinary and it also meant we were sending small jobs elsewhere. This was the main motivation for building Pagebuild &#8211; we wanted to let small business get a great website at a inexpensive price but still retain a high standard of product.</p>
<h2>High Level Architecture</h2>
<p>Pagebuild as a product consists of two main systems which we&#8217;ve dubbed <em>front-end</em> and <em>back-end</em>.</p>
<p>The front-end is the software that allows customers to edit their Pagebuild site. This consists of a series of custom Drupal modules and a whole lot of JavaScript that provides the easy to use WYSIWYG experience.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_new_site_0.png" rel="nofollow"><img src="http://drupal.org/files/issues/pagebuild_new_site_thumb.png" class="right" width="300px" height="200px"></a></p>
<p>The back-end is the software that allows customers to signup, create and manage their websites. <a href="http://aegirproject.org" rel="nofollow">Aegir</a> is used to provision and manage sites and custom Drupal modules provide a simple customer interface to the site provisioning and management process, as well as the standard account and billing settings.</p>
<p>Both the front-end and back-end are powered by their own Aegir platforms.</p>
<p>Of course we use a bunch of great Drupal community modules across both systems. More on that follows.</p>
<h2>Front-end</h2>
<p>In order to provide an incredibly simple site editing interface it was clear from the beginning that the bulk of the work on the front-end would involve using JavaScript to implement the desired UX.</p>
<p><a href="http://jquery.com" rel="nofollow">jQuery</a>, <a href="http://jqueryui.com" rel="nofollow">jQuery UI</a> and a series of jQuery plugins are used extensively.</p>
<p>I&#8217;ll explain the motivations and provide some light implementation details for selected features.</p>
<h2>Editing</h2>
<p>It was very important for us that the editor was truly WYSIWYG. It wasn&#8217;t enough that a heading was a heading and bolded text was bold. We needed headings to be styled exactly the same whether the user is editing a content area or viewing it. As a result we threw out the idea of using IFrame based WYSIWYG editors such as CKEditor or TinyMCE.</p>
<p>Another requirement was that users should be able to freely drag and drop images from our Media Manager into the content area. Doing this with an IFrame based editor was not possible.</p>
<p>After much back and forth we settled on Twoism&#8217;s <a href="https://github.com/twoism/reviser" rel="nofollow">reviser</a> as the base for the WYSIWYG editor. I say base, as significant Pagebuild specific changes were made in order to get it work just so.</p>
<p>The result is that we are able to provide a true WYSIWYG editing experience that is completely tailored to the Pagebuild Way.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_content_area_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_content_area_thumb_0.png" width="300px" height="200px"></a></p>
<p>One of coolest features of Pagebuild&#8217;s editing would have to be the ability to drag images from the Media Manager toolbar and drop them into the content area at a position that makes sense visually. Unlike other drag and drop solutions in web WYSIWYGs, Pagebuild won&#8217;t allow you drop an image in the middle of a sentence. With jQuery UI&#8217;s <em>sortable</em> plugin we are able to force the image to be moved around the content area and dropped in sensible drop zones.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_image_dragging_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_image_dragging_thumb_0.png" width="300px" height="200px"></a></p>
<h2>Blocks and regions</h2>
<p>Of course it&#8217;s not enough for users to be able to edit the main content area. In order to allow the user to create unique and flexible page layouts we leverage Drupal&#8217;s regions and blocks to make this happen.</p>
<p>When editing a page regions can be shown or hidden, and blocks can be added to regions. This all happens via AJAX, and creating/editing/deleting blocks happens on the page itself to prevent interrupting the editing experience. As an added bonus existing blocks can be dragged from one region to another.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_block_dragging_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_block_dragging_thumb_0.png" width="300px" height="200px"></a></p>
<h2>Themes</h2>
<p>We provide a number of free themes for customers to choose from. All Pagebuild themes are <a href="http://drupal.org/project/zen" rel="nofollow">Zen</a> subthemes. On top of being a great base for our themes it was required in order for our JavaScript to work, as we need all DOM classes and IDs to be consistent across themes.</p>
<p>When a user selects a theme from the Switch theme toolbar we simply set that theme to be the default for all users, and make sure the block visibility remains the same.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_theme_switcher_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_theme_switcher_thumb_0.png" width="300px" height="200px"></a></p>
<p>I&#8217;ll talk more about how themes are put together a below.</p>
<h2>Back-end</h2>
<p>Where the front-end development was largely JavaScript backed up by Drupal modules to make the magic happen, the back-end is true to its name in being largely the work of Aegir and custom Drupal modules.</p>
<h2>Provisioning</h2>
<p>From a customer&#8217;s perspective the Pagebuild adventure begins with sign-up. Here we capture the customer&#8217;s details, process the payment and provision the site.</p>
<p>We use Aegir to provision new sites automagically when the customer has finished signing up. Aegir, being as wonderful as it is, makes this incredibly simple. All you need to do is create a node of type site, and it will be added to Aegir&#8217;s task queue.</p>
<p>After sign-up the customer is automatically logged in and presented with the Pagebuild Dashboard. Once the site has been provisioned (which usually happens inside of 60 seconds) they can login to it and start editing right away.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_dashboard_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_dashboard_thumb_0.png" width="300px" height="200px"></a></p>
<p>In order to implement a Single Sign On the back-end acts as an OpenID provider. Our custom Drupal install profile adds an entry into the <em>authmap</em> table allowing them to login to their site without having to re-enter their login details.</p>
<p>The custom Drupal install profile on the front-end communicates with the back-end database to setup themes, roles, filters, pathauto and imagecache settings, amongst other things.</p>
<p>Once a customer has signed up they can add new sites to their subscription with a simple single page form.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_new_site_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_new_site_thumb_0.png" width="300px" height="200px"></a></p>
<h2>Domain settings</h2>
<p>When a customer first signs up they are asked to enter a subdomain for their website. Initially the site is provisioned as <em>example.pagebuild.net</em>.</p>
<p>Once the site is provisioned though, the customer has the option to use any domain of their choosing for their site.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_domain_settings_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_domain_settings_thumb_0.png" width="300px" height="200px"></a></p>
<p>Again Aegir makes this very simple. When the customer submits the form we check that the domain they have specified points to our IP address. This prevents the site from being unreachable if the A record doesn&#8217;t match. Once we&#8217;ve checked the A record points to the correct IP address we create a <em>migrate</em> task in Aegir, which goes off and renames the site.</p>
<p>Thanks Aegir!</p>
<h2>Theme editor</h2>
<p>Customers are able to choose from a set of free themes or they can make their own theme.</p>
<p>Using one of our themes as a starting point, the user can alter every aspect of the design from their browser. They can then save their theme with a new name, effectively forking it from the pre built theme we provided. This concept is used in both Drupal Gardens and in the <a href="http://drupal.org/project/sweaver" rel="nofollow">Sweaver</a> module, however both of those implementations allow so much freedom as to be confusing to a non technical user. We have taken the concept and made it harder to do silly things to your theme by restricting what HTML elements you can actually modify. Whilst this limits the power of the theme editor, on the whole it results in a better theme when used by a novice.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_theme_editor.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_theme_editor_thumb_0.png" width="300px" height="200px"></a></p>
<h2>Custom themes</h2>
<p>While we provide free themes for customers to use on their site, we also provide them with a service whereby they can purchase a customised design. This is not automated and involves the customer talking with a designer to get a result.</p>
<p>In order to greatly simplify the process of creating themes for Pagebuild we implemented a simple templating language that allows designers to write minimal HTML and as much CSS as they require to get the look right. Each theme only requires a single theme template. This is about all it needs to be:</p>
<p><div class="codeblock">
<div class="codeblock"><code>[START]<br />[REGION:header]<br />[NAVIGATION]<br />&lt;!-- #masthead, #masthead-inner --&gt;<br />&lt;div id=&quot;masthead&quot;&gt;<br />&lt;div id=&quot;masthead-inner&quot; class=&quot;clear-block&quot;&gt;<br />[LOGO]<br />[SITENAME]<br />&lt;/div&gt;<br />&lt;/div&gt;<br />&lt;!-- /#masthead-inner, /#masthead--&gt;<br />&lt;!-- #main, #main-inner --&gt;<br />&lt;div id=&quot;main&quot;&gt;<br />&lt;div id=&quot;main-inner&quot; class=&quot;clear-block&quot;&gt;<br />[BREADCRUMB]<br />&lt;!-- #content, #content-inner --&gt;<br />&lt;div id=&quot;content&quot;&gt;<br />&lt;div id=&quot;content-inner&quot;&gt;<br />[REGION:top]<br />[PAGENAME]<br />[CONTENT]<br />[REGION:bottom]<br />&lt;/div&gt;<br />&lt;/div&gt;<br />&lt;!-- /#content-inner, /#content--&gt;<br />[REGION:left]<br />[REGION:right]<br />&lt;/div&gt;<br />&lt;/div&gt; <br />&lt;!-- /#main-inner, /#main--&gt;<br />[REGION:footer] <br />[END]</code></div>
</div>
<p>Using the token module we replace the Pagebuild theme tags with the Zen markup required to make sure the theme works with the Pagebuild editor.</p>
<p>Designers upload the template file, a CSS file and whatever images are required and a complete Zen subtheme is automatically generated and copied into <em>sites/all/themes</em> ready for use.</p>
<p>The permissions on individual theme nodes ensures the theme is available only to the customer who purchased it.</p>
<p>Custom themes are currently only available to designers we have an existing relationship with. In the future we plan to open this feature up to more designers. Further down the track we will open the feature  to customers themselves.</p>
<h2>Subscriptions</h2>
<p>Initially we tried using Ubercart, uc_recurring and various payment modules for the checkout and subscription payments. It turned out this added an unnecessary layer of complexity to the system. The Ubercart product wasn&#8217;t meshing well with the existing Aegir and Pagebuild CCK types. Eventually we replaced the whole thing with a simpler custom built payment and subscription module.</p>
<p>The uc_hosting module to integrate Aegir and Ubercart looks promising, but we needed to move quickly, and rolling our own system allowed us to do that. Another benefit is that the payment system is tightly integrated with the rest of the Pagebuild system. This allowed us to do exactly what we need to do without working around the assumptions inherent in Ubercart, uc_recurring and the payment modules.</p>
<h2>Main challenges</h2>
<h3>Internet Explorer</h3>
<p>The the first half of development we aimed to support IE7+ for page editing. After considerable effort we decided to ditch native IE support, and instead create a simple UX for the customer to install <a href="http://code.google.com/chrome/chromeframe/" rel="nofollow">Google Chrome Frame</a>.</p>
<p>We are really pushing the limit of WebKit and Gecko browsers when it comes to building WYSIWYGs, and we decided that a superior experience was preferable to a lowest-common-denominator one.</p>
<p>The UX we provide for customers to install GCF is as simple as possible, and we doubt it will deter customers.</p>
<p>Of course, GCF is only required for customers when editing their site. We support IE6+ as well as the proper browsers when viewing Pagebuild sites.</p>
<p><a href="http://drupal.org/files/issues/pagebuild_google_chrome_frame_0.png" rel="nofollow"><img class="right" src="http://drupal.org/files/issues/pagebuild_google_chrome_frame_thumb_0.png" width="300px" height="200px"></a></p>
<h3>Content editable</h3>
<p>Instead of using an IFrame based WYSIWYG editor we decided to use a feature of some browsers called <a href="http://www.quirksmode.org/dom/execCommand.html" rel="nofollow">content editable</a>.</p>
<p>While we believe this provides a superior editing experience, the cost is in the fact that it is not uniformly supported across all browsers. Worse, some implementations are particularly bad. Anecdote alert: In order to fix a bug caused by Firefox&#8217;s implementation of document.execCommand we were forced to build a debug binary of Firefox and step through the rendering code in gdb.</p>
<p>Despite the additional effort required in rolling our own WYSIWYG editor, we are very happy with the experience we&#8217;ve managed to produce.</p>
<h2>Outro</h2>
<p>So that is about it. If you want to see it in action you can sign up for a free trial at <a href="https://my.pagebuild.net/signup/demo" rel="nofollow">https://my.pagebuild.net/signup/demo</a> or take a look at some of the live sites built with Pagebuild:</p>
<ul>
<li><a href="http://www.intrinsicinteriors.com.au/" rel="nofollow">Intrinsic Interiors</a></li>
<li><a href="http://www.workingprogress.com.au/" rel="nofollow">Learn Microsoft Excel</a></li>
<li><a href="http://www.barbaramordini.com.au/" rel="nofollow">Barbara Mordini</a></li>
</ul>
<p>We are really interested to hear what people think about it so please leave us a comment and we will reply. We are constantly developing the product (we roll a new release weekly) and so genuine feedback is really helpful and may even end up becoming part of the product.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/pagebuild-case-study/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Training at DrupalCon London!</title>
		<link>http://www.connexx-contentmanagement.nl/training-at-drupalcon-london/</link>
		<comments>http://www.connexx-contentmanagement.nl/training-at-drupalcon-london/#comments</comments>
		<pubDate>Fri, 13 May 2011 16:35:42 +0000</pubDate>
		<dc:creator>heather</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[Drupal 7.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[News and announcements]]></category>

		<guid isPermaLink="false">1152954 at http://drupal.org</guid>
		<description><![CDATA[<p><img src="/files/issues/news-banner_1.png" alt="drupalcon london logo">We're delighted to announce the array of courses available for DrupalCon London, which will be held August 22-26, 2011. View the course listing at <a href="http://london2011.drupal.org/conference/training" title="http://london2011.drupal.org/conference/training" rel="nofollow">http://london2011.drupal.org/conference/training</a></p>
<p>With the Drupal community growing so quickly, building your skills is more important than ever.  We want these courses to help the community provide a broader range of services, employ the most innovative and efficient practices, and allow Drupal (and the Drupalists!) to excel. Whether you're new or experienced with Drupal you can always gain from some hands-on training. We have instructors coming from Canada, U.S. and all over Europe to share their expertise. </p>
<p>Prices range from £150 - £325. These courses are an affordable way to round out your DrupalCon experience. Keep in mind, the <strong>early bird registration deadline</strong> is the 31st of May!</p>
<p>We hope you'll find something for everyone on your team, and that you take this unique opportunity for intensive professional development. We'll be posting further details in the coming week! We'll have more information about the training providers and the learning objectives for each course. </p>
<p>Meanwhile, check out these brief descriptions here:</p>
<p><strong>If you're new to Drupal... </strong></p>
<p><strong><a href="http://london2011.drupal.org/page/absolute-beginners-guide-drupal" target="_blank" rel="nofollow">Absolute Beginner's Guide to Drupal</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£150! (+VAT) Sign up today!</a></strong></p>
<p>Learn the fundamentals of working with Drupal.</p>
<p><strong><a href="http://london2011.drupal.org/page/making-switch-drupal-developers-view" target="_blank" rel="nofollow">Making the Switch to Drupal: The developer's view</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£250! (+VAT) Sign up today!</a></strong></p>
<p>Learn how to read the blueprint before using your saw.</p>
<p><strong><a href="http://london2011.drupal.org/page/openpublic-build-websites-government" target="_blank" rel="nofollow">OpenPublic, build websites for government</a></strong> &#160;- &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Want to Build Sites for Government? Learn to Build Better and Faster with OpenPublic.</p>
<p><strong><a href="http://london2011.drupal.org/page/theming-non-themers" target="_blank" rel="nofollow">Theming for Non-Themers</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£250! (+VAT) Sign up today!</a></strong></p>
<p>Learn how to create amazing looking sites in Drupal with no code.</p>
<p>&#160;</p>
<p><strong>If you're experienced with Drupal and want to develop new skills... </strong></p>
<p><strong><a href="http://london2011.drupal.org/page/advanced-configuration-views-page-manager-flag-and-rules" target="_blank" rel="nofollow">Advanced Configuration with Views, Page Manager, Flag and Rules</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn how Drupal works, how to implement hooks, and working with databases and Form API to extend Drupal.</p>
<p><strong><a href="http://london2011.drupal.org/page/building-modules-drupal-7" target="_blank" rel="nofollow">Building Modules for Drupal 7</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn how Drupal works, how to implement hooks, and working with databases and Form API to extend Drupal.</p>
<p><strong><a href="http://london2011.drupal.org/page/drupal-7-seo" target="_blank" rel="nofollow">Drupal 7 SEO</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn on-page optimization to get the best search engine placement for your site.</p>
<p><strong><a href="http://london2011.drupal.org/page/drupal-performance-and-scalability" target="_blank" rel="nofollow">Drupal Performance and Scalability</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn the best practices for tuning and scaling Drupal sites.</p>
<p>&#160;</p>
<p><strong>If you're experienced with Drupal and want a deep dive into speciality topics... </strong></p>
<p><strong><a href="http://london2011.drupal.org/page/aegir-hosting-system-deep-dive" target="_blank" rel="nofollow">Aegir Hosting System: Deep Dive</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn a scalable solution for deploying and managing Drupal sites.</p>
<p><strong><a href="http://london2011.drupal.org/page/creating-awesome-ux-deliverables" target="_blank" rel="nofollow">Creating Awesome UX Deliverables</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn to develop and communicate a UX Vision, employing best practices and patterns.</p>
<p><strong><a href="http://london2011.drupal.org/page/drupal-powered-e-commerce" target="_blank" rel="nofollow">Drupal Powered E-commerce</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn to build e-commerce functionality in Drupal.</p>
<p><strong><a href="http://london2011.drupal.org/page/jquery-drupal" target="_blank" rel="nofollow">jQuery for Drupal</a></strong> &#160; - &#160; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Rich and interactive user interfaces. Learn to build them with this Drupal-jQuery course.</p>
<p>Stay up-to-date with the latest information about DrupalCon London by going to <a href="http://london2011.drupal.org/" title="http://london2011.drupal.org/" rel="nofollow">http://london2011.drupal.org/</a> or following us on Twitter <a href="http://twitter.com/#!/drupalcon" rel="nofollow">@drupalcon</a>.</p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Ftraining-at-drupalcon-london%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Ftraining-at-drupalcon-london%2F" height="61" width="51" /></a></div><p><img src="http://drupal.org/files/issues/news-banner_1.png" alt="drupalcon london logo">We&#8217;re delighted to announce the array of courses available for DrupalCon London, which will be held August 22-26, 2011. View the course listing at <a href="http://london2011.drupal.org/conference/training" title="http://london2011.drupal.org/conference/training" rel="nofollow">http://london2011.drupal.org/conference/training</a></p>
<p>With the Drupal community growing so quickly, building your skills is more important than ever.  We want these courses to help the community provide a broader range of services, employ the most innovative and efficient practices, and allow Drupal (and the Drupalists!) to excel. Whether you&#8217;re new or experienced with Drupal you can always gain from some hands-on training. We have instructors coming from Canada, U.S. and all over Europe to share their expertise. </p>
<p>Prices range from £150 &#8211; £325. These courses are an affordable way to round out your DrupalCon experience. Keep in mind, the <strong>early bird registration deadline</strong> is the 31st of May!</p>
<p>We hope you&#8217;ll find something for everyone on your team, and that you take this unique opportunity for intensive professional development. We&#8217;ll be posting further details in the coming week! We&#8217;ll have more information about the training providers and the learning objectives for each course. </p>
<p>Meanwhile, check out these brief descriptions here:</p>
<p><strong>If you&#8217;re new to Drupal&#8230; </strong></p>
<p><strong><a href="http://london2011.drupal.org/page/absolute-beginners-guide-drupal"  rel="nofollow">Absolute Beginner&#8217;s Guide to Drupal</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£150! (+VAT) Sign up today!</a></strong></p>
<p>Learn the fundamentals of working with Drupal.</p>
<p><strong><a href="http://london2011.drupal.org/page/making-switch-drupal-developers-view"  rel="nofollow">Making the Switch to Drupal: The developer&#8217;s view</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£250! (+VAT) Sign up today!</a></strong></p>
<p>Learn how to read the blueprint before using your saw.</p>
<p><strong><a href="http://london2011.drupal.org/page/openpublic-build-websites-government"  rel="nofollow">OpenPublic, build websites for government</a></strong> &nbsp;- &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Want to Build Sites for Government? Learn to Build Better and Faster with OpenPublic.</p>
<p><strong><a href="http://london2011.drupal.org/page/theming-non-themers"  rel="nofollow">Theming for Non-Themers</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£250! (+VAT) Sign up today!</a></strong></p>
<p>Learn how to create amazing looking sites in Drupal with no code.</p>
<p>&nbsp;</p>
<p><strong>If you&#8217;re experienced with Drupal and want to develop new skills&#8230; </strong></p>
<p><strong><a href="http://london2011.drupal.org/page/advanced-configuration-views-page-manager-flag-and-rules"  rel="nofollow">Advanced Configuration with Views, Page Manager, Flag and Rules</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn how Drupal works, how to implement hooks, and working with databases and Form API to extend Drupal.</p>
<p><strong><a href="http://london2011.drupal.org/page/building-modules-drupal-7"  rel="nofollow">Building Modules for Drupal 7</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn how Drupal works, how to implement hooks, and working with databases and Form API to extend Drupal.</p>
<p><strong><a href="http://london2011.drupal.org/page/drupal-7-seo"  rel="nofollow">Drupal 7 SEO</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn on-page optimization to get the best search engine placement for your site.</p>
<p><strong><a href="http://london2011.drupal.org/page/drupal-performance-and-scalability"  rel="nofollow">Drupal Performance and Scalability</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn the best practices for tuning and scaling Drupal sites.</p>
<p>&nbsp;</p>
<p><strong>If you&#8217;re experienced with Drupal and want a deep dive into speciality topics&#8230; </strong></p>
<p><strong><a href="http://london2011.drupal.org/page/aegir-hosting-system-deep-dive"  rel="nofollow">Aegir Hosting System: Deep Dive</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn a scalable solution for deploying and managing Drupal sites.</p>
<p><strong><a href="http://london2011.drupal.org/page/creating-awesome-ux-deliverables"  rel="nofollow">Creating Awesome UX Deliverables</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn to develop and communicate a UX Vision, employing best practices and patterns.</p>
<p><strong><a href="http://london2011.drupal.org/page/drupal-powered-e-commerce"  rel="nofollow">Drupal Powered E-commerce</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Learn to build e-commerce functionality in Drupal.</p>
<p><strong><a href="http://london2011.drupal.org/page/jquery-drupal"  rel="nofollow">jQuery for Drupal</a></strong> &nbsp; &#8211; &nbsp; <strong><a title="Sign up today!" href="http://www.regonline.com/Register/Checkin.aspx?EventID=962797" rel="nofollow">£325! (+VAT) Sign up today!</a></strong></p>
<p>Rich and interactive user interfaces. Learn to build them with this Drupal-jQuery course.</p>
<p>Stay up-to-date with the latest information about DrupalCon London by going to <a href="http://london2011.drupal.org/" title="http://london2011.drupal.org/" rel="nofollow">http://london2011.drupal.org/</a> or following us on Twitter <a href="http://twitter.com/#!/drupalcon" rel="nofollow">@drupalcon</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/training-at-drupalcon-london/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building a Brand Ambassador System with Drupal</title>
		<link>http://www.connexx-contentmanagement.nl/building-a-brand-ambassador-system-with-drupal/</link>
		<comments>http://www.connexx-contentmanagement.nl/building-a-brand-ambassador-system-with-drupal/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 18:22:22 +0000</pubDate>
		<dc:creator>Omar Khan</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[Drupal showcase]]></category>

		<guid isPermaLink="false">1031796 at http://drupal.org</guid>
		<description><![CDATA[<p><a href="http://www.twinlabfuel.com/"><img src="http://drupal.org/files/WelcomeToRegistration_0.png" align="right" hspace="5" vspace="5" width="320" /></a>Brands are increasingly turning to brand ambassadors to market their products. Ambassadors are individuals with credibility in a given area who are hired by a brand to introduce consumers to a given product and educate them about its advantages. </p>
<p>Liquor companies, for example, often hire bartenders as brand ambassadors. The bartenders / brand ambassadors then tell their customers about the company’s brand of gin, and train other bartenders in making signature cocktails with that gin. </p>
<p>Brand ambassadors provide companies and products with valuable credibility. Wouldn’t you trust a liquor recommendation that came from a bartender over one that came from a salesperson?</p>
<p>The downside is logistics. Creating a regional or national team of brand ambassadors requires big investments in recruitment, training and management.</p>
<p>With Drupal however, you can create an online system that helps recruit, manage and monitor brand ambassadors with much less investment.</p>
<p>This project was another collaboration between design and development shop <a href="http://www.islco.com" target="_0">ISL Consulting</a> in San Francisco, and <a href="http://www.clearmetrics.com" target="_0">ClearMetrics</a> digital agency in New York.</p>
<!--break--><!--break--><p><b>The Problem</b></p>
<p>The client, Twinlab, is a major manufacturer of sports nutrition supplements. They wanted to set up a brand ambassador program from scratch, and they had two overriding goals:</p>
<p>	1.) <b>Excellent Applicant Screening</b>:  The sale and marketing of sports nutrition supplements is extensively regulated at federal and state levels. As a result, Twinlab couldn’t hire just any personal trainer or gym employee to be a brand ambassador. They needed to find and screen candidates with extensive knowledge of supplements and supplement regulations.</p>
<p>	2.) <b>Incentives</b>: Twinlab wanted its brand ambassadors to steer people to its online store, Twinlab.com, to buy product. To do that effectively, Twinlab needed to reward the ambassadors each time a consumer they referred to the site made a purchase. In essence, they need to set up an offline affiliate program.</p>
<p>       3.) <b>Flexible Support</b>: The brand ambassadors were to be contractors, working independently in their local markets to raise awareness of Twinlab. They wouldn’t have constant, face-to-face contact with Twinlab marketing staff. As a result, the company needed a way to get the ambassadors new product information and sales collateral (like brochures, posters, signage, etc.) quickly.</p>
<p>Costs had to be kept at a minimum in achieving all these goals. Twinlab couldn’t hire a full-time staff to hire and manage its brand ambassadors. All these tasks would have to be centralized and simplified by an online system.</p>
<p>Drupal was chosen because the client was already running Ubercart with the coupon module  very successfully. This site was added to a multi-domain installation so that products could be shared from other sites with this site. </p>
<p><b>The Star Player of the System: <a href="http://drupal.org/project/uc_coupon">Ubercart Discount Coupons Module</a></b></p>
<p>The primary task of this online system was to identify brand ambassadors and customers who had been referred to Twinlab.com by brand ambassadors. The simplest way to identify or “tag” an ambassador or customer was to provide them with specific codes that they could enter into the system during key transactions.</p>
<p><img src="http://drupal.org/files/EnterCode.png" align="left" hspace="5" vspace="5" /></p>
<p>The processes behind the codes used in this program are complicated, but they are largely handled by the <a href="http://drupal.org/project/uc_coupon">Ubercart Discount Coupons (UC Coupon) Module</a>.  This module provides the ability to input or generate codes that create various types of discounts in purchasing goods.  These codes have some powerful options.  They can be set to become active and inactive at certain times, and they can be configured to specify who can redeem them, product requirements, and how many times they can be redeemed.  Furthermore, the module provides the administrative interface for managing the coupons and providing reports on their usage.</p>
<p><b>Custom Module</b><br />
There was a fair amount of custom code needed to accomplish the unique requirements of the Brand Ambassador system. However, Drupal's architecture and the features provided by existing contributed modules allowed us to create a custom module that allowed us to use existing, tested code from the Community as our foundation, and add "glue" and customization where needed.</p>
<p>Much of the custom module had to do with modifying the functionality of the Ubercart Discount Coupons Module. A coupon, as set up and controlled by this module, was the basis for the Ambassador's Code. Our custom module contained the code that worked along with, and modified behavior of Ubercart Discount Coupons Module, for example to add the means to link the codes between Ambassadors and their Customers.</p>
<p>We also had to create quite a few custom pages, a significant one being a "dashboard" page for the Brand Ambassador to view current status of orders and commissions relevant to their membership.</p>
<p><b>Brand Ambassador Recruitment</b></p>
<p>ClearMetrics developed an offline-online system that would allow Twinlab to recruit and screen candidates without hiring or contracting recruitment positions. </p>
<p><img src="http://drupal.org/files/Profile_small.png" align="center" hspace="5" vspace="5" /></p>
<p>Twinlab already had a large outside sales staff selling sports supplements to stores and sports organizations around the country. When salespeople came across individuals who would make good ambassadors, they told them about the program, and generated a personalized code that allowed the candidates to log-in to a special section of Twinlab.com to undergo an automated screening process.</p>
<p><b>Screening Tool</b></p>
<p>This process began on the front page of the site, where a simple custom form collected the special brand ambassador registration coupon code, validated it against the UC Coupon system, and allowed users to register to apply to become brand ambassadors. </p>
<p>This initial form is a case of using Drupal's excellent <a href="http://drupal.org/node/751826">Form API</a> to create some unusual functionality.  The form's button is tied to a client-side jquery script that is able to call a server-side function to evaluate the coupon code value entered into the field, and give meaningful feedback to the user into a div defined as an item of the form, before the form executes its action.  The form executes dupal_add_js to add the jquery in the right contexts.  This was necessary in order to provide direct feedback on the code via an overlay, without moving the user from the page.</p>
<p>As part of the applications, candidates had to pass an online quiz that tested their knowledge of supplement safety and regulations.   The <a href="http://drupal.org/project/webform">Webform Module</a> came through with flying colors, allowing great flexibility in defining various types of questions, and defining appropriate responses and actions based on the candidate's submission.</p>
<p>Candidates were also required to put in their credit card information (which was subject to $1 verification charge) in order to confirm their identity and address. Ubercart was used to handle the ecommerce portion of the site.  The progression of the candidate to the next phase was handled through UC Coupon by having applicants “purchase” a membership package for $1.</p>
<p>Upon checkout, a conditional action, configured entirely in Ubercart, was triggered to send an email message informing the applicant of next steps.</p>
<p><img src="http://drupal.org/files/RegistrationCompleteScreen Small.png" align="center" hspace="5" vspace="5" /></p>
<p>After they completed these tasks, their application was forwarded to Twinlab managers for final approval.  Again, conditional actions provided by <a href="http://drupal.org/project/ubercart">Ubercart</a> allowed us to set up the notification system, entirely through site administration forms. This system was optimal for Twinlab because it combined the speed of automatic registration and screening with ultimate human control of who was representing the brand.</p>
<p><b>Code-Based Incentives</b></p>
<p>To provide a proper incentive for its brand ambassadors to spread the word about Twinlab products, the company wanted to provide them with a portion of every sale they referred to Twinlab.com. The model was similar to an affiliate program for web sites, the only difference being that brand ambassadors do most of their referrals offline, not online.</p>
<p>When the prospective brand ambassador successfully completed the registration and it was approved by the staff, the user was granted the brand ambassador role, which permitted them access to content and tools provided exclusively to brand ambassadors.  Thanks to Drupal's role-based user permission system, this ability was already available.</p>
<p>Using Drupal's <a href="http://api.drupal.org/api/drupal/developer--hooks--core.php/function/hook_user/6">hook_user</a>, when the brand ambassador role is granted to a user, the system generates a new, individualized coupon just for that brand ambassador, to give to his or her customers.  This special coupon is linked to the brand ambassador’s system profile, so that all purchases made using that coupon are tracked.  Finally, all of this information is emailed to the brand ambassador, through a straightforward call to Drupal's <a href="http://api.drupal.org/api/drupal/developer--hooks--core.php/function/hook_mail/6">hook_mail</a>.</p>
<p>The brand ambassador would hand out the codes to customers. When the customers entered the codes while shopping at Twinlab.com, they got a discount.  This functionality was entirely handled by the uc_coupon module. Through the uc_order hook, the sale was then attached to the brand ambassador’s profile through the association with the coupon itself, and a portion of it credited to their account.</p>
<p><img src="http://drupal.org/files/BannerAd.png" align="center" hspace="5" vspace="5" /></p>
<p>Realizing that brand ambassadors were also influencing people online and through social media, ISL created badges that the ambassadors could embed on their blogs and profiles. Brand Ambassadors were provided html code that would render their personalized badges, which would link to the Twinlab.com product catalog, with data in the querystring that set the incoming visitor’s session with the value of the brand ambassador’s customer coupon code.  This value was used to populate the coupon code entry in the checkout page with the value of the customer’s coupon code. Therefore, by clicking on the badges, users were navigated to Twinlab.com and received a discount on all purchases made in that session. Like the offline codes, these purchases were trackable.</p>
<p><b>Brand Ambassador Dashboard</b></p>
<p>When their applications were approved, brand ambassadors were given access to an exclusive dashboard on Twinlab.com. Simple and easy to navigate, the purpose of the dashboard was to give the ambassadors all the materials and information they needed to represent the brand.</p>
<p><img src="http://drupal.org/files/Resources1.png" align="left" hspace="5" vspace="5" /></p>
<p>The dashboard was a highly customized feature that was added as a series of contextual menu items in the user’s profile as defined by hook_menu.  This allowed the user to access these features, along with all of the information and management provided by Drupal and the modules supporting this program, such as the contentprofile module.  Drupal’s hook system allowed us to place the elements of brand ambassador-specific information into the appropriate places within existing account and profile information.</p>
<p>From the dashboard, the ambassadors could download pamphlets, sales sheets, product information, tutorials, e-mail templates, and a variety of other brand collateral. Twinlab could upload new collateral and relevant messages to all ambassador dashboards with just one-click: a big improvement over the alternatives, like sending out unwieldy e-mails to mass list.</p>
<p>The dashboard also aggregated code-based sales for the ambassadors, so they could see how much they had earned through consumer purchases. They could also see who was buying, and through what channels, so they could gauge the effectiveness of their efforts and improve their performance.</p>
<p><img src="http://drupal.org/files/Dashboard Small.png" align="center" hspace="5" vspace="5" /></p>
<p>The biggest advantage of the dashboard was its speed and ease of use. Ambassadors could get collateral and the sales information when they needed it, just by logging in.</p>
<p>The site is hosted at Rackspace on a dedicated server on a multi-domain installation that runs a number of other sites. </p>
<p><b>Other Contributed Modules</b><br />
There are many modules used on the Twinlab.com site.  The primary contributed modules used by the Brand Ambassador system were <a href="http://drupal.org/project/uc_coupon">uc_coupon</a>, <a href="http://drupal.org/project/email_registration">email_registration</a>, <a href="http://drupal.org/project/cck">cck</a>, <a href="http://drupal.org/project/content_profile">content_profile</a>, <a href="http://drupal.org/project/securepages">securepages</a>, <a href="http://drupal.org/project/stc_taxes">stc_taxes</a>, <a href="http://drupal.org/project/webform">webform</a>, and, of course, <a href="http://drupal.org/project/views">views</a>.</p>
<p><b>Results</b></p>
<p>The new Drupal-based system has allowed Twinlab to expand its brand ambassador program and boost website sales. Since implementation, the number of Twinlab brand ambassadors has increased and web sales have jumped.</p>
<p>“The ambassador program has done more than just boost sales though,” said Marc Stover, director of marketing at Twinlab. “It’s enhanced our brand. Every day, hundreds of consumers are learning about our products from experts they trust. You can’t buy that sort of connection. And it’s something we wouldn’t have been able to do without this web-based tool.”</p>
<p><b>ISL Consulting and ClearMetrics</b></p>
<p><a href="http://www.islco.com" target="_0">ISL Consulting</a> is a San Francisco-based web development agency founded in 1993 that has built numerous Drupal websites. <a href="http://www.clearmetrics.com" target="_0">ClearMetrics</a> is our New-York based partner that focuses on advertising and media campaigns as well as marketing tools that drive users to take action on websites or in the real world. Together, we’ve built a number of e-commerce and social business sites.</p>
<p>The project was run by a client Project Manager, a Business Analyst and Project Manager on our side,  a lead developer and architect, a themer and designer with support for set-up, planning and database issues from another senior engineer and database administrator. As is often the case in these kinds of sites, our developers play an important role with the Business Analyst during the planning phases to explain options to clients. This allows us to best bring Drupal functionality and modules to bear on their business objectives.</p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fbuilding-a-brand-ambassador-system-with-drupal%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fbuilding-a-brand-ambassador-system-with-drupal%2F" height="61" width="51" /></a></div><p><a href="http://www.twinlabfuel.com/" border="0"><img src="http://drupal.org/files/WelcomeToRegistration_0.png" align="right" hspace="5" vspace="5" width="320" /></a>Brands are increasingly turning to brand ambassadors to market their products. Ambassadors are individuals with credibility in a given area who are hired by a brand to introduce consumers to a given product and educate them about its advantages. </p>
<p>Liquor companies, for example, often hire bartenders as brand ambassadors. The bartenders / brand ambassadors then tell their customers about the company’s brand of gin, and train other bartenders in making signature cocktails with that gin. </p>
<p>Brand ambassadors provide companies and products with valuable credibility. Wouldn’t you trust a liquor recommendation that came from a bartender over one that came from a salesperson?</p>
<p>The downside is logistics. Creating a regional or national team of brand ambassadors requires big investments in recruitment, training and management.</p>
<p>With Drupal however, you can create an online system that helps recruit, manage and monitor brand ambassadors with much less investment.</p>
<p>This project was another collaboration between design and development shop <a href="http://www.islco.com" >ISL Consulting</a> in San Francisco, and <a href="http://www.clearmetrics.com" >ClearMetrics</a> digital agency in New York.</p>
<p><!--break--><!--break-->
<p><b>The Problem</b></p>
<p>The client, Twinlab, is a major manufacturer of sports nutrition supplements. They wanted to set up a brand ambassador program from scratch, and they had two overriding goals:</p>
<p>	1.) <b>Excellent Applicant Screening</b>:  The sale and marketing of sports nutrition supplements is extensively regulated at federal and state levels. As a result, Twinlab couldn’t hire just any personal trainer or gym employee to be a brand ambassador. They needed to find and screen candidates with extensive knowledge of supplements and supplement regulations.</p>
<p>	2.) <b>Incentives</b>: Twinlab wanted its brand ambassadors to steer people to its online store, Twinlab.com, to buy product. To do that effectively, Twinlab needed to reward the ambassadors each time a consumer they referred to the site made a purchase. In essence, they need to set up an offline affiliate program.</p>
<p>       3.) <b>Flexible Support</b>: The brand ambassadors were to be contractors, working independently in their local markets to raise awareness of Twinlab. They wouldn’t have constant, face-to-face contact with Twinlab marketing staff. As a result, the company needed a way to get the ambassadors new product information and sales collateral (like brochures, posters, signage, etc.) quickly.</p>
<p>Costs had to be kept at a minimum in achieving all these goals. Twinlab couldn’t hire a full-time staff to hire and manage its brand ambassadors. All these tasks would have to be centralized and simplified by an online system.</p>
<p>Drupal was chosen because the client was already running Ubercart with the coupon module  very successfully. This site was added to a multi-domain installation so that products could be shared from other sites with this site. </p>
<p><b>The Star Player of the System: <a href="http://drupal.org/project/uc_coupon">Ubercart Discount Coupons Module</a></b></p>
<p>The primary task of this online system was to identify brand ambassadors and customers who had been referred to Twinlab.com by brand ambassadors. The simplest way to identify or “tag” an ambassador or customer was to provide them with specific codes that they could enter into the system during key transactions.</p>
<p><img src="http://drupal.org/files/EnterCode.png" align="left" hspace="5" vspace="5" /></p>
<p>The processes behind the codes used in this program are complicated, but they are largely handled by the <a href="http://drupal.org/project/uc_coupon">Ubercart Discount Coupons (UC Coupon) Module</a>.  This module provides the ability to input or generate codes that create various types of discounts in purchasing goods.  These codes have some powerful options.  They can be set to become active and inactive at certain times, and they can be configured to specify who can redeem them, product requirements, and how many times they can be redeemed.  Furthermore, the module provides the administrative interface for managing the coupons and providing reports on their usage.</p>
<p><b>Custom Module</b><br />
There was a fair amount of custom code needed to accomplish the unique requirements of the Brand Ambassador system. However, Drupal&#8217;s architecture and the features provided by existing contributed modules allowed us to create a custom module that allowed us to use existing, tested code from the Community as our foundation, and add &#8220;glue&#8221; and customization where needed.</p>
<p>Much of the custom module had to do with modifying the functionality of the Ubercart Discount Coupons Module. A coupon, as set up and controlled by this module, was the basis for the Ambassador&#8217;s Code. Our custom module contained the code that worked along with, and modified behavior of Ubercart Discount Coupons Module, for example to add the means to link the codes between Ambassadors and their Customers.</p>
<p>We also had to create quite a few custom pages, a significant one being a &#8220;dashboard&#8221; page for the Brand Ambassador to view current status of orders and commissions relevant to their membership.</p>
<p><b>Brand Ambassador Recruitment</b></p>
<p>ClearMetrics developed an offline-online system that would allow Twinlab to recruit and screen candidates without hiring or contracting recruitment positions. </p>
<p><img src="http://drupal.org/files/Profile_small.png" align="center" hspace="5" vspace="5" /></p>
<p>Twinlab already had a large outside sales staff selling sports supplements to stores and sports organizations around the country. When salespeople came across individuals who would make good ambassadors, they told them about the program, and generated a personalized code that allowed the candidates to log-in to a special section of Twinlab.com to undergo an automated screening process.</p>
<p><b>Screening Tool</b></p>
<p>This process began on the front page of the site, where a simple custom form collected the special brand ambassador registration coupon code, validated it against the UC Coupon system, and allowed users to register to apply to become brand ambassadors. </p>
<p>This initial form is a case of using Drupal&#8217;s excellent <a href="http://drupal.org/node/751826">Form API</a> to create some unusual functionality.  The form&#8217;s button is tied to a client-side jquery script that is able to call a server-side function to evaluate the coupon code value entered into the field, and give meaningful feedback to the user into a div defined as an item of the form, before the form executes its action.  The form executes dupal_add_js to add the jquery in the right contexts.  This was necessary in order to provide direct feedback on the code via an overlay, without moving the user from the page.</p>
<p>As part of the applications, candidates had to pass an online quiz that tested their knowledge of supplement safety and regulations.   The <a href="http://drupal.org/project/webform">Webform Module</a> came through with flying colors, allowing great flexibility in defining various types of questions, and defining appropriate responses and actions based on the candidate&#8217;s submission.</p>
<p>Candidates were also required to put in their credit card information (which was subject to $1 verification charge) in order to confirm their identity and address. Ubercart was used to handle the ecommerce portion of the site.  The progression of the candidate to the next phase was handled through UC Coupon by having applicants “purchase” a membership package for $1.</p>
<p>Upon checkout, a conditional action, configured entirely in Ubercart, was triggered to send an email message informing the applicant of next steps.</p>
<p><img src="http://drupal.org/files/RegistrationCompleteScreen%20Small.png" align="center" hspace="5" vspace="5" /></p>
<p>After they completed these tasks, their application was forwarded to Twinlab managers for final approval.  Again, conditional actions provided by <a href="http://drupal.org/project/ubercart">Ubercart</a> allowed us to set up the notification system, entirely through site administration forms. This system was optimal for Twinlab because it combined the speed of automatic registration and screening with ultimate human control of who was representing the brand.</p>
<p><b>Code-Based Incentives</b></p>
<p>To provide a proper incentive for its brand ambassadors to spread the word about Twinlab products, the company wanted to provide them with a portion of every sale they referred to Twinlab.com. The model was similar to an affiliate program for web sites, the only difference being that brand ambassadors do most of their referrals offline, not online.</p>
<p>When the prospective brand ambassador successfully completed the registration and it was approved by the staff, the user was granted the brand ambassador role, which permitted them access to content and tools provided exclusively to brand ambassadors.  Thanks to Drupal&#8217;s role-based user permission system, this ability was already available.</p>
<p>Using Drupal&#8217;s <a href="http://api.drupal.org/api/drupal/developer--hooks--core.php/function/hook_user/6">hook_user</a>, when the brand ambassador role is granted to a user, the system generates a new, individualized coupon just for that brand ambassador, to give to his or her customers.  This special coupon is linked to the brand ambassador’s system profile, so that all purchases made using that coupon are tracked.  Finally, all of this information is emailed to the brand ambassador, through a straightforward call to Drupal&#8217;s <a href="http://api.drupal.org/api/drupal/developer--hooks--core.php/function/hook_mail/6">hook_mail</a>.</p>
<p>The brand ambassador would hand out the codes to customers. When the customers entered the codes while shopping at Twinlab.com, they got a discount.  This functionality was entirely handled by the uc_coupon module. Through the uc_order hook, the sale was then attached to the brand ambassador’s profile through the association with the coupon itself, and a portion of it credited to their account.</p>
<p><img src="http://drupal.org/files/BannerAd.png" align="center" hspace="5" vspace="5" /></p>
<p>Realizing that brand ambassadors were also influencing people online and through social media, ISL created badges that the ambassadors could embed on their blogs and profiles. Brand Ambassadors were provided html code that would render their personalized badges, which would link to the Twinlab.com product catalog, with data in the querystring that set the incoming visitor’s session with the value of the brand ambassador’s customer coupon code.  This value was used to populate the coupon code entry in the checkout page with the value of the customer’s coupon code. Therefore, by clicking on the badges, users were navigated to Twinlab.com and received a discount on all purchases made in that session. Like the offline codes, these purchases were trackable.</p>
<p><b>Brand Ambassador Dashboard</b></p>
<p>When their applications were approved, brand ambassadors were given access to an exclusive dashboard on Twinlab.com. Simple and easy to navigate, the purpose of the dashboard was to give the ambassadors all the materials and information they needed to represent the brand.</p>
<p><img src="http://drupal.org/files/Resources1.png" align="left" hspace="5" vspace="5" /></p>
<p>The dashboard was a highly customized feature that was added as a series of contextual menu items in the user’s profile as defined by hook_menu.  This allowed the user to access these features, along with all of the information and management provided by Drupal and the modules supporting this program, such as the contentprofile module.  Drupal’s hook system allowed us to place the elements of brand ambassador-specific information into the appropriate places within existing account and profile information.</p>
<p>From the dashboard, the ambassadors could download pamphlets, sales sheets, product information, tutorials, e-mail templates, and a variety of other brand collateral. Twinlab could upload new collateral and relevant messages to all ambassador dashboards with just one-click: a big improvement over the alternatives, like sending out unwieldy e-mails to mass list.</p>
<p>The dashboard also aggregated code-based sales for the ambassadors, so they could see how much they had earned through consumer purchases. They could also see who was buying, and through what channels, so they could gauge the effectiveness of their efforts and improve their performance.</p>
<p><img src="http://drupal.org/files/Dashboard%20Small.png" align="center" hspace="5" vspace="5" /></p>
<p>The biggest advantage of the dashboard was its speed and ease of use. Ambassadors could get collateral and the sales information when they needed it, just by logging in.</p>
<p>The site is hosted at Rackspace on a dedicated server on a multi-domain installation that runs a number of other sites. </p>
<p><b>Other Contributed Modules</b><br />
There are many modules used on the Twinlab.com site.  The primary contributed modules used by the Brand Ambassador system were <a href="http://drupal.org/project/uc_coupon">uc_coupon</a>, <a href="http://drupal.org/project/email_registration">email_registration</a>, <a href="http://drupal.org/project/cck">cck</a>, <a href="http://drupal.org/project/content_profile">content_profile</a>, <a href="http://drupal.org/project/securepages">securepages</a>, <a href="http://drupal.org/project/stc_taxes">stc_taxes</a>, <a href="http://drupal.org/project/webform">webform</a>, and, of course, <a href="http://drupal.org/project/views">views</a>.</p>
<p><b>Results</b></p>
<p>The new Drupal-based system has allowed Twinlab to expand its brand ambassador program and boost website sales. Since implementation, the number of Twinlab brand ambassadors has increased and web sales have jumped.</p>
<p>“The ambassador program has done more than just boost sales though,” said Marc Stover, director of marketing at Twinlab. “It’s enhanced our brand. Every day, hundreds of consumers are learning about our products from experts they trust. You can’t buy that sort of connection. And it’s something we wouldn’t have been able to do without this web-based tool.”</p>
<p><b>ISL Consulting and ClearMetrics</b></p>
<p><a href="http://www.islco.com" >ISL Consulting</a> is a San Francisco-based web development agency founded in 1993 that has built numerous Drupal websites. <a href="http://www.clearmetrics.com" >ClearMetrics</a> is our New-York based partner that focuses on advertising and media campaigns as well as marketing tools that drive users to take action on websites or in the real world. Together, we’ve built a number of e-commerce and social business sites.</p>
<p>The project was run by a client Project Manager, a Business Analyst and Project Manager on our side,  a lead developer and architect, a themer and designer with support for set-up, planning and database issues from another senior engineer and database administrator. As is often the case in these kinds of sites, our developers play an important role with the Business Analyst during the planning phases to explain options to clients. This allows us to best bring Drupal functionality and modules to bear on their business objectives.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/building-a-brand-ambassador-system-with-drupal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IT Dashboard</title>
		<link>http://www.connexx-contentmanagement.nl/it-dashboard/</link>
		<comments>http://www.connexx-contentmanagement.nl/it-dashboard/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 14:21:05 +0000</pubDate>
		<dc:creator>rjivan</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[Drupal showcase]]></category>

		<guid isPermaLink="false">1100308 at http://drupal.org</guid>
		<description><![CDATA[<p><img src="http://drupal.org/files/itdash280px.png" class="right" />
</p><p>The <a href="http://www.itdashboard.gov">IT Dashboard</a> is a management tool for the United States federal government CIOs to use in overseeing their IT spending. To support transparency and open government initiatives, Federal decision makers also chose to make the IT Dashboard available to the general public. In the IT Dashboard, members of the public can view the same data about performance that government officials use.
</p>
<h2>Background</h2>
<p>
In June 2009, Federal IT leaders asked two questions about their IT budgets. These questions are common in the commercial world, but have been difficult to answer in the public sector:
</p>
<ul>
<li>Where are our IT dollars going?</li>
<li>Are we getting value from our investments?</li>
</ul>
<p>
The answer to these questions is a website that gives insight into the acquisition and management of the federal government's $75 billion-plus IT portfolio. The result is the IT Dashboard, a site built in  collaboration with the government's most senior IT leaders and nearly every federal agency.
</p>
<h2>Purpose of the IT Dashboard</h2>
<p>
The IT Dashboard provides full lifecycle performance information on IT projects' scope and status. The data allows users to see project status, spot problems and trends, manage performance and quality expectations, and establish accountability. The tool is useful to the public and to government IT leaders who plan and manage IT investments. The home page screen shown above gives an overview of the tool.
</p>
<p>
IT Dashboard’s value comes from several facets:
</p>
<ul>
<li>Mashing-up data from multiple data sets (IT project justification, schedule/status, expenditures, contractors.)</li>
<li>Ensuring that real-time and complete data is available.</li>
<li>Presenting the data and comparisons in ways that are visual and easy to drill into.</li>
<li>Providing only high-level data that doesn't overwhelm the viewer.</li>
</ul>
<h2>Site Design and Functionality</h2>
<p><img src="http://drupal.org/files/itdb-architecture3-1.png" /></p>
<p>
Originally conceived as a PHP application, the IT Dashboard evolved to a Drupal-based application, employing the Drupal API, several modules, and basic theming. While not all functionality is built in a customary Drupal way, we have modified all pages so that they can be accessed using menu hooks. The advantage of using such hooks is that now all those pages can use the Drupal API, and contributed modules, without worrying about whether or not Drupal has been properly bootstrapped.
</p>
<p>
One of the primary requirements was that REI Systems deploy the IT Dashboard rapidly. Since the source datasets were already available, developers avoided the need for a data migration step by working with the existing data model. With a working data model and Drupal’s easy-to-use components, we went to initial release in under six weeks. Since the launch in 2009 active development has been ongoing.
</p>
<p>
Another requirement was that the IT Dashboard incorporate captivating and practical data visualizations. To meet these requirements several visualization libraries are used across the site. FusionCharts drives most of the bar, pie and line graphs throughout the site. Google Motion Charts and JuiceKit power the more advanced Tools section of the site.
</p>
<p>
Initial plan was for agencies to enter monthly updates through data entry screens. However, this approach quickly led to delays and data quality issues. To address these issues, we introduced an XML API, allowing for system-to-system integration between the IT Dashboard and the systems used by more than 26 Federal agencies.
</p>
<p>
Access authentication for data providers is handled by integrating with an existing security system, included within the OMB's MAX system -- the tool used by federal agencies to enter and report official budgetary data. This integration was accomplished by extending the Drupal Central Authentication Services module (CAS), which controls role-based data access at both the application and database levels. The application makes certain data visible to the user only if they have appropriate permissions; otherwise, the user is limited to viewing only the publicly available data and graphics. User credentials are propagated to the database and are stored in a database session. This information is used by the Database Views module to enforce authentication and authorization rules.
</p>
<p>
The use of the FusionCharts library, which uses the Adobe Flash plug-in for rendering, meant that many mobile users were not able to easily access the same information as desktop users. To address the growing need for mobile use, a mobile-friendly version of the website was rolled out using the jqTouch library and the javascript visualization library flot.
</p>
<p>
Apache SOLR powers the search capability. A private SOLR index is used for authenticated users and a public SOLR index with a subset of the data is used for anonymous users.
</p>
<h2>Infrastructure</h2>
<p>
To support easy scalability and accessibility, the IT Dashboard resides in the cloud.
</p>
<p>
The federal government selected a technical environment that is robust; provides Infrastructure as a Service (IaaS); offers high levels of security, scalability, reliability and accessibility; and has a security plan and existing capabilities to protect publicly accessible web sites that disclose government information.
</p>
<p>
The IT Dashboard leverages a Content Delivery Network (CDN) structure for the public portion of the website to improve overall system performance. Business data is stored in a separate MySQL database; the Drupal database contains only Drupal-specific configuration information, along with static content.
</p>
<p>
The infrastructure was selected to support a tool open to use by more than 26 government agencies, members of Congress, the IT vendor community, and the general public - whomever may have some interest in the federal government IT investments.
</p>
<h2>Module Use</h2>
<p><strong>Contributed Modules</strong></p>
<p>Major modules that were used were:</p>
<ul>
<li><a href="http://drupal.org/project/cas">CAS</a> - Integrates with existing OMB CAS implementation named MAX.</li>
<li><a href="http://drupal.org/project/cck">CCK</a> - Used for data entry and file uploads.</li>
<li><a href="http://drupal.org/project/clamav">ClamAV</a> - Scan attachments for viruses.</li>
<li><a href="http://drupal.org/project/context">Context</a> - Used for page layout.</li>
<li><a href="http://drupal.org/project/skinr">Skinr</a> - Allows easy application of a pre-built style library to blocks.</li>
<li><a href="http://drupal.org/project/themekey">ThemeKey</a> - Eases transition from old theme to new theme on per page basis.</li>
<li><a href="http://drupal.org/project/views">Views 3</a> - Allowed us to plug in our own query backend, necessary to access separate application database.</li>
</ul>
<p><strong>Custom Modules</strong></p>
<p>The following custom modules were developed for the IT Dashboard:</p>
<ul>
<li>Data Controller - A Views 3 Datasource plugin that has support for aggregations and efficient query generation.</li>
<li>PHP Dataset - Describe data sets for views using custom PHP code. We are using this to drive views that require data from the application database.</li>
<li>Views FusionCharts - Display style plugin to render view output as a FusionChart. This module is compatible with Views 2 and 3.</li>
</ul>
<p><img src="http://drupal.org/files/viewsFusionChart620_0.png" /></p>
<h2>Challenges and Lessons Learned</h2>
<p>
We learned one significant lesson through this effort, namely that Drupal APIs were more versatile than we had originally believed. Our work on the IT Dashboard started initially with a PHP application, not using any Drupal APIs. We found several problems with this approach, each of which make system maintenance more complex and error-prone:
</p>
<ul>
<li>The logic in SQL queries tended not to be re-used.</li>
<li>Security items need to be addressed separately for each page viewed.</li>
<li>There was not clear separation between logic and presentation.</li>
</ul>
<p>
Upon observing these problems, and gaining confidence in Drupal APIs, we revised several pages to use the Views module, which allowed us to:
</p>
<ul>
<li>Centralize the logic of most queries in View Default.</li>
<li>Establish a clean separation between View logic and View display.</li>
<li>Most SQL-injection and XSS issues are already addressed in the code of the contributed modules.</li>
</ul>
<p>
As with any complex development effort, we met several challenges, and learned lessons that may benefit others in the community. The most significant challenges included:
</p>
<ul>
<li>
<p><strong>Reconciling preferences of different stakeholders for different visualization and layouts in order to take advantage of Drupal's strength in a consistent presentation style.</strong>
</p>
<p>
Drupal offers many ways to utilize templates and generic modules to implement a consistent look and feel across many screens. However the quick turnaround and occasionally conflicting preferences from different stakeholders made it difficult to develop an overall design that leveraged this Drupal strength. We have made a number of revisions since launch to improve consistency and we plan to address this challenge by spending more time up-front on mock-ups, and facilitating agreement across stakeholders on the end-state vision.
</p>
</li>
<li>
<p><strong>Legacy system includes a data model that isn't suited to new uses.</strong></p>
<p>
The IT Dashboard has a separate application database that originated from a previous system. We addressed the challenge of accessing this database by using a custom query plugin for the Views 3 module.
</p>
</li>
<li>
<p>
<strong>Facilitating expansion/collapse of table data detail to suit user preferences (an example of custom display functionality).</strong>
</p>
<p>
Many IT Dashboard screens have custom functionality, which could not be satisfied by the Views module at a basic level. For example, some screens offer a table view of data. However, the desire not to overwhelm all users with the full set of data led to a decision that some rows should offer an "expand" button to allow drill-down capability at the user's option. Implementing this customized functionality required custom coding.
</p>
</li>
</ul>
<h2>Project Team</h2>
<p>The site is currently operated by a nine member team, composed of the following roles:</p>
<ul>
<li>4 Drupal developers</li>
<li>1 database developer</li>
<li>1 QA engineer</li>
<li>2 business analyst</li>
<li>1 project manager</li>
</ul>
<h2>Additional Information</h2>
<p>
REI Systems is a leading provider of web-enabled, database-driven knowledge management and performance support solutions for federal agencies, state and local governments, and the commercial and industrial sector. For more information, please visit us at <a href="http://drupal.reisys.com">http://drupal.reisys.com.</a>
</p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fit-dashboard%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fit-dashboard%2F" height="61" width="51" /></a></div><p><img src="http://drupal.org/files/itdash280px.png" class="right" />
</p>
<p>The <a href="http://www.itdashboard.gov"  alt="IT Dashboard">IT Dashboard</a> is a management tool for the United States federal government CIOs to use in overseeing their IT spending. To support transparency and open government initiatives, Federal decision makers also chose to make the IT Dashboard available to the general public. In the IT Dashboard, members of the public can view the same data about performance that government officials use.
</p>
<h2>Background</h2>
<p>
In June 2009, Federal IT leaders asked two questions about their IT budgets. These questions are common in the commercial world, but have been difficult to answer in the public sector:
</p>
<ul>
<li>Where are our IT dollars going?</li>
<li>Are we getting value from our investments?</li>
</ul>
<p>
The answer to these questions is a website that gives insight into the acquisition and management of the federal government&#8217;s $75 billion-plus IT portfolio. The result is the IT Dashboard, a site built in  collaboration with the government&#8217;s most senior IT leaders and nearly every federal agency.
</p>
<h2>Purpose of the IT Dashboard</h2>
<p>
The IT Dashboard provides full lifecycle performance information on IT projects&#8217; scope and status. The data allows users to see project status, spot problems and trends, manage performance and quality expectations, and establish accountability. The tool is useful to the public and to government IT leaders who plan and manage IT investments. The home page screen shown above gives an overview of the tool.
</p>
<p>
IT Dashboard’s value comes from several facets:
</p>
<ul>
<li>Mashing-up data from multiple data sets (IT project justification, schedule/status, expenditures, contractors.)</li>
<li>Ensuring that real-time and complete data is available.</li>
<li>Presenting the data and comparisons in ways that are visual and easy to drill into.</li>
<li>Providing only high-level data that doesn&#8217;t overwhelm the viewer.</li>
</ul>
<h2>Site Design and Functionality</h2>
<p><img src="http://drupal.org/files/itdb-architecture3-1.png" /></p>
<p>
Originally conceived as a PHP application, the IT Dashboard evolved to a Drupal-based application, employing the Drupal API, several modules, and basic theming. While not all functionality is built in a customary Drupal way, we have modified all pages so that they can be accessed using menu hooks. The advantage of using such hooks is that now all those pages can use the Drupal API, and contributed modules, without worrying about whether or not Drupal has been properly bootstrapped.
</p>
<p>
One of the primary requirements was that REI Systems deploy the IT Dashboard rapidly. Since the source datasets were already available, developers avoided the need for a data migration step by working with the existing data model. With a working data model and Drupal’s easy-to-use components, we went to initial release in under six weeks. Since the launch in 2009 active development has been ongoing.
</p>
<p>
Another requirement was that the IT Dashboard incorporate captivating and practical data visualizations. To meet these requirements several visualization libraries are used across the site. FusionCharts drives most of the bar, pie and line graphs throughout the site. Google Motion Charts and JuiceKit power the more advanced Tools section of the site.
</p>
<p>
Initial plan was for agencies to enter monthly updates through data entry screens. However, this approach quickly led to delays and data quality issues. To address these issues, we introduced an XML API, allowing for system-to-system integration between the IT Dashboard and the systems used by more than 26 Federal agencies.
</p>
<p>
Access authentication for data providers is handled by integrating with an existing security system, included within the OMB&#8217;s MAX system &#8212; the tool used by federal agencies to enter and report official budgetary data. This integration was accomplished by extending the Drupal Central Authentication Services module (CAS), which controls role-based data access at both the application and database levels. The application makes certain data visible to the user only if they have appropriate permissions; otherwise, the user is limited to viewing only the publicly available data and graphics. User credentials are propagated to the database and are stored in a database session. This information is used by the Database Views module to enforce authentication and authorization rules.
</p>
<p>
The use of the FusionCharts library, which uses the Adobe Flash plug-in for rendering, meant that many mobile users were not able to easily access the same information as desktop users. To address the growing need for mobile use, a mobile-friendly version of the website was rolled out using the jqTouch library and the javascript visualization library flot.
</p>
<p>
Apache SOLR powers the search capability. A private SOLR index is used for authenticated users and a public SOLR index with a subset of the data is used for anonymous users.
</p>
<h2>Infrastructure</h2>
<p>
To support easy scalability and accessibility, the IT Dashboard resides in the cloud.
</p>
<p>
The federal government selected a technical environment that is robust; provides Infrastructure as a Service (IaaS); offers high levels of security, scalability, reliability and accessibility; and has a security plan and existing capabilities to protect publicly accessible web sites that disclose government information.
</p>
<p>
The IT Dashboard leverages a Content Delivery Network (CDN) structure for the public portion of the website to improve overall system performance. Business data is stored in a separate MySQL database; the Drupal database contains only Drupal-specific configuration information, along with static content.
</p>
<p>
The infrastructure was selected to support a tool open to use by more than 26 government agencies, members of Congress, the IT vendor community, and the general public &#8211; whomever may have some interest in the federal government IT investments.
</p>
<h2>Module Use</h2>
<p><strong>Contributed Modules</strong></p>
<p>Major modules that were used were:</p>
<ul>
<li><a href="http://drupal.org/project/cas">CAS</a> &#8211; Integrates with existing OMB CAS implementation named MAX.</li>
<li><a href="http://drupal.org/project/cck">CCK</a> &#8211; Used for data entry and file uploads.</li>
<li><a href="http://drupal.org/project/clamav">ClamAV</a> &#8211; Scan attachments for viruses.</li>
<li><a href="http://drupal.org/project/context">Context</a> &#8211; Used for page layout.</li>
<li><a href="http://drupal.org/project/skinr">Skinr</a> &#8211; Allows easy application of a pre-built style library to blocks.</li>
<li><a href="http://drupal.org/project/themekey">ThemeKey</a> &#8211; Eases transition from old theme to new theme on per page basis.</li>
<li><a href="http://drupal.org/project/views">Views 3</a> &#8211; Allowed us to plug in our own query backend, necessary to access separate application database.</li>
</ul>
<p><strong>Custom Modules</strong></p>
<p>The following custom modules were developed for the IT Dashboard:</p>
<ul>
<li>Data Controller &#8211; A Views 3 Datasource plugin that has support for aggregations and efficient query generation.</li>
<li>PHP Dataset &#8211; Describe data sets for views using custom PHP code. We are using this to drive views that require data from the application database.</li>
<li>Views FusionCharts &#8211; Display style plugin to render view output as a FusionChart. This module is compatible with Views 2 and 3.</li>
</ul>
<p><img src="http://drupal.org/files/viewsFusionChart620_0.png" /></p>
<h2>Challenges and Lessons Learned</h2>
<p>
We learned one significant lesson through this effort, namely that Drupal APIs were more versatile than we had originally believed. Our work on the IT Dashboard started initially with a PHP application, not using any Drupal APIs. We found several problems with this approach, each of which make system maintenance more complex and error-prone:
</p>
<ul>
<li>The logic in SQL queries tended not to be re-used.</li>
<li>Security items need to be addressed separately for each page viewed.</li>
<li>There was not clear separation between logic and presentation.</li>
</ul>
<p>
Upon observing these problems, and gaining confidence in Drupal APIs, we revised several pages to use the Views module, which allowed us to:
</p>
<ul>
<li>Centralize the logic of most queries in View Default.</li>
<li>Establish a clean separation between View logic and View display.</li>
<li>Most SQL-injection and XSS issues are already addressed in the code of the contributed modules.</li>
</ul>
<p>
As with any complex development effort, we met several challenges, and learned lessons that may benefit others in the community. The most significant challenges included:
</p>
<ul>
<li>
<p><strong>Reconciling preferences of different stakeholders for different visualization and layouts in order to take advantage of Drupal&#8217;s strength in a consistent presentation style.</strong>
</p>
<p>
Drupal offers many ways to utilize templates and generic modules to implement a consistent look and feel across many screens. However the quick turnaround and occasionally conflicting preferences from different stakeholders made it difficult to develop an overall design that leveraged this Drupal strength. We have made a number of revisions since launch to improve consistency and we plan to address this challenge by spending more time up-front on mock-ups, and facilitating agreement across stakeholders on the end-state vision.
</p>
</li>
<li>
<p><strong>Legacy system includes a data model that isn&#8217;t suited to new uses.</strong></p>
<p>
The IT Dashboard has a separate application database that originated from a previous system. We addressed the challenge of accessing this database by using a custom query plugin for the Views 3 module.
</p>
</li>
<li>
<p>
<strong>Facilitating expansion/collapse of table data detail to suit user preferences (an example of custom display functionality).</strong>
</p>
<p>
Many IT Dashboard screens have custom functionality, which could not be satisfied by the Views module at a basic level. For example, some screens offer a table view of data. However, the desire not to overwhelm all users with the full set of data led to a decision that some rows should offer an &#8220;expand&#8221; button to allow drill-down capability at the user&#8217;s option. Implementing this customized functionality required custom coding.
</p>
</li>
</ul>
<h2>Project Team</h2>
<p>The site is currently operated by a nine member team, composed of the following roles:</p>
<ul>
<li>4 Drupal developers</li>
<li>1 database developer</li>
<li>1 QA engineer</li>
<li>2 business analyst</li>
<li>1 project manager</li>
</ul>
<h2>Additional Information</h2>
<p>
REI Systems is a leading provider of web-enabled, database-driven knowledge management and performance support solutions for federal agencies, state and local governments, and the commercial and industrial sector. For more information, please visit us at <a href="http://drupal.reisys.com">http://drupal.reisys.com.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/it-dashboard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Symantec Connect &#8211; Social Business Software powered by Drupal</title>
		<link>http://www.connexx-contentmanagement.nl/symantec-connect-social-business-software-powered-by-drupal/</link>
		<comments>http://www.connexx-contentmanagement.nl/symantec-connect-social-business-software-powered-by-drupal/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 14:57:06 +0000</pubDate>
		<dc:creator>jeffrey.dalton</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[Drupal showcase]]></category>

		<guid isPermaLink="false">1061630 at http://drupal.org</guid>
		<description><![CDATA[<p><img src="http://drupal.org/files/symantec-connect-main-showcase.png" class="right" /></p>
<p><a target="_blank" href="http://www.symantec.com/connect" rel="nofollow">Symantec Connect</a> is an enterprise class, community-driven, social business support and information portal for Symantec products, offering users of Symantec’s deep catalog of applications and services a platform to interact with one another and Symantec employees through rich web-based tools. Connect enables the rapid publishing of information about the day-to-day use of Symantec products through key community-centric features which facilitate the customer’s ability to:</p>
<ul>
<li>Ask the community for help with issues and flag solutions when they are posted for easy discovery in the forums</li>
<li>Suggest and vote on product enhancements</li>
<li>Publish helper applications and scripts as community downloads</li>
<li>Publish user-submitted screencast videos for enhanced knowledge sharing</li>
<li>Build online/offline product centric user groups with events, private content publishing and messaging in the groups</li>
<li>Keep up with content on a variety of topics within the IT and security-related fields through articles and blog entries</li>
<li>Enjoy a highly qualified community experience enabled by a suite of Symantec employee moderation, organization, and publishing controls.</li>
</ul>
<p>All of these features also empower Symantec employees to quickly publish official versions of forum discussions, blog entries, articles, events, downloads, and videos while moderating and vetting content, helping steer the community in the right direction.</p>
<h2>A Brief History</h2>
<p>Symantec, founded in 1982, is one of the world's largest software companies with more than 17,500 employees in more than 40 countries. The company provides both security and storage and systems management solutions. Their customer base includes consumers, small businesses, and some of the world's largest global organizations. The company's phenomenal growth can be attributed to a combination of market acceptance and strategic acquisitions. </p>
<p>In early 2008, Symantec's Customer Experience team began crafting a roadmap designed to consolidate several existing support and discussion sites into a consistent, best-of-breed community offering. The goals of this consolidation were to:</p>
<ul>
<li>Give Symantec customers a single point of contact where they could engage with the company's support, marketing, and product management teams, </li>
<li>Draw on other customers experience and expertise, </li>
<li>Reduce the support and licensing costs of maintaining a collection of disparate community offerings.</li>
</ul>
<h2>Why Drupal?</h2>
<p>After considering the landscape of both proprietary and open-source solutions, Symantec decided to use Drupal as a foundation for their community initiative. Symantec recognized Drupal to be offering: </p>
<ul>
<li>a wealth of out of the box CMS and social media features and functionality</li>
<li>the ability to scale for high usage sites</li>
<li>the theme and development flexibility to customize the user experience quickly without the typical lag they had experienced requesting new features from proprietary vendors</li>
<li>a recognized developer community from which to draw quality development talent</li>
</ul>
<p>Symantec’s internal UX team even installed and configured rough prototypes in Drupal leveraging the vast library of existing contrib modules to experiment with various use cases for the upcoming project. This ability to rapidly create functional prototypes further cemented the choice of Drupal as the platform for development.</p>
<h2>The Team</h2>
<p>The project was structured to allow Symantec Customer Experience team to provide input on the design and planning of the site while collaborating with a group of  Drupal experts. Symantec’s internal team is augmented with Drupal expertise in the key areas needed for successful Drupal development.</p>
<ul>
<li><a target="_blank" href="http://www.webwiseone.com" rel="nofollow">WebWise Solutions Inc.</a> leads Connect’s project development and is the principle contact on the project providing long-standing expertise in Drupal-centric project management and user community development.  WebWise handles all day-to-day operations and oversight of everything from server deployment to administering the rewards system and offering a first line of customer support for the site’s users, all of which enables Symantec to focus on utilizing Connect to serve their customers instead of having to worry about maintaining the platform.</li>
<li><a target="_blank" href="http://www.tabsandspaces.com" rel="nofollow">Tabs &#38; Spaces Inc.</a> brings the heavy lifting of custom module development creating upwards of 50 custom modules to augment and extend Drupal to meet the unique needs of building a customer support community around a deep catalog of products and services.</li>
<li><a target="_blank" href="http://www.jeffreydalton.info" rel="nofollow">Jeffrey Dalton Design Inc.</a> adds the “hot sauce” of user experience centered design and theme work leveraging Drupal’s powerful theme system to tailor the interface to the specific needs of the community. After the initial launch the redesign process allowed Jeffrey Dalton Design to fully invest in re-visioning the theme and leveraging user feedback collected throughout the initial months of Connects operation. During this process the Symantec Corporation even went through a brand change of their own which was easily rolled into the new theme.</li>
<li><a target="_blank" href="http://www.tag1consulting.com" rel="nofollow">Tag1 Consulting</a> delivers the performance and scalability tuning that is essential for Drupal sites with millions of users. With multiple layers of content caching in multi-server configurations, world class scalability expertise allows Symantec Connect to continue it’s rapid growth in a high demand environment.</li>
</ul>
<p>This augmented team approach allows for rapid expansion of area-specific development expertise when new features and functionality are requested while minimizing Symantec’s development overhead.</p>
<h2>Initial Launch</h2>
<p>The initial effort (which took place over 6 months) involved merging the content and users from three disparate Symantec communities including:</p>
<ul>
<li>110,000 members from the "Symantec Technical Network" (STN) running on the Lithium platform</li>
<li>10,000 members from the "Altiris Support Forums" running on FuseTalk</li>
<li>20,000 members of the Altiris "Juice" community already running on Drupal in a separate Drupal 5 site </li>
<li>Hundreds of thousands of existing nodes and comments from these three systems. </li>
</ul>
<p>As of this writing Symantec Connect has matured to become the community destination for Symantec products with stats boasting:</p>
<ul>
<li>3,000,000+ unique page views each month </li>
<li>more than 206,000+ registered users</li>
<li>content base with 600,000+ combined nodes and comments (<a target="_blank" href="http://www.symantec.com/connect" rel="nofollow">and counting</a>)</li>
</ul>
<h3>The Redesign</h3>
<p>After the successful launch of Connect in March of 2009, the Connect team spent a portion of the next 18 months gathering user feedback and iterating through ways to improve the site experience. In the beginning of October 2010 Connect launched a totally redesigned theme. The redesign brought with it the freedom to use a more flexible iterative design processes in shaping the new interface. The team was able to focus more on the user experience side of the application and bring out new features aimed at improving the usability of Connect. The overarching goal being: make Connect easier and more intuitive to use and the community will grow both in the quality content and overall responsiveness.</p>
<h3>Site Navigation</h3>
<p> <img src="/files/symantec-connect-nav.png" class="right" /></p>
<p>One area of detailed focus was the site navigation. All site content, both official and user-generated, is created around a combination of content type and taxonomy terms categorizing nodes into “Communities” (ex. Backup and Archiving) and “Utilities” (ex. blogs, articles, downloads, videos, etc). A new site navigation system was needed that would make it easier to move between these communities and utilities and would clearly explain the relationship between them. Moving away from the original tabbed interface, a combination of an interactive two level drop down menus with the breadcrumb model of a site depth path was used to illustrate both the relationship of community to utility, and show a visual representation of where content lives in the hierarchy of the site. The selection of a community and its corresponding utility became possible with a single mouse gesture and click greatly simplifying the navigation tasks. The menu dropping down and then expanding on a per community basis also allowed for the interface to list all utilities available for the current community, while keeping the interface clean and uncluttered.</p>
<p><img src="/files/symantec-connect-utility.png" class="right" /></p>
<p>After some initial user testing a secondary utility only drop down was added, which becomes available in the second level of the breadcrumb once a user is within a given community, making it possible to quickly switch utilities within the same community.</p>
<p>The breadcrumb model then extends beyond the community &#62; utility selection and, when in context, offers further details as links to forum name, blog name, etc. and a single dynamic RSS feed element that remains contextually aware as the site is traversed.</p>
<p>Subtle JQuery animations further enhance the user experience of the menu with quick yet smooth state transitions. All animations were carefully refined to enhance usability without adding unneeded cruft solely for the sake of eye candy.</p>
<p><img src="/files/symantec-connect-user.png" class="right" /></p>
<p>Below the global navigation an authenticated user menu was added with:</p>
<ul>
<li>a user “Account” menu for quick access to account features</li>
<li>a “Create content” menu with easily identifiable iconography and short text descriptions making a direct one click route to add content</li>
<li>a custom “Share” menu to better visually integrate the share widgets into the site</li>
<li>an expandable video screencast help system to allow for in-page video help and user training</li>
</ul>
<h3>Context-Aware Search</h3>
<p>The main site search bar was enhanced making it contextually aware as the user browses into each community/utility. The search box sets community name and utility type as initial facets automatically aiding in search relevance by assisting the user to search within the community/utility category of the content they are currently browsing. An additional tab is offered to easily select “Entire Site” and run a global site search. The context also changes when viewing user related pages to make searching a user name quickly accessible. All of these facets and more are also interactive on the Solr search results page so searches can be further refined.</p>
<p><img src="/files/symantec-connect-search.png" /></p>
<p>The Drupal Solr search results interface was enhanced by introducing facet state icons and subtle colors to cleanly and clearly layout the relationship of search facet blocks and the effect they will have when clicked. Of particular interest on a site where so many visitors are seeking answers to their questions is the “solved” facet, which returns all of the forum discussions that have been marked as having a recognized solution attached to them. This aids the user to quickly find possible solutions to the subject they are searching.</p>
<h3>Visual Design</h3>
<p>The overall visual design of Connect was retooled towards simplifying and modernizing the look and feel of the site to better represent a set of content focused around technology and technical users. The theme was aimed at a more open and spacious feel using grey tones to set the theme elements and UI into the background when not needed and allow the content to carry the focus of the page. A restrained use of JQuery elements throughout the site were added to reduce page clutter and reveal content through simple clicks of tabbed and carousel interfaces. This allows community moderators to feature content through node queues without overwhelming the lists and community pages with volume.</p>
<h2>Features of Note</h2>
<h3>Screencast Help</h3>
<p><img src="/files/symantec-connect-help.png" /></p>
<p>Though still in it’s infancy, the video screencast help system has the potential to be a powerful help feature for site users. The Screencast Help system is an inline JQuery element that expands revealing a set of How-To screencasts created to get users up to speed on step-by-step ways to use Connect and participate in the community. The videos are loaded directly into the expanded element so the user never loses the page they are trying to get help with. The initial implementation is a static set of cached videos, but by leveraging the existing taxonomy system, this feature will be easily enhanced in a future iteration to become contextually aware and show relevant video help as the user browses the site.</p>
<h3>Forums</h3>
<p>The discussion forums are the centerpiece of the Connect community. The forum feature set allows users to post product and support-related questions to the huge community of Symantec customers world-wide. In a recent study, Symantec noted that 90% of questions posted to Connect are answered by other users on Connect.</p>
<p>One of the custom features built into the Connect forums is the ability for a forum poster to mark a particular answer to his/her question as the "solution". Marking solutions in this manner make it much easier for subsequent users to quickly find answers to commonly-asked questions. Symantec terms these answered questions as "deflections" that save the company money because they don't have to be answered by a paid support employee.</p>
<p>This approach to “solved” posts also allows Symantec Community managers to select posts that need to be solved and push those into featured blocks challenging the user community to find solutions.</p>
<h3>Ideas</h3>
<p>Following the lead of other sites like <a target="_blank" href="http://www.ideastorm.com" rel="nofollow">Dell's Ideastorm</a> and <a target="_blank" href="http://brainstorm.ubuntu.com" rel="nofollow">Ubuntu's Brainstorm</a>, the Ideas area on Connect allows users to suggest and vote on product improvements. Market researchers know that some of the best new features and product enhancements come from the minds of users who actually deploy and use the product. The Ideas area on Connect allows product users to suggest a new feature or function while giving other community members the power to validate an idea by voting it up or down. Popular feature requests -- as voted by the community -- get the undivided attention of marketing and development teams. With Drupal’s improved voting api modules we were able to easily skin the voting widgets for various uses both as thumbs up/down widgets and the Ideas up/down widgets.</p>
<h3>Known Issues</h3>
<p>A much requested feature from site users, Known Issues allows Symantec Support staff to create official notices of product bugs with various status/severity tags and links to technotes in other Symantec web tools, which can then be used to collect votes from users who are experiencing the issue. Support staff can then interact through node comments to dialogue about Symantec’s plans for fixes and bug handling. It is worth noting Known Issues is an excellent example of a user generated site feature. <a target="_blank" href="http://www.symantec.com/connect/idea/known-bugs-list-status" rel="nofollow">A user submitted an “Idea”</a> asking for the basic outline of functionality and over 245 other users voted that Idea to the top of the board. This brought the Idea to the attention of Symantec’s community managers who requested the feature be developed into “Known Issues”. Many times the best ideas come from dedicated product users expressing potential solutions to problems they face and companies can benefit from creating channels to listen to those Ideas.</p>
<h3>Groups</h3>
<p>Groups are areas within the community where users with similar interests can gather to share ideas, plan meet ups, and self organize to support each other. Symantec uses Groups, powered by Organic Groups Module, to give their more than 100 regional user groups a place to schedule meetings, communicate with their members, and post agendas and presentations -- all from within their Group space on Connect. Private groups give the company's beta testers, advisory board members, and early adopters a quiet, confidential place to exchange messages, information and files.</p>
<h3>Videos</h3>
<p>Some users would rather upload videos that discuss their tips and tricks in writing. Symantec Connect makes this possible. In this "YouTube" generation, almost anyone can create a screencast, and in many cases, these visual communication tools do a better job of communicating a user's ideas than an article or blog post on the same topic. Connect was designed to make submitting these information assets as quick and easy as possible while also empowering Symantec staff to publish their own official videos and screencasts for the community.</p>
<h3>Articles</h3>
<p>Technical users can submit in-depth articles to Connect so other users of the community can learn from their experience and expertise. Connect articles have been submitted by users around the world. Teachers, trainers, systems administrators, and end users have all shared their tips, tricks, and detailed solutions to technical challenges via articles posted to Connect.</p>
<h3>Blogs</h3>
<p>Community members are welcome to post blog entries to Connect that describe their experiences with Symantec software. Symantec also leverages the blog platform to spread information from company and industry experts. One example of this is in the extremely popular Security Response Blog.</p>
<h3>Downloads</h3>
<p>IT departments around the world are constantly writing code snippets and utilities that make working with their enterprise infrastructure easier. Symantec Connect gives them a place to share those tools and utilities with the community. Users are encouraged to submit scripts and utilities they've written to solve their own IT problems. The idea being that others who have run into similar obstacles can use some of these user-contributed tools to solve the same problems in their local environments.</p>
<h3>Rewards</h3>
<p>Quality content and genuine community participation are foundational elements to Connect’s success. Symantec recognized this by taking the more traditional user rewards of account status and badges a step further and offering an innovative points and rewards program. Users earn points by making quality contributions to the community through posting new content, solving outstanding threads, and aiding in the general growth of the site. Points can be tracked and redeemed from within Connect for gift certifications to Amazon.com and other online retailers around the world. The rewards program is a good example of a large company valuing customer feedback and rewarding the efforts their customers make to help each other succeed.</p>
<h3>Multi Language Support</h3>
<p>Like all global companies, Symantec addresses a worldwide audience of partners and customers, many of whom prefer to communicate in their native languages. Concurrent with the site’s redesign, the Webwise team integrated Symantec’s existing in-house localization workflows to provide localization of Connect into German, French and Spanish, with other languages scheduled to follow. The flexibility of Drupal’s localization modules allowed Symantec to leverage their existing resources to cost-effectively translate the Connect interface into its destination languages.</p>
<h3>Conclusion</h3>
<p>As Symantec Connect’s content and audience continues to grow so does Symantec’s confidence in the power of Drupal as an enterprise-class application framework. The flexibility of Drupal as a platform, combined with solid design and development resources, creates the possibility for rich user experiences and large-scale web solutions. Symantec Connect stands as solid proof that fortune 500 companies can combine the robust flexibility of the Drupal platform, with the world class skills of dedicated designers and developers from the Drupal community, to build rich content work flows and social networking features into a powerful web tool sets to serve and support massive customer bases globally while eliminating licensing and residual costs from competing proprietary solutions.</p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fsymantec-connect-social-business-software-powered-by-drupal%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fsymantec-connect-social-business-software-powered-by-drupal%2F" height="61" width="51" /></a></div><p><img src="http://drupal.org/files/symantec-connect-main-showcase.png" class="right" /></p>
<p><a  href="http://www.symantec.com/connect" rel="nofollow">Symantec Connect</a> is an enterprise class, community-driven, social business support and information portal for Symantec products, offering users of Symantec’s deep catalog of applications and services a platform to interact with one another and Symantec employees through rich web-based tools. Connect enables the rapid publishing of information about the day-to-day use of Symantec products through key community-centric features which facilitate the customer’s ability to:</p>
<ul>
<li>Ask the community for help with issues and flag solutions when they are posted for easy discovery in the forums</li>
<li>Suggest and vote on product enhancements</li>
<li>Publish helper applications and scripts as community downloads</li>
<li>Publish user-submitted screencast videos for enhanced knowledge sharing</li>
<li>Build online/offline product centric user groups with events, private content publishing and messaging in the groups</li>
<li>Keep up with content on a variety of topics within the IT and security-related fields through articles and blog entries</li>
<li>Enjoy a highly qualified community experience enabled by a suite of Symantec employee moderation, organization, and publishing controls.</li>
</ul>
<p>All of these features also empower Symantec employees to quickly publish official versions of forum discussions, blog entries, articles, events, downloads, and videos while moderating and vetting content, helping steer the community in the right direction.</p>
<h2>A Brief History</h2>
<p>Symantec, founded in 1982, is one of the world&#8217;s largest software companies with more than 17,500 employees in more than 40 countries. The company provides both security and storage and systems management solutions. Their customer base includes consumers, small businesses, and some of the world&#8217;s largest global organizations. The company&#8217;s phenomenal growth can be attributed to a combination of market acceptance and strategic acquisitions. </p>
<p>In early 2008, Symantec&#8217;s Customer Experience team began crafting a roadmap designed to consolidate several existing support and discussion sites into a consistent, best-of-breed community offering. The goals of this consolidation were to:</p>
<ul>
<li>Give Symantec customers a single point of contact where they could engage with the company&#8217;s support, marketing, and product management teams, </li>
<li>Draw on other customers experience and expertise, </li>
<li>Reduce the support and licensing costs of maintaining a collection of disparate community offerings.</li>
</ul>
<h2>Why Drupal?</h2>
<p>After considering the landscape of both proprietary and open-source solutions, Symantec decided to use Drupal as a foundation for their community initiative. Symantec recognized Drupal to be offering: </p>
<ul>
<li>a wealth of out of the box CMS and social media features and functionality</li>
<li>the ability to scale for high usage sites</li>
<li>the theme and development flexibility to customize the user experience quickly without the typical lag they had experienced requesting new features from proprietary vendors</li>
<li>a recognized developer community from which to draw quality development talent</li>
</ul>
<p>Symantec’s internal UX team even installed and configured rough prototypes in Drupal leveraging the vast library of existing contrib modules to experiment with various use cases for the upcoming project. This ability to rapidly create functional prototypes further cemented the choice of Drupal as the platform for development.</p>
<h2>The Team</h2>
<p>The project was structured to allow Symantec Customer Experience team to provide input on the design and planning of the site while collaborating with a group of  Drupal experts. Symantec’s internal team is augmented with Drupal expertise in the key areas needed for successful Drupal development.</p>
<ul>
<li><a  href="http://www.webwiseone.com" rel="nofollow">WebWise Solutions Inc.</a> leads Connect’s project development and is the principle contact on the project providing long-standing expertise in Drupal-centric project management and user community development.  WebWise handles all day-to-day operations and oversight of everything from server deployment to administering the rewards system and offering a first line of customer support for the site’s users, all of which enables Symantec to focus on utilizing Connect to serve their customers instead of having to worry about maintaining the platform.</li>
<li><a  href="http://www.tabsandspaces.com" rel="nofollow">Tabs &amp; Spaces Inc.</a> brings the heavy lifting of custom module development creating upwards of 50 custom modules to augment and extend Drupal to meet the unique needs of building a customer support community around a deep catalog of products and services.</li>
<li><a  href="http://www.jeffreydalton.info" rel="nofollow">Jeffrey Dalton Design Inc.</a> adds the “hot sauce” of user experience centered design and theme work leveraging Drupal’s powerful theme system to tailor the interface to the specific needs of the community. After the initial launch the redesign process allowed Jeffrey Dalton Design to fully invest in re-visioning the theme and leveraging user feedback collected throughout the initial months of Connects operation. During this process the Symantec Corporation even went through a brand change of their own which was easily rolled into the new theme.</li>
<li><a  href="http://www.tag1consulting.com" rel="nofollow">Tag1 Consulting</a> delivers the performance and scalability tuning that is essential for Drupal sites with millions of users. With multiple layers of content caching in multi-server configurations, world class scalability expertise allows Symantec Connect to continue it’s rapid growth in a high demand environment.</li>
</ul>
<p>This augmented team approach allows for rapid expansion of area-specific development expertise when new features and functionality are requested while minimizing Symantec’s development overhead.</p>
<h2>Initial Launch</h2>
<p>The initial effort (which took place over 6 months) involved merging the content and users from three disparate Symantec communities including:</p>
<ul>
<li>110,000 members from the &#8220;Symantec Technical Network&#8221; (STN) running on the Lithium platform</li>
<li>10,000 members from the &#8220;Altiris Support Forums&#8221; running on FuseTalk</li>
<li>20,000 members of the Altiris &#8220;Juice&#8221; community already running on Drupal in a separate Drupal 5 site </li>
<li>Hundreds of thousands of existing nodes and comments from these three systems. </li>
</ul>
<p>As of this writing Symantec Connect has matured to become the community destination for Symantec products with stats boasting:</p>
<ul>
<li>3,000,000+ unique page views each month </li>
<li>more than 206,000+ registered users</li>
<li>content base with 600,000+ combined nodes and comments (<a  href="http://www.symantec.com/connect" rel="nofollow">and counting</a>)</li>
</ul>
<h3>The Redesign</h3>
<p>After the successful launch of Connect in March of 2009, the Connect team spent a portion of the next 18 months gathering user feedback and iterating through ways to improve the site experience. In the beginning of October 2010 Connect launched a totally redesigned theme. The redesign brought with it the freedom to use a more flexible iterative design processes in shaping the new interface. The team was able to focus more on the user experience side of the application and bring out new features aimed at improving the usability of Connect. The overarching goal being: make Connect easier and more intuitive to use and the community will grow both in the quality content and overall responsiveness.</p>
<h3>Site Navigation</h3>
<p> <img src="http://drupal.org/files/symantec-connect-nav.png" class="right" /></p>
<p>One area of detailed focus was the site navigation. All site content, both official and user-generated, is created around a combination of content type and taxonomy terms categorizing nodes into “Communities” (ex. Backup and Archiving) and “Utilities” (ex. blogs, articles, downloads, videos, etc). A new site navigation system was needed that would make it easier to move between these communities and utilities and would clearly explain the relationship between them. Moving away from the original tabbed interface, a combination of an interactive two level drop down menus with the breadcrumb model of a site depth path was used to illustrate both the relationship of community to utility, and show a visual representation of where content lives in the hierarchy of the site. The selection of a community and its corresponding utility became possible with a single mouse gesture and click greatly simplifying the navigation tasks. The menu dropping down and then expanding on a per community basis also allowed for the interface to list all utilities available for the current community, while keeping the interface clean and uncluttered.</p>
<p><img src="http://drupal.org/files/symantec-connect-utility.png" class="right" /></p>
<p>After some initial user testing a secondary utility only drop down was added, which becomes available in the second level of the breadcrumb once a user is within a given community, making it possible to quickly switch utilities within the same community.</p>
<p>The breadcrumb model then extends beyond the community &gt; utility selection and, when in context, offers further details as links to forum name, blog name, etc. and a single dynamic RSS feed element that remains contextually aware as the site is traversed.</p>
<p>Subtle JQuery animations further enhance the user experience of the menu with quick yet smooth state transitions. All animations were carefully refined to enhance usability without adding unneeded cruft solely for the sake of eye candy.</p>
<p><img src="http://drupal.org/files/symantec-connect-user.png" class="right" /></p>
<p>Below the global navigation an authenticated user menu was added with:</p>
<ul>
<li>a user “Account” menu for quick access to account features</li>
<li>a “Create content” menu with easily identifiable iconography and short text descriptions making a direct one click route to add content</li>
<li>a custom “Share” menu to better visually integrate the share widgets into the site</li>
<li>an expandable video screencast help system to allow for in-page video help and user training</li>
</ul>
<h3>Context-Aware Search</h3>
<p>The main site search bar was enhanced making it contextually aware as the user browses into each community/utility. The search box sets community name and utility type as initial facets automatically aiding in search relevance by assisting the user to search within the community/utility category of the content they are currently browsing. An additional tab is offered to easily select “Entire Site” and run a global site search. The context also changes when viewing user related pages to make searching a user name quickly accessible. All of these facets and more are also interactive on the Solr search results page so searches can be further refined.</p>
<p><img src="http://drupal.org/files/symantec-connect-search.png" /></p>
<p>The Drupal Solr search results interface was enhanced by introducing facet state icons and subtle colors to cleanly and clearly layout the relationship of search facet blocks and the effect they will have when clicked. Of particular interest on a site where so many visitors are seeking answers to their questions is the “solved” facet, which returns all of the forum discussions that have been marked as having a recognized solution attached to them. This aids the user to quickly find possible solutions to the subject they are searching.</p>
<h3>Visual Design</h3>
<p>The overall visual design of Connect was retooled towards simplifying and modernizing the look and feel of the site to better represent a set of content focused around technology and technical users. The theme was aimed at a more open and spacious feel using grey tones to set the theme elements and UI into the background when not needed and allow the content to carry the focus of the page. A restrained use of JQuery elements throughout the site were added to reduce page clutter and reveal content through simple clicks of tabbed and carousel interfaces. This allows community moderators to feature content through node queues without overwhelming the lists and community pages with volume.</p>
<h2>Features of Note</h2>
<h3>Screencast Help</h3>
<p><img src="http://drupal.org/files/symantec-connect-help.png" /></p>
<p>Though still in it’s infancy, the video screencast help system has the potential to be a powerful help feature for site users. The Screencast Help system is an inline JQuery element that expands revealing a set of How-To screencasts created to get users up to speed on step-by-step ways to use Connect and participate in the community. The videos are loaded directly into the expanded element so the user never loses the page they are trying to get help with. The initial implementation is a static set of cached videos, but by leveraging the existing taxonomy system, this feature will be easily enhanced in a future iteration to become contextually aware and show relevant video help as the user browses the site.</p>
<h3>Forums</h3>
<p>The discussion forums are the centerpiece of the Connect community. The forum feature set allows users to post product and support-related questions to the huge community of Symantec customers world-wide. In a recent study, Symantec noted that 90% of questions posted to Connect are answered by other users on Connect.</p>
<p>One of the custom features built into the Connect forums is the ability for a forum poster to mark a particular answer to his/her question as the &#8220;solution&#8221;. Marking solutions in this manner make it much easier for subsequent users to quickly find answers to commonly-asked questions. Symantec terms these answered questions as &#8220;deflections&#8221; that save the company money because they don&#8217;t have to be answered by a paid support employee.</p>
<p>This approach to “solved” posts also allows Symantec Community managers to select posts that need to be solved and push those into featured blocks challenging the user community to find solutions.</p>
<h3>Ideas</h3>
<p>Following the lead of other sites like <a  href="http://www.ideastorm.com" rel="nofollow">Dell&#8217;s Ideastorm</a> and <a  href="http://brainstorm.ubuntu.com" rel="nofollow">Ubuntu&#8217;s Brainstorm</a>, the Ideas area on Connect allows users to suggest and vote on product improvements. Market researchers know that some of the best new features and product enhancements come from the minds of users who actually deploy and use the product. The Ideas area on Connect allows product users to suggest a new feature or function while giving other community members the power to validate an idea by voting it up or down. Popular feature requests &#8212; as voted by the community &#8212; get the undivided attention of marketing and development teams. With Drupal’s improved voting api modules we were able to easily skin the voting widgets for various uses both as thumbs up/down widgets and the Ideas up/down widgets.</p>
<h3>Known Issues</h3>
<p>A much requested feature from site users, Known Issues allows Symantec Support staff to create official notices of product bugs with various status/severity tags and links to technotes in other Symantec web tools, which can then be used to collect votes from users who are experiencing the issue. Support staff can then interact through node comments to dialogue about Symantec’s plans for fixes and bug handling. It is worth noting Known Issues is an excellent example of a user generated site feature. <a  href="http://www.symantec.com/connect/idea/known-bugs-list-status" rel="nofollow">A user submitted an “Idea”</a> asking for the basic outline of functionality and over 245 other users voted that Idea to the top of the board. This brought the Idea to the attention of Symantec’s community managers who requested the feature be developed into “Known Issues”. Many times the best ideas come from dedicated product users expressing potential solutions to problems they face and companies can benefit from creating channels to listen to those Ideas.</p>
<h3>Groups</h3>
<p>Groups are areas within the community where users with similar interests can gather to share ideas, plan meet ups, and self organize to support each other. Symantec uses Groups, powered by Organic Groups Module, to give their more than 100 regional user groups a place to schedule meetings, communicate with their members, and post agendas and presentations &#8212; all from within their Group space on Connect. Private groups give the company&#8217;s beta testers, advisory board members, and early adopters a quiet, confidential place to exchange messages, information and files.</p>
<h3>Videos</h3>
<p>Some users would rather upload videos that discuss their tips and tricks in writing. Symantec Connect makes this possible. In this &#8220;YouTube&#8221; generation, almost anyone can create a screencast, and in many cases, these visual communication tools do a better job of communicating a user&#8217;s ideas than an article or blog post on the same topic. Connect was designed to make submitting these information assets as quick and easy as possible while also empowering Symantec staff to publish their own official videos and screencasts for the community.</p>
<h3>Articles</h3>
<p>Technical users can submit in-depth articles to Connect so other users of the community can learn from their experience and expertise. Connect articles have been submitted by users around the world. Teachers, trainers, systems administrators, and end users have all shared their tips, tricks, and detailed solutions to technical challenges via articles posted to Connect.</p>
<h3>Blogs</h3>
<p>Community members are welcome to post blog entries to Connect that describe their experiences with Symantec software. Symantec also leverages the blog platform to spread information from company and industry experts. One example of this is in the extremely popular Security Response Blog.</p>
<h3>Downloads</h3>
<p>IT departments around the world are constantly writing code snippets and utilities that make working with their enterprise infrastructure easier. Symantec Connect gives them a place to share those tools and utilities with the community. Users are encouraged to submit scripts and utilities they&#8217;ve written to solve their own IT problems. The idea being that others who have run into similar obstacles can use some of these user-contributed tools to solve the same problems in their local environments.</p>
<h3>Rewards</h3>
<p>Quality content and genuine community participation are foundational elements to Connect’s success. Symantec recognized this by taking the more traditional user rewards of account status and badges a step further and offering an innovative points and rewards program. Users earn points by making quality contributions to the community through posting new content, solving outstanding threads, and aiding in the general growth of the site. Points can be tracked and redeemed from within Connect for gift certifications to Amazon.com and other online retailers around the world. The rewards program is a good example of a large company valuing customer feedback and rewarding the efforts their customers make to help each other succeed.</p>
<h3>Multi Language Support</h3>
<p>Like all global companies, Symantec addresses a worldwide audience of partners and customers, many of whom prefer to communicate in their native languages. Concurrent with the site’s redesign, the Webwise team integrated Symantec’s existing in-house localization workflows to provide localization of Connect into German, French and Spanish, with other languages scheduled to follow. The flexibility of Drupal’s localization modules allowed Symantec to leverage their existing resources to cost-effectively translate the Connect interface into its destination languages.</p>
<h3>Conclusion</h3>
<p>As Symantec Connect’s content and audience continues to grow so does Symantec’s confidence in the power of Drupal as an enterprise-class application framework. The flexibility of Drupal as a platform, combined with solid design and development resources, creates the possibility for rich user experiences and large-scale web solutions. Symantec Connect stands as solid proof that fortune 500 companies can combine the robust flexibility of the Drupal platform, with the world class skills of dedicated designers and developers from the Drupal community, to build rich content work flows and social networking features into a powerful web tool sets to serve and support massive customer bases globally while eliminating licensing and residual costs from competing proprietary solutions.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/symantec-connect-social-business-software-powered-by-drupal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New book: Drupal Intranets with Open Atrium</title>
		<link>http://www.connexx-contentmanagement.nl/new-book-drupal-intranets-with-open-atrium/</link>
		<comments>http://www.connexx-contentmanagement.nl/new-book-drupal-intranets-with-open-atrium/#comments</comments>
		<pubDate>Tue, 01 Mar 2011 16:14:54 +0000</pubDate>
		<dc:creator>alphageekboy</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[News and announcements]]></category>

		<guid isPermaLink="false">1052954 at http://drupal.org</guid>
		<description><![CDATA[<p><img src="/files/issues/drupal_intranets_250.jpg" alt="Drupal Intranets with Open Atrium" class="right">In today's global society, online collaboration has gained tremendous importance as businesses look for ways to share ideas and collaborate easily. Open Atrium is a powerful and flexible Drupal installation that provides intranet solutions to businesses and organizations for sharing ideas. It is used to create intranets where co-workers or teams can collaborate easily. But Open Atrium is filled with so many powerful features that you may need some help to use it to its full potential.</p>
<p><a href="http://link.packtpub.com/3YxWE9" rel="nofollow">Drupal Intranets with Open Atrium</a> unlocks the power of <a href="http://openatrium.com/" rel="nofollow">Open Atrium</a> and guides you through real-world examples of an Open Atrium intranet. Examples and screenshots are used throughout the book so that you can follow along on your Open Atrium installation. The examples walk through setting up your site, user administration, implementing core features, and maintaining your intranet site.</p>
<p>This book starts off with explaining how to set up a web server on a Windows or Mac computer and install Drupal with the Open Atrium distribution. After installing Open Atrium you will learn how to add and maintain users. The book also covers some exciting topics such as the different "spaces" or "workgroup" micro-sites that can be created to match your organization's structure. Reading each of these sections, you will understand and become familiar with managing the Open Atrium interface. Once you comprehend the Open Atrium interface, you will learn how to create a blog, document library, and issue tracker for each group's dashboard or site page. The book covers everything from editing a single piece of content to arranging the layout of that content on each page.</p>
<p>By the end of this book, you should be able to establish your own intranet site for your organization or workgroup using the Open Atrium Drupal distribution.</p>
<p>A how-to guide with examples and screenshots to guide you through every step of creating an intranet with Open Atrium</p>
<h2>What you will learn from this book :</h2>
<ul>
<li>Add all the major features of an intranet to your site with Open Atrium</li>
<li>Get to grips with Open Atrium's interface and its features</li>
<li>Install Open Atrium and customize it for your organization or company</li>
<li>Create sub-sites (spaces) for each of your teams, departments, or workgroups</li>
<li>Manage users and create a member directory</li>
<li>Add core features packaged with Open Atrium such as Blog, Calendar, and Issue Tracker</li>
<li>Extend the functionality of Open Atrium by adding pluggable features developed by the Drupal Open Source community</li>
<li>Maintain your intranet by performing routine maintenance tasks</li>
<li>Analyze your site's logs and reports to ensure that it is running in tip-top condition</li>
</ul>
<h2>Approach</h2>
<p>Packed with screenshots and clear instructions, this book allows you to follow along with your own site and ensures you won't get lost. It's a how-to guide that guides you simply through each step.</p>
<h2>Who this book is written for</h2>
<p>This book is intended for beginning to intermediate computer users who either have not worked with Drupal before or want to expand their Drupal knowledge by installing Open Atrium. If you want to learn how to quickly set up an intranet to improve your organization's communication and workflow, then this book is for you.</p>
<h2>About the Author</h2>
<p>Tracy currently works as a Web Developer for <a href="http://phase2technology.com/people/tsmith" rel="nofollow">Phase2 Technology</a>, based in Alexandria, VA. He is the founder of <a href="http://alphageektech.net" rel="nofollow">Alpha Geek Tech, LLC</a>, a technology consulting firm. His web experience began in the dot-com era when he worked for Flipside.com. He is actively involved in the developer community and while working as the Technology Director for <a href="http://quiddities.com" rel="nofollow">Quiddities Dev, Inc</a> he spent his free time as the lead programmer and architect for <a href="http://12seconds.tv" rel="nofollow">12seconds.tv</a>.</p>
<h2>Get 20% off!</h2>
<p>If you order the book through the <a href="http://link.packtpub.com/3YxWE9" rel="nofollow">Packt website</a>, you can save 20% off the cover price. Use <b>DrupalOA20</b> (case sensitive) when ordering through the official book web page.</p>
<p>Note: you must be logged in to PacktPub.com for discount code to be applied</p>
<h2>Sample Chapter</h2>
<p><a href="https://www.packtpub.com/sites/default/files/1124OS-Chapter-5-Dashboard.pdf" rel="nofollow">Chapter 5, Dashboard</a></p>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fnew-book-drupal-intranets-with-open-atrium%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fnew-book-drupal-intranets-with-open-atrium%2F" height="61" width="51" /></a></div><p><img src="http://drupal.org/files/issues/drupal_intranets_250.jpg" title="Drupal Intranets with Open Atrium" alt="Drupal Intranets with Open Atrium" class="right">In today&#8217;s global society, online collaboration has gained tremendous importance as businesses look for ways to share ideas and collaborate easily. Open Atrium is a powerful and flexible Drupal installation that provides intranet solutions to businesses and organizations for sharing ideas. It is used to create intranets where co-workers or teams can collaborate easily. But Open Atrium is filled with so many powerful features that you may need some help to use it to its full potential.</p>
<p><a href="http://link.packtpub.com/3YxWE9" rel="nofollow">Drupal Intranets with Open Atrium</a> unlocks the power of <a href="http://openatrium.com/" rel="nofollow">Open Atrium</a> and guides you through real-world examples of an Open Atrium intranet. Examples and screenshots are used throughout the book so that you can follow along on your Open Atrium installation. The examples walk through setting up your site, user administration, implementing core features, and maintaining your intranet site.</p>
<p>This book starts off with explaining how to set up a web server on a Windows or Mac computer and install Drupal with the Open Atrium distribution. After installing Open Atrium you will learn how to add and maintain users. The book also covers some exciting topics such as the different &#8220;spaces&#8221; or &#8220;workgroup&#8221; micro-sites that can be created to match your organization&#8217;s structure. Reading each of these sections, you will understand and become familiar with managing the Open Atrium interface. Once you comprehend the Open Atrium interface, you will learn how to create a blog, document library, and issue tracker for each group&#8217;s dashboard or site page. The book covers everything from editing a single piece of content to arranging the layout of that content on each page.</p>
<p>By the end of this book, you should be able to establish your own intranet site for your organization or workgroup using the Open Atrium Drupal distribution.</p>
<p>A how-to guide with examples and screenshots to guide you through every step of creating an intranet with Open Atrium</p>
<h2>What you will learn from this book :</h2>
<ul>
<li>Add all the major features of an intranet to your site with Open Atrium</li>
<li>Get to grips with Open Atrium&#8217;s interface and its features</li>
<li>Install Open Atrium and customize it for your organization or company</li>
<li>Create sub-sites (spaces) for each of your teams, departments, or workgroups</li>
<li>Manage users and create a member directory</li>
<li>Add core features packaged with Open Atrium such as Blog, Calendar, and Issue Tracker</li>
<li>Extend the functionality of Open Atrium by adding pluggable features developed by the Drupal Open Source community</li>
<li>Maintain your intranet by performing routine maintenance tasks</li>
<li>Analyze your site&#8217;s logs and reports to ensure that it is running in tip-top condition</li>
</ul>
<h2>Approach</h2>
<p>Packed with screenshots and clear instructions, this book allows you to follow along with your own site and ensures you won&#8217;t get lost. It&#8217;s a how-to guide that guides you simply through each step.</p>
<h2>Who this book is written for</h2>
<p>This book is intended for beginning to intermediate computer users who either have not worked with Drupal before or want to expand their Drupal knowledge by installing Open Atrium. If you want to learn how to quickly set up an intranet to improve your organization&#8217;s communication and workflow, then this book is for you.</p>
<h2>About the Author</h2>
<p>Tracy currently works as a Web Developer for <a href="http://phase2technology.com/people/tsmith" rel="nofollow">Phase2 Technology</a>, based in Alexandria, VA. He is the founder of <a href="http://alphageektech.net" rel="nofollow">Alpha Geek Tech, LLC</a>, a technology consulting firm. His web experience began in the dot-com era when he worked for Flipside.com. He is actively involved in the developer community and while working as the Technology Director for <a href="http://quiddities.com" rel="nofollow">Quiddities Dev, Inc</a> he spent his free time as the lead programmer and architect for <a href="http://12seconds.tv" rel="nofollow">12seconds.tv</a>.</p>
<h2>Get 20% off!</h2>
<p>If you order the book through the <a href="http://link.packtpub.com/3YxWE9" rel="nofollow">Packt website</a>, you can save 20% off the cover price. Use <b>DrupalOA20</b> (case sensitive) when ordering through the official book web page.</p>
<p>Note: you must be logged in to PacktPub.com for discount code to be applied</p>
<h2>Sample Chapter</h2>
<p><a href="https://www.packtpub.com/sites/default/files/1124OS-Chapter-5-Dashboard.pdf" rel="nofollow">Chapter 5, Dashboard</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/new-book-drupal-intranets-with-open-atrium/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gospel Music Channel &#8211; watchgmctv.com</title>
		<link>http://www.connexx-contentmanagement.nl/gospel-music-channel-watchgmctv-com/</link>
		<comments>http://www.connexx-contentmanagement.nl/gospel-music-channel-watchgmctv-com/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 15:38:08 +0000</pubDate>
		<dc:creator>jeffdiecks</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Website CMS]]></category>
		<category><![CDATA[Drupal 6.x]]></category>
		<category><![CDATA[drupal cms]]></category>
		<category><![CDATA[Drupal showcase]]></category>

		<guid isPermaLink="false">1005682 at http://drupal.org</guid>
		<description><![CDATA[<p><img style="float: right;margin: 15px 0 15px 30px" src="http://drupal.org/files/issues/gmc_homepage_v2.jpg" alt="gmc homepage" />Headquartered in Atlanta, the <a href="http://www.watchgmctv.com">Gospel Music Channel</a> (gmc) is a channel that features uplifting music and entertainment, including specials, movies and series that the whole family can enjoy. gmc is the only TV network with every program certified as family safe by the Parents Television Council.  DIRECTV, Verizon FiOS, and local cable systems bring gmc into roughly 50 million homes across the country. The brand boasts such popular shows as Dr. Quinn Medicine Woman, Highway to Heaven, Promised Land, Sister Sister, Early Edition and Amen. The website receives about 750,000 monthly page views from 250,000 unique visitors.</p>
<p>The channel recently launched a full site redesign in conjunction with an upgrade from Drupal 5 to Drupal 6. The project team from Mediacurrent would like to share some of what they've learned from the design and build of the site with the Drupal community.</p>
<!--break--><!--break--><h2>Goals</h2>
<p>The old gmc site was in need of an aesthetic and architecture facelift. In 2009, the company added uplifting movies and series to its program offerings to better service viewers looking for faith and family-friendly entertainment. The old site had a limited social media strategy and the design’s navigation prevented it from optimally interacting and engaging visitors. During the discovery and strategic planning phases of the project there were several objectives that were established. The goals included:</p>
<ol>
<li><strong>Upgrading the current Drupal 5 site to  Drupal 6:</strong> The idea of jumping to Drupal 7 was discussed, but was determined to be too risky given many of the unknowns related to key contributed modules.</li>
<li><strong>Branding makeover:</strong>  The gmc executive team wanted a more modern, contemporary website redesign that reinforced the brand’s expansion to beyond music. gmc's content has been expanding into originally produced movies and plays.</li>
<li><strong>Create a more immersive customer experience:</strong> The new site needed to integrate more social media and networking calls to action in order to bump registered users on the site. Thus, usability was at top of mind when planning functionality for the new site.</li>
<li><strong>Effectively integrating third-party tools:</strong> There were a number of applications being piecemealed on the old site that needed to be unified with Drupal-based solutions.</li>
<li><strong>Content import:</strong> There were large amounts of new assets (3100+ files, 2700+ nodes, and 2200+ taxonomy terms) that needed to be migrated over. During the rebuild, leveraging the core taxonomy system to build rich associations for relevant content was a major desire.</li>
</ol>
<h2>Graphic Design</h2>
<p>Upending preconceived notions about gmc's previous brand was at top of mind during the site redesign. We collaborated extensively with gmc's internal team to make sure new features would allow gmc's content shift to continue without the need for constant feature maintenance updates. This was definitely a challenge. Careful planning was needed to create extremely flexible features that could meet the expected growth and ongoing changes, while still being easily managed. To deliver the new site, Mediacurrent utilized a team-based approach, dividing tasks between back-end engineering and front-end theming. </p>
<p>The Graphic Design aspects took into account the following:</p>
<p><strong>Strategy:</strong> The design strategy was predicated around three words - uplifting, inspirational, and simplicity. Mediacurrent helped gmc organize their vision into a comprehensive blend of gmc's branded warm reds with touches of complementary cool grays, blues, purples and aqua blues. Transparent circles with thin white strokes overplayed on top of converging spiral circular gradients were used to achieve the celestial-inspirational feel. The overall design is built around "gmc red", which was used for link and background navigation colors. Cool grays were used to pull the entire design together and create subtle areas of interest and focus. The gmc team did not want anything too loud or "bullish" in nature. </p>
<p><strong>Menu Design:</strong> We had to create a menu system that would visually divide each section of the site while still allowing additional categories to be added underneath corresponding sections. This challenge was met by using the classic tabbed menu system (Nice Menus Module) coupled with waterfall pull down menu interactivity. Of particular note is that when a user has selected a section the tab stays active throughout all section subpages. The active waterfall menu is visually offset or totally contrasted from non-active waterfall navigation. This was achieved with the help of extra classes inserted by jQuery.</p>
<p><strong>Network Bar:</strong> gmc wanted to give more prominence to their advertising offerings, social media callouts, and company profile. One other major point of emphasis was the "Get The Channel" feature. We suggested creating a network bar at the very top of the page to pull this important content away from the main content areas in the body and footer. The concept was to streamline the user’s access to this major feature.</p>
<p><strong>Homepage Rotator:</strong> The team at gmc wanted to update the user interface and experience to accommodate more content above the fold without disrupting the visual flow of the surrounding content. We designed a rotator that would allow for a larger lead photo, longer titles and more space for story lead text. The rotator allows for a user to pause and move between slides easily. </p>
<h2>Challenges</h2>
<p><img style="float: left;margin: 15px 30px 15px 0" src="http://drupal.org/files/issues/gmc_schedule_v2.jpg" alt="gmc schedule" />Content import can represent a risk to a Drupal project plan, even when the content is being imported from a previous Drupal version. One method to mitigate the risk of a complex content import is to analyze the input format being used for published content and be on alert for a disproportionate volume of content published to a general content type such as "page." If the site has an overwhelming amount of content published as a "page" with "PHP" set as the input format, it could be a warning sign for struggles ahead.</p>
<p>gmc editors wanted to be able to build dynamic content associations between entertainers and associated content, but in a way to make the references optional. This was accomplished by augmenting the core taxonomy module with a custom module that creates node associations based on matching terms between content types, such as an actor to a film. This is unique compared to a traditional node reference setup, as actor nodes do not have to exist and can be added later for the association to be automatically created when the appropriately tagged node becomes available.</p>
<p>Creating a custom weekly programming schedule import feature also required extra effort. The available data lacked the necessary structure in order to run a normal import process. Instead, a custom module had to be created that would parse the weekly schedule file and create the appropriate nodes and content associations.</p>
<h2>Modules</h2>
<p>The back-end management of the gmc site was facilitated through a series of custom publishing solutions and third-party tools, none of which played particularly well together. It was obvious that there was a need to devise a better way to leverage all the moving parts. Enter version 6 of Drupal. The gmc site uses over 50 contributed modules, including staples like CCK and Views. </p>
<p>Here is a breakdown of the modules used:</p>
<h3>Module List</h3>
<p>admin, authcache, backup_migrate, better_formats, boost, captcha, CCK, content_copy, content_taxonomy, custom_breadcrumbs, date_api, dblog, fb_social, filefield_paths, filefield_sources, forum, globalredirect, googleanalytics, hierarchical_select, hs_content_taxonomy, image_captcha, image_resize_filter, imageapi, imagecache, imagefield, imagefield_assist, imagefield_tokens, imce, imce_wysiwyg, jcarousel, jquery_ui, lightbox2, menu_attributes, menutrails, modr8, nice_menus, nodequeue, noderef_image_helper, nodereference, nodewords, page_title, pathauto, scheduler, search404, seochecklist, share, sharethis, site_map, statistics, taxonomy, taxonomy_manager, views, views_bulk_operations, views_customfield, views_or, views_slideshow, viewscarousel, webform, wysiwyg</p>
<h3>Custom Modules</h3>
<p>We also needed to extend or customize a number of modules to meet the requirements we were after. Those modules included:</p>
<p><img style="float: right;margin: 15px 0 15px 30px" src="http://drupal.org/files/issues/gmc_schedule_import_v2.jpg" alt="gmc schedule import" /><strong>Schedule:</strong> gmc wanted to automate their scheduling process and improve the online schedules usability as part of the redesign. The schedule spreadsheets are done by hand with no unique keys for programs This was cumbersome, but we came up with a solution to efficiently manage the process of importing a CSV file to populate the program schedule as well as creating episodes for their shows and the references between them.</p>
<p><strong>Galleria + Node Reference Image Helper:</strong> This extended the <a href="http://drupal.org/project/galleria">Galleria</a> module so that we could use the <a href="http://drupal.org/project/noderef_image_helper">noderef_image_helper</a> module which greatly improves its flexibility and administrative usability.</p>
<p><strong>Relevant Content + Views:</strong> The <a href="http://drupal.org/project/relevant_content">Relevant Content</a> module was extended to use <a href="http://drupal.org/project/views">Views</a> which provides all the advantages of a custom view with relevant_content providing the term arguments.</p>
<p><strong>Unicorn Video:</strong> gmc is using <a href="http://www.unicornmedia.com/">Unicorn Media</a> as their video CDN, so we created a custom module to work with their API for the sites video features.</p>
<p><strong>Conditional Node Terms:</strong> One of the workflow obstacles we encountered was the client’s desire to dynamically link content to terms if a node with matching criteria was found, and for it to act as a normal term if not. A combination of custom term, theming and argument handling functions are combined into a module for this functionality.</p>
<p>During the development of this site, Mediacurrent gained approval from the client to contribute code back to the Drupal community. Team member Chris Hales submitted patches for the <a href="http://drupal.org/node/1030472">Galleria</a>, <a href="http://drupal.org/node/857046#comment-3432814">Relevant Content</a> and <a href="http://drupal.org/node/772668">Nodewords</a> modules. </p>
<h2>Drupal Theming</h2>
<p>To reiterate, there was a heavy emphasis to create a highly professional re-brand of the site, while allowing visitors to dive into loads of data without clutter or confusion. In short, theming a custom site like gmc always has obstacles that require creative problem-solving. Here are some we wanted to highlight:</p>
<p><strong>Gradients and Rounded Corners:</strong> The detailed design elements required many types of nested content areas with rounded corners and background gradients. However, the design had to appear consistent regardless of browser type and Internet Explorer (IE) does not recognize the border radius style in CSS. In order to theme the nested rounded corners in a way that would appear consistent in IE, background images and additional div classes were added to customize the node output.</p>
<p><strong>Drupal's Views Pager:</strong> The design required particular classes needed for custom theming that were not available from the pager's output from Drupal core. A theme override function was created and added to template.php that reformats Drupal's pager output to add the needed classes and remove un-required elements for custom theming.</p>
<p><strong>Video Playlist:</strong> The design for the video playlist required that all items in the playlist view display horizontally. The video module outputs the video feed items into a table and so the items could easily be aligned by floating the table rows left. However IE7 does not recognize floats when applied to table rows. In order to accommodate the CSS limitation with IE7, an alternate display was agreed upon with the client to save time in which a horizontal v. vertical alignment is used for IE7 only.</p>
<p><strong>Drupal's Views Filters and Custom Alpha Pager:</strong> The functional requirements for the view pages needed an Alpha Pager which is not available in Drupal 6 views by default. Also, the design for the search fields and submit buttons required custom theming beyond what is readily available from default Drupal output. Custom functionality using PHP, View Arguments, and custom div classes needed for theming, were created and added into the header for each view that needed an Alpha Pager. To theme Drupal's views search filters to meet the design requirements, CSS is used to position fields and buttons accordingly while also replacing default browser submit buttons with a custom graphic that is consistent in all browsers.</p>
<p><strong>Drop Down Menu Theming:</strong> The design required different visual treatment for non-active drop down menus v. active drop down menus. Non-active drop down states are required to have pink and purple backgrounds while the active dropdown would have a white background. Neither Drupal nor the Nice Menus module output unique classes to identify active v. non-active parent items which are needed to target with CSS for independent theming. Nice Menus module had to be patched to add the first, last, odd and even classes needed for CSS targeting to apply some of the custom theming. In order to add the needed "active" and "non-active" classes to menu's child elements, custom jQuery functionality was created to apply the needed classes dynamically. </p>
<h2>Final Thoughts</h2>
<p><img style="float: left;margin: 15px 30px 15px 0" src="http://drupal.org/files/issues/gmc_recommendedshows_v2.jpg" alt="gmc recommended shows" />Every Drupal project should be viewed as a learning experience. Overall, we were able to accomplish key goals and build a powerful, versatile Drupal website that took into account the way gmc was rebranding themselves. The collaborative effort between Mediacurrent and gmc has resulted in a more sophisticated, flexible and professional site. </p>
<p>For project management and ticket tracking, Mediacurrent uses Development Seed’s convenient Drupal distribution, Open Atrium, along with several custom additions including time tracking features. We have been through several PM tools and have been extremely satisfied with Open Atrium. The feature set is akin to what you would find in a more expensive proprietary system, but the flexible Drupal-based system allows us the opportunity to make continued improvements and refinements to the system and how it supports our processes. For example, during the course of this project we customized some of the casetracker-related views to better organize our work around milestones in the project plan.</p>
<p>As with any sizable Drupal implementation, we cannot underscore enough the importance of well-defined site architecture documentation during the planning phase. While most Drupal shops now employ some form of an Agile based methodology, having a roadmap is imperative. In our functional specification document, we incorporated gmc requirements including planned content types, taxonomy, roles, permissions and modules.</p>
<p>Last but not least, the redesign was challenging, yet fun to build. The client’s editors have enjoyed the improved administration features while working with their content. Drupal’s flexibility will allow for continuous and ongoing improvements.</p>
<h2>Technology Environment</h2>
<ul>
<li>Stack:  RHEL 5.5 LAMP (Linux, Apache, MySQL, PHP)</li>
<li>Hosting: Rackspace</li>
<li>CDN: Unicorn Media</li>
<li>jQuery: Replaced all Flash widgets in jQuery</li>
</ul>
<h2>About Mediacurrent</h2>
<p>Mediacurrent is an Atlanta, GA, based interactive firm that has developed a specialization and consulting vertical within the free, open-source content management system called Drupal. For more information regarding Mediacurrent’s services and portfolio please visit <a href="http://www.mediacurrent.com" title="http://www.mediacurrent.com">http://www.mediacurrent.com</a>.</p>
<h2>Project Team</h2>
<ul>
<li><a href="http://drupal.org/user/171429">Mediacurrent</a></li>
<li><a href="http://drupal.org/user/723852">Dante Taylor</a> - design</li>
<li><a href="http://drupal.org/user/347249">Chris Hales</a> - development, lead architect</li>
<li><a href="http://drupal.org/user/261607">Trent Wyman</a> - theming</li>
<li><a href="http://drupal.org/user/221045">Jeff Diecks</a> - project management</li>
</ul>
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fgospel-music-channel-watchgmctv-com%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.connexx-contentmanagement.nl%2Fgospel-music-channel-watchgmctv-com%2F" height="61" width="51" /></a></div><p><img style="float: right; margin: 15px 0 15px 30px;" id="gmc_homepage" src="http://drupal.org/files/issues/gmc_homepage_v2.jpg" alt="gmc homepage" title="gmc homepage" name="gmc_homepage" />Headquartered in Atlanta, the <a href="http://www.watchgmctv.com">Gospel Music Channel</a> (gmc) is a channel that features uplifting music and entertainment, including specials, movies and series that the whole family can enjoy. gmc is the only TV network with every program certified as family safe by the Parents Television Council.  DIRECTV, Verizon FiOS, and local cable systems bring gmc into roughly 50 million homes across the country. The brand boasts such popular shows as Dr. Quinn Medicine Woman, Highway to Heaven, Promised Land, Sister Sister, Early Edition and Amen. The website receives about 750,000 monthly page views from 250,000 unique visitors.</p>
<p>The channel recently launched a full site redesign in conjunction with an upgrade from Drupal 5 to Drupal 6. The project team from Mediacurrent would like to share some of what they&#8217;ve learned from the design and build of the site with the Drupal community.</p>
<p><!--break--><!--break--><br />
<h2>Goals</h2>
<p>The old gmc site was in need of an aesthetic and architecture facelift. In 2009, the company added uplifting movies and series to its program offerings to better service viewers looking for faith and family-friendly entertainment. The old site had a limited social media strategy and the design’s navigation prevented it from optimally interacting and engaging visitors. During the discovery and strategic planning phases of the project there were several objectives that were established. The goals included:</p>
<ol>
<li><strong>Upgrading the current Drupal 5 site to  Drupal 6:</strong> The idea of jumping to Drupal 7 was discussed, but was determined to be too risky given many of the unknowns related to key contributed modules.</li>
<li><strong>Branding makeover:</strong>  The gmc executive team wanted a more modern, contemporary website redesign that reinforced the brand’s expansion to beyond music. gmc&#8217;s content has been expanding into originally produced movies and plays.</li>
<li><strong>Create a more immersive customer experience:</strong> The new site needed to integrate more social media and networking calls to action in order to bump registered users on the site. Thus, usability was at top of mind when planning functionality for the new site.</li>
<li><strong>Effectively integrating third-party tools:</strong> There were a number of applications being piecemealed on the old site that needed to be unified with Drupal-based solutions.</li>
<li><strong>Content import:</strong> There were large amounts of new assets (3100+ files, 2700+ nodes, and 2200+ taxonomy terms) that needed to be migrated over. During the rebuild, leveraging the core taxonomy system to build rich associations for relevant content was a major desire.</li>
</ol>
<h2>Graphic Design</h2>
<p>Upending preconceived notions about gmc&#8217;s previous brand was at top of mind during the site redesign. We collaborated extensively with gmc&#8217;s internal team to make sure new features would allow gmc&#8217;s content shift to continue without the need for constant feature maintenance updates. This was definitely a challenge. Careful planning was needed to create extremely flexible features that could meet the expected growth and ongoing changes, while still being easily managed. To deliver the new site, Mediacurrent utilized a team-based approach, dividing tasks between back-end engineering and front-end theming. </p>
<p>The Graphic Design aspects took into account the following:</p>
<p><strong>Strategy:</strong> The design strategy was predicated around three words &#8211; uplifting, inspirational, and simplicity. Mediacurrent helped gmc organize their vision into a comprehensive blend of gmc&#8217;s branded warm reds with touches of complementary cool grays, blues, purples and aqua blues. Transparent circles with thin white strokes overplayed on top of converging spiral circular gradients were used to achieve the celestial-inspirational feel. The overall design is built around &#8220;gmc red&#8221;, which was used for link and background navigation colors. Cool grays were used to pull the entire design together and create subtle areas of interest and focus. The gmc team did not want anything too loud or &#8220;bullish&#8221; in nature. </p>
<p><strong>Menu Design:</strong> We had to create a menu system that would visually divide each section of the site while still allowing additional categories to be added underneath corresponding sections. This challenge was met by using the classic tabbed menu system (Nice Menus Module) coupled with waterfall pull down menu interactivity. Of particular note is that when a user has selected a section the tab stays active throughout all section subpages. The active waterfall menu is visually offset or totally contrasted from non-active waterfall navigation. This was achieved with the help of extra classes inserted by jQuery.</p>
<p><strong>Network Bar:</strong> gmc wanted to give more prominence to their advertising offerings, social media callouts, and company profile. One other major point of emphasis was the &#8220;Get The Channel&#8221; feature. We suggested creating a network bar at the very top of the page to pull this important content away from the main content areas in the body and footer. The concept was to streamline the user’s access to this major feature.</p>
<p><strong>Homepage Rotator:</strong> The team at gmc wanted to update the user interface and experience to accommodate more content above the fold without disrupting the visual flow of the surrounding content. We designed a rotator that would allow for a larger lead photo, longer titles and more space for story lead text. The rotator allows for a user to pause and move between slides easily. </p>
<h2>Challenges</h2>
<p><img style="float: left; margin: 15px 30px 15px 0;" id="gmc_schedule" src="http://drupal.org/files/issues/gmc_schedule_v2.jpg" alt="gmc schedule" title="gmc schedule" name="gmc_schedule" />Content import can represent a risk to a Drupal project plan, even when the content is being imported from a previous Drupal version. One method to mitigate the risk of a complex content import is to analyze the input format being used for published content and be on alert for a disproportionate volume of content published to a general content type such as &#8220;page.&#8221; If the site has an overwhelming amount of content published as a &#8220;page&#8221; with &#8220;PHP&#8221; set as the input format, it could be a warning sign for struggles ahead.</p>
<p>gmc editors wanted to be able to build dynamic content associations between entertainers and associated content, but in a way to make the references optional. This was accomplished by augmenting the core taxonomy module with a custom module that creates node associations based on matching terms between content types, such as an actor to a film. This is unique compared to a traditional node reference setup, as actor nodes do not have to exist and can be added later for the association to be automatically created when the appropriately tagged node becomes available.</p>
<p>Creating a custom weekly programming schedule import feature also required extra effort. The available data lacked the necessary structure in order to run a normal import process. Instead, a custom module had to be created that would parse the weekly schedule file and create the appropriate nodes and content associations.</p>
<h2>Modules</h2>
<p>The back-end management of the gmc site was facilitated through a series of custom publishing solutions and third-party tools, none of which played particularly well together. It was obvious that there was a need to devise a better way to leverage all the moving parts. Enter version 6 of Drupal. The gmc site uses over 50 contributed modules, including staples like CCK and Views. </p>
<p>Here is a breakdown of the modules used:</p>
<h3>Module List</h3>
<p>admin, authcache, backup_migrate, better_formats, boost, captcha, CCK, content_copy, content_taxonomy, custom_breadcrumbs, date_api, dblog, fb_social, filefield_paths, filefield_sources, forum, globalredirect, googleanalytics, hierarchical_select, hs_content_taxonomy, image_captcha, image_resize_filter, imageapi, imagecache, imagefield, imagefield_assist, imagefield_tokens, imce, imce_wysiwyg, jcarousel, jquery_ui, lightbox2, menu_attributes, menutrails, modr8, nice_menus, nodequeue, noderef_image_helper, nodereference, nodewords, page_title, pathauto, scheduler, search404, seochecklist, share, sharethis, site_map, statistics, taxonomy, taxonomy_manager, views, views_bulk_operations, views_customfield, views_or, views_slideshow, viewscarousel, webform, wysiwyg</p>
<h3>Custom Modules</h3>
<p>We also needed to extend or customize a number of modules to meet the requirements we were after. Those modules included:</p>
<p><img style="float: right; margin: 15px 0 15px 30px;" id="gmc_schedule_import" src="http://drupal.org/files/issues/gmc_schedule_import_v2.jpg" alt="gmc schedule import" title="gmc schedule import" name="gmc_schedule" /><strong>Schedule:</strong> gmc wanted to automate their scheduling process and improve the online schedules usability as part of the redesign. The schedule spreadsheets are done by hand with no unique keys for programs This was cumbersome, but we came up with a solution to efficiently manage the process of importing a CSV file to populate the program schedule as well as creating episodes for their shows and the references between them.</p>
<p><strong>Galleria + Node Reference Image Helper:</strong> This extended the <a href="http://drupal.org/project/galleria">Galleria</a> module so that we could use the <a href="http://drupal.org/project/noderef_image_helper">noderef_image_helper</a> module which greatly improves its flexibility and administrative usability.</p>
<p><strong>Relevant Content + Views:</strong> The <a href="http://drupal.org/project/relevant_content">Relevant Content</a> module was extended to use <a href="http://drupal.org/project/views">Views</a> which provides all the advantages of a custom view with relevant_content providing the term arguments.</p>
<p><strong>Unicorn Video:</strong> gmc is using <a href="http://www.unicornmedia.com/">Unicorn Media</a> as their video CDN, so we created a custom module to work with their API for the sites video features.</p>
<p><strong>Conditional Node Terms:</strong> One of the workflow obstacles we encountered was the client’s desire to dynamically link content to terms if a node with matching criteria was found, and for it to act as a normal term if not. A combination of custom term, theming and argument handling functions are combined into a module for this functionality.</p>
<p>During the development of this site, Mediacurrent gained approval from the client to contribute code back to the Drupal community. Team member Chris Hales submitted patches for the <a href="http://drupal.org/node/1030472">Galleria</a>, <a href="http://drupal.org/node/857046#comment-3432814">Relevant Content</a> and <a href="http://drupal.org/node/772668">Nodewords</a> modules. </p>
<h2>Drupal Theming</h2>
<p>To reiterate, there was a heavy emphasis to create a highly professional re-brand of the site, while allowing visitors to dive into loads of data without clutter or confusion. In short, theming a custom site like gmc always has obstacles that require creative problem-solving. Here are some we wanted to highlight:</p>
<p><strong>Gradients and Rounded Corners:</strong> The detailed design elements required many types of nested content areas with rounded corners and background gradients. However, the design had to appear consistent regardless of browser type and Internet Explorer (IE) does not recognize the border radius style in CSS. In order to theme the nested rounded corners in a way that would appear consistent in IE, background images and additional div classes were added to customize the node output.</p>
<p><strong>Drupal&#8217;s Views Pager:</strong> The design required particular classes needed for custom theming that were not available from the pager&#8217;s output from Drupal core. A theme override function was created and added to template.php that reformats Drupal&#8217;s pager output to add the needed classes and remove un-required elements for custom theming.</p>
<p><strong>Video Playlist:</strong> The design for the video playlist required that all items in the playlist view display horizontally. The video module outputs the video feed items into a table and so the items could easily be aligned by floating the table rows left. However IE7 does not recognize floats when applied to table rows. In order to accommodate the CSS limitation with IE7, an alternate display was agreed upon with the client to save time in which a horizontal v. vertical alignment is used for IE7 only.</p>
<p><strong>Drupal&#8217;s Views Filters and Custom Alpha Pager:</strong> The functional requirements for the view pages needed an Alpha Pager which is not available in Drupal 6 views by default. Also, the design for the search fields and submit buttons required custom theming beyond what is readily available from default Drupal output. Custom functionality using PHP, View Arguments, and custom div classes needed for theming, were created and added into the header for each view that needed an Alpha Pager. To theme Drupal&#8217;s views search filters to meet the design requirements, CSS is used to position fields and buttons accordingly while also replacing default browser submit buttons with a custom graphic that is consistent in all browsers.</p>
<p><strong>Drop Down Menu Theming:</strong> The design required different visual treatment for non-active drop down menus v. active drop down menus. Non-active drop down states are required to have pink and purple backgrounds while the active dropdown would have a white background. Neither Drupal nor the Nice Menus module output unique classes to identify active v. non-active parent items which are needed to target with CSS for independent theming. Nice Menus module had to be patched to add the first, last, odd and even classes needed for CSS targeting to apply some of the custom theming. In order to add the needed &#8220;active&#8221; and &#8220;non-active&#8221; classes to menu&#8217;s child elements, custom jQuery functionality was created to apply the needed classes dynamically. </p>
<h2>Final Thoughts</h2>
<p><img style="float: left; margin: 15px 30px 15px 0;" id="gmc_recommendedshows" src="http://drupal.org/files/issues/gmc_recommendedshows_v2.jpg" alt="gmc recommended shows" title="gmc recommended shows" name="gmc_recommendedshows" />Every Drupal project should be viewed as a learning experience. Overall, we were able to accomplish key goals and build a powerful, versatile Drupal website that took into account the way gmc was rebranding themselves. The collaborative effort between Mediacurrent and gmc has resulted in a more sophisticated, flexible and professional site. </p>
<p>For project management and ticket tracking, Mediacurrent uses Development Seed’s convenient Drupal distribution, Open Atrium, along with several custom additions including time tracking features. We have been through several PM tools and have been extremely satisfied with Open Atrium. The feature set is akin to what you would find in a more expensive proprietary system, but the flexible Drupal-based system allows us the opportunity to make continued improvements and refinements to the system and how it supports our processes. For example, during the course of this project we customized some of the casetracker-related views to better organize our work around milestones in the project plan.</p>
<p>As with any sizable Drupal implementation, we cannot underscore enough the importance of well-defined site architecture documentation during the planning phase. While most Drupal shops now employ some form of an Agile based methodology, having a roadmap is imperative. In our functional specification document, we incorporated gmc requirements including planned content types, taxonomy, roles, permissions and modules.</p>
<p>Last but not least, the redesign was challenging, yet fun to build. The client’s editors have enjoyed the improved administration features while working with their content. Drupal’s flexibility will allow for continuous and ongoing improvements.</p>
<h2>Technology Environment</h2>
<ul>
<li>Stack:  RHEL 5.5 LAMP (Linux, Apache, MySQL, PHP)</li>
<li>Hosting: Rackspace</li>
<li>CDN: Unicorn Media</li>
<li>jQuery: Replaced all Flash widgets in jQuery</li>
</ul>
<h2>About Mediacurrent</h2>
<p>Mediacurrent is an Atlanta, GA, based interactive firm that has developed a specialization and consulting vertical within the free, open-source content management system called Drupal. For more information regarding Mediacurrent’s services and portfolio please visit <a href="http://www.mediacurrent.com" title="http://www.mediacurrent.com">http://www.mediacurrent.com</a>.</p>
<h2>Project Team</h2>
<ul>
<li><a href="http://drupal.org/user/171429">Mediacurrent</a></li>
<li><a href="http://drupal.org/user/723852">Dante Taylor</a> &#8211; design</li>
<li><a href="http://drupal.org/user/347249">Chris Hales</a> &#8211; development, lead architect</li>
<li><a href="http://drupal.org/user/261607">Trent Wyman</a> &#8211; theming</li>
<li><a href="http://drupal.org/user/221045">Jeff Diecks</a> &#8211; project management</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.connexx-contentmanagement.nl/gospel-music-channel-watchgmctv-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

