Edit File: index.blade.php
@extends('admin.layout.master') {{-- extra css files --}} @section('css') <link rel="stylesheet" type="text/css" href="{{ asset('admin/app-assets/css-rtl/plugins/forms/validation/form-validation.css') }}"> @endsection {{-- extra css files --}} @section('content') <div class="content-body"> <!-- account setting page start --> <section id="page-account-settings"> <div class="row"> <!-- left menu section --> <div class="col-md-3 mb-2 mb-md-0"> <ul class="nav nav-pills flex-column mt-md-0 mt-1"> <li class="nav-item"> <a class="nav-link d-flex py-75 active" id="account-pill-main" data-toggle="pill" href="#account-vertical-main" aria-expanded="true"> <i class="feather icon-settings mr-50 font-medium-3"></i> {{ __('admin.app_setting') }} </a> </li> <li class="nav-item " style="margin-top: 3px"> <a class="nav-link d-flex py-75" id="account-pill-smtp" data-toggle="pill" href="#account-vertical-smtp" aria-expanded="false"> <i class="feather icon-mail mr-50 font-medium-3"></i> {{ __('admin.email_data') }} </a> </li> <li class="nav-item " style="margin-top: 3px"> <a class="nav-link d-flex py-75" id="account-pill-notifications" data-toggle="pill" href="#account-vertical-notifications" aria-expanded="false"> <i class="feather icon-bell mr-50 font-medium-3"></i> {{ __('admin.notification_data') }} </a> </li> <li class="nav-item " style="margin-top: 3px"> <a class="nav-link d-flex py-75" id="account-pill-api" data-toggle="pill" href="#account-vertical-api" aria-expanded="false"> <i class="feather icon-droplet mr-50 font-medium-3"></i> {{ __('admin.api_data') }} </a> </li> <li class="nav-item " style="margin-top: 3px"> <a class="nav-link d-flex py-75" id="account-pill-free_trial" data-toggle="pill" href="#account-vertical-free_trial" aria-expanded="false"> <i class="feather icon-droplet mr-50 font-medium-3"></i> {{ __('admin.free_trial') }} </a> </li> <li class="nav-item " style="margin-top: 3px"> <a class="nav-link d-flex py-75" id="account-pill-vat_ratio" data-toggle="pill" href="#account-vertical-vat_ratio" aria-expanded="false"> <i class="feather icon-droplet mr-50 font-medium-3"></i> {{ __('admin.vat_ratio') }} </a> </li> </ul> </div> <!-- right content section --> <div class="col-md-9"> <div class="card"> <div class="card-content"> <div class="card-body"> <div class="tab-content"> <div role="tabpanel" class="tab-pane active" id="account-vertical-main" aria-labelledby="account-pill-main" aria-expanded="true"> <form accept="{{ route('admin.settings.update') }}" method="post" enctype="multipart/form-data" class="form-horizontal" novalidate> @method('put') @csrf <div class="row"> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.the_name_of_the_application_in_arabic') }}</label> <input type="text" class="form-control" name="name_ar" id="account-name" placeholder="{{ __('admin.the_name_of_the_application_in_arabic') }}" value="{{ $data['name_ar'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.the_name_of_the_application_in_english') }}</label> <input type="text" class="form-control" name="name_en" id="account-name" placeholder="{{ __('admin.the_name_of_the_application_in_english') }}" value="{{ $data['name_en'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.email') }}</label> <input type="email" class="form-control" name="email" id="account-name" placeholder="{{ __('admin.email') }}" value="{{ $data['email'] }}" data-validation-email-message="{{ __('admin.verify_the_email_format') }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-phone">{{ __('admin.phone') }}</label> <input type="text" class="form-control" name="phone" id="account-phone" placeholder="{{ __('admin.phone') }}" value="{{ $data['phone'] }}" pattern="\d{9,11}" required data-validation-required-message="{{ __('admin.this_field_is_required') }}" data-validation-pattern-message="{{ __('admin.the_number_should_only_be_between_9_and_11_digits') }}" title="{{ __('admin.the_number_should_only_be_between_9_and_11_digits') }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-whatsapp">{{ __('admin.whatts_app_number') }}</label> <input type="text" class="form-control" name="whatsapp" id="account-whatsapp" placeholder="{{ __('admin.whatts_app_number') }}" value="{{ $data['whatsapp'] }}" pattern="\d{9,11}" required data-validation-required-message="{{ __('admin.this_field_is_required') }}" data-validation-pattern-message="{{ __('admin.the_number_should_only_be_between_9_and_11_digits') }}" title="{{ __('admin.the_number_should_only_be_between_9_and_11_digits') }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <label for="account-name">is production </label> <div class="custom-control custom-switch custom-switch-success mr-2 mb-1"> <input name="is_production" {{ $data['is_production'] == '1' ? 'checked' : '' }} type="checkbox" class="custom-control-input" id="customSwitch11"> <label class="custom-control-label" for="customSwitch11"> <span class="switch-icon-left"><i class="feather icon-check"></i></span> <span class="switch-icon-right"><i class="feather icon-check"></i></span> </label> </div> </div> </div> <div class="col-12"> <div class="row"> <div class="imgMontg col-12 col-lg-4 col-md-6 text-center"> <div class="dropBox"> <div class="textCenter d-flex flex-column"> <div class="imagesUploadBlock"> <label class="uploadImg"> <span><i class="feather icon-image"></i></span> <input type="file" accept="image/*" name="logo" class="imageUploader" required onchange="validateImage(this)"> </label> <div class="uploadedBlock"> <img src="{{ $data['logo'] }}" id="logoPreview" style="display:none;"> <button class="close"><i class="feather icon-trash-2"></i></button> </div> </div> <span>{{ __('admin.logo_image') }}</span> </div> </div> </div> <div class="imgMontg col-12 col-lg-4 col-md-6 text-center"> <div class="dropBox"> <div class="textCenter d-flex flex-column"> <div class="imagesUploadBlock"> <label class="uploadImg"> <span><i class="feather icon-image"></i></span> <input type="file" accept="image/*" name="fav_icon" class="imageUploader" required onchange="validateImage(this)"> </label> <div class="uploadedBlock"> <img src="{{ $data['fav_icon'] }}" id="favIconPreview" style="display:none;"> <button class="close"><i class="feather icon-trash-2"></i></button> </div> </div> <span>{{ __('admin.fav_icon_image') }}</span> </div> </div> </div> <div class="imgMontg col-12 col-lg-4 col-md-6 text-center"> <div class="dropBox"> <div class="textCenter d-flex flex-column"> <div class="imagesUploadBlock"> <label class="uploadImg"> <span><i class="feather icon-image"></i></span> <input type="file" accept="image/*" name="login_background" class="imageUploader" required onchange="validateImage(this)"> </label> <div class="uploadedBlock"> <img src="{{ $data['login_background'] }}" id="loginBackgroundPreview" style="display:none;"> <button class="close"><i class="feather icon-trash-2"></i></button> </div> </div> <span>{{ __('admin.background_image') }}</span> </div> </div> </div> <div class="imgMontg col-12 col-lg-4 col-md-6 text-center"> <div class="dropBox"> <div class="textCenter d-flex flex-column"> <div class="imagesUploadBlock"> <label class="uploadImg"> <span><i class="feather icon-image"></i></span> <input type="file" accept="image/*" name="default_user" class="imageUploader" required onchange="validateImage(this)"> </label> <div class="uploadedBlock"> <img src="{{ $data['default_user'] }}" id="defaultUserPreview" style="display:none;"> <button class="close"><i class="feather icon-trash-2"></i></button> </div> </div> <span>{{ __('admin.virtual_user_image') }}</span> </div> </div> </div> </div> </div> <div class="col-12 d-flex justify-content-center mt-3"> <button type="submit" class="btn btn-primary mr-1 mb-1 submit_button">{{ __('admin.saving_changes') }}</button> <a href="{{ url()->previous() }}" type="reset" class="btn btn-outline-warning mr-1 mb-1">{{ __('admin.back') }}</a> </div> </div> </form> </div> <div role="tabpanel" class="tab-pane" id="account-vertical-smtp" aria-labelledby="account-pill-smtp" aria-expanded="false"> <form accept="{{ route('admin.settings.update') }}" method="post" enctype="multipart/form-data"> @method('put') @csrf <div class="row"> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.user_name') }}</label> <input type="text" class="form-control" name="smtp_user_name" id="account-name" placeholder="{{ __('admin.user_name') }}" value="{{ $data['smtp_user_name'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.password') }}</label> <input type="password" class="form-control" name="smtp_password" id="account-name" placeholder="{{ __('admin.password') }}" value="{{ $data['smtp_password'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.email_Sender') }}</label> <input type="text" class="form-control" name="smtp_mail_from" id="account-name" placeholder="{{ __('admin.email_Sender') }}" value="{{ $data['smtp_mail_from'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.the_sender_name') }}</label> <input type="text" class="form-control" name="smtp_sender_name" id="account-name" placeholder="{{ __('admin.the_sender_name') }}" value="{{ $data['smtp_sender_name'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.the_nouns_al') }}</label> <input type="text" class="form-control" name="smtp_host" id="account-name" placeholder="{{ __('admin.the_nouns_al') }}" value="{{ $data['smtp_host'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.encryption_type') }}</label> <input type="text" class="form-control" name="smtp_encryption" id="account-name" placeholder="{{ __('admin.encryption_type') }}" value="{{ $data['smtp_encryption'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.Port_number') }}</label> <input type="number" class="form-control" name="smtp_port" id="account-name" placeholder="{{ __('admin.Port_number') }}" value="{{ $data['smtp_port'] }}"> </div> </div> </div> <div class="col-12 d-flex justify-content-center mt-3"> <button type="submit" class="btn btn-primary mr-1 mb-1 submit_button">{{ __('admin.saving_changes') }}</button> <a href="{{ url()->previous() }}" type="reset" class="btn btn-outline-warning mr-1 mb-1">{{ __('admin.back') }}</a> </div> </div> </form> </div> <div role="tabpanel" class="tab-pane" id="account-vertical-notifications" aria-labelledby="account-pill-notifications" aria-expanded="false"> <form accept="{{ route('admin.settings.update') }}" method="post" enctype="multipart/form-data"> @method('put') @csrf <div class="row"> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.server_key') }}</label> <input type="text" class="form-control" name="firebase_key" id="account-name" placeholder="{{ __('admin.server_key') }}" value="{{ $data['firebase_key'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.sender_identification') }}</label> <input type="text" class="form-control" name="firebase_sender_id" id="account-name" placeholder="{{ __('admin.sender_identification') }}" value="{{ $data['firebase_sender_id'] }}"> </div> </div> </div> <div class="col-12 d-flex justify-content-center mt-3"> <button type="submit" class="btn btn-primary mr-1 mb-1 submit_button">{{ __('admin.saving_changes') }}</button> <a href="{{ url()->previous() }}" type="reset" class="btn btn-outline-warning mr-1 mb-1">{{ __('admin.back') }}</a> </div> </div> </form> </div> <div role="tabpanel" class="tab-pane" id="account-vertical-api" aria-labelledby="account-pill-api" aria-expanded="false"> <form accept="{{ route('admin.settings.update') }}" method="post" enctype="multipart/form-data"> @method('put') @csrf <div class="row"> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.live_chat') }}</label> <input type="text" class="form-control" name="live_chat" id="account-name" placeholder="{{ __('admin.live_chat') }}" value="{{ $data['live_chat'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.google_analytics') }}</label> <input type="text" class="form-control" name="google_analytics" id="account-name" placeholder="{{ __('admin.google_analytics') }}" value="{{ $data['google_analytics'] }}"> </div> </div> </div> <div class="col-12 col-md-6"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.google_places') }}</label> <input type="text" class="form-control" name="google_places" id="account-name" placeholder="{{ __('admin.google_places') }}" value="{{ $data['google_places'] }}"> </div> </div> </div> <div class="col-12 d-flex justify-content-center mt-3"> <button type="submit" class="btn btn-primary mr-1 mb-1 submit_button">{{ __('admin.saving_changes') }}</button> <a href="{{ url()->previous() }}" type="reset" class="btn btn-outline-warning mr-1 mb-1">{{ __('admin.back') }}</a> </div> </div> </form> </div> <div role="tabpanel" class="tab-pane" id="account-vertical-free_trial" aria-labelledby="account-pill-free_trial" aria-expanded="false"> <form accept="{{ route('admin.settings.update') }}" method="post" enctype="multipart/form-data" class="notify-form store parsley"> @method('put') @csrf <div class="row"> <div class="col-12 col-md-12"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.free_trial_period') }}</label> <input type="text" class="form-control" name="free_trial_period" id="account-name" placeholder="{{ __('admin.free_trial_period') }}" required data-parsley-required-message="{{ __('admin.this_field_is_required') }}" data-parsley-pattern="^\d+$" data-parsley-pattern-message="{{ __('admin.must_be_real_positive_numbers') }}" value="{{ $data['free_trial_period'] ?? '' }}"> </div> </div> </div> <div class="col-12 d-flex justify-content-center mt-3"> <button type="submit" class="btn btn-primary mr-1 mb-1 submit_button">{{ __('admin.saving_changes') }}</button> <a href="{{ url()->previous() }}" type="reset" class="btn btn-outline-warning mr-1 mb-1">{{ __('admin.back') }}</a> </div> </div> </form> </div> <div role="tabpanel" class="tab-pane" id="account-vertical-vat_ratio" aria-labelledby="account-pill-vat_ratio" aria-expanded="false"> <form accept="{{ route('admin.settings.update') }}" method="post" enctype="multipart/form-data"> @method('put') @csrf <div class="row"> <div class="col-12 col-md-12"> <div class="form-group"> <div class="controls"> <label for="account-name">{{ __('admin.vat_ratio') . ' %' }}</label> <input type="text" class="form-control" name="vat_ratio" id="account-name" placeholder="{{ __('admin.vat_ratio') }}" value="{{ $data['vat_ratio'] ?? '' }}" required oninput="validateNumericInput(this)"> </div> </div> </div> <div class="col-12 d-flex justify-content-center mt-3"> <button type="submit" class="btn btn-primary mr-1 mb-1 submit_button">{{ __('admin.saving_changes') }}</button> <a href="{{ url()->previous() }}" type="reset" class="btn btn-outline-warning mr-1 mb-1">{{ __('admin.back') }}</a> </div> </div> </form> </div> </div> </div> </div> </div> </div> </div> </section> <!-- account setting page end --> </div> @endsection @section('js') <script src="{{ asset('admin/app-assets/vendors/js/forms/validation/jqBootstrapValidation.js') }}"></script> <script src="{{ asset('admin/app-assets/js/scripts/forms/validation/form-validation.js') }}"></script> <script src="https://cdn.ckeditor.com/4.16.2/full-all/ckeditor.js"></script> <script> CKEDITOR.replace('terms_ar_editor'); CKEDITOR.replace('terms_en_editor'); CKEDITOR.replace('privacy_ar_editor'); CKEDITOR.replace('privacy_en_editor'); CKEDITOR.replace('about_ar_editor'); CKEDITOR.replace('about_en_editor'); </script> {{-- show selected image script --}} @include('admin.shared.addImage') {{-- show selected image script --}} <script> function validateNumericInput(input) { // Check if the field is required and empty if (input.value.trim() === '') { input.setCustomValidity('{{ __('admin.this_field_is_required') }}'); } // Check for non-positive values else if (input.value <= 0) { // Check if value is less than or equal to 0 input.setCustomValidity( '{{ __('admin.value_must_be_greater_than_zero') }}'); // Update this message accordingly } // Check if the value is not a number else if (isNaN(input.value)) { input.setCustomValidity('{{ __('admin.only_numbers_allowed') }}'); } else { input.setCustomValidity(''); // Clear any custom validity message } } </script> <script> function validateImage(input) { const file = input.files[0]; if (file) { const fileType = file.type; const validImageTypes = ['image/jpeg', 'image/png', 'image/gif', 'image/bmp', 'image/webp']; if (!validImageTypes.includes(fileType)) { alert('{{ __('admin.image_file_not_supported') }}'); input.value = ''; // Reset the input return; } // Display the image preview const reader = new FileReader(); reader.onload = function(e) { const imgPreviewId = input.name + 'Preview'; document.getElementById(imgPreviewId).src = e.target.result; document.getElementById(imgPreviewId).style.display = 'block'; // Show the image } reader.readAsDataURL(file); } } </script> @endsection
Back to File Manager