Prism Blog

Mobile Interface Configuration

This post is an addendum to the existing Prism 3 Design Guidelines focusing on the new features that come as part of the mobile interface and its related release.

Enabling the Mobile Interface

Currently, because it requires checks with theme compatibility, mobile is turned on by sending a service request to the Help desk. We will

Turning the interface on by default has two effects: enabling the mobile interface and enabling html5.

Mobile Interface

When enabled, the main effect of the mobile interface is that it will add extra CSS that overrides existing themes when in a mobile context. These changes are adaptive, which means that when you size a modern browser like Chrome or Firefox or IE9 to the targeted window size the mobile interface will come into effect.

Extra features are also enabled such as swipe-based paging and background loading of search results. However, these feature rely on modern HTML5 features that are only available in recent browsers and so may not be present if you view the page on an older desktop browser; Prism will still work as normal though.

Note: Because of the way the mobile interface overrides styles, the system will strip out !important declarations as these may prevent those overrides.

HTML5

The Prism mobile interface makes use of a number of features from the new version of HTML (the markup language of the web). Since we’re using these modern features, we’ll switch the DOCTYPE to indicate HTML5.

This has the additional bonus of forcing Internet Explorer 6 to use its standards rendering mode, which means it behaves more like modern browsers. This may mean you find themes designed assuming IE6 quirks mode may look odd. Fortunately the new release also has some additional features designed to help targeting older versions of Internet Explorer, see CSS Browser Targeting below, allowing much easier targeting of corrective measures.

Customising the Mobile Interface

The mobile interface is a series of additional stylesheets and behaviours for small devices. It aims for a more “app-like” feel, which focuses on core tasks and their requisite elements of the interface, often hiding extra detail behind reveals to optimise for the small screen size.

Because mobile is a more fragmented space than desktop, where slight changes can have major impacts you might not see on one particular phone, the mobile interface has a more restricted set of configuration options. This makes the theme more reliable across devices and enables us to fix in one place rather than across multiple tenancies.

Configuration is achieved by creating a file called config.ini that you upload as part of your theme files via the admin console. It goes in the base of the theme so you can update it as a single file without re-uploading the entire theme. Rather than write CSS rules it allows you to specify parameters that we turn into CSS for you. This means you don’t have to worry about browser inconsistencies, since we handle that for you.

A config.ini looks like this (note lines may wrap and {tenancy} should be replaced with your tenancy):

;this is a comment...
 [Mobile]
touch_icon = //prism.talis.com/{tenancy}/assets/-/images/start_icon.png
mobile_header_background = //prism.talis.com/{tenancy}/assets/-/assets/images/mobile_header.png
mobile_form_element_border = #E3E5F5
mobile_form_element_background = #fff
mobile_form_button_background = #fafafa
mobile_tag_background = #D2E3FF
mobile_tag_border = #80B2FF
mobile_tag_text_colour = #333
mobile_text_colour = #222
mobile_link_colour = #28489D

You can create this file in Notepad or any other text editor, simply make sure it is saved with the .ini extension. The initial set of configurable parameters is conservative and allows for form element styling, facet/tag styling and main text colouration. It also allows you to specify the background image for the application title and the touch icon used when creating a shortcut icon on iPhone/iPad.

The web addresses for these image should be full urls, with a protocol independent uri so they work under both secure and insecure connections. Note the lack of http: prefixing the web addresses used, for example:

//prism.talis.com/{tenancy}/assets/-/images/start_icon.png

The sizes for iOS start icons are 57×57 pixels. You can learn more about these on Apple’s Developer Site.

You may also want to specify a custom background for the application header. This sits at the top of all pages in the mobile interface behind the main application title. It should be 50px high, by a maximum of 470px wide. Note that the 470px is a maximum and that the image will be truncated on smaller screens. Also note that the icon shown by default is 40px by 40px, so if you want to substitute in your own this is the size to use.

Extra Links

Mobile hides header and footer fragment detail to save space and focus on the core functionality. There may be items, such as links to terms and conditions, that you are required to include a link to and wish to re-instate on mobile. Be cautious of what you choose to add, since it is far easier to overload the interface on a mobile device than on a desktop.

The best option for adding such extra links is to add this to the headerlinks.html fragment as a menu item, giving it the class of mobile. This will hide it on desktop devices, but place it in the openable menu on the top of the screen should access be needed:

For example:

<ul>
    <li class="mobile"><a href="{url}mobilehelp.html">Mobile Help</a></li>
</ul>

Javascript Extensions

If you make use of any extensions to the Prism interface, image carousels or similar via either Juice or jQuery, you may wish to disable these when mobile is enabled as they may cause slowness due to extra network requests and more involved scripting.

You can set these to not run when mobile is enabled by checking the PRISM.mobile object property in Javascript. This is set to true when the main window is smaller than the 480px that triggers the mobile interface. You can then turn of features that aren’t suitable to run in a mobile context.

if(PRISM.mobile){
 //code to run mobile essential extensions
 }
 else{
 //code to run normally
 }

You could also modify how Juice is included in the page to use this too, reducing your downloads on mobile devices even further. So for example, the following could be added to your javascript.html fragment:

<script type="text/javascript">
    $(function(){
        if(!PRISM.mobile){
                $('body').append('<script type="text/javascript" src="http://prism.talis.com/{tenancy-name}/assets/-/juice.js"></script>');
            }
    })
</script>

This would only include the juice.js file if mobile is not enabled.

If you are using extensions, we recommend you move to using the version of jQuery bundled with Prism, to avoid downloading the same library multiple times.

Additional Features

The release with mobile also includes a number of additional features that improve the handling of CSS.

CSS browser targeting

The new release includes a more robust method of targeting older versions of Internet Explorer with CSS rules to account for browser quirks. By prefixing a CSS selector with a particular class you can target older versions of the browser with specific fixes. For example:

 .item{
 width:98%;
 }
.ie6 .item{
 width:100%;
 }

would declare a normal width on newer browsers of 98%, but force IE6 to set the width to 100%. This method prevents the use of ugly and problematic “CSS hacks” that can cause unexpected behaviour.

CSS Merging

The new CSS handler features a number of improvements to the way CSS is served to the browser.

Firstly we merge the files together, reducing network requests. Where previously we linked to three files base.css, site.css and print.css, these files are now wrapped together as one, with the mobile interface included as well if enabled. This merged file has a url of assets/{etag}/merged.css , which means it looks like it’s in your theme so existing image references work.

When this file is served it is sent with far future expiring cache headers which means that the file will always be cached, reducing requests for large CSS files and speeding your catalogues display. If you change your site.css or config.ini, or we release a new version of Prism, the file’s web address changes automatically so the updated CSS will be downloaded.

Note: Because we now merge CSS, if your theme uses @import rules, which must appear at the top of the file to work. These will now need to be actually included in the site.css file. This is best practice as it allows us to reduce network requests and force caching.

Interface Labels

Mobile makes use of several interface labels that have previously been hidden (the main application title) or are new (mobile introductory text). These can be customised as with any interface label in Prism. The default for application title is “Talis Prism”, but you may prefer a shorted version of your institution name with “Library Catalogue” added. Please raise a service request with the required text and we will configure it for you.

Prism Release Preview – 5th September 2011

We’re pleased to announce that the latest version of Prism is now available to preview.

Mobile Interface Enhancements

The main feature in this release is the Prism Mobile Interface. This makes your Prism-based catalogue into a mobile “web app”, optimised for viewing on all modern smart phones (iPhone, Android and others). We’re really pleased with the way this has turned out and think it will be a valuable feature for an increasingly mobile user base.

The mobile interface enables an adaptive design that triggers when a small-screen device accesses the page and reformats the page to be more mobile friendly. This feature also includes a huge number of improvements to speeding up access over slower mobile networks using browser-side caching.

Enhancements include:

  • Enhanced theme display on mobile devices
  • Background loading of search results for speedier paging and fewer requests
  • Browser-side caching of search results for faster repeat viewing
  • Swipe gestures can be used to page searches results on touch-enabled devices
  • Home screen icon for iOS

More about these enhancements was covered in the recent mobile interface webinar.

The mobile interface itself requires a modification to the tenancy configuration and we recommend you test this on your sandbox tenancy before going live. If you raise a service request we will add the configuration as soon as possible and let you know when it’s available.

Some features use interface fragments that were previously hidden (the default application title is Talis Prism for example) and you may wish to add these requests to the same service request.

Improvements to CSS for Themes

In addition to the mobile work the release also includes a vast array of performance optimisations for themes by updating the CSS:

  • All CSS merged into one file for faster delivery
  • Better caching of CSS
  • New features for targeting older Internet Explorer browsers
  • Improved Print stylesheets
  • Additional CSS hooks on the advanced search page  for easier styling

Along with details about how to customise the mobile theme, we’ll include details about these improvements in an upcoming blog post and revised version of the Design Guidelines.

Because there are so many changes behind the scenes we strongly recommend that everyone checks the preview of their catalogue carefully to make sure themes display as expected. We’ll leave this version on preview for two weeks to ensure there’s time to catch any oddities.

Support for Additional LDS Authentication Methods

This release also includes additional features allowing for future development of expanded authentication methods.

Tiny Images on account pages

Our new jacket enrichments allows much more flexibility in terms of image sizes available. We’ve turned on the additional tiny image size in places  where it is more appropriate than the default small image.

Previewing this new version in your catalogue

As usual, this version of Prism can be accessed by including /demo/ before the tenancy part of your url, so for example http://prism.talis.com/demo/southwark for Southwark’s catalogue. If you are testing the mobile interface we will add that to your sandbox tenancy first and will contact you when it is enabled with further details.

Prism 3 mobile interface

At the end of August we will be releasing the Prism 3 mobile device interface to demo. It will then be released to live in mid-September. This new feature has been built specifically in the mobile device context – only a small screen area, and a need for immediate and quick answers.

Some of the front end features that will benefit users include touch-swipe paging and a home screen icon, allowing the mobile interface to be more app-like. The URL for your catalogue will also remain the same; Prism 3 will detect the device being used and automatically render in the mobile interface. Some new web browser features, including caching pre-loaded searches and use of HTML5, allow the interface to be much quicker and responsive for the user.

Our senior developer on Prism 3, Matt Machell, explains these and other features in more detail in this recording of the latest Prism 3 mobile interface webinar. To get this feature enabled on your catalogue when it goes into demo, please raise a support case.

[podcast format=”video”]http://talis-videos.s3.amazonaws.com/mobile_interface.mp4[/podcast]

BDS cover images now live in Prism

I’m pleased to announce that the upgrade to BDS cover images is now live as the default in Prism catalogues. Today’s switch to BDS was enabled in the latest release of Prism last week and is the first step in implementing an agreement with BDS to provide Prism users with extended enrichments.

Details of the agreement for enhanced enrichments from BDS  were given in a webinar last month which is available as a video.
Lord of the rings results in Southwark
BDS images are now provided by default but you can opt for an alternative supplier.

With the switch to BDS you will see
– more cover images for books
– cover images for audio and video resources where your record includes the International Article Number (EAN) or Universal Product Code (UPC). This gives considerable extra scope to the coverage of images in your catalogue.

The BDS images are generally larger, giving greater clarity and detail, because the width is fixed to fill the space available, whereas previously the longest edge was a fixed length.

Some good examples of the extra coverage in Southwark Libraries’ catalogue:
New acquisitions in the Music Catalogue
New acquisitions in the Film Catalogue
Lord of the rings (books, CD, Blu-ray …)

Smaller images will be coming in a future release for the mobile interface and for lists in the My Account area.

Prism Release – 10 August 2011

I’m pleased to announce the release of the latest version of Prism to the live service. This version has been available for preview since 25th July and was described in detail in the preview release notice. The main inclusions are:

– Improved display of formats in initial results display for Semantic Data Model records
– Support for Audio Visual (non-ISBN) cover images
– Addition of two new theme fragments

The improved display of formats is dependent on having implemented the new version of MarcGrab, which is currently being rolled out.

We announced in a  Prism blog post and elsewhere that we have formed an agreement with BDS to provide Prism users with extended enrichments. That is enabled by this release but the switch to BDS will be made separately later. As stated in recent newsletters, please let us know by 15th August if you wish to stay with Nielson Book Data. Please contact your account manager if you wish to discuss Prism enrichments further.

If you have any comments, questions or suggestions on this release please get in touch; you can comment here on the blog, on the forums and Prism Ideas or contact your account manager or the Prism team directly.

Prism 3 mobile interface – an introduction

Prior to the release of the Prism 3 mobile interface we are holding a webinar to preview this latest enhancement. The webinar will be held on 22 August at 11.00am. This introduction to the mobile interface will provide opportunity to understand how the mobile interface will work, how it will be used and give you the chance to ask any questions you may have. Register your free place now.

New Prism Design Guidelines

We’re pleased to announce the release of the new Prism Design Guidelines.

As Prism evolved and the number of implementations grew, we realised that the existing design guidelines needed to be more comprehensive. We wanted to produce a set of guidelines that would answer common support queries and ensure customers producing their own themes had a solid grounding in the logic of the theme system.

So we set about rewriting the existing guidelines from the ground up. The aim is that the new guidelines can be a desk reference for a freelancer, in house web designer or systems librarian who wants to customise Prism.

The new guidelines cover a variety of topics including:

  • Page Fragments
  • Markup Structure
  • Building Flexible Designs & Future Proofing
  • Using the Admin Console

There’s also plenty of helpful hints on optimisation, development tools, reference works and commonly encountered issues.

Like Prism itself these guidelines are an evolving document and we’ll be integrating feedback and improving them as new features are released. So please do download them and let us know if there are areas you’d like to see covered in more detail.

Download the Prism Design Guidelines.

Enhanced enrichments through Prism 3 webinar

Following a review of the data suppliers earlier this year, a new deal has been agreed with BDS to provide Prism users with extended enrichments. This will mean that Prism will provide the experience that library users have come to expect from today’s digital environment, as well as giving you best value and choice from your Prism subscription.

We held a webinar this week to explain how customers can benefit from these new enrichments and we included a demonstration of how the new book jackets are displayed in Prism searches. You can view a video of the webinar here.

[podcast format=”video”]http://talis-videos.s3.amazonaws.com/enhanced_enrichments_through_prism.mp4[/podcast]

Prism Release Preview Update – 27th July 2011

We’ve just pushed a small update to the release preview which addresses some confusion end users experienced with the “Save” button. A new button has been added to the search results page labelled “Check Availability” which, when clicked, opens the item details page.

The new Check Availability Button

Check Availability Button

You may need to reset your tenant cache on preview if you’ve looked at it recently to pick up the new button; to do this please append resettenantcache to the release preview URL, e.g.

http://prism.talis.com/demo/derby-ac/resettenantcache

We’ve had to change the HTML on the search results page slightly to fit this in, so if everyone could take a few minutes to check it works with their local styling we’d really appreciate it.

If you have any comments, questions or suggestions please get in touch; you can comment here, on the forums and Prism Ideas or contact your account manager or the Prism team directly.

Admin Console Release – 27th July 2011

We’re pleased to announce that we’ve just released a small update to the Admin Console to take advantage of the new theme fragments in the latest release preview of Prism.

It’s now possible to upload a file to your theme called login.html or noresults.html which will be displayed on the login page and no results page respectively.

If your tenancy has the welsh language option installed, you can upload both English and Welsh versions of these files by adding language codes to the filename, e.g.

login.en-gb.html
login.cy-gb.html
noresults.en-gb.html
noresults.cy-gb.html

This release also enables the Javascript fragment, which is the suggested location for placing any Javascript includes. Placing these in a file called javascript.html and uploading it to your tenancy theme will enable this feature.

If you have any comments, questions or suggestions please get in touch; you can comment here, on the forums and Prism Ideas or contact your account manager or the Prism team directly.