- Implemented nodes management functionality in `nodes.php` including create, update, and delete actions. - Added form validation and error handling for node operations. - Created a new setup page in `setup.php` for initial administrator account creation. - Included user feedback messages for successful operations and errors. - Designed user interface for both nodes management and setup processes.
75 lines
2.1 KiB
PHP
75 lines
2.1 KiB
PHP
<?php
|
|
/**
|
|
* Pathvector Admin Configuration
|
|
*
|
|
* Main configuration file for the Pathvector administration dashboard
|
|
*/
|
|
|
|
return [
|
|
// Application Settings
|
|
'app_name' => 'Pathvector Admin',
|
|
'app_version' => '1.0.0',
|
|
'debug' => true,
|
|
|
|
// Security
|
|
'session_lifetime' => 3600, // 1 hour
|
|
'csrf_token_name' => 'pathvector_csrf_token',
|
|
|
|
// Data Storage
|
|
'data_dir' => __DIR__ . '/../data',
|
|
'asn_file' => __DIR__ . '/../data/asns.json',
|
|
'node_file' => __DIR__ . '/../data/nodes.json',
|
|
'peer_file' => __DIR__ . '/../data/peers.json',
|
|
'template_file' => __DIR__ . '/../data/templates.json',
|
|
'host_file' => __DIR__ . '/../data/hosts.json',
|
|
'user_file' => __DIR__ . '/../data/users.json',
|
|
'log_file' => __DIR__ . '/../data/logs.json',
|
|
'backup_dir' => __DIR__ . '/../data/backups',
|
|
|
|
// Pathvector Settings
|
|
'pathvector' => [
|
|
'binary_path' => '/usr/local/bin/pathvector',
|
|
'config_dir' => '/etc/pathvector',
|
|
'default_config_path' => '/etc/pathvector/pathvector.yml',
|
|
'default_output_path' => '/etc/bird/bird.conf',
|
|
'bird_binary' => '/usr/sbin/bird',
|
|
'bird_socket' => '/var/run/bird.ctl',
|
|
'bird_reload_cmd' => 'birdc configure',
|
|
],
|
|
|
|
// BIRD 3 Settings
|
|
'bird' => [
|
|
'version' => '3',
|
|
'supported_protocols' => ['bgp', 'static', 'kernel', 'device', 'direct'],
|
|
'table_types' => ['ipv4', 'ipv6', 'ipv4-multicast', 'ipv6-multicast'],
|
|
],
|
|
|
|
// User Roles
|
|
'roles' => [
|
|
'admin' => 'Administrator',
|
|
'operator' => 'Operator',
|
|
'readonly' => 'Read Only',
|
|
],
|
|
|
|
// Default Admin User (change on first login!)
|
|
'default_admin' => [
|
|
'username' => 'admin',
|
|
'password' => 'pathvector', // CHANGE THIS!
|
|
'role' => 'admin',
|
|
],
|
|
|
|
// UI Settings
|
|
'pagination' => [
|
|
'per_page' => 25,
|
|
],
|
|
|
|
// Primer CSS CDN
|
|
'primer_css_url' => 'https://unpkg.com/@primer/css@^20.2.4/dist/primer.css',
|
|
|
|
// Log Settings
|
|
'log' => [
|
|
'max_entries' => 1000,
|
|
'levels' => ['info', 'warning', 'error', 'success'],
|
|
],
|
|
];
|