Last active
August 29, 2015 14:20
-
-
Save ebertti/386ff6421ae99b9e4537 to your computer and use it in GitHub Desktop.
Mira - Europeana
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var abstract = [{ | |
name: 'topic', | |
widgets : [ | |
{name: 'header', children:[ | |
{name: 'logo'}, | |
{name: 'search_form', children:[ | |
{name: 'search_group', children:[ | |
{name: 'search_field'}, | |
{name:'search_button'} | |
] | |
}] | |
}]}, | |
{name:'content', children: [ | |
{ name: "item", children: [ | |
{name: 'item_panel', children: [ | |
{ name:"item-box", children:[ | |
{ name: 'item-media-link', | |
bind:'$dataObj.rdf_prop("edm:isShownAt")[0]["@id"]', | |
children: [ | |
{name: "item-media", bind:'$dataObj.rdf_prop("edm:object")[0]["@id"]'}] | |
}, | |
{ name:"item-title", bind:'$dataObj.rdf_prop("dc:title")[0]'}, | |
{ name:"item-contributor"}, | |
{ name:"item-contributor-value", bind:'$dataObj.rdf_prop("dc:contributor")[0]'}, | |
{ name:"item-date"}, | |
{ name:"item-date-value", bind:'$dataObj.rdf_prop("dc:date")[0]'}, | |
{ name:"item-format"}, | |
{ name:"item-format-value", bind:'$dataObj.rdf_prop("dcterms:extent")[0]'}, | |
{ name:'item-player', when:'isSound,hasPreview', bind:'$dataObj.rdf_prop("edm:isShownBy")[0]["@id"]'}, | |
{ name:"item-extra-info", children:[ | |
{ name:"item-subject"}, | |
{ name:"item-subject-value", bind:'$dataObj.rdf_prop("dc:subject")[0]'}, | |
{ name:"item-identifier"}, | |
{ name:"item-identifier-value", bind:'$dataObj.rdf_prop("dc:identifier")[0]'}, | |
{ name:"item-language"}, | |
{ name:"item-language-value", bind:'$dataObj.rdf_prop("dc:language")[0]'}, | |
{ name:"item-provider"}, | |
{ name:"item-provider-value", bind:'$dataObj.rdf_prop("edm:dataProvider")[0]'}, | |
{ name:"item-country" }, | |
{ name:"item-country-value" , bind:'$dataObj.rdf_prop("edm:country")[0]'} | |
]} | |
] | |
} | |
] | |
},{ | |
name: 'sidebar-dbpedia', | |
when: 'hasDbpedia', | |
datasource:'url:<%= $env.methods.get_datasource_dbpedia_uri($dataObj.rdf_prop("dc:contributor")) %>', | |
children:[ | |
{name: 'dbpedia-item', children:[ | |
{name: 'dbpedia-link', children: [ | |
{name: 'dbpedia-logo'} | |
]}, | |
{name: 'dbpedia-title'}, | |
{name: 'dbpedia-thumbs', children:[ | |
{name: 'dppedia-imgs', | |
when: 'isAuthorOfSomething', | |
datasource:'$dataObj.dbpedia_rdf_resource("http://dbpedia.org/ontology/author")', | |
children:[ | |
{name: 'dppedia-img-link'}, | |
{name: 'dppedia-img'} | |
] | |
}] | |
} | |
]} | |
] | |
} | |
]} | |
]}, | |
{name: 'footer'} | |
] | |
}] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ name: 'results', when:'isResultMany', tag:'ul', class:'row' }, | |
{ name: 'result_panel', tag:'div', class:'col-xs-12 col-sm-6 col-md-4 col-lg-3' }, | |
{ name: 'result_panel', when:'isResultMany', tag:'li' }, | |
{ name: 'result_item', tag:'div', class:'item well' }, | |
{ name: 'result_item', when:'isResultMany', tag:'a', href:'navigate(replace_for_ld($data.link))' }, | |
{ name: 'result_link', when:'isResultMany', tag:'span' }, | |
{ name: 'result_link', when:'isResultFew', tag:'a', href:'navigate(replace_for_ld($data.link))' }, | |
{ name: 'result_icon', when:'hasIcon', widget: 'BootstrapIcon', class:'pull-left', icon:'icons[$data.type]' }, | |
{ name: 'result_thumb',when:'hasImage,isResultFew', class:'col-md-11', tag:'img', src:'$data.edmPreview[0]' }, | |
{ name: 'result_title', tag:'h4', value:'$data.title[0]' }, | |
{ name: 'result_title', when:'isResultMany', tag:'span', class:'item-small', value:'$data.title[0]' }, | |
{ name: 'result_details', tag:'span', value:'$data.edmConceptPrefLabelLangAware.en.join(", ")', when:'hasEN' }, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var maps = [{ | |
name: 'topic', | |
head:head, | |
maps: [ | |
{ name: 'header', widget: 'SimpleHtml', tag:'div', class:'container-fluid text-center fundo' }, | |
{ name: 'logo', widget: 'SimpleHtml', tag:'img', src:'"imgs/europedia.png"' }, | |
{ name: 'search_form', widget: 'SimpleHtml', tag:'form', onsubmit:'do_search(event);' }, | |
{ name: 'search_group', widget: 'SimpleHtml', tag:'div', class:'input-group form_center col-sm-8' }, | |
{ name: 'search_field', widget: 'SimpleHtml', tag:'input', class:'form-control input-lg', placeholder:'"Please type search term"' }, | |
{ name: 'search_button', widget: 'BootstrapFormGroupButton', class:'btn-warning', value:'"Search"', events:{'click': 'do_search'} }, | |
{ name: 'content', widget: 'SimpleHtml', tag:'div', class:'container' }, | |
{ name: 'item', widget: 'SimpleHtml', tag:'div', class:'row' }, | |
{ name: 'item_panel', tag:'div', md:'12' }, | |
{ name: 'item_panel', when:'hasDbpedia,isDesktop', tag:'div', xs:'12', sm:12, md:8, lg:8 }, | |
{ name: 'item-box', tag:'div', class:'well' }, | |
{ name: 'item-extra-info' }, | |
{ name: 'item-extra-info', when:'isMobile', widget:'Collapsed', title:{value:'Click for more info'} }, | |
{ name:"item-title", tag:'h2', value:'$bind' }, | |
{ name:"item-media-link", tag:'a', pull:'right', href:'$bind', xs:12, sm:12, md:4, lg:4}, | |
{ name:"item-media", tag:'img', img:'thumbnail', src:'$bind' }, | |
{ name:"item-contributor", tag:'h4', value: 'Contributor'}, | |
{ name:"item-date", tag: 'h4', value:'@Date'}, | |
{ name:"item-subject", tag: 'h4', value:'Subject'}, | |
{ name:"item-identifier", tag: 'h4', value:'Identifier'}, | |
{ name:"item-partof", tag: 'h4', value:'Part Of'}, | |
{ name:"item-format", tag:'h4', value:'Format' }, | |
{ name:"item-language", tag: 'h4', value: 'Language'}, | |
{ name:"item-provider", tag: 'h4', value:'Provider'}, | |
{ name:"item-country", tag: 'h4', value:'Country Provider'}, | |
{ name:"item-contributor-value", value:'$bind' }, | |
{ name:"item-date-value", value:'$bind' }, | |
{ name:"item-type-value", value:'$bind' }, | |
{ name:"item-format-value", value:'$bind' }, | |
{ name:"item-subject-value", value:'$bind' }, | |
{ name:"item-identifier-value", value:'$bind' }, | |
{ name:"item-language-value", value:'$bind' }, | |
{ name:"item-provider-value", value:'$bind' }, | |
{ name:"item-country-value", value:'$bind'}, | |
{ name:"item-player", widget:'AudioPlayer', source:'$dataObj.rdf_prop("edm:isShownBy")[0]["@id"]'}, | |
{ name:"sidebar-dbpedia", xs:12, sm:12, md:4, lg:4}, | |
{name: 'dbpedia-item'}, | |
{name: 'dbpedia-logo', tag:'img', src:'"imgs/dbpedia_logo.png"', img:'responsive'}, | |
{name: 'dbpedia-link', tag:'a', md:6, href:'$env.methods.get_datasource_dbpedia_uri($dataObj.rdf_prop("dc:contributor"))'}, | |
{name: 'dbpedia-thumbs'}, | |
{ name: 'footer', widget: 'TecWebRodape'} | |
]} | |
]}] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var conditions = [{ | |
name: 'isResult', | |
validate: '$data.action == "search.json"' | |
},{ | |
name: 'isJsonLD', | |
validate: '$data["@context"] != null' | |
},{ | |
name: 'isResultFew', | |
validate: '$env.$data.items.length <= 10' | |
},{ | |
name: 'isResultMany', | |
validate: '$env.$data.items.length > 10' | |
},{ | |
name: 'hasDbpedia', | |
validate: '$env.methods.get_datasource_dbpedia_uri($dataObj.rdf_prop("dc:contributor")) != null' | |
},{ | |
name: 'isMobile', | |
validate: '$env.device.mobile == true' | |
},{ | |
name: 'isDesktop', | |
validate: '$env.device.desktop == true' | |
},{ | |
name: 'hasPreview', | |
validate: '$dataObj.rdf_prop("edm:isShownBy").length > 0' | |
},{ | |
name: 'isSound', | |
validate: '$dataObj.rdf_prop("edm:type")[0] == "SOUND"' | |
},{ | |
name: 'hasName', | |
validate: '$data.name != ""' | |
},{ | |
name: 'hasType', | |
validate: '$data.notable != null && $data.notable.name != ""' | |
},{ | |
name:'hasEN', | |
validate: '$data.edmConceptPrefLabelLangAware != null && $data.edmConceptPrefLabelLangAware.en != null' | |
},{ | |
name: 'hasImage', | |
validate: '$data.edmPreview != null' | |
},{ | |
name: 'hasIcon', | |
validate: '$data.type != null && icons[$data.type] != undefined' | |
} | |
]; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var methods = { | |
get_datasource_dbpedia_uri: function (values) { | |
var dbpedia = null; | |
_.each(values, function (value) { | |
if (value['@id'] && value['@id'].indexOf("http://dbpedia.org/resource") == 0) { | |
dbpedia = value['@id'].replace('resource', 'data') + '.json'; | |
} | |
}); | |
return dbpedia | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var selection = [{ | |
when: 'isResult', abstract: 'results' | |
},{ | |
when: 'isJsonLD', abstract: 'topic' | |
}]; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
define([ | |
"jquery", "bootstrap", 'mira/init' | |
], function ($, $bootstrap, Mira) { | |
return function Europeana() { | |
var app = new Mira.Application(interface_abstracts, concrete_interface, conditions, selection, conf); | |
Mira.Widget.setDefault('BootstrapSimple'); | |
app.useServer(); | |
}; | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment