2014-10-14 04:49:43 +04:00
|
|
|
<!DOCTYPE html>
|
|
|
|
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
|
|
|
|
<head>
|
|
|
|
<title>pgweb</title>
|
|
|
|
<meta charset="utf-8">
|
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
|
|
<meta http-equiv="Content-Language" content="en">
|
2016-02-20 06:14:56 +03:00
|
|
|
<link rel="stylesheet" href="static/css/bootstrap.css"></link>
|
|
|
|
<link rel="stylesheet" href="static/css/font-awesome.css"></link>
|
|
|
|
<link rel="stylesheet" href="static/css/app.css"></link>
|
|
|
|
<link rel="icon" type="image/x-icon" href="static/img/icon.ico" />
|
|
|
|
<script type="text/javascript" src="static/js/jquery.js"></script>
|
|
|
|
<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/bootstrap-contextmenu.js"></script>
|
2017-09-16 21:50:22 +03:00
|
|
|
<script type="text/javascript" src="static/js/utils.js"></script>
|
2017-10-06 17:15:44 +03:00
|
|
|
<script type="text/javascript" src="static/js/bootstrap3-typeahead.min.js"></script>
|
|
|
|
<script type="text/javascript" src="static/js/app.js"></script>
|
2014-10-14 04:49:43 +04:00
|
|
|
</head>
|
|
|
|
<body>
|
2014-11-01 23:44:24 +03:00
|
|
|
<div id="main">
|
|
|
|
<div id="nav">
|
|
|
|
<ul>
|
2015-05-19 00:57:53 +03:00
|
|
|
<li id="table_content">Rows</li>
|
2014-11-01 23:44:24 +03:00
|
|
|
<li id="table_structure">Structure</li>
|
|
|
|
<li id="table_indexes">Indexes</li>
|
2015-12-05 03:14:03 +03:00
|
|
|
<li id="table_constraints">Constraints</li>
|
2017-11-22 00:33:13 +03:00
|
|
|
<li id="table_query" class="selected">Query</li>
|
2014-11-01 23:44:24 +03:00
|
|
|
<li id="table_history">History</li>
|
2015-03-22 03:14:11 +03:00
|
|
|
<li id="table_activity">Activity</li>
|
2014-11-01 23:44:24 +03:00
|
|
|
<li id="table_connection">Connection</li>
|
|
|
|
</ul>
|
2014-11-02 04:06:15 +03:00
|
|
|
|
2016-02-05 08:13:54 +03:00
|
|
|
<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>
|
|
|
|
</div>
|
2014-11-01 05:39:00 +03:00
|
|
|
</div>
|
2014-11-01 23:44:24 +03:00
|
|
|
<div id="sidebar">
|
|
|
|
<div class="tables-list">
|
|
|
|
<div class="wrap">
|
2017-10-06 17:15:44 +03:00
|
|
|
<div class="title main">
|
2015-01-04 05:55:22 +03:00
|
|
|
<i class="fa fa-database"></i> <span class="current-database" id="current_database"></span>
|
2017-10-14 07:04:19 +03:00
|
|
|
<input class="typeahead current_database" id="database_search" type="text" placeholder="Search database">
|
2015-01-04 05:55:22 +03:00
|
|
|
<span class="refresh" id="refresh_tables" title="Refresh tables list"><i class="fa fa-refresh"></i></span>
|
2015-01-04 05:20:18 +03:00
|
|
|
</div>
|
2016-01-13 06:33:44 +03:00
|
|
|
<div id="objects"></div>
|
2014-11-01 23:44:24 +03:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="table-information">
|
|
|
|
<div class="wrap">
|
|
|
|
<div class="title">Table Information</div>
|
|
|
|
<ul>
|
|
|
|
<li>Size: <span id="table_total_size"></span></li>
|
|
|
|
<li>Data size: <span id="table_data_size"></span></li>
|
|
|
|
<li>Index size: <span id="table_index_size"></span></li>
|
2014-11-21 08:25:44 +03:00
|
|
|
<li>Estimated rows: <span id="table_rows_count"></span></li>
|
2014-11-01 23:44:24 +03:00
|
|
|
</ul>
|
|
|
|
</div>
|
2014-10-27 01:16:35 +03:00
|
|
|
</div>
|
2014-10-26 00:47:23 +04:00
|
|
|
</div>
|
2014-11-01 23:44:24 +03:00
|
|
|
<div id="body">
|
|
|
|
<div id="input">
|
|
|
|
<div class="wrapper">
|
|
|
|
<div id="custom_query"></div>
|
|
|
|
<div class="actions">
|
|
|
|
<input type="button" id="run" value="Run Query" class="btn btn-sm btn-primary" />
|
|
|
|
<input type="button" id="explain" value="Explain Query" class="btn btn-sm btn-default" />
|
|
|
|
<div id="query_progress">Please wait, query is executing...</div>
|
2016-01-08 05:44:03 +03:00
|
|
|
<div class="pull-right">
|
2017-02-25 23:04:48 +03:00
|
|
|
<span id="result-rows-count"></span>
|
2016-01-08 05:44:03 +03:00
|
|
|
<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" />
|
|
|
|
</div>
|
2014-11-01 23:44:24 +03:00
|
|
|
</div>
|
2014-10-14 04:49:43 +04:00
|
|
|
</div>
|
2014-10-13 22:55:19 +04:00
|
|
|
</div>
|
2014-11-01 23:44:24 +03:00
|
|
|
<div id="output">
|
|
|
|
<div class="wrapper">
|
|
|
|
<table id="results" class="table"></table>
|
|
|
|
</div>
|
2014-10-14 04:49:43 +04:00
|
|
|
</div>
|
2016-01-08 23:16:53 +03:00
|
|
|
<div id="pagination">
|
|
|
|
<form class="filters" action="#" id="rows_filter">
|
|
|
|
<span>Search</span>
|
|
|
|
<select class="column form-control"></select>
|
|
|
|
<select class="filter form-control">
|
2016-01-09 00:31:06 +03:00
|
|
|
<option value="">Select filter</option>
|
2016-01-08 23:16:53 +03:00
|
|
|
<option value="equal">=</option>
|
|
|
|
<option value="not_equal">≠</option>
|
|
|
|
<option value="greater">></option>
|
2016-01-09 00:31:06 +03:00
|
|
|
<option value="greater_eq">≥</option>
|
2016-01-08 23:16:53 +03:00
|
|
|
<option value="less"><</option>
|
|
|
|
<option value="less_eq">≤</option>
|
|
|
|
<option value="like">LIKE</option>
|
|
|
|
<option value="ilike">ILIKE</option>
|
|
|
|
<option value="null">IS NULL</option>
|
|
|
|
<option value="not_null">NOT NULL</option>
|
|
|
|
</select>
|
|
|
|
<input type="text" class="form-control" placeholder="Search query" />
|
|
|
|
<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>
|
|
|
|
</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>
|
|
|
|
</div>
|
|
|
|
<div class="current-page" data-page="1" data-pages="1">
|
|
|
|
<span id="total_records"></span> rows
|
|
|
|
</div>
|
|
|
|
</div>
|
2014-10-13 22:55:19 +04:00
|
|
|
</div>
|
2014-10-11 22:03:51 +04:00
|
|
|
</div>
|
2014-11-04 04:06:05 +03:00
|
|
|
|
2014-11-01 23:44:24 +03:00
|
|
|
<div id="connection_window">
|
|
|
|
<div class="connection-settings">
|
|
|
|
<h1>pgweb</h1>
|
|
|
|
|
2014-11-06 20:25:53 +03:00
|
|
|
<form role="form" class="form-horizontal" id="connection_form">
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="text-center">
|
|
|
|
<div class="btn-group btn-group-sm connection-group-switch">
|
2014-12-07 05:04:32 +03:00
|
|
|
<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>
|
2016-01-15 04:50:01 +03:00
|
|
|
<button type="button" data="ssh" class="btn btn-default" id="connection_ssh">SSH</button>
|
2014-11-06 20:25:53 +03:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<hr/>
|
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="connection-scheme-group">
|
|
|
|
<div class="form-group">
|
|
|
|
<div class="col-sm-12">
|
|
|
|
<label>Enter server URL scheme</label>
|
|
|
|
<input type="text" class="form-control" id="connection_url" name="url">
|
|
|
|
<p class="help-block">URL format: postgres://user:password@host:port/db?sslmode=mode</p>
|
|
|
|
</div>
|
2014-11-06 20:25:53 +03:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="connection-standard-group">
|
2014-12-07 05:04:32 +03:00
|
|
|
<div class="form-group bookmarks">
|
|
|
|
<label class="col-sm-3 control-label">Bookmark</label>
|
|
|
|
<div class="col-sm-9">
|
|
|
|
<select class="form-control" id="connection_bookmarks"></select>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="form-group">
|
|
|
|
<label class="col-sm-3 control-label">Host</label>
|
2017-09-27 07:29:28 +03:00
|
|
|
<div class="col-sm-7">
|
2014-11-07 01:05:49 +03:00
|
|
|
<input type="text" id="pg_host" class="form-control" />
|
|
|
|
</div>
|
2017-09-27 07:29:28 +03:00
|
|
|
<div class="col-sm-2 no-left-padding">
|
|
|
|
<input type="text" id="pg_port" class="form-control" placeholder="5432" />
|
|
|
|
</div>
|
2014-11-06 20:25:53 +03:00
|
|
|
</div>
|
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="form-group">
|
|
|
|
<label class="col-sm-3 control-label">Username</label>
|
|
|
|
<div class="col-sm-9">
|
|
|
|
<input type="text" id="pg_user" class="form-control" />
|
|
|
|
</div>
|
2014-11-06 20:25:53 +03:00
|
|
|
</div>
|
2014-11-01 23:44:24 +03:00
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="form-group">
|
|
|
|
<label class="col-sm-3 control-label">Password</label>
|
|
|
|
<div class="col-sm-9">
|
2015-06-10 17:06:28 +03:00
|
|
|
<input type="password" id="pg_password" class="form-control" />
|
2014-11-07 01:05:49 +03:00
|
|
|
</div>
|
2014-11-06 20:25:53 +03:00
|
|
|
</div>
|
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="form-group">
|
|
|
|
<label class="col-sm-3 control-label">Database</label>
|
|
|
|
<div class="col-sm-9">
|
|
|
|
<input type="text" id="pg_db" class="form-control" />
|
|
|
|
</div>
|
2014-11-06 20:25:53 +03:00
|
|
|
</div>
|
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="form-group">
|
2017-09-27 07:29:28 +03:00
|
|
|
<label class="col-sm-3 control-label">SSL Mode</label>
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="col-sm-9">
|
|
|
|
<select class="form-control" id="connection_ssl">
|
|
|
|
<option value="disable">disable</option>
|
|
|
|
<option value="require" selected="selected">require</option>
|
|
|
|
<option value="verify-full">verify-full</option>
|
|
|
|
</select>
|
|
|
|
</div>
|
2014-11-06 20:25:53 +03:00
|
|
|
</div>
|
2014-11-01 23:44:24 +03:00
|
|
|
</div>
|
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="connection-ssh-group">
|
2017-09-27 07:29:28 +03:00
|
|
|
<hr/>
|
2017-10-14 01:23:53 +03:00
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="form-group">
|
|
|
|
<label class="col-sm-3 control-label">SSH Host</label>
|
2017-09-27 07:29:28 +03:00
|
|
|
<div class="col-sm-7">
|
2014-11-07 01:05:49 +03:00
|
|
|
<input type="text" id="ssh_host" class="form-control" />
|
|
|
|
</div>
|
2017-09-27 07:29:28 +03:00
|
|
|
<div class="col-sm-2 no-left-padding">
|
|
|
|
<input type="text" id="ssh_port" class="form-control" placeholder="22" />
|
|
|
|
</div>
|
2014-11-07 01:05:49 +03:00
|
|
|
</div>
|
2017-10-14 01:23:53 +03:00
|
|
|
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="form-group">
|
|
|
|
<label class="col-sm-3 control-label">SSH User</label>
|
|
|
|
<div class="col-sm-9">
|
|
|
|
<input type="text" id="ssh_user" class="form-control" />
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="form-group">
|
|
|
|
<label class="col-sm-3 control-label">SSH Password</label>
|
|
|
|
<div class="col-sm-9">
|
2016-01-15 04:50:01 +03:00
|
|
|
<input type="password" id="ssh_password" class="form-control" placeholder="optional" />
|
2014-11-07 01:05:49 +03:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="form-group">
|
2017-09-27 07:29:28 +03:00
|
|
|
<label class="col-sm-3 control-label">SSH Key</label>
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="col-sm-9">
|
2017-09-27 07:29:28 +03:00
|
|
|
<input type="text" id="ssh_key" class="form-control" placeholder="optional" />
|
2014-11-07 01:05:49 +03:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2014-11-06 20:25:53 +03:00
|
|
|
|
2014-11-01 23:44:24 +03:00
|
|
|
<div id="connection_error" class="alert alert-danger"></div>
|
2014-11-06 20:25:53 +03:00
|
|
|
|
|
|
|
<div class="form-group">
|
2014-11-07 01:05:49 +03:00
|
|
|
<div class="col-sm-12">
|
2016-02-21 06:03:35 +03:00
|
|
|
<button type="submit" class="btn btn-block btn-primary open-connection">Connect</button>
|
2016-03-02 04:42:01 +03:00
|
|
|
<button type="button" id="close_connection_window" class="btn btn-block btn-default">Cancel</button>
|
2014-11-06 20:25:53 +03:00
|
|
|
</div>
|
|
|
|
</div>
|
2014-11-01 23:44:24 +03:00
|
|
|
</form>
|
|
|
|
</div>
|
|
|
|
</div>
|
2015-05-19 20:24:52 +03:00
|
|
|
<div id="tables_context_menu">
|
|
|
|
<ul class="dropdown-menu" role="menu">
|
2017-11-17 07:27:05 +03:00
|
|
|
<li><a href="#" data-action="copy">Copy Table Name</a></li>
|
|
|
|
<li class="divider"></li>
|
2016-01-05 03:03:53 +03:00
|
|
|
<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>
|
2017-11-17 07:27:05 +03:00
|
|
|
<li><a href="#" data-action="dump">Export to SQL</a></li>
|
2017-09-17 04:32:41 +03:00
|
|
|
<li class="divider"></li>
|
2017-09-16 21:50:22 +03:00
|
|
|
<li><a href="#" data-action="truncate">Truncate Table</a></li>
|
|
|
|
<li><a href="#" data-action="delete">Delete Table</a></li>
|
2015-05-19 20:24:52 +03:00
|
|
|
</ul>
|
|
|
|
</div>
|
2017-09-17 04:32:41 +03:00
|
|
|
<div id="current_database_context_menu">
|
|
|
|
<ul class="dropdown-menu" role="menu">
|
|
|
|
<li><a href="#" data-action="export">Export SQL dump</a></li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
2017-09-16 21:50:22 +03:00
|
|
|
<div id="results_header_menu">
|
|
|
|
<ul class="dropdown-menu" role="menu">
|
|
|
|
<li><a href="#" data-action="unique_values" data-counts="false">Unique Values</a></li>
|
|
|
|
<li><a href="#" data-action="unique_values" data-counts="true">Unique Values + Counts</a></li>
|
|
|
|
<li><a href="#" data-action="copy_name">Copy Column Name</a></li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
2014-10-14 04:49:43 +04:00
|
|
|
</body>
|
2014-11-21 08:25:44 +03:00
|
|
|
</html>
|