diff --git a/src/public/javascripts/dialogs/help.js b/src/public/javascripts/dialogs/help.js
new file mode 100644
index 000000000..91ebe9ba3
--- /dev/null
+++ b/src/public/javascripts/dialogs/help.js
@@ -0,0 +1,11 @@
+const $dialog = $("#help-dialog");
+
+async function showDialog() {
+ glob.activeDialog = $dialog;
+
+ $dialog.modal();
+}
+
+export default {
+ showDialog
+}
\ No newline at end of file
diff --git a/src/public/javascripts/dialogs/sql_console.js b/src/public/javascripts/dialogs/sql_console.js
index 917eda1e7..19698b385 100644
--- a/src/public/javascripts/dialogs/sql_console.js
+++ b/src/public/javascripts/dialogs/sql_console.js
@@ -1,4 +1,3 @@
-import utils from '../services/utils.js';
import libraryLoader from '../services/library_loader.js';
import server from '../services/server.js';
import infoService from "../services/info.js";
@@ -8,6 +7,7 @@ const $query = $('#sql-console-query');
const $executeButton = $('#sql-console-execute');
const $resultHead = $('#sql-console-results thead');
const $resultBody = $('#sql-console-results tbody');
+const $tables = $("#sql-console-tables");
let codeEditor;
@@ -20,6 +20,31 @@ function showDialog() {
}
async function initEditor() {
+ server.get('sql/schema').then(tables => {
+ $tables.empty();
+
+ for (const table of tables) {
+ const $tableLink = $('').text(table.name);
+
+ const $columns = $("
");
+
+ for (const column of table.columns) {
+ $columns.append(
+ $("")
+ .append($("").text(column.name))
+ .append($(" | ").text(column.type))
+ );
+ }
+
+ $tableLink
+ .attr("title", $columns.html())
+ .tooltip({ html: true })
+ .click(() => codeEditor.setValue("SELECT * FROM " + table.name + " LIMIT 100"));
+
+ $tables.append($tableLink).append(" ");
+ }
+ });
+
if (!codeEditor) {
await libraryLoader.requireLibrary(libraryLoader.CODE_MIRROR);
diff --git a/src/public/javascripts/services/entrypoints.js b/src/public/javascripts/services/entrypoints.js
index c4f249e4e..8da3cd1b9 100644
--- a/src/public/javascripts/services/entrypoints.js
+++ b/src/public/javascripts/services/entrypoints.js
@@ -12,6 +12,7 @@ import recentChangesDialog from "../dialogs/recent_changes.js";
import sqlConsoleDialog from "../dialogs/sql_console.js";
import searchNotesService from "./search_notes.js";
import attributesDialog from "../dialogs/attributes.js";
+import helpDialog from "../dialogs/help.js";
import protectedSessionService from "./protected_session.js";
function registerEntrypoints() {
@@ -54,6 +55,10 @@ function registerEntrypoints() {
$("#options-button").click(optionsDialog.showDialog);
+ $("#show-help-button").click(helpDialog.showDialog);
+ utils.bindShortcut('alt+h', helpDialog.showDialog);
+
+ $("#open-sql-console-button").click(sqlConsoleDialog.showDialog);
utils.bindShortcut('alt+o', sqlConsoleDialog.showDialog);
if (utils.isElectron()) {
diff --git a/src/public/libraries/jqueryui/AUTHORS.txt b/src/public/libraries/jqueryui/AUTHORS.txt
deleted file mode 100644
index a75056b94..000000000
--- a/src/public/libraries/jqueryui/AUTHORS.txt
+++ /dev/null
@@ -1,333 +0,0 @@
-Authors ordered by first contribution
-A list of current team members is available at http://jqueryui.com/about
-
-Paul Bakaus
-Richard Worth
-Yehuda Katz
-Sean Catchpole
-John Resig
-Tane Piper
-Dmitri Gaskin
-Klaus Hartl
-Stefan Petre
-Gilles van den Hoven
-Micheil Bryan Smith
-Jörn Zaefferer
-Marc Grabanski
-Keith Wood
-Brandon Aaron
-Scott González
-Eduardo Lundgren
-Aaron Eisenberger
-Joan Piedra
-Bruno Basto
-Remy Sharp
-Bohdan Ganicky
-David Bolter
-Chi Cheng
-Ca-Phun Ung
-Ariel Flesler
-Maggie Wachs
-Scott Jehl
-Todd Parker
-Andrew Powell
-Brant Burnett
-Douglas Neiner
-Paul Irish
-Ralph Whitbeck
-Thibault Duplessis
-Dominique Vincent
-Jack Hsu
-Adam Sontag
-Carl Fürstenberg
-Kevin Dalman
-Alberto Fernández Capel
-Jacek Jędrzejewski (http://jacek.jedrzejewski.name)
-Ting Kuei
-Samuel Cormier-Iijima
-Jon Palmer
-Ben Hollis
-Justin MacCarthy
-Eyal Kobrigo
-Tiago Freire
-Diego Tres
-Holger Rüprich
-Ziling Zhao
-Mike Alsup
-Robson Braga Araujo
-Pierre-Henri Ausseil
-Christopher McCulloh
-Andrew Newcomb
-Lim Chee Aun
-Jorge Barreiro
-Daniel Steigerwald
-John Firebaugh
-John Enters
-Andrey Kapitcyn
-Dmitry Petrov
-Eric Hynds
-Chairat Sunthornwiphat
-Josh Varner
-Stéphane Raimbault
-Jay Merrifield
-J. Ryan Stinnett
-Peter Heiberg
-Alex Dovenmuehle
-Jamie Gegerson
-Raymond Schwartz
-Phillip Barnes
-Kyle Wilkinson
-Khaled AlHourani
-Marian Rudzynski
-Jean-Francois Remy
-Doug Blood
-Filippo Cavallarin
-Heiko Henning
-Aliaksandr Rahalevich
-Mario Visic
-Xavi Ramirez
-Max Schnur
-Saji Nediyanchath
-Corey Frang
-Aaron Peterson
-Ivan Peters
-Mohamed Cherif Bouchelaghem
-Marcos Sousa
-Michael DellaNoce
-George Marshall
-Tobias Brunner
-Martin Solli
-David Petersen
-Dan Heberden
-William Kevin Manire
-Gilmore Davidson
-Michael Wu
-Adam Parod
-Guillaume Gautreau
-Marcel Toele
-Dan Streetman
-Matt Hoskins
-Giovanni Giacobbi
-Kyle Florence
-Pavol Hluchý
-Hans Hillen
-Mark Johnson
-Trey Hunner
-Shane Whittet
-Edward A Faulkner
-Adam Baratz
-Kato Kazuyoshi
-Eike Send
-Kris Borchers
-Eddie Monge
-Israel Tsadok
-Carson McDonald
-Jason Davies
-Garrison Locke
-David Murdoch
-Benjamin Scott Boyle
-Jesse Baird
-Jonathan Vingiano
-Dylan Just
-Hiroshi Tomita
-Glenn Goodrich
-Tarafder Ashek-E-Elahi
-Ryan Neufeld
-Marc Neuwirth
-Philip Graham
-Benjamin Sterling
-Wesley Walser
-Kouhei Sutou
-Karl Kirch
-Chris Kelly
-Jason Oster
-Felix Nagel
-Alexander Polomoshnov
-David Leal
-Igor Milla
-Dave Methvin
-Florian Gutmann
-Marwan Al Jubeh
-Milan Broum
-Sebastian Sauer
-Gaëtan Muller
-Michel Weimerskirch
-William Griffiths
-Stojce Slavkovski
-David Soms
-David De Sloovere
-Michael P. Jung
-Shannon Pekary
-Dan Wellman
-Matthew Edward Hutton
-James Khoury
-Rob Loach
-Alberto Monteiro
-Alex Rhea
-Krzysztof Rosiński
-Ryan Olton
-Genie <386@mail.com>
-Rick Waldron
-Ian Simpson
-Lev Kitsis
-TJ VanToll
-Justin Domnitz
-Douglas Cerna
-Bert ter Heide
-Jasvir Nagra
-Yuriy Khabarov <13real008@gmail.com>
-Harri Kilpiö
-Lado Lomidze
-Amir E. Aharoni
-Simon Sattes
-Jo Liss
-Guntupalli Karunakar
-Shahyar Ghobadpour
-Lukasz Lipinski
-Timo Tijhof
-Jason Moon
-Martin Frost
-Eneko Illarramendi
-EungJun Yi
-Courtland Allen
-Viktar Varvanovich
-Danny Trunk
-Pavel Stetina
-Michael Stay
-Steven Roussey
-Michael Hollis
-Lee Rowlands
-Timmy Willison
-Karl Swedberg
-Baoju Yuan
-Maciej Mroziński
-Luis Dalmolin
-Mark Aaron Shirley
-Martin Hoch
-Jiayi Yang
-Philipp Benjamin Köppchen
-Sindre Sorhus
-Bernhard Sirlinger
-Jared A. Scheel
-Rafael Xavier de Souza
-John Chen
-Robert Beuligmann
-Dale Kocian
-Mike Sherov
-Andrew Couch
-Marc-Andre Lafortune
-Nate Eagle
-David Souther
-Mathias Stenbom
-Sergey Kartashov
-Avinash R
-Ethan Romba
-Cory Gackenheimer
-Juan Pablo Kaniefsky
-Roman Salnikov
-Anika Henke
-Samuel Bovée
-Fabrício Matté
-Viktor Kojouharov
-Pawel Maruszczyk (http://hrabstwo.net)
-Pavel Selitskas
-Bjørn Johansen
-Matthieu Penant
-Dominic Barnes
-David Sullivan
-Thomas Jaggi
-Vahid Sohrabloo
-Travis Carden
-Bruno M. Custódio
-Nathanael Silverman
-Christian Wenz
-Steve Urmston
-Zaven Muradyan
-Woody Gilk
-Zbigniew Motyka
-Suhail Alkowaileet
-Toshi MARUYAMA
-David Hansen
-Brian Grinstead
-Christian Klammer
-Steven Luscher
-Gan Eng Chin
-Gabriel Schulhof
-Alexander Schmitz
-Vilhjálmur Skúlason
-Siebrand Mazeland |