Skip to content
Snippets Groups Projects
Unverified Commit 6a182bae authored by Matthias Lindinger's avatar Matthias Lindinger Committed by GitHub
Browse files

Merge branch 'develop' into minor-ui-improvement

parents e1b7fd01 23f12298
No related branches found
No related tags found
No related merge requests found
......@@ -151,7 +151,7 @@ $.SimpleASEndpoint = function (options) {
delete annotation.fullId;
delete annotation.endpoint;
jQuery.ajax({
url: _this.url + '/update/' + encodeURIComponent(annotationID) + '?APIKey=' + _this.APIKey, // this.prefix+
url: _this.url + '/update?APIKey=' + _this.APIKey, // this.prefix+
type: 'POST',
dataType: 'json',
headers: {
......
......@@ -554,7 +554,7 @@
'{{#if showURLBox}}',
'<form action="" id="url-load-form">',
'<label for="url-loader">{{t "addNewObject"}}:</label>',
'<input type="text" id="url-loader" name="url-load" placeholder="http://...">',
'<input type="text" id="url-loader" name="url-load" placeholder="https://...">',
'<input type="submit" value="{{t "load"}}">',
'</form>',
'{{/if}}',
......
......@@ -55,6 +55,10 @@
_this.eventEmitter.subscribe('manifestReceived', function(event, newManifest) {
_this.onManifestReceived(event, newManifest);
});
_this.eventEmitter.subscribe('collectionReceived', function(event, newCollection) {
_this.onCollectionReceived(event, newCollection);
});
},
bindEvents: function() {
......@@ -140,6 +144,13 @@
_this.element.find('#manifest-search').keyup();
},
onCollectionReceived: function(event, newCollection) {
var _this = this;
jQuery.each(newCollection.getManifestUris(), function(_, v) {
_this.eventEmitter.publish('ADD_MANIFEST_FROM_URL', [v, newCollection.location]);
});
},
template: $.Handlebars.compile([
'<div id="manifest-select-menu">',
'<div class="container">',
......@@ -149,7 +160,7 @@
'{{#if showURLBox}}',
'<form action="" id="url-load-form">',
'<label for="url-loader">{{t "addNewObject"}}:</label>',
'<input type="text" id="url-loader" name="url-load" placeholder="http://...">',
'<input type="text" id="url-loader" name="url-load" placeholder="https://...">',
'<input type="submit" value="{{t "load"}}">',
'</form>',
'{{/if}}',
......
......@@ -134,7 +134,7 @@ describe('SimpleASEndpoint', function() {
it('should run callback on success', function() {
subject.update(oaAnnotation, returnSuccess, returnError);
expect(jQuery.ajax).toHaveBeenCalledWith(jasmine.objectContaining({
url: subject.url + "/update/AAA?APIKey=" + subject.APIKey,
url: subject.url + "/update?APIKey=" + subject.APIKey,
type: 'POST'
}));
expect(returnSuccess).toHaveBeenCalled();
......@@ -145,7 +145,7 @@ describe('SimpleASEndpoint', function() {
ajaxSuccess = false;
subject.update(oaAnnotation, returnSuccess, returnError);
expect(jQuery.ajax).toHaveBeenCalledWith(jasmine.objectContaining({
url: subject.url + "/update/AAA?APIKey=" + subject.APIKey,
url: subject.url + "/update?APIKey=" + subject.APIKey,
type: 'POST'
}));
expect(returnSuccess).not.toHaveBeenCalled();
......
......@@ -17,12 +17,21 @@ describe('ManifestsPanel', function() {
it('should listen for actions', function() {
var manifest = new Mirador.Manifest(null, 'Dummy Location', this.dummyManifestContent);
var collection = new Mirador.Collection(null, 'Dummy Location', {
"@context": "http://iiif.io/api/presentation/2/context.json",
"@id": "http://example.org/iiif/collection/top",
"@type": "sc:Collection",
"label": "Top Level Collection for Example Organization"
});
spyOn(this.panel, 'onPanelVisible');
spyOn(this.panel, 'onManifestReceived');
spyOn(this.panel, 'onCollectionReceived');
this.eventEmitter.publish('manifestsPanelVisible.set');
this.eventEmitter.publish('manifestReceived', manifest);
this.eventEmitter.publish('collectionReceived', collection, "http://example.org/iiif/collection/top")
expect(this.panel.onPanelVisible).toHaveBeenCalled();
expect(this.panel.onManifestReceived).toHaveBeenCalled();
expect(this.panel.onCollectionReceived).toHaveBeenCalled();
});
it('should bind events', function() {
......@@ -121,4 +130,28 @@ describe('ManifestsPanel', function() {
expect(this.panel.manifestListItems.length).toBe(1);
});
it('should receive a collection and grab its manifests', function() {
spyOn(this.eventEmitter, 'publish');
var collection = new Mirador.Collection(null, 'Digital Library @ Villanova', {
"@context": "http://iiif.io/api/presentation/2/context.json",
"@id": "http://example.org/iiif/collection/top",
"@type": "sc:Collection",
"label": "Top Level Collection for Example Organization",
"manifests": [
{
"label": "The 'Adventurer's Oaths' from the Cardboard Drama of Esmeralda Grande",
"@id": "https://digital.library.villanova.edu/Item/vudl:2176/Manifest",
"@type": "sc:Manifest"
},
{
"label": "The Adventures of Seumas Beg The Visit From Abroad",
"@id": "https://digital.library.villanova.edu/Item/vudl:2112/Manifest",
"@type": "sc:Manifest"
}
]
});
this.panel.onCollectionReceived(null, collection);
expect(this.eventEmitter.publish).toHaveBeenCalledWith('ADD_MANIFEST_FROM_URL', ["https://digital.library.villanova.edu/Item/vudl:2176/Manifest", "Digital Library @ Villanova"]);
expect(this.eventEmitter.publish).toHaveBeenCalledWith('ADD_MANIFEST_FROM_URL', ["https://digital.library.villanova.edu/Item/vudl:2112/Manifest", "Digital Library @ Villanova"]);
})
});
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment