Rev 1222 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1222 | Rev 1223 | ||
---|---|---|---|
1 | Host Admiral TODO |
1 | Host Admiral TODO |
2 | ================================================================================================================ |
2 | ================================================================================================================ |
3 | 3 | ||
4 | Implement listerners as weak reference, create a general engine for this (?), possible java 1.5. |
4 | Implement listerners as weak reference, create a general engine for this (?), possible java 1.5. |
5 | 5 | ||
6 | Move logged in users accounting from the session hack to model, as weak references. |
6 | Move logged in users accounting from the session hack to model, as weak references. |
7 | 7 | ||
8 | Show user no exceptions, just 'internal error'. |
8 | Show user no exceptions, just 'internal error'. |
9 | 9 | ||
10 | No unique error handle by mail alias creation. |
10 | No unique error handle by mail alias creation. |
11 | 11 | ||
12 | Additional attributes for all objects, configurable. |
12 | Additional attributes for all objects, configurable. |
13 | 13 | ||
14 | HTTP Basic Auth as option to replace form-based auth - to allow integration with |
14 | HTTP Basic Auth as option to replace form-based auth - to allow integration with |
15 | non-tomcat web applications. |
15 | non-tomcat web applications. |
16 | 16 | ||
17 | Transaction control for listeners. |
17 | Transaction control for listeners. |
18 | 18 | ||
19 | +/- Save user id for all db-update operations. |
19 | +/- Save user id for all db-update operations. |
20 | 20 | ||
21 | Set 'editor' for an object by loading and not require it for each property change? |
21 | Set 'editor' for an object by loading and not require it for each property change? |
22 | Then problem with objects inside (lazy loaded) collections. |
22 | Then problem with objects inside (lazy loaded) collections. |
23 | 23 | ||
24 | Specification for the model. |
24 | Specification for the model. |
25 | 25 | ||
26 | Test cases for model, based on the specification. Check all bound conditions |
26 | Test cases for model, based on the specification. Check all bound conditions |
27 | - e.g. security exceptions. Write a complete scenario to start with default database; |
27 | - e.g. security exceptions. Write a complete scenario to start with default database; |
28 | login as admin, create users, domains, logout; login as normal user, |
28 | login as admin, create users, domains, logout; login as normal user, |
29 | create/delete/modify mailboxes and aliases etc. |
29 | create/delete/modify mailboxes and aliases etc. |
30 | 30 | ||
31 | Test cases for actions, not so detailed as for the model |
31 | Test cases for actions, not so detailed as for the model |
32 | (because it makes no sense to parse html pages). |
32 | (because it makes no sense to parse html pages). |
33 | The scenario for the model test can be used. |
33 | The scenario for the model test can be used. |
34 | 34 | ||
35 | +/- Cascade object deletion, confirmation page. |
35 | +/- Cascade object deletion, confirmation page. |
36 | 36 | ||
37 | Mail aliases are not cascade deleted by deleting connected mail box. |
37 | Mail aliases are not cascade deleted by deleting connected mail box. |
38 | 38 | ||
39 | Check passwords quality (make a separate project for this). |
39 | Check passwords quality (make a separate project for this). |
40 | 40 | ||
41 | Show filters, search. |
41 | Show filters, search. |
42 | 42 | ||
43 | +/- Sort options for lists. |
43 | +/- Sort options for lists. |
44 | 44 | ||
45 | Allow to use existing system users: enter uid or name only, check in system for full |
45 | Allow to use existing system users: enter uid or name only, check in system for full |
46 | information. |
46 | information. |
47 | Import users from system - separate page. |
47 | Import users from system - separate page. |
48 | 48 | ||
49 | Allow admin to define default language for server and domain. |
49 | Allow admin to define default language for server and domain. |
50 | 50 | ||
51 | Show domain for user which is in the domain. |
51 | Show domain for user which is in the domain. |
52 | 52 | ||
53 | Check, if it's possible to create (or change) an object by admin that the object's owner |
53 | Check, if it's possible to create (or change) an object by admin that the object's owner |
54 | is not allowed to see it. |
54 | is not allowed to see it. |
55 | 55 | ||
56 | Check maxlength. |
56 | Check maxlength. |
57 | 57 | ||
58 | Handle list of physical servers and allow to assign domains/users/etc to different |
58 | Handle list of physical servers and allow to assign domains/users/etc to different |
59 | servers. |
59 | servers. |
60 | 60 | ||
61 | Make hierarchy of domains (forest). |
61 | Make hierarchy of domains (forest). |
62 | 62 | ||
63 | Allow user to create domains (?) and subdomains in his domains. |
63 | Allow user to create domains (?) and subdomains in his domains. |
64 | 64 | ||
65 | Catch-all mail alias. Only one per domain. |
65 | Catch-all mail alias. Only one per domain. |
66 | 66 | ||
67 | +/- Basic scripts to push changes to the system. |
67 | +/- Basic scripts to push changes to the system. |
68 | 68 | ||
69 | If mailbox is created, create an user and a mail alias for it in one step - as option. |
69 | If mailbox is created, create an user and a mail alias for it in one step - as option. |
70 | Afterwards they are binded and change own name or deleted together. Bind by name? In witch directions? |
70 | Afterwards they are binded and change own name or deleted together. Bind by name? In witch directions? |
71 | 71 | ||
72 | By building cascade delete tree replace existing objects if new effect is stronger. |
72 | By building cascade delete tree replace existing objects if new effect is stronger. |
73 | 73 | ||
74 | Sort the cascade delete tree. |
74 | Sort the cascade delete tree. |
75 | 75 | ||
76 | Limit deep of cascade by 'before delete'. |
76 | Limit deep of cascade by 'before delete'. |
77 | 77 | ||
78 | Add/delete passwords stores of existing DB objects if they are changed in config. |
78 | Add/delete passwords stores of existing DB objects if they are changed in config. |
79 | If at least one store is reversable, set password in the new stores. |
79 | If at least one store is reversable, set password in the new stores. |
80 | 80 | ||
81 | Double check concurency update. |
81 | Double check concurency update. |
82 | 82 | ||
83 | Study Hibernate behavior if it cannot save some information - seems to be not recoverable, |
83 | Study Hibernate behavior if it cannot save some information - seems to be not recoverable, |
84 | restart needed. |
84 | restart needed. |
85 | 85 | ||
86 | Done |
86 | Done |
87 | ---------------------------------------------------------------------------------------------------------------- |
87 | ---------------------------------------------------------------------------------------------------------------- |
88 | 88 | ||
89 | + Track database structure version. |
89 | + Track database structure version. |
90 | 90 | ||
91 | + Listeners for all operations. |
91 | + Listeners for all operations. |
92 | 92 | ||
93 | + User login history. |
93 | + User login history. |
94 | 94 | ||
95 | + I18n. Switch language of page on the fly. Save selection in DB for each user. |
95 | + I18n. Switch language of page on the fly. Save selection in DB for each user. |
96 | 96 | ||
97 | + Taglig to show ActionMessages in right way (add it to the StrutsX project). |
97 | + Taglig to show ActionMessages in right way (add it to the StrutsX project). |
98 | 98 | ||
99 | + Multi-page lists. |
99 | + Multi-page lists. |
100 | 100 | ||
101 | + Store user and malbox passwords in several forms; e.g. clear text, md5, encrypt. Allow |
101 | + Store user and malbox passwords in several forms; e.g. clear text, md5, encrypt. Allow |
102 | admin to specify which forms to use. |
102 | admin to specify which forms to use. |
103 | 103 | ||
104 | + Change db version to store minor version - changes which don'T affect functioonality, |
104 | + Change db version to store minor version - changes which don'T affect functioonality, |
105 | e.g. indexes. |
105 | e.g. indexes. |
106 | 106 | ||
107 | + Config in one place. Allow configuration of each listener. |
107 | + Config in one place. Allow configuration of each listener. |
108 | 108 | ||
109 | + Split model and store. |
109 | + Split model and store. |
110 | 110 | ||
111 | + Different user name schemes, not only user@domain. Define an interface to allow admin |
111 | + Different user name schemes, not only user@domain. Define an interface to allow admin |
112 | implement an own one. Implement a few common ones. |
112 | implement an own one. Implement a few common ones. |
113 | 113 | ||
114 | + Split CoreResources.properties to several files. |
114 | + Split CoreResources.properties to several files. |
115 | 115 | ||
116 | + Change shell password for system user if its owner's password is changed (?). - available via listener. |
116 | + Change shell password for system user if its owner's password is changed (?). - available via listener. |