Skip to content

Upgrade to Bootstrap 5 #785

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 35 additions & 14 deletions static/css/app.css
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
body {
--bs-body-font-size: 0.875rem;
--bs-border-radius: 0.25rem;
}

.btn-sm {
--bs-btn-padding-y: 0.3125rem;
--bs-btn-padding-x: 0.625rem;
--bs-btn-font-size: 0.75rem;
}

.form-select {
padding: .375rem 1.5rem .375rem .75rem;
background-position: right 0.25rem center;
}

.dropdown-menu {
font-size: 0.875rem;
}

#main {
display: none;
}
Expand Down Expand Up @@ -131,6 +151,10 @@
border: 0px none;
}

#sidebar .dropdown-menu {
line-height: var(--bs-body-line-height);
}

#sidebar .current-database span.refresh {
position: absolute;
top: 0px;
Expand Down Expand Up @@ -372,10 +396,6 @@
background: #7eb154;
}

#input .actions .btn-default:hover {
background: #bbb;
}

#input .actions .btn:last-child {
margin-right: 0px;
}
Expand Down Expand Up @@ -427,7 +447,6 @@
font-size: 12px;
width: 100px;
float: left;
line-height: 30px;
height: 30px;
margin-right: 8px;
outline: none;
Expand Down Expand Up @@ -459,11 +478,6 @@
margin-right: 8px;
}

#pagination .filters .btn-default {
float: left;
outline: none;
}

#pagination .btn-group {
float: right;
}
Expand Down Expand Up @@ -585,6 +599,8 @@
#results_view pre {
border: 0px none;
position: relative;
padding: 9.5px;
background-color: #f5f5f5;
}

#results_view .copy {
Expand Down Expand Up @@ -735,10 +751,6 @@
display: none;
}

.bookmarks {
display: none;
}

.connection-settings {
width: 600px;
margin: 0px auto;
Expand Down Expand Up @@ -787,6 +799,15 @@
padding-left: 0;
}

.connection-settings form .row {
padding-bottom: 1rem;
}

.connection-settings form .col-form-label {
text-align: end;
font-weight: bolder;
}

.connection-scheme-group {
display: none;
}
Expand Down
11 changes: 6 additions & 5 deletions static/css/bootstrap.css

Large diffs are not rendered by default.

136 changes: 66 additions & 70 deletions static/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
<script type="text/javascript" src="static/js/ace.js"></script>
<script type="text/javascript" src="static/js/ace-pgsql.js"></script>
<script type="text/javascript" src="static/js/ext-language_tools.js"></script>
<script type="text/javascript" src="static/js/bootstrap.bundle.js"></script>
<script type="text/javascript" src="static/js/bootstrap-contextmenu.js"></script>
<script type="text/javascript" src="static/js/bootstrap-dropdown.js"></script>
<script type="text/javascript" src="static/js/utils.js"></script>
<script type="text/javascript" src="static/js/bootstrap3-typeahead.min.js"></script>
<script type="text/javascript" src="static/js/app.js"></script>
Expand All @@ -35,8 +35,8 @@
</ul>

<div class="connection-actions">
<a href="#" id="edit_connection" class="btn btn-default btn-sm"><i class="fa fa-database"></i> Connect</a>
<a href="#" id="close_connection" class="btn btn-default btn-sm">Disconnect</a>
<a href="#" id="edit_connection" class="btn btn-outline-secondary btn-sm"><i class="fa fa-database"></i> Connect</a>
<a href="#" id="close_connection" class="btn btn-outline-secondary btn-sm">Disconnect</a>
</div>
</div>
<div id="sidebar">
Expand Down Expand Up @@ -78,8 +78,8 @@
</div>
<div class="actions">
<input type="button" id="run" value="Run Query" class="btn btn-sm btn-primary" />
<div id="explain-dropdown" class="btn-group left">
<button id="explain-dropdown-toggle" type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<div id="explain-dropdown" class="dropdown">
<button id="explain-dropdown-toggle" type="button" class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown">
Explain Query <span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu">
Expand All @@ -88,7 +88,7 @@
</ul>
</div>
<div id="load-query-dropdown" class="btn-group left" style="display: none">
<button id="load-local-query" type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" disabled="disabled">
<button id="load-local-query" type="button" class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" disabled="disabled">
Template <span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu">
Expand All @@ -97,9 +97,9 @@
<div id="query_progress">Please wait, query is executing...</div>
<div class="pull-right">
<span id="result-rows-count"></span>
<input type="button" id="json" value="JSON" class="btn btn-sm btn-default" />
<input type="button" id="csv" value="CSV" class="btn btn-sm btn-default" />
<input type="button" id="xml" value="XML" class="btn btn-sm btn-default" />
<input type="button" id="json" value="JSON" class="btn btn-sm btn-outline-secondary" />
<input type="button" id="csv" value="CSV" class="btn btn-sm btn-outline-secondary" />
<input type="button" id="xml" value="XML" class="btn btn-sm btn-outline-secondary" />
</div>
</div>
<div id="input_resize_handler"></div>
Expand All @@ -116,8 +116,8 @@
<div id="pagination">
<form class="filters" action="#" id="rows_filter">
<span>Search</span>
<select class="column form-control"></select>
<select class="filter form-control">
<select class="column form-select"></select>
<select class="filter form-select">
<option value="">Select filter</option>
<option value="equal">=</option>
<option value="not_equal">&ne;</option>
Expand All @@ -132,12 +132,12 @@
</select>
<input type="text" class="form-control" placeholder="Filter value" id="table_filter_value" />
<button class="btn btn-primary btn-sm apply-filters" type="submit">Apply</button>
<button class="btn btn-default btn-sm reset-filters"><i class="fa fa-times"></i></button>
<button class="btn btn-outline-secondary btn-sm reset-filters"><i class="fa fa-times"></i></button>
</form>
<div class="btn-group">
<button type="button" class="btn btn-default btn-sm prev-page" disabled="disabled"><i class="fa fa-angle-left"></i></button>
<button type="button" class="btn btn-default btn-sm page change-limit" title="Click to change row limit"></button>
<button type="button" class="btn btn-default btn-sm next-page"><i class="fa fa-angle-right"></i></button>
<button type="button" class="btn btn-outline-secondary btn-sm prev-page" disabled="disabled"><i class="fa fa-angle-left"></i></button>
<button type="button" class="btn btn-outline-secondary btn-sm page change-limit" title="Click to change row limit"></button>
<button type="button" class="btn btn-outline-secondary btn-sm next-page"><i class="fa fa-angle-right"></i></button>
</div>
<div class="current-page" data-page="1" data-pages="1">
<span id="total_records"></span> rows
Expand Down Expand Up @@ -168,20 +168,20 @@ <h1>pgweb</h1>
<form role="form" class="form-horizontal" id="connection_form">
<div class="text-center">
<div class="btn-group btn-group-sm connection-group-switch">
<button type="button" data="scheme" class="btn btn-default" id="connection_scheme">Scheme</button>
<button type="button" data="standard" class="btn btn-default active" id="connection_standard">Standard</button>
<button type="button" data="ssh" class="btn btn-default" id="connection_ssh">SSH</button>
<button type="button" data="scheme" class="btn btn-outline-secondary" id="connection_scheme">Scheme</button>
<button type="button" data="standard" class="btn btn-outline-secondary active" id="connection_standard">Standard</button>
<button type="button" data="ssh" class="btn btn-outline-secondary" id="connection_ssh">SSH</button>
</div>
</div>

<hr/>

<div class="connection-scheme-group">
<div class="form-group">
<div class="row">
<div class="col-sm-12">
<label>Enter server URL scheme</label>
<input type="text" class="form-control" id="connection_url" name="url" autocomplete="off">
<p class="help-block">
<label class="form-label fw-bolder">Enter server URL scheme</label>
<input type="text" class="form-control form-control-sm" id="connection_url" name="url" autocomplete="off">
<p class="form-text">
URL format: postgres://user:password@host:port/db?sslmode=mode<br/>
Read more on PostgreSQL <a href="https://www.postgresql.org/docs/current/static/libpq-connect.html#LIBPQ-CONNSTRING" target="_blank">connection string format</a>.
</p>
Expand All @@ -190,54 +190,50 @@ <h1>pgweb</h1>
</div>

<div class="connection-bookmarks-group">
<div class="form-group bookmarks">
<label class="col-sm-3 control-label">Bookmark</label>
<div class="row">
<label class="col-sm-3 col-form-label">Bookmark</label>
<div class="col-sm-9">
<select class="form-control" id="connection_bookmarks"></select>
<select class="form-control form-control-sm" id="connection_bookmarks"></select>
</div>
</div>
</div>

<div class="connection-standard-group">
<div class="form-group">
<label class="col-sm-3 control-label">Host</label>
<div class="col-sm-9">
<div class="row">
<div class="col-sm-9 col-xs-9">
<input type="text" id="pg_host" class="form-control" />
</div>
<div class="col-sm-3 col-xs-3 no-left-padding">
<input type="text" id="pg_port" class="form-control" placeholder="5432" />
</div>
<div class="row">
<label class="col-sm-3 col-form-label">Host</label>
<div class="col-sm-6">
<input type="text" id="pg_host" class="form-control form-control-sm" />
</div>
<div class="col-sm-3 no-left-padding">
<input type="text" id="pg_port" class="form-control form-control-sm" placeholder="5432" />
</div>
</div>
</div>

<div class="form-group">
<label class="col-sm-3 control-label">Username</label>
<div class="row">
<label class="col-sm-3 col-form-label">Username</label>
<div class="col-sm-9">
<input type="text" id="pg_user" class="form-control" />
<input type="text" id="pg_user" class="form-control form-control-sm" />
</div>
</div>

<div class="form-group">
<label class="col-sm-3 control-label">Password</label>
<div class="row">
<label class="col-sm-3 col-form-label">Password</label>
<div class="col-sm-9">
<input type="password" id="pg_password" class="form-control" />
<input type="password" id="pg_password" class="form-control form-control-sm" />
</div>
</div>

<div class="form-group">
<label class="col-sm-3 control-label">Database</label>
<div class="row">
<label class="col-sm-3 col-form-label">Database</label>
<div class="col-sm-9">
<input type="text" id="pg_db" class="form-control" />
<input type="text" id="pg_db" class="form-control form-control-sm" />
</div>
</div>

<div class="form-group">
<label class="col-sm-3 control-label">SSL Mode</label>
<div class="row">
<label class="col-sm-3 col-form-label">SSL Mode</label>
<div class="col-sm-9">
<select class="form-control" id="connection_ssl">
<select class="form-select form-select-sm" id="connection_ssl">
<option value="disable">disable</option>
<option value="require" selected="selected">require</option>
<option value="verify-full">verify-full</option>
Expand All @@ -251,33 +247,33 @@ <h1>pgweb</h1>

<h3 class="text-center">SSH Connection</h3>

<div class="form-group">
<label class="col-sm-3 control-label">Host</label>
<div class="row">
<label class="col-sm-3 col-form-label">Host</label>
<div class="col-sm-7">
<input type="text" id="ssh_host" class="form-control" />
<input type="text" id="ssh_host" class="form-control form-control-sm" />
</div>
<div class="col-sm-2 no-left-padding">
<input type="text" id="ssh_port" class="form-control" placeholder="22" />
<input type="text" id="ssh_port" class="form-control form-control-sm" placeholder="22" />
</div>
</div>

<div class="form-group">
<label class="col-sm-3 control-label">Credentials</label>
<div class="row">
<label class="col-sm-3 col-form-label">Credentials</label>
<div class="col-sm-5">
<input type="text" id="ssh_user" class="form-control" placeholder="Username" />
<input type="text" id="ssh_user" class="form-control form-control-sm" placeholder="Username" />
</div>
<div class="col-sm-4 no-left-padding">
<input type="password" id="ssh_password" class="form-control" placeholder="Password" />
<input type="password" id="ssh_password" class="form-control form-control-sm" placeholder="Password" />
</div>
</div>

<div class="form-group">
<label class="col-sm-3 control-label">Auth Key</label>
<div class="row">
<label class="col-sm-3 col-form-label">Auth Key</label>
<div class="col-sm-5">
<input type="text" id="ssh_key" class="form-control" placeholder="Key path" />
<input type="text" id="ssh_key" class="form-control form-control-sm" placeholder="Key path" />
</div>
<div class="col-sm-4 no-left-padding">
<input type="password" id="ssh_key_password" class="form-control" placeholder="Key password" />
<input type="password" id="ssh_key_password" class="form-control form-control-sm" placeholder="Key password" />
</div>
</div>

Expand All @@ -286,10 +282,10 @@ <h3 class="text-center">SSH Connection</h3>

<div id="connection_error" class="alert alert-danger"></div>

<div class="form-group">
<div class="col-sm-12">
<button type="submit" class="btn btn-block btn-primary open-connection">Connect</button>
<button type="button" id="close_connection_window" class="btn btn-block btn-default">Cancel</button>
<div class="row">
<div class="col-sm-12 d-grid gap-2">
<button type="submit" class="btn btn-primary open-connection">Connect</button>
<button type="button" id="close_connection_window" class="btn btn-outline-secondary">Cancel</button>
</div>
</div>
</form>
Expand All @@ -299,12 +295,12 @@ <h3 class="text-center">SSH Connection</h3>
<ul class="dropdown-menu" role="menu">
<li><a href="#" data-action="copy">Copy Table Name</a></li>
<li><a href="#" data-action="analyze">Analyze Table</a></li>
<li class="divider"></li>
<li class="dropdown-divider"></li>
<li><a href="#" data-action="export" data-format="json">Export to JSON</a></li>
<li><a href="#" data-action="export" data-format="csv">Export to CSV</a></li>
<li><a href="#" data-action="export" data-format="xml">Export to XML</a></li>
<li><a href="#" data-action="dump">Export to SQL</a></li>
<li class="divider"></li>
<li class="dropdown-divider"></li>
<li><a href="#" data-action="truncate">Truncate Table</a></li>
<li><a href="#" data-action="delete">Delete Table</a></li>
</ul>
Expand All @@ -314,21 +310,21 @@ <h3 class="text-center">SSH Connection</h3>
<li><a href="#" data-action="view_def">View Definition</a></li>
<li><a href="#" data-action="copy">Copy View Name</a></li>
<li><a href="#" data-action="copy_def">Copy View Definition</a></li>
<li class="divider"></li>
<li class="dropdown-divider"></li>
<li><a href="#" data-action="export" data-format="json">Export to JSON</a></li>
<li><a href="#" data-action="export" data-format="csv">Export to CSV</a></li>
<li><a href="#" data-action="export" data-format="xml">Export to XML</a></li>
<li class="divider"></li>
<li class="dropdown-divider"></li>
<li><a href="#" data-action="delete">Delete View</a></li>
</ul>
</div>
<div id="current_database_context_menu">
<ul class="dropdown-menu" role="menu">
<li><a href="#" data-action="show_db_stats">Show Database Stats</a></li>
<li><a href="#" data-action="download_db_stats">Download Database Stats</a></li>
<li class="divider"></li>
<li class="dropdown-divider"></li>
<li><a href="#" data-action="server_settings">Show Server Settings</a></li>
<li class="divider"></li>
<li class="dropdown-divider"></li>
<li><a href="#" data-action="export">Export SQL dump</a></li>
</ul>
</div>
Expand Down
Loading