Subject: Feature #3061

From: Neethu Mariya Joy <[email-masked]>
Date: Wed, 28 Feb 2018 18:29:16 +0530

Hi,

I am Neethu Mariya Joy, an undergraduate sophomore pursuing BE(Hons) in
Computer Engineering from BITS Pilani, India.

I would like to work on the feature #3061, "Dashboard Customisation".
Kindly provide suggestions for the same.

Sincerely,
Neethu Mariya Joy
GitHub <https://github.com/Roboneet> | Linkedin
<https://www.linkedin.com/in/neethu-mariya-joy-653655128/>

---

From: Joao De Almeida Pereira <[email-masked]>
Date: Wed, 28 Feb 2018 15:33:25 +0000

Hello Neethu
Welcome to the pgadmin-hackers, nice to see you here.

In order to start this story, I believe that we need to talk with some
users to understand what does this story mean. At this point the issue is
to broad and I personally do not understand what customization means.

But feel free to start having ideas on what does customization mean, and we
can create some prototypes and talk with users to see what their reaction
is to them.

Thanks
Joao

---

From: Murtuza Zabuawala <[email-masked]>
Date: Thu, 1 Mar 2018 10:39:42 +0530

Hello,

First of all I'm assuming that you have some degree of knowledge about
Python, HTML, JS & Git.

We have had added similar feature recently.
Check: https://redmine.postgresql.org/issues/2951 for more details.
Code location of Dashboard module in git repository:
../pgadmin4/web/pgadmin/dashboard

There are 3 requirments in the ticket,
1) disable/enable some widgets (widget - Server Sessions | Transactions per
second | Tuples in etc)
We have done this for all the graphs in one shot, now user can
enable/disable all the graphs via preferences dialog.
You can refer the commit
<https://git.postgresql.org/gitweb/?p=pgadmin4.git;a=commitdiff;h=801a2084e9337e4bf07355a074f3adfbdcb9a334;hp=54dd6aae83e4d8bff6dc4a5184722cf782977fa4>
as a reference if you want to add this functionality for each
individual graphs.

2) add custom/user specify widgets
- First of all, You need to provide an option to Create new dashboard
dialog, Update existing dashboard dialog option and also to delete those
existing custom dashboards on dashboard page.
- You have to create a separate table in sqlite3 database to store the data
for that user defined dashboards like Dashboard name, SQL etc.
- You also have to provide option to use to choose what type of graph user
wants (Line chart, Pie chart, Table etc)
- Size & location of the graph/table.

3) add user role with access only to dashboard
This needs further discussion with community members if we really need this
or not.

You can refer README for more information regarding how to run pgAdmin4.

Let us know if you need any help.

--
Regards,
Murtuza Zabuawala
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

---

From: Neethu Mariya Joy <[email-masked]>
Date: Fri, 2 Mar 2018 03:33:55 +0530

Hi,

Thanks for the reply. I had a look at the commit and tried out the first
part.

I have a few doubts.
a. Now that we are adding options for each individual graph, should we
remove the previous show graphs option or keep it as an override when it is
false?
b. Do widgets include tables or just the graphs?

Sincerely,
Neethu

On Thu, Mar 1, 2018 at 10:39 AM, Murtuza Zabuawala <
[email-masked]> wrote:

> 1) disable/enable some widgets (widget - Server Sessions | Transactions
> per second | Tuples in etc)
> - You have to create a separate table in sqlite3 database to store the
> data for that user defined dashboards like Dashboard name, SQL etc.
> This needs further discussion with community members if we really need
> this or not.
>

---

From: Murtuza Zabuawala <[email-masked]>
Date: Fri, 2 Mar 2018 10:02:03 +0530

Hello,

On Fri, Mar 2, 2018 at 3:33 AM, Neethu Mariya Joy <[email-masked]

> remove the previous show graphs option or keep it as an override when it is

​I think we should keep that what if user wants to disable all the graphs
on dashboards including the user defined custom graphs​, User has go and
disable each every graphs, if we provide a single option to turn off all
the graphs then it will be more user friendly.

​Yes, It may include Table as you can see in "Server Activity" section but
in custom table we will only display it in terms of plain HTML table and we
won't use Backgrid.​

>
> Sincerely,
> Neethu
>
> On Thu, Mar 1, 2018 at 10:39 AM, Murtuza Zabuawala <murtuza.zabuawala@
> enterprisedb.com> wrote:
>
>> Hello,
>>
>> - You also have to provide option to use to choose what type of graph
>> user wants (Line chart, Pie chart, Table etc)