Two asset maintence related fixes (#3101)

* Fix maintenances create button, and post to the proper route in maintences edit

* Fix consumable tab when active.

* Fix an html formatting error that resulted in us not closing a form.  This would cause the checkin page to try to submit a delete request (related to the modal form) rather than the desired checkin request.  Also fix formatting in this file.

* Use log mail driver for testing, should fix the functional issue.  Disable acceptance tests on travis for now.

* Fix Category edit page.

* EOL Can be null.
This commit is contained in:
Daniel Meltzer 2016-12-26 18:17:12 -05:00 committed by snipe
parent 57374955a8
commit fd450e2773
8 changed files with 108 additions and 103 deletions

View file

@ -21,7 +21,7 @@ DB_PASSWORD=null
# --------------------------------------------
# REQUIRED: OUTGOING MAIL SERVER SETTINGS
# --------------------------------------------
MAIL_DRIVER=smtp
MAIL_DRIVER=log
MAIL_HOST=email-smtp.us-west-2.amazonaws.com
MAIL_PORT=587
MAIL_USERNAME=YOURUSERNAME

View file

@ -37,7 +37,7 @@ before_script:
# script: ./vendor/bin/codecept run --env testing-ci
script:
- ./vendor/bin/codecept run unit --env testing-ci
- ./vendor/bin/codecept run acceptance --env=testing-ci
# - ./vendor/bin/codecept run acceptance --env=testing-ci
- ./vendor/bin/codecept run functional --env=functional-travis
#script: ./vendor/bin/codecept run

View file

@ -103,12 +103,9 @@ class CategoriesController extends Controller
// Redirect to the blogs management page
return redirect()->to('admin/settings/categories')->with('error', trans('admin/categories/message.does_not_exist'));
}
$category_options = array('' => 'Top Level') + DB::table('categories')->where('id', '!=', $categoryId)->lists('name', 'id');
$category_types= Helper::categoryTypeList();
return View::make('categories/edit', compact('item'))
->with('category_options', $category_options)
->with('category_types', $category_types);
}

View file

@ -28,7 +28,7 @@ class AssetModel extends SnipeModel
'model_number' => 'min:1|max:255',
'category_id' => 'required|integer',
'manufacturer_id' => 'required|integer',
'eol' => 'integer:min:0|max:240',
'eol' => 'integer:min:0|max:24|nullable',
);
/**

View file

@ -24,14 +24,15 @@
<div class="row">
<div class="col-md-9">
<form class="form-horizontal" method="post" action="{{ route('maintenances.store') }}" autocomplete="off">
@if ($item->id)
<form class="form-horizontal" method="post" action="{{ route('maintenances.update', $item->id) }}" autocomplete="off">
{{ method_field('PUT') }}
@else
<form class="form-horizontal" method="post" action="{{ route('maintenances.store') }}" autocomplete="off">
@endif
<!-- CSRF Token -->
<input type="hidden" name="_token" value="{{ csrf_token() }}" />
@if ($item->id)
{{ method_field('PUT') }}
@endif
<div class="box box-default">
<div class="box-header with-border">

View file

@ -2,113 +2,120 @@
{{-- Page title --}}
@section('title')
{{ trans('admin/hardware/general.checkin') }}
@parent
{{ trans('admin/hardware/general.checkin') }}
@parent
@stop
{{-- Page content --}}
@section('content')
<style>
<style>
.input-group {
padding-left: 0px !important;
}
</style>
.input-group {
padding-left: 0px !important;
}
</style>
<div class="row">
<div class="row">
<!-- left column -->
<div class="col-md-9">
<!-- left column -->
<div class="col-md-9">
<div class="box box-default">
<div class="box-header with-border">
<h3 class="box-title">{{ trans('admin/hardware/form.tag') }} {{ $asset->asset_tag }}</h3>
</div><!-- /.box-header -->
<div class="box box-default">
<div class="box-header with-border">
<h3 class="box-title">{{ trans('admin/hardware/form.tag') }} {{ $asset->asset_tag }}</h3>
</div><!-- /.box-header -->
<div class="box-body">
<div class="col-md-12">
<div class="box-body">
<div class="col-md-12">
@if ($backto=='user')
<form class="form-horizontal" method="post" action="{{ route('checkin/hardware', array('assetId'=> $asset->id, 'backto'=>'user')) }}" autocomplete="off">
@else
<form class="form-horizontal" method="post" action="{{ route('checkin/hardware', $asset->id) }}" autocomplete="off">
@endif
<!-- CSRF Token -->
<input type="hidden" name="_token" value="{{ csrf_token() }}" />
@if ($backto=='user')
<form class="form-horizontal" method="post"
action="{{ route('checkin/hardware', array('assetId'=> $asset->id, 'backto'=>'user')) }}"
autocomplete="off">
@else
<form class="form-horizontal" method="post"
action="{{ route('checkin/hardware', $asset->id) }}" autocomplete="off">
@endif
<!-- CSRF Token -->
<input type="hidden" name="_token" value="{{ csrf_token() }}"/>
@if ($asset->model->name)
<!-- Asset name -->
<div class="form-group">
@if ($asset->model->name)
<!-- Asset name -->
<div class="form-group">
{{ Form::label('name', trans('admin/hardware/form.model'), array('class' => 'col-md-3 control-label')) }}
{{ Form::label('name', trans('admin/hardware/form.model'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-8">
<p class="form-control-static">{{ $asset->model->name }}</p>
</div>
</div>
@endif
<!-- Asset Name -->
<div class="form-group {{ $errors->has('name') ? 'error' : '' }}">
{{ Form::label('name', trans('admin/hardware/form.name'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-8">
<input class="form-control" type="text" name="name" id="name"
value="{{ Input::old('name', $asset->name) }}"/>
{!! $errors->first('name', '<span class="alert-msg"><i class="fa fa-times"></i> :message</span>') !!}
</div>
</div>
<!-- Status -->
<div class="form-group {{ $errors->has('status_id') ? 'error' : '' }}">
{{ Form::label('name', trans('admin/hardware/form.status'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-7 required">
{{ Form::select('status_id', $statusLabel_list, '', array('class'=>'select2', 'style'=>'width:100%','id' =>'modal-statuslabel_types')) }}
{!! $errors->first('status_id', '<span class="alert-msg"><i class="fa fa-times"></i> :message</span>') !!}
</div>
</div>
<!-- Checkout/Checkin Date -->
<div class="form-group {{ $errors->has('checkin_at') ? 'error' : '' }}">
{{ Form::label('name', trans('admin/hardware/form.checkin_date'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-8">
<div class="col-md-4 input-group required">
<input type="date" class="datepicker form-control"
data-date-format="yyyy-mm-dd" placeholder="Checkin Date"
name="checkin_at" id="checkin_at"
value="{{ Input::old('checkin_at', date('Y-m-d')) }}">
<span class="input-group-addon"><i
class="fa fa-calendar"></i></span>
</div>
{!! $errors->first('checkin_at', '<span class="alert-msg"><i class="fa fa-times"></i> :message</span>') !!}
</div>
</div>
<!-- Note -->
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
{{ Form::label('note', trans('admin/hardware/form.notes'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-8">
<textarea class="col-md-6 form-control" id="note"
name="note">{{ Input::old('note', $asset->note) }}</textarea>
{!! $errors->first('note', '<span class="alert-msg"><i class="fa fa-times"></i> :message</span>') !!}
</div>
</div>
<button type="submit" class="btn btn-success pull-right"><i
class="fa fa-check icon-white"></i> {{ trans('general.checkin') }}</button>
</form>
</div>
</div>
<div class="box-footer">
<a class="btn btn-link" href="{{ URL::previous() }}"> {{ trans('button.cancel') }}</a>
</div>
</div>
<div class="col-md-8">
<p class="form-control-static">{{ $asset->model->name }}</p>
</div>
</div>
@endif
<!-- Asset Name -->
<div class="form-group {{ $errors->has('name') ? 'error' : '' }}">
{{ Form::label('name', trans('admin/hardware/form.name'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-8">
<input class="form-control" type="text" name="name" id="name" value="{{ Input::old('name', $asset->name) }}" />
{!! $errors->first('name', '<span class="alert-msg"><i class="fa fa-times"></i> :message</span>') !!}
</div>
</div>
<!-- Status -->
<div class="form-group {{ $errors->has('status_id') ? 'error' : '' }}">
{{ Form::label('name', trans('admin/hardware/form.status'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-7 required">
{{ Form::select('status_id', $statusLabel_list, '', array('class'=>'select2', 'style'=>'width:100%','id' =>'modal-statuslabel_types')) }}
{!! $errors->first('status_id', '<span class="alert-msg"><i class="fa fa-times"></i> :message</span>') !!}
</div>
</div>
<!-- Checkout/Checkin Date -->
<div class="form-group {{ $errors->has('checkin_at') ? 'error' : '' }}">
{{ Form::label('name', trans('admin/hardware/form.checkin_date'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-8">
<div class="col-md-4 input-group required">
<input type="date" class="datepicker form-control" data-date-format="yyyy-mm-dd" placeholder="Checkin Date" name="checkin_at" id="checkin_at" value="{{ Input::old('checkin_at', date('Y-m-d')) }}">
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
</div>
{!! $errors->first('checkin_at', '<span class="alert-msg"><i class="fa fa-times"></i> :message</span>') !!}
</div>
</div>
<!-- Note -->
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
{{ Form::label('note', trans('admin/hardware/form.notes'), array('class' => 'col-md-3 control-label')) }}
<div class="col-md-8">
<textarea class="col-md-6 form-control" id="note" name="note">{{ Input::old('note', $asset->note) }}</textarea>
{!! $errors->first('note', '<span class="alert-msg"><i class="fa fa-times"></i> :message</span>') !!}
</div>
</div>
</div>
</div>
<div class="box-footer">
<a class="btn btn-link" href="{{ URL::previous() }}"> {{ trans('button.cancel') }}</a>
<button type="submit" class="btn btn-success pull-right"><i class="fa fa-check icon-white"></i> {{ trans('general.checkin') }}</button>
</div>
</div>
</div>
</div>
@stop

View file

@ -498,7 +498,7 @@
<div class="col-md-12">
@can('update', \App\Models\Asset::class)
<h6>{{ trans('general.asset_maintenances') }}
[ <a href="{{ route('maintenances.edit', ['asset_id'=>$asset->id]) }}">{{ trans('button.add') }}</a> ]
[ <a href="{{ route('maintenances.create', ['asset_id'=>$asset->id]) }}">{{ trans('button.add') }}</a> ]
</h6>
@endcan

View file

@ -150,7 +150,7 @@
</li>
@endcan
@can('index', \App\Models\Consumable::class)
<li {!! (Request::is('consunmables*') ? ' class="active"' : '') !!}>
<li {!! (Request::is('consumables*') ? ' class="active"' : '') !!}>
<a href="{{ url('consumables') }}">
<i class="fa fa-tint"></i>
</a>