Skip to the content Back to Top

Please join us for a day of Inmagic training and stimulating ideas to improve your databases or web interfaces! By the end of each session you will learn:

  • tips and tricks for improving functionality
  • time-saving features
  • new design options
  • latest features of the software
  • plus you will receive handouts and sample files to take away

Andornot has been an Inmagic Partner for over 15 years and your instructors know the software inside and out!

Our Inmagic Training and Ideas Day will be in the following Cities:

  • Vancouver - 5 May 2011
  • Edmonton – May 25
  • Calgary – May 26
  • Ottawa – June 16
  • Montreal – June 21
  • Toronto – June 23 – NOTE new date!

The day will be structured as follows:

  • Session 1: DB/TextWorks training - 9am to noon
  • Session 2: Web interface design options - 1 to 3:30pm
  • Session 3: Introduction to discovery interfaces - 3:45 to 5pm

The cost is as follows and you can attend any or all of the sessions:

  • $125 for Session 1 only
  • $125 for Session 2 only
  • No charge for Session 3

See our Inmagic Training and Ideas Days page on our website for more information about each session and for a link to the registration form. Note: These are not hands on sessions, but there will be handouts and time for discussion.

Seating is limited and the deadline for registration is one week before each session date. 

We will be sending out email invites to clients shortly, however any Inmagic user is welcome to register now for the session in your city.

We hope to see you there.  Contact us for more information. 

In my kindergarten, we sang a song most days about sharing (probably when one of us brought in a special toy, or a bag of cookies). I no longer remember all the words, nor the melody (which as a 5 year old I probably couldn't manage anyhow), but I sure had it drilled into me that Sharing is Good.

To that end, and following hot on the heels of our recent addition of Google Book Covers and Previews to the Andornot Starter Kit (ASK), today we added a Share button to ASK.


Look familiar? Yes, you've seen this button before. Just about every website has one now. What is it? A very quick way of letting others know about something you've found. Imagine you've been searching and searching in one online database after another for a very particular resource and... You Found It! And you're excited, and impatient, and you want to share the news, either by email or Twitter or on your Facebook page, or through any other social networking site. With just a couple clicks, you can do that.

This particular button is provided by This site aggregates hooks into every known social networking site, from Facebook to Twitter to Delicious, as well as providing the ability to simply bookmark the page or email the link to a friend.

When you get your own button from, you can customize its appearance and the social bookmarking services offered, and sign up to have AddThis track usage, so you know how often your resources are being shared.

These buttons are available from other sites as well, such as You could also construct your own that provides all the same services: emailing, bookmarking, sharing... but it's far simpler to take one of these pre-built buttons, available at no cost.

Why should you have a Share button in your online database? These have become ubiquitous on the web. More and more users are expecting a site to have these and the ability to quickly click a button to grab the identifying information. As links are shared, more users will become aware of your resources. Search engines rarely index deep into databases, but they do index social networking sites, providing a whole new way for users to find and re-share your resources. This in turn may help increase your website's standing in search engine rankings, especially if you have unique or very specialized content.

A small but major caution: By default, the AddThis button shares the URL that appears in your browser's address bar. After searching an Inmagic WebPublisher PRO textbase, this URL contains a temporary variable. While the URL will continue to link to a record for a while, depending on the volume of searches on your site, the link may no longer work after just a few days. However, Andornot has developed a Permanent URL http handler that can be easily added to a textbase so that the URL that is bookmarked remains valid indefinitely.

What next? See the button in action here (search, click through to the full record detail page, and test the button by emailing yourself details of a book), then contact us to help you add a Share button to your site.

Library catalogues are boring.  Face it, their dullness is only mitigated by the thrill received when your catalogue search results have either a link to the full text or a website or to an image or something other than just the basic bibliographic details.  Ok, some folks use the library catalogue to find books - on the shelf and in their library - but if you are not familiar with that book, how do you know if it is worth your while seeking out? 

See the cover and preview the book.  Now there is a way to liven up and to add value to your catalogue, with both a book cover image and a preview of the text, if they are available.  Just by having the book's ISBN in the catalogue database, a link can be made to Google Books.  With this link you can have an image of the book's cover in full and beautiful colour displayed next to the bibliographic information.  You can also have a link to the Google Book Preview, if it is available.  Andornot has long since advocated enhancing the library catalogue and added the Google Books covers and previews to its own Starter Kit.  We then suggested that Inmagic WebPublisher PRO hosted clients do the same. 

Several clients took up the offer and now there are many examples to show you.  Elizabeth Lamont from the Royal Victoria Hospital Library, who oversees the coordination of the McGill University Health Centre Libraries catalogue (try the New Books link), loved this feature:  "Nice visuals for our users. We particularly like the added information on book contents. All without any extra work on our part!"  Both Lance Nordstom and Marci Gibson from WorkSafeBC appreciated the addition to their library catalogue of "a bit of colour to the results pages".  When it was suggested to Leah Harms, the librarian at the Resource Library for the Environment and the Law, that she add this feature to her library catalogue, she said of the Google Books Preview example shown to her that she "had no idea how great that book was until I read the preview."  And after we added them Leah commented: "I really am very pleased with the vibrancy of the covers and the usefulness of having the preview links. They function to better pique curiosity much like abstracts do for journal articles."

You can also see this feature on a few other catalogue databases:  Northern Health, Interior Health, Vancouver Coastal Health, Fraser Health, and the Resource Centre for Voluntary Organizations.  For best results, may we suggest that you search for books published since 2000.

Contact us to help you add Google Book covers and previews to your online catalogue. 

Using ASP.NET AJAX extensively in my latest project I've been sporadically running into the Sys.WebForms.PageRequestManagerParserErrorException. It got to the point that I was contemplating ripping out ASP.NET AJAX completely until this known issue had been ironed out. The various causes for this error are mentioned many different places, but for some samples, go here, here, and here.

Quoting from Eilon Lipton's blog posting, this particular exception is very common and can be caused by any one of the following:

  1. Calls to Response.Write():
    By calling Response.Write() directly you are bypassing the normal rendering mechanism of ASP.NET controls. The bits you write are going straight out to the client without further processing (well, mostly...). This means that UpdatePanel can't encode the data in its special format.
  2. Response filters:
    Similar to Response.Write(), response filters can change the rendering in such a way that the UpdatePanel won't know.
  3. HttpModules:
    Again, the same deal as Response.Write() and response filters.
  4. Server trace is enabled:
    If I were going to implement trace again, I'd do it differently. Trace is effectively written out using Response.Write(), and as such messes up the special format that we use for UpdatePanel.
  5. Calls to Server.Transfer():
    Unfortunately, there's no way to detect that Server.Transfer() was called. This means that UpdatePanel can't do anything intelligent when someone calls Server.Transfer(). The response sent back to the client is the HTML markup from the page to which you transferred. Since its HTML and not the special format, it can't be parsed, and you get the error.

The problem was I wasn't doing any of the above (who uses Response.Write in an ASP.NET application these days?) and I was still sporadically encountering the error - a show stopping error I might add. An error that is popped up in a javascript warning box completely undecipherable to the end user leaving an empty/useless/castrated UpdatePanel in its wake. This of course leaves the end user feeling likewise empty/useless/castrated (to say nothing of the developer).

This post here indicates that there is a problem with the RoleMangerModule or any time you set a cookie to the response in an AJAX callback, which can only be solved by doing one of the following:

  1. Disable caching of cookies in the RoleManager. (yuck)
  2. Handle the Application's Error event to clear the error from the Context selectively (eek).
  3. Disable EventValidation in the web form.
    <%@ Page Language="C#" EnableEventValidation="false" %>

None of the above are entirely reasonable solutions (especially the last two), and the worst part was that my test page was just a simple contact page that did not change/set roles or cookies, or response.write, or set anything in the session, and wasn't receiving any Unicode character input, or even requiring a user to be logged in, or writing anything to the trace, or anything beyond the basics. And still it blew up. But only occasionally.

In order to faithfully reproduce the error, I finally determined that it must have something to do with sessions as it would only occur if the app pool had recycled and all browser windows had been closed. So, based on one of the comments in one of the above posts, even though I'm not touching session on one of the problem pages, I tried a hack in one of the problem page's Page_Load:

Session["FixAJAXSysBug"] = true;

And lo and behold, we're good to go! So even though I am not using Session on the problem page it must be attempting to set the initial session cookie using the Update Panel callback. So the solution is to make sure the initial session is set before any Update Panel callback takes place. How this got through into production is beyond me.

So if you're sporadically encountering the Sys.Webforms.PageRequestManagerServerErrorException, it could be for any of the above reasons or the fact that your dog/cat/stuffed teddy bear is sitting too close to your monitor. But give the last one a try in every page utilizing AJAX if you're using sessions in your application.

UPDATE: If the problem pages aren't even using session, just turn session off for the page:

<%@ Page EnableSessionState="false" ... %>

Or better yet, set it in your base class to always be off, and turn it on for the pages where you need it on.

UPDATE II: Further developments.

I must say, being in a room full of blogger aficionados, wiki neophytes, avid podcasters, and especially "Non-Programmers" was a refreshing experience. Northern Voice 2007 (a non-profit personal blogging conference for techies and newbies alike) was held at UBC this year (February 23-24, 2007). Moose Camp (an organic, self-organizing, un-conference) kicked off the event with over 300 web developers and enthusiasts from around the world. Without a doubt, every participant shared (or ranted about) their success stories and of course debated about which blogging platform was the best (WordPress vs. Drupal vs. MovableType vs. Expression Engine). There were numerous Cool Web 2.0 Tools, Tips, & Tricks that I tried to absorb via osmosis (way too many that I will probably spend long nights playing with all of them). However, the one thing that impressed me the most (aside from snatching up a free t-shirt and funky buttons) is how these tools can remarkably help change an organization (ahem, we use lots of Web 2.0 tools on our web site), a community (ex. VanCity's, and even our very own lives (ex. Kristen's story and her adventures). Here are some of the sessions that I attended: The fine folks at Podcast Spot have recorded all the sessions and are available at For photos, search via Flickr tag: nv07, northernvoice The interesting part about this conference is that participants are actually encouraged to whip out their notebooks and blog, instant message, write emails, upload flickr photos, and simultaneously podcast during presentations. [I personally never did that...well, I only moderately checked my email .... and I only made a few blog posts... and I only uploaded ONE photo...but I had to IM chat with.... ;) ]. I look forward to sharing my experience with our Andornot clients.

Let Us Help You!

We're Librarians - We Love to Help People