Advertisement
majweb

Untitled

Aug 20th, 2017
403
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.67 KB | None | 0 0
  1. Route:
  2. Route::post('/przyrzady/zapisz','ToolController@store')->name('tool.zapisz');
  3. method:
  4. public function store(Request $request)
  5. {
  6.  
  7. $tool = new Tool();
  8. $tool->przyrzad = $request->przyrzad;
  9. $tool->ilosc = $request->ilosc;
  10. if ($request->hasFile('photo'))
  11. {
  12. $image = $request->file('photo');
  13. $imagename = uniqid('przyrzad_').'.'. $image->getClientOriginalExtension();
  14. $image->storeAs('public/obiekty/przyrzady/', $imagename);
  15. $tool->photo = $imagename;
  16. }
  17.  
  18. $tools->save();
  19. return redirect()->route('tool.index')->with(['success' => 'Dodałeś przyrząd']);
  20. }
  21. view:
  22. @extends('obiekt.master')
  23. @section('pageTitle', 'Tworzenie przyrządu')
  24. @push('styles')
  25. <link rel="stylesheet" href="{{asset('css/croppie.css')}}">
  26. @endpush
  27. @section('content')
  28.  
  29.  
  30. <form action="{{ route('tool.zapisz') }}" method="POST" novalidate enctype="multipart/form-data">
  31. {{ csrf_field() }}
  32. <div class="form-group @if ($errors->has('przyrzad')) has-error @endif">
  33. <label for="przyrzad">Nazwa przyrządu</label>
  34. <div class="input-group">
  35. <span class="input-group-addon"><i class="fa fa-paint-brush"></i></span>
  36. <input type="text" name="przyrzad" class="form-control" placeholder="Nazwa przyrzadu" value="{{old('przyrzad')}}" autofocus>
  37. </div>
  38. @if ($errors->has('przyrzad')) <p class="help-block">{{ $errors->first('przyrzad') }}</p> @endif
  39. </div>
  40. <div class="form-group @if($errors->has('part')) has-error @endif">
  41. <label for="part">Część ciała</label>
  42. <select name="part[]" id="part" class="form-control select2-multi" multiple="multiple">
  43. @foreach($parts as $one)
  44. <option value="{{$one->id}}">{{$one->name}}</option>
  45. @endforeach
  46. </select>
  47. @if ($errors->has('part')) <p class="help-block">{{ $errors->first('part') }}</p> @endif
  48. </div>
  49. <div id="upload-into"></div>
  50. <div class="form-group @if ($errors->has('photo')) has-error @endif">
  51. <div id="upload-demo" style="width:350px"></div>
  52. <label for="photo">Wrzuć zdjęcie</label>
  53. <div class="input-group">
  54. <span class="input-group-addon"><i class="fa fa-paint-brush"></i></span>
  55. <input type="file" name="photo" class="form-control" placeholder="Wrzuć zdjęcie" id="uploading">
  56. </div>
  57. @if ($errors->has('photo')) <p class="help-block">{{ $errors->first('photo') }}</p> @endif
  58. </div>
  59. <div class="form-group @if ($errors->has('ilosc')) has-error @endif">
  60. <label for="ilosc">Liczba przyrządów</label>
  61. <div class="input-group">
  62. <span class="input-group-addon"><i class="fa fa-paint-brush"></i></span>
  63. <input type="text" name="ilosc" class="form-control" placeholder="Wpisz liczbę" value="{{old('ilosc')}}">
  64. </div>
  65. @if ($errors->has('ilosc')) <p class="help-block">{{ $errors->first('ilosc') }}</p> @endif
  66. </div>
  67. <div class="form-group">
  68. <input type="submit" value="Dodaj Przyrząd" class="btn btn-success pull-right">
  69. </div>
  70. </form>
  71. @endsection
  72. @push('scripts')
  73. <script src="{{asset('js/select2.min.js')}}"></script>
  74. <script src="{{asset('js/croppie.js')}}"></script>
  75. <script>
  76. $.ajaxSetup({
  77. headers: {
  78. 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  79. }
  80. });
  81.  
  82. $uploadCrop = $('#upload-into').croppie({
  83. viewport: {
  84. width: 200,
  85. height: 200,
  86. type: 'square'
  87. },
  88. boundary: {
  89. width: 300,
  90. height: 300
  91. },
  92. enableExif: true
  93. });
  94.  
  95. $('#uploading').on('change', function () {
  96. var reader = new FileReader();
  97. reader.onload = function (e) {
  98. $uploadCrop.croppie('bind', {
  99. url: e.target.result
  100. }).then(function(e){
  101. console.log('jQuery bind complete');
  102. });
  103. }
  104. reader.readAsDataURL(this.files[0]);
  105. });
  106. $('.upload-result').on('click', function (ev) {
  107. $uploadCrop.croppie('result', {
  108. type: 'canvas',
  109. size: 'viewport'
  110. }).then(function (resp) {
  111. console.log(resp);
  112. });
  113. });
  114. $('.select2-multi').select2({
  115. placeholder: 'Wybierz część ciała',
  116. allowClear: true,
  117. language: "pl"
  118. });
  119. </script>
  120. @endpush
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement