Skip to content

Commit a333adc

Browse files
committed
feature: add search and ordering to dropdowns
1 parent 982627f commit a333adc

11 files changed

Lines changed: 219 additions & 242 deletions

File tree

baseTemplate/static/baseTemplate/custom-js/system-status.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,23 @@ app.filter('getwebsitename', function () {
9898
};
9999
});
100100

101+
function getWebsiteName(domain){
102+
if (domain !== undefined) {
103+
104+
domain = domain.replace(/-/g, '');
105+
106+
var domainName = domain.split(".");
107+
108+
var finalDomainName = domainName[0];
109+
110+
if (finalDomainName.length > 5) {
111+
finalDomainName = finalDomainName.substring(0, 4);
112+
}
113+
114+
return finalDomainName;
115+
}
116+
}
117+
101118
app.controller('systemStatusInfo', function ($scope, $http, $timeout) {
102119

103120
//getStuff();

baseTemplate/templates/baseTemplate/index.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@
9898
<link rel="stylesheet" type="text/css" href="{% static 'websiteFunctions/websiteFunctions.css' %}">
9999
<link rel="stylesheet" type="text/css" href="https://www.jsdelivr.com/package/npm/fontawesome">
100100
<link rel="icon" type="image/png" href="{% static 'baseTemplate/assets/finalBase/favicon.png' %}">
101-
101+
<link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" />
102102
{% block styles %}
103103
{% endblock %}
104104

@@ -963,6 +963,7 @@
963963

964964
<!-- Sparklines charts -->
965965
<script src="https://cdnjs.cloudflare.com/ajax/libs/qrious/4.0.2/qrious.js"></script>
966+
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
966967
<script src="{% static 'baseTemplate/custom-js/pnotify.custom.min.js' %}"></script>
967968
<script src="{% static 'baseTemplate/custom-js/system-status.js' %}"></script>
968969
<script src="{% static 'packages/packages.js' %}"></script>

databases/static/databases/databases.js

Lines changed: 46 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,31 @@
66
/* Java script code to create database */
77
app.controller('createDatabase', function ($scope, $http) {
88

9-
$scope.createDatabaseLoading = true;
10-
$scope.dbDetails = true;
11-
$scope.databaseCreationFailed = true;
12-
$scope.databaseCreated = true;
13-
$scope.couldNotConnect = true;
14-
$scope.generatedPasswordView = true;
9+
$(document).ready(function () {
10+
$(".dbDetails").hide();
11+
$(".generatedPasswordDetails").hide();
12+
$('#create-database-select').select2();
13+
});
14+
15+
$('#create-database-select').on('select2:select', function (e) {
16+
var data = e.params.data;
17+
$scope.databaseWebsite = data.text;
18+
$(".dbDetails").show();
19+
$("#domainDatabase").text(getWebsiteName(data.text));
20+
$("#domainUsername").text(getWebsiteName(data.text));
21+
});
1522

1623

1724
$scope.showDetailsBoxes = function () {
1825
$scope.dbDetails = false;
19-
};
26+
}
27+
28+
$scope.createDatabaseLoading = true;
2029

2130
$scope.createDatabase = function () {
2231

2332
$scope.createDatabaseLoading = false;
2433
$scope.dbDetails = false;
25-
$scope.databaseCreationFailed = true;
26-
$scope.databaseCreated = true;
27-
$scope.couldNotConnect = true;
2834

2935

3036
var databaseWebsite = $scope.databaseWebsite;
@@ -65,26 +71,24 @@ app.controller('createDatabase', function ($scope, $http) {
6571
function ListInitialDatas(response) {
6672

6773

68-
if (response.data.createDBStatus == 1) {
74+
if (response.data.createDBStatus === 1) {
6975

7076
$scope.createDatabaseLoading = true;
7177
$scope.dbDetails = false;
72-
$scope.databaseCreationFailed = true;
73-
$scope.databaseCreated = false;
74-
$scope.couldNotConnect = true;
75-
76-
77-
}
78-
79-
else {
80-
78+
new PNotify({
79+
title: 'Success!',
80+
text: 'Database successfully created.',
81+
type: 'success'
82+
});
83+
} else {
8184

8285
$scope.createDatabaseLoading = true;
8386
$scope.dbDetails = false;
84-
$scope.databaseCreationFailed = false;
85-
$scope.databaseCreated = true;
86-
$scope.couldNotConnect = true;
87-
$scope.errorMessage = response.data.error_message;
87+
new PNotify({
88+
title: 'Operation Failed!',
89+
text: response.data.error_message,
90+
type: 'error'
91+
});
8892

8993

9094
}
@@ -96,21 +100,23 @@ app.controller('createDatabase', function ($scope, $http) {
96100

97101
$scope.createDatabaseLoading = true;
98102
$scope.dbDetails = true;
99-
$scope.databaseCreationFailed = true;
100-
$scope.databaseCreated = true;
101-
$scope.couldNotConnect = false;
103+
new PNotify({
104+
title: 'Operation Failed!',
105+
text: 'Could not connect to server, please refresh this page',
106+
type: 'error'
107+
});
102108
}
103109

104110

105111
};
106112

107113
$scope.generatePassword = function () {
108-
$scope.generatedPasswordView = false;
114+
$(".generatedPasswordDetails").show();
109115
$scope.dbPassword = randomPassword(16);
110116
};
111117

112118
$scope.usePassword = function () {
113-
$scope.generatedPasswordView = true;
119+
$(".generatedPasswordDetails").hide();
114120
};
115121

116122
});
@@ -170,9 +176,7 @@ app.controller('deleteDatabase', function ($scope, $http) {
170176
$scope.couldNotConnect = true;
171177

172178

173-
}
174-
175-
else {
179+
} else {
176180
$scope.deleteDatabaseLoading = true;
177181
$scope.fetchedDatabases = true;
178182
$scope.databaseDeletionFailed = false;
@@ -240,9 +244,7 @@ app.controller('deleteDatabase', function ($scope, $http) {
240244
$scope.couldNotConnect = true;
241245

242246

243-
}
244-
245-
else {
247+
} else {
246248
$scope.deleteDatabaseLoading = true;
247249
$scope.fetchedDatabases = true;
248250
$scope.databaseDeletionFailed = false;
@@ -344,8 +346,7 @@ app.controller('listDBs', function ($scope, $http) {
344346
$scope.dbLoading = true;
345347
$scope.domainFeteched = $scope.selectedDomain;
346348

347-
}
348-
else {
349+
} else {
349350
$scope.notificationsBox = false;
350351
$scope.canNotChangePassword = false;
351352
$scope.dbLoading = true;
@@ -411,8 +412,7 @@ app.controller('listDBs', function ($scope, $http) {
411412

412413
$scope.domainFeteched = $scope.selectedDomain;
413414

414-
}
415-
else {
415+
} else {
416416
$scope.recordsFetched = true;
417417
$scope.passwordChanged = true;
418418
$scope.canNotChangePassword = true;
@@ -481,8 +481,7 @@ app.controller('listDBs', function ($scope, $http) {
481481

482482
$scope.dbHost = response.data.dbHost;
483483

484-
}
485-
else {
484+
} else {
486485
new PNotify({
487486
title: 'Operation Failed!',
488487
text: response.data.error_message,
@@ -537,8 +536,7 @@ app.controller('listDBs', function ($scope, $http) {
537536
type: 'success'
538537
});
539538

540-
}
541-
else {
539+
} else {
542540
new PNotify({
543541
title: 'Operation Failed!',
544542
text: response.data.error_message,
@@ -570,7 +568,7 @@ app.controller('listDBs', function ($scope, $http) {
570568
app.controller('phpMyAdmin', function ($scope, $http, $window) {
571569
$scope.cyberPanelLoading = true;
572570

573-
$scope.generateAccess = function() {
571+
$scope.generateAccess = function () {
574572

575573
$scope.cyberPanelLoading = false;
576574

@@ -593,12 +591,14 @@ app.controller('phpMyAdmin', function ($scope, $http, $window) {
593591
if (response.data.status === 1) {
594592
var rUrl = '/phpmyadmin/phpmyadminsignin.php?username=' + response.data.username + '&token=' + response.data.token;
595593
$window.location.href = rUrl;
594+
} else {
596595
}
597-
else {}
598596

599597
}
600598

601-
function cantLoadInitialDatas(response) {$scope.cyberPanelLoading = true;}
599+
function cantLoadInitialDatas(response) {
600+
$scope.cyberPanelLoading = true;
601+
}
602602

603603
}
604604

databases/templates/databases/createDatabase.html

Lines changed: 8 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ <h3 class="content-box-header">
2525
<div class="form-group">
2626
<label class="col-sm-3 control-label">{% trans "Select Website" %}</label>
2727
<div class="col-sm-6">
28-
<select ng-change="showDetailsBoxes()" ng-model="databaseWebsite" class="form-control">
28+
<select id="create-database-select" ng-model="databaseWebsite" class="form-control">
2929
{% for items in websitesList %}
3030
<option>{{ items }}</option>
3131
{% endfor %}
@@ -35,24 +35,23 @@ <h3 class="content-box-header">
3535

3636

3737

38-
39-
<div ng-hide="dbDetails" class="form-group">
38+
<div class="form-group dbDetails">
4039
<label class="col-sm-3 control-label">{% trans "Database Name" %}</label>
4140
<div class="col-sm-6">
4241
<input name="dom" type="text" class="form-control" ng-model="dbName" required>
4342
</div>
44-
<div class="current-pack">{$databaseWebsite|getwebsitename$}_{$ dbName $}</div>
43+
<div class="current-pack"><span id="domainDatabase"></span>_{$ dbName $}</div>
4544
</div>
4645

47-
<div ng-hide="dbDetails" class="form-group">
46+
<div class="form-group dbDetails">
4847
<label class="col-sm-3 control-label">{% trans "User Name" %}</label>
4948
<div class="col-sm-6">
5049
<input type="text" name="email" class="form-control" ng-model="dbUsername" required>
5150
</div>
52-
<div class="current-pack">{$databaseWebsite|getwebsitename$}_{$ dbUsername $}</div>
51+
<div class="current-pack"><span id="domainUsername"></span>_{$ dbUsername $}</div>
5352
</div>
5453

55-
<div ng-hide="dbDetails" class="form-group">
54+
<div class="form-group dbDetails">
5655
<label class="col-sm-3 control-label">{% trans "Password" %}</label>
5756
<div class="col-sm-6">
5857
<input type="password" name="email" class="form-control" ng-model="dbPassword" required>
@@ -62,7 +61,7 @@ <h3 class="content-box-header">
6261
</div>
6362
</div>
6463

65-
<div ng-hide="generatedPasswordView" class="form-group">
64+
<div class="form-group generatedPasswordDetails">
6665
<label class="col-sm-3 control-label">{% trans "Generated Password" %}</label>
6766
<div class="col-sm-6">
6867
<input type="text" name="email" class="form-control" ng-model="dbPassword" required>
@@ -73,37 +72,13 @@ <h3 class="content-box-header">
7372
</div>
7473

7574

76-
<div ng-hide="dbDetails" class="form-group">
75+
<div class="form-group dbDetails">
7776
<label class="col-sm-3 control-label"></label>
7877
<div class="col-sm-4">
7978
<button type="button" ng-click="createDatabase()" class="btn btn-primary btn-lg">{% trans "Create Database" %}</button>
8079
</div>
8180
</div>
8281

83-
84-
85-
<div class="form-group">
86-
<label class="col-sm-3 control-label"></label>
87-
<div class="col-sm-4">
88-
<div ng-hide="databaseCreationFailed" class="alert alert-danger">
89-
<p>{% trans "Cannot create database. Error message:" %} {$ errorMessage $}</p>
90-
</div>
91-
92-
<div ng-hide="databaseCreated" class="alert alert-success">
93-
<p>{% trans "Database created successfully." %}</p>
94-
</div>
95-
96-
97-
<div ng-hide="couldNotConnect" class="alert alert-danger">
98-
<p>{% trans "Could not connect to server. Please refresh this page." %}</p>
99-
</div>
100-
</div>
101-
102-
103-
104-
</div>
105-
106-
10782
</form>
10883

10984

0 commit comments

Comments
 (0)