!!!
%html{ :lang => 'en' }
%head
%link{:href => "stylesheets/stylesheet.css", :media => "screen", :rel => "stylesheet", :type => "text/css"}/
= js 'jquery-1.4.3.min'
= js 'jquery.scrollTo-1.4.2'
= js 'jquery.timer'
/ = js 'picky.extensions'
/ = js 'picky.translations'
/ = js 'picky.data'
/ = js 'picky.view'
/ = js 'picky.backend'
/ = js 'picky.controller'
/ = js 'picky.client'
/ = js 'picky.addination'
/ = js 'picky.results_renderer'
/ = js 'picky.allocation_renderer'
/ = js 'picky.allocations_cloud'
= js 'picky.min'
%body
%img{:src => "images/picky.png"}/
%p
%a{:href => "http://floere.github.com/picky"} To the Picky Homepage
\/
%a{:href => '/configure' } Configuring this app server
%p
Try a few examples
= succeed ":" do
%span.explanation (on a simple database with 540 books - note that the server is on Heroku and needs a little time to ramp up)
%p
A simple word,
= succeed "." do
%a{:href => "#", :onclick => "pickyClient.insert('alan');"} alan
%span.explanation
(Finds Alan in the title, and Alans who wrote books. The title is ranked higher due to weighing.)
%span
%p
With qualifier,
= succeed "." do
%a{:href => "#", :onclick => "pickyClient.insert('title:women');"} title:women
%span.explanation
(Finds "women*" just in titles.)
%span
%p
With similarity,
= succeed "." do
%a{:href => "#", :onclick => "pickyClient.insert('pinchn~');"} pinchn~
%span.explanation (Finds "pynchon", note: Only title in example with similarity. Uses a combination of double metaphone and Levenshtein.)
%p
More complex,
= succeed "." do
%a{:href => "#", :onclick => "pickyClient.insert('title:lyterature~');"} title:lyterature~
%span.explanation (Finds similar titles)
%p
With choice,
= succeed "." do
%a{:href => "#", :onclick => "pickyClient.insert('sp');"} sp
%span.explanation (Finds "sp*" in multiple categories. Choose the one you're looking for.)
%p
More complex,
= succeed "." do
%a{:href => "#", :onclick => "pickyClient.insert('soc* p');"} soc* p
%span.explanation (this is where Picky really shines, "the title started with soc, and the author starts with p")
= Picky::Helper.cached_interface
:javascript
pickyClient = new PickyClient({
// A full query displays the rendered results.
//
full: '/search/full',
// A live query just updates the count.
//
live: '/search/live',
// showResultsLimit: 10, // Optional. Default is 10.
// before: function(params, query, offset) { }, // Optional. Before Picky sends any data.
// success: function(data, query) { }, // Optional. Just after Picky receives data. (Get a PickyData object)
// after: function(data, query) { }, // Optional. After Picky has handled the data and updated the view.
// This is used to generate the correct query strings, localized. E.g. "subject:war".
// Optional. If you don't give these, the field identifier given in the Picky server is used.
//
qualifiers: {
en:{
subjects: 'subject'
}
},
// This is used to explain the preceding word in the suggestion text, localized. E.g. "Peter (author)".
// Optional. Default are the field identifiers from the Picky server.
//
explanations: {
en:{
title: 'titled',
author: 'written by',
year: 'published in'
// publisher: 'published by',
// subjects: 'topics'
}
}
});
// An initial search text, prefilled.
//
pickyClient.insert('italy');