Files
Joseph.Rawlings d8b76233c0 Add nodes management and initial setup pages
- 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.
2025-12-14 01:33:12 -05:00

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'],
],
];