openpanel/templates/tabler/settings/user.html

332 lines
19 KiB
HTML

{% extends 'base.html' %} {% block content %}
<form method="post" id="changePanelSettings">
<!-- Page header -->
<div class="page-header mt-0 d-print-none">
<div class="container-xl">
<div class="row g-2 align-items-center">
<div class="col">
<!-- Page pre-title -->
<div class="page-pretitle">
Settings
</div>
<h2 class="page-title">
OpenPanel
</h2>
</div>
<!-- Page title actions -->
<div class="col-auto ms-auto d-print-none">
<div class="btn-list">
<button type="submit" id="save-openpanel-settings" class="btn btn-primary">Save</button>
</div>
</div>
</div>
</div>
</div>
<!-- Page body -->
<div class="page-body">
<div class="container-xl">
<div class="row row-deck row-cards">
<div class="col-lg-12">
<div class="card">
<div class="card-body">
<div class="mb-3">
<div class="row form-selectgroup form-selectgroup-boxes d-flex">
<div class="col-lg-6">
<div class="row mb-3">
<label class="form-label">Brand name</label>
<input type="text" class="col form-control" name="brand_name" placeholder="your awesome brand" value="{{ config_data['DEFAULT']['brand_name'] }}">
<div class="col-auto align-self-center">
<span class="form-help" data-bs-toggle="popover" data-bs-placement="left" data-bs-content="<p>Set a custom name visible in the OpenPanel interface: on the sidebar and login pages</p>" data-bs-html="true">?</span>
</div>
</div>
</div>
<div class="col-lg-6">
<div class="row mb-3">
<label class="form-label">Logo image</label>
<input type="link" class="col form-control" name="logo" placeholder="" value="{{ config_data['DEFAULT']['logo'] }}">
<div class="col-auto align-self-center">
<span class="form-help" data-bs-toggle="popover" data-bs-placement="left" data-bs-content="<p>URL for a logo to be displayed instead of brand name in teh OpenPanel interface: on the sidebar and login pages</p>" data-bs-html="true">?</span>
</div>
</div>
</div>
<div class="col-lg-12">
<div class="mb-3">
<label class="form-label">Enable Features <span class="form-help" data-bs-toggle="popover" data-bs-placement="top" data-bs-content="<p>Enable/disable each feature (page) in the OpenPanel interface. <a href='https://openpanel.com/docs/admin/settings/openpanel/#enable-features' target='_blank'>Documentation</a></p>" data-bs-html="true">?</span></label>
<div class="form-selectgroup">
<input type="hidden" id="selectedModules" name="enabled_modules" value="">
{% if license_type == "Enterprise" %}
<label class="form-selectgroup-item">
<input type="checkbox" value="emails" class="form-selectgroup-input" {% if 'emails' in config_data['DEFAULT']['enabled_modules'].split(',') %}checked{% endif %}>
<span class="form-selectgroup-label">emails</span>
</label>
{% endif %}
{% for feature in ['favorites', 'ftp', 'phpmyadmin', 'ssh', 'crons', 'backups', 'wordpress', 'mautic', 'flarum', 'pm2', 'disk_usage', 'inodes', 'usage', 'terminal', 'services', 'webserver', 'fix_permissions', 'dns','malware_scan', 'domains_visitors','process_manager', 'ip_blocker', 'redis', 'memcached', 'elasticsearch', 'temporary_links', 'login_history', 'twofa', 'activity'] %}
{% set display_name = feature.replace('_', ' ') %}
<label class="form-selectgroup-item">
<input type="checkbox" value="{{ feature }}" class="form-selectgroup-input" {% if feature in config_data['DEFAULT']['enabled_modules'].split(',') %}checked{% endif %}>
<span class="form-selectgroup-label">{{ display_name }}</span>
</label>
{% endfor %}
</div>
</div>
<div class="row">
<label class="col form-label">Nameservers</label>
<div class="col-auto align-self-center">
<span class="form-help" data-bs-toggle="popover" data-bs-placement="left" data-bs-content="<p>Please refer to the documentation for instructions no how to properly configure nameservers.</p><p class='mb-0'><a href='https://openpanel.com/docs/admin/settings/openpanel/#set-nameservers' target='_blank'>Documentation</a></p>" data-bs-html="true">?</span>
</div>
<div class="row">
<div class="col-lg-6">
<input type="text" class="mb-3 form-control" name="ns1" placeholder="ns1" value="{{ config_data['DEFAULT']['ns1'] }}">
<input type="text" class="mb-3 form-control" name="ns2" placeholder="ns2" value="{{ config_data['DEFAULT']['ns2'] }}">
</div>
<div class="col-lg-6">
<input type="text" class="mb-3 form-control" name="ns3" placeholder="ns3" value="{{ config_data['DEFAULT']['ns3'] }}">
<input type="text" class="mb-3 form-control" name="ns4" placeholder="ns4" value="{{ config_data['DEFAULT']['ns4'] }}">
</div>
</div>
</div>
</div>
<div class="col-lg-6">
<div class="mb-3 row">
<label class="col-3 col-form-label">Logout URL</label>
<div class="col input-group">
<span class="input-group-text">
https://
</span>
<input type="text" class="form-control" placeholder="" autocomplete="off" value="{{ config_data['DEFAULT']['logout_url'] }}">
</div>
<div class="col-auto align-self-center">
<span class="form-help" data-bs-toggle="popover" data-bs-placement="left" data-bs-content="<p class='mb-0'>URL to redirect users after logout from the panel (usually your website).</p>" data-bs-html="true">?</span>
</div>
</div>
<div class="mb-3 row">
<label class="col-8 col-form-label">Avatar type</label>
<div class="col">
<select name="avatar_type" class="form-select">
<option value="gravatar" {%if config_data['USERS']['avatar_type'] == 'gravatar' %}selected="selected"{% endif %}>Gravatar</option>
<option value="letter" {%if config_data['USERS']['avatar_type'] == 'letter' %}selected="selected"{% endif %}>Letter</option>
<option value="icon" {%if config_data['USERS']['avatar_type'] == 'icon' %}selected="selected"{% endif %}>Icon</option>
</select>
</div>
<div class="col-auto align-self-center">
<span class="form-help" data-bs-toggle="popover" data-bs-placement="left" data-bs-content="<p class='mb-0'>Display Gravatar, Letter, or Icon as avatars for users.</p><p><img src='https://i.postimg.cc/Y0vPzQmh/2024-09-05-15-26-removebg-preview.png'></p>" data-bs-html="true">?</span>
</div>
</div>
<div class="mb-3 row">
<label class="col-8 col-form-label">Charts mode for the Resource Usage page:</label>
<div class="col">
<select name="resource_usage_charts_mode" class="form-select">
<option value="one" {%if config_data['USERS']['resource_usage_charts_mode'] == 'one' %}selected="selected"{% endif %}>One</option>
<option value="two" {%if config_data['USERS']['resource_usage_charts_mode'] == 'two' %}selected="selected"{% endif %}>Two</option>
<option value="none" {%if config_data['USERS']['resource_usage_charts_mode'] == 'none' %}selected="selected"{% endif %}>None</option>
</select>
</div>
</div>
<div class="mb-3 row">
<label class="col-8 col-form-label">Default PHP version:</label>
<div class="col">
<select name="default_php_version" class="form-select">
<option value="8.3" {%if config_data['PHP']['default_php_version'] == '8.3' %}selected="selected"{% endif %}>8.3</option>
<option value="8.2" {%if config_data['PHP']['default_php_version'] == '8.2' %}selected="selected"{% endif %}>8.2</option>
<option value="8.1" {%if config_data['PHP']['default_php_version'] == '8.1' %}selected="selected"{% endif %}>8.1</option>
<option value="8.0" {%if config_data['PHP']['default_php_version'] == '8.0' %}selected="selected"{% endif %}>8.0</option>
<option value="7.4" {%if config_data['PHP']['default_php_version'] == '7.4' %}selected="selected"{% endif %}>7.4</option>
<option value="7.3" {%if config_data['PHP']['default_php_version'] == '7.3' %}selected="selected"{% endif %}>7.3</option>
<option value="7.2" {%if config_data['PHP']['default_php_version'] == '7.2' %}selected="selected"{% endif %}>7.2</option>
<option value="7.1" {%if config_data['PHP']['default_php_version'] == '7.1' %}selected="selected"{% endif %}>7.1</option>
<option value="7.0" {%if config_data['PHP']['default_php_version'] == '7.0' %}selected="selected"{% endif %}>7.0</option>
<option value="5.6" {%if config_data['PHP']['default_php_version'] == '5.6' %}selected="selected"{% endif %}>5.6</option>
</select>
</div>
</div>
<div class="mb-3">
<label class="form-check form-switch">
<input class="form-check-input" type="checkbox" id="ssl_checkbox" {%if config_data['USERS']['password_reset'] == 'yes' %}checked=""{% endif %} name="password_reset">
<span class="form-check-label">Enable password reset on login form</span>
</label>
</div>
<div class="mb-3">
<label class="form-check form-switch">
<input class="form-check-input" type="checkbox" id="twofa_nag" {%if config_data['USERS']['twofa_nag'] == 'yes' %}checked=""{% endif %} name="twofa_nag">
<span class="form-check-label">Display message to remind users to enable 2FA</span>
</label>
</div>
<div class="mb-3">
<label class="form-check form-switch">
<input class="form-check-input" type="checkbox" id="how_to_guides" {%if config_data['USERS']['how_to_guides'] == 'yes' %}checked=""{% endif %} name="how_to_guides">
<span class="form-check-label">Display How-to guides widget in the dashboard</span>
</label>
</div>
</div>
<div class="col-lg-6">
<div class="mb-3">
<label class="form-label">Number of login records to keep for user:</label>
<div class="btn-group w-100" role="group">
<input type="radio" class="btn-check" name="max_login_records" id="max_login_records-10" autocomplete="off" value="10" {%if config_data['USERS']['max_login_records'] == '10' %}checked=""{% endif %}>
<label for="max_login_records-10" type="button" class="btn">10</label>
<input type="radio" class="btn-check" name="max_login_records" id="max_login_records-20" autocomplete="off" value="20" {%if config_data['USERS']['max_login_records'] == '20' %}checked=""{% endif %}>
<label for="max_login_records-20" type="button" class="btn">20</label>
<input type="radio" class="btn-check" name="max_login_records" id="max_login_records-50" autocomplete="off" value="50" {%if config_data['USERS']['max_login_records'] == '50' %}checked=""{% endif %}>
<label for="max_login_records-50" type="button" class="btn">50</label>
<input type="radio" class="btn-check" name="max_login_records" id="max_login_records-100" autocomplete="off" value="100" {%if config_data['USERS']['max_login_records'] == '100' %}checked=""{% endif %}>
<label for="max_login_records-100" type="button" class="btn">100</label>
</div>
</div>
<div class="mb-3">
<label class="form-label">Activity items to display per page:</label>
<div class="btn-group w-100" role="group">
<input type="radio" class="btn-check" name="activity_items_per_page" id="activity_items_per_page-25" autocomplete="off" value="25" {%if config_data['USERS']['activity_items_per_page'] == '25' %}checked=""{% endif %}>
<label for="activity_items_per_page-25" type="button" class="btn">25</label>
<input type="radio" class="btn-check" name="activity_items_per_page" id="activity_items_per_page-50" autocomplete="off" value="50" {%if config_data['USERS']['activity_items_per_page'] == '50' %}checked=""{% endif %}>
<label for="activity_items_per_page-50" type="button" class="btn">50</label>
<input type="radio" class="btn-check" name="activity_items_per_page" id="activity_items_per_page-100" autocomplete="off" value="100" {%if config_data['USERS']['activity_items_per_page'] == '100' %}checked=""{% endif %}>
<label for="activity_items_per_page-100" type="button" class="btn">100</label>
<input type="radio" class="btn-check" name="activity_items_per_page" id="activity_items_per_page-200" autocomplete="off" value="200" {%if config_data['USERS']['activity_items_per_page'] == '200' %}checked=""{% endif %}>
<label for="activity_items_per_page-200" type="button" class="btn">200</label>
</div>
</div>
<div class="mb-3">
<label class="form-label">Resource Usage items to display per page:</label>
<div class="btn-group w-100" role="group">
<input type="radio" class="btn-check" name="resource_usage_items_per_page" id="resource_usage_items_per_page-25" autocomplete="off" value="25" {%if config_data['USERS']['resource_usage_items_per_page'] == '25' %}checked=""{% endif %}>
<label for="resource_usage_items_per_page-25" type="button" class="btn">25</label>
<input type="radio" class="btn-check" name="resource_usage_items_per_page" id="resource_usage_items_per_page-50" autocomplete="off" value="50" {%if config_data['USERS']['resource_usage_items_per_page'] == '50' %}checked=""{% endif %}>
<label for="resource_usage_items_per_page-50" type="button" class="btn">50</label>
<input type="radio" class="btn-check" name="resource_usage_items_per_page" id="resource_usage_items_per_page-100" autocomplete="off" value="100" {%if config_data['USERS']['resource_usage_items_per_page'] == '100' %}checked=""{% endif %}>
<label for="resource_usage_items_per_page-100" type="button" class="btn">100</label>
<input type="radio" class="btn-check" name="resource_usage_items_per_page" id="resource_usage_items_per_page-200" autocomplete="off" value="200" {%if config_data['USERS']['resource_usage_items_per_page'] == '200' %}checked=""{% endif %}>
<label for="resource_usage_items_per_page-200" type="button" class="btn">200</label>
</div>
</div>
<div class="mb-3">
<label class="form-label">Number of Resource Usage items to keep for user:</label>
<div class="btn-group w-100" role="group">
<input type="radio" class="btn-check" name="resource_usage_retention" id="resource_usage_retention-100" autocomplete="off" value="100" {%if config_data['USERS']['resource_usage_retention'] == '100' %}checked=""{% endif %}>
<label for="resource_usage_retention-100" type="button" class="btn">100</label>
<input type="radio" class="btn-check" name="resource_usage_retention" id="resource_usage_retention-250" autocomplete="off" value="250" {%if config_data['USERS']['resource_usage_retention'] == '250' %}checked=""{% endif %}>
<label for="resource_usage_retention-250" type="button" class="btn">250</label>
<input type="radio" class="btn-check" name="resource_usage_retention" id="resource_usage_retention-500" autocomplete="off" value="500" {%if config_data['USERS']['resource_usage_retention'] == '500' %}checked=""{% endif %}>
<label for="resource_usage_retention-500" type="button" class="btn">500</label>
<input type="radio" class="btn-check" name="resource_usage_retention" id="resource_usage_retention-1000" autocomplete="off" value="1000" {%if config_data['USERS']['resource_usage_retention'] == '1000' %}checked=""{% endif %}>
<label for="resource_usage_retention-1000" type="button" class="btn">1000</label>
</div>
</div>
<div class="mb-3">
<label class="form-label">Number of Domains to display per page:</label>
<div class="btn-group w-100" role="group">
<input type="radio" class="btn-check" name="domains_per_page" id="domains_per_page_100" autocomplete="off" value="100" {%if config_data['USERS']['domains_per_page'] == '100' %}checked=""{% endif %}>
<label for="domains_per_page_100" type="button" class="btn">100</label>
<input type="radio" class="btn-check" name="domains_per_page" id="domains_per_page_250" autocomplete="off" value="250" {%if config_data['USERS']['domains_per_page'] == '250' %}checked=""{% endif %}>
<label for="domains_per_page_250" type="button" class="btn">250</label>
<input type="radio" class="btn-check" name="domains_per_page" id="domains_per_page_500" autocomplete="off" value="500" {%if config_data['USERS']['domains_per_page'] == '500' %}checked=""{% endif %}>
<label for="domains_per_page_500" type="button" class="btn">500</label>
<input type="radio" class="btn-check" name="domains_per_page" id="domains_per_page_1000" autocomplete="off" value="1000" {%if config_data['USERS']['domains_per_page'] == '1000' %}checked=""{% endif %}>
<label for="domains_per_page_1000" type="button" class="btn">1000</label>
</div>
</div>
</div>
<div class="col-lg-12">
<div class="d-none mb-3">
<label class="form-label">Content for the How-to widget:</label>
<textarea class="form-control" name="howto-content" rows="10" placeholder="Content..">
{{howto_content_current_value}}
</textarea>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="{{ url_for('static', filename='pages/open_panel_settings.js') }}" defer></script>
{% endblock %}