Code, Code, Revolution!
This is the first part in a planned series of explaining techniques and examples of how you can create more advanced EPiServer properties by utilizing Ajax.
In this first part we’re going “old skool” by implementing Ajax callbacks using ICallbackEventHandler (msdn). ICallbackEventHandler first showed up in .NET Framework 2.0 and when EPiServer 4 introduced .NET 2.0 support it was the easiest way to create an easy to distribute ajax enabled function because it has no dependencies on additional packages, such as the ASP.NET AJAX Extensions 1.0. The ICallbackEventHandler method is still viable today with .NET Framework 3.5 for simpler ajax implementations. In fact, the DataContractJsonSerializer makes it even less painful.
In this post I’ve built a property that might not be very useful for anything other than a proof-of-concept. It’s a page selector property with ajax enabled search functionality, the editor can type a string into a box and the property will search for pages (using FindAllPagesWithCriteria) containing that string in its name. The result is presented in a combo box and the editor can then pick a page from there. Here’s what it looks like:

It might not be the most visually appealing property but that’s not really our goal here. Read on and download the code »
Embedding javascript files into the dll is a good technique I use to make deployment of components easier. When creating properties or other controls that require javascript to work it’s much easier to write the code in a javscript file than to write it inline in the code as a string and then render the string as a script block. It makes sense that the scriptcode is included in the dll which makes deployment much easier. The resource is served to the user through the axd-handler. Here’s a quick guide to embedding your script files into your dll. Read on »
I’m involved with all of our major clients at Avantime and pretty much all of them are now starting to mention that they would like to include social networking in their intranets etc. Everyone is of course referring to Facebook and wants “their own Facebook”. There are few products available for social networking and even fewer free products.
KickApps.com is a free white label SaaS community platform. Free in the sense that you have to accept advertising on your site or pay to remove it. It’s not Facebook, but it’s the best free platform I’ve seen for social networking. Compared to Ning, Kickapps is awesome. Here’s how KickApps describe themselves:
KickApps provides brands, enterprises and web publishers with solutions that enable them to create and manage next generation web experiences that are social, interactive, dynamic, distributed, and data-informed. KickApps solutions consist of a suite of hosted social and media applications and services that are used by some of the world’s largest websites and brands to grow & engage their on line audiences and foster deeper relationships with customers.
Customers include HBO, National Geographic, Johnson & Johnson, Kraft etc.
KickApps has good features for integrating their platform with any existing platform. Most importantly they support DNS masking and SSO (single sign on). In this post I explain how KickApps SSO is implemented and how you can benefit from it with EPiServer.
Read on for more information and code
I was discussing a new project with one of the newer members of the Avantime team, Simon Sundén (Iconvert). Simon is just like most people at the office: a huge nerd. In fact, I would argue that Avantime has the highest nerd per employee ratio in Sweden. The difference between Simon and me is the subject of nerdines, he’s all about SEO and on-line marketing, I’m all about technology and coding. I think it’s awesome how people can get totally excited over things I personally don’t find very interesting. Back on topic.
Simon loves WP (WordPress) but doesn’t care much for EPiServer. I have more or less the opposite opinion: WP is a great toy for blogs and 4-page websites but you can’t compare the two. Simon’s main concern with EPiServer is that it’s not very SEO friendly, which is WPs’ strong side. So I made it my weekend project to work on plugins for EPiServer that would improve the SEO aspects. My goal is to shut Simon up and perhaps make him like EPiServer, if just a little bit.
Read on and watch the video »
A friend at work gave the the ipcc-settings file needed to activate MMS and tethering for Telenor in Sweden. Download the settings, unzip and use iTunes to install it. Installation in iTunes is just like how you install iPhone OS 3.0, using the key combo on update button to manually select the file.
For MMS to work you must have your phone nummer correctly entered in Settings->Phone. The correct format is: 073-111 111 11, (ie, not 00 46 73-111 111 11)
Telenor mms and tethering settings for iPhone
^ MMS in iPhone
Signing of XML documents make up the foundation for SAML security by providing proof that a message hasn’t been tampered with by a third party. If you’ve ever worked with certificates and signing XML in .NET 2+ you know that it’s not a big deal. The X509Certificate2 class make loading public and private keys from certificates on disk or certificate store a breeze. While you’re probably looking forward to .NET 4 just as much as I am, sometimes your customers have old platforms that just can’t be upgraded to .NET 2.0+ by recompiling it. So if you’re stuck with .NET 1.1 you will run into problems handling certificates. The solution for .NET 1.1, and other languages as well of course, is a library from Microsoft called CAPICOM. While CAPICOM isn’t a .NET library it’s easily made available in .NET using Interop.
Full post and code »
I’m visiting my parents this week in their home in Austria. Since they moved here they’ve discovered that the Internet is awesome even for old people. They use internet for pretty much everything: making phone calls (skype), watch Swedish TV, read news, keeping in touch with family and friends (mail, facebook etc). The first time I was here I installed a wireless router, but of course I had forgotten the wep key by now. Instead of re-configuring the router and the computers connected to it I found this awesome app: WirelessKeyView.
It will reveal the wep/wap key stored for all wlans in XP, probably not Vista. No installation required!
During the keynote it seemed Apple would disappoint everyone with iPhone OS 3.0 but after blabbering about 3rd party apps for way too long they unveiled the new features and it’s clear they’ve listened to their customers. MMS, cut and paste, landscape mode and spotlight search were some of the most requested features that will be available in 3.0.
As a developer the push notification service is what I really find exciting among the 1000 new APIs.
You can watch the entire keynote here
It struck me when watch it that they are showcasing the new functionality such as MMS and forward/remove SMS and voice memo etc. The audience applauds excitedly, but this is stuff that existed in my SonyEricsson phone from 6 years ago. If I was Apple, i would be a bit embarrassed to implement and showcase this after the phone being available for about 1 year. Still, I’m very happy they’ve done it. SonyEricsson however, should learn from Apple to bring updates including new features to their phones. I don’t want to buy a new phone to get new software feature.
With this blog I try to provide useful tips and solutions for programming .NET, Objective-C and more. My name is Björn Sållarp, and I love writing code.