Update website

This commit is contained in:
Guilhem Lavaux 2025-03-24 09:27:39 +01:00
parent a0b0d3dae7
commit ae7ef6ad45
3151 changed files with 566766 additions and 48 deletions

View file

@ -0,0 +1,152 @@
"use strict";
var designerTables = [{
name: 'pdf_pages',
key: 'pgNr',
autoIncrement: true
}, {
name: 'table_coords',
key: 'id',
autoIncrement: true
}]; // eslint-disable-next-line no-unused-vars
var DesignerOfflineDB = function () {
var designerDB = {};
var datastore = null;
designerDB.open = function (callback) {
var version = 1;
var request = window.indexedDB.open('pma_designer', version);
request.onupgradeneeded = function (e) {
var db = e.target.result;
e.target.transaction.onerror = designerDB.onerror;
var t;
for (t in designerTables) {
if (db.objectStoreNames.contains(designerTables[t].name)) {
db.deleteObjectStore(designerTables[t].name);
}
}
for (t in designerTables) {
db.createObjectStore(designerTables[t].name, {
keyPath: designerTables[t].key,
autoIncrement: designerTables[t].autoIncrement
});
}
};
request.onsuccess = function (e) {
datastore = e.target.result;
if (typeof callback !== 'undefined' && callback !== null) {
callback(true);
}
};
request.onerror = designerDB.onerror;
};
designerDB.loadObject = function (table, id, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
var cursorRequest = objStore.get(parseInt(id));
cursorRequest.onsuccess = function (e) {
callback(e.target.result);
};
cursorRequest.onerror = designerDB.onerror;
};
designerDB.loadAllObjects = function (table, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
var keyRange = IDBKeyRange.lowerBound(0);
var cursorRequest = objStore.openCursor(keyRange);
var results = [];
transaction.oncomplete = function () {
callback(results);
};
cursorRequest.onsuccess = function (e) {
var result = e.target.result;
if (Boolean(result) === false) {
return;
}
results.push(result.value);
result.continue();
};
cursorRequest.onerror = designerDB.onerror;
};
designerDB.loadFirstObject = function (table, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
var keyRange = IDBKeyRange.lowerBound(0);
var cursorRequest = objStore.openCursor(keyRange);
var firstResult = null;
transaction.oncomplete = function () {
callback(firstResult);
};
cursorRequest.onsuccess = function (e) {
var result = e.target.result;
if (Boolean(result) === false) {
return;
}
firstResult = result.value;
};
cursorRequest.onerror = designerDB.onerror;
};
designerDB.addObject = function (table, obj, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
var request = objStore.put(obj);
request.onsuccess = function (e) {
if (typeof callback !== 'undefined' && callback !== null) {
callback(e.currentTarget.result);
}
};
request.onerror = designerDB.onerror;
};
designerDB.deleteObject = function (table, id, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
var request = objStore.delete(parseInt(id));
request.onsuccess = function () {
if (typeof callback !== 'undefined' && callback !== null) {
callback(true);
}
};
request.onerror = designerDB.onerror;
};
designerDB.onerror = function (e) {
// eslint-disable-next-line no-console
console.log(e);
}; // Export the designerDB object.
return designerDB;
}();

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,76 @@
"use strict";
/**
* Initializes the data required to run Designer, then fires it up.
*/
/* global DesignerOfflineDB */
// js/designer/database.js
/* global DesignerHistory */
// js/designer/history.js
/* global DesignerMove */
// js/designer/move.js
/* global DesignerPage */
// js/designer/page.js
/* global designerConfig */
// templates/database/designer/main.twig
var jTabs;
var hTabs;
var contr;
var displayField;
var server;
var selectedPage;
var db;
var designerTablesEnabled;
AJAX.registerTeardown('designer/init.js', function () {
$('.trigger').off('click');
});
AJAX.registerOnload('designer/init.js', function () {
$('.trigger').on('click', function () {
$('.panel').toggle('fast');
$(this).toggleClass('active');
$('#ab').accordion('refresh');
return false;
});
/* eslint-disable no-unused-vars */
jTabs = designerConfig.scriptTables.j_tabs;
hTabs = designerConfig.scriptTables.h_tabs;
contr = designerConfig.scriptContr;
displayField = designerConfig.scriptDisplayField;
server = designerConfig.server;
selectedPage = designerConfig.displayPage;
/* eslint-enable no-unused-vars */
db = designerConfig.db;
designerTablesEnabled = designerConfig.tablesEnabled;
DesignerMove.main();
if (!designerTablesEnabled) {
DesignerOfflineDB.open(function (success) {
if (success) {
DesignerPage.showTablesInLandingPage(db);
}
});
}
$('#query_Aggregate_Button').on('click', function () {
$('#query_Aggregate').style.display = 'none';
});
$('#query_having_button').on('click', function () {
$('#query_having').style.display = 'none';
});
$('#query_rename_to_button').on('click', function () {
$('#query_rename_to').style.display = 'none';
});
$('#build_query_button').on('click', function () {
DesignerHistory.buildQuery('SQL Query on Database', 0);
});
$('#query_where_button').on('click', function () {
$('#query_where').style.display = 'none';
});
});

2274
admin/phpMyAdmin/js/dist/designer/move.js vendored Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,19 @@
"use strict";
// eslint-disable-next-line no-unused-vars
var DesignerObjects = {
PdfPage: function PdfPage(dbName, pageDescr, tblCords) {
// eslint-disable-next-line no-unused-vars
var pgNr;
this.dbName = dbName;
this.pageDescr = pageDescr;
this.tblCords = tblCords;
},
TableCoordinate: function TableCoordinate(dbName, tableName, pdfPgNr, x, y) {
this.dbName = dbName;
this.tableName = tableName;
this.pdfPgNr = pdfPgNr;
this.x = x;
this.y = y;
}
};

View file

@ -0,0 +1,210 @@
"use strict";
/* global DesignerOfflineDB */
// js/designer/database.js
// eslint-disable-next-line no-unused-vars
/* global db, selectedPage:writable */
// js/designer/init.js
/* global DesignerMove */
// js/designer/move.js
/* global DesignerObjects */
// js/designer/objects.js
var DesignerPage = {};
DesignerPage.showTablesInLandingPage = function (db) {
DesignerPage.loadFirstPage(db, function (page) {
if (page) {
DesignerPage.loadHtmlForPage(page.pgNr);
selectedPage = page.pgNr;
} else {
DesignerPage.showNewPageTables(true);
}
});
};
DesignerPage.saveToNewPage = function (db, pageName, tablePositions, callback) {
DesignerPage.createNewPage(db, pageName, function (page) {
if (page) {
var tblCords = [];
var saveCallback = function saveCallback(id) {
tblCords.push(id);
if (tablePositions.length === tblCords.length) {
page.tblCords = tblCords;
DesignerOfflineDB.addObject('pdf_pages', page);
}
};
for (var pos = 0; pos < tablePositions.length; pos++) {
tablePositions[pos].pdfPgNr = page.pgNr;
DesignerPage.saveTablePositions(tablePositions[pos], saveCallback);
}
if (typeof callback !== 'undefined') {
callback(page);
}
}
});
};
DesignerPage.saveToSelectedPage = function (db, pageId, pageName, tablePositions, callback) {
DesignerPage.deletePage(pageId);
DesignerPage.saveToNewPage(db, pageName, tablePositions, function (page) {
if (typeof callback !== 'undefined') {
callback(page);
}
selectedPage = page.pgNr;
});
};
DesignerPage.createNewPage = function (db, pageName, callback) {
var newPage = new DesignerObjects.PdfPage(db, pageName);
DesignerOfflineDB.addObject('pdf_pages', newPage, function (pgNr) {
newPage.pgNr = pgNr;
if (typeof callback !== 'undefined') {
callback(newPage);
}
});
};
DesignerPage.saveTablePositions = function (positions, callback) {
DesignerOfflineDB.addObject('table_coords', positions, callback);
};
DesignerPage.createPageList = function (db, callback) {
DesignerOfflineDB.loadAllObjects('pdf_pages', function (pages) {
var html = '';
for (var p = 0; p < pages.length; p++) {
var page = pages[p];
if (page.dbName === db) {
html += '<option value="' + page.pgNr + '">';
html += Functions.escapeHtml(page.pageDescr) + '</option>';
}
}
if (typeof callback !== 'undefined') {
callback(html);
}
});
};
DesignerPage.deletePage = function (pageId, callback) {
DesignerOfflineDB.loadObject('pdf_pages', pageId, function (page) {
if (page) {
for (var i = 0; i < page.tblCords.length; i++) {
DesignerOfflineDB.deleteObject('table_coords', page.tblCords[i]);
}
DesignerOfflineDB.deleteObject('pdf_pages', pageId, callback);
}
});
};
DesignerPage.loadFirstPage = function (db, callback) {
DesignerOfflineDB.loadAllObjects('pdf_pages', function (pages) {
var firstPage = null;
for (var i = 0; i < pages.length; i++) {
var page = pages[i];
if (page.dbName === db) {
// give preference to a page having same name as the db
if (page.pageDescr === db) {
callback(page);
return;
}
if (firstPage === null) {
firstPage = page;
}
}
}
callback(firstPage);
});
};
DesignerPage.showNewPageTables = function (check) {
var allTables = $('#id_scroll_tab').find('td input:checkbox');
allTables.prop('checked', check);
for (var tab = 0; tab < allTables.length; tab++) {
var input = allTables[tab];
if (input.value) {
var element = document.getElementById(input.value);
element.style.top = DesignerPage.getRandom(550, 20) + 'px';
element.style.left = DesignerPage.getRandom(700, 20) + 'px';
DesignerMove.visibleTab(input, input.value);
}
}
selectedPage = -1;
$('#page_name').text(Messages.strUntitled);
DesignerMove.markUnsaved();
};
DesignerPage.loadHtmlForPage = function (pageId) {
DesignerPage.showNewPageTables(true);
DesignerPage.loadPageObjects(pageId, function (page, tblCords) {
$('#name-panel').find('#page_name').text(page.pageDescr);
var tableMissing = false;
for (var t = 0; t < tblCords.length; t++) {
var tbId = db + '.' + tblCords[t].tableName;
var table = document.getElementById(tbId);
if (table === null) {
tableMissing = true;
continue;
}
table.style.top = tblCords[t].y + 'px';
table.style.left = tblCords[t].x + 'px';
var checkbox = document.getElementById('check_vis_' + tbId);
checkbox.checked = true;
DesignerMove.visibleTab(checkbox, checkbox.value);
}
DesignerMove.markSaved();
if (tableMissing === true) {
DesignerMove.markUnsaved();
Functions.ajaxShowMessage(Messages.strSavedPageTableMissing);
}
selectedPage = page.pgNr;
});
};
DesignerPage.loadPageObjects = function (pageId, callback) {
DesignerOfflineDB.loadObject('pdf_pages', pageId, function (page) {
var tblCords = [];
var count = page.tblCords.length;
for (var i = 0; i < count; i++) {
DesignerOfflineDB.loadObject('table_coords', page.tblCords[i], function (tblCord) {
tblCords.push(tblCord);
if (tblCords.length === count) {
if (typeof callback !== 'undefined') {
callback(page, tblCords);
}
}
});
}
});
};
DesignerPage.getRandom = function (max, min) {
var val = Math.random() * (max - min) + min;
return Math.floor(val);
};