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