Merge branch 'public-corpus' of gitlab.ub.uni-bielefeld.de:sfb1288inf/nopaque into public-corpus

This commit is contained in:
Patrick Jentsch
2023-02-23 13:05:11 +01:00
5 changed files with 70 additions and 47 deletions

View File

@ -96,7 +96,7 @@
</div>
<br>
<p></p>
<div class="row">
{# <div class="row">
<div class="col s4">
<div class="input-field">
<select id="permission-select">
@ -107,7 +107,7 @@
<label>Permission</label>
</div>
</div>
</div>
</div> #}
<div class="row">
<div class="col s4">
<div class="input-field">
@ -119,8 +119,18 @@
<div class="row">
<div class="col s12">
<a class="action-button btn waves-effect waves-light" id="generate-share-link-button">Generate Share Link</a>
<div id="share-link"></div>
<a class="action-button btn-small waves-effect waves-light hide" id="copy-share-link-button">Copy</a>
</div>
<div class="col s12 hide" id="share-link-container">
<p></p>
<br>
<div class="row">
<div class="col s1">
<a class="action-button btn-small waves-effect waves-light" id="copy-share-link-button">Copy</a>
</div>
<div class="col s11">
<input id="share-link-input" readonly>
</div>
</div>
</div>
</div>
</div>
@ -142,30 +152,5 @@
{{ super() }}
<script>
let corpusDisplay = new CorpusDisplay(document.querySelector('#corpus-display'));
let generateShareLinkButton = document.querySelector('#generate-share-link-button');
let copyShareLinkButton = document.querySelector('#copy-share-link-button');
let shareLink = document.querySelector('#share-link');
let permissionSelect = document.querySelector('#permission-select');
let expirationDate = document.querySelector('#expiration');
generateShareLinkButton.addEventListener('click', () => {
Utils.generateCorpusShareLinkRequest('{{ corpus.hashid }}', permissionSelect.value, expirationDate.value)
.then((corpusShareLink) => {
console.log(corpusShareLink);
let shareLinkElement = document.createElement('input');
shareLinkElement.value = corpusShareLink;
shareLinkElement.setAttribute('readonly', '');
shareLink.appendChild(shareLinkElement);
copyShareLinkButton.classList.remove('hide');
});
});
copyShareLinkButton.addEventListener('click', () => {
let shareLinkElement = document.querySelector('#share-link input');
shareLinkElement.select();
document.execCommand('copy');
app.flash(`Copied!`, 'success');
});
</script>
{% endblock scripts %}

View File

@ -61,13 +61,13 @@
let unfollowRequestElement = document.querySelector('.action-button[data-action="unfollow-request"]');
unfollowRequestElement.addEventListener('click', () => {
return new Promise((resolve, reject) => {
fetch('{{ url_for("corpora.unfollow_corpus", corpus_id=corpus.id) }}', {method: 'POST', headers: {Accept: 'application/json'}})
fetch('{{ url_for("corpora.current_user_unfollow_corpus", corpus_id=corpus.id) }}', {method: 'POST', headers: {Accept: 'application/json'}})
.then(
(response) => {
if (response.status === 403) {app.flash('Forbidden', 'error'); reject(response);}
if (response.status === 404) {app.flash('Not Found', 'error'); reject(response);}
resolve(response);
window.location.href = '{{ url_for("corpora.corpus", corpus_id=corpus.id) }}';
window.location.href = '{{ url_for("main.dashboard") }}';
},
(response) => {
app.flash('Something went wrong', 'error');