i have been asked to develop a website either in php or in one of java techonologies ( struts or jsp) the very important point in this site is that it has the following features...
1)the will be used for any purpose ( i mean still now there is no specification for the purpose of this project ) it may be news site or university site ... or thing else
2)the administrator of the site will not be having the knowledge of computer languages which means that he is not well known with html or css or php or java technolgies so we have to provide him with all the functions so that he should be able to manage the site without calling the programmers.
2)the administrator of the site will be having the rights to create new templates , those new templates are a series of wizards to follow in which the administrator can select new things like ( background of the site , font type , advertisement photos direction ( right or left ),.... ), so once the administrator finished the creation of the template , he can view it and save it existing templates...
the administrator will be having the rights to edit and change those templates also
3) the templates made by the administrator will be available for the users to be used ( but not to be edited or deleted).
4)each end user will be having account ( user name and password)
5) there will be default template which will be apply to the website for whole the users as default template ( take example the background is green , font type is arial ....)
6)both the administrator and the end user will be having the rights to change the default template of the website into one of the existing templates (templates which made by the administrator)
but note that , the the administrator can login and change the defualt template to tempalate no 2 so the website will viewed for him using template2 and at the same time it might be the end user 1 will be login but he can apply template no 5 so a the same time they are using the website and for both of them they are using different templates.
7) the end user will be having the rights to made his own template ( so he can do exactly like what the the administrator did in step 2) but the difference is only that the template made by the end user will be available only to the end user who created the template and for the administrator of the site but it will not be available for other end users ).
the end user can also have the rights to edit/delete the template ( but as we said only his own templates)
8)so if the end user want to change the default template of the site , he can have one of the following choices
a) either to select one of the existing templates made by the administrator
b) he can create his own template and save to the system and then apply it to the website
9) the administrator of the site will be having the rights to edit/delete all the kind of the templates ( either created by himself or by or by end users ).
my question is
1)i need it urgently how i can implement that , i thought to make the templates inside css so that each template will be stored separetly in css sheet , but how about the editing of the template i will not be able to read the contents of the css and then update it again
2) how the administrator will manage the templates
3)is there any API (AJAX API,jsf or java based API) to apply the templates to the website and is there any API to manage the templates of the site
please reply me i need it urgently