<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>This End Up</title><link>http://codersforchrist.com/cs/blogs/nick/default.aspx</link><description>handling technology in the church with care</description><dc:language>en</dc:language><generator>CommunityServer 2.1 (Build: 60809.935)</generator><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/ThisEndUp" type="application/rss+xml" /><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site.</feedburner:browserFriendly><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><title>Roundtable: Reason for Not Attending</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/AnvA9KC_nFY/Roundtable_3A00_-Our-Reason-for-Not-Attending.aspx</link><pubDate>Sat, 30 May 2009 20:59:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4840</guid><dc:creator>nairdo</dc:creator><slash:comments>2</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4840.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4840</wfw:commentRss><description>&lt;p&gt;I&amp;#39;ve been asked by a few people why we decided not to&amp;nbsp;attend this year&amp;#39;s roundtable.&amp;nbsp; We&amp;#39;ve been very disappointed with the 2008.3 release (the problems that it created,&amp;nbsp;the lack of a documented test plan and release certification checklist/sign-off, missing feature documentation and general lack of product responsibility) and decided to make a statement that&amp;nbsp;Arena needed to focus its attention on their core business first.&lt;/p&gt;&lt;p&gt;We made this decision several months ago shortly after the 2008.3 release prior to knowing about the two&amp;nbsp;things that will be announced at the roundtable.&amp;nbsp; I&amp;#39;ll be commenting on these two things immediately as the news breaks on Monday morning.&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4840" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena+ChMS/default.aspx">Arena ChMS</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Roundtable/default.aspx">Roundtable</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2009/05/30/Roundtable_3A00_-Our-Reason-for-Not-Attending.aspx</feedburner:origLink></item><item><title>The Break Up: the Branching of CCV and Arena </title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/c64GouIxaBs/The-Branching-of-CCV-and-Arena-.aspx</link><pubDate>Sat, 30 May 2009 01:27:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4839</guid><dc:creator>nairdo</dc:creator><slash:comments>2</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4839.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4839</wfw:commentRss><description>&lt;p&gt;&lt;img align="right" height="109" src="http://codersforchrist.com/images/20090531ArenaCCVBranch.png" width="319" /&gt;Now that it&amp;#39;s been announced to the Arena community developers I can discuss the news: &lt;a href="http://www.ccvonline.com"&gt;CCV&lt;/a&gt; has decided to branch away from the Arena core code base.&lt;/p&gt;&lt;p&gt;It&amp;#39;s difficult for me to talk too much about this situation, since I&amp;#39;m pretty close with &lt;a href="http://www.jonedmiston.com/"&gt;Jon&lt;/a&gt; and &lt;a href="http://www.david-turner.net/" title="David&amp;#39;s blog"&gt;David&lt;/a&gt;, and I&amp;#39;ve got friends over at the Arena HQ in Tennessee.&amp;nbsp; I&amp;#39;ve also been involved in the Community Developer Board for&amp;nbsp;the past two years, so I&amp;#39;ve been able to listen in on many of the discussions between &lt;a href="http://www.ccvonline.com"&gt;CCV&lt;/a&gt; and &lt;a href="http://www.arenachms.com"&gt;Arena&lt;/a&gt;. &amp;nbsp;I think it&amp;#39;s probably safe for everyone to assume that there is at least some blame (not even sure &lt;em&gt;blame &lt;/em&gt;is the right word) on both sides.&amp;nbsp; Also, based on some things I&amp;#39;ve heard,&amp;nbsp;both sides believe they will be unshackled a bit by the breakup.&amp;nbsp; Undoubtedly not having to worry about each others changes will eliminate some&amp;nbsp;additional work they&amp;#39;ve both been having to deal with, but I personally believe this will probably come at a cost.&lt;/p&gt;&lt;p&gt;Regardless of the reasons that brought CCV and Arena to this point, what will this mean to Arena?&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Originally this was going to be the end of the post&amp;nbsp;and I was going to initially refrain from giving my opinion.&amp;nbsp;But after several days of reflection I&amp;#39;ve decided to be the first to chime in...&lt;/p&gt;&lt;p&gt;&lt;hr style="margin: 3px auto; text-align: center; height: 1px; width: 60%; color: #888888; background-color: #888888; border: 0;"&gt;&lt;/p&gt;&lt;p&gt;I think without proper guidance and strong, decisive leadership there is a danger that Arena&amp;nbsp;could become what many other older ChMS products became: dull, convoluted, complicated, and bloated.&amp;nbsp; &lt;strong&gt;But I think there &lt;em&gt;is&lt;/em&gt; definitely hope...&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Yes,&amp;nbsp;CCV originally created what we now call &lt;a href="http://www.arenachms.com"&gt;Arena ChMS&lt;/a&gt;.&amp;nbsp; They are the masterminds and designers behind most of what it is today.&amp;nbsp; We all have&amp;nbsp;David and Jon to thank for this.&amp;nbsp; And the guys at Arena definitely made it a product and added various regular features and many administrative features.&amp;nbsp; As much as I&amp;#39;d like to think that CCV has been directing the future of Arena/Arena-features, you could make a case that this really&lt;em&gt; has not&lt;/em&gt; happened as much over the past 2 years.&amp;nbsp; I do believe the relationship they shared allowed&amp;nbsp;CCV to influence the overall product to a degree and a continued commitment to that relationship could still have a similar effect.&amp;nbsp; Even so, CCV&amp;#39;s&amp;nbsp;branching will&amp;nbsp;eventually mean that &lt;em&gt;their&lt;/em&gt; modules** will not be compatible with any of our Arena installations.&lt;/p&gt;&lt;p&gt;I believe the key to Arena&amp;#39;s future&amp;nbsp;is what the community does.&amp;nbsp;&lt;strong&gt; It&amp;#39;s the community that makes Arena unique&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;When I read &lt;a href="http://transformingrenewal.blogspot.com/2009/05/chms-childrens-check-in.html" title="the Community is what makes Arena"&gt;Joel&amp;#39;s recent post&lt;/a&gt; I was reminded of this fact.&amp;nbsp; Thanks Joel!&amp;nbsp; What other ChMS system allows you to pick between &lt;em&gt;three&lt;/em&gt; different check-in solutions?&amp;nbsp; As more developer churches come aboard and create more solutions/modules,&amp;nbsp;we all win.&amp;nbsp; However, now more than ever -&amp;nbsp;the community&amp;#39;s role must increase.&amp;nbsp; And it&amp;#39;s not necessarily easy or free.&amp;nbsp; It will mean more focused,&amp;nbsp;thoughtful&amp;nbsp;discussions.&amp;nbsp; More energy spent on &lt;a href="http://community.arenachms.com/files/folders/modules/default.aspx" title="module repository"&gt;packaging&lt;/a&gt;&amp;nbsp;and &lt;a href="http://community.arenachms.com/wiki" title="on the Wiki"&gt;documenting&lt;/a&gt; your modules for others.&amp;nbsp; More communicating and coordinating with others.&amp;nbsp; More of everything.&lt;/p&gt;&lt;p&gt;Trust me -- it takes time and energy.&amp;nbsp; If you do not put in the time, &lt;strong&gt;it will not just happen&lt;/strong&gt; automatically.&lt;/p&gt;&lt;p&gt;Will the community rise to the challenge?&amp;nbsp; I believe it will.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;[The other &lt;strong&gt;great &lt;/strong&gt;news is that Arena has finally established a single person to be the Product Manager -- and it is &lt;a href="http://twitter.com/mtwhite" title="follow Mark on Twitter"&gt;Mark White&lt;/a&gt;.&amp;nbsp; I&amp;#39;ll cover this in another post.] &lt;br /&gt;&lt;/p&gt;&lt;p style="font-size: 10px; color: #888888"&gt;** Jon and David tell me they will actually still do some development on the &lt;em&gt;standard&lt;/em&gt; Arena product too -- if not during their work week, on their own&amp;nbsp;free time.&amp;nbsp; And so they will still be part of the community.&amp;nbsp; So, be on the lookout for some of this great stuff because I recently got a glimpse of some of it.&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4839" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena/default.aspx">Arena</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena+ChMS/default.aspx">Arena ChMS</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2009/05/29/The-Branching-of-CCV-and-Arena-.aspx</feedburner:origLink></item><item><title>Wow - "The Most Important Feature"</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/UjZKz2ipzqs/Wow-_2D00_-_2200_The-Most-Important-Feature_2200_.aspx</link><pubDate>Fri, 22 May 2009 23:30:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4833</guid><dc:creator>nairdo</dc:creator><slash:comments>0</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4833.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4833</wfw:commentRss><description>&lt;p&gt;I was&amp;nbsp;pretty excited about the upcoming &lt;a href="http://scottgu2009.eventbrite.com/"&gt;AZGroups event with Scott Guthrie next week&lt;/a&gt;, but when I started reading about &lt;a href="http://go.microsoft.com/fwlink/?LinkID=151797" title="open to the public"&gt;VS 2010 beta 1&amp;nbsp;released yesterday&lt;/a&gt; and some of the .NET 4.0 features I had a flashback about something I said in 2006, but first check out&amp;nbsp;this quote by &lt;a href="http://msmvps.com/blogs/kathleen/archive/2009/01/07/the-most-important-feature-of-net-4-0.aspx" title="she says it quite well"&gt;Kathleen Dollard** in her recent blog entry&lt;/a&gt;:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&amp;quot;.NET 4.0 is likely to offer patterns that will be the most important change in my coding since the huge changes brought on by LINQ (and supporting techniques like extensions and lambdas) of .NET 3.5. That was the most important change to my coding since generics in .NET 2.0. That was the most important change to my coding style since strongly typed full OO programming came on in .NET 1.0. That was the most important change to my coding style since the visual coding style of Visual Basic (pre .NET). That was the most important change to my coding style since Clipper and FoxPro. Get the trend? Eight years, eight years, three years, two years, 18 months... I do a talk for INETA called &amp;quot;Rethinking Object Orientation&amp;quot; that tries to get a grip on these changes... .NET 4.0 is going to bring a lot and inspire a lot of rethinking.&lt;/p&gt;&lt;p&gt;...&lt;/p&gt;&lt;p&gt;The most important feature of .NET 4.0 is Windows Workflow 4.0.&amp;quot;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;I think she&amp;#39;s exactly right.&amp;nbsp; When I first started looking at WF at the end of 2006,&amp;nbsp;&lt;a href="http://codersforchrist.com/cs/blogs/nick/archive/2006/11/20/.NET-Framework-3.0-Released.aspx"&gt;I&amp;nbsp;said the following in a blog post&lt;/a&gt;:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&amp;nbsp;&amp;quot;...I believe WF has the potential to further &lt;strong&gt;&lt;em&gt;revolutionize&lt;/em&gt;&lt;/strong&gt; software development by allowing designers to extract hard-coded business logic from their applications...&amp;quot; &lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Unfortunately WF was really difficult to use, but &lt;strong&gt;if they&amp;#39;ve solved that problem&lt;/strong&gt; with this complete re-write, I think it&amp;#39;s going to be another thing that we&amp;#39;d be unwise to ignore (&lt;a href="http://codersforchrist.com/cs/blogs/nick/archive/2006/09/07/Yearly-AZGroups-Big-Event-Summary.aspx" title="read the second to last paragraph in this post"&gt;similar to what I said about LINQ&lt;/a&gt;) as it will become a part of every developer&amp;#39;s world.&lt;/p&gt;&lt;p&gt;I hope Scott Guthrie spends some time talking about WF next week.&lt;/p&gt;&lt;p&gt;-Nick&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;em style="color: #888888"&gt;** I first saw Kathleen at&amp;nbsp;DevConnections in Vegas a year&amp;nbsp;or so ago and she stood out to me as a very level&amp;nbsp;headed and practical&amp;nbsp;developer/architect and&amp;nbsp;I have a lot of respect for her assessments.&lt;/em&gt;&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4833" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/AZGroups/default.aspx">AZGroups</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Workflow/default.aspx">Workflow</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Scott+Guthrie/default.aspx">Scott Guthrie</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2009/05/22/Wow-_2D00_-_2200_The-Most-Important-Feature_2200_.aspx</feedburner:origLink></item><item><title>UX Transitions: the R-evolution</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/BH-Ub9H2Y78/UX-Transitions_3A00_-the-R_2D00_evolution.aspx</link><pubDate>Tue, 28 Apr 2009 01:16:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4795</guid><dc:creator>nairdo</dc:creator><slash:comments>0</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4795.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4795</wfw:commentRss><description>&lt;p&gt;&lt;a href="http://videos.visitmix.com/MIX09/KEY01" title="click to watch keynote from day 1"&gt;&lt;img align="right" alt="MIX09" border="0" height="196" src="http://codersforchrist.com/images/Mix09.jpg" style="width: 176px; height: 196px" title="MIX09" width="176" /&gt;&lt;/a&gt;I know this is a month old, but I&amp;#39;m just getting caught up on some reading/viewing...&amp;nbsp; If you also haven&amp;#39;t seen the &lt;a href="http://videos.visitmix.com/MIX09/KEY01" title="MIX 09 - Day 1 keynote by Bill Buxton and Scott Guthrie"&gt;day 1 keynote&lt;/a&gt; of &lt;a href="http://live.vixitmix.com" title="MIX website"&gt;MIX 09&lt;/a&gt;&amp;nbsp;and care about where your craft is going, you need to watch at least the first 8 minutes of the &lt;a href="http://videos.visitmix.com/MIX09/KEY01" title="click to watch"&gt;video&lt;/a&gt;&amp;nbsp;and &lt;em&gt;then if you&amp;#39;re short on time&lt;/em&gt; jump to the 97 minute mark and watch the demo of Expression Blend 3.&lt;/p&gt;&lt;p&gt;Having watched that video and&amp;nbsp;having recently worked on our&amp;nbsp;&lt;a href="http://codersforchrist.com/cs/blogs/nick/archive/2009/04/17/New-Website-powered-by-Arena.aspx" title="our Arena powered website"&gt;new web site&lt;/a&gt;, it&amp;#39;s becoming more clear to me how important &lt;em&gt;user experience&lt;/em&gt; really is.&lt;/p&gt;&lt;p&gt;Here&amp;#39;s a small example of&amp;nbsp;what I mean...&lt;/p&gt;&lt;p&gt;Previously, I might not think twice about a login popup that went something like this:&lt;/p&gt;&lt;p&gt;&lt;img alt="user experience 1" height="232" src="http://codersforchrist.com/images/blog/20090427-UX1.gif" style="width: 300px; height: 232px" title="user experience 1" width="300" /&gt;&lt;/p&gt;&lt;p&gt;Now, it seems to me like everything ought to behave more like this:&lt;/p&gt;&lt;p&gt;&lt;img alt="user experience 2" height="232" src="http://codersforchrist.com/images/blog/20090427-UX2.gif" style="width: 300px; height: 232px" title="user experience 2" width="300" /&gt;&lt;/p&gt;&lt;p&gt;On one hand it may&amp;nbsp;seem subtle, but on the other hand it definitely changes the user experience.&amp;nbsp; I actually enjoy logging in to the site (ok, yes, I&amp;#39;m quite weird ;).&lt;/p&gt;&lt;p&gt;I&amp;#39;m guessing we&amp;#39;ll get to see some other related cool demos when &lt;a href="http://scottgu2009.eventbrite.com/" title="Scott Guthrie"&gt;Scott Guthrie presents next month&lt;/a&gt; at the local &lt;a href="http://azgroups.org/" title="AZGroups"&gt;AZGroups event&lt;/a&gt;.&amp;nbsp; I&amp;#39;ll see you there!&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4795" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/AZGroups/default.aspx">AZGroups</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Silverlight/default.aspx">Silverlight</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Scott+Guthrie/default.aspx">Scott Guthrie</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/UX/default.aspx">UX</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2009/04/27/UX-Transitions_3A00_-the-R_2D00_evolution.aspx</feedburner:origLink></item><item><title>New Cccev Website - Powered by Arena</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/_3eFShVqaGA/New-Website-powered-by-Arena.aspx</link><pubDate>Fri, 17 Apr 2009 23:22:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4790</guid><dc:creator>nairdo</dc:creator><slash:comments>4</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4790.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4790</wfw:commentRss><description>&lt;style&gt;





li {padding-bottom: 8px;}&lt;/style&gt;&lt;div id="media" style="float: right"&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0" height="258" id="csSWF" width="320"&gt;&lt;param name="_cx" value="8467"&gt;&lt;/param&gt;&lt;param name="_cy" value="6826"&gt;&lt;/param&gt;&lt;param name="FlashVars"&gt;&lt;/param&gt;&lt;param name="Movie" value="http://codersforchrist.com/images/blog/NewWebSite/NewWebSite.swf"&gt;&lt;/param&gt;&lt;param name="Src" value="http://codersforchrist.com/images/blog/NewWebSite/NewWebSite.swf"&gt;&lt;/param&gt;&lt;param name="WMode" value="Window"&gt;&lt;/param&gt;&lt;param name="Play" value="-1"&gt;&lt;/param&gt;&lt;param name="Loop" value="-1"&gt;&lt;/param&gt;&lt;param name="Quality" value="High"&gt;&lt;/param&gt;&lt;param name="SAlign"&gt;&lt;/param&gt;&lt;param name="Menu" value="-1"&gt;&lt;/param&gt;&lt;param name="Base"&gt;&lt;/param&gt;&lt;param name="AllowScriptAccess" value="always"&gt;&lt;/param&gt;&lt;param name="Scale" value="ShowAll"&gt;&lt;/param&gt;&lt;param name="DeviceFont" value="0"&gt;&lt;/param&gt;&lt;param name="EmbedMovie" value="0"&gt;&lt;/param&gt;&lt;param name="BGColor" value="1A1A1A"&gt;&lt;/param&gt;&lt;param name="SWRemote"&gt;&lt;/param&gt;&lt;param name="MovieData"&gt;&lt;/param&gt;&lt;param name="SeamlessTabbing" value="1"&gt;&lt;/param&gt;&lt;param name="Profile" value="0"&gt;&lt;/param&gt;&lt;param name="ProfileAddress"&gt;&lt;/param&gt;&lt;param name="ProfilePort" value="0"&gt;&lt;/param&gt;&lt;param name="AllowNetworking" value="all"&gt;&lt;/param&gt;&lt;param name="AllowFullScreen" value="true"&gt;&lt;/param&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://codersforchrist.com/images/blog/NewWebSite-Liger-large/NewWebSite-Liger-large.htm" target="_blank"&gt;click for large view&lt;/a&gt; &lt;/div&gt;&lt;p&gt;This week we finished development and implementation of our latest, jQuery flavored,&amp;nbsp;Arena powered &lt;a href="http://cccev.com/" title="Central Christian Church of the East Valley"&gt;cccev.com&lt;/a&gt; website -- and I&amp;#39;m pretty excited about how it turned out.&amp;nbsp; Everyone did a tremendous job: Jeremy Wagner and Mark Miller on design; Jason Offutt, &lt;a href="http://codersforchrist.com/Dallon" title="Dallon&amp;#39;s blog"&gt;Dallon&lt;/a&gt;&amp;nbsp;and myself on development and implementation; the company&amp;nbsp;&lt;a href="http://www.psd2html.com/" title="Home of PSD2HTML"&gt;PSD2HTML&lt;/a&gt; for slicing,&amp;nbsp;and many other Cccev staff for content and testing.&lt;/p&gt;&lt;p&gt;It went down like this...&lt;/p&gt;&lt;p&gt;Jason, Dallon and I&amp;nbsp;first sat down with Mark and his PSD&amp;nbsp;mockups.&amp;nbsp; It was agreed in advance that our team would provide about 30 days of development time.&amp;nbsp; We broke everything down into the individual modules we needed to create or customize, and then entered each feature into &lt;a href="http://codersforchrist.com/cs/blogs/nick/archive/2009/01/13/Software-Development-On-Time.aspx"&gt;OnTime&lt;/a&gt;&amp;nbsp;(as&amp;nbsp;sprint 1) along with an estimated number of hours to complete it.&amp;nbsp; Mark had to make decisions whether to keep or toss an idea, because once&amp;nbsp;OnTime said we&amp;nbsp;had reached a total of 30 days worth of estimated work, our meeting was over and sprint 1 was locked in.&lt;/p&gt;&lt;p&gt;Next Mark took the PSDs and worked with &lt;a href="http://www.psd2html.com/" title="Home of PSD2HTML"&gt;PSD2HTML&lt;/a&gt;&amp;nbsp;to slice everything into working HTML mockups.&amp;nbsp; As Mark received output from &lt;a href="http://www.psd2html.com/" title="Home of PSD2HTML"&gt;PSD2HTML&lt;/a&gt; we got to work on making them actual functioning Arena modules (more on this approach at the conclusion).&lt;/p&gt;&lt;p&gt;What follows is a&amp;nbsp;quick dissection of sprint 1 for the site.&lt;/p&gt;&lt;p&gt;We created&amp;nbsp;six page templates.&amp;nbsp; One for the home page,&amp;nbsp;three for department/subpages (1 col, 2 col, 3 col), one for our&amp;nbsp;newsletter main page called &amp;quot;the Drop&amp;quot;, and one for the video/podcast stuff called&amp;nbsp;Central TV.&lt;/p&gt;&lt;p&gt;Home page:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The&amp;nbsp;&lt;strong&gt;promotion/feature roller&lt;/strong&gt; you see on the home page&amp;nbsp;is a custom Arena module Dallon created which uses LINQ-to-Objects&amp;nbsp;to get the promotions and jQuery and the jquery.galleryScroll.1.4.5.pack.js for the slide navigation.&lt;/li&gt;&lt;li&gt;The &lt;strong&gt;main drop down navigation&lt;/strong&gt; is a custom module Jason created which also uses LINQ-to-Objects&amp;nbsp;and jQuery for the slide effects. (&lt;em&gt;applied to the appropriate content area of all new templates&lt;/em&gt;)&lt;/li&gt;&lt;li&gt;The &lt;strong&gt;login-link-user-login popup&lt;/strong&gt; is a combination of a custom Login Logout control I wrote which controls the display of a custom UserLogin.ascx module (which inherits the standard Arena ArenaWeb.UserControls.Security.UserLogin control). (&lt;em&gt;applied to the appropriate content area of all new templates&lt;/em&gt;)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Sub pages:&amp;nbsp;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Side bar calendar&lt;/strong&gt; with &lt;strong&gt;mini event details&lt;/strong&gt; was created by Jason.&amp;nbsp; It starts from a parent event id&amp;nbsp;(module setting) and traverses&amp;nbsp;the tree to&amp;nbsp;obtain all child events that are flagged with the given topic areas (module setting). &amp;nbsp;jQuery is used to slide the event details when there are multiple events.&lt;/li&gt;&lt;li&gt;The calendar &lt;strong&gt;Invite Friend popup&lt;/strong&gt; was&amp;nbsp;written by&amp;nbsp;Jason and is smooth-shown via a jQuery wired to the click event of the &amp;#39;send invite&amp;#39; link on the side bar calendar.&lt;/li&gt;&lt;li&gt;The &lt;strong&gt;subpage navigation&lt;/strong&gt; was created by Dallon in about 100 lines of code and markup which uses LINQ-to-Objects&amp;nbsp;(see snippet below) to obtain the pages and jQuery for the sub-sub page slide animation: &lt;div style="font-size: 8pt; margin: 20px 0px 10px; overflow: auto; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: Consolas, 'Courier New', Courier, Monospace; background-color: #f4f4f4; border: gray 1px solid; padding: 4px"&gt;&lt;pre style="font-size: 8pt; margin: 0em; overflow: visible; width: 100%; color: black; line-height: 12pt; font-family: Consolas, 'Courier New', Courier, Monospace; background-color: #f4f4f4; border-style: none; padding: 0px"&gt;var pages = (from p &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; rootPage.ChildPages.OfType&amp;lt;PortalPage&amp;gt;()
             &lt;span style="color: #0000ff"&gt;where&lt;/span&gt; (p.PortalPageID != -1 &amp;amp;&amp;amp; p.DisplayInNav &amp;amp;&amp;amp; p.Permissions.Allowed(Arena.Security.OperationType.View, CurrentUser))
             select p).Distinct().OrderBy(p =&amp;gt; p.PageOrder);&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;The &lt;strong&gt;serving opportunities viewer&lt;/strong&gt;, created by Dallon, also uses LINQ-to-Objects and jQuery (see a pattern? &lt;a href="http://codersforchrist.com/cs/blogs/nick/archive/2006/09/07/Yearly-AZGroups-Big-Event-Summary.aspx"&gt;I told you LINQ was not something to ignore&lt;/a&gt;;) and displays all public viewable serving tags which are a child of a given parent serving tag (module setting).&lt;/li&gt;&lt;li&gt;(Not shown)&amp;nbsp;a custom&amp;nbsp;&lt;strong&gt;Background changer&lt;/strong&gt; module applied to the department pages&amp;nbsp;which uses jQuery to dynamically add css classes to particular elements to effectively change the background image according to the configured background (lookup; module setting).&lt;/li&gt;&lt;li&gt;(not shown) a custom&lt;strong&gt; Flickr module&lt;/strong&gt; Jason wrote which uses &lt;a href="http://www.codeplex.com/LINQFlickr" title="A LINQ to Flickr API"&gt;Athena&lt;/a&gt; (which uses &lt;a href="http://www.codeplex.com/LinqExtender" title="Athena is built on LinqExtender; LinqExtender is a toolkit for creating custom LINQ providers"&gt;LinqExtender&lt;/a&gt;).&amp;nbsp; It takes a Flickr ID (module setting) and creates a small grid of photo thumbnails which smoothly slides on&amp;nbsp;prev/next navigation.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The Central TV pages use&amp;nbsp;three custom&amp;nbsp;modules created by Jason:&amp;nbsp;channel viewer, series/topic viewer, and video player.&lt;/p&gt;&lt;p&gt;The Drop page uses a custom NewsletterSubscriber.ascx&amp;nbsp;(it inherits the standard ArenaWeb.UserControls.Core.NewsletterSubscribe class) to achieve the exact layout needed to match Mark and Jeremy&amp;#39;s design.&lt;/p&gt;&lt;p&gt;Lastly, for those who care, we&amp;nbsp;relied on the underlying Arena object framework -- we did not create any custom objects.&lt;/p&gt;&lt;p&gt;We actually finished &lt;strong&gt;on time,&lt;/strong&gt; and the burndown chart in &lt;a href="http://www.axosoft.com/products/ontime.aspx" title="OnTime ROCKS!"&gt;OnTime&lt;/a&gt;&amp;nbsp;really helped everyone stay focused.&amp;nbsp;&amp;nbsp;In conclusion, one valuable lesson I learned was the added&amp;nbsp;complexity&amp;nbsp;of setting up our development pipeline&amp;nbsp;&lt;em&gt;overlapping&lt;/em&gt; with PSD2HTML.&amp;nbsp; The dependency between&amp;nbsp;their work (javascript, css,&amp;nbsp;and&amp;nbsp;HTML slices) and our modules made&amp;nbsp;our work&amp;nbsp;messy, inefficient and disheartening at times as we would have to&amp;nbsp;chase down layout bugs after merging their latest output with ours.&amp;nbsp; Next time we&amp;#39;ll just wait until&amp;nbsp;they&amp;#39;re complete before starting our work.&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4790" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena/default.aspx">Arena</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena+ChMS/default.aspx">Arena ChMS</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/jQuery/default.aspx">jQuery</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2009/04/17/New-Website-powered-by-Arena.aspx</feedburner:origLink></item><item><title>Our Virtual Check-in System</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/soFajlVngzY/Our-Virtual-Check_2D00_in-System.aspx</link><pubDate>Sun, 08 Feb 2009 22:34:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4785</guid><dc:creator>nairdo</dc:creator><slash:comments>1</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4785.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4785</wfw:commentRss><description>&lt;p&gt;For the past few weeks, I was beginning to think our new&amp;nbsp;Arena check-in module was only going to&amp;nbsp;be a &lt;em&gt;virtual&lt;/em&gt; system -- not a real, working application.&amp;nbsp; You see, we had to postpone the full rollout a few weeks ago when our first full scale pilot had a printing&amp;nbsp;meltdown.&amp;nbsp; After about 20-40 people had successfully checked in, all remaining check-in labels&amp;nbsp;(Zebra LP2824) would fail to print.&lt;/p&gt;&lt;p&gt;&lt;img align="right" alt="Zebra LP2824: my bane" height="200" src="http://codersforchrist.com/cs/blogs/nick/attachment/31.ashx" style="width:200px;height:200px;" title="Zebra LP2824: my bane" width="200" /&gt;In hindsight, the &lt;a href="http://codersforchrist.com/cs/blogs/nick/archive/2006/12/14/Zebra-Label-Printers-_2D00_-Driver-Problems.aspx" title="drivers, can&amp;#39;t live with them, can&amp;#39;t live without them"&gt;source of the problem&lt;/a&gt; now seems &lt;em&gt;virtually&lt;/em&gt; clear... (hint hint)&lt;/p&gt;&lt;p&gt;Jason and I could see where the problem was, but we couldn&amp;#39;t explain it.&amp;nbsp; In code, we&amp;nbsp;check the &lt;a href="http://msdn.microsoft.com/en-us/library/system.drawing.printing.printdocument.aspx" title="msdn"&gt;PrintDocument&amp;#39;s&lt;/a&gt; IsValid property, and while normally this should return true, after some unknown point it would always return &lt;strong&gt;false&lt;/strong&gt;.&amp;nbsp;&amp;nbsp; We also discovered just prior to this, our exception log had&amp;nbsp;a &lt;strong&gt;System.AccessViolationException&lt;/strong&gt; with the message &amp;#39;&lt;strong&gt;Attempted to read or write protected memory. This is often an indication that other memory is corrupt.&lt;/strong&gt;&amp;#39;&lt;/p&gt;&lt;p&gt;The only way to clear the system from this state was to perform an &amp;quot;iisreset&amp;quot;.&amp;nbsp;&amp;nbsp; The problem seemed to linger in the IIS application pool.&amp;nbsp; We reckoned that the memory &lt;a href="http://codersforchrist.com/cs/controlpanel/blogs/grinding-it-out.blogspot.com" title="Derek Mangrum&amp;#39;s blog"&gt;Derek&lt;/a&gt; added to the VM host a few days earlier might be the issue so we removed it and tried again.&amp;nbsp; Same problem.&lt;/p&gt;&lt;p&gt;We did more digging and testing and were able to see this in the stack trace:&lt;/p&gt;&lt;div style="font-size:8pt;margin:20px 0px 10px;overflow:auto;width:97.5%;cursor:text;max-height:200px;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border:gray 1px solid;padding:4px;"&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Internal&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.&lt;strong&gt;IntUnsafeNativeMethods&lt;/strong&gt;&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.IntCreateDC&lt;/span&gt;(String &lt;strong&gt;lpszDriverName&lt;/strong&gt;, String lpszDeviceName, String lpszOutput, HandleRef lpInitData) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Internal&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.IntUnsafeNativeMethods&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CreateDC&lt;/span&gt;(String lpszDriverName, String lpszDeviceName, String lpszOutput, HandleRef lpInitData) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Internal&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.DeviceContext&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CreateDC&lt;/span&gt;(String driverName, String deviceName, String fileName, HandleRef devMode) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrinterSettings&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CreateDeviceContext&lt;/span&gt;(IntPtr hdevmode) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.StandardPrintController&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.OnStartPrint&lt;/span&gt;(PrintDocument document, PrintEventArgs e) 
at System&lt;span style="color:#cc6633;"&gt;.Windows&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Forms&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintControllerWithStatusDialog&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.OnStartPrint&lt;/span&gt;(PrintDocument document, PrintEventArgs e) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintController&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Print&lt;/span&gt;(PrintDocument document) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintDocument&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Print&lt;/span&gt;() 
at Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckinLabel&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintAllLabels&lt;/span&gt;(String printerURL) in C:\Arena Trunk\trunk\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;\Entity\CheckinLabel&lt;span style="color:#cc6633;"&gt;.cs&lt;/span&gt;:line 341 
at Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Entity&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CccevPrintLabel&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Arena&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Entity&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.IPrintLabel&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Print&lt;/span&gt;(FamilyMember attendee, IEnumerable`1 occurrences, OccurrenceAttendance attendance) in C:\Arena Trunk\trunk\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;\Entity\CccevPrintLabel&lt;span style="color:#cc6633;"&gt;.cs&lt;/span&gt;:line 61 
at Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Controller&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintLabel&lt;/span&gt;(FamilyMember attendee, IEnumerable`1 occurrences, OccurrenceAttendance attendance) in C:\Arena Trunk\trunk\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;\CheckInBLL&lt;span style="color:#cc6633;"&gt;.cs&lt;/span&gt;:line 500
&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;em&gt;Hmmm&lt;/em&gt;... IntUnsafeNativeMethods...This seemed to point us in the direction of a driver problem.&amp;nbsp;&amp;nbsp;We removed the latest &lt;a href="http://www.seagullscientific.com" title="Seagull Scientific"&gt;Seagull Scientific&lt;/a&gt; drivers (7.1.6) and put their older drivers (7.0.2) which we&amp;#39;ve been using in another environment with no issues.&amp;nbsp; The problem happened again, but the exception was slightly different:&lt;/p&gt;&lt;div style="font-size:8pt;margin:20px 0px 10px;overflow:auto;width:97.5%;cursor:text;max-height:200px;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border:gray 1px solid;padding:4px;"&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.SafeNativeMethods&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.DocumentProperties&lt;/span&gt;(HandleRef hwnd, HandleRef hPrinter, String pDeviceName, IntPtr pDevModeOutput, IntPtr pDevModeInput, Int32 fMode) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PageSettings&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CopyToHdevmode&lt;/span&gt;(IntPtr hdevmode) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrinterSettings&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.GetHdevmode&lt;/span&gt;(PageSettings pageSettings) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintController&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.OnStartPrint&lt;/span&gt;(PrintDocument document, PrintEventArgs e) 
at System&lt;span style="color:#cc6633;"&gt;.Windows&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Forms&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintControllerWithStatusDialog&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.OnStartPrint&lt;/span&gt;(PrintDocument document, PrintEventArgs e) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintController&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Print&lt;/span&gt;(PrintDocument document) 
at System&lt;span style="color:#cc6633;"&gt;.Drawing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Printing&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintDocument&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Print&lt;/span&gt;() 
at Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckinLabel&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintAllLabels&lt;/span&gt;(String printerURL) in C:\Arena Trunk\trunk\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;\Entity\CheckinLabel&lt;span style="color:#cc6633;"&gt;.cs&lt;/span&gt;:line 341 
at Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Entity&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CccevPrintLabel&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Arena&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Entity&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.IPrintLabel&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Print&lt;/span&gt;(FamilyMember attendee, IEnumerable`1 occurrences, OccurrenceAttendance attendance) in C:\Arena Trunk\trunk\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;\Entity\CccevPrintLabel&lt;span style="color:#cc6633;"&gt;.cs&lt;/span&gt;:line 61 
at Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Controller&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.PrintLabel&lt;/span&gt;(FamilyMember attendee, IEnumerable`1 occurrences, OccurrenceAttendance attendance) in C:\Arena Trunk\trunk\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;\Arena&lt;span style="color:#cc6633;"&gt;.Custom&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.Cccev&lt;/span&gt;&lt;span style="color:#cc6633;"&gt;.CheckIn&lt;/span&gt;\CheckInBLL&lt;span style="color:#cc6633;"&gt;.cs&lt;/span&gt;:line 500&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Could the problem be with the Hyper-V which is running our virtualized server?&amp;nbsp; &lt;a href="http://pjamesaz.blogspot.com/" title="Phil James&amp;#39; blog"&gt;Phil&lt;/a&gt; recommended that we copy our environment to a non-virtualized host, and after several more hours of setup and testing -- presto -- &lt;strong&gt;problem gone&lt;/strong&gt;.&amp;nbsp; We ran our Gilbert campus children&amp;#39;s check-in all weekend long on this temporary, alternate system without a hitch.&amp;nbsp; Jason and I finally took a sigh of relief.&lt;/p&gt;&lt;p&gt;Our (Derek&amp;#39;s) next step is to definitively&amp;nbsp;isolate the problem by moving our server to Microsoft&amp;#39;s Virtual Server to see if the problem is exclusively with Hyper-V, and if needed, possibly de-virtualize the system entirely back to reality.&lt;/p&gt;&lt;p&gt;I wonder if we&amp;#39;re the only shop trying to serve Zebra printers with Seagull Scientific drivers on a Win2003 virtual environment.&amp;nbsp; Anyone?&amp;nbsp; (If you&amp;#39;re out there,&amp;nbsp;we feel your pain.)&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4785" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/.NET+3.0/default.aspx">.NET 3.0</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/check-in/default.aspx">check-in</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena+ChMS/default.aspx">Arena ChMS</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/IT/default.aspx">IT</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/virtualization/default.aspx">virtualization</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2009/02/08/Our-Virtual-Check_2D00_in-System.aspx</feedburner:origLink></item><item><title>Software Development On Time</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/qxbGnqjZyUA/Software-Development-On-Time.aspx</link><pubDate>Wed, 14 Jan 2009 00:49:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4783</guid><dc:creator>nairdo</dc:creator><slash:comments>1</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4783.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4783</wfw:commentRss><description>&lt;p&gt;I&amp;#39;m coming out of my cave to share a few&amp;nbsp;great bits of news.&lt;/p&gt;&lt;p&gt;&lt;img align="right" alt="OnTime 2009 Express" height="215" src="http://codersforchrist.com/images/20091013OnTime2009.jpg" style="width:150px;height:215px;" title="OnTime 2009 Express" width="150" /&gt;1) Since my last post, Jason Offutt has joined our team! Jason comes from &lt;a href="http://www.ccvonline.com" title="CCV"&gt;Christ&amp;#39;s Church of the Valley (CCV)&lt;/a&gt; where he was previously developing &lt;a href="http://www.arenachms.com" title="Arena ChMS"&gt;Arena&lt;/a&gt; modules.&amp;nbsp; With his hiring, Jason&amp;nbsp;also becomes &lt;a href="http://www.cccev.com" title="Central Christian Church"&gt;Central&amp;#39;s&lt;/a&gt; first full time developer (I&amp;#39;m still a self-inflicted part-timer).&lt;/p&gt;&lt;p&gt;2) Without Jason&amp;#39;s help we would still by at 70% development completion of our new &lt;strong&gt;&lt;a href="http://community.arenachms.com/Wiki/view.aspx/Custom_Modules/CCCEV_Module_List/Check-In_Module" title="Central&amp;#39;s Check-in Wizard Module"&gt;Arena check-in module&lt;/a&gt;&lt;/strong&gt;.&amp;nbsp; However due to his monumental efforts we actually had our first complete test milestone at the end of December and are piloting the new Children&amp;#39;s check-in this weekend.&amp;nbsp; We&amp;#39;ve been in touch with a few other churches&amp;nbsp;(I&amp;#39;ll let them comment if they want) and will be sharing the code via &lt;a href="https://arenachms-browse.cvsdude.com/wsvn/" title="Arena SVN"&gt;the community&amp;nbsp;SVN&lt;/a&gt; shortly after the rollout.&lt;/p&gt;&lt;p&gt;3) &lt;a href="http://www.axosoft.com/products/ontime.aspx" title="OnTime 2009"&gt;OnTime 2009&lt;/a&gt;&amp;nbsp;Express edition only costs&amp;nbsp;$5 for a team of up to&amp;nbsp;5 developers!&amp;nbsp; Read &lt;a href="http://www.axosoft.com/products/ontime.aspx?cn=otm_express&amp;amp;utm_source=008&amp;amp;utm_medium=05&amp;amp;utm_content=nl-09-01-13&amp;amp;utm_campaign=01" title="OnTime 2009 Express is basically free"&gt;the full press details&lt;/a&gt;.&amp;nbsp; With the edition of Jason and &lt;a href="http://www.codersforchrist.com/Dallon" title="Dallon&amp;#39;s Blog"&gt;Dallon&amp;#39;s&lt;/a&gt; ever increasing development contributions, we&amp;#39;re really in need of a bit of a process and tool overhaul to help manage our software&amp;nbsp;projects.&amp;nbsp; We&amp;#39;ll be using &lt;a href="http://www.axosoft.com/products/ontime.aspx" title="OnTime 2009"&gt;OnTime 2009&lt;/a&gt; for sure.&amp;nbsp; &lt;a href="http://codersforchrist.com/cs/blogs/nick/archive/2006/09/07/Yearly-AZGroups-Big-Event-Summary.aspx" title="He has spoke at previous AZGroups meetings"&gt;If you&amp;#39;ve ever seen&lt;/a&gt; &lt;a href="http://www.axosoft.com/" title="Axosoft"&gt;Axosoft&amp;#39;s&lt;/a&gt; founder, Hamid Shojee, talk you know what I mean when I say he&amp;#39;s brilliant -- check out his entertaining &amp;#39;&lt;a href="http://www.youtube.com/watch?v=bfmLsQq6OUU" title="SCRUM in 10 Minutes by Hamid Shojee"&gt;SCRUM in under 10 Minutes&lt;/a&gt;&amp;#39; video.&amp;nbsp; He can even make a presentation in software development methodology fun.&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4783" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/AZGroups/default.aspx">AZGroups</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena+ChMS/default.aspx">Arena ChMS</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2009/01/13/Software-Development-On-Time.aspx</feedburner:origLink></item><item><title>Here We Go Again</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/v-x0zVa27Vs/Here-We-Go-Again.aspx</link><pubDate>Fri, 19 Sep 2008 17:03:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4779</guid><dc:creator>nairdo</dc:creator><slash:comments>1</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4779.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4779</wfw:commentRss><description>&lt;p&gt;&lt;em&gt;(Note: With this post I&amp;#39;m going to tag any&amp;nbsp;similar, future rants as &amp;quot;angry coder&amp;quot;.&amp;nbsp; Although they will be few, I&amp;#39;m doing this&amp;nbsp;just in case you want to take a pass on any of these kinds of entries.)&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;img align="right" alt="BSO" height="64" src="http://codersforchrist.com/images/20080919GoogleChromeBSO.jpg" style="width:266px;height:64px;" title="BSO" width="266" /&gt;I love &lt;a href="http://codersforchrist.com/cs/controlpanel/blogs/www.google.com" title="Google, of course"&gt;Google&lt;/a&gt;, but with &lt;a href="http://googleblog.blogspot.com/2008/09/fresh-take-on-browser.html" title="Chrome - another shiny new object"&gt;their recent announcement&lt;/a&gt; I thought I was going to cry.&amp;nbsp; Does the world really need another browser?&amp;nbsp; Aren&amp;#39;t the &lt;a href="http://en.wikipedia.org/wiki/List_of_web_browsers" title="ugh"&gt;existing set&lt;/a&gt; of mediocre&amp;nbsp;ones enough?&amp;nbsp; Opera, Safari, IE, Firefox, Konqueror, AOL &lt;em&gt;TBD&lt;/em&gt;, Flock, etc., and now &lt;a href="http://www.google.com/chrome" title="Google Chrome"&gt;Chrome&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Let me pick on Google for a minute.&amp;nbsp; I&amp;#39;d really&amp;nbsp;like to see them work on support for HTML/CSS in their premiere email client, Gmail.&amp;nbsp; It&amp;#39;s &lt;a href="http://www.campaignmonitor.com/css/" title="CSS support in email clients"&gt;&lt;em&gt;arguably&lt;/em&gt; among&amp;nbsp;the worst&lt;/a&gt; when it comes to &lt;a href="http://www.email-standards.org/clients/gmail/" title="email standards project: Google Gmail"&gt;CSS support&lt;/a&gt;.&amp;nbsp; Perhaps their entry into the browser market will help them&amp;nbsp;with this&amp;nbsp;problem...&lt;/p&gt;&lt;p&gt;I was a staunch Netscape supporter back in the day&amp;nbsp;but, as a web developer, it was never fun being the middleman in the browser&amp;nbsp;display/layout war.&amp;nbsp; When you&amp;#39;re just trying to write programs to solve the latest business problem (and do it in a cross-platform, client-lite way), you really don&amp;#39;t have the desire or patience&amp;nbsp;to worry about some other vendor&amp;#39;s browser.&amp;nbsp; It&amp;#39;s inefficient at best and it&amp;#39;s certainly not your job.&amp;nbsp; Or is it?&amp;nbsp; Perhaps when we decided to write a web application we also signed on to&amp;nbsp;support &lt;strong&gt;&lt;em&gt;any and every&lt;/em&gt;&lt;/strong&gt; web browser that one of our users wants to use?&amp;nbsp; Perhaps there is no place to draw the line.&amp;nbsp; There is no hope.&lt;/p&gt;&lt;p&gt;Enter the 3rd party control developers!&amp;nbsp; Yes, that&amp;#39;s right -- it&amp;#39;s their job.&amp;nbsp; Pick from &lt;a href="http://codersforchrist.com/cs/controlpanel/blogs/www.telerik.com" title="Telerik"&gt;Telerik&lt;/a&gt;, &lt;a href="http://codersforchrist.com/cs/controlpanel/blogs/www.componentart.com" title="ComponentArt"&gt;ComponentArt&lt;/a&gt;, &lt;a href="http://codersforchrist.com/cs/controlpanel/blogs/www.infragistics.com" title="Infragistics"&gt;Infragistics&lt;/a&gt;, &lt;a href="http://www.devexpress.com/" title="Devexpress"&gt;Devexpress&lt;/a&gt;, etc.&amp;nbsp; Let them worry about the war.&amp;nbsp; They will do it better and more completely than you and I can.&amp;nbsp; You and I can get back to&amp;nbsp;developing&amp;nbsp;solutions for our domain(s) and leave the browser war behind.&lt;/p&gt;&lt;p&gt;Let me summarize with the point that drove me to finally speak up regarding this topic.&amp;nbsp;I think Jon Edmiston&amp;#39;s&amp;nbsp;&lt;a href="http://churchcrosstalk.typepad.com/jonedmiston/2008/08/7-keys-to-succe.html" title="Beware of Bright Shiny Objects"&gt;key #7&lt;/a&gt; captures it well.&amp;nbsp; Beware of bright shiny objects.&amp;nbsp; Chrome is definitely shiny.&amp;nbsp; Seriously.&amp;nbsp; Will installing it or twittering it (don&amp;#39;t get me started on this ;) help us be&amp;nbsp;successful?&amp;nbsp; Will&amp;nbsp;having it&amp;nbsp;help with the business problems we&amp;#39;re getting ready to solve?&lt;/p&gt;&lt;p&gt;&lt;img align="right" alt="LOL - can you do this?" height="236" src="http://codersforchrist.com/images/20080919LOL.gif" style="width:336px;height:236px;" title="LOL - can you do this?" width="336" /&gt;[&lt;strong&gt;&lt;em&gt;update&lt;/em&gt;&lt;/strong&gt;: only moments after posting this, I happened to visit a link that Scott Miller had sent earlier today.&amp;nbsp; I had to laugh out loud because I don&amp;#39;t think I&amp;#39;ve ever actually had this happen to me.&amp;nbsp; Perhaps this (see image) is another way to deal with it.&amp;nbsp; Hey, where is Chrome in that list?]&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4779" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Google/default.aspx">Google</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/angry+coder/default.aspx">angry coder</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2008/09/19/Here-We-Go-Again.aspx</feedburner:origLink></item><item><title>Arena Enables the Paperless Office</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/OSQ7xPKMpFY/Arena-Enables-the-Paperless-Office.aspx</link><pubDate>Tue, 17 Jun 2008 00:47:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4770</guid><dc:creator>nairdo</dc:creator><slash:comments>4</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4770.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4770</wfw:commentRss><description>&lt;p&gt;I dig the latest version of &lt;a href="http://www.arenachms.com" title="Arena ChMS"&gt;Arena ChMS&lt;/a&gt;&amp;nbsp;and the new Document Types feature is great.&amp;nbsp; In a nutshell it allows you to attach documents (pdf, images, .doc, etc.) to a person, tag or group.&amp;nbsp; It&amp;#39;s the feature that enables you to move to a paperless office and it&amp;#39;s super easy to setup.&lt;/p&gt;&lt;p&gt;Last &lt;a href="http://www.codersforchrist.com//ArenaCommunity/UsingArenaDocumentTypes/UsingArenaDocumentTypes.htm" title="click to watch" target="_blank"&gt;&lt;img align="left" alt="click to watch demo" border="0" height="98" hspace="5" src="http://codersforchrist.com/images/20080616Video1.jpg" style="width:150px;height:98px;" title="click to watch demo" width="150" /&gt;&lt;/a&gt;week a super admin, Kim&amp;nbsp;came to me and said something like, &amp;#39;I want to throw out this huge book of completed paper forms before I drop it on my foot and break my toe.&amp;#39;&amp;nbsp; I said &amp;quot;let&amp;#39;s do it.&amp;quot;&amp;nbsp; We quickly setup a new Document Type and a Person Attribute to hold the document. Now she just scans the document, attaches it to the person&amp;#39;s record and then shreds the original.&lt;/p&gt;&lt;p&gt;In Kim&amp;#39;s case she was maintaining the paper copies of our driving insurance form -- some paperwork that our insurance company gives us when someone has permission to drive the church vans.&amp;nbsp; The document is slightly sensitive so we also locked it down so that only few people have access to edit or view it.&lt;/p&gt;&lt;p&gt;We&amp;#39;ve lined up several more documents we&amp;#39;ll be moving to Arena including our:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;4 page application to serve (currently a fillable PDF)&lt;a href="http://www.codersforchrist.com/ArenaCommunity/SetupArenaDocumentType/SetupArenaDocumentType.html" title="click to watch the setup of a new Document Type" target="_blank"&gt;&lt;img align="right" alt="click to watch" border="0" height="98" hspace="5" src="http://www.codersforchrist.com/images/20080616Video2.jpg" style="width:150px;height:98px;" title="click to watch" width="150" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;applicant background check (pdf)&lt;/li&gt;&lt;li&gt;applicant&amp;#39;s reference response documents (typically emailed .doc or paper)&lt;/li&gt;&lt;li&gt;and several other paper forms people are physically signing&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;With Arena you can literally set these up in just a few minutes.&amp;nbsp; &lt;a href="http://www.codersforchrist.com/ArenaCommunity/SetupArenaDocumentType/SetupArenaDocumentType.html" title="demo of setting up a new Document Type"&gt;Watch this video&lt;/a&gt; to see how it is done.&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4770" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/screencast/default.aspx">screencast</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena+ChMS/default.aspx">Arena ChMS</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2008/06/16/Arena-Enables-the-Paperless-Office.aspx</feedburner:origLink></item><item><title>Jason Communicates</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/pdBTgmVgM-4/Jason-Communicates.aspx</link><pubDate>Mon, 16 Jun 2008 04:47:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4769</guid><dc:creator>nairdo</dc:creator><slash:comments>0</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4769.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4769</wfw:commentRss><description>&lt;p&gt;&lt;img align="right" alt="announcement" height="149" src="http://www.codersforchrist.com/images/announcement.jpg" style="width:180px;height:149px;" title="announcement" width="180" /&gt;A couple of months ago&amp;nbsp;I had the pleasure of&amp;nbsp;introducing Dallon&amp;#39;s &lt;a href="http://codersforchrist.com/cs/blogs/dallon/" title="Dallon&amp;#39;s Developer in Beta"&gt;Developer in Beta&lt;/a&gt;&amp;nbsp;to the blogosphere, and now I get&amp;nbsp;share the news&amp;nbsp;of&amp;nbsp;&lt;a href="http://www.jasonhamrock.com/" title="Jason Hamrock&amp;#39;s blog"&gt;Jason Hamrock&amp;#39;s new blog.&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Jason is the Communications Director at &lt;a href="http://www.cccev.com" title="Central Christian Church of the East Valley"&gt;CCCEV&lt;/a&gt; and his team is one of my team&amp;#39;s biggest &lt;a href="http://www.arenachms.com" title="Arena ChMS"&gt;Arena&lt;/a&gt; &amp;quot;customer&amp;quot;.&amp;nbsp;As such they rely on Arena as the CMS for the web site,&amp;nbsp;event announcement and promotion, and soon a semi weekly newsletter.&amp;nbsp; He&amp;#39;s already queued up several posts so If you&amp;#39;re involved in commuicating with your church body be sure to subscribe to his blog as he&amp;#39;ll be sharing the good, the bad and the ugly we face every week/month at Central.&lt;br /&gt;&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4769" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2008/06/15/Jason-Communicates.aspx</feedburner:origLink></item><item><title>User Acceptance Testing (UAT)</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/lMclJAY0PWk/User-Acceptance-Testing-_2800_UAT_2900_.aspx</link><pubDate>Thu, 05 Jun 2008 20:38:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4768</guid><dc:creator>nairdo</dc:creator><slash:comments>0</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4768.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4768</wfw:commentRss><description>&lt;p&gt;&lt;img align="right" alt="UAT for Arena" height="83" src="http://www.codersforchrist.com/images/20060605UAT.jpg" style="width:264px;height:83px;" title="UAT for Arena" width="264" /&gt;If you&amp;#39;re not familiar with a UAT environment, it&amp;#39;s the place where your users can&amp;nbsp;perform either formal testing or just simply kick the tires of the latest version of your system/application (depending on how formal your &amp;quot;testing&amp;quot; really is).&amp;nbsp; Most corporate environments have a UAT environment for their mission critical systems.&lt;/p&gt;&lt;p&gt;At our church our mission critical system is Arena.&amp;nbsp; Although it&amp;#39;s not ideal that me,&amp;nbsp;our staff, or any Arena customer&amp;nbsp;are the ones to find a bug with the latest version of Arena, it is nice to have a chance&amp;nbsp;of finding one &lt;strong&gt;&lt;em&gt;before&lt;/em&gt;&lt;/strong&gt; it&amp;nbsp;goes live.&amp;nbsp; A UAT environment is also a great way to provide advanced training to your Power Users on features that will be in the upcoming release (like the training Austin Spooner does with his teams after their monthly staff meetings).&lt;/p&gt;&lt;p&gt;Now that we&amp;#39;ve&amp;nbsp;virtualized our servers,&amp;nbsp;creating a UAT system has become&amp;nbsp;a bit easier and I&amp;nbsp;finally created a&amp;nbsp;more formal Arena UAT environment which&amp;nbsp;even&amp;nbsp;includes a recent copy of the underlying&amp;nbsp;database.&amp;nbsp;&amp;nbsp;I think I&amp;#39;ve come up with some faily simple&amp;nbsp;steps that anyone can follow to create their own.&lt;/p&gt;&lt;p&gt;These steps basically create a replica of your production environment and then upgrade it to the latest version of Arena.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Create a new virtual server.&amp;nbsp; We called ours &lt;font color="#ffa500"&gt;UAT01&lt;/font&gt;.&lt;/li&gt;&lt;li&gt;Install SQL Server 2005 with Reporting Services.&lt;/li&gt;&lt;li&gt;Add a alias (CNAME) record to your DNS that points your test arena site&amp;nbsp;(&lt;font color="#ffa500"&gt;ArenaTest&lt;/font&gt;) to your UAT server (&lt;font color="#ffa500"&gt;UAT01&lt;/font&gt;).&lt;/li&gt;&lt;li&gt;Copy your Arena web folder from your production server to your new UAT server (&lt;font color="#ffa500"&gt;ex. copy &amp;#39;\\ARENA\C$\Program Files\Arena ChMS\Arena&amp;#39; &amp;#39;\\UAT01\C$\Program Files\Arena ChMS\Arena&amp;#39;&lt;/font&gt;&lt;font color="#000000"&gt;).&amp;nbsp; You can do the same with your ArenaCheckIn web folder.&lt;/font&gt;&lt;/li&gt;&lt;ol&gt;&lt;li&gt;Edit the copied web.config replacing your normal database server name with your UAT server (&lt;font color="#ffa500"&gt;UAT01&lt;/font&gt;).&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;In IIS on your production Arena server, save your configuration to a file.&lt;br /&gt;&lt;img alt="IIS - Save Configuration to a File..." height="236" src="http://www.codersforchrist.com/images/20080605UAT-IIS.gif" style="width:531px;height:236px;" title="IIS - Save Configuration to a File..." width="531" /&gt;&lt;/li&gt;&lt;li&gt;In IIS on your UAT server, create a new site or virtual directory from a file (that was created in previous step).&lt;/li&gt;&lt;ol&gt;&lt;li&gt;You may need to verify that the web app is set to ASP.NET 2.0&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;Backup your production ArenaDB from your SQL server and restore it to your UAT server.&lt;/li&gt;&lt;ol&gt;&lt;li&gt;Before&amp;nbsp;restoring&amp;nbsp;your ArenaDB backup, you might also run&amp;nbsp;Arena&amp;#39;s SQLInstaller.exe which will can create a new, empty database.&amp;nbsp; &lt;em&gt;I did it this way for a particular reason but I don&amp;#39;t think you should need to do this.&lt;/em&gt;&lt;/li&gt;&lt;li&gt;Depending on your situation, you may have an orphaned Arena login which you can fix in SQL Manager using:&lt;br /&gt;&lt;br /&gt;&lt;p style="font-size:11pt;margin:0in 0in 0in 0.375in;font-family:'Courier New';"&gt;USE ArenaDB&lt;/p&gt;&lt;p style="font-size:11pt;margin:0in 0in 0in 0.375in;font-family:'Courier New';"&gt;GO&lt;/p&gt;&lt;p style="font-size:11pt;margin:0in 0in 0in 0.375in;font-family:'Courier New';"&gt;sp_change_users_login &amp;#39;auto_fix&amp;#39;, &amp;#39;Arena&amp;#39;&lt;br /&gt;GO&lt;br /&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;Verify that the database&amp;#39;s Arena login is dbo for the new ArenaDB.&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;At this point, in theory, you&amp;#39;ve made a copy of your production Arena environment.&lt;/li&gt;&lt;ol&gt;&lt;li&gt;You might&amp;nbsp;test by visting your&amp;nbsp;UAT url (&lt;font color="#ffa500"&gt;http://ArenaTest &lt;font color="#000000"&gt;or &lt;/font&gt;http://ArenaTest/arena &lt;/font&gt;)&amp;nbsp;&lt;/li&gt;&lt;li&gt;Disable your&amp;nbsp;Arena-&amp;gt;Shelby triggers in SQL Manager using:&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;p style="font-size:11pt;margin:0in 0in 0in 0.375in;font-family:'Courier New';"&gt;USE ArenaDB;&lt;/p&gt;&lt;p style="font-size:11pt;margin:0in 0in 0in 0.375in;font-family:'Courier New';"&gt;GO&lt;/p&gt;&lt;p style="font-size:11pt;margin:0in 0in 0in 0.375in;font-family:'Courier New';"&gt;EXEC sp_MSforeachtable @command1=&amp;quot;ALTER TABLE ? DISABLE TRIGGER ALL&amp;quot; &lt;/p&gt;&lt;p style="font-size:11pt;margin:0in 0in 0in 0.375in;font-family:'Courier New';"&gt;GO&lt;br /&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;Edit your Arena Organizations settings (under Administration) changing the value of your &amp;quot;&lt;strong&gt;CheckInUrl&lt;/strong&gt;&amp;quot; and &amp;quot;&lt;strong&gt;ReportServerURL&lt;/strong&gt;&amp;quot; settings to the new appropriate value.&lt;/li&gt;&lt;li&gt;You might also want to take a &amp;quot;snapshot&amp;quot; of your virtual server so you can perform the next steps (the upgrade) over if necessary.&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;Upgrade your Arena UAT to&amp;nbsp;the latest version...&lt;/li&gt;&lt;ol&gt;&lt;li&gt;Download and execute the latest version of ArenaSetup.exe&lt;/li&gt;&lt;li&gt;Follow the steps in the wizard as necessary&lt;/li&gt;&lt;li&gt;After the install disable the Arena Automation Agent and set it to manual startup (in Windows Services) or do whatever you want with it... just be careful what jobs you run since they could potentially be emailing people when you really don&amp;#39;t want to.&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;Almost done... replace your Arena header images with &lt;a href="http://codersforchrist.com/ArenaCommunity/UATimages.zip" title="a replacement a set of images for your Arena UAT environment"&gt;this&amp;nbsp;new set here&lt;/a&gt;&amp;nbsp;to avoid user confusion.&lt;/li&gt;&lt;li&gt;Test your site and then let your power users know about it.&lt;/li&gt;&lt;/ol&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4768" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena+ChMS/default.aspx">Arena ChMS</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2008/06/05/User-Acceptance-Testing-_2800_UAT_2900_.aspx</feedburner:origLink></item><item><title>Keeping Up With Your Art</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/H1QgBCbHqu0/Keeping-Up-With-Your-Art.aspx</link><pubDate>Fri, 23 May 2008 17:16:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4766</guid><dc:creator>nairdo</dc:creator><slash:comments>1</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4766.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4766</wfw:commentRss><description>&lt;p&gt;&lt;img align="left" alt="Desert Code Camp" height="130" src="http://codersforchrist.com/images/DesertCodeCamp_sm.jpg" style="padding-right:8px;" title="Desert Code Camp" width="200" /&gt;Is the expression &amp;quot;you are what you read&amp;quot; true?&amp;nbsp; I think it is to some degree.&amp;nbsp;&amp;nbsp;Not only does&amp;nbsp;it give you knowledge but it also says something about you.&amp;nbsp;&amp;nbsp;My most innovative friends are heavy blog, book and magazine readers, and I believe there is a correlation.&amp;nbsp;&amp;nbsp;I frequently ask people what blogs or magazines&amp;nbsp;they are read because I want to know a little more about them.&lt;/p&gt;&lt;p&gt;When it comes to software development, I think it is especially important to keep up with the state of our art and its related technology.&amp;nbsp; Knowing about something&amp;nbsp;does not mean you have to run out and implement it, but I believe you&amp;#39;re in a better position to make&amp;nbsp;future decisions.&lt;/p&gt;&lt;p&gt;It&amp;#39;s truly a treat when you can spend a whole day learning from experts (or just people who know more than you) and it doesn&amp;#39;t cost you anything but time.&amp;nbsp; That&amp;#39;s why I especially love the &lt;a href="http://desertcodecamp.com" title="Desert Code Camp"&gt;Desert Code Camp&lt;/a&gt; that the guys at &lt;a href="http://azdnug.com/Default.aspx" title="Bringing together Arizona Technology Users And Enhancing the Careers of Developers"&gt;AZGroups&lt;/a&gt; (formely AZ .NET User Groups) have been putting on for a while now.&amp;nbsp; You can spend 8 hours and ramp up very rapidly on several things which you may have only heard very little about&amp;nbsp; -- whether you want just an overview of a technology or want to go deeper into something you&amp;#39;ve read only a little about.&lt;/p&gt;&lt;p&gt;At the upcoming DCC on &lt;strong&gt;Saturday, May 31&lt;/strong&gt; you&amp;#39;ll have a chance to learn about things such as:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://desertcodecamp.com/signUp.aspx?session=415"&gt;FLEX&lt;/a&gt; and &lt;a href="http://desertcodecamp.com/signUp.aspx?session=414"&gt;Adobe AIR&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Agile &lt;a href="http://en.wikipedia.org/wiki/SCRUM"&gt;SCRUM&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://desertcodecamp.com/signUp.aspx?session=406"&gt;iPhone SDK&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://desertcodecamp.com/signUp.aspx?session=408"&gt;Continuous Integration&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://desertcodecamp.com/signUp.aspx?session=409"&gt;LINQ&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://desertcodecamp.com/signUp.aspx?session=373"&gt;Silverlight&lt;/a&gt;&amp;nbsp;(I love the presenters description of this class: No &amp;quot;Hello World&amp;quot;. No MS Comic Sans. No interminable feature dump of XAML attributes. And most definitely, &lt;em&gt;&lt;strong&gt;no multicolor-gradient-filled rotating rectangles &amp;quot;just because they&amp;#39;re possible&amp;quot;.&lt;/strong&gt;&lt;/em&gt; There &lt;em&gt;is&lt;/em&gt; a correct time and place to create a multicolored gradient: &lt;em&gt;when you&amp;#39;re five years old and playing with watercolors&lt;/em&gt;. &amp;quot;I&amp;#39;m a developer not a designer&amp;quot; is no reason to build an application that looks like one of Bill Cosby&amp;#39;s sweaters.)&lt;/li&gt;&lt;li&gt;&lt;a href="http://desertcodecamp.com/signUp.aspx?session=416"&gt;Google AppEngine&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://desertcodecamp.com/signUp.aspx?session=417"&gt;SOA / Enterprise 2.0 REST&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://desertcodecamp.com/signUp.aspx?session=413"&gt;ColdFusion 8&lt;/a&gt; (are people still using ColdFusion???)&lt;/li&gt;&lt;li&gt;and &lt;a href="http://desertcodecamp.com/sessions.aspx" title="all sessions"&gt;more!&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;So clear your schedule on Saturday, May 31 and join me at the Desert Code Camp!&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4766" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/AZGroups/default.aspx">AZGroups</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/code/default.aspx">code</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2008/05/23/Keeping-Up-With-Your-Art.aspx</feedburner:origLink></item><item><title>The Youngest Arena Community Developer</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/7HG4P8Q0080/The-Youngest-Arena-Community-Developer.aspx</link><pubDate>Sat, 26 Apr 2008 04:52:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4763</guid><dc:creator>nairdo</dc:creator><slash:comments>1</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4763.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4763</wfw:commentRss><description>&lt;p&gt;&lt;img align="right" alt="the Arena Community Developer" height="100" hspace="10" src="http://codersforchrist.com/images/ArenaDeveloper.gif" style="width:115px;height:100px;" title="the Arena Community Developer" width="115" /&gt;If you were at &lt;a href="http://codersforchrist.com/cs/blogs/nick/archive/2007/10/16/Arena-Community-Developer-Roundtable-_2D00_-Day-1.aspx" title="Fall 07 Roundtable"&gt;the Fall 07 Arena Community Developer Rountable&lt;/a&gt;&amp;nbsp;you heard me&amp;nbsp;mention Dallon as the youngest &lt;a href="http://www.arenachms.com" title="Arena ChMS"&gt;Arena&lt;/a&gt; Community Developer,&amp;nbsp;but now I&amp;#39;d like to introduce him via his new blog -- &lt;a href="http://codersforchrist.com/cs/blogs/dallon/" title="Developer in Beta - by Dallon"&gt;Developer in Beta&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Dallon is a remarkable developer who&amp;#39;s been quite involved&amp;nbsp;at our church (our&amp;nbsp;IT team) for&amp;nbsp;the past 3-4&amp;nbsp;years where both his Dad and Mom now work full and part time, respectively.&amp;nbsp;&amp;nbsp; And he&amp;#39;s only 13.&lt;/p&gt;&lt;p&gt;With fantastic teaching and support from his parents, Dallon&amp;nbsp;typically drops by on Monday afternoon&amp;#39;s to&amp;nbsp;both code and learn.&amp;nbsp; It was fun introducing him to some basic OO concepts several years ago, but his skills and ability to learn has easily surpassed my abilities and time&amp;nbsp;available to teach him everything&amp;nbsp;he is&amp;nbsp;capable of learning.&amp;nbsp; (This&amp;nbsp;past year I was glad to see&amp;nbsp;Dallon start taking formal, pre-college/college level&amp;nbsp;courses online.)&lt;/p&gt;&lt;p&gt;Dallon has&amp;nbsp;written several &lt;a href="http://www.arenachms.com" title="Arena ChMS"&gt;Arena ChMS&lt;/a&gt;&amp;nbsp;modules of varying sizes including one for managing &lt;a href="http://www.cccev.com" title="Central Christian Church of the East Valley"&gt;Central&amp;#39;s&lt;/a&gt; food pantry (where his Mom leads/serves). With time on his side he has&amp;nbsp;become quite familiar with, and&amp;nbsp;begun using,&amp;nbsp;many of the latest .NET technologies including ASP.NET AJAX, LINQ and Silverlight, and on more than one occasion Dallon&amp;#39;s asked me &amp;#39;when can we start using that in our Arena development environment.&amp;#39;&amp;nbsp; It&amp;#39;s been fun trying to explain how sometimes we can&amp;#39;t move as fast as we&amp;#39;d like...&lt;/p&gt;&lt;p&gt;If you want a fresh perspective on various developer related topics check out Dallon&amp;#39;s blog, &lt;a href="http://codersforchrist.com/cs/blogs/dallon/" title="Developer in Beta - by Dallon"&gt;Developer in Beta&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4763" width="1" height="1"&gt;</description><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2008/04/25/The-Youngest-Arena-Community-Developer.aspx</feedburner:origLink></item><item><title>Pestering Pays Off: Say Hi to Derek</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/xMQznPuJ138/Pestering-Pays-Off_3A00_-Say-Hi-to-Derek.aspx</link><pubDate>Mon, 17 Mar 2008 18:53:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4525</guid><dc:creator>nairdo</dc:creator><slash:comments>0</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4525.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4525</wfw:commentRss><description>&lt;p&gt;My pestering has paid off.&amp;nbsp; I just got word on Friday&amp;nbsp;that&amp;nbsp;&lt;a href="http://www.blogger.com/profile/05932163848657045446" title="Derek Mangrum"&gt;Derek Mangrum&lt;/a&gt;, our Network and Systems Administrator,&amp;nbsp;has begun blogging IT specific posts over at &lt;a href="http://grinding-it-out.blogspot.com/" title="he has another more personal blog, but this is Derek Mangrum&amp;#39;s IT Blog"&gt;Grinding-IT-Out&lt;/a&gt;&amp;nbsp;and he&amp;#39;s doing it at a furious, daily pace (compared to my 1-2 per month).&amp;nbsp; Derek&amp;#39;s been tremendous addition to our IT team and is always learning and teaching me interesting things.&amp;nbsp; Because of that I&amp;#39;ve periodically hinted to him that he should be sharing all those goodies in a blog.&lt;/p&gt;&lt;p&gt;Don&amp;#39;t be shy -- stop over &lt;a href="http://grinding-it-out.blogspot.com/2008/03/introduction.html" title="Derek&amp;#39;s introduction post"&gt;there and drop him a &amp;quot;welcome&amp;quot; comment on his Introduction post.&lt;/a&gt;&lt;/p&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4525" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/news/default.aspx">news</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/IT/default.aspx">IT</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2008/03/17/Pestering-Pays-Off_3A00_-Say-Hi-to-Derek.aspx</feedburner:origLink></item><item><title>Custom Arena E-Ticket</title><link>http://feedproxy.google.com/~r/ThisEndUp/~3/tvPIcKyllB0/Instant-E_2D00_Ticket.aspx</link><pubDate>Thu, 13 Mar 2008 23:08:00 GMT</pubDate><guid isPermaLink="false">3335dbd7-428c-4c14-9321-d5fba297aca8:4426</guid><dc:creator>nairdo</dc:creator><slash:comments>1</slash:comments><comments>http://codersforchrist.com/cs/blogs/nick/comments/4426.aspx</comments><wfw:commentRss>http://codersforchrist.com/cs/blogs/nick/commentrss.aspx?PostID=4426</wfw:commentRss><description>&lt;p&gt;With the current release of Arena (2007.2.x) there is no &amp;quot;E-Ticket&amp;quot; feature, which means if you enable it for one of your online registrations it will attempt to link to a page/file that does not exist (~/eticket.aspx).&amp;nbsp; Luckily, this also means you can easily write your own!&lt;/p&gt;&lt;p&gt;With&amp;nbsp;very little work&amp;nbsp;I created&amp;nbsp;a eticket.aspx page that creates the one (non-styled)&amp;nbsp;shown&amp;nbsp;here:&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img alt="eTicket" height="473" src="http://codersforchrist.com/images/20080313CCCEVeTicket.gif" style="width:493px;height:473px;" title="eTicket" width="493" /&gt;&lt;/p&gt;&lt;p&gt;Everything was trivial.&amp;nbsp;The only interesting part was creating the barcode.&amp;nbsp; Because you can&amp;#39;t expect the user&amp;#39;s browser to have a barcode font installed, it&amp;#39;s best to create it on&amp;nbsp;the server and then render it as an image.&amp;nbsp; I used some of the information from Imran&amp;#39;s &lt;a href="http://dotnetslackers.com/articles/net/BarcodeImageGenerationMadeEasy.aspx" title="an article by Imran Nathani" target="_blank"&gt;Barcode Image Generation Made Easy&lt;/a&gt; article on &lt;a href="http://codersforchrist.com/cs/controlpanel/blogs/DotNetSlackers.com" title="a useful site"&gt;DotNetSlackers.com&lt;/a&gt;&amp;nbsp;to do this.&lt;/p&gt;&lt;p&gt;I&amp;nbsp;ended up making an&amp;nbsp;OutputBarCode method to perform the output rendering so that I could reference the same page with an additional&amp;nbsp;querystring parameter&amp;nbsp;(line 52 of the .cs).&amp;nbsp; When this barcode image &lt;strong&gt;s&lt;/strong&gt;ou&lt;strong&gt;rc&lt;/strong&gt;e is retrieved the Page_Load calls the OutputBarCode method (line 12-14).&amp;nbsp; Also note that the barcode font does &lt;strong&gt;not &lt;/strong&gt;need to be &amp;quot;installed&amp;quot; on your server.&amp;nbsp; Instead, it is simply referenced from the webroot (line 66 of the .cs).&lt;/p&gt;&lt;p&gt;You can &lt;a href="http://codersforchrist.com/images/eticket.zip" title="A zip of the .aspx and .aspx.cs" target="_blank"&gt;download these two files here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;eticket.aspx&lt;/p&gt;&lt;div style="font-size:8pt;margin:20px 0px 10px;overflow:auto;width:97.5%;cursor:text;max-height:200px;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border:gray 1px solid;padding:4px;"&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="background-color:#ffff00;"&gt;&amp;lt;%@ Page Language=&amp;quot;C#&amp;quot; AutoEventWireup=&amp;quot;true&amp;quot; CodeFile=&amp;quot;eticket.aspx.cs&amp;quot; Inherits=&amp;quot;eticket&amp;quot; %&amp;gt;&lt;/span&gt;

&lt;span style="color:#0000ff;"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color:#800000;"&gt;DOCTYPE&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;html&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;PUBLIC&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;&amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot;&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;&amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;

&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;html&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;xmlns&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;head&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;title&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Your Registration Confirmation&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;title&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;link&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;href&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;CSS/arena.css&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;rel&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;type&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;text/css&amp;quot;&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;/&amp;gt;&lt;/span&gt;
&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;head&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;body&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;onload&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;window.print(); window.close();&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;form&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;id&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;form1&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;div&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;class&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;eticketContainer&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;style&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;padding: 10px 10px 10px 10px&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Panel&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;pnlViewETicket&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Visible&lt;/span&gt;=&lt;span style="color:#ff0000;"&gt;false&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
            &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;h2&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Registration Receipt&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;h2&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;table&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;border&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;0&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;cellpadding&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;4&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;cellspacing&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;0&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;style&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;width: 100px&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;span&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;class&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formLabel&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Name(s):&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;span&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;lblName&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;CssClass&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formItem&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;style&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;width: 100px&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;span&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;class&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formLabel&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Event:&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;span&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;lblEventName&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;CssClass&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formItem&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;style&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;width: 100px&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;span&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;class&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formLabel&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Date(s):&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;span&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;lblEventDate&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;CssClass&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formItem&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;style&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;width: 100px&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;lblEventDescription&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;CssClass&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formItem&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;style&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;width: 100px&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;span&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;class&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formLabel&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;registration ID:&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;span&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;lblRegistrationID&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;CssClass&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formItem&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;td&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;tr&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;table&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Panel&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;pnlSpecialNotes&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;h3&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Special Notes&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;h3&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;lblEventConfirmation&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;CssClass&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;formItem&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Label&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
                &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Panel&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
            &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;p&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Image&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;ID&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;imgBarcode&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;/&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;p&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
            &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;p&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;class&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;smallText&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;style&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;text-align: center; text-transform: uppercase&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Please present this document when you arrive at the event.&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;p&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
        &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Panel&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;div&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;form&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;body&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;html&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;eticket.aspx.cs&lt;/p&gt;&lt;div style="font-size:8pt;margin:20px 0px 10px;overflow:auto;width:97.5%;cursor:text;max-height:400px;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border:gray 1px solid;padding:4px;"&gt;&lt;div style="font-size:8pt;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;using&lt;/span&gt; System;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   2:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;using&lt;/span&gt; System.Drawing;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   3:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;using&lt;/span&gt; System.Drawing.Imaging;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   4:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;using&lt;/span&gt; System.Drawing.Text;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   5:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;using&lt;/span&gt; System.Web;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   6:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;using&lt;/span&gt; Arena.Event;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   7:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   8:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;public&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;partial&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;class&lt;/span&gt; eticket : System.Web.UI.Page&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;   9:&lt;/span&gt; {&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  10:&lt;/span&gt;     &lt;span style="color:#0000ff;"&gt;protected&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; Page_Load( &lt;span style="color:#0000ff;"&gt;object&lt;/span&gt; sender, EventArgs e )&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  11:&lt;/span&gt;     {&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  12:&lt;/span&gt;         &lt;span style="color:#0000ff;"&gt;if&lt;/span&gt; ( ! IsPostBack &amp;amp;&amp;amp; Request.QueryString[ &lt;span style="color:#006080;"&gt;&amp;quot;r&amp;quot;&lt;/span&gt; ] != &lt;span style="color:#0000ff;"&gt;null&lt;/span&gt; &amp;amp;&amp;amp; Request.QueryString[ &lt;span style="color:#006080;"&gt;&amp;quot;b&amp;quot;&lt;/span&gt; ] != &lt;span style="color:#0000ff;"&gt;null&lt;/span&gt; )&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  13:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  14:&lt;/span&gt;             OutputBarCode( Request.QueryString[ &lt;span style="color:#006080;"&gt;&amp;quot;r&amp;quot;&lt;/span&gt; ] );&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  15:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  16:&lt;/span&gt;         &lt;span style="color:#0000ff;"&gt;else&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;if&lt;/span&gt; ( ! IsPostBack &amp;amp;&amp;amp; Request.QueryString[ &lt;span style="color:#006080;"&gt;&amp;quot;r&amp;quot;&lt;/span&gt; ] != &lt;span style="color:#0000ff;"&gt;null&lt;/span&gt; )&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  17:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  18:&lt;/span&gt;             PrintEticket( Request.QueryString[ &lt;span style="color:#006080;"&gt;&amp;quot;r&amp;quot;&lt;/span&gt; ] );&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  19:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  20:&lt;/span&gt;     }&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  21:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  22:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  23:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// Binds the needed registration information to the form&amp;#39;s controls.&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  24:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  25:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// &amp;lt;param name=&amp;quot;guid&amp;quot;&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  26:&lt;/span&gt;     &lt;span style="color:#0000ff;"&gt;private&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; PrintEticket( &lt;span style="color:#0000ff;"&gt;string&lt;/span&gt; guid )&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  27:&lt;/span&gt;     {&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  28:&lt;/span&gt;         Registration registration = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Registration( &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Guid( guid ) );&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  29:&lt;/span&gt;         &lt;span style="color:#0000ff;"&gt;if&lt;/span&gt; ( registration != &lt;span style="color:#0000ff;"&gt;null&lt;/span&gt; &amp;amp;&amp;amp; registration.RegistrationId != -1 )&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  30:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  31:&lt;/span&gt;             &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.pnlViewETicket.Visible = &lt;span style="color:#0000ff;"&gt;true&lt;/span&gt;;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  32:&lt;/span&gt;             &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.lblName.Text = registration.Registrants.ToHtml();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  33:&lt;/span&gt;             &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.lblEventName.Text = registration.EventProfile.Name;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  34:&lt;/span&gt;             &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.lblEventDescription.Text = registration.EventProfile.Details; ;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  35:&lt;/span&gt;             &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.lblEventDate.Text = registration.EventProfile.Start.ToShortDateString() +&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  36:&lt;/span&gt;                 &lt;span style="color:#006080;"&gt;&amp;quot; &amp;quot;&lt;/span&gt; + registration.EventProfile.Start.ToShortTimeString() +&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  37:&lt;/span&gt;                 &lt;span style="color:#006080;"&gt;&amp;quot; - &amp;quot;&lt;/span&gt; + registration.EventProfile.End.ToShortDateString() + &lt;span style="color:#006080;"&gt;&amp;quot; &amp;quot;&lt;/span&gt; + registration.EventProfile.End.ToShortTimeString();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  38:&lt;/span&gt;             &lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  39:&lt;/span&gt;             &lt;span style="color:#0000ff;"&gt;if&lt;/span&gt; ( !&lt;span style="color:#006080;"&gt;&amp;quot;&amp;quot;&lt;/span&gt;.Equals( registration.EventProfile.ConfirmationText.Trim() ) )&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  40:&lt;/span&gt;             {&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  41:&lt;/span&gt;                 &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.lblEventConfirmation.Text = registration.EventProfile.ConfirmationText;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  42:&lt;/span&gt;             }&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  43:&lt;/span&gt;             &lt;span style="color:#0000ff;"&gt;else&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  44:&lt;/span&gt;             {&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  45:&lt;/span&gt;                 &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.pnlSpecialNotes.Visible = &lt;span style="color:#0000ff;"&gt;false&lt;/span&gt;;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  46:&lt;/span&gt;             }&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  47:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  48:&lt;/span&gt;             &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.lblRegistrationID.Text = registration.Guid.ToString();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  49:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  50:&lt;/span&gt;             &lt;span style="color:#008000;"&gt;// Set the barcode source to be this page (the b=1) will cause the&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  51:&lt;/span&gt;             &lt;span style="color:#008000;"&gt;// image output to be rendered on the fly via the OutputBarCode method.&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  52:&lt;/span&gt;             imgBarcode.ImageUrl = Request.RawUrl + &lt;span style="color:#006080;"&gt;&amp;quot;&amp;amp;b=1&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  53:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  54:&lt;/span&gt;     }&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  55:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  56:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  57:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// This method will create the barcode and stream the image&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  58:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// data to the Response.OutputStream.&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  59:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  60:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;/// &amp;lt;param name=&amp;quot;text&amp;quot;&amp;gt;the text to barcode&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  61:&lt;/span&gt;     &lt;span style="color:#0000ff;"&gt;private&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; OutputBarCode( &lt;span style="color:#0000ff;"&gt;string&lt;/span&gt; text )&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  62:&lt;/span&gt;     {  &lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  63:&lt;/span&gt;         &lt;span style="color:#0000ff;"&gt;string&lt;/span&gt; TypeFaceName = &lt;span style="color:#006080;"&gt;&amp;quot;barcode font&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  64:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  65:&lt;/span&gt;         PrivateFontCollection fnts = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; PrivateFontCollection();   &lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  66:&lt;/span&gt;         fnts.AddFontFile( Server.MapPath( &lt;span style="color:#006080;"&gt;&amp;quot;~/BarcodeFont.ttf&amp;quot;&lt;/span&gt; ) );    &lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  67:&lt;/span&gt;         FontFamily fntfam = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; FontFamily( TypeFaceName, fnts );    &lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  68:&lt;/span&gt;         Font fnt = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Font( fntfam, 46 );                                       &lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  69:&lt;/span&gt;       &lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  70:&lt;/span&gt;         &lt;span style="color:#008000;"&gt;//Draw the barcode as an image &lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  71:&lt;/span&gt;         Bitmap bmp = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Bitmap( 500, 60 );           &lt;span style="color:#008000;"&gt;//Canvas size    &lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  72:&lt;/span&gt;         Graphics g = Graphics.FromImage( bmp );&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  73:&lt;/span&gt;         g.Clear( Color.White );&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  74:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  75:&lt;/span&gt;         Brush br = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; SolidBrush( Color.Black );&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  76:&lt;/span&gt;         StringFormat stringFormat = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; StringFormat();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  77:&lt;/span&gt;         &lt;span style="color:#008000;"&gt;//stringFormat.FormatFlags = StringFormatFlags.DirectionVertical;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  78:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  79:&lt;/span&gt;         g.DrawString( text, fnt, br, 10, 10, stringFormat );&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  80:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  81:&lt;/span&gt;         Response.Clear();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  82:&lt;/span&gt;         Response.ClearContent();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  83:&lt;/span&gt;         Response.ClearHeaders();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  84:&lt;/span&gt;         Response.ContentType = &lt;span style="color:#006080;"&gt;&amp;quot;image/jpg&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  85:&lt;/span&gt;         Response.AddHeader( &lt;span style="color:#006080;"&gt;&amp;quot;Content-Type&amp;quot;&lt;/span&gt;, &lt;span style="color:#006080;"&gt;&amp;quot;image/jpg&amp;quot;&lt;/span&gt; );&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  86:&lt;/span&gt; &amp;nbsp;&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  87:&lt;/span&gt;         bmp.Save( Response.OutputStream, ImageFormat.Jpeg ); &lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  88:&lt;/span&gt;         bmp.Dispose();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  89:&lt;/span&gt;         Response.End();&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:#f4f4f4;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  90:&lt;/span&gt;     }&lt;/pre&gt;&lt;pre style="font-size:8pt;margin:0em;overflow:visible;width:100%;color:black;line-height:12pt;font-family:Consolas, 'Courier New', Courier, Monospace;background-color:white;border-style:none;padding:0px;"&gt;&lt;span style="color:#606060;"&gt;  91:&lt;/span&gt; }&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://codersforchrist.com/cs/aggbug.aspx?PostID=4426" width="1" height="1"&gt;</description><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/Arena+ChMS/default.aspx">Arena ChMS</category><category domain="http://codersforchrist.com/cs/blogs/nick/archive/tags/online+registration/default.aspx">online registration</category><feedburner:origLink>http://codersforchrist.com/cs/blogs/nick/archive/2008/03/13/Instant-E_2D00_Ticket.aspx</feedburner:origLink></item></channel></rss>
