Wiki source code of Invitation Application

Last modified by Vincent Massol on 2011/03/17 19:40

Hide last authors
Caleb James DeLisle 4.1 1 = The Invitation Application allows you to invite your friends to join the wiki =
2 This is an early version to allow you to invite yourself and to help us decide what functionality is most important.
3
4 == Permission ==
Caleb James DeLisle 13.2 5 * Members of the myxwiki.org have permission to access Invitation as an administrator (this allows you to view old messages which other people sent.) or as a user.
6 * Invitation messages do not grant privilege to join the incubator, registration is still closed.
Caleb James DeLisle 14.1 7 * Everyone (even guests) have permission to comment on this page so please write comments and/or send to the mailing list with suggestions, (more) bugs, and desired features.
Caleb James DeLisle 19.1 8 * Everyone except guests can edit this page to modify the todo list.
Caleb James DeLisle 4.1 9
10 == Todo ==
11 * There is no javascript yet. My philosophy is to get basic functionality stable before putting any icing on the cake.
12 ** Use LiveTable (when js is available)
Caleb James DeLisle 19.1 13 *** Allow admins to sort invitations
Caleb James DeLisle 20.1 14 * --Allow inviters to cancel invitations-- **Done**
15 ** Should an email be sent out about cancellation? Would it create too much noise? **Not implemented**
Caleb James DeLisle 21.1 16 * --Invitations which grant privilege to join a closed wiki (and allow the user to bypass the registration captcha).-- **Done**
Caleb James DeLisle 5.1 17 * Invitations grant other privileges such as group membership (Will this be used commonly? Maybe wait on this?)
18 ** Difficult to avoid introducing security issues.
Caleb James DeLisle 4.1 19 * Invitations which last for a given amount of time (for sending to a mailing list.)
Caleb James DeLisle 21.1 20 ** --Time based expiration, expiration after one (or more?) acceptance/denials or both.-- **This doesn't make sense.**
Caleb James DeLisle 4.1 21 * Move old invitations to other document so primary storage document isn't overloaded (Delete old invitations? Is delete anti-wiki?)
22 * Allow users to resend invitations if sending fails or message bounces etc. (Necessary? Dangerous?)
Caleb James DeLisle 5.1 23 ** Have an incoming mail account to detect message bounces? Lots of work involved, something to think about for future.
Caleb James DeLisle 4.1 24 * Allow users to send an invitation but not decide the content (needed?)
Caleb James DeLisle 20.1 25 * --Make templates use localization messages-- **Done**
Caleb James DeLisle 4.1 26 * Support join requests (Easily implemented by allowing registration of users who are disabled by default.)
Caleb James DeLisle 5.1 27 ** Who handles join requests?
Caleb James DeLisle 12.2 28 * Support non-html email clients (how important is this?)
Caleb James DeLisle 4.1 29 * Many bugs to fix and UI sharp edges.
30 * **Help expand this list by commenting!**
31
32 == The application ==
33
Caleb James DeLisle 15.1 34 {{warning}}Since every member of myxwiki.org can use the admin function, they can see what email addresses you wrote to.{{/warning}}
35
Caleb James DeLisle 4.1 36 These two links point to the same application but seen from the point of view of a user or an administrator.
37
Caleb James DeLisle 1.1 38 {{velocity}}
Caleb James DeLisle 4.1 39 * **[[InvitationMail.InvitationUser]]** ##
40 #if(!$xcontext.hasAccessLevel('view', 'InvitationMail.InvitationUser'))
41 {{error}}You do not have permission to use this.{{/error}}##
Caleb James DeLisle 1.1 42 #end
Caleb James DeLisle 4.1 43
44 * **[[InvitationMail.InvitationAdmin]]** ##
Caleb James DeLisle 6.1 45 #if(!$xcontext.hasAccessLevel('view', 'InvitationMail.InvitationAdmin'))
Caleb James DeLisle 4.1 46 {{error}}You do not have permission to use this.{{/error}}##
47 #end
Caleb James DeLisle 7.1 48
Caleb James DeLisle 12.1 49 ## Do a permissions test.
Caleb James DeLisle 9.1 50 #if($request.get('checkperms') == '1')
Caleb James DeLisle 8.1 51 #foreach($docName in $xwiki.searchDocuments('where space = ?', 0,0, [$doc.getSpace()]))
Caleb James DeLisle 10.1 52 * [[$docName]]##
Caleb James DeLisle 7.1 53 #if($xcontext.hasAccessLevel('view', $docName))
54 **VIEW** ##
55 #end
56 #if($xcontext.hasAccessLevel('edit', $docName))
57 **EDIT**##
58 #end
Caleb James DeLisle 10.1 59
Caleb James DeLisle 7.1 60 #end
61 #end
Caleb James DeLisle 1.1 62 {{/velocity}}