forked from ccnmtl/mediathread
-
Notifications
You must be signed in to change notification settings - Fork 1
/
PLANS
91 lines (75 loc) · 2.51 KB
/
PLANS
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
CLEANUP
----------
1. registration/login.html (needs a link and text blurb)
2. remove fromprod.sh
3. alter /apache/
4. flunc tests rel. bvault
5. bvault lxml crawl
6. settings_shared: SECRET_KEY, WIND stuff, ADMINS,INTERNAL_IPS
StructuredCollaboration Plans
-----------------------------
ARCHITECTURE
1. objects are unique to a 'context' (locally shared ancestor)
2. shallow structure except for recursively-typed ones
3. setting content_object to a Collaboration
a. will parse down for finding descendents
b. but NOT for access control
c. works like a symlink
QUERIES (current)
1. request.course still exists
2. read permissions for context =course (project,asset)
Project.objects.get(pk=pk,pk__in= )
3. user projects,assets,sherds by (course)
USE CASES (future)
1. Ordered collections (for individuals)
2. Shared collections (for student teams)
3. Transcripts
4. Attaching objects to assignments, etc.
5. Publishing (to the world, or wider than course/context)
CURRENT FILES (to edit)
projects/views.py
==hard queries==
*get_user_projects()
*all user Sherds from a course
*all projects from a course with user as participant
-- ?index all objects by user (user,object,context)
*all course tags (through sherds)
-- ?cache (with update on new tag)
assetmgr/views.py
==hard queries==
*all user Sherds from a course
--we should optimize assuming people are generally in
a single course (post query filter should be fine)
*random (GET args) Asset query restricted to a course
*all assets from a course
--query collection directly
*all course tags (through sherds)
--maybe auto-tag domain, as well?
-- ?cache (with update on new tag)
projects/teplatetags/user_projects.py
projects/models.py @get_user_projects() (called in projects/views.py)
templates/projects/classlisting.html (user_projects)
!!! = context
Course1 (!!! only for creating a new collection/asset/project)
Asset1
'Transcript' (stub Collaboration)
Sherd[0] (0:00-0:15) "Good evening, ladies and gentlemen,"
Sherd[1] (0:15-0:30) "Blah blah blah,"
...
Project1 [user]
Project2 [group] !!!
Sherd[0] (group-owned annotation)
ColXX (stub Collaboration) = COMPARISON
Sherd[1]
Sherd[2]
...
'Collection1' (stub Collaboration) [id=666,user=a] !!!
Sherd[id=1]
Sherd[id=2]
'Collection2' (stub Collaboration) [user=a] !!!
Sherd[id=3]
Collaboration[id=666]
Sherd[id=4]
?DiscussionBoard1
Sherd[id=3] (objects to attach to the discussion board)
Asset1