Merge branch 'v2.3.5-design' of https://github.com/usmannasir/cyberpanel into v2.3.5-design

This commit is contained in:
Zarak Khan
2024-01-24 18:52:21 +05:00
11 changed files with 227 additions and 211 deletions

View File

@@ -35,6 +35,7 @@ urlpatterns = [
url(r'^manageSSL/',include('manageSSL.urls')),
url(r'^api/',include('api.urls')),
url(r'^filemanager/',include('filemanager.urls')),
url(r'^filemanagerv2/',include('filemanager.urlv2')),
url(r'^emailPremium/',include('emailPremium.urls')),
url(r'^manageservices/',include('manageServices.urls')),
url(r'^plugins/',include('pluginHolder.urls')),

View File

@@ -0,0 +1 @@
<h1>habbi test</h1>

View File

@@ -9,8 +9,6 @@ urlpatterns = [
url(r'^RootDownloadFile$',views.RootDownloadFile, name='RootDownloadFile'),
url(r'^editFile$', views.editFile, name='editFile'),
url('^Filemanager', views.FileManagerRoot, name='Filemanager'),
url('^V2/FilemanagerV2', views.FileManagerRootV2, name='FilemanagerV2'),
url(r'^(?P<domain>(.*))$', views.loadFileManagerHome, name='loadFileManagerHome'),
]

9
filemanager/urlv2.py Normal file
View File

@@ -0,0 +1,9 @@
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^(?P<domain>(.*))$', views.loadFileManagerHomeV2, name='loadFileManagerHomeV2'),
]

View File

@@ -29,6 +29,23 @@ def loadFileManagerHome(request, domain):
except KeyError:
return redirect(loadLoginPage)
def loadFileManagerHomeV2(request, domain):
try:
userID = request.session['userID']
if Websites.objects.filter(domain=domain).exists():
admin = Administrator.objects.get(pk=userID)
currentACL = ACLManager.loadedACL(userID)
if ACLManager.checkOwnership(domain, admin, currentACL) == 1:
return render(request, 'filemanager/indexv2.html', {'domainName': domain})
else:
return ACLManager.loadError()
else:
return HttpResponse("Domain does not exists.")
except KeyError:
return redirect(loadLoginPage)
def changePermissions(request):
try:
@@ -250,55 +267,7 @@ def FileManagerRoot(request):
return proc.render()
def FileManagerRootV2(request):
### Load Custom CSS
try:
from baseTemplate.models import CyberPanelCosmetic
cosmetic = CyberPanelCosmetic.objects.get(pk=1)
except:
from baseTemplate.models import CyberPanelCosmetic
cosmetic = CyberPanelCosmetic()
cosmetic.save()
userID = request.session['userID']
currentACL = ACLManager.loadedACL(userID)
ipFile = "/etc/cyberpanel/machineIP"
f = open(ipFile)
ipData = f.read()
ipAddressLocal = ipData.split('\n', 1)[0]
try:
from plogical.processUtilities import ProcessUtilities
if ProcessUtilities.decideServer() == ProcessUtilities.OLS:
url = "https://platform.cyberpersons.com/CyberpanelAdOns/Adonpermission"
data = {
"name": "Filemanager",
"IP": ipAddressLocal
}
import requests
response = requests.post(url, data=json.dumps(data))
Status = response.json()['status']
if (Status == 1):
template = 'baseTemplate/FileManagerV2.html'
else:
return redirect("https://cyberpanel.net/cyberpanel-addons")
else:
template = 'baseTemplate/FileManagerV2.html'
except BaseException as msg:
template = 'baseTemplate/FileManagerV2.html'
if currentACL['admin'] == 1:
pass
else:
return ACLManager.loadErrorJson('FilemanagerAdmin', 0)
from plogical.httpProc import httpProc
proc = httpProc(request, template)
return proc.render()
def downloadFile(request):

View File

@@ -73,135 +73,182 @@
ng-hide="record.allowFullDomain">Disabled</span>
</td>
<td class="flex gap-1 px-6 py-4">
<div>
<button ng-click="editInitial(record.package, record.diskSpace, record.bandwidth,
<button ng-click="editInitial(record.package, record.diskSpace, record.bandwidth,
record.emailAccounts, record.dataBases, record.ftpAccounts, record.allowedDomains, record.allowFullDomain, record.enforceDiskLimits)"
data-modal-target="EditListUser"
data-modal-toggle="EditListUser"
class="bg-orange-500 px-2 py-1 text-white"
type="button">
Edit
</button>
<div id="EditListUser" tabindex="-1"
class="hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full">
<div>
<div class="relative bg-white rounded-lg shadow dark:bg-gray-700">
<h2 class="px-4 py-4 font-bold text-xl">Edit Users</h2>
<button type="button" data-modal-toggle="EditListUser"
class="absolute top-3 end-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white"
data-modal-hide="EditListUser">
<svg class="w-3 h-3" aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 14 14">
<path stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="2"
d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
</svg>
<span class="sr-only">Close modal</span>
</button>
<div class="p-4">
<div ng-hide="installationDetailsForm" class="flex mt-4 py-2 px-6">
<div>
<p class="font-semibold w-60">Name</p>
</div>
<div>
<input name="name" type="text"
class="w-80 bg-gray-100 rounded px-2 py-1"
ng-model="name" readonly>
</div>
data-modal-target="EditListUser_{$$index$}"
data-modal-toggle="EditListUser_{$$index$}"
class="bg-orange-500 px-2 py-1 text-white"
type="button">
Edit
</button>
<div id="EditListUser_{$$index$}" tabindex="-1"
class="hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full">
<div>
<div class="relative bg-white rounded-lg shadow dark:bg-gray-700">
<h2 class="px-4 py-4 font-bold text-xl">Edit Users</h2>
<button type="button" data-modal-toggle="EditListUser_{$$index$}"
class="absolute top-3 end-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white"
data-modal-hide="EditListUser">
<svg class="w-3 h-3" aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 14 14">
<path stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="2"
d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
</svg>
<span class="sr-only">Close modal</span>
</button>
<div class="p-4">
<div ng-hide="installationDetailsForm" class="flex mt-4 py-2 px-6">
<div>
<p class="font-semibold w-60">Name</p>
</div>
<div class="flex py-2 px-6">
<div>
<p class="font-semibold w-60">New Owner</p>
</div>
<div>
<select ng-change="saveResellerChanges()"
ng-model="$parent.newOwner"
class="w-80 bg-gray-100 rounded px-2 py-1">
{% for items in resellerPrivUsers %}
<option>{{ items }}</option>
{% endfor %}
</select>
</div>
<div>
<input name="name" type="text"
class="w-80 bg-gray-100 rounded px-2 py-1"
ng-model="name" readonly>
</div>
<div class="flex py-2 px-6">
<div>
<p class="font-semibold w-60">Select ACL</p>
</div>
<div>
<select ng-change="changeACLFunc()"
ng-model="$parent.selectedACL"
class="w-80 bg-gray-100 rounded px-2 py-1">
{% for items in aclNames %}
<option>{{ items }}</option>
{% endfor %}
</select>
</div>
</div>
<div class="flex py-2 px-6">
<div>
<p class="font-semibold w-60">New Owner</p>
</div>
<div>
<select ng-change="saveResellerChanges()"
ng-model="$parent.newOwner"
class="w-80 bg-gray-100 rounded px-2 py-1">
{% for items in resellerPrivUsers %}
<option>{{ items }}</option>
{% endfor %}
</select>
</div>
</div>
<div class="flex py-2 px-6">
<div>
<p class="font-semibold w-60">Select ACL</p>
</div>
<div>
<select ng-change="changeACLFunc()"
ng-model="$parent.selectedACL"
class="w-80 bg-gray-100 rounded px-2 py-1">
{% for items in aclNames %}
<option>{{ items }}</option>
{% endfor %}
</select>
</div>
</div>
</div>
</div>
</div>
</div>
<div>
<button ng-click="deletePackageFinal(record.package)" data-modal-target="DeleteListUser"
data-modal-toggle="DeleteListUser"
class="bg-orange-500 px-2 py-1 text-white"
type="button">
Delete
</button>
<div id="DeleteListUser" tabindex="-1"
class="hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full">
<div class="relative p-4 w-full max-w-md max-h-full">
<div class="relative bg-white rounded-lg shadow dark:bg-gray-700">
<button type="button" data-modal-toggle="DeleteListUser"
class="absolute top-3 end-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white"
data-modal-hide="DeleteListUser">
<svg class="w-3 h-3" aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 14 14">
<path stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="2"
d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
</svg>
<span class="sr-only">Close modal</span>
<button ng-click="deletePackageFinal(record.package)" data-modal-target="DeleteListUser_{$$index$}"
data-modal-toggle="DeleteListUser_{$$index$}"
class="bg-orange-500 px-2 py-1 text-white"
type="button">
Delete
</button>
<div id="DeleteListUser_{$$index$}" tabindex="-1"
class="hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full">
<div class="relative p-4 w-full max-w-md max-h-full">
<div class="relative bg-white rounded-lg shadow dark:bg-gray-700">
<button type="button" data-modal-toggle="DeleteListUser"
class="absolute top-3 end-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white"
data-modal-hide="DeleteListUser">
<svg class="w-3 h-3" aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 14 14">
<path stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="2"
d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
</svg>
<span class="sr-only">Close modal</span>
</button>
<div class="p-4 md:p-5 text-center">
<svg class="mx-auto mb-4 text-gray-400 w-12 h-12 dark:text-gray-200"
aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 20 20">
<path stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="2"
d="M10 11V6m0 8h.01M19 10a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"/>
</svg>
<h3 class="mb-5 text-lg font-normal text-gray-500 dark:text-gray-400">
Are you sure you want to
delete this user {$ UserToDelete $} ?</h3>
<button ng-click="deleteUserFinal()" data-modal-hide="DeleteListUser"
type="button"
data-modal-toggle="DeleteListUser"
class="text-white bg-red-600 hover:bg-red-800 focus:ring-4 focus:outline-none focus:ring-red-300 dark:focus:ring-red-800 font-medium rounded-lg text-sm inline-flex items-center px-5 py-2.5 text-center me-2">
Yes, I'm sure
</button>
<button data-modal-hide="DeleteListUser" type="button"
data-modal-toggle="DeleteListUser"
class="text-gray-500 bg-white hover:bg-gray-100 focus:ring-4 focus:outline-none focus:ring-gray-200 rounded-lg border border-gray-200 text-sm font-medium px-5 py-2.5 hover:text-gray-900 focus:z-10 dark:bg-gray-700 dark:text-gray-300 dark:border-gray-500 dark:hover:text-white dark:hover:bg-gray-600 dark:focus:ring-gray-600">
No, cancel
</button>
<div class="p-4 md:p-5 text-center">
<svg class="mx-auto mb-4 text-gray-400 w-12 h-12 dark:text-gray-200"
aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 20 20">
<path stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="2"
d="M10 11V6m0 8h.01M19 10a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"/>
</svg>
<h3 class="mb-5 text-lg font-normal text-gray-500 dark:text-gray-400">
Are you sure you want to
delete this user {$ UserToDelete $} ?</h3>
<button ng-click="deleteUserFinal()" data-modal-hide="DeleteListUser"
type="button"
data-modal-toggle="DeleteListUser"
class="text-white bg-red-600 hover:bg-red-800 focus:ring-4 focus:outline-none focus:ring-red-300 dark:focus:ring-red-800 font-medium rounded-lg text-sm inline-flex items-center px-5 py-2.5 text-center me-2">
Yes, I'm sure
</button>
<button data-modal-hide="DeleteListUser" type="button"
data-modal-toggle="DeleteListUser"
class="text-gray-500 bg-white hover:bg-gray-100 focus:ring-4 focus:outline-none focus:ring-gray-200 rounded-lg border border-gray-200 text-sm font-medium px-5 py-2.5 hover:text-gray-900 focus:z-10 dark:bg-gray-700 dark:text-gray-300 dark:border-gray-500 dark:hover:text-white dark:hover:bg-gray-600 dark:focus:ring-gray-600">
No, cancel
</button>
</div>
</div>
</div>
</div>
</div>
</td>
</tr>
</tbody>
<button class="btn btn-danger" data-modal-target="habitetest" data-modal-toggle="habitetest">check moda</button>
<div id="habitetest" tabindex="-1"
class="hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full">
<div class="relative p-4 w-full max-w-md max-h-full">
<div class="relative bg-white rounded-lg shadow dark:bg-gray-700">
<button type="button" data-modal-toggle="habitetest"
class="absolute top-3 end-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white"
data-modal-hide="habitetest">
<svg class="w-3 h-3" aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 14 14">
<path stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="2"
d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
</svg>
<span class="sr-only">Close modal</span>
</button>
<div class="p-4 md:p-5 text-center">
<svg class="mx-auto mb-4 text-gray-400 w-12 h-12 dark:text-gray-200"
aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 20 20">
<path stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="2"
d="M10 11V6m0 8h.01M19 10a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"/>
</svg>
<h3 class="mb-5 text-lg font-normal text-gray-500 dark:text-gray-400">
Are you sure you want to
delete this user {$ UserToDelete $} ?</h3>
<button ng-click="deleteUserFinal()" data-modal-hide="DeleteListUser"
type="button"
data-modal-toggle="DeleteListUser"
class="text-white bg-red-600 hover:bg-red-800 focus:ring-4 focus:outline-none focus:ring-red-300 dark:focus:ring-red-800 font-medium rounded-lg text-sm inline-flex items-center px-5 py-2.5 text-center me-2">
Yes, I'm sure
</button>
<button data-modal-hide="DeleteListUser" type="button"
data-modal-toggle="DeleteListUser"
class="text-gray-500 bg-white hover:bg-gray-100 focus:ring-4 focus:outline-none focus:ring-gray-200 rounded-lg border border-gray-200 text-sm font-medium px-5 py-2.5 hover:text-gray-900 focus:z-10 dark:bg-gray-700 dark:text-gray-300 dark:border-gray-500 dark:hover:text-white dark:hover:bg-gray-600 dark:focus:ring-gray-600">
No, cancel
</button>
</div>
</div>
</div>
</div>
</table>
</div>
</div>
{# <div>#}
{# <button ng-click="deleteUserInitial(record.name)" data-modal-target="DeleteListUser"#}
{# data-modal-toggle="DeleteListUser"#}

View File

@@ -463,15 +463,15 @@ newapp.controller('websitePagesV2', function ($scope, $http, $timeout, $window)
$scope.hideLogs = true;
};
$scope.fileManagerURL = "/filemanager/" + $("#domainNamePage").text();
$scope.wordPressInstallURLV2 = $("#domainNamePageV2").text() + "/wordpressInstallV2";
$scope.joomlaInstallURL = $("#domainNamePage").text() + "/joomlaInstall";
$scope.setupGit = $("#domainNamePage").text() + "/setupGit";
$scope.installPrestaURL = $("#domainNamePage").text() + "/installPrestaShop";
$scope.installMagentoURL = $("#domainNamePage").text() + "/installMagento";
$scope.installMauticURL = $("#domainNamePage").text() + "/installMautic";
$scope.domainAliasURL = "/websites/" + $("#domainNamePage").text() + "/domainAlias";
$scope.previewUrl = "/preview/" + $("#domainNamePage").text() + "/";
$scope.fileManagerURLV2 = "/filemanagerv2/" + $("#domainNamePageV2").text() ;
$scope.wordPressInstallURLV2 = $("#domainNamePageV2").text() + "/wordpressInstall";
$scope.joomlaInstallURLV2 = $("#domainNamePageV2").text() + "/joomlaInstall";
$scope.setupGitV2 = $("#domainNamePageV2").text() + "/setupGitV2";
$scope.installPrestaURLV2 = $("#domainNamePageV2").text() + "/installPrestaShopV2";
$scope.installMagentoURLV2 = $("#domainNamePageV2").text() + "/installMagentoV2";
$scope.installMauticURLV2 = $("#domainNamePageV2").text() + "/installMauticV2";
$scope.domainAliasURLV2 = "/websites/" + $("#domainNamePageV2").text() + "/domainAliasV2";
$scope.previewUrl = "/preview/" + $("#domainNamePageV2").text() + "/";
var logType = 0;
$scope.pageNumber = 1;

View File

@@ -73,7 +73,7 @@
<div>
<tr>
<th class="w-32 pt-2">
<a href="/websites/V2/{$ web.domain $}" class="flex items-center ml-3">
<a href="/v2Websites/{$ web.domain $}" class="flex items-center ml-3">
<svg width="20" height="20" viewBox="0 0 30 30" fill="none"
xmlns="http://www.w3.org/2000/svg">
<path

View File

@@ -799,7 +799,7 @@
</div>
<div>
<ul class="flex w-full grid lg:grid-cols-4">
<a href="{% url 'FilemanagerV2' %}" class="px-3 py-3">
<a href="{$ fileManagerURLV2 $}" class="px-3 py-3">
<div class="flex items-center">
<div>
<svg width="20" height="20" viewBox="0 0 40 40" fill="none"
@@ -1079,7 +1079,7 @@
</div>
</div>
</a>
<a href="/websites/{{ domain }}/manageGITV2" class="px-3 py-3">
<a href="{$ setupGitV2 $}" class="px-3 py-3">
<div class="flex items-center">
<div>
<svg width="20" height="20" viewBox="0 0 40 40" fill="none"
@@ -1097,7 +1097,7 @@
</div>
</div>
</a>
<a href="{$ installPrestaURL $}" class="px-3 py-3">
<a href="{$ installPrestaURLV2 $}" class="px-3 py-3">
<div class="flex items-center">
<div>
<svg width="20" height="20" viewBox="0 0 40 40" fill="none"
@@ -1119,7 +1119,7 @@
</div>
</div>
</a>
<a href="{$ installMauticURL $}" class="px-3 py-3">
<a href="{$ installMauticURLV2 $}" class="px-3 py-3">
<div class="flex items-center">
<div>

View File

@@ -15,8 +15,11 @@ urlpatterns = [
url(r'^siteStateV2$', views.siteStateV2, name='siteStateV2'),
url(r'^createWebsiteV2$', views.createWebsiteV2, name='createWebsiteV2'),
url(r'^listWebsitesV2$', views.listWebsitesV2, name='listWebsitesV2'),
url(r'^V2/(?P<domain>(.*))$', views.domainV2, name='domainv2'),
url(r'^V2/(?P<domain>(.*))/wordpressInstallV2$', views.wordpressInstallV2, name='wordpressInstallV2'),
# url(r'^V2/(?P<domain>(.*))$', views.domainV2, name='domainv2'),
# url(r'^V3/(?P<domain>(.*))/wordpressInstallV2$', views.wordpressInstallV2, name='wordpressInstallV2'),
# url(r'^V3/(?P<domain>(.*))/installMauticV2$', views.installMauticV2, name='installMauticV2'),
# url(r'^V3/(?P<domain>(.*))/installPrestaShopV2$', views.installPrestaShopV2, name='installPrestaShopV2'),
# url(r'^V3/(?P<domain>(.*))/manageGITV2$', views.manageGITV2, name='manageGITV2'),
url(r'^CreateNewDomain$', views.CreateNewDomain, name='CreateNewDomain'),
url(r'^CreateNewDomainV2$', views.CreateNewDomainV2, name='CreateNewDomainV2'),
@@ -151,7 +154,7 @@ urlpatterns = [
url(r'^prestaShopInstall$', views.prestaShopInstall, name='prestaShopInstall'),
url(r'^(?P<domain>(.*))/installPrestaShop$', views.installPrestaShop, name='installPrestaShop'),
url(r'^V2/(?P<domain>(.*))/installPrestaShopV2$', views.installPrestaShopV2, name='installPrestaShopV2'),
## magento
@@ -161,7 +164,7 @@ urlpatterns = [
## mautic
url(r'^(?P<domain>(.*))/installMautic$', views.installMautic, name='installMautic'),
url(r'^V2/(?P<domain>(.*))/installMauticV2$', views.installMauticV2, name='installMauticV2'),
url(r'^mauticInstall$', views.mauticInstall, name='mauticInstall'),
## Git
@@ -186,7 +189,6 @@ urlpatterns = [
### Manage GIT
url(r'^(?P<domain>(.*))/manageGIT$', views.manageGIT, name='manageGIT'),
url(r'^V2/(?P<domain>(.*))/manageGITV2$', views.manageGITV2, name='manageGITV2'),
url(r'^(?P<domain>(.*))/webhook$', views.webhook, name='webhook'),
url(r'^fetchFolderDetails$', views.fetchFolderDetails, name='fetchFolderDetails'),
url(r'^initRepo$', views.initRepo, name='initRepo'),

View File

@@ -1,41 +1,30 @@
from django.conf.urls import url
from . import views
from websiteFunctions import views
urlpatterns = [
url(r'^$', views.loadWebsitesHome, name='loadWebsitesHome'),
url(r'^createWebsite$', views.createWebsite, name='createWebsite'),
url(r'^listWebsites$', views.listWebsites, name='listWebsites'),
url(r'^listChildDomains$', views.listChildDomains, name='listChildDomains'),
url(r'^listChildDomainsV2$', views.listChildDomainsV2, name='listChildDomainsV2'),
url(r'^modifyWebsite$', views.modifyWebsite, name='modifyWebsite'),
url(r'^modifyWebsiteV2$', views.modifyWebsiteV2, name='modifyWebsiteV2'),
url(r'^deleteWebsite$', views.deleteWebsite, name='deleteWebsite'),
url(r'^deleteWebsiteV2$', views.deleteWebsiteV2, name='deleteWebsiteV2'),
url(r'^siteState$', views.siteState, name='siteState'),
url(r'^siteStateV2$', views.siteStateV2, name='siteStateV2'),
url(r'^createWebsiteV2$', views.createWebsiteV2, name='createWebsiteV2'),
url(r'^listWebsitesV2$', views.listWebsitesV2, name='listWebsitesV2'),
url(r'^V2/(?P<domain>(.*))$', views.domainV2, name='domainv2'),
url(r'^V2/(?P<domain>(.*))/wordpressInstallV2$', views.wordpressInstallV2, name='wordpressInstallV2'),
url(r'^CreateNewDomain$', views.CreateNewDomain, name='CreateNewDomain'),
url(r'^CreateNewDomainV2$', views.CreateNewDomainV2, name='CreateNewDomainV2'),
### WordPress
url(r'^createWordpress$', views.WPCreate, name='createWordpress'),
url(r'^createWordpressV2$', views.WPCreateV2, name='createWordpressV2'),
url(r'^ListWPSites$', views.ListWPSites, name='ListWPSites'),
url(r'^ListWPSitesV2$', views.ListWPSitesV2, name='ListWPSitesV2'),
url(r'^WPHome$', views.WPHome, name='WPHome'),
url(r'^WPHomeV2$', views.WPHomeV2, name='WPHomeV2'),
url(r'^RestoreBackups$', views.RestoreBackups, name='RestoreBackups'),
url(r'^RestoreBackupsV2$', views.RestoreBackupsV2, name='RestoreBackupsV2'),
url(r'^RestoreHome$', views.RestoreHome, name='RestoreHome'),
url(r'^AutoLogin$', views.AutoLogin, name='AutoLogin'),
url(r'^RemoteBackupConfig$', views.RemoteBackupConfig, name='RemoteBackupConfig'),
url(r'^BackupfileConfig$', views.BackupfileConfig, name='BackupfileConfig'),
url(r'^AddRemoteBackupsite$', views.AddRemoteBackupsite, name='AddRemoteBackupsite'),
url(r'^pricing$', views.WordpressPricing, name='pricing'),
# url(r'^ListWPSites$', views.ListWPSites, name='ListWPSites'),
# url(r'^ListWPSitesV2$', views.ListWPSitesV2, name='ListWPSitesV2'),
# url(r'^WPHome$', views.WPHome, name='WPHome'),
# url(r'^WPHomeV2$', views.WPHomeV2, name='WPHomeV2'),
# url(r'^RestoreBackups$', views.RestoreBackups, name='RestoreBackups'),
# url(r'^RestoreBackupsV2$', views.RestoreBackupsV2, name='RestoreBackupsV2'),
# url(r'^RestoreHome$', views.RestoreHome, name='RestoreHome'),
# url(r'^AutoLogin$', views.AutoLogin, name='AutoLogin'),
# url(r'^RemoteBackupConfig$', views.RemoteBackupConfig, name='RemoteBackupConfig'),
# url(r'^BackupfileConfig$', views.BackupfileConfig, name='BackupfileConfig'),
# url(r'^AddRemoteBackupsite$', views.AddRemoteBackupsite, name='AddRemoteBackupsite'),
# url(r'^pricing$', views.WordpressPricing, name='pricing'),
###WordPress Ajax
url(r'^submitWorpressCreation', views.submitWorpressCreation, name='submitWorpressCreation'),
@@ -137,10 +126,11 @@ urlpatterns = [
## WP Install
url(r'^(?P<domain>(.*))/wordpressInstall$', views.wordpressInstall, name='wordpressInstall'),
url(r'^(?P<domain>(.*))/wordpressInstall$', views.wordpressInstallV2, name='wordpressInstall'),
url(r'^(?P<domain>(.*))/wordpressInstallV2$', views.wordpressInstallV2, name='wordpressInstallV2'),
url(r'^installWordpressStatus$', views.installWordpressStatus, name="installWordpressStatus"),
url(r'^installWordpress$', views.installWordpress, name='installWordpress'),
url(r'^V2/installWordpressV2$', views.installWordpressV2, name='installWordpressV2'),
url(r'^installWordpressV2$', views.installWordpressV2, name='installWordpressV2'),
## Joomla Install
@@ -151,7 +141,7 @@ urlpatterns = [
url(r'^prestaShopInstall$', views.prestaShopInstall, name='prestaShopInstall'),
url(r'^(?P<domain>(.*))/installPrestaShop$', views.installPrestaShop, name='installPrestaShop'),
url(r'^V2/(?P<domain>(.*))/installPrestaShopV2$', views.installPrestaShopV2, name='installPrestaShopV2'),
url(r'^(?P<domain>(.*))/installPrestaShopV2$', views.installPrestaShopV2, name='installPrestaShopV2'),
## magento
@@ -160,8 +150,8 @@ urlpatterns = [
## mautic
url(r'^(?P<domain>(.*))/installMautic$', views.installMautic, name='installMautic'),
url(r'^V2/(?P<domain>(.*))/installMauticV2$', views.installMauticV2, name='installMauticV2'),
url(r'^(?P<domain>(.*))/installMautic$', views.installMauticV2, name='installMautic'),
url(r'^(?P<domain>(.*))/installMauticV2$', views.installMauticV2, name='installMauticV2'),
url(r'^mauticInstall$', views.mauticInstall, name='mauticInstall'),
## Git
@@ -185,8 +175,7 @@ urlpatterns = [
### Manage GIT
url(r'^(?P<domain>(.*))/manageGIT$', views.manageGIT, name='manageGIT'),
url(r'^V2/(?P<domain>(.*))/manageGITV2$', views.manageGITV2, name='manageGITV2'),
url(r'^(?P<domain>(.*))/manageGIT$', views.manageGITV2, name='manageGIT'),
url(r'^(?P<domain>(.*))/webhook$', views.webhook, name='webhook'),
url(r'^fetchFolderDetails$', views.fetchFolderDetails, name='fetchFolderDetails'),
url(r'^initRepo$', views.initRepo, name='initRepo'),
@@ -223,6 +212,6 @@ urlpatterns = [
## Catch all for domains
url(r'^(?P<domain>(.*))/(?P<childDomain>(.*))$', views.launchChild, name='launchChild'),
url(r'^(?P<domain>(.*))$', views.domain, name='domain'),
url(r'^(?P<domain>(.*))$', views.domainV2, name='domainv2'),
]