Kentico Developer Issue 3 November/December 2009
Site of the Year 2009
2 Contents
Features 16 TREES FOR BUGS Candice Pendergast gives us a little insight into the very successful Trees for Bugs intitiative held earlier this year.
24 SITE OF THE YEAR A quick introduction to all of the deserving winners of the first ever Kentico Site of the Year awards.
40 HYBRIDING Les Warren demonstrates how easy it can be to hack up the existing document types of Kentico, and create new hybrids from existing functionality.
3 Contents
Regulars 04 MY DESK Richard Pendergast voices his excitement that Kentico Developer will be starting the year in printed form.
10 NEWS Kentico 5.0, Kentico consulting, the new partner portal, the newest partner webinars, new marketplace additions, new videos and Wakefly webinars.
42 TIPS AND TRICKS Matthew Lee provides an introduction to, and a worked example of, the Kentico nested repeaters. concept.
Published by Not At All Strange Pty Ltd ABN 91 125 365 979 PO Box 353 Menai NSW Australia Enquiries Subscription enquiries: sales@kenticodeveloper.com Editorial enquiries: editorial@kenticodeveloper.com Advertising enquiries: advertising@kenticodeveloper.com Copyright Kentico Developer 2009 www.kenticodeveloper.com
4 Editors Note
Richard Pendergast @kenticodev richard.pendergast@kenticodeveloper.com
My Desk Today brings with it an exciting new development for me personally, and the last piece of the puzzle for Kentico Developer magazine. The magazine is now in print and subscriptions are finally available! It’s funny, but looking back over the last three months, the evolution of Kentico Developer reads like a poorly managed website rollout - an inability to meet high expectations due to technical limitations. The struggle has been to make such a niche magazine commercially viable at a time when print media is seen to be a bad investment, without backing and with a very limited understanding of the work involved. You see the technology does exist to kick off a magazine with little or no risk and you can do it with a limited understanding of print, but when it comes to print, the limitations don’t come with the technology. The limitations come with geography. I first came across commercially viable print-ondemand last year, and was amazed by what I believed to be one of the most ground-breaking and disruptive technologies I’ve seen. Print-on-demand has the potential to level the playing field for printed material in the same way that the internet leveled the playing field for sales. Now anybody can create a magazine, or a newspaper, or even a book, in the same way that just about anyone can create an online store. Unfortunately the only vendor able to produce a magazine of the quality we were expecting did not (and still does not) yet deliver outside of the United States, Canada or the UK. So, rather than the instant publishing of an issue that I expected, it’s taken nearly three months to get things off the ground. We’ve now gone down the traditional route of work-
ing with a local printer, forecasting fixed print-run quantities based upon best guesstimates. It’s a frustratingly old-school high-risk way of working which coming from a technology background feels somehow wrong, but at the end of the day the quality is the same, the price is the same, the content is the same and we have finally evolved from the ezine we never set out to be into the magazine we always believed we were. The coming year is now shaping up to be a very exciting time for Kentico Developer. We have ironclad agreements in place with new printers, new infrastructure, new software, new contributers, new columns, new sponsors, and new competitions. Kentico CMS version 5.0 is due for release bringing with it new pricing, new capabilities, and new opportunities. Kentico consulting services are up and running and should begin to provide new insight into the usage of Kentico and the pain points of those using it. All in all it should be a great time to be a Kentico developer and I for one am looking forward to it. In the meantime though, I hope you have a great Christmas, an awesome new year,, and I’ll see you in 2010. Richard Pendergast Editor
5 Editors Note
8 Contributers
Contributers 2010 promises to be an amazing year for Kentico Developer with more and more regular contributers coming on board, producing more and more high quality material. If you have something you’d like to contribute, email us at contributions@kenticodeveloper.com Richard Pendergast
Les Warren
Over the last 10 years or so Richard has worked primarily as a Solutions Architect, delivering solutions based upon various ERP, SCM, CRM, and CMS platforms. He now works with various teams delivering Kentico based solutions, and has been instrumental in the delivery of roughly 100 Kentico based websites and applications.
One of the original Kentico bloggers, Les Warren produces regular pieces describing his personal tools and techniques in detail, and outlining his processes. We welcome Les this month with his first ever contribution to the magazine.
Candice Pendergast
Thomas Robbins
A journalist by trade, Candice set up her own business a couple of years ago providing full service marketing to small businesses, delivering any online components using Kentico. As Features Editor of Kentico Developer, Candice brings together both her journalism experience and Kentico knowledge to deliver topical pieces and human interest pieces.
Prior to his current role as Kentico product evangelist Thom spent 9 years with Microsoft, and was one of the key persons behind the success of Microsoft .NET Framework and Visual Studio. He now produces regular blog posts, video tutorials, and commentary for Kentico and next month will see his first piece within Kentico Developer. We are very excited to have him on board.
Ralph Spandl
Martijn Schiferli
Ralph Spandl is the founder of r42, one of the original founders of Quattrocento, and has been arcitecting web based solutions longer than most of us have known about the web. Ralph regularly contributes to the Kentico Marketplace, and writes about his work within Kentico Developer.
Several years of developing with Kentico, and a tonne of Kentico sites under his belt, see Martijn Schiferli bringing a wealth of experience to Kentico Developer. Next month Martijn will be contribute his first piece in what will become a regular column working with the Kentico API using Powershell.
Matthew Lee Matthew Lee is one of the key developers behind the 70 or so sites built by Reed Business Information Australia on the Kentico platform. The development and roll-out of this enterprise delivery is what allows Matt to speak from experience when putting together his monthly compilation of Tips and Tricks.
Save on your content management When we went to look for a content management system for our customers we had two things in mind: it should be flexible for our customers as well as us, and it should be good value for money. That’s why we like Kentico CMS. And so do our customers. It’s so flexible that we were able to integrate Microsoft Commerce Server, creating a powerful e-commerce platform. But it’s also so flexible and easy to learn that we can create a new web site in two weeks. So why don’t you contact us and see how we can help you save your piggy?
+ 31(0)6 - 497 819 21 contact@avivasolutions.nl www.avivasolutions.nl blog.avivasolutions.nl
Knowledge. People. Solutions.
T: + 31(0)6 - 497 819 21 E: contact@avivasolutions.nl W: www.avivasolutions.nl W: blog.avivasolutions.nl
At Aviva Solutions we believe that using an agile process determines the success of the projects we do. Being agile helps us react to your changing requirements and create the software you need. That’s why we incorporate agility in all our projects, whether it’s helping you implement a new software factory, building a new web shop, implement your Intranet or helping you with your business intelligence. And it’s all based on Microsoft software. So why don’t you contact us and see what we can do for you?
Internet & Commerce - Business Intelligence - Information Worker - Application & Software Integration - Customs Solutions & Software Factories
10 News
News Version 5.0 released December 23 saw the eagerly awaited release of Kentico CMS 5.0 and I have to say that at first glance I was disappointed. That is to say I was disappointed until I had the time to dig into the some of the newer functionality and deeper enhancements, and to really get my hands dirty. Now that I have, I’m seriously impressed. Version 5.0 rocks. The shift from 4.0 to 4.1 blew us away with a wealth of new functionality and was always going to set the expectations for 5.0, but the changes that come with 5.0 are more subtle, and to my mind at least, far more substantial and valuable. Kentico describe the new version as “EnterpriseLevel Performance and Scalability for Large Sites”. Petr puts it this way “We take our goal to deliver an enterprise-ready solution really seriously. The new version is designed to work with large number of records, such as users, roles, documents, etc. We optimized not only the database and code, but we also made many changes in the user interface, so that you can work with large number of records. We will publish a more detailed performance report later in January, but I can already tell you that we optimized Kentico CMS for handling 1,000,000 users and 100,000 documents in the database, among others.” Users such as ourselves, and the guys over at Get Started are already running five or six times this on version 4.1, and 4.1 already handles the load really well, but I welcome the fact that the new functionality and enhancements bring this capability to the general public, I look forward to Kentico taking away the pain points associated with it, and I look forward to the whole experience becoming a hell of a lot easier.
The new use of SQL Server Replication has me most intrigued. The idea that you’re no longer limited to a single SQL Server, but can copy your database over multiple SQL Servers to get a higher performance and reliability is a big win, and I look forward to working with it. Our work to date has been about sharing the load between IIS servers, and lightening things up via reverse proxies, but the idea that we can now break up the primary SQL Server bottleneck is really exciting. Don’t make the same mistake as I did though, thinking that this release is just about speeding up and improving what already existed. Version 5.0 brings with it a ton of new functionality as well. Check out the version history and see how much has actually changed and is just not yet being talked up. A very quick selection of new capabilities that immediately catch my attention: • UI profiles allow for the hiding and/or customizing of parts of the UI for specific roles • Users can now personalize specific parts of a page using Widgets • Dragging and dropping of content within the CMS Desk tree is now possible (Move, Copy, Link, Reorder) • Editors can now view side-by-side comparisons of two document versions within CMS Desk • Smart Search within forums is now supported • Bi-directional Staging is now supported • A Global administrator can now impersonate another user without having to know the user credentials • The ECommerce API has been extended for better order manipulation • CMSConnectionScope and CMSTransactionScope allow for better handling of connections and transactions in your code • Scalability has been totally overhauled taking into
11 News
account new and better selectors for all modules, new object filters for large lists of items, improved UI performance You can find out more about version 5.0 via the following links: ȖȖKentico CMS 5.0 Released http://bit.ly/8unq4Y ȖȖVersion History http://bit.ly/5MqF3e ȖȖDownload version 5.0 http://bit.ly/6xOZUW
Version 5.0 Pricing There have been several updates to the pricing that will be applied to Kentico CMS with the release of version 5.0. Put simply, the new licensing consists of both a base license that covers content management features, and additional packages that can be added to the base license. The idea is that it is now possible to pay for only what you need. For sites with extensive requirements, there is also an ultimate license that contains all the features found within the base license and all of the features found within the additonal packages. Licensing is still based on the number of web sites and number of physical servers . However, the new server license can only be used by a single organization, and the number of sites allowed for that organization depends upon whether an unlimited server license is purchased or a 10 site server license. Partner feedback on planned pricing led Kentico to also introduce a wildcard into the mix, with the introduction of the new small business license. The small business license is the exception to the above, is fleshed out with enough features to satisfy the most demanding of small business clients, and is in addition the only 5.0 license catering for multiple clients if a 50 site small business license is purchased. We will be running a feature on the new 5.0 pricing within the next issue, but if you’d like to read more in the meantime head to ȖȖKentico CMS 5.0 Pricing http://bit.ly/83AQlo ȖȖKentico CMS 5.0 Small Business Pricing http://bit.ly/5eV9Jf
Kentico Consulting To add to their customer service offerings Kentico recently announced Kentico Consulting Services and Express Remote Assistance. Remote Project Consulting will be a live online session with a consultant, and On-Site Project Consulting will comprise a consultant coming to your offices to give advice. Consultants will be answering questions on architecture, optimisation of performance and code, customisation, and integration of Kentico into 3rd party services. These services are not designed to replace support services, but are designed to be able to answer the more complex questions that cannot be answered by support. The rate for the Consulting Services is $200/hour, and is paid using Consulting Credits. ȖȖFor more information go to http://bit.ly/59dG1v
Kentico Partner Portal Kentico launched its new Partner Program in mid-November, which splits Kentico partners into 3 levels – Partner, Certified Partner, and Gold Partner. The partner level is decided by points for Kentico-related activities, which partners can report at a new partner portal, which also contains partner-only information. Of the 900 Kentico partners, 69 have made Gold, with 122 reaching Certified Partner level. Despite the extra work required by partners, reporting their activities, Kentico have reported positive feedback to the changes, primarily due to the new benefits that the levels of partnership brings with them. ȖȖFor more information on partnership, go to http://bit.ly/8fIHVr
Kentico Partner Webinar Now that the much-anticipated version 5 has been released, Kentico CTO Martin will be conducting another webinar for the Kentico Online User Group, this time outlining his 5 favourite features of version 5. The webinar will take place on Tuesday, January 19 2010 from 8am to 9pm PST. ȖȖSpace is limited so to reserve your place go to http://bit.ly/526x2p
12 News
New Marketplace Additions There have been a heap of new additons to the marketplace recently, and it’s great to now see the contributions coming from so many different developers. Something that I do find surprising though is what I consider to be relatively small download counts on some of the best offerings, and having worked within several other marketplaces my guess is that this is due primarily to a lack of understanding of how to use some of the downloads, and to a lack of any trial options. When deciding whether or not to use a marketplace web part for example, I’d like to see it in action on another site, know what options are available within CMSDesk, (screenshots), be able to download it and trial it before buying it, and be able to link out to a product page providing further detail, instructions for use, feedback and support options. That being said though, this is something that developers learn over time, and right now it’s enough to see that there are some awesome new submissions well worth checking out. ȖȖAdvertisement module http://bit.ly/5lb1Ja ȖȖRotating advert http://bit.ly/6gouiW ȖȖKen Burns effect http://bit.ly/8myt6x ȖȖTweeto http://bit.ly/6ags0s ȖȖAlert Me http://bit.ly/7UHnal
New Videos Since starting out with Kentico, Thom has been producing an amazing amount of blog posts, video posts, and tutorials, and if you haven’t yet come across them, I recommend watching a couple of the new videos. These are the first of many from what I hear, and Thom is looking for feedback and new ideas on what to post, so check them out and let him know what you think. ȖȖKentico CMS 5.0 Widget Overview http://bit.ly/8kFfZ8 ȖȖUI Elements Overview Kentico 5 http://bit.ly/65rKJL
ȖȖUI Personalization with Kentico 5 http://bit.ly/6sxqYb ȖȖA Whole Lot of Beta Going On http://bit.ly/4AFLi0 ȖȖAdding Web Parts http://www.screencast.com/t/YjEyM2Q4M ȖȖBizforms http://www.screencast.com/t/NzQ5ZTJj ȖȖAdding Polls http://www.screencast.com/t/YmY4OGIwZ ȖȖUser Management http://www.screencast.com/t/NmUxNDJkM ȖȖAdding ASCX User Controls http://www.screencast.com/t/NmRhMjky ȖȖCreating an ASPX Page Template http://www.screencast.com/t/ZTgxMzhjZDQ ȖȖCreating a New Portal Engine Page Template http://www.screencast.com/t/ZGUzMDY2O Don’t forget that Martin is also making his regular webinars freely available, and it is worth checking these out for the depth of material they cover. ȖȖURL rewriting and processing in Kentico http://bit.ly/7e8isS ȖȖPerformance optimization and caching in Kentico http://bit.ly/83OaOI ȖȖAdvanced content transformations in Kentico http://bit.ly/8kIgaD
Wakefly Webinars Kentico partner Wakefly have been hosting a hell of a lot of good quality webinars lately. For those looking for some interesting material covering more than just the technical aspects of pulling together web applications, I recommend the following: ȖȖLanding Page Optimization (LPO) Webinar http://bit.ly/8wPp58 ȖȖWeb Design and Development Best Practices: Usability http://bit.ly/57KMpr ȖȖSocial Media Marketing: LinkedIn and Facebook Marketing http://bit.ly/5vrxo5
13 News
14 News
Tomorrow starts today
Building web sites is not the problem anymore. The real challenge is to build sites that can not only be easily updated by non-technical personnel, but that are also flexible enough to be adapted to the constantly changing environment of the web. Ralph Spandl – founder of r42 communication
r42 uses Kentico CMS to built web sites. We are convinced of the power and the flexibility of this content management system, and we love and value the unparalleled support and customer relationship. Our experience is that Kentico has two open ears for its partners, and that’s why we are proud to become a Kentico Gold Certified Partner.
Interactive branding agency
r42
.CA
To learn more visit www.r42.ca
Subscribe and Win!
A Kentico 5.0 Single Site Ultimate License To celebrate the release of Kentico 5.0, you can now have Kentico Developer delivered to your door for the reduced cover price of $15.00 (plus shipping), and what’s more, by becoming a subscriber you could have the chance to win a Kentico CMS 5.0 Single Site Ultimate License valued at $4,499! Visit http://www.kenticodeveloper.com for details
Issue 1
Issue 2
Issue 3
Getting their hands dirty In any other situation, trees and bugs would not be a marriage made in heaven. But with the Kentico team planting a tree for every bug found in Kentico Version 4.1, it’s a win-win situation for partners, developers and the environment. Candice Pendergast reports. Saturday 7 November 2009 was cold and wet in Šuterňa, but nevertheless, true to their word, the Kentico team were out in force, armed with trees to plant for every bug found in Version 4.1 of the Kentico CMS. And it was all hands on deck. “The participation on the event was voluntary for the employees and of course they didn’t get paid for it, still more than three quarters of the Kentico team took part in it! In addition, some of the employees’ girlfriends came along with us to support our efforts. Since we had more trees then it was needed to plant, we decided to dedicate these extra trees to these girlfriends who helped us,” says Petr Passinger, PR Manager for Kentico. The planting of the trees was the end of a year-long initiative. “With the success we achieved in the recent years, we were first thinking of contribution to some NPO. But just paying the money without being really
involved in what they do seemed too simple and casual to us. Plus, if you have clients in 83 countries, it would be hard to choose the right place that needs your money the most. By planting the trees, we supported the environment globally. Also, doing that manually got us really involved,” says Petr. And involved they were. As a part of the initiative, the developer who worked on the module where the bug was spotted had to plant the tree for that bug, sparking some friendly competition around the office. “The number of bugs depend on the complexity of each of the modules, so it might have happened that some developer had to plant fewer trees because his modules aren’t that complex or simply because he didn’t have to change a lot in his modules for the 4.1 version. “But the Czech Partnership Foundation provided us with the book Planting Trees For Dummies and this book
Petr Machač (NGO Šuterňa) helps get the ground ready for planting.
All the trees were tagged and labelled in honour of the bug-finders.
circulated around our developers for a while, always ending up on the desk of the developer who had most of the bugs at that moment.” Petr laughs. In the end, Trees for Bugs was a win-win for everyone, particularly Kentico partners, who have been enjoying having their bugs fixed in 7 days, a policy that will continue despite the Trees for Bugs initiative finishing up. The feedback from partners was all positive, with one partner even commenting that the initiative really was better than “bugs for beers”, no matter what the developers thought. Further, the planting went a long way to helping the restoration of Šuterňa, an area which was devastated during the communism era and is now getting back to its former glory. What’s more, Kentico’s support of the environment carries through to their everyday activities. “We think twice before we print something and we do separate the trash. Our office assistant is actually very strict on this – she always notices if someone puts even a very little piece of paper into wrong bin and assertively warns the guy about it! “But I think that our approach is very similar to
All hands on deck as Petr Palas (CEO and founder of Kentico) gets involved.
any other company today – we don’t have a strict green policy, but on the other hand we use the resources (paper, electricity) in a reasonable way. In addition, this year we decided that instead of sending paper greeting cards, it would be better to donate the money to those less fortunate than ourselves. So we saved the paper and gave the money we would spend on it to charity.” According to Petr, this won’t be the last of these kinds of initiatives. “We are working on a new fresh initiative that will be similar to Trees for Bugs – but I am going to keep it a secret for the moment. “ Petr smiles. For more information on the Trees for Bugs initiative check out the following links. ȖȖYes, we can: 60 Trees planted, 0 Developers injured! http://bit.ly/6ZtMPq ȖȖTree gallery http://bit.ly/6vtqqT ȖȖFeedback on the Trees for Bugs initiative http://bit.ly/6hTnmM ȖȖTrees for Bugs Map http://bit.ly/2mU8jc
Jiří Barbořík (Developer) gets to work breaking the ground.
Lukáš Martinák (Tester) brings girlfriend Janí Rychlovská along for the day.
From left to right: Zdeněk Strach (Technical Leader), Vítězslav Janeček (Developer), Petr Vozák (Technical Leader).
Antonín Moravec (QA Manager)takes care of the tree labels.
Everyone smile! Petr is pulling a face, let’s try again.
From left: Juraj Ondruš (Customer Care Manager), Jiří Barbořík (Developer) , Karol Jarkovský (Consultant),
Robert Stebel (Tester), David Štula (Tester) get ready to go.
Zdeněk Strach (Technical Leader), Petr Vozák (Technical Leader) secure another tree.
A quick briefing before getting down to business.
... as do Robert Stebel (Tester) and Juraj OndruĹĄ (Customer Care Manager).
AntonĂn Moravec (QA Manager), peering over the hillside.
Another bug, another tree planted.
A long way from the comfort of their desks, the guys get to work.
Pavel Knotek (Support Engineer) tries out the heavy machinery.
Ondřej Machala (Tester) and girlfriend Ivetka do their bit.
Petr Vozák (Technical Leader), ready for another tree.
Karol Jarkovský (Consultant) didn’t seem to know his own strength.
The tractor may have been on the vintage side, but it got the job done.
Pavel Knotek (Support Engineer) and Petr Passinger (PR Manager) work together...
24 Site of the Year
Kentico Site of the Year Chicago Zoological Society http://www.brookfieldzoo.org/
Site by Designkitchen http://designkitchen.com/
The winner of the first ever Kentico Site of the Year Award is an amazing mix of functionality, usability, beautiful design and bang for your buck, and the fact that the Chicago Zoological Society site topped out both Best Nonprofit Organization Site and Best Graphic Design says a lot for the work of Designkitchen, the group behind it. It’s very rare that an interactive agency is able to produce work within the typically tight budgets and timeframes that come with Nonprofit Organizations, but even rarer still that the work produced is stunning enough to win design awards. Laura Maness of Designkitchen puts it down to nothing more than effective platform selection, a proven methodology, a solid team, and sheer determintion. “Like any site build, balancing the team’s desire to incorporate as many features as possible against the client’s timeline/budget constraints was a challenge, but through careful communication and risk management, along with our proven delivery methodology and a seasoned team, the challenges were overcome.” “Leveraging an agile project delivery methodology, Designkitchen worked with the CZS/Zoo to prioritize site features for iterative development. The total length of the project was less than 12 months, including a significant brand strategy and positioning effort that ran in parallel.” Typically technology agnostic, Designkitchen lead each project they undertake with digital strategy, usercentered design, and online brand activation, meaning that an important part of every Designkitchen project is the platform selection process, For the Chicago Zoological Society, this meant pitting a number of other solutions (primarily Open Source) against Kentico.
“Although several of the Open Source CMS options were free, they would have required a great deal of customization that would have prolonged the development life-cycle and inhibited our ability to execute on the recommended design vision within the allocated budget.” “Kentico’s low-cost ASP.NET CMS offered the Chicago Zoological a low-cost alternative that enabled Designkitchen to quickly deliver a highly-functional website leveraging out-of-the-box Kentico functionality and fit within the existing infrastructure, and without a doubt, Kentico’s continued growth, evolution and improvement further validates our selection.” The site has been well-received by the community at large, and the Brookfield Zoo experience (the animals, events, etc.) has shown that it meshes really well with the Chicago Zoological Society’s mission (the science and research behind the Zoo experience), creating a singular online destination that is both appealing and engaging. Easter eggs about the animals and environment planted throughout the site, along with world-class illustrations, add to this already interesting subject matter, and the result is a site that is fun for all types of visitors. Perhaps more important is that since the site launched, the CZS/Zoo has been provided with the tools to maintain full control and ownership of all of their site content, and Kentico has enabled content to be added and edited with ease. Ongoing measurement of the site’s performance continues to prove ROI and will most likely lead to future enhancement and expansion. Congratulations to Designkitchen on a great site, an awesome execution, and on winning the inaugral Kentico Site of the Year.
25 Site of the Year
26 Site of the Year
Best Association Site Winner White Rose Forest http://www.whiteroseforest.org.uk/ Featuring eye catching graphics, the White Rose Forest website is not only a vistors guide to the area, but also outlines measures take to preserve the environment. The site includes photo galleries and maps of the area as well as videos detailing the organisations activities. Site by NetConstruct Ltd
Runner Up
The Devon Guild of Craftsmen http://www.crafts.org.uk
Runner Up
The Great Inns of Britain http://www.greatinns.co.uk/
The Devon Guild of Craftsmen are a UK educational charity and is also one of the UK’s most acclaimed exhibition and retail spaces for contemporary craft. The site provides visitor information and online sales of very unique craft.
The Great Inns of Britain site profiles a large number of historic inns located in Britain. The site allows users to search for places to stay, access special offers, and includes an interactive map detailing the location of the inns.
Site by Tell Systems
Site by NetConstruct Ltd
27 Site of the Year
Best Consumer Products Site Winner DTSwiss http://www.dtswiss.com/ DT Swiss are spoke producers for the bicycle market and use their website as a portfolio for their products and services. In addition to this the site also contains information about their teams and riders that vistors are able to filter according to their preferred style of riding. Site by orange8 interactive ag
Runner Up
Runner Up
McDonalds Ireland
Blackboard.com
http://www.mcdonalds.ie/
http://www.blackboard.com/
The McDonald’s Ireland site openly invites the visitor to interact with McDonald’s via an open contact form on the front page. The site contains information about the menu and careers, focussing on current instore promotions.
Blackboard provides technology platforms and solutions for education providers. Their site contains information about the different arms of the company and their products and services, and a partner support forum.
Site by X Communications
Site by Atom Group
28 Site of the Year
Best Education Site Winner Learning Outside the Classroom http://www.lotc.org.uk/ The Learning Outside the Classroom site promotes the benefits of learning outside the classroom as well as provide searchable online resources for practicioners and schools. The site also offers content filtering by sector and subject and dowloadable CPD modules. Site by Oculus Design & Communications Limited
Runner Up
Runner Up
Centre For Community Partnerships
Parenting Ideas
http://www.ccp.utoronto.ca/
http://www.parentingideas.com.au/
The Centre for Community Partnerships work with community organisations to benefit students. The site contains information about the Centre, as well as promote opportunities for students and community partners and also includes a blog.
Parenting Ideas provides parents and teachers with information, advice and resources from parenting educator Michael Gross, The site also offers a newsletter, blog, online polls and membership, as well as social bookmarking tools and feeds.
Site by University of Toronto
Site by Get Started
29 Site of the Year
Best Financial Services Site Winner JLT http://www.jltbis.co.uk/ JLT Business Insurance are based in the UK and provide business insurance services for small business. Their site contains detailed outlines of their services and makes it easy for visitors to find the right insurance for them by entering their profession on the home page. Site by Crafted Media
Runner Up
Runner Up
First Quartile Consulting
PWL Capital Inc
http://www.1stquartileconsulting.com/
http://www.pwlcapital.com/
First Quartile Consulting provides benchmarking and consulting services, with their website outlining their commitment best practices and customer service. A members-only area allows their community to share data and emerging practices.
The PWL site provides information on their wealth management services as well as allowing visitors to search for an appropriate advisor and giving insights from advisors. The site also allows visitors to listen to audio of industry specialist HÊlène GagnÊ.
Site by Gatesix Inc.
Site by r42 communication
30 Site of the Year
Best Healthcare Site Winner Birth.com.au http://www.birth.com.au/ Birth.com.au is an interactive site offering parents-tobe information and online tools relating to pregnancy and childbirth. The site includes a services directory, content filtering based on stage of pregnancy, online forum, plus ovulation and due date calculators. Site by Get Started
Runner Up
Runner Up
Simple Wins
The Prince Charles Hospital Foundation
http://www.simplewins.com/
http://www.tpchfoundation.org.au/
Simple Wins provides information and encouraging people who live with diabetes. It profiles a variety of people living with diabetes, highlighting their “simple wins� and promotes products designed to make life easier for people with diabetes.
Supporting medical research at the Prince Charles Hospital in Brisbane, the site allows for online donations, an online store and also acts as a log-in for the foundations portal and intranet.
Site by BlueModus
Site by The Famous Group Pty Ltd
31 Site of the Year
Best Manufacturing Site Winner Kinematics Manufacturing Inc http://www.kinematicsmfg.com/ The Kinematics Manufacturing site does a great job of showing what they do with emphasis on the products it manufactures – planetary winches, swing drives and slewing drives. Available to read in multiple languages, the site also contains detailed diagrams of how the parts are to be used. Site by Gatesix Inc.
Runner Up
Runner Up
Machinebouw
Nordco
http://www.machinebouw.net/
http://www.nordco.com/
Machinebouw is a Dutch magazine on machine design and engineering, construction and automation. The site includes blogs by writers for the magazine, details on latest issues, news and guides.
Nordco is a manufacturing company servicing the railroad industry. The site serves up information about the company and the machines it manufactures, plus employment and latest news. The site can be used to order necessary parts as required.
Site by IBL-Software B.V.
Site by Marketing Images, Inc.
32 Site of the Year
Best Nonprofit Organization Site Winner Chicago Zoological Society http://www.brookfieldzoo.org/ The Chicago Zoological Society site contains general information about its organisation as well as visitor information and promotions for the Brookfield Zoo, which the society manages. The site contains interactive maps, an online gift shop and is beautifully designed. Site by Designkitchen
Runner Up
Runner Up
National Museums Northern Ireland
Royal Horticultural Society
http://www.nmni.com/
http://www.rhs.org.uk/
National Museums Northern Ireland care for and present inspirational cultural collections. Their site contains visitor information on the museums and collections and contains maps, an online store and newsletter subscription.
The Royal Horticultural Society’s site contains information on activites and initiatives carried out by the society as well as resources for gardeners, online shopping, blogs, forums, and also offers site membership.
Site by EG. Consulting
Site by Royal Horticultural Society
33 Site of the Year
Best Online Store Winner BabolatStore.cz http://www.babolatstore.cz/ Babolat Store is an online store dedicated to the Babolat brand, with sporting products for tennis, badminton, squash and table tennis. As well as a carefully crafted store with easy-to-find products, the site also contains a newsletter, latest news and a “Fans Box� with news and videos related to competitive tennis. Site by Bluesoft
Runner Up
Runner Up
FrizerShop
Thomas Turners Online Shop
http://www.frizershop.com/
http://www.thomasturners.co.uk/
FrizerShop is an online store selling hairdressing and beauty equipment. Featuring a distinctly feminine design, the site includes online polls, prominent RSS feed, latest news and resources for hairdressers.
Specialising in shooting accessories, the Thomas Turner online store features clean design and an easy to navigate store, with special offers, best sellers and store categories and also allows shoppers to create wishlists.
Site by Endora d.o.o.
Site by Connexion Ltd
34 Site of the Year
Best At Large Site Winner Visit Europe http://www.visiteurope.com/ The Visit Europe site is rich with information about Europe and uses online tools very effectively. The site is multinligual and contains neat little features like being able to change the title image. There is also heavy emphasis on content sharing with blogs, games, photo galleries and various links to social networks. Site by Last Exit
Runner Up
Runner Up
EVN Portal
Yellow Maps
http://www.evn.at/
http://maps.yellow.co.nz/
EVN is an international energy and environmental company. The site contains information about the company, using tools such as a tag cloud for most searched items, multiple languages, rss feeds and site search. A nice, clean site.
Yellow Maps allows users to search and pinpoint New Zealand locations using Google Maps. The site also provides directions as well as suggest interesting places such as the 50 best campgrounds. A unique and clever use of Kentico CMS.
Site by diamond:dogs Group
Site by Marker Studio
35 Site of the Year
Best Publishing Site Winner Delta Sky Magazine http://deltaskymag.delta.com/ The Delta Sky magazine is a publication produced by Delta, a US based airline. The site contains information about the latest and upcoming issues of the magazine and also includes extra information contained in blogs, reviews and social networking feeds. Site by bswing and MSP Communications
Runner Up
Runner Up
Newsmax.tv
The Business Magazine
http://www.newsmax.tv/
http://www.businessmag.co.uk/
Newsmax.tv is a part of the Newsmax.com site and aggregates latest news and popular videos from around the web. The parent site Newsmax.com covers topics such as money, health, world issues, politics and the latest breaking news.
The Business Magazine is an independent magazine senior business executives in the UK. The site contains a large amount of content and resources from the magazine, making great use of ad space as well as online polls and social networking links.
Site by Newsmax Media Inc.
Site by Discover IT (UK) Ltd
36 Site of the Year
Best Local Government Site Winner EU Matters http://www.eumatters.ie/ The EU Matters site was developed to provide Ireland with information about their membership of the EU, and what that means to the Irish people. The site is easy to navigate with information clearly organised and readily available. Site by X Communications
Runner Up
Runner Up
Defense & Veterans Brain Inury Center
Park City Green
http://www.dvbic.org/
http://www.parkcitygreen.org/
The DVBIC cares for US military with traumatic brain injuries. The site contains information about brain injuries as well as services provided. The site is available in English and Spanish and makes use of features such as calendars and RSS feeds.
ParkCityGreen.org helps residents, businesses and visitors of Park City reduce their energy use and water consumption. The site contains information on reducing your carbon footprint and includes a specially developed carbon footprint calculator.
Site by Amplify Studios
Site by Data Transfer Solutions, LLC
37 Site of the Year
Best Graphic Design Winner Chicago Zoological Society http://www.brookfieldzoo.org/ The Chicago Zoological Society site contains general information about its organisation as well as visitor information and promotions for the Brookfield Zoo, which the society manages. The site contains maps, an online gift shop and is beautifully designed. Site by Designkitchen
Runner Up
Runner Up
Delta Sky Magazine
Visit Europe
http://deltaskymag.delta.com/
http://www.visiteurope.com/
The Delta Sky magazine is produced by Delta, a US based airline. The site contains information about the latest and upcoming issues of the magazine and also includes extra information contained in blogs, reviews and social networking feeds.
The Visit Europe site uses online tools very effectively. The site is multinligual and contains neat little features like changing the title image. There is heavy emphasis on content sharing with blogs, games, photo galleries and links to social networks.
Site by bswing and MSP Communications
Site by Last Exit
38 Site of the Year
Most Complete Use of Kentico Winner Park City Green http://www.parkcitygreen.org/ ParkCityGreen.org was developed to help residents, businesses and visitors of Park City reduce their energy use and water consumption. The site contains information on how to reduce your carbon footprint and a specially developed carbon footprint calculator. Site by Data Transfer Solutions, LLC
Largest Site Winner Royal Horticultural Society http://www.rhs.org.uk/ The Royal Horticultural Society is one of the world’s leading horticultural organisations and the UK’s leading garden charity. It’s site contains information on activites and initiatives carried out by the society as well as resources for gardeners, online shopping, blogs, forums, and also offers site membership. Site by Royal Horticultural Society
39 Site of the Year
Best Integration Winner EVN Portal http://www.evn.at/ EVN is an international energy and environmental company located in Lower Austria. The site contains information about the company, using tools such as a tag cloud for most searched items, multiple languages, rss feeds and site search. A nice, clean site. Site by diamond:dogs Group
Best Migration from Another CMS Winner Blackboard.com http://www.blackboard.com/ Blackboard is a company that provides technology platforms and solutions for education providers. Their site is rich with information about the different arms of the company and the products and services they provide. The site supports multiple languages and includes a support forum for its partners. Site by Atom Group
40 Hybriding
Les Warren @lesmeister leswarren@leswarren.com
Hybriding So you don’t like the way one of the web parts in Kentico works, and you can’t find something better? Les Warren demonstrates how easy it can be to hack up the existing document types of Kentico, and with a little creativity create new hybrids from existing functionality. This particular hybrid started out with me wanting to create a billboard banner for the home page of the Live Air Networks site that rotated through several user defined slides, each made up of a photos, graphical text and an action button. With the site in Kentico best practice would dictate that each slide should be easily editable and configurable by the user. Add to this the requirement that prevents this from being a simple slider - that HTML text would be nice for SEO - and I faced an interesting challenge.
First thoughts
How it works
The first option that came to mind was data driven Flash. I have done a similar thing with XML data driven Flash on Rhino Machinery (http://tinyurl.com/ycvnpw6). My problem in this case is that the client wanted to avoid Flash for a variety of reasons. The next option I looked at was one of the really nice sliders available in the MooTools or JQuery librarys, but my feeling was that there must be a simple way to do this without having to draw upon external libraries, and weighing down the page. After some serious brainstorming I came up with an approach which I will dub ”hybriding”, in which I use native Kentico Webparts, CSS and Graphics to produce the results.
Put very simply, I use a Scrolling Text web part which draws upon CMSArticle document types, and then by using custom CSS, a custom transformation, and a set size, I have it render the CMSArticle documents as rotating slides rather than plain text. Choosing the Scrolling Text web part may seem strange, given that there are graphics included in each slide, but I chose this over the image slider because I wanted to have easily modifiable text. It is possible to configure the Scrolling Text web part to render any size you want, so the only problem was I faced was getting the photo and the action button in. To do this, I wrote a Custom Transformation which I named CMS.Article.ScrollingPreview and a Web part container which I named Banner Slider. I then configured the Web part to show the Docu-
41 Hybriding
ment type CMSArticle.
Customising the code Here is what the code for the default Article transformation looks like: <h1><%# Eval(“ArticleName”) %> </h1> <%# IfEmpty(Eval(“ArticleTeaserImage”), “”, “\”””) %> <%# Eval(“ArticleText”) %>
And here it is after I rebuilt it with the specific purpose of rendering a rotated slide. <div style=”background: #fff url(<%# GetFileUrl(“ArticleTeaserImage”) %>) top left no-repeat; height:250px; width:565px;”> <div class=”scrollingpreviewtxt”> <h2><%# Eval(“ArticleName”) %></h2> <p class=”content”><%# Eval(“ArticleTeaserText”) %></p> </div> <div class=”buttonimg”> <%# Eval(“ArticleText”) %> </div> </div>
To get the photo graphic in I use an outer div with a background image I pull from the Article Teaser Image. I used an inline style for this so that I could put the macro in the style - I wasn’t sure this would work, but it did. It’s worth noting that I had to build special images with white space for the text to fall on to with a nice fade effect.
Title and text Next I worked on an inner div to hold the title and text, all of which get their styling from the CSS already in place. The CSS for the transformation looks like this: /*#Transformations/Scrolling Preview#*/ .scrollingpreviewtxt /*inner div to hold the text*/ { width:240px; height: 220px; padding-left: 20px; } .buttonimg /*the button*/ { position:relative; bottom:10px; left: 435px; width: 85px; height: 30px;
background:transparent url(/App_Themes/liveair/images/reg_button.png) top left no-repeat; padding-top: 7px; margin:0; float:left; text-align:center; font-size: 12px; font-weight: bold; } .buttonimg a, .buttonimg a:hover /*needed to add this to the button hover - it inherited the rest*/ { font-weight: bold; }
One sneaky thing I did was to use the Teaser text of the Article for the text in the body of the slide and the Article text for the text in the button, wrapping it in the buttonimg div to make it an action button. So now we have a slider that can edit the text, image and button text on from an easy form interface as well as easily add slides from the CMS desk.
Giving it a border To hold it in place and give it a border, a simple Web part container containing this div id: #photobox { position:relative; top: 0; left: 20px; width: 565px; height:250px; margin: 0; background:#eeeeee; border: 2px #cccccc outset; padding: 0; float: left; clear:both; }
Final Thoughts I’m going to have a go next at building a “hybrid” control using the native Kentico repeater wrapped in some Mootools javascript, creating a slider with navigation buttons and text with links, after which I may move on to configuring JQuery UI for CMS desk producing editable tabs populated with articles. The great thing about the hybrid approach is that the sky’s the limit. You can take what already exists and by playing with different variations create new effects is so many different ways.
42 Tips and Tricks
Matthew Lee @seanbun matthew.lee@kenticodeveloper.com
Tips and Tricks Most people donâ&#x20AC;&#x2122;t realise that the Kentico repeater web part can be nested to satisfy complex requirements. In his latest Tips and Tricks, Matt takes us through what this means and how it works. The repeater is one of the most frequently used webparts in Kentico, allowing for the retrieval of structured data in a logical, ordered manner without the need for c# code, or T-SQL. It traverses the CMS tree from a given path looking for documents of a given document type, and for each that satisfies a set of given conditions, repeats a given transformation. For example, we may want to return only the author, title, and date of publication, formatted nicely (transformation) for any blog post (document type), article (document type), or press release (document type), published before the year 2000 (condition). This can be accomplisehed without a single line of c# code, or a single line of T-SQL, using a repeater. Every now and then though we come across a more complex example, and although a simple repeater may not satisfy the needs of this more complex example, a nested repeater may.
Nested Repeaters A nested repeater is basically made up of a parent repeater which iterates through a set of documents, and a child repeater which executes once for each iteration of the parent repeater. Imagine it this way, a parent repeater loops through a set of books, while a child repeater loops through the pages of each book, with the result being the content of all books.
A Worked Example The concept is best demonstrated by introducing a worked example. My sample bookshop project contains two document types - Book and Author, with the details of each as follows. A book is made up of a Title, a Description, a Publisher, and a Year of Publication. An author is made up of a First name, and a Last name. A book may have more than one Author, and an Author is added as a child node of a Book.
43 Tips and Tricks
In order to create the catalog page shown below, which lists all book titles and author(s), we will need to use a nested repeater.
You see, each time the parent repeater uses the parent transformation, the child repeater included in the transformation is triggered. So, for each Book returned by the repeaterBooks repeater the bookInfo transformation is used, and each time the bookInfo transformation is used, the repeaterAuthors repeater is triggered, and for each Author returned by the repeaterAuthors repeater the authorInfo transformation is used.
The Parent Child Link
The Parent Transformation (Book) First of all, we will need to define the two transformations which will actually output the content. <div> <strong>Category: <%# Eval(“Title”) %></strong> </div> <ul> <cms:CMSRepeater ID=”repeaterAuthors” runat=”server” ClassNames=”Bookstore.Author” TransformationName=”Bookstore.Author.authorInfo” Path=”./%” SelectOnlyPublished=”true” /> </ul>
The Child Transformation (Author) <li><%# Eval(“Name”) %></li>
The Parent Repeater Then we add the parent repeater, as follows. ID=”repeaterBooks” path=“/book/%” transformation=”Bookstore.Book.bookInfo”
The Child Repeater You may have noticed the weirdness in the parent transformation. What you’re actually seeing is a child repeater, defined in code.
There is one very important thing that must be added for a nested repeater to work - the NestedRepeaterControlID attribute. The NestedRepeaterControlID attribute tells the parent repeater about the child repeater, and allows the parent repeater to pass the path of each document to the child repeater. In our case, we set the NestedRepeaterControlID to authorInfo, the ID of the child repeater. NestedRepeaterControlID=”authorInfo” (this is the id you specific on the cmsrepeater in the second transformation)
Final Thoughts The nested repeater concept is something that won’t necessarily make a lot of sense until you need one, at which point everything should just click. If you run into problems with your child repeater not doing anything make sure to check your NestedRepeaterControlID as this is typically where most confusion lies. I’ve had a few people ask me how to have something covered in Tips and Tricks, and the easiest answer is to get in touch with me via matthew.lee@kenticodeveloper.com If it’s someting I can cover myself I will. If not I’ll chase up the relevant people and cover it anyway.