diff --git a/app/Libs/TraitBoard.php b/app/Libs/TraitBoard.php index dfc62c5..508abe8 100644 --- a/app/Libs/TraitBoard.php +++ b/app/Libs/TraitBoard.php @@ -257,7 +257,7 @@ trait TraitBoard $postData = $request->only([ 'board_id', 'category', 'notice', - 'name', 'email', 'phone', + 'name', 'email', 'phone', 'zone', 'subject', 'content', 'related_link' ]); $postData = array_map('setDefault', $postData); diff --git a/app/Models/BoardArticle.php b/app/Models/BoardArticle.php index 7a3e46e..e96f2b5 100644 --- a/app/Models/BoardArticle.php +++ b/app/Models/BoardArticle.php @@ -16,7 +16,7 @@ class BoardArticle extends BaseSoftDeleteModel protected $fillable = [ 'board_id', 'uid', 'notice', 'image', 'category', - 'name', 'email', 'phone', + 'name', 'email', 'phone', 'zone', 'subject', 'content', 'related_link', 'view_count', 'created_id', 'created_at' @@ -33,7 +33,7 @@ class BoardArticle extends BaseSoftDeleteModel protected $visible = [ 'id', 'board_id', 'uid', 'notice', 'image', 'category', - 'name', 'email', 'phone', + 'name', 'email', 'phone', 'zone', 'subject', 'content', 'related_link', 'view_count', 'created_id', 'created_at', diff --git a/app/Services/DiskFileService.php b/app/Services/DiskFileService.php index 3e4f7ae..18efb3e 100644 --- a/app/Services/DiskFileService.php +++ b/app/Services/DiskFileService.php @@ -87,7 +87,7 @@ class DiskFileService implements FileInterface $data['size'] = $file->getSize(); $data['ext'] = strtolower($file->getClientOriginalExtension()); $data['count'] = 0; - $data['created_id'] = $user->id; + $data['created_id'] = $user ? $user->id : null; if ($file->move($destinationPath, $save_name)) { if (in_array($data['type'], $allowedImageMimeTypes)) { diff --git a/database/migrations/2022_08_22_100004_create_board_article_table.php b/database/migrations/2022_08_22_100004_create_board_article_table.php index d6aff37..9cbc620 100644 --- a/database/migrations/2022_08_22_100004_create_board_article_table.php +++ b/database/migrations/2022_08_22_100004_create_board_article_table.php @@ -25,6 +25,7 @@ class CreateBoardArticleTable extends Migration $table->string('phone', 100)->default('')->comment('연락처'); $table->string('subject', 255)->default('')->comment('제목'); $table->text('content')->nullable()->comment('내용'); + $table->string('related_link', 255)->comment('관련링크'); $table->integer('view_count')->default(0)->comment('조희수'); $table->unsignedInteger('created_id')->nullable()->comment('등록 회원번호'); $table->unsignedInteger('updated_id')->nullable()->comment('수정 회원번호'); diff --git a/public/css/admin.css b/public/css/admin.css index 4b03a69..af9def3 100644 --- a/public/css/admin.css +++ b/public/css/admin.css @@ -292,7 +292,7 @@ textarea.required { font-weight: 500; } -.form-check-list.disable { +.form-group-box.disable { background-color: #f3f3f3; } .form-check-list input[type="checkbox"], @@ -666,3 +666,25 @@ textarea.required { top: 0.3rem; right: 0.3rem; } + +.upload-file { + display: block; + width: 100%; + padding: 0.7rem 0.875rem; + background-color: #e9ecef; + background-clip: padding-box; + border: 1px solid #e9ecef; + border-radius: 4px; +} + +.file-item-box { + background-color: #e9ecef; +} + +.file-item-box a { + color: #495057; +} + +.file-item-box a:hover { + color: #f30; +} diff --git a/public/css/main.css b/public/css/main.css index 8455dfa..60995a2 100644 --- a/public/css/main.css +++ b/public/css/main.css @@ -15,6 +15,19 @@ font-size: 1.1rem; } +.hand { + cursor: pointer; +} + +.file-add { + position: absolute; + top: 2px; + right: 13px; +} +.file-add i { + font-size: 1.4rem; +} + .g-main figure .g-img, .g-main figure .img-wrapper img { -webkit-backface-visibility: hidden; diff --git a/public/js/main.js b/public/js/main.js index 89e3a4c..7f98eec 100644 --- a/public/js/main.js +++ b/public/js/main.js @@ -5,27 +5,51 @@ $(document).ready(function() { $(this).remove(); }); - $('#writeForm').submit(function () { + $('#writeForm').submit(function (e) { if (!$("#name").checkEmpty('이름 또는 업체명을 입력해 주세요.')) return false; if (!$("#email").checkEmpty('이메일 주소를 입력해 주세요.')) return false; - if (!$("#subject").checkEmpty('제목을을 입력해 주세요.')) return false; + if (!$("#phone").checkEmpty('연락처를 입력해 주세요.')) return false; + if (!$("#zone").checkEmpty('지역을 입력해 주세요.')) return false; + if (!$("#subject").checkEmpty('제목을 입력해 주세요.')) return false; if (!$("#content").checkEmpty('문의내용을 입력해 주세요.')) return false; - $.post($(this).attr('action'), $(this).serialize(), function(result) { - if (result.code == 'success') { - alert('등록되었습니다.'); - window.location.reload(); - } else { - alert(result.message); + var formData = new FormData(this); + + $.ajax({ + url : $(this).attr('action'), + type : 'POST', + data : formData, + enctype : 'multipart/form-data', + processData : false, + contentType : false, + dataType : 'json', + cache : false, + async : false, + success: function(result) { + if (result.code == 'success') { + alert('등록되었습니다.'); + window.location.reload(); + } else { + alert(result.message); + } + }, + error: function(result) { + console.log(result); + alert('문의 등록에 실패했습니다!!\n잠시 후 다시 시도해 주세요.'); } - }).fail(function(result) { - console.log(result); - alert('문의 등록에 실패했습니다!!\n잠시 후 다시 시도해 주세요.'); }); return false; }); + $('#file-add').on('click', function() { + $(this).parent().append( + '
'+ + ''+ + '
' + ); + }); + var currentPage = 1; function getGalleryData(uid) { diff --git a/resources/views/admin/board/default/create.blade.php b/resources/views/admin/board/default/create.blade.php index f829fa0..5ac5d7b 100644 --- a/resources/views/admin/board/default/create.blade.php +++ b/resources/views/admin/board/default/create.blade.php @@ -49,9 +49,9 @@
  • @if($asset->asset->width && $asset->asset->height) - {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) + {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) @else - {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) + {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) @endif
  • @endforeach diff --git a/resources/views/admin/board/inquiry/create.blade.php b/resources/views/admin/board/inquiry/create.blade.php index f829fa0..5ac5d7b 100644 --- a/resources/views/admin/board/inquiry/create.blade.php +++ b/resources/views/admin/board/inquiry/create.blade.php @@ -49,9 +49,9 @@
  • @if($asset->asset->width && $asset->asset->height) - {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) + {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) @else - {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) + {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) @endif
  • @endforeach diff --git a/resources/views/admin/board/inquiry/view.blade.php b/resources/views/admin/board/inquiry/view.blade.php index 8d5ee89..c0a7596 100644 --- a/resources/views/admin/board/inquiry/view.blade.php +++ b/resources/views/admin/board/inquiry/view.blade.php @@ -18,6 +18,14 @@ +
    + + +
    +
    + + +
    @@ -30,6 +38,16 @@
    + @if($data->assets) +
    + + @foreach ($data->assets as $i => $asset) +
    + {{ $asset->asset->orgin_name }} ({{ human_filesize($asset->asset->size) }}) +
    + @endforeach +
    + @endif