Ok, overspoken. I'm going to write my basic CMS Concept here, and let us see what happens then. My Multilanguage Frontend Engine has even finished, but still needs a nice Admin Frontend to do the translation of the Frontend.
Ok, lets start. Later I will tell some about the things which I could not really understand yet, maybe somebody is able to help. Tasks of the CMS (I called it freecon, dont know if there is something similar): 1. Template Engine 2. Design Management 3. Article Management 4. Content Management 5. User Management 6. Customer Management 7. Message Management 1. The "Template Engine" should help developers to easy build Websites based on the CMS. The only Thing the Developer has to do, is to develop an static HTML Webpage Design and replace all the Visitor viewable and Admin viewable textparts with special "CMS Based Tags". As there is possibility to write parts of the CMS as Modules, it would be very nice if fx. the customer login could consist of a small code sniped and a border (Table and Images fx.) so the developer can easely change the design of the page, probably with the "Design Management". 2. The Design Management is part of the Administration Kit for the CMS. With this tool you should be able to change the Design of the Templates and if you used the "CMS Based Tags" you should be able to upload new parts of the homepage design and change the hole page look, with a few mouseclicks. So there has be an Design Table in the Database or an configuration file, where all the Imageparts are stored and together build the page look and feel. The CSS Stylesheet should the be changeable to a lot of forms, seen in phpbb or other nice templated website tools. 3. The Article Management should be part of the Admin Interface where you can deside, of which parts an article should be consist. Fx. an Article could possibly consist of an Headline, Introduction, Shortdescription, Description, 1 Image, 2 Images and much more. So it would be nice, if the Admin could give some orders on which parts a text may consist of and which design you should be able to chose from. When you want to write a new Newstext and the Admin decided that newstexts should consist of an headline and a short description toghether with the maximum of 1 Picture, you will chose when you want to create the text in which language you want to create it and you will enter an custom frontend for the article, where only the form fields are visible you may use to write the article, when you wanted you create the article in more than one language, you will able to choose if you want to see all forms. (I mean for the different translations on one page or you will be able to enter the translate mode, where you will see fx, headline in english and an empty headline form below for Italian language, But Later Ill explain more about the article mana- gement). I choosed to do it in this way, because it will reduce the space needed by the database enormously, because there is an table which only holds the head- lines, in all languages, and another one only holds the introductions, in all langua- ges, and so on. 4. The Content Management, I started to explain in 3. a little about how it should work. Now I will get a little deeper into it. When your Chief decides that you should write an article, he starts entering a new title or headline for the task and sets the priority and chooses in which language the article should be translated in. After he did this, he chooses between his em- ployes who should write this article, if he doesnt direktly choose one, he can choose the knowledge which the employe needs to have (At this point fits the usermanagement I'll explain later). After he has did all this, one or a couple of of employes will receive an email, that there is a new task to do. When the Chief only choosed one special employe only one will get the message on the other hand of he choosed somebody who knows a lot about PHP and there are ten people in the company who know a lot of php all these ten people will receive the message unless one of the does not speak or is able to write text in one of the needed languages. When of of the employes enters the page, the first thing he will look at is is task pool. In the Task are stored all undone articles who need to be written. After the employe(from now on just called user) did chose one of the tasks from the todo list the article will dis- apear from all the other user pools. Till the first text in any of the chosed languages is written completely the text will only apear in the tasks/todo list of the authoring user. after this text has finished the author can choose, based on the user management, which user or users are able to write the translations to the other languages. If the text has to be translated into english, german, italian und french the user can choose between one out of all french speaking and one of all italian speakin users or just send to text to all french or italian speaking users pool (With all other languages it works the in the same way). After the other users have done there translation works the main author, the one who have made the first version of the text will receive all translations and can deside if the article is ready to be published. The pool is ordered by the priority and date of the tasks. While authoring the article the author can make some decitions about the design of the article based on the decitions the administrator made about the basic part design of the article. To come back to the newstext example the Administrator decided that newstext consists of an headline, and shortdesciption and about one image (Which is not a must) and choosed between some possible article templates, the author is able to upload one Image, which will be brought into the right size and form, with use of the imagemagick library, and can choose between the admin choosen design templates for the view of the article. I hope you all could follow until now. 5. The User Management is an part of the administration, where every user has to fill out an userprofile, where all informations about there language ablilities and authorities are stored, which will be used in the Content Management, for deciding if a user is able to do an translation or writing the first part of a text. When a new user or employe enters the company and is able to speak a for the CMS unknown language, he should automatically get offered a form where he can decide in from which language he wants to translate the website frontends into the unknown language. Working this way will give the CMS the ablility to learn more and more languages, and will make the website a real globetrotter by any means necessary ;)). 6. The Customer Management, stores all given Informations about the Frontend Visitors after they have decided, to enter the needed login informations to become a member of something which the company or community decides to be able to give membership for. Later on, I would like to include some Onlineshopping Modules and Imagelibrary Modules so the hole CMS will be able to fullfill E-Commerce requests too, instead of just jugling around with a lot of informations. 7. The Message Management is the part of the CMS which is used whenever a E-Mail, or possibly SMS is to be send to the Users, whenever new tasks apear in there pool, maybe this is pulling a lot of nerves, when you always enter the CMS and somebody was even faster than you and the task is already gone in you pool, so this feature should be able to be switched off too.