- ContentSource handling in message - ContentSource list, add/update ui - nextPageSelector and imageSelector can be null - cleanup
67 lines
4.0 KiB
Twig
67 lines
4.0 KiB
Twig
{% extends 'base.html.twig' %}
|
|
|
|
{% block title %}{{ isNew ? 'Create' : 'Edit' }} Scrapper Configuration{% endblock %}
|
|
|
|
{% block body %}
|
|
<div class="container mx-auto p-4">
|
|
<div class="bg-white shadow-lg rounded-sm overflow-hidden">
|
|
<div class="bg-gray-800 text-white p-4">
|
|
<h1 class="text-2xl font-bold">
|
|
<i class="fas fa-cog mr-2"></i>{{ isNew ? 'Create' : 'Edit' }} Scrapper Configuration
|
|
</h1>
|
|
</div>
|
|
<div class="p-6" data-controller="scrapper-configure">
|
|
{{ form_start(form, {'attr': {'class': 'space-y-6', 'data-scrapper-configure-target': 'form', 'data-action': 'submit->scrapper-configure#saveConfiguration'}}) }}
|
|
|
|
{% for field in form.children %}
|
|
<div class="mb-4">
|
|
{{ form_label(field, null, {'label_attr': {'class': 'block text-sm font-medium text-gray-700 mb-2'}}) }}
|
|
{{ form_widget(field, {'attr': {
|
|
'class': 'mt-1 block w-full border border-gray-300 rounded-md shadow-sm py-2 px-3 focus:outline-none focus:ring-green-500 focus:border-green-500 sm:text-sm',
|
|
'placeholder': get_placeholder(field.vars.name)
|
|
}}) }}
|
|
</div>
|
|
{% endfor %}
|
|
|
|
<div class="mt-6">
|
|
<button type="submit" class="w-full flex items-center justify-center py-2 px-4 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-green-600 hover:bg-green-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-500">
|
|
<span class="mr-2">{{ isNew ? 'Save' : 'Update' }} Configuration</span>
|
|
<i class="fas fa-{{ isNew ? 'save' : 'edit' }}"></i>
|
|
</button>
|
|
</div>
|
|
|
|
{{ form_end(form) }}
|
|
|
|
<div class="mt-8 bg-gray-100 p-6 rounded-md">
|
|
<h2 class="text-xl font-semibold mb-4">
|
|
<i class="fas fa-vial mr-2"></i>Test Configuration
|
|
</h2>
|
|
<form
|
|
action="{{ path('app_settings_scrappers_test') }}"
|
|
method="POST"
|
|
data-scrapper-configure-target="testForm"
|
|
data-action="submit->scrapper-configure#testConfiguration"
|
|
class="space-y-4">
|
|
<div>
|
|
<label for="testMangaSlug" class="block text-sm font-medium text-gray-700 mb-2">Manga Slug</label>
|
|
<input type="text" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm py-2 px-3 focus:outline-none focus:ring-green-500 focus:border-green-500 sm:text-sm" id="testMangaSlug" name="mangaSlug" required>
|
|
</div>
|
|
<div>
|
|
<label for="testChapterNumber" class="block text-sm font-medium text-gray-700 mb-2">Chapter Number</label>
|
|
<input type="text" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm py-2 px-3 focus:outline-none focus:ring-green-500 focus:border-green-500 sm:text-sm" id="testChapterNumber" name="chapterNumber" required>
|
|
</div>
|
|
<div>
|
|
<button type="submit" class="w-full flex items-center justify-center py-2 px-4 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500">
|
|
<span class="mr-2">Test Configuration</span>
|
|
<i class="fas fa-play"></i>
|
|
</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
<div data-scrapper-configure-target="testResults" class="mt-8"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|