mirror of
https://git.hexahost.dev/smueller/HexaHost-Frontend.git
synced 2026-06-02 17:08:43 +00:00
Compare commits
15 Commits
v1.4.2
...
96a5977283
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
96a5977283 | ||
|
|
ec8686761c | ||
|
|
d3da589a1d | ||
|
|
b6e268855e | ||
|
|
d02377c735 | ||
|
|
d62d6b576d | ||
|
|
2c0138f55d | ||
|
|
2074707c9d | ||
|
|
55f9fdd957 | ||
|
|
ab81d1c49f | ||
|
|
b40ad53d9c | ||
|
|
e5402189ea | ||
|
|
e544720900 | ||
| a5bba86db0 | |||
| d34dbbb079 |
@@ -10,6 +10,9 @@
|
||||
* $packages = getProductPackages('vpc');
|
||||
*/
|
||||
|
||||
// Temporär ausgeblendete Produkte (einfach IDs aus dieser Liste entfernen, um sie wieder im Shop anzuzeigen)
|
||||
$HIDDEN_PRODUCTS = ['vpc', 'vps'];
|
||||
|
||||
// ============================================================================
|
||||
// VIRTUAL PRIVATE CONTAINER (VPC)
|
||||
// ============================================================================
|
||||
@@ -265,8 +268,6 @@ $PRODUCTS['mail-gateway'] = [
|
||||
'Webmail',
|
||||
'IMAP/POP3',
|
||||
'SSL/TLS Verschlüsselung',
|
||||
'E-Mail Archivierung (30 Tage)',
|
||||
'Kalender & Kontakte',
|
||||
],
|
||||
],
|
||||
'professional' => [
|
||||
@@ -285,9 +286,6 @@ $PRODUCTS['mail-gateway'] = [
|
||||
'Webmail',
|
||||
'IMAP/POP3',
|
||||
'SSL/TLS Verschlüsselung',
|
||||
'E-Mail Archivierung (1 Jahr)',
|
||||
'Kalender & Kontakte',
|
||||
'ActiveSync für Mobile',
|
||||
],
|
||||
],
|
||||
'enterprise' => [
|
||||
@@ -306,9 +304,6 @@ $PRODUCTS['mail-gateway'] = [
|
||||
'Webmail',
|
||||
'IMAP/POP3',
|
||||
'SSL/TLS Verschlüsselung',
|
||||
'E-Mail Archivierung (10 Jahre)',
|
||||
'Kalender & Kontakte',
|
||||
'ActiveSync für Mobile',
|
||||
'Dedizierte IP',
|
||||
'Priority Support',
|
||||
],
|
||||
@@ -322,50 +317,56 @@ $PRODUCTS['mail-gateway'] = [
|
||||
$PRODUCTS['webhosting'] = [
|
||||
'name' => 'Webhosting',
|
||||
'short_name' => 'Webhosting',
|
||||
'description' => 'Klassisches Hosting mit PHP, MySQL und SSL',
|
||||
'min_price' => '1,99',
|
||||
'description' => 'Klassisches Hosting mit PHP, MySQL und SSL. WordPress-ready mit Plesk Webhosting.',
|
||||
'min_price' => '2,99',
|
||||
'hero_highlight' => 'Alles für Ihre Website',
|
||||
'hero_description' => 'Klassisches Webhosting mit allem, was Sie für eine erfolgreiche Website benötigen. PHP, MySQL, SSL-Zertifikate und E-Mail-Postfächer - alles inklusive.',
|
||||
'packages_title' => 'Webhosting Pakete',
|
||||
'packages_description' => 'Von der ersten Website bis zum professionellen Online-Shop',
|
||||
'cta_title' => 'Bereit für Ihr Webhosting?',
|
||||
'cta_description' => 'Starten Sie noch heute mit professionellem Webhosting',
|
||||
'page_title' => 'Webhosting - Klassisches Hosting für Websites | HexaHost.de',
|
||||
'page_description' => 'Webhosting mit PHP, MySQL und SSL-Zertifikaten. Klassisches Hosting für Websites ab 1,99€/Monat bei HexaHost.de',
|
||||
'page_title' => 'Webhosting - Klassisches Hosting für Websites - WordPress-ready | HexaHost.de',
|
||||
'page_description' => 'Webhosting mit PHP, MySQL und SSL-Zertifikaten. Klassisches Hosting für Websites - WordPress-ready ab 2,99€/Monat bei HexaHost.de',
|
||||
'packages' => [
|
||||
'starter' => [
|
||||
'name' => 'Webhosting Starter',
|
||||
'price' => '1,99',
|
||||
'price' => '2,99',
|
||||
'featured' => false,
|
||||
'specs' => [
|
||||
['label' => 'Webspace', 'value' => '5 GB'],
|
||||
['label' => 'Webspace', 'value' => '10 GB'],
|
||||
['label' => 'Domains', 'value' => '1'],
|
||||
['label' => 'E-Mail-Postfächer', 'value' => '5'],
|
||||
['label' => 'Datenbanken', 'value' => '1 MySQL'],
|
||||
['label' => 'Traffic', 'value' => '10 GB'],
|
||||
['label' => 'Subdomains', 'value' => '5'],
|
||||
['label' => 'Domain Aliase', 'value' => '2'],
|
||||
['label' => 'E-Mail-Postfächer', 'value' => '10'],
|
||||
['label' => 'Datenbanken', 'value' => '2 MySQL'],
|
||||
['label' => 'Traffic', 'value' => '100 GB'],
|
||||
],
|
||||
'features' => [
|
||||
'cPanel/Webmin',
|
||||
'PHP 8.1',
|
||||
'Plesk Webhosting',
|
||||
'PHP 8.4',
|
||||
'Git, WP Toolkit, Composer',
|
||||
'SSL-Zertifikat',
|
||||
'E-Mail-Postfächer',
|
||||
'MySQL Datenbank',
|
||||
'MySQL Datenbanken',
|
||||
],
|
||||
],
|
||||
'business' => [
|
||||
'name' => 'Webhosting Business',
|
||||
'price' => '4,99',
|
||||
'price' => '7,99',
|
||||
'featured' => true,
|
||||
'specs' => [
|
||||
['label' => 'Webspace', 'value' => '20 GB'],
|
||||
['label' => 'Domains', 'value' => '5'],
|
||||
['label' => 'E-Mail-Postfächer', 'value' => '25'],
|
||||
['label' => 'Webspace', 'value' => '30 GB'],
|
||||
['label' => 'Domains Inkl.', 'value' => '1'],
|
||||
['label' => 'Subdomains', 'value' => '10'],
|
||||
['label' => 'Domain Aliase', 'value' => '2'],
|
||||
['label' => 'E-Mail-Postfächer', 'value' => '20'],
|
||||
['label' => 'Datenbanken', 'value' => '5 MySQL'],
|
||||
['label' => 'Traffic', 'value' => '50 GB'],
|
||||
['label' => 'Traffic', 'value' => '100 GB'],
|
||||
],
|
||||
'features' => [
|
||||
'cPanel/Webmin',
|
||||
'PHP 8.1',
|
||||
'Plesk Webhosting',
|
||||
'PHP 8.4',
|
||||
'Git, WP Toolkit, Composer',
|
||||
'SSL-Zertifikat',
|
||||
'E-Mail-Postfächer',
|
||||
'MySQL Datenbanken',
|
||||
@@ -374,18 +375,21 @@ $PRODUCTS['webhosting'] = [
|
||||
],
|
||||
'professional' => [
|
||||
'name' => 'Webhosting Professional',
|
||||
'price' => '9,99',
|
||||
'price' => '13,99',
|
||||
'featured' => false,
|
||||
'specs' => [
|
||||
['label' => 'Webspace', 'value' => '50 GB'],
|
||||
['label' => 'Domains', 'value' => 'Unbegrenzt'],
|
||||
['label' => 'E-Mail-Postfächer', 'value' => '100'],
|
||||
['label' => 'Datenbanken', 'value' => 'Unbegrenzt'],
|
||||
['label' => 'Traffic', 'value' => '200 GB'],
|
||||
['label' => 'Domains Inkl.', 'value' => '1'],
|
||||
['label' => 'Subdomains', 'value' => 'unbegrenzt'],
|
||||
['label' => 'Domain Aliase', 'value' => 'unbegrenzt'],
|
||||
['label' => 'E-Mail-Postfächer', 'value' => '20'],
|
||||
['label' => 'Datenbanken', 'value' => '20 MySQL'],
|
||||
['label' => 'Traffic', 'value' => '100 GB'],
|
||||
],
|
||||
'features' => [
|
||||
'cPanel/Webmin',
|
||||
'PHP 8.1',
|
||||
'Plesk Webhosting',
|
||||
'PHP 8.4',
|
||||
'Git, WP Toolkit, Composer',
|
||||
'SSL-Zertifikat',
|
||||
'E-Mail-Postfächer',
|
||||
'MySQL Datenbanken',
|
||||
@@ -399,14 +403,17 @@ $PRODUCTS['webhosting'] = [
|
||||
'featured' => false,
|
||||
'specs' => [
|
||||
['label' => 'Webspace', 'value' => '100 GB'],
|
||||
['label' => 'Domains', 'value' => 'Unbegrenzt'],
|
||||
['label' => 'E-Mail-Postfächer', 'value' => 'Unbegrenzt'],
|
||||
['label' => 'Domains Inkl.', 'value' => '3'],
|
||||
['label' => 'Subdomains', 'value' => 'unbegrenzt'],
|
||||
['label' => 'Domain Aliase', 'value' => 'unbegrenzt'],
|
||||
['label' => 'E-Mail-Postfächer', 'value' => '100'],
|
||||
['label' => 'Datenbanken', 'value' => 'Unbegrenzt'],
|
||||
['label' => 'Traffic', 'value' => '500 GB'],
|
||||
['label' => 'Traffic', 'value' => '1 TB'],
|
||||
],
|
||||
'features' => [
|
||||
'cPanel/Webmin',
|
||||
'PHP 8.1',
|
||||
'Plesk Webhosting',
|
||||
'PHP 8.4',
|
||||
'Git, WP Toolkit, Composer',
|
||||
'SSL-Zertifikat',
|
||||
'E-Mail-Postfächer',
|
||||
'MySQL Datenbanken',
|
||||
@@ -438,6 +445,14 @@ function getProduct($productId) {
|
||||
return $PRODUCTS[$productId] ?? null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prüft, ob ein Produkt im Shop angezeigt werden soll
|
||||
*/
|
||||
function isProductVisible($productId) {
|
||||
global $HIDDEN_PRODUCTS;
|
||||
return !in_array($productId, $HIDDEN_PRODUCTS, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Alle Pakete eines Produkts abrufen
|
||||
*/
|
||||
|
||||
68
backend/config/site-config.php
Normal file
68
backend/config/site-config.php
Normal file
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
/**
|
||||
* HexaHost.de – zentrale Domain- und Umgebungskonfiguration
|
||||
*/
|
||||
|
||||
define('SITE_DOMAIN_PRODUCTION', 'hexahost.de');
|
||||
define('SITE_DOMAIN_DEVELOPMENT', 'dev.hexahost.de');
|
||||
|
||||
/**
|
||||
* Aktuellen HTTP-Host (ohne Port) ermitteln
|
||||
*/
|
||||
function getSiteHost(): string
|
||||
{
|
||||
$host = $_SERVER['HTTP_HOST'] ?? SITE_DOMAIN_PRODUCTION;
|
||||
$host = strtolower($host);
|
||||
|
||||
if (str_contains($host, ':')) {
|
||||
$host = explode(':', $host, 2)[0];
|
||||
}
|
||||
|
||||
return $host;
|
||||
}
|
||||
|
||||
/**
|
||||
* true, wenn die Seite unter der Dev-Domain läuft
|
||||
*/
|
||||
function isDevelopmentSite(): bool
|
||||
{
|
||||
return getSiteHost() === SITE_DOMAIN_DEVELOPMENT;
|
||||
}
|
||||
|
||||
/**
|
||||
* Basis-URL der aktuellen Anfrage (Schema + Host)
|
||||
*/
|
||||
function getSiteBaseUrl(): string
|
||||
{
|
||||
$https = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off')
|
||||
|| (isset($_SERVER['SERVER_PORT']) && (int) $_SERVER['SERVER_PORT'] === 443);
|
||||
|
||||
$scheme = $https ? 'https' : 'http';
|
||||
|
||||
return $scheme . '://' . getSiteHost();
|
||||
}
|
||||
|
||||
/**
|
||||
* Erlaubte CORS-Origins für AJAX (Kontaktformular)
|
||||
*
|
||||
* @return list<string>
|
||||
*/
|
||||
function getAllowedOrigins(): array
|
||||
{
|
||||
return [
|
||||
'https://' . SITE_DOMAIN_PRODUCTION,
|
||||
'https://www.' . SITE_DOMAIN_PRODUCTION,
|
||||
'https://' . SITE_DOMAIN_DEVELOPMENT,
|
||||
'http://localhost',
|
||||
'http://127.0.0.1',
|
||||
'http://localhost:8000',
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Kanonische Basis-URL für SEO (Produktion immer hexahost.de)
|
||||
*/
|
||||
function getCanonicalBaseUrl(): string
|
||||
{
|
||||
return 'https://' . SITE_DOMAIN_PRODUCTION;
|
||||
}
|
||||
@@ -3,6 +3,12 @@
|
||||
* Helper functions for HexaHost.de
|
||||
*/
|
||||
|
||||
$configDir = defined('HEXAHOST_CONFIG_DIR')
|
||||
? HEXAHOST_CONFIG_DIR
|
||||
: __DIR__ . '/../config';
|
||||
|
||||
require_once $configDir . '/site-config.php';
|
||||
|
||||
// Sichere Session-Konfiguration
|
||||
if (session_status() === PHP_SESSION_NONE) {
|
||||
// Session-Cookie-Sicherheit
|
||||
@@ -51,6 +57,11 @@ function includeHeader($title = '', $description = '', $page = '', $scripts = []
|
||||
|
||||
$current_page = $page;
|
||||
$additional_scripts = $scripts;
|
||||
|
||||
if (!isset($canonical_url)) {
|
||||
$requestPath = parse_url($_SERVER['REQUEST_URI'] ?? '/', PHP_URL_PATH) ?: '/';
|
||||
$canonical_url = rtrim(getCanonicalBaseUrl(), '/') . $requestPath;
|
||||
}
|
||||
|
||||
include __DIR__ . '/header.php';
|
||||
}
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
<!DOCTYPE html>
|
||||
<?php
|
||||
$configDir = defined('HEXAHOST_CONFIG_DIR') ? HEXAHOST_CONFIG_DIR : __DIR__ . '/../config';
|
||||
require_once $configDir . '/products-config.php';
|
||||
?>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
@@ -61,8 +65,12 @@
|
||||
<li class="nav-dropdown">
|
||||
<a href="#" class="nav-link <?php echo (in_array($current_page, ['vpc', 'vps', 'mail-gateway', 'webhosting'])) ? 'active' : ''; ?>">Produkte</a>
|
||||
<ul class="dropdown-menu">
|
||||
<?php if (isProductVisible('vpc')): ?>
|
||||
<li><a href="/vpc" class="<?php echo ($current_page === 'vpc') ? 'active' : ''; ?>">Virtual Private Container</a></li>
|
||||
<?php endif; ?>
|
||||
<?php if (isProductVisible('vps')): ?>
|
||||
<li><a href="/vps" class="<?php echo ($current_page === 'vps') ? 'active' : ''; ?>">Virtual Private Server</a></li>
|
||||
<?php endif; ?>
|
||||
<li><a href="/mail-gateway" class="<?php echo ($current_page === 'mail-gateway') ? 'active' : ''; ?>">Mail Gateway</a></li>
|
||||
<li><a href="/webhosting" class="<?php echo ($current_page === 'webhosting') ? 'active' : ''; ?>">Webhosting</a></li>
|
||||
</ul>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = '404 - Seite nicht gefunden | HexaHost.de';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = '500 - Serverfehler | HexaHost.de';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = 'Über mich - HexaHost.de | Hosting aus Niederbayern';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = 'Allgemeine Geschäftsbedingungen - HexaHost.de | AGB';
|
||||
|
||||
@@ -15,3 +15,52 @@
|
||||
justify-content: center;
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
/* IT-Dienstleistungen auf Startseite: ausgewogenes 3x2-Grid */
|
||||
.it-services-grid {
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||
max-width: 980px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.it-services-grid .feature-item {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.it-services-grid {
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 640px) {
|
||||
.it-services-grid {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
}
|
||||
|
||||
/* Animierter Farbverlauf für "Beliebt"-Badge */
|
||||
.featured-badge {
|
||||
background: linear-gradient(135deg, #ff51f9 0%, #a348ff 50%, #3978ff 100%);
|
||||
background-size: 220% 220%;
|
||||
animation: featured-badge-colors 6s ease infinite;
|
||||
}
|
||||
|
||||
@keyframes featured-badge-colors {
|
||||
0% {
|
||||
background-position: 0% 50%;
|
||||
}
|
||||
50% {
|
||||
background-position: 100% 50%;
|
||||
}
|
||||
100% {
|
||||
background-position: 0% 50%;
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.featured-badge {
|
||||
animation: none;
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
41
public/bootstrap.php
Normal file
41
public/bootstrap.php
Normal file
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
/**
|
||||
* HexaHost – Bootstrap für Monorepo- und Produktions-Layout
|
||||
*
|
||||
* Monorepo: public/../backend/{includes,config}
|
||||
* Produktion: public/{includes,config} (nach Backend-Kopie)
|
||||
*/
|
||||
|
||||
if (!defined('HEXAHOST_BOOTSTRAPPED')) {
|
||||
$pathCandidates = [
|
||||
[
|
||||
'includes' => __DIR__ . '/includes',
|
||||
'config' => __DIR__ . '/config',
|
||||
],
|
||||
[
|
||||
'includes' => __DIR__ . '/../backend/includes',
|
||||
'config' => __DIR__ . '/../backend/config',
|
||||
],
|
||||
];
|
||||
|
||||
$resolved = false;
|
||||
|
||||
foreach ($pathCandidates as $paths) {
|
||||
if (is_file($paths['includes'] . '/functions.php')) {
|
||||
define('HEXAHOST_INCLUDES_DIR', $paths['includes']);
|
||||
define('HEXAHOST_CONFIG_DIR', $paths['config']);
|
||||
require_once $paths['includes'] . '/functions.php';
|
||||
$resolved = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!$resolved) {
|
||||
http_response_code(500);
|
||||
header('Content-Type: text/plain; charset=utf-8');
|
||||
echo 'HexaHost: Anwendung konnte nicht gestartet werden (includes nicht gefunden).';
|
||||
exit;
|
||||
}
|
||||
|
||||
define('HEXAHOST_BOOTSTRAPPED', true);
|
||||
}
|
||||
@@ -9,8 +9,10 @@ if (session_status() === PHP_SESSION_NONE) {
|
||||
session_start();
|
||||
}
|
||||
|
||||
// Konfiguration laden
|
||||
require_once 'config/mail-config.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
$configDir = defined('HEXAHOST_CONFIG_DIR') ? HEXAHOST_CONFIG_DIR : __DIR__ . '/config';
|
||||
require_once $configDir . '/mail-config.php';
|
||||
|
||||
// PHPMailer Autoload (falls via Composer installiert)
|
||||
if (file_exists(__DIR__ . '/vendor/autoload.php')) {
|
||||
@@ -43,13 +45,8 @@ function validateCSRFToken($token) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// CORS Headers für AJAX-Requests (nur eigene Domain erlauben)
|
||||
$allowed_origins = [
|
||||
'https://hexahost.de',
|
||||
'https://www.hexahost.de',
|
||||
'http://localhost', // Für Entwicklung
|
||||
'http://127.0.0.1' // Für Entwicklung
|
||||
];
|
||||
// CORS Headers für AJAX-Requests (nur eigene Domains erlauben)
|
||||
$allowed_origins = getAllowedOrigins();
|
||||
|
||||
$origin = $_SERVER['HTTP_ORIGIN'] ?? '';
|
||||
if (in_array($origin, $allowed_origins)) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
require_once HEXAHOST_CONFIG_DIR . '/products-config.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = 'Kontakt - HexaHost.de | Hosting aus Niederbayern';
|
||||
@@ -130,8 +131,12 @@ includeHeader($page_title, $page_description, $current_page, $additional_scripts
|
||||
<select id="subject" name="subject" required>
|
||||
<option value="">Bitte wählen...</option>
|
||||
<option value="allgemeine-anfrage">Allgemeine Anfrage</option>
|
||||
<?php if (isProductVisible('vpc')): ?>
|
||||
<option value="vpc-anfrage">Virtual Private Container</option>
|
||||
<?php endif; ?>
|
||||
<?php if (isProductVisible('vps')): ?>
|
||||
<option value="vps-anfrage">Virtual Private Server</option>
|
||||
<?php endif; ?>
|
||||
<option value="mail-gateway-anfrage">Mail Gateway</option>
|
||||
<option value="webhosting-anfrage">Webhosting</option>
|
||||
<option value="it-beratung">IT-Beratung</option>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = 'Datenschutzerklärung - HexaHost.de | Datenschutz';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = 'Impressum - HexaHost.de | Rechtliche Angaben';
|
||||
@@ -23,7 +23,7 @@ includeHeader($page_title, $page_description, $current_page);
|
||||
?>
|
||||
<h1 class="legal-hero-title">Impressum</h1>
|
||||
<p class="legal-hero-description">
|
||||
|
||||
Rechtliche Angaben und Pflichtinformationen gemäß § 5 DDG
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
require_once HEXAHOST_CONFIG_DIR . '/products-config.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = 'HexaHost.de - Zuverlässiges Hosting aus Niederbayern';
|
||||
@@ -54,6 +55,7 @@ includeHeader($page_title, $page_description, $current_page);
|
||||
</p>
|
||||
</div>
|
||||
<div class="products-grid">
|
||||
<?php if (isProductVisible('vpc')): ?>
|
||||
<div class="product-card glass-card">
|
||||
<div class="product-icon">
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
@@ -74,6 +76,8 @@ includeHeader($page_title, $page_description, $current_page);
|
||||
</ul>
|
||||
<a href="/vpc" class="btn btn-primary">Mehr erfahren</a>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php if (isProductVisible('vps')): ?>
|
||||
<div class="product-card glass-card">
|
||||
<div class="product-icon">
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
@@ -92,6 +96,7 @@ includeHeader($page_title, $page_description, $current_page);
|
||||
</ul>
|
||||
<a href="/vps" class="btn btn-primary">Mehr erfahren</a>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<div class="product-card glass-card">
|
||||
<div class="product-icon">
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
@@ -151,7 +156,7 @@ includeHeader($page_title, $page_description, $current_page);
|
||||
</section>
|
||||
|
||||
<!-- IT Services Section -->
|
||||
<section class="features">
|
||||
<section class="features it-services-section">
|
||||
<div class="container">
|
||||
<div class="section-header">
|
||||
<h2 class="section-title">IT-Dienstleistungen für Privat und ergänzend Gewerblich</h2>
|
||||
@@ -159,7 +164,7 @@ includeHeader($page_title, $page_description, $current_page);
|
||||
Ergänzend zu unseren Hosting-Angeboten unterstützen wir Sie mit persönlicher IT-Betreuung.
|
||||
</p>
|
||||
</div>
|
||||
<div class="features-grid">
|
||||
<div class="features-grid it-services-grid">
|
||||
<div class="feature-item glass-card">
|
||||
<h3>IT-Beratung</h3>
|
||||
<p>Individuelle Beratung für sinnvolle und wirtschaftliche IT-Entscheidungen.</p>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = 'IT-Dienstleistungen - HexaHost.de | Privat & Gewerblich';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/../backend/config/products-config.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
require_once HEXAHOST_CONFIG_DIR . '/products-config.php';
|
||||
|
||||
// Produkt-Daten aus Config laden
|
||||
$product = getProduct('mail-gateway');
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/../backend/config/products-config.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
require_once HEXAHOST_CONFIG_DIR . '/products-config.php';
|
||||
|
||||
// Produkt-Daten aus Config laden
|
||||
$product = getProduct('vpc');
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/../backend/config/products-config.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
require_once HEXAHOST_CONFIG_DIR . '/products-config.php';
|
||||
|
||||
// Produkt-Daten aus Config laden
|
||||
$product = getProduct('vps');
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/../backend/config/products-config.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
require_once HEXAHOST_CONFIG_DIR . '/products-config.php';
|
||||
|
||||
// Produkt-Daten aus Config laden
|
||||
$product = getProduct('webhosting');
|
||||
@@ -95,8 +95,8 @@ includeHeader($page_title, $page_description, $current_page);
|
||||
<polyline points="10,9 9,9 8,9"/>
|
||||
</svg>
|
||||
</div>
|
||||
<h3>cPanel/Webmin</h3>
|
||||
<p>Benutzerfreundliche Verwaltungsoberfläche für einfache Website-Verwaltung und E-Mail-Konfiguration.</p>
|
||||
<h3>Plesk Webhosting</h3>
|
||||
<p>Plesk Webhosting ist eine benutzerfreundliche Verwaltungsoberfläche für einfache Website-Verwaltung und E-Mail-Konfiguration.</p>
|
||||
</div>
|
||||
<div class="detail-card glass-card">
|
||||
<div class="detail-icon">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/../backend/includes/functions.php';
|
||||
require_once __DIR__ . '/bootstrap.php';
|
||||
|
||||
// Page configuration
|
||||
$page_title = 'Widerrufsbelehrung - HexaHost.de';
|
||||
|
||||
Reference in New Issue
Block a user