-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathreadme.txt
More file actions
117 lines (97 loc) · 4.17 KB
/
readme.txt
File metadata and controls
117 lines (97 loc) · 4.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
[X] Static diagram of components (4)
static dependencies for just static web pages.png
static dependencies no CLI.png
static dependencies.png
carpoolrules class static dependencies.png
[X] One sequence diagram (3)
sequence of saving a carpool drag drop, from web.png
sequence of serving a static file.png
sequence of updating a destination record thru CLI.png
[ ] Static relationship between file types/tables
Installation notes:
---------------------------------------------------------------------------
[X] Document system requires these environment variables to store Google Cloud API Keys
environment variables.txt
The javascript keys need to have these settings
googleapiconsole.png
The API keys need
distance matrix
geocoding
See "sample.mp4" @ 6:40, to see how to check for environment variables on linux
[X] Test script to insert test data, for demonstration of
Just cut and paste the keystrokes inside each section, to generate data
CLI testdata script.txt
See "sample.mp4"@ 7:10, to see test data script run
[X] To run, just goto Python directory and run "python main.py"
1) The webserver starts immediately, accessible thru url http://localhost/
2) The CLI menu paused for 2seconds, before outputting initial menu
2) Press "W" - Enter, to turn off output from web server
3) Use menu as normal
4) On windows machine, it will start msedge web browser with http://localhost/
There should be link at bottom to Car Pool Mashup.
5) Web interface can create destinations, add members, define car pools and add members to pools
6) CLI interface can do all that, and also :
1) refresh coordinates for Destination Address (geocoding), which give coordinates for web map markers
2) refresh coordinates for Member Address (geocoding), which give coordinates for web map markers
3) refresh spanning tree for Destination Members, which give checkbox on web map to draw paths for suggested pools
4) refresh distance matrix for Pools, which give checkbox on web map to draw shortest driving directions for pool
5) delete destinations, pools, and members
Checklist of completed functions
---------------------------------------------------------------------------
List Destination CLI
=====================
[X] Add Destination
[X] List Destinations
[X] Update Destinations
[ ] Updating the name should update the index
This actually really adverely affects delete, as the delete tries to delete the record based on it's key value from the original record, rather than what was used to select the record in the index
But otherwise, if you prevent them from updating the name, it has no effect. It's just a bad user experience
For user to fix, they need to change the destination name back to the way it was, then delete
[X] Search for Destination
[X] Toggle debugging
[X] Quit
Destination Details CLI
=====================
[X] Change Name or Address
[X] View and Manage Car Pool Members
[X] View Car Pool Groups
[ ] View Distance by pools and distance/person
[X] Refresh Geocode
[X] recalculate MST (Spanning Tree)
[X] Quit and Manage to previous menu
Member List CLI
=====================
[X] List Members
[X] Add a new car pool member to destination
[X] Member search
[X] Goto Member Details
[X] Quit
Member Details CLI
=====================
[X] Update Members
[ ] Updating the name should update the index
same problem deleting, except I haven't written code to allow them to update back
[X] Delete Member from Car Pool Destination
[X] Refresh Geocode
[X] Quit
Pool List CLI
=====================
[X] List Pools
[X] Add pool
[X] allows you to create a initial list
[X] add to list and save
[X] Pool Details
[ ] Search for member in pool
[X] Refresh Geocode
Pool Details CLI
=====================
[X] List Members
[X] Add Members to pool
[X] Remove Member from pool
[X] Delete Pool
[X] Refresh Distance Matrix
[X] Recalculate shortest distance
System todo
===========
[ ] delete is incomplete. There is "file leaks", of left over json files, that were not cleaned up.
hardly anything to worry about for a test demonstration.