2020-01-28 16:59:52 +00:00
|
|
|
@extends('settings.layouts.app')
|
2018-10-10 16:28:51 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
@section('title', 'Publish')
|
2018-10-10 16:28:51 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
@section('styles')
|
2020-01-27 14:06:37 +00:00
|
|
|
<style>
|
2020-01-28 16:59:52 +00:00
|
|
|
.vue-tooltip.tooltip-custom {
|
|
|
|
background-color: #00a9d8;
|
|
|
|
z-index: 9999;
|
|
|
|
}
|
|
|
|
|
|
|
|
.vue-tooltip.tooltip-custom .tooltip-content {
|
|
|
|
z-index: 9999;
|
|
|
|
}
|
|
|
|
</style>
|
2020-01-27 14:06:37 +00:00
|
|
|
@stop
|
|
|
|
|
2018-08-06 12:30:51 +00:00
|
|
|
@section('content')
|
2018-08-29 15:18:15 +00:00
|
|
|
<div class="header">
|
|
|
|
<h3 class="header-title">
|
2019-04-18 11:16:50 +00:00
|
|
|
<i class="fas fa-plus-square"></i> Publish New Dataset
|
2018-08-29 15:18:15 +00:00
|
|
|
</h3>
|
|
|
|
</div>
|
2018-08-06 12:30:51 +00:00
|
|
|
|
2019-04-15 16:45:50 +00:00
|
|
|
<div id="app" class="box-content" v-cloak>
|
2019-11-21 17:43:56 +00:00
|
|
|
{{-- v-on:time-expire="handleTimeExpire" --}}
|
2020-01-28 16:59:52 +00:00
|
|
|
@if (Auth::check())
|
|
|
|
<vue-countdown v-on:time-expire="handleTimeExpire" :seconds="({{config('session.lifetime')}} * 60)"></vue-countdown>
|
2019-11-21 17:43:56 +00:00
|
|
|
@endif
|
2018-10-18 14:51:46 +00:00
|
|
|
{{--
|
|
|
|
<form action={{ route( 'publish.dataset.store1') }} method="post" class="pure-form" enctype="multipart/form-data">
|
2020-01-28 16:59:52 +00:00
|
|
|
--}}
|
|
|
|
<main class="steps pure-form" enctype="multipart/form-data">
|
|
|
|
{{ csrf_field() }}
|
|
|
|
|
|
|
|
<div v-if="step === 0 && isInitial" data-vv-scope="step-0">
|
|
|
|
|
|
|
|
<fieldset id="fieldset-language">
|
|
|
|
<legend>Dataset Language</legend>
|
|
|
|
<div class="pure-g">
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<label for="language">
|
|
|
|
<span>
|
|
|
|
Language..
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click.manual="{ content: messages.dataset_language, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<div class="select pure-u-23-24">
|
|
|
|
{!! Form::select('language', $languages, null, ['placeholder' => '[language]', 'v-model' =>
|
|
|
|
'dataset.language', "v-validate"
|
|
|
|
=> "'required'", 'data-vv-scope' => 'step-0']) !!}
|
2019-03-19 17:04:41 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
<small id="languageHelp" class="pure-form-message-inline">select dataset main language</small>
|
2019-03-19 17:04:41 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
</fieldset>
|
2019-03-19 17:04:41 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
<br />
|
|
|
|
<div class="pure-controls">
|
|
|
|
<button @click.prevent="next('step-0')" class="pure-button button-small" :disabled="errors.any()">
|
2019-03-19 17:04:41 +00:00
|
|
|
<i class="fa fa-arrow-right"></i>
|
|
|
|
<span>Continue</span>
|
|
|
|
</button>
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
<div v-if="errors.items.length > 0">
|
|
|
|
<b>Please correct the following error(s):</b>
|
|
|
|
<ul class="alert validation-summary-errors">
|
|
|
|
<li style="margin-left:5px;" v-for="error in errors.items">@{{ error.msg }}</li>
|
|
|
|
</ul>
|
2019-03-19 17:04:41 +00:00
|
|
|
</div>
|
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
2018-10-18 14:51:46 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
<div v-if="step === 1 && isInitial" data-vv-scope="step-1">
|
|
|
|
<h1>Step One: Mandatory Elements</h1>
|
|
|
|
|
|
|
|
<fieldset class="fieldset-general">
|
|
|
|
<legend>General</legend>
|
|
|
|
<div class="description hint">
|
|
|
|
<p>Bitte wählen Sie einen Datensatztyp aus der Liste aus.</p>
|
|
|
|
</div>
|
|
|
|
<p></p>
|
|
|
|
{{-- <div class="form-item">
|
2018-10-18 14:51:46 +00:00
|
|
|
<label for="documentType">Datensatztyp<span class="required" title="Dieses Feld muss ausgefüllt werden."> *</span></label>
|
|
|
|
<div class="select" style="width:300px" title="Bitte wählen Sie einen Datensatztyp aus der Liste aus.">
|
|
|
|
{!! Form::select('Type', Lang::get('doctypes'), null, ['id' => 'type', 'placeholder' => '-- select type --', 'v-model' =>
|
|
|
|
'dataset.type', "v-validate" => "'required'", 'data-vv-scope' => 'step-1']) !!}
|
|
|
|
</div>
|
2019-01-22 17:24:18 +00:00
|
|
|
</div> --}}
|
2020-01-28 16:59:52 +00:00
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<label for="documentType">Dataset Type<span class="required"
|
|
|
|
title="Dieses Feld muss ausgefüllt werden.">
|
|
|
|
* <i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.dataset_type, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<div class="select pure-u-23-24" title="Bitte wählen Sie einen Datensatztyp aus der Liste aus.">
|
|
|
|
{!! Form::select('Type', Lang::get('doctypes'), null, ['id' => 'type', 'placeholder' => '--
|
|
|
|
select type --', 'v-model' =>
|
|
|
|
'dataset.type', "v-validate" => "'required'", 'data-vv-scope' => 'step-1']) !!}
|
|
|
|
</div>
|
2018-08-29 15:18:15 +00:00
|
|
|
</div>
|
2018-08-06 12:30:51 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-titles">
|
|
|
|
<legend>
|
|
|
|
Title(s)
|
|
|
|
{{-- <i v-tooltip="{ content: messages.titles, class: 'tooltip-custom tooltip-other-custom' }" class="far fa-lg fa-question-circle"></i> --}}
|
|
|
|
</legend>
|
|
|
|
<div class="pure-g">
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<label for="TitleMain">
|
|
|
|
<span>
|
|
|
|
Main Title
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.main_title, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
{!! Form::text('TitleMain[Value]', null, ['class' => 'pure-u-23-24', 'v-model'
|
|
|
|
=> 'dataset.title_main.value', "v-validate" => "'required|min:4|max:255'", "data-vv-as" => "Main
|
|
|
|
Title", 'data-vv-scope' => 'step-1']) !!}
|
|
|
|
</div>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
{!! Form::label('TitleLanguage', 'Title Language..') !!}
|
|
|
|
{{-- <div class="select pure-u-23-24">
|
2019-01-22 17:24:18 +00:00
|
|
|
{!! Form::select('TitleMain[Language]', $languages, null, ['placeholder' => '--no language--', 'v-model' => 'dataset.title_main.language',
|
|
|
|
"v-validate" => "'required'", "data-vv-as" => "Title Language", 'data-vv-scope' => 'step-1']) !!}
|
2019-03-19 17:04:41 +00:00
|
|
|
</div> --}}
|
2020-01-28 16:59:52 +00:00
|
|
|
{!! Form::text('TitleMain[Language]', null, ['class' => 'pure-u-23-24', 'v-model' =>
|
|
|
|
'dataset.title_main.language', 'readonly']) !!}
|
2019-01-22 17:24:18 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<label>
|
|
|
|
<span>
|
|
|
|
Add additional title(s) <i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.additional_titles, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<button class="pure-button button-small" @click.prevent="addTitle()">+</button>
|
|
|
|
</div>
|
|
|
|
<table class="pure-table pure-table-horizontal" v-if="dataset.titles.length">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th style="width: 20px;">Title</th>
|
|
|
|
<th>Type</th>
|
|
|
|
<th>Language</th>
|
|
|
|
<th style="width: 130px;"></th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
<tr v-for="(item, index) in dataset.titles">
|
|
|
|
<td>
|
|
|
|
<input name="Title" class="form-control" placeholder="[TITLE]" v-model="item.value"
|
|
|
|
data-vv-as="Additional Title" v-validate="'required|min:4|max:255'"
|
|
|
|
data-vv-scope="step-1" />
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
{!! Form::select('Title[Type]', $titleTypes, null,
|
|
|
|
['placeholder' => '[titleType]', 'v-model' => 'item.type', "v-validate" => "'required'",
|
|
|
|
'data-vv-scope' => 'step-1']) !!}
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
{!! Form::select('Title[Language]', $languages, null,
|
|
|
|
['placeholder' => '[language]', 'v-model' => 'item.language', "data-vv-as" =>
|
|
|
|
"Additional Title Language",
|
|
|
|
"v-validate" => "{required: true, translatedLanguage: [dataset.language, item.type]}",
|
|
|
|
'data-vv-scope' => 'step-1']) !!}
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<button class="pure-button button-small is-warning" @click.prevent="removeTitle(index)">
|
|
|
|
<i class="fa fa-trash"></i> </button>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-description">
|
|
|
|
<legend>Description</legend>
|
|
|
|
<div class="pure-g">
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<label for="TitleAbstract">
|
2020-01-28 11:13:01 +00:00
|
|
|
<span>
|
2020-01-28 16:59:52 +00:00
|
|
|
Main Abstract
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.main_abstract, class: 'tooltip-custom tooltip-other-custom' }"
|
2020-01-28 11:13:01 +00:00
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
2020-01-28 16:59:52 +00:00
|
|
|
{{ Form::textarea('TitleAbstract[Value]', null, ['class' => 'pure-u-23-24',
|
2020-01-23 16:52:26 +00:00
|
|
|
'size' => '70x6', 'v-model' => 'dataset.abstract_main.value', "v-validate" => "'required|min:4|max:2500'",
|
2019-02-19 17:52:52 +00:00
|
|
|
"data-vv-as" => "Main Abstract", 'data-vv-scope' => 'step-1']) }}
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
{!! Form::label('AbstractLanguage', 'Abstract Language..') !!}
|
|
|
|
{{-- <div class="select pure-u-23-24">
|
2019-01-24 15:56:39 +00:00
|
|
|
{!! Form::select('TitleAbstract[Language]', $languages, null, ['placeholder' => '--no language--', 'v-model' => 'dataset.abstract_main.language',
|
2019-03-19 17:04:41 +00:00
|
|
|
"v-validate" => "'required'", "data-vv-as" => "Abstract Language", 'data-vv-scope' => 'step-1']) !!}
|
|
|
|
</div> --}}
|
2020-01-28 16:59:52 +00:00
|
|
|
{!! Form::text('TitleAbstract[Language]', null, ['class' => 'pure-u-23-24', 'v-model' =>
|
|
|
|
'dataset.abstract_main.language', 'readonly']) !!}
|
2019-06-21 14:00:51 +00:00
|
|
|
</div>
|
2019-07-24 07:28:04 +00:00
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
2020-01-28 16:59:52 +00:00
|
|
|
<label>
|
2020-01-28 11:13:01 +00:00
|
|
|
<span>
|
2020-02-20 10:24:34 +00:00
|
|
|
Add additional description(s) <i @click.prevent
|
2020-01-28 16:59:52 +00:00
|
|
|
v-tooltip.click="{ content: messages.additional_descriptions, class: 'tooltip-custom tooltip-other-custom' }"
|
2020-01-28 11:13:01 +00:00
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
2020-01-28 16:59:52 +00:00
|
|
|
<button class="pure-button button-small" @click.prevent="addDescription()">+</button>
|
2019-01-22 17:24:18 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
<table class="pure-table pure-table-horizontal" v-if="dataset.abstracts.length">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th style="width: 20px;">Description</th>
|
|
|
|
<th>Type</th>
|
|
|
|
<th>Language</th>
|
|
|
|
<th style="width: 130px;"></th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
<tr v-for="(item, index) in dataset.abstracts">
|
|
|
|
<td>
|
|
|
|
<textarea rows="3" cols="40" name="Description[Value]" class="form-control"
|
|
|
|
placeholder="[DESCRIPTION]" v-model="item.value" data-vv-as="Additional Description"
|
|
|
|
v-validate="'required|min:4|max:2500'" data-vv-scope="step-1"></textarea>
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
{!! Form::select('Description[Type]', $descriptionTypes, null,
|
|
|
|
['placeholder' => '[descriptionType]', 'v-model' => 'item.type', "v-validate" =>
|
|
|
|
"'required'", 'data-vv-scope' => 'step-1']) !!}
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
{!! Form::select('Description[Language]', $languages, null,
|
|
|
|
['placeholder' => '[language]',
|
|
|
|
'v-model' => 'item.language',
|
|
|
|
"data-vv-as" => "Additional Description Language",
|
|
|
|
"v-validate" => "{required: true, translatedLanguage: [dataset.language, item.type]}",
|
|
|
|
'data-vv-scope' => 'step-1']) !!}
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<button class="pure-button button-small is-warning"
|
|
|
|
@click.prevent="removeDescription(index)"> <i class="fa fa-trash"></i> </button>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
2018-11-08 16:47:27 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
</fieldset>
|
2019-12-20 10:44:40 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
<fieldset id="fieldset-creator">
|
|
|
|
<legend>
|
|
|
|
Creator
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.creator, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</legend>
|
|
|
|
<div class="pure-g">
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<my-autocomplete title="searching active person table" v-on:person="onAddAuthor">
|
|
|
|
</my-autocomplete>
|
|
|
|
{{--
|
|
|
|
<my-autocomplete :items="[ 'Apple', 'Banana', 'Orange', 'Mango', 'Pear', 'Peach', 'Grape', 'Tangerine', 'Pineapple']"></my-autocomplete> --}}
|
|
|
|
</div>
|
|
|
|
{{-- <div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<div class="pure-control-group checkboxlist">
|
|
|
|
<input name="persons" v-model="dataset.checkedAuthors" type="hidden" class="form-check-input" v-validate="'required'" data-vv-as="Creator" data-vv-scope="step-1">
|
|
|
|
<label v-for="(person, index) in dataset.persons" :for="person.id" class="pure-checkbox">
|
|
|
|
<input type="checkbox" name="persons" v-bind:value="person.id" v-model="dataset.checkedAuthors" class="form-check-input" data-vv-scope="step-1">
|
|
|
|
@{{ person.full_name }}
|
|
|
|
</label>
|
2019-12-20 10:44:40 +00:00
|
|
|
<br />
|
2018-10-18 14:51:46 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
</div> --}}
|
|
|
|
</div>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
{!! Form::label('additionalCreators', 'Add additional creator(s) if creator is not in database') !!}
|
|
|
|
<button class="pure-button button-small" @click.prevent="addNewAuthor()">+</button>
|
|
|
|
</div>
|
|
|
|
<input name="persons" v-model="dataset.persons" type="hidden" class="form-check-input" v-validate="'required'"
|
|
|
|
data-vv-as="Creator" data-vv-scope="step-1">
|
|
|
|
<person-table name="persons" v-bind:messages="messages" v-bind:heading="'creator table'"
|
|
|
|
v-bind:personlist="dataset.persons"></person-table>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-contributors">
|
|
|
|
<legend>
|
|
|
|
Contributor
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.contributor, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</legend>
|
|
|
|
<div class="pure-g">
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<my-autocomplete title="searching active person table" @person="onAddContributor"></my-autocomplete>
|
|
|
|
</div>
|
|
|
|
{{-- <div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<div class="pure-control-group checkboxlist">
|
|
|
|
<label v-for="(contributor, index) in dataset.contributors" :for="contributor.id" class="pure-checkbox">
|
|
|
|
<input type="checkbox" name="contributors" v-bind:value="contributor.id" v-model="dataset.checkedContributors" class="form-check-input" data-vv-scope="step-1">
|
|
|
|
@{{ contributor.full_name }}
|
|
|
|
</label>
|
|
|
|
<br />
|
|
|
|
<span>Checked Contributors: @{{ dataset.checkedContributors }}</span>
|
|
|
|
</div>
|
|
|
|
</div> --}}
|
|
|
|
</div>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
{!! Form::label('additionalContributors', 'Add additional contributor(s) if contributor is not in database') !!}
|
|
|
|
<button class="pure-button button-small" @click.prevent="addNewContributor()">+</button>
|
|
|
|
</div>
|
|
|
|
{{-- <h3>contributor table</h3> --}}
|
2020-05-04 11:50:23 +00:00
|
|
|
<person-table name="contributors" v-bind:messages="messages" v-bind:contributortypes="contributorTypes" v-bind:heading="'contributor table'"
|
2020-01-28 16:59:52 +00:00
|
|
|
v-bind:personlist="dataset.contributors"></person-table>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-publisher">
|
|
|
|
<legend>Creating Corporation</legend>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<label for="CreatingCorporation">
|
|
|
|
<span>
|
|
|
|
Corporation Name
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.corporate_name, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
{!! Form::text('CreatingCorporation', null, ['readonly', 'class' =>
|
|
|
|
'pure-u-23-24', 'v-model' => 'dataset.creating_corporation', "v-validate" => "'required'", 'data-vv-scope' =>
|
|
|
|
'step-1']) !!}
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<div :class="{'form-group':true, 'has-error':errors.has('step-1.rights')}">
|
|
|
|
<label for="rights">
|
|
|
|
<input class="form-checkbox" name="rights" id="rights" type="checkbox" v-model="dataset.rights"
|
|
|
|
v-validate="'required'" data-vv-scope="step-1">
|
|
|
|
terms and conditions
|
|
|
|
</label>
|
|
|
|
|
|
|
|
<i class="fas fa-info-circle" @click="showModal" style="font-size:24px"></i>
|
|
|
|
<Modal v-if="isModalVisible" @close="closeModal">
|
|
|
|
<template slot="header">
|
2020-04-23 13:58:26 +00:00
|
|
|
{!! trans('validation.attributes.backend.create-dataset.terms_and_conditions').' *' !!}
|
2020-01-28 16:59:52 +00:00
|
|
|
</template>
|
|
|
|
<template slot="body">
|
2020-04-23 13:58:26 +00:00
|
|
|
Mit dem Setzen des Hakens bestätige ich hiermit
|
|
|
|
<ol type="1">
|
|
|
|
<li>
|
|
|
|
die Data Policy von Tethys RDR sowie die Terms & Conditions von Tethys
|
2020-04-24 09:14:13 +00:00
|
|
|
gelesen und verstanden zu haben (<a href="{{ url('/docs/HandbuchTethys.pdf') }}" target=_blank>siehe hier</a>)
|
2020-04-23 13:58:26 +00:00
|
|
|
</li>
|
|
|
|
<li>das Einverständnis aller Co-Autoren über die bevorstehende Datenpublikation schriftlich eingeholt zu haben</li>
|
|
|
|
<li>sowohl mit der Data Policy als auch mit den Terms & Conditions einverstanden zu sein</li>
|
|
|
|
</ol>
|
2020-01-28 16:59:52 +00:00
|
|
|
</template>
|
|
|
|
</Modal>
|
|
|
|
|
|
|
|
<br />
|
|
|
|
<i v-show="errors.has('step-1.rights')" class="fas fa-exclamation-circle"></i>
|
|
|
|
<span v-show="errors.has('step-1.rights')" class="text-danger">@{{ errors.first('step-1.rights') }}</span>
|
|
|
|
|
|
|
|
|
|
|
|
<span class="help-block">You must agree to continue</span>
|
|
|
|
</div>
|
2018-08-29 15:18:15 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
<br />
|
|
|
|
<div class="pure-controls">
|
|
|
|
<button @click.prevent="prev()" class="pure-button button-small">
|
|
|
|
<i class="fa fa-arrow-left"></i>
|
|
|
|
<span>Back</span>
|
|
|
|
</button>
|
|
|
|
<button @click.prevent="next('step-1')" class="pure-button button-small" :disabled="errors.any()">
|
|
|
|
<i class="fa fa-arrow-right"></i>
|
|
|
|
<span>Continue</span>
|
|
|
|
</button>
|
|
|
|
</div>
|
|
|
|
<div v-if="errors.items.length > 0">
|
|
|
|
<b>Please correct the following error(s):</b>
|
|
|
|
<ul class="alert validation-summary-errors">
|
|
|
|
<li style="margin-left:5px;" v-for="error in errors.items">@{{ error.msg }}</li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div v-if="step === 2 && isInitial" data-vv-scope="step-2">
|
|
|
|
<h1>Step Two: Recommended Elements</h1>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-project">
|
|
|
|
<legend>Project</legend>
|
|
|
|
<div class="pure-g">
|
|
|
|
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<label for="project_id">
|
|
|
|
<span>
|
|
|
|
Project..
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.project, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<div class="select pure-u-23-24">
|
|
|
|
{!! Form::select('project_id', $projects, null, ['id' => 'project_id', 'placeholder' => '--no
|
|
|
|
project--', 'v-model' => 'dataset.project_id', 'data-vv-scope' => 'step-2'])
|
|
|
|
!!}
|
2018-10-18 14:51:46 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
<small id="projectHelp" class="pure-form-message-inline">project is optional</small>
|
2018-08-29 15:18:15 +00:00
|
|
|
</div>
|
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-dates">
|
|
|
|
<legend>Date(s)</legend>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
|
|
|
<label for="EmbargoDate">
|
|
|
|
<span>
|
|
|
|
Embargo Date..
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.embargo_date, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
{!! Form::date('EmbargoDate', null, ['placeholder' => date('y-m-d'), 'class'
|
|
|
|
=> 'pure-u-23-24', 'v-model' => 'dataset.embargo_date', 'data-vv-scope' => 'step-2']) !!}
|
|
|
|
<small id="projectHelp" class="pure-form-message-inline">EmbargoDate is optional</small>
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-geolocation">
|
|
|
|
<legend>
|
|
|
|
Geo Location
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.geolocation, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</legend>
|
|
|
|
<div class="pure-g">
|
|
|
|
<div class="pure-u-1 pure-u-md-1 pure-u-lg-1 pure-div">
|
|
|
|
<locations-map v-bind:geolocation="dataset.coverage"></locations-map>
|
|
|
|
</div>
|
|
|
|
{{-- <div class="pure-u-1 pure-u-md-1-2 pure-div">
|
2019-01-08 13:06:21 +00:00
|
|
|
{!! Form::label('xmin', 'xmin: ') !!}
|
2019-06-21 14:00:51 +00:00
|
|
|
{!! Form::text('xmin', null, [
|
|
|
|
'class' => 'pure-u-23-24',
|
|
|
|
'v-model' => 'dataset.coverage.xmin',
|
|
|
|
"v-validate" => "'decimal'",
|
|
|
|
'data-vv-scope' => 'step-2'
|
|
|
|
]) !!}
|
2019-01-07 10:16:18 +00:00
|
|
|
</div>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
2019-01-08 13:06:21 +00:00
|
|
|
{!! Form::label('ymin', 'ymin: ') !!}
|
2019-06-21 14:00:51 +00:00
|
|
|
{!! Form::text('ymin', null, ['class' => 'pure-u-23-24', 'v-model' => 'dataset.coverage.ymin', 'data-vv-scope' => 'step-2']) !!}
|
2019-01-07 10:16:18 +00:00
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
2019-01-08 13:06:21 +00:00
|
|
|
{!! Form::label('xmax', 'xmax: ') !!}
|
2019-06-21 14:00:51 +00:00
|
|
|
{!! Form::text('xmax', null, ['class' => 'pure-u-23-24', 'v-model' => 'dataset.coverage.xmax', 'data-vv-scope' => 'step-2']) !!}
|
2019-01-07 10:16:18 +00:00
|
|
|
</div>
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2 pure-div">
|
2019-01-08 13:06:21 +00:00
|
|
|
{!! Form::label('ymax', 'ymax: ') !!}
|
2019-06-21 14:00:51 +00:00
|
|
|
{!! Form::text('ymax', null, ['class' => 'pure-u-23-24', 'v-model' => 'dataset.coverage.ymax', 'data-vv-scope' => 'step-2']) !!}
|
|
|
|
</div> --}}
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-coverage">
|
|
|
|
<legend>
|
|
|
|
Coverage
|
|
|
|
<i @click.prevent
|
|
|
|
v-tooltip.click="{ content: messages.coverage, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</legend>
|
|
|
|
<div class="pure-g">
|
|
|
|
|
|
|
|
<div class="pure-u-1 pure-u-md-1-2">
|
|
|
|
<div class="pure-u-1 pure-u-md-1">
|
|
|
|
<label for="elevation-option-one" class="pure-radio">
|
|
|
|
<input id="elevation-option-one" type="radio" v-model="elevation" value="absolut">
|
|
|
|
absolut elevation (m)
|
|
|
|
</label>
|
|
|
|
<label for="elevation-option-two" class="pure-radio">
|
|
|
|
<input id="elevation-option-two" type="radio" v-model="elevation" value="range">
|
|
|
|
elevation range (m)
|
|
|
|
</label>
|
|
|
|
<label for="elevation-option-three" class="pure-radio">
|
|
|
|
<input id="elevation-option-three" type="radio" v-model="elevation" value="no_elevation">
|
|
|
|
no elevation
|
|
|
|
</label>
|
|
|
|
</div>
|
|
|
|
<div v-show="elevation === 'absolut'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('elevation_absolut', 'elevation absolut: ') !!}
|
|
|
|
{!! Form::text('elevation_absolut', null,
|
|
|
|
['class' => 'pure-u-23-24', 'v-model' => 'dataset.coverage.elevation_absolut', 'data-vv-scope' =>
|
|
|
|
'step-2', "v-validate" => "this.isElevationAbsolut ? 'required|integer' : '' " ]) !!}
|
|
|
|
</div>
|
|
|
|
<div v-show="elevation === 'range'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('elevation_min', 'elevation min: ') !!}
|
|
|
|
{!! Form::text('elevation_min', null,
|
|
|
|
['class' => 'pure-u-23-24', 'v-model' => 'dataset.coverage.elevation_min', 'data-vv-scope' =>
|
|
|
|
'step-2',
|
|
|
|
"v-validate" => "this.isElevationRange ? 'required|integer' : '' "]) !!}
|
2018-10-18 14:51:46 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
<div v-show="elevation === 'range'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('elevation_max', 'elevation max: ') !!}
|
|
|
|
{!! Form::text('elevation_max', null,
|
|
|
|
['class' => 'pure-u-23-24', 'v-model' => 'dataset.coverage.elevation_max', 'data-vv-scope' =>
|
|
|
|
'step-2',
|
|
|
|
"v-validate" => "this.isElevationRange ? 'required|integer' : '' "]) !!}
|
2018-10-18 14:51:46 +00:00
|
|
|
</div>
|
2018-09-14 16:16:02 +00:00
|
|
|
</div>
|
2018-10-18 14:51:46 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
<div class="pure-u-1 pure-u-md-1-2">
|
|
|
|
<div class="pure-u-1 pure-u-md-1">
|
|
|
|
<label for="depth-option-one" class="pure-radio">
|
|
|
|
<input id="depth-option-one" type="radio" v-model="depth" value="absolut">
|
|
|
|
absolut depth (m)
|
|
|
|
</label>
|
|
|
|
<label for="depth-option-two" class="pure-radio">
|
|
|
|
<input id="depth-option-two" type="radio" v-model="depth" value="range">
|
|
|
|
depth range (m)
|
|
|
|
</label>
|
|
|
|
<label for="depth-option-three" class="pure-radio">
|
|
|
|
<input id="depth-option-three" type="radio" v-model="depth" value="no_depth">
|
|
|
|
no depth
|
|
|
|
</label>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div v-show="depth === 'absolut'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('depth_absolut', 'depth absolut: ') !!} {!! Form::text('depth_absolut', null,
|
|
|
|
['class'
|
|
|
|
=> 'pure-u-23-24',
|
|
|
|
'v-model' => 'dataset.coverage.depth_absolut', 'data-vv-scope' => 'step-2', "v-validate" =>
|
|
|
|
"this.isDepthAbsolut
|
|
|
|
? 'required|integer' : '' " ]) !!}
|
|
|
|
</div>
|
|
|
|
<div v-show="depth === 'range'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('depth_min', 'depth min: ') !!} {!! Form::text('depth_min', null, ['class' =>
|
|
|
|
'pure-u-23-24', 'v-model' =>
|
|
|
|
'dataset.coverage.depth_min', 'data-vv-scope' => 'step-2', "v-validate" => "this.isDepthRange ?
|
|
|
|
'required|integer'
|
|
|
|
: '' "]) !!}
|
2019-01-24 15:56:39 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
<div v-show="depth === 'range'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('depth_max', 'depth max: ') !!} {!! Form::text('depth_max', null, ['class' =>
|
|
|
|
'pure-u-23-24', 'v-model' =>
|
|
|
|
'dataset.coverage.depth_max', 'data-vv-scope' => 'step-2', "v-validate" => "this.isDepthRange ?
|
|
|
|
'required|integer'
|
|
|
|
: '' "]) !!}
|
2018-10-18 14:51:46 +00:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
<div class="pure-u-1 pure-u-md-1-2">
|
|
|
|
<div class="pure-u-1 pure-u-md-1">
|
|
|
|
<label for="time-option-one" class="pure-radio">
|
|
|
|
<input id="time-option-one" type="radio" v-model="time" value="absolut">
|
|
|
|
absolut time (yyyy-MM-dd HH:mm:ss)
|
|
|
|
</label>
|
|
|
|
<label for="time-option-two" class="pure-radio">
|
|
|
|
<input id="time-option-two" type="radio" v-model="time" value="range">
|
|
|
|
time range (yyyy-MM-dd HH:mm:ss)
|
|
|
|
</label>
|
|
|
|
<label for="time-option-three" class="pure-radio">
|
|
|
|
<input id="time-option-three" type="radio" v-model="time" value="no_time">
|
|
|
|
no time
|
|
|
|
</label>
|
2018-10-18 14:51:46 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
|
|
|
|
<div v-show="time === 'absolut'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('time_absolut', 'time absolut: ') !!}
|
|
|
|
{{-- {!! Form::datetime('time_absolut', null, ['class' => 'pure-u-23-24', 'placeholder' => 'dd.MM.yyyy HH:mm',
|
|
|
|
'v-model' => 'dataset.coverage.time_absolut', 'data-vv-scope' => 'step-2', 'format' => 'yyyy-MM-dd HH:mm',
|
|
|
|
"v-validate" => "this.isTimeAbsolut ? 'required|date_format:dd.MM.yyyy HH:mm:ss' : '' " ]) !!} --}}
|
|
|
|
<datetime name="time_absolut"
|
2020-02-20 10:24:34 +00:00
|
|
|
v-validate="this.isTimeAbsolut ? 'required' : '' " format="YYYY-MM-DD h:i:s"
|
|
|
|
data-vv-scope="step-2" v-model='dataset.coverage.time_absolut'>
|
2020-01-28 16:59:52 +00:00
|
|
|
</datetime>
|
|
|
|
{{-- <datetime name="time_absolut" format="MM-DD-YYYY H:i:s" width="300px" v-model="dataset.coverage.time_absolut"></datetime> --}}
|
|
|
|
</div>
|
|
|
|
<div v-show="time === 'range'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('time_min', 'time min: ') !!}
|
|
|
|
{{-- {!! Form::datetimelocal('time_min', null, ['class' => 'pure-u-23-24', 'placeholder' => 'dd.MM.yyyy HH:mm:ss',
|
|
|
|
'v-model' => 'dataset.coverage.time_min', 'data-vv-scope' => 'step-2', 'step' => 1,
|
|
|
|
"v-validate" => "this.isTimeRange ? 'required|date_format:dd.MM.yyyy HH:mm:ss' : '' "]) !!} --}}
|
|
|
|
<datetime name="time_min"
|
2020-02-20 10:24:34 +00:00
|
|
|
v-validate="this.isTimeRange ? 'required' : '' " format="YYYY-MM-DD h:i:s"
|
|
|
|
data-vv-scope="step-2" v-model='dataset.coverage.time_min'></datetime>
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
<div v-show="time === 'range'" class="pure-u-1 pure-u-md-1">
|
|
|
|
{!! Form::label('timemax', 'time max: ') !!}
|
|
|
|
{{-- {!! Form::datetimelocal('time_max', null, ['class' => 'pure-u-23-24', 'placeholder' => 'dd.MM.yyyy HH:mm:ss',
|
|
|
|
'v-model' => 'dataset.coverage.time_max', 'data-vv-scope' => 'step-2', 'step' => 1,
|
|
|
|
"v-validate" => "this.isTimeRange ? 'required|date_format:dd.MM.yyyy HH:mm:ss' : '' "]) !!} --}}
|
|
|
|
<datetime name="time_max"
|
2020-02-20 10:24:34 +00:00
|
|
|
v-validate="this.isTimeRange ? 'required' : '' " format="YYYY-MM-DD h:i:s"
|
|
|
|
data-vv-scope="step-2" v-model='dataset.coverage.time_max'></datetime>
|
2020-01-23 16:52:26 +00:00
|
|
|
</div>
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-references">
|
|
|
|
<legend>
|
|
|
|
Dataset References
|
|
|
|
<i @click.prevent v-tooltip.click="{ content: messages.dataset_references, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</legend>
|
|
|
|
<button class="pure-button button-small" @click.prevent="addReference()">Add Reference</button>
|
|
|
|
<table class="table table-hover" v-if="dataset.references.length">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th style="width: 20px;">
|
|
|
|
<span>
|
|
|
|
Value of the identifier <i
|
|
|
|
@click.prevent v-tooltip.click="{ content: messages.reference_value, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
<span>
|
|
|
|
Type <i
|
|
|
|
@click.prevent v-tooltip.click="{ content: messages.reference_type, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</th>
|
2020-02-20 10:24:34 +00:00
|
|
|
<th>Relation<i
|
|
|
|
@click.prevent v-tooltip.click="{ content: messages.reference_relation, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</th>
|
2020-01-28 16:59:52 +00:00
|
|
|
<th>
|
|
|
|
<span>
|
|
|
|
Label <i
|
|
|
|
@click.prevent v-tooltip.click="{ content: messages.reference_label, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</th>
|
|
|
|
<th style="width: 130px;"></th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
<tr v-for="(item, index) in dataset.references">
|
|
|
|
<td>
|
|
|
|
<input name="Reference Value" class="form-control" placeholder="[RELATED IDENTIFIER]"
|
|
|
|
v-model="item.value" v-validate="'required'" data-vv-scope="step-2" />
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
{!! Form::select('Reference[Type]', $relatedIdentifierTypes, null,
|
|
|
|
['placeholder' => '[relatedIdentifierType]', 'v-model' => 'item.type', "v-validate" =>
|
|
|
|
"'required'", 'data-vv-scope' => 'step-2']) !!}
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
{!! Form::select('Reference[Relation]', $relationTypes, null,
|
|
|
|
['placeholder' => '[relationType]', 'v-model' => 'item.relation', 'data-vv-scope' => 'step-2'])
|
|
|
|
!!}
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<input name="Reference Label" class="form-control" v-model="item.label" v-validate="'required'"
|
|
|
|
data-vv-scope="step-2" />
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<button class="pure-button button-small is-warning" @click.prevent="removeReference(index)"> <i
|
|
|
|
class="fa fa-trash"></i> </button>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
|
|
|
|
<fieldset id="fieldset-keywords">
|
|
|
|
<legend>
|
|
|
|
Dataset Keywords
|
|
|
|
<i @click.prevent v-tooltip.click="{ content: messages.dataset_keywords, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</legend>
|
|
|
|
<input type="hidden" v-validate:keywords_length="'min_value:3'" data-vv-scope="step-2" data-vv-as="keyword list"
|
|
|
|
name="keywords_list">
|
|
|
|
<button class="pure-button button-small" @click.prevent="addKeyword()">Add Keyword</button>
|
|
|
|
<table class="table table-hover" v-if="dataset.subjects.length">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th style="width: 20px;">
|
|
|
|
<span>
|
|
|
|
Keyword Value <i
|
|
|
|
@click.prevent v-tooltip.click="{ content: messages.keyword_value, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</th>
|
|
|
|
<th>
|
|
|
|
<span>
|
|
|
|
Keyword Type <i
|
|
|
|
@click.prevent v-tooltip.click="{ content: messages.keyword_type, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</th>
|
|
|
|
<th>Language</th>
|
|
|
|
<th style="width: 130px;"></th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
<tr v-for="(item, index) in dataset.subjects">
|
|
|
|
<td>
|
|
|
|
<input name="Keyword Value" class="form-control" placeholder="[KEYWORD VALUE]"
|
|
|
|
v-model="item.value"
|
|
|
|
v-validate="{required: true, unique: [dataset.subjects, index, 'value']}"
|
|
|
|
data-vv-scope="step-2" />
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
{{-- {!! Form::select('Keyword[Type]', $keywordTypes, null, ['placeholder' => '[keyword type]', 'v-model' =>
|
|
|
|
'item.type', "v-validate" => "'required'", 'data-vv-scope' => 'step-2']) !!} --}}
|
|
|
|
<input name="Keyword Type" readonly class="form-control" placeholder="[KEYWORD TYPE]"
|
|
|
|
v-model="item.type" v-validate="'required'" data-vv-scope="step-2" />
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<input name="Keyword Language" readonly class="form-control" placeholder="[KEYWORD LANGUAGE]"
|
|
|
|
v-model="item.language" v-validate="'required'" data-vv-scope="step-2" />
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<button class="pure-button button-small is-warning" @click.prevent="removeKeyword(index)"> <i
|
|
|
|
class="fa fa-trash"></i> </button>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<br />
|
|
|
|
|
|
|
|
<div class="pure-controls">
|
|
|
|
<button @click.prevent="prev()" class="pure-button button-small">
|
|
|
|
<i class="fa fa-arrow-left"></i>
|
|
|
|
<span>Back</span>
|
|
|
|
</button>
|
|
|
|
|
|
|
|
<button @click.prevent="next('step-2')" class="pure-button button-small" v-bind:disabled="errors.any()">
|
|
|
|
<i class="fa fa-arrow-right"></i>
|
|
|
|
<span>Continue</span>
|
|
|
|
</button>
|
|
|
|
</div>
|
|
|
|
<div v-if="errors.items.length > 0">
|
|
|
|
<b>Please correct the following error(s):</b>
|
|
|
|
<ul class="alert validation-summary-errors">
|
|
|
|
<li style="margin-left:5px;" v-for="error in errors.items">@{{ error.msg }}</li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div v-if="step === 3 && isInitial" data-vv-scope="step-3">
|
|
|
|
<h1>Step 3: Other Elements</h1>
|
|
|
|
|
|
|
|
<fieldset id="fieldset-licenses">
|
|
|
|
<legend>
|
|
|
|
Rights List
|
|
|
|
<i @click.prevent v-tooltip.click="{ content: messages.rights_list, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</legend>
|
|
|
|
|
|
|
|
<div class="pure-control-group checkboxlist">
|
|
|
|
@foreach ($licenses as $indexKey => $license)
|
|
|
|
<label for={{ "license". $license->id }} class="pure-checkbox">
|
|
|
|
@if ($loop->first)
|
|
|
|
<input name="licenses" value={{ $license->id }} v-model="dataset.checkedLicenses" type="radio"
|
|
|
|
class="form-check-input" v-validate="'required'" data-vv-as="Licence" data-vv-scope="step-3">
|
|
|
|
<a href="{{ $license->link_licence }}" target="_blank">{{ $license->name_long }}</a>
|
|
|
|
@else
|
|
|
|
<input name="licenses" value={{ $license->id }} v-model="dataset.checkedLicenses" type="radio"
|
|
|
|
class="form-check-input" data-vv-scope="step-3">
|
|
|
|
<a href="{{ $license->link_licence }}" target="_blank">{{ $license->name_long }}</a>
|
|
|
|
@endif
|
|
|
|
</label>
|
|
|
|
@endforeach
|
|
|
|
<br>
|
|
|
|
{{-- <span>Checked license: @{{ dataset.checkedLicenses }}</span> --}}
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
|
|
|
|
<br />
|
|
|
|
<div class="pure-controls">
|
|
|
|
<button @click.prevent="prev()" class="pure-button button-small">
|
|
|
|
<i class="fa fa-arrow-left"></i>
|
|
|
|
<span>Back</span>
|
|
|
|
</button>
|
|
|
|
|
|
|
|
<button @click.prevent="next('step-3')" class="pure-button button-small">
|
|
|
|
<i class="fa fa-arrow-right"></i>
|
|
|
|
<span>Continue</span>
|
|
|
|
</button>
|
|
|
|
</div>
|
|
|
|
<div v-if="errors.items.length > 0">
|
|
|
|
<b>Please correct the following error(s):</b>
|
|
|
|
<ul class="alert validation-summary-errors">
|
|
|
|
<li style="margin-left:5px;" v-for="error in errors.items">@{{ error.msg }}</li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div v-if="step === 4 && (isInitial || isSaving)" data-vv-scope="step-4">
|
|
|
|
<h1>
|
|
|
|
File Upload
|
|
|
|
<i @click.prevent v-tooltip.click="{ content: messages.file_upload, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</h1>
|
|
|
|
|
|
|
|
<div class="dropbox">
|
|
|
|
<input type="hidden" v-validate:files_length="'min_value:1'" data-vv-scope="step-4" data-vv-as="files list"
|
|
|
|
name="files_list">
|
|
|
|
<input type="file" multiple name="files" v-bind:disabled="isSaving"
|
|
|
|
@change="filesChange($event.target.name, $event.target.files)" class="input-file" data-vv-scope="step-4">
|
|
|
|
<p v-if="isInitial">
|
|
|
|
Drag your file(s) here to begin<br> or click to browse
|
|
|
|
</p>
|
|
|
|
<p v-if="isSaving">
|
|
|
|
Uploading @{{ fileCount }} files...
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<table class="table table-hover" v-if="dataset.files.length">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th style="width: 20px;">Sorting</th>
|
|
|
|
<th>File</th>
|
|
|
|
<th>
|
|
|
|
<span>
|
|
|
|
Label <i
|
|
|
|
@click.prevent v-tooltip.click="{ content: messages.file_label, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
</span>
|
|
|
|
</th>
|
|
|
|
<th style="width: 130px;"></th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
<tr v-for="(item, index) in dataset.files">
|
|
|
|
<td>
|
|
|
|
@{{ index +1 }}
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<input class="form-control" v-model="item.file.name" readonly />
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<input class="form-control" v-model="item.label" />
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<button class="pure-button button-small is-warning" @click.prevent="removeFile(index)"> <i
|
|
|
|
class="fa fa-trash"></i> </button>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
<button @click.prevent="prev()" class="pure-button button-small">
|
|
|
|
<i class="fa fa-arrow-left"></i>
|
|
|
|
<span>Back</span>
|
|
|
|
</button>
|
|
|
|
<button @click.prevent="submit('step-4')" class="pure-button button-small" v-bind:disabled="errors.any()">
|
|
|
|
<i class="fa fa-save"></i>
|
|
|
|
<span>Save Dataset</span>
|
|
|
|
</button>
|
|
|
|
<div v-if="errors.items.length > 0">
|
|
|
|
<b>Please correct the following error(s):</b>
|
|
|
|
<ul class="alert validation-summary-errors">
|
|
|
|
<li style="margin-left:5px;" v-for="error in errors.items">@{{ error.msg }}</li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
{{-- <button @click.prevent="submit('unpublished')" class="pure-button button-small">
|
2019-02-21 13:07:00 +00:00
|
|
|
<i class="fa fa-upload"></i>
|
|
|
|
<span>Release Dataset</span>
|
2019-04-18 11:16:50 +00:00
|
|
|
</button> --}}
|
2018-10-18 14:51:46 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
</div>
|
2018-10-18 14:51:46 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
<!--SUCCESS-->
|
|
|
|
<div v-if="isSuccess">
|
|
|
|
<h2>Uploaded @{{ dataset.files.length }} file(s) successfully.</h2>
|
|
|
|
{{-- <p>
|
2018-11-05 15:44:25 +00:00
|
|
|
<a href="javascript:void(0)" @click="reset()" class="pure-button button-small">Upload new Dataset</a>
|
2019-08-27 09:15:23 +00:00
|
|
|
</p> --}}
|
2020-01-28 16:59:52 +00:00
|
|
|
<p>
|
|
|
|
{{-- <a href="javascript:void(0)" @click="editNewDataset()" class="pure-button button-small">@{{ redirectLink }}</a>
|
|
|
|
--}}
|
|
|
|
<a href="javascript:void(0)" @click="editNewDataset()" class="pure-button button-small">
|
|
|
|
<i class="fa fa-edit"></i>
|
|
|
|
<span>Edit</span>
|
|
|
|
</a>
|
|
|
|
<a href="javascript:void(0)" @click="releaseNewDataset()" class="pure-button button-small">
|
|
|
|
<i class="fa fa-share"></i>
|
|
|
|
<span>Release</span>
|
|
|
|
</a>
|
|
|
|
<i @click.prevent v-tooltip.click="{ content: messages.upload_successfull_release, class: 'tooltip-custom tooltip-other-custom' }"
|
|
|
|
class="far fa-lg fa-question-circle"></i>
|
|
|
|
<a href="javascript:void(0)" @click="deleteNewDataset()" class="pure-button button-small">
|
|
|
|
<i class="fa fa-trash"></i>
|
|
|
|
<span>Delete</span>
|
|
|
|
</a>
|
|
|
|
</p>
|
|
|
|
|
|
|
|
<ul class="list-unstyled">
|
|
|
|
{{-- <li v-for="item in uploadedFiles">
|
2018-11-05 15:44:25 +00:00
|
|
|
<img :src="item.url" class="img-responsive img-thumbnail" :alt="item.originalName">
|
|
|
|
</li> --}}
|
2020-01-28 16:59:52 +00:00
|
|
|
</ul>
|
|
|
|
</div>
|
2018-10-18 14:51:46 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
<!--ERROR-->
|
|
|
|
<div v-if="isFailed">
|
|
|
|
<h2>Uploaded failed.</h2>
|
|
|
|
<p>
|
|
|
|
<a href="javascript:void(0)" @click="retry()">Retry: Edit inputs</a>
|
|
|
|
</p>
|
|
|
|
<div v-if="serrors.length > 0">
|
|
|
|
<b>Please correct the following server error(s):</b>
|
|
|
|
<ul class="alert validation-summary-errors">
|
|
|
|
<li style="margin-left:5px;" v-for="error in serrors">@{{ error }}</li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
2018-11-05 15:44:25 +00:00
|
|
|
|
2018-10-18 14:51:46 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
</main>
|
|
|
|
{{-- <br/><br/>Debug:@{{ dataset }} --}}
|
2018-08-29 15:18:15 +00:00
|
|
|
</div>
|
|
|
|
|
2018-08-06 12:30:51 +00:00
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
@stop
|
2018-10-18 14:51:46 +00:00
|
|
|
@section('styles')
|
|
|
|
<style type="text/css">
|
2018-10-10 16:28:51 +00:00
|
|
|
/* main.steps article {
|
|
|
|
display:block;
|
|
|
|
} */
|
2018-08-06 12:30:51 +00:00
|
|
|
|
2018-10-10 16:28:51 +00:00
|
|
|
.help-block {
|
|
|
|
display: none;
|
|
|
|
font-size: 0.8em;
|
|
|
|
}
|
2018-08-06 12:30:51 +00:00
|
|
|
|
2018-10-10 16:28:51 +00:00
|
|
|
.has-error .help-block {
|
2018-10-18 14:51:46 +00:00
|
|
|
display: block;
|
2018-10-10 16:28:51 +00:00
|
|
|
}
|
|
|
|
</style>
|
2018-09-14 16:16:02 +00:00
|
|
|
|
|
|
|
|
2020-01-28 16:59:52 +00:00
|
|
|
@stop
|
|
|
|
@section('after-scripts')
|
2020-01-27 14:06:37 +00:00
|
|
|
<script>
|
|
|
|
window.Laravel = <?php echo json_encode([
|
|
|
|
'languages' => $languages,
|
2020-05-04 11:50:23 +00:00
|
|
|
'messages' => $messages,
|
|
|
|
'contributorTypes' => $contributorTypes
|
2020-01-27 14:06:37 +00:00
|
|
|
]); ?>
|
|
|
|
</script>
|
2020-01-28 16:59:52 +00:00
|
|
|
<script type="text/javascript" src="{{ asset('backend/publish/datasetPublish.js') }}"></script>
|
2018-09-14 16:16:02 +00:00
|
|
|
|
|
|
|
@stop
|