mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-08 06:16:08 +01:00
Upcloudfull
This commit is contained in:
@@ -98,21 +98,21 @@ app.filter('getwebsitename', function () {
|
||||
};
|
||||
});
|
||||
|
||||
function getWebsiteName(domain){
|
||||
function getWebsiteName(domain) {
|
||||
if (domain !== undefined) {
|
||||
|
||||
domain = domain.replace(/-/g, '');
|
||||
domain = domain.replace(/-/g, '');
|
||||
|
||||
var domainName = domain.split(".");
|
||||
var domainName = domain.split(".");
|
||||
|
||||
var finalDomainName = domainName[0];
|
||||
var finalDomainName = domainName[0];
|
||||
|
||||
if (finalDomainName.length > 5) {
|
||||
finalDomainName = finalDomainName.substring(0, 4);
|
||||
}
|
||||
|
||||
return finalDomainName;
|
||||
if (finalDomainName.length > 5) {
|
||||
finalDomainName = finalDomainName.substring(0, 4);
|
||||
}
|
||||
|
||||
return finalDomainName;
|
||||
}
|
||||
}
|
||||
|
||||
app.controller('systemStatusInfo', function ($scope, $http, $timeout) {
|
||||
@@ -654,3 +654,49 @@ app.controller('versionManagment', function ($scope, $http, $timeout) {
|
||||
};
|
||||
|
||||
});
|
||||
|
||||
|
||||
app.controller('designtheme', function ($scope, $http, $timeout) {
|
||||
|
||||
$scope.themeloading = true;
|
||||
|
||||
|
||||
$scope.getthemedata = function () {
|
||||
$scope.themeloading = false;
|
||||
|
||||
url = "/base/getthemedata";
|
||||
|
||||
var data = {
|
||||
package: "helo world",
|
||||
Themename: $('#stheme').val(),
|
||||
};
|
||||
|
||||
var config = {
|
||||
headers: {
|
||||
'X-CSRFToken': getCookie('csrftoken')
|
||||
}
|
||||
};
|
||||
|
||||
$http.post(url, data, config).then(Listgetthemedata, cantgetthemedata);
|
||||
|
||||
|
||||
function Listgetthemedata(response) {
|
||||
$scope.themeloading = true;
|
||||
|
||||
if (response.data.status === 1) {
|
||||
document.getElementById('appendthemedata').innerHTML = "";
|
||||
$("#appendthemedata").val(response.data.csscontent)
|
||||
} else {
|
||||
alert(response.data.error_message)
|
||||
}
|
||||
}
|
||||
|
||||
function cantgetthemedata(response) {
|
||||
$scope.themeloading = true;
|
||||
console.log(response);
|
||||
}
|
||||
|
||||
//$timeout(getStuff, 2000);
|
||||
|
||||
};
|
||||
});
|
||||
@@ -8,7 +8,7 @@
|
||||
<!-- Current language: {{ LANGUAGE_CODE }} -->
|
||||
|
||||
|
||||
<div class="container">
|
||||
<div class="container" ng-controller="designtheme">
|
||||
<div id="page-title">
|
||||
<h2>{% trans "Design" %}</h2>
|
||||
<p>{% trans "" %}</p>
|
||||
@@ -16,9 +16,11 @@
|
||||
<div class="panel">
|
||||
<div class="panel-body">
|
||||
<h3 class="content-box-header">
|
||||
{% trans "Custom CSS" %}
|
||||
{% trans "Custom CSS" %}<img ng-hide="themeloading"
|
||||
src="{% static 'images/loading.gif' %}">
|
||||
</h3>
|
||||
<p>Any CSS added here will apply to whole dashboard design.</p>
|
||||
|
||||
<div class="example-box-wrapper">
|
||||
<form action="{% url 'design' %}" method="POST" class="form-horizontal bordered-row panel-body">
|
||||
{% csrf_token %}
|
||||
@@ -34,9 +36,19 @@
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<select ng-change="getthemedata()" ng-model="stheme" id="stheme"
|
||||
style="width: 49%; padding: 8px; margin-top: 5px; margin-bottom: 10px"
|
||||
|
||||
class="form-control form-select form-select-lg"
|
||||
aria-label=".form-select-lg example">
|
||||
{% for key in tree %}
|
||||
<option value="{{ key }}">{{ key }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
|
||||
<div ng-hide="keyBox" class="form-group">
|
||||
<div class="col-sm-12">
|
||||
<textarea name="MainDashboardCSS" rows="12"
|
||||
<textarea id="appendthemedata" name="MainDashboardCSS" rows="12"
|
||||
class="form-control ng-pristine ng-untouched ng-valid ng-empty">{{ cosmetic.MainDashboardCSS }}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,6 +1,26 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import requests
|
||||
|
||||
|
||||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
||||
ab = {'package': 'helo world', 'Themename': 'blue-green-theme'}
|
||||
|
||||
url= "https://raw.githubusercontent.com/usmannasir/CyberPanel-Themes/main/%s/design.css"%ab['Themename']
|
||||
#url= "https://api.github.com/repos/usmannasir/CyberPanel-Themes/git/commits/def351a6eb4c103fb2dd2acf52396d4ef6111eee"
|
||||
|
||||
|
||||
res=requests.get(url)
|
||||
# sha=res.json()[0]['sha']
|
||||
print(res.text)
|
||||
|
||||
# l ="https://api.github.com/repos/usmannasir/CyberPanel-Themes/git/trees/%s"%sha
|
||||
# fres=requests.get(l)
|
||||
#
|
||||
# print(fres.json())
|
||||
# # tott = len(fres.json()['tree'])
|
||||
#
|
||||
# finalData['tree']=[]
|
||||
# for i in range(tott):
|
||||
# if(fres.json()['tree'][i]['type']=="tree"):
|
||||
# finalData['tree'].append(fres.json()['tree'][i]['path'])
|
||||
#
|
||||
# print(finalData['tree'])
|
||||
|
||||
@@ -8,6 +8,7 @@ urlpatterns = [
|
||||
url(r'^getLoadAverage',views.getLoadAverage, name='getLoadAverage'),
|
||||
url(r'^versionManagment',views.versionManagment, name='versionManagment'),
|
||||
url(r'^design', views.design, name='design'),
|
||||
url(r'^getthemedata', views.getthemedata, name='getthemedata'),
|
||||
|
||||
#url(r'^upgrade',views.upgrade, name='upgrade'),
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from django.shortcuts import render,redirect
|
||||
from django.shortcuts import render, redirect
|
||||
from django.http import HttpResponse
|
||||
from plogical.getSystemInformation import SystemInformation
|
||||
import json
|
||||
@@ -15,11 +15,13 @@ from manageServices.models import PDNSStatus
|
||||
from django.views.decorators.csrf import ensure_csrf_cookie
|
||||
from plogical.processUtilities import ProcessUtilities
|
||||
from plogical.httpProc import httpProc
|
||||
|
||||
# Create your views here.
|
||||
|
||||
VERSION = '2.1'
|
||||
BUILD = 2
|
||||
|
||||
|
||||
@ensure_csrf_cookie
|
||||
def renderBase(request):
|
||||
template = 'baseTemplate/homePage.html'
|
||||
@@ -29,6 +31,7 @@ def renderBase(request):
|
||||
proc = httpProc(request, template, finaData)
|
||||
return proc.render()
|
||||
|
||||
|
||||
def getAdminStatus(request):
|
||||
try:
|
||||
val = request.session['userID']
|
||||
@@ -64,6 +67,7 @@ def getAdminStatus(request):
|
||||
except KeyError:
|
||||
return HttpResponse("Can not get admin Status")
|
||||
|
||||
|
||||
def getSystemStatus(request):
|
||||
try:
|
||||
val = request.session['userID']
|
||||
@@ -74,6 +78,7 @@ def getSystemStatus(request):
|
||||
except KeyError:
|
||||
return HttpResponse("Can not get admin Status")
|
||||
|
||||
|
||||
def getLoadAverage(request):
|
||||
try:
|
||||
val = request.session['userID']
|
||||
@@ -83,12 +88,13 @@ def getLoadAverage(request):
|
||||
one = loadAverage[0]
|
||||
two = loadAverage[1]
|
||||
three = loadAverage[2]
|
||||
loadAvg = {"one": one, "two": two,"three": three}
|
||||
loadAvg = {"one": one, "two": two, "three": three}
|
||||
json_data = json.dumps(loadAvg)
|
||||
return HttpResponse(json_data)
|
||||
except KeyError:
|
||||
return HttpResponse("Not allowed.")
|
||||
|
||||
|
||||
@ensure_csrf_cookie
|
||||
def versionManagment(request):
|
||||
## Get latest version
|
||||
@@ -110,6 +116,7 @@ def versionManagment(request):
|
||||
proc = httpProc(request, template, finalData, 'versionManagement')
|
||||
return proc.render()
|
||||
|
||||
|
||||
def upgrade(request):
|
||||
try:
|
||||
admin = request.session['userID']
|
||||
@@ -129,9 +136,9 @@ def upgrade(request):
|
||||
|
||||
from upgrade import Upgrade
|
||||
|
||||
Upgrade.initiateUpgrade(vers.currentVersion,vers.build)
|
||||
Upgrade.initiateUpgrade(vers.currentVersion, vers.build)
|
||||
|
||||
adminData = {"upgrade":1}
|
||||
adminData = {"upgrade": 1}
|
||||
|
||||
json_data = json.dumps(adminData)
|
||||
|
||||
@@ -139,10 +146,11 @@ def upgrade(request):
|
||||
|
||||
|
||||
except KeyError:
|
||||
adminData = {"upgrade": 1,"error_message":"Please login or refresh this page."}
|
||||
adminData = {"upgrade": 1, "error_message": "Please login or refresh this page."}
|
||||
json_data = json.dumps(adminData)
|
||||
return HttpResponse(json_data)
|
||||
|
||||
|
||||
def upgradeStatus(request):
|
||||
try:
|
||||
val = request.session['userID']
|
||||
@@ -159,8 +167,7 @@ def upgradeStatus(request):
|
||||
'upgradeLog': "Upgrade Just started.."})
|
||||
return HttpResponse(final_json)
|
||||
|
||||
|
||||
if upgradeLog.find("Upgrade Completed")>-1:
|
||||
if upgradeLog.find("Upgrade Completed") > -1:
|
||||
|
||||
vers = version.objects.get(pk=1)
|
||||
getVersion = requests.get('https://cyberpanel.net/version.txt')
|
||||
@@ -191,6 +198,7 @@ def upgradeStatus(request):
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
|
||||
def upgradeVersion(request):
|
||||
try:
|
||||
vers = version.objects.get(pk=1)
|
||||
@@ -204,6 +212,7 @@ def upgradeVersion(request):
|
||||
logging.CyberCPLogFileWriter.writeToFile(str(msg))
|
||||
return HttpResponse(str(msg))
|
||||
|
||||
|
||||
@ensure_csrf_cookie
|
||||
def design(request):
|
||||
### Load Custom CSS
|
||||
@@ -223,8 +232,46 @@ def design(request):
|
||||
cosmetic.save()
|
||||
finalData['saved'] = 1
|
||||
|
||||
####### Fetch sha...
|
||||
|
||||
sha_url = "https://api.github.com/repos/usmannasir/CyberPanel-Themes/commits"
|
||||
|
||||
sha_res = requests.get(sha_url)
|
||||
|
||||
sha = sha_res.json()[0]['sha']
|
||||
|
||||
l = "https://api.github.com/repos/usmannasir/CyberPanel-Themes/git/trees/%s" % sha
|
||||
fres = requests.get(l)
|
||||
tott = len(fres.json()['tree'])
|
||||
finalData['tree'] = []
|
||||
for i in range(tott):
|
||||
if (fres.json()['tree'][i]['type'] == "tree"):
|
||||
finalData['tree'].append(fres.json()['tree'][i]['path'])
|
||||
|
||||
template = 'baseTemplate/design.html'
|
||||
finalData['cosmetic'] = cosmetic
|
||||
|
||||
proc = httpProc(request, template, finalData, 'versionManagement')
|
||||
return proc.render()
|
||||
|
||||
|
||||
def getthemedata(request):
|
||||
try:
|
||||
val = request.session['userID']
|
||||
currentACL = ACLManager.loadedACL(val)
|
||||
data = json.loads(request.body)
|
||||
|
||||
#logging.CyberCPLogFileWriter.writeToFile(str(data) + " [themedata]")
|
||||
|
||||
url = "https://raw.githubusercontent.com/usmannasir/CyberPanel-Themes/main/%s/design.css" % data['Themename']
|
||||
|
||||
res = requests.get(url)
|
||||
|
||||
rsult = res.text
|
||||
final_dic = {'status': 1, 'csscontent': rsult}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
except BaseException as msg:
|
||||
final_dic = {'status': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
Reference in New Issue
Block a user