Commit Graph

512 Commits

Author SHA1 Message Date
Akshay Joshi
92a997b16a Rearrange tools menu on the basis of usability and form groups of similar sub-menus. 2021-12-16 18:29:44 +05:30
Akshay Joshi
f24348b2b0 Fixed an issue where notifier not working when opening query tool in a new
window and then open it in the new tab.
2021-12-08 18:15:13 +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
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
61b440261f Ensure that sort order should be maintained when renaming a server group. Fixes #6955 2021-11-29 12:04:04 +05:30
Nikhil Mohite
3a30f27153 1. Updated notification message for the reset layout.
2. Added notification type in alertify which was missing.

refs #6988
2021-11-24 10:58:15 +05:30
Nikhil Mohite
3afeb8ca46 Port Backup Global, Backup Server, and Backup object dialog in React. Fixes #6984 2021-11-22 11:20:44 +05:30
Nikhil Mohite
cc91e5da94 Fixed an issue where properties of the database should not be visible after removing the database.
Fixes #6964
2021-11-18 12:36:39 +05:30
Nikhil Mohite
1408bad8ba Fixed an issue where reset layout message showing when the user opens the query tool.
refs #6988
2021-11-15 16:34:25 +05:30
Nikhil Mohite
8bf178b0a3 Reset the layout if pgAdmin4 detects the layout is in an inconsistent state. Fixes #6988 2021-11-12 11:50:37 +05:30
Pradip Parkale
a61a9e5b8f Fixed an issue where older server group name displayed in the confirmation
pop-up when the user removes server group. Fixes #6939
2021-11-10 11:17:51 +05:30
Nikhil Mohite
f71e2e8040 Fixed an issue where pgAdmin is not opening properly. Fixes #6809 2021-10-29 16:17:36 +05:30
Akshay Joshi
7b85253465 Corrected some menu lables. 2021-10-27 11:05:23 +05:30
Pradip Parkale
35b1e1d0d2 Fixed pgAdmin freezing issue by providing the error message for the operation
that can't perform due to lock on the particular table. Fixes #5427
2021-10-27 10:51:52 +05:30
Rahul Shirsat
711ea3bfa1 Fixed an issue where properties panel is not updated when any object is added from the browser tree. Fixes #6859 2021-10-27 10:31:49 +05:30
Aditya Toshniwal
9de1489322 Ensure that only the table node should be allowed to drop on the ERD tool. Fixes #6929 2021-10-19 12:01:43 +05:30
Khushboo Vashi
9e3165c0ff 1) Ensure that the master password should be prompt when MASTER_PASSWORD_REQUIRED
is set to True and AUTHENTICATION_SOURCES is the webserver. Fixes #6928
2) Fixed an issue where the existing server group is disappeared on rename it. Fixes #6930
2021-10-19 11:56:44 +05:30
Aditya Toshniwal
7f3c3fa6f9 Added support to allow tables to be dragged to ERD Tool. Fixes #6241 2021-10-16 12:43:39 +05:30
Nikhil Mohite
476d7c5fc9 Fixed background colour issue in the browser tree. Fixes #6890 2021-10-16 12:40:57 +05:30
Aditya Toshniwal
7787def660 The nodes index, RLS policy, rules, triggers are failing to save for partitions.
refs #6868
2021-10-06 16:51:46 +05:30
Aditya Toshniwal
dce5038ffd 1. Unable to create trigger for partition table. Fixes #6867.
2. Unable to create index, RLS policy, rules, triggers for partition. Fixes #6868.
2021-10-06 14:54:01 +05:30
Akshay Joshi
1ed6272e7b Ensure that SQL help should work for EPAS servers. Fixes #6834 2021-10-06 14:54:01 +05:30
Khushboo Vashi
a693014371 1) Table Dialogue does not close on addition/deletion of partition. Fixes #6863
2) Nodes are loaded multiple times in server mode on 'Reset Layout'. Fixes #6861
2021-10-05 17:33:50 +05:30
Khushboo Vashi
44e1a405f0 1) Newly added server/server group is not visible in the tree unless pgAdmin is refreshed. Fixes #6839
2) Internal server error displayed if disconnect the server. Fixes #6852
2021-10-03 12:12:02 +05:30
Khushboo Vashi
5e0c113c7b Properties panel is not updated when any object is added/deleted from the browser tree. Fixes #6833 2021-09-30 18:21:43 +05:30
Khushboo Vashi
aa8854db53 1) Browser panel turns blank on connecting disconnected database & server has multiple databases. Fixes #6817
2) The object is not selected/properties panel is not updated when the user moves to object with arrow keys. Fixes #6821
3) Object gets deselected after editing. Fixes #6824
2021-09-29 17:18:55 +05:30
Akshay Joshi
7d07770244 Reverting 'Two-factor authentication' support as it cause OSX and docker build failures.
This reverts commit 787a441343.
2021-09-29 13:24:18 +05:30
Ashesh Vashi
787a441343 Added support for Two-factor authentication for improving security. Fixes #6543 2021-09-28 17:47:00 +05:30
Aditya Toshniwal
dc8ab7cd2a 1. Switch control and CodeMirror control UI improvements for read-only and disabled states.
2. If a form input value changes to null, pass it as an empty string in URL params.
3. Use server_type instead of type from the server info.
2021-09-28 10:24:25 +05:30
Khushboo Vashi
483e2ca8d0 Port browser tree to React. Fixes #6129 2021-09-27 16:44:26 +05:30
Aditya Toshniwal
0228d16990 Partition related fixes:
1. When attaching a partition, tables were not loading in the dropdown.
2. When adding a sub partition in a partition, collations were not loading in dropdown.
3. Fix some grid column widths in table node.

Fixes #6783
2021-09-24 16:28:55 +05:30
Akshay Joshi
b9bc628189 1. Placeholder should be inside the controlProps. Change the placeholder from 'Select...' to 'Select an item...'
2. Updated grant wizard screenshot and documentation.
3. Remove '(Beta)' from ERD Tool and PSQL Tool.
2021-09-23 16:17:39 +05:30
Nikhil Mohite
15a494c189 Fixed review comments for Grant Wizard.
refs #6687
2021-09-23 14:40:38 +05:30
Aditya Toshniwal
08009f8edc 1) Make default values column read-only for inherited columns when creating table.
2) Default values not populated for inherited columns. The existing issue, API changed.
3) Options are not populated for Name in Column > Variable tab.
4) The empty check error message is changed from Label cannot be empty to Label in Collection cannot be empty for collections.

Fixes #6763
2021-09-21 16:56:29 +05:30
Nikhil Mohite
7aa213a5ce 1) Port Grant Wizard to react. Fixes #6687
2) Fixed an issue where grant wizard is unresponsive if the database size is huge. Fixes #2097
2021-09-20 13:02:41 +05:30
Rahul Shirsat
346ee6ba5f Fixed an issue where privileges not shown in catalog nodes for Properties tab. Fixes #6743 2021-09-17 20:50:29 +05:30
Aditya Toshniwal
32e97b6422 Fixed the CSS issue causing extra space at the bottom of maintenance backup dialog. 2021-09-17 20:47:03 +05:30
Aditya Toshniwal
ae49b556ce - Properties tab should refresh if node is updated. - Error should be hierarchical and not just id based. 2021-09-09 13:09:41 +05:30
Aditya Toshniwal
261cec1d20 Port Table, Column, Primary key, Foreign key, Check constraint, Unique constraint, Exclusion constraint. 2021-09-09 13:05:57 +05:30
Aditya Toshniwal
9274df0f11 - Fix Jasmine test cases failing in framework. - More stability fixes and enhancements. 2021-09-09 13:03:54 +05:30
Rahul Shirsat
08f2121544 Port Schema & Catalog node to react. Fixes #6655 2021-09-09 13:01:53 +05:30
Aditya Toshniwal
377fe80046 - Add VaccumSettings schema. - Allow collection to have fixed rows. - Changes in data change comparison and add state utils context. - Fixed jasmine test cases. 2021-09-09 13:00:33 +05:30
Akshay Joshi
5c1ce23780 Port Synonyms node to react. Fixes #6599 2021-09-09 12:50:32 +05:30
Aditya Toshniwal
47855eae0b Allow node ajax functions to send URL params. 2021-09-09 12:50:32 +05:30
Aditya Toshniwal
9d33b03be9 Few more changes to core schema framework required by other nodes. 2021-09-09 12:22:05 +05:30
Aditya Toshniwal
b20558cb99 Some changes to the core code that will be helpful for other nodes. 2021-09-09 12:20:59 +05:30
Aditya Toshniwal
764677431f Added React framework for the properties dialog and port Server Group, Server, and Database dialogs.
Following changes done for the framework:
 - Framework for creating React based dynamic form view out of a pre-defined UI schema. Previously, it was based on Backform/Backbone.
 - The new framework and components will use MaterialUI as the base. Previously, Bootstrap/Backform/jQuery components were used.
 - The new code uses JSS instead of CSS since material UI and most modern React libraries also use JSS. In the future, this will allow us to change the theme in real-time without refresh.
 - 90% code covered by 80-85 new jasmine test cases.
 - Server group node UI Schema migration to new, with schema test cases.
 - Server node UI Schema migration to new, with schema test cases.
 - Database node UI Schema migration to new, with schema test cases.
 - Few other UI changes.

Fixes #6130
2021-09-09 12:20:59 +05:30
Aditya Toshniwal
173517985e Avoid a potential conflict with jquery.drag and use addEventListener to bind events. 2021-09-01 15:02:20 +05:30
Nikhil Mohite
b30a42ab9e Ensure that deleting a database should not automatically connect to the next database. Fixes #6685 2021-08-25 17:01:48 +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
Pradip Parkale
5581f0909a Fixed an issue where Debugger and ERD tool panel give a blank white panel, missing from the last patch.
refs #6398
2021-06-25 11:38:02 +05:30
Libor M
cc989c5c08 Added missing gettexts and text space improvements. 2021-06-24 11:15:50 +05:30
Nikhil Mohite
7c88ee7cff Added a mechanism to detect a corrupt/broken config database file. Fixes #6460 2021-06-08 19:41:47 +05:30
Nikhil Mohite
9f12747d9b Added PSQL tool support for the Windows platform.
Fixed following issues:
1. If the database name contains escape characters then PSQL unable to connect.
2. If the user terminates the connection by typing the 'exit' command, PSQL
   will show the connection termination msg.

Fixes #2341
2021-06-08 14:58:43 +05:30
Nikhil Mohite
5b12483416 Fixed an issue where the Foreground Color property of server dialog does not work. Fixes #6482 2021-06-07 21:09:04 +05:30
Nikhil Mohite
e0eac875b6 Disable the PSQL tool for Windows, the 'fcntl' module is not working on Windows. 2021-06-01 20:04:43 +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
Ashesh Vashi
a487a51135 Fixes SonarQube issues. 2021-05-29 12:55:59 +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
Rahul Shirsat
37dece2cd8 Added window maximize/restore functionality for properties dialog. Fixes #4064 2021-05-24 22:08:23 +05:30
Pradip Parkale
0bb40de1c4 Ensure that the user should not be able to add duplicate panels. Fixes #6399 2021-05-12 15:19:41 +05:30
Murtuza Zabuawala
4c55044440 Remove duplicate code and avoid DOM search operation.
refs #6355
2021-05-06 10:53:32 +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
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
Pradip Parkale
abdd3190fe Fixed some SonarQube issues. 2021-04-22 17:40:41 +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
585ba81492 Fixed sizing issue of help dialog for Query Tool and ERD Tool when open in the new browser tab. Fixes #6333 2021-04-06 15:26:25 +05:30
Akshay Joshi
4bb71c56ad Fixed an issue where the top menu disappears when entering into the full screen for minimum screen resolution. Fixes #6322 2021-03-17 18:47:25 +05:30
Akshay Joshi
49a59f8929 Added zoom scaling options with keyboard shortcuts in runtime. Fixes #6271 2021-03-15 14:26:11 +05:30
Akshay Joshi
008bc6da28 Fixed some SonarQube issues. 2021-03-02 14:53:05 +05:30
Pradip Parkale
4267207c7f 1) Fixed an issue where the user is unable to create a subscription if the host/IP address for connection is 127.0.0.1. Fixes #6253
2) Ensure that proper error message should be shown on the properties and statistics tab in case of insufficient privileges for a subscription. Fixes #6259
3) Fixed an issue where the 'Create Slot' option is disabled in case of the same IP/host provided but the port is different. Fixes #6260
2021-03-01 12:08:33 +05:30
Nikhil Mohite
4fc36a9053 Fixed an issue where the properties tab for collection nodes is unresponsive after switching the tabs. Fixes #4959 2021-02-26 12:50:30 +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
Aditya Toshniwal
617440e1db Ensure that ajax request for Dashboard, Statistics, Dependencies, and Dependents
should not be raised until the panel will be in focus.

refs #5091
2021-02-09 15:31:26 +05:30
Aditya Toshniwal
73b6b95fbc Make Statistics, Dependencies, Dependants tabs closable and the user can add them back using the 'Add panel' option. Fixes #5091 2021-02-03 12:46:32 +05:30
Pramod Ahire
9e90350e44 Fixed jasmine test cases and added some missing messages for disabled menus. 2021-02-03 12:15:37 +05:30
Pramod Ahire
b948f43dda Added Quick Search functionality for menu items and help articles. Fixes #6148 2021-02-02 14:47:58 +05:30
Pradip Parkale
bf56a6723b Added support for Logical Replication. Fixes #5912 2021-02-01 15:12:43 +05:30
Akshay Joshi
102ffd141c Implemented runtime using NWjs to open pgAdmin4 in a standalone window
instead of the system tray and web browser. Used NWjs to get rid of QT
and C++. Fixes #5967

Use cheroot as the default production server for pgAdmin4. Fixes #5017
2021-01-29 13:38:27 +05:30
Aditya Toshniwal
13db981445 Fixed following issues in ERD:
1) After opening an existing project, the first table is already selected but the edit, clone, delete buttons are disabled.
 2) ERD project title gets changed when 2 ERD projects are open & anyone of it edited.
 3) Closing the ERD tab does not ask for a confirmation pop-up.
 4) Shortcut for 'Show more/Fewer details' is missing.
 5) Deleting the primary key does not delete associated links.
 6) The long table & schema name are getting out of the box.
 7) The long table name in the notes pop-up needs re-alignment.
 8) The same table name present in ERD/canvas is allowed in Add Table dialogue. Added validation in the dialog.
 9) Download image option is added, but it is not perfect yet. Image icons (table, schema, etc.) are not showing up.
 10) Rename panel option should be disabled by default. It should be enabled for the tools which implement rename functionality.
 11) The Toolbar is not visible in Safari for the ERD tool.

refs #1802
2021-01-25 17:32:56 +05:30
Dave Page
91ca746c27 Fix menu text (the Query tool option doesn't open a dialogue, so should not have ...). 2021-01-20 15:52:34 +00:00
Akshay Joshi
b372f08a59 Update copyright notices for 2021 2021-01-04 15:34:45 +05:30
Nikhil Mohite
dbb4a46d46 Fixed accessibility issues in various dialogs. Fixes #6077 2020-12-24 13:26:25 +05:30
Rahul Shirsat
183c83f0d2 Fixed an issue where the validation error message is shown twice. Fixes #5736 2020-10-30 14:59:22 +05:30
Nikhil Mohite
c86a3d64fc Added support to rename query tool and debugger tabs. Fixes #4230
Fixed an issue where non-closeable tabs are getting closed. Fixes #5923
2020-10-23 17:16:31 +05:30
Akshay Joshi
556278dbc5 Added support to view trigger function under the respective trigger node. Fixes #2519 2020-10-12 13:49:54 +05:30
Aditya Toshniwal
3e7cdcdf90 Ensure that 'ctrl + a' shortcut does not move the cursor in SQL editor. Fixes #5131 2020-09-29 10:56:57 +05:30
Aditya Toshniwal
553be14000 Fixed an issue where a column is renamed and then removed, then the drop SQL query takes the wrong column name. Fixes #5807. 2020-09-21 09:40:45 +05:30
Pradip Parkale
b562ab7681 Added shared server support for admin users. Fixes #4979 2020-09-03 12:59:28 +05:30
Neel Patel
b53de0c31d Updated some more font awesome icons for v5 2020-08-21 14:15:18 +05:30
Akshay Joshi
8f61944386 1) Added special handling for the extension to resolve the dependency.
2) Added 'is_sys_obj' to the ignore list of Schema Diff.
3) Font awesome v5 fixes.
2020-08-13 17:48:04 +05:30
Nikhil Mohite
93adf6884f Upgrade font awesome from v4 to v5. Fixes #5731 2020-08-13 12:04:00 +05:30
Yogesh Mahajan 
3672013ddc Fixed an issue where the error message does not have a close button on utility dialogs. Fixes #5670 2020-08-07 17:17:51 +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
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
Satish V
64cdd509b0 Fixed save button enable issue when focusing in and out of numeric input field. Fixes #5137 2020-07-17 15:31:04 +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
Murtuza Zabuawala
2db9242f5c Fixed accessibility issue where few dialogs are not rendering properly
when we zoomed in browser window 200% and screen resolution is low.

Fixes #5662
2020-07-09 18:18:37 +05:30
Aditya Toshniwal
dd4dc19add Fixed issue where dialog sizes snapping to the default widths. 2020-07-03 11:26:06 +05:30
Nikhil Mohite
1ab257d512 Fixed Cognitive Complexity code smell reproted by SonarQube. 2020-07-03 11:15:41 +05:30
Aditya Toshniwal
ced296939f Fixed an issue where the user is able to edit properties when some of the collection nodes are selected. Fixes #5629 2020-07-02 16:21:56 +05:30
Yogesh Mahajan
6dd3ca31be Fixed SonarQube code smell 'Variables should not be shadowed'. 2020-07-01 13:43:00 +05:30
Ashesh Vashi
3102a8d24b Fix the dialog size when zoom level is changed of the browser.
The screen.width & screen.height does not reflect the values of the
height and width respectively when zoom level is changed for the
browser. It is better to review the calculated height and width based
on the window.innerHeight and window.innerWidth and re-evaluate them.
2020-07-01 11:49:43 +05:30
Nikhil Mohite
c873218c32 Added support for schema level restriction. Fixes #5583
Allow user to edit the connection properties when the database server
is already connected.
2020-06-30 19:15:23 +05:30
Aditya Toshniwal
6620f9263d Fixed issues reported by SonarQube with tag 'bad-practice'. 2020-06-22 12:18:59 +05:30
Yogesh Mahajan
6d3f13076f Fixed 'Comma operator should not be used' issue reported by SonarQube. 2020-06-18 16:17:55 +05:30
Aditya Toshniwal
a278e8b1e6 Fixed the master password issue, introduced in the last commit. 2020-06-18 15:38:38 +05:30
Aditya Toshniwal
f0490a54b7 Fixed redundant tagged issue reported by SonarQube. 2020-06-18 11:14:56 +05:30
Akshay Joshi
5ed1e1e5b6 Fixed some sonarqube issues. 2020-06-17 19:30:56 +05:30
Yogesh Mahajan
7c12ade161 Fixed issue related to shadowing variables reported by SonarQube. 2020-06-17 17:08:23 +05:30
Yogesh Mahajan
2ae5c0ec4f Fixed an issue where select all checkbox only selects the first 50 tables. Fixes #4226 2020-06-16 11:05:10 +05:30
Khushboo Vashi
8ab358ccec Fix following issues reported by SonarQube:
1) Properties of variables with "null" or "undefined" values should not be accessed
2) Variables should not be self-assigned
3) "in" should not be used with primitive types
2020-06-15 16:50:07 +05:30
Dave Page
85e89c869a Cleanup some code smells identified by SonarQube. 2020-06-10 16:42:59 +01:00
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
d22e276586 Ensure that proper error should be displayed for the deleted node. Fixes #3669 2020-06-03 11:26:26 +05:30
Akshay Joshi
9b8902dfb8 Fixed the SQL help issue for EDB Postgres Advanced Server. Fixes #4099 2020-05-22 14:11:58 +05:30
Satish V
9338bdcb3a Fixed an issue where the newly added table is not alphabetically added to the tree. Fixes #5434
Fixed an issue when renaming the column not added in the proper order. Fixes #5450
2020-05-08 12:52:03 +05:30
Satish V
b80784f5a1 Fixed an issue where the user should not be able to add columns in the creation order after 50 columns.
Regression of the initial patch.

Fixes #5043
2020-04-27 18:01:09 +05:30
Aditya Toshniwal
90849fe29b Fixed mouse click issue where it does not select an object in Browser unless the pointer is over the object. Fixes #4180 2020-04-24 11:32:11 +05:30
Satish V
2e29f3fd6d Fixed an issue where columns names should be visible in the order of their creation in the browser tree. Fixes #5043 2020-04-23 16:42:42 +05:30
Ashesh Vashi
637c80c38b Recreate the node item in the tree, when 'id' has been changed of the node.
Fixes #5053
2020-04-23 11:11:15 +05:30
Khushboo Vashi
6e5dbf7beb Added multiple drop/delete functionality for the table constraints. Fixes #3900 2020-04-22 18:47:13 +05:30
Aditya Toshniwal
05abb9e430 Ensure that the query tool context menu should work on the collection nodes. Fixes #5415 2020-04-20 18:50:20 +05:30
Libor M
36a3d4e53b Some more gettext() usage fixes:
- fixed `%` vs. `.format()`
  - unified texts and usage `%s` vs. `{}`/`{0}`
  - improved text sentences for translate
  - added gettext for next texts
2020-04-20 11:19:09 +05:30
Pradip Parkale
a05acb4f99 Fixed tab key navigation for some dialogs. Fixes #5371 2020-04-14 13:32:03 +05:30
Nagesh Dhope
d9574f3caa Fixes following OSX native keyboard shortcuts in Query Tool:
1) option+arrow (L/R) should skip by "word"
  2) option+arrow (up/down) should go up/down one line
  3) shift+option+arrow (L/R) should select/highlight by "word"
2020-04-10 15:21:56 +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
Pradip Parkale
33deacacee Ensure that the grant wizard should be closed on pressing the ESC key. Fixes #4206 2020-04-07 13:48:56 +05:30
Aditya Toshniwal
e1f990190e Added search object functionality. Fixes #2172 2020-04-06 17:33:07 +05:30
Pradip Parkale
8ceeb39268 Fixed tab key navigation issue for parameters in table dialog. Fixes #5275 2020-04-06 13:13:21 +05:30
Vishal Sawale
99a72e529b Fixed some accessibility issues:
1) Added missing search filter label in backgrid.
  2) broken aria issue for objects menu.
2020-04-03 17:11:46 +05:30
Pradip Parkale
13b65c9a6a Fixed tab key navigation issue for Grant Wizard. Fixes #5241
1) Added entry for .scss to change the shadow of  'ajs-close' button.
  2) allow the user to use the keyboard to update the Backgrid cell DateTime picker control.
2020-03-30 17:31:50 +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
Nagesh Dhope
b6173c9d7b Added tab navigation on close buttons for all the panels and create/properties dialog.
Added tab navigation for scroll left and scroll right buttons on the main window.

Fixes #4601
2020-02-04 11:30:33 +05:30
Pradip Parkale
210bbfdbe1 1) Added labels and titles after parsing and validating all the pgAdmin4 web pages for accessibility. Fixes #4770
2) Fixed an issue where Save Password control disappears after clicking on it while creating a server. Fixes #5116
2020-01-31 14:21:35 +05:30
Aditya Toshniwal
0da23b837d Set input controls as read-only instead of disabled will allow tab navigation in the properties tab and also allow screen readers to read it. Fixes #4993 2020-01-31 12:37:44 +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
Aditya Toshniwal
fde8e4054a Fixed an issue where Grant wizard unable to handle multiple objects when the query string parameter exceeds its limit. Fixes #4511 2020-01-20 17:53:21 +05:30
Akshay Joshi
b4b54d6b94 Fixed API test cases for missing language pack and jasmin test case. 2020-01-20 16:14:12 +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
Aditya Toshniwal
d4ee869281 Fixed broken tags and tokenizer options of select2. Regression of #5038
With the change of data adapter, we have configured adapters for tags and tokenizers.
We also renamed the method onDemandLoad to showOnScroll to avoid confusion.
2020-01-06 12:47:56 +05:30
Dave Page
01c7636c75 Update copyright notices for 2020. 2020-01-02 14:43:50 +00:00
Aditya Toshniwal
febbd729ec Ensure that constraints, indexes, rules, triggers, and compound triggers should be created on partitions. Fixes #4842. 2020-01-01 12:59:48 +05:30
Aditya Toshniwal
737f8375fb Added support for on-demand loading of items in Select2. Fixes #5038. 2020-01-01 11:24:16 +05:30
Nagesh Dhope
8c4dff057f Added aria-label attribute wherever missing for accessibility. 2020-01-01 10:37:17 +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
11bf5fc679 Fix an issue where clicking on an empty textbox like fill factor or comments, considers it as change and enabled the save button. Fixes #4506. 2019-12-11 14:35:14 +05:30
Aditya Toshniwal
6e2cf8ced2 Changed the open query tool and data filter icons. Fixes #4990. 2019-12-06 19:27:55 +05:30
Aditya Toshniwal
0a67b2ecb9 Added aria-label to provide an invisible label where a visible label cannot be used. Fixes #4772. 2019-12-03 12:47:42 +05:30
Khushboo Vashi
d476343b99 Enhance the logic to change the label from 'Delete/Drop' to 'Remove' for the server and server group node. Fixes #4923 2019-12-03 11:52:02 +05:30
Khushboo Vashi
cccc6e5676 Added role=status attribute to all the status messages for accessibility. Fixes #4773. 2019-12-02 14:15:31 +05:30
Rahul Shirsat
d98e86d3df Warn the user on changing the definition of Materialized View about the loss of data and its dependent objects. Fixes #4396 2019-12-02 11:25:51 +05:30
Fahar Abbas
623ff4f91f Allow drag and drop functionality for all the nodes under the database node, excluding collection nodes. Fixes #4435 2019-12-02 09:35:20 +05:30
Aditya Toshniwal
3ff4dfd02d Fix issue where the Reset button does not get enabled till all the mandatory fields are provided in the dialog. Fixes #3538 2019-11-15 11:51:06 +05:30
Nagesh Dhope
397a1b9616 Fix main window tab navigation accessibility issue:
1) Dashboard -> Server Activity grid: terminate the session, cancel active button not navigable using tab key.
2) SQL -> If the focus inside code mirror control tab navigation not working.

Fixes #4930
2019-11-15 11:31:19 +05:30
Murtuza Zabuawala
6a5d98cf19 Fix accessibility issues:
1) Suppress ESC key presses in Alertify dialogues when the come from Select2 controls (It also closes the alertify dialog when user try to close Select2 using ESC key)
2) Do not allow Tabindex focus on Switch control when it is disbaled
3) Tab keyboard shortcut navigation does not work in wcDocker iframe.

Fixes #4935
2019-11-15 11:06:00 +05:30
Murtuza Zabuawala
022cf3d93c Fixed an issue where keyboard shortcut for context menu is not working when using Firefox on CentOS7. Fixes #4906 2019-11-08 18:41:57 +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
Rahul Shirsat
62d55cabd9 1) Fixed issue where Drop and Disconnect connection menu points are too close to each other. Fixes #3279
2) Rename the context menu from 'Drop Server' to 'Remove Server'. Fixes #3859
2019-11-07 13:11:24 +05:30
Ganesh Jaybhay
69fba93152 Fixed potential issue in reset function for nested objects.
Reset function clears the model instead of storing previous values.

Fixes #4895
2019-11-05 14:47:07 +05:30
Aditya Toshniwal
570ee58f53 Add an option to request confirmation before cancelling/resetting changes on a Properties dialog. Fixes #4351 2019-11-05 14:28:03 +05:30
Aditya Toshniwal
e10b58e4ca Ensure create new object dialog should be opened when alt+shift+n key is pressed on the collection node. Fixes #3130 2019-11-05 11:20:03 +05:30
Aditya Toshniwal
fbc3e2d0e7 Don't warn the user before saving changes. 2019-10-30 10:13:29 +00:00
Aditya Toshniwal
c25034a86d Add an option to request confirmation before cancelling changes on a Properties dialog. Fixes #4315 2019-10-29 14:31:43 +00:00
Richard Yen
30e9673375 Give appropriate error messages when the user tries to use an blank master password. Fixes #4341 2019-10-25 13:55:07 +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
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
350ffcce7c 1) Add support of Compound Triggers for EPAS 12+. Fixes #4144.
2) Ensure enable trigger menu should be visible when trigger is disabled. Fixes #4578.
2019-08-08 16:59:11 +05:30
Aditya Toshniwal
6800b1f723 Add an optimisation to the internal code responsible for searching for treeview nodes. Fixes #4570
Attached is a tiny but very effective patch to improve the speed of
finding a node using path (used internally).
If you right click or just click on a node, internally the node is
traversed using its path. But currently, it compares with the path of
all the open nodes to find a match.
So if you 1000+ tables and the tables node is open and if you click on
a view, the view path is compared with all the 1000+ tables (and with
any other open nodes above) before arriving to path. You're at bad luck
if you have more open servers above.

Code is changed to check if the path of node to be found starts with the
current node path. If it doesn't match, why bother the children's of
current node.
This change will not show much effect for small data, but it does matter
for large servers.

One more change is to remove unnecessary calls to find node and use the
data available with Main Menu -> Object to enable/disable node context
menu items.
2019-08-06 14:02:57 +01:00
Ganesh Jaybhay
4cbc1f2f59 Allow keyboard navigation of all controls on subnode grids. Partially fixes #3919 2019-07-11 10:14:01 +01: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
Dave Page
2ca11c84e8 Ensure that the Return key can be used to submit the Master Password dialogue. Fixes #4310
Ensure that browser auto-fill doesn't cause Help pages to be opened unexpectedly. Fixes #4317
2019-06-10 14:03:56 +01:00
Dave Page
2dd075161d Allow the UI layout to be fully locked or to prevent docking changes. Fixes #2653 2019-05-31 11:51:30 -04:00
Aditya Toshniwal
dd187b9122 Prevent Alertify from inadvertently opening help pages. 2019-05-29 13:46:39 -04:00
Aditya Toshniwal
15252b0a26 Added Help button on all master password dialogs. 2019-05-29 13:07:50 +05:30
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
db4bb22cc6 Ensure that element should get highlighted when they get focus on using Tab key. Fixes #4245 2019-05-15 17:42:07 +05:30
Aditya Toshniwal
2cd58efcdd 1) Fixed Tab key navigation for Maintenance dialog. Fixes #4227
2) Fix Tab key issue for Toggle switch controls and button on the dialog footer in Safari browser. Fixes #4244
2019-05-15 16:37:06 +05:30
Aditya Toshniwal
ed8d1cde00 Fix accessibility issue for menu navigation. Fixes #4194 2019-05-15 15:38:33 +05:30
Khushboo Vashi
74af8976c9 Ensure that newly added row in backgrid should be visible. 2019-04-23 17:32:00 +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
Aditya Toshniwal
49b318c39e Ensure that confirmation dialog should be popped up before reload of query tool or debugger
if it is opened in a new browser tab. Fixes #4101
2019-04-18 15:39:36 +05:30
Murtuza Zabuawala
84ecffa4d9 Added recommended ESLinter checks. Fixes #4142 2019-04-05 13:07:43 +05:30
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
ce073a2856 Fix SQL help for EPAS 10+, and refactor the URL generation code into a testable function. Fixes #4099 2019-03-22 14:09:24 +00:00
Usman Muzaffar
be26fc540c Many fixes to the stability of the feature tests, including:
tree toggle issue
Query tool inteliSence issue eg. when there is only one option and drop down is not shown
Backup and restore windows locator changes
Fixes required due to resolving rm # 4041
Dependent tab not showing data sometime, so refreshed the page and handled it
Due to change of logic for auto commit, did the required changes
Due to fix of RM 4062, did the required workaround which broke the test case.
2019-03-21 12:04:37 +00:00
Khushboo Vashi
e4417229aa Update all Python and JS dependencies. Fixes #4019 2019-03-14 15:11:16 +00:00
Dave Page
d7bf6ec69f String review and subsequent cleanup
Ashesh Vashi
Abhilasha Narendra
Karen Blatchley
Susan Douglas
Dave Page
2019-03-05 14:08:16 +00:00
Khushboo Vashi
6b3a628e7a Fix double scrollbar on the query tool results grid. 2019-02-27 10:59:58 +00:00
Khushboo Vashi
622b67684d Optimise display of Dependencies and Dependents, and use on-demand loading of rows in batches of 100. Fixes #3959 2019-02-14 11:15:01 +00:00
Khushboo Vashi
17694ab467 Automatically expand child nodes as well as the selected node on the treeview if there is only one. Fixes #3559
This also ensure the browser state is cleared if the save interval is set to -1.
2019-02-14 09:18:08 +00:00
Akshay Joshi
1f43b05c2a Fix alignment of checkbox to drop multiple schedules of pgAgent job. Fixes #3946 2019-02-13 14:55:52 +05:30
Akshay Joshi
10ee75bb1f Fix alignment of Close and Maximize button of Grant Wizard. Fixes #3906 2019-02-13 13:13:07 +05:30
Dave Page
1fc66406f5 Don't embed docs and external sites in iframes, to allow the external sites to set X-FRAME-OPTIONS = DENY for security. Fxies #3985 2019-02-12 16:07:38 +00:00
Ashesh Vashi
38feacd04d Remove hacky way to open/close the dropdown submenu 2019-01-31 17:49:41 +05:30
Khushboo Vashi
6244463ac1 Fixed Statistics panel hang issue for 1000+ tables. Fixes #3664 2019-01-31 14:47:29 +05:30