This commit is contained in:
Kevin Adametz 2024-08-05 12:05:24 +02:00
parent 04d677d37a
commit bfa3bb1df4
1191 changed files with 637397 additions and 10619 deletions

View file

@ -18,19 +18,29 @@ class DomainSSL
//$domain = 'mivita.care';
// $ssl = KasSLLController::getApiSSLParameter();
$SubDomains = [];
$get_subdomains = $kas->action('get_subdomains');
foreach ($get_subdomains as $subdomain){
if(isset($subdomain['subdomain_name'])){
if(strpos($subdomain['subdomain_name'], 'www.') !== false){
continue;
}
if(strpos($subdomain['subdomain_name'], 'api.') !== false){
continue;
}
if(strpos($subdomain['subdomain_name'], 'checkout.') !== false){
continue;
}
$SubDomains[$subdomain['subdomain_name']] =
[
'ssl_certificate_sni' => $subdomain['ssl_certificate_sni'],
'php_version' => $subdomain['php_version'],
];
if(strpos($subdomain['subdomain_name'], 'www.') !== false){
continue;
}else{
@dump($subdomain);
}
if(strpos($subdomain['subdomain_name'], 'api.') !== false){
continue;
}
if(strpos($subdomain['subdomain_name'], 'checkout.') !== false){
continue;
}
$SubDomains[$subdomain['subdomain_name']] = $subdomain['ssl_certificate_sni'];
/* if($subdomain['ssl_certificate_sni'] !== "Y"){
$pra = array(
@ -50,19 +60,32 @@ class DomainSSL
//$text .= "\n";
}
$dobbleDomains = [];
foreach($user_shops as $user_shop){
$user_shop->hasSubdomain = false;
$user_shop->hasSSL = false;
$user_shop->PHPversion = "";
if(array_key_exists($user_shop->slug.'.mivita.care', $SubDomains)){
$user_shop->hasSubdomain = true;
$user_shop->hasSSL = $SubDomains[$user_shop->slug.'.mivita.care'] === 'Y' ? true : false;
$user_shop->hasSSL = $SubDomains[$user_shop->slug.'.mivita.care']['ssl_certificate_sni'] === 'Y' ? true : false;
$user_shop->PHPversion = $SubDomains[$user_shop->slug.'.mivita.care']['php_version'];
unset($SubDomains[$user_shop->slug.'.mivita.care']);
}
$dobbleDomains[$user_shop->user_id][$user_shop->id] = $user_shop->slug.'.mivita.care';
}
foreach($dobbleDomains as $key => $dobbleDomain){
if(count($dobbleDomain) === 1){
unset($dobbleDomains[$key]);
}
}
$data = [
'values' => $user_shops,
'text' => $text,
'SubDomains' => $SubDomains,
'dobbleDomains' => $dobbleDomains,
];
return view('sys.tools.domain-ssl', $data);
@ -98,16 +121,22 @@ class DomainSSL
}
if(isset($data['update_ssl'])){
//prüfen ob subdomain existiert
$user_shop = UserShop::findOrFail($data['update_ssl']);
$subdomain_name = $user_shop->slug.'.mivita.care';
$kas = new KasController();
$ssl = KasSLLController::getApiSSLParameter();
$pra = array(
'hostname' => $subdomain_name
);
$pra = array_merge($pra, $ssl);
$value = $kas->action('update_ssl', $pra);
\Session()->flash('alert-success', 'update SSL: '.$value.'');
$subdomain = $kas->action('get_subdomains', ['subdomain_name' => $subdomain_name]);
if(!isset($subdomain[0]['subdomain_name'])){ //not found
self::makeNewSubDomain($user_shop->slug);
\Session()->flash('alert-danger', 'subdomain: '.$subdomain_name.' nicht gefunden');
return back();
}else{
self::updateSubDomain($subdomain_name);
}
}
@ -115,4 +144,55 @@ class DomainSSL
return back();
}
private static function updateSubDomain($subdomain_name){
$kas = new KasController();
$ssl = KasSLLController::getApiSSLParameter();
$pra = array(
'hostname' => $subdomain_name
);
$pra = array_merge($pra, $ssl);
$value = $kas->action('update_ssl', $pra);
\Session()->flash('alert-success', 'update SSL: '.$value.'');
return $value;
}
private static function makeNewSubDomain($slug){
$kas = new KasController();
$domain = 'mivita.care';
//check if exisist
$subdomains = $kas->action('get_subdomains');
foreach ($subdomains as $subdomain){
if(!isset($subdomain['subdomain_name'])){
continue;
}
$sub = str_replace(".".$domain, '', $subdomain['subdomain_name']);
if($sub == $slug){
\Session()->flash('alert-danger', __('shop.error_subdomain_exists'));
return;
}
}
//add
$full_subdomain_name = $slug.".".$domain;
$pra = array(
'subdomain_name' => $slug,
'domain_name' => $domain,
'subdomain_path' => '/mein.mivita.care/public/',
'php_version' => config('app.php_version'),
//'ssl_proxy' => 'Y',
//'redirect_status' => 0
);
$add_subdomain = $kas->action('add_subdomain', $pra);
if($add_subdomain == $full_subdomain_name){
\Session()->flash('alert-success', 'Add Subdomain: '.$add_subdomain.'');
return $add_subdomain;
}
\Session()->flash('alert-danger', 'Fehler: '.$add_subdomain.'');
return $add_subdomain;
}
}