- composer updates

- syntax improvements PSR2
- delete Book.php and BorrowController.php
- correct GeoLocation() method in Dataset.php
- use namesspace of Breadcrumbs class in breadcrumbs.php
- npm updates
This commit is contained in:
Arno Kaimbacher 2020-03-26 09:11:12 +01:00
parent 27464d08f7
commit 6a8b27efa6
14 changed files with 216 additions and 328 deletions

View File

@ -1,50 +0,0 @@
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Book extends Model
{
protected $table = 'books';
protected $fillable = [
'title',
'author',
'year',
'stock',
'project_id'
];
public function project()
{
return $this->belongsTo('App\Models\Project', 'project_id', 'id');
}
// public function shelf()
// {
// return $this->belongsTo('App\Shelf');
// }
public function transactions()
{
//model, foreign key on the Transaction model is book_id, local id
return $this->hasMany('App\Transaction', 'book_id', 'id');
}
public function scopeAvailable($query)
{
return $query->where('stock', '>', 0);
}
public function scopeOrderByTitle($query)
{
return $query->orderBy('title');
}
public function hasProject()
{
return $this->project()->exists();
}
}

View File

@ -1,105 +0,0 @@
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Book;
use App\Person;
use App\Transaction;
use App\Models\Project;
use App\Http\Requests\PeminjamanRequest;
use Illuminate\Http\Request;
class BorrowController extends Controller
{
public function __construct()
{
$this->middleware('auth');
}
public function index()
{
//$books = Book::available()->orderByTitle()->lists('title', 'id');
$persons = Person::active()->orderByName()->pluck('last_name', 'id');
//$categories = Category::lists('category', 'id');
$categories = Project::get();
return view('rdr.borrow.borrow', compact('persons', 'categories'));
}
public function store(PeminjamanRequest $request)
{
$input = $request->all();
$book_id = $input['book_id'];
$person_id = $input['person_id'];
$input['borrowed_at'] = time();
$transaction = Transaction::create($input);
$book = Book::findOrFail($book_id);
$stock = $book['stock'] - 1;
$book->update(['stock' => $stock]);
$person = Person::findOrFail($person_id);
$borrow = $person['borrow'] + 1;
$person->update(['borrow' => $borrow]);
session()->flash('flash_message', 'You have added 1 transaction!');
return redirect()->route('borrow.report');
}
public function report()
{
$dateNow = time();
$transactions = Transaction::with('student', 'book')->notReturnedYet()->get();
foreach ($transactions as $transaction) {
$dateDiff = $dateNow - $transaction['borrowed_at'];
$durasi = floor($dateDiff/(60 * 60 * 24));
// $fines = Fine::first();
// if($durasi > $fines['days'])
// {
// $hariDenda = $durasi - $fines['days'];
// $denda = $hariDenda * $fines['fines'];
// $transaction->update(['fines' => $denda]);
// }
// else
// {
// $denda = 0;
// $transaction->update(['fines' => $denda]);
// }
}
//ambil tanggal
//$date2 = mktime(0,0,0,05,31,2015);
//return $date2;
return view('rdr.borrow.report', compact('transactions', 'durasi'));
}
public function pengembalian($id)
{
$returnedAt = time();
$transaction = Transaction::findOrFail($id);
$transaction->update(['status' => 1, 'returned_at' => $returnedAt]);
$book = Book::findOrFail($transaction['book_id']);
$stock = $book['stock'] + 1;
$book->update(['stock' => $stock]);
$student = Student::findOrFail($transaction['student_id']);
$borrow = $student['borrow'] - 1;
$student->update(['borrow' => $borrow]);
session()->flash('flash_message', 'You have returned 1 book!');
return redirect()->route('borrow.histori');
}
public function perpanjang($id)
{
$transaction = Transaction::findOrFail($id);
$dateNow = time();
$transaction->update(['borrowed_at' => $dateNow, 'fines' => 0]);
session()->flash('flash_message', 'You have added 1 perpanjang!');
return redirect()->route('borrow.report');
}
public function histori()
{
$transactions = Transaction::returned()->get();
return view('rdr.borrow.histori', compact('transactions'));
}
}

View File

@ -1,16 +1,16 @@
<?php <?php
namespace App\Http\Controllers\Oai; namespace App\Http\Controllers\Oai;
use Illuminate\Http\Request; use App\Exceptions\OaiModelException;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use App\Models\Dataset; use App\Models\Dataset;
use Illuminate\Support\Facades\Log;
use App\Exceptions\OaiModelException;
use Illuminate\Database\Eloquent\ModelNotFoundException;
use App\Models\Oai\OaiModelError; use App\Models\Oai\OaiModelError;
use App\Models\Oai\ResumptionToken; use App\Models\Oai\ResumptionToken;
use Illuminate\Database\Eloquent\ModelNotFoundException;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use \Exception; use \Exception;
class RequestController extends Controller class RequestController extends Controller
{ {
/** /**
@ -19,17 +19,16 @@ class RequestController extends Controller
* *
* @var array * @var array
*/ */
private $deliveringDocumentStates = array('published', 'deleted'); // maybe deleted documents too private $deliveringDocumentStates = array('published', 'deleted'); // maybe deleted documents too
private $xMetaDissRestriction = array('doctoralthesis', 'habilitation'); private $xMetaDissRestriction = array('doctoralthesis', 'habilitation');
const SET_SPEC_PATTERN = '[A-Za-z0-9\-_\.!~\*\'\(\)]+'; const SET_SPEC_PATTERN = '[A-Za-z0-9\-_\.!~\*\'\(\)]+';
/** /**
* Holds xml representation of document information to be processed. * Holds xml representation of document information to be processed.
* *
* @var \DomDocument Defaults to null. * @var \DomDocument Defaults to null.
*/ */
protected $_xml = null; protected $xml = null;
/** /**
* Holds the stylesheet for the transformation. * Holds the stylesheet for the transformation.
@ -43,7 +42,7 @@ class RequestController extends Controller
* *
* @var \XSLTProcessor Defaults to null. * @var \XSLTProcessor Defaults to null.
*/ */
protected $_proc = null; protected $proc = null;
/** /**
* Load an xslt stylesheet. * Load an xslt stylesheet.
@ -54,19 +53,19 @@ class RequestController extends Controller
{ {
$this->xslt = new \DomDocument; $this->xslt = new \DomDocument;
$this->xslt->load($stylesheet); $this->xslt->load($stylesheet);
$this->_proc->importStyleSheet($this->xslt); $this->proc->importStyleSheet($this->xslt);
if (isset($_SERVER['HTTP_HOST'])) { if (isset($_SERVER['HTTP_HOST'])) {
$this->_proc->setParameter('', 'host', $_SERVER['HTTP_HOST']); $this->proc->setParameter('', 'host', $_SERVER['HTTP_HOST']);
} }
//$this->_proc->setParameter('', 'server', $this->getRequest()->getBaseUrl()); //$this->proc->setParameter('', 'server', $this->getRequest()->getBaseUrl());
} }
public function __construct() public function __construct()
{ {
//$this->middleware('auth'); //$this->middleware('auth');
// Initialize member variables. // Initialize member variables.
$this->_xml = new \DomDocument; $this->xml = new \DomDocument;
$this->_proc = new \XSLTProcessor; $this->proc = new \XSLTProcessor;
} }
public function index(Request $request) public function index(Request $request)
@ -82,40 +81,38 @@ class RequestController extends Controller
} catch (OaiModelException $e) { } catch (OaiModelException $e) {
$errorCode = OaiModelError::mapCode($e->getCode()); $errorCode = OaiModelError::mapCode($e->getCode());
//$this->getLogger()->err($errorCode); //$this->getLogger()->err($errorCode);
$this->_proc->setParameter('', 'oai_error_code', $errorCode); $this->proc->setParameter('', 'oai_error_code', $errorCode);
//$this->getLogger()->err($e->getMessage()); //$this->getLogger()->err($e->getMessage());
$this->_proc->setParameter('', 'oai_error_message', htmlentities($e->getMessage())); $this->proc->setParameter('', 'oai_error_message', htmlentities($e->getMessage()));
} catch (Exception $e) { } catch (Exception $e) {
//$this->getLogger()->err($e); //$this->getLogger()->err($e);
$this->_proc->setParameter('', 'oai_error_code', 'unknown'); $this->proc->setParameter('', 'oai_error_code', 'unknown');
$this->_proc->setParameter('', 'oai_error_message', 'An internal error occured.'); $this->proc->setParameter('', 'oai_error_message', 'An internal error occured.');
//$this->getResponse()->setHttpResponseCode(500); //$this->getResponse()->setHttpResponseCode(500);
} }
// $xml = $this->_xml->saveXML(); // $xml = $this->xml->saveXML();
$xml = $this->_proc->transformToXML($this->_xml); $xml = $this->proc->transformToXML($this->xml);
//$xml = $this->doc->asXML(); //$xml = $this->doc->asXML();
return response($xml)//->view('rss', array('rss'=>$this->rss)) return response($xml) //->view('rss', array('rss'=>$this->rss))
->header('Content-Type', 'application/xml') ->header('Content-Type', 'application/xml')
->header('charset', 'utf-8'); ->header('charset', 'utf-8');
} }
private function __handleRequest(array $oaiRequest) private function __handleRequest(array $oaiRequest)
{ {
// Setup stylesheet // Setup stylesheet
$this->loadStyleSheet('datasetxml2oai-pmh.xslt'); $this->loadStyleSheet('datasetxml2oai-pmh.xslt');
// Set response time // Set response time
$this->_proc->setParameter('', 'responseDate', date("Y-m-d\TH:i:s\Z")); $this->proc->setParameter('', 'responseDate', date("Y-m-d\TH:i:s\Z"));
// set OAI base url // set OAI base url
$uri = explode('?', $_SERVER['REQUEST_URI'], 2); $uri = explode('?', $_SERVER['REQUEST_URI'], 2);
$this->_proc->setParameter('', 'baseURL', url('/') . $uri[0]); $this->proc->setParameter('', 'baseURL', url('/') . $uri[0]);
if (isset($oaiRequest['verb'])) { if (isset($oaiRequest['verb'])) {
$this->_proc->setParameter('', 'oai_verb', $oaiRequest['verb']); $this->proc->setParameter('', 'oai_verb', $oaiRequest['verb']);
if ($oaiRequest['verb'] == 'Identify') { if ($oaiRequest['verb'] == 'Identify') {
$this->handleIdentify(); $this->handleIdentify();
} elseif ($oaiRequest['verb'] == 'ListMetadataFormats') { } elseif ($oaiRequest['verb'] == 'ListMetadataFormats') {
@ -133,7 +130,7 @@ class RequestController extends Controller
} }
} else { } else {
$oaiRequest['verb'] = 'Identify'; $oaiRequest['verb'] = 'Identify';
$this->_proc->setParameter('', 'oai_verb', $oaiRequest['verb']); $this->proc->setParameter('', 'oai_verb', $oaiRequest['verb']);
$this->doc = $this->handleIdentify(); $this->doc = $this->handleIdentify();
} }
} }
@ -148,16 +145,17 @@ class RequestController extends Controller
$email = "repository@geologie.ac.at"; $email = "repository@geologie.ac.at";
$repositoryName = "Tethys RDR"; $repositoryName = "Tethys RDR";
$repIdentifier = "tethys.geologie.ac.at"; $repIdentifier = "tethys.geologie.ac.at";
$sampleIdentifier = "oai:" . $repIdentifier . ":27";//$this->_configuration->getSampleIdentifier(); $sampleIdentifier = "oai:" . $repIdentifier . ":27"; //$this->_configuration->getSampleIdentifier();
$earliestDateFromDb = Dataset::earliestPublicationDate() != null ? Dataset::earliestPublicationDate()->server_date_published: null; $earliestDateFromDb = Dataset::earliestPublicationDate() != null ?
Dataset::earliestPublicationDate()->server_date_published : null;
// set parameters for oai-pmh.xslt // set parameters for oai-pmh.xslt
$this->_proc->setParameter('', 'email', $email); $this->proc->setParameter('', 'email', $email);
$this->_proc->setParameter('', 'repositoryName', $repositoryName); $this->proc->setParameter('', 'repositoryName', $repositoryName);
$this->_proc->setParameter('', 'repIdentifier', $repIdentifier); $this->proc->setParameter('', 'repIdentifier', $repIdentifier);
$this->_proc->setParameter('', 'sampleIdentifier', $sampleIdentifier); $this->proc->setParameter('', 'sampleIdentifier', $sampleIdentifier);
$this->_proc->setParameter('', 'earliestDatestamp', $earliestDateFromDb); $this->proc->setParameter('', 'earliestDatestamp', $earliestDateFromDb);
$this->_xml->appendChild($this->_xml->createElement('Datasets')); $this->xml->appendChild($this->xml->createElement('Datasets'));
} }
/** /**
@ -176,7 +174,7 @@ class RequestController extends Controller
try { try {
//$dataset = new Opus_Document($docId); //$dataset = new Opus_Document($docId);
$dataset = Dataset::findOrFail($dataId); $dataset = Dataset::findOrFail($dataId);
} catch (ModelNotFoundException $ex) { } catch (ModelNotFoundException $ex) {
throw new OaiModelException( throw new OaiModelException(
'The value of the identifier argument is unknown or illegal in this repository.', 'The value of the identifier argument is unknown or illegal in this repository.',
OaiModelError::IDDOESNOTEXIST OaiModelError::IDDOESNOTEXIST
@ -187,17 +185,17 @@ class RequestController extends Controller
if (true === array_key_exists('metadataPrefix', $oaiRequest)) { if (true === array_key_exists('metadataPrefix', $oaiRequest)) {
$metadataPrefix = $oaiRequest['metadataPrefix']; $metadataPrefix = $oaiRequest['metadataPrefix'];
} }
$this->_proc->setParameter('', 'oai_metadataPrefix', $metadataPrefix); $this->proc->setParameter('', 'oai_metadataPrefix', $metadataPrefix);
// do not deliver datasets which are restricted by document state // do not deliver datasets which are restricted by document state
if (is_null($dataset) if (is_null($dataset)
//or (false === in_array($dataset->getServerState(), $this->_deliveringDocumentStates)) //or (false === in_array($dataset->getServerState(), $this->_deliveringDocumentStates))
or (false === $dataset->whereIn('server_state', $this->deliveringDocumentStates)) or (false === $dataset->whereIn('server_state', $this->deliveringDocumentStates))
or (false === $dataset->hasEmbargoPassed())) { or (false === $dataset->hasEmbargoPassed())) {
throw new OaiModelException('Document is not available for OAI export!', OaiModelError::NORECORDSMATCH); throw new OaiModelException('Document is not available for OAI export!', OaiModelError::NORECORDSMATCH);
} }
$this->_xml->appendChild($this->_xml->createElement('Datasets')); $this->xml->appendChild($this->xml->createElement('Datasets'));
$this->createXmlRecord($dataset); $this->createXmlRecord($dataset);
} }
@ -236,9 +234,6 @@ class RequestController extends Controller
return $dataId; return $dataId;
} }
/** /**
* Implements response for OAI-PMH verb 'ListMetadataFormats'. * Implements response for OAI-PMH verb 'ListMetadataFormats'.
* *
@ -247,7 +242,7 @@ class RequestController extends Controller
*/ */
private function handleListMetadataFormats() private function handleListMetadataFormats()
{ {
$this->_xml->appendChild($this->_xml->createElement('Datasets')); $this->xml->appendChild($this->xml->createElement('Datasets'));
} }
/** /**
@ -258,7 +253,7 @@ class RequestController extends Controller
*/ */
private function handleListRecords($oaiRequest) private function handleListRecords($oaiRequest)
{ {
$maxRecords = 30;//$this->_configuration->getMaxListRecords(); $maxRecords = 30; //$this->_configuration->getMaxListRecords();
$this->handlingOfLists($oaiRequest, $maxRecords); $this->handlingOfLists($oaiRequest, $maxRecords);
} }
@ -270,7 +265,7 @@ class RequestController extends Controller
*/ */
private function handleListIdentifiers(array &$oaiRequest) private function handleListIdentifiers(array &$oaiRequest)
{ {
$maxIdentifier = 5;//$this->_configuration->getMaxListIdentifiers(); $maxIdentifier = 5; //$this->_configuration->getMaxListIdentifiers();
$this->handlingOfLists($oaiRequest, $maxIdentifier); $this->handlingOfLists($oaiRequest, $maxIdentifier);
} }
@ -283,8 +278,8 @@ class RequestController extends Controller
private function handleListSets() private function handleListSets()
{ {
$repIdentifier = "tethys.geologie.ac.at"; $repIdentifier = "tethys.geologie.ac.at";
$this->_proc->setParameter('', 'repIdentifier', $repIdentifier); $this->proc->setParameter('', 'repIdentifier', $repIdentifier);
$this->_xml->appendChild($this->_xml->createElement('Datasets')); $this->xml->appendChild($this->xml->createElement('Datasets'));
//$oaiSets = new Oai_Model_Sets(); //$oaiSets = new Oai_Model_Sets();
$sets = array( $sets = array(
@ -298,27 +293,25 @@ class RequestController extends Controller
//$sets = $this->getSetsForDocumentTypes(); //$sets = $this->getSetsForDocumentTypes();
foreach ($sets as $type => $name) { foreach ($sets as $type => $name) {
$opusDoc = $this->_xml->createElement('Rdr_Sets'); $opusDoc = $this->xml->createElement('Rdr_Sets');
$typeAttr = $this->_xml->createAttribute('Type'); $typeAttr = $this->xml->createAttribute('Type');
$typeValue = $this->_xml->createTextNode($type); $typeValue = $this->xml->createTextNode($type);
$typeAttr->appendChild($typeValue); $typeAttr->appendChild($typeValue);
$opusDoc->appendChild($typeAttr); $opusDoc->appendChild($typeAttr);
$nameAttr = $this->_xml->createAttribute('TypeName'); $nameAttr = $this->xml->createAttribute('TypeName');
$nameValue = $this->_xml->createTextNode($name); $nameValue = $this->xml->createTextNode($name);
$nameAttr->appendChild($nameValue); $nameAttr->appendChild($nameValue);
$opusDoc->appendChild($nameAttr); $opusDoc->appendChild($nameAttr);
$this->_xml->documentElement->appendChild($opusDoc); $this->xml->documentElement->appendChild($opusDoc);
} }
} }
private function handleIllegalVerb() private function handleIllegalVerb()
{ {
$this->_proc->setParameter('', 'oai_error_code', 'badVerb'); $this->proc->setParameter('', 'oai_error_code', 'badVerb');
$this->_proc->setParameter('', 'oai_error_message', 'The verb provided in the request is illegal.'); $this->proc->setParameter('', 'oai_error_message', 'The verb provided in the request is illegal.');
} }
/** /**
* Helper method for handling lists. * Helper method for handling lists.
* *
@ -336,9 +329,9 @@ class RequestController extends Controller
$repIdentifier = "tethys.geologie.ac.at"; $repIdentifier = "tethys.geologie.ac.at";
$tokenTempPath = storage_path('app/resumption'); //$this->_configuration->getResumptionTokenPath(); $tokenTempPath = storage_path('app/resumption'); //$this->_configuration->getResumptionTokenPath();
$this->_proc->setParameter('', 'repIdentifier', $repIdentifier); $this->proc->setParameter('', 'repIdentifier', $repIdentifier);
$this->_xml->appendChild($this->_xml->createElement('Datasets')); $this->xml->appendChild($this->xml->createElement('Datasets'));
// do some initialisation // do some initialisation
$cursor = 0; $cursor = 0;
//$totalIds = 0; //$totalIds = 0;
@ -349,7 +342,7 @@ class RequestController extends Controller
if (true === array_key_exists('metadataPrefix', $oaiRequest)) { if (true === array_key_exists('metadataPrefix', $oaiRequest)) {
$metadataPrefix = $oaiRequest['metadataPrefix']; $metadataPrefix = $oaiRequest['metadataPrefix'];
} }
$this->_proc->setParameter('', 'oai_metadataPrefix', $metadataPrefix); $this->proc->setParameter('', 'oai_metadataPrefix', $metadataPrefix);
// parameter resumptionToken is given // parameter resumptionToken is given
if (false === empty($oaiRequest['resumptionToken'])) { if (false === empty($oaiRequest['resumptionToken'])) {
@ -372,8 +365,7 @@ class RequestController extends Controller
$reldocIds = $finder->pluck('id')->toArray(); $reldocIds = $finder->pluck('id')->toArray();
} }
// handling of document ids
// handling of document ids
$restIds = $reldocIds; $restIds = $reldocIds;
$workIds = array_splice($restIds, 0, $maxRecords); $workIds = array_splice($restIds, 0, $maxRecords);
//foreach ($datasets as $dataset) //foreach ($datasets as $dataset)
@ -385,21 +377,21 @@ class RequestController extends Controller
private function createXmlRecord(Dataset $dataset) private function createXmlRecord(Dataset $dataset)
{ {
//$node = $this->_xml->createElement('Rdr_Dataset'); //$node = $this->xml->createElement('Rdr_Dataset');
$domNode = $this->getDatasetXmlDomNode($dataset); $domNode = $this->getDatasetXmlDomNode($dataset);
// add frontdoor url // add frontdoor url
$this->addLandingPageAttribute($domNode, $dataset->id); $this->addLandingPageAttribute($domNode, $dataset->id);
// add access rights to element // add access rights to element
//$this->_addAccessRights($domNode, $dataset); //$this->_addAccessRights($domNode, $dataset);
$node = $this->_xml->importNode($domNode, true); $node = $this->xml->importNode($domNode, true);
//$node->setAttribute("Id", $dataset->id); //$node->setAttribute("Id", $dataset->id);
//$node->setAttribute("ServerState", $dataset->server_state); //$node->setAttribute("ServerState", $dataset->server_state);
////$child = new \DOMElement("ServerDateModified"); ////$child = new \DOMElement("ServerDateModified");
//$child = $this->_xml->createElement('ServerDateModified'); //$child = $this->xml->createElement('ServerDateModified');
//$child->setAttribute("Year", $dataset->server_date_modified->format('Y')); //$child->setAttribute("Year", $dataset->server_date_modified->format('Y'));
//$child->setAttribute("Month", $dataset->server_date_modified->month); //$child->setAttribute("Month", $dataset->server_date_modified->month);
//$child->setAttribute("Day", $dataset->server_date_modified->day); //$child->setAttribute("Day", $dataset->server_date_modified->day);
@ -409,7 +401,7 @@ class RequestController extends Controller
$this->addSpecInformation($node, 'data-type:' . $dataset->type); $this->addSpecInformation($node, 'data-type:' . $dataset->type);
//$this->addSpecInformation($node, 'bibliography:' . 'false'); //$this->addSpecInformation($node, 'bibliography:' . 'false');
$this->_xml->documentElement->appendChild($node); $this->xml->documentElement->appendChild($node);
} }
/** /**
@ -431,12 +423,12 @@ class RequestController extends Controller
private function addSpecInformation(\DOMNode $document, $information) private function addSpecInformation(\DOMNode $document, $information)
{ {
$setSpecAttribute = $this->_xml->createAttribute('Value'); $setSpecAttribute = $this->xml->createAttribute('Value');
$setSpecAttributeValue = $this->_xml->createTextNode($information); $setSpecAttributeValue = $this->xml->createTextNode($information);
$setSpecAttribute->appendChild($setSpecAttributeValue); $setSpecAttribute->appendChild($setSpecAttributeValue);
$setSpecElement = $this->_xml->createElement('SetSpec'); $setSpecElement = $this->xml->createElement('SetSpec');
//$setSpecElement =new \DOMElement("SetSpec"); //$setSpecElement =new \DOMElement("SetSpec");
$setSpecElement->appendChild($setSpecAttribute); $setSpecElement->appendChild($setSpecAttribute);
$document->appendChild($setSpecElement); $document->appendChild($setSpecElement);
} }
@ -454,7 +446,7 @@ class RequestController extends Controller
$xmlModel = new \App\Library\Xml\XmlModel(); $xmlModel = new \App\Library\Xml\XmlModel();
$xmlModel->setModel($dataset); $xmlModel->setModel($dataset);
$xmlModel->excludeEmptyFields(); $xmlModel->excludeEmptyFields();
$cache = ($dataset->xmlCache) ? $dataset->xmlCache : new \App\Models\XmlCache(); $cache = ($dataset->xmlCache) ? $dataset->xmlCache : new \App\Models\XmlCache();
$xmlModel->setXmlCache($cache); $xmlModel->setXmlCache($cache);
return $xmlModel->getDomDocument()->getElementsByTagName('Rdr_Dataset')->item(0); return $xmlModel->getDomDocument()->getElementsByTagName('Rdr_Dataset')->item(0);
} }

View File

@ -8,15 +8,15 @@ class Kernel extends HttpKernel
/** /**
* The application's global HTTP middleware stack. * The application's global HTTP middleware stack.
* *
* These middleware are run during every request to your application. * These middleware are run during every request to your application.
* @var array * @var array
*/ */
protected $middleware = [ protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class, \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class, \App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
]; ];
/** /**
@ -65,6 +65,6 @@ class Kernel extends HttpKernel
'ability' => \Zizaco\Entrust\Middleware\EntrustAbility::class, 'ability' => \Zizaco\Entrust\Middleware\EntrustAbility::class,
'isUserDatasetAdmin' => \App\Http\Middleware\WebAuthorizeDataset::class, 'isUserDatasetAdmin' => \App\Http\Middleware\WebAuthorizeDataset::class,
'isUserFileOwner' => \App\Http\Middleware\WebAuthorizeFile::class, 'isUserFileOwner' => \App\Http\Middleware\WebAuthorizeFile::class,
]; ];
} }

View File

@ -4,18 +4,18 @@ namespace App\Models;
use App\Library\Xml\DatasetExtension; use App\Library\Xml\DatasetExtension;
use App\Models\Collection; use App\Models\Collection;
use App\Models\License; use App\Models\Coverage;
use App\Models\User;
use App\Models\Project;
use App\Models\Description; use App\Models\Description;
use App\Models\Title;
use App\Models\Person;
use App\Models\XmlCache;
use App\Models\File; use App\Models\File;
use Illuminate\Database\Eloquent\Model; use App\Models\License;
use App\Models\Person;
use App\Models\Project;
use App\Models\Title;
use App\Models\User;
use App\Models\XmlCache;
use Carbon\Carbon; use Carbon\Carbon;
// use App\Models\GeolocationBox; // use App\Models\GeolocationBox;
use App\Models\Coverage; use Illuminate\Database\Eloquent\Model;
class Dataset extends Model class Dataset extends Model
{ {
@ -45,10 +45,10 @@ class Dataset extends Model
'reviewer_id', 'reviewer_id',
'reject_reviewer_note', 'reject_reviewer_note',
'reject_editor_note', 'reject_editor_note',
'reviewer_note_visible' 'reviewer_note_visible',
]; ];
//protected $guarded = []; //protected $guarded = [];
/** /**
* The attributes that should be mutated to dates. * The attributes that should be mutated to dates.
* *
* @var array * @var array
@ -96,7 +96,7 @@ class Dataset extends Model
return $this->belongsTo(Project::class, 'project_id', 'id'); return $this->belongsTo(Project::class, 'project_id', 'id');
} }
/** /**
* Get the account that the dataset belongs to * Get the account that the dataset belongs to
*/ */
public function user() public function user()
@ -175,7 +175,7 @@ class Dataset extends Model
public function contributors() public function contributors()
{ {
return $this return $this
->persons() ->persons()
// ->belongsToMany(Person::class, 'link_documents_persons', 'document_id', 'person_id') // ->belongsToMany(Person::class, 'link_documents_persons', 'document_id', 'person_id')
->wherePivot('role', 'contributor'); ->wherePivot('role', 'contributor');
} }
@ -196,7 +196,7 @@ class Dataset extends Model
{ {
return $this->hasMany(Title::class, 'document_id', 'id')->where('type', 'Main')->first(); return $this->hasMany(Title::class, 'document_id', 'id')->where('type', 'Main')->first();
} }
public function addMainTitle(Title $title) public function addMainTitle(Title $title)
{ {
$title->type = 'main'; $title->type = 'main';
@ -251,7 +251,6 @@ class Dataset extends Model
return $this->hasMany(\App\Models\Subject::class, 'document_id', 'id'); return $this->hasMany(\App\Models\Subject::class, 'document_id', 'id');
} }
/** /**
* Get the xml-cache record associated with the dataset. * Get the xml-cache record associated with the dataset.
* *
@ -285,7 +284,7 @@ class Dataset extends Model
->where('server_state', 'published') ->where('server_state', 'published')
->orderBy('server_date_published', 'asc') ->orderBy('server_date_published', 'asc')
->first(); ->first();
//->server_date_published; //->server_date_published;
return $result; return $result;
} }
@ -300,7 +299,6 @@ class Dataset extends Model
return $this->project()->exists(); return $this->project()->exists();
} }
public function hasEmbargoPassed($now = null) public function hasEmbargoPassed($now = null)
{ {
$embargoDate = $this->embargo_date; $embargoDate = $this->embargo_date;
@ -320,7 +318,7 @@ class Dataset extends Model
// $dt->year = 2015; // $dt->year = 2015;
// $dt->month = 04; // $dt->month = 04;
// $dt->day = 21; // $dt->day = 21;
$embargoDate->hour = 23; $embargoDate->hour = 23;
$embargoDate->minute = 59; $embargoDate->minute = 59;
$embargoDate->second = 59; $embargoDate->second = 59;
@ -330,7 +328,7 @@ class Dataset extends Model
public function getRemainingTimeAttribute() public function getRemainingTimeAttribute()
{ {
$dateDiff =$this->server_date_modified->addDays(14); $dateDiff = $this->server_date_modified->addDays(14);
if ($this->server_state == "approved") { if ($this->server_state == "approved") {
return Carbon::now()->diffInDays($dateDiff, false); return Carbon::now()->diffInDays($dateDiff, false);
} else { } else {
@ -346,6 +344,34 @@ class Dataset extends Model
. ' * WEST-BOUND LONGITUDE: ' . $this->coverage->y_min . "," . ' * WEST-BOUND LONGITUDE: ' . $this->coverage->y_min . ","
. ' * NORTH-BOUND LATITUDE: ' . $this->coverage->x_max . "," . ' * NORTH-BOUND LATITUDE: ' . $this->coverage->x_max . ","
. ' * EAST-BOUND LONGITUDE: ' . $this->coverage->y_max; . ' * EAST-BOUND LONGITUDE: ' . $this->coverage->y_max;
$elevation = '';
if ($this->coverage->elevation_min != null && $this->coverage->elevation_max != null) {
$elevation = $elevation . '* ELEVATION MIN: ' . $this->coverage->elevation_min
. ', * ELEVATION MAX: ' . $this->coverage->elevation_max;
} elseif ($this->coverage->elevation_absolut != null) {
$elevation = $elevation . '* ELEVATION ABSOLUT: ' . $this->coverage->elevation_absolut;
}
$geolocation = $elevation == '' ? $geolocation : $geolocation . ", " . $elevation;
$depth = '';
if ($this->coverage->depth_min != null && $this->coverage->depth_max != null) {
$depth = $depth . '* DEPTH MIN: ' . $this->coverage->depth_min
. ', * DEPTH MAX: ' . $this->coverage->depth_max;
} elseif ($this->coverage->depth_absolut != null) {
$depth = $depth . '* DEPTH ABSOLUT: ' . $this->coverage->depth_absolut;
}
$geolocation = $depth == '' ? $geolocation : $geolocation . ", " . $depth;
$time = '';
if ($this->coverage->time_min != null && $this->coverage->time_max != null) {
$time = $time . '* TIME MIN: ' . $this->coverage->time_min
. ', * TIME MAX: ' . $this->coverage->time_max;
} elseif ($this->coverage->time_absolut != null) {
$time = $time . '* TIME ABSOLUT: ' . $this->coverage->time_absolut;
}
$geolocation = $time == '' ? $geolocation : $geolocation . ", " . $time;
return $geolocation; return $geolocation;
} }
} }

96
composer.lock generated
View File

@ -970,16 +970,16 @@
}, },
{ {
"name": "league/flysystem", "name": "league/flysystem",
"version": "1.0.65", "version": "1.0.66",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/thephpleague/flysystem.git", "url": "https://github.com/thephpleague/flysystem.git",
"reference": "8f17b3ba67097aafb8318cd5c553b1acf7c891c8" "reference": "021569195e15f8209b1c4bebb78bd66aa4f08c21"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/thephpleague/flysystem/zipball/8f17b3ba67097aafb8318cd5c553b1acf7c891c8", "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/021569195e15f8209b1c4bebb78bd66aa4f08c21",
"reference": "8f17b3ba67097aafb8318cd5c553b1acf7c891c8", "reference": "021569195e15f8209b1c4bebb78bd66aa4f08c21",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -1050,7 +1050,13 @@
"sftp", "sftp",
"storage" "storage"
], ],
"time": "2020-03-08T18:53:20+00:00" "funding": [
{
"url": "https://offset.earth/frankdejonge",
"type": "other"
}
],
"time": "2020-03-17T18:58:12+00:00"
}, },
{ {
"name": "mcamara/laravel-localization", "name": "mcamara/laravel-localization",
@ -1194,16 +1200,16 @@
}, },
{ {
"name": "nesbot/carbon", "name": "nesbot/carbon",
"version": "2.31.0", "version": "2.32.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/briannesbitt/Carbon.git", "url": "https://github.com/briannesbitt/Carbon.git",
"reference": "bbc0ab53f41a4c6f223c18efcdbd9bc725eb5d2d" "reference": "7410a349613bf32d02d8aaed1c669698ddd2b718"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/bbc0ab53f41a4c6f223c18efcdbd9bc725eb5d2d", "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/7410a349613bf32d02d8aaed1c669698ddd2b718",
"reference": "bbc0ab53f41a4c6f223c18efcdbd9bc725eb5d2d", "reference": "7410a349613bf32d02d8aaed1c669698ddd2b718",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -1212,6 +1218,7 @@
"symfony/translation": "^3.4 || ^4.0 || ^5.0" "symfony/translation": "^3.4 || ^4.0 || ^5.0"
}, },
"require-dev": { "require-dev": {
"doctrine/orm": "^2.7",
"friendsofphp/php-cs-fixer": "^2.14 || ^3.0", "friendsofphp/php-cs-fixer": "^2.14 || ^3.0",
"kylekatarnls/multi-tester": "^1.1", "kylekatarnls/multi-tester": "^1.1",
"phpmd/phpmd": "^2.8", "phpmd/phpmd": "^2.8",
@ -1260,7 +1267,17 @@
"datetime", "datetime",
"time" "time"
], ],
"time": "2020-03-01T11:11:58+00:00" "funding": [
{
"url": "https://opencollective.com/Carbon",
"type": "open_collective"
},
{
"url": "https://tidelift.com/funding/github/packagist/nesbot/carbon",
"type": "tidelift"
}
],
"time": "2020-03-24T16:01:47+00:00"
}, },
{ {
"name": "nikic/php-parser", "name": "nikic/php-parser",
@ -1422,20 +1439,20 @@
}, },
{ {
"name": "phpoption/phpoption", "name": "phpoption/phpoption",
"version": "1.7.2", "version": "1.7.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/schmittjoh/php-option.git", "url": "https://github.com/schmittjoh/php-option.git",
"reference": "77f7c4d2e65413aff5b5a8cc8b3caf7a28d81959" "reference": "4acfd6a4b33a509d8c88f50e5222f734b6aeebae"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/schmittjoh/php-option/zipball/77f7c4d2e65413aff5b5a8cc8b3caf7a28d81959", "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/4acfd6a4b33a509d8c88f50e5222f734b6aeebae",
"reference": "77f7c4d2e65413aff5b5a8cc8b3caf7a28d81959", "reference": "4acfd6a4b33a509d8c88f50e5222f734b6aeebae",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": "^5.5.9 || ^7.0" "php": "^5.5.9 || ^7.0 || ^8.0"
}, },
"require-dev": { "require-dev": {
"bamarni/composer-bin-plugin": "^1.3", "bamarni/composer-bin-plugin": "^1.3",
@ -1473,7 +1490,7 @@
"php", "php",
"type" "type"
], ],
"time": "2019-12-15T19:35:24+00:00" "time": "2020-03-21T18:07:53+00:00"
}, },
{ {
"name": "psr/container", "name": "psr/container",
@ -1526,16 +1543,16 @@
}, },
{ {
"name": "psr/log", "name": "psr/log",
"version": "1.1.2", "version": "1.1.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/php-fig/log.git", "url": "https://github.com/php-fig/log.git",
"reference": "446d54b4cb6bf489fc9d75f55843658e6f25d801" "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/php-fig/log/zipball/446d54b4cb6bf489fc9d75f55843658e6f25d801", "url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc",
"reference": "446d54b4cb6bf489fc9d75f55843658e6f25d801", "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -1569,7 +1586,7 @@
"psr", "psr",
"psr-3" "psr-3"
], ],
"time": "2019-11-01T11:05:21+00:00" "time": "2020-03-23T09:12:05+00:00"
}, },
{ {
"name": "psr/simple-cache", "name": "psr/simple-cache",
@ -2461,6 +2478,20 @@
], ],
"description": "Symfony HttpKernel Component", "description": "Symfony HttpKernel Component",
"homepage": "https://symfony.com", "homepage": "https://symfony.com",
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2020-02-29T10:31:38+00:00" "time": "2020-02-29T10:31:38+00:00"
}, },
{ {
@ -3319,16 +3350,16 @@
}, },
{ {
"name": "vlucas/phpdotenv", "name": "vlucas/phpdotenv",
"version": "v3.6.0", "version": "v3.6.1",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/vlucas/phpdotenv.git", "url": "https://github.com/vlucas/phpdotenv.git",
"reference": "1bdf24f065975594f6a117f0f1f6cabf1333b156" "reference": "8f7961f7b9deb3b432452c18093cf16f88205902"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/1bdf24f065975594f6a117f0f1f6cabf1333b156", "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/8f7961f7b9deb3b432452c18093cf16f88205902",
"reference": "1bdf24f065975594f6a117f0f1f6cabf1333b156", "reference": "8f7961f7b9deb3b432452c18093cf16f88205902",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -3337,8 +3368,12 @@
"symfony/polyfill-ctype": "^1.9" "symfony/polyfill-ctype": "^1.9"
}, },
"require-dev": { "require-dev": {
"ext-filter": "*",
"phpunit/phpunit": "^4.8.35 || ^5.0 || ^6.0 || ^7.0" "phpunit/phpunit": "^4.8.35 || ^5.0 || ^6.0 || ^7.0"
}, },
"suggest": {
"ext-filter": "Required to use the boolean validator."
},
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
@ -3372,7 +3407,13 @@
"env", "env",
"environment" "environment"
], ],
"time": "2019-09-10T21:37:39+00:00" "funding": [
{
"url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv",
"type": "tidelift"
}
],
"time": "2020-03-12T13:44:00+00:00"
}, },
{ {
"name": "yajra/laravel-datatables-oracle", "name": "yajra/laravel-datatables-oracle",
@ -4994,5 +5035,6 @@
"platform": { "platform": {
"php": "^7.1.3" "php": "^7.1.3"
}, },
"platform-dev": [] "platform-dev": [],
"plugin-api-version": "1.1.0"
} }

View File

@ -245,7 +245,7 @@ return [
// 'HTML' => 'Illuminate\Html\HtmlFacade', // 'HTML' => 'Illuminate\Html\HtmlFacade',
// 'Form' => 'Collective\Html\FormFacade', // 'Form' => 'Collective\Html\FormFacade',
// 'Html' => 'Collective\Html\HtmlFacade', // 'Html' => 'Collective\Html\HtmlFacade',
'Breadcrumbs' => DaveJamesMiller\Breadcrumbs\Facade::class, 'Breadcrumbs' => DaveJamesMiller\Breadcrumbs\Facades\Breadcrumbs::class,
//'Datatables' => Yajra\DataTables\Facades\DataTables::class //'Datatables' => Yajra\DataTables\Facades\DataTables::class
], ],

47
package-lock.json generated
View File

@ -1724,7 +1724,6 @@
"version": "0.19.2", "version": "0.19.2",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz", "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz",
"integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==",
"dev": true,
"requires": { "requires": {
"follow-redirects": "1.5.10" "follow-redirects": "1.5.10"
} }
@ -3154,8 +3153,7 @@
"date-fns": { "date-fns": {
"version": "1.30.1", "version": "1.30.1",
"resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz", "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz",
"integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==", "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw=="
"dev": true
}, },
"date-now": { "date-now": {
"version": "0.1.4", "version": "0.1.4",
@ -3166,14 +3164,12 @@
"de-indent": { "de-indent": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz",
"integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0="
"dev": true
}, },
"debug": { "debug": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"dev": true,
"requires": { "requires": {
"ms": "2.0.0" "ms": "2.0.0"
} }
@ -4171,7 +4167,6 @@
"version": "1.5.10", "version": "1.5.10",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz",
"integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==",
"dev": true,
"requires": { "requires": {
"debug": "=3.1.0" "debug": "=3.1.0"
} }
@ -5208,8 +5203,7 @@
"he": { "he": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
"integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw=="
"dev": true
}, },
"hex-color-regex": { "hex-color-regex": {
"version": "1.1.0", "version": "1.1.0",
@ -6206,8 +6200,7 @@
"lodash": { "lodash": {
"version": "4.17.15", "version": "4.17.15",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
"integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
"dev": true
}, },
"lodash.memoize": { "lodash.memoize": {
"version": "4.1.2", "version": "4.1.2",
@ -6570,8 +6563,7 @@
"ms": { "ms": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
"dev": true
}, },
"multicast-dns": { "multicast-dns": {
"version": "6.2.3", "version": "6.2.3",
@ -9410,8 +9402,7 @@
"sortablejs": { "sortablejs": {
"version": "1.10.2", "version": "1.10.2",
"resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.10.2.tgz", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.10.2.tgz",
"integrity": "sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A==", "integrity": "sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A=="
"dev": true
}, },
"source-list-map": { "source-list-map": {
"version": "2.0.1", "version": "2.0.1",
@ -10491,8 +10482,7 @@
"vee-validate": { "vee-validate": {
"version": "2.2.15", "version": "2.2.15",
"resolved": "https://registry.npmjs.org/vee-validate/-/vee-validate-2.2.15.tgz", "resolved": "https://registry.npmjs.org/vee-validate/-/vee-validate-2.2.15.tgz",
"integrity": "sha512-4TOsI8XwVkKVLkg8Nhmy+jyoJrR6XcTRDyxBarzcCvYzU61zamipS1WsB6FlDze8eJQpgglS4NXAS6o4NDPs1g==", "integrity": "sha512-4TOsI8XwVkKVLkg8Nhmy+jyoJrR6XcTRDyxBarzcCvYzU61zamipS1WsB6FlDze8eJQpgglS4NXAS6o4NDPs1g=="
"dev": true
}, },
"vendors": { "vendors": {
"version": "1.0.3", "version": "1.0.3",
@ -10520,14 +10510,12 @@
"vue": { "vue": {
"version": "2.6.11", "version": "2.6.11",
"resolved": "https://registry.npmjs.org/vue/-/vue-2.6.11.tgz", "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.11.tgz",
"integrity": "sha512-VfPwgcGABbGAue9+sfrD4PuwFar7gPb1yl1UK1MwXoQPAw0BKSqWfoYCT/ThFrdEVWoI51dBuyCoiNU9bZDZxQ==", "integrity": "sha512-VfPwgcGABbGAue9+sfrD4PuwFar7gPb1yl1UK1MwXoQPAw0BKSqWfoYCT/ThFrdEVWoI51dBuyCoiNU9bZDZxQ=="
"dev": true
}, },
"vue-class-component": { "vue-class-component": {
"version": "7.2.3", "version": "7.2.3",
"resolved": "https://registry.npmjs.org/vue-class-component/-/vue-class-component-7.2.3.tgz", "resolved": "https://registry.npmjs.org/vue-class-component/-/vue-class-component-7.2.3.tgz",
"integrity": "sha512-oEqYpXKaFN+TaXU+mRLEx8dX0ah85aAJEe61mpdoUrq0Bhe/6sWhyZX1JjMQLhVsHAkncyhedhmCdDVSasUtDw==", "integrity": "sha512-oEqYpXKaFN+TaXU+mRLEx8dX0ah85aAJEe61mpdoUrq0Bhe/6sWhyZX1JjMQLhVsHAkncyhedhmCdDVSasUtDw=="
"dev": true
}, },
"vue-datetime-picker": { "vue-datetime-picker": {
"version": "0.2.1", "version": "0.2.1",
@ -10552,8 +10540,7 @@
"vue-events": { "vue-events": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/vue-events/-/vue-events-3.1.0.tgz", "resolved": "https://registry.npmjs.org/vue-events/-/vue-events-3.1.0.tgz",
"integrity": "sha512-JoE6ZlIEFdpj/vE7oW6T1T3Vz2h0Zxc4XEyz92L2tiRVc1TZ0u/nY1s6ZrnpHKoVxeEU0ouAp/FMxTKI3JBpvA==", "integrity": "sha512-JoE6ZlIEFdpj/vE7oW6T1T3Vz2h0Zxc4XEyz92L2tiRVc1TZ0u/nY1s6ZrnpHKoVxeEU0ouAp/FMxTKI3JBpvA=="
"dev": true
}, },
"vue-hot-reload-api": { "vue-hot-reload-api": {
"version": "2.3.3", "version": "2.3.3",
@ -10578,7 +10565,6 @@
"version": "8.4.0", "version": "8.4.0",
"resolved": "https://registry.npmjs.org/vue-property-decorator/-/vue-property-decorator-8.4.0.tgz", "resolved": "https://registry.npmjs.org/vue-property-decorator/-/vue-property-decorator-8.4.0.tgz",
"integrity": "sha512-0o85LJSTLZvDaB7IXfmpONfAQZ7NgScFvptFSrlFFSsScR716muJb3mMFojNnKC3Vpm7CM4PsmHNdk30uuNpag==", "integrity": "sha512-0o85LJSTLZvDaB7IXfmpONfAQZ7NgScFvptFSrlFFSsScR716muJb3mMFojNnKC3Vpm7CM4PsmHNdk30uuNpag==",
"dev": true,
"requires": { "requires": {
"vue-class-component": "^7.1.0" "vue-class-component": "^7.1.0"
} }
@ -10597,7 +10583,6 @@
"version": "2.6.11", "version": "2.6.11",
"resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.11.tgz", "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.11.tgz",
"integrity": "sha512-KIq15bvQDrcCjpGjrAhx4mUlyyHfdmTaoNfeoATHLAiWB+MU3cx4lOzMwrnUh9cCxy0Lt1T11hAFY6TQgroUAA==", "integrity": "sha512-KIq15bvQDrcCjpGjrAhx4mUlyyHfdmTaoNfeoATHLAiWB+MU3cx4lOzMwrnUh9cCxy0Lt1T11hAFY6TQgroUAA==",
"dev": true,
"requires": { "requires": {
"de-indent": "^1.0.2", "de-indent": "^1.0.2",
"he": "^1.1.0" "he": "^1.1.0"
@ -10612,14 +10597,12 @@
"vue-toast-notification": { "vue-toast-notification": {
"version": "0.0.3", "version": "0.0.3",
"resolved": "https://registry.npmjs.org/vue-toast-notification/-/vue-toast-notification-0.0.3.tgz", "resolved": "https://registry.npmjs.org/vue-toast-notification/-/vue-toast-notification-0.0.3.tgz",
"integrity": "sha512-3UQuEa2oQX5JcWwMcnm6Kf9djL4XwWWv2R8uIawFC/PSPHYp4JCnXiYu+BVNc/qCQhpSvfkXmmDVOLRau5kVDg==", "integrity": "sha512-3UQuEa2oQX5JcWwMcnm6Kf9djL4XwWWv2R8uIawFC/PSPHYp4JCnXiYu+BVNc/qCQhpSvfkXmmDVOLRau5kVDg=="
"dev": true
}, },
"vuedraggable": { "vuedraggable": {
"version": "2.23.2", "version": "2.23.2",
"resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.23.2.tgz", "resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.23.2.tgz",
"integrity": "sha512-PgHCjUpxEAEZJq36ys49HfQmXglattf/7ofOzUrW2/rRdG7tu6fK84ir14t1jYv4kdXewTEa2ieKEAhhEMdwkQ==", "integrity": "sha512-PgHCjUpxEAEZJq36ys49HfQmXglattf/7ofOzUrW2/rRdG7tu6fK84ir14t1jYv4kdXewTEa2ieKEAhhEMdwkQ==",
"dev": true,
"requires": { "requires": {
"sortablejs": "^1.10.1" "sortablejs": "^1.10.1"
} }
@ -10628,7 +10611,6 @@
"version": "1.1.13", "version": "1.1.13",
"resolved": "https://registry.npmjs.org/vuejs-datetimepicker/-/vuejs-datetimepicker-1.1.13.tgz", "resolved": "https://registry.npmjs.org/vuejs-datetimepicker/-/vuejs-datetimepicker-1.1.13.tgz",
"integrity": "sha512-R7UtjXqRpqLnUk9uSiAmWXk64hFFfpoGDRiFLVGORU/ptSQRPh0KhfBwoe1ED7EeCQBAP8dXRh14n8RmfC6m1g==", "integrity": "sha512-R7UtjXqRpqLnUk9uSiAmWXk64hFFfpoGDRiFLVGORU/ptSQRPh0KhfBwoe1ED7EeCQBAP8dXRh14n8RmfC6m1g==",
"dev": true,
"requires": { "requires": {
"date-fns": "^1.29.0", "date-fns": "^1.29.0",
"vue": "^2.3.3" "vue": "^2.3.3"
@ -10638,7 +10620,6 @@
"version": "1.7.5", "version": "1.7.5",
"resolved": "https://registry.npmjs.org/vuetable-2/-/vuetable-2-1.7.5.tgz", "resolved": "https://registry.npmjs.org/vuetable-2/-/vuetable-2-1.7.5.tgz",
"integrity": "sha512-cKLD7ufbwNZZA1exOU1U7oXC+nrXq88YwDNAPL8dR9Kk1Pj/HMvLhOr4xw/15748c4OfYxBZQvVTJh4Hnu35AA==", "integrity": "sha512-cKLD7ufbwNZZA1exOU1U7oXC+nrXq88YwDNAPL8dR9Kk1Pj/HMvLhOr4xw/15748c4OfYxBZQvVTJh4Hnu35AA==",
"dev": true,
"requires": { "requires": {
"axios": "^0.15.3" "axios": "^0.15.3"
}, },
@ -10647,7 +10628,6 @@
"version": "0.15.3", "version": "0.15.3",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz", "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz",
"integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=", "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=",
"dev": true,
"requires": { "requires": {
"follow-redirects": "1.0.0" "follow-redirects": "1.0.0"
} }
@ -10656,7 +10636,6 @@
"version": "2.6.9", "version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"requires": { "requires": {
"ms": "2.0.0" "ms": "2.0.0"
} }
@ -10665,7 +10644,6 @@
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz",
"integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=", "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=",
"dev": true,
"requires": { "requires": {
"debug": "^2.2.0" "debug": "^2.2.0"
} }
@ -10673,8 +10651,7 @@
"ms": { "ms": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
"dev": true
} }
} }
}, },

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -9,7 +9,7 @@
<div class="content"> <div class="content">
<div class="box" v-if="dataset"> <div class="box" v-if="dataset">
<div class="dataset_heaader"> <div class="dataset_header">
<div class="dataset__blog-meta">published: {{ $dataset->server_date_published->toDayDateTimeString() }} <div class="dataset__blog-meta">published: {{ $dataset->server_date_published->toDayDateTimeString() }}
</div> </div>
<h1 class="dataset__title">{{ $dataset->mainTitle()->value }}</h1> <h1 class="dataset__title">{{ $dataset->mainTitle()->value }}</h1>
@ -95,6 +95,8 @@
</div> </div>
<div class="tab-pane content-file" id="two"> <div class="tab-pane content-file" id="two">
<p class="dataset__abstract">Size: {{ $dataset->files()->count() }} </p>
@if($dataset->embargo_date != null) @if($dataset->embargo_date != null)
<p class="dataset__abstract">Ende des Embargo-Zeitraums: <p class="dataset__abstract">Ende des Embargo-Zeitraums:
{{ $dataset->embargo_date->toDateString() }}</p> {{ $dataset->embargo_date->toDateString() }}</p>
@ -134,7 +136,7 @@
<div class="tab-pane content-technical-metadata" id="three"> <div class="tab-pane content-technical-metadata" id="three">
<p class="dataset__abstract">Persistenter Identifikator: <p class="dataset__abstract">Persistenter Identifikator:
{{ "http://www.tethys.at/" . $dataset->id }}</p> {{ "https://www.tethys.at/dataset/" . $dataset->id }}</p>
<p class="dataset__abstract">Status: {{ $dataset->server_state }}</p> <p class="dataset__abstract">Status: {{ $dataset->server_state }}</p>
<p class="dataset__abstract">Eingestellt von: {{ $dataset->user->login }}</p> <p class="dataset__abstract">Eingestellt von: {{ $dataset->user->login }}</p>
<p class="dataset__abstract">Erstellt am: {{ $dataset->created_at->toDateString() }}</p> <p class="dataset__abstract">Erstellt am: {{ $dataset->created_at->toDateString() }}</p>
@ -187,6 +189,9 @@
/* background-color: #6c6e6b; */ /* background-color: #6c6e6b; */
} }
.tab-nav {
z-index: 2;
}
.tab-content .tab-pane { .tab-content .tab-pane {
display: none; display: none;
/* visibility: hidden; */ /* visibility: hidden; */
@ -252,7 +257,7 @@
} }
.dataset_heaader { .dataset_header {
/* // background-color: lightgray; */ /* // background-color: lightgray; */
position: relative; position: relative;
} }
@ -281,13 +286,13 @@
right: -20px; right: -20px;
line-height: 1; line-height: 1;
font-weight: 900; font-weight: 900;
z-index: 0; z-index: -1;
} }
.dataset__blog-meta { .dataset__blog-meta {
padding: 10px 0 20px; padding: 10px 0 20px;
color: #c2c2c2; color: #c2c2c2;
// font-size: 0.8em; /* font-size: 0.8em; */
margin-top: -1.7em; margin-top: -1.7em;
} }
</style> </style>

View File

@ -1,4 +1,5 @@
<?php <?php
use DaveJamesMiller\Breadcrumbs\Facades\Breadcrumbs;
// Dashboard // Dashboard
Breadcrumbs::register('settings.dashboard', function ($trail) { Breadcrumbs::register('settings.dashboard', function ($trail) {