Added validation to Page URL

This commit is contained in:
Julian Prieber 2023-12-18 15:50:27 +01:00
parent 5aa453b10c
commit 93461054a2
2 changed files with 45 additions and 42 deletions

View File

@ -1,38 +1,42 @@
<script>{!! file_get_contents(base_path("assets/js/jquery.min.js")) !!}</script> <script>{!! file_get_contents(base_path("assets/js/jquery.min.js")) !!}</script>
<script> <script>
$(document).ready(function () { $(document).ready(function () {
var submitBtn = $('#submit-btn'); var submitBtn = $('#submit-btn');
$('#littlelink_name').on('keyup', function () { $('#littlelink_name').on('keyup', function () {
var littlelinkName = $(this).val(); var littlelinkName = $(this).val();
if (littlelinkName.trim() !== '') { if (littlelinkName.trim() !== '') {
$.ajax({ $.ajax({
type: 'POST', type: 'POST',
url: '{{url("/validate-handle")}}', url: '{{url("/validate-handle")}}',
data: { data: {
'_token': '{{ csrf_token() }}', '_token': '{{ csrf_token() }}',
'littlelink_name': littlelinkName 'littlelink_name': littlelinkName
}, },
success: function (data) { success: function (data) {
$('#littlelink_name').removeClass('is-valid is-invalid'); $('#littlelink_name').removeClass('is-valid is-invalid');
$('#username-error').remove(); $('#username-error').remove();
if (data.valid) { if (typeof exceptionvar !== 'undefined' && littlelinkName.trim() === exceptionvar) {
$('#littlelink_name').addClass('is-valid'); submitBtn.prop('disabled', false);
submitBtn.prop('disabled', false); } else {
} else { if (data.valid) {
$('#littlelink_name').addClass('is-invalid'); $('#littlelink_name').addClass('is-valid');
$('<div id="username-error" class="invalid-feedback">That username is already taken</div>').insertAfter('#littlelink_name'); submitBtn.prop('disabled', false);
submitBtn.prop('disabled', true); } else {
$('#littlelink_name').addClass('is-invalid');
$('<div id="username-error" class="invalid-feedback">That username is already taken</div>').insertAfter('#littlelink_name');
submitBtn.prop('disabled', true);
}
}
} }
} });
}); } else {
} else { $('#littlelink_name').removeClass('is-valid is-invalid');
$('#littlelink_name').removeClass('is-valid is-invalid'); $('#username-error').remove();
$('#username-error').remove(); submitBtn.prop('disabled', true);
submitBtn.prop('disabled', true); }
} });
}); });
}); </script>
</script>

View File

@ -229,14 +229,13 @@
$url = $_SERVER['REQUEST_URI']; $url = $_SERVER['REQUEST_URI'];
if( strpos( $url, "no_page_name" ) == true ) echo '<span style="color:#FF0000; font-size:120%;">You do not have a Page URL</span>'; ?> if( strpos( $url, "no_page_name" ) == true ) echo '<span style="color:#FF0000; font-size:120%;">You do not have a Page URL</span>'; ?>
<br> <br>
<label>{{__('messages.Page URL')}}</label> <label for="littlelink_name" class="form-label">{{__('messages.Page URL')}}</label>
<div class="input-group"> <div class="input-group mb-3 has-validation">
<div class="input-group-prepend"> <span class="input-group-text" id="basic-addon3">{{str_replace(['http://', 'https://'], '', url(''))}}/@</span>
<div class="d-none d-md-block input-group-text">{{ url('') }}/@</div> <input type="littlelink_name" class="form-control" id="littlelink_name" name="littlelink_name" aria-describedby="littlelink_name" value="{{ $page->littlelink_name ?? '' }}" :value="old('littlelink_name')" required autofocus >
<div class="d-md-none input-group-text">@</div>
</div>
<input type="text" class="form-control" name="littlelink_name" value="{{ $page->littlelink_name ?? '' }}" required>
</div> </div>
<script>var exceptionvar = " value="{{ $page->littlelink_name }}";</script>
@include('auth.url-validation')
<label style="margin-top:15px">{{__('messages.Display name')}}</label> <label style="margin-top:15px">{{__('messages.Display name')}}</label>
<div class="input-group"> <div class="input-group">
@ -280,7 +279,7 @@
<label class="form-check-label" for="tablinks">{{__('messages.Enable')}}</label> <label class="form-check-label" for="tablinks">{{__('messages.Enable')}}</label>
</div> </div>
<button type="submit" class="mt-3 ml-3 btn btn-primary">{{__('messages.Save')}}</button> <button id="submit-btn" type="submit" class="mt-3 ml-3 btn btn-primary">{{__('messages.Save')}}</button>
</form> </form>
@if(env('ALLOW_USER_HTML') === true) @if(env('ALLOW_USER_HTML') === true)