Commit Graph

891 Commits (master)

Author SHA1 Message Date
Akshay Joshi 3e3f06c55d Fixed an issue where Autocomplete did not work after pressing CTRL/CMD + Space
for the second time and autocomplete on keypress is off. Fixes #7563
2022-07-22 18:49:46 +05:30
Akshay Joshi 631a08189a 1) Improved autocomplete loading indicator.
2) Avoid too many ajax requests per key press.

refs #4488
2022-07-20 18:02:45 +05:30
Aditya Toshniwal 4808df5e95 1) Port the file/storage manager to React. Fixes #7313
2) Allow users to delete files/folders from the storage manager. Fixes #4607
3) Allow users to search within the file/storage manager. Fixes #7389
4) Fixed an issue where new folders cannot be created in the save dialog. Fixes #7524
2022-07-19 15:27:47 +05:30
Akshay Joshi 4585597388 Added option to trigger autocomplete on key press in the query tool. Fixes #4488 2022-07-19 11:55:37 +05:30
Yogesh Mahajan 8f2bda2309 1) Preserve the settings set by the user in the import/export data dialog. Fixes #7428
2) Fixed the JSON editor issue of hiding the first record. Fixes #7520
2022-07-18 10:54:03 +05:30
Aditya Toshniwal 9dde195af4 Ensure that notices should not disappear from the messages tab. Fixes #7512 2022-07-14 18:05:36 +05:30
Aditya Toshniwal 1fecf70123 Ensure that geometry should be shown for all the selected cells. Fixes #7519 2022-07-14 17:38:42 +05:30
Akshay Joshi 50c930f5fa Make the controls on the Graph Visualiser collapsible and reorganize the controls. 2022-07-07 14:10:10 +05:30
Akshay Joshi 9cdcad7a88 1) Keep the selected columns for the X and Y-axis.
2) Lighten the color of the stacked line chart.
2022-07-06 18:58:15 +05:30
Akshay Joshi 7414394ceb Fixed the following issues in the Graph Visualiser:
1) Change all theme's color codes.
 2) Bar graph for the first and last labels on the X-axis does not display all the bars.
 3) Make the graphs always start from zero on the Y-axis.
2022-07-05 18:44:20 +05:30
Akshay Joshi 8b62cd1f04 Added support for visualise the graph using a Pie chart in the query tool. Fixes #7487 2022-07-05 10:47:17 +05:30
Aditya Toshniwal 239e3bb6f1 Some more theme related fixes. 2022-07-04 14:26:33 +05:30
Aditya Toshniwal 86b30b3c83 Theme component usage has been fixed, a component should never be wrapped in multiple Theme components. 2022-06-30 15:18:20 +05:30
Akshay Joshi b92e2fcfc9 Added support for visualizing the graphs using Stacked Line, Bar, and Stacked Bar charts in the query tool. Fixes #7486 2022-06-30 12:38:48 +05:30
Aditya Toshniwal 524626b895 Ensure that the file name should be reflected on the query tool for the new tab title. 2022-06-28 18:21:08 +05:30
Yogesh Mahajan d4657dcd32 Fixed module import issue.
refs #7506
2022-06-28 11:28:55 +05:30
Akshay Joshi f905dc07cf Reset the zoom to original when chart object is created. Fixed an error on Windows. 2022-06-28 10:25:38 +05:30
Pradip Parkale e95eb14651 Fixed an issue where the connection wasn't being closed when the user switched
to a new connection and closed the query tool. Fixes #7461

Fixed the 'Show activity?' issue which was missed during Dashboard porting.
2022-06-23 18:15:16 +05:30
Akshay Joshi 2556771c32 The following issues were fixed in Graph Visualiser:
1) Allow the user to set the row limit and chart line width.
2) Zoom should only be applied to X-axis, not both.
3) On clicking the 'Generate' button, the chart should return to its original zoom level.
4) Negative values are not displayed.

refs #7485
2022-06-23 14:52:11 +05:30
Akshay Joshi 93bc1f3c57 Added support for visualise the graph using a Line chart in the query tool. Fixes #7485 2022-06-22 17:18:51 +05:30
Aditya Toshniwal 5c1493bd7e Fixed an issue where there is no setting to turn off notifications in the Query Tool. Fixes #7423 2022-06-13 14:32:07 +05:30
Aditya Toshniwal 725726f083 Ensure that the Query Editor should be focused when switching between query tool tabs. Fixes #7441 2022-06-13 14:26:01 +05:30
Aditya Toshniwal f615ef30f9 Skip the history records if the JSON info can't be parsed instead of showing 'No history'. Fixes #7468 2022-06-13 11:43:26 +05:30
Aditya Toshniwal 4c50940634 Fixed some issues related to the dropdown background color. Fixes #7374 2022-05-30 17:05:48 +05:30
Aditya Toshniwal b507eb8857 Fixed an issue when switching between connections in the Query Tool dropdown,
the background and foreground colors should be changed. Fixes #7374
2022-05-26 15:31:18 +05:30
Aditya Toshniwal aaab5c51a7 Fixed an issue where the data grid scroll is not reset when a query is executed. 2022-05-25 17:53:52 +05:30
Aditya Toshniwal 1e1e1f027a Fixed an issue where geometry is not visible when a single cell is selected. Fixes #7394 2022-05-24 17:08:02 +05:30
Aditya Toshniwal c5ca45c461 Ensure that null values are accepted for the numeric columns in react-data-grid. Fixes #7405 2022-05-24 15:02:06 +05:30
Aditya Toshniwal 04fa7dee68 Added missing toggle case keyboard shortcuts to the query tool. Fixes #7399 2022-05-24 14:54:43 +05:30
Aditya Toshniwal 6d26d5833f Added support for multi-cell selection in the query tool grid. Fixes #7380 2022-05-24 11:39:34 +05:30
Akshay Joshi 4f7bcc2919 Added the ability to detect and warn users about bidirectional Unicode characters. Fixes #7002 2022-05-23 16:04:21 +05:30
Aditya Toshniwal 5e0dfff42a Ensure that the editor position should not get changed once it is opened. Fixes #7393 2022-05-18 13:52:09 +05:30
Aditya Toshniwal 2d8aff6ca0 Fixed an issue with geometry window zoom mouse scroll not working. Fixes #7373 2022-05-17 18:58:49 +05:30
Aditya Toshniwal fbe7b56054 Fixed an issue where a popup for unsaved changes appears when clicking on the
open file button for a blank query editor. Fixes #7376
2022-05-17 18:56:15 +05:30
Aditya Toshniwal cb05d2924f Fixed an issue where an error message fills the entire window if the query is long. Fixes #7388 2022-05-17 18:52:19 +05:30
Akshay Joshi 44f9ba4a57 Port connect server password dialog to React. Fixes #7337 2022-05-16 16:21:14 +05:30
Aditya Toshniwal ca8e14455f Fixed the following issues:
1. Feature test cases for the new query tool.
 2. Query tool panel rename is not persisting.
2022-05-12 18:29:09 +05:30
Aditya Toshniwal 1135821870 Fix Query tool issues:
1. Warning/Confirm dialogs should be inside the query tool.
2. The Help button in View/Edit data should open the corresponding help page.
3. Disable execute options when query tool in transaction.
4. Grid not loading more than 10000 rows. react-data-grid issue, PR sent. Use a fork till then.
5. NOTICE messages should not be part of Notifier success popups.

Fixes #7350
2022-05-09 12:39:29 +05:30
Nikhil Mohite 5ebc9d7d2e Ensure the Copy button is enabled when columns or rows are selected in the query tool results. 2022-05-05 09:52:14 +01:00
Aditya Toshniwal 64ffed0ddb 1. Filter dialog doesn't work in edit mode (getting back end errors), reverting it back to create mode of SchemaView.
2. Enable the copy button when a cell is selected.
3. Exclude, Include related fixes.
2022-04-29 16:29:46 +05:30
Akshay Joshi c56fe813a5 Use gettext to wrap some strings. 2022-04-29 16:18:28 +05:30
Aditya Toshniwal 38f642d361 Ensure that the "Save results" button should be disabled when there are no rows.
refs #6131
2022-04-28 18:01:54 +05:30
Akshay Joshi 6e2ee9a21f Port data filter dialog to React. Fixes #7340 2022-04-28 12:04:56 +05:30
Aditya Toshniwal 0795b22ae6 Fixed the following issues for the new query tool:
1) In Dark mode > Replace/Find dialogue forward & reverse buttons are stuck to each other.
 2) In Dark/High contrast mode > Checkbox is not visible for false value.
 3) Wrap toolbar when size goes very small.
 4) Replace functionality does not work when tried in sequence 2 times. Codemirror search is not cyclic. So, changes are made to always search from the start.
 5) Replace all does not work when tried in sequence 2 times. Same reason as above.
 6) Fix broken macros $SELECTION$ feature.
 7) Make query history SQL readonly.
 8) The Filter dialog save button should be disabled when opened.
2022-04-26 16:27:53 +05:30
Akshay Joshi 4f9eaf850d Updated documentation for the new query tool.
refs #6131
2022-04-26 16:18:28 +05:30
Aditya Toshniwal 25b89f7624 Fixed the following issues for the new query tool:
1) Failed to fetch query history error sometimes.
 2) In copy paste row, if a copied row has [null], then those are pasted as an empty string.
 3) When Data output is empty, show an empty grid.
 4) Schema diff generates a script button resulting in an empty window. Fixes #7306.
 5) Detach the DataOutput panel > Try editing text cell > Text editor is hidden behind the data output panel

refs #6131
2022-04-25 18:11:39 +05:30
Aditya Toshniwal c5ca394cec 1. Add min width to panels.
2. Fix issues related to New connection in query tool. Also fixed some existing bugs related to this.

refs #6131
2022-04-22 18:17:01 +05:30
Aditya Toshniwal e5ef6a7b21 Fixed following issues for Query Tool (after React Porting):
1) Find/Replace both opens the same dialogue box.(by clicking menu option)
2) Add New Server Connection > Server options keep loading(For multiple Server groups & should have some server)
3) Fixed CSS issues of slickgrid at various places.
4) C should be captial in ’<New connection…>'
5) In pop title for New Connection, all words should be capital.(Add new connection)
6) Explain > Analaysis tab > Column heading missing ROWS PLAN with cost & In explain only.
7) Explain > Analaysis tab > with cost enabled > Upward arrow size does not match with font of number. Arrow is little bigger than number.
8) Boolean default is not considered while ading new row.(try table from feature test defaults)
9) In query history , when not query history present, warning icon size big. Match it to warning message - No history found
10) Select table/db object > Open query tool from Tools menu > NOT FOUND error is shown. Existing issue, fixed.
11) Any cell just open by clicking it > Do NOT change any thing > Click Ok > Cell is shown as edited.

refs #6131
2022-04-20 19:02:16 +05:30
Aditya Toshniwal 9c30d983bd Fixed following issues for query tool after react porting:
1) Add New Server Connection > Server options keep loading(For empty Server group).
 2) After clicking indent/Unindent(for all operations) for large query option left as it is till operation completes
 3) Check sign beside options in Execute Option/Copy Header is little bit big
 4) In explain > Analysis tab does not show ROWS column
 5) In explain > Explain > analysis previous explain output is NOT cleared. New rows are appended. Same applies to the statistics tab.
 6) Update new query tool connection tool tip. Fixes #7289
 7) Explain-Analyze > Loops column is empty.
 8) Explain-Analyze with Verbose & Costs > in ROW X columns upward arrows are missing.
 9) Explain-Analyze with all option checked > background colors are missing for timing.
 10) Explain-Analyze > Additional bullet is added before Hash Cond.
 11) Browser Tree > Filtered rows icon is not working.
 12) Create table with timestamp and default value as function now() > Add new row > Enter mandatory columns except column where default value is function(now()) > Click Save > New row added but column with default value has value [default]. not updated to actual value. / Default values are not considered for any column while adding a new entry.
 13) Disable execute options in View/Edit data.
 14) The Boolean column always shows null.
 15) In Query history Remove & Remove all buttons are stuck to each other.
 16) On Remove all, the right panel is empty.
 17) Create a column with boolean[]/ text[], Try to add a new entry from data grid, enter “” quotes > Click Ok > Now try edit cell > You can not change value.
 18) In query history - Select queries are suffixed by ’Save Data’ icon
 19) Edit any table with PK > Try to insert duplicate PK > Error thrown > Correct pK value > Still old error shown > Not able to add new entry (This works when focus is moved from edited cell)
 20) Clicking arrows after opening dropdown options, does not collapse dropdown.

refs #6131
2022-04-18 12:50:51 +05:30
Akshay Joshi 86a3696ab4 Remove aciTree and its references. 2022-04-13 17:35:01 +05:30
Aditya Toshniwal 9dfa5ea77d Improvement to the Geometry Viewer popup to change the size of the result tables when column names are quite long. Fixes #7168 2022-04-09 12:09:36 +05:30
Aditya Toshniwal b5b9ee46a1 1) Port query tool to React. Fixes #6131
2) Added status bar to the Query Tool. Fixes #3253
3) Ensure that row numbers should be visible in view when scrolling horizontally. Fixes #3989
4) Allow removing a single query history. Refs #4113
5) Partially fixed Macros usability issues. Ref #6969
6) Fixed an issue where the Query tool opens on minimum size if the user opens multiple query tool Window quickly. Fixes #6725
7) Relocate GIS Viewer Button to the Left Side of the Results Table. Fixes #6830
8) Fixed an issue where the connection bar is not visible. Fixes #7188
9) Fixed an issue where an Empty message popup after running a query. Fixes #7260
10) Ensure that Autocomplete should work after changing the connection. Fixes #7262
11) Fixed an issue where the copy and paste row does not work if the first column contains no data. Fixes #7294
2022-04-07 17:36:56 +05:30
Akshay Joshi 143ae19b8d Ensure that the correct user should be selected in the new connection dialog. Fixes #7264 2022-03-31 15:51:46 +05:30
Nikhil Mohite 74e794b416 Port preferences dialog to React. Fixes #7149 2022-03-21 13:29:26 +05:30
Rahul Shirsat 4d727015fd Fixed an issue where the query tool is displaying an incorrect label. Fixes #7136 2022-02-02 14:45:31 +05:30
Akshay Joshi aa5b1d50b9 Fixed issues introduce by SonarQube fixes. 2022-02-01 14:11:18 +05:30
Akshay Joshi 9f836f5433 Fixed following code smells reported by SonarQube:
1) Immediately return this expression instead of assigning it to the temporary variable.
 2) Extract this nested ternary operation into an independent statement.
 3) Expected a `for-of` loop instead of a `for` loop with this simple iteration.
2022-01-18 14:49:54 +05:30
Akshay Joshi e38c38cd58 Fixed following SonarQube code smells:
1) Remove this useless assignment to a variable.
2) Remove the unused local variable.
2022-01-12 14:53:19 +05:30
Akshay Joshi 2786f7ac5a Update copyright notices for 2022 2022-01-04 13:54:25 +05:30
Nikhil Mohite 191e2b6242 Fixed an issue where an operation error message pop up showing the database object's name incorrectly. Fixes #7078 2021-12-28 13:49:04 +05:30
Nikhil Mohite e5e9981836 Fixed an issue where Columns with default value not showing when adding a new row. Fixes #7034 2021-12-21 18:09:20 +05:30
Pradip Parkale 9754b0fe14 Fixed an issue where Columns with default value not showing when adding a new row. Fixes #7034 2021-12-17 10:48:24 +05:30
Aditya Toshniwal 701e6f86f5 Ensure that statue message should not hide the last line of messages when running a long query. Fixes #7020 2021-12-13 13:10:56 +05:30
Rahul Shirsat 91a288c2bb Correct the SQL definition for function/procedure with the Atomic keyword in PG14. Fixes #7029 2021-12-08 12:31:59 +05:30
Akshay Joshi fd53e4f5f9 Replace Alertify alert and confirm with React-based model dialog. Fixes #7053 2021-12-07 18:52:40 +05:30
Akshay Joshi f8cb62180e Fixed API test cases for StartRunningQueryTest. 2021-12-03 13:19:31 +05:30
Ashesh Vashi 36c9eb3dfd Added support for Two-factor authentication for improving security. Fixes #6543 2021-12-02 16:47:18 +05:30
Akshay Joshi c6424e3897 Replaced alertifyjs notifiers with React-based notistack. Fixes #7004 2021-12-02 16:05:52 +05:30
Nikhil Mohite bef692d431 Fixed an issue where On-demand rows throw an error when any row cell is edited
and saved it then scroll to get more rows.

Fixes #7005
2021-11-28 13:26:40 +05:30
Akshay Joshi d644b4f94e 1) Replace Flask-BabelEx with Flask-Babel. Fixes #6088
2) Upgrade Flask to version 2. Fixes #7010
2021-11-24 17:22:57 +05:30
huangj.fnst@fujitsu.com 8a21d9b500 Fixed some typos in the documentation and comments. 2021-10-14 11:13:16 +05:30
Rahul Shirsat 2ced82c7b3 Ensure that query highlighting color in the query tool should be less intensive. Fixes #6754 2021-10-12 14:30:29 +05:30
Nikhil Mohite ca32828281 Fixed an issue where Execute button of the query tool gets disabled once we change anything in the data grid. Fixes #6798 2021-10-06 16:59:38 +05:30
Nikhil Mohite 5f9bb1c160 Correct the implementation of query details should be scrollable as per design.
Fixes #3827
2021-10-01 13:01:24 +05:30
Khushboo Vashi 483e2ca8d0 Port browser tree to React. Fixes #6129 2021-09-27 16:44:26 +05:30
Nikhil Mohite 99c99a9ce9 Ensure that in the Query History tab, query details should be scrollable. Fixes #3827 2021-09-17 21:01:24 +05:30
Akshay Joshi eeff75ba20 Remove GPDB support completely. Fixes #6692 2021-09-09 13:09:53 +05:30
Nikhil Mohite f91908f627 Resolve the issue related to the close query tool panel with the save query tool changes.
refs #6710
2021-09-06 19:17:16 +05:30
Nikhil Mohite 7deda52bd9 Fixed an issue where multiple query tool tabs getting closed for the single close event. Fixes #6710 2021-08-30 16:59:46 +05:30
Yogesh Mahajan 51d73b1672 Fixed errors related to HTML tags shown in the error message for JSON editor. Fixes #6668 2021-08-26 14:54:51 +05:30
Akshay Joshi 3e4b5fd0d7 Renamed 'Auto rollback?' to 'Auto rollback on error?'. Fixes #6682 2021-08-19 15:30:58 +05:30
Yogesh Mahajan a6edfb498f Partially fixes the data output panel display issue. Fixes #6572 2021-08-17 17:22:08 +05:30
Pradip Parkale 7483ddf2b2 Added support to copy SQL from main window to query tool. Fixes #4904 2021-08-09 14:29:31 +05:30
Nikhil Mohite 703478c13d Fixed an issue where the titles in query tabs are different. Fixes #6618 2021-08-06 19:09:39 +05:30
Akshay Joshi 025c98ced8 1) Flash warning message of N no of attempts left for the unsuccessful login attempt.
2) Updated some strings in the Preferences for the "Maximum column width" option.
2021-08-03 17:06:06 +05:30
Yogesh Mahajan 8e214ca8fb Added support for formatted JSON viewer/editor when interacting with data in a JSON column. Fixes #5198 2021-08-03 11:36:45 +05:30
Akshay Joshi 508f97b08e Rename the "Resize by data?" to "Columns sized by" and disabled the 'Maximum column width'
button if 'Columns sized by' is set to 'Column data'. Fixes #6622
2021-07-27 15:17:06 +05:30
Akshay Joshi e68c8305a2 Added option to provide maximum width of the column when 'Resize by data?’ option in the preferences is set to True. Fixes #6559 2021-06-28 11:51:21 +05:30
Nikhil Mohite 2adb29ffc0 Fixed an issue where the New Connection Drop Down has lost default maintenance database, auto-select, and tab-through functionality. Fixes #6505 2021-06-23 12:48:17 +05:30
Aditya Toshniwal 81b78dd2b2 Do not block the query editor window when running a query. Fixes #3920 2021-06-23 12:22:24 +05:30
Pradip Parkale e3190b86ab Fixed an issue where a decimal number is appended for character varying fields while downloading the data in CSV format. Fixes #6520 2021-06-11 19:29:20 +05:30
Nikhil Mohite e1067ffe67 Ensure that the Query Tool connection string should not be changed as per the 'Query Tool tab title'. Fixes #6404 2021-06-07 22:07:51 +05:30
Rahul Shirsat d5f537aae4 Added extra check for verifying the rename of the database.
refs #4203
2021-06-07 21:11:28 +05:30
Rahul Shirsat 658a2de619 Fixed the issue of renaming the database by another user. Fixes #4203 2021-05-31 12:41:09 +05:30
Nikhil Mohite 3ddf941cd7 Added support to launch PSQL for the connected database server. Fixes #2341 2021-05-25 20:12:57 +05:30
Aditya Toshniwal f34adaca41 Fixed column sizing issue when there are no rows in a table.
refs #5954
2021-05-17 17:55:13 +05:30
Pradip Parkale 7ed97eeec4 Fixed an issue where file dialog showing incorrect files for the selected file types. Fixes #6443 2021-05-14 12:12:17 +05:30
Akshay Joshi bd7808a104 Fixed an issue where the filter 'Include/Exclude By Selection' not working for null values. Fixes #6392 2021-05-11 19:12:43 +05:30
Dave Page 2b7f8d8298 Improve some strings. 2021-05-11 11:31:14 +01:00
Akshay Joshi d80087f6d5 Added support to set auto width of columns by content size in the data output window. Fixes #5954 2021-05-07 17:18:50 +05:30
Murtuza Zabuawala 4c55044440 Remove duplicate code and avoid DOM search operation.
refs #6355
2021-05-06 10:53:32 +05:30
Akshay Joshi ac403d0dfa Fixed an issue where the current debug line is not visible in the 'Dark' theme. Fixes #6409 2021-05-04 12:34:03 +05:30
Khushboo Vashi 72f3730c34 Added support to connect PostgreSQL servers via Kerberos authentication. Fixes #6158 2021-05-03 16:10:45 +05:30
Pradip Parkale 3a2145e5fa Fixed an issue where query editor is not being closed if the user clicks on the 'Don't Save' button. Fixes #6417 2021-05-03 12:52:28 +05:30
Rahul Shirsat 488dc1849d Fixed an issue where data is displayed in the wrong order when executing the query repeatedly. Fixes #5555 2021-04-29 13:13:52 +05:30
Pradip Parkale 9dd1bae3c7 Ensure that pgAdmin should not allow opening external files that are dragged into it. Fixes #6355 2021-04-28 11:59:45 +05:30
Yogesh Mahajan dc65cbb08c Fixed an issue where foreign data wrapper properties are not visible if the host option contains two host addresses. Fixes #6379 2021-04-19 11:08:21 +05:30
Aditya Toshniwal 2b1910c1c1 Better fix for the black screen issues, reverted the old fix.
refs #6334
2021-04-16 18:23:29 +05:30
Akshay Joshi b4d44541bb Fixed SQL panel black screen issue when detaching it in runtime. Fixes #6334 2021-04-15 16:40:35 +05:30
Rahul Shirsat 49095ccba6 1) Fixed an issue where shortcut keys are not working with manage macro. Fixes #5908
2) Fixed an issue where the cursor shifts its focus to the wrong window for all the query tool related model dialogs. Fixes #6161
2021-04-09 12:41:13 +05:30
Akshay Joshi 1f4affcb1e Fixed an issue where a connection warning should be displayed when the user
clicks on explain or explain analyze and the database server is disconnected
from the browser tree. Fixes #6376
2021-04-08 18:49:31 +05:30
Yogesh Mahajan 14dcb70b95 Ensure that the user should not be to change the connection when a long query is running. Fixes #6082 2021-04-08 18:09:13 +05:30
Pradip Parkale 566f03beca Ensure that the query tool tab should be closed after server disconnection when auto-commit/auto-rollback is set to false. Fixes #5519 2021-04-01 11:58:59 +05:30
Nikhil Mohite 9395ce3fda Fixed an issue where copy/paste rows in view data paste the wrong value for boolean type. Fixes #6312 2021-03-16 11:29:47 +05:30
Nikhil Mohite 68132e2a8f Fixed an issue where adding/updating records fails if the table name contains percent sign.
refs #4438
2021-03-12 11:59:45 +05:30
Rahul Shirsat 9d8360641f Use schema qualification while accessing the catalog objects.
refs #3976
2021-03-12 11:17:25 +05:30
Rahul Shirsat a2be30d257 Use schema qualification while accessing the catalog objects. Fixes #3976 2021-03-09 13:18:45 +05:30
Nikhil Mohite 8cf7c41ad9 Fixed an issue where adding/updating records fails if the table name contains percent sign. Fixes #4438. 2021-03-09 12:40:59 +05:30
Rahul Shirsat 87b9549ff4 Fixed encoding issue when database encoding set to SQL_ASCII and name of the column is in ASCII character. Fixes #6018 2021-02-26 13:23:07 +05:30
Nikhil Mohite d9847ed1f3 Fixed an issue where the user is not able to use the query tool when
any other long-running operation is in progress.

refs #5793
2021-02-19 15:57:55 +05:30
Aditya Toshniwal 32197a8405 Fix explain plan and geometry viewer issue. It's a regression of SonarQube fixes. Fixes #6239 2021-02-19 14:29:43 +05:30
Akshay Joshi 3fc0cc3e92 Fixed SonarQube issues 2021-02-15 17:31:20 +05:30
Nikhil Mohite 1b850ff616 Fixed an issue where strikeout is getting removed on scrolling of index column of the table.
refs #6157
2021-02-10 17:40:54 +05:30
Aditya Toshniwal 1317e4254b Updated the JS dependencies to the latest
1) Migrate from webpack 4 to webpack 5. This had a lot of breaking changes,
   so updated multiple webpack plugins and changed the config accordingly.
2) Replaced iconfont-webpack-plugin with a more maintained webfonts-loader.
3) Replaced deprecated babel-eslint with @babel/eslint-parser.
4) Replaced optimize-css-assets-webpack-plugin with a more maintained css-minimizer-webpack-plugin.
5) Updated all other JS packages and made the required code changes.

Fixes #6207
2021-02-10 12:47:52 +05:30
Nikhil Mohite 9e85fb3de3 Fixed an issue where strike-through is not visible for rows selected for deletion after scrolling. Fixes #6157 2021-02-05 13:57:35 +05:30
Khushboo Vashi 9bee91b6f6 1) Fixed an issue where the Save button is enabled by default in Macro. Fixes #5905
2) Remove extra line after Manage Macros menu while clearing all macros. Fixes #5906
3) Ensure that 'Clear All Rows' should not work if there is no existing macro available and the user does not specify any value. Fixes #5907
4) Fixed an issue where the server is disconnected error message displayed if the user creates Macro with invalid SQL. Fixes #5929
2021-01-20 13:52:00 +05:30
Rahul Shirsat b3ca172f3a Fixed an issue of deleting records when the user tries to delete multiple records. Fixes #6098 2021-01-20 12:39:12 +05:30
Nikhil Mohite d4a3e4d92c Fixed issues reported by SonarQube. 2021-01-18 13:02:19 +05:30
Aditya Toshniwal 0c8226ff39 Added ERD Diagram support with basic table fields, primary key, foreign key, and DDL SQL generation. Fixes #1802 2021-01-16 17:06:50 +05:30
Akshay Joshi b372f08a59 Update copyright notices for 2021 2021-01-04 15:34:45 +05:30
Akshay Joshi 98b7603ebd Close query tool connection for API test cases. 2020-12-25 18:32:01 +05:30
Nikhil Mohite a7b8d77ed7 Fixed an issue where the state of the Save File icon does not match the dirty editor indicator. Fixes #6046 2020-12-17 11:37:03 +05:30
Nikhil Mohite 52780079f3 Fixed an issue where the dirty indicator stays active even if all changes were undone. Fixes #6047 2020-12-14 12:02:02 +05:30
Rahul Shirsat 6475a70514 Ensure that the macro query result should be download properly. Fixes #5965 2020-12-14 11:58:53 +05:30
Nikhil Mohite abd0748a77 Ensure that dirty indicator (*) should not be visible when renaming the tabs. Fixes #5991 2020-12-01 11:28:10 +05:30
Nikhil Mohite 5370bb4515 Added the appropriate server icon based on the server type in the new connection dialog. Fixes #5983 2020-11-12 17:52:54 +05:30
Akshay Joshi 1dca4313f7 Fixed an issue where Query Tool/View Data panel closed event is not registered for changes.
It's a regression of #4231.

refs #4231
2020-11-08 19:14:08 +05:30
Nikhil Mohite 2793747d3c 1) Added support for dynamic tab size. Fixes #4231
2) Fixed an issue where a long file name is not visible on the process watcher dialog. Fixes #5950
2020-11-04 17:45:28 +05:30
Nikhil Mohite 6c723a7e43 Fixed an issue where connection to the server is on wait state if a different user is provided. Fixes #5953 2020-10-28 12:32:22 +05:30
Libor M 7648bd9646 Added missing gettext. 2020-10-27 10:51:35 +05:30
Nikhil Mohite 275d13d40f Following issues have been resolved for the new connection feature:
1. Show servers with server groups in the dropdown.
  2. Highlighted current selected connection in the new connection dropdown.
  3. Notify the user before changing the connection.

refs #3794
2020-10-21 17:14:59 +05:30
Nikhil Mohite 18cad32bd4 Added tab title placeholder for Query Tool, View/Edit Data, and Debugger. Fixes #4232 2020-10-20 15:41:54 +05:30
Khushboo Vashi 6addd207af Ensure that macros should be run on the older version of Safari and Chrome. Fixes #5911 2020-10-15 15:59:53 +05:30
Khushboo Vashi 49b139bb75 Added escape and unescape for the strings used in query tool and new connection support. Fixes #5899. 2020-10-12 16:20:33 +05:30
Nikhil Mohite 1c796720be Fixed the following issues for RM 3794:
1. Updated connection success message. (Added database name in the success message.)
2. Resolve issue of the mouse pointer and dropdown will show below the connection string only.
3. Added loader for both new connections and load existing connections.
4. Removed async: false for update connection.

refs #3794
2020-10-08 11:38:05 +05:30
Khushboo Vashi c28509ac28 Fixed an issue where the user is unable to change the macro name. Fixes #5885 2020-10-05 14:40:21 +05:30
Nikhil Mohite be7bb81a19 Allow user to change the database connection from an open query tool tab. Fixes #3794 2020-10-01 13:29:46 +05:30
Khushboo Vashi 228d4bb321 Fixed SQLAlchemy operation error with the boolean value as true/false for Python version < 3.7 2020-10-01 13:29:46 +05:30
Akshay Joshi 1c70a43b91 Fixed code smells 'Define a constant instead of duplicating this literal' reported by SonarQube. 2020-09-29 15:08:14 +05:30
Aditya Toshniwal 1fc06b8d57 Added useful message when the explain plan is not used and empty. Fixes #4806 2020-09-28 17:51:59 +05:30
Khushboo Vashi 4616a74029 Added Macro support. Fixes #1402 2020-09-28 15:26:45 +05:30
Aditya Toshniwal ed3c692b1f Fixed an issue where the query tool is not fetching more than 1000 rows for the table does not have any primary key. Fixes #5845 2020-09-21 15:36:19 +05:30
Pradip Parkale 8e132eab08 Fixed some accessibility issues. Fixes #5732 2020-09-15 13:03:18 +05:30
Rahul Shirsat 8029d9e65e 1) Fixed internal server error when clicking on the open new query tool button
from the View/Edit Data window. Fixes #5831
2) Fixed schema diff panel title issue on new tab.
2020-09-14 17:42:59 +05:30
Akshay Joshi a7d40e238e Ensure that the 'CREATE SCHEMA' statement should be present in the generated script if the schema is not present in the target database. Fixes #5816 2020-09-11 19:06:56 +05:30
Rahul Shirsat 7fac72cac5 Fixed an issue where alert message should get displayed on active browser window.
refs #4059
2020-09-10 12:09:56 +05:30
Rahul Shirsat 62e6848dc8 1) Added tooltip & keyboard shortcut for the query tool button.
2) Fixed TypeError issue.

refs #4059
2020-09-09 19:32:33 +05:30
Aditya Toshniwal 535739c0c7 Fixed cognitive complexity issues reported by SonarQube. 2020-09-09 11:25:43 +05:30
Aditya Toshniwal f8f00b4ecf Fixed an issue in the query tool when columns are having the same name as javascript object internal functions. Fixes #5765. 2020-09-07 18:10:27 +05:30
Khushboo Vashi 31bbdd6a12 Fixed code smell 'String literals should not be duplicated'. 2020-09-03 18:35:58 +05:30
Aditya Toshniwal 974d395a48 Fixed cognitive complexity issues reported by SonarQube. 2020-09-03 18:10:57 +05:30
Cyril Jouve 5a253f9053 Change the following to replace Python 2 code with Python 3:
1) Replace the deprecated unit test method.
2) Wraps filter usage in a list call.
3) Converts the old metaclass syntax to new.
4) Use range instead of xrange method.
5) Change Unicode to str.
6) Several other transformations.
7) Fixed change password test cases.
8) Use simplejson instead of plain JSON.
2020-08-31 16:45:31 +05:30
Yogesh Mahajan 3984544bdb Fixed code smell 'String literals should not be duplicated'. 2020-08-28 18:17:27 +05:30
Rahul Shirsat e8b192be3e Added a new button to the query tool toolbar to open a new query tool window. Fixes #4059 2020-08-28 13:53:08 +05:30
Chethana Kumar 8222bf6420 Modified the 'Commit' and 'Rollback' query tool button icons. Fixes #5662 2020-08-27 12:58:13 +05:30
Nikhil Mohite 19491d79a5 Fixed cognitive complexity issues reported by SonarQube. 2020-08-21 13:52:05 +05:30
Akshay Joshi fbbbc36221 Fixed code smell 'Define a constant instead of duplicating this literal' reported by SonarQube. 2020-08-20 20:26:51 +05:30
Akshay Joshi 103b08c9c5 Define constants for preferences label to fix SonarQube issues. 2020-08-20 17:58:37 +05:30
Dave Page 99a7ada58a Cleanup a bunch of duplicated gettext calls. 2020-08-20 10:00:12 +01:00
Dave Page 79e6480513 Added SQL Formatter support in Query Tool. Fixes #2042 2020-08-20 13:05:00 +05:30
Nikhil Mohite 93adf6884f Upgrade font awesome from v4 to v5. Fixes #5731 2020-08-13 12:04:00 +05:30
Cyril Jouve 36574b25b6 The 'str' object never has attribute decode in Python3, so remove the dead code. 2020-08-12 18:55:35 +05:30
Aditya Toshniwal 26a758a0d6 Fixed an issue where copying and pasting a cell with multiple line data
will result in multiple rows. Fixes #5526

Fixed an old issue where quotes are not escaped when copying the cells.
As per CSV standards, if the string is in double quotes and there are
double quotes inside the string then they should be escaped with extra double-quotes.
2020-08-10 16:53:32 +05:30
Aditya Toshniwal d6400bbcae Replace the generic exception class with a more specific one. 2020-08-07 12:37:00 +05:30
Yogesh Mahajan e3dfe03a2a Fixed an issue where the user is not able to insert the data if the table and columns name contains special characters. Fixes #4387 2020-08-06 12:30:10 +05:30
Aditya Toshniwal aa679e06b2 Replace the generic exception class with a more specific one to fix SonarQube issues. 2020-08-05 12:41:28 +05:30
Yogesh Mahajan 43e127de31 Ensure that the original file format should be retained when saving the same file in SQL editor. Fixes #3767 2020-08-03 13:18:04 +05:30
Aditya Toshniwal 536593bf8a Fixed following SonarQube issues:
- Remove this assignment to the local variable, the value is never used.
  - Rename local variables to match the regular expression
  - Add logic to this except clause or eliminate it and rethrow the exception automatically.
  - Rename fields to match the regular expression
  - Extract this nested conditional expression into an independent statement.
  - Change this default value to "None" and initialize this parameter inside the function/method.
  - Update this function so that its implementation is not identical to __repr__
  - Refactor this method to not always return the same value
  - Reraise this exception to stop the application as the user expects
  - Add missing parameters _w _PY3. This method overrides simplejson.decoder.JSONDecoder.decode.
  - Remove this redundant continue.
  - Remove this unused function declaration
  - Remove this identity check; it will always be False.
2020-08-03 12:59:51 +05:30
Nikhil Mohite eb2c554601 Fixed cognitive complexity issues reported by SonarQube. 2020-08-03 12:46:34 +05:30
Aditya Toshniwal 56cf64ad22 Fixed following SonarQube issues:
- Refactor functions to not always return the same value.
  - Rename "cls" to "self" or add the missing "self" parameter.
  - Remove useless assignment to variables.
2020-07-30 14:04:22 +05:30
Yogesh Mahajan 043025d1eb Fixed an issue where the user is not able to save the new row if the table is empty. Fixes #4810 2020-07-24 14:30:22 +05:30
Nikhil Mohite 5f619ae40a Ensure that data output color is readable on row selection. Fixes #5687 2020-07-21 18:54:06 +05:30
Nikhil Mohite 7edcca9b07 Added High Contrast theme support. Fixes #5653
Fixed text color issue in explain analyze for the Dark theme. Fixes #5677
2020-07-20 11:51:21 +05:30
Aditya Toshniwal 161c9b0fc7 Fixed code smell 'Variables should not be shadowed'.
Fixed all the duplicate CSS blocks issues raised by SonarQube.
2020-07-14 15:45:01 +05:30
Aditya Toshniwal 357a9179b1 Fixed convention related issues reported by SonarQube. 2020-07-09 18:55:33 +05:30
Yogesh Mahajan 2cefa9afca Fixed code smell 'Variables should not be shadowed'. 2020-07-09 18:44:58 +05:30
Yogesh Mahajan 707ff450b5 Fixed following SonarQube issues:
1. Boolean checks should not be inverted.
2. The comma operator should not be used.
3. Arguments to built-in functions should match documented types.
4. Redundant pairs of parentheses should be removed.
5. A conditionally executed single line should be denoted by indentation, 
6. A while loop should be used instead of a 'for' loop.
2020-06-26 13:12:07 +05:30
Aditya Toshniwal d3b3d07f2e Fixed SonarQube issues with the tag unused. All the unused variables, assignments, code comments are fixed. 2020-06-25 11:09:43 +05:30
Aditya Toshniwal f0490a54b7 Fixed redundant tagged issue reported by SonarQube. 2020-06-18 11:14:56 +05:30
Aditya Toshniwal 641f7bbe9d Some clumsy coding related fixes reported by SonarQube. 2020-06-15 16:50:07 +05:30
Aditya Toshniwal eb971a0320 Update Codemirror version to the latest which allows us to set screen reader labels on Codemirror editor.
refs #5197
2020-06-08 12:26:12 +05:30
Satish V 726ecd79e6 Fixed import statements.
refs #3669
2020-06-03 12:49:05 +05:30
Satish V d22e276586 Ensure that proper error should be displayed for the deleted node. Fixes #3669 2020-06-03 11:26:26 +05:30
Yogesh Mahajan e10f1274dc Ensure that the query tool panel gets closed when clicking on the 'Don't Save' button. Fixes #5416 2020-05-28 16:39:26 +05:30
Akshay Joshi b1cbcc7ef6 Fixed data truncation issue when updating the data of type character with length. Fixes #5481 2020-05-25 17:05:47 +05:30
Khushboo Vashi d68e6bd892 Remove Python2 modules.
refs #5443
2020-05-08 12:28:21 +05:30
Akshay Joshi ad80217593 Remove Python2 references from the source code.
refs #5443

Initial patch: Neel Patel
2020-04-30 17:22:48 +05:30
Dave Page 86afec860f Remove Python 2 support from the Python tests.
refs #5443
2020-04-30 12:56:45 +05:30
Nagesh Dhope 17129b259b Reverting patch for RM #3269.
We observed that sometimes the browser is getting hanged and sometimes
the ViewData grid is getting disappear. We suspect its due to the number
of rows to update on the slick grid after fetching next of rows.
2020-04-24 11:13:13 +05:30
navnath gadakh c76732e3e7 Ensure that default sort order should be using the primary key in View/Edit data. Fixes #5157 2020-04-22 18:47:13 +05:30
Nagesh Dhope 5e91ed2bb1 Fixed slider jump issue by making an API call to fetch the next batch of rows only after a user stops scrolling down. Fixes #3269 2020-04-22 18:47:13 +05:30
Nagesh Dhope b29bc6868c Fixed an issue where [null] and [default] values are not get copied. Part of #3947 2020-04-22 12:08:52 +05:30
Nagesh Dhope 8d4f3c07c7 Fixed an issue where slider jumps up when new rows get loaded while scrolling down in the DataView panel in the query tool. Fixes #3269 2020-04-21 13:29:49 +05:30
Amol Vyavahare f282b26883 Fixed an issue when the user creates a temporary table with 'on commit drop as' clause. Fixes #4946 2020-04-20 18:22:34 +05:30
Nagesh Dhope 8bdfa18efb Ensure that if the delimiter is set other than comma then download the file as '.txt' file. Fixes #4573 2020-04-17 17:37:02 +05:30
Yogesh Jain 52d031f2d0 Fixed encoding issue while saving data in encoded charset other than 'utf-8'. Fixes #4684 2020-04-17 16:30:22 +05:30
Nagesh Dhope 0ce4f49e08 Fixed copy-paste row issues in View/Edit Data. Fixes #3947
1) Copy table rows across two or more active query tool sessions.
  2) Copied rows can be pasted multiple times without selecting a row in the query tool grid.
  3) Adds an empty row at the end in the query tool grid after pasting rows.
2020-04-16 15:25:39 +05:30
navnath gadakh c0a2f1f24d Ensure that text larger than underlying field size should not be truncated automatically. Fixes #5210 2020-04-16 14:39:31 +05:30
Murtuza Zabuawala c41da41efe Fixed python exception error when user tries to download the CSV and there is a connection issue. Fixes #4858 2020-04-15 16:46:03 +05:30
Khushboo Vashi ed0a596286 Added alert message to Reset Layout if any of the panels from Query Tool failed to load. Fixes #5366 2020-04-15 16:23:54 +05:30
Libor M 6a9af07f7a Fixed gettext usage:
- fixed gettext usage with .format() only for original text with %s
  - fixed typos
  - fixed translation yes/no buttons in the dialog.
  - improved translating sentences without "connecting" words (eg. see web/pgadmin/dashboard/static/js/dashboard.js,
     word 'cancel' needs to be translated in the Czech language as 'zrušit' but in another sentence as 'zrušení')
  - added gettext for text translations.
2020-04-10 14:52:41 +05:30
Ashesh Vashi d9f6baac72 Various misc fixes:
- Using the 'gettext' as oppose to '_', which is not defined
- Define missing variables
- Fixed escape character in string with double quote
- Removed some dead code in a test case
- Removed unnecessary self assignment

Includes some fixes for Accessibility improvements
- Use semantic markup to mark emphasized or special text
- Added hidden legend in <fieldset> for better screen reader support
2020-04-08 14:14:25 +05:30
Aditya Toshniwal 134c1802e7 Enable the save button by default when a query tool is opened with CREATE or other scripts. Fixes #4856 2020-04-07 13:54:16 +05:30
Aditya Toshniwal e1f990190e Added search object functionality. Fixes #2172 2020-04-06 17:33:07 +05:30
Libor M 94864104e4 Added and fixed gettext usage for better translation coverage. Fixes #5284
1) Fixed usage gettext('') instead of _('') in javascript files.
  2) Fixed usage gettext('') instead of `${gettext('')}` in javascript files,
     because "pybabel extract" not support extracting from this syntax.
2020-03-24 11:14:05 +05:30
Aditya Toshniwal 9bad590e9e Improvements in the UI for both default and dark themes. Fixes #5133
Improve the style of the highlighted code after query execution for Dark mode. Fixes #4996.
Changed background pattern for geometry viewer to use #fff for all themes. Fixes #5077
Changed the color of selected and hovered item for Select2 dropdown, also tweak the appearance of the tags in multi-select boxes. Fixes #4955
Fixed Firefox monospaced issue by updating the font to the latest version. Fixes #5184
2020-02-24 14:11:00 +05:30
Akshay Joshi 02f9de5bdb Improve wordings. 2020-01-28 18:36:42 +05:30
Nagesh Dhope f167d77b61 Allow screen-reader to read label & description of non-textable elements. Fixes #4762.
Allow screen-reader to identify the alert errors. Fixes #4763

  Added role alertdialog for confirm and alert dialog.
  Added role status for all status bars/banners.
  Added role alert for error bars.
  Added aria-labelledby for charts on each dashboard.
  Added tabindex for each chart so that it is navigable using tab key.
2020-01-28 11:32:11 +05:30
Nick Barnes f5d46bf9f1 Fixed an issue while editing char[] or character varying[] column from View/Edit data throwing an error.Fixes #4410. 2020-01-23 14:55:02 +05:30
Aditya Toshniwal 8c3bba65e5 Logout the pgAdmin session when no user activity of mouse move, click or keypress. Fixes #5000.
Introduced two config params:
1. USER_INACTIVITY_TIMEOUT - Interval in seconds for the timeout. Default is 0-Zero which means disabled.
2. OVERRIDE_USER_INACTIVITY_TIMEOUT - If set to true, tools like query tool or debugger will override USER_INACTIVITY_TIMEOUT
   and will not allow the application to timeout if a query is running for a long time.
2020-01-15 18:07:46 +05:30
Khushboo Vashi d59816054f Schema Diff Improvements:
1. Grid header should be center aligned vertically.
2. Increase the space between object counts.
3. The previous selected objects should not be re-selected on comparison.
2020-01-13 18:19:07 +05:30
Khushboo Vashi 45f2e35a99 Added Schema Diff tool to compare two schemas and generate the difference script.
Currently supported objects are Table, View, Materialized View, Function and Procedure.

Backend comparison of two schemas implemented by: Akshay Joshi

Fixes #3452.
2020-01-10 15:42:09 +05:30
Dave Page 01c7636c75 Update copyright notices for 2020. 2020-01-02 14:43:50 +00:00
Ganesh Jaybhay fc5287bd9f Added tab navigation for tabs under explain panel in query tool. Fixes #5047. 2020-01-01 10:51:45 +05:30
Aditya Toshniwal f1a18749f6 1) Allow screen-reader to read relationship attributes for tab, tabpanels and tables under it. Similar changes are done for subnode controls.
2) Add role="img" for font icons.

Fixes #4764
2019-12-17 13:22:36 +05:30
Aditya Toshniwal 4ed2d74d9c 1) Fix network disconnect issue while establishing the connection via SSH Tunnel and it impossible to expand the Servers node. Fixes #4724.
2) Fix server connection drops out issue in query tool. Fixes #4818
3) Fix VPN network disconnect issue where pgAdmin4 hangs on expanding the Servers node. Fixes #4926.
4) Ensure that the Servers collection node should expand independently of server connections. Fixes #4933.

Set the default connection timeout to 10 seconds instead of 0.
2019-11-26 09:04:41 +05:30
Shubham Agarwal 425cc2a966 Fix some more feature tests:
1. Added an attribute 'data-click-counter' in query execute button which gets incremented
   once query button is clicked up to 9 and then reset to 0. This is added just to support automation.
2. Locator for login_group_role is added and used to expand tree.
3. Functions for enabling and disable auto_commit and auto_rollback are made more precise.
4. Some scrolling problem is addressed in view_data_dml_query test.
5. Handled the stale element reference exception in query_tool_journey_test
2019-11-20 12:50:04 +05:30
Aditya Toshniwal c1c682402a 1) Further styling tweaks for Dark Theme.
2) Theme related code changes are removed from config.py and moved to miscellaneous under a new package - "themes".
2019-11-11 18:47:43 +05:30
Nagesh Dhope 2522c8c9e2 Fixed an issue where escape key not working to close the open/save file dialog. Fixes #4896 2019-11-08 18:26:46 +05:30
Aditya Toshniwal 8180403f97 1) Added support for custom theme creation and selection. Fixes #4348.
2) Added Dark(Beta) UI Theme option. Fixes #3741.
3) Fix an issue where a black arrow-kind image is displaying at the background of browser tree images. Fixes #4171

Changes include:
  1) New theme option in preferences - Miscellaneous -> Themes. You can select the theme from the dropdown.
     It also has a preview of the theme just below the dropdown. Note that, a page refresh is needed to apply changes.
     On saving, a dialog appears to ask for refresh.
  2) You can create your own theme and submit to hackers. README is updated to help you create a theme. Theme will be available only after the bundle.
  3) Correction of SASS variables at few places and few other CSS corrections.
  4) Added iconfont-webpack-plugin, which will convert all the SVG files(monochrome) used as icons for buttons to font icons.
     This will allow us to change the color of the icon by using CSS color property.
  5) All the .css files will bundle into a separate file now- pgadmin.style.css. This will help reduce the size of
     theme CSS files as CSS in .css files will not change with the change of SASS variables.
2019-11-07 18:51:03 +05:30
Aditya Toshniwal 30c7effa50 Fix the toggle case shortcut key combination. Fixes #3999 2019-11-01 12:10:14 +00:00
Aditya Toshniwal 6d7ff9444a Don't quote bigints when copying them from the Query Tool results grid. Fixes #4459 2019-10-25 11:53:39 +01:00
Aditya Toshniwal f16498a8a7 Optimize Webpack to improve overall performance.
Changes include:
1) Remove underscore-string and sprintf-js packages as we were using only %s. Instead, added a function to do the same. Also changed gettext to behave like sprintf directly.
2) backgrid.sizeable.columns was not used anywhere, removed. @babel/polyfill is deprecated, replaced it with core-js.
3) Moved few css to make sure they get minified and bundled.
4) Added Flask-Compress to send static files as compressed gzip. This will reduce network traffic and improve initial load time for pgAdmin.
5) Split few JS files to make code reusable.
6) Lazy load few modules like leaflet, wkx is required only if geometry viewer is opened. snapsvg loaded only when explain plan is executed. This will improve sqleditor initial opening time.

Reviewed By: Khushboo Vashi
Fixes #4701
2019-10-10 12:05:28 +05:30
Khushboo Vashi 56e00d74ad There is no option to Copy data with headers from Query Tool/View Data.
Added drop-down 'Copy with headers' near to the copy button in Query Tool/View Data.

Fixes #3009
2019-09-27 12:14:39 +05:30
Akshay Joshi 051e5038b5 Fix issue where query history is not visible in the query history tab. Fixes #4777 2019-09-25 13:18:33 +05:30
Aditya Toshniwal 73dc130908 Fix issue where pgAdmin does not load completely if loaded in an iframe. Fixes #4756 2019-09-23 12:55:02 +05:30
Akshay Joshi b10378fe70 Fix query history issue for Python 2.7, it is a regression of #4750. 2019-09-17 11:01:13 +05:30
Murtuza Zabuawala 80b05973c6 Fix query history exception for Python 3.6. Fixes #4750. 2019-09-16 19:09:22 +05:30
Aditya Toshniwal 83170a0e94 Fix display of validation error message in SlickGrid cells. Fixes #4408 2019-09-12 20:27:44 -04:00
Aditya Toshniwal 1c2ba72f02 Add editor options for plain text mode and to disable block folding to
workaround rendering speed issues in CodeMirror with very large scripts.
Fixes #4631.

Re-arrange editor options in the Preferences dialogue to tidy things up.
2019-09-04 15:46:08 +01:00
Aditya Toshniwal 47f26cc377 Fix exception in query history for python 2.7. Fixes #4663 2019-08-30 09:07:03 +05:30
Aditya Toshniwal 028473eb83 Fix an issue where oid column should not be pasted when copy/paste row is used on query output containing the oid column. Fixes #4381 2019-08-28 13:35:40 +05:30
Aditya Toshniwal dbbbb2e5ed Fix query tool launch error if user name contain html characters. Fixes #4674 2019-08-28 10:46:28 +05:30
Yosry Muhammad f8f7d5ac6f Ensure editable and read-only columns in Query Tool should be identified by icons and tooltips in the column header. Fixes #4667 2019-08-26 14:17:40 +05:30
Yosry Muhammad 5887fb3815 Some refactoring of sqleditor.js. 2019-08-23 16:15:43 +01:00
Aditya Toshniwal 234efc3be7 Don't wait for the database connection before rendering the Query Tool UI, for improved UX. Fixes #4453
In addition, unescape HTML entities in database names in the Query Tool title bar. Fixes #4584
2019-08-23 12:14:20 +01:00
Khushboo Vashi ed76787b76 Fix the Transaction Status failed test cases. 2019-08-20 10:22:11 +05:30
Akshay Joshi 624f229ce7 Comment out the failed Transaction Status API test cases for successful Jenkins build 2019-08-20 09:33:42 +05:30
Murtuza Zabuawala 3155380621 Fix issue where Deleting N number of rows makes first N number of rows disable. Fixes #3605 2019-08-19 12:12:28 +05:30
Yosry Muhammad 663e8382f3 1) Added new python test that checks the transaction status after executing queries and saving data when auto-commit is on/off.
2) Some refactoring of previously written python tests.
2019-08-19 11:45:36 +05:30
Yosry Muhammad 687204771c Add support in query history to show internal queries generated by pgAdmin during save data operations. Fixes #4612 2019-08-16 17:17:12 +05:30
Aditya Toshniwal a51de78292 Fix issue in drag drop feature. It's regression of RM #4552 2019-08-12 13:11:56 +05:30
Yosry Muhammad b618dfe286 Fix double click issue to expand the contents of a cell if the resultset was not editable. Fixes #4585 2019-08-09 11:45:05 +05:30
Aditya Toshniwal 99a8b70e00 Fix some errors thrown on the JS console when dragging text in the Query Tool. Fixes #4552 2019-08-02 11:28:57 +01:00
Yosry Muhammad 0cfd76c279 Fix load on demand in View/Edit data mode. Fixes #4536 2019-08-02 10:39:19 +01:00
Yosry Muhammad 97e39699ea Ensure the Query Tool doesn't throw an error when viewing the contents of a table with no columns. Fixes #4492 2019-08-01 14:39:02 +01:00
Yosry Muhammad 76e658ee12 Ensure command tags are shown in the messages tab of the Query Tool. Fixes #4520 2019-08-01 14:29:38 +01:00
Yosry Muhammad 7b65507533 Ensure the query tool will work with older versions of psycopg2 than we officially support, albeit without updateable resultsets. Fixes #4520 2019-08-01 13:59:53 +01:00
Aditya Toshniwal bcb1392a1a Ensure type names are properly encoded in the results grid. Fixes #4401 2019-08-01 13:17:00 +01:00
Yosry Muhammad 82d209946f Added support for editing of result sets from tables with OIDs in query tool. 2019-07-29 12:26:53 +05:30
Khushboo Vashi c019778a47 1) Fix an error while retrieving json data from the table. Fixes #4427
2) Fix an issue where Explain and Explain Analyze are not working, it's regression of #1760. Fixes #4484
3) Fix an issue where Filter toolbar button is not working in view/edit data, it's regression of keyboard navigation. Fixes #4485
2019-07-22 18:42:48 +05:30
Yosry Muhammad f5b927b925 Randomise table names for tests. 2019-07-17 16:50:59 +01:00
Yosry Muhammad 710d520631 Add support for editing of resultsets in the Query Tool, if the data can be identified as updatable. Fixes #1760
When a query is run in the Query Tool, check if the source of the columns
can be identified as being from a single table, and that we have all
columns that make up the primary key. If so, consider the resultset to
be editable and allow the user to edit data and add/remove rows in the
grid. Changes to data are saved using SAVEPOINTs as part of any
transaction that's in progress, and rolled back if there are integrity
violations, without otherwise affecting the ongoing transaction.

Implemented by Yosry Muhammad as a Google Summer of Code project.
2019-07-17 11:45:20 +01:00
Dave Page bd0e4a5a8f Remove some files committed in error. 2019-07-08 12:07:50 +01:00
Akshay Joshi 11a3aa56be Use different folders for pg vs. ppas RE-SQL tests. Fall back to the tests folder without a subdirectory if neither exist. 2019-07-05 14:40:51 +01:00
Aditya Toshniwal 0aa18fd466 Ensure drag/drop from the treeview works as expected on Firefox. Fixes #4429 2019-07-04 14:49:09 +01:00
Aditya Toshniwal 0340b8fb28 Add EXPLAIN options for SETTINGS and SUMMARY. Fixes #4335
Prevent flickering of large tooltips on the Graphical EXPLAIN canvas. Fixes #4224
EXPLAIN options should be Query Tool instance-specific. Fixes #4395
2019-07-03 13:57:56 +01:00
Aditya Toshniwal da8cf14047 Prevent an error that may occur when editing data with an integer primary key. Fixes #4404 2019-06-27 10:43:25 -04:00
Aditya Toshniwal 2451db8797 Ensure the browser close confirmation is only shown when closing a Query Tool which is running in a separate browser tab. Fixes #4403 2019-06-27 10:37:50 -04:00
Aditya Toshniwal 173b812b93 Allow some objects to be dragged/dropped into the Query Tool to insert their signature into the query text. Fixes #4139 2019-06-27 10:30:05 -04:00
Aditya Toshniwal c39d257bf6 Fix an XSS issue when username contains XSS vulnerable text. Fixes #4386 2019-06-24 16:06:03 +05:30
Aditya Toshniwal 78d55c7cc0 Fix regression tests. 2019-06-20 13:26:06 +01:00
Aditya Toshniwal 6e8ebbd375 Allow editing of data where a primary key column includes a % sign in the value. Fixes #4036
Fix an XSS issue seen in View/Edit data mode if a column name includes HTML. Fixes #4367
2019-06-20 12:21:37 +01:00
Dave Page 6d52f2b911 Initial support for PostgreSQL 12. Fixes #4283. Fixes #4288. Fixes #4290. 2019-06-10 14:24:45 +01:00
Aditya Toshniwal f561c0cee6 Fix keyboard navigation in "inner" tabsets such as the Query Tool and Debugger. Fixes #4195 2019-06-10 11:10:49 +01:00
Aditya Toshniwal 2185ea302d Omit the geometry viewer in the Query Tool from layout saving. Fixes #4169 2019-05-30 15:15:37 -04:00
Aditya Toshniwal dfa892d2a2 1. Added Master Password to increase the security of saved passwords. Fixes #4184
2. In server(web) mode, update all the saved server credentials when user password is changed. Fixes #3377
2019-05-28 12:00:18 +05:30
Khushboo Vashi 6f0eafb223 Fixed CSRF security vulnerability issue. per Alvin Lindstam. Fixes #4217
Initial patch by: Khushboo Vashi
Modified by: Ashesh Vashi and Murtuza Zabuawala
2019-05-28 10:59:51 +05:30
Aditya Toshniwal ee37be56f9 Fix handling of JSON in the Query Tool with NULL elements. Fixes #4263 2019-05-23 08:53:29 +01:00
Akshay Joshi b7121bb2d2 1) Make folder name pluralise inside 'templates' folder and fix naming inconsistency.
2) Remove unwanted functions "module_js()" from the code.
3) Change naming convention for 'Roles' module.
2019-05-15 15:11:54 +05:30
Aditya Toshniwal 05ae330030 Improvement for 'beforeunload' event, bind the event only from where it is required. 2019-04-22 11:30:33 +05:30
Khushboo Vashi 0b47d1dbf6 1) Fix an issue where Deleting N number of rows makes first N number of rows disable. Fixes #3605
2) Ensure that on clicking Delete button should not delete rows immediately from the database server,
   it should be deleted when Save button will be clicked. Fixes #2392
2019-04-18 12:09:35 +05:30
Murtuza Zabuawala a25bb2b7db Add tests for the CSV download. 2019-04-11 17:15:01 +01:00
Khushboo Vashi a9d964b5ca 1) Added support for Default Partition. Fixes #3938
2) Ensure that record should be add/edited for root partition table with primary keys. Fixes #4104
2019-04-11 13:25:24 +05:30
Usman Muzaffar 5c4c09f237 Fixed feature test issues 2019-04-05 12:25:03 +05:30
Aditya Toshniwal 7627e9c699 Display errors during CSV download from the Query Tool in the UI rather than putting them in the CSV file. Fixes #4085
Ensure the toolbar buttons are properly reset following a CSV download in the Query Tool. Fixes #4096
2019-03-29 14:31:33 +00:00
Aditya Toshniwal fbc6aea497 Fix an issue where JSON data would not be rendered in the Query Tool. Fixes #4105 2019-03-28 08:12:09 -04:00
Aditya Toshniwal 6fb35f2649 Overhaul the layout saving code so it includes the Query Tool and Debugger, and stores the layout when change events are detected rather than (unreliably) on exit. Fixes #4084 2019-03-26 11:08:45 -04:00
Dave Page 8c5894dd6a Revert "Remove the cp1252 test to see if it un-breaks the Windows buildfarm runs."
This reverts commit ce51204
2019-03-18 09:28:28 +00:00
Dave Page 04c776cbeb Randomise the database name used for encoding tests to avoid collisions when multiple tests are running against the same server. 2019-03-15 12:03:42 +00:00
Dave Page ce5120431b Remove the cp1252 test to see if it un-breaks the Windows buildfarm runs. 2019-03-15 11:01:53 +00:00
Khushboo Vashi e4417229aa Update all Python and JS dependencies. Fixes #4019 2019-03-14 15:11:16 +00:00
Dave Page ab9a3a57ad Make the Query Tool history persistent across sessions. Fixes #4017 2019-03-13 13:37:34 +00:00
Dave Page 2356988bdf Ensure that Firefox prompts for a filename/location when downloading query results as a CSV file. Fixes #4071 2019-03-12 12:45:25 +00:00
Aditya Toshniwal 6aae9d6e20 Handle resultsets with zero columns correctly in the Query Tool. Fixes #4054 2019-03-07 15:22:45 +00:00
Aditya Toshniwal 4b895941b3 Remove the large and unnecessary dependency on React and 87 other related libraries. Fixes #4018 2019-03-07 10:51:59 +00:00
Akshay Joshi 0aeb20ee64 Prevent auto-commit/rollback being changed mid-transaction, and make the Preferences the defaults, not the current values. 2019-03-04 10:44:31 +00:00
Khushboo Vashi 849e34c2f7 Add full support and testsfor all PG server side encodings. Fixes #3992. Fixes #3982. Fixes #3911 2019-03-01 13:51:50 +00:00
Murtuza Zabuawala fb747b8031 Fix download CSV for IE11 which doesn't support the download attribute. Fixes #4040 2019-03-01 13:32:40 +00:00
Khushboo Vashi c6d295727c Fix resizing of the results grid, when full of data. 2019-03-01 12:49:41 +00:00
Aditya Toshniwal 74cfeabd02 Fix graphical explain now that JSON data is sent as text to stop JS futzing with it. Fixes #4041 2019-03-01 12:38:57 +00:00
Dave Page acb61f0990 Use POST instead of GET for Query Tool downloads to avoid errors with long queries. Fixes #4013 2019-02-27 17:08:53 +00:00
Khushboo Vashi 6b3a628e7a Fix double scrollbar on the query tool results grid. 2019-02-27 10:59:58 +00:00
Aditya Toshniwal 9c5b9364b6 Support double-click on Query Tool result grid column resize handles to auto-size to the content. Fixes #4034 2019-02-26 13:44:16 +00:00
Aditya Toshniwal 59446bb4b5 Ensure JSON data isn't modified in-flight by psycopg2 when using View/Edit data. Fixes #3600 2019-02-25 10:34:36 +00:00
Dave Page 27d3990ba2 Allow editing of values in columns with the oid datatype which are not an actual row OID. Fixes #3418 2019-02-22 16:18:39 +00:00
Akshay Joshi 38b034ec3c Add Commit and Rollback buttons to the Query Tool. Fixes #2418 2019-02-22 14:28:05 +00:00
Dave Page 0766b17726 Enable/disable the Download button with the Execute button. 2019-02-22 09:34:48 +00:00
Khushboo Vashi 98283c1213 Disable the editor and execute functions whilst queries are executing. Fixes #4021 2019-02-21 14:19:25 +00:00
Akshay Joshi 5be0d17df5 Don't exclude SELECT statements from transaction management in the Query Tool in case they call data-modifying functions. Fixes #3958 2019-02-21 14:05:10 +00:00
Khushboo Vashi 34045efb38 Modify the Download as CSV option to use the same connection as the Query Tool its running in so temporary tables etc. can be used. Fixes #3673 2019-02-20 11:49:45 +00:00
Dave Page 255afe673a Add a "scratch pad" to the Query Tool to hold text snippets whilst editing. Fixes #2233 2019-02-15 15:44:49 +00:00
Akshay Joshi 944cc55df7 Prevent an error when closing the Sort/Filter dialogue with an empty filter string. Fixes #3970 2019-02-13 16:44:57 +00:00
Akshay Joshi fedbcd4045 Ensure that output of the query should be displayed even if Data Output window is detached from the Query Tool. Fixes #3697 2019-01-29 18:48:21 +05:30
Aditya Toshniwal 821496dc84 Fixed Query Tool Initialization Error. Fixes #3903 2019-01-29 11:45:31 +05:30
Akshay Joshi f316e0533e 1) Messages tab of query tool should be clear on subsequent execution of table/view using View/Edit Data. Fixes #3608
2) Clear drop-down menu should be disabled for View/Edit Data. Fixes #3609
2019-01-23 18:25:33 +05:30
Akshay Joshi 3e7381414f Drop-down should be closed when click on any other toolbar button. Fixes #3858 2019-01-22 16:05:02 +05:30
Aditya Toshniwal 7ac4e2a9d9 Fixed following issues:
- Process watcher made fixed width with header changes, time details rounded to 2 decimals
 - Query history will show "No query history" if no query fired. Query editor default size increased.
 - Fixed a bug where New folder create button not working when in List mode and No files/folder present.
 - Other minor improvements.
2019-01-16 11:55:08 +05:30
Aditya Toshniwal d4a2f1b8cd Ensure that last row of table data should be visible and user will be able to add new row. Fixes #3866 2019-01-11 23:25:05 +05:30
Dave Page 598f69b63d Improve wording. 2019-01-03 15:24:47 +00:00
Aditya Toshniwal 7d765fea04 Further styling fixes. 2019-01-03 14:50:24 +00:00
Murtuza Zabuawala e23d307c56 Update copyright notices for 2019 2019-01-02 15:54:12 +05:30
Aditya Toshniwal 86ecf9c84e Fixed following:
- Base font size changed from 0.815rem to 0.875rem, for navbar from 0.875rem to 0.925rem.
- Dialog sizes made consistent throughout the application. Now there are 3 size options for width and height each - sm, md, lg. Combination of any of these to be used hereafter
- Alignment fix for controls of Node properties dialogs which includes showing text and label in one line without dialog size change, checkbox alignment, switch control alignment at places and other minor improvements in other dialogs
- Error message design change in dialogs validation
- SQL Editor data grid editor popup design changes which were missed
- Design change for dashboard server activity grid
- Login page language dropdown color fix
- Properties accordion collapse design fix
- Help, Info icon fixed across all dialogs which were not working if clicked exactly on the text
- Added missing icon with buttons at few places
- Shadow behind the dialogs is increased to make it look clearly separated and depth.
- Control Alignment fix in maintenance dialog
- Min height of alertify dialogs set for better UX
- File dialog design fix when no files found
- Grant wizard fixes - Scroll bar visibility on first page, use full space for SQL generated on the last page
- Browser toolbar buttons changed to sync with SQL editor toolbar buttons
- Rounded corners for docker floating dialog (no properties)
- Renaming file in file dialog should show original file name
- SQL data grid text edit popup buttons behaviour was swapped. This is fixed.
- Import/Export dialog changes as per new design.
2019-01-02 15:07:59 +05:30
Akshay Joshi 41c028f944 Ensure that null values handled properly in CSV download. Fixes #3780 2019-01-01 15:15:36 +05:30
Ashesh Vashi 5799ac14ba Improvement in the look and feel of the whole application
Changed the SCSS/CSS for the below third party libraries to adopt the
new look 'n' feel:
- wcDocker
- Alertify dialogs, and notifications
- AciTree
- Bootstrap Navbar
- Bootstrap Tabs
- Bootstrap Drop-Down menu
- Backgrid
- Select2

Adopated the new the look 'n' feel for the dialogs, wizard, properties,
tab panels, tabs, fieldset, subnode control, spinner control, HTML
table, and other form controls.

- Font is changed to Roboto
- Using SCSS variables to define the look 'n' feel
- Designer background images for the Login, and Forget password pages in
  'web' mode
- Improved the look 'n' feel for the key selection in the preferences
  dialog
- Table classes consistency changes across the application
- File Open and Save dialog list view changes

Author(s): Aditya Toshniwal & Khushboo Vashi
2018-12-21 17:14:55 +05:30
Akshay Joshi 52fb8e197f Increase the size of the resize handle of the edit grid text pop-out. Fixes #3083
Allow horizontal sizing of the edit grid text pop-out. Fixes #3805
2018-12-13 10:56:45 +00:00
Khushboo Vashi 12ef55334b Fix encoding test for older Python versions. 2018-12-06 10:15:58 +00:00
Khushboo Vashi 7e3bd8b88a Fix an encoding issue in the query tool. Fixes #3711 2018-12-04 17:03:19 +00:00
Akshay Joshi d801ed5008 Add titles to the code areas of the Query Tool and Debugger to ensure that panels can be re-docked within them. Fixes #3619 2018-11-29 15:47:48 +00:00
Aditya Toshniwal 0565f8dd78 Update to use Bootstrap 3 instead of Bootstrap 4. Fixes #3562 2018-10-10 12:43:26 +01:00
Murtuza Zabuawala c66840bc8e Fix some styling regressed in #2927. 2018-10-09 11:22:54 +01:00
Aditya Toshniwal 26ad6d4c5d Rename the 'SQL Editor' section of the Preferences to 'Query Tool' as it applies to the whole tool, not just the editor. Fixes #3660 2018-10-08 11:43:02 +01:00
Akshay Joshi 15fe26a710 Fix handling of backslashes in the edit grid. Fixes #3551 2018-09-25 10:34:33 -04:00
Aditya Toshniwal 1b20831338 Ensure changes to Query Tool settings from the Preferences dialogue are applied before executing queries. Fixes #3657 2018-09-19 16:50:11 +01:00
Akshay Joshi 0ec3224212 Fix logic around validation and highlighting of Sort/Filter in the Query Tool. Fixes #3607 2018-09-14 14:18:43 +01:00
Aditya Toshniwal 82c9cca683 Move all CSS into SCSS files for consistency and ease of colour maintenance etc. Fixes #2927 2018-09-04 11:24:51 +01:00
Xuri Gong 89e283fbc2 Add a geometry viewer that can render PostGIS data on a blank canvas or various map sources. Fixes #1407 2018-08-30 13:59:44 +01:00
Aditya Toshniwal 25679fd542 Ensure sort/filter dialog should display proper message after losing database connection. Fixes #3561 2018-08-22 16:38:31 +05:30
Usman Muzaffar 70c95fcdd5 Stabilise feature tests for continuous running on CI systems. Fixes #3136. 2018-08-21 17:39:36 +05:30
Aditya Toshniwal 57660d131f 1) Fix sort/filter dialog editing issue. Fixes #3558.
2) Fix sort/filter dialog issue where it incorrectly requires ASC/DESC. Fixes #3325.
2018-08-21 13:05:40 +05:30
Akshay Joshi 7b2c1bb9f8 Handle connection errors properly in the query tool. Fixes #3528 2018-08-10 13:51:32 +01:00
Akshay Joshi 52fc0846cd pgAdmin4 should work with python 3.7, Fixes #3458 2018-08-06 15:35:03 +05:30
Aditya Toshniwal c353135a3a Add support for INCLUDE columns on indexes and index constraints with PG 11+. Fixes #3462 2018-07-19 13:13:37 +01:00
Aditya Toshniwal 41a8333145 Replace deprecated success, error callbacks in $.ajax call with new functions .done and .fail. 2018-07-09 13:54:00 +01:00
Aditya Toshniwal bdb7e3fde2 Infrastructure and changes to the Query Tool for realtime preference handling. Refs #3294
Highlights of this patch include:
- Changes will affect SQL Editors in Create dialog boxes, SQL tab of the main screen, Query tool, History entries in the query tool, Query tool opened in New Tab/Window
- All the components of SQL editor will refer to single source of preferences which is cached in the Browser object. All other redundant ajax get preference calls are removed.
- SQL editor will not refer template JS variables anymore, once all the references are removed the template variables will also be removed.
- Code refactoring wherever possible.
- Covered JS test cases wherever possible.
2018-07-05 11:38:43 +01:00
Murtuza Zabuawala d53c47e1cf Cleanup and fix handling of Query Tool Cancel button status. Fixes #3319 2018-07-02 15:43:36 +01:00
Aditya Toshniwal df85392bbf Fix handling of SQL_ASCII data in the query tool. Fixes #3289. Fixes #3250 2018-06-21 08:26:01 -04:00
Akshay Joshi b48145f01f Add an option to auto-complete keywords in upper case. Fixes #2686 2018-06-15 10:18:56 +01:00
Akshay Joshi 419f9069ae Move the notifications tab between messages and history as it seems more natural there. 2018-06-06 09:23:33 +01:00
Aditya Toshniwal 920934759f Handle a potential error case in the connection status monitoring.
When you disconnect the server with an open sqleditor tab, exception
 occurs at the back end. Also, after connecting server, the sqleditor
 is not able to connect back because of the exception.
2018-06-05 11:57:56 +01:00