WordPress.org

Plugin Directory

Changeset 1156983


Ignore:
Timestamp:
05/09/15 17:55:32 (2 years ago)
Author:
donutz
Message:

update trunk to 0.2.0

Location:
pelagios-widgets-for-wordpress/trunk
Files:
18 added
43 edited

Legend:

Unmodified
Added
Removed
  • pelagios-widgets-for-wordpress/trunk/inc/admin/admin-about.php

    r583489 r1156983  
    22 
    33/** 
    4  * About Page 
     4 * Admin About Page 
    55 * 
    66 * @package: Pelagios Widgets for WordPress 
    77 * 
    8  * @updated: 31 may 2012 
     8 * @updated: 20 oct 2014 
    99 */ 
    1010if ( ! function_exists( 'wp_pelagios_settings_about_page' ) ) 
     
    1212function wp_pelagios_settings_about_page() 
    1313{ 
    14     global $wp_pelagios; 
    15     $v = $wp_pelagios->version; 
    16     ?> 
     14    global $wp_pelagios; 
     15    $v = $wp_pelagios->version; 
     16?> 
     17<style> 
     18.wp-awld-js-welcome-panel{line-height:20px}.wp-badge{float:left;clear:left;margin:0 10px}.welcome-panel-column p{padding: 0 20px 0 0}.bottomline{text-align:center;color:#888} 
     19</style> 
    1720    <div id="welcome-panel" class="welcome-panel wp-pelagios-welcome-panel" style="border-top:0;"> 
    1821    <div class="wp-badge"><?php printf( __( 'Plugin v. %s', 'wp_pelagios' ), $v ); ?></div> 
     
    2326    <div class="welcome-panel-column-container"> 
    2427    <div class="welcome-panel-column"> 
    25         <h4><span class="icon16 icon-"></span> <?php _e( 'About Pelagios Widgets', 'wp_pelagios' ); ?></h4> 
     28        <h4><?php _e( 'About Pelagios Widgets', 'wp_pelagios' ); ?></h4> 
    2629        <p><?php _e( 'The Pelagios widgets are widgets that you can embed on a web page to display relationships between places and items in ancient history collections.', 'wp_pelagios' ); ?></p> 
    2730        <p><?php _e( 'There are two widgets, one to display information about places you mention on your site, the other allows people to search for information related to places.', 'wp_pelagios' ); ?></p> 
    2831        <p><?php _e( 'The information displayed originates from museums, research institutes, universities and projects that are part of Pelagios, and includes details about these items and maps showing associated locations.', 'wp_pelagios' ); ?></p> 
    29         <h4><span class="icon16 icon-"></span> <?php _e( 'Links and resources', 'wp_pelagios' ); ?></h4> 
     32        <h4><?php _e( 'Links and resources', 'wp_pelagios' ); ?></h4> 
    3033        <ul> 
    3134        <li><?php echo sprintf( __( 'Pelagios <a href="%s" target="_blank">news</a>', 'wp_pelagios' ), esc_url( 'http://pelagios-project.blogspot.co.uk/' ) ); ?></li> 
    32         <li><?php echo sprintf( __( 'Pelagios Widgets <a href="%s" target="_blank">demo</a>', 'wp_pelagios' ), esc_url( 'http://pelagios.github.com/pelagios-widgets/demo/index.html' ) ); ?></li> 
    33         <li><?php echo sprintf( __( 'Pelagios Widgets <a href="%s" target="_blank">docs</a>', 'wp_pelagios' ), esc_url( 'http://pelagios.github.com/pelagios-widgets/docs/index.html' ) ); ?></li> 
     35        <li><?php echo sprintf( __( 'Pelagios Widgets <a href="%s" target="_blank">demo</a>', 'wp_pelagios' ), esc_url( 'http://pelagios.github.io/pelagios-widgets/demo/index.html' ) ); ?></li> 
     36        <li><?php echo sprintf( __( 'Pelagios Widgets <a href="%s" target="_blank">docs</a>', 'wp_pelagios' ), esc_url( 'http://pelagios.github.io/pelagios-widgets/docs/index.html' ) ); ?></li> 
    3437        <li><?php echo sprintf( __( 'Pelagios Widgets code repository on <a href="%s" target="_blank">Github</a>', 'wp_pelagios' ), esc_url( 'https://github.com/pelagios/pelagios-widgets' ) ); ?></li>         
    3538        </ul> 
    3639    </div> 
    3740    <div class="welcome-panel-column"> 
    38         <h4><span class="icon16 icon-"></span> <?php _e( 'Credits', 'wp_pelagios' ); ?></h4> 
     41        <h4><?php _e( 'Credits', 'wp_pelagios' ); ?></h4> 
    3942        <p><?php _e( 'The Pelagios Widgets were developed by the Institute of Educational Technology at The Open University as part of the Pelagios 2 project funded by JISC.', 'wp_pelagios' ); ?></p> 
    40         <h4><span class="icon16 icon-"></span> <?php _e( 'Copyright', 'wp_pelagios' ); ?></h4> 
     43        <h4><?php _e( 'Copyright', 'wp_pelagios' ); ?></h4> 
    4144        <p><?php _e( 'Pelagios Widgets &copy; 2012, the Institute of Educational Technology. All rights reserved.', 'wp_pelagios' ); ?></p> 
    42         <p><?php _e( 'WordPress plugin &copy; 2012, Peter J. Herrel.', 'wp_pelagios' ); ?></p> 
    43         <h4><span class="icon16 icon-"></span> <?php _e( 'License', 'wp_pelagios' ); ?></h4> 
     45        <p><?php printf( __( 'WordPress plugin &copy; 2012-%s, Peter J. Herrel.', 'wp_pelagios' ), date( 'Y' ) ); ?></p> 
     46        <h4><?php _e( 'License', 'wp_pelagios' ); ?></h4> 
    4447        <p><?php echo sprintf(  __( 'Pelagios Widgets is released under GNU Public Licence v3; see <a href="%s" target="_blank">LICENSE.txt</a> for more infomation.', 'wp_pelagios' ), esc_url( 'https://github.com/pelagios/pelagios-widgets/blob/master/LICENCE.txt' ) ); ?></p> 
    4548        <p><?php _e( 'WordPress plugin license: GPLv3.', 'wp_pelagios' ); ?></p> 
    46         <h4><span class="icon16 icon-"></span> <?php _e( 'Disclaimer', 'wp_pelagios' ); ?></h4> 
     49        <h4><?php _e( 'Disclaimer', 'wp_pelagios' ); ?></h4> 
    4750        <p><?php _e( 'Both widgets are currently in beta.', 'wp_pelagios' ); ?></p> 
    4851    </div> 
    4952    <div class="welcome-panel-column welcome-panel-last"> 
    50         <h4><span class="icon16 icon-"></span> <?php _e( 'About this plugin', 'wp_pelagios' ); ?></h4> 
     53        <h4><?php _e( 'About this plugin', 'wp_pelagios' ); ?></h4> 
    5154        <p><?php _e( 'The <em>Pelagios Widgets for WordPress</em> plugin was developed by <strong>Peter J. Herrel</strong>', 'wp_pelagios' ); ?></p> 
    5255        <p><?php _e( 'The author has no affiliations with the Institute of Educational Technology.', 'wp_pelagios' ); ?></p> 
    53         <p><?php echo sprintf( __( 'If you appreciate his work, feel free to <a href="%1s">rate</a> the plugin on WordPress.org, or buy him a <a href="%2s" target="_blank">cup of coffee</a>.', 'wp_pelagios' ), esc_url( 'http://wordpress.org/extend/plugins/pelagios-widgets-for-wordpress/' ), esc_url( 'https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WAY79HJWYKPQE' ) ); ?></p> 
    54         <h4><span class="icon16 icon-"></span> <?php _e( 'Links and resources', 'wp_pelagios' ); ?></h4> 
     56        <p><?php echo sprintf( __( 'If you appreciate his work, feel free to <a href="%1s">rate</a> the plugin on WordPress.org, or buy him a <a href="%2s" target="_blank">cup of coffee</a>.', 'wp_pelagios' ), esc_url( 'https://wordpress.org/support/view/plugin-reviews/pelagios-widgets-for-wordpress' ), esc_url( 'https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WAY79HJWYKPQE' ) ); ?></p> 
     57        <h4><?php _e( 'Links and resources', 'wp_pelagios' ); ?></h4> 
    5558        <ul> 
    56         <li><?php echo sprintf( __( 'Plugin on <a href="%s" target="_blank">WordPress.org</a>', 'wp_pelagios' ), esc_url( 'http://wordpress.org/extend/plugins/pelagios-widgets-for-wordpress/' ) ); ?></li> 
    57         <li><?php echo sprintf( __( 'Plugin <a href="%s" target="_blank">support forums</a>', 'wp_pelagios' ), esc_url( 'http://wordpress.org/support/plugin/pelagios-widgets-for-wordpress' ) ); ?></li> 
     59        <li><?php echo sprintf( __( 'Plugin on <a href="%s" target="_blank">WordPress.org</a>', 'wp_pelagios' ), esc_url( 'https://wordpress.org/plugins/pelagios-widgets-for-wordpress/' ) ); ?></li> 
     60        <li><?php echo sprintf( __( 'Plugin <a href="%s" target="_blank">support forums</a>', 'wp_pelagios' ), esc_url( 'https://wordpress.org/support/plugin/pelagios-widgets-for-wordpress' ) ); ?></li> 
    5861        <li><?php echo sprintf( __( 'Plugin code repository on <a href="%s" target="_blank">Github</a>', 'wp_pelagios' ), esc_url( 'https://github.com/diggy/wp-pelagios' ) ); ?></li> 
    5962        </ul> 
    60         <h4><span class="icon16 icon-"></span> <?php _e( 'Other plugins', 'wp_pelagios' ); ?></h4> 
     63        <h4><?php _e( 'Other plugins', 'wp_pelagios' ); ?></h4> 
    6164        <ul> 
    62         <li><a href="http://wordpress.org/extend/plugins/ancient-world-linked-data-for-wordpress/" target="_blank">Ancient World Linked Data for WordPress</a></li> 
     65        <li><a href="https://wordpress.org/plugins/ancient-world-linked-data-for-wordpress/" target="_blank">Ancient World Linked Data for WordPress</a></li> 
    6366        </ul> 
    6467    </div> 
     
    7174} 
    7275} 
     76 
     77/* end of file admin-about.php */ 
  • pelagios-widgets-for-wordpress/trunk/inc/admin/admin-examples.php

    r583489 r1156983  
    11<?php 
    22/** 
    3  * Examples Page 
     3 * Admin Demo Page 
    44 * 
    55 * @package: Pelagios Widgets for WordPress 
     
    77 * @updated: 03 jun 2012 
    88 */ 
    9 if ( ! function_exists( 'wp_pelagios_settings_examples_page' ) ) 
    10 { 
    119function wp_pelagios_settings_examples_page() 
    1210{ 
     
    9593<?php 
    9694} 
    97 } 
     95 
     96/* end of file admin-examples.php */ 
  • pelagios-widgets-for-wordpress/trunk/inc/admin/admin-forms.php

    r583489 r1156983  
    150150    } 
    151151} 
     152 
     153/* end of file admin-forms.php */ 
  • pelagios-widgets-for-wordpress/trunk/inc/admin/admin-init.php

    r583489 r1156983  
    11<?php 
    22/** 
    3  * Admin 
     3 * WP Pelagios Admin 
    44 *  
    55 * Main admin file. 
    66 * 
    7  * @author      Peter J. Herrel 
    8  * @category    Admin 
    9  * @package: Pelagios Widgets for WordPress 
     7 * @author      Peter J. Herrel 
     8 * @category    Admin 
     9 * @package    Pelagios Widgets for WordPress 
    1010 */ 
    1111 
    1212/** 
    13  * Admin Menu 
     13 * Admin menu 
     14 * 
     15 * @return  void 
    1416 */ 
     17add_action( 'admin_menu', 'wp_pelagios_admin_menu' ); 
    1518function wp_pelagios_admin_menu() 
    1619{ 
    17     global $menu, $wp_pelagios;  
    18     $main_page = add_options_page( __( 'Pelagios Widgets', 'wp_pelagios' ), __( 'Pelagios Widgets', 'wp_pelagios' ), 'manage_options', 'wp-pelagios-settings' , 'wp_pelagios_settings_page' );   
     20    add_options_page( 
     21         __( 'Pelagios Widgets', 'wp_pelagios' ) 
     22        ,__( 'Pelagios Widgets', 'wp_pelagios' ) 
     23        ,'manage_options' 
     24        ,'wp-pelagios-settings' 
     25        ,'wp_pelagios_settings_page' 
     26    ); 
    1927} 
    20 add_action( 'admin_menu', 'wp_pelagios_admin_menu' ); 
    2128 
    2229/** 
    23  * Includes 
     30 * Admin settings page 
     31 * 
     32 * @return  void 
    2433 */ 
    2534function wp_pelagios_settings_page() 
    2635{ 
    27     include_once( 'admin-forms.php' ); 
    28     include_once( 'admin-settings.php' ); 
    29     wp_pelagios_settings(); 
     36    include_once( 'admin-forms.php' ); 
     37    include_once( 'admin-settings.php' ); 
     38 
     39    wp_pelagios_settings(); 
    3040} 
    3141 
    3242/** 
    33  * tinyMCE button 
     43 * TinyMCE Admin init 
     44 * 
     45 * @return  void 
    3446 */ 
    35 function wp_pelagios_add_buttons_wysiwyg_editor( $mce_buttons ) 
     47add_action( 'init', 'wp_pelagios_add_mce_button' ); 
     48function wp_pelagios_add_mce_button() 
    3649{ 
    37     $pos = array_search( 'wp_more', $mce_buttons, true ); 
    38     if ( $pos !== false ) { 
    39         $tmp_buttons = array_slice( $mce_buttons, 0, $pos+1 ); 
    40         $tmp_buttons[] = 'wp_page'; 
    41         $mce_buttons = array_merge( $tmp_buttons, array_slice( $mce_buttons, $pos+1 ) ); 
    42     } 
    43     return $mce_buttons; 
    44 } 
    45 add_filter( 'mce_buttons', 'wp_pelagios_add_buttons_wysiwyg_editor' ); 
     50    if ( ! current_user_can( 'edit_posts' ) && ! current_user_can( 'edit_pages' ) ) 
     51        return; 
    4652 
    47 function wp_pelagios_add_shortcode_button() 
    48 { 
    49     if ( ! current_user_can( 'edit_posts' ) && ! current_user_can( 'edit_pages' ) ) return; 
    50     if ( get_user_option( 'rich_editing' ) == 'true' && get_option( 'wp_pelagios_button' ) == 'yes' ) : 
    51         add_filter( 'mce_external_plugins', 'wp_pelagios_add_shortcode_tinymce_plugin' ); 
    52         add_filter( 'mce_buttons', 'wp_pelagios_register_shortcode_button' ); 
    53     endif; 
    54 } 
    55 add_action( 'init', 'wp_pelagios_add_shortcode_button' ); 
     53    if ( ! ( get_user_option( 'rich_editing' ) == 'true' && get_option( 'wp_pelagios_button' ) == 'yes' ) ) 
     54        return; 
    5655 
    57 function wp_pelagios_register_shortcode_button( $buttons ) 
    58 { 
    59     array_push($buttons, "|", "wp_pelagios_shortcodes_button" ); 
    60     return $buttons; 
     56    add_action( 'admin_head',           'wp_pelagios_admin_head' ); 
     57 
     58    add_filter( 'mce_external_plugins', 'wp_pelagios_mce_external_plugins' ); 
     59    add_filter( 'mce_buttons',          'wp_pelagios_mce_buttons' ); 
    6160} 
    6261 
    63 function wp_pelagios_add_shortcode_tinymce_plugin( $plugin_array ) 
     62/** 
     63 * Admin CSS 
     64 * 
     65 * @return  void 
     66 */ 
     67function wp_pelagios_admin_head() 
    6468{ 
    65     global $wp_pelagios; 
    66     $plugin_array['WpPelagiosShortcodes'] = $wp_pelagios->plugin_dir_url . 'inc/assets/js/wp_pelagios_editor_plugin.js'; 
    67     return $plugin_array; 
     69    echo '<style type="text/css">i.mce-i-wp-pelagios-mce-button{background-image: url("' . $GLOBALS['wp_pelagios']->plugin_dir_url . 'inc/assets/images/wp_pelagios_icon.png");}</style>' . "\n"; 
    6870} 
    6971 
    70 function wp_pelagios_refresh_mce( $ver ) 
     72/** 
     73 * TinyMCE External Plugins 
     74 * 
     75 * @param   array   $plugin_array   array of external plugins 
     76 * @return  array                   modified array of external plugins 
     77 */ 
     78function wp_pelagios_mce_external_plugins( $plugin_array ) 
    7179{ 
    72     $ver += 3; 
    73     return $ver; 
     80    $min = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; 
     81 
     82    $plugin_array['wp_pelagios_mce_button'] = $GLOBALS['wp_pelagios']->plugin_dir_url . 'inc/assets/js/wp_pelagios_editor_plugin' . $min . '.js'; 
     83 
     84    return $plugin_array; 
    7485} 
    75 add_filter( 'tiny_mce_version', 'wp_pelagios_refresh_mce' ); 
     86 
     87/** 
     88 * TinyMCE Buttons 
     89 * 
     90 * @param   array   $buttons    array of buttons 
     91 * @return  array               modified array of buttons 
     92 */ 
     93function wp_pelagios_mce_buttons( $buttons ) 
     94{ 
     95    array_push( $buttons, "wp_pelagios_mce_button" ); 
     96 
     97    return $buttons; 
     98} 
    7699 
    77100/** 
    78101 * Add Quicktag to HTML editor 
    79  **/ 
    80 if( ! function_exists( '_wp_pelagios_add_quicktags' ) ) 
    81 { 
    82     function _wp_pelagios_add_quicktags() 
    83     {  
    84         if ( get_option( 'wp_pelagios_quicktags' ) != 'yes' || ! current_user_can( 'edit_posts' ) && ! current_user_can( 'edit_pages' ) ) return; 
    85         global $pagenow; 
    86         if( 'post.php' == $pagenow || 'post-new.php' == $pagenow ) : 
    87         ?> 
    88         <script type="text/javascript"> 
    89         /* Add custom Quicktag buttons to the editor Wordpress ver. 3.3 and above only 
    90          * 
    91          * Params for this are: 
    92          * - Button HTML ID (required) 
    93          * - Button display, value="" attribute (required) 
    94          * - Opening Tag (required) 
    95          * - Closing Tag (required) 
    96          * - Access key, accesskey="" attribute for the button (optional) 
    97          * - Title, title="" attribute (optional) 
    98          * - Priority/position on bar, 1-9 = first, 11-19 = second, 21-29 = third, etc. (optional) 
    99          */ 
    100         QTags.addButton( 'pelagios', 'Pelagios', '[pelagios id=""]', '', '', 'default', '991' ); 
    101         </script> 
    102     <?php endif; 
    103     } 
    104     add_action( 'admin_print_footer_scripts',  '_wp_pelagios_add_quicktags' ); 
    105 } 
     102 * 
     103 * Addq custom Quicktag buttons to the editor Wordpress ver. 3.3 and above only 
     104 * 
     105 * Params for this are: 
     106 * 
     107 * - Button HTML ID (required) 
     108 * - Button display, value="" attribute (required) 
     109 * - Opening Tag (required) 
     110 * - Closing Tag (required) 
     111 * - Access key, accesskey="" attribute for the button (optional) 
     112 * - Title, title="" attribute (optional) 
     113 * - Priority/position on bar, 1-9 = first, 11-19 = second, 21-29 = third, etc. (optional) 
     114 * 
     115 * @return  void 
     116 */ 
     117add_action( 'admin_print_footer_scripts',  '_wp_pelagios_add_quicktags' ); 
     118function _wp_pelagios_add_quicktags() 
     119{  
     120    if ( get_option( 'wp_pelagios_quicktags' ) != 'yes' || ! current_user_can( 'edit_posts' ) && ! current_user_can( 'edit_pages' ) ) 
     121        return; 
    106122 
    107 /** 
    108  * Activation 
    109  */ 
    110 function activate_wp_pelagios() 
    111 { 
    112     update_option( 'wp_pelagios_install', 1 ); 
    113     install_wp_pelagios(); 
    114 } 
     123    global $pagenow; 
    115124 
    116 /** 
    117  * Install 
    118  */ 
    119 function install_wp_pelagios() 
    120 { 
    121     global $wp_pelagios; 
    122     wp_pelagios_default_options(); 
    123     update_option( "wp_pelagios_db_version", $wp_pelagios->version ); 
     125    if( ! in_array( $pagenow, array( 'post.php', 'post-new.php' ) ) ) 
     126        return; 
     127?> 
     128<script type="text/javascript"> 
     129QTags.addButton( 'pelagios', 'Pelagios', '[pelagios id=""]', '', '', 'default', '991' ); 
     130</script> 
     131<?php 
    124132} 
    125133 
    126134/** 
    127135 * Update options 
     136 * 
     137 * @return  void 
    128138 */ 
    129139function wp_pelagios_default_options() 
    130140{ 
    131     global $wp_pelagios_settings; 
    132     include_once( 'admin-settings.php' );    
    133     foreach ( $wp_pelagios_settings as $section ) {  
    134         foreach ( $section as $value ) {     
    135             if ( isset( $value['std'] ) && isset( $value['id'] ) ) {                     
    136                 add_option($value['id'], $value['std']);    
    137             }         
    138         }         
    139    } 
    140 } 
     141    global $wp_pelagios_settings; 
    141142 
    142 /** 
    143  * Redirect after activation 
    144  */ 
    145 function wp_pelagios_activ_redirect() 
    146 { 
    147     if ( get_option( 'wp_pelagios_install' ) == 1 ) : 
    148         $url = admin_url() . 'options-general.php?page=wp-pelagios-settings&tab=about&activated=1'; 
    149         delete_option( 'wp_pelagios_install' ); 
    150         wp_safe_redirect( $url ); 
    151         exit; 
    152     endif; 
    153 } 
    154 add_action( 'admin_init', 'wp_pelagios_activ_redirect' ); 
     143    include_once( 'admin-settings.php' ); 
    155144 
    156 /** 
    157  * Deactivation 
    158  */ 
    159 function deactivate_wp_pelagios() 
    160 { 
    161     update_option( 'wp_pelagios_uninstall', 1 ); 
    162     uninstall_wp_pelagios(); 
    163 } 
    164  
    165 /** 
    166  * Uninstall 
    167  */ 
    168 function uninstall_wp_pelagios() 
    169 { 
    170     global $wp_pelagios; 
    171     wp_pelagios_delete_options(); 
    172     delete_option( "wp_pelagios_db_version", $wp_pelagios->version ); 
    173     delete_option( 'wp_pelagios_uninstall' ); 
     145    foreach( $wp_pelagios_settings as $section ) 
     146    { 
     147        foreach( $section as $value ) 
     148        { 
     149            if ( isset( $value['std'] ) && isset( $value['id'] ) ) 
     150                add_option($value['id'], $value['std']); 
     151        } 
     152    } 
    174153} 
    175154 
    176155/** 
    177156 * Delete options 
     157 * 
     158 * @return  void 
    178159 */ 
    179160function wp_pelagios_delete_options() 
    180161{ 
    181     global $wp_pelagios_settings; 
    182     include_once( 'admin-settings.php' );    
    183     foreach ( $wp_pelagios_settings as $section ) {  
    184         foreach ( $section as $value ) {     
    185             if ( isset( $value['id'] ) ) {                   
    186                 delete_option( $value['id'] );    
    187             }         
    188         }         
     162    global $wp_pelagios_settings; 
     163 
     164    include_once( 'admin-settings.php' ); 
     165 
     166    foreach( $wp_pelagios_settings as $section ) 
     167    { 
     168        foreach( $section as $value ) 
     169        { 
     170            if( isset( $value['id'] ) ) 
     171                delete_option( $value['id'] ); 
     172        } 
    189173    } 
    190174} 
     175 
     176/* end of file admin-init.php */ 
  • pelagios-widgets-for-wordpress/trunk/inc/admin/admin-settings.php

    r583489 r1156983  
    66 * This file contains functions to display and save the list of options. 
    77 * 
    8  * @author      Peter J. Herrel 
    9  * @category    Admin 
    10  * @package     Pelagios Widgets for WordPress 
     8 * @author      Peter J. Herrel 
     9 * @category    Admin 
     10 * @package     Pelagios Widgets for WordPress 
    1111 */ 
    1212 
     
    239239} 
    240240} 
     241 
     242/* end of file admin-settings.php */ 
  • pelagios-widgets-for-wordpress/trunk/inc/admin/admin-usage.php

    r583489 r1156983  
    11<?php 
    2  
    32/** 
    4  * Usage Page 
     3 * Admin Usage Page 
    54 * 
    65 * @package: Pelagios Widgets for WordPress 
    76 * 
    8  * @updated: 2012-08-05 
     7 * @updated: 2014-10-20 
    98 */ 
    10 if ( ! function_exists( 'wp_pelagios_settings_usage_page' ) ) 
    11 { 
    129function wp_pelagios_settings_usage_page() 
    1310{ 
     
    4340    <div> 
    4441        <p><?php _e( 'A Pelagios Place Widget takes the form of an icon, which when clicked, pops up information about a place. This includes a map and images associated with the place, as well as data drawn from Pelagios partners. It can be used on web pages where a particular place is mentioned to allow users of the page to view the Pelagios information associated with the place.', 'wp_pelagios' ); ?></p> 
    45         <style>#accordion_inside div{border-width:0;border-radius:0;padding:0 0 0 15px;border-left:4px solid #eaeaea}</style> 
    4642        <div id="accordion_inside"> 
    47         <h4 class="acc" aria-expanded="true"><a href="#"><?php _e( 'Shortcode', 'wp_pelagios' ); ?></a></h4> 
     43        <h3 class="acc" aria-expanded="false"><a href="#"><?php _e( 'Shortcode', 'wp_pelagios' ); ?></a></h4> 
    4844        <div> 
    4945        <p><?php _e( 'Pelagios Place widgets can be inserted in your post content with shortcodes. A Pelagios shortcode will automatically generate the required HTML markup for the Pelagios script, e.g.:', 'wp_pelagios' ); ?></p> 
     
    5349        <p><?php echo sprintf(  __( 'Visit the next tab for a real life <a href="%s">example</a>. See the section "Shortcode Parameters" below on how to retrieve the Pleiades ID for a place.', 'wp_pelagios' ), esc_url( admin_url() . 'options-general.php?page=wp-pelagios-settings&tab=examples' ) ); ?></p> 
    5450        </div> 
    55         <h4 class="acc"><a href="#"><?php _e( 'Shortcode Parameters', 'wp_pelagios' ); ?></a></h4> 
     51        <h3 class="acc"><a href="#"><?php _e( 'Shortcode Parameters', 'wp_pelagios' ); ?></a></h4> 
    5652        <div style="border-color:transparent"> 
    5753        <p><?php echo sprintf(  __( 'Seven shortcode parameters can be configured. In most cases a valid Pleiades <code>$id</code> will suffice. Setting optional parameters in a shortcode means you will override the default settings configured on the <a href="%s">settings page</a>.', 'wp_pelagios' ), esc_url( admin_url() . 'options-general.php?page=wp-pelagios-settings&tab=settings' ) ); ?></p> 
     
    119115        </table> 
    120116        </div> 
    121         <h4 class="acc"><a href="#"><?php _e( 'Shortcode Buttons', 'wp_pelagios' ); ?></a></h4> 
     117        <h3 class="acc"><a href="#"><?php _e( 'Shortcode Buttons', 'wp_pelagios' ); ?></a></h4> 
    122118        <div> 
    123119        <p><img src="<?php echo $wp_pelagios->plugin_dir_url; ?>inc/assets/images/wp_pelagios_icon.png" alt="button" title="button" class="alignright" style="width:24px;margin-right:11px;"/><?php _e( 'You can easily insert new Pelagios widgets in your post or page content via the tinyMCE shortcode button added to the visual editor.', 'wp_pelagios' ); ?></p> 
     
    125121        <p><?php echo sprintf(  __( 'Visit the <a href="%s">settings tab</a> to enable or disable editor buttons functionality.', 'wp_pelagios' ), esc_url( admin_url() . 'options-general.php?page=wp-pelagios-settings&tab=settings' ) ); ?></p> 
    126122        </div> 
    127         <h4 class="acc"><a href="#"><?php _e( 'Advanced', 'wp_pelagios' ); ?></a></h4> 
     123        <h3 class="acc"><a href="#"><?php _e( 'Advanced', 'wp_pelagios' ); ?></a></h4> 
    128124        <div> 
    129125        <p><?php _e( 'Pelagios Place widgets can be inserted directly in your template files using following code:', 'wp_pelagios' ); ?></p> 
     
    149145        <?php echo sprintf( __( 'There is an unresolved issue at the moment with using Pelagios Widgets in combination with awld.js, related to the fact that both use require.js but different versions of it (see <a href="%s" target="_blank">this ticket</a> on Github).', 'wp_pelagios' ), esc_url( 'https://github.com/pelagios/pelagios-widgets/issues/104' ) ); ?></p> 
    150146        <h4><?php _e( 'Find support', 'wp_pelagios' ); ?></h4> 
    151         <p><?php echo sprintf( __( 'If you have any issues with the Pelagios widgets, please contact Juliette Culver (j.culver@open.ac.uk) or raise an issue on <a href="%s" target="_blank">Github</a>.', 'wp_pelagios' ), esc_url( 'https://github.com/pelagios/pelagios-widgets/issues' ) ); ?></p> 
     147        <p><?php echo sprintf( __( 'If you have any issues with the Pelagios widgets, please contact %s (%s) or raise an issue on <a href="%s" target="_blank">Github</a>.', 'wp_pelagios' ), 'Juliette Culver', 'j.culver@open.ac.uk', esc_url( 'https://github.com/pelagios/pelagios-widgets/issues' ) ); ?></p> 
    152148        <p><?php echo sprintf( __( 'If you have any issues with the WordPress plugin, please raise an issue on the WordPress <a href="%s" target="_blank">support forums</a>.', 'wp_pelagios' ), esc_url( 'http://wordpress.org/support/plugin/pelagios-widgets-for-wordpress' ) ); ?></p> 
    153149    </div> 
    154150</div> 
    155151<script> 
    156 jQuery(function() { 
    157     jQuery( "#accordion, #accordion_inside" ).accordion({ autoHeight: false }); 
    158 }); 
     152jQuery(function($){$( "#accordion,#accordion_inside" ).accordion({heightStyle:"content"});}); 
    159153</script> 
    160154<?php 
    161155} 
    162 } 
     156 
     157/* end of file admin-usage.php */ 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/css/admin/jquery-ui.custom.css

    r583489 r1156983  
    9595/* Misc visuals 
    9696----------------------------------*/ 
     97 
    9798/* Corner radius */ 
    98 .ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -khtml-border-top-left-radius: 4px; border-top-left-radius: 4px; } 
    99 .ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; -khtml-border-top-right-radius: 4px; border-top-right-radius: 4px; } 
    100 .ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; -khtml-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; } 
    101 .ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; -khtml-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; } 
     99.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 0; -webkit-border-top-left-radius: 0; -khtml-border-top-left-radius: 0; border-top-left-radius: 0; } 
     100.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 0; -webkit-border-top-right-radius: 0; -khtml-border-top-right-radius: 0; border-top-right-radius: 0; } 
     101.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; -khtml-border-bottom-left-radius: 0; border-bottom-left-radius: 0; } 
     102.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 0; -webkit-border-bottom-right-radius: 0; -khtml-border-bottom-right-radius: 0; border-bottom-right-radius: 0; } 
     103 
    102104/* IE/Win - Fix animation bug - #4615 */ 
    103105.ui-accordion { width: 100%; } 
    104 .ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; font-weight:bold; } 
     106.ui-accordion .ui-accordion-header { background: #e4e4e4; border: 1px solid #CCCCCC !important; cursor: pointer; position: relative; margin-top: 0; zoom: 1; font-weight:bold; } 
    105107.ui-accordion .ui-accordion-li-fix { display: inline; } 
    106 .ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } 
     108.ui-accordion .ui-accordion-header-active { background: #e4e4e4; border: 1px solid #CCCCCC !important; } 
    107109.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; } 
    108110.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; } 
    109111.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } 
    110 .ui-accordion .ui-accordion-content { padding: 1em 2.2em; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; } 
    111 .ui-accordion .ui-accordion-content-active { display: block; background: #FBFBFB;text-shadow: 1px 1px 1px #fff;border: 1px solid #eee;border-radius: 4px;margin: 0 20px;} 
     112.ui-accordion .ui-accordion-content { padding: 1em 2.2em; margin-top: -2px; position: relative; top: 0; margin-bottom: 0; overflow: auto; display: none; zoom: 1; } 
     113.ui-accordion .ui-accordion-content-active { display: block; background: #FFFFFF;border: 1px solid #CCCCCC;border-radius: 0;margin: 0 0 0 0;} 
     114 
     115/* wp 3.5+ */ 
     116h3.acc{padding-left:15px} 
     117h3.acc a:focus{outline:medium none; box-shadow:none !important;} 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/css/admin/jquery-ui.custom.min.css

    r583489 r1156983  
    1 .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden}.ui-helper-clearfix{display:inline-block}/*\*/* html .ui-helper-clearfix{height:1%}.ui-helper-clearfix{display:block}/**/.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%}.ui-widget{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:1em}.ui-widget-content{border:0 solid #aaa;background:#fff;color:#404040}.ui-widget-content a{color:#404040}.ui-widget-header{font-weight:bold;border-color:#0064cd #0064cd #003f81;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border:0 solid #666}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{-webkit-transition:.1s linear background-image;-moz-transition:.1s linear background-image;-ms-transition:.1s linear background-image;-o-transition:.1s linear background-image;transition:.1s linear background-image;overflow:visible}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{background-position:0 -15px;color:#333;text-decoration:none}.ui-state-hover a,.ui-state-hover a:hover{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:0 solid #aaa;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-widget :active{outline:0}.ui-state-highlight p,.ui-state-error p,.ui-state-default p{font-size:13px;font-weight:normal;line-height:18px;margin:7px 15px}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{position:relative;margin-bottom:18px}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{position:relative;margin-bottom:18px}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-icon{width:16px;height:16px;background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_f6cf3b_256x240.png)}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;-khtml-border-top-right-radius:4px;border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;-khtml-border-bottom-left-radius:4px;border-bottom-left-radius:4px} 
    2 .ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;-khtml-border-bottom-right-radius:4px;border-bottom-right-radius:4px}.ui-accordion{width:100%}.ui-accordion .ui-accordion-header{cursor:pointer;position:relative;margin-top:1px;zoom:1;font-weight:bold}.ui-accordion .ui-accordion-li-fix{display:inline}.ui-accordion .ui-accordion-header-active{border-bottom:0!important}.ui-accordion .ui-accordion-header a{display:block;font-size:1em;padding:.5em .5em .5em .7em}.ui-accordion-icons .ui-accordion-header a{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;margin-top:-2px;position:relative;top:1px;margin-bottom:2px;overflow:auto;display:none;zoom:1}.ui-accordion .ui-accordion-content-active{display:block;background:#fbfbfb;text-shadow:1px 1px 1px #fff;border:1px solid #eee;border-radius:4px;margin:0 20px} 
     1.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden}.ui-helper-clearfix{display:inline-block}/*\*/* html .ui-helper-clearfix{height:1%}.ui-helper-clearfix{display:block}/**/.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%}.ui-widget{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:1em}.ui-widget-content{border:0 solid #aaa;background:#fff;color:#404040}.ui-widget-content a{color:#404040}.ui-widget-header{font-weight:bold;border-color:#0064cd #0064cd #003f81;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border:0 solid #666}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{-webkit-transition:.1s linear background-image;-moz-transition:.1s linear background-image;-ms-transition:.1s linear background-image;-o-transition:.1s linear background-image;transition:.1s linear background-image;overflow:visible}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{background-position:0 -15px;color:#333;text-decoration:none}.ui-state-hover a,.ui-state-hover a:hover{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:0 solid #aaa;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-widget :active{outline:0}.ui-state-highlight p,.ui-state-error p,.ui-state-default p{font-size:13px;font-weight:normal;line-height:18px;margin:7px 15px}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{position:relative;margin-bottom:18px}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{position:relative;margin-bottom:18px}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-icon{width:16px;height:16px;background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_f6cf3b_256x240.png)}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;-khtml-border-top-left-radius:0;border-top-left-radius:0}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;-khtml-border-top-right-radius:0;border-top-right-radius:0}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{-moz-border-radius-bottomleft:0;-webkit-border-bottom-left-radius:0;-khtml-border-bottom-left-radius:0;border-bottom-left-radius:0} 
     2.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{-moz-border-radius-bottomright:0;-webkit-border-bottom-right-radius:0;-khtml-border-bottom-right-radius:0;border-bottom-right-radius:0}.ui-accordion{width:100%}.ui-accordion .ui-accordion-header{background:#e4e4e4;border:1px solid #ccc!important;cursor:pointer;position:relative;margin-top:0;zoom:1;font-weight:bold}.ui-accordion .ui-accordion-li-fix{display:inline}.ui-accordion .ui-accordion-header-active{background:#e4e4e4;border:1px solid #ccc!important}.ui-accordion .ui-accordion-header a{display:block;font-size:1em;padding:.5em .5em .5em .7em}.ui-accordion-icons .ui-accordion-header a{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;margin-top:-2px;position:relative;top:0;margin-bottom:0;overflow:auto;display:none;zoom:1}.ui-accordion .ui-accordion-content-active{display:block;background:#fff;border:1px solid #ccc;border-radius:0;margin:0}h3.acc{padding-left:15px}h3.acc a:focus{outline:medium none;box-shadow:none!important} 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/css/pelagios-sample.css

    r583489 r1156983  
    88 *  
    99 * .example { 
    10  *      background: url(../../plugins/pelagios-widgets-for-wordpress/inc/assets/js/build/images/arrow.png) no-repeat 0 0; 
     10 *      background: url(../../plugins/pelagios-widgets-for-wordpress/inc/assets/js/build/images/arrow.png) no-repeat 0 0; 
    1111 * } 
    1212 */ 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/app/dataset.json

    r583489 r1156983  
    11[{ 
    22  "id": "b47df24737cd647789c7d61ede9fed09", 
     3  "iconFileName": "arachne.png", 
    34  "title": "Arachne", 
    4   "iconFileName": "arachne.png", 
    55  "strapline": "A web research tool of the German Archaeological Institute for searching mass archaeological records" 
    66}, 
     
    6767  "strapline":  "University Museum of ancient Greek, Egyptian & a little Roman stuff" 
    6868} 
    69  
    70  
     69, 
     70{ 
     71  "id": "5555ffd0e36e088c25f76b980139851a", 
     72  "title": "ORBIS", 
     73  "iconFileName": "pelagios.png", 
     74  "strapline":  "The Stanford Geospatial Network Model of the Roman World" 
     75} 
     76, 
     77{ 
     78"id": "4f9bb4e7c0b0c329db0d2696814ffd2d", 
     79  "title": "SquinchPix", 
     80  "iconFileName": "pelagios.png", 
     81  "strapline":  "An archive of European imagery" 
     82} 
     83, 
     84{ 
     85  "id": "77b38b7fc7d81fb278d1c3634638f8ee", 
     86  "title": "Sharing Ancient Wisdoms (SAWS)", 
     87  "iconFileName": "saws.jpg", 
     88  "strapline": "Medieval gnomologia (collections of wise sayings)" 
     89} 
     90, 
     91{ 
     92  "id": "434fc5aea15f6d39040c1282c4a2df63", 
     93  "title": "Portable Antiquities Scheme", 
     94  "iconFileName": "pelagios.png", 
     95  "strapline":  "Pleiades URIs appearing within the Portable Antiquities Scheme database" 
     96} 
     97, 
     98{ 
     99  "id": "9fdb2911bcfc625c87cfce10d97b3de7", 
     100  "title": "ORACC", 
     101  "iconFileName": "pelagios.png", 
     102  "strapline":  "Open Richly Annotated Cuneiform Corpus" 
     103} 
     104, 
     105{ 
     106  "id": "7bb4b28758a3607f9b1eea3b48df90a", 
     107  "title": "Meketre", 
     108  "iconFileName": "pelagios.png", 
     109  "strapline":  "Reliefs and paintings of Middle Kingdom tombs of Ancient Egypt" 
     110} 
     111, 
     112{ 
     113  "id": "71fd46410b14843985db023501f2f76f", 
     114  "title": "The Book of the Dead Project", 
     115  "iconFileName": "pelagios.png", 
     116  "strapline":  "The evolution of the ancient egyptian Book of the Dead" 
     117} 
     118, 
     119{ 
     120  "id": "e2e0b0b2199b875ff3acdce3f962c128", 
     121  "title": "ISAW Papers", 
     122  "iconFileName": "pelagios.png", 
     123  "strapline":  "Pleiades URIs appearing in ISAW Papers articles" 
     124} 
     125, 
     126{ 
     127  "id": "e9e161a08db2906d135d7abefb145636", 
     128  "title": "OCRE", 
     129  "iconFileName": "pelagios.png", 
     130  "strapline":  "Online Coins of the Roman Empire" 
     131} 
    71132] 
    72133 
    73134 
     135 
     136 
     137 
     138 
     139 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/app/pelagios.js

    r583489 r1156983  
    44 */ 
    55 
    6 define(["jquery","app/util","app/search_map","app/place_map","lib/text!template/widget_container.tmpl","lib/text!template/place.tmpl","lib/text!template/section.tmpl","lib/text!template/flickr.tmpl","lib/text!template/pleiades.tmpl","lib/text!template/pelagios_partner.tmpl","lib/text!template/error.tmpl","lib/text!template/search.tmpl","lib/text!template/annotations.tmpl","lib/text!template/search_results.tmpl","lib/text!template/new_tab.tmpl","lib/text!template/about.tmpl","lib/text!app/dataset.json","jqueryui","lib/jquery_pagination"],function($,util,search_map,place_map,widget_container_tmpl,place_tmpl,section_tmpl,flickr_tmpl,pleiades_tmpl,pelagios_partner_tmpl,error_tmpl,search_tmpl,annotations_tmpl,search_results_tmpl,new_tab_tmpl,about_tmpl,datasetJSON){function Widget(widgetContext){function widgetPopUp(){if(widgetContext.newTab){var e=window.open(),t=Handlebars.templates.new_tab({widgetContext:widgetContext});$(e.document.body).html(t);var n=document.createElement("script");n.type="text/javascript",n.src=widgetContext.baseURL+"lib/require.js",e.document.head.appendChild(n);var r=document.createElement("script");r.type="text/javascript",r.src=widgetContext.baseURL+"place.js",e.document.head.appendChild(r)}else{$(".pelagios .container").hide(),$("#"+widgetContext.widgetID+"-container").show();var i=$("#"+widgetContext.widgetID+"-icon").offset(),s={top:$(window).scrollTop(),left:200};$("#"+widgetContext.widgetID+"-container").offset(s),widgetContext.displayMap&&placeMap.hasOwnProperty("refresh")&&placeMap.refresh()}}function displayPlace(e){debug("DISPLAYING PLACE: pleiadesID: "+e),placeMap={},clearPlace(),showPleiadesData(e),widgetContext.type=="place"&&showAboutInformation(),showPelagiosData(e),showFlickrData(e)}function showAboutInformation(){addSection("about","About Pelagios and this widget",widgetContext.imageDir+"partner_icons/pelagios.png","");var e=Handlebars.templates.about();$("#"+widgetContext.widgetID+"-content-about").append(e)}function clearPlace(){$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty()}function showFlickrData(e){function r(t){if(t.hasOwnProperty("photos")&&t.photos.hasOwnProperty("photo")&&t.photos.photo.length>0){addSection("flickr","flickr",widgetContext.imageDir+"icons/flickr-logo.png","Photo sharing website");var n={photo:t.photos.photo.slice(0,config.MAX_PHOTOS_FLICKR-1),pleiadesID:e},r=Handlebars.templates.flickr(n);$("#"+widgetContext.widgetID+"-content-flickr").append(r)}}var t="";widgetContext.pleiadesFlickrGroupOnly&&(t="&group_id=1876758@N22");var n=config.URL_FLICKR_SEARCH+"&machine_tags=pleiades:depicts="+e+t+"&tag_mode=all&api_key="+config.API_KEY_FLICKR+"&jsoncallback=?";util.getAPIData(n,r,!1,config.TIMEOUT_FLICKR,!1)}function showPleiadesData(e){function r(e,t,n){$("#"+widgetContext.widgetID+"-content").empty();if(e.status=="404")var r={title:config.MSG_TITLE_PLACE_NOT_FOUND,msg:config.MSG_PLACE_NOT_FOUND};else var r={title:config.MSG_TITLE_PLEIADES_TIMEOUT,msg:config.MSG_PLEIADES_TIMEOUT};var i=Handlebars.templates.error(r);$("#"+widgetContext.widgetID+"-content").append(i)}function i(e){var t=!1;e.names.length>1&&(t=e.names.join(", "));var n={title:e.names[0]?e.names[0]:"Untitled",description:e.description,altNames:t,pleiadesID:e.id,widgetContext:widgetContext},r=Handlebars.templates.pleiades(n);$("#"+widgetContext.widgetID+"-pleiades").append(r),e.reprPoint!=null&&widgetContext.displayMap&&(placeMap=new place_map.PlaceMap(widgetContext.widgetID+"-map_canvas"),placeMap.setMarker(e.reprPoint,e.names[0])),e.reprPoint==null&&(placeMap=null),showPlace()}var t=config.URL_PLEIADES+e,n=config.URL_PLEIADES+e+"/json";util.getAPIData(n,i,r,config.TIMEOUT_PLEIADES,!0)}function showPelagiosData(e){function n(e){$.each(e,function(n,i){i.hasOwnProperty("root_dataset")&&(i=i.root_dataset);var s;rootDatasetID=i.uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),s=getDatasetInfo(rootDatasetID);if(typeof s!="undefined"){addSection(rootDatasetID,s.title,widgetContext.iconDir+s.iconFileName,s.strapline);var o=new Array;if(typeof i.subsets!="undefined")for(var u=0;u<i.subsets.length;u++)o[u]={},o[u].widgetContext=widgetContext,o[u].title=i.subsets[u].title,o[u].id=i.subsets[u].uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),o[u].references=i.subsets[u].annotations_referencing_place,o[u].multipleReferences=o[u].references>1?!0:!1,o[u].anyReferences=o[u].references>0?!0:!1;else o[0]={},o[0].widgetContext=widgetContext,o[0].title=i.title,o[0].id=rootDatasetID,o[0].references=e[n].annotations_referencing_place,o[0].multipleReferences=o[0].references>1?!0:!1;var a={subdataset:o,rootDatasetID:rootDatasetID,widgetContext:widgetContext},f=Handlebars.templates.pelagios_partner(a);$("#"+widgetContext.widgetID+"-content-"+rootDatasetID).append(f),$("#"+widgetContext.widgetID+"-subdatasets-"+rootDatasetID).css("list-style-image","url("+widgetContext.imageDir+"icons/bullet.png)");for(var u=0;u<o.length;u++)r(o[u])}else debug("ERROR: Could not find info for root dataset "+i.title+" "+t)})}function r(e){$("#"+widgetContext.widgetID+"-subdataset_title-"+e.id).click({id:e.id},o),$("#"+widgetContext.widgetID+"-subdataset_content-"+e.id).hide();var t=function(t){i(t,e.id)};$("#"+widgetContext.widgetID+"-subdataset_pagination-"+e.id).pagination(e.references,{items_per_page:config.NUM_ANNOTATIONS_TO_DISPLAY,callback:t,next_show_always:!1,prev_show_always:!1}),i(0,e.id)}function i(t,n){var r=config.URL_PELAGIOS_API_V2+"datasets/"+n+"/annotations.json?forPlace="+encodeURIComponent(config.URL_PLEIADES+e)+"&limit="+config.NUM_ANNOTATIONS_TO_DISPLAY+"&offset="+t*config.NUM_ANNOTATIONS_TO_DISPLAY+"&callback=?",i=function(e){typeof e.annotations!="undefined"&&e.annotations.length>0&&s(e.annotations,n)};return util.getAPIData(r,i),!1}function s(e,t){var n=new Array;$.each(e,function(e,t){n[e]={},t.hasOwnProperty("target_title")?n[e].label=t.target_title:n[e].label=t.title?t.title:"Item "+(e+1),n[e].uri=t.hasTarget});var r={subdatasetID:t,annotation:n,widgetContext:widgetContext},i=Handlebars.templates.annotations(r);$("#"+widgetContext.widgetID+"-annotations-"+t).empty(),$("#"+widgetContext.widgetID+"-annotations-"+t).append(i),$("#"+widgetContext.widgetID+"-subdataset-"+t).focus()}function o(e){var t=e.data.id;toggleSelectedLink(widgetContext.widgetID+"-subdataset_hits-"+t),$("#"+widgetContext.widgetID+"-subdataset_content-"+t).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-subdataset-"+t)}function u(e){$("#"+widgetID+"-subdataset_content-"+e).hide()}var t=config.URL_PELAGIOS_API_V2+"places/"+encodeURIComponent(config.URL_PLEIADES+e)+"/datasets.json?callback=?";util.getAPIData(t,n,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResults(){var e=config.URL_PELAGIOS_API_V2+"search.json?query="+searchString+"&callback=?";debug("RETRIEVING SEARCH DATA: searchString: "+searchString+" URL:"+e),util.getAPIData(e,displaySearchResultsData,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResultsData(e){$("#"+widgetContext.widgetID+"-search-map").empty(),$("#"+widgetContext.widgetID+"-search-results").empty(),$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty();if(e.length>0){var t=new Array;$.each(e,function(e,n){place={},place.label=n.label,place.pleiadesID=n.uri.replace(/.*places.*F/g,""),place.geojson=n,n.feature_type&&(place.feature_type=n.feature_type.replace(/.*place-types\//g,"")),place.content="<h2>"+place.label+"</h2>",place.content+='<p id="'+widgetContext.widgetID+"-info-"+place.pleiadesID+'">View info</p>',place.widgetID=widgetContext.widgetID,t[e]=place});var n={place:t,widgetContext:widgetContext,searchString:searchString},r=Handlebars.templates.search_results(n);$("#"+widgetContext.widgetID+"-search-results").append(r),$(".pelagios .list-results li").css("background-image","url("+widgetContext.imageDir+"place_type_icons/unknown.png)");var i={temple:"temple.png",santuary:"sanctuary.png",river:"river.png","water-open":"river.png",mountain:"mountain.png",island:"island.png",tribe:"tribe.png",settlement:"settlement.png",urban:"settlement.png",people:"people.png",aqueduct:"aqueduct.png",cape:"cape.png",mine:"mine.png",station:"port.png",road:"road.png",villa:"villa.png",wall:"wall.png",province:"people.png"};$.each(i,function(e,t){$(".pelagios .list-results li."+e).css("background-image","url("+widgetContext.imageDir+"place_type_icons/"+t+")")}),widgetContext.displayMap&&(searchMap=new search_map.SearchMap(widgetContext.widgetID+"-search-map_canvas")),$.each(t,function(e,t){widgetContext.displayMap&&searchMap.addMarker(t.geojson,t.label,t.content,function(){s(t.pleiadesID)}),$("#"+widgetContext.widgetID+"-place-"+t.pleiadesID).click(function(){s(t.pleiadesID)})});function s(e){$(".pelagios-search-result-list li").css("text-decoration","none"),$(".pelagios-search-result-list li").css("font-weight","normal"),$("#"+widgetContext.widgetID+"-place-"+e).css("text-decoration","underline"),$("#"+widgetContext.widgetID+"-place-"+e).css("font-weight","bold"),displayPlace(e)}showSearchResults()}else $("#"+widgetContext.widgetID+"-search-results").append("<h3 class='no-search-results'>No matches found for '"+searchString+"'</h3>"),$("#"+widgetContext.widgetID+"-search-results").show()}function hideSearchResults(){$("#"+widgetContext.widgetID+"-search-results-map").hide(),$("#"+widgetContext.widgetID+"-search-results").hide()}function showSearchResults(){widgetContext.displayMap&&($("#"+widgetContext.widgetID+"-search-results-map").show(),searchMap.refresh()),$("#"+widgetContext.widgetID+"-search-results").show()}function hidePlace(){$("#"+widgetContext.widgetID+"-map").hide(),$("#"+widgetContext.widgetID+"-place").hide()}function showPlace(){$("#"+widgetContext.widgetID+"-place").show(),widgetContext.displayMap&&placeMap!=null&&($("#"+widgetContext.widgetID+"-map").show(),placeMap.refresh()),placeMap==null&&$("#"+widgetContext.widgetID+"-map").hide()}function addSection(e,t,n,r){var i={name:e,title:t,iconURL:n,strapline:r,widgetContext:widgetContext},s=Handlebars.templates.section(i);$("#"+widgetContext.widgetID+"-sections").append(s),$("#"+widgetContext.widgetID+"-content-"+e).hide(),$("#"+widgetContext.widgetID+"-header-"+e).click(function(){$("#"+widgetContext.widgetID+"-content-"+e).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-"+e)})}function toggleIcon(e){var t=$("#"+e).attr("src"),n=t==widgetContext.imageDir+"icons/down-arrow.png"?widgetContext.imageDir+"icons/right-arrow.png":widgetContext.imageDir+"icons/down-arrow.png";$("#"+e).attr("src",n)}function toggleSelectedLink(e){var t=$("#"+e),n=t.css("text-decoration"),r=n=="underline"?"none":"underline";t.css("text-decoration",r)}function getDatasetInfo(e){var t;return $.each(dataset,function(e,n){n.id==rootDatasetID&&(t=n)}),t}function debug(e){widgetContext.debug&&console.log(e)}var placeMap={},searchMap={},searchString="";eval(widget_container_tmpl),eval(place_tmpl),eval(section_tmpl),eval(flickr_tmpl),eval(pleiades_tmpl),eval(pelagios_partner_tmpl),eval(error_tmpl),eval(search_tmpl),eval(annotations_tmpl),eval(search_results_tmpl),eval(new_tab_tmpl),eval(about_tmpl);var dataset=$.parseJSON(datasetJSON);typeof $("#"+widgetContext.widgetID)==undefined&&debug("ERROR: $(#"+widgetContext.widgetID+") is undefined"),$("head").append('<link rel="stylesheet" type="text/css" href="'+widgetContext.cssDir+'pelagios.css" media="screen" />');var html=Handlebars.templates.widget_container({widgetContext:widgetContext});$("#"+widgetContext.widgetID).append(html);try{$("#"+widgetContext.widgetID+"-container").draggable()}catch(err){debug("ERROR: Could not make widget draggable")}this.setTypePlace=function(){var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),widgetContext.icon==1&&($("#"+widgetContext.widgetID+"-container").hide(),$("#"+widgetContext.widgetID+"-icon").click(widgetPopUp),widgetContext.onMouseOver&&($("#"+widgetContext.widgetID+"-icon").mouseover(widgetPopUp),$(document).click(function(){$("#"+widgetContext.widgetID+"-container").hide()}),$("#"+widgetContext.widgetID).click(function(e){return e.stopPropagation(),!1})),$("#"+widgetContext.widgetID+"-close-widget").click(function(){$("#"+widgetContext.widgetID+"-container").hide()})),displayPlace(widgetContext.pleiadesID)},this.setTypeSearch=function(){var e=Handlebars.templates.search({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e);var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),hideSearchResults(),$("#"+widgetContext.widgetID+"-search-form").submit(function(){return searchString=$("input:first").val(),displaySearchResults(),!1})}}var config={URL_PELAGIOS_API_V2:"http://pelagios.dme.ait.ac.at/api/",API_KEY_FLICKR:"ddf82df2aba035bfcf14c12a4eff3335",TIMEOUT_PLEIADES:6e3,TIMEOUT_PELAGIOS:6e4,TIMEOUT_FLICKR:6e3,URL_PLEIADES:"http://pleiades.stoa.org/places/",URL_FLICKR_SEARCH:"http://api.flickr.com/services/rest/?format=json&method=flickr.photos.search",MAX_PHOTOS_FLICKR:30,MSG_PLACE_NOT_FOUND:"The place specified for this widget does not exist in the Pleiades gazetteer.",MSG_TITLE_PLACE_NOT_FOUND:"Error: Unknown Place",MSG_PLEIADES_TIMEOUT:"We cannot display the place name and map at the moment because the Pleiades website is not responding. Apologies for the inconvenience and please try again later.",MSG_TITLE_PLEIADES_TIMEOUT:"Error: Pleiades not responding",NUM_ANNOTATIONS_TO_DISPLAY:20};return{Widget:Widget}}) 
     6define(["jquery","app/util","app/search_map","app/place_map","lib/text!template/widget_container.tmpl","lib/text!template/place.tmpl","lib/text!template/section.tmpl","lib/text!template/flickr.tmpl","lib/text!template/pleiades.tmpl","lib/text!template/pelagios_partner.tmpl","lib/text!template/error.tmpl","lib/text!template/search.tmpl","lib/text!template/annotations.tmpl","lib/text!template/search_results.tmpl","lib/text!template/new_tab.tmpl","lib/text!template/about.tmpl","lib/text!app/dataset.json","jqueryui","lib/jquery_pagination"],function($,util,search_map,place_map,widget_container_tmpl,place_tmpl,section_tmpl,flickr_tmpl,pleiades_tmpl,pelagios_partner_tmpl,error_tmpl,search_tmpl,annotations_tmpl,search_results_tmpl,new_tab_tmpl,about_tmpl,datasetJSON){function Widget(widgetContext){function widgetPopUp(){if(widgetContext.newTab){var e=window.open(),t=Handlebars.templates.new_tab({widgetContext:widgetContext});$(e.document.body).html(t);var n=document.createElement("script");n.type="text/javascript",n.src=widgetContext.baseURL+"lib/require.js",e.document.head.appendChild(n);var r=document.createElement("script");r.type="text/javascript",r.src=widgetContext.baseURL+"place.js",e.document.head.appendChild(r)}else{$(".pelagios .container").hide(),$("#"+widgetContext.widgetID+"-container").show();var i=$("#"+widgetContext.widgetID+"-icon").offset(),s={top:$(window).scrollTop(),left:200};$("#"+widgetContext.widgetID+"-container").offset(s),widgetContext.displayMap&&placeMap.hasOwnProperty("refresh")&&placeMap.refresh()}}function displayPlace(e){debug("DISPLAYING PLACE: pleiadesID: "+e),placeMap={},clearPlace(),showPleiadesData(e),widgetContext.type=="place"&&showAboutInformation(),showPelagiosData(e),showFlickrData(e)}function showAboutInformation(){addSection("about","About Pelagios and this widget",widgetContext.imageDir+"partner_icons/pelagios.png","");var e=Handlebars.templates.about();$("#"+widgetContext.widgetID+"-content-about").append(e)}function clearPlace(){$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty()}function showFlickrData(e){function r(t){if(t.hasOwnProperty("photos")&&t.photos.hasOwnProperty("photo")&&t.photos.photo.length>0){addSection("flickr","flickr",widgetContext.imageDir+"icons/flickr-logo.png","Photo sharing website");var n={photo:t.photos.photo.slice(0,config.MAX_PHOTOS_FLICKR-1),pleiadesID:e},r=Handlebars.templates.flickr(n);$("#"+widgetContext.widgetID+"-content-flickr").append(r)}}var t="";widgetContext.pleiadesFlickrGroupOnly&&(t="&group_id=1876758@N22");var n=config.URL_FLICKR_SEARCH+"&machine_tags=pleiades:depicts="+e+t+"&tag_mode=all&api_key="+config.API_KEY_FLICKR+"&jsoncallback=?";util.getAPIData(n,r,!1,config.TIMEOUT_FLICKR,!1)}function showPleiadesData(e){function r(e,t,n){$("#"+widgetContext.widgetID+"-content").empty();if(e.status=="404")var r={title:config.MSG_TITLE_PLACE_NOT_FOUND,msg:config.MSG_PLACE_NOT_FOUND};else var r={title:config.MSG_TITLE_PLEIADES_TIMEOUT,msg:config.MSG_PLEIADES_TIMEOUT};var i=Handlebars.templates.error(r);$("#"+widgetContext.widgetID+"-content").append(i)}function i(e){var t=!1;e.names.length>1&&(t=e.names.join(", "));var n={title:e.names[0]?e.names[0]:"Untitled",description:e.description,altNames:t,pleiadesID:e.id,widgetContext:widgetContext},r=Handlebars.templates.pleiades(n);$("#"+widgetContext.widgetID+"-pleiades").append(r),e.reprPoint!=null&&widgetContext.displayMap&&(placeMap=new place_map.PlaceMap(widgetContext.widgetID+"-map_canvas"),placeMap.setMarker(e.reprPoint,e.names[0])),e.reprPoint==null&&(placeMap=null),showPlace()}var t=config.URL_PLEIADES+e,n=config.URL_PLEIADES+e+"/json";util.getAPIData(n,i,r,config.TIMEOUT_PLEIADES,!0)}function showPelagiosData(e){function n(e){$.each(e,function(n,i){i.hasOwnProperty("root_dataset")&&(i=i.root_dataset);var s;rootDatasetID=i.uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),s=getDatasetInfo(rootDatasetID);if(typeof s!="undefined"){addSection(rootDatasetID,s.title,widgetContext.iconDir+s.iconFileName,s.strapline);var o=new Array;if(typeof i.subsets!="undefined")for(var u=0;u<i.subsets.length;u++)o[u]={},o[u].widgetContext=widgetContext,o[u].title=i.subsets[u].title,o[u].id=i.subsets[u].uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),o[u].references=i.subsets[u].annotations_referencing_place,o[u].multipleReferences=o[u].references>1?!0:!1,o[u].anyReferences=o[u].references>0?!0:!1;else o[0]={},o[0].widgetContext=widgetContext,o[0].title=i.title,o[0].id=rootDatasetID,o[0].references=e[n].annotations_referencing_place,o[0].multipleReferences=o[0].references>1?!0:!1;var a={subdataset:o,rootDatasetID:rootDatasetID,widgetContext:widgetContext},f=Handlebars.templates.pelagios_partner(a);$("#"+widgetContext.widgetID+"-content-"+rootDatasetID).append(f),$("#"+widgetContext.widgetID+"-subdatasets-"+rootDatasetID).css("list-style-image","url("+widgetContext.imageDir+"icons/bullet.png)");for(var u=0;u<o.length;u++)r(o[u])}else debug("ERROR: Could not find info for root dataset "+i.title+" "+t)})}function r(e){$("#"+widgetContext.widgetID+"-subdataset_title-"+e.id).click({id:e.id},o),$("#"+widgetContext.widgetID+"-subdataset_content-"+e.id).hide();var t=function(t){i(t,e.id)};$("#"+widgetContext.widgetID+"-subdataset_pagination-"+e.id).pagination(e.references,{items_per_page:config.NUM_ANNOTATIONS_TO_DISPLAY,callback:t,next_show_always:!1,prev_show_always:!1}),i(0,e.id)}function i(t,n){var r=config.URL_PELAGIOS_API_V2+"datasets/"+n+"/annotations.json?forPlace="+encodeURIComponent(config.URL_PLEIADES+e)+"&limit="+config.NUM_ANNOTATIONS_TO_DISPLAY+"&offset="+t*config.NUM_ANNOTATIONS_TO_DISPLAY+"&callback=?",i=function(e){typeof e.annotations!="undefined"&&e.annotations.length>0&&s(e.annotations,n)};return util.getAPIData(r,i),!1}function s(e,t){var n=new Array;$.each(e,function(e,t){n[e]={},t.hasOwnProperty("target_title")?n[e].label=t.target_title:n[e].label=t.title?t.title:"Item "+(e+1),n[e].uri=t.hasTarget});var r={subdatasetID:t,annotation:n,widgetContext:widgetContext},i=Handlebars.templates.annotations(r);$("#"+widgetContext.widgetID+"-annotations-"+t).empty(),$("#"+widgetContext.widgetID+"-annotations-"+t).append(i),$("#"+widgetContext.widgetID+"-subdataset-"+t).focus()}function o(e){var t=e.data.id;toggleSelectedLink(widgetContext.widgetID+"-subdataset_hits-"+t),$("#"+widgetContext.widgetID+"-subdataset_content-"+t).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-subdataset-"+t)}function u(e){$("#"+widgetID+"-subdataset_content-"+e).hide()}var t=config.URL_PELAGIOS_API_V2+"places/"+encodeURIComponent(config.URL_PLEIADES+e)+"/datasets.json?callback=?";util.getAPIData(t,n,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResults(){var e=config.URL_PELAGIOS_API_V2+"search.json?query="+searchString+"&callback=?";debug("RETRIEVING SEARCH DATA: searchString: "+searchString+" URL:"+e),util.getAPIData(e,displaySearchResultsData,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResultsData(e){$("#"+widgetContext.widgetID+"-search-map").empty(),$("#"+widgetContext.widgetID+"-search-results").empty(),$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty();if(e.length>0){var t=new Array;$.each(e,function(e,n){place={},place.label=n.label,place.pleiadesID=n.uri.replace(/.*places.*F/g,""),place.geojson=n,n.feature_type&&(place.feature_type=n.feature_type.replace(/.*place-types\//g,"")),place.content="<h2>"+place.label+"</h2>",place.content+='<p id="'+widgetContext.widgetID+"-info-"+place.pleiadesID+'">View info</p>',place.widgetID=widgetContext.widgetID,t[e]=place});var n={place:t,widgetContext:widgetContext,searchString:searchString},r=Handlebars.templates.search_results(n);$("#"+widgetContext.widgetID+"-search-results").append(r),$(".pelagios .list-results li").css("background-image","url("+widgetContext.imageDir+"place_type_icons/unknown.png)");var i={temple:"temple.png",santuary:"sanctuary.png",river:"river.png","water-open":"river.png",mountain:"mountain.png",island:"island.png",tribe:"tribe.png",settlement:"settlement.png",urban:"settlement.png",people:"people.png",aqueduct:"aqueduct.png",cape:"cape.png",mine:"mine.png",station:"port.png",road:"road.png",villa:"villa.png",wall:"wall.png",province:"people.png"};$.each(i,function(e,t){$(".pelagios .list-results li."+e).css("background-image","url("+widgetContext.imageDir+"place_type_icons/"+t+")")}),widgetContext.displayMap&&(searchMap=new search_map.SearchMap(widgetContext.widgetID+"-search-map_canvas")),$.each(t,function(e,t){widgetContext.displayMap&&searchMap.addMarker(t.geojson,t.label,t.content,function(){s(t.pleiadesID)}),$("#"+widgetContext.widgetID+"-place-"+t.pleiadesID).click(function(){s(t.pleiadesID)})});function s(e){$(".pelagios-search-result-list li").css("text-decoration","none"),$(".pelagios-search-result-list li").css("font-weight","normal"),$("#"+widgetContext.widgetID+"-place-"+e).css("text-decoration","underline"),$("#"+widgetContext.widgetID+"-place-"+e).css("font-weight","bold"),displayPlace(e)}showSearchResults()}else $("#"+widgetContext.widgetID+"-search-results").append("<h3 class='no-search-results'>No matches found for '"+searchString+"'</h3>"),$("#"+widgetContext.widgetID+"-search-results").show()}function hideSearchResults(){$("#"+widgetContext.widgetID+"-search-results-map").hide(),$("#"+widgetContext.widgetID+"-search-results").hide()}function showSearchResults(){widgetContext.displayMap&&($("#"+widgetContext.widgetID+"-search-results-map").show(),searchMap.refresh()),$("#"+widgetContext.widgetID+"-search-results").show()}function hidePlace(){$("#"+widgetContext.widgetID+"-map").hide(),$("#"+widgetContext.widgetID+"-place").hide()}function showPlace(){$("#"+widgetContext.widgetID+"-place").show(),widgetContext.displayMap&&placeMap!=null&&($("#"+widgetContext.widgetID+"-map").show(),placeMap.refresh()),placeMap==null&&$("#"+widgetContext.widgetID+"-map").hide()}function addSection(e,t,n,r){var i={name:e,title:t,iconURL:n,strapline:r,widgetContext:widgetContext},s=Handlebars.templates.section(i);$("#"+widgetContext.widgetID+"-sections").append(s),$("#"+widgetContext.widgetID+"-content-"+e).hide(),$("#"+widgetContext.widgetID+"-header-"+e).click(function(){$("#"+widgetContext.widgetID+"-content-"+e).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-"+e)})}function toggleIcon(e){var t=$("#"+e).attr("src"),n=t==widgetContext.imageDir+"icons/down-arrow.png"?widgetContext.imageDir+"icons/right-arrow.png":widgetContext.imageDir+"icons/down-arrow.png";$("#"+e).attr("src",n)}function toggleSelectedLink(e){var t=$("#"+e),n=t.css("text-decoration"),r=n=="underline"?"none":"underline";t.css("text-decoration",r)}function getDatasetInfo(e){var t;return $.each(dataset,function(e,n){n.id==rootDatasetID&&(t=n)}),t}function debug(e){widgetContext.debug&&console.log(e)}var placeMap={},searchMap={},searchString="";eval(widget_container_tmpl),eval(place_tmpl),eval(section_tmpl),eval(flickr_tmpl),eval(pleiades_tmpl),eval(pelagios_partner_tmpl),eval(error_tmpl),eval(search_tmpl),eval(annotations_tmpl),eval(search_results_tmpl),eval(new_tab_tmpl),eval(about_tmpl);var dataset=$.parseJSON(datasetJSON);typeof $("#"+widgetContext.widgetID)==undefined&&debug("ERROR: $(#"+widgetContext.widgetID+") is undefined"),$("head").append('<link rel="stylesheet" type="text/css" href="'+widgetContext.cssDir+'pelagios.css" media="screen" />');var html=Handlebars.templates.widget_container({widgetContext:widgetContext});$("#"+widgetContext.widgetID).append(html),$(".pelagios .container").width(widgetContext.containerWidth);try{$("#"+widgetContext.widgetID+"-container").draggable()}catch(err){debug("ERROR: Could not make widget draggable")}this.setTypePlace=function(){var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),widgetContext.icon==1&&($("#"+widgetContext.widgetID+"-container").hide(),$("#"+widgetContext.widgetID+"-icon").click(widgetPopUp),widgetContext.onMouseOver&&($("#"+widgetContext.widgetID+"-icon").mouseover(widgetPopUp),$(document).click(function(){$("#"+widgetContext.widgetID+"-container").hide()}),$("#"+widgetContext.widgetID).click(function(e){return e.stopPropagation(),!1})),$("#"+widgetContext.widgetID+"-close-widget").click(function(){$("#"+widgetContext.widgetID+"-container").hide()})),displayPlace(widgetContext.pleiadesID)},this.setTypeSearch=function(){var e=Handlebars.templates.search({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e);var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),hideSearchResults(),$("#"+widgetContext.widgetID+"-search-form").submit(function(){return searchString=$("input:first").val(),displaySearchResults(),!1})}}var config={URL_PELAGIOS_API_V2:"http://pelagios.dme.ait.ac.at/api/",API_KEY_FLICKR:"ddf82df2aba035bfcf14c12a4eff3335",TIMEOUT_PLEIADES:6e3,TIMEOUT_PELAGIOS:6e4,TIMEOUT_FLICKR:6e3,URL_PLEIADES:"http://pleiades.stoa.org/places/",URL_FLICKR_SEARCH:"http://api.flickr.com/services/rest/?format=json&method=flickr.photos.search",MAX_PHOTOS_FLICKR:30,MSG_PLACE_NOT_FOUND:"The place specified for this widget does not exist in the Pleiades gazetteer.",MSG_TITLE_PLACE_NOT_FOUND:"Error: Unknown Place",MSG_PLEIADES_TIMEOUT:"We cannot display the place name and map at the moment because the Pleiades website is not responding. Apologies for the inconvenience and please try again later.",MSG_TITLE_PLEIADES_TIMEOUT:"Error: Pleiades not responding",NUM_ANNOTATIONS_TO_DISPLAY:20};return{Widget:Widget}}) 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/app/util.js

    r583489 r1156983  
    44 */ 
    55 
    6 define(["jquery"],function(e){function t(e){var t=e.replace(/ /g,"");return t=t.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()]/g,""),t}function n(){return typeof GMap2!="undefined"}function r(t,n,r,i,s){var o={type:"POST",dataType:"json",timeout:i,success:n,error:r};r||(o.error=function(e,n,r){console.log("ERROR: Call to "+t+" failed: "+n),console.log(e)});if(!s)e.ajax(t,o);else{try{var u=new XMLHttpRequest}catch(r){var u={}}if("withCredentials"in u)e.ajax(t,o);else if(typeof XDomainRequest!="undefined"){var a=new XDomainRequest;a.timeout=i,a.open("get",t),a.onload=function(){n(e.parseJSON(a.responseText),"",a)},a.onerror=r,a.send()}}}return{createID:t,includesGoogleMaps2:n,getAPIData:r}}) 
     6define(["jquery"],function(e){function t(e){var t=e.replace(/ /g,"");return t=t.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()]/g,""),t}function n(){return typeof GMap2!="undefined"}function r(t,n,r,i,s){var o={type:"GET",dataType:"json",timeout:i,success:n,error:r};r||(o.error=function(e,n,r){console.log("ERROR: Call to "+t+" failed: "+n),console.log(e)});if(!s)e.ajax(t,o);else{try{var u=new XMLHttpRequest}catch(r){var u={}}if("withCredentials"in u)e.ajax(t,o);else if(typeof XDomainRequest!="undefined"){var a=new XDomainRequest;a.timeout=i,a.open("get",t),a.onload=function(){n(e.parseJSON(a.responseText),"",a)},a.onerror=r,a.send()}}}return{createID:t,includesGoogleMaps2:n,getAPIData:r}}) 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/css/pelagios.css

    r583489 r1156983  
    1 @media screen {.pelagios div, .pelagios span, .pelagios h1, .pelagios h2, .pelagios h3, .pelagios a, .pelagios img, .pelagios ul {margin: 0 !important; padding: 0 !important; border: 0 !important; font-size: 15px!important; vertical-align: baseline !important;} .pelagios {font-family: Arial, Helvetica, sans-serif !important; display: inline !important; line-height: 1.3 !important;} .pelagios .container {width: 550px !important; padding: 5px 15px 15px !important; border-radius: 15px !important; -moz-border-radius: 15px !important; position: absolute !important; z-index: 10000 !important; opacity: 1.0 !important; background: #4F87D1 !important; background: -moz-linear-gradient(top, #4F87D1 , #C8E5FA) !important; background: -webkit-gradient(linear, left top, left bottom, from(#4F87D1 ), to(#C8E5FA)) !important; filter: progid:DXImageTransform.Microsoft.Gradient( StartColorStr='#4F87D1', EndColorStr='#C8E5FA', GradientType=0) !important;} .pelagios .close {float: right !important; padding: 5px 5px 0 0 !important;} .pelagios .logo {float: left !important; padding: 20px 0 0 20px !important;} .pelagios .icon {cursor: pointer !important; display: inline !important;} .pelagios .content-wrapper {margin: 130px 15px 15px 15px !important; background: white !important; border-radius: 15px !important; -moz-border-radius: 15px !important; color: #1C3664 !important; padding: 0 0 0 0 !important;} .pelagios .footer {background: white !important; height: 15px !important; border-radius: 15px !important; -moz-border-radius: 15px !important;} .pelagios p {margin: 5px 0 5px 0 !important;} .pelagios a {font-weight: bold !important; color: #4F87D1 !important; text-decoration: none !important;} .pelagios a:hover, .pelagios a:visited {color: #1c3664 !important;} .pelagios h1 {font-size: 1.3em !important; padding: 10px 0 5px 20px !important; margin: 10px 0 0 0 !important; color: white !important; font-family: Times New Roman !important; background: #1C3664 !important; border-radius: 15px 15px 0 0 !important; -moz-border-radius: 15px 15px 0 0 !important;} .pelagios .pleiades-icon {margin: 10px 5px 0 0 !important; padding: 3px 3px 3px 3px !important; border: solid 1px #4F87D1 !important; border-radius: 5px !important; -moz-border-radius: 5px !important; vertical-align: -25% !important;} .pelagios .section {margin: 2px 0 2px 0 !important;} .pelagios .section-header {color: white !important; background: #1C3664 !important; padding: 5px 5px 5px 15px !important; min-height: 30px !important; cursor: pointer !important;} .pelagios .section-header img {display: inline !important;} .pelagios .section-header .section-icon {height: 25px !important; float:left !important; margin: 5px !important; border: 2px solid white; border-radius: 2px !important; -moz-border-radius: 2px !important;} .pelagios .section-header h2 {display: inline !important; padding: 5px 0 0 5px !important; vertical-align:-25% !important; color: white !important;} .pelagios .section-header h2:hover {color: #4f87d1 !important;} .pelagios .section-header .section-toggle {padding: 10px 10px 0 10px !important; vertical-align:-25% !important;} .pelagios .section-header .section-strapline {font-size: 0.8em !important; padding: 5px 0 0 5px !important;} .pelagios .section-content {background: white !important; padding: 10px 10px 10px 20px !important;} .pelagios .link {font-weight: bold !important; color: #4F87D1 !important;} .pelagios .link:hover{color: #1c3664 !important;} .pelagios .section-content .annotations {padding: 0 !important; margin: 10px 5px 5px 10px !important;} .pelagios .subdataset_pagination a {color: #4F87D1 !important; margin: 10px 5px 5px 5px !important; font-size: 0.7em !important;} .pelagios .subdataset_pagination .current {color: #1c3664 !important; font-weight: bold;} .pelagios .subdataset_pagination span{margin: 10px 5px 5px 5px !important; font-size: 0.7em !important;} .pelagios .section-content ul.subdatasets {list-style-type: disc !important; margin: 0 0 0 20px !important;} .pelagios .section-content ul.subdatasets li {cursor: pointer !important;} .pelagios .section-content ul.annotations {list-style-type: disc !important; list-style-image: none !important; padding: 2px 0 2px 2px !important; margin: 0 0 0 5px !important;} .pelagios .section-content ul.annotations a {font-size: 0.7em !important;} .pelagios .search-form {padding: 10px 0 15px 10px !important; border-bottom: solid 1px #4F87D1 !important; margin: 0 10px 0 10px !important;} .pelagios .search-form input[type=text] {display: inline !important; height: 20px !important;} .pelagios .search-form input[type=submit] {display: inline !important; padding: 5px 5px 5px 5px;} .pelagios .search-map {padding: 10px 0 15px 20px !important; border-bottom: solid 1px #4F87D1 !important; margin: 0 10px 0 10px !important;} .pelagios .no-search-results {margin: 10px 10px 10px 10px !important;} .pelagios .list-results-section {padding: 10px 0 15px 20px !important; margin: 0 10px 0 10px !important;} .pelagios .list-results {padding: 10px 0 15px 10px !important; margin: 0 10px 0 10px !important;} .pelagios .list-results ul {font-size: 90%; margin-left: 1em; padding-left: 1em; list-style-type: none; line-height: 2.2em;} .pelagios .list-results li {background-repeat: no-repeat; background-position: 0px 0px 0px 0px; padding: 0 0 0 40px;}} 
     1@media screen {.pelagios div, .pelagios span, .pelagios h1, .pelagios h2, .pelagios h3, .pelagios a, .pelagios img, .pelagios ul {margin: 0 !important; padding: 0 !important; border: 0 !important; font-size: 15px!important; vertical-align: baseline !important;} .pelagios {font-family: Arial, Helvetica, sans-serif !important; display: inline !important; line-height: 1.3 !important;} .pelagios .container {padding: 5px 15px 15px !important; border-radius: 15px !important; -moz-border-radius: 15px !important; position: absolute !important; z-index: 10000 !important; opacity: 1.0 !important; background: #4F87D1 !important; background: -moz-linear-gradient(top, #4F87D1 , #C8E5FA) !important; background: -webkit-gradient(linear, left top, left bottom, from(#4F87D1 ), to(#C8E5FA)) !important; filter: progid:DXImageTransform.Microsoft.Gradient( StartColorStr='#4F87D1', EndColorStr='#C8E5FA', GradientType=0) !important;} .pelagios .close {float: right !important; padding: 5px 5px 0 0 !important;} .pelagios .logo {float: left !important; padding: 20px 0 0 20px !important;} .pelagios .icon {cursor: pointer !important; display: inline !important;} .pelagios .content-wrapper {margin: 130px 15px 15px 15px !important; background: white !important; border-radius: 15px !important; -moz-border-radius: 15px !important; color: #1C3664 !important; padding: 0 0 0 0 !important;} .pelagios .footer {background: white !important; height: 15px !important; border-radius: 15px !important; -moz-border-radius: 15px !important;} .pelagios p {margin: 5px 0 5px 0 !important;} .pelagios a {font-weight: bold !important; color: #4F87D1 !important; text-decoration: none !important;} .pelagios a:hover, .pelagios a:visited {color: #1c3664 !important;} .pelagios h1 {font-size: 1.3em !important; padding: 10px 0 5px 20px !important; margin: 10px 0 0 0 !important; color: white !important; font-family: Times New Roman !important; background: #1C3664 !important; border-radius: 15px 15px 0 0 !important; -moz-border-radius: 15px 15px 0 0 !important;} .pelagios .pleiades-icon {margin: 10px 5px 0 0 !important; padding: 3px 3px 3px 3px !important; border: solid 1px #4F87D1 !important; border-radius: 5px !important; -moz-border-radius: 5px !important; vertical-align: -25% !important;} .pelagios .section {margin: 2px 0 2px 0 !important;} .pelagios .section-header {color: white !important; background: #1C3664 !important; padding: 5px 5px 5px 15px !important; min-height: 30px !important; cursor: pointer !important;} .pelagios .section-header img {display: inline !important;} .pelagios .section-header .section-icon {height: 25px !important; float:left !important; margin: 5px !important; border: 2px solid white; border-radius: 2px !important; -moz-border-radius: 2px !important;} .pelagios .section-header h2 {display: inline !important; padding: 5px 0 0 5px !important; vertical-align:-25% !important; color: white !important;} .pelagios .section-header h2:hover {color: #4f87d1 !important;} .pelagios .section-header .section-toggle {padding: 10px 10px 0 10px !important; vertical-align:-25% !important;} .pelagios .section-header .section-strapline {font-size: 0.8em !important; padding: 5px 0 0 5px !important;} .pelagios .section-content {background: white !important; padding: 10px 10px 10px 20px !important;} .pelagios .link {font-weight: bold !important; color: #4F87D1 !important;} .pelagios .link:hover{color: #1c3664 !important;} .pelagios .section-content .annotations {padding: 0 !important; margin: 10px 5px 5px 10px !important;} .pelagios .subdataset_pagination a {color: #4F87D1 !important; margin: 10px 5px 5px 5px !important; font-size: 0.7em !important;} .pelagios .subdataset_pagination .current {color: #1c3664 !important; font-weight: bold;} .pelagios .subdataset_pagination span{margin: 10px 5px 5px 5px !important; font-size: 0.7em !important;} .pelagios .section-content ul.subdatasets {list-style-type: disc !important; margin: 0 0 0 20px !important;} .pelagios .section-content ul.subdatasets li {cursor: pointer !important;} .pelagios .section-content ul.annotations {list-style-type: disc !important; list-style-image: none !important; padding: 2px 0 2px 2px !important; margin: 0 0 0 5px !important;} .pelagios .section-content ul.annotations a {font-size: 0.7em !important;} .pelagios .search-form {padding: 10px 0 15px 10px !important; border-bottom: solid 1px #4F87D1 !important; margin: 0 10px 0 10px !important;} .pelagios .search-form input[type=text] {display: inline !important; height: 20px !important;} .pelagios .search-form input[type=submit] {display: inline !important; padding: 5px 5px 5px 5px;} .pelagios .search-map {padding: 10px 0 15px 20px !important; border-bottom: solid 1px #4F87D1 !important; margin: 0 10px 0 10px !important;} .pelagios .no-search-results {margin: 10px 10px 10px 10px !important;} .pelagios .list-results-section {padding: 10px 0 15px 20px !important; margin: 0 10px 0 10px !important;} .pelagios .list-results {padding: 10px 0 15px 10px !important; margin: 0 10px 0 10px !important;} .pelagios .list-results ul {font-size: 90%; margin-left: 1em; padding-left: 1em; list-style-type: none; line-height: 2.2em;} .pelagios .list-results li {background-repeat: no-repeat; background-position: 0px 0px 0px 0px; padding: 0 0 0 40px;}} 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/demo/place/athens.html

    r583489 r1156983  
    1515    <h1>Pelagios Place Widget Demo: Athens (579885)</h1> 
    1616            <p>Click the icon to display the widget</p> 
    17  <div id="123-pelagios" data-pleiades_id='579885' class="pelagios pelagios-place"></div> 
     17 <div id="123-pelagios" data-pleiades_id="579885" class="pelagios pelagios-place"></div> 
    1818  </body> 
    1919</html> 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/docs/search.html

    r583489 r1156983  
    3636<ul> 
    3737<li>To not display any maps in the widget, add <code>data-display_map="false"</code> to the widget div.</li> 
     38<li>To adjust the width of the widget, add <code>data-container_width="300"</code> for example to set the width to 300px. </li> 
    3839</ul> 
    3940 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/index.html

    r583489 r1156983  
    33<head> 
    44<title>Pelagios Widgets</title> 
    5 <link rel="stylesheet" type="text/css" href="docs/styles.css" media="screen" /> 
    6 <script type="text/javascript" src="http://pelagios.github.com/pelagios-widgets/lib/require.js"></script> 
    7 <script type="text/javascript" src="http://pelagios.github.com/pelagios-widgets/place.js"></script> 
    8 <script type="text/javascript" src="http://pelagios.github.com/pelagios-widgets/search.js"></script> 
    9  
     5<link rel="stylesheet" type="text/css" href="../docs/styles.css" media="screen" /> 
    106</head> 
    117<body> 
    128<ul class="nav"> 
    139<li> 
    14 <strong>Home</strong></li> 
    15 <li> <a href="docs/index.html">Documentation</a> </li> 
    16 <li> <a href="demo/index.html">Demo</a></li> 
     10<a href="../index.html">Home</a> </li> 
     11<li> <a href="../docs/index.html">Documentation</a> </li> 
     12<li> <strong>Demo</strong></li> 
    1713</ul> 
    18 <h1>Pelagios Widgets</h1> 
    19 <p>The Pelagios widgets are widgets that you can embed on a web page to display 
    20 relationships between places and items in ancient history collections. The  
    21 information displayed originates from museums, research institutes,  
    22 universities and projects that are part of Pelagios, and includes details about  
    23 these items and maps showing associated locations.</p> 
    24 <p> For more about Pelagios and a list of partners contributing data, see 
    25 <a href="http://pelagios-project.blogspot.co.uk/">the main Pelagios website</a>.  
    26 </p> 
    27 <p> 
    28 There are currently two widgets: </p> 
     14<h1>Demonstration of the Pelagios Widgets</h1> 
     15<h2>Place Widget: Different Places</h2> 
     16<ul> 
     17<li><a href="place/corinth.html">Corinth</a></li> 
     18<li><a href="place/olympia.html">Olympia</a></li> 
     19<li><a href="place/athens.html">Athens</a></li> 
     20<li><a href="place/rome.html">Rome</a></li> 
     21<li><a href="place/aphrodisias.html">Aphrodisias</a></li> 
     22<li><a href="place/lentia.html">Lentia</a></li> 
     23<li><a href="place/olympics.html">Olympics Example</a></li> 
     24</ul> 
     25<h2>Search Widget</h2> 
     26<ul> 
     27<li><a href="search/search.html">Search Widget</a></li> 
     28</ul> 
     29<h2>Different Widget Options</h2> 
     30<ul> 
     31<li><a href="place_options/display_map_false.html">Place Widget - display_map: false</a></li> 
     32<li><a href="search_options/display_map_false.html">Search Widget - display_map: false</a></li> 
     33<li><a href="place_options/icon_false.html">Place Widget - icon: false</a></li> 
     34<li><a href="place_options/mouseover_true.html">Place Widget - mouseover: true</a></li> 
     35</ul> 
    2936 
    30 <h2>Pelagios Place Widget</h2> 
    31  
    32 <p>This takes the form of an icon, which when clicked, pops up information  
    33 about a place. As well as data drawn from Pelagios partners,this including a  
    34 map and images associated with the place. It can be used on web pages where a  
    35 particular place is mentioned to allow users of the  
    36 page to view the Pelagios information associated with th place. </p> 
    37 <p>Here is an  
    38 example for Athens: <span id="456" data-pleiades_id="579885" class="pelagios pelagios-place"></span> 
    39 <p> 
    40 <h2>Pelagios Search Widget</h2> 
    41 <p>This allows you to search for a  
    42 particular place. It displays all the matches in  
    43 <a href="http://pleiades.stoa.org/">the Pleiades gazetteer</a> on a map and as  
    44 a list. You can then view the Pelagios information associated with each of  
    45 the places in these search results. </p> 
    46  
    47 <p><a href="demo/search/search.html">Search using the Pelagios Search Widget</a>. 
    48 </p> 
    49 <h2>More information</h2> 
    50 <p><a href="demo/index.html">There are several other demonstrations of the widgets available.</a></p> 
    51 <p>For instructions on how to embed the widgets on your pages, see the <a href="docs/index.html">documentation</a>.</p> 
    52  
    53 <p>The source code is <a href="https://github.com/pelagios/pelagios-widgets">available on Github</a> released under <a href="http://www.gnu.org/copyleft/gpl.html">GNU Public Licence v3</a>.</p> 
    54  
    55  
    56  
    57 <p>The Pelagios Widgets were developed by the Institute of Educational Technology at The Open University  
    58 as part of the Pelagios 2 project funded by JISC.</p> 
     37<h2>Place Widget: Special Cases</h2> 
     38<ul> 
     39<li><a href="place_special_cases/html5.html">HTML 5 doctype</a></li> 
     40<li><a href="place_special_cases/html4_strict.html">HTML 4 Strict doctype</a></li> 
     41<li><a href="place_special_cases/html4_trans.html">HTML 4 Transitional doctype</a></li> 
     42<li><a href="place_special_cases/no_doctype.html">No doctype</a></li> 
     43<li><a href="place_special_cases/multiple_widgets.html">Multiple widgets on a page</a></li> 
     44<li><a href="place_special_cases/inline.html">Inline embed</a></li> 
     45<li><a href="place_special_cases/table.html">Table embed</a></li> 
     46<li><a href="place_special_cases/invalid_id.html">Invalid Pleiades ID</a></li> 
     47<li><a href="place_special_cases/multiple_jquery.html">Multiple versions of JQuery</a></li> 
     48<li><a href="place_special_cases/gmapv2.html">Google Maps v2 on same page</a></li> 
     49<li><a href="place_special_cases/awld_js.html">awld.js on same page</a></li> 
     50</ul> 
    5951 
    6052</body> 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/place.js

    r583489 r1156983  
    3636 */ 
    3737 
    38 var requirejs,require,define;(function(global){function isFunction(e){return ostring.call(e)==="[object Function]"}function isArray(e){return ostring.call(e)==="[object Array]"}function each(e,t){if(e){var n;for(n=0;n<e.length;n+=1)if(e[n]&&t(e[n],n,e))break}}function eachReverse(e,t){if(e){var n;for(n=e.length-1;n>-1;n-=1)if(e[n]&&t(e[n],n,e))break}}function hasProp(e,t){return e.hasOwnProperty(t)}function eachProp(e,t){var n;for(n in e)if(e.hasOwnProperty(n)&&t(e[n],n))break}function mixin(e,t,n,r){return t&&eachProp(t,function(t,i){if(n||!hasProp(e,i))r&&typeof t!="string"?(e[i]||(e[i]={}),mixin(e[i],t,n,r)):e[i]=t}),e}function bind(e,t){return function(){return t.apply(e,arguments)}}function scripts(){return document.getElementsByTagName("script")}function getGlobal(e){if(!e)return e;var t=global;return each(e.split("."),function(e){t=t[e]}),t}function makeContextModuleFunc(e,t,n){return function(){var r=aps.call(arguments,0),i;return n&&isFunction(i=r[r.length-1])&&(i.__requireJsBuild=!0),r.push(t),e.apply(null,r)}}function addRequireMethods(e,t,n){each([["toUrl"],["undef"],["defined","requireDefined"],["specified","requireSpecified"]],function(r){var i=r[1]||r[0];e[r[0]]=t?makeContextModuleFunc(t[i],n):function(){var e=contexts[defContextName];return e[i].apply(e,arguments)}})}function makeError(e,t,n,r){var i=new Error(t+"\nhttp://requirejs.org/docs/errors.html#"+e);return i.requireType=e,i.requireModules=r,n&&(i.originalError=n),i}function newContext(e){function v(e){var t,n;for(t=0;e[t];t+=1){n=e[t];if(n===".")e.splice(t,1),t-=1;else if(n===".."){if(t===1&&(e[2]===".."||e[0]===".."))break;t>0&&(e.splice(t-1,2),t-=2)}}}function m(e,n,r){var i=n&&n.split("/"),s=i,o=t.map,u=o&&o["*"],a,f,l,c,h,p,d,m;e&&e.charAt(0)==="."&&(n?(t.pkgs[n]?s=i=[n]:s=i.slice(0,i.length-1),e=s.concat(e.split("/")),v(e),f=t.pkgs[a=e[0]],e=e.join("/"),f&&e===a+"/"+f.main&&(e=a)):e.indexOf("./")===0&&(e=e.substring(2)));if(r&&(i||u)&&o){c=e.split("/");for(h=c.length;h>0;h-=1){d=c.slice(0,h).join("/");if(i)for(p=i.length;p>0;p-=1){l=o[i.slice(0,p).join("/")];if(l){l=l[d];if(l){m=l;break}}}!m&&u&&u[d]&&(m=u[d]);if(m){c.splice(0,h,m),e=c.join("/");break}}}return e}function g(e){isBrowser&&each(scripts(),function(t){if(t.getAttribute("data-requiremodule")===e&&t.getAttribute("data-requirecontext")===h.contextName)return t.parentNode.removeChild(t),!0})}function y(e){var n=t.paths[e];if(n&&isArray(n)&&n.length>1)return g(e),n.shift(),h.undef(e),h.require([e]),!0}function b(e,t,n,r){var i=e?e.indexOf("!"):-1,o=null,f=t?t.name:null,l=e,c=!0,p="",d,v,g;return e||(c=!1,e="_@r"+(u+=1)),i!==-1&&(o=e.substring(0,i),e=e.substring(i+1,e.length)),o&&(o=m(o,f,r),v=s[o]),e&&(o?v&&v.normalize?p=v.normalize(e,function(e){return m(e,f,r)}):p=m(e,f,r):(p=m(e,f,r),d=h.nameToUrl(p))),g=o&&!v&&!n?"_unnormalized"+(a+=1):"",{prefix:o,name:p,parentMap:t,unnormalized:!!g,url:d,originalName:l,isDefine:c,id:(o?o+"!"+p:p)+g}}function w(e){var t=e.id,r=n[t];return r||(r=n[t]=new h.Module(e)),r}function E(e,t,r){var i=e.id,o=n[i];hasProp(s,i)&&(!o||o.defineEmitComplete)?t==="defined"&&r(s[i]):w(e).on(t,r)}function S(e,t){var r=e.requireModules,i=!1;t?t(e):(each(r,function(t){var r=n[t];r&&(r.error=e,r.events.error&&(i=!0,r.emit("error",e)))}),i||req.onError(e))}function x(){globalDefQueue.length&&(apsp.apply(i,[i.length-1,0].concat(globalDefQueue)),globalDefQueue=[])}function T(e,t,n){var r=e&&e.map,i=makeContextModuleFunc(n||h.require,r,t);return addRequireMethods(i,h,r),i.isBrowser=isBrowser,i}function N(e){delete n[e],each(f,function(t,n){if(t.map.id===e)return f.splice(n,1),t.defined||(h.waitCount-=1),!0})}function C(e,t){var r=e.map.id,i=e.depMaps,s;if(!e.inited)return;return t[r]?e:(t[r]=!0,each(i,function(e){var i=e.id,o=n[i];if(!o)return;return!o.inited||!o.enabled?(s=null,delete t[r],!0):s=C(o,mixin({},t))}),s)}function k(e,t,r){var i=e.map.id,o=e.depMaps;if(!e.inited||!e.map.isDefine)return;return t[i]?s[i]:(t[i]=e,each(o,function(s){var o=s.id,u=n[o],a;if(p[o])return;if(u){if(!u.inited||!u.enabled){r[i]=!0;return}a=k(u,t,r),r[o]||e.defineDepById(o,a)}}),e.check(!0),s[i])}function L(e){e.check()}function A(){var e=t.waitSeconds*1e3,r=e&&h.startTime+e<(new Date).getTime(),i=[],s=!1,o=!0,u,a,c,p;if(l)return;l=!0,eachProp(n,function(e){u=e.map,a=u.id;if(!e.enabled)return;if(!e.error)if(!e.inited&&r)y(a)?(p=!0,s=!0):(i.push(a),g(a));else if(!e.inited&&e.fetched&&u.isDefine){s=!0;if(!u.prefix)return o=!1}});if(r&&i.length)return c=makeError("timeout","Load timeout for modules: "+i,null,i),c.contextName=h.contextName,S(c);o&&(each(f,function(e){if(e.defined)return;var t=C(e,{}),n={};t&&(k(t,n,{}),eachProp(n,L))}),eachProp(n,L)),(!r||p)&&s&&(isBrowser||isWebWorker)&&!d&&(d=setTimeout(function(){d=0,A()},50)),l=!1}function O(e){w(b(e[0],null,!0)).init(e[1],e[2])}function M(e,t,n,r){e.detachEvent&&!isOpera?r&&e.detachEvent(r,t):e.removeEventListener(n,t,!1)}function _(e){var t=e.currentTarget||e.srcElement;return M(t,h.onScriptLoad,"load","onreadystatechange"),M(t,h.onScriptError,"error"),{node:t,id:t&&t.getAttribute("data-requiremodule")}}var t={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{}},n={},r={},i=[],s={},o={},u=1,a=1,f=[],l,c,h,p,d;return p={require:function(e){return T(e)},exports:function(e){e.usingExports=!0;if(e.map.isDefine)return e.exports=s[e.map.id]={}},module:function(e){return e.module={id:e.map.id,uri:e.map.url,config:function(){return t.config&&t.config[e.map.id]||{}},exports:s[e.map.id]}}},c=function(e){this.events=r[e.id]||{},this.map=e,this.shim=t.shim[e.id],this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},c.prototype={init:function(e,t,n,r){r=r||{};if(this.inited)return;this.factory=t,n?this.on("error",n):this.events.error&&(n=bind(this,function(e){this.emit("error",e)})),this.depMaps=e&&e.slice(0),this.depMaps.rjsSkipMap=e.rjsSkipMap,this.errback=n,this.inited=!0,this.ignore=r.ignore,r.enabled||this.enabled?this.enable():this.check()},defineDepById:function(e,t){var n;return each(this.depMaps,function(t,r){if(t.id===e)return n=r,!0}),this.defineDep(n,t)},defineDep:function(e,t){this.depMatched[e]||(this.depMatched[e]=!0,this.depCount-=1,this.depExports[e]=t)},fetch:function(){if(this.fetched)return;this.fetched=!0,h.startTime=(new Date).getTime();var e=this.map;if(!this.shim)return e.prefix?this.callPlugin():this.load();T(this,!0)(this.shim.deps||[],bind(this,function(){return e.prefix?this.callPlugin():this.load()}))},load:function(){var e=this.map.url;o[e]||(o[e]=!0,h.load(this.map.id,e))},check:function(e){if(!this.enabled||this.enabling)return;var t=this.map.id,r=this.depExports,i=this.exports,o=this.factory,u,a;if(!this.inited)this.fetch();else if(this.error)this.emit("error",this.error);else if(!this.defining){this.defining=!0;if(this.depCount<1&&!this.defined){if(isFunction(o)){if(this.events.error)try{i=h.execCb(t,o,r,i)}catch(l){u=l}else i=h.execCb(t,o,r,i);this.map.isDefine&&(a=this.module,a&&a.exports!==undefined&&a.exports!==this.exports?i=a.exports:i===undefined&&this.usingExports&&(i=this.exports));if(u)return u.requireMap=this.map,u.requireModules=[this.map.id],u.requireType="define",S(this.error=u)}else i=o;this.exports=i,this.map.isDefine&&!this.ignore&&(s[t]=i,req.onResourceLoad&&req.onResourceLoad(h,this.map,this.depMaps)),delete n[t],this.defined=!0,h.waitCount-=1,h.waitCount===0&&(f=[])}this.defining=!1,e||this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}},callPlugin:function(){var e=this.map,r=e.id,i=b(e.prefix,null,!1,!0);E(i,"defined",bind(this,function(i){var s=this.map.name,o=this.map.parentMap?this.map.parentMap.name:null,u,a,f;if(this.map.unnormalized){i.normalize&&(s=i.normalize(s,function(e){return m(e,o,!0)})||""),a=b(e.prefix+"!"+s,this.map.parentMap,!1,!0),E(a,"defined",bind(this,function(e){this.init([],function(){return e},null,{enabled:!0,ignore:!0})})),f=n[a.id],f&&(this.events.error&&f.on("error",bind(this,function(e){this.emit("error",e)})),f.enable());return}u=bind(this,function(e){this.init([],function(){return e},null,{enabled:!0})}),u.error=bind(this,function(e){this.inited=!0,this.error=e,e.requireModules=[r],eachProp(n,function(e){e.map.id.indexOf(r+"_unnormalized")===0&&N(e.map.id)}),S(e)}),u.fromText=function(e,t){var n=useInteractive;n&&(useInteractive=!1),w(b(e)),req.exec(t),n&&(useInteractive=!0),h.completeLoad(e)},i.load(e.name,T(e.parentMap,!0,function(e,t){return e.rjsSkipMap=!0,h.require(e,t)}),u,t)})),h.enable(i,this),this.pluginMaps[i.id]=i},enable:function(){this.enabled=!0,this.waitPushed||(f.push(this),h.waitCount+=1,this.waitPushed=!0),this.enabling=!0,each(this.depMaps,bind(this,function(e,t){var r,i,s;if(typeof e=="string"){e=b(e,this.map.isDefine?this.map:this.map.parentMap,!1,!this.depMaps.rjsSkipMap),this.depMaps[t]=e,s=p[e.id];if(s){this.depExports[t]=s(this);return}this.depCount+=1,E(e,"defined",bind(this,function(e){this.defineDep(t,e),this.check()})),this.errback&&E(e,"error",this.errback)}r=e.id,i=n[r],!p[r]&&i&&!i.enabled&&h.enable(e,this)})),eachProp(this.pluginMaps,bind(this,function(e){var t=n[e.id];t&&!t.enabled&&h.enable(e,this)})),this.enabling=!1,this.check()},on:function(e,t){var n=this.events[e];n||(n=this.events[e]=[]),n.push(t)},emit:function(e,t){each(this.events[e],function(e){e(t)}),e==="error"&&delete this.events[e]}},h={config:t,contextName:e,registry:n,defined:s,urlFetched:o,waitCount:0,defQueue:i,Module:c,makeModuleMap:b,configure:function(e){e.baseUrl&&e.baseUrl.charAt(e.baseUrl.length-1)!=="/"&&(e.baseUrl+="/");var r=t.pkgs,i=t.shim,s=t.paths,o=t.map;mixin(t,e,!0),t.paths=mixin(s,e.paths,!0),e.map&&(t.map=mixin(o||{},e.map,!0,!0)),e.shim&&(eachProp(e.shim,function(e,t){isArray(e)&&(e={deps:e}),e.exports&&!e.exports.__buildReady&&(e.exports=h.makeShimExports(e.exports)),i[t]=e}),t.shim=i),e.packages&&(each(e.packages,function(e){var t;e=typeof e=="string"?{name:e}:e,t=e.location,r[e.name]={name:e.name,location:t||e.name,main:(e.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}}),t.pkgs=r),eachProp(n,function(e,t){e.map=b(t)}),(e.deps||e.callback)&&h.require(e.deps||[],e.callback)},makeShimExports:function(e){var t;return typeof e=="string"?(t=function(){return getGlobal(e)},t.exports=e,t):function(){return e.apply(global,arguments)}},requireDefined:function(e,t){return hasProp(s,b(e,t,!1,!0).id)},requireSpecified:function(e,t){return e=b(e,t,!1,!0).id,hasProp(s,e)||hasProp(n,e)},require:function(t,n,r,o){var u,a,f,l,c;if(typeof t=="string")return isFunction(n)?S(makeError("requireargs","Invalid require call"),r):req.get?req.get(h,t,n):(u=t,o=n,f=b(u,o,!1,!0),a=f.id,hasProp(s,a)?s[a]:S(makeError("notloaded",'Module name "'+a+'" has not been loaded yet for context: '+e)));r&&!isFunction(r)&&(o=r,r=undefined),n&&!isFunction(n)&&(o=n,n=undefined),x();while(i.length){c=i.shift();if(c[0]===null)return S(makeError("mismatch","Mismatched anonymous define() module: "+c[c.length-1]));O(c)}return l=w(b(null,o)),l.init(t,n,r,{enabled:!0}),A(),h.require},undef:function(e){var t=b(e,null,!0),i=n[e];delete s[e],delete o[t.url],delete r[e],i&&(i.events.defined&&(r[e]=i.events),N(e))},enable:function(e,t){var r=n[e.id];r&&w(e).enable()},completeLoad:function(e){var r=t.shim[e]||{},o=r.exports&&r.exports.exports,u,a,f;x();while(i.length){a=i.shift();if(a[0]===null){a[0]=e;if(u)break;u=!0}else a[0]===e&&(u=!0);O(a)}f=n[e];if(!u&&!s[e]&&f&&!f.inited){if(t.enforceDefine&&(!o||!getGlobal(o))){if(y(e))return;return S(makeError("nodefine","No define call for "+e,null,[e]))}O([e,r.deps||[],r.exports])}A()},toUrl:function(e,t){var n=e.lastIndexOf("."),r=null;return n!==-1&&(r=e.substring(n,e.length),e=e.substring(0,n)),h.nameToUrl(m(e,t&&t.id,!0),r)},nameToUrl:function(e,n){var r,i,s,o,u,a,f,l,c;if(req.jsExtRegExp.test(e))l=e+(n||"");else{r=t.paths,i=t.pkgs,u=e.split("/");for(a=u.length;a>0;a-=1){f=u.slice(0,a).join("/"),s=i[f],c=r[f];if(c){isArray(c)&&(c=c[0]),u.splice(0,a,c);break}if(s){e===s.name?o=s.location+"/"+s.main:o=s.location,u.splice(0,a,o);break}}l=u.join("/")+(n||".js"),l=(l.charAt(0)==="/"||l.match(/^[\w\+\.\-]+:/)?"":t.baseUrl)+l}return t.urlArgs?l+((l.indexOf("?")===-1?"?":"&")+t.urlArgs):l},load:function(e,t){req.load(h,e,t)},execCb:function(e,t,n,r){return t.apply(r,n)},onScriptLoad:function(e){if(e.type==="load"||readyRegExp.test((e.currentTarget||e.srcElement).readyState)){interactiveScript=null;var t=_(e);h.completeLoad(t.id)}},onScriptError:function(e){var t=_(e);if(!y(t.id))return S(makeError("scripterror","Script error",e,[t.id]))}}}function getInteractiveScript(){return interactiveScript&&interactiveScript.readyState==="interactive"?interactiveScript:(eachReverse(scripts(),function(e){if(e.readyState==="interactive")return interactiveScript=e}),interactiveScript)}var version="2.0.4",commentRegExp=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,ostring=Object.prototype.toString,ap=Array.prototype,aps=ap.slice,apsp=ap.splice,isBrowser=typeof window!="undefined"&&!!navigator&&!!document,isWebWorker=!isBrowser&&typeof importScripts!="undefined",readyRegExp=isBrowser&&navigator.platform==="PLAYSTATION 3"?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera=typeof opera!="undefined"&&opera.toString()==="[object Opera]",contexts={},cfg={},globalDefQueue=[],useInteractive=!1,req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath;if(typeof define!="undefined")return;if(typeof requirejs!="undefined"){if(isFunction(requirejs))return;cfg=requirejs,requirejs=undefined}typeof require!="undefined"&&!isFunction(require)&&(cfg=require,require=undefined),req=requirejs=function(e,t,n,r){var i=defContextName,s,o;return!isArray(e)&&typeof e!="string"&&(o=e,isArray(t)?(e=t,t=n,n=r):e=[]),o&&o.context&&(i=o.context),s=contexts[i],s||(s=contexts[i]=req.s.newContext(i)),o&&s.configure(o),s.require(e,t,n)},req.config=function(e){return req(e)},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),addRequireMethods(req),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],baseElement=document.getElementsByTagName("base")[0],baseElement&&(head=s.head=baseElement.parentNode)),req.onError=function(e){throw e},req.load=function(e,t,n){var r=e&&e.config||{},i;if(isBrowser)return i=r.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script"),i.type=r.scriptType||"text/javascript",i.charset="utf-8",i.async=!0,i.setAttribute("data-requirecontext",e.contextName),i.setAttribute("data-requiremodule",t),i.attachEvent&&!(i.attachEvent.toString&&i.attachEvent.toString().indexOf("[native code")<0)&&!isOpera?(useInteractive=!0,i.attachEvent("onreadystatechange",e.onScriptLoad)):(i.addEventListener("load",e.onScriptLoad,!1),i.addEventListener("error",e.onScriptError,!1)),i.src=n,currentlyAddingScript=i,baseElement?head.insertBefore(i,baseElement):head.appendChild(i),currentlyAddingScript=null,i;isWebWorker&&(importScripts(n),e.completeLoad(t))},isBrowser&&eachReverse(scripts(),function(e){head||(head=e.parentNode),dataMain=e.getAttribute("data-main");if(dataMain)return cfg.baseUrl||(src=dataMain.split("/"),mainScript=src.pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath,dataMain=mainScript),dataMain=dataMain.replace(jsSuffixRegExp,""),cfg.deps=cfg.deps?cfg.deps.concat(dataMain):[dataMain],!0}),define=function(e,t,n){var r,i;typeof e!="string"&&(n=t,t=e,e=null),isArray(t)||(n=t,t=[]),!t.length&&isFunction(n)&&n.length&&(n.toString().replace(commentRegExp,"").replace(cjsRequireRegExp,function(e,n){t.push(n)}),t=(n.length===1?["require"]:["require","exports","module"]).concat(t)),useInteractive&&(r=currentlyAddingScript||getInteractiveScript(),r&&(e||(e=r.getAttribute("data-requiremodule")),i=contexts[r.getAttribute("data-requirecontext")])),(i?i.defQueue:globalDefQueue).push([e,t,n])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)})(this),define("requireLib",function(){}),define("app/util",["jquery"],function(e){function t(e){var t=e.replace(/ /g,"");return t=t.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()]/g,""),t}function n(){return typeof GMap2!="undefined"}function r(t,n,r,i,s){var o={type:"POST",dataType:"json",timeout:i,success:n,error:r};r||(o.error=function(e,n,r){console.log("ERROR: Call to "+t+" failed: "+n),console.log(e)});if(!s)e.ajax(t,o);else{try{var u=new XMLHttpRequest}catch(r){var u={}}if("withCredentials"in u)e.ajax(t,o);else if(typeof XDomainRequest!="undefined"){var a=new XDomainRequest;a.timeout=i,a.open("get",t),a.onload=function(){n(e.parseJSON(a.responseText),"",a)},a.onerror=r,a.send()}}}return{createID:t,includesGoogleMaps2:n,getAPIData:r}}),define("app/loadGMaps",[],function(){function t(){if(e!=null)return e;e=typeof GMap2=="undefined"}var e;return{load:function(e,n,r,i){i.isBuild||t()?r(null):window.setTimeout(function(){n([e],r)},500)}}}),define("app/search_map",["app/loadGMaps!lib/async!http://maps.google.com/maps/api/js?sensor=false"],function(){function e(e){if(!document.getElementById(e))throw Error("ERROR: Invalid ID for search map");try{var t=new google.maps.Map(document.getElementById(e),{mapTypeId:google.maps.MapTypeId.TERRAIN})}catch(n){console.log("ERROR: Failed to create Google Map for element id "+e+" : "+n)}var r=new google.maps.LatLngBounds,i=new google.maps.InfoWindow;this.refresh=function(){google.maps.event.trigger(t,"resize"),t.fitBounds(r)},this.addMarker=function(e,n,s,o){if(e.hasOwnProperty("geometry")&&e.geometry!=null&&e.geometry.hasOwnProperty("type")&&e.geometry.type=="Point"){var u=new google.maps.LatLng(e.geometry.coordinates[1],e.geometry.coordinates[0]),a=new google.maps.Marker({position:u,map:t,title:n});r.extend(u),google.maps.event.addListener(a,"click",function(){return function(){i.close(),i.setContent(s),i.open(t,a),o()}}())}}}return{SearchMap:e}}),define("app/place_map",["app/loadGMaps!lib/async!http://maps.google.com/maps/api/js?sensor=false"],function(){function e(e){if(!document.getElementById(e))throw Error("ERROR: Invalid ID for place map");try{var t=new google.maps.Map(document.getElementById(e),{zoom:8,mapTypeId:google.maps.MapTypeId.TERRAIN})}catch(n){console.log("ERROR: Failed to crate Google map for element id "+e+" : "+n)}try{var r=new google.maps.Marker({map:t})}catch(n){console.log("ERROR: Failed to create Google Map marker : "+n)}this.refresh=function(){try{google.maps.event.trigger(t,"resize")}catch(e){console.log("ERROR: Failed to resize Google map :"+e)}try{t.setCenter(r.getPosition())}catch(e){console.log("ERROR: Failed to center Google Map : "+e)}},this.setMarker=function(e,n){try{var i=new google.maps.LatLng(e[1],e[0])}catch(s){console.log("ERROR: Failed to create Google Maps location : "+s)}try{r.setPosition(i)}catch(s){console.log("ERROR: Failed to set marker position : "+s)}try{r.setTitle(n)}catch(s){console.log("ERROR: Failed to set marker title : "+s)}try{t.setCenter(i)}catch(s){console.log("ERROR: Failed to center Google Map : "+s)}try{google.maps.event.trigger(t,"resize")}catch(s){console.log("ERROR: Failed to resize Google Map : "+s)}}}return{PlaceMap:e}}),define("lib/text",["module"],function(e){var t=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],n=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,r=/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im,i=typeof location!="undefined"&&location.href,s=i&&location.protocol&&location.protocol.replace(/\:/,""),o=i&&location.hostname,u=i&&(location.port||undefined),a=[],f=e.config(),l,c;return l={version:"2.0.0",strip:function(e){if(e){e=e.replace(n,"");var t=e.match(r);t&&(e=t[1])}else e="";return e},jsEscape:function(e){return e.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r")},createXhr:function(){var e,n,r;if(typeof XMLHttpRequest!="undefined")return new XMLHttpRequest;if(typeof ActiveXObject!="undefined")for(n=0;n<3;n++){r=t[n];try{e=new ActiveXObject(r)}catch(i){}if(e){t=[r];break}}return e},parseName:function(e){var t=!1,n=e.indexOf("."),r=e.substring(0,n),i=e.substring(n+1,e.length);return n=i.indexOf("!"),n!==-1&&(t=i.substring(n+1,i.length),t=t==="strip",i=i.substring(0,n)),{moduleName:r,ext:i,strip:t}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(e,t,n,r){var i=l.xdRegExp.exec(e),s,o,u;return i?(s=i[2],o=i[3],o=o.split(":"),u=o[1],o=o[0],(!s||s===t)&&(!o||o===n)&&(!u&&!o||u===r)):!0},finishLoad:function(e,t,n,r){n=t?l.strip(n):n,f.isBuild&&(a[e]=n),r(n)},load:function(e,t,n,r){if(r.isBuild&&!r.inlineText){n();return}f.isBuild=r.isBuild;var a=l.parseName(e),c=a.moduleName+"."+a.ext,h=t.toUrl(c),p=f.useXhr||l.useXhr;!i||p(h,s,o,u)?l.get(h,function(t){l.finishLoad(e,a.strip,t,n)},function(e){n.error&&n.error(e)}):t([c],function(e){l.finishLoad(a.moduleName+"."+a.ext,a.strip,e,n)})},write:function(e,t,n,r){if(a.hasOwnProperty(t)){var i=l.jsEscape(a[t]);n.asModule(e+"!"+t,"define(function () { return '"+i+"';});\n")}},writeFile:function(e,t,n,r,i){var s=l.parseName(t),o=s.moduleName+"."+s.ext,u=n.toUrl(s.moduleName+"."+s.ext)+".js";l.load(o,n,function(t){var n=function(e){return r(u,e)};n.asModule=function(e,t){return r.asModule(e,u,t)},l.write(e,o,n,i)},i)}},typeof process!="undefined"&&process.versions&&!!process.versions.node?(c=require.nodeRequire("fs"),l.get=function(e,t){var n=c.readFileSync(e,"utf8");n.indexOf("")===0&&(n=n.substring(1)),t(n)}):l.createXhr()?l.get=function(e,t,n){var r=l.createXhr();r.open("GET",e,!0),f.onXhr&&f.onXhr(r,e),r.onreadystatechange=function(i){var s,o;r.readyState===4&&(s=r.status,s>399&&s<600?(o=new Error(e+" HTTP status: "+s),o.xhr=r,n(o)):t(r.responseText))},r.send(null)}:typeof Packages!="undefined"&&(l.get=function(e,t){var n="utf-8",r=new java.io.File(e),i=java.lang.System.getProperty("line.separator"),s=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(r),n)),o,u,a="";try{o=new java.lang.StringBuffer,u=s.readLine(),u&&u.length()&&u.charAt(0)===65279&&(u=u.substring(1)),o.append(u);while((u=s.readLine())!==null)o.append(i),o.append(u);a=String(o.toString())}finally{s.close()}t(a)}),l}),define("lib/text!template/widget_container.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'widget_container\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n        <a href=\\"\\" class=\\"close\\">\\r\\n        <img src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "images/icons/close-button.png\\" alt=\\"Close Pelagios information\\" />\\r\\n        </a>    \\r\\n        ";\n  return buffer;}\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<img id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-icon\\" class=\\"icon\\" src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "images/icons/pelagios.png\\" alt=\\"Information about this place from Pelagios partners\\"/> \\r\\n";\n  return buffer;}\n\n  buffer += "<div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-container\\" class=\\"container\\">    \\r\\n    <div class=\\"header\\"> \\r\\n        <img class=\\"logo\\" src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.imageDir);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.imageDir", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "icons/pelagios-logo.png\\" alt=\\"View Pelagios infromation\\"/>    \\r\\n        ";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.icon);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n    </div>    \\r\\n    <div class=\\"content-wrapper\\">\\r\\n        <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-content\\">\\r\\n        </div>\\r\\n        <div class=\\"footer\\"></div>                           \\r\\n    </div>\\r\\n</div>    \\r\\n";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.icon);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(3, program3, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "  ";\n  return buffer;});\n})();'}),define("lib/text!template/place.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'place\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-pleiades\\">    \\r\\n</div>    \\r\\n<div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-sections\\"></div>   \\r\\n\\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/section.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'section\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<div class=\\"section\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-";\n  foundHelper = helpers.name;\n  stack1 = foundHelper || depth0.name;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n<div class=\\"section-header\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-header-";\n  foundHelper = helpers.name;\n  stack1 = foundHelper || depth0.name;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n<img src=\\"";\n  foundHelper = helpers.iconURL;\n  stack1 = foundHelper || depth0.iconURL;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "iconURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"section-icon\\" alt=\\"\\" />\\r\\n<h2>";\n  foundHelper = helpers.title;\n  stack1 = foundHelper || depth0.title;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</h2>\\r\\n<img class=\\"section-toggle\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-toggle-";\n  foundHelper = helpers.name;\n  stack1 = foundHelper || depth0.name;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" \\r\\n     src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "images/icons/right-arrow.png\\" alt=\\"Toggle section\\"/>\\r\\n<p class=\\"section-strapline\\">";\n  foundHelper = helpers.strapline;\n  stack1 = foundHelper || depth0.strapline;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "strapline", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</p>\\r\\n</div>\\r\\n<div class=\\"section-content\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-content-";\n  foundHelper = helpers.name;\n  stack1 = foundHelper || depth0.name;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n</div></div>\\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/flickr.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'flickr\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<a href=\\"http://www.flickr.com/photos/";\n  stack1 = depth0.owner;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.owner", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "/";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" target=\\"_blank\\">\\r\\n<img src=\\"http://farm";\n  stack1 = depth0.farm;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.farm", { hash: {} }); }\n  buffer += escapeExpression(stack1) + ".staticflickr.com/";\n  stack1 = depth0.server;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.server", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "/";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "_";\n  stack1 = depth0.secret;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.secret", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "_t.jpg\\" alt=\\"";\n  foundHelper = helpers.pthis;\n  stack1 = foundHelper || depth0.pthis;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.title);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pthis.title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" />\\r\\n</a>\\r\\n";\n  return buffer;}\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<p><a href=\\"http://www.flickr.com/groups/pleiades-places/pool/tags/pleiades%3Adepicts%3D";\n  foundHelper = helpers.pleiadesID;\n  stack1 = foundHelper || depth0.pleiadesID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "/\\" target=\\"_blank\\">View all ";\n  foundHelper = helpers.photo;\n  stack1 = foundHelper || depth0.photo;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.length);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "photo.length", { hash: {} }); }\n  buffer += escapeExpression(stack1) + " photos on flickr</a></p>\\r\\n";\n  return buffer;}\n\nfunction program5(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<p><a href=\\"http://www.flickr.com/photos/tags/pleiades%3Adepicts%3D";\n  foundHelper = helpers.pleiadesID;\n  stack1 = foundHelper || depth0.pleiadesID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "/\\" target=\\"_blank\\">View all ";\n  foundHelper = helpers.photo;\n  stack1 = foundHelper || depth0.photo;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.length);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "photo.length", { hash: {} }); }\n  buffer += escapeExpression(stack1) + " photos on flickr</a></p>\\r\\n";\n  return buffer;}\n\n  foundHelper = helpers.photo;\n  stack1 = foundHelper || depth0.photo;\n  stack2 = helpers.each;\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(3, program3, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly);\n  stack2 = helpers.unless;\n  tmp1 = self.program(5, program5, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n<p>The flickr photos shown here are those which have been given a <a href=\\"http://www.flickr.com/groups/pleiades-places/discuss/72157628435317307/\\">Pleiades machine tag specifying this place.</a></p>\\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/pleiades.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'pleiades\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n    <p>Some alternative names: ";\n  foundHelper = helpers.altNames;\n  stack1 = foundHelper || depth0.altNames;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "altNames", { hash: {} }); }\n  buffer += escapeExpression(stack1) + " (the results below are for all alternative names)</p>  \\r\\n    ";\n  return buffer;}\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += " \\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-map\\">    \\r\\n        <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-map_canvas\\" style=\\"width:425px; height:200px\\"></div>\\r\\n    </div>   \\r\\n    ";\n  return buffer;}\n\n  buffer += " <h1 id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-title\\" class=\\"pelagios-title\\">";\n  foundHelper = helpers.title;\n  stack1 = foundHelper || depth0.title;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</h1>    \\r\\n<div class=\\"section-content\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-pleiades\\">\\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-description\\"><p>";\n  foundHelper = helpers.description;\n  stack1 = foundHelper || depth0.description;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "description", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</p>\\r\\n    ";\n  foundHelper = helpers.altNames;\n  stack1 = foundHelper || depth0.altNames;\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n    ";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.displayMap);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(3, program3, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n    <p><img src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "images/icons/pleiades.png\\"  class=\\"pleiades-icon\\" />\\r\\n    <a href=\\"http://pleiades.stoa.org/places/";\n  foundHelper = helpers.pleiadesID;\n  stack1 = foundHelper || depth0.pleiadesID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" target=\\"_blank\\">Entry in the Pleiades Gazetteer</a></p>    \\r\\n</div>";\n  return buffer;});\n})();'}),define("lib/text!template/pelagios_partner.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'pelagios_partner\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1, stack2;\n  buffer += "\\r\\n\\r\\n<li id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n<span id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset_title-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n    ";\n  stack1 = depth0.title;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\r\\n    <span id =\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset_hits-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"link\\">\\r\\n    ";\n  stack1 = depth0.references;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.references", { hash: {} }); }\n  buffer += escapeExpression(stack1) + " hit";\n  stack1 = depth0.multipleReferences;\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(2, program2, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n    </span>\\r\\n    <img id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-toggle-subdataset-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" \\r\\n         src = \\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.imageDir);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.imageDir", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "icons/right-arrow.png\\"  /> \\r\\n</span>\\r\\n    <div id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset_content-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n\\r\\n        <div id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-annotations-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"annotations\\">\\r\\n        </div>\\r\\n        <div id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset_pagination-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"subdataset_pagination\\">\\r\\n        </div>\\r\\n    </div>\\r\\n</li>\\r\\n\\r\\n";\n  return buffer;}\nfunction program2(depth0,data) {\n  \n  \n  return "s";}\n\n  buffer += "<ul class=\\"subdatasets\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdatasets-";\n  foundHelper = helpers.rootDatasetID;\n  stack1 = foundHelper || depth0.rootDatasetID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "rootDatasetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n";\n  foundHelper = helpers.subdataset;\n  stack1 = foundHelper || depth0.subdataset;\n  stack2 = helpers.each;\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "  \\r\\n</ul>         ";\n  return buffer;});\n})();'}),define("lib/text!template/error.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'error\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<h1 id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-title\\" class=\\"pelagios-title\\">";\n  foundHelper = helpers.title;\n  stack1 = foundHelper || depth0.title;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</h1> \\r\\n<p>";\n  foundHelper = helpers.msg;\n  stack1 = foundHelper || depth0.msg;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "msg", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</p>  \\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/search.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'search\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<h1 id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-title\\" class=\\"pelagios-title\\">Search for places</h1>    \\r\\n    <form id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-form\\" class=\\"search-form\\">\\r\\n        <input type=\\"text\\" size=\\"40\\"/>\\r\\n        <input id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-string\\" type=\\"submit\\" value=\\"Search\\"/>\\r\\n    </form>\\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-results\\">\\r\\n    </div> \\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-place\\">\\r\\n    </div>\\r\\n \\r\\n  \\r\\n \\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/annotations.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'annotations\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<li><a href=\\"";\n  stack1 = depth0.uri;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.uri", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" target=\\"_blank\\">";\n  stack1 = depth0.label;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.label", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</a></li>\\r\\n";\n  return buffer;}\n\n  buffer += "<ul class=\\"annotations\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-annotations-";\n  foundHelper = helpers.subdatasetID;\n  stack1 = foundHelper || depth0.subdatasetID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "subdatasetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n";\n  foundHelper = helpers.annotation;\n  stack1 = foundHelper || depth0.annotation;\n  stack2 = helpers.each;\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n</ul>";\n  return buffer;});\n})();'}),define("lib/text!template/search_results.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'search_results\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += " \\r\\n<div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-results-map\\" class=\\"search-map\\">\\r\\n    <p>Geographic Results for: <strong>";\n  foundHelper = helpers.searchString;\n  stack1 = foundHelper || depth0.searchString;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "searchString", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</strong></p>\\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-map_canvas\\" style=\\"width:425px; height:200px\\"></div>\\r\\n</div>  \\r\\n";\n  return buffer;}\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<li id=\\"";\n  stack1 = depth0.widgetID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-place-";\n  stack1 = depth0.pleiadesID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"link ";\n  stack1 = depth0.feature_type;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.feature_type", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">";\n  stack1 = depth0.label;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.label", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</li>\\r\\n";\n  return buffer;}\n\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.displayMap);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n<div class=\\"list-results-section\\">\\r\\n<p>List Results for: <strong>";\n  foundHelper = helpers.searchString;\n  stack1 = foundHelper || depth0.searchString;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "searchString", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</strong>\\r\\n<div class=\\"list-results\\">\\r\\n<ul>\\r\\n";\n  foundHelper = helpers.place;\n  stack1 = foundHelper || depth0.place;\n  stack2 = helpers.each;\n  tmp1 = self.program(3, program3, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n</ul>\\r\\n</div>\\r\\n</div>";\n  return buffer;});\n})();'}),define("lib/text!template/new_tab.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'new_tab\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<!DOCTYPE html>\\r\\n<html>\\r\\n  <head>\\r\\n\\r\\n  </head>\\r\\n  <body >\\r\\n\\r\\n        <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" data-pleiades_id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" \\r\\n        data-icon=\\"false\\"\\r\\n        class=\\"pelagios pelagios-place\\"></div>\\r\\n</body>\\r\\n</html>";\n  return buffer;});\n})();'}),define("lib/text!template/about.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'about\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var foundHelper, self=this;\n\n\n  return "<p>This widget displays data from the Pelagios project partners about the location specified.</p>\\r\\n<p>View the <a href=\\"http://pelagios-project.blogspot.co.uk/\\" target=\\"_blank\\">Pelagios website</a>\\r\\n for more information.</a>\\r\\n            ";});\n})();'}),define("lib/text!app/dataset.json",[],function(){return'[{\r\n  "id": "b47df24737cd647789c7d61ede9fed09",\r\n  "title": "Arachne",\r\n  "iconFileName": "arachne.png",\r\n  "strapline": "A web research tool of the German Archaeological Institute for searching mass archaeological records"\r\n},\r\n{\r\n  "id": "6a39d0bc3c0fd4ef7d2a837b42cf46a1",\r\n  "title": "Google Ancient Places",\r\n  "iconFileName": "gap_logo.png",\r\n  "strapline":  "A Geographic Annotation Platform for reading texts spatially"\r\n}\r\n,\r\n{\r\n  "id": "2db51c1dd976f01bf993a02f959e18f8",\r\n  "title": "nomisma",\r\n  "iconFileName": "Greek.jpeg",\r\n  "strapline":  "Representing ancient coins online"\r\n}\r\n,\r\n{\r\n  "id": "298fafd65586643149e8a8ba47b57052",\r\n  "title": "SPQR",\r\n  "iconFileName": "SPQR.png",\r\n  "strapline":  "From Roman inscriptions to resource descriptions"\r\n}\r\n,\r\n{\r\n  "id": "",\r\n  "title": "Regnum Francorum Online",\r\n  "iconFileName": "Regnum.png",\r\n  "strapline":  "Interactive Maps and Sources of Late Antique and Early Medieval Europe"\r\n}\r\n,\r\n{\r\n  "id": "21e48d8ca46f666467b81a551fbb1cb",\r\n  "title": "Perseus",\r\n  "iconFileName": "Perseus.png",\r\n  "strapline":  "Annotated occurrences of place entities in texts from the Perseus Digital Library"\r\n}\r\n,\r\n{\r\n  "id": "c4c2ed780a8f4f2b698a5c2505ac34ca",\r\n  "title": "CLAROS",\r\n  "iconFileName": "CLAROS.png",\r\n  "strapline":  "Aggregated search of art and archaeology data from the classical world and the far east across four millennia"\r\n}\r\n,\r\n{\r\n  "id": "739128af1e9613de03706a57cef46976",\r\n  "title": "Open Context",\r\n  "iconFileName": "open-context.png",\r\n  "strapline":  "Publications of research data in archaeology and related fields"\r\n}\r\n,\r\n{\r\n  "id": "467b9097b55b6e0831fe6760df93e7f2",\r\n  "title": "FASTI Online",\r\n  "iconFileName": "FASTI.png",\r\n  "strapline":  "A database of archaeological excavations since the year 2000"\r\n}\r\n,\r\n{\r\n  "id": "a306666ae581e8d611d56a1dfdaea256",\r\n  "title": "Ure Museum",\r\n  "iconFileName": "URE.png",\r\n  "strapline":  "University Museum of ancient Greek, Egyptian & a little Roman stuff"\r\n}\r\n\r\n\r\n]\r\n\r\n\r\n'}),define("lib/jquery_pagination",["jquery"],function(e){(function(e){e.PaginationCalculator=function(e,t){this.maxentries=e,this.opts=t},e.extend(e.PaginationCalculator.prototype,{numPages:function(){return Math.ceil(this.maxentries/this.opts.items_per_page)},getInterval:function(e){var t=Math.floor(this.opts.num_display_entries/2),n=this.numPages(),r=n-this.opts.num_display_entries,i=e>t?Math.max(Math.min(e-t,r),0):0,s=e>t?Math.min(e+t+this.opts.num_display_entries%2,n):Math.min(this.opts.num_display_entries,n);return{start:i,end:s}}}),e.PaginationRenderers={},e.PaginationRenderers.defaultRenderer=function(t,n){this.maxentries=t,this.opts=n,this.pc=new e.PaginationCalculator(t,n)},e.extend(e.PaginationRenderers.defaultRenderer.prototype,{createLink:function(t,n,r){var i,s=this.pc.numPages();return t=t<0?0:t<s?t:s-1,r=e.extend({text:t+1,classes:""},r||{}),t==n?i=e("<span class='current'>"+r.text+"</span>"):i=e("<a>"+r.text+"</a>").attr("href",this.opts.link_to.replace(/__id__/,t)),r.classes&&i.addClass(r.classes),i.data("page_id",t),i},appendRange:function(e,t,n,r,i){var s;for(s=n;s<r;s++)this.createLink(s,t,i).appendTo(e)},getLinks:function(t,n){var r,i,s=this.pc.getInterval(t),o=this.pc.numPages(),u=e("<div class='pagination'></div>");return this.opts.prev_text&&(t>0||this.opts.prev_show_always)&&u.append(this.createLink(t-1,t,{text:this.opts.prev_text,classes:"prev"})),s.start>0&&this.opts.num_edge_entries>0&&(i=Math.min(this.opts.num_edge_entries,s.start),this.appendRange(u,t,0,i,{classes:"sp"}),this.opts.num_edge_entries<s.start&&this.opts.ellipse_text&&e("<span>"+this.opts.ellipse_text+"</span>").appendTo(u)),this.appendRange(u,t,s.start,s.end),s.end<o&&this.opts.num_edge_entries>0&&(o-this.opts.num_edge_entries>s.end&&this.opts.ellipse_text&&e("<span>"+this.opts.ellipse_text+"</span>").appendTo(u),r=Math.max(o-this.opts.num_edge_entries,s.end),this.appendRange(u,t,r,o,{classes:"ep"})),this.opts.next_text&&(t<o-1||this.opts.next_show_always)&&u.append(this.createLink(t+1,t,{text:this.opts.next_text,classes:"next"})),e("a",u).click(n),u}}),e.fn.pagination=function(t,n){function u(t){t.preventDefault();var n,r=e(t.target).data("page_id"),i=a(r);return i||t.stopPropagation(),i}function a(e){r.data("current_page",e),s=i.getLinks(e,u),r.empty(),s.appendTo(r);var t=n.callback(e,r);return t}n=e.extend({items_per_page:10,num_display_entries:11,current_page:0,num_edge_entries:0,link_to:"#",prev_text:"Prev",next_text:"Next",ellipse_text:"...",prev_show_always:!0,next_show_always:!0,renderer:"defaultRenderer",show_if_single_page:!1,load_first_page:!0,callback:function(){return!1}},n||{});var r=this,i,s,o;o=parseInt(n.current_page),r.data("current_page",o),t=!t||t<0?1:t,n.items_per_page=!n.items_per_page||n.items_per_page<0?1:n.items_per_page;if(!e.PaginationRenderers[n.renderer])throw new ReferenceError("Pagination renderer '"+n.renderer+"' was not found in jQuery.PaginationRenderers object.");i=new e.PaginationRenderers[n.renderer](t,n);var f=new e.PaginationCalculator(t,n),l=f.numPages();r.bind("setPage",{numPages:l},function(e,t){if(t>=0&&t<e.data.numPages)return a(t),!1}),r.bind("prevPage",function(t){var n=e(this).data("current_page");return n>0&&a(n-1),!1}),r.bind("nextPage",{numPages:l},function(t){var n=e(this).data("current_page");return n<t.data.numPages-1&&a(n+1),!1}),s=i.getLinks(o,u),r.empty(),(l>1||n.show_if_single_page)&&s.appendTo(r),n.load_first_page&&n.callback(o,r)}})(jQuery)}),define("app/pelagios",["jquery","app/util","app/search_map","app/place_map","lib/text!template/widget_container.tmpl","lib/text!template/place.tmpl","lib/text!template/section.tmpl","lib/text!template/flickr.tmpl","lib/text!template/pleiades.tmpl","lib/text!template/pelagios_partner.tmpl","lib/text!template/error.tmpl","lib/text!template/search.tmpl","lib/text!template/annotations.tmpl","lib/text!template/search_results.tmpl","lib/text!template/new_tab.tmpl","lib/text!template/about.tmpl","lib/text!app/dataset.json","jqueryui","lib/jquery_pagination"],function($,util,search_map,place_map,widget_container_tmpl,place_tmpl,section_tmpl,flickr_tmpl,pleiades_tmpl,pelagios_partner_tmpl,error_tmpl,search_tmpl,annotations_tmpl,search_results_tmpl,new_tab_tmpl,about_tmpl,datasetJSON){function Widget(widgetContext){function widgetPopUp(){if(widgetContext.newTab){var e=window.open(),t=Handlebars.templates.new_tab({widgetContext:widgetContext});$(e.document.body).html(t);var n=document.createElement("script");n.type="text/javascript",n.src=widgetContext.baseURL+"lib/require.js",e.document.head.appendChild(n);var r=document.createElement("script");r.type="text/javascript",r.src=widgetContext.baseURL+"place.js",e.document.head.appendChild(r)}else{$(".pelagios .container").hide(),$("#"+widgetContext.widgetID+"-container").show();var i=$("#"+widgetContext.widgetID+"-icon").offset(),s={top:$(window).scrollTop(),left:200};$("#"+widgetContext.widgetID+"-container").offset(s),widgetContext.displayMap&&placeMap.hasOwnProperty("refresh")&&placeMap.refresh()}}function displayPlace(e){debug("DISPLAYING PLACE: pleiadesID: "+e),placeMap={},clearPlace(),showPleiadesData(e),widgetContext.type=="place"&&showAboutInformation(),showPelagiosData(e),showFlickrData(e)}function showAboutInformation(){addSection("about","About Pelagios and this widget",widgetContext.imageDir+"partner_icons/pelagios.png","");var e=Handlebars.templates.about();$("#"+widgetContext.widgetID+"-content-about").append(e)}function clearPlace(){$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty()}function showFlickrData(e){function r(t){if(t.hasOwnProperty("photos")&&t.photos.hasOwnProperty("photo")&&t.photos.photo.length>0){addSection("flickr","flickr",widgetContext.imageDir+"icons/flickr-logo.png","Photo sharing website");var n={photo:t.photos.photo.slice(0,config.MAX_PHOTOS_FLICKR-1),pleiadesID:e},r=Handlebars.templates.flickr(n);$("#"+widgetContext.widgetID+"-content-flickr").append(r)}}var t="";widgetContext.pleiadesFlickrGroupOnly&&(t="&group_id=1876758@N22");var n=config.URL_FLICKR_SEARCH+"&machine_tags=pleiades:depicts="+e+t+"&tag_mode=all&api_key="+config.API_KEY_FLICKR+"&jsoncallback=?";util.getAPIData(n,r,!1,config.TIMEOUT_FLICKR,!1)}function showPleiadesData(e){function r(e,t,n){$("#"+widgetContext.widgetID+"-content").empty();if(e.status=="404")var r={title:config.MSG_TITLE_PLACE_NOT_FOUND,msg:config.MSG_PLACE_NOT_FOUND};else var r={title:config.MSG_TITLE_PLEIADES_TIMEOUT,msg:config.MSG_PLEIADES_TIMEOUT};var i=Handlebars.templates.error(r);$("#"+widgetContext.widgetID+"-content").append(i)}function i(e){var t=!1;e.names.length>1&&(t=e.names.join(", "));var n={title:e.names[0]?e.names[0]:"Untitled",description:e.description,altNames:t,pleiadesID:e.id,widgetContext:widgetContext},r=Handlebars.templates.pleiades(n);$("#"+widgetContext.widgetID+"-pleiades").append(r),e.reprPoint!=null&&widgetContext.displayMap&&(placeMap=new place_map.PlaceMap(widgetContext.widgetID+"-map_canvas"),placeMap.setMarker(e.reprPoint,e.names[0])),e.reprPoint==null&&(placeMap=null),showPlace()}var t=config.URL_PLEIADES+e,n=config.URL_PLEIADES+e+"/json";util.getAPIData(n,i,r,config.TIMEOUT_PLEIADES,!0)}function showPelagiosData(e){function n(e){$.each(e,function(n,i){i.hasOwnProperty("root_dataset")&&(i=i.root_dataset);var s;rootDatasetID=i.uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),s=getDatasetInfo(rootDatasetID);if(typeof s!="undefined"){addSection(rootDatasetID,s.title,widgetContext.iconDir+s.iconFileName,s.strapline);var o=new Array;if(typeof i.subsets!="undefined")for(var u=0;u<i.subsets.length;u++)o[u]={},o[u].widgetContext=widgetContext,o[u].title=i.subsets[u].title,o[u].id=i.subsets[u].uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),o[u].references=i.subsets[u].annotations_referencing_place,o[u].multipleReferences=o[u].references>1?!0:!1,o[u].anyReferences=o[u].references>0?!0:!1;else o[0]={},o[0].widgetContext=widgetContext,o[0].title=i.title,o[0].id=rootDatasetID,o[0].references=e[n].annotations_referencing_place,o[0].multipleReferences=o[0].references>1?!0:!1;var a={subdataset:o,rootDatasetID:rootDatasetID,widgetContext:widgetContext},f=Handlebars.templates.pelagios_partner(a);$("#"+widgetContext.widgetID+"-content-"+rootDatasetID).append(f),$("#"+widgetContext.widgetID+"-subdatasets-"+rootDatasetID).css("list-style-image","url("+widgetContext.imageDir+"icons/bullet.png)");for(var u=0;u<o.length;u++)r(o[u])}else debug("ERROR: Could not find info for root dataset "+i.title+" "+t)})}function r(e){$("#"+widgetContext.widgetID+"-subdataset_title-"+e.id).click({id:e.id},o),$("#"+widgetContext.widgetID+"-subdataset_content-"+e.id).hide();var t=function(t){i(t,e.id)};$("#"+widgetContext.widgetID+"-subdataset_pagination-"+e.id).pagination(e.references,{items_per_page:config.NUM_ANNOTATIONS_TO_DISPLAY,callback:t,next_show_always:!1,prev_show_always:!1}),i(0,e.id)}function i(t,n){var r=config.URL_PELAGIOS_API_V2+"datasets/"+n+"/annotations.json?forPlace="+encodeURIComponent(config.URL_PLEIADES+e)+"&limit="+config.NUM_ANNOTATIONS_TO_DISPLAY+"&offset="+t*config.NUM_ANNOTATIONS_TO_DISPLAY+"&callback=?",i=function(e){typeof e.annotations!="undefined"&&e.annotations.length>0&&s(e.annotations,n)};return util.getAPIData(r,i),!1}function s(e,t){var n=new Array;$.each(e,function(e,t){n[e]={},t.hasOwnProperty("target_title")?n[e].label=t.target_title:n[e].label=t.title?t.title:"Item "+(e+1),n[e].uri=t.hasTarget});var r={subdatasetID:t,annotation:n,widgetContext:widgetContext},i=Handlebars.templates.annotations(r);$("#"+widgetContext.widgetID+"-annotations-"+t).empty(),$("#"+widgetContext.widgetID+"-annotations-"+t).append(i),$("#"+widgetContext.widgetID+"-subdataset-"+t).focus()}function o(e){var t=e.data.id;toggleSelectedLink(widgetContext.widgetID+"-subdataset_hits-"+t),$("#"+widgetContext.widgetID+"-subdataset_content-"+t).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-subdataset-"+t)}function u(e){$("#"+widgetID+"-subdataset_content-"+e).hide()}var t=config.URL_PELAGIOS_API_V2+"places/"+encodeURIComponent(config.URL_PLEIADES+e)+"/datasets.json?callback=?";util.getAPIData(t,n,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResults(){var e=config.URL_PELAGIOS_API_V2+"search.json?query="+searchString+"&callback=?";debug("RETRIEVING SEARCH DATA: searchString: "+searchString+" URL:"+e),util.getAPIData(e,displaySearchResultsData,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResultsData(e){$("#"+widgetContext.widgetID+"-search-map").empty(),$("#"+widgetContext.widgetID+"-search-results").empty(),$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty();if(e.length>0){var t=new Array;$.each(e,function(e,n){place={},place.label=n.label,place.pleiadesID=n.uri.replace(/.*places.*F/g,""),place.geojson=n,n.feature_type&&(place.feature_type=n.feature_type.replace(/.*place-types\//g,"")),place.content="<h2>"+place.label+"</h2>",place.content+='<p id="'+widgetContext.widgetID+"-info-"+place.pleiadesID+'">View info</p>',place.widgetID=widgetContext.widgetID,t[e]=place});var n={place:t,widgetContext:widgetContext,searchString:searchString},r=Handlebars.templates.search_results(n);$("#"+widgetContext.widgetID+"-search-results").append(r),$(".pelagios .list-results li").css("background-image","url("+widgetContext.imageDir+"place_type_icons/unknown.png)");var i={temple:"temple.png",santuary:"sanctuary.png",river:"river.png","water-open":"river.png",mountain:"mountain.png",island:"island.png",tribe:"tribe.png",settlement:"settlement.png",urban:"settlement.png",people:"people.png",aqueduct:"aqueduct.png",cape:"cape.png",mine:"mine.png",station:"port.png",road:"road.png",villa:"villa.png",wall:"wall.png",province:"people.png"};$.each(i,function(e,t){$(".pelagios .list-results li."+e).css("background-image","url("+widgetContext.imageDir+"place_type_icons/"+t+")")}),widgetContext.displayMap&&(searchMap=new search_map.SearchMap(widgetContext.widgetID+"-search-map_canvas")),$.each(t,function(e,t){widgetContext.displayMap&&searchMap.addMarker(t.geojson,t.label,t.content,function(){s(t.pleiadesID)}),$("#"+widgetContext.widgetID+"-place-"+t.pleiadesID).click(function(){s(t.pleiadesID)})});function s(e){$(".pelagios-search-result-list li").css("text-decoration","none"),$(".pelagios-search-result-list li").css("font-weight","normal"),$("#"+widgetContext.widgetID+"-place-"+e).css("text-decoration","underline"),$("#"+widgetContext.widgetID+"-place-"+e).css("font-weight","bold"),displayPlace(e)}showSearchResults()}else $("#"+widgetContext.widgetID+"-search-results").append("<h3 class='no-search-results'>No matches found for '"+searchString+"'</h3>"),$("#"+widgetContext.widgetID+"-search-results").show()}function hideSearchResults(){$("#"+widgetContext.widgetID+"-search-results-map").hide(),$("#"+widgetContext.widgetID+"-search-results").hide()}function showSearchResults(){widgetContext.displayMap&&($("#"+widgetContext.widgetID+"-search-results-map").show(),searchMap.refresh()),$("#"+widgetContext.widgetID+"-search-results").show()}function hidePlace(){$("#"+widgetContext.widgetID+"-map").hide(),$("#"+widgetContext.widgetID+"-place").hide()}function showPlace(){$("#"+widgetContext.widgetID+"-place").show(),widgetContext.displayMap&&placeMap!=null&&($("#"+widgetContext.widgetID+"-map").show(),placeMap.refresh()),placeMap==null&&$("#"+widgetContext.widgetID+"-map").hide()}function addSection(e,t,n,r){var i={name:e,title:t,iconURL:n,strapline:r,widgetContext:widgetContext},s=Handlebars.templates.section(i);$("#"+widgetContext.widgetID+"-sections").append(s),$("#"+widgetContext.widgetID+"-content-"+e).hide(),$("#"+widgetContext.widgetID+"-header-"+e).click(function(){$("#"+widgetContext.widgetID+"-content-"+e).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-"+e)})}function toggleIcon(e){var t=$("#"+e).attr("src"),n=t==widgetContext.imageDir+"icons/down-arrow.png"?widgetContext.imageDir+"icons/right-arrow.png":widgetContext.imageDir+"icons/down-arrow.png";$("#"+e).attr("src",n)}function toggleSelectedLink(e){var t=$("#"+e),n=t.css("text-decoration"),r=n=="underline"?"none":"underline";t.css("text-decoration",r)}function getDatasetInfo(e){var t;return $.each(dataset,function(e,n){n.id==rootDatasetID&&(t=n)}),t}function debug(e){widgetContext.debug&&console.log(e)}var placeMap={},searchMap={},searchString="";eval(widget_container_tmpl),eval(place_tmpl),eval(section_tmpl),eval(flickr_tmpl),eval(pleiades_tmpl),eval(pelagios_partner_tmpl),eval(error_tmpl),eval(search_tmpl),eval(annotations_tmpl),eval(search_results_tmpl),eval(new_tab_tmpl),eval(about_tmpl);var dataset=$.parseJSON(datasetJSON);typeof $("#"+widgetContext.widgetID)==undefined&&debug("ERROR: $(#"+widgetContext.widgetID+") is undefined"),$("head").append('<link rel="stylesheet" type="text/css" href="'+widgetContext.cssDir+'pelagios.css" media="screen" />');var html=Handlebars.templates.widget_container({widgetContext:widgetContext});$("#"+widgetContext.widgetID).append(html);try{$("#"+widgetContext.widgetID+"-container").draggable()}catch(err){debug("ERROR: Could not make widget draggable")}this.setTypePlace=function(){var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),widgetContext.icon==1&&($("#"+widgetContext.widgetID+"-container").hide(),$("#"+widgetContext.widgetID+"-icon").click(widgetPopUp),widgetContext.onMouseOver&&($("#"+widgetContext.widgetID+"-icon").mouseover(widgetPopUp),$(document).click(function(){$("#"+widgetContext.widgetID+"-container").hide()}),$("#"+widgetContext.widgetID).click(function(e){return e.stopPropagation(),!1})),$("#"+widgetContext.widgetID+"-close-widget").click(function(){$("#"+widgetContext.widgetID+"-container").hide()})),displayPlace(widgetContext.pleiadesID)},this.setTypeSearch=function(){var e=Handlebars.templates.search({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e);var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),hideSearchResults(),$("#"+widgetContext.widgetID+"-search-form").submit(function(){return searchString=$("input:first").val(),displaySearchResults(),!1})}}var config={URL_PELAGIOS_API_V2:"http://pelagios.dme.ait.ac.at/api/",API_KEY_FLICKR:"ddf82df2aba035bfcf14c12a4eff3335",TIMEOUT_PLEIADES:6e3,TIMEOUT_PELAGIOS:6e4,TIMEOUT_FLICKR:6e3,URL_PLEIADES:"http://pleiades.stoa.org/places/",URL_FLICKR_SEARCH:"http://api.flickr.com/services/rest/?format=json&method=flickr.photos.search",MAX_PHOTOS_FLICKR:30,MSG_PLACE_NOT_FOUND:"The place specified for this widget does not exist in the Pleiades gazetteer.",MSG_TITLE_PLACE_NOT_FOUND:"Error: Unknown Place",MSG_PLEIADES_TIMEOUT:"We cannot display the place name and map at the moment because the Pleiades website is not responding. Apologies for the inconvenience and please try again later.",MSG_TITLE_PLEIADES_TIMEOUT:"Error: Pleiades not responding",NUM_ANNOTATIONS_TO_DISPLAY:20};return{Widget:Widget}});var Handlebars={};Handlebars.VERSION="1.0.beta.2",Handlebars.helpers={},Handlebars.partials={},Handlebars.registerHelper=function(e,t,n){n&&(t.not=n),this.helpers[e]=t},Handlebars.registerPartial=function(e,t){this.partials[e]=t},Handlebars.registerHelper("helperMissing",function(e){if(arguments.length===2)return undefined;throw new Error("Could not find property '"+e+"'")}),Handlebars.registerHelper("blockHelperMissing",function(e,t){var n=t.inverse||function(){},r=t.fn,i="",s=Object.prototype.toString.call(e);s==="[object Function]"&&(e=e());if(e===!0)return r(this);if(e===!1||e==null)return n(this);if(s==="[object Array]"){if(e.length>0)for(var o=0,u=e.length;o<u;o++)i+=r(e[o]);else i=n(this);return i}return r(e)}),Handlebars.registerHelper("each",function(e,t){var n=t.fn,r=t.inverse,i="";if(e&&e.length>0)for(var s=0,o=e.length;s<o;s++)i+=n(e[s]);else i=r(this);return i}),Handlebars.registerHelper("if",function(e,t){return!e||Handlebars.Utils.isEmpty(e)?t.inverse(this):t.fn(this)}),Handlebars.registerHelper("unless",function(e,t){var n=t.fn,r=t.inverse;return t.fn=r,t.inverse=n,Handlebars.helpers["if"].call(this,e,t)}),Handlebars.registerHelper("with",function(e,t){return t.fn(e)}),Handlebars.Exception=function(e){var t=Error.prototype.constructor.apply(this,arguments);for(var n in t)t.hasOwnProperty(n)&&(this[n]=t[n])},Handlebars.Exception.prototype=new Error,Handlebars.SafeString=function(e){this.string=e},Handlebars.SafeString.prototype.toString=function(){return this.string.toString()},function(){var e={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},t=/&(?!\w+;)|[<>"'`]/g,n=/[&<>"'`]/,r=function(t){return e[t]||"&amp;"};Handlebars.Utils={escapeExpression:function(e){return e instanceof Handlebars.SafeString?e.toString():e==null||e===!1?"":n.test(e)?e.replace(t,r):e},isEmpty:function(e){return typeof e=="undefined"?!0:e===null?!0:e===!1?!0:Object.prototype.toString.call(e)==="[object Array]"&&e.length===0?!0:!1}}}(),Handlebars.VM={template:function(e){var t={escapeExpression:Handlebars.Utils.escapeExpression,invokePartial:Handlebars.VM.invokePartial,programs:[],program:function(e,t,n){var r=this.programs[e];return n?Handlebars.VM.program(t,n):r?r:(r=this.programs[e]=Handlebars.VM.program(t),r)},programWithDepth:Handlebars.VM.programWithDepth,noop:Handlebars.VM.noop};return function(n,r){return r=r||{},e.call(t,Handlebars,n,r.helpers,r.partials,r.data)}},programWithDepth:function(e,t,n){var r=Array.prototype.slice.call(arguments,2);return function(n,i){return i=i||{},e.apply(this,[n,i.data||t].concat(r))}},program:function(e,t){return function(n,r){return r=r||{},e(n,r.data||t)}},noop:function(){return""},invokePartial:function(e,t,n,r,i){if(e===undefined)throw new Handlebars.Exception("The partial "+t+" could not be found");if(e instanceof Function)return e(n,{helpers:r,partials:i});if(!Handlebars.compile)throw new Handlebars.Exception("The partial "+t+" could not be compiled when running in vm mode");return i[t]=Handlebars.compile(e),i[t](n,{helpers:r,partials:i})}},Handlebars.template=Handlebars.VM.template,define("lib/handlebars",function(){});if(!PELAGIOS_PLACE_MAIN_JS_RUN){var PELAGIOS_PLACE_MAIN_JS_RUN=!0;(function(){var e=document.getElementsByTagName("script"),t=e[e.length-1].src,n=t.replace(/place.js/g,"");require.config({paths:{jquery:"http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min",jqueryui:"https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min"},priority:["jquery"],jQuery:"1.7.1",waitSeconds:5,baseUrl:n,shim:{jqueryui:{deps:["jquery"]},"lib/jquery_pagination":{deps:["jquery"]}}}),require(["app/pelagios","app/util","lib/handlebars"],function(e,t){var r=window.jQuery.noConflict(!0);r(document).ready(function(r){var i=!0;if(i){var s="FINDING PLACE WIDGETS ON PAGE: ";r(".pelagios-place").each(function(){s+=" "+r(this).attr("id")}),console.log(s),r(".pelagios-place").length==0&&console.log("No Pelagios widget HTML on this web page. If the HTML is added via Javascript please make sure it has added before the Pelagios javascript is run.")}r(".pelagios-place").length>0&&r(".pelagios-place").each(function(){var i={baseURL:n,widgetID:r(this).attr("id"),pleiadesID:r(this).attr("data-pleiades_id"),displayMap:r(this).attr("data-display_map")?r(this).attr("data-display_map")!=="false":!0,onMouseOver:r(this).attr("data-mouseover")?r(this).attr("data-mouseover")==="true":!1,debug:r(this).attr("data-debug")?r(this).attr("data-debug")==="true":!0,icon:r(this).attr("data-icon")?r(this).attr("data-icon")==="true":!0,newTab:r(this).attr("data-new_tab")?r(this).attr("data-new_tab")==="true":!1,templateDir:n+"template/",imageDir:n+"images/",iconDir:n+"images/partner_icons/",scriptDir:n+"scripts/",cssDir:n+"css/",pleiadesFlickrGroupOnly:!1,type:"place"};t.includesGoogleMaps2()&&(i.displayMap=!1),i.debug&&console.log("CREATING WIDGET pleiadesID:"+i.pleiadesID+" widgetID:"+i.widgetID+" baseURL:"+i.baseURL),widget=new e.Widget(i),widget.setTypePlace()})})})})()}define("place",function(){}) 
     38var requirejs,require,define;(function(global){function isFunction(e){return ostring.call(e)==="[object Function]"}function isArray(e){return ostring.call(e)==="[object Array]"}function each(e,t){if(e){var n;for(n=0;n<e.length;n+=1)if(e[n]&&t(e[n],n,e))break}}function eachReverse(e,t){if(e){var n;for(n=e.length-1;n>-1;n-=1)if(e[n]&&t(e[n],n,e))break}}function hasProp(e,t){return e.hasOwnProperty(t)}function eachProp(e,t){var n;for(n in e)if(e.hasOwnProperty(n)&&t(e[n],n))break}function mixin(e,t,n,r){return t&&eachProp(t,function(t,i){if(n||!hasProp(e,i))r&&typeof t!="string"?(e[i]||(e[i]={}),mixin(e[i],t,n,r)):e[i]=t}),e}function bind(e,t){return function(){return t.apply(e,arguments)}}function scripts(){return document.getElementsByTagName("script")}function getGlobal(e){if(!e)return e;var t=global;return each(e.split("."),function(e){t=t[e]}),t}function makeContextModuleFunc(e,t,n){return function(){var r=aps.call(arguments,0),i;return n&&isFunction(i=r[r.length-1])&&(i.__requireJsBuild=!0),r.push(t),e.apply(null,r)}}function addRequireMethods(e,t,n){each([["toUrl"],["undef"],["defined","requireDefined"],["specified","requireSpecified"]],function(r){var i=r[1]||r[0];e[r[0]]=t?makeContextModuleFunc(t[i],n):function(){var e=contexts[defContextName];return e[i].apply(e,arguments)}})}function makeError(e,t,n,r){var i=new Error(t+"\nhttp://requirejs.org/docs/errors.html#"+e);return i.requireType=e,i.requireModules=r,n&&(i.originalError=n),i}function newContext(e){function v(e){var t,n;for(t=0;e[t];t+=1){n=e[t];if(n===".")e.splice(t,1),t-=1;else if(n===".."){if(t===1&&(e[2]===".."||e[0]===".."))break;t>0&&(e.splice(t-1,2),t-=2)}}}function m(e,n,r){var i=n&&n.split("/"),s=i,o=t.map,u=o&&o["*"],a,f,l,c,h,p,d,m;e&&e.charAt(0)==="."&&(n?(t.pkgs[n]?s=i=[n]:s=i.slice(0,i.length-1),e=s.concat(e.split("/")),v(e),f=t.pkgs[a=e[0]],e=e.join("/"),f&&e===a+"/"+f.main&&(e=a)):e.indexOf("./")===0&&(e=e.substring(2)));if(r&&(i||u)&&o){c=e.split("/");for(h=c.length;h>0;h-=1){d=c.slice(0,h).join("/");if(i)for(p=i.length;p>0;p-=1){l=o[i.slice(0,p).join("/")];if(l){l=l[d];if(l){m=l;break}}}!m&&u&&u[d]&&(m=u[d]);if(m){c.splice(0,h,m),e=c.join("/");break}}}return e}function g(e){isBrowser&&each(scripts(),function(t){if(t.getAttribute("data-requiremodule")===e&&t.getAttribute("data-requirecontext")===h.contextName)return t.parentNode.removeChild(t),!0})}function y(e){var n=t.paths[e];if(n&&isArray(n)&&n.length>1)return g(e),n.shift(),h.undef(e),h.require([e]),!0}function b(e,t,n,r){var i=e?e.indexOf("!"):-1,o=null,f=t?t.name:null,l=e,c=!0,p="",d,v,g;return e||(c=!1,e="_@r"+(u+=1)),i!==-1&&(o=e.substring(0,i),e=e.substring(i+1,e.length)),o&&(o=m(o,f,r),v=s[o]),e&&(o?v&&v.normalize?p=v.normalize(e,function(e){return m(e,f,r)}):p=m(e,f,r):(p=m(e,f,r),d=h.nameToUrl(p))),g=o&&!v&&!n?"_unnormalized"+(a+=1):"",{prefix:o,name:p,parentMap:t,unnormalized:!!g,url:d,originalName:l,isDefine:c,id:(o?o+"!"+p:p)+g}}function w(e){var t=e.id,r=n[t];return r||(r=n[t]=new h.Module(e)),r}function E(e,t,r){var i=e.id,o=n[i];hasProp(s,i)&&(!o||o.defineEmitComplete)?t==="defined"&&r(s[i]):w(e).on(t,r)}function S(e,t){var r=e.requireModules,i=!1;t?t(e):(each(r,function(t){var r=n[t];r&&(r.error=e,r.events.error&&(i=!0,r.emit("error",e)))}),i||req.onError(e))}function x(){globalDefQueue.length&&(apsp.apply(i,[i.length-1,0].concat(globalDefQueue)),globalDefQueue=[])}function T(e,t,n){var r=e&&e.map,i=makeContextModuleFunc(n||h.require,r,t);return addRequireMethods(i,h,r),i.isBrowser=isBrowser,i}function N(e){delete n[e],each(f,function(t,n){if(t.map.id===e)return f.splice(n,1),t.defined||(h.waitCount-=1),!0})}function C(e,t){var r=e.map.id,i=e.depMaps,s;if(!e.inited)return;return t[r]?e:(t[r]=!0,each(i,function(e){var i=e.id,o=n[i];if(!o)return;return!o.inited||!o.enabled?(s=null,delete t[r],!0):s=C(o,mixin({},t))}),s)}function k(e,t,r){var i=e.map.id,o=e.depMaps;if(!e.inited||!e.map.isDefine)return;return t[i]?s[i]:(t[i]=e,each(o,function(s){var o=s.id,u=n[o],a;if(p[o])return;if(u){if(!u.inited||!u.enabled){r[i]=!0;return}a=k(u,t,r),r[o]||e.defineDepById(o,a)}}),e.check(!0),s[i])}function L(e){e.check()}function A(){var e=t.waitSeconds*1e3,r=e&&h.startTime+e<(new Date).getTime(),i=[],s=!1,o=!0,u,a,c,p;if(l)return;l=!0,eachProp(n,function(e){u=e.map,a=u.id;if(!e.enabled)return;if(!e.error)if(!e.inited&&r)y(a)?(p=!0,s=!0):(i.push(a),g(a));else if(!e.inited&&e.fetched&&u.isDefine){s=!0;if(!u.prefix)return o=!1}});if(r&&i.length)return c=makeError("timeout","Load timeout for modules: "+i,null,i),c.contextName=h.contextName,S(c);o&&(each(f,function(e){if(e.defined)return;var t=C(e,{}),n={};t&&(k(t,n,{}),eachProp(n,L))}),eachProp(n,L)),(!r||p)&&s&&(isBrowser||isWebWorker)&&!d&&(d=setTimeout(function(){d=0,A()},50)),l=!1}function O(e){w(b(e[0],null,!0)).init(e[1],e[2])}function M(e,t,n,r){e.detachEvent&&!isOpera?r&&e.detachEvent(r,t):e.removeEventListener(n,t,!1)}function _(e){var t=e.currentTarget||e.srcElement;return M(t,h.onScriptLoad,"load","onreadystatechange"),M(t,h.onScriptError,"error"),{node:t,id:t&&t.getAttribute("data-requiremodule")}}var t={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{}},n={},r={},i=[],s={},o={},u=1,a=1,f=[],l,c,h,p,d;return p={require:function(e){return T(e)},exports:function(e){e.usingExports=!0;if(e.map.isDefine)return e.exports=s[e.map.id]={}},module:function(e){return e.module={id:e.map.id,uri:e.map.url,config:function(){return t.config&&t.config[e.map.id]||{}},exports:s[e.map.id]}}},c=function(e){this.events=r[e.id]||{},this.map=e,this.shim=t.shim[e.id],this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},c.prototype={init:function(e,t,n,r){r=r||{};if(this.inited)return;this.factory=t,n?this.on("error",n):this.events.error&&(n=bind(this,function(e){this.emit("error",e)})),this.depMaps=e&&e.slice(0),this.depMaps.rjsSkipMap=e.rjsSkipMap,this.errback=n,this.inited=!0,this.ignore=r.ignore,r.enabled||this.enabled?this.enable():this.check()},defineDepById:function(e,t){var n;return each(this.depMaps,function(t,r){if(t.id===e)return n=r,!0}),this.defineDep(n,t)},defineDep:function(e,t){this.depMatched[e]||(this.depMatched[e]=!0,this.depCount-=1,this.depExports[e]=t)},fetch:function(){if(this.fetched)return;this.fetched=!0,h.startTime=(new Date).getTime();var e=this.map;if(!this.shim)return e.prefix?this.callPlugin():this.load();T(this,!0)(this.shim.deps||[],bind(this,function(){return e.prefix?this.callPlugin():this.load()}))},load:function(){var e=this.map.url;o[e]||(o[e]=!0,h.load(this.map.id,e))},check:function(e){if(!this.enabled||this.enabling)return;var t=this.map.id,r=this.depExports,i=this.exports,o=this.factory,u,a;if(!this.inited)this.fetch();else if(this.error)this.emit("error",this.error);else if(!this.defining){this.defining=!0;if(this.depCount<1&&!this.defined){if(isFunction(o)){if(this.events.error)try{i=h.execCb(t,o,r,i)}catch(l){u=l}else i=h.execCb(t,o,r,i);this.map.isDefine&&(a=this.module,a&&a.exports!==undefined&&a.exports!==this.exports?i=a.exports:i===undefined&&this.usingExports&&(i=this.exports));if(u)return u.requireMap=this.map,u.requireModules=[this.map.id],u.requireType="define",S(this.error=u)}else i=o;this.exports=i,this.map.isDefine&&!this.ignore&&(s[t]=i,req.onResourceLoad&&req.onResourceLoad(h,this.map,this.depMaps)),delete n[t],this.defined=!0,h.waitCount-=1,h.waitCount===0&&(f=[])}this.defining=!1,e||this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}},callPlugin:function(){var e=this.map,r=e.id,i=b(e.prefix,null,!1,!0);E(i,"defined",bind(this,function(i){var s=this.map.name,o=this.map.parentMap?this.map.parentMap.name:null,u,a,f;if(this.map.unnormalized){i.normalize&&(s=i.normalize(s,function(e){return m(e,o,!0)})||""),a=b(e.prefix+"!"+s,this.map.parentMap,!1,!0),E(a,"defined",bind(this,function(e){this.init([],function(){return e},null,{enabled:!0,ignore:!0})})),f=n[a.id],f&&(this.events.error&&f.on("error",bind(this,function(e){this.emit("error",e)})),f.enable());return}u=bind(this,function(e){this.init([],function(){return e},null,{enabled:!0})}),u.error=bind(this,function(e){this.inited=!0,this.error=e,e.requireModules=[r],eachProp(n,function(e){e.map.id.indexOf(r+"_unnormalized")===0&&N(e.map.id)}),S(e)}),u.fromText=function(e,t){var n=useInteractive;n&&(useInteractive=!1),w(b(e)),req.exec(t),n&&(useInteractive=!0),h.completeLoad(e)},i.load(e.name,T(e.parentMap,!0,function(e,t){return e.rjsSkipMap=!0,h.require(e,t)}),u,t)})),h.enable(i,this),this.pluginMaps[i.id]=i},enable:function(){this.enabled=!0,this.waitPushed||(f.push(this),h.waitCount+=1,this.waitPushed=!0),this.enabling=!0,each(this.depMaps,bind(this,function(e,t){var r,i,s;if(typeof e=="string"){e=b(e,this.map.isDefine?this.map:this.map.parentMap,!1,!this.depMaps.rjsSkipMap),this.depMaps[t]=e,s=p[e.id];if(s){this.depExports[t]=s(this);return}this.depCount+=1,E(e,"defined",bind(this,function(e){this.defineDep(t,e),this.check()})),this.errback&&E(e,"error",this.errback)}r=e.id,i=n[r],!p[r]&&i&&!i.enabled&&h.enable(e,this)})),eachProp(this.pluginMaps,bind(this,function(e){var t=n[e.id];t&&!t.enabled&&h.enable(e,this)})),this.enabling=!1,this.check()},on:function(e,t){var n=this.events[e];n||(n=this.events[e]=[]),n.push(t)},emit:function(e,t){each(this.events[e],function(e){e(t)}),e==="error"&&delete this.events[e]}},h={config:t,contextName:e,registry:n,defined:s,urlFetched:o,waitCount:0,defQueue:i,Module:c,makeModuleMap:b,configure:function(e){e.baseUrl&&e.baseUrl.charAt(e.baseUrl.length-1)!=="/"&&(e.baseUrl+="/");var r=t.pkgs,i=t.shim,s=t.paths,o=t.map;mixin(t,e,!0),t.paths=mixin(s,e.paths,!0),e.map&&(t.map=mixin(o||{},e.map,!0,!0)),e.shim&&(eachProp(e.shim,function(e,t){isArray(e)&&(e={deps:e}),e.exports&&!e.exports.__buildReady&&(e.exports=h.makeShimExports(e.exports)),i[t]=e}),t.shim=i),e.packages&&(each(e.packages,function(e){var t;e=typeof e=="string"?{name:e}:e,t=e.location,r[e.name]={name:e.name,location:t||e.name,main:(e.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}}),t.pkgs=r),eachProp(n,function(e,t){e.map=b(t)}),(e.deps||e.callback)&&h.require(e.deps||[],e.callback)},makeShimExports:function(e){var t;return typeof e=="string"?(t=function(){return getGlobal(e)},t.exports=e,t):function(){return e.apply(global,arguments)}},requireDefined:function(e,t){return hasProp(s,b(e,t,!1,!0).id)},requireSpecified:function(e,t){return e=b(e,t,!1,!0).id,hasProp(s,e)||hasProp(n,e)},require:function(t,n,r,o){var u,a,f,l,c;if(typeof t=="string")return isFunction(n)?S(makeError("requireargs","Invalid require call"),r):req.get?req.get(h,t,n):(u=t,o=n,f=b(u,o,!1,!0),a=f.id,hasProp(s,a)?s[a]:S(makeError("notloaded",'Module name "'+a+'" has not been loaded yet for context: '+e)));r&&!isFunction(r)&&(o=r,r=undefined),n&&!isFunction(n)&&(o=n,n=undefined),x();while(i.length){c=i.shift();if(c[0]===null)return S(makeError("mismatch","Mismatched anonymous define() module: "+c[c.length-1]));O(c)}return l=w(b(null,o)),l.init(t,n,r,{enabled:!0}),A(),h.require},undef:function(e){var t=b(e,null,!0),i=n[e];delete s[e],delete o[t.url],delete r[e],i&&(i.events.defined&&(r[e]=i.events),N(e))},enable:function(e,t){var r=n[e.id];r&&w(e).enable()},completeLoad:function(e){var r=t.shim[e]||{},o=r.exports&&r.exports.exports,u,a,f;x();while(i.length){a=i.shift();if(a[0]===null){a[0]=e;if(u)break;u=!0}else a[0]===e&&(u=!0);O(a)}f=n[e];if(!u&&!s[e]&&f&&!f.inited){if(t.enforceDefine&&(!o||!getGlobal(o))){if(y(e))return;return S(makeError("nodefine","No define call for "+e,null,[e]))}O([e,r.deps||[],r.exports])}A()},toUrl:function(e,t){var n=e.lastIndexOf("."),r=null;return n!==-1&&(r=e.substring(n,e.length),e=e.substring(0,n)),h.nameToUrl(m(e,t&&t.id,!0),r)},nameToUrl:function(e,n){var r,i,s,o,u,a,f,l,c;if(req.jsExtRegExp.test(e))l=e+(n||"");else{r=t.paths,i=t.pkgs,u=e.split("/");for(a=u.length;a>0;a-=1){f=u.slice(0,a).join("/"),s=i[f],c=r[f];if(c){isArray(c)&&(c=c[0]),u.splice(0,a,c);break}if(s){e===s.name?o=s.location+"/"+s.main:o=s.location,u.splice(0,a,o);break}}l=u.join("/")+(n||".js"),l=(l.charAt(0)==="/"||l.match(/^[\w\+\.\-]+:/)?"":t.baseUrl)+l}return t.urlArgs?l+((l.indexOf("?")===-1?"?":"&")+t.urlArgs):l},load:function(e,t){req.load(h,e,t)},execCb:function(e,t,n,r){return t.apply(r,n)},onScriptLoad:function(e){if(e.type==="load"||readyRegExp.test((e.currentTarget||e.srcElement).readyState)){interactiveScript=null;var t=_(e);h.completeLoad(t.id)}},onScriptError:function(e){var t=_(e);if(!y(t.id))return S(makeError("scripterror","Script error",e,[t.id]))}}}function getInteractiveScript(){return interactiveScript&&interactiveScript.readyState==="interactive"?interactiveScript:(eachReverse(scripts(),function(e){if(e.readyState==="interactive")return interactiveScript=e}),interactiveScript)}var version="2.0.4",commentRegExp=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,ostring=Object.prototype.toString,ap=Array.prototype,aps=ap.slice,apsp=ap.splice,isBrowser=typeof window!="undefined"&&!!navigator&&!!document,isWebWorker=!isBrowser&&typeof importScripts!="undefined",readyRegExp=isBrowser&&navigator.platform==="PLAYSTATION 3"?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera=typeof opera!="undefined"&&opera.toString()==="[object Opera]",contexts={},cfg={},globalDefQueue=[],useInteractive=!1,req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath;if(typeof define!="undefined")return;if(typeof requirejs!="undefined"){if(isFunction(requirejs))return;cfg=requirejs,requirejs=undefined}typeof require!="undefined"&&!isFunction(require)&&(cfg=require,require=undefined),req=requirejs=function(e,t,n,r){var i=defContextName,s,o;return!isArray(e)&&typeof e!="string"&&(o=e,isArray(t)?(e=t,t=n,n=r):e=[]),o&&o.context&&(i=o.context),s=contexts[i],s||(s=contexts[i]=req.s.newContext(i)),o&&s.configure(o),s.require(e,t,n)},req.config=function(e){return req(e)},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),addRequireMethods(req),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],baseElement=document.getElementsByTagName("base")[0],baseElement&&(head=s.head=baseElement.parentNode)),req.onError=function(e){throw e},req.load=function(e,t,n){var r=e&&e.config||{},i;if(isBrowser)return i=r.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script"),i.type=r.scriptType||"text/javascript",i.charset="utf-8",i.async=!0,i.setAttribute("data-requirecontext",e.contextName),i.setAttribute("data-requiremodule",t),i.attachEvent&&!(i.attachEvent.toString&&i.attachEvent.toString().indexOf("[native code")<0)&&!isOpera?(useInteractive=!0,i.attachEvent("onreadystatechange",e.onScriptLoad)):(i.addEventListener("load",e.onScriptLoad,!1),i.addEventListener("error",e.onScriptError,!1)),i.src=n,currentlyAddingScript=i,baseElement?head.insertBefore(i,baseElement):head.appendChild(i),currentlyAddingScript=null,i;isWebWorker&&(importScripts(n),e.completeLoad(t))},isBrowser&&eachReverse(scripts(),function(e){head||(head=e.parentNode),dataMain=e.getAttribute("data-main");if(dataMain)return cfg.baseUrl||(src=dataMain.split("/"),mainScript=src.pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath,dataMain=mainScript),dataMain=dataMain.replace(jsSuffixRegExp,""),cfg.deps=cfg.deps?cfg.deps.concat(dataMain):[dataMain],!0}),define=function(e,t,n){var r,i;typeof e!="string"&&(n=t,t=e,e=null),isArray(t)||(n=t,t=[]),!t.length&&isFunction(n)&&n.length&&(n.toString().replace(commentRegExp,"").replace(cjsRequireRegExp,function(e,n){t.push(n)}),t=(n.length===1?["require"]:["require","exports","module"]).concat(t)),useInteractive&&(r=currentlyAddingScript||getInteractiveScript(),r&&(e||(e=r.getAttribute("data-requiremodule")),i=contexts[r.getAttribute("data-requirecontext")])),(i?i.defQueue:globalDefQueue).push([e,t,n])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)})(this),define("requireLib",function(){}),define("app/util",["jquery"],function(e){function t(e){var t=e.replace(/ /g,"");return t=t.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()]/g,""),t}function n(){return typeof GMap2!="undefined"}function r(t,n,r,i,s){var o={type:"GET",dataType:"json",timeout:i,success:n,error:r};r||(o.error=function(e,n,r){console.log("ERROR: Call to "+t+" failed: "+n),console.log(e)});if(!s)e.ajax(t,o);else{try{var u=new XMLHttpRequest}catch(r){var u={}}if("withCredentials"in u)e.ajax(t,o);else if(typeof XDomainRequest!="undefined"){var a=new XDomainRequest;a.timeout=i,a.open("get",t),a.onload=function(){n(e.parseJSON(a.responseText),"",a)},a.onerror=r,a.send()}}}return{createID:t,includesGoogleMaps2:n,getAPIData:r}}),define("app/loadGMaps",[],function(){function t(){if(e!=null)return e;e=typeof GMap2=="undefined"}var e;return{load:function(e,n,r,i){i.isBuild||t()?r(null):window.setTimeout(function(){n([e],r)},500)}}}),define("app/search_map",["app/loadGMaps!lib/async!http://maps.google.com/maps/api/js?sensor=false"],function(){function e(e){if(!document.getElementById(e))throw Error("ERROR: Invalid ID for search map");try{var t=new google.maps.Map(document.getElementById(e),{mapTypeId:google.maps.MapTypeId.TERRAIN})}catch(n){console.log("ERROR: Failed to create Google Map for element id "+e+" : "+n)}var r=new google.maps.LatLngBounds,i=new google.maps.InfoWindow;this.refresh=function(){google.maps.event.trigger(t,"resize"),t.fitBounds(r)},this.addMarker=function(e,n,s,o){if(e.hasOwnProperty("geometry")&&e.geometry!=null&&e.geometry.hasOwnProperty("type")&&e.geometry.type=="Point"){var u=new google.maps.LatLng(e.geometry.coordinates[1],e.geometry.coordinates[0]),a=new google.maps.Marker({position:u,map:t,title:n});r.extend(u),google.maps.event.addListener(a,"click",function(){return function(){i.close(),i.setContent(s),i.open(t,a),o()}}())}}}return{SearchMap:e}}),define("app/place_map",["app/loadGMaps!lib/async!http://maps.google.com/maps/api/js?sensor=false"],function(){function e(e){if(!document.getElementById(e))throw Error("ERROR: Invalid ID for place map");try{var t=new google.maps.Map(document.getElementById(e),{zoom:8,mapTypeId:google.maps.MapTypeId.TERRAIN})}catch(n){console.log("ERROR: Failed to crate Google map for element id "+e+" : "+n)}try{var r=new google.maps.Marker({map:t})}catch(n){console.log("ERROR: Failed to create Google Map marker : "+n)}this.refresh=function(){try{google.maps.event.trigger(t,"resize")}catch(e){console.log("ERROR: Failed to resize Google map :"+e)}try{t.setCenter(r.getPosition())}catch(e){console.log("ERROR: Failed to center Google Map : "+e)}},this.setMarker=function(e,n){try{var i=new google.maps.LatLng(e[1],e[0])}catch(s){console.log("ERROR: Failed to create Google Maps location : "+s)}try{r.setPosition(i)}catch(s){console.log("ERROR: Failed to set marker position : "+s)}try{r.setTitle(n)}catch(s){console.log("ERROR: Failed to set marker title : "+s)}try{t.setCenter(i)}catch(s){console.log("ERROR: Failed to center Google Map : "+s)}try{google.maps.event.trigger(t,"resize")}catch(s){console.log("ERROR: Failed to resize Google Map : "+s)}}}return{PlaceMap:e}}),define("lib/text",["module"],function(e){var t=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],n=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,r=/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im,i=typeof location!="undefined"&&location.href,s=i&&location.protocol&&location.protocol.replace(/\:/,""),o=i&&location.hostname,u=i&&(location.port||undefined),a=[],f=e.config(),l,c;return l={version:"2.0.0",strip:function(e){if(e){e=e.replace(n,"");var t=e.match(r);t&&(e=t[1])}else e="";return e},jsEscape:function(e){return e.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r")},createXhr:function(){var e,n,r;if(typeof XMLHttpRequest!="undefined")return new XMLHttpRequest;if(typeof ActiveXObject!="undefined")for(n=0;n<3;n++){r=t[n];try{e=new ActiveXObject(r)}catch(i){}if(e){t=[r];break}}return e},parseName:function(e){var t=!1,n=e.indexOf("."),r=e.substring(0,n),i=e.substring(n+1,e.length);return n=i.indexOf("!"),n!==-1&&(t=i.substring(n+1,i.length),t=t==="strip",i=i.substring(0,n)),{moduleName:r,ext:i,strip:t}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(e,t,n,r){var i=l.xdRegExp.exec(e),s,o,u;return i?(s=i[2],o=i[3],o=o.split(":"),u=o[1],o=o[0],(!s||s===t)&&(!o||o===n)&&(!u&&!o||u===r)):!0},finishLoad:function(e,t,n,r){n=t?l.strip(n):n,f.isBuild&&(a[e]=n),r(n)},load:function(e,t,n,r){if(r.isBuild&&!r.inlineText){n();return}f.isBuild=r.isBuild;var a=l.parseName(e),c=a.moduleName+"."+a.ext,h=t.toUrl(c),p=f.useXhr||l.useXhr;!i||p(h,s,o,u)?l.get(h,function(t){l.finishLoad(e,a.strip,t,n)},function(e){n.error&&n.error(e)}):t([c],function(e){l.finishLoad(a.moduleName+"."+a.ext,a.strip,e,n)})},write:function(e,t,n,r){if(a.hasOwnProperty(t)){var i=l.jsEscape(a[t]);n.asModule(e+"!"+t,"define(function () { return '"+i+"';});\n")}},writeFile:function(e,t,n,r,i){var s=l.parseName(t),o=s.moduleName+"."+s.ext,u=n.toUrl(s.moduleName+"."+s.ext)+".js";l.load(o,n,function(t){var n=function(e){return r(u,e)};n.asModule=function(e,t){return r.asModule(e,u,t)},l.write(e,o,n,i)},i)}},typeof process!="undefined"&&process.versions&&!!process.versions.node?(c=require.nodeRequire("fs"),l.get=function(e,t){var n=c.readFileSync(e,"utf8");n.indexOf("")===0&&(n=n.substring(1)),t(n)}):l.createXhr()?l.get=function(e,t,n){var r=l.createXhr();r.open("GET",e,!0),f.onXhr&&f.onXhr(r,e),r.onreadystatechange=function(i){var s,o;r.readyState===4&&(s=r.status,s>399&&s<600?(o=new Error(e+" HTTP status: "+s),o.xhr=r,n(o)):t(r.responseText))},r.send(null)}:typeof Packages!="undefined"&&(l.get=function(e,t){var n="utf-8",r=new java.io.File(e),i=java.lang.System.getProperty("line.separator"),s=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(r),n)),o,u,a="";try{o=new java.lang.StringBuffer,u=s.readLine(),u&&u.length()&&u.charAt(0)===65279&&(u=u.substring(1)),o.append(u);while((u=s.readLine())!==null)o.append(i),o.append(u);a=String(o.toString())}finally{s.close()}t(a)}),l}),define("lib/text!template/widget_container.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'widget_container\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n        <a href=\\"\\" class=\\"close\\">\\r\\n        <img src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "images/icons/close-button.png\\" alt=\\"Close Pelagios information\\" />\\r\\n        </a>    \\r\\n        ";\n  return buffer;\n  }\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<img id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-icon\\" class=\\"icon\\" src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "images/icons/pelagios.png\\" alt=\\"Information about this place from Pelagios partners\\"/> \\r\\n";\n  return buffer;\n  }\n\n  buffer += "<div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-container\\" class=\\"container\\">    \\r\\n    <div class=\\"header\\"> \\r\\n        <img class=\\"logo\\" src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.imageDir)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "icons/pelagios-logo.png\\" alt=\\"View Pelagios infromation\\"/>    \\r\\n        ";\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.icon), {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n    </div>    \\r\\n    <div class=\\"content-wrapper\\">\\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-content\\">\\r\\n        </div>\\r\\n        <div class=\\"footer\\"></div>                           \\r\\n    </div>\\r\\n</div>    \\r\\n";\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.icon), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "  ";\n  return buffer;\n  });\n})();'}),define("lib/text!template/place.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'place\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-pleiades\\">    \\r\\n</div>    \\r\\n<div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-sections\\"></div>   \\r\\n\\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/section.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'section\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<div class=\\"section\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-";\n  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n<div class=\\"section-header\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-header-";\n  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n<img src=\\"";\n  if (stack2 = helpers.iconURL) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.iconURL; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\" class=\\"section-icon\\" alt=\\"\\" />\\r\\n<h2>";\n  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</h2>\\r\\n<img class=\\"section-toggle\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-toggle-";\n  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\" \\r\\n     src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "images/icons/right-arrow.png\\" alt=\\"Toggle section\\"/>\\r\\n<p class=\\"section-strapline\\">";\n  if (stack2 = helpers.strapline) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.strapline; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</p>\\r\\n</div>\\r\\n<div class=\\"section-content\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-content-";\n  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n</div></div>\\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/flickr.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'flickr\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<a href=\\"http://www.flickr.com/photos/"\n    + escapeExpression(((stack1 = depth0.owner),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "/"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" target=\\"_blank\\">\\r\\n<img src=\\"http://farm"\n    + escapeExpression(((stack1 = depth0.farm),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + ".staticflickr.com/"\n    + escapeExpression(((stack1 = depth0.server),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "/"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "_"\n    + escapeExpression(((stack1 = depth0.secret),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "_t.jpg\\" alt=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.pthis),stack1 == null || stack1 === false ? stack1 : stack1.title)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" />\\r\\n</a>\\r\\n";\n  return buffer;\n  }\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<p><a href=\\"http://www.flickr.com/groups/pleiades-places/pool/tags/pleiades%3Adepicts%3D";\n  if (stack1 = helpers.pleiadesID) { stack1 = stack1.call(depth0, {hash:{},data:data}); }\n  else { stack1 = depth0.pleiadesID; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }\n  buffer += escapeExpression(stack1)\n    + "/\\" target=\\"_blank\\">View all "\n    + escapeExpression(((stack1 = ((stack1 = depth0.photo),stack1 == null || stack1 === false ? stack1 : stack1.length)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + " photos on flickr</a></p>\\r\\n";\n  return buffer;\n  }\n\nfunction program5(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<p><a href=\\"http://www.flickr.com/photos/tags/pleiades%3Adepicts%3D";\n  if (stack1 = helpers.pleiadesID) { stack1 = stack1.call(depth0, {hash:{},data:data}); }\n  else { stack1 = depth0.pleiadesID; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }\n  buffer += escapeExpression(stack1)\n    + "/\\" target=\\"_blank\\">View all "\n    + escapeExpression(((stack1 = ((stack1 = depth0.photo),stack1 == null || stack1 === false ? stack1 : stack1.length)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + " photos on flickr</a></p>\\r\\n";\n  return buffer;\n  }\n\n  stack1 = helpers.each.call(depth0, depth0.photo, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n";\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n";\n  stack2 = helpers.unless.call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly), {hash:{},inverse:self.noop,fn:self.program(5, program5, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n<p>The flickr photos shown here are those which have been given a <a href=\\"http://www.flickr.com/groups/pleiades-places/discuss/72157628435317307/\\">Pleiades machine tag specifying this place.</a></p>\\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/pleiades.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'pleiades\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n    <p>Some alternative names: ";\n  if (stack1 = helpers.altNames) { stack1 = stack1.call(depth0, {hash:{},data:data}); }\n  else { stack1 = depth0.altNames; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }\n  buffer += escapeExpression(stack1)\n    + " (the results below are for all alternative names)</p>  \\r\\n    ";\n  return buffer;\n  }\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += " \\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-map\\">    \\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-map_canvas\\" style=\\"width:"\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.mapWidth)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "; height:200px\\"></div>\\r\\n    </div>   \\r\\n    ";\n  return buffer;\n  }\n\n  buffer += " <h1 id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-title\\" class=\\"pelagios-title\\">";\n  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</h1>    \\r\\n<div class=\\"section-content\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-pleiades\\">\\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-description\\"><p>";\n  if (stack2 = helpers.description) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.description; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</p>\\r\\n    ";\n  stack2 = helpers[\'if\'].call(depth0, depth0.altNames, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n    ";\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.displayMap), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n    <p><img src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "images/icons/pleiades.png\\"  class=\\"pleiades-icon\\" />\\r\\n    <a href=\\"http://pleiades.stoa.org/places/";\n  if (stack2 = helpers.pleiadesID) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.pleiadesID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\" target=\\"_blank\\">Entry in the Pleiades Gazetteer</a></p>    \\r\\n</div>";\n  return buffer;\n  });\n})();'}),define("lib/text!template/pelagios_partner.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'pelagios_partner\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1, stack2;\n  buffer += "\\r\\n\\r\\n<li id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\">\\r\\n<span id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset_title-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\">\\r\\n    "\n    + escapeExpression(((stack1 = depth0.title),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\r\\n    <span id =\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset_hits-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" class=\\"link\\">\\r\\n    "\n    + escapeExpression(((stack1 = depth0.references),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + " hit";\n  stack2 = helpers[\'if\'].call(depth0, depth0.multipleReferences, {hash:{},inverse:self.noop,fn:self.program(2, program2, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n    </span>\\r\\n    <img id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-toggle-subdataset-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" \\r\\n         src = \\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.imageDir)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "icons/right-arrow.png\\"  /> \\r\\n</span>\\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset_content-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\">\\r\\n\\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-annotations-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" class=\\"annotations\\">\\r\\n        </div>\\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset_pagination-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" class=\\"subdataset_pagination\\">\\r\\n        </div>\\r\\n    </div>\\r\\n</li>\\r\\n\\r\\n";\n  return buffer;\n  }\nfunction program2(depth0,data) {\n  \n  \n  return "s";\n  }\n\n  buffer += "<ul class=\\"subdatasets\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdatasets-";\n  if (stack2 = helpers.rootDatasetID) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.rootDatasetID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n";\n  stack2 = helpers.each.call(depth0, depth0.subdataset, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "  \\r\\n</ul>         ";\n  return buffer;\n  });\n})();'}),define("lib/text!template/error.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'error\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<h1 id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-title\\" class=\\"pelagios-title\\">";\n  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</h1> \\r\\n<p>";\n  if (stack2 = helpers.msg) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.msg; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</p>  \\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/search.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'search\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<h1 id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-title\\" class=\\"pelagios-title\\">Search for places</h1>    \\r\\n    <form id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-form\\" class=\\"search-form\\">\\r\\n        <input type=\\"text\\" size=\\"30\\"/>\\r\\n        <input id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-string\\" type=\\"submit\\" value=\\"Search\\"/>\\r\\n    </form>\\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-results\\">\\r\\n    </div> \\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-place\\">\\r\\n    </div>\\r\\n \\r\\n  \\r\\n \\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/annotations.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'annotations\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<li><a href=\\""\n    + escapeExpression(((stack1 = depth0.uri),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" target=\\"_blank\\">"\n    + escapeExpression(((stack1 = depth0.label),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "</a></li>\\r\\n";\n  return buffer;\n  }\n\n  buffer += "<ul class=\\"annotations\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-annotations-";\n  if (stack2 = helpers.subdatasetID) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.subdatasetID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n";\n  stack2 = helpers.each.call(depth0, depth0.annotation, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n</ul>";\n  return buffer;\n  });\n})();'}),define("lib/text!template/search_results.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'search_results\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1, stack2;\n  buffer += " \\r\\n<div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-results-map\\" class=\\"search-map\\">\\r\\n    <p>Geographic Results for: <strong>";\n  if (stack2 = helpers.searchString) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.searchString; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</strong></p>\\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-map_canvas\\" style=\\"width:\\r\\n    "\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.mapWidth)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "; height:200px\\"></div>\\r\\n</div>  \\r\\n";\n  return buffer;\n  }\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<li id=\\""\n    + escapeExpression(((stack1 = depth0.widgetID),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-place-"\n    + escapeExpression(((stack1 = depth0.pleiadesID),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" class=\\"link "\n    + escapeExpression(((stack1 = depth0.feature_type),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\">"\n    + escapeExpression(((stack1 = depth0.label),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "</li>\\r\\n";\n  return buffer;\n  }\n\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.displayMap), {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n<div class=\\"list-results-section\\">\\r\\n<p>List Results for: <strong>";\n  if (stack2 = helpers.searchString) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.searchString; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</strong>\\r\\n<div class=\\"list-results\\">\\r\\n<ul>\\r\\n";\n  stack2 = helpers.each.call(depth0, depth0.place, {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n</ul>\\r\\n</div>\\r\\n</div>";\n  return buffer;\n  });\n})();'}),define("lib/text!template/new_tab.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'new_tab\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<!DOCTYPE html>\\r\\n<html>\\r\\n  <head>\\r\\n\\r\\n  </head>\\r\\n  <body >\\r\\n\\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" data-pleiades_id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" \\r\\n        data-icon=\\"false\\"\\r\\n        class=\\"pelagios pelagios-place\\"></div>\\r\\n</body>\\r\\n</html>";\n  return buffer;\n  });\n})();'}),define("lib/text!template/about.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'about\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  \n\n\n  return "<p>This widget displays data from the Pelagios project partners about the location specified.</p>\\r\\n<p>View the <a href=\\"http://pelagios-project.blogspot.co.uk/\\" target=\\"_blank\\">Pelagios website</a>\\r\\n for more information.</a>\\r\\n            ";\n  });\n})();'}),define("lib/text!app/dataset.json",[],function(){return'[{\r\n  "id": "b47df24737cd647789c7d61ede9fed09",\r\n  "iconFileName": "arachne.png",\r\n  "title": "Arachne",\r\n  "strapline": "A web research tool of the German Archaeological Institute for searching mass archaeological records"\r\n},\r\n{\r\n  "id": "6a39d0bc3c0fd4ef7d2a837b42cf46a1",\r\n  "title": "Google Ancient Places",\r\n  "iconFileName": "gap_logo.png",\r\n  "strapline":  "A Geographic Annotation Platform for reading texts spatially"\r\n}\r\n,\r\n{\r\n  "id": "2db51c1dd976f01bf993a02f959e18f8",\r\n  "title": "nomisma",\r\n  "iconFileName": "Greek.jpeg",\r\n  "strapline":  "Representing ancient coins online"\r\n}\r\n,\r\n{\r\n  "id": "298fafd65586643149e8a8ba47b57052",\r\n  "title": "SPQR",\r\n  "iconFileName": "SPQR.png",\r\n  "strapline":  "From Roman inscriptions to resource descriptions"\r\n}\r\n,\r\n{\r\n  "id": "",\r\n  "title": "Regnum Francorum Online",\r\n  "iconFileName": "Regnum.png",\r\n  "strapline":  "Interactive Maps and Sources of Late Antique and Early Medieval Europe"\r\n}\r\n,\r\n{\r\n  "id": "21e48d8ca46f666467b81a551fbb1cb",\r\n  "title": "Perseus",\r\n  "iconFileName": "Perseus.png",\r\n  "strapline":  "Annotated occurrences of place entities in texts from the Perseus Digital Library"\r\n}\r\n,\r\n{\r\n  "id": "c4c2ed780a8f4f2b698a5c2505ac34ca",\r\n  "title": "CLAROS",\r\n  "iconFileName": "CLAROS.png",\r\n  "strapline":  "Aggregated search of art and archaeology data from the classical world and the far east across four millennia"\r\n}\r\n,\r\n{\r\n  "id": "739128af1e9613de03706a57cef46976",\r\n  "title": "Open Context",\r\n  "iconFileName": "open-context.png",\r\n  "strapline":  "Publications of research data in archaeology and related fields"\r\n}\r\n,\r\n{\r\n  "id": "467b9097b55b6e0831fe6760df93e7f2",\r\n  "title": "FASTI Online",\r\n  "iconFileName": "FASTI.png",\r\n  "strapline":  "A database of archaeological excavations since the year 2000"\r\n}\r\n,\r\n{\r\n  "id": "a306666ae581e8d611d56a1dfdaea256",\r\n  "title": "Ure Museum",\r\n  "iconFileName": "URE.png",\r\n  "strapline":  "University Museum of ancient Greek, Egyptian & a little Roman stuff"\r\n}\r\n,\r\n{\r\n  "id": "5555ffd0e36e088c25f76b980139851a",\r\n  "title": "ORBIS",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "The Stanford Geospatial Network Model of the Roman World"\r\n}\r\n,\r\n{\r\n"id": "4f9bb4e7c0b0c329db0d2696814ffd2d",\r\n  "title": "SquinchPix",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "An archive of European imagery"\r\n}\r\n,\r\n{\r\n  "id": "77b38b7fc7d81fb278d1c3634638f8ee",\r\n  "title": "Sharing Ancient Wisdoms (SAWS)",\r\n  "iconFileName": "saws.jpg",\r\n  "strapline": "Medieval gnomologia (collections of wise sayings)"\r\n}\r\n,\r\n{\r\n  "id": "434fc5aea15f6d39040c1282c4a2df63",\r\n  "title": "Portable Antiquities Scheme",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Pleiades URIs appearing within the Portable Antiquities Scheme database"\r\n}\r\n,\r\n{\r\n  "id": "9fdb2911bcfc625c87cfce10d97b3de7",\r\n  "title": "ORACC",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Open Richly Annotated Cuneiform Corpus"\r\n}\r\n,\r\n{\r\n  "id": "7bb4b28758a3607f9b1eea3b48df90a",\r\n  "title": "Meketre",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Reliefs and paintings of Middle Kingdom tombs of Ancient Egypt"\r\n}\r\n,\r\n{\r\n  "id": "71fd46410b14843985db023501f2f76f",\r\n  "title": "The Book of the Dead Project",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "The evolution of the ancient egyptian Book of the Dead"\r\n}\r\n,\r\n{\r\n  "id": "e2e0b0b2199b875ff3acdce3f962c128",\r\n  "title": "ISAW Papers",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Pleiades URIs appearing in ISAW Papers articles"\r\n}\r\n,\r\n{\r\n  "id": "e9e161a08db2906d135d7abefb145636",\r\n  "title": "OCRE",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Online Coins of the Roman Empire"\r\n}\r\n]\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n'}),define("lib/jquery_pagination",["jquery"],function(e){(function(e){e.PaginationCalculator=function(e,t){this.maxentries=e,this.opts=t},e.extend(e.PaginationCalculator.prototype,{numPages:function(){return Math.ceil(this.maxentries/this.opts.items_per_page)},getInterval:function(e){var t=Math.floor(this.opts.num_display_entries/2),n=this.numPages(),r=n-this.opts.num_display_entries,i=e>t?Math.max(Math.min(e-t,r),0):0,s=e>t?Math.min(e+t+this.opts.num_display_entries%2,n):Math.min(this.opts.num_display_entries,n);return{start:i,end:s}}}),e.PaginationRenderers={},e.PaginationRenderers.defaultRenderer=function(t,n){this.maxentries=t,this.opts=n,this.pc=new e.PaginationCalculator(t,n)},e.extend(e.PaginationRenderers.defaultRenderer.prototype,{createLink:function(t,n,r){var i,s=this.pc.numPages();return t=t<0?0:t<s?t:s-1,r=e.extend({text:t+1,classes:""},r||{}),t==n?i=e("<span class='current'>"+r.text+"</span>"):i=e("<a>"+r.text+"</a>").attr("href",this.opts.link_to.replace(/__id__/,t)),r.classes&&i.addClass(r.classes),i.data("page_id",t),i},appendRange:function(e,t,n,r,i){var s;for(s=n;s<r;s++)this.createLink(s,t,i).appendTo(e)},getLinks:function(t,n){var r,i,s=this.pc.getInterval(t),o=this.pc.numPages(),u=e("<div class='pagination'></div>");return this.opts.prev_text&&(t>0||this.opts.prev_show_always)&&u.append(this.createLink(t-1,t,{text:this.opts.prev_text,classes:"prev"})),s.start>0&&this.opts.num_edge_entries>0&&(i=Math.min(this.opts.num_edge_entries,s.start),this.appendRange(u,t,0,i,{classes:"sp"}),this.opts.num_edge_entries<s.start&&this.opts.ellipse_text&&e("<span>"+this.opts.ellipse_text+"</span>").appendTo(u)),this.appendRange(u,t,s.start,s.end),s.end<o&&this.opts.num_edge_entries>0&&(o-this.opts.num_edge_entries>s.end&&this.opts.ellipse_text&&e("<span>"+this.opts.ellipse_text+"</span>").appendTo(u),r=Math.max(o-this.opts.num_edge_entries,s.end),this.appendRange(u,t,r,o,{classes:"ep"})),this.opts.next_text&&(t<o-1||this.opts.next_show_always)&&u.append(this.createLink(t+1,t,{text:this.opts.next_text,classes:"next"})),e("a",u).click(n),u}}),e.fn.pagination=function(t,n){function u(t){t.preventDefault();var n,r=e(t.target).data("page_id"),i=a(r);return i||t.stopPropagation(),i}function a(e){r.data("current_page",e),s=i.getLinks(e,u),r.empty(),s.appendTo(r);var t=n.callback(e,r);return t}n=e.extend({items_per_page:10,num_display_entries:11,current_page:0,num_edge_entries:0,link_to:"#",prev_text:"Prev",next_text:"Next",ellipse_text:"...",prev_show_always:!0,next_show_always:!0,renderer:"defaultRenderer",show_if_single_page:!1,load_first_page:!0,callback:function(){return!1}},n||{});var r=this,i,s,o;o=parseInt(n.current_page),r.data("current_page",o),t=!t||t<0?1:t,n.items_per_page=!n.items_per_page||n.items_per_page<0?1:n.items_per_page;if(!e.PaginationRenderers[n.renderer])throw new ReferenceError("Pagination renderer '"+n.renderer+"' was not found in jQuery.PaginationRenderers object.");i=new e.PaginationRenderers[n.renderer](t,n);var f=new e.PaginationCalculator(t,n),l=f.numPages();r.bind("setPage",{numPages:l},function(e,t){if(t>=0&&t<e.data.numPages)return a(t),!1}),r.bind("prevPage",function(t){var n=e(this).data("current_page");return n>0&&a(n-1),!1}),r.bind("nextPage",{numPages:l},function(t){var n=e(this).data("current_page");return n<t.data.numPages-1&&a(n+1),!1}),s=i.getLinks(o,u),r.empty(),(l>1||n.show_if_single_page)&&s.appendTo(r),n.load_first_page&&n.callback(o,r)}})(jQuery)}),define("app/pelagios",["jquery","app/util","app/search_map","app/place_map","lib/text!template/widget_container.tmpl","lib/text!template/place.tmpl","lib/text!template/section.tmpl","lib/text!template/flickr.tmpl","lib/text!template/pleiades.tmpl","lib/text!template/pelagios_partner.tmpl","lib/text!template/error.tmpl","lib/text!template/search.tmpl","lib/text!template/annotations.tmpl","lib/text!template/search_results.tmpl","lib/text!template/new_tab.tmpl","lib/text!template/about.tmpl","lib/text!app/dataset.json","jqueryui","lib/jquery_pagination"],function($,util,search_map,place_map,widget_container_tmpl,place_tmpl,section_tmpl,flickr_tmpl,pleiades_tmpl,pelagios_partner_tmpl,error_tmpl,search_tmpl,annotations_tmpl,search_results_tmpl,new_tab_tmpl,about_tmpl,datasetJSON){function Widget(widgetContext){function widgetPopUp(){if(widgetContext.newTab){var e=window.open(),t=Handlebars.templates.new_tab({widgetContext:widgetContext});$(e.document.body).html(t);var n=document.createElement("script");n.type="text/javascript",n.src=widgetContext.baseURL+"lib/require.js",e.document.head.appendChild(n);var r=document.createElement("script");r.type="text/javascript",r.src=widgetContext.baseURL+"place.js",e.document.head.appendChild(r)}else{$(".pelagios .container").hide(),$("#"+widgetContext.widgetID+"-container").show();var i=$("#"+widgetContext.widgetID+"-icon").offset(),s={top:$(window).scrollTop(),left:200};$("#"+widgetContext.widgetID+"-container").offset(s),widgetContext.displayMap&&placeMap.hasOwnProperty("refresh")&&placeMap.refresh()}}function displayPlace(e){debug("DISPLAYING PLACE: pleiadesID: "+e),placeMap={},clearPlace(),showPleiadesData(e),widgetContext.type=="place"&&showAboutInformation(),showPelagiosData(e),showFlickrData(e)}function showAboutInformation(){addSection("about","About Pelagios and this widget",widgetContext.imageDir+"partner_icons/pelagios.png","");var e=Handlebars.templates.about();$("#"+widgetContext.widgetID+"-content-about").append(e)}function clearPlace(){$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty()}function showFlickrData(e){function r(t){if(t.hasOwnProperty("photos")&&t.photos.hasOwnProperty("photo")&&t.photos.photo.length>0){addSection("flickr","flickr",widgetContext.imageDir+"icons/flickr-logo.png","Photo sharing website");var n={photo:t.photos.photo.slice(0,config.MAX_PHOTOS_FLICKR-1),pleiadesID:e},r=Handlebars.templates.flickr(n);$("#"+widgetContext.widgetID+"-content-flickr").append(r)}}var t="";widgetContext.pleiadesFlickrGroupOnly&&(t="&group_id=1876758@N22");var n=config.URL_FLICKR_SEARCH+"&machine_tags=pleiades:depicts="+e+t+"&tag_mode=all&api_key="+config.API_KEY_FLICKR+"&jsoncallback=?";util.getAPIData(n,r,!1,config.TIMEOUT_FLICKR,!1)}function showPleiadesData(e){function r(e,t,n){$("#"+widgetContext.widgetID+"-content").empty();if(e.status=="404")var r={title:config.MSG_TITLE_PLACE_NOT_FOUND,msg:config.MSG_PLACE_NOT_FOUND};else var r={title:config.MSG_TITLE_PLEIADES_TIMEOUT,msg:config.MSG_PLEIADES_TIMEOUT};var i=Handlebars.templates.error(r);$("#"+widgetContext.widgetID+"-content").append(i)}function i(e){var t=!1;e.names.length>1&&(t=e.names.join(", "));var n={title:e.names[0]?e.names[0]:"Untitled",description:e.description,altNames:t,pleiadesID:e.id,widgetContext:widgetContext},r=Handlebars.templates.pleiades(n);$("#"+widgetContext.widgetID+"-pleiades").append(r),e.reprPoint!=null&&widgetContext.displayMap&&(placeMap=new place_map.PlaceMap(widgetContext.widgetID+"-map_canvas"),placeMap.setMarker(e.reprPoint,e.names[0])),e.reprPoint==null&&(placeMap=null),showPlace()}var t=config.URL_PLEIADES+e,n=config.URL_PLEIADES+e+"/json";util.getAPIData(n,i,r,config.TIMEOUT_PLEIADES,!0)}function showPelagiosData(e){function n(e){$.each(e,function(n,i){i.hasOwnProperty("root_dataset")&&(i=i.root_dataset);var s;rootDatasetID=i.uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),s=getDatasetInfo(rootDatasetID);if(typeof s!="undefined"){addSection(rootDatasetID,s.title,widgetContext.iconDir+s.iconFileName,s.strapline);var o=new Array;if(typeof i.subsets!="undefined")for(var u=0;u<i.subsets.length;u++)o[u]={},o[u].widgetContext=widgetContext,o[u].title=i.subsets[u].title,o[u].id=i.subsets[u].uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),o[u].references=i.subsets[u].annotations_referencing_place,o[u].multipleReferences=o[u].references>1?!0:!1,o[u].anyReferences=o[u].references>0?!0:!1;else o[0]={},o[0].widgetContext=widgetContext,o[0].title=i.title,o[0].id=rootDatasetID,o[0].references=e[n].annotations_referencing_place,o[0].multipleReferences=o[0].references>1?!0:!1;var a={subdataset:o,rootDatasetID:rootDatasetID,widgetContext:widgetContext},f=Handlebars.templates.pelagios_partner(a);$("#"+widgetContext.widgetID+"-content-"+rootDatasetID).append(f),$("#"+widgetContext.widgetID+"-subdatasets-"+rootDatasetID).css("list-style-image","url("+widgetContext.imageDir+"icons/bullet.png)");for(var u=0;u<o.length;u++)r(o[u])}else debug("ERROR: Could not find info for root dataset "+i.title+" "+t)})}function r(e){$("#"+widgetContext.widgetID+"-subdataset_title-"+e.id).click({id:e.id},o),$("#"+widgetContext.widgetID+"-subdataset_content-"+e.id).hide();var t=function(t){i(t,e.id)};$("#"+widgetContext.widgetID+"-subdataset_pagination-"+e.id).pagination(e.references,{items_per_page:config.NUM_ANNOTATIONS_TO_DISPLAY,callback:t,next_show_always:!1,prev_show_always:!1}),i(0,e.id)}function i(t,n){var r=config.URL_PELAGIOS_API_V2+"datasets/"+n+"/annotations.json?forPlace="+encodeURIComponent(config.URL_PLEIADES+e)+"&limit="+config.NUM_ANNOTATIONS_TO_DISPLAY+"&offset="+t*config.NUM_ANNOTATIONS_TO_DISPLAY+"&callback=?",i=function(e){typeof e.annotations!="undefined"&&e.annotations.length>0&&s(e.annotations,n)};return util.getAPIData(r,i),!1}function s(e,t){var n=new Array;$.each(e,function(e,t){n[e]={},t.hasOwnProperty("target_title")?n[e].label=t.target_title:n[e].label=t.title?t.title:"Item "+(e+1),n[e].uri=t.hasTarget});var r={subdatasetID:t,annotation:n,widgetContext:widgetContext},i=Handlebars.templates.annotations(r);$("#"+widgetContext.widgetID+"-annotations-"+t).empty(),$("#"+widgetContext.widgetID+"-annotations-"+t).append(i),$("#"+widgetContext.widgetID+"-subdataset-"+t).focus()}function o(e){var t=e.data.id;toggleSelectedLink(widgetContext.widgetID+"-subdataset_hits-"+t),$("#"+widgetContext.widgetID+"-subdataset_content-"+t).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-subdataset-"+t)}function u(e){$("#"+widgetID+"-subdataset_content-"+e).hide()}var t=config.URL_PELAGIOS_API_V2+"places/"+encodeURIComponent(config.URL_PLEIADES+e)+"/datasets.json?callback=?";util.getAPIData(t,n,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResults(){var e=config.URL_PELAGIOS_API_V2+"search.json?query="+searchString+"&callback=?";debug("RETRIEVING SEARCH DATA: searchString: "+searchString+" URL:"+e),util.getAPIData(e,displaySearchResultsData,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResultsData(e){$("#"+widgetContext.widgetID+"-search-map").empty(),$("#"+widgetContext.widgetID+"-search-results").empty(),$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty();if(e.length>0){var t=new Array;$.each(e,function(e,n){place={},place.label=n.label,place.pleiadesID=n.uri.replace(/.*places.*F/g,""),place.geojson=n,n.feature_type&&(place.feature_type=n.feature_type.replace(/.*place-types\//g,"")),place.content="<h2>"+place.label+"</h2>",place.content+='<p id="'+widgetContext.widgetID+"-info-"+place.pleiadesID+'">View info</p>',place.widgetID=widgetContext.widgetID,t[e]=place});var n={place:t,widgetContext:widgetContext,searchString:searchString},r=Handlebars.templates.search_results(n);$("#"+widgetContext.widgetID+"-search-results").append(r),$(".pelagios .list-results li").css("background-image","url("+widgetContext.imageDir+"place_type_icons/unknown.png)");var i={temple:"temple.png",santuary:"sanctuary.png",river:"river.png","water-open":"river.png",mountain:"mountain.png",island:"island.png",tribe:"tribe.png",settlement:"settlement.png",urban:"settlement.png",people:"people.png",aqueduct:"aqueduct.png",cape:"cape.png",mine:"mine.png",station:"port.png",road:"road.png",villa:"villa.png",wall:"wall.png",province:"people.png"};$.each(i,function(e,t){$(".pelagios .list-results li."+e).css("background-image","url("+widgetContext.imageDir+"place_type_icons/"+t+")")}),widgetContext.displayMap&&(searchMap=new search_map.SearchMap(widgetContext.widgetID+"-search-map_canvas")),$.each(t,function(e,t){widgetContext.displayMap&&searchMap.addMarker(t.geojson,t.label,t.content,function(){s(t.pleiadesID)}),$("#"+widgetContext.widgetID+"-place-"+t.pleiadesID).click(function(){s(t.pleiadesID)})});function s(e){$(".pelagios-search-result-list li").css("text-decoration","none"),$(".pelagios-search-result-list li").css("font-weight","normal"),$("#"+widgetContext.widgetID+"-place-"+e).css("text-decoration","underline"),$("#"+widgetContext.widgetID+"-place-"+e).css("font-weight","bold"),displayPlace(e)}showSearchResults()}else $("#"+widgetContext.widgetID+"-search-results").append("<h3 class='no-search-results'>No matches found for '"+searchString+"'</h3>"),$("#"+widgetContext.widgetID+"-search-results").show()}function hideSearchResults(){$("#"+widgetContext.widgetID+"-search-results-map").hide(),$("#"+widgetContext.widgetID+"-search-results").hide()}function showSearchResults(){widgetContext.displayMap&&($("#"+widgetContext.widgetID+"-search-results-map").show(),searchMap.refresh()),$("#"+widgetContext.widgetID+"-search-results").show()}function hidePlace(){$("#"+widgetContext.widgetID+"-map").hide(),$("#"+widgetContext.widgetID+"-place").hide()}function showPlace(){$("#"+widgetContext.widgetID+"-place").show(),widgetContext.displayMap&&placeMap!=null&&($("#"+widgetContext.widgetID+"-map").show(),placeMap.refresh()),placeMap==null&&$("#"+widgetContext.widgetID+"-map").hide()}function addSection(e,t,n,r){var i={name:e,title:t,iconURL:n,strapline:r,widgetContext:widgetContext},s=Handlebars.templates.section(i);$("#"+widgetContext.widgetID+"-sections").append(s),$("#"+widgetContext.widgetID+"-content-"+e).hide(),$("#"+widgetContext.widgetID+"-header-"+e).click(function(){$("#"+widgetContext.widgetID+"-content-"+e).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-"+e)})}function toggleIcon(e){var t=$("#"+e).attr("src"),n=t==widgetContext.imageDir+"icons/down-arrow.png"?widgetContext.imageDir+"icons/right-arrow.png":widgetContext.imageDir+"icons/down-arrow.png";$("#"+e).attr("src",n)}function toggleSelectedLink(e){var t=$("#"+e),n=t.css("text-decoration"),r=n=="underline"?"none":"underline";t.css("text-decoration",r)}function getDatasetInfo(e){var t;return $.each(dataset,function(e,n){n.id==rootDatasetID&&(t=n)}),t}function debug(e){widgetContext.debug&&console.log(e)}var placeMap={},searchMap={},searchString="";eval(widget_container_tmpl),eval(place_tmpl),eval(section_tmpl),eval(flickr_tmpl),eval(pleiades_tmpl),eval(pelagios_partner_tmpl),eval(error_tmpl),eval(search_tmpl),eval(annotations_tmpl),eval(search_results_tmpl),eval(new_tab_tmpl),eval(about_tmpl);var dataset=$.parseJSON(datasetJSON);typeof $("#"+widgetContext.widgetID)==undefined&&debug("ERROR: $(#"+widgetContext.widgetID+") is undefined"),$("head").append('<link rel="stylesheet" type="text/css" href="'+widgetContext.cssDir+'pelagios.css" media="screen" />');var html=Handlebars.templates.widget_container({widgetContext:widgetContext});$("#"+widgetContext.widgetID).append(html),$(".pelagios .container").width(widgetContext.containerWidth);try{$("#"+widgetContext.widgetID+"-container").draggable()}catch(err){debug("ERROR: Could not make widget draggable")}this.setTypePlace=function(){var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),widgetContext.icon==1&&($("#"+widgetContext.widgetID+"-container").hide(),$("#"+widgetContext.widgetID+"-icon").click(widgetPopUp),widgetContext.onMouseOver&&($("#"+widgetContext.widgetID+"-icon").mouseover(widgetPopUp),$(document).click(function(){$("#"+widgetContext.widgetID+"-container").hide()}),$("#"+widgetContext.widgetID).click(function(e){return e.stopPropagation(),!1})),$("#"+widgetContext.widgetID+"-close-widget").click(function(){$("#"+widgetContext.widgetID+"-container").hide()})),displayPlace(widgetContext.pleiadesID)},this.setTypeSearch=function(){var e=Handlebars.templates.search({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e);var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),hideSearchResults(),$("#"+widgetContext.widgetID+"-search-form").submit(function(){return searchString=$("input:first").val(),displaySearchResults(),!1})}}var config={URL_PELAGIOS_API_V2:"http://pelagios.dme.ait.ac.at/api/",API_KEY_FLICKR:"ddf82df2aba035bfcf14c12a4eff3335",TIMEOUT_PLEIADES:6e3,TIMEOUT_PELAGIOS:6e4,TIMEOUT_FLICKR:6e3,URL_PLEIADES:"http://pleiades.stoa.org/places/",URL_FLICKR_SEARCH:"http://api.flickr.com/services/rest/?format=json&method=flickr.photos.search",MAX_PHOTOS_FLICKR:30,MSG_PLACE_NOT_FOUND:"The place specified for this widget does not exist in the Pleiades gazetteer.",MSG_TITLE_PLACE_NOT_FOUND:"Error: Unknown Place",MSG_PLEIADES_TIMEOUT:"We cannot display the place name and map at the moment because the Pleiades website is not responding. Apologies for the inconvenience and please try again later.",MSG_TITLE_PLEIADES_TIMEOUT:"Error: Pleiades not responding",NUM_ANNOTATIONS_TO_DISPLAY:20};return{Widget:Widget}});var Handlebars={};Handlebars.VERSION="1.0.beta.2",Handlebars.helpers={},Handlebars.partials={},Handlebars.registerHelper=function(e,t,n){n&&(t.not=n),this.helpers[e]=t},Handlebars.registerPartial=function(e,t){this.partials[e]=t},Handlebars.registerHelper("helperMissing",function(e){if(arguments.length===2)return undefined;throw new Error("Could not find property '"+e+"'")}),Handlebars.registerHelper("blockHelperMissing",function(e,t){var n=t.inverse||function(){},r=t.fn,i="",s=Object.prototype.toString.call(e);s==="[object Function]"&&(e=e());if(e===!0)return r(this);if(e===!1||e==null)return n(this);if(s==="[object Array]"){if(e.length>0)for(var o=0,u=e.length;o<u;o++)i+=r(e[o]);else i=n(this);return i}return r(e)}),Handlebars.registerHelper("each",function(e,t){var n=t.fn,r=t.inverse,i="";if(e&&e.length>0)for(var s=0,o=e.length;s<o;s++)i+=n(e[s]);else i=r(this);return i}),Handlebars.registerHelper("if",function(e,t){return!e||Handlebars.Utils.isEmpty(e)?t.inverse(this):t.fn(this)}),Handlebars.registerHelper("unless",function(e,t){var n=t.fn,r=t.inverse;return t.fn=r,t.inverse=n,Handlebars.helpers["if"].call(this,e,t)}),Handlebars.registerHelper("with",function(e,t){return t.fn(e)}),Handlebars.Exception=function(e){var t=Error.prototype.constructor.apply(this,arguments);for(var n in t)t.hasOwnProperty(n)&&(this[n]=t[n])},Handlebars.Exception.prototype=new Error,Handlebars.SafeString=function(e){this.string=e},Handlebars.SafeString.prototype.toString=function(){return this.string.toString()},function(){var e={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},t=/&(?!\w+;)|[<>"'`]/g,n=/[&<>"'`]/,r=function(t){return e[t]||"&amp;"};Handlebars.Utils={escapeExpression:function(e){return e instanceof Handlebars.SafeString?e.toString():e==null||e===!1?"":n.test(e)?e.replace(t,r):e},isEmpty:function(e){return typeof e=="undefined"?!0:e===null?!0:e===!1?!0:Object.prototype.toString.call(e)==="[object Array]"&&e.length===0?!0:!1}}}(),Handlebars.VM={template:function(e){var t={escapeExpression:Handlebars.Utils.escapeExpression,invokePartial:Handlebars.VM.invokePartial,programs:[],program:function(e,t,n){var r=this.programs[e];return n?Handlebars.VM.program(t,n):r?r:(r=this.programs[e]=Handlebars.VM.program(t),r)},programWithDepth:Handlebars.VM.programWithDepth,noop:Handlebars.VM.noop};return function(n,r){return r=r||{},e.call(t,Handlebars,n,r.helpers,r.partials,r.data)}},programWithDepth:function(e,t,n){var r=Array.prototype.slice.call(arguments,2);return function(n,i){return i=i||{},e.apply(this,[n,i.data||t].concat(r))}},program:function(e,t){return function(n,r){return r=r||{},e(n,r.data||t)}},noop:function(){return""},invokePartial:function(e,t,n,r,i){if(e===undefined)throw new Handlebars.Exception("The partial "+t+" could not be found");if(e instanceof Function)return e(n,{helpers:r,partials:i});if(!Handlebars.compile)throw new Handlebars.Exception("The partial "+t+" could not be compiled when running in vm mode");return i[t]=Handlebars.compile(e),i[t](n,{helpers:r,partials:i})}},Handlebars.template=Handlebars.VM.template,define("lib/handlebars",function(){});if(!PELAGIOS_PLACE_MAIN_JS_RUN){var PELAGIOS_PLACE_MAIN_JS_RUN=!0;(function(){var e=document.getElementsByTagName("script"),t=e[e.length-1].src,n=t.replace(/place.js/g,"");require.config({paths:{jquery:"http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min",jqueryui:"https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min"},priority:["jquery"],jQuery:"1.7.1",waitSeconds:5,baseUrl:n,shim:{jqueryui:{deps:["jquery"]},"lib/jquery_pagination":{deps:["jquery"]}}}),require(["app/pelagios","app/util","lib/handlebars"],function(e,t){var r=window.jQuery.noConflict(!0);r(document).ready(function(r){var i=!0;if(i){var s="FINDING PLACE WIDGETS ON PAGE: ";r(".pelagios-place").each(function(){s+=" "+r(this).attr("id")}),r(".pelagios-place").length==0&&console.log("No Pelagios widget HTML on this web page. If the HTML is added via Javascript please make sure it has added before the Pelagios javascript is run.")}r(".pelagios-place").length>0&&r(".pelagios-place").each(function(){var i={baseURL:n,widgetID:r(this).attr("id"),pleiadesID:r(this).attr("data-pleiades_id"),displayMap:r(this).attr("data-display_map")?r(this).attr("data-display_map")!=="false":!0,onMouseOver:r(this).attr("data-mouseover")?r(this).attr("data-mouseover")==="true":!1,debug:r(this).attr("data-debug")?r(this).attr("data-debug")==="true":!1,icon:r(this).attr("data-icon")?r(this).attr("data-icon")==="true":!0,newTab:r(this).attr("data-new_tab")?r(this).attr("data-new_tab")==="true":!1,templateDir:n+"template/",imageDir:n+"images/",iconDir:n+"images/partner_icons/",scriptDir:n+"scripts/",cssDir:n+"css/",containerWidth:"550",mapWidth:"425",pleiadesFlickrGroupOnly:!1,type:"place"};t.includesGoogleMaps2()&&(i.displayMap=!1),i.debug&&console.log("CREATING WIDGET pleiadesID:"+i.pleiadesID+" widgetID:"+i.widgetID+" baseURL:"+i.baseURL),widget=new e.Widget(i),widget.setTypePlace()})})})})()}define("place",function(){}) 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/search.js

    r583489 r1156983  
    3636 */ 
    3737 
    38 define("app/util",["jquery"],function(e){function t(e){var t=e.replace(/ /g,"");return t=t.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()]/g,""),t}function n(){return typeof GMap2!="undefined"}function r(t,n,r,i,s){var o={type:"POST",dataType:"json",timeout:i,success:n,error:r};r||(o.error=function(e,n,r){console.log("ERROR: Call to "+t+" failed: "+n),console.log(e)});if(!s)e.ajax(t,o);else{try{var u=new XMLHttpRequest}catch(r){var u={}}if("withCredentials"in u)e.ajax(t,o);else if(typeof XDomainRequest!="undefined"){var a=new XDomainRequest;a.timeout=i,a.open("get",t),a.onload=function(){n(e.parseJSON(a.responseText),"",a)},a.onerror=r,a.send()}}}return{createID:t,includesGoogleMaps2:n,getAPIData:r}}),define("app/loadGMaps",[],function(){function t(){if(e!=null)return e;e=typeof GMap2=="undefined"}var e;return{load:function(e,n,r,i){i.isBuild||t()?r(null):window.setTimeout(function(){n([e],r)},500)}}}),define("app/search_map",["app/loadGMaps!lib/async!http://maps.google.com/maps/api/js?sensor=false"],function(){function e(e){if(!document.getElementById(e))throw Error("ERROR: Invalid ID for search map");try{var t=new google.maps.Map(document.getElementById(e),{mapTypeId:google.maps.MapTypeId.TERRAIN})}catch(n){console.log("ERROR: Failed to create Google Map for element id "+e+" : "+n)}var r=new google.maps.LatLngBounds,i=new google.maps.InfoWindow;this.refresh=function(){google.maps.event.trigger(t,"resize"),t.fitBounds(r)},this.addMarker=function(e,n,s,o){if(e.hasOwnProperty("geometry")&&e.geometry!=null&&e.geometry.hasOwnProperty("type")&&e.geometry.type=="Point"){var u=new google.maps.LatLng(e.geometry.coordinates[1],e.geometry.coordinates[0]),a=new google.maps.Marker({position:u,map:t,title:n});r.extend(u),google.maps.event.addListener(a,"click",function(){return function(){i.close(),i.setContent(s),i.open(t,a),o()}}())}}}return{SearchMap:e}}),define("app/place_map",["app/loadGMaps!lib/async!http://maps.google.com/maps/api/js?sensor=false"],function(){function e(e){if(!document.getElementById(e))throw Error("ERROR: Invalid ID for place map");try{var t=new google.maps.Map(document.getElementById(e),{zoom:8,mapTypeId:google.maps.MapTypeId.TERRAIN})}catch(n){console.log("ERROR: Failed to crate Google map for element id "+e+" : "+n)}try{var r=new google.maps.Marker({map:t})}catch(n){console.log("ERROR: Failed to create Google Map marker : "+n)}this.refresh=function(){try{google.maps.event.trigger(t,"resize")}catch(e){console.log("ERROR: Failed to resize Google map :"+e)}try{t.setCenter(r.getPosition())}catch(e){console.log("ERROR: Failed to center Google Map : "+e)}},this.setMarker=function(e,n){try{var i=new google.maps.LatLng(e[1],e[0])}catch(s){console.log("ERROR: Failed to create Google Maps location : "+s)}try{r.setPosition(i)}catch(s){console.log("ERROR: Failed to set marker position : "+s)}try{r.setTitle(n)}catch(s){console.log("ERROR: Failed to set marker title : "+s)}try{t.setCenter(i)}catch(s){console.log("ERROR: Failed to center Google Map : "+s)}try{google.maps.event.trigger(t,"resize")}catch(s){console.log("ERROR: Failed to resize Google Map : "+s)}}}return{PlaceMap:e}}),define("lib/text",["module"],function(e){var t=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],n=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,r=/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im,i=typeof location!="undefined"&&location.href,s=i&&location.protocol&&location.protocol.replace(/\:/,""),o=i&&location.hostname,u=i&&(location.port||undefined),a=[],f=e.config(),l,c;return l={version:"2.0.0",strip:function(e){if(e){e=e.replace(n,"");var t=e.match(r);t&&(e=t[1])}else e="";return e},jsEscape:function(e){return e.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r")},createXhr:function(){var e,n,r;if(typeof XMLHttpRequest!="undefined")return new XMLHttpRequest;if(typeof ActiveXObject!="undefined")for(n=0;n<3;n++){r=t[n];try{e=new ActiveXObject(r)}catch(i){}if(e){t=[r];break}}return e},parseName:function(e){var t=!1,n=e.indexOf("."),r=e.substring(0,n),i=e.substring(n+1,e.length);return n=i.indexOf("!"),n!==-1&&(t=i.substring(n+1,i.length),t=t==="strip",i=i.substring(0,n)),{moduleName:r,ext:i,strip:t}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(e,t,n,r){var i=l.xdRegExp.exec(e),s,o,u;return i?(s=i[2],o=i[3],o=o.split(":"),u=o[1],o=o[0],(!s||s===t)&&(!o||o===n)&&(!u&&!o||u===r)):!0},finishLoad:function(e,t,n,r){n=t?l.strip(n):n,f.isBuild&&(a[e]=n),r(n)},load:function(e,t,n,r){if(r.isBuild&&!r.inlineText){n();return}f.isBuild=r.isBuild;var a=l.parseName(e),c=a.moduleName+"."+a.ext,h=t.toUrl(c),p=f.useXhr||l.useXhr;!i||p(h,s,o,u)?l.get(h,function(t){l.finishLoad(e,a.strip,t,n)},function(e){n.error&&n.error(e)}):t([c],function(e){l.finishLoad(a.moduleName+"."+a.ext,a.strip,e,n)})},write:function(e,t,n,r){if(a.hasOwnProperty(t)){var i=l.jsEscape(a[t]);n.asModule(e+"!"+t,"define(function () { return '"+i+"';});\n")}},writeFile:function(e,t,n,r,i){var s=l.parseName(t),o=s.moduleName+"."+s.ext,u=n.toUrl(s.moduleName+"."+s.ext)+".js";l.load(o,n,function(t){var n=function(e){return r(u,e)};n.asModule=function(e,t){return r.asModule(e,u,t)},l.write(e,o,n,i)},i)}},typeof process!="undefined"&&process.versions&&!!process.versions.node?(c=require.nodeRequire("fs"),l.get=function(e,t){var n=c.readFileSync(e,"utf8");n.indexOf("")===0&&(n=n.substring(1)),t(n)}):l.createXhr()?l.get=function(e,t,n){var r=l.createXhr();r.open("GET",e,!0),f.onXhr&&f.onXhr(r,e),r.onreadystatechange=function(i){var s,o;r.readyState===4&&(s=r.status,s>399&&s<600?(o=new Error(e+" HTTP status: "+s),o.xhr=r,n(o)):t(r.responseText))},r.send(null)}:typeof Packages!="undefined"&&(l.get=function(e,t){var n="utf-8",r=new java.io.File(e),i=java.lang.System.getProperty("line.separator"),s=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(r),n)),o,u,a="";try{o=new java.lang.StringBuffer,u=s.readLine(),u&&u.length()&&u.charAt(0)===65279&&(u=u.substring(1)),o.append(u);while((u=s.readLine())!==null)o.append(i),o.append(u);a=String(o.toString())}finally{s.close()}t(a)}),l}),define("lib/text!template/widget_container.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'widget_container\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n        <a href=\\"\\" class=\\"close\\">\\r\\n        <img src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "images/icons/close-button.png\\" alt=\\"Close Pelagios information\\" />\\r\\n        </a>    \\r\\n        ";\n  return buffer;}\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<img id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-icon\\" class=\\"icon\\" src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "images/icons/pelagios.png\\" alt=\\"Information about this place from Pelagios partners\\"/> \\r\\n";\n  return buffer;}\n\n  buffer += "<div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-container\\" class=\\"container\\">    \\r\\n    <div class=\\"header\\"> \\r\\n        <img class=\\"logo\\" src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.imageDir);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.imageDir", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "icons/pelagios-logo.png\\" alt=\\"View Pelagios infromation\\"/>    \\r\\n        ";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.icon);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n    </div>    \\r\\n    <div class=\\"content-wrapper\\">\\r\\n        <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-content\\">\\r\\n        </div>\\r\\n        <div class=\\"footer\\"></div>                           \\r\\n    </div>\\r\\n</div>    \\r\\n";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.icon);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(3, program3, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "  ";\n  return buffer;});\n})();'}),define("lib/text!template/place.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'place\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-pleiades\\">    \\r\\n</div>    \\r\\n<div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-sections\\"></div>   \\r\\n\\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/section.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'section\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<div class=\\"section\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-";\n  foundHelper = helpers.name;\n  stack1 = foundHelper || depth0.name;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n<div class=\\"section-header\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-header-";\n  foundHelper = helpers.name;\n  stack1 = foundHelper || depth0.name;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n<img src=\\"";\n  foundHelper = helpers.iconURL;\n  stack1 = foundHelper || depth0.iconURL;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "iconURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"section-icon\\" alt=\\"\\" />\\r\\n<h2>";\n  foundHelper = helpers.title;\n  stack1 = foundHelper || depth0.title;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</h2>\\r\\n<img class=\\"section-toggle\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-toggle-";\n  foundHelper = helpers.name;\n  stack1 = foundHelper || depth0.name;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" \\r\\n     src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "images/icons/right-arrow.png\\" alt=\\"Toggle section\\"/>\\r\\n<p class=\\"section-strapline\\">";\n  foundHelper = helpers.strapline;\n  stack1 = foundHelper || depth0.strapline;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "strapline", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</p>\\r\\n</div>\\r\\n<div class=\\"section-content\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-content-";\n  foundHelper = helpers.name;\n  stack1 = foundHelper || depth0.name;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n</div></div>\\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/flickr.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'flickr\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<a href=\\"http://www.flickr.com/photos/";\n  stack1 = depth0.owner;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.owner", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "/";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" target=\\"_blank\\">\\r\\n<img src=\\"http://farm";\n  stack1 = depth0.farm;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.farm", { hash: {} }); }\n  buffer += escapeExpression(stack1) + ".staticflickr.com/";\n  stack1 = depth0.server;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.server", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "/";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "_";\n  stack1 = depth0.secret;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.secret", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "_t.jpg\\" alt=\\"";\n  foundHelper = helpers.pthis;\n  stack1 = foundHelper || depth0.pthis;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.title);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pthis.title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" />\\r\\n</a>\\r\\n";\n  return buffer;}\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<p><a href=\\"http://www.flickr.com/groups/pleiades-places/pool/tags/pleiades%3Adepicts%3D";\n  foundHelper = helpers.pleiadesID;\n  stack1 = foundHelper || depth0.pleiadesID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "/\\" target=\\"_blank\\">View all ";\n  foundHelper = helpers.photo;\n  stack1 = foundHelper || depth0.photo;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.length);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "photo.length", { hash: {} }); }\n  buffer += escapeExpression(stack1) + " photos on flickr</a></p>\\r\\n";\n  return buffer;}\n\nfunction program5(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<p><a href=\\"http://www.flickr.com/photos/tags/pleiades%3Adepicts%3D";\n  foundHelper = helpers.pleiadesID;\n  stack1 = foundHelper || depth0.pleiadesID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "/\\" target=\\"_blank\\">View all ";\n  foundHelper = helpers.photo;\n  stack1 = foundHelper || depth0.photo;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.length);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "photo.length", { hash: {} }); }\n  buffer += escapeExpression(stack1) + " photos on flickr</a></p>\\r\\n";\n  return buffer;}\n\n  foundHelper = helpers.photo;\n  stack1 = foundHelper || depth0.photo;\n  stack2 = helpers.each;\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(3, program3, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly);\n  stack2 = helpers.unless;\n  tmp1 = self.program(5, program5, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n<p>The flickr photos shown here are those which have been given a <a href=\\"http://www.flickr.com/groups/pleiades-places/discuss/72157628435317307/\\">Pleiades machine tag specifying this place.</a></p>\\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/pleiades.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'pleiades\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n    <p>Some alternative names: ";\n  foundHelper = helpers.altNames;\n  stack1 = foundHelper || depth0.altNames;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "altNames", { hash: {} }); }\n  buffer += escapeExpression(stack1) + " (the results below are for all alternative names)</p>  \\r\\n    ";\n  return buffer;}\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += " \\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-map\\">    \\r\\n        <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-map_canvas\\" style=\\"width:425px; height:200px\\"></div>\\r\\n    </div>   \\r\\n    ";\n  return buffer;}\n\n  buffer += " <h1 id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-title\\" class=\\"pelagios-title\\">";\n  foundHelper = helpers.title;\n  stack1 = foundHelper || depth0.title;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</h1>    \\r\\n<div class=\\"section-content\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-pleiades\\">\\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-description\\"><p>";\n  foundHelper = helpers.description;\n  stack1 = foundHelper || depth0.description;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "description", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</p>\\r\\n    ";\n  foundHelper = helpers.altNames;\n  stack1 = foundHelper || depth0.altNames;\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n    ";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.displayMap);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(3, program3, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n    <p><img src=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "images/icons/pleiades.png\\"  class=\\"pleiades-icon\\" />\\r\\n    <a href=\\"http://pleiades.stoa.org/places/";\n  foundHelper = helpers.pleiadesID;\n  stack1 = foundHelper || depth0.pleiadesID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" target=\\"_blank\\">Entry in the Pleiades Gazetteer</a></p>    \\r\\n</div>";\n  return buffer;});\n})();'}),define("lib/text!template/pelagios_partner.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'pelagios_partner\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1, stack2;\n  buffer += "\\r\\n\\r\\n<li id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n<span id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset_title-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n    ";\n  stack1 = depth0.title;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\r\\n    <span id =\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset_hits-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"link\\">\\r\\n    ";\n  stack1 = depth0.references;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.references", { hash: {} }); }\n  buffer += escapeExpression(stack1) + " hit";\n  stack1 = depth0.multipleReferences;\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(2, program2, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n    </span>\\r\\n    <img id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-toggle-subdataset-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" \\r\\n         src = \\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.imageDir);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.imageDir", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "icons/right-arrow.png\\"  /> \\r\\n</span>\\r\\n    <div id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset_content-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n\\r\\n        <div id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-annotations-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"annotations\\">\\r\\n        </div>\\r\\n        <div id=\\"";\n  stack1 = depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdataset_pagination-";\n  stack1 = depth0.id;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"subdataset_pagination\\">\\r\\n        </div>\\r\\n    </div>\\r\\n</li>\\r\\n\\r\\n";\n  return buffer;}\nfunction program2(depth0,data) {\n  \n  \n  return "s";}\n\n  buffer += "<ul class=\\"subdatasets\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-subdatasets-";\n  foundHelper = helpers.rootDatasetID;\n  stack1 = foundHelper || depth0.rootDatasetID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "rootDatasetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n";\n  foundHelper = helpers.subdataset;\n  stack1 = foundHelper || depth0.subdataset;\n  stack2 = helpers.each;\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "  \\r\\n</ul>         ";\n  return buffer;});\n})();'}),define("lib/text!template/error.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'error\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<h1 id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-title\\" class=\\"pelagios-title\\">";\n  foundHelper = helpers.title;\n  stack1 = foundHelper || depth0.title;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</h1> \\r\\n<p>";\n  foundHelper = helpers.msg;\n  stack1 = foundHelper || depth0.msg;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "msg", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</p>  \\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/search.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'search\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<h1 id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-title\\" class=\\"pelagios-title\\">Search for places</h1>    \\r\\n    <form id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-form\\" class=\\"search-form\\">\\r\\n        <input type=\\"text\\" size=\\"40\\"/>\\r\\n        <input id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-string\\" type=\\"submit\\" value=\\"Search\\"/>\\r\\n    </form>\\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-results\\">\\r\\n    </div> \\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-place\\">\\r\\n    </div>\\r\\n \\r\\n  \\r\\n \\r\\n";\n  return buffer;});\n})();'}),define("lib/text!template/annotations.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'annotations\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<li><a href=\\"";\n  stack1 = depth0.uri;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.uri", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" target=\\"_blank\\">";\n  stack1 = depth0.label;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.label", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</a></li>\\r\\n";\n  return buffer;}\n\n  buffer += "<ul class=\\"annotations\\" id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-annotations-";\n  foundHelper = helpers.subdatasetID;\n  stack1 = foundHelper || depth0.subdatasetID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "subdatasetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">\\r\\n";\n  foundHelper = helpers.annotation;\n  stack1 = foundHelper || depth0.annotation;\n  stack2 = helpers.each;\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n</ul>";\n  return buffer;});\n})();'}),define("lib/text!template/search_results.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'search_results\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += " \\r\\n<div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-results-map\\" class=\\"search-map\\">\\r\\n    <p>Geographic Results for: <strong>";\n  foundHelper = helpers.searchString;\n  stack1 = foundHelper || depth0.searchString;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "searchString", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</strong></p>\\r\\n    <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-search-map_canvas\\" style=\\"width:425px; height:200px\\"></div>\\r\\n</div>  \\r\\n";\n  return buffer;}\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<li id=\\"";\n  stack1 = depth0.widgetID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "-place-";\n  stack1 = depth0.pleiadesID;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" class=\\"link ";\n  stack1 = depth0.feature_type;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.feature_type", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\">";\n  stack1 = depth0.label;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.label", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</li>\\r\\n";\n  return buffer;}\n\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.displayMap);\n  stack2 = helpers[\'if\'];\n  tmp1 = self.program(1, program1, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n<div class=\\"list-results-section\\">\\r\\n<p>List Results for: <strong>";\n  foundHelper = helpers.searchString;\n  stack1 = foundHelper || depth0.searchString;\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "searchString", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "</strong>\\r\\n<div class=\\"list-results\\">\\r\\n<ul>\\r\\n";\n  foundHelper = helpers.place;\n  stack1 = foundHelper || depth0.place;\n  stack2 = helpers.each;\n  tmp1 = self.program(3, program3, data);\n  tmp1.hash = {};\n  tmp1.fn = tmp1;\n  tmp1.inverse = self.noop;\n  stack1 = stack2.call(depth0, stack1, tmp1);\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n</ul>\\r\\n</div>\\r\\n</div>";\n  return buffer;});\n})();'}),define("lib/text!template/new_tab.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'new_tab\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression;\n\n\n  buffer += "<!DOCTYPE html>\\r\\n<html>\\r\\n  <head>\\r\\n\\r\\n  </head>\\r\\n  <body >\\r\\n\\r\\n        <div id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" data-pleiades_id=\\"";\n  foundHelper = helpers.widgetContext;\n  stack1 = foundHelper || depth0.widgetContext;\n  stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesID);\n  if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); }\n  else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.pleiadesID", { hash: {} }); }\n  buffer += escapeExpression(stack1) + "\\" \\r\\n        data-icon=\\"false\\"\\r\\n        class=\\"pelagios pelagios-place\\"></div>\\r\\n</body>\\r\\n</html>";\n  return buffer;});\n})();'}),define("lib/text!template/about.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'about\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  helpers = helpers || Handlebars.helpers;\n  var foundHelper, self=this;\n\n\n  return "<p>This widget displays data from the Pelagios project partners about the location specified.</p>\\r\\n<p>View the <a href=\\"http://pelagios-project.blogspot.co.uk/\\" target=\\"_blank\\">Pelagios website</a>\\r\\n for more information.</a>\\r\\n            ";});\n})();'}),define("lib/text!app/dataset.json",[],function(){return'[{\r\n  "id": "b47df24737cd647789c7d61ede9fed09",\r\n  "title": "Arachne",\r\n  "iconFileName": "arachne.png",\r\n  "strapline": "A web research tool of the German Archaeological Institute for searching mass archaeological records"\r\n},\r\n{\r\n  "id": "6a39d0bc3c0fd4ef7d2a837b42cf46a1",\r\n  "title": "Google Ancient Places",\r\n  "iconFileName": "gap_logo.png",\r\n  "strapline":  "A Geographic Annotation Platform for reading texts spatially"\r\n}\r\n,\r\n{\r\n  "id": "2db51c1dd976f01bf993a02f959e18f8",\r\n  "title": "nomisma",\r\n  "iconFileName": "Greek.jpeg",\r\n  "strapline":  "Representing ancient coins online"\r\n}\r\n,\r\n{\r\n  "id": "298fafd65586643149e8a8ba47b57052",\r\n  "title": "SPQR",\r\n  "iconFileName": "SPQR.png",\r\n  "strapline":  "From Roman inscriptions to resource descriptions"\r\n}\r\n,\r\n{\r\n  "id": "",\r\n  "title": "Regnum Francorum Online",\r\n  "iconFileName": "Regnum.png",\r\n  "strapline":  "Interactive Maps and Sources of Late Antique and Early Medieval Europe"\r\n}\r\n,\r\n{\r\n  "id": "21e48d8ca46f666467b81a551fbb1cb",\r\n  "title": "Perseus",\r\n  "iconFileName": "Perseus.png",\r\n  "strapline":  "Annotated occurrences of place entities in texts from the Perseus Digital Library"\r\n}\r\n,\r\n{\r\n  "id": "c4c2ed780a8f4f2b698a5c2505ac34ca",\r\n  "title": "CLAROS",\r\n  "iconFileName": "CLAROS.png",\r\n  "strapline":  "Aggregated search of art and archaeology data from the classical world and the far east across four millennia"\r\n}\r\n,\r\n{\r\n  "id": "739128af1e9613de03706a57cef46976",\r\n  "title": "Open Context",\r\n  "iconFileName": "open-context.png",\r\n  "strapline":  "Publications of research data in archaeology and related fields"\r\n}\r\n,\r\n{\r\n  "id": "467b9097b55b6e0831fe6760df93e7f2",\r\n  "title": "FASTI Online",\r\n  "iconFileName": "FASTI.png",\r\n  "strapline":  "A database of archaeological excavations since the year 2000"\r\n}\r\n,\r\n{\r\n  "id": "a306666ae581e8d611d56a1dfdaea256",\r\n  "title": "Ure Museum",\r\n  "iconFileName": "URE.png",\r\n  "strapline":  "University Museum of ancient Greek, Egyptian & a little Roman stuff"\r\n}\r\n\r\n\r\n]\r\n\r\n\r\n'}),define("lib/jquery_pagination",["jquery"],function(e){(function(e){e.PaginationCalculator=function(e,t){this.maxentries=e,this.opts=t},e.extend(e.PaginationCalculator.prototype,{numPages:function(){return Math.ceil(this.maxentries/this.opts.items_per_page)},getInterval:function(e){var t=Math.floor(this.opts.num_display_entries/2),n=this.numPages(),r=n-this.opts.num_display_entries,i=e>t?Math.max(Math.min(e-t,r),0):0,s=e>t?Math.min(e+t+this.opts.num_display_entries%2,n):Math.min(this.opts.num_display_entries,n);return{start:i,end:s}}}),e.PaginationRenderers={},e.PaginationRenderers.defaultRenderer=function(t,n){this.maxentries=t,this.opts=n,this.pc=new e.PaginationCalculator(t,n)},e.extend(e.PaginationRenderers.defaultRenderer.prototype,{createLink:function(t,n,r){var i,s=this.pc.numPages();return t=t<0?0:t<s?t:s-1,r=e.extend({text:t+1,classes:""},r||{}),t==n?i=e("<span class='current'>"+r.text+"</span>"):i=e("<a>"+r.text+"</a>").attr("href",this.opts.link_to.replace(/__id__/,t)),r.classes&&i.addClass(r.classes),i.data("page_id",t),i},appendRange:function(e,t,n,r,i){var s;for(s=n;s<r;s++)this.createLink(s,t,i).appendTo(e)},getLinks:function(t,n){var r,i,s=this.pc.getInterval(t),o=this.pc.numPages(),u=e("<div class='pagination'></div>");return this.opts.prev_text&&(t>0||this.opts.prev_show_always)&&u.append(this.createLink(t-1,t,{text:this.opts.prev_text,classes:"prev"})),s.start>0&&this.opts.num_edge_entries>0&&(i=Math.min(this.opts.num_edge_entries,s.start),this.appendRange(u,t,0,i,{classes:"sp"}),this.opts.num_edge_entries<s.start&&this.opts.ellipse_text&&e("<span>"+this.opts.ellipse_text+"</span>").appendTo(u)),this.appendRange(u,t,s.start,s.end),s.end<o&&this.opts.num_edge_entries>0&&(o-this.opts.num_edge_entries>s.end&&this.opts.ellipse_text&&e("<span>"+this.opts.ellipse_text+"</span>").appendTo(u),r=Math.max(o-this.opts.num_edge_entries,s.end),this.appendRange(u,t,r,o,{classes:"ep"})),this.opts.next_text&&(t<o-1||this.opts.next_show_always)&&u.append(this.createLink(t+1,t,{text:this.opts.next_text,classes:"next"})),e("a",u).click(n),u}}),e.fn.pagination=function(t,n){function u(t){t.preventDefault();var n,r=e(t.target).data("page_id"),i=a(r);return i||t.stopPropagation(),i}function a(e){r.data("current_page",e),s=i.getLinks(e,u),r.empty(),s.appendTo(r);var t=n.callback(e,r);return t}n=e.extend({items_per_page:10,num_display_entries:11,current_page:0,num_edge_entries:0,link_to:"#",prev_text:"Prev",next_text:"Next",ellipse_text:"...",prev_show_always:!0,next_show_always:!0,renderer:"defaultRenderer",show_if_single_page:!1,load_first_page:!0,callback:function(){return!1}},n||{});var r=this,i,s,o;o=parseInt(n.current_page),r.data("current_page",o),t=!t||t<0?1:t,n.items_per_page=!n.items_per_page||n.items_per_page<0?1:n.items_per_page;if(!e.PaginationRenderers[n.renderer])throw new ReferenceError("Pagination renderer '"+n.renderer+"' was not found in jQuery.PaginationRenderers object.");i=new e.PaginationRenderers[n.renderer](t,n);var f=new e.PaginationCalculator(t,n),l=f.numPages();r.bind("setPage",{numPages:l},function(e,t){if(t>=0&&t<e.data.numPages)return a(t),!1}),r.bind("prevPage",function(t){var n=e(this).data("current_page");return n>0&&a(n-1),!1}),r.bind("nextPage",{numPages:l},function(t){var n=e(this).data("current_page");return n<t.data.numPages-1&&a(n+1),!1}),s=i.getLinks(o,u),r.empty(),(l>1||n.show_if_single_page)&&s.appendTo(r),n.load_first_page&&n.callback(o,r)}})(jQuery)}),define("app/pelagios",["jquery","app/util","app/search_map","app/place_map","lib/text!template/widget_container.tmpl","lib/text!template/place.tmpl","lib/text!template/section.tmpl","lib/text!template/flickr.tmpl","lib/text!template/pleiades.tmpl","lib/text!template/pelagios_partner.tmpl","lib/text!template/error.tmpl","lib/text!template/search.tmpl","lib/text!template/annotations.tmpl","lib/text!template/search_results.tmpl","lib/text!template/new_tab.tmpl","lib/text!template/about.tmpl","lib/text!app/dataset.json","jqueryui","lib/jquery_pagination"],function($,util,search_map,place_map,widget_container_tmpl,place_tmpl,section_tmpl,flickr_tmpl,pleiades_tmpl,pelagios_partner_tmpl,error_tmpl,search_tmpl,annotations_tmpl,search_results_tmpl,new_tab_tmpl,about_tmpl,datasetJSON){function Widget(widgetContext){function widgetPopUp(){if(widgetContext.newTab){var e=window.open(),t=Handlebars.templates.new_tab({widgetContext:widgetContext});$(e.document.body).html(t);var n=document.createElement("script");n.type="text/javascript",n.src=widgetContext.baseURL+"lib/require.js",e.document.head.appendChild(n);var r=document.createElement("script");r.type="text/javascript",r.src=widgetContext.baseURL+"place.js",e.document.head.appendChild(r)}else{$(".pelagios .container").hide(),$("#"+widgetContext.widgetID+"-container").show();var i=$("#"+widgetContext.widgetID+"-icon").offset(),s={top:$(window).scrollTop(),left:200};$("#"+widgetContext.widgetID+"-container").offset(s),widgetContext.displayMap&&placeMap.hasOwnProperty("refresh")&&placeMap.refresh()}}function displayPlace(e){debug("DISPLAYING PLACE: pleiadesID: "+e),placeMap={},clearPlace(),showPleiadesData(e),widgetContext.type=="place"&&showAboutInformation(),showPelagiosData(e),showFlickrData(e)}function showAboutInformation(){addSection("about","About Pelagios and this widget",widgetContext.imageDir+"partner_icons/pelagios.png","");var e=Handlebars.templates.about();$("#"+widgetContext.widgetID+"-content-about").append(e)}function clearPlace(){$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty()}function showFlickrData(e){function r(t){if(t.hasOwnProperty("photos")&&t.photos.hasOwnProperty("photo")&&t.photos.photo.length>0){addSection("flickr","flickr",widgetContext.imageDir+"icons/flickr-logo.png","Photo sharing website");var n={photo:t.photos.photo.slice(0,config.MAX_PHOTOS_FLICKR-1),pleiadesID:e},r=Handlebars.templates.flickr(n);$("#"+widgetContext.widgetID+"-content-flickr").append(r)}}var t="";widgetContext.pleiadesFlickrGroupOnly&&(t="&group_id=1876758@N22");var n=config.URL_FLICKR_SEARCH+"&machine_tags=pleiades:depicts="+e+t+"&tag_mode=all&api_key="+config.API_KEY_FLICKR+"&jsoncallback=?";util.getAPIData(n,r,!1,config.TIMEOUT_FLICKR,!1)}function showPleiadesData(e){function r(e,t,n){$("#"+widgetContext.widgetID+"-content").empty();if(e.status=="404")var r={title:config.MSG_TITLE_PLACE_NOT_FOUND,msg:config.MSG_PLACE_NOT_FOUND};else var r={title:config.MSG_TITLE_PLEIADES_TIMEOUT,msg:config.MSG_PLEIADES_TIMEOUT};var i=Handlebars.templates.error(r);$("#"+widgetContext.widgetID+"-content").append(i)}function i(e){var t=!1;e.names.length>1&&(t=e.names.join(", "));var n={title:e.names[0]?e.names[0]:"Untitled",description:e.description,altNames:t,pleiadesID:e.id,widgetContext:widgetContext},r=Handlebars.templates.pleiades(n);$("#"+widgetContext.widgetID+"-pleiades").append(r),e.reprPoint!=null&&widgetContext.displayMap&&(placeMap=new place_map.PlaceMap(widgetContext.widgetID+"-map_canvas"),placeMap.setMarker(e.reprPoint,e.names[0])),e.reprPoint==null&&(placeMap=null),showPlace()}var t=config.URL_PLEIADES+e,n=config.URL_PLEIADES+e+"/json";util.getAPIData(n,i,r,config.TIMEOUT_PLEIADES,!0)}function showPelagiosData(e){function n(e){$.each(e,function(n,i){i.hasOwnProperty("root_dataset")&&(i=i.root_dataset);var s;rootDatasetID=i.uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),s=getDatasetInfo(rootDatasetID);if(typeof s!="undefined"){addSection(rootDatasetID,s.title,widgetContext.iconDir+s.iconFileName,s.strapline);var o=new Array;if(typeof i.subsets!="undefined")for(var u=0;u<i.subsets.length;u++)o[u]={},o[u].widgetContext=widgetContext,o[u].title=i.subsets[u].title,o[u].id=i.subsets[u].uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),o[u].references=i.subsets[u].annotations_referencing_place,o[u].multipleReferences=o[u].references>1?!0:!1,o[u].anyReferences=o[u].references>0?!0:!1;else o[0]={},o[0].widgetContext=widgetContext,o[0].title=i.title,o[0].id=rootDatasetID,o[0].references=e[n].annotations_referencing_place,o[0].multipleReferences=o[0].references>1?!0:!1;var a={subdataset:o,rootDatasetID:rootDatasetID,widgetContext:widgetContext},f=Handlebars.templates.pelagios_partner(a);$("#"+widgetContext.widgetID+"-content-"+rootDatasetID).append(f),$("#"+widgetContext.widgetID+"-subdatasets-"+rootDatasetID).css("list-style-image","url("+widgetContext.imageDir+"icons/bullet.png)");for(var u=0;u<o.length;u++)r(o[u])}else debug("ERROR: Could not find info for root dataset "+i.title+" "+t)})}function r(e){$("#"+widgetContext.widgetID+"-subdataset_title-"+e.id).click({id:e.id},o),$("#"+widgetContext.widgetID+"-subdataset_content-"+e.id).hide();var t=function(t){i(t,e.id)};$("#"+widgetContext.widgetID+"-subdataset_pagination-"+e.id).pagination(e.references,{items_per_page:config.NUM_ANNOTATIONS_TO_DISPLAY,callback:t,next_show_always:!1,prev_show_always:!1}),i(0,e.id)}function i(t,n){var r=config.URL_PELAGIOS_API_V2+"datasets/"+n+"/annotations.json?forPlace="+encodeURIComponent(config.URL_PLEIADES+e)+"&limit="+config.NUM_ANNOTATIONS_TO_DISPLAY+"&offset="+t*config.NUM_ANNOTATIONS_TO_DISPLAY+"&callback=?",i=function(e){typeof e.annotations!="undefined"&&e.annotations.length>0&&s(e.annotations,n)};return util.getAPIData(r,i),!1}function s(e,t){var n=new Array;$.each(e,function(e,t){n[e]={},t.hasOwnProperty("target_title")?n[e].label=t.target_title:n[e].label=t.title?t.title:"Item "+(e+1),n[e].uri=t.hasTarget});var r={subdatasetID:t,annotation:n,widgetContext:widgetContext},i=Handlebars.templates.annotations(r);$("#"+widgetContext.widgetID+"-annotations-"+t).empty(),$("#"+widgetContext.widgetID+"-annotations-"+t).append(i),$("#"+widgetContext.widgetID+"-subdataset-"+t).focus()}function o(e){var t=e.data.id;toggleSelectedLink(widgetContext.widgetID+"-subdataset_hits-"+t),$("#"+widgetContext.widgetID+"-subdataset_content-"+t).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-subdataset-"+t)}function u(e){$("#"+widgetID+"-subdataset_content-"+e).hide()}var t=config.URL_PELAGIOS_API_V2+"places/"+encodeURIComponent(config.URL_PLEIADES+e)+"/datasets.json?callback=?";util.getAPIData(t,n,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResults(){var e=config.URL_PELAGIOS_API_V2+"search.json?query="+searchString+"&callback=?";debug("RETRIEVING SEARCH DATA: searchString: "+searchString+" URL:"+e),util.getAPIData(e,displaySearchResultsData,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResultsData(e){$("#"+widgetContext.widgetID+"-search-map").empty(),$("#"+widgetContext.widgetID+"-search-results").empty(),$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty();if(e.length>0){var t=new Array;$.each(e,function(e,n){place={},place.label=n.label,place.pleiadesID=n.uri.replace(/.*places.*F/g,""),place.geojson=n,n.feature_type&&(place.feature_type=n.feature_type.replace(/.*place-types\//g,"")),place.content="<h2>"+place.label+"</h2>",place.content+='<p id="'+widgetContext.widgetID+"-info-"+place.pleiadesID+'">View info</p>',place.widgetID=widgetContext.widgetID,t[e]=place});var n={place:t,widgetContext:widgetContext,searchString:searchString},r=Handlebars.templates.search_results(n);$("#"+widgetContext.widgetID+"-search-results").append(r),$(".pelagios .list-results li").css("background-image","url("+widgetContext.imageDir+"place_type_icons/unknown.png)");var i={temple:"temple.png",santuary:"sanctuary.png",river:"river.png","water-open":"river.png",mountain:"mountain.png",island:"island.png",tribe:"tribe.png",settlement:"settlement.png",urban:"settlement.png",people:"people.png",aqueduct:"aqueduct.png",cape:"cape.png",mine:"mine.png",station:"port.png",road:"road.png",villa:"villa.png",wall:"wall.png",province:"people.png"};$.each(i,function(e,t){$(".pelagios .list-results li."+e).css("background-image","url("+widgetContext.imageDir+"place_type_icons/"+t+")")}),widgetContext.displayMap&&(searchMap=new search_map.SearchMap(widgetContext.widgetID+"-search-map_canvas")),$.each(t,function(e,t){widgetContext.displayMap&&searchMap.addMarker(t.geojson,t.label,t.content,function(){s(t.pleiadesID)}),$("#"+widgetContext.widgetID+"-place-"+t.pleiadesID).click(function(){s(t.pleiadesID)})});function s(e){$(".pelagios-search-result-list li").css("text-decoration","none"),$(".pelagios-search-result-list li").css("font-weight","normal"),$("#"+widgetContext.widgetID+"-place-"+e).css("text-decoration","underline"),$("#"+widgetContext.widgetID+"-place-"+e).css("font-weight","bold"),displayPlace(e)}showSearchResults()}else $("#"+widgetContext.widgetID+"-search-results").append("<h3 class='no-search-results'>No matches found for '"+searchString+"'</h3>"),$("#"+widgetContext.widgetID+"-search-results").show()}function hideSearchResults(){$("#"+widgetContext.widgetID+"-search-results-map").hide(),$("#"+widgetContext.widgetID+"-search-results").hide()}function showSearchResults(){widgetContext.displayMap&&($("#"+widgetContext.widgetID+"-search-results-map").show(),searchMap.refresh()),$("#"+widgetContext.widgetID+"-search-results").show()}function hidePlace(){$("#"+widgetContext.widgetID+"-map").hide(),$("#"+widgetContext.widgetID+"-place").hide()}function showPlace(){$("#"+widgetContext.widgetID+"-place").show(),widgetContext.displayMap&&placeMap!=null&&($("#"+widgetContext.widgetID+"-map").show(),placeMap.refresh()),placeMap==null&&$("#"+widgetContext.widgetID+"-map").hide()}function addSection(e,t,n,r){var i={name:e,title:t,iconURL:n,strapline:r,widgetContext:widgetContext},s=Handlebars.templates.section(i);$("#"+widgetContext.widgetID+"-sections").append(s),$("#"+widgetContext.widgetID+"-content-"+e).hide(),$("#"+widgetContext.widgetID+"-header-"+e).click(function(){$("#"+widgetContext.widgetID+"-content-"+e).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-"+e)})}function toggleIcon(e){var t=$("#"+e).attr("src"),n=t==widgetContext.imageDir+"icons/down-arrow.png"?widgetContext.imageDir+"icons/right-arrow.png":widgetContext.imageDir+"icons/down-arrow.png";$("#"+e).attr("src",n)}function toggleSelectedLink(e){var t=$("#"+e),n=t.css("text-decoration"),r=n=="underline"?"none":"underline";t.css("text-decoration",r)}function getDatasetInfo(e){var t;return $.each(dataset,function(e,n){n.id==rootDatasetID&&(t=n)}),t}function debug(e){widgetContext.debug&&console.log(e)}var placeMap={},searchMap={},searchString="";eval(widget_container_tmpl),eval(place_tmpl),eval(section_tmpl),eval(flickr_tmpl),eval(pleiades_tmpl),eval(pelagios_partner_tmpl),eval(error_tmpl),eval(search_tmpl),eval(annotations_tmpl),eval(search_results_tmpl),eval(new_tab_tmpl),eval(about_tmpl);var dataset=$.parseJSON(datasetJSON);typeof $("#"+widgetContext.widgetID)==undefined&&debug("ERROR: $(#"+widgetContext.widgetID+") is undefined"),$("head").append('<link rel="stylesheet" type="text/css" href="'+widgetContext.cssDir+'pelagios.css" media="screen" />');var html=Handlebars.templates.widget_container({widgetContext:widgetContext});$("#"+widgetContext.widgetID).append(html);try{$("#"+widgetContext.widgetID+"-container").draggable()}catch(err){debug("ERROR: Could not make widget draggable")}this.setTypePlace=function(){var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),widgetContext.icon==1&&($("#"+widgetContext.widgetID+"-container").hide(),$("#"+widgetContext.widgetID+"-icon").click(widgetPopUp),widgetContext.onMouseOver&&($("#"+widgetContext.widgetID+"-icon").mouseover(widgetPopUp),$(document).click(function(){$("#"+widgetContext.widgetID+"-container").hide()}),$("#"+widgetContext.widgetID).click(function(e){return e.stopPropagation(),!1})),$("#"+widgetContext.widgetID+"-close-widget").click(function(){$("#"+widgetContext.widgetID+"-container").hide()})),displayPlace(widgetContext.pleiadesID)},this.setTypeSearch=function(){var e=Handlebars.templates.search({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e);var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),hideSearchResults(),$("#"+widgetContext.widgetID+"-search-form").submit(function(){return searchString=$("input:first").val(),displaySearchResults(),!1})}}var config={URL_PELAGIOS_API_V2:"http://pelagios.dme.ait.ac.at/api/",API_KEY_FLICKR:"ddf82df2aba035bfcf14c12a4eff3335",TIMEOUT_PLEIADES:6e3,TIMEOUT_PELAGIOS:6e4,TIMEOUT_FLICKR:6e3,URL_PLEIADES:"http://pleiades.stoa.org/places/",URL_FLICKR_SEARCH:"http://api.flickr.com/services/rest/?format=json&method=flickr.photos.search",MAX_PHOTOS_FLICKR:30,MSG_PLACE_NOT_FOUND:"The place specified for this widget does not exist in the Pleiades gazetteer.",MSG_TITLE_PLACE_NOT_FOUND:"Error: Unknown Place",MSG_PLEIADES_TIMEOUT:"We cannot display the place name and map at the moment because the Pleiades website is not responding. Apologies for the inconvenience and please try again later.",MSG_TITLE_PLEIADES_TIMEOUT:"Error: Pleiades not responding",NUM_ANNOTATIONS_TO_DISPLAY:20};return{Widget:Widget}});var Handlebars={};Handlebars.VERSION="1.0.beta.2",Handlebars.helpers={},Handlebars.partials={},Handlebars.registerHelper=function(e,t,n){n&&(t.not=n),this.helpers[e]=t},Handlebars.registerPartial=function(e,t){this.partials[e]=t},Handlebars.registerHelper("helperMissing",function(e){if(arguments.length===2)return undefined;throw new Error("Could not find property '"+e+"'")}),Handlebars.registerHelper("blockHelperMissing",function(e,t){var n=t.inverse||function(){},r=t.fn,i="",s=Object.prototype.toString.call(e);s==="[object Function]"&&(e=e());if(e===!0)return r(this);if(e===!1||e==null)return n(this);if(s==="[object Array]"){if(e.length>0)for(var o=0,u=e.length;o<u;o++)i+=r(e[o]);else i=n(this);return i}return r(e)}),Handlebars.registerHelper("each",function(e,t){var n=t.fn,r=t.inverse,i="";if(e&&e.length>0)for(var s=0,o=e.length;s<o;s++)i+=n(e[s]);else i=r(this);return i}),Handlebars.registerHelper("if",function(e,t){return!e||Handlebars.Utils.isEmpty(e)?t.inverse(this):t.fn(this)}),Handlebars.registerHelper("unless",function(e,t){var n=t.fn,r=t.inverse;return t.fn=r,t.inverse=n,Handlebars.helpers["if"].call(this,e,t)}),Handlebars.registerHelper("with",function(e,t){return t.fn(e)}),Handlebars.Exception=function(e){var t=Error.prototype.constructor.apply(this,arguments);for(var n in t)t.hasOwnProperty(n)&&(this[n]=t[n])},Handlebars.Exception.prototype=new Error,Handlebars.SafeString=function(e){this.string=e},Handlebars.SafeString.prototype.toString=function(){return this.string.toString()},function(){var e={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},t=/&(?!\w+;)|[<>"'`]/g,n=/[&<>"'`]/,r=function(t){return e[t]||"&amp;"};Handlebars.Utils={escapeExpression:function(e){return e instanceof Handlebars.SafeString?e.toString():e==null||e===!1?"":n.test(e)?e.replace(t,r):e},isEmpty:function(e){return typeof e=="undefined"?!0:e===null?!0:e===!1?!0:Object.prototype.toString.call(e)==="[object Array]"&&e.length===0?!0:!1}}}(),Handlebars.VM={template:function(e){var t={escapeExpression:Handlebars.Utils.escapeExpression,invokePartial:Handlebars.VM.invokePartial,programs:[],program:function(e,t,n){var r=this.programs[e];return n?Handlebars.VM.program(t,n):r?r:(r=this.programs[e]=Handlebars.VM.program(t),r)},programWithDepth:Handlebars.VM.programWithDepth,noop:Handlebars.VM.noop};return function(n,r){return r=r||{},e.call(t,Handlebars,n,r.helpers,r.partials,r.data)}},programWithDepth:function(e,t,n){var r=Array.prototype.slice.call(arguments,2);return function(n,i){return i=i||{},e.apply(this,[n,i.data||t].concat(r))}},program:function(e,t){return function(n,r){return r=r||{},e(n,r.data||t)}},noop:function(){return""},invokePartial:function(e,t,n,r,i){if(e===undefined)throw new Handlebars.Exception("The partial "+t+" could not be found");if(e instanceof Function)return e(n,{helpers:r,partials:i});if(!Handlebars.compile)throw new Handlebars.Exception("The partial "+t+" could not be compiled when running in vm mode");return i[t]=Handlebars.compile(e),i[t](n,{helpers:r,partials:i})}},Handlebars.template=Handlebars.VM.template,define("lib/handlebars",function(){});if(!PELAGIOS_SEARCH_MAIN_JS_RUN){var PELAGIOS_SEARCH_MAIN_JS_RUN=!0;(function(){var e=document.getElementsByTagName("script"),t=e[e.length-1].src,n=t.replace(/search.js/g,"");require.config({paths:{jquery:"http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min",jqueryui:"https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min"},priority:["jquery"],jQuery:"1.7.1",waitSeconds:5,baseUrl:n,shim:{jqueryui:{deps:["jquery"]},"lib/jquery_pagination":{deps:["jquery"]}}}),require(["app/pelagios","app/util","lib/handlebars"],function(e,t){var r=window.jQuery.noConflict(!0);r(document).ready(function(r){r(".pelagios-search").each(function(){var i={baseURL:n,widgetID:r(this).attr("id"),displayMap:r(this).attr("data-display_map")?r(this).attr("data-display_map")!=="false":!0,debug:r(this).attr("data-debug")?r(this).attr("data-debug")==="true":!0,overlay:!1,templateDir:n+"template/",imageDir:n+"images/",iconDir:n+"images/partner_icons/",scriptDir:n+"scripts/",cssDir:n+"css/",pleiadesFlickrGroupOnly:!1,type:"search"};t.includesGoogleMaps2()&&(i.displayMap=!1),i.debug&&console.log("CREATING WIDGET widgetID:"+i.widgetID+" baseURL:"+i.baseURL),widget=new e.Widget(i),widget.setTypeSearch()})})})})()}define("search",function(){});var requirejs,require,define;(function(global){function isFunction(e){return ostring.call(e)==="[object Function]"}function isArray(e){return ostring.call(e)==="[object Array]"}function each(e,t){if(e){var n;for(n=0;n<e.length;n+=1)if(e[n]&&t(e[n],n,e))break}}function eachReverse(e,t){if(e){var n;for(n=e.length-1;n>-1;n-=1)if(e[n]&&t(e[n],n,e))break}}function hasProp(e,t){return e.hasOwnProperty(t)}function eachProp(e,t){var n;for(n in e)if(e.hasOwnProperty(n)&&t(e[n],n))break}function mixin(e,t,n,r){return t&&eachProp(t,function(t,i){if(n||!hasProp(e,i))r&&typeof t!="string"?(e[i]||(e[i]={}),mixin(e[i],t,n,r)):e[i]=t}),e}function bind(e,t){return function(){return t.apply(e,arguments)}}function scripts(){return document.getElementsByTagName("script")}function getGlobal(e){if(!e)return e;var t=global;return each(e.split("."),function(e){t=t[e]}),t}function makeContextModuleFunc(e,t,n){return function(){var r=aps.call(arguments,0),i;return n&&isFunction(i=r[r.length-1])&&(i.__requireJsBuild=!0),r.push(t),e.apply(null,r)}}function addRequireMethods(e,t,n){each([["toUrl"],["undef"],["defined","requireDefined"],["specified","requireSpecified"]],function(r){var i=r[1]||r[0];e[r[0]]=t?makeContextModuleFunc(t[i],n):function(){var e=contexts[defContextName];return e[i].apply(e,arguments)}})}function makeError(e,t,n,r){var i=new Error(t+"\nhttp://requirejs.org/docs/errors.html#"+e);return i.requireType=e,i.requireModules=r,n&&(i.originalError=n),i}function newContext(e){function v(e){var t,n;for(t=0;e[t];t+=1){n=e[t];if(n===".")e.splice(t,1),t-=1;else if(n===".."){if(t===1&&(e[2]===".."||e[0]===".."))break;t>0&&(e.splice(t-1,2),t-=2)}}}function m(e,n,r){var i=n&&n.split("/"),s=i,o=t.map,u=o&&o["*"],a,f,l,c,h,p,d,m;e&&e.charAt(0)==="."&&(n?(t.pkgs[n]?s=i=[n]:s=i.slice(0,i.length-1),e=s.concat(e.split("/")),v(e),f=t.pkgs[a=e[0]],e=e.join("/"),f&&e===a+"/"+f.main&&(e=a)):e.indexOf("./")===0&&(e=e.substring(2)));if(r&&(i||u)&&o){c=e.split("/");for(h=c.length;h>0;h-=1){d=c.slice(0,h).join("/");if(i)for(p=i.length;p>0;p-=1){l=o[i.slice(0,p).join("/")];if(l){l=l[d];if(l){m=l;break}}}!m&&u&&u[d]&&(m=u[d]);if(m){c.splice(0,h,m),e=c.join("/");break}}}return e}function g(e){isBrowser&&each(scripts(),function(t){if(t.getAttribute("data-requiremodule")===e&&t.getAttribute("data-requirecontext")===h.contextName)return t.parentNode.removeChild(t),!0})}function y(e){var n=t.paths[e];if(n&&isArray(n)&&n.length>1)return g(e),n.shift(),h.undef(e),h.require([e]),!0}function b(e,t,n,r){var i=e?e.indexOf("!"):-1,o=null,f=t?t.name:null,l=e,c=!0,p="",d,v,g;return e||(c=!1,e="_@r"+(u+=1)),i!==-1&&(o=e.substring(0,i),e=e.substring(i+1,e.length)),o&&(o=m(o,f,r),v=s[o]),e&&(o?v&&v.normalize?p=v.normalize(e,function(e){return m(e,f,r)}):p=m(e,f,r):(p=m(e,f,r),d=h.nameToUrl(p))),g=o&&!v&&!n?"_unnormalized"+(a+=1):"",{prefix:o,name:p,parentMap:t,unnormalized:!!g,url:d,originalName:l,isDefine:c,id:(o?o+"!"+p:p)+g}}function w(e){var t=e.id,r=n[t];return r||(r=n[t]=new h.Module(e)),r}function E(e,t,r){var i=e.id,o=n[i];hasProp(s,i)&&(!o||o.defineEmitComplete)?t==="defined"&&r(s[i]):w(e).on(t,r)}function S(e,t){var r=e.requireModules,i=!1;t?t(e):(each(r,function(t){var r=n[t];r&&(r.error=e,r.events.error&&(i=!0,r.emit("error",e)))}),i||req.onError(e))}function x(){globalDefQueue.length&&(apsp.apply(i,[i.length-1,0].concat(globalDefQueue)),globalDefQueue=[])}function T(e,t,n){var r=e&&e.map,i=makeContextModuleFunc(n||h.require,r,t);return addRequireMethods(i,h,r),i.isBrowser=isBrowser,i}function N(e){delete n[e],each(f,function(t,n){if(t.map.id===e)return f.splice(n,1),t.defined||(h.waitCount-=1),!0})}function C(e,t){var r=e.map.id,i=e.depMaps,s;if(!e.inited)return;return t[r]?e:(t[r]=!0,each(i,function(e){var i=e.id,o=n[i];if(!o)return;return!o.inited||!o.enabled?(s=null,delete t[r],!0):s=C(o,mixin({},t))}),s)}function k(e,t,r){var i=e.map.id,o=e.depMaps;if(!e.inited||!e.map.isDefine)return;return t[i]?s[i]:(t[i]=e,each(o,function(s){var o=s.id,u=n[o],a;if(p[o])return;if(u){if(!u.inited||!u.enabled){r[i]=!0;return}a=k(u,t,r),r[o]||e.defineDepById(o,a)}}),e.check(!0),s[i])}function L(e){e.check()}function A(){var e=t.waitSeconds*1e3,r=e&&h.startTime+e<(new Date).getTime(),i=[],s=!1,o=!0,u,a,c,p;if(l)return;l=!0,eachProp(n,function(e){u=e.map,a=u.id;if(!e.enabled)return;if(!e.error)if(!e.inited&&r)y(a)?(p=!0,s=!0):(i.push(a),g(a));else if(!e.inited&&e.fetched&&u.isDefine){s=!0;if(!u.prefix)return o=!1}});if(r&&i.length)return c=makeError("timeout","Load timeout for modules: "+i,null,i),c.contextName=h.contextName,S(c);o&&(each(f,function(e){if(e.defined)return;var t=C(e,{}),n={};t&&(k(t,n,{}),eachProp(n,L))}),eachProp(n,L)),(!r||p)&&s&&(isBrowser||isWebWorker)&&!d&&(d=setTimeout(function(){d=0,A()},50)),l=!1}function O(e){w(b(e[0],null,!0)).init(e[1],e[2])}function M(e,t,n,r){e.detachEvent&&!isOpera?r&&e.detachEvent(r,t):e.removeEventListener(n,t,!1)}function _(e){var t=e.currentTarget||e.srcElement;return M(t,h.onScriptLoad,"load","onreadystatechange"),M(t,h.onScriptError,"error"),{node:t,id:t&&t.getAttribute("data-requiremodule")}}var t={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{}},n={},r={},i=[],s={},o={},u=1,a=1,f=[],l,c,h,p,d;return p={require:function(e){return T(e)},exports:function(e){e.usingExports=!0;if(e.map.isDefine)return e.exports=s[e.map.id]={}},module:function(e){return e.module={id:e.map.id,uri:e.map.url,config:function(){return t.config&&t.config[e.map.id]||{}},exports:s[e.map.id]}}},c=function(e){this.events=r[e.id]||{},this.map=e,this.shim=t.shim[e.id],this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},c.prototype={init:function(e,t,n,r){r=r||{};if(this.inited)return;this.factory=t,n?this.on("error",n):this.events.error&&(n=bind(this,function(e){this.emit("error",e)})),this.depMaps=e&&e.slice(0),this.depMaps.rjsSkipMap=e.rjsSkipMap,this.errback=n,this.inited=!0,this.ignore=r.ignore,r.enabled||this.enabled?this.enable():this.check()},defineDepById:function(e,t){var n;return each(this.depMaps,function(t,r){if(t.id===e)return n=r,!0}),this.defineDep(n,t)},defineDep:function(e,t){this.depMatched[e]||(this.depMatched[e]=!0,this.depCount-=1,this.depExports[e]=t)},fetch:function(){if(this.fetched)return;this.fetched=!0,h.startTime=(new Date).getTime();var e=this.map;if(!this.shim)return e.prefix?this.callPlugin():this.load();T(this,!0)(this.shim.deps||[],bind(this,function(){return e.prefix?this.callPlugin():this.load()}))},load:function(){var e=this.map.url;o[e]||(o[e]=!0,h.load(this.map.id,e))},check:function(e){if(!this.enabled||this.enabling)return;var t=this.map.id,r=this.depExports,i=this.exports,o=this.factory,u,a;if(!this.inited)this.fetch();else if(this.error)this.emit("error",this.error);else if(!this.defining){this.defining=!0;if(this.depCount<1&&!this.defined){if(isFunction(o)){if(this.events.error)try{i=h.execCb(t,o,r,i)}catch(l){u=l}else i=h.execCb(t,o,r,i);this.map.isDefine&&(a=this.module,a&&a.exports!==undefined&&a.exports!==this.exports?i=a.exports:i===undefined&&this.usingExports&&(i=this.exports));if(u)return u.requireMap=this.map,u.requireModules=[this.map.id],u.requireType="define",S(this.error=u)}else i=o;this.exports=i,this.map.isDefine&&!this.ignore&&(s[t]=i,req.onResourceLoad&&req.onResourceLoad(h,this.map,this.depMaps)),delete n[t],this.defined=!0,h.waitCount-=1,h.waitCount===0&&(f=[])}this.defining=!1,e||this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}},callPlugin:function(){var e=this.map,r=e.id,i=b(e.prefix,null,!1,!0);E(i,"defined",bind(this,function(i){var s=this.map.name,o=this.map.parentMap?this.map.parentMap.name:null,u,a,f;if(this.map.unnormalized){i.normalize&&(s=i.normalize(s,function(e){return m(e,o,!0)})||""),a=b(e.prefix+"!"+s,this.map.parentMap,!1,!0),E(a,"defined",bind(this,function(e){this.init([],function(){return e},null,{enabled:!0,ignore:!0})})),f=n[a.id],f&&(this.events.error&&f.on("error",bind(this,function(e){this.emit("error",e)})),f.enable());return}u=bind(this,function(e){this.init([],function(){return e},null,{enabled:!0})}),u.error=bind(this,function(e){this.inited=!0,this.error=e,e.requireModules=[r],eachProp(n,function(e){e.map.id.indexOf(r+"_unnormalized")===0&&N(e.map.id)}),S(e)}),u.fromText=function(e,t){var n=useInteractive;n&&(useInteractive=!1),w(b(e)),req.exec(t),n&&(useInteractive=!0),h.completeLoad(e)},i.load(e.name,T(e.parentMap,!0,function(e,t){return e.rjsSkipMap=!0,h.require(e,t)}),u,t)})),h.enable(i,this),this.pluginMaps[i.id]=i},enable:function(){this.enabled=!0,this.waitPushed||(f.push(this),h.waitCount+=1,this.waitPushed=!0),this.enabling=!0,each(this.depMaps,bind(this,function(e,t){var r,i,s;if(typeof e=="string"){e=b(e,this.map.isDefine?this.map:this.map.parentMap,!1,!this.depMaps.rjsSkipMap),this.depMaps[t]=e,s=p[e.id];if(s){this.depExports[t]=s(this);return}this.depCount+=1,E(e,"defined",bind(this,function(e){this.defineDep(t,e),this.check()})),this.errback&&E(e,"error",this.errback)}r=e.id,i=n[r],!p[r]&&i&&!i.enabled&&h.enable(e,this)})),eachProp(this.pluginMaps,bind(this,function(e){var t=n[e.id];t&&!t.enabled&&h.enable(e,this)})),this.enabling=!1,this.check()},on:function(e,t){var n=this.events[e];n||(n=this.events[e]=[]),n.push(t)},emit:function(e,t){each(this.events[e],function(e){e(t)}),e==="error"&&delete this.events[e]}},h={config:t,contextName:e,registry:n,defined:s,urlFetched:o,waitCount:0,defQueue:i,Module:c,makeModuleMap:b,configure:function(e){e.baseUrl&&e.baseUrl.charAt(e.baseUrl.length-1)!=="/"&&(e.baseUrl+="/");var r=t.pkgs,i=t.shim,s=t.paths,o=t.map;mixin(t,e,!0),t.paths=mixin(s,e.paths,!0),e.map&&(t.map=mixin(o||{},e.map,!0,!0)),e.shim&&(eachProp(e.shim,function(e,t){isArray(e)&&(e={deps:e}),e.exports&&!e.exports.__buildReady&&(e.exports=h.makeShimExports(e.exports)),i[t]=e}),t.shim=i),e.packages&&(each(e.packages,function(e){var t;e=typeof e=="string"?{name:e}:e,t=e.location,r[e.name]={name:e.name,location:t||e.name,main:(e.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}}),t.pkgs=r),eachProp(n,function(e,t){e.map=b(t)}),(e.deps||e.callback)&&h.require(e.deps||[],e.callback)},makeShimExports:function(e){var t;return typeof e=="string"?(t=function(){return getGlobal(e)},t.exports=e,t):function(){return e.apply(global,arguments)}},requireDefined:function(e,t){return hasProp(s,b(e,t,!1,!0).id)},requireSpecified:function(e,t){return e=b(e,t,!1,!0).id,hasProp(s,e)||hasProp(n,e)},require:function(t,n,r,o){var u,a,f,l,c;if(typeof t=="string")return isFunction(n)?S(makeError("requireargs","Invalid require call"),r):req.get?req.get(h,t,n):(u=t,o=n,f=b(u,o,!1,!0),a=f.id,hasProp(s,a)?s[a]:S(makeError("notloaded",'Module name "'+a+'" has not been loaded yet for context: '+e)));r&&!isFunction(r)&&(o=r,r=undefined),n&&!isFunction(n)&&(o=n,n=undefined),x();while(i.length){c=i.shift();if(c[0]===null)return S(makeError("mismatch","Mismatched anonymous define() module: "+c[c.length-1]));O(c)}return l=w(b(null,o)),l.init(t,n,r,{enabled:!0}),A(),h.require},undef:function(e){var t=b(e,null,!0),i=n[e];delete s[e],delete o[t.url],delete r[e],i&&(i.events.defined&&(r[e]=i.events),N(e))},enable:function(e,t){var r=n[e.id];r&&w(e).enable()},completeLoad:function(e){var r=t.shim[e]||{},o=r.exports&&r.exports.exports,u,a,f;x();while(i.length){a=i.shift();if(a[0]===null){a[0]=e;if(u)break;u=!0}else a[0]===e&&(u=!0);O(a)}f=n[e];if(!u&&!s[e]&&f&&!f.inited){if(t.enforceDefine&&(!o||!getGlobal(o))){if(y(e))return;return S(makeError("nodefine","No define call for "+e,null,[e]))}O([e,r.deps||[],r.exports])}A()},toUrl:function(e,t){var n=e.lastIndexOf("."),r=null;return n!==-1&&(r=e.substring(n,e.length),e=e.substring(0,n)),h.nameToUrl(m(e,t&&t.id,!0),r)},nameToUrl:function(e,n){var r,i,s,o,u,a,f,l,c;if(req.jsExtRegExp.test(e))l=e+(n||"");else{r=t.paths,i=t.pkgs,u=e.split("/");for(a=u.length;a>0;a-=1){f=u.slice(0,a).join("/"),s=i[f],c=r[f];if(c){isArray(c)&&(c=c[0]),u.splice(0,a,c);break}if(s){e===s.name?o=s.location+"/"+s.main:o=s.location,u.splice(0,a,o);break}}l=u.join("/")+(n||".js"),l=(l.charAt(0)==="/"||l.match(/^[\w\+\.\-]+:/)?"":t.baseUrl)+l}return t.urlArgs?l+((l.indexOf("?")===-1?"?":"&")+t.urlArgs):l},load:function(e,t){req.load(h,e,t)},execCb:function(e,t,n,r){return t.apply(r,n)},onScriptLoad:function(e){if(e.type==="load"||readyRegExp.test((e.currentTarget||e.srcElement).readyState)){interactiveScript=null;var t=_(e);h.completeLoad(t.id)}},onScriptError:function(e){var t=_(e);if(!y(t.id))return S(makeError("scripterror","Script error",e,[t.id]))}}}function getInteractiveScript(){return interactiveScript&&interactiveScript.readyState==="interactive"?interactiveScript:(eachReverse(scripts(),function(e){if(e.readyState==="interactive")return interactiveScript=e}),interactiveScript)}var version="2.0.4",commentRegExp=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,ostring=Object.prototype.toString,ap=Array.prototype,aps=ap.slice,apsp=ap.splice,isBrowser=typeof window!="undefined"&&!!navigator&&!!document,isWebWorker=!isBrowser&&typeof importScripts!="undefined",readyRegExp=isBrowser&&navigator.platform==="PLAYSTATION 3"?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera=typeof opera!="undefined"&&opera.toString()==="[object Opera]",contexts={},cfg={},globalDefQueue=[],useInteractive=!1,req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath;if(typeof define!="undefined")return;if(typeof requirejs!="undefined"){if(isFunction(requirejs))return;cfg=requirejs,requirejs=undefined}typeof require!="undefined"&&!isFunction(require)&&(cfg=require,require=undefined),req=requirejs=function(e,t,n,r){var i=defContextName,s,o;return!isArray(e)&&typeof e!="string"&&(o=e,isArray(t)?(e=t,t=n,n=r):e=[]),o&&o.context&&(i=o.context),s=contexts[i],s||(s=contexts[i]=req.s.newContext(i)),o&&s.configure(o),s.require(e,t,n)},req.config=function(e){return req(e)},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),addRequireMethods(req),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],baseElement=document.getElementsByTagName("base")[0],baseElement&&(head=s.head=baseElement.parentNode)),req.onError=function(e){throw e},req.load=function(e,t,n){var r=e&&e.config||{},i;if(isBrowser)return i=r.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script"),i.type=r.scriptType||"text/javascript",i.charset="utf-8",i.async=!0,i.setAttribute("data-requirecontext",e.contextName),i.setAttribute("data-requiremodule",t),i.attachEvent&&!(i.attachEvent.toString&&i.attachEvent.toString().indexOf("[native code")<0)&&!isOpera?(useInteractive=!0,i.attachEvent("onreadystatechange",e.onScriptLoad)):(i.addEventListener("load",e.onScriptLoad,!1),i.addEventListener("error",e.onScriptError,!1)),i.src=n,currentlyAddingScript=i,baseElement?head.insertBefore(i,baseElement):head.appendChild(i),currentlyAddingScript=null,i;isWebWorker&&(importScripts(n),e.completeLoad(t))},isBrowser&&eachReverse(scripts(),function(e){head||(head=e.parentNode),dataMain=e.getAttribute("data-main");if(dataMain)return cfg.baseUrl||(src=dataMain.split("/"),mainScript=src.pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath,dataMain=mainScript),dataMain=dataMain.replace(jsSuffixRegExp,""),cfg.deps=cfg.deps?cfg.deps.concat(dataMain):[dataMain],!0}),define=function(e,t,n){var r,i;typeof e!="string"&&(n=t,t=e,e=null),isArray(t)||(n=t,t=[]),!t.length&&isFunction(n)&&n.length&&(n.toString().replace(commentRegExp,"").replace(cjsRequireRegExp,function(e,n){t.push(n)}),t=(n.length===1?["require"]:["require","exports","module"]).concat(t)),useInteractive&&(r=currentlyAddingScript||getInteractiveScript(),r&&(e||(e=r.getAttribute("data-requiremodule")),i=contexts[r.getAttribute("data-requirecontext")])),(i?i.defQueue:globalDefQueue).push([e,t,n])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)})(this),define("requireLib",function(){}) 
     38define("app/util",["jquery"],function(e){function t(e){var t=e.replace(/ /g,"");return t=t.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()]/g,""),t}function n(){return typeof GMap2!="undefined"}function r(t,n,r,i,s){var o={type:"GET",dataType:"json",timeout:i,success:n,error:r};r||(o.error=function(e,n,r){console.log("ERROR: Call to "+t+" failed: "+n),console.log(e)});if(!s)e.ajax(t,o);else{try{var u=new XMLHttpRequest}catch(r){var u={}}if("withCredentials"in u)e.ajax(t,o);else if(typeof XDomainRequest!="undefined"){var a=new XDomainRequest;a.timeout=i,a.open("get",t),a.onload=function(){n(e.parseJSON(a.responseText),"",a)},a.onerror=r,a.send()}}}return{createID:t,includesGoogleMaps2:n,getAPIData:r}}),define("app/loadGMaps",[],function(){function t(){if(e!=null)return e;e=typeof GMap2=="undefined"}var e;return{load:function(e,n,r,i){i.isBuild||t()?r(null):window.setTimeout(function(){n([e],r)},500)}}}),define("app/search_map",["app/loadGMaps!lib/async!http://maps.google.com/maps/api/js?sensor=false"],function(){function e(e){if(!document.getElementById(e))throw Error("ERROR: Invalid ID for search map");try{var t=new google.maps.Map(document.getElementById(e),{mapTypeId:google.maps.MapTypeId.TERRAIN})}catch(n){console.log("ERROR: Failed to create Google Map for element id "+e+" : "+n)}var r=new google.maps.LatLngBounds,i=new google.maps.InfoWindow;this.refresh=function(){google.maps.event.trigger(t,"resize"),t.fitBounds(r)},this.addMarker=function(e,n,s,o){if(e.hasOwnProperty("geometry")&&e.geometry!=null&&e.geometry.hasOwnProperty("type")&&e.geometry.type=="Point"){var u=new google.maps.LatLng(e.geometry.coordinates[1],e.geometry.coordinates[0]),a=new google.maps.Marker({position:u,map:t,title:n});r.extend(u),google.maps.event.addListener(a,"click",function(){return function(){i.close(),i.setContent(s),i.open(t,a),o()}}())}}}return{SearchMap:e}}),define("app/place_map",["app/loadGMaps!lib/async!http://maps.google.com/maps/api/js?sensor=false"],function(){function e(e){if(!document.getElementById(e))throw Error("ERROR: Invalid ID for place map");try{var t=new google.maps.Map(document.getElementById(e),{zoom:8,mapTypeId:google.maps.MapTypeId.TERRAIN})}catch(n){console.log("ERROR: Failed to crate Google map for element id "+e+" : "+n)}try{var r=new google.maps.Marker({map:t})}catch(n){console.log("ERROR: Failed to create Google Map marker : "+n)}this.refresh=function(){try{google.maps.event.trigger(t,"resize")}catch(e){console.log("ERROR: Failed to resize Google map :"+e)}try{t.setCenter(r.getPosition())}catch(e){console.log("ERROR: Failed to center Google Map : "+e)}},this.setMarker=function(e,n){try{var i=new google.maps.LatLng(e[1],e[0])}catch(s){console.log("ERROR: Failed to create Google Maps location : "+s)}try{r.setPosition(i)}catch(s){console.log("ERROR: Failed to set marker position : "+s)}try{r.setTitle(n)}catch(s){console.log("ERROR: Failed to set marker title : "+s)}try{t.setCenter(i)}catch(s){console.log("ERROR: Failed to center Google Map : "+s)}try{google.maps.event.trigger(t,"resize")}catch(s){console.log("ERROR: Failed to resize Google Map : "+s)}}}return{PlaceMap:e}}),define("lib/text",["module"],function(e){var t=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],n=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,r=/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im,i=typeof location!="undefined"&&location.href,s=i&&location.protocol&&location.protocol.replace(/\:/,""),o=i&&location.hostname,u=i&&(location.port||undefined),a=[],f=e.config(),l,c;return l={version:"2.0.0",strip:function(e){if(e){e=e.replace(n,"");var t=e.match(r);t&&(e=t[1])}else e="";return e},jsEscape:function(e){return e.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r")},createXhr:function(){var e,n,r;if(typeof XMLHttpRequest!="undefined")return new XMLHttpRequest;if(typeof ActiveXObject!="undefined")for(n=0;n<3;n++){r=t[n];try{e=new ActiveXObject(r)}catch(i){}if(e){t=[r];break}}return e},parseName:function(e){var t=!1,n=e.indexOf("."),r=e.substring(0,n),i=e.substring(n+1,e.length);return n=i.indexOf("!"),n!==-1&&(t=i.substring(n+1,i.length),t=t==="strip",i=i.substring(0,n)),{moduleName:r,ext:i,strip:t}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(e,t,n,r){var i=l.xdRegExp.exec(e),s,o,u;return i?(s=i[2],o=i[3],o=o.split(":"),u=o[1],o=o[0],(!s||s===t)&&(!o||o===n)&&(!u&&!o||u===r)):!0},finishLoad:function(e,t,n,r){n=t?l.strip(n):n,f.isBuild&&(a[e]=n),r(n)},load:function(e,t,n,r){if(r.isBuild&&!r.inlineText){n();return}f.isBuild=r.isBuild;var a=l.parseName(e),c=a.moduleName+"."+a.ext,h=t.toUrl(c),p=f.useXhr||l.useXhr;!i||p(h,s,o,u)?l.get(h,function(t){l.finishLoad(e,a.strip,t,n)},function(e){n.error&&n.error(e)}):t([c],function(e){l.finishLoad(a.moduleName+"."+a.ext,a.strip,e,n)})},write:function(e,t,n,r){if(a.hasOwnProperty(t)){var i=l.jsEscape(a[t]);n.asModule(e+"!"+t,"define(function () { return '"+i+"';});\n")}},writeFile:function(e,t,n,r,i){var s=l.parseName(t),o=s.moduleName+"."+s.ext,u=n.toUrl(s.moduleName+"."+s.ext)+".js";l.load(o,n,function(t){var n=function(e){return r(u,e)};n.asModule=function(e,t){return r.asModule(e,u,t)},l.write(e,o,n,i)},i)}},typeof process!="undefined"&&process.versions&&!!process.versions.node?(c=require.nodeRequire("fs"),l.get=function(e,t){var n=c.readFileSync(e,"utf8");n.indexOf("")===0&&(n=n.substring(1)),t(n)}):l.createXhr()?l.get=function(e,t,n){var r=l.createXhr();r.open("GET",e,!0),f.onXhr&&f.onXhr(r,e),r.onreadystatechange=function(i){var s,o;r.readyState===4&&(s=r.status,s>399&&s<600?(o=new Error(e+" HTTP status: "+s),o.xhr=r,n(o)):t(r.responseText))},r.send(null)}:typeof Packages!="undefined"&&(l.get=function(e,t){var n="utf-8",r=new java.io.File(e),i=java.lang.System.getProperty("line.separator"),s=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(r),n)),o,u,a="";try{o=new java.lang.StringBuffer,u=s.readLine(),u&&u.length()&&u.charAt(0)===65279&&(u=u.substring(1)),o.append(u);while((u=s.readLine())!==null)o.append(i),o.append(u);a=String(o.toString())}finally{s.close()}t(a)}),l}),define("lib/text!template/widget_container.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'widget_container\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n        <a href=\\"\\" class=\\"close\\">\\r\\n        <img src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "images/icons/close-button.png\\" alt=\\"Close Pelagios information\\" />\\r\\n        </a>    \\r\\n        ";\n  return buffer;\n  }\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<img id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-icon\\" class=\\"icon\\" src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "images/icons/pelagios.png\\" alt=\\"Information about this place from Pelagios partners\\"/> \\r\\n";\n  return buffer;\n  }\n\n  buffer += "<div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-container\\" class=\\"container\\">    \\r\\n    <div class=\\"header\\"> \\r\\n        <img class=\\"logo\\" src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.imageDir)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "icons/pelagios-logo.png\\" alt=\\"View Pelagios infromation\\"/>    \\r\\n        ";\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.icon), {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n    </div>    \\r\\n    <div class=\\"content-wrapper\\">\\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-content\\">\\r\\n        </div>\\r\\n        <div class=\\"footer\\"></div>                           \\r\\n    </div>\\r\\n</div>    \\r\\n";\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.icon), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "  ";\n  return buffer;\n  });\n})();'}),define("lib/text!template/place.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'place\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-pleiades\\">    \\r\\n</div>    \\r\\n<div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-sections\\"></div>   \\r\\n\\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/section.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'section\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<div class=\\"section\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-";\n  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n<div class=\\"section-header\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-header-";\n  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n<img src=\\"";\n  if (stack2 = helpers.iconURL) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.iconURL; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\" class=\\"section-icon\\" alt=\\"\\" />\\r\\n<h2>";\n  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</h2>\\r\\n<img class=\\"section-toggle\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-toggle-";\n  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\" \\r\\n     src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "images/icons/right-arrow.png\\" alt=\\"Toggle section\\"/>\\r\\n<p class=\\"section-strapline\\">";\n  if (stack2 = helpers.strapline) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.strapline; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</p>\\r\\n</div>\\r\\n<div class=\\"section-content\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-content-";\n  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n</div></div>\\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/flickr.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'flickr\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<a href=\\"http://www.flickr.com/photos/"\n    + escapeExpression(((stack1 = depth0.owner),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "/"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" target=\\"_blank\\">\\r\\n<img src=\\"http://farm"\n    + escapeExpression(((stack1 = depth0.farm),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + ".staticflickr.com/"\n    + escapeExpression(((stack1 = depth0.server),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "/"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "_"\n    + escapeExpression(((stack1 = depth0.secret),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "_t.jpg\\" alt=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.pthis),stack1 == null || stack1 === false ? stack1 : stack1.title)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" />\\r\\n</a>\\r\\n";\n  return buffer;\n  }\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<p><a href=\\"http://www.flickr.com/groups/pleiades-places/pool/tags/pleiades%3Adepicts%3D";\n  if (stack1 = helpers.pleiadesID) { stack1 = stack1.call(depth0, {hash:{},data:data}); }\n  else { stack1 = depth0.pleiadesID; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }\n  buffer += escapeExpression(stack1)\n    + "/\\" target=\\"_blank\\">View all "\n    + escapeExpression(((stack1 = ((stack1 = depth0.photo),stack1 == null || stack1 === false ? stack1 : stack1.length)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + " photos on flickr</a></p>\\r\\n";\n  return buffer;\n  }\n\nfunction program5(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<p><a href=\\"http://www.flickr.com/photos/tags/pleiades%3Adepicts%3D";\n  if (stack1 = helpers.pleiadesID) { stack1 = stack1.call(depth0, {hash:{},data:data}); }\n  else { stack1 = depth0.pleiadesID; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }\n  buffer += escapeExpression(stack1)\n    + "/\\" target=\\"_blank\\">View all "\n    + escapeExpression(((stack1 = ((stack1 = depth0.photo),stack1 == null || stack1 === false ? stack1 : stack1.length)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + " photos on flickr</a></p>\\r\\n";\n  return buffer;\n  }\n\n  stack1 = helpers.each.call(depth0, depth0.photo, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack1 || stack1 === 0) { buffer += stack1; }\n  buffer += "\\r\\n";\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n";\n  stack2 = helpers.unless.call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly), {hash:{},inverse:self.noop,fn:self.program(5, program5, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n<p>The flickr photos shown here are those which have been given a <a href=\\"http://www.flickr.com/groups/pleiades-places/discuss/72157628435317307/\\">Pleiades machine tag specifying this place.</a></p>\\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/pleiades.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'pleiades\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n    <p>Some alternative names: ";\n  if (stack1 = helpers.altNames) { stack1 = stack1.call(depth0, {hash:{},data:data}); }\n  else { stack1 = depth0.altNames; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }\n  buffer += escapeExpression(stack1)\n    + " (the results below are for all alternative names)</p>  \\r\\n    ";\n  return buffer;\n  }\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += " \\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-map\\">    \\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-map_canvas\\" style=\\"width:"\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.mapWidth)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "; height:200px\\"></div>\\r\\n    </div>   \\r\\n    ";\n  return buffer;\n  }\n\n  buffer += " <h1 id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-title\\" class=\\"pelagios-title\\">";\n  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</h1>    \\r\\n<div class=\\"section-content\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-pleiades\\">\\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-description\\"><p>";\n  if (stack2 = helpers.description) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.description; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</p>\\r\\n    ";\n  stack2 = helpers[\'if\'].call(depth0, depth0.altNames, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n    ";\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.displayMap), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n    <p><img src=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "images/icons/pleiades.png\\"  class=\\"pleiades-icon\\" />\\r\\n    <a href=\\"http://pleiades.stoa.org/places/";\n  if (stack2 = helpers.pleiadesID) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.pleiadesID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\" target=\\"_blank\\">Entry in the Pleiades Gazetteer</a></p>    \\r\\n</div>";\n  return buffer;\n  });\n})();'}),define("lib/text!template/pelagios_partner.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'pelagios_partner\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1, stack2;\n  buffer += "\\r\\n\\r\\n<li id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\">\\r\\n<span id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset_title-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\">\\r\\n    "\n    + escapeExpression(((stack1 = depth0.title),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\r\\n    <span id =\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset_hits-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" class=\\"link\\">\\r\\n    "\n    + escapeExpression(((stack1 = depth0.references),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + " hit";\n  stack2 = helpers[\'if\'].call(depth0, depth0.multipleReferences, {hash:{},inverse:self.noop,fn:self.program(2, program2, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n    </span>\\r\\n    <img id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-toggle-subdataset-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" \\r\\n         src = \\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.imageDir)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "icons/right-arrow.png\\"  /> \\r\\n</span>\\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset_content-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\">\\r\\n\\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-annotations-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" class=\\"annotations\\">\\r\\n        </div>\\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdataset_pagination-"\n    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" class=\\"subdataset_pagination\\">\\r\\n        </div>\\r\\n    </div>\\r\\n</li>\\r\\n\\r\\n";\n  return buffer;\n  }\nfunction program2(depth0,data) {\n  \n  \n  return "s";\n  }\n\n  buffer += "<ul class=\\"subdatasets\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-subdatasets-";\n  if (stack2 = helpers.rootDatasetID) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.rootDatasetID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n";\n  stack2 = helpers.each.call(depth0, depth0.subdataset, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "  \\r\\n</ul>         ";\n  return buffer;\n  });\n})();'}),define("lib/text!template/error.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'error\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<h1 id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-title\\" class=\\"pelagios-title\\">";\n  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</h1> \\r\\n<p>";\n  if (stack2 = helpers.msg) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.msg; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</p>  \\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/search.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'search\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<h1 id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-title\\" class=\\"pelagios-title\\">Search for places</h1>    \\r\\n    <form id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-form\\" class=\\"search-form\\">\\r\\n        <input type=\\"text\\" size=\\"30\\"/>\\r\\n        <input id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-string\\" type=\\"submit\\" value=\\"Search\\"/>\\r\\n    </form>\\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-results\\">\\r\\n    </div> \\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-place\\">\\r\\n    </div>\\r\\n \\r\\n  \\r\\n \\r\\n";\n  return buffer;\n  });\n})();'}),define("lib/text!template/annotations.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'annotations\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<li><a href=\\""\n    + escapeExpression(((stack1 = depth0.uri),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" target=\\"_blank\\">"\n    + escapeExpression(((stack1 = depth0.label),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "</a></li>\\r\\n";\n  return buffer;\n  }\n\n  buffer += "<ul class=\\"annotations\\" id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-annotations-";\n  if (stack2 = helpers.subdatasetID) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.subdatasetID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "\\">\\r\\n";\n  stack2 = helpers.each.call(depth0, depth0.annotation, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n</ul>";\n  return buffer;\n  });\n})();'}),define("lib/text!template/search_results.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'search_results\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;\n\nfunction program1(depth0,data) {\n  \n  var buffer = "", stack1, stack2;\n  buffer += " \\r\\n<div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-results-map\\" class=\\"search-map\\">\\r\\n    <p>Geographic Results for: <strong>";\n  if (stack2 = helpers.searchString) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.searchString; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</strong></p>\\r\\n    <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-search-map_canvas\\" style=\\"width:\\r\\n    "\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.mapWidth)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "; height:200px\\"></div>\\r\\n</div>  \\r\\n";\n  return buffer;\n  }\n\nfunction program3(depth0,data) {\n  \n  var buffer = "", stack1;\n  buffer += "\\r\\n<li id=\\""\n    + escapeExpression(((stack1 = depth0.widgetID),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "-place-"\n    + escapeExpression(((stack1 = depth0.pleiadesID),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" class=\\"link "\n    + escapeExpression(((stack1 = depth0.feature_type),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\">"\n    + escapeExpression(((stack1 = depth0.label),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "</li>\\r\\n";\n  return buffer;\n  }\n\n  stack2 = helpers[\'if\'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.displayMap), {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n<div class=\\"list-results-section\\">\\r\\n<p>List Results for: <strong>";\n  if (stack2 = helpers.searchString) { stack2 = stack2.call(depth0, {hash:{},data:data}); }\n  else { stack2 = depth0.searchString; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; }\n  buffer += escapeExpression(stack2)\n    + "</strong>\\r\\n<div class=\\"list-results\\">\\r\\n<ul>\\r\\n";\n  stack2 = helpers.each.call(depth0, depth0.place, {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});\n  if(stack2 || stack2 === 0) { buffer += stack2; }\n  buffer += "\\r\\n</ul>\\r\\n</div>\\r\\n</div>";\n  return buffer;\n  });\n})();'}),define("lib/text!template/new_tab.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'new_tab\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression;\n\n\n  buffer += "<!DOCTYPE html>\\r\\n<html>\\r\\n  <head>\\r\\n\\r\\n  </head>\\r\\n  <body >\\r\\n\\r\\n        <div id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" data-pleiades_id=\\""\n    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))\n    + "\\" \\r\\n        data-icon=\\"false\\"\\r\\n        class=\\"pelagios pelagios-place\\"></div>\\r\\n</body>\\r\\n</html>";\n  return buffer;\n  });\n})();'}),define("lib/text!template/about.tmpl",[],function(){return'(function() {\n  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};\ntemplates[\'about\'] = template(function (Handlebars,depth0,helpers,partials,data) {\n  this.compilerInfo = [2,\'>= 1.0.0-rc.3\'];\nhelpers = helpers || Handlebars.helpers; data = data || {};\n  \n\n\n  return "<p>This widget displays data from the Pelagios project partners about the location specified.</p>\\r\\n<p>View the <a href=\\"http://pelagios-project.blogspot.co.uk/\\" target=\\"_blank\\">Pelagios website</a>\\r\\n for more information.</a>\\r\\n            ";\n  });\n})();'}),define("lib/text!app/dataset.json",[],function(){return'[{\r\n  "id": "b47df24737cd647789c7d61ede9fed09",\r\n  "iconFileName": "arachne.png",\r\n  "title": "Arachne",\r\n  "strapline": "A web research tool of the German Archaeological Institute for searching mass archaeological records"\r\n},\r\n{\r\n  "id": "6a39d0bc3c0fd4ef7d2a837b42cf46a1",\r\n  "title": "Google Ancient Places",\r\n  "iconFileName": "gap_logo.png",\r\n  "strapline":  "A Geographic Annotation Platform for reading texts spatially"\r\n}\r\n,\r\n{\r\n  "id": "2db51c1dd976f01bf993a02f959e18f8",\r\n  "title": "nomisma",\r\n  "iconFileName": "Greek.jpeg",\r\n  "strapline":  "Representing ancient coins online"\r\n}\r\n,\r\n{\r\n  "id": "298fafd65586643149e8a8ba47b57052",\r\n  "title": "SPQR",\r\n  "iconFileName": "SPQR.png",\r\n  "strapline":  "From Roman inscriptions to resource descriptions"\r\n}\r\n,\r\n{\r\n  "id": "",\r\n  "title": "Regnum Francorum Online",\r\n  "iconFileName": "Regnum.png",\r\n  "strapline":  "Interactive Maps and Sources of Late Antique and Early Medieval Europe"\r\n}\r\n,\r\n{\r\n  "id": "21e48d8ca46f666467b81a551fbb1cb",\r\n  "title": "Perseus",\r\n  "iconFileName": "Perseus.png",\r\n  "strapline":  "Annotated occurrences of place entities in texts from the Perseus Digital Library"\r\n}\r\n,\r\n{\r\n  "id": "c4c2ed780a8f4f2b698a5c2505ac34ca",\r\n  "title": "CLAROS",\r\n  "iconFileName": "CLAROS.png",\r\n  "strapline":  "Aggregated search of art and archaeology data from the classical world and the far east across four millennia"\r\n}\r\n,\r\n{\r\n  "id": "739128af1e9613de03706a57cef46976",\r\n  "title": "Open Context",\r\n  "iconFileName": "open-context.png",\r\n  "strapline":  "Publications of research data in archaeology and related fields"\r\n}\r\n,\r\n{\r\n  "id": "467b9097b55b6e0831fe6760df93e7f2",\r\n  "title": "FASTI Online",\r\n  "iconFileName": "FASTI.png",\r\n  "strapline":  "A database of archaeological excavations since the year 2000"\r\n}\r\n,\r\n{\r\n  "id": "a306666ae581e8d611d56a1dfdaea256",\r\n  "title": "Ure Museum",\r\n  "iconFileName": "URE.png",\r\n  "strapline":  "University Museum of ancient Greek, Egyptian & a little Roman stuff"\r\n}\r\n,\r\n{\r\n  "id": "5555ffd0e36e088c25f76b980139851a",\r\n  "title": "ORBIS",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "The Stanford Geospatial Network Model of the Roman World"\r\n}\r\n,\r\n{\r\n"id": "4f9bb4e7c0b0c329db0d2696814ffd2d",\r\n  "title": "SquinchPix",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "An archive of European imagery"\r\n}\r\n,\r\n{\r\n  "id": "77b38b7fc7d81fb278d1c3634638f8ee",\r\n  "title": "Sharing Ancient Wisdoms (SAWS)",\r\n  "iconFileName": "saws.jpg",\r\n  "strapline": "Medieval gnomologia (collections of wise sayings)"\r\n}\r\n,\r\n{\r\n  "id": "434fc5aea15f6d39040c1282c4a2df63",\r\n  "title": "Portable Antiquities Scheme",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Pleiades URIs appearing within the Portable Antiquities Scheme database"\r\n}\r\n,\r\n{\r\n  "id": "9fdb2911bcfc625c87cfce10d97b3de7",\r\n  "title": "ORACC",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Open Richly Annotated Cuneiform Corpus"\r\n}\r\n,\r\n{\r\n  "id": "7bb4b28758a3607f9b1eea3b48df90a",\r\n  "title": "Meketre",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Reliefs and paintings of Middle Kingdom tombs of Ancient Egypt"\r\n}\r\n,\r\n{\r\n  "id": "71fd46410b14843985db023501f2f76f",\r\n  "title": "The Book of the Dead Project",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "The evolution of the ancient egyptian Book of the Dead"\r\n}\r\n,\r\n{\r\n  "id": "e2e0b0b2199b875ff3acdce3f962c128",\r\n  "title": "ISAW Papers",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Pleiades URIs appearing in ISAW Papers articles"\r\n}\r\n,\r\n{\r\n  "id": "e9e161a08db2906d135d7abefb145636",\r\n  "title": "OCRE",\r\n  "iconFileName": "pelagios.png",\r\n  "strapline":  "Online Coins of the Roman Empire"\r\n}\r\n]\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n'}),define("lib/jquery_pagination",["jquery"],function(e){(function(e){e.PaginationCalculator=function(e,t){this.maxentries=e,this.opts=t},e.extend(e.PaginationCalculator.prototype,{numPages:function(){return Math.ceil(this.maxentries/this.opts.items_per_page)},getInterval:function(e){var t=Math.floor(this.opts.num_display_entries/2),n=this.numPages(),r=n-this.opts.num_display_entries,i=e>t?Math.max(Math.min(e-t,r),0):0,s=e>t?Math.min(e+t+this.opts.num_display_entries%2,n):Math.min(this.opts.num_display_entries,n);return{start:i,end:s}}}),e.PaginationRenderers={},e.PaginationRenderers.defaultRenderer=function(t,n){this.maxentries=t,this.opts=n,this.pc=new e.PaginationCalculator(t,n)},e.extend(e.PaginationRenderers.defaultRenderer.prototype,{createLink:function(t,n,r){var i,s=this.pc.numPages();return t=t<0?0:t<s?t:s-1,r=e.extend({text:t+1,classes:""},r||{}),t==n?i=e("<span class='current'>"+r.text+"</span>"):i=e("<a>"+r.text+"</a>").attr("href",this.opts.link_to.replace(/__id__/,t)),r.classes&&i.addClass(r.classes),i.data("page_id",t),i},appendRange:function(e,t,n,r,i){var s;for(s=n;s<r;s++)this.createLink(s,t,i).appendTo(e)},getLinks:function(t,n){var r,i,s=this.pc.getInterval(t),o=this.pc.numPages(),u=e("<div class='pagination'></div>");return this.opts.prev_text&&(t>0||this.opts.prev_show_always)&&u.append(this.createLink(t-1,t,{text:this.opts.prev_text,classes:"prev"})),s.start>0&&this.opts.num_edge_entries>0&&(i=Math.min(this.opts.num_edge_entries,s.start),this.appendRange(u,t,0,i,{classes:"sp"}),this.opts.num_edge_entries<s.start&&this.opts.ellipse_text&&e("<span>"+this.opts.ellipse_text+"</span>").appendTo(u)),this.appendRange(u,t,s.start,s.end),s.end<o&&this.opts.num_edge_entries>0&&(o-this.opts.num_edge_entries>s.end&&this.opts.ellipse_text&&e("<span>"+this.opts.ellipse_text+"</span>").appendTo(u),r=Math.max(o-this.opts.num_edge_entries,s.end),this.appendRange(u,t,r,o,{classes:"ep"})),this.opts.next_text&&(t<o-1||this.opts.next_show_always)&&u.append(this.createLink(t+1,t,{text:this.opts.next_text,classes:"next"})),e("a",u).click(n),u}}),e.fn.pagination=function(t,n){function u(t){t.preventDefault();var n,r=e(t.target).data("page_id"),i=a(r);return i||t.stopPropagation(),i}function a(e){r.data("current_page",e),s=i.getLinks(e,u),r.empty(),s.appendTo(r);var t=n.callback(e,r);return t}n=e.extend({items_per_page:10,num_display_entries:11,current_page:0,num_edge_entries:0,link_to:"#",prev_text:"Prev",next_text:"Next",ellipse_text:"...",prev_show_always:!0,next_show_always:!0,renderer:"defaultRenderer",show_if_single_page:!1,load_first_page:!0,callback:function(){return!1}},n||{});var r=this,i,s,o;o=parseInt(n.current_page),r.data("current_page",o),t=!t||t<0?1:t,n.items_per_page=!n.items_per_page||n.items_per_page<0?1:n.items_per_page;if(!e.PaginationRenderers[n.renderer])throw new ReferenceError("Pagination renderer '"+n.renderer+"' was not found in jQuery.PaginationRenderers object.");i=new e.PaginationRenderers[n.renderer](t,n);var f=new e.PaginationCalculator(t,n),l=f.numPages();r.bind("setPage",{numPages:l},function(e,t){if(t>=0&&t<e.data.numPages)return a(t),!1}),r.bind("prevPage",function(t){var n=e(this).data("current_page");return n>0&&a(n-1),!1}),r.bind("nextPage",{numPages:l},function(t){var n=e(this).data("current_page");return n<t.data.numPages-1&&a(n+1),!1}),s=i.getLinks(o,u),r.empty(),(l>1||n.show_if_single_page)&&s.appendTo(r),n.load_first_page&&n.callback(o,r)}})(jQuery)}),define("app/pelagios",["jquery","app/util","app/search_map","app/place_map","lib/text!template/widget_container.tmpl","lib/text!template/place.tmpl","lib/text!template/section.tmpl","lib/text!template/flickr.tmpl","lib/text!template/pleiades.tmpl","lib/text!template/pelagios_partner.tmpl","lib/text!template/error.tmpl","lib/text!template/search.tmpl","lib/text!template/annotations.tmpl","lib/text!template/search_results.tmpl","lib/text!template/new_tab.tmpl","lib/text!template/about.tmpl","lib/text!app/dataset.json","jqueryui","lib/jquery_pagination"],function($,util,search_map,place_map,widget_container_tmpl,place_tmpl,section_tmpl,flickr_tmpl,pleiades_tmpl,pelagios_partner_tmpl,error_tmpl,search_tmpl,annotations_tmpl,search_results_tmpl,new_tab_tmpl,about_tmpl,datasetJSON){function Widget(widgetContext){function widgetPopUp(){if(widgetContext.newTab){var e=window.open(),t=Handlebars.templates.new_tab({widgetContext:widgetContext});$(e.document.body).html(t);var n=document.createElement("script");n.type="text/javascript",n.src=widgetContext.baseURL+"lib/require.js",e.document.head.appendChild(n);var r=document.createElement("script");r.type="text/javascript",r.src=widgetContext.baseURL+"place.js",e.document.head.appendChild(r)}else{$(".pelagios .container").hide(),$("#"+widgetContext.widgetID+"-container").show();var i=$("#"+widgetContext.widgetID+"-icon").offset(),s={top:$(window).scrollTop(),left:200};$("#"+widgetContext.widgetID+"-container").offset(s),widgetContext.displayMap&&placeMap.hasOwnProperty("refresh")&&placeMap.refresh()}}function displayPlace(e){debug("DISPLAYING PLACE: pleiadesID: "+e),placeMap={},clearPlace(),showPleiadesData(e),widgetContext.type=="place"&&showAboutInformation(),showPelagiosData(e),showFlickrData(e)}function showAboutInformation(){addSection("about","About Pelagios and this widget",widgetContext.imageDir+"partner_icons/pelagios.png","");var e=Handlebars.templates.about();$("#"+widgetContext.widgetID+"-content-about").append(e)}function clearPlace(){$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty()}function showFlickrData(e){function r(t){if(t.hasOwnProperty("photos")&&t.photos.hasOwnProperty("photo")&&t.photos.photo.length>0){addSection("flickr","flickr",widgetContext.imageDir+"icons/flickr-logo.png","Photo sharing website");var n={photo:t.photos.photo.slice(0,config.MAX_PHOTOS_FLICKR-1),pleiadesID:e},r=Handlebars.templates.flickr(n);$("#"+widgetContext.widgetID+"-content-flickr").append(r)}}var t="";widgetContext.pleiadesFlickrGroupOnly&&(t="&group_id=1876758@N22");var n=config.URL_FLICKR_SEARCH+"&machine_tags=pleiades:depicts="+e+t+"&tag_mode=all&api_key="+config.API_KEY_FLICKR+"&jsoncallback=?";util.getAPIData(n,r,!1,config.TIMEOUT_FLICKR,!1)}function showPleiadesData(e){function r(e,t,n){$("#"+widgetContext.widgetID+"-content").empty();if(e.status=="404")var r={title:config.MSG_TITLE_PLACE_NOT_FOUND,msg:config.MSG_PLACE_NOT_FOUND};else var r={title:config.MSG_TITLE_PLEIADES_TIMEOUT,msg:config.MSG_PLEIADES_TIMEOUT};var i=Handlebars.templates.error(r);$("#"+widgetContext.widgetID+"-content").append(i)}function i(e){var t=!1;e.names.length>1&&(t=e.names.join(", "));var n={title:e.names[0]?e.names[0]:"Untitled",description:e.description,altNames:t,pleiadesID:e.id,widgetContext:widgetContext},r=Handlebars.templates.pleiades(n);$("#"+widgetContext.widgetID+"-pleiades").append(r),e.reprPoint!=null&&widgetContext.displayMap&&(placeMap=new place_map.PlaceMap(widgetContext.widgetID+"-map_canvas"),placeMap.setMarker(e.reprPoint,e.names[0])),e.reprPoint==null&&(placeMap=null),showPlace()}var t=config.URL_PLEIADES+e,n=config.URL_PLEIADES+e+"/json";util.getAPIData(n,i,r,config.TIMEOUT_PLEIADES,!0)}function showPelagiosData(e){function n(e){$.each(e,function(n,i){i.hasOwnProperty("root_dataset")&&(i=i.root_dataset);var s;rootDatasetID=i.uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),s=getDatasetInfo(rootDatasetID);if(typeof s!="undefined"){addSection(rootDatasetID,s.title,widgetContext.iconDir+s.iconFileName,s.strapline);var o=new Array;if(typeof i.subsets!="undefined")for(var u=0;u<i.subsets.length;u++)o[u]={},o[u].widgetContext=widgetContext,o[u].title=i.subsets[u].title,o[u].id=i.subsets[u].uri.replace(/http:\/\/pelagios.dme.ait.ac.at\/api\/datasets\//g,""),o[u].references=i.subsets[u].annotations_referencing_place,o[u].multipleReferences=o[u].references>1?!0:!1,o[u].anyReferences=o[u].references>0?!0:!1;else o[0]={},o[0].widgetContext=widgetContext,o[0].title=i.title,o[0].id=rootDatasetID,o[0].references=e[n].annotations_referencing_place,o[0].multipleReferences=o[0].references>1?!0:!1;var a={subdataset:o,rootDatasetID:rootDatasetID,widgetContext:widgetContext},f=Handlebars.templates.pelagios_partner(a);$("#"+widgetContext.widgetID+"-content-"+rootDatasetID).append(f),$("#"+widgetContext.widgetID+"-subdatasets-"+rootDatasetID).css("list-style-image","url("+widgetContext.imageDir+"icons/bullet.png)");for(var u=0;u<o.length;u++)r(o[u])}else debug("ERROR: Could not find info for root dataset "+i.title+" "+t)})}function r(e){$("#"+widgetContext.widgetID+"-subdataset_title-"+e.id).click({id:e.id},o),$("#"+widgetContext.widgetID+"-subdataset_content-"+e.id).hide();var t=function(t){i(t,e.id)};$("#"+widgetContext.widgetID+"-subdataset_pagination-"+e.id).pagination(e.references,{items_per_page:config.NUM_ANNOTATIONS_TO_DISPLAY,callback:t,next_show_always:!1,prev_show_always:!1}),i(0,e.id)}function i(t,n){var r=config.URL_PELAGIOS_API_V2+"datasets/"+n+"/annotations.json?forPlace="+encodeURIComponent(config.URL_PLEIADES+e)+"&limit="+config.NUM_ANNOTATIONS_TO_DISPLAY+"&offset="+t*config.NUM_ANNOTATIONS_TO_DISPLAY+"&callback=?",i=function(e){typeof e.annotations!="undefined"&&e.annotations.length>0&&s(e.annotations,n)};return util.getAPIData(r,i),!1}function s(e,t){var n=new Array;$.each(e,function(e,t){n[e]={},t.hasOwnProperty("target_title")?n[e].label=t.target_title:n[e].label=t.title?t.title:"Item "+(e+1),n[e].uri=t.hasTarget});var r={subdatasetID:t,annotation:n,widgetContext:widgetContext},i=Handlebars.templates.annotations(r);$("#"+widgetContext.widgetID+"-annotations-"+t).empty(),$("#"+widgetContext.widgetID+"-annotations-"+t).append(i),$("#"+widgetContext.widgetID+"-subdataset-"+t).focus()}function o(e){var t=e.data.id;toggleSelectedLink(widgetContext.widgetID+"-subdataset_hits-"+t),$("#"+widgetContext.widgetID+"-subdataset_content-"+t).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-subdataset-"+t)}function u(e){$("#"+widgetID+"-subdataset_content-"+e).hide()}var t=config.URL_PELAGIOS_API_V2+"places/"+encodeURIComponent(config.URL_PLEIADES+e)+"/datasets.json?callback=?";util.getAPIData(t,n,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResults(){var e=config.URL_PELAGIOS_API_V2+"search.json?query="+searchString+"&callback=?";debug("RETRIEVING SEARCH DATA: searchString: "+searchString+" URL:"+e),util.getAPIData(e,displaySearchResultsData,!1,config.TIMEOUT_PELAGIOS,!1)}function displaySearchResultsData(e){$("#"+widgetContext.widgetID+"-search-map").empty(),$("#"+widgetContext.widgetID+"-search-results").empty(),$("#"+widgetContext.widgetID+"-pleiades").empty(),$("#"+widgetContext.widgetID+"-sections").empty();if(e.length>0){var t=new Array;$.each(e,function(e,n){place={},place.label=n.label,place.pleiadesID=n.uri.replace(/.*places.*F/g,""),place.geojson=n,n.feature_type&&(place.feature_type=n.feature_type.replace(/.*place-types\//g,"")),place.content="<h2>"+place.label+"</h2>",place.content+='<p id="'+widgetContext.widgetID+"-info-"+place.pleiadesID+'">View info</p>',place.widgetID=widgetContext.widgetID,t[e]=place});var n={place:t,widgetContext:widgetContext,searchString:searchString},r=Handlebars.templates.search_results(n);$("#"+widgetContext.widgetID+"-search-results").append(r),$(".pelagios .list-results li").css("background-image","url("+widgetContext.imageDir+"place_type_icons/unknown.png)");var i={temple:"temple.png",santuary:"sanctuary.png",river:"river.png","water-open":"river.png",mountain:"mountain.png",island:"island.png",tribe:"tribe.png",settlement:"settlement.png",urban:"settlement.png",people:"people.png",aqueduct:"aqueduct.png",cape:"cape.png",mine:"mine.png",station:"port.png",road:"road.png",villa:"villa.png",wall:"wall.png",province:"people.png"};$.each(i,function(e,t){$(".pelagios .list-results li."+e).css("background-image","url("+widgetContext.imageDir+"place_type_icons/"+t+")")}),widgetContext.displayMap&&(searchMap=new search_map.SearchMap(widgetContext.widgetID+"-search-map_canvas")),$.each(t,function(e,t){widgetContext.displayMap&&searchMap.addMarker(t.geojson,t.label,t.content,function(){s(t.pleiadesID)}),$("#"+widgetContext.widgetID+"-place-"+t.pleiadesID).click(function(){s(t.pleiadesID)})});function s(e){$(".pelagios-search-result-list li").css("text-decoration","none"),$(".pelagios-search-result-list li").css("font-weight","normal"),$("#"+widgetContext.widgetID+"-place-"+e).css("text-decoration","underline"),$("#"+widgetContext.widgetID+"-place-"+e).css("font-weight","bold"),displayPlace(e)}showSearchResults()}else $("#"+widgetContext.widgetID+"-search-results").append("<h3 class='no-search-results'>No matches found for '"+searchString+"'</h3>"),$("#"+widgetContext.widgetID+"-search-results").show()}function hideSearchResults(){$("#"+widgetContext.widgetID+"-search-results-map").hide(),$("#"+widgetContext.widgetID+"-search-results").hide()}function showSearchResults(){widgetContext.displayMap&&($("#"+widgetContext.widgetID+"-search-results-map").show(),searchMap.refresh()),$("#"+widgetContext.widgetID+"-search-results").show()}function hidePlace(){$("#"+widgetContext.widgetID+"-map").hide(),$("#"+widgetContext.widgetID+"-place").hide()}function showPlace(){$("#"+widgetContext.widgetID+"-place").show(),widgetContext.displayMap&&placeMap!=null&&($("#"+widgetContext.widgetID+"-map").show(),placeMap.refresh()),placeMap==null&&$("#"+widgetContext.widgetID+"-map").hide()}function addSection(e,t,n,r){var i={name:e,title:t,iconURL:n,strapline:r,widgetContext:widgetContext},s=Handlebars.templates.section(i);$("#"+widgetContext.widgetID+"-sections").append(s),$("#"+widgetContext.widgetID+"-content-"+e).hide(),$("#"+widgetContext.widgetID+"-header-"+e).click(function(){$("#"+widgetContext.widgetID+"-content-"+e).toggle(),toggleIcon(widgetContext.widgetID+"-toggle-"+e)})}function toggleIcon(e){var t=$("#"+e).attr("src"),n=t==widgetContext.imageDir+"icons/down-arrow.png"?widgetContext.imageDir+"icons/right-arrow.png":widgetContext.imageDir+"icons/down-arrow.png";$("#"+e).attr("src",n)}function toggleSelectedLink(e){var t=$("#"+e),n=t.css("text-decoration"),r=n=="underline"?"none":"underline";t.css("text-decoration",r)}function getDatasetInfo(e){var t;return $.each(dataset,function(e,n){n.id==rootDatasetID&&(t=n)}),t}function debug(e){widgetContext.debug&&console.log(e)}var placeMap={},searchMap={},searchString="";eval(widget_container_tmpl),eval(place_tmpl),eval(section_tmpl),eval(flickr_tmpl),eval(pleiades_tmpl),eval(pelagios_partner_tmpl),eval(error_tmpl),eval(search_tmpl),eval(annotations_tmpl),eval(search_results_tmpl),eval(new_tab_tmpl),eval(about_tmpl);var dataset=$.parseJSON(datasetJSON);typeof $("#"+widgetContext.widgetID)==undefined&&debug("ERROR: $(#"+widgetContext.widgetID+") is undefined"),$("head").append('<link rel="stylesheet" type="text/css" href="'+widgetContext.cssDir+'pelagios.css" media="screen" />');var html=Handlebars.templates.widget_container({widgetContext:widgetContext});$("#"+widgetContext.widgetID).append(html),$(".pelagios .container").width(widgetContext.containerWidth);try{$("#"+widgetContext.widgetID+"-container").draggable()}catch(err){debug("ERROR: Could not make widget draggable")}this.setTypePlace=function(){var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),widgetContext.icon==1&&($("#"+widgetContext.widgetID+"-container").hide(),$("#"+widgetContext.widgetID+"-icon").click(widgetPopUp),widgetContext.onMouseOver&&($("#"+widgetContext.widgetID+"-icon").mouseover(widgetPopUp),$(document).click(function(){$("#"+widgetContext.widgetID+"-container").hide()}),$("#"+widgetContext.widgetID).click(function(e){return e.stopPropagation(),!1})),$("#"+widgetContext.widgetID+"-close-widget").click(function(){$("#"+widgetContext.widgetID+"-container").hide()})),displayPlace(widgetContext.pleiadesID)},this.setTypeSearch=function(){var e=Handlebars.templates.search({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e);var e=Handlebars.templates.place({widgetContext:widgetContext});$("#"+widgetContext.widgetID+"-content").append(e),hidePlace(),hideSearchResults(),$("#"+widgetContext.widgetID+"-search-form").submit(function(){return searchString=$("input:first").val(),displaySearchResults(),!1})}}var config={URL_PELAGIOS_API_V2:"http://pelagios.dme.ait.ac.at/api/",API_KEY_FLICKR:"ddf82df2aba035bfcf14c12a4eff3335",TIMEOUT_PLEIADES:6e3,TIMEOUT_PELAGIOS:6e4,TIMEOUT_FLICKR:6e3,URL_PLEIADES:"http://pleiades.stoa.org/places/",URL_FLICKR_SEARCH:"http://api.flickr.com/services/rest/?format=json&method=flickr.photos.search",MAX_PHOTOS_FLICKR:30,MSG_PLACE_NOT_FOUND:"The place specified for this widget does not exist in the Pleiades gazetteer.",MSG_TITLE_PLACE_NOT_FOUND:"Error: Unknown Place",MSG_PLEIADES_TIMEOUT:"We cannot display the place name and map at the moment because the Pleiades website is not responding. Apologies for the inconvenience and please try again later.",MSG_TITLE_PLEIADES_TIMEOUT:"Error: Pleiades not responding",NUM_ANNOTATIONS_TO_DISPLAY:20};return{Widget:Widget}});var Handlebars={};Handlebars.VERSION="1.0.beta.2",Handlebars.helpers={},Handlebars.partials={},Handlebars.registerHelper=function(e,t,n){n&&(t.not=n),this.helpers[e]=t},Handlebars.registerPartial=function(e,t){this.partials[e]=t},Handlebars.registerHelper("helperMissing",function(e){if(arguments.length===2)return undefined;throw new Error("Could not find property '"+e+"'")}),Handlebars.registerHelper("blockHelperMissing",function(e,t){var n=t.inverse||function(){},r=t.fn,i="",s=Object.prototype.toString.call(e);s==="[object Function]"&&(e=e());if(e===!0)return r(this);if(e===!1||e==null)return n(this);if(s==="[object Array]"){if(e.length>0)for(var o=0,u=e.length;o<u;o++)i+=r(e[o]);else i=n(this);return i}return r(e)}),Handlebars.registerHelper("each",function(e,t){var n=t.fn,r=t.inverse,i="";if(e&&e.length>0)for(var s=0,o=e.length;s<o;s++)i+=n(e[s]);else i=r(this);return i}),Handlebars.registerHelper("if",function(e,t){return!e||Handlebars.Utils.isEmpty(e)?t.inverse(this):t.fn(this)}),Handlebars.registerHelper("unless",function(e,t){var n=t.fn,r=t.inverse;return t.fn=r,t.inverse=n,Handlebars.helpers["if"].call(this,e,t)}),Handlebars.registerHelper("with",function(e,t){return t.fn(e)}),Handlebars.Exception=function(e){var t=Error.prototype.constructor.apply(this,arguments);for(var n in t)t.hasOwnProperty(n)&&(this[n]=t[n])},Handlebars.Exception.prototype=new Error,Handlebars.SafeString=function(e){this.string=e},Handlebars.SafeString.prototype.toString=function(){return this.string.toString()},function(){var e={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},t=/&(?!\w+;)|[<>"'`]/g,n=/[&<>"'`]/,r=function(t){return e[t]||"&amp;"};Handlebars.Utils={escapeExpression:function(e){return e instanceof Handlebars.SafeString?e.toString():e==null||e===!1?"":n.test(e)?e.replace(t,r):e},isEmpty:function(e){return typeof e=="undefined"?!0:e===null?!0:e===!1?!0:Object.prototype.toString.call(e)==="[object Array]"&&e.length===0?!0:!1}}}(),Handlebars.VM={template:function(e){var t={escapeExpression:Handlebars.Utils.escapeExpression,invokePartial:Handlebars.VM.invokePartial,programs:[],program:function(e,t,n){var r=this.programs[e];return n?Handlebars.VM.program(t,n):r?r:(r=this.programs[e]=Handlebars.VM.program(t),r)},programWithDepth:Handlebars.VM.programWithDepth,noop:Handlebars.VM.noop};return function(n,r){return r=r||{},e.call(t,Handlebars,n,r.helpers,r.partials,r.data)}},programWithDepth:function(e,t,n){var r=Array.prototype.slice.call(arguments,2);return function(n,i){return i=i||{},e.apply(this,[n,i.data||t].concat(r))}},program:function(e,t){return function(n,r){return r=r||{},e(n,r.data||t)}},noop:function(){return""},invokePartial:function(e,t,n,r,i){if(e===undefined)throw new Handlebars.Exception("The partial "+t+" could not be found");if(e instanceof Function)return e(n,{helpers:r,partials:i});if(!Handlebars.compile)throw new Handlebars.Exception("The partial "+t+" could not be compiled when running in vm mode");return i[t]=Handlebars.compile(e),i[t](n,{helpers:r,partials:i})}},Handlebars.template=Handlebars.VM.template,define("lib/handlebars",function(){});if(!PELAGIOS_SEARCH_MAIN_JS_RUN){var PELAGIOS_SEARCH_MAIN_JS_RUN=!0;(function(){var e=document.getElementsByTagName("script"),t=e[e.length-1].src,n=t.replace(/search.js/g,"");require.config({paths:{jquery:"http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min",jqueryui:"https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min"},priority:["jquery"],jQuery:"1.7.1",waitSeconds:5,baseUrl:n,shim:{jqueryui:{deps:["jquery"]},"lib/jquery_pagination":{deps:["jquery"]}}}),require(["app/pelagios","app/util","lib/handlebars"],function(e,t){var r=window.jQuery.noConflict(!0);r(document).ready(function(r){r(".pelagios-search").each(function(){var i={baseURL:n,widgetID:r(this).attr("id"),displayMap:r(this).attr("data-display_map")?r(this).attr("data-display_map")!=="false":!0,debug:r(this).attr("data-debug")?r(this).attr("data-debug")==="true":!1,overlay:!1,templateDir:n+"template/",imageDir:n+"images/",iconDir:n+"images/partner_icons/",scriptDir:n+"scripts/",cssDir:n+"css/",containerWidth:r(this).attr("data-container_width")?r(this).attr("data-container_width"):"550",mapWidth:r(this).attr("data-container_width")?r(this).attr("data-container_width")-125:"425",pleiadesFlickrGroupOnly:!1,type:"search"};t.includesGoogleMaps2()&&(i.displayMap=!1),i.debug&&console.log("CREATING WIDGET widgetID:"+i.widgetID+" baseURL:"+i.baseURL),widget=new e.Widget(i),widget.setTypeSearch()})})})})()}define("search",function(){});var requirejs,require,define;(function(global){function isFunction(e){return ostring.call(e)==="[object Function]"}function isArray(e){return ostring.call(e)==="[object Array]"}function each(e,t){if(e){var n;for(n=0;n<e.length;n+=1)if(e[n]&&t(e[n],n,e))break}}function eachReverse(e,t){if(e){var n;for(n=e.length-1;n>-1;n-=1)if(e[n]&&t(e[n],n,e))break}}function hasProp(e,t){return e.hasOwnProperty(t)}function eachProp(e,t){var n;for(n in e)if(e.hasOwnProperty(n)&&t(e[n],n))break}function mixin(e,t,n,r){return t&&eachProp(t,function(t,i){if(n||!hasProp(e,i))r&&typeof t!="string"?(e[i]||(e[i]={}),mixin(e[i],t,n,r)):e[i]=t}),e}function bind(e,t){return function(){return t.apply(e,arguments)}}function scripts(){return document.getElementsByTagName("script")}function getGlobal(e){if(!e)return e;var t=global;return each(e.split("."),function(e){t=t[e]}),t}function makeContextModuleFunc(e,t,n){return function(){var r=aps.call(arguments,0),i;return n&&isFunction(i=r[r.length-1])&&(i.__requireJsBuild=!0),r.push(t),e.apply(null,r)}}function addRequireMethods(e,t,n){each([["toUrl"],["undef"],["defined","requireDefined"],["specified","requireSpecified"]],function(r){var i=r[1]||r[0];e[r[0]]=t?makeContextModuleFunc(t[i],n):function(){var e=contexts[defContextName];return e[i].apply(e,arguments)}})}function makeError(e,t,n,r){var i=new Error(t+"\nhttp://requirejs.org/docs/errors.html#"+e);return i.requireType=e,i.requireModules=r,n&&(i.originalError=n),i}function newContext(e){function v(e){var t,n;for(t=0;e[t];t+=1){n=e[t];if(n===".")e.splice(t,1),t-=1;else if(n===".."){if(t===1&&(e[2]===".."||e[0]===".."))break;t>0&&(e.splice(t-1,2),t-=2)}}}function m(e,n,r){var i=n&&n.split("/"),s=i,o=t.map,u=o&&o["*"],a,f,l,c,h,p,d,m;e&&e.charAt(0)==="."&&(n?(t.pkgs[n]?s=i=[n]:s=i.slice(0,i.length-1),e=s.concat(e.split("/")),v(e),f=t.pkgs[a=e[0]],e=e.join("/"),f&&e===a+"/"+f.main&&(e=a)):e.indexOf("./")===0&&(e=e.substring(2)));if(r&&(i||u)&&o){c=e.split("/");for(h=c.length;h>0;h-=1){d=c.slice(0,h).join("/");if(i)for(p=i.length;p>0;p-=1){l=o[i.slice(0,p).join("/")];if(l){l=l[d];if(l){m=l;break}}}!m&&u&&u[d]&&(m=u[d]);if(m){c.splice(0,h,m),e=c.join("/");break}}}return e}function g(e){isBrowser&&each(scripts(),function(t){if(t.getAttribute("data-requiremodule")===e&&t.getAttribute("data-requirecontext")===h.contextName)return t.parentNode.removeChild(t),!0})}function y(e){var n=t.paths[e];if(n&&isArray(n)&&n.length>1)return g(e),n.shift(),h.undef(e),h.require([e]),!0}function b(e,t,n,r){var i=e?e.indexOf("!"):-1,o=null,f=t?t.name:null,l=e,c=!0,p="",d,v,g;return e||(c=!1,e="_@r"+(u+=1)),i!==-1&&(o=e.substring(0,i),e=e.substring(i+1,e.length)),o&&(o=m(o,f,r),v=s[o]),e&&(o?v&&v.normalize?p=v.normalize(e,function(e){return m(e,f,r)}):p=m(e,f,r):(p=m(e,f,r),d=h.nameToUrl(p))),g=o&&!v&&!n?"_unnormalized"+(a+=1):"",{prefix:o,name:p,parentMap:t,unnormalized:!!g,url:d,originalName:l,isDefine:c,id:(o?o+"!"+p:p)+g}}function w(e){var t=e.id,r=n[t];return r||(r=n[t]=new h.Module(e)),r}function E(e,t,r){var i=e.id,o=n[i];hasProp(s,i)&&(!o||o.defineEmitComplete)?t==="defined"&&r(s[i]):w(e).on(t,r)}function S(e,t){var r=e.requireModules,i=!1;t?t(e):(each(r,function(t){var r=n[t];r&&(r.error=e,r.events.error&&(i=!0,r.emit("error",e)))}),i||req.onError(e))}function x(){globalDefQueue.length&&(apsp.apply(i,[i.length-1,0].concat(globalDefQueue)),globalDefQueue=[])}function T(e,t,n){var r=e&&e.map,i=makeContextModuleFunc(n||h.require,r,t);return addRequireMethods(i,h,r),i.isBrowser=isBrowser,i}function N(e){delete n[e],each(f,function(t,n){if(t.map.id===e)return f.splice(n,1),t.defined||(h.waitCount-=1),!0})}function C(e,t){var r=e.map.id,i=e.depMaps,s;if(!e.inited)return;return t[r]?e:(t[r]=!0,each(i,function(e){var i=e.id,o=n[i];if(!o)return;return!o.inited||!o.enabled?(s=null,delete t[r],!0):s=C(o,mixin({},t))}),s)}function k(e,t,r){var i=e.map.id,o=e.depMaps;if(!e.inited||!e.map.isDefine)return;return t[i]?s[i]:(t[i]=e,each(o,function(s){var o=s.id,u=n[o],a;if(p[o])return;if(u){if(!u.inited||!u.enabled){r[i]=!0;return}a=k(u,t,r),r[o]||e.defineDepById(o,a)}}),e.check(!0),s[i])}function L(e){e.check()}function A(){var e=t.waitSeconds*1e3,r=e&&h.startTime+e<(new Date).getTime(),i=[],s=!1,o=!0,u,a,c,p;if(l)return;l=!0,eachProp(n,function(e){u=e.map,a=u.id;if(!e.enabled)return;if(!e.error)if(!e.inited&&r)y(a)?(p=!0,s=!0):(i.push(a),g(a));else if(!e.inited&&e.fetched&&u.isDefine){s=!0;if(!u.prefix)return o=!1}});if(r&&i.length)return c=makeError("timeout","Load timeout for modules: "+i,null,i),c.contextName=h.contextName,S(c);o&&(each(f,function(e){if(e.defined)return;var t=C(e,{}),n={};t&&(k(t,n,{}),eachProp(n,L))}),eachProp(n,L)),(!r||p)&&s&&(isBrowser||isWebWorker)&&!d&&(d=setTimeout(function(){d=0,A()},50)),l=!1}function O(e){w(b(e[0],null,!0)).init(e[1],e[2])}function M(e,t,n,r){e.detachEvent&&!isOpera?r&&e.detachEvent(r,t):e.removeEventListener(n,t,!1)}function _(e){var t=e.currentTarget||e.srcElement;return M(t,h.onScriptLoad,"load","onreadystatechange"),M(t,h.onScriptError,"error"),{node:t,id:t&&t.getAttribute("data-requiremodule")}}var t={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{}},n={},r={},i=[],s={},o={},u=1,a=1,f=[],l,c,h,p,d;return p={require:function(e){return T(e)},exports:function(e){e.usingExports=!0;if(e.map.isDefine)return e.exports=s[e.map.id]={}},module:function(e){return e.module={id:e.map.id,uri:e.map.url,config:function(){return t.config&&t.config[e.map.id]||{}},exports:s[e.map.id]}}},c=function(e){this.events=r[e.id]||{},this.map=e,this.shim=t.shim[e.id],this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},c.prototype={init:function(e,t,n,r){r=r||{};if(this.inited)return;this.factory=t,n?this.on("error",n):this.events.error&&(n=bind(this,function(e){this.emit("error",e)})),this.depMaps=e&&e.slice(0),this.depMaps.rjsSkipMap=e.rjsSkipMap,this.errback=n,this.inited=!0,this.ignore=r.ignore,r.enabled||this.enabled?this.enable():this.check()},defineDepById:function(e,t){var n;return each(this.depMaps,function(t,r){if(t.id===e)return n=r,!0}),this.defineDep(n,t)},defineDep:function(e,t){this.depMatched[e]||(this.depMatched[e]=!0,this.depCount-=1,this.depExports[e]=t)},fetch:function(){if(this.fetched)return;this.fetched=!0,h.startTime=(new Date).getTime();var e=this.map;if(!this.shim)return e.prefix?this.callPlugin():this.load();T(this,!0)(this.shim.deps||[],bind(this,function(){return e.prefix?this.callPlugin():this.load()}))},load:function(){var e=this.map.url;o[e]||(o[e]=!0,h.load(this.map.id,e))},check:function(e){if(!this.enabled||this.enabling)return;var t=this.map.id,r=this.depExports,i=this.exports,o=this.factory,u,a;if(!this.inited)this.fetch();else if(this.error)this.emit("error",this.error);else if(!this.defining){this.defining=!0;if(this.depCount<1&&!this.defined){if(isFunction(o)){if(this.events.error)try{i=h.execCb(t,o,r,i)}catch(l){u=l}else i=h.execCb(t,o,r,i);this.map.isDefine&&(a=this.module,a&&a.exports!==undefined&&a.exports!==this.exports?i=a.exports:i===undefined&&this.usingExports&&(i=this.exports));if(u)return u.requireMap=this.map,u.requireModules=[this.map.id],u.requireType="define",S(this.error=u)}else i=o;this.exports=i,this.map.isDefine&&!this.ignore&&(s[t]=i,req.onResourceLoad&&req.onResourceLoad(h,this.map,this.depMaps)),delete n[t],this.defined=!0,h.waitCount-=1,h.waitCount===0&&(f=[])}this.defining=!1,e||this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}},callPlugin:function(){var e=this.map,r=e.id,i=b(e.prefix,null,!1,!0);E(i,"defined",bind(this,function(i){var s=this.map.name,o=this.map.parentMap?this.map.parentMap.name:null,u,a,f;if(this.map.unnormalized){i.normalize&&(s=i.normalize(s,function(e){return m(e,o,!0)})||""),a=b(e.prefix+"!"+s,this.map.parentMap,!1,!0),E(a,"defined",bind(this,function(e){this.init([],function(){return e},null,{enabled:!0,ignore:!0})})),f=n[a.id],f&&(this.events.error&&f.on("error",bind(this,function(e){this.emit("error",e)})),f.enable());return}u=bind(this,function(e){this.init([],function(){return e},null,{enabled:!0})}),u.error=bind(this,function(e){this.inited=!0,this.error=e,e.requireModules=[r],eachProp(n,function(e){e.map.id.indexOf(r+"_unnormalized")===0&&N(e.map.id)}),S(e)}),u.fromText=function(e,t){var n=useInteractive;n&&(useInteractive=!1),w(b(e)),req.exec(t),n&&(useInteractive=!0),h.completeLoad(e)},i.load(e.name,T(e.parentMap,!0,function(e,t){return e.rjsSkipMap=!0,h.require(e,t)}),u,t)})),h.enable(i,this),this.pluginMaps[i.id]=i},enable:function(){this.enabled=!0,this.waitPushed||(f.push(this),h.waitCount+=1,this.waitPushed=!0),this.enabling=!0,each(this.depMaps,bind(this,function(e,t){var r,i,s;if(typeof e=="string"){e=b(e,this.map.isDefine?this.map:this.map.parentMap,!1,!this.depMaps.rjsSkipMap),this.depMaps[t]=e,s=p[e.id];if(s){this.depExports[t]=s(this);return}this.depCount+=1,E(e,"defined",bind(this,function(e){this.defineDep(t,e),this.check()})),this.errback&&E(e,"error",this.errback)}r=e.id,i=n[r],!p[r]&&i&&!i.enabled&&h.enable(e,this)})),eachProp(this.pluginMaps,bind(this,function(e){var t=n[e.id];t&&!t.enabled&&h.enable(e,this)})),this.enabling=!1,this.check()},on:function(e,t){var n=this.events[e];n||(n=this.events[e]=[]),n.push(t)},emit:function(e,t){each(this.events[e],function(e){e(t)}),e==="error"&&delete this.events[e]}},h={config:t,contextName:e,registry:n,defined:s,urlFetched:o,waitCount:0,defQueue:i,Module:c,makeModuleMap:b,configure:function(e){e.baseUrl&&e.baseUrl.charAt(e.baseUrl.length-1)!=="/"&&(e.baseUrl+="/");var r=t.pkgs,i=t.shim,s=t.paths,o=t.map;mixin(t,e,!0),t.paths=mixin(s,e.paths,!0),e.map&&(t.map=mixin(o||{},e.map,!0,!0)),e.shim&&(eachProp(e.shim,function(e,t){isArray(e)&&(e={deps:e}),e.exports&&!e.exports.__buildReady&&(e.exports=h.makeShimExports(e.exports)),i[t]=e}),t.shim=i),e.packages&&(each(e.packages,function(e){var t;e=typeof e=="string"?{name:e}:e,t=e.location,r[e.name]={name:e.name,location:t||e.name,main:(e.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}}),t.pkgs=r),eachProp(n,function(e,t){e.map=b(t)}),(e.deps||e.callback)&&h.require(e.deps||[],e.callback)},makeShimExports:function(e){var t;return typeof e=="string"?(t=function(){return getGlobal(e)},t.exports=e,t):function(){return e.apply(global,arguments)}},requireDefined:function(e,t){return hasProp(s,b(e,t,!1,!0).id)},requireSpecified:function(e,t){return e=b(e,t,!1,!0).id,hasProp(s,e)||hasProp(n,e)},require:function(t,n,r,o){var u,a,f,l,c;if(typeof t=="string")return isFunction(n)?S(makeError("requireargs","Invalid require call"),r):req.get?req.get(h,t,n):(u=t,o=n,f=b(u,o,!1,!0),a=f.id,hasProp(s,a)?s[a]:S(makeError("notloaded",'Module name "'+a+'" has not been loaded yet for context: '+e)));r&&!isFunction(r)&&(o=r,r=undefined),n&&!isFunction(n)&&(o=n,n=undefined),x();while(i.length){c=i.shift();if(c[0]===null)return S(makeError("mismatch","Mismatched anonymous define() module: "+c[c.length-1]));O(c)}return l=w(b(null,o)),l.init(t,n,r,{enabled:!0}),A(),h.require},undef:function(e){var t=b(e,null,!0),i=n[e];delete s[e],delete o[t.url],delete r[e],i&&(i.events.defined&&(r[e]=i.events),N(e))},enable:function(e,t){var r=n[e.id];r&&w(e).enable()},completeLoad:function(e){var r=t.shim[e]||{},o=r.exports&&r.exports.exports,u,a,f;x();while(i.length){a=i.shift();if(a[0]===null){a[0]=e;if(u)break;u=!0}else a[0]===e&&(u=!0);O(a)}f=n[e];if(!u&&!s[e]&&f&&!f.inited){if(t.enforceDefine&&(!o||!getGlobal(o))){if(y(e))return;return S(makeError("nodefine","No define call for "+e,null,[e]))}O([e,r.deps||[],r.exports])}A()},toUrl:function(e,t){var n=e.lastIndexOf("."),r=null;return n!==-1&&(r=e.substring(n,e.length),e=e.substring(0,n)),h.nameToUrl(m(e,t&&t.id,!0),r)},nameToUrl:function(e,n){var r,i,s,o,u,a,f,l,c;if(req.jsExtRegExp.test(e))l=e+(n||"");else{r=t.paths,i=t.pkgs,u=e.split("/");for(a=u.length;a>0;a-=1){f=u.slice(0,a).join("/"),s=i[f],c=r[f];if(c){isArray(c)&&(c=c[0]),u.splice(0,a,c);break}if(s){e===s.name?o=s.location+"/"+s.main:o=s.location,u.splice(0,a,o);break}}l=u.join("/")+(n||".js"),l=(l.charAt(0)==="/"||l.match(/^[\w\+\.\-]+:/)?"":t.baseUrl)+l}return t.urlArgs?l+((l.indexOf("?")===-1?"?":"&")+t.urlArgs):l},load:function(e,t){req.load(h,e,t)},execCb:function(e,t,n,r){return t.apply(r,n)},onScriptLoad:function(e){if(e.type==="load"||readyRegExp.test((e.currentTarget||e.srcElement).readyState)){interactiveScript=null;var t=_(e);h.completeLoad(t.id)}},onScriptError:function(e){var t=_(e);if(!y(t.id))return S(makeError("scripterror","Script error",e,[t.id]))}}}function getInteractiveScript(){return interactiveScript&&interactiveScript.readyState==="interactive"?interactiveScript:(eachReverse(scripts(),function(e){if(e.readyState==="interactive")return interactiveScript=e}),interactiveScript)}var version="2.0.4",commentRegExp=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,ostring=Object.prototype.toString,ap=Array.prototype,aps=ap.slice,apsp=ap.splice,isBrowser=typeof window!="undefined"&&!!navigator&&!!document,isWebWorker=!isBrowser&&typeof importScripts!="undefined",readyRegExp=isBrowser&&navigator.platform==="PLAYSTATION 3"?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera=typeof opera!="undefined"&&opera.toString()==="[object Opera]",contexts={},cfg={},globalDefQueue=[],useInteractive=!1,req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath;if(typeof define!="undefined")return;if(typeof requirejs!="undefined"){if(isFunction(requirejs))return;cfg=requirejs,requirejs=undefined}typeof require!="undefined"&&!isFunction(require)&&(cfg=require,require=undefined),req=requirejs=function(e,t,n,r){var i=defContextName,s,o;return!isArray(e)&&typeof e!="string"&&(o=e,isArray(t)?(e=t,t=n,n=r):e=[]),o&&o.context&&(i=o.context),s=contexts[i],s||(s=contexts[i]=req.s.newContext(i)),o&&s.configure(o),s.require(e,t,n)},req.config=function(e){return req(e)},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),addRequireMethods(req),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],baseElement=document.getElementsByTagName("base")[0],baseElement&&(head=s.head=baseElement.parentNode)),req.onError=function(e){throw e},req.load=function(e,t,n){var r=e&&e.config||{},i;if(isBrowser)return i=r.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script"),i.type=r.scriptType||"text/javascript",i.charset="utf-8",i.async=!0,i.setAttribute("data-requirecontext",e.contextName),i.setAttribute("data-requiremodule",t),i.attachEvent&&!(i.attachEvent.toString&&i.attachEvent.toString().indexOf("[native code")<0)&&!isOpera?(useInteractive=!0,i.attachEvent("onreadystatechange",e.onScriptLoad)):(i.addEventListener("load",e.onScriptLoad,!1),i.addEventListener("error",e.onScriptError,!1)),i.src=n,currentlyAddingScript=i,baseElement?head.insertBefore(i,baseElement):head.appendChild(i),currentlyAddingScript=null,i;isWebWorker&&(importScripts(n),e.completeLoad(t))},isBrowser&&eachReverse(scripts(),function(e){head||(head=e.parentNode),dataMain=e.getAttribute("data-main");if(dataMain)return cfg.baseUrl||(src=dataMain.split("/"),mainScript=src.pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath,dataMain=mainScript),dataMain=dataMain.replace(jsSuffixRegExp,""),cfg.deps=cfg.deps?cfg.deps.concat(dataMain):[dataMain],!0}),define=function(e,t,n){var r,i;typeof e!="string"&&(n=t,t=e,e=null),isArray(t)||(n=t,t=[]),!t.length&&isFunction(n)&&n.length&&(n.toString().replace(commentRegExp,"").replace(cjsRequireRegExp,function(e,n){t.push(n)}),t=(n.length===1?["require"]:["require","exports","module"]).concat(t)),useInteractive&&(r=currentlyAddingScript||getInteractiveScript(),r&&(e||(e=r.getAttribute("data-requiremodule")),i=contexts[r.getAttribute("data-requirecontext")])),(i?i.defQueue:globalDefQueue).push([e,t,n])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)})(this),define("requireLib",function(){}) 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/about.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['about'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var foundHelper, self=this; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6   
    67 
    78 
    8   return "<p>This widget displays data from the Pelagios project partners about the location specified.</p>\r\n<p>View the <a href=\"http://pelagios-project.blogspot.co.uk/\" target=\"_blank\">Pelagios website</a>\r\n for more information.</a>\r\n            ";}); 
     9  return "<p>This widget displays data from the Pelagios project partners about the location specified.</p>\r\n<p>View the <a href=\"http://pelagios-project.blogspot.co.uk/\" target=\"_blank\">Pelagios website</a>\r\n for more information.</a>\r\n            "; 
     10  }); 
    911})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/annotations.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['annotations'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this; 
    67 
    78function program1(depth0,data) { 
    89   
    910  var buffer = "", stack1; 
    10   buffer += "\r\n<li><a href=\""; 
    11   stack1 = depth0.uri; 
    12   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    13   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.uri", { hash: {} }); } 
    14   buffer += escapeExpression(stack1) + "\" target=\"_blank\">"; 
    15   stack1 = depth0.label; 
    16   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    17   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.label", { hash: {} }); } 
    18   buffer += escapeExpression(stack1) + "</a></li>\r\n"; 
    19   return buffer;} 
     11  buffer += "\r\n<li><a href=\"" 
     12    + escapeExpression(((stack1 = depth0.uri),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     13    + "\" target=\"_blank\">" 
     14    + escapeExpression(((stack1 = depth0.label),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     15    + "</a></li>\r\n"; 
     16  return buffer; 
     17  } 
    2018 
    21   buffer += "<ul class=\"annotations\" id=\""; 
    22   foundHelper = helpers.widgetContext; 
    23   stack1 = foundHelper || depth0.widgetContext; 
    24   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    25   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    26   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    27   buffer += escapeExpression(stack1) + "-annotations-"; 
    28   foundHelper = helpers.subdatasetID; 
    29   stack1 = foundHelper || depth0.subdatasetID; 
    30   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    31   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "subdatasetID", { hash: {} }); } 
    32   buffer += escapeExpression(stack1) + "\">\r\n"; 
    33   foundHelper = helpers.annotation; 
    34   stack1 = foundHelper || depth0.annotation; 
    35   stack2 = helpers.each; 
    36   tmp1 = self.program(1, program1, data); 
    37   tmp1.hash = {}; 
    38   tmp1.fn = tmp1; 
    39   tmp1.inverse = self.noop; 
    40   stack1 = stack2.call(depth0, stack1, tmp1); 
    41   if(stack1 || stack1 === 0) { buffer += stack1; } 
     19  buffer += "<ul class=\"annotations\" id=\"" 
     20    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     21    + "-annotations-"; 
     22  if (stack2 = helpers.subdatasetID) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     23  else { stack2 = depth0.subdatasetID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     24  buffer += escapeExpression(stack2) 
     25    + "\">\r\n"; 
     26  stack2 = helpers.each.call(depth0, depth0.annotation, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data}); 
     27  if(stack2 || stack2 === 0) { buffer += stack2; } 
    4228  buffer += "\r\n</ul>"; 
    43   return buffer;}); 
     29  return buffer; 
     30  }); 
    4431})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/error.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['error'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression; 
    67 
    78 
    8   buffer += "<h1 id=\""; 
    9   foundHelper = helpers.widgetContext; 
    10   stack1 = foundHelper || depth0.widgetContext; 
    11   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    12   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    13   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    14   buffer += escapeExpression(stack1) + "-title\" class=\"pelagios-title\">"; 
    15   foundHelper = helpers.title; 
    16   stack1 = foundHelper || depth0.title; 
    17   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    18   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); } 
    19   buffer += escapeExpression(stack1) + "</h1> \r\n<p>"; 
    20   foundHelper = helpers.msg; 
    21   stack1 = foundHelper || depth0.msg; 
    22   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    23   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "msg", { hash: {} }); } 
    24   buffer += escapeExpression(stack1) + "</p>  \r\n"; 
    25   return buffer;}); 
     9  buffer += "<h1 id=\"" 
     10    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     11    + "-title\" class=\"pelagios-title\">"; 
     12  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     13  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     14  buffer += escapeExpression(stack2) 
     15    + "</h1> \r\n<p>"; 
     16  if (stack2 = helpers.msg) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     17  else { stack2 = depth0.msg; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     18  buffer += escapeExpression(stack2) 
     19    + "</p>  \r\n"; 
     20  return buffer; 
     21  }); 
    2622})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/flickr.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['flickr'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this; 
    67 
    78function program1(depth0,data) { 
    89   
    910  var buffer = "", stack1; 
    10   buffer += "\r\n<a href=\"http://www.flickr.com/photos/"; 
    11   stack1 = depth0.owner; 
    12   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    13   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.owner", { hash: {} }); } 
    14   buffer += escapeExpression(stack1) + "/"; 
    15   stack1 = depth0.id; 
    16   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    17   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    18   buffer += escapeExpression(stack1) + "\" target=\"_blank\">\r\n<img src=\"http://farm"; 
    19   stack1 = depth0.farm; 
    20   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    21   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.farm", { hash: {} }); } 
    22   buffer += escapeExpression(stack1) + ".staticflickr.com/"; 
    23   stack1 = depth0.server; 
    24   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    25   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.server", { hash: {} }); } 
    26   buffer += escapeExpression(stack1) + "/"; 
    27   stack1 = depth0.id; 
    28   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    29   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    30   buffer += escapeExpression(stack1) + "_"; 
    31   stack1 = depth0.secret; 
    32   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    33   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.secret", { hash: {} }); } 
    34   buffer += escapeExpression(stack1) + "_t.jpg\" alt=\""; 
    35   foundHelper = helpers.pthis; 
    36   stack1 = foundHelper || depth0.pthis; 
    37   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.title); 
    38   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    39   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pthis.title", { hash: {} }); } 
    40   buffer += escapeExpression(stack1) + "\" />\r\n</a>\r\n"; 
    41   return buffer;} 
     11  buffer += "\r\n<a href=\"http://www.flickr.com/photos/" 
     12    + escapeExpression(((stack1 = depth0.owner),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     13    + "/" 
     14    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     15    + "\" target=\"_blank\">\r\n<img src=\"http://farm" 
     16    + escapeExpression(((stack1 = depth0.farm),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     17    + ".staticflickr.com/" 
     18    + escapeExpression(((stack1 = depth0.server),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     19    + "/" 
     20    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     21    + "_" 
     22    + escapeExpression(((stack1 = depth0.secret),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     23    + "_t.jpg\" alt=\"" 
     24    + escapeExpression(((stack1 = ((stack1 = depth0.pthis),stack1 == null || stack1 === false ? stack1 : stack1.title)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     25    + "\" />\r\n</a>\r\n"; 
     26  return buffer; 
     27  } 
    4228 
    4329function program3(depth0,data) { 
     
    4531  var buffer = "", stack1; 
    4632  buffer += "\r\n<p><a href=\"http://www.flickr.com/groups/pleiades-places/pool/tags/pleiades%3Adepicts%3D"; 
    47   foundHelper = helpers.pleiadesID; 
    48   stack1 = foundHelper || depth0.pleiadesID; 
    49   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    50   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); } 
    51   buffer += escapeExpression(stack1) + "/\" target=\"_blank\">View all "; 
    52   foundHelper = helpers.photo; 
    53   stack1 = foundHelper || depth0.photo; 
    54   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.length); 
    55   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    56   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "photo.length", { hash: {} }); } 
    57   buffer += escapeExpression(stack1) + " photos on flickr</a></p>\r\n"; 
    58   return buffer;} 
     33  if (stack1 = helpers.pleiadesID) { stack1 = stack1.call(depth0, {hash:{},data:data}); } 
     34  else { stack1 = depth0.pleiadesID; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; } 
     35  buffer += escapeExpression(stack1) 
     36    + "/\" target=\"_blank\">View all " 
     37    + escapeExpression(((stack1 = ((stack1 = depth0.photo),stack1 == null || stack1 === false ? stack1 : stack1.length)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     38    + " photos on flickr</a></p>\r\n"; 
     39  return buffer; 
     40  } 
    5941 
    6042function program5(depth0,data) { 
     
    6244  var buffer = "", stack1; 
    6345  buffer += "\r\n<p><a href=\"http://www.flickr.com/photos/tags/pleiades%3Adepicts%3D"; 
    64   foundHelper = helpers.pleiadesID; 
    65   stack1 = foundHelper || depth0.pleiadesID; 
    66   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    67   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); } 
    68   buffer += escapeExpression(stack1) + "/\" target=\"_blank\">View all "; 
    69   foundHelper = helpers.photo; 
    70   stack1 = foundHelper || depth0.photo; 
    71   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.length); 
    72   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    73   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "photo.length", { hash: {} }); } 
    74   buffer += escapeExpression(stack1) + " photos on flickr</a></p>\r\n"; 
    75   return buffer;} 
     46  if (stack1 = helpers.pleiadesID) { stack1 = stack1.call(depth0, {hash:{},data:data}); } 
     47  else { stack1 = depth0.pleiadesID; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; } 
     48  buffer += escapeExpression(stack1) 
     49    + "/\" target=\"_blank\">View all " 
     50    + escapeExpression(((stack1 = ((stack1 = depth0.photo),stack1 == null || stack1 === false ? stack1 : stack1.length)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     51    + " photos on flickr</a></p>\r\n"; 
     52  return buffer; 
     53  } 
    7654 
    77   foundHelper = helpers.photo; 
    78   stack1 = foundHelper || depth0.photo; 
    79   stack2 = helpers.each; 
    80   tmp1 = self.program(1, program1, data); 
    81   tmp1.hash = {}; 
    82   tmp1.fn = tmp1; 
    83   tmp1.inverse = self.noop; 
    84   stack1 = stack2.call(depth0, stack1, tmp1); 
     55  stack1 = helpers.each.call(depth0, depth0.photo, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data}); 
    8556  if(stack1 || stack1 === 0) { buffer += stack1; } 
    8657  buffer += "\r\n"; 
    87   foundHelper = helpers.widgetContext; 
    88   stack1 = foundHelper || depth0.widgetContext; 
    89   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly); 
    90   stack2 = helpers['if']; 
    91   tmp1 = self.program(3, program3, data); 
    92   tmp1.hash = {}; 
    93   tmp1.fn = tmp1; 
    94   tmp1.inverse = self.noop; 
    95   stack1 = stack2.call(depth0, stack1, tmp1); 
    96   if(stack1 || stack1 === 0) { buffer += stack1; } 
     58  stack2 = helpers['if'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data}); 
     59  if(stack2 || stack2 === 0) { buffer += stack2; } 
    9760  buffer += "\r\n"; 
    98   foundHelper = helpers.widgetContext; 
    99   stack1 = foundHelper || depth0.widgetContext; 
    100   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly); 
    101   stack2 = helpers.unless; 
    102   tmp1 = self.program(5, program5, data); 
    103   tmp1.hash = {}; 
    104   tmp1.fn = tmp1; 
    105   tmp1.inverse = self.noop; 
    106   stack1 = stack2.call(depth0, stack1, tmp1); 
    107   if(stack1 || stack1 === 0) { buffer += stack1; } 
     61  stack2 = helpers.unless.call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesFlickrGroupOnly), {hash:{},inverse:self.noop,fn:self.program(5, program5, data),data:data}); 
     62  if(stack2 || stack2 === 0) { buffer += stack2; } 
    10863  buffer += "\r\n<p>The flickr photos shown here are those which have been given a <a href=\"http://www.flickr.com/groups/pleiades-places/discuss/72157628435317307/\">Pleiades machine tag specifying this place.</a></p>\r\n"; 
    109   return buffer;}); 
     64  return buffer; 
     65  }); 
    11066})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/new_tab.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['new_tab'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression; 
    67 
    78 
    8   buffer += "<!DOCTYPE html>\r\n<html>\r\n  <head>\r\n\r\n  </head>\r\n  <body >\r\n\r\n        <div id=\""; 
    9   foundHelper = helpers.widgetContext; 
    10   stack1 = foundHelper || depth0.widgetContext; 
    11   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    12   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    13   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    14   buffer += escapeExpression(stack1) + "\" data-pleiades_id=\""; 
    15   foundHelper = helpers.widgetContext; 
    16   stack1 = foundHelper || depth0.widgetContext; 
    17   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.pleiadesID); 
    18   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    19   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.pleiadesID", { hash: {} }); } 
    20   buffer += escapeExpression(stack1) + "\" \r\n        data-icon=\"false\"\r\n        class=\"pelagios pelagios-place\"></div>\r\n</body>\r\n</html>"; 
    21   return buffer;}); 
     9  buffer += "<!DOCTYPE html>\r\n<html>\r\n  <head>\r\n\r\n  </head>\r\n  <body >\r\n\r\n        <div id=\"" 
     10    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     11    + "\" data-pleiades_id=\"" 
     12    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.pleiadesID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     13    + "\" \r\n        data-icon=\"false\"\r\n        class=\"pelagios pelagios-place\"></div>\r\n</body>\r\n</html>"; 
     14  return buffer; 
     15  }); 
    2216})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/pelagios_partner.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['pelagios_partner'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this; 
    67 
    78function program1(depth0,data) { 
    89   
    910  var buffer = "", stack1, stack2; 
    10   buffer += "\r\n\r\n<li id=\""; 
    11   stack1 = depth0.widgetContext; 
    12   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    13   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    14   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); } 
    15   buffer += escapeExpression(stack1) + "-subdataset-"; 
    16   stack1 = depth0.id; 
    17   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    18   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    19   buffer += escapeExpression(stack1) + "\">\r\n<span id=\""; 
    20   stack1 = depth0.widgetContext; 
    21   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    22   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    23   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); } 
    24   buffer += escapeExpression(stack1) + "-subdataset_title-"; 
    25   stack1 = depth0.id; 
    26   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    27   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    28   buffer += escapeExpression(stack1) + "\">\r\n    "; 
    29   stack1 = depth0.title; 
    30   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    31   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.title", { hash: {} }); } 
    32   buffer += escapeExpression(stack1) + "\r\n    <span id =\""; 
    33   stack1 = depth0.widgetContext; 
    34   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    35   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    36   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); } 
    37   buffer += escapeExpression(stack1) + "-subdataset_hits-"; 
    38   stack1 = depth0.id; 
    39   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    40   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    41   buffer += escapeExpression(stack1) + "\" class=\"link\">\r\n    "; 
    42   stack1 = depth0.references; 
    43   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    44   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.references", { hash: {} }); } 
    45   buffer += escapeExpression(stack1) + " hit"; 
    46   stack1 = depth0.multipleReferences; 
    47   stack2 = helpers['if']; 
    48   tmp1 = self.program(2, program2, data); 
    49   tmp1.hash = {}; 
    50   tmp1.fn = tmp1; 
    51   tmp1.inverse = self.noop; 
    52   stack1 = stack2.call(depth0, stack1, tmp1); 
    53   if(stack1 || stack1 === 0) { buffer += stack1; } 
    54   buffer += "\r\n    </span>\r\n    <img id=\""; 
    55   stack1 = depth0.widgetContext; 
    56   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    57   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    58   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); } 
    59   buffer += escapeExpression(stack1) + "-toggle-subdataset-"; 
    60   stack1 = depth0.id; 
    61   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    62   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    63   buffer += escapeExpression(stack1) + "\" \r\n         src = \""; 
    64   stack1 = depth0.widgetContext; 
    65   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.imageDir); 
    66   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    67   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.imageDir", { hash: {} }); } 
    68   buffer += escapeExpression(stack1) + "icons/right-arrow.png\"  /> \r\n</span>\r\n    <div id=\""; 
    69   stack1 = depth0.widgetContext; 
    70   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    71   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    72   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); } 
    73   buffer += escapeExpression(stack1) + "-subdataset_content-"; 
    74   stack1 = depth0.id; 
    75   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    76   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    77   buffer += escapeExpression(stack1) + "\">\r\n\r\n        <div id=\""; 
    78   stack1 = depth0.widgetContext; 
    79   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    80   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    81   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); } 
    82   buffer += escapeExpression(stack1) + "-annotations-"; 
    83   stack1 = depth0.id; 
    84   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    85   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    86   buffer += escapeExpression(stack1) + "\" class=\"annotations\">\r\n        </div>\r\n        <div id=\""; 
    87   stack1 = depth0.widgetContext; 
    88   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    89   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    90   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetContext.widgetID", { hash: {} }); } 
    91   buffer += escapeExpression(stack1) + "-subdataset_pagination-"; 
    92   stack1 = depth0.id; 
    93   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    94   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.id", { hash: {} }); } 
    95   buffer += escapeExpression(stack1) + "\" class=\"subdataset_pagination\">\r\n        </div>\r\n    </div>\r\n</li>\r\n\r\n"; 
    96   return buffer;} 
     11  buffer += "\r\n\r\n<li id=\"" 
     12    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     13    + "-subdataset-" 
     14    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     15    + "\">\r\n<span id=\"" 
     16    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     17    + "-subdataset_title-" 
     18    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     19    + "\">\r\n    " 
     20    + escapeExpression(((stack1 = depth0.title),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     21    + "\r\n    <span id =\"" 
     22    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     23    + "-subdataset_hits-" 
     24    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     25    + "\" class=\"link\">\r\n    " 
     26    + escapeExpression(((stack1 = depth0.references),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     27    + " hit"; 
     28  stack2 = helpers['if'].call(depth0, depth0.multipleReferences, {hash:{},inverse:self.noop,fn:self.program(2, program2, data),data:data}); 
     29  if(stack2 || stack2 === 0) { buffer += stack2; } 
     30  buffer += "\r\n    </span>\r\n    <img id=\"" 
     31    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     32    + "-toggle-subdataset-" 
     33    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     34    + "\" \r\n         src = \"" 
     35    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.imageDir)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     36    + "icons/right-arrow.png\"  /> \r\n</span>\r\n    <div id=\"" 
     37    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     38    + "-subdataset_content-" 
     39    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     40    + "\">\r\n\r\n        <div id=\"" 
     41    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     42    + "-annotations-" 
     43    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     44    + "\" class=\"annotations\">\r\n        </div>\r\n        <div id=\"" 
     45    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     46    + "-subdataset_pagination-" 
     47    + escapeExpression(((stack1 = depth0.id),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     48    + "\" class=\"subdataset_pagination\">\r\n        </div>\r\n    </div>\r\n</li>\r\n\r\n"; 
     49  return buffer; 
     50  } 
    9751function program2(depth0,data) { 
    9852   
    9953   
    100   return "s";} 
     54  return "s"; 
     55  } 
    10156 
    102   buffer += "<ul class=\"subdatasets\" id=\""; 
    103   foundHelper = helpers.widgetContext; 
    104   stack1 = foundHelper || depth0.widgetContext; 
    105   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    106   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    107   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    108   buffer += escapeExpression(stack1) + "-subdatasets-"; 
    109   foundHelper = helpers.rootDatasetID; 
    110   stack1 = foundHelper || depth0.rootDatasetID; 
    111   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    112   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "rootDatasetID", { hash: {} }); } 
    113   buffer += escapeExpression(stack1) + "\">\r\n"; 
    114   foundHelper = helpers.subdataset; 
    115   stack1 = foundHelper || depth0.subdataset; 
    116   stack2 = helpers.each; 
    117   tmp1 = self.program(1, program1, data); 
    118   tmp1.hash = {}; 
    119   tmp1.fn = tmp1; 
    120   tmp1.inverse = self.noop; 
    121   stack1 = stack2.call(depth0, stack1, tmp1); 
    122   if(stack1 || stack1 === 0) { buffer += stack1; } 
     57  buffer += "<ul class=\"subdatasets\" id=\"" 
     58    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     59    + "-subdatasets-"; 
     60  if (stack2 = helpers.rootDatasetID) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     61  else { stack2 = depth0.rootDatasetID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     62  buffer += escapeExpression(stack2) 
     63    + "\">\r\n"; 
     64  stack2 = helpers.each.call(depth0, depth0.subdataset, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data}); 
     65  if(stack2 || stack2 === 0) { buffer += stack2; } 
    12366  buffer += "  \r\n</ul>         "; 
    124   return buffer;}); 
     67  return buffer; 
     68  }); 
    12569})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/place.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['place'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression; 
    67 
    78 
    8   buffer += "<div id=\""; 
    9   foundHelper = helpers.widgetContext; 
    10   stack1 = foundHelper || depth0.widgetContext; 
    11   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    12   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    13   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    14   buffer += escapeExpression(stack1) + "-pleiades\">    \r\n</div>    \r\n<div id=\""; 
    15   foundHelper = helpers.widgetContext; 
    16   stack1 = foundHelper || depth0.widgetContext; 
    17   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    18   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    19   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    20   buffer += escapeExpression(stack1) + "-sections\"></div>   \r\n\r\n"; 
    21   return buffer;}); 
     9  buffer += "<div id=\"" 
     10    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     11    + "-pleiades\">    \r\n</div>    \r\n<div id=\"" 
     12    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     13    + "-sections\"></div>   \r\n\r\n"; 
     14  return buffer; 
     15  }); 
    2216})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/pleiades.handlebars

    r583489 r1156983  
    77    {{#if widgetContext.displayMap}}  
    88    <div id="{{widgetContext.widgetID}}-map">     
    9         <div id="{{widgetContext.widgetID}}-map_canvas" style="width:425px; height:200px"></div> 
     9        <div id="{{widgetContext.widgetID}}-map_canvas" style="width:{{widgetContext.mapWidth}}; height:200px"></div> 
    1010    </div>    
    1111    {{/if}} 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/pleiades.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['pleiades'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this; 
    67 
    78function program1(depth0,data) { 
     
    910  var buffer = "", stack1; 
    1011  buffer += "\r\n    <p>Some alternative names: "; 
    11   foundHelper = helpers.altNames; 
    12   stack1 = foundHelper || depth0.altNames; 
    13   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    14   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "altNames", { hash: {} }); } 
    15   buffer += escapeExpression(stack1) + " (the results below are for all alternative names)</p>  \r\n    "; 
    16   return buffer;} 
     12  if (stack1 = helpers.altNames) { stack1 = stack1.call(depth0, {hash:{},data:data}); } 
     13  else { stack1 = depth0.altNames; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; } 
     14  buffer += escapeExpression(stack1) 
     15    + " (the results below are for all alternative names)</p>  \r\n    "; 
     16  return buffer; 
     17  } 
    1718 
    1819function program3(depth0,data) { 
    1920   
    2021  var buffer = "", stack1; 
    21   buffer += " \r\n    <div id=\""; 
    22   foundHelper = helpers.widgetContext; 
    23   stack1 = foundHelper || depth0.widgetContext; 
    24   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    25   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    26   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    27   buffer += escapeExpression(stack1) + "-map\">    \r\n        <div id=\""; 
    28   foundHelper = helpers.widgetContext; 
    29   stack1 = foundHelper || depth0.widgetContext; 
    30   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    31   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    32   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    33   buffer += escapeExpression(stack1) + "-map_canvas\" style=\"width:425px; height:200px\"></div>\r\n    </div>   \r\n    "; 
    34   return buffer;} 
     22  buffer += " \r\n    <div id=\"" 
     23    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     24    + "-map\">    \r\n        <div id=\"" 
     25    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     26    + "-map_canvas\" style=\"width:" 
     27    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.mapWidth)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     28    + "; height:200px\"></div>\r\n    </div>   \r\n    "; 
     29  return buffer; 
     30  } 
    3531 
    36   buffer += " <h1 id=\""; 
    37   foundHelper = helpers.widgetContext; 
    38   stack1 = foundHelper || depth0.widgetContext; 
    39   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    40   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    41   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    42   buffer += escapeExpression(stack1) + "-title\" class=\"pelagios-title\">"; 
    43   foundHelper = helpers.title; 
    44   stack1 = foundHelper || depth0.title; 
    45   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    46   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); } 
    47   buffer += escapeExpression(stack1) + "</h1>    \r\n<div class=\"section-content\" id=\""; 
    48   foundHelper = helpers.widgetContext; 
    49   stack1 = foundHelper || depth0.widgetContext; 
    50   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    51   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    52   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    53   buffer += escapeExpression(stack1) + "-pleiades\">\r\n    <div id=\""; 
    54   foundHelper = helpers.widgetContext; 
    55   stack1 = foundHelper || depth0.widgetContext; 
    56   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    57   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    58   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    59   buffer += escapeExpression(stack1) + "-description\"><p>"; 
    60   foundHelper = helpers.description; 
    61   stack1 = foundHelper || depth0.description; 
    62   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    63   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "description", { hash: {} }); } 
    64   buffer += escapeExpression(stack1) + "</p>\r\n    "; 
    65   foundHelper = helpers.altNames; 
    66   stack1 = foundHelper || depth0.altNames; 
    67   stack2 = helpers['if']; 
    68   tmp1 = self.program(1, program1, data); 
    69   tmp1.hash = {}; 
    70   tmp1.fn = tmp1; 
    71   tmp1.inverse = self.noop; 
    72   stack1 = stack2.call(depth0, stack1, tmp1); 
    73   if(stack1 || stack1 === 0) { buffer += stack1; } 
     32  buffer += " <h1 id=\"" 
     33    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     34    + "-title\" class=\"pelagios-title\">"; 
     35  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     36  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     37  buffer += escapeExpression(stack2) 
     38    + "</h1>    \r\n<div class=\"section-content\" id=\"" 
     39    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     40    + "-pleiades\">\r\n    <div id=\"" 
     41    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     42    + "-description\"><p>"; 
     43  if (stack2 = helpers.description) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     44  else { stack2 = depth0.description; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     45  buffer += escapeExpression(stack2) 
     46    + "</p>\r\n    "; 
     47  stack2 = helpers['if'].call(depth0, depth0.altNames, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data}); 
     48  if(stack2 || stack2 === 0) { buffer += stack2; } 
    7449  buffer += "\r\n    "; 
    75   foundHelper = helpers.widgetContext; 
    76   stack1 = foundHelper || depth0.widgetContext; 
    77   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.displayMap); 
    78   stack2 = helpers['if']; 
    79   tmp1 = self.program(3, program3, data); 
    80   tmp1.hash = {}; 
    81   tmp1.fn = tmp1; 
    82   tmp1.inverse = self.noop; 
    83   stack1 = stack2.call(depth0, stack1, tmp1); 
    84   if(stack1 || stack1 === 0) { buffer += stack1; } 
    85   buffer += "\r\n    <p><img src=\""; 
    86   foundHelper = helpers.widgetContext; 
    87   stack1 = foundHelper || depth0.widgetContext; 
    88   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL); 
    89   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    90   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); } 
    91   buffer += escapeExpression(stack1) + "images/icons/pleiades.png\"  class=\"pleiades-icon\" />\r\n    <a href=\"http://pleiades.stoa.org/places/"; 
    92   foundHelper = helpers.pleiadesID; 
    93   stack1 = foundHelper || depth0.pleiadesID; 
    94   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    95   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "pleiadesID", { hash: {} }); } 
    96   buffer += escapeExpression(stack1) + "\" target=\"_blank\">Entry in the Pleiades Gazetteer</a></p>    \r\n</div>"; 
    97   return buffer;}); 
     50  stack2 = helpers['if'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.displayMap), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data}); 
     51  if(stack2 || stack2 === 0) { buffer += stack2; } 
     52  buffer += "\r\n    <p><img src=\"" 
     53    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     54    + "images/icons/pleiades.png\"  class=\"pleiades-icon\" />\r\n    <a href=\"http://pleiades.stoa.org/places/"; 
     55  if (stack2 = helpers.pleiadesID) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     56  else { stack2 = depth0.pleiadesID; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     57  buffer += escapeExpression(stack2) 
     58    + "\" target=\"_blank\">Entry in the Pleiades Gazetteer</a></p>    \r\n</div>"; 
     59  return buffer; 
     60  }); 
    9861})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/search.handlebars

    r583489 r1156983  
    11<h1 id="{{widgetContext.widgetID}}-title" class="pelagios-title">Search for places</h1>     
    22    <form id="{{widgetContext.widgetID}}-search-form" class="search-form"> 
    3         <input type="text" size="40"/> 
     3        <input type="text" size="30"/> 
    44        <input id="{{widgetContext.widgetID}}-search-string" type="submit" value="Search"/> 
    55    </form> 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/search.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['search'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression; 
    67 
    78 
    8   buffer += "<h1 id=\""; 
    9   foundHelper = helpers.widgetContext; 
    10   stack1 = foundHelper || depth0.widgetContext; 
    11   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    12   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    13   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    14   buffer += escapeExpression(stack1) + "-title\" class=\"pelagios-title\">Search for places</h1>    \r\n    <form id=\""; 
    15   foundHelper = helpers.widgetContext; 
    16   stack1 = foundHelper || depth0.widgetContext; 
    17   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    18   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    19   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    20   buffer += escapeExpression(stack1) + "-search-form\" class=\"search-form\">\r\n        <input type=\"text\" size=\"40\"/>\r\n        <input id=\""; 
    21   foundHelper = helpers.widgetContext; 
    22   stack1 = foundHelper || depth0.widgetContext; 
    23   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    24   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    25   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    26   buffer += escapeExpression(stack1) + "-search-string\" type=\"submit\" value=\"Search\"/>\r\n    </form>\r\n    <div id=\""; 
    27   foundHelper = helpers.widgetContext; 
    28   stack1 = foundHelper || depth0.widgetContext; 
    29   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    30   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    31   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    32   buffer += escapeExpression(stack1) + "-search-results\">\r\n    </div> \r\n    <div id=\""; 
    33   foundHelper = helpers.widgetContext; 
    34   stack1 = foundHelper || depth0.widgetContext; 
    35   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    36   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    37   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    38   buffer += escapeExpression(stack1) + "-place\">\r\n    </div>\r\n \r\n  \r\n \r\n"; 
    39   return buffer;}); 
     9  buffer += "<h1 id=\"" 
     10    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     11    + "-title\" class=\"pelagios-title\">Search for places</h1>    \r\n    <form id=\"" 
     12    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     13    + "-search-form\" class=\"search-form\">\r\n        <input type=\"text\" size=\"30\"/>\r\n        <input id=\"" 
     14    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     15    + "-search-string\" type=\"submit\" value=\"Search\"/>\r\n    </form>\r\n    <div id=\"" 
     16    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     17    + "-search-results\">\r\n    </div> \r\n    <div id=\"" 
     18    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     19    + "-place\">\r\n    </div>\r\n \r\n  \r\n \r\n"; 
     20  return buffer; 
     21  }); 
    4022})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/search_results.handlebars

    r583489 r1156983  
    22<div id="{{widgetContext.widgetID}}-search-results-map" class="search-map"> 
    33    <p>Geographic Results for: <strong>{{searchString}}</strong></p> 
    4     <div id="{{widgetContext.widgetID}}-search-map_canvas" style="width:425px; height:200px"></div> 
     4    <div id="{{widgetContext.widgetID}}-search-map_canvas" style="width: 
     5    {{widgetContext.mapWidth}}; height:200px"></div> 
    56</div>   
    67{{/if}} 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/search_results.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['search_results'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this; 
    67 
    78function program1(depth0,data) { 
    89   
    9   var buffer = "", stack1; 
    10   buffer += " \r\n<div id=\""; 
    11   foundHelper = helpers.widgetContext; 
    12   stack1 = foundHelper || depth0.widgetContext; 
    13   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    14   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    15   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    16   buffer += escapeExpression(stack1) + "-search-results-map\" class=\"search-map\">\r\n    <p>Geographic Results for: <strong>"; 
    17   foundHelper = helpers.searchString; 
    18   stack1 = foundHelper || depth0.searchString; 
    19   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    20   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "searchString", { hash: {} }); } 
    21   buffer += escapeExpression(stack1) + "</strong></p>\r\n    <div id=\""; 
    22   foundHelper = helpers.widgetContext; 
    23   stack1 = foundHelper || depth0.widgetContext; 
    24   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    25   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    26   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    27   buffer += escapeExpression(stack1) + "-search-map_canvas\" style=\"width:425px; height:200px\"></div>\r\n</div>  \r\n"; 
    28   return buffer;} 
     10  var buffer = "", stack1, stack2; 
     11  buffer += " \r\n<div id=\"" 
     12    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     13    + "-search-results-map\" class=\"search-map\">\r\n    <p>Geographic Results for: <strong>"; 
     14  if (stack2 = helpers.searchString) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     15  else { stack2 = depth0.searchString; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     16  buffer += escapeExpression(stack2) 
     17    + "</strong></p>\r\n    <div id=\"" 
     18    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     19    + "-search-map_canvas\" style=\"width:\r\n    " 
     20    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.mapWidth)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     21    + "; height:200px\"></div>\r\n</div>  \r\n"; 
     22  return buffer; 
     23  } 
    2924 
    3025function program3(depth0,data) { 
    3126   
    3227  var buffer = "", stack1; 
    33   buffer += "\r\n<li id=\""; 
    34   stack1 = depth0.widgetID; 
    35   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    36   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.widgetID", { hash: {} }); } 
    37   buffer += escapeExpression(stack1) + "-place-"; 
    38   stack1 = depth0.pleiadesID; 
    39   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    40   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.pleiadesID", { hash: {} }); } 
    41   buffer += escapeExpression(stack1) + "\" class=\"link "; 
    42   stack1 = depth0.feature_type; 
    43   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    44   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.feature_type", { hash: {} }); } 
    45   buffer += escapeExpression(stack1) + "\">"; 
    46   stack1 = depth0.label; 
    47   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    48   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "this.label", { hash: {} }); } 
    49   buffer += escapeExpression(stack1) + "</li>\r\n"; 
    50   return buffer;} 
     28  buffer += "\r\n<li id=\"" 
     29    + escapeExpression(((stack1 = depth0.widgetID),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     30    + "-place-" 
     31    + escapeExpression(((stack1 = depth0.pleiadesID),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     32    + "\" class=\"link " 
     33    + escapeExpression(((stack1 = depth0.feature_type),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     34    + "\">" 
     35    + escapeExpression(((stack1 = depth0.label),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     36    + "</li>\r\n"; 
     37  return buffer; 
     38  } 
    5139 
    52   foundHelper = helpers.widgetContext; 
    53   stack1 = foundHelper || depth0.widgetContext; 
    54   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.displayMap); 
    55   stack2 = helpers['if']; 
    56   tmp1 = self.program(1, program1, data); 
    57   tmp1.hash = {}; 
    58   tmp1.fn = tmp1; 
    59   tmp1.inverse = self.noop; 
    60   stack1 = stack2.call(depth0, stack1, tmp1); 
    61   if(stack1 || stack1 === 0) { buffer += stack1; } 
     40  stack2 = helpers['if'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.displayMap), {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data}); 
     41  if(stack2 || stack2 === 0) { buffer += stack2; } 
    6242  buffer += "\r\n<div class=\"list-results-section\">\r\n<p>List Results for: <strong>"; 
    63   foundHelper = helpers.searchString; 
    64   stack1 = foundHelper || depth0.searchString; 
    65   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    66   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "searchString", { hash: {} }); } 
    67   buffer += escapeExpression(stack1) + "</strong>\r\n<div class=\"list-results\">\r\n<ul>\r\n"; 
    68   foundHelper = helpers.place; 
    69   stack1 = foundHelper || depth0.place; 
    70   stack2 = helpers.each; 
    71   tmp1 = self.program(3, program3, data); 
    72   tmp1.hash = {}; 
    73   tmp1.fn = tmp1; 
    74   tmp1.inverse = self.noop; 
    75   stack1 = stack2.call(depth0, stack1, tmp1); 
    76   if(stack1 || stack1 === 0) { buffer += stack1; } 
     43  if (stack2 = helpers.searchString) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     44  else { stack2 = depth0.searchString; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     45  buffer += escapeExpression(stack2) 
     46    + "</strong>\r\n<div class=\"list-results\">\r\n<ul>\r\n"; 
     47  stack2 = helpers.each.call(depth0, depth0.place, {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data}); 
     48  if(stack2 || stack2 === 0) { buffer += stack2; } 
    7749  buffer += "\r\n</ul>\r\n</div>\r\n</div>"; 
    78   return buffer;}); 
     50  return buffer; 
     51  }); 
    7952})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/section.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['section'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, foundHelper, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression; 
    67 
    78 
    8   buffer += "<div class=\"section\" id=\""; 
    9   foundHelper = helpers.widgetContext; 
    10   stack1 = foundHelper || depth0.widgetContext; 
    11   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    12   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    13   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    14   buffer += escapeExpression(stack1) + "-"; 
    15   foundHelper = helpers.name; 
    16   stack1 = foundHelper || depth0.name; 
    17   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    18   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); } 
    19   buffer += escapeExpression(stack1) + "\">\r\n<div class=\"section-header\" id=\""; 
    20   foundHelper = helpers.widgetContext; 
    21   stack1 = foundHelper || depth0.widgetContext; 
    22   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    23   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    24   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    25   buffer += escapeExpression(stack1) + "-header-"; 
    26   foundHelper = helpers.name; 
    27   stack1 = foundHelper || depth0.name; 
    28   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    29   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); } 
    30   buffer += escapeExpression(stack1) + "\">\r\n<img src=\""; 
    31   foundHelper = helpers.iconURL; 
    32   stack1 = foundHelper || depth0.iconURL; 
    33   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    34   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "iconURL", { hash: {} }); } 
    35   buffer += escapeExpression(stack1) + "\" class=\"section-icon\" alt=\"\" />\r\n<h2>"; 
    36   foundHelper = helpers.title; 
    37   stack1 = foundHelper || depth0.title; 
    38   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    39   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "title", { hash: {} }); } 
    40   buffer += escapeExpression(stack1) + "</h2>\r\n<img class=\"section-toggle\" id=\""; 
    41   foundHelper = helpers.widgetContext; 
    42   stack1 = foundHelper || depth0.widgetContext; 
    43   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    44   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    45   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    46   buffer += escapeExpression(stack1) + "-toggle-"; 
    47   foundHelper = helpers.name; 
    48   stack1 = foundHelper || depth0.name; 
    49   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    50   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); } 
    51   buffer += escapeExpression(stack1) + "\" \r\n     src=\""; 
    52   foundHelper = helpers.widgetContext; 
    53   stack1 = foundHelper || depth0.widgetContext; 
    54   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL); 
    55   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    56   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); } 
    57   buffer += escapeExpression(stack1) + "images/icons/right-arrow.png\" alt=\"Toggle section\"/>\r\n<p class=\"section-strapline\">"; 
    58   foundHelper = helpers.strapline; 
    59   stack1 = foundHelper || depth0.strapline; 
    60   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    61   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "strapline", { hash: {} }); } 
    62   buffer += escapeExpression(stack1) + "</p>\r\n</div>\r\n<div class=\"section-content\" id=\""; 
    63   foundHelper = helpers.widgetContext; 
    64   stack1 = foundHelper || depth0.widgetContext; 
    65   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    66   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    67   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    68   buffer += escapeExpression(stack1) + "-content-"; 
    69   foundHelper = helpers.name; 
    70   stack1 = foundHelper || depth0.name; 
    71   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    72   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "name", { hash: {} }); } 
    73   buffer += escapeExpression(stack1) + "\">\r\n</div></div>\r\n"; 
    74   return buffer;}); 
     9  buffer += "<div class=\"section\" id=\"" 
     10    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     11    + "-"; 
     12  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     13  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     14  buffer += escapeExpression(stack2) 
     15    + "\">\r\n<div class=\"section-header\" id=\"" 
     16    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     17    + "-header-"; 
     18  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     19  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     20  buffer += escapeExpression(stack2) 
     21    + "\">\r\n<img src=\""; 
     22  if (stack2 = helpers.iconURL) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     23  else { stack2 = depth0.iconURL; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     24  buffer += escapeExpression(stack2) 
     25    + "\" class=\"section-icon\" alt=\"\" />\r\n<h2>"; 
     26  if (stack2 = helpers.title) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     27  else { stack2 = depth0.title; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     28  buffer += escapeExpression(stack2) 
     29    + "</h2>\r\n<img class=\"section-toggle\" id=\"" 
     30    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     31    + "-toggle-"; 
     32  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     33  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     34  buffer += escapeExpression(stack2) 
     35    + "\" \r\n     src=\"" 
     36    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     37    + "images/icons/right-arrow.png\" alt=\"Toggle section\"/>\r\n<p class=\"section-strapline\">"; 
     38  if (stack2 = helpers.strapline) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     39  else { stack2 = depth0.strapline; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     40  buffer += escapeExpression(stack2) 
     41    + "</p>\r\n</div>\r\n<div class=\"section-content\" id=\"" 
     42    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     43    + "-content-"; 
     44  if (stack2 = helpers.name) { stack2 = stack2.call(depth0, {hash:{},data:data}); } 
     45  else { stack2 = depth0.name; stack2 = typeof stack2 === functionType ? stack2.apply(depth0) : stack2; } 
     46  buffer += escapeExpression(stack2) 
     47    + "\">\r\n</div></div>\r\n"; 
     48  return buffer; 
     49  }); 
    7550})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/build/template/widget_container.tmpl

    r583489 r1156983  
    22  var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {}; 
    33templates['widget_container'] = template(function (Handlebars,depth0,helpers,partials,data) { 
    4   helpers = helpers || Handlebars.helpers; 
    5   var buffer = "", stack1, stack2, foundHelper, tmp1, self=this, functionType="function", helperMissing=helpers.helperMissing, undef=void 0, escapeExpression=this.escapeExpression; 
     4  this.compilerInfo = [2,'>= 1.0.0-rc.3']; 
     5helpers = helpers || Handlebars.helpers; data = data || {}; 
     6  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this; 
    67 
    78function program1(depth0,data) { 
    89   
    910  var buffer = "", stack1; 
    10   buffer += "\r\n        <a href=\"\" class=\"close\">\r\n        <img src=\""; 
    11   foundHelper = helpers.widgetContext; 
    12   stack1 = foundHelper || depth0.widgetContext; 
    13   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL); 
    14   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    15   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); } 
    16   buffer += escapeExpression(stack1) + "images/icons/close-button.png\" alt=\"Close Pelagios information\" />\r\n        </a>    \r\n        "; 
    17   return buffer;} 
     11  buffer += "\r\n        <a href=\"\" class=\"close\">\r\n        <img src=\"" 
     12    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     13    + "images/icons/close-button.png\" alt=\"Close Pelagios information\" />\r\n        </a>    \r\n        "; 
     14  return buffer; 
     15  } 
    1816 
    1917function program3(depth0,data) { 
    2018   
    2119  var buffer = "", stack1; 
    22   buffer += "\r\n<img id=\""; 
    23   foundHelper = helpers.widgetContext; 
    24   stack1 = foundHelper || depth0.widgetContext; 
    25   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    26   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    27   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    28   buffer += escapeExpression(stack1) + "-icon\" class=\"icon\" src=\""; 
    29   foundHelper = helpers.widgetContext; 
    30   stack1 = foundHelper || depth0.widgetContext; 
    31   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.baseURL); 
    32   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    33   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.baseURL", { hash: {} }); } 
    34   buffer += escapeExpression(stack1) + "images/icons/pelagios.png\" alt=\"Information about this place from Pelagios partners\"/> \r\n"; 
    35   return buffer;} 
     20  buffer += "\r\n<img id=\"" 
     21    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     22    + "-icon\" class=\"icon\" src=\"" 
     23    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.baseURL)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     24    + "images/icons/pelagios.png\" alt=\"Information about this place from Pelagios partners\"/> \r\n"; 
     25  return buffer; 
     26  } 
    3627 
    37   buffer += "<div id=\""; 
    38   foundHelper = helpers.widgetContext; 
    39   stack1 = foundHelper || depth0.widgetContext; 
    40   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    41   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    42   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    43   buffer += escapeExpression(stack1) + "-container\" class=\"container\">    \r\n    <div class=\"header\"> \r\n        <img class=\"logo\" src=\""; 
    44   foundHelper = helpers.widgetContext; 
    45   stack1 = foundHelper || depth0.widgetContext; 
    46   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.imageDir); 
    47   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    48   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.imageDir", { hash: {} }); } 
    49   buffer += escapeExpression(stack1) + "icons/pelagios-logo.png\" alt=\"View Pelagios infromation\"/>    \r\n        "; 
    50   foundHelper = helpers.widgetContext; 
    51   stack1 = foundHelper || depth0.widgetContext; 
    52   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.icon); 
    53   stack2 = helpers['if']; 
    54   tmp1 = self.program(1, program1, data); 
    55   tmp1.hash = {}; 
    56   tmp1.fn = tmp1; 
    57   tmp1.inverse = self.noop; 
    58   stack1 = stack2.call(depth0, stack1, tmp1); 
    59   if(stack1 || stack1 === 0) { buffer += stack1; } 
    60   buffer += "\r\n    </div>    \r\n    <div class=\"content-wrapper\">\r\n        <div id=\""; 
    61   foundHelper = helpers.widgetContext; 
    62   stack1 = foundHelper || depth0.widgetContext; 
    63   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.widgetID); 
    64   if(typeof stack1 === functionType) { stack1 = stack1.call(depth0, { hash: {} }); } 
    65   else if(stack1=== undef) { stack1 = helperMissing.call(depth0, "widgetContext.widgetID", { hash: {} }); } 
    66   buffer += escapeExpression(stack1) + "-content\">\r\n        </div>\r\n        <div class=\"footer\"></div>                           \r\n    </div>\r\n</div>    \r\n"; 
    67   foundHelper = helpers.widgetContext; 
    68   stack1 = foundHelper || depth0.widgetContext; 
    69   stack1 = (stack1 === null || stack1 === undefined || stack1 === false ? stack1 : stack1.icon); 
    70   stack2 = helpers['if']; 
    71   tmp1 = self.program(3, program3, data); 
    72   tmp1.hash = {}; 
    73   tmp1.fn = tmp1; 
    74   tmp1.inverse = self.noop; 
    75   stack1 = stack2.call(depth0, stack1, tmp1); 
    76   if(stack1 || stack1 === 0) { buffer += stack1; } 
     28  buffer += "<div id=\"" 
     29    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     30    + "-container\" class=\"container\">    \r\n    <div class=\"header\"> \r\n        <img class=\"logo\" src=\"" 
     31    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.imageDir)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     32    + "icons/pelagios-logo.png\" alt=\"View Pelagios infromation\"/>    \r\n        "; 
     33  stack2 = helpers['if'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.icon), {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data}); 
     34  if(stack2 || stack2 === 0) { buffer += stack2; } 
     35  buffer += "\r\n    </div>    \r\n    <div class=\"content-wrapper\">\r\n        <div id=\"" 
     36    + escapeExpression(((stack1 = ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.widgetID)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1)) 
     37    + "-content\">\r\n        </div>\r\n        <div class=\"footer\"></div>                           \r\n    </div>\r\n</div>    \r\n"; 
     38  stack2 = helpers['if'].call(depth0, ((stack1 = depth0.widgetContext),stack1 == null || stack1 === false ? stack1 : stack1.icon), {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data}); 
     39  if(stack2 || stack2 === 0) { buffer += stack2; } 
    7740  buffer += "  "; 
    78   return buffer;}); 
     41  return buffer; 
     42  }); 
    7943})(); 
  • pelagios-widgets-for-wordpress/trunk/inc/assets/js/wp_pelagios_editor_plugin.js

    r583489 r1156983  
    1 ( 
    2     function(){  
    3         var icon_url = '../wp-content/plugins/pelagios-widgets-for-wordpress/inc/assets/images/wp_pelagios_icon.png';    
    4         tinymce.create( 
    5             "tinymce.plugins.WpPelagiosShortcodes", 
    6             { 
    7                 init: function(d,e) {}, 
    8                 createControl:function(d,e) 
    9                 {                
    10                     if(d=="wp_pelagios_shortcodes_button") 
    11                     {                    
    12                         d=e.createMenuButton( "wp_pelagios_shortcodes_button",{ 
    13                             title:"Pelagios Shortcode", 
    14                             image:icon_url, 
    15                             icons:false 
    16                             });                          
    17                             var a=this;d.onRenderMenu.add(function(c,b) 
    18                             {                        
    19                                 a.addImmediate(b,"Place", '[pelagios id=""]'); 
    20                             }); 
    21                         return d                     
    22                     }                    
    23                     return null 
    24                 },       
    25                 addImmediate:function(d,e,a){d.add({title:e,onclick:function(){tinyMCE.activeEditor.execCommand( "mceInsertContent",false,a)}})}                 
    26             } 
    27         );       
    28         tinymce.PluginManager.add( "WpPelagiosShortcodes", tinymce.plugins.WpPelagiosShortcodes); 
    29     } 
    30 )(); 
     1/** 
     2 * Pelagios Widgets for WordPress 
     3 * 
     4 * TinyMCE 4.0 editor plugin, requires WordPress 3.9 or higher 
     5 */ 
     6(function(){ 
     7    tinymce.PluginManager.add('wp_pelagios_mce_button', function( editor, url ){ 
     8        editor.addButton( 'wp_pelagios_mce_button',{ 
     9            text: false, 
     10            icon: 'wp-pelagios-mce-button', 
     11            type: 'menubutton', 
     12            menu: [ 
     13                { 
     14                    text: 'Pelagios Place Widget', 
     15                    onclick: function(){ 
     16                        editor.windowManager.open({ 
     17                            title: 'Pelagios Place Widget', 
     18                            body: [ 
     19                                { 
     20                                    type: 'textbox', 
     21                                    name: 'textID', 
     22                                    label: 'Pelagios ID', 
     23                                } 
     24                            ], 
     25                            onsubmit: function(e){ 
     26                                editor.insertContent('[pelagios id="' + e.data.textID + '"]'); 
     27                            } 
     28                        }); 
     29                    } 
     30                }, 
     31                { 
     32                    text: 'Pelagios Search Widget', 
     33                    onclick: function(){ 
     34                        editor.insertContent('[pelagios_search]'); 
     35                    } 
     36                } 
     37            ] 
     38        }); 
     39    }); 
     40})(); 
     41 
     42/* end of file wp_pelagios_editor_plugin.js */ 
  • pelagios-widgets-for-wordpress/trunk/inc/widgets/widget-init.php

    r583489 r1156983  
    11<?php 
    2  
    32/** 
    43 * Widgets init 
     
    65 * Initialize widget(s). 
    76 * 
    8  * @package     Pelagios Widgets for WordPress 
    9  * @category    Widgets 
    10  * @author      Peter J. Herrel 
     7 * @package     Pelagios Widgets for WordPress 
     8 * @category    Widgets 
     9 * @author      Peter J. Herrel 
    1110 */ 
    1211 
    1312include_once( 'widget-pelagios-search.php' ); 
    1413 
     14add_action( 'widgets_init', 'wp_pelagios_register_widgets' ); 
    1515function wp_pelagios_register_widgets() 
    1616{ 
    17     register_widget( 'Wp_Pelagios_Search_Widget' ); 
     17    register_widget( 'Wp_Pelagios_Search_Widget' ); 
    1818} 
    19 add_action( 'widgets_init', 'wp_pelagios_register_widgets' ); 
     19 
     20/* end of file widget-init.php */ 
  • pelagios-widgets-for-wordpress/trunk/inc/widgets/widget-pelagios-search.php

    r583489 r1156983  
    33 * Pelagios Search Widget (WordPress) 
    44 *  
    5  * @package     Pelagios Widgets for WordPress 
    6  * @category    Widgets 
    7  * @author      Peter J. Herrel 
     5 * @package     Pelagios Widgets for WordPress 
     6 * @category    Widgets 
     7 * @author      Peter J. Herrel 
    88 */ 
    99 
    10 class Wp_Pelagios_Search_Widget extends WP_Widget { 
    11  
     10class Wp_Pelagios_Search_Widget extends WP_Widget 
     11{ 
    1212    /** Variables to setup the widget. */ 
    1313    var $pelagios_widget_cssclass; 
     
    3434    function widget( $args, $instance ) 
    3535    {    
    36         //if( is_singular() && has_pelagios_shortcode( 'pelagios' ) ) 
     36        //global $post; 
     37        //if( is_singular() && has_shortcode( $post->post_content, 'pelagios' ) ) 
    3738        //{ 
    3839            extract($args); 
     
    6970    } 
    7071} // Wp_Pelagios_Search_Widget 
     72 
     73/* end of file widget-pelagios-search.php */ 
  • pelagios-widgets-for-wordpress/trunk/inc/wp/functions.php

    r583489 r1156983  
    11<?php 
    2  
    32/** 
    43 * Front End Functions 
     
    65 * General functions file for the front end. 
    76 * 
    8  * @author      Peter J. Herrel 
    9  * @category    Functions 
    10  * @package:    Pelagios Widgets for WordPress 
     7 * @author      Peter J. Herrel 
     8 * @category    Functions 
     9 * @package     Pelagios Widgets for WordPress 
    1110 */ 
    1211 
     
    1514 * 
    1615 * Prevents shortcodes from being executed on archive pages / in manual exerpts 
     16 * 
     17 * @param   string  $return 
     18 * @return  string 
    1719 */ 
     20add_filter( 'wp_pelagios_shortcode', 'wp_pelagios_shortcode_output_filter' ); 
    1821function wp_pelagios_shortcode_output_filter( $return ) 
    1922{ 
    20     if( ! is_singular() && in_the_loop() ) 
    21         $return = ''; 
    22     return $return; 
     23    if( ! is_singular() && in_the_loop() ) 
     24        $return = ''; 
     25 
     26    return $return; 
    2327} 
    24 add_filter( 'wp_pelagios_shortcode', 'wp_pelagios_shortcode_output_filter' ); 
    2528 
    2629/** 
    2730 * Pelagios Search Widget HTML 
     31 * 
     32 * @param   int     $width  container width 
     33 * @return  string 
    2834 */ 
    29 function wp_pelagios_search_widget_html() 
     35function wp_pelagios_search_widget_html( $width = '' ) 
    3036{ 
    31     global $wp_pelagios; 
    32     $maps = ( get_option( 'wp_pelagios_search_widget_maps' ) !== 'yes' ) ? 'false' : 'true'; 
    33     $html = '<div id="wp_pelagios_search_widget" class="pelagios pelagios-search" data-display_map="' . $maps . '">' . $wp_pelagios->enqueue( 'search' ) . '</div>'; 
    34     return apply_filters( 'wp_pelagios_search_widget_html', $html ); 
     37    global $wp_pelagios; 
     38 
     39    $maps   = ( 'yes' != get_option( 'wp_pelagios_search_widget_maps' ) ) ? 'false' : 'true'; 
     40    $width  = ( is_int( $width ) ) ? ' data-container_width="' . $width . '"' : ''; 
     41 
     42    $html = '<div id="wp_pelagios_search_widget" class="pelagios pelagios-search" data-display_map="' . $maps . '"' . $width . '></div>'; 
     43 
     44    $wp_pelagios->enqueue( 'search' ); 
     45 
     46    return apply_filters( 'wp_pelagios_search_widget_html', $html ); 
    3547} 
     48 
    3649/** 
    3750 * Pelagios Search Widget template tag 
     51 * 
     52 * @return  string 
    3853 */ 
    39 function wp_pelagios_search_widget() 
     54function wp_pelagios_search_widget( $width = '' ) 
    4055{ 
    41     if( get_option( 'wp_pelagios_search_widget_implement' ) != 'tag' ) 
    42         return ''; 
    43     return wp_pelagios_search_widget_html(); 
     56    if( 'tag' != get_option( 'wp_pelagios_search_widget_implement' ) ) 
     57        return ''; 
     58 
     59    return wp_pelagios_search_widget_html( $width ); 
    4460} 
    4561 
    4662/** 
    4763 * Pelagios Search Widget Content Filter 
     64 * 
     65 * @param   string  $content 
     66 * @return  string 
    4867 */ 
     68add_filter( 'the_content', 'wp_pelagios_index_filter', 11, 1 ); 
    4969function wp_pelagios_index_filter( $content ) 
    5070{ 
    51     if( is_singular() && get_option( 'wp_pelagios_search_widget_implement' ) == 'append' ) 
    52         return $content . wp_pelagios_search_widget_html(); 
    53     if( is_singular() && get_option( 'wp_pelagios_search_widget_implement' ) == 'prepend' ) 
    54         return wp_pelagios_search_widget_html() . $content; 
    55     return $content; 
     71    if( is_singular() && 'append' == get_option( 'wp_pelagios_search_widget_implement' ) ) 
     72        return $content . wp_pelagios_search_widget_html(); 
     73 
     74    if( is_singular() && 'prepend' == get_option( 'wp_pelagios_search_widget_implement' ) ) 
     75        return wp_pelagios_search_widget_html() . $content; 
     76 
     77    return $content; 
    5678} 
    57 add_filter( 'the_content', 'wp_pelagios_index_filter', 11, 1 ); 
    5879 
    59 /** 
    60  * Conditional tag 
    61  * 
    62  * Checks if a post contains a [pelagios id="..."] shortcode 
    63  * 
    64  * @param: $shortcode (string)  
    65  */ 
    66 if ( ! function_exists( 'has_pelagios_shortcode' ) ) 
    67 { 
    68 function has_pelagios_shortcode( $shortcode = '' ) 
    69 { 
    70     global $post; 
    71     $obj = get_post( $post->ID ); 
    72     $found = false; 
    73     if ( ! $shortcode ) return $found; 
    74     if ( stripos( $obj->post_content, '[' . $shortcode ) !== false ) $found = true; 
    75     return $found; 
    76 } 
    77 } 
     80/* end of file functions.php */ 
  • pelagios-widgets-for-wordpress/trunk/readme.txt

    r673193 r1156983  
    33Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WAY79HJWYKPQE 
    44Tags: links, data, linked data, geo, semantic, lawdi, ancient world, history, ancient history, science, pelagios, widgets 
    5 Requires at least: 3.3 
    6 Tested up to: 3.5.1 
    7 Stable tag: 0.1.1 
     5Requires at least: 3.9 
     6Tested up to: 4.2.2 
     7Stable tag: 0.2.0 
    88License: GPLv3 
    99 
     
    4040= Minimum Requirements = 
    4141 
    42 * WordPress 3.3 or greater 
     42* WordPress 3.9 or greater 
    4343 
    4444= Automatic installation = 
     
    5858Find out more about the Pelagios Widgets project on [Github](https://github.com/pelagios/pelagios-widgets). 
    5959 
    60 * [Demo](http://pelagios.github.com/pelagios-widgets/demo/index.html) 
    61 * [Docs](http://pelagios.github.com/pelagios-widgets/docs/index.html) 
     60* [Demo](http://pelagios.github.io/pelagios-widgets/demo/index.html) 
     61* [Docs](http://pelagios.github.io/pelagios-widgets/docs/index.html) 
     62* [Blog](http://pelagios-project.blogspot.co.uk/) 
    6263 
    6364= Where can I report bugs or request new features? = 
     
    6566Bugs related to the Pelagios Widgets can be reported on [GitHub](https://github.com/pelagios/pelagios-widgets/issues). 
    6667 
    67 Bugs related to the WordPress plugin can be reported on the [WordPress support forums](http://wordpress.org/support/plugin/pelagios-widgets-for-wordpress) or on [GitHub](https://github.com/diggy/wp-pelagios). 
     68Bugs related to the WordPress plugin can be reported on the [WordPress support forums](http://wordpress.org/support/plugin/pelagios-widgets-for-wordpress) or on [GitHub](https://github.com/diggy/wp-pelagios/issues). 
    6869 
    6970Idem for feature requests. 
     
    8283== Changelog == 
    8384 
     85= 0.2.0 - 09/05/2015 = 
     86* code cleanup 
     87* pelagios JS update 
     88* TinyMCE 4.0 
     89* requires WP 3.9+ 
     90 
    8491= 0.1.1 - 06/08/2012 =  
    8592* Initial release 0.1.1 
  • pelagios-widgets-for-wordpress/trunk/wp-pelagios.php

    r583489 r1156983  
    11<?php 
    22 
    3 /************************************************************************** 
     3/*************************************************************************************************** 
    44 
    55Plugin Name: Pelagios Widgets for WordPress 
    66Plugin URI: http://peterherrel.com/wordpress/plugins/wp-pelagios 
    77Description: The Pelagios widgets are widgets that you can embed on a web page to display relationships between places and items in ancient history collections. The information displayed originates from museums, research institutes, universities and projects that are part of Pelagios, and includes details about these items and maps showing associated locations. 
    8 Version: 0.1.1 
     8Version: 0.2.0 
    99Author: Peter J. Herrel 
    1010Author URI: http://peterherrel.com/ 
     
    1313Domain Path: /inc/lang 
    1414 
    15 ************************************************************************** 
    16  
    17 Copyright (c) 2012 Peter J. Herrel <peterherrel - gmail> 
     15**************************************************************************************************** 
     16 
     17Copyright (c) 2012-2015 Peter J. Herrel <peterherrel - gmail> 
    1818 
    1919Pelagios Widgets for WordPress is free software; you can redistribute it and/or modify  
     
    2828with this program. If not, see <http://www.gnu.org/licenses/>. 
    2929 
    30 ************************************************************************** 
     30**************************************************************************************************** 
    3131 
    3232PELAGIOS WIDGETS 
     
    3535The widgets were developed at the Institute of Educational Technology at The Open University.  
    3636 
    37 **************************************************************************/ 
    38  
    39 if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly 
    40  
    41 if ( ! class_exists( 'Wp_Pelagios' ) ) { 
    42  
     37***************************************************************************************************/ 
     38 
     39/* 
     40 * Security, exit if accessed directly 
     41 */ 
     42if( ! defined( 'ABSPATH' ) ) 
     43    exit; 
     44 
     45if( ! class_exists( 'Wp_Pelagios' ) ) 
     46{ 
    4347/** 
    4448 * Main Wp_Pelagios Class 
     
    4953 */ 
    5054class Wp_Pelagios 
    51 {    
    52     var $version = '0.1.1';  
    53     var $plugin_dir_url = ''; 
    54  
    55     /** 
    56      * Constructor 
    57      */ 
    58     function __construct() 
    59     { 
    60         // constant 
    61         define( 'WP_PELAGIOS_VERSION', $this->version ); 
    62          
    63         // plugin directory url 
    64         $this->plugin_dir_url = trailingslashit( plugins_url( dirname( plugin_basename( __FILE__ ) ) ) ); 
    65          
    66         // includes 
    67         $this->includes(); 
    68  
    69         // installation 
    70         if ( is_admin() && ! defined('DOING_AJAX') ) : 
    71          
    72             $this->install(); 
    73             $this->uninstall(); 
    74              
    75         endif; 
    76          
    77         // actions 
    78         add_action( 'init', array( &$this, 'init' ), 0 ); 
    79          
    80         // action hook 
    81         do_action( 'wp_pelagios_loaded' ); 
    82     } 
    83     /** 
    84      * Includes 
    85      **/ 
    86     function includes() 
    87     { 
    88         // admin includes 
    89         if ( is_admin() )                                   $this->admin_includes(); 
    90          
    91         // front end includes 
    92         if ( ! is_admin() || defined( 'DOING_AJAX' ) )      $this->frontend_includes(); 
    93  
    94         // core functions 
    95         // include( 'inc/core/functions.php' ); 
    96          
    97         // widget(s) 
    98         if( get_option( 'wp_pelagios_search_widget_implement' ) == 'widget' ) 
    99             include( 'inc/widgets/widget-init.php' ); 
    100          
    101         // action hook 
    102         do_action( 'wp_pelagios_includes' ); 
    103     }    
    104     /** 
    105      * Admin 
    106      **/ 
    107     function admin_includes() 
    108     { 
    109         // admin includes 
    110         include( 'inc/admin/admin-init.php' ); 
    111          
    112         // settings link 
    113         add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( &$this, 'settings_link' ) ); 
    114          
    115         // action hook 
    116         do_action( 'wp_pelagios_admin_includes' ); 
    117     } 
    118     /** 
    119      * Front End 
    120      **/ 
    121     function frontend_includes() 
    122     {        
    123         // functions 
    124         include( 'inc/wp/functions.php' ); 
    125  
    126         // shortcodes 
    127         add_shortcode( 'pelagios', array( &$this, 'shortcode' ), 10, 2 ); 
    128         add_shortcode( 'pelagios_search', array( &$this, 'shortcode_search' ), 11 ); 
    129          
    130         // filters 
    131         add_filter( 'the_excerpt', 'do_shortcode'); 
    132          
    133         // action hook 
    134         do_action( 'wp_pelagios_frontend_includes' ); 
    135     }    
    136     /** 
    137      * Activation 
    138      **/ 
    139     function install() 
    140     { 
    141         // activation hook 
    142         register_activation_hook( __FILE__, 'activate_wp_pelagios' ); 
    143          
    144         // install check 
    145         if ( get_option( 'wp_pelagios_db_version' ) != $this->version )  
    146             add_action( 'init', 'install_wp_pelagios', 1 ); 
    147     } 
    148     /** 
    149      * Deactivation 
    150      **/ 
    151     function uninstall() 
    152     { 
    153         // deactivation hook 
    154         register_deactivation_hook( __FILE__, 'deactivate_wp_pelagios' ); 
    155     } 
    156     /** 
    157      * Init 
    158      **/ 
    159     function init() 
    160     { 
    161         // localisation 
    162         $this->load_plugin_textdomain(); 
    163  
    164         // front end 
    165         if ( ! is_admin() || defined( 'DOING_AJAX' ) ) 
    166         { 
    167             add_filter( 'body_class', array( &$this, 'body_class' ), 10, 1 ); 
    168             add_filter( 'post_class', array( &$this, 'post_class' ), 10, 1 ); 
    169         } 
    170          
    171         // actions 
    172         add_action( 'init', array( &$this, 'register_scripts' ) ); 
    173          
    174         // action hook 
    175         do_action( 'wp_pelagios_init' ); 
    176     } 
    177     /** 
    178      * Localisation 
    179      **/ 
    180     function load_plugin_textdomain() 
    181     { 
    182         load_plugin_textdomain( 'wp_pelagios', false, $this->plugin_dir_url . 'inc/lang/' ); 
    183     } 
    184     public function register_scripts() 
    185     { 
    186         // options 
    187         $require    = ( get_option( 'wp_pelagios_js_source' ) == 'local' ) ? $this->plugin_dir_url . 'inc/assets/js/build/lib/require.js' : 'http://pelagios.github.com/pelagios-widgets/lib/require.js'; 
    188         $search     = ( get_option( 'wp_pelagios_js_source' ) == 'local' ) ? $this->plugin_dir_url . 'inc/assets/js/build/search.js' : 'http://pelagios.github.com/pelagios-widgets/search.js'; 
    189         $place      = ( get_option( 'wp_pelagios_js_source' ) == 'local' ) ? $this->plugin_dir_url . 'inc/assets/js/build/place.js' : 'http://pelagios.github.com/pelagios-widgets/place.js'; 
    190          
    191         // register scripts 
    192         wp_register_script( 'wp-pelagios-require', $require, array( 'jquery' ), NULL, true ); 
    193         wp_register_script( 'wp-pelagios-search', $search, array( 'wp-pelagios-require' ), NULL, true ); 
    194         wp_register_script( 'wp-pelagios-place', $place, array( 'wp-pelagios-require' ), NULL, true ); 
    195          
    196         // action hook 
    197         do_action( 'wp_pelagios_register_scripts' ); 
    198     } 
    199     function enqueue( $val ) 
    200     { 
    201         if( ! in_array( $val, array( 'search', 'place', 'all' ) ) ) 
    202             return; 
    203              
    204         // $file = get_stylesheet_directory() . '/pelagios.css'; 
    205         // $url = ( file_exists( $file ) ) ? get_stylesheet_directory_uri() . '/pelagios.css' : $this->plugin_dir_url . 'inc/assets/js/build/css/pelagios.css'; 
    206          
    207         wp_enqueue_script( 'wp-pelagios-require' ); 
    208          
    209         if( $val === 'search' || $val === 'all' ) 
    210             wp_enqueue_script( 'wp-pelagios-search' ); 
    211              
    212         if( $val === 'place' || $val === 'all' ) 
    213             wp_enqueue_script( 'wp-pelagios-place' ); 
    214          
    215         /*$wp_pelagios_params = array( 
    216             'WpPelagiosStyleSheetUrl' => $url 
    217         );           
    218         wp_localize_script( 'wp-pelagios-ui', 'wp_pelagios', $wp_pelagios_params );*/ 
    219          
    220         // action hook 
    221         do_action( 'wp_pelagios_enqueue' ); 
    222     } 
    223     public function shortcode( $atts, $content = null ) 
    224     { 
    225         // options 
    226         $map_default = ( get_option( 'wp_pelagios_place_display_map' ) == 'yes' ) ? 'true' : 'false'; 
    227         $icon_default = ( get_option( 'wp_pelagios_place_display_inline' ) == 'yes' ) ? 'true' : 'false'; 
    228         $mouse_default = ( get_option( 'wp_pelagios_place_on_mouseover' ) == 'yes' ) ? 'true' : 'false'; 
    229          
    230         extract( shortcode_atts( array( 
    231             'widget_id' => 'pelagios_' . substr( md5( rand() ), 0, 7 ), 
    232             'id' => '', 
    233             'map' => $map_default, 
    234             'icon' => $icon_default, 
    235             'mouseover' => $mouse_default, 
    236             'class' => '', 
    237             'wrap' => 'span' 
    238         ), $atts ) ); 
    239  
    240         if( empty( $id ) ) 
    241             return ''; 
    242  
    243         // enqueue scripts 
    244         $this->enqueue( 'place' ); 
    245  
    246         // output 
    247         $return = '<' . esc_attr( $wrap )  
    248             . ' id="' . esc_attr( $widget_id ) 
    249             . '" class="pelagios pelagios-place ' . esc_attr( $class ) 
    250             . '" data-display_map="' . esc_attr( $map )  
    251             . '" data-icon="' . esc_attr( $icon )  
    252             . '" data-mouseover="' . esc_attr( $mouseover ) 
    253             . '" data-pleiades_id="' . esc_attr( $id )  
    254             . '"></' . esc_attr( $wrap ) . '>'; 
    255              
    256         // filter output 
    257         return apply_filters( 'wp_pelagios_shortcode', $return ); 
    258     } 
    259     function shortcode_search( $atts ) 
    260     { 
    261         if( get_option( 'wp_pelagios_search_widget_implement' ) != 'shortcode' ) 
    262             return;          
    263         $div = $this->shortcode_search_cb();         
    264         return $div; 
    265     } 
    266     function shortcode_search_cb() 
    267     { 
    268         $div = wp_pelagios_search_widget_html();         
    269         return apply_filters( 'wp_pelagios_shortcode_search_cb', $div ); 
    270     } 
    271     function body_class( $classes ) 
    272     { 
    273         $classes[] = 'wp-pelagios'; 
     55{ 
     56    // vars 
     57    public $version         = '0.2.0'; 
     58    public $version_wp      = '3.9'; 
     59    public $version_req_js  = '2.0.4'; 
     60    public $plugin_dir_url  = ''; 
     61 
     62    /** 
     63     * Constructor 
     64     * 
     65     * @return  void 
     66     */ 
     67    public function __construct() 
     68    { 
     69        // constants 
     70        define( 'WP_PELAGIOS_VERSION',      $this->version ); 
     71        define( 'WP_PELAGIOS_VERSION_WP',   $this->version_wp ); 
     72 
     73        // plugin directory url 
     74        $this->plugin_dir_url = trailingslashit( plugins_url( dirname( plugin_basename( __FILE__ ) ) ) ); 
     75 
     76        // i18n 
     77        add_action( 'init', array( $this, 'load_plugin_textdomain' ), 0 ); 
     78 
     79        // installation and upgrading 
     80        if( is_admin() && ! defined( 'DOING_AJAX' ) ) : 
     81 
     82            // activation 
     83            register_activation_hook( __FILE__, array( $this , 'register_activation_hook' ) ); 
     84 
     85            // deactivation 
     86            register_deactivation_hook( __FILE__, array( $this, 'register_deactivation_hook' ) ); 
     87 
     88            // check compatibility 
     89            add_action( 'admin_init', array( $this, 'check_compat' ), 9 ); 
     90 
     91            if( '1' == get_option( 'wp_pelagios_install' ) && false !== self::is_compatible() ) 
     92                add_action( 'admin_init', array( $this, 'redirect_after_activation' ), 10 ); 
     93 
     94        endif; 
     95 
     96        // includes 
     97        $this->includes(); 
     98 
     99        // actions 
     100        add_action( 'init', array( $this, 'init' ), 0 ); 
     101 
     102        // action hook 
     103        do_action( 'wp_pelagios_loaded' ); 
     104    } 
     105    /** 
     106     * Includes 
     107     * 
     108     * @return  void 
     109     */ 
     110    public function includes() 
     111    { 
     112        // admin includes 
     113        if( is_admin() )                                $this->admin_includes(); 
     114 
     115        // front end includes 
     116        if( ! is_admin() || defined( 'DOING_AJAX' ) )   $this->frontend_includes(); 
     117 
     118        // widget(s) 
     119        if( 'widget' == get_option( 'wp_pelagios_search_widget_implement' ) ) 
     120            include_once( 'inc/widgets/widget-init.php' ); 
     121 
     122        // action hook 
     123        do_action( 'wp_pelagios_includes' ); 
     124    } 
     125    /** 
     126     * Admin includes 
     127     * 
     128     * @return  void 
     129     */ 
     130    public function admin_includes() 
     131    { 
     132        // plugin meta 
     133        add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ),   array( $this, 'plugin_action_links' ), 10, 1 ); 
     134        add_filter( 'plugin_row_meta',                                      array( $this, 'plugin_row_meta' ), 10, 2 ); 
     135 
     136        // admin includes 
     137        include_once( 'inc/admin/admin-init.php' ); 
     138 
     139        // action hook 
     140        do_action( 'wp_pelagios_admin_includes' ); 
     141    } 
     142    /** 
     143     * Front end includes 
     144     * 
     145     * @return  void 
     146     */ 
     147    public function frontend_includes() 
     148    { 
     149        // functions 
     150        include_once( 'inc/wp/functions.php' ); 
     151 
     152        // shortcodes 
     153        add_shortcode( 'pelagios',          array( $this, 'shortcode' ), 10, 2 ); 
     154        add_shortcode( 'pelagios_search',   array( $this, 'shortcode_search' ), 11 ); 
     155 
     156        // filters 
     157        if( ! has_filter( 'the_content', 'do_shortcode' ) ) 
     158            add_filter( 'the_excerpt', 'do_shortcode' ); 
     159 
     160        // action hook 
     161        do_action( 'wp_pelagios_frontend_includes' ); 
     162    } 
     163    /** 
     164     * Init 
     165     * 
     166     * @return  void 
     167     */ 
     168    public function init() 
     169    { 
     170        // front end 
     171        if( ! is_admin() || defined( 'DOING_AJAX' ) ) 
     172        { 
     173            add_filter( 'body_class', array( $this, 'body_class' ), 10, 1 ); 
     174            add_filter( 'post_class', array( $this, 'post_class' ), 10, 1 ); 
     175        } 
     176 
     177        // actions 
     178        add_action( 'init', array( $this, 'register_scripts' ) ); 
     179 
     180        // action hook 
     181        do_action( 'wp_pelagios_init' ); 
     182    } 
     183    /** 
     184     * Localisation 
     185     * 
     186     * @return  void 
     187     */ 
     188    public function load_plugin_textdomain() 
     189    { 
     190        load_plugin_textdomain( 'wp_pelagios', false, $this->plugin_dir_url . 'inc/lang/' ); 
     191    } 
     192    /** 
     193     * Register scripts 
     194     * 
     195     * @return  void 
     196     */ 
     197    public function register_scripts() 
     198    { 
     199        // options 
     200        $require    = ( 'local' == get_option( 'wp_pelagios_js_source' ) ) ? $this->plugin_dir_url . 'inc/assets/js/build/lib/require.js'   : 'https://pelagios.github.io/pelagios-widgets/lib/require.js'; 
     201        $search     = ( 'local' == get_option( 'wp_pelagios_js_source' ) ) ? $this->plugin_dir_url . 'inc/assets/js/build/search.js'        : 'https://pelagios.github.io/pelagios-widgets/search.js'; 
     202        $place      = ( 'local' == get_option( 'wp_pelagios_js_source' ) ) ? $this->plugin_dir_url . 'inc/assets/js/build/place.js'         : 'https://pelagios.github.io/pelagios-widgets/place.js'; 
     203 
     204        $version    = ( 'local' == get_option( 'wp_pelagios_js_source' ) ) ? $this->version : null; 
     205        $version = null; 
     206 
     207        // register scripts 
     208        wp_register_script( 'wp-pelagios-require',  $require,   array( 'jquery' ),                          $this->version_req_js, true ); 
     209        wp_register_script( 'wp-pelagios-search',   $search,    array( 'jquery', 'wp-pelagios-require' ),   $version, true ); 
     210        wp_register_script( 'wp-pelagios-place',    $place,     array( 'jquery', 'wp-pelagios-require' ),   $version, true ); 
     211 
     212        // action hook 
     213        do_action( 'wp_pelagios_register_scripts' ); 
     214    } 
     215    /** 
     216     * Enqueue scripts 
     217     * 
     218     * @param   string  $val 
     219     * @return  void 
     220     */ 
     221    public function enqueue( $val ) 
     222    { 
     223        if( ! in_array( $val, array( 'search', 'place', 'all' ) ) ) 
     224            return; 
     225 
     226        // wp_script_is 
     227        if( $val === 'search' || $val === 'all' ) 
     228            wp_enqueue_script( 'wp-pelagios-search' ); 
     229 
     230        if( $val === 'place' || $val === 'all' ) 
     231            wp_enqueue_script( 'wp-pelagios-place' ); 
     232 
     233        // action hook 
     234        do_action( 'wp_pelagios_enqueue' ); 
     235    } 
     236    /** 
     237     * Shortcode callback 
     238     * 
     239     * @param   array   $atts 
     240     * @param   string  $content 
     241     * @return  string 
     242     */ 
     243    public function shortcode( $atts, $content = null ) 
     244    { 
     245        // options 
     246        $map_default    = ( 'yes' == get_option( 'wp_pelagios_place_display_map' ) )    ? 'true' : 'false'; 
     247        $icon_default   = ( 'yes' == get_option( 'wp_pelagios_place_display_inline' ) ) ? 'true' : 'false'; 
     248        $mouse_default  = ( 'yes' == get_option( 'wp_pelagios_place_on_mouseover' ) )   ? 'true' : 'false'; 
     249 
     250        extract( shortcode_atts( array( 
     251             'widget_id'    => 'pelagios_' . substr( md5( rand() ), 0, 7 ) 
     252            ,'id'           => '' 
     253            ,'map'          => $map_default 
     254            ,'icon'         => $icon_default 
     255            ,'mouseover'    => $mouse_default 
     256            ,'class'        => '' 
     257            ,'wrap'         => 'span' 
     258        ), $atts ) ); 
     259 
     260        if( empty( $id ) ) 
     261            return ''; 
     262 
     263        // enqueue scripts 
     264        $this->enqueue( 'place' ); 
     265 
     266        // output 
     267        $return = '<' . esc_attr( $wrap ) 
     268            . ' id="' . esc_attr( $widget_id ) 
     269            . '" class="pelagios pelagios-place ' . esc_attr( $class ) 
     270            . '" data-display_map="' . esc_attr( $map ) 
     271            . '" data-icon="' . esc_attr( $icon ) 
     272            . '" data-mouseover="' . esc_attr( $mouseover ) 
     273            . '" data-pleiades_id="' . esc_attr( $id ) 
     274            . '"></' . esc_attr( $wrap ) . '>'; 
     275 
     276        // filter output 
     277        return apply_filters( 'wp_pelagios_shortcode', $return ); 
     278    } 
     279    /** 
     280     * Search shortcode callback 
     281     * 
     282     * @param   array   $atts 
     283     * @return  string 
     284     */ 
     285    public function shortcode_search( $atts ) 
     286    { 
     287        if( 'shortcode' != get_option( 'wp_pelagios_search_widget_implement' ) ) 
     288            return; 
     289 
     290        extract( shortcode_atts( array( 
     291            'width' => '' 
     292        ), $atts ) ); 
     293 
     294        return apply_filters( 'wp_pelagios_shortcode_search_cb', wp_pelagios_search_widget_html( $width ) ); 
     295    } 
     296    /** 
     297     * Body Class 
     298     * 
     299     * @param   array   $classes 
     300     * @return  array 
     301     */ 
     302    public function body_class( $classes ) 
     303    { 
     304        $classes[] = 'wp-pelagios'; 
     305 
    274306        return apply_filters( 'wp_pelagios_body_class', $classes ); 
    275     } 
    276     function post_class( $classes ) 
    277     { 
     307    } 
     308    /** 
     309     * Post Class 
     310     * 
     311     * @param   array   $classes 
     312     * @return  array 
     313     */ 
     314    public function post_class( $classes ) 
     315    { 
    278316        $classes[] = 'wp-pelagios-post'; 
     317 
    279318        return apply_filters( 'wp_pelagios_post_class', $classes ); 
    280     } 
    281     function settings_link( $links ) 
    282     {  
    283         $settings_link = '<a href="admin.php?page=wp-pelagios-settings">' . __( 'Settings', 'wp_pelagios' ) . '</a>'; 
    284         array_unshift( $links, $settings_link ); 
    285         return $links;  
    286     } 
     319    } 
     320    /** 
     321     * Activation hook 
     322     * 
     323     * @uses    wp_pelagios_default_options() 
     324     * @return  void 
     325     */ 
     326    public function register_activation_hook() 
     327    { 
     328        if( false === self::is_compatible() ) 
     329        { 
     330            require_once( trailingslashit( ABSPATH ) . 'wp-admin/includes/plugin.php' ); 
     331 
     332            deactivate_plugins( plugin_basename( __FILE__ ) ); 
     333 
     334            wp_die(  
     335                 sprintf( __( 'The Pelagios Widgets for WordPress plugin requires WordPress %s or higher.', 'wp_pelagios' ), $this->version_wp ) 
     336                ,__( 'Pelagios Widgets for WordPress plugin activation error.', 'wp_pelagios' ) 
     337                ,array( 'back_link' => true ) 
     338            ); 
     339        } 
     340        else 
     341        { 
     342            $this->includes(); 
     343 
     344            update_option( 'wp_pelagios_install', 1 ); 
     345 
     346            wp_pelagios_default_options(); 
     347 
     348            update_option( 'wp_pelagios_db_version', $this->version ); 
     349        } 
     350    } 
     351    /** 
     352     * Admin redirect 
     353     * 
     354     * @return  void 
     355     */ 
     356    public function redirect_after_activation() 
     357    { 
     358        delete_option( 'wp_pelagios_install' ); 
     359 
     360        wp_safe_redirect( admin_url( 'options-general.php?page=wp-pelagios-settings&tab=about&activated=1' ) ); 
     361 
     362        exit; 
     363    } 
     364    /** 
     365     * Deactivation 
     366     * 
     367     * @uses    wp_pelagios_delete_options() 
     368     * @return  void 
     369     */ 
     370    public function register_deactivation_hook() 
     371    { 
     372        $this->includes(); 
     373 
     374        update_option( 'wp_pelagios_uninstall', 1 ); 
     375 
     376        wp_pelagios_delete_options(); 
     377 
     378        delete_option( 'wp_pelagios_db_version', $this->version ); 
     379        delete_option( 'wp_pelagios_uninstall' ); 
     380    } 
     381    /** 
     382     * Compatibility check 
     383     * 
     384     * @uses    wp_pelagios_default_options() 
     385     * @return  void 
     386     */ 
     387    public function check_compat() 
     388    { 
     389        // if incompatible 
     390        if( false === self::is_compatible() ) 
     391        { 
     392            require_once( trailingslashit( ABSPATH ) . 'wp-admin/includes/plugin.php' ); 
     393 
     394            if( ! is_plugin_active( plugin_basename( __FILE__ ) ) ) 
     395                return; 
     396 
     397            deactivate_plugins( plugin_basename( __FILE__ ) ); 
     398 
     399            add_action( 'admin_notices', array( $this, 'admin_notices' ) ); 
     400 
     401            if( isset( $_GET['activate'] ) ) 
     402                unset( $_GET['activate'] ); 
     403        } 
     404        // if upgrade 
     405        elseif( $this->version != get_option( 'wp_pelagios_db_version' ) ) 
     406        { 
     407            $this->includes(); 
     408 
     409            wp_pelagios_default_options(); 
     410 
     411            update_option( 'wp_pelagios_db_version', $this->version ); 
     412        } 
     413    } 
     414    /** 
     415     * Version compare 
     416     * 
     417     * @return  bool 
     418     */ 
     419    public static function is_compatible() 
     420    { 
     421        if( version_compare( $GLOBALS['wp_version'], constant( 'WP_PELAGIOS_VERSION_WP' ), '<' ) ) 
     422            return false; 
     423 
     424        return true; 
     425    } 
     426    /** 
     427     * Admin notice 
     428     * 
     429     * @return  void 
     430     */ 
     431    public function admin_notices() 
     432    { 
     433        printf( '<div class="error" id="message"><p><strong>%s</strong></p></div>', sprintf( __( 'The Pelagios Widgets for WordPress plugin requires WordPress %s or higher. The plugin had been deactivated.', 'wp_pelagios' ), $this->version_wp ) ); 
     434    } 
     435    /** 
     436     * Admin plugin settings link 
     437     * 
     438     * @param   array   $links 
     439     * @return  array 
     440     */ 
     441    public function plugin_action_links( $links ) 
     442    {  
     443        array_unshift( $links, sprintf( '<a href="admin.php?page=wp-pelagios-settings">%s</a>', __( 'Settings', 'wp_pelagios' ) ) ); 
     444 
     445        return $links;  
     446    } 
     447    /** 
     448     * Admin plugin row meta 
     449     * 
     450     * @param   array   $links 
     451     * @param   string  $file 
     452     * @return  array 
     453     */ 
     454    public function plugin_row_meta( $links, $file ) 
     455    { 
     456        if( $file == plugin_basename( __FILE__ ) ) 
     457            return array_merge( $links, array( 
     458                 sprintf( '<a href="%s" target="_blank">%s</a>', esc_url( 'https://wordpress.org/support/plugin/pelagios-widgets-for-wordpress' ), __( 'Support', 'wp_pelagios' ) ) 
     459                ,sprintf( '<a href="%s" target="_blank">%s</a>', esc_url( 'https://github.com/diggy/wp-pelagios' ), __( 'Repository', 'wp_pelagios' ) ) 
     460            ) ); 
     461 
     462        return $links; 
     463    } 
    287464} 
    288465 
     
    300477 * 
    301478 * @since Pelagios Widgets for WordPress 0.1.1 
     479 * @param   string  $var    variable 
     480 * @return  string          sanitized variable 
    302481 */ 
    303482function wp_pelagios_clean( $var ) 
    304483{ 
    305     return trim( strip_tags( stripslashes( $var ) ) ); 
     484    return sanitize_text_field( $var ); 
    306485} 
     486 
     487/* end of file wp-pelagios.php */ 
Note: See TracChangeset for help on using the changeset viewer.