Skip to content
This repository was archived by the owner on Aug 19, 2020. It is now read-only.

Commit ecfc1a6

Browse files
committed
wip with story
1 parent 030b771 commit ecfc1a6

File tree

5 files changed

+95
-28
lines changed

5 files changed

+95
-28
lines changed

database/create_connectivity.sql

Lines changed: 54 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -26,18 +26,18 @@ CREATE UNIQUE INDEX only_one_default_panel_check
2626

2727
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
2828
(1, 1, TRUE);
29-
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
30-
(1, 2, FALSE);
3129
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
3230
(2, 1, TRUE);
33-
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
34-
(2, 2, FALSE);
3531
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
3632
(3, 1, TRUE);
37-
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
38-
(3, 2, FALSE);
3933
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
4034
(4, 1, TRUE);
35+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
36+
(1, 2, FALSE);
37+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
38+
(2, 2, FALSE);
39+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
40+
(3, 2, FALSE);
4141
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
4242
(4, 2, FALSE);
4343
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
@@ -46,6 +46,24 @@ INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
4646
(6, 3, TRUE);
4747
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
4848
(7, 3, TRUE);
49+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
50+
(8, 3, TRUE);
51+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
52+
(9, 4, TRUE);
53+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
54+
(10, 4, TRUE);
55+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
56+
(11, 4, TRUE);
57+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
58+
(12, 4, TRUE);
59+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
60+
(13, 5, TRUE);
61+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
62+
(14, 5, TRUE);
63+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
64+
(15, 5, TRUE);
65+
INSERT INTO gestalt_workspace_panel(workspace_id, panel_id, is_default) VALUES
66+
(16, 5, TRUE);
4967

5068
/*
5169
-------------------------------------------------------------------------
@@ -76,17 +94,17 @@ CREATE UNIQUE INDEX only_one_default_story_check
7694
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
7795
(1, 2, TRUE);
7896
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
79-
(2, 1, TRUE);
97+
(2, 2, TRUE);
8098
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
8199
(3, 2, TRUE);
82100
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
83-
(4, 1, TRUE);
101+
(4, 2, TRUE);
84102
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
85-
(5, 2, TRUE);
103+
(5, 1, TRUE);
86104
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
87105
(6, 1, TRUE);
88106
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
89-
(7, 2, TRUE);
107+
(7, 1, TRUE);
90108
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
91109
(8, 1, TRUE);
92110
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
@@ -95,28 +113,51 @@ INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
95113
(10, 3, TRUE);
96114
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
97115
(11, 3, TRUE);
116+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
117+
(12, 3, TRUE);
118+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
119+
(13, 4, TRUE);
120+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
121+
(14, 4, TRUE);
122+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
123+
(15, 4, TRUE);
124+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
125+
(16, 4, TRUE);
126+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
127+
(17, 4, TRUE);
128+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
129+
(18, 4, TRUE);
130+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
131+
(19, 4, TRUE);
132+
INSERT INTO gestalt_wp_story (wp_id, story_id, is_default) VALUES
133+
(20, 4, TRUE);
98134

99135
/*
100136
-------------------------------------------------------------------------
101137
gestalt_story_vis
138+
This table lists the relationship between a story and its respective
139+
visualization(s).
140+
* story_id: story id in gestalt_story table
141+
* vis_id: vis id in gestalt_vis table
102142
-------------------------------------------------------------------------
103143
*/
104144

105-
106145
CREATE TABLE gestalt_story_vis (
107146
id SERIAL PRIMARY KEY,
108147
story_id INTEGER REFERENCES gestalt_story(id),
109148
vis_id INTEGER REFERENCES gestalt_vis(id),
110149
order_num INTEGER DEFAULT 1,
111-
UNIQUE (story_id, vis_id)
150+
UNIQUE (story_id, vis_id, order_num),
112151
);
113152

153+
CREATE OR REPLACE RULE get_vis_order_num AS ON INSERT TO "gestalt_story_vis"
154+
114155
INSERT INTO gestalt_story_vis (story_id, vis_id) VALUES
115156
(1, 3);
116157
INSERT INTO gestalt_story_vis (story_id, vis_id) VALUES
117158
(2, 3);
118159
INSERT INTO gestalt_story_vis (story_id, vis_id) VALUES
119160
(3, 2);
120161
INSERT INTO gestalt_story_vis (story_id, vis_id) VALUES
121-
(4, 4);
162+
(4, 3);
122163

database/create_story.sql

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
-------------------------------------------------------------------------
1010
*/
1111

12-
DROP TABLE IF EXISTS gestalt_story;
12+
DROP TABLE IF EXISTS gestalt_story CASCADE;
1313

1414
CREATE TABLE gestalt_story (
1515
id SERIAL PRIMARY KEY,
@@ -23,7 +23,7 @@ INSERT INTO gestalt_story (name, url_name) VALUES
2323
INSERT INTO gestalt_story (name, url_name) VALUES
2424
('What visual form best communicates your dataset', 'which-form');
2525
INSERT INTO gestalt_story (name, url_name) VALUES
26-
('GDP', 'gdp');
26+
('What the network looks like', 'network');
2727
INSERT INTO gestalt_story (name, url_name) VALUES
2828
('tbd', 'tbd');
2929

@@ -55,7 +55,7 @@ INSERT INTO gestalt_action_name (name) VALUES
5555
INSERT INTO gestalt_action_name (name) VALUES
5656
('load');
5757
INSERT INTO gestalt_action_name (name) VALUES
58-
('color');
58+
('color');q
5959
INSERT INTO gestalt_action_name (name) VALUES
6060
('filter');
6161
INSERT INTO gestalt_action_name (name) VALUES

database/create_vis.sql

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,17 +47,20 @@ insert into gestalt_group_type (name) values ('other');
4747
-------------------------------------------------------------------------
4848
*/
4949

50+
DROP TABLE IF EXISTS gestalt_vis_type;
51+
5052
CREATE TABLE gestalt_vis_type (
5153
id SERIAL PRIMARY KEY,
5254
name TEXT NOT NULL CHECK (name <> ''),
55+
url_name TEXT NOT NULL CHECK (name <> '',
5356
UNIQUE (name)
5457
);
5558

56-
INSERT INTO gestalt_vis_type (name) VALUES ('comparison');
57-
INSERT INTO gestalt_vis_type (name) VALUES ('time series');
58-
INSERT INTO gestalt_vis_type (name) VALUES ('hierarchy');
59-
INSERT INTO gestalt_vis_type (name) VALUES ('parts of a whole');
60-
INSERT INTO gestalt_vis_type (name) VALUES ('relatedness');
59+
INSERT INTO gestalt_vis_type (name,url_name) VALUES ('comparison', 'comparison');
60+
INSERT INTO gestalt_vis_type (name,url_name) VALUES ('time series', 'time-series');
61+
INSERT INTO gestalt_vis_type (name,url_name) VALUES ('hierarchy', 'hierarchy');
62+
INSERT INTO gestalt_vis_type (name,url_name) VALUES ('parts of a whole', 'parts-of-a-whole');
63+
INSERT INTO gestalt_vis_type (name,url_name) VALUES ('relatedness','relatedness');
6164

6265
/*
6366
-------------------------------------------------------------------------
@@ -69,6 +72,8 @@ INSERT INTO gestalt_vis_type (name) VALUES ('relatedness');
6972
-------------------------------------------------------------------------
7073
*/
7174

75+
DROP TABLE IF EXISTS gestalt_vis_directive;
76+
7277
CREATE TABLE gestalt_vis_directive (
7378
id SERIAL PRIMARY KEY,
7479
name TEXT NOT NULL CHECK (name <> ''),
@@ -81,6 +86,13 @@ INSERT INTO gestalt_vis_directive (name) VALUES ('group-nodes');
8186
INSERT INTO gestalt_vis_directive (name) VALUES ('visualization-standard');
8287
INSERT INTO gestalt_vis_directive (name) VALUES ('tbd');
8388
INSERT INTO gestalt_vis_directive (name) VALUES ('line-chart');
89+
INSERT INTO gestalt_vis_directive (name) VALUES ('dendrogram');
90+
INSERT INTO gestalt_vis_directive (name) VALUES ('packed-circles');
91+
INSERT INTO gestalt_vis_directive (name) VALUES ('tree-list');
92+
INSERT INTO gestalt_vis_directive (name) VALUES ('heatmap-grid');
93+
INSERT INTO gestalt_vis_directive (name) VALUES ('pie-chart');
94+
INSERT INTO gestalt_vis_directive (name) VALUES ('node-link');
95+
INSERT INTO gestalt_vis_directive (name) VALUES ('adjacent-matrix');
8496

8597
/*
8698
-------------------------------------------------------------------------

database/create_workspace.sql

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,11 +60,28 @@ INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_defau
6060
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
6161
(3, 1, 'gestalt', FALSE);
6262
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
63-
(4, 1, 'gestalt', TRUE);
63+
(4, 1, 'gestalt', FALSE);
6464
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
6565
(1, 2, 'economics', TRUE);
6666
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
6767
(2, 2, 'economics', TRUE);
6868
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
6969
(3, 2, 'economics', TRUE);
70-
70+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
71+
(4, 2, 'economics', TRUE);
72+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
73+
(1, 3, 'ip', FALSE);
74+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
75+
(2, 3, 'ip', FALSE);
76+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
77+
(3, 3, 'ip', FALSE);
78+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
79+
(4, 3, 'ip', FALSE);
80+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
81+
(1, 4, 'scn', FALSE);
82+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
83+
(2, 4, 'scn', FALSE);
84+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
85+
(3, 4, 'scn', FALSE);
86+
INSERT INTO gestalt_workspace (persona_id, workspace_name_id, url_name, is_default) VALUES
87+
(4, 4, 'scn', FALSE);

prototypes/desktop/workspace.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@
1919

2020
class getDefaultWorkspaceByPersona:
2121
""" Extract default workspace for a particular persona.
22-
assumption:
23-
* return one workspace if inputted correctly
2422
input:
2523
* persona.id
2624
output:
@@ -35,13 +33,12 @@ def GET(self, persona_id, connection_string=helper.get_connection_string(os.envi
3533
self.cursor = connection.cursor(cursor_factory=psycopg2.extras.RealDictCursor)
3634
# execute query
3735
self.cursor.execute("""
38-
SELECT DISTINCT ON (w.id) w.id, wn.name, w.url_name
36+
SELECT w.id, wn.name, w.url_name
3937
FROM gestalt_workspace AS w
4038
INNER JOIN gestalt_workspace_name AS wn
4139
ON w.workspace_name_id = wn.id
4240
WHERE w.persona_id = """ + persona_id + """
43-
AND w.is_default IS TRUE
44-
ORDER BY wn.name;
41+
AND w.is_default IS TRUE;
4542
""")
4643
# obtain the data
4744
data = self.cursor.fetchall()

0 commit comments

Comments
 (0)