Browse Source

Prepare ui for ldap

feature/ldap
Chocobozzz 8 years ago
parent
commit
12ae387298
  1. 7
      include/config.php
  2. 2
      include/connect.php
  3. 4
      include/functions.php
  4. 10
      include/grids.php
  5. 21
      include/html/grids.php
  6. 19
      index.php
  7. 30
      js/grids.js
  8. 6
      migration.php

7
include/config.php

@ -1,7 +1,14 @@
<?php
// false -> SQL, true -> LDAP
$useLDAP = false;
$host = 'localhost';
// 389 if your want to use LDAP
$port = '3306';
// Unused with LDAP
$db = 'openvpn-admin';
$user = '';
$pass = '';
?>

2
include/connect.php

@ -1,5 +1,5 @@
<?php
require(dirname(__FILE__) . "/config.php");
require_once(dirname(__FILE__) . "/config.php");
$options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO("mysql:host=$host;port=$port;dbname=$db", $user, $pass, $options);

4
include/functions.php

@ -42,7 +42,9 @@
return password_verify($pass, $hash);
}
//login with LDAP
function isUsingLDAP($useLDAP) {
return isset($useLDAP) && $useLDAP === true;
}
function loginLDAP($serverFQDN, $username, $password)
{

10
include/grids.php

@ -4,8 +4,8 @@
if(!isset($_SESSION['admin_id']))
exit -1;
require(dirname(__FILE__) . '/connect.php');
require(dirname(__FILE__) . '/functions.php');
require_once(dirname(__FILE__) . '/connect.php');
require_once(dirname(__FILE__) . '/functions.php');
// ---------------- SELECT ----------------
@ -37,6 +37,12 @@
}
}
else if ($_GET['select'] == "user_ldap") {
// Fake data for now
echo json_encode([ [ "user_ldap_id" => "blabla", "user_ldap_online" => 1 ] ]);
}
// Select the logs
else if($_GET['select'] == "log" && isset($_GET['offset'], $_GET['limit'])){
$offset = intval($_GET['offset']);

21
include/html/grids.php

@ -1,3 +1,10 @@
<?php
// Use MySQL
// We allow the administrator to create user
// The user table is different too
if (isUsingLDAP($useLDAP) === false) {
?>
<!-- Users grid -->
<div class="block-grid row" id="user-grid">
<h4>
@ -30,6 +37,20 @@
</div>
</div>
</div>
<?php
}
else {
?>
<!-- Users LDAP grid -->
<div class="block-grid row" id="user-ldap-grid">
<h4>
OpenVPN Users (LDAP)
</h4>
<table id="table-users-ldap" class="table"></table>
</div>
<?php
}
?>
<!-- Logs grid -->
<div class="block-grid row" id="log-grid">

19
index.php

@ -1,8 +1,9 @@
<?php
session_start();
require(dirname(__FILE__) . '/include/functions.php');
require(dirname(__FILE__) . '/include/connect.php');
require_once(dirname(__FILE__) . '/include/config.php');
require_once(dirname(__FILE__) . '/include/connect.php');
require_once(dirname(__FILE__) . '/include/functions.php');
// Disconnecting ?
if(isset($_GET['logout'])){
@ -157,8 +158,8 @@
}
// Print the installation form
else {
require(dirname(__FILE__) . '/include/html/menu.php');
require(dirname(__FILE__) . '/include/html/form/installation.php');
require_once(dirname(__FILE__) . '/include/html/menu.php');
require_once(dirname(__FILE__) . '/include/html/form/installation.php');
}
exit(-1);
@ -169,8 +170,8 @@
if(isset($error) && $error == true)
printError('Login error');
require(dirname(__FILE__) . '/include/html/menu.php');
require(dirname(__FILE__) . '/include/html/form/configuration.php');
require_once(dirname(__FILE__) . '/include/html/menu.php');
require_once(dirname(__FILE__) . '/include/html/form/configuration.php');
}
@ -179,8 +180,8 @@
if(isset($error) && $error == true)
printError('Login error');
require(dirname(__FILE__) . '/include/html/menu.php');
require(dirname(__FILE__) . '/include/html/form/login.php');
require_once(dirname(__FILE__) . '/include/html/menu.php');
require_once(dirname(__FILE__) . '/include/html/form/login.php');
}
// --------------- GRIDS ---------------
@ -200,7 +201,7 @@
</nav>
<?php
require(dirname(__FILE__) . '/include/html/grids.php');
require_once(dirname(__FILE__) . '/include/html/grids.php');
}
?>
</body>

30
js/grids.js

@ -19,8 +19,7 @@ $(function () {
// ------------------------- USERS definitions -------------------------
var $userTable = $('#table-users');
var $modalUserAdd = $('#modal-user-add');
var $userAddSave = $modalUserAdd.find('#modal-user-add-save');
var $userLDAPTable = $('#table-users-ldap');
function addUser(username, password) {
$.ajax({
@ -53,6 +52,10 @@ $(function () {
});
}
if ($userTable.length !== 0) {
var $modalUserAdd = $('#modal-user-add');
var $userAddSave = $modalUserAdd.find('#modal-user-add-save');
var userEditable = {
url: gridsUrl,
params: function (params) {
@ -71,7 +74,7 @@ $(function () {
} else {
console.warn('Your browser does not support Object.assign. You will not be able to modify the date inputs.');
}
}
// ------------------------- ADMIN definitions -------------------------
var $adminTable = $('#table-admins');
@ -121,13 +124,15 @@ $(function () {
}
}
// ------------------------- ADMIN definitions -------------------------
// ------------------------- LOGS definitions -------------------------
var $logTable = $('#table-logs');
// -------------------- USERS --------------------
// Bootstrap table definition
if ($userTable.length !== 0) {
$userTable.bootstrapTable({
url: gridsUrl,
sortable: false,
@ -168,6 +173,23 @@ $(function () {
addUser($usernameInput.val(), $passwordInput.val());
$modalUserAdd.modal('hide');
});
}
else {
$userLDAPTable.bootstrapTable({
url: gridsUrl,
sortable: false,
queryParams: function (params) {
params.select = 'user_ldap';
return params;
},
// Primary key
idField: 'user_ldap_id',
columns: [
{ title: "ID", field: "user_ldap_id"},
{ title: "Online", field: "user_ldap_online" },
]
});
}
// -------------------- ADMINS --------------------

6
migration.php

@ -7,9 +7,9 @@
$www = $argv[1];
require("$www/include/config.php");
require("$www/include/connect.php");
require("$www/include/functions.php");
require_once("$www/include/config.php");
require_once("$www/include/connect.php");
require_once("$www/include/functions.php");
$migrations = getMigrationSchemas();

Loading…
Cancel
Save