Blame view

resources/views/workers/sertificate_add.blade.php 5.3 KB
d4632b7a2   Сергей П   Анкета работника
1
2
3
4
  @extends('workers.cabinet_layout', ['title' => 'Добавление стандартного документа - РекаМоре'])
  
  @section('cabinet_content')
  <h3 class="cabinet__h4 font30">Сертификат / документ</h3>
d721fd846   Сергей П   правки по сообщен...
5
  <div class="cabinet__inputs">
d4632b7a2   Сергей П   Анкета работника
6
7
      @csrf
      <input type="hidden" name="worker_id" id="worker_id" class="input" value="{{ $worker->id }}">
d721fd846   Сергей П   правки по сообщен...
8
      <div class="error-block"></div>
d4632b7a2   Сергей П   Анкета работника
9
      <div class="cabinet__body-item width100">
2b21634e3   Hayk Nazaryan   workers profile p...
10
          <div class="cabinet__inputs sertificate-form-inputs">
d4632b7a2   Сергей П   Анкета работника
11
12
13
14
15
16
              <div class="cabinet__inputs-item form-group">
                  <label class="form-group__label">Название сертификата:</label>
                  <div class="form-group__item">
                      @error('name')
                          <div class="error red">{{ $message }}</div>
                      @enderror
e60a32501   Сергей П   Измененения для р...
17
                      <input type="text" name="name" id="name" class="input" value="{{ old('name') ?? '' }}" required>
b3d27fa36   Андрей Ларионов   Обновление проект...
18
                  </div>
d4632b7a2   Сергей П   Анкета работника
19
20
21
22
23
24
25
              </div>
              <div class="cabinet__inputs-item form-group">
                  <label class="form-group__label">Действия сертификата до:</label>
                  <div class="form-group__item">
                      @error('end_begin')
                          <div class="error red">{{ $message }}</div>
                      @enderror
2b21634e3   Hayk Nazaryan   workers profile p...
26
27
28
29
30
31
32
33
                      <input
                          type="text"
                          name="end_begin"
                          id="end_begin"
                          class="input"
                          placeholder="11.11.2011"
                          value="{{ old('end_begin') ?? '' }}"
                          required>
b3d27fa36   Андрей Ларионов   Обновление проект...
34
35
36
                  </div>
              </div>
          </div>
b3d27fa36   Андрей Ларионов   Обновление проект...
37

d4632b7a2   Сергей П   Анкета работника
38
          <div class="flex">
d721fd846   Сергей П   правки по сообщен...
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
              <button class="button add-serificate-button mr-10">Сохранить</button>
              <a href="{{ route('worker.cabinet') }}" class="button button_light">Назад</a>
          </div>
      </div>
  </div>
  
  <div class="hide">
      <div id="after_add_serificate_chat" class="modal-dialog">
          <div class="modal-dialog-title">
              <h2>Сертификат / документ успешно добавлен</h2>
          </div>
          <div class="modal-dialog-body pt-20"></div>
          <div class="modal-dialog-footer center">
              <a href="{{ route('worker.new_sertificate',['worker' => $worker->id]) }}" class="button remove-chat-button mr-20">Добавить еще</a>
              <a href="{{ route('worker.cabinet') }}" class="button button_light" onclick="$.fancybox.close();">Закончить</a>
d4632b7a2   Сергей П   Анкета работника
54
55
          </div>
      </div>
d721fd846   Сергей П   правки по сообщен...
56
57
58
59
60
61
62
63
64
65
66
      <button class="open-after_add_serificate_chat-button" data-fancybox data-src="#after_add_serificate_chat"></button>
  </div>
  @endsection
  
  @section('scripts')
      <script>
          $(function(){
              $('.add-serificate-button').click(function(){
                  var this_btn = $(this);
                  spinStart(this_btn);
                  var wrap = this_btn.closest('.cabinet__inputs');
2b21634e3   Hayk Nazaryan   workers profile p...
67
68
                  var name = wrap.find('[name="name"]').val().trim();
                  var end_date = wrap.find('[name="end_begin"]').val().trim();
d721fd846   Сергей П   правки по сообщен...
69
                  var worker_id = wrap.find('[name="worker_id"]').val();
2b21634e3   Hayk Nazaryan   workers profile p...
70
                  var date_format_regex = /^\d{2}\.\d{2}\.\d{4}$/; // Format: DD.MM.YYYY
d721fd846   Сергей П   правки по сообщен...
71
72
73
74
75
76
77
78
79
80
81
  
                  wrap.find('.error-block').html('');
                  wrap.find('input').removeClass('border-red');
  
                  if (!name) {
                      wrap.find('[name="name"]').addClass('border-red');
                      spinStop(this_btn);
                      return;
                  }
                  if (!end_date) {
                      wrap.find('[name="end_begin"]').addClass('border-red');
2b21634e3   Hayk Nazaryan   workers profile p...
82
83
84
85
86
87
                      wrap.find('[name="end_begin"]').after('<span class="error-block">Поле "Дата окончания" обязательно для заполнения.</span>');
                      spinStop(this_btn);
                      return;
                  } else if (!date_format_regex.test(end_date)) {
                      wrap.find('[name="end_begin"]').addClass('border-red');
                      wrap.find('[name="end_begin"]').after('<span class="error-block">Неверный формат даты (дд.мм.гггг).</span>');
d721fd846   Сергей П   правки по сообщен...
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
                      spinStop(this_btn);
                      return;
                  }
  
                  $.ajax({
                      type: 'POST',
                      url: "{{ route('worker.add_serificate') }}",
                      data: {
                          worker_id: worker_id,
                          name: name,
                          end_begin: end_date
                      },
                      dataType: 'json',
                      headers: {
                          'X-CSRF-TOKEN': $('[name="_token"]').val()
                      },
                      success: function(res){
d721fd846   Сергей П   правки по сообщен...
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
                          spinStop(this_btn);
                          $('.open-after_add_serificate_chat-button').click();
                      },
                      error: function(jqXHR, exception){
                          if (jqXHR && jqXHR.responseJSON && jqXHR.responseJSON.message){
                              wrap.find('.error-block').html(jqXHR.responseJSON.message);
                          }
                          spinStop(this_btn);
                      }
                  });
              });
  
  
          });
      </script>
b3d27fa36   Андрей Ларионов   Обновление проект...
120
  @endsection