feature updates 21.05.2019

This commit is contained in:
Arno Kaimbacher 2019-05-21 18:28:18 +02:00
parent ec4ffbdcee
commit 178d0e7f6b
15 changed files with 271 additions and 53 deletions

View file

@ -39,10 +39,10 @@ class EditorController extends Controller
->where('server_state', 'released')
// ->whereIn('server_state', ['released'])
->orWhere(function ($query) use ($user_id) {
$query->where('server_state', 'editor_accepted')
$query->whereIn('server_state', ['editor_accepted', 'rejected_reviewer', 'reviewed'])
->where('editor_id', $user_id);
})
->orderBy('server_state')
->orderBy('server_date_modified', 'desc')
->get();
return view('workflow.editor.index', compact('datasets'));
}
@ -210,6 +210,7 @@ class EditorController extends Controller
$dataset = Dataset::findOrFail($id);
$input = $request->all();
$input['server_state'] = 'approved';
$input['reject_reviewer_note'] = '';
if ($dataset->update($input)) {
// event(new PageUpdated($page));
@ -219,4 +220,37 @@ class EditorController extends Controller
}
throw new GeneralException(trans('exceptions.publish.approve.update_error'));
}
/**
* Reject dataset back to editor
*
* @param int $id
* @return \Illuminate\View\View
*/
public function reject($id): View
{
$dataset = Dataset::with('user:id,login')->findOrFail($id);
return view('workflow.editor.reject', [
'dataset' => $dataset,
]);
}
public function rejectUpdate(Request $request, $id)
{
$this->validate(request(), [
'reject_editor_note' => 'required|min:10|max:255',
'server_state' => 'required'
]);
$dataset = Dataset::findOrFail($id);
$input = $request->all();
//$input['server_state'] = 'rejected_editor';
if ($dataset->update($input)) {
// event(new PageUpdated($page));
return redirect()
->route('publish.workflow.editor.index')
->with('flash_message', 'You have successfully rejected one dataset! The submitter will be informed.');
}
throw new GeneralException(trans('exceptions.publish.review.update_error'));
}
}

View file

@ -142,6 +142,25 @@ class ReviewController extends Controller
]);
}
public function rejectUpdate(Request $request, $id)
{
$this->validate(request(), [
'reject_reviewer_note' => 'required|min:10|max:255',
'server_state' => 'required'
]);
$dataset = Dataset::findOrFail($id);
$input = $request->all();
//$input['server_state'] = 'rejected_reviewer';
if ($dataset->update($input)) {
// event(new PageUpdated($page));
return redirect()
->route('publish.workflow.review.index')
->with('flash_message', 'You have successfully rejected one dataset! The editor will be informed.');
}
throw new GeneralException(trans('exceptions.publish.review.update_error'));
}
//snakeToCamel
private static function convertColumnToFieldname($columnname)
{

View file

@ -26,9 +26,10 @@ class SubmitController extends Controller
$builder = Dataset::query();
$myDatasets = $builder
->orderBy('server_state')
->whereIn('server_state', ['inprogress', 'released', 'editor_accepted', 'approved', 'reviewed'])
->whereIn('server_state', ['inprogress', 'released', 'editor_accepted', 'approved', 'reviewed', 'rejected_editor', 'rejected_reviewer'])
->where('account_id', $user_id)
->with('user:id,login')
->orderBy('server_date_modified', 'desc')
->get();
return view('workflow.submitter.index', [
'datasets' => $myDatasets,
@ -66,7 +67,7 @@ class SubmitController extends Controller
if ($dataset->update($input)) {
// event(new PageUpdated($page));
return redirect()
->route('publish.workflow.index')
->route('publish.workflow.submit.index')
->with('flash_message', 'You have released your dataset!');
}
throw new GeneralException(trans('exceptions.publish.release.update_error'));
@ -81,7 +82,7 @@ class SubmitController extends Controller
public function delete($id): RedirectResponse
{
$dataset = Dataset::with('files')->findOrFail($id);
if ($dataset->server_state != "inprogress") {
if ($dataset->server_state != "inprogress" || $dataset->server_state != "rejected_editor") {
session()->flash(
'flash_message',
'You cannot delete this datastet!'