git -C '/home/opc/rocketa.git' show f393a5a -- resources/views/media/company/regist.blade.phpcommit f393a5a0fad5dd498bf6f58ad344360076cf9d89
Author: Satoshi Ujihara <satoshi_ujihara@fivegate.jp>
Date: Fri Dec 19 19:36:07 2025 +0900
メニュータイトルの仕様変更
銀行コピーのアップロード機能
diff --git a/resources/views/media/company/regist.blade.php b/resources/views/media/company/regist.blade.php
index d290c18..077d598 100644
--- a/resources/views/media/company/regist.blade.php
+++ b/resources/views/media/company/regist.blade.php
@@ -5,7 +5,7 @@
ページタイトル定義
ここのタイトルがapp.bladeに読み込まれます。
--}}
-@section('title', '登録情報編集')
+@section('title', __('company-regist.edit_registration_info'))
{{-- コンテンツ内容 .main_col内 --}}
@section('content')
@@ -13,7 +13,7 @@
<h2 class="mb-3 pb-2 border-bottom">{{__('company-regist.edit_registration_info')}}</h2>
@if (!isset($datas['action']))
- {{ Form::open() }}
+ {{ Form::open(['files'=> true]) }}
<div class="form_box border mb-3">
<h5 class="mb-0 text-white bg-dark form_head">{{__('company-regist.basic_info')}}</h5>
@@ -325,7 +325,7 @@
</div>
</div><!-- /.form-group -->
- <div class="form-group row m-0">
+ <div class="form-group row m-0 border-bottom">
<div class="col-sm-2 px-0 bg-gray d-flex align-items-center">
{{ Form::label('',__('company-regist.account_holder_kana').'<span class="required">'.__('company-regist.required').'</span>', ['class'=>'px-2 col-form-label'], false) }}
</div>
@@ -340,8 +340,53 @@
</div>
</div>
</div><!-- /.form-group -->
+
+ <div class="form-group row m-0">
+ <div class="col-sm-2 px-0 bg-gray d-flex align-items-center">
+ {{ Form::label('',__('company-detail.bank_account_copy'), ['class'=>'px-2 col-form-label'], false) }}
+ </div>
+ <div class="col-sm-10 px-0 d-flex align-items-center">
+ <div class="p-2 w-100">
+ <div class="container mt-5">
+ <label class="file-upload-area w-100 p-5 text-center" id="dropArea">
+ <input type="file" name="bank_copy" class="d-none" id="fileInput">
+
+ <div id="defaultContent">
+ <div class="mb-3">
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" fill="currentColor" class="bi bi-upload text-dark" viewBox="0 0 16 16">
+ <path d="M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5z"/>
+ <path d="M7.646 1.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 2.707V11.5a.5.5 0 0 1-1 0V2.707L5.354 4.854a.5.5 0 0 1-.708-.708l3-3z"/>
+ </svg>
+ </div>
+ <p class="mb-1 text-secondary fw-bold">{{__('company-detail.file_drag_and_drop')}}</p>
+ <p class="text-secondary small mb-0">{{__('company-detail.pdf_png_jpeg')}}</p>
+ </div>
+
+ <div id="fileContent" class="d-none">
+ <div class="mb-3">
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" fill="currentColor" class="bi bi-file-earmark-check text-success" viewBox="0 0 16 16">
+ <path d="M10.854 7.854a.5.5 0 0 0-.708-.708L7.5 9.793 6.354 8.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z"/>
+ <path d="M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z"/>
+ </svg>
+ </div>
+ <h5 class="fw-bold text-dark" id="fileNameDisplay"></h5>
+ <p class="text-primary small mb-0">{{__('company-detail.click_to_change')}}</p>
+ </div>
+ </label>
+ </div>
+
+ @if($errors->has('bank_copy'))
+ <div class="err_msg mt-2">{{ $errors->first('bank_copy') }}</div>
+ @endif
+ </div>
+ </div>
+ </div><!-- /.form-group -->
+
</div><!-- /.form_box -->
+
+
+
<div class="area_btn">
<div class="row mx-0 mb-3 justify-content-center">
<div class="col-md-8 p-0">
@@ -354,7 +399,7 @@
{{ Form::close() }}
@else
- {{ Form::open() }}
+ {{ Form::open(['files'=> true]) }}
<div class="form_box border mb-3">
<h5 class="mb-0 text-white bg-dark form_head">{{__('company-regist.basic_info')}}</h5>
@@ -596,7 +641,7 @@
</div>
</div><!-- /.form-group -->
- <div class="form-group row m-0">
+ <div class="form-group row m-0 border-bottom">
<div class="col-sm-2 px-0 bg-gray d-flex align-items-center">
<div class="px-2 col-form-label">{{__('company-regist.account_holder_kana')}}</div>
</div>
@@ -607,6 +652,17 @@
</div>
</div>
</div><!-- /.form-group -->
+ <div class="form-group row m-0">
+ <div class="col-sm-2 px-0 bg-gray d-flex align-items-center">
+ <div class="px-2 col-form-label">{{__('company-detail.bank_account_copy')}}</div>
+ </div>
+
+ <div class="col-sm-10 px-0 d-flex align-items-center">
+ <div class="px-2 py-3 w-100">
+ {{ $datas['bank_copy_file_name'] ?? '' }}
+ </div>
+ </div>
+ </div><!-- /.form-group -->
</div><!-- /.form_box -->
<div class="area_btn">
@@ -629,3 +685,68 @@
{{ Form::close() }}
@endif
@endsection
+
+
+@section('respectively_js')
+<script>
+//画像drac & drop start
+ const dropArea = document.getElementById('dropArea');
+ const fileInput = document.getElementById('fileInput');
+ const defaultContent = document.getElementById('defaultContent');
+ const fileContent = document.getElementById('fileContent');
+ const fileNameDisplay = document.getElementById('fileNameDisplay');
+
+ // 1. クリックしてファイルを選択した場合の処理
+ fileInput.addEventListener('change', function(e) {
+ handleFiles(this.files);
+ });
+
+ // 2. ドラッグ&ドロップの処理
+ // デフォルトの挙動(ブラウザでファイルが開く)を無効化
+ ['dragenter', 'dragover', 'dragleave', 'drop'].forEach(eventName => {
+ dropArea.addEventListener(eventName, preventDefaults, false);
+ });
+
+ function preventDefaults(e) {
+ e.preventDefault();
+ e.stopPropagation();
+ }
+
+ // ドラッグ中(見た目を変える)
+ ['dragenter', 'dragover'].forEach(eventName => {
+ dropArea.addEventListener(eventName, () => dropArea.classList.add('dragover'), false);
+ });
+
+ // ドラッグ終了(見た目を戻す)
+ ['dragleave', 'drop'].forEach(eventName => {
+ dropArea.addEventListener(eventName, () => dropArea.classList.remove('dragover'), false);
+ });
+
+ // ドロップ時の処理
+ dropArea.addEventListener('drop', function(e) {
+ const dt = e.dataTransfer;
+ const files = dt.files;
+
+ // 重要: ドロップされたファイルをinputタグに設定する
+ // これで通常のinput type=fileで選んだのと同じ状態になります
+ fileInput.files = files;
+
+ handleFiles(files);
+ });
+
+ // 共通: ファイルが設定されたら表示を切り替える関数
+ function handleFiles(files) {
+ if (files.length > 0) {
+ const file = files[0];
+ // ファイル名を表示
+ fileNameDisplay.textContent = file.name;
+
+ // 表示エリアを切り替え
+ defaultContent.classList.add('d-none');
+ fileContent.classList.remove('d-none');
+ }
+ }
+//画像drac & drop end
+
+</script>
+@endsection