Kaydet (Commit) 10b001d3 authored tarafından mertcelen's avatar mertcelen

Bug fixes for script import and server page fixes.

üst 94770c01
......@@ -41,9 +41,7 @@ class OneController extends Controller
}else{
// Get extension scripts
$scripts = Script::extension($extension->name);
// Get server object from middleware.
$scripts = Script::where('extensions','like',strtolower($extension->name))->get();
$outputs = [];
......@@ -52,6 +50,12 @@ class OneController extends Controller
// Get Script
$script = $scripts->where('unique_code', $unique_code)->first();
// Check if required script is available or not.
if(!$script){
return respond("Eklenti için gerekli olan betik yüklü değil, lütfen yöneticinizle görüşün.",404);
}
// Run Script with no parameters.
$output = $server->runScript($script, '');
......
......@@ -71,7 +71,7 @@ class OneController extends Controller
$parameters = \request('ip') . ' ' . \request('cidr') . ' ' . \request('gateway') . ' ' . \request('interface');
// Get Script Object
$script = \App\Script::where('unique_code','set_network')->first();
$script = \App\Script::where('unique_code','server_set_network')->first();
// Check if script exists, if not warn user.
if(!$script){
......@@ -136,7 +136,13 @@ class OneController extends Controller
public function hostname()
{
// Obtain Script from Database
$script = Script::where('unique_code','set_hostname')->first();
$script = Script::where('unique_code','server_set_hostname')->first();
// Check If Script Exists
if(!$script){
return respond("Hostname değiştirme betiği bulunamadı.",200);
}
// Simply run that script on server.
$output = server()->runScript($script, \request('hostname'));
......@@ -269,7 +275,7 @@ class OneController extends Controller
}
// Get Install script from extension.
$script = Script::where('unique_code', $extension->setup)->first();
$script = Script::where('unique_code', $extension->install_script)->first();
//Just a double check if script is not installed, warn user.
if(!$script){
......
......@@ -54,10 +54,15 @@ class InstallService implements ShouldQueue
$service_status = "sudo systemctl is-failed " . $this->extension->service;
$query = "ssh -p " . $this->server->port . " " . $this->key->username . "@" . $this->server->ip_address
. " -i " . storage_path('keys') . DIRECTORY_SEPARATOR . $this->user->_id . " " . $service_status . " 2>&1";
$log = shell_exec($query);
if ($log == "active\n") {
$this->server->extensions = array_merge($this->server->extensions, [$this->extension->_id]);
$extensions_array = $this->server->extensions;
$extensions_array[$this->extension->_id] = [];
$this->server->extensions = $extensions_array;
$this->server->save();
$this->notification->type = "success";
$this->notification->title = $this->extension->name . " kuruldu";
$this->notification->message = $this->extension->name . " servisi kurulumu başarıyla tamamlandı.";
......
......@@ -69,7 +69,7 @@ class Script extends Eloquent
$parameters[$i] = str_replace("# ","",$parameters[$i]);
switch ($i){
case 0:
$script->language = $parameters[$i];
$script->language = substr($parameters[$i],2);
break;
case 1:
$script->encoding = $parameters[$i];
......
// function navbar(flag) {
// let sidebar = document.getElementsByClassName("sidebar")[0];
// if(flag){
// sidebar.style.width = "230px";
// toggle("visible");
// }else{
// sidebar.style.width = "60px";
// toggle("hidden");
// }
//
// function toggle(target){
// Array.prototype.forEach.call(document.querySelectorAll('.sidebar-name'), function (el) {
// el.style.visibility = target;
// });
// }
// }
function request(url, data, next) {
let id = null;
......@@ -28,6 +12,7 @@ function request(url, data, next) {
if (id != null) {
loading();
}
console.log(id);
let r = new XMLHttpRequest();
r.open("POST", url);
r.setRequestHeader('X-CSRF-TOKEN', csrf);
......@@ -91,11 +76,11 @@ function search() {
function loading() {
let element = document.getElementsByClassName('loading')[0];
console.log(element.style.display);
if(element.style.display === "unset"){
element.style.display = "none";
console.log(element.style.visibility);
if(element.style.visibility === "hidden"){
element.style.visibility = "visible";
}else {
element.style.display = 'unset';
element.style.visibility = 'hidden';
}
}
......
<div class="loading" style="display: none">
<div class="loading" style="visibility: hidden">
<div class="wrapper">
</div>
......@@ -13,7 +13,7 @@
background-color: rgba(201, 76, 76, 0.5);
filter: grayscale(1) blur(1.5rem);
-webkit-filter: grayscale(1) blur(1.5rem);
z-index: 99998;
z-index: 999989;
}
.loader {
......@@ -26,7 +26,7 @@
position: absolute;
left: 40%;
top: 40%;
z-index: 99999;
z-index: 999999;
}
@keyframes spin {
......
......@@ -2,6 +2,18 @@
@section('content')
<?php
$input_extensions = [];
foreach($available_extensions as $extension){
$arr = [];
foreach($extension->install as $key => $parameter){
$arr[$parameter["name"]] = $key . ":" . $parameter["type"];
}
$arr[$extension->name . ":" . $extension->_id] = "extension_id:hidden";
$input_extensions[$extension->name . ":" . $extension->_id] = $arr;
}
?>
@include('title',[
"title" => $server->name
])
......@@ -13,11 +25,13 @@
"target_id" => "edit",
"text" => "Düzenle"
])
@include('modal-button',[
"class" => "btn-secondary",
"target_id" => "install_extension",
"text" => "Servis Ekle"
])
@if(count($input_extensions))
@include('modal-button',[
"class" => "btn-secondary",
"target_id" => "install_extension",
"text" => "Servis Ekle"
])
@endif
@include('modal-button',[
"class" => "btn-info",
"target_id" => "change_network",
......@@ -250,29 +264,20 @@
],
"submit_text" => "İndir"
])
<?php
$input_extensions = [];
foreach($available_extensions as $extension){
$arr = [];
foreach($extension->install as $key => $parameter){
$arr[$parameter["name"]] = $key . ":" . $parameter["type"];
}
$arr[$extension->name . ":" . $extension->_id] = "extension_id:hidden";
$input_extensions[$extension->name . ":" . $extension->_id] = $arr;
}
?>
@include('modal',[
"id"=>"install_extension",
"title" => "Servis Yükle",
"url" => route('server_extension'),
"next" => "message",
"selects" => $input_extensions,
"inputs" => [
"Sunucu Id:$server->_id" => "server_id:hidden"
],
"submit_text" => "Değiştir"
])
@if(count($input_extensions))
@include('modal',[
"id"=>"install_extension",
"title" => "Servis Yükle",
"url" => route('server_extension'),
"next" => "message",
"selects" => $input_extensions,
"inputs" => [
"Sunucu Id:$server->_id" => "server_id:hidden"
],
"submit_text" => "Değiştir"
])
@endif
<script>
function checkStatus(service){
let data = new FormData();
......@@ -295,7 +300,7 @@
@endif
function downloadFile(form){
loading();
//loading();
window.location.assign('/sunucu/indir?path=' + form.getElementsByTagName('input')[0].value + '&server_id=' + form.getElementsByTagName('input')[1].value);
return false;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment