tag:blogger.com,1999:blog-6014624024977713252024-03-12T21:22:22.487-05:00Ubiquitous TechnologyMagnus Lassihttp://www.blogger.com/profile/14911837506908005554noreply@blogger.comBlogger3125tag:blogger.com,1999:blog-601462402497771325.post-80532472091050859462009-04-05T16:07:00.007-05:002009-04-05T20:13:37.627-05:00SiteFinity - using SWF filesI've finally had a chance to continue with my POC to try to integrate my SWF file into SiteFinity. It went pretty smoothly but there was quite a bit of manual work. I haven't had a chance to look at version 3.6 of SiteFinity yet, I hope later versions would have a control that would handle the browser initialization of the SWF file and helping take care of the reference to the SWF file.<br /><br />I've heard a lot of buzz about <a href="http://code.google.com/p/swfobject/">swfobject </a>which is a JavaScript based framework that instantiates Flash based content regardless of browser, I decided to try it out to see how I would like it. After working for a Fortune 500 company, you learn to worry about what license any open source projects uses, swfobject uses the MIT license which is a plus. It has a nice wizard that will help you set up the appropriate attributes which really helps when you're unfamiliar how to use it in the beginning.<br /><br />In SiteFinity, the only way I have found from my initial research is to add it to the Master Page. Hopefully there's a better way than to be forced to have the user get the JavaScript downloaded to the browser or have to add a custom user control if you just have a handful of pages where you use SWF files. I decided to just link to the Google Code repository but you probably want to include it in your website in production scenarios.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOVN9F9BXeLuGaJ99i3zoxsv1ZTRwKsVC9MnIc3IVeIetmrnDIsWRWwkCASRBpNefT9y8bfhtHQs4XyGocrlg6m1WlEorboPfvaSI0uHdfAu7wzoFWazeGEa3RXMK6f7WI5iMDrnpHtcw/s1600-h/MasterPageAddSWFObject.gif"><img style="cursor: pointer; width: 400px; height: 62px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOVN9F9BXeLuGaJ99i3zoxsv1ZTRwKsVC9MnIc3IVeIetmrnDIsWRWwkCASRBpNefT9y8bfhtHQs4XyGocrlg6m1WlEorboPfvaSI0uHdfAu7wzoFWazeGEa3RXMK6f7WI5iMDrnpHtcw/s400/MasterPageAddSWFObject.gif" alt="" id="BLOGGER_PHOTO_ID_5321360962920836562" border="0" /></a><br /><br />I just uploaded my SWF file to the Files section in SiteFinity and then added it via an OBJECT tag in a Generic Control. I have not been able the get the file reference of the SWF file to be resolved inside the OBJECT so I can use a relative reference like for the server side controls in SiteFinity. Instead, I've had to put the full URL to the file which is a pain point if you have separate QA and Production environments. It appears that others in the SiteFinity forums also have struggled with this but hopefully I'm just overlooking something.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzef1eZmRGlrCAEnCR4VsFRlcLjFNGpmZFwo6AaBcPCoWeQX3RY97zqIBmecaUO_HBM_D7r-yMPgcOKTEd1GglxOk2_uGScePz60AgCmxw5FgW42NY9qq0nJc0VkHbY_xTsApr3_cyrEo/s1600-h/GenericContentSWHTML.gif"><img style="cursor: pointer; width: 400px; height: 273px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzef1eZmRGlrCAEnCR4VsFRlcLjFNGpmZFwo6AaBcPCoWeQX3RY97zqIBmecaUO_HBM_D7r-yMPgcOKTEd1GglxOk2_uGScePz60AgCmxw5FgW42NY9qq0nJc0VkHbY_xTsApr3_cyrEo/s400/GenericContentSWHTML.gif" alt="" id="BLOGGER_PHOTO_ID_5321371124414614130" border="0" /></a><br /><br />The actual page shows the SWF file as we would expect.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7znoeEohMDUR6tKil0IVCHRlR6JNwCZL7DAQcBWCxDyYReY7ZROeskkAHgniTrhyphenhyphenVUoeIhP_bAFZfNizsqlazsIDG5RnylM41o1d24q3CxuR_uc7p0OE7LXsBX1lcWHBnshtNNNyln38/s1600-h/AuctionSWF.gif"><img style="cursor: pointer; width: 400px; height: 180px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7znoeEohMDUR6tKil0IVCHRlR6JNwCZL7DAQcBWCxDyYReY7ZROeskkAHgniTrhyphenhyphenVUoeIhP_bAFZfNizsqlazsIDG5RnylM41o1d24q3CxuR_uc7p0OE7LXsBX1lcWHBnshtNNNyln38/s400/AuctionSWF.gif" alt="" id="BLOGGER_PHOTO_ID_5321379293144347154" border="0" /></a><br /><br />It is a relatively easy process to add a SWF to SiteFinity but hopefully there will be an easier way to add it in the future and control it better.Magnus Lassihttp://www.blogger.com/profile/14911837506908005554noreply@blogger.com4tag:blogger.com,1999:blog-601462402497771325.post-9215508377755249202009-01-24T09:37:00.008-06:002009-01-25T19:05:47.276-06:00Telerik SiteFinity - first impressionAt the <a href="http://www.wearemicrosoft.com/WAM/Home.aspx">We Are Microsoft</a> charity event last weekend, our team decided to implement a solution using a CMS product so they easily would be able to update the content. We decided to use Telerik SiteFinity based on the repution of Telerik and the fact that they had developer training the first day. Perhaps not the strongest reasons to pick a product but in our case we did not regret picking SiteFinity. The<a href="http://cmswatch.com/CMS/Report/Vendors/"> Web CMS Report</a> have categorized the most well known CMS products, SiteFinity is categorized "Mid Market Challengers" which from what I can tell is an accurate categorization.<br /><br />We used SiteFinity version 3.5 SP 1. The intial setup was a bit painful because the MSI installer didn't work too well on my Vista laptop but thankfully evengalist Gabe Sumner pointed out during the training that you can download a SiteFinity Visual Studio solution from <a href="http://sitefinity.com/my-client.net/my-downloads.aspx">sitefinity.com</a> . The solution file is a Visual Studio Web Site template, I would have preferred a Web Application Project but I assume it's easy enough to change if you really want to change it.<br /><br />SiteFinity plugs into the regular VS template pretty nicely. You will without a doubt want to add your own master page and the good news is that you just add it like you would in a normal ASP.NET web site. You need to add a script manager in the markup though like this:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhASrLL6u6pbHmVLHW1pOBOl5oq02Jsm4ntpqe0y2ZYAkdKY-343E29jZ_nmRgsOMk7VLss6SQ1CDFPEaQ8vVGi3bPOPgJuAl9dFfuGqyoOjws-Cj17yPNo3gRXcHA5omBaj5GQwSOCiBI/s1600-h/ScriptManager_MasterPage.png"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 69px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhASrLL6u6pbHmVLHW1pOBOl5oq02Jsm4ntpqe0y2ZYAkdKY-343E29jZ_nmRgsOMk7VLss6SQ1CDFPEaQ8vVGi3bPOPgJuAl9dFfuGqyoOjws-Cj17yPNo3gRXcHA5omBaj5GQwSOCiBI/s400/ScriptManager_MasterPage.png" alt="" id="BLOGGER_PHOTO_ID_5294921737887976434" border="0" /></a><br /><br /><br /><br /><br /><br />You also need to add a theme to the App_Themes folder. This is where you put your css files and images that you use in the header/body/footer via your master page. Once you restart your worker process or the web server if you use Cassini, both the master page (template) and your theme should be visible once you edit a page. If you select a the template and the theme you created earlier, you should get the look and feel your expecting.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizHs4CwkduTuWtwsgG76uXyMeZ76QYZZgU3PTqwrwUnAY-fF2_YpjPvxyV__QJoKaJ0ASbwslPT1BWAMgwqu-pigMMy9GyLBH76DtVEuSU2ldCChyphenhyphenv6EUSO19W3KJLzMfHpv8TsMXjzdo/s1600-h/SiteFinityTemplateTheme.png"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 43px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizHs4CwkduTuWtwsgG76uXyMeZ76QYZZgU3PTqwrwUnAY-fF2_YpjPvxyV__QJoKaJ0ASbwslPT1BWAMgwqu-pigMMy9GyLBH76DtVEuSU2ldCChyphenhyphenv6EUSO19W3KJLzMfHpv8TsMXjzdo/s400/SiteFinityTemplateTheme.png" alt="" id="BLOGGER_PHOTO_ID_5295051449366169890" border="0" /></a><br /><br /><br /><br />This is the basics to set it up, I will go into more detail after adding more functionality.<br /><br />What I like about SiteFinity so far:<br /><ul><li>WSIWYI Editor for editing content.</li><li>Very easy for non-technical people to learn to use with a little training. Of course, you still need to know some basic HTML to make it look right.<br /></li><li>Workflow enginge in the Standard version, which is nice to have. I haven't had a chance to use it yet though.<br /></li><li>User controls hooks into SiteFinity in a nicely, allowing drag-and-drop in the GUI. You do have to add an entry into the web.config file though.<br /></li><li>It's relatively inexpensive, I don't think $899 is much money for a commercial organization for a CMS product where you get support.<br /></li></ul>What I don't like:<br /><ul><li>All pages appear to use ViewState by default, whether it's static text only or a form. I think ViewState in general is way overused in ASP.NET web forms in general, I wish Telerik didn't fall into this trap as well but perhaps there's a good reason.<br /></li><li>I really don't understand why even images must use an Httphandler ASHX but perhaps it's not as heavy handed as it seems to be.</li><li>Error handling seems a little sparse. Both during the setup and if it can't find the database when you run it, you get uncaught exceptions.</li><li>ASP.NET 3.5 has been out for a good while now, you expect products to use 3.5 instead of 2.0 by now.<br /></li></ul>All in all, I really like this product and I'm glad I got a chance to try it out. The <a href="http://www.sitefinity.com/product/roadmap.aspx">road map </a>for version 4 looks pretty interesting. I wish they would have mentioned using the ASP.NET MVC framework instead of the ASP.NET Web Forms though.Magnus Lassihttp://www.blogger.com/profile/14911837506908005554noreply@blogger.com3tag:blogger.com,1999:blog-601462402497771325.post-55815665861189600482009-01-19T20:00:00.004-06:002009-01-19T21:00:52.872-06:00We-Are-Microsoft charity event - wrap-upI just got back from the charity event <a href="http://www.facebook.com/groups/edit.php?members&gid=25590171916#/event.php?eid=44676024865">We Are Microsoft</a> hosted in Dallas. It was a wonderful event, so many charities that all were worthwhile causes. I met a bunch of wonderful people, it is amazing that so many people were willing to give up a full weekend away from their families. I think the final tally was over 170 people including developers, designers, charities and event staff. It was very exhausting weekend of coding and little sleep but great to see that all charities actually received a fully working web site. Chris Koenig and Toi Wright put together a really great event plus all the volunteers.<br /><br />Our team built a web site for the shelter <a href="http://www.newbeginningcenter.org/">New Beginning Center</a> using Telerik Sitefinity as the CMS of choice. The new website isn't quite ready yet but will hopefully be up in the next few weeks as we're working on the finishing touches.<br /><br />None of the guys on our team had any prior experience using SiteFinity but thankfully it was relatively easy to use. Telerik also had two great developer evengalists, <a href="http://blogs.telerik.com/GabeSumner/Posts.aspx">Gabe Sumner</a> and <a href="http://blogs.telerik.com/ToddAnglin/Posts.aspx">Todd Anglin</a> who really knew the product well and were great at providing feedback. I will post later this week what I liked and disliked about SiteFinity.Magnus Lassihttp://www.blogger.com/profile/14911837506908005554noreply@blogger.com3