typo correction
[Packages/TYPO3.CMS.git] / TODO.txt
index d413800..4ebf65f 100755 (executable)
--- a/TODO.txt
+++ b/TODO.txt
@@ -1,6 +1,10 @@
-******************
-TODO LIST
-*****************
+*******************************************
+TODO LIST for the Core of TYPO3.
+
+Maintained by Kasper
+Do not modify without permission!
+*******************************************
+
 
 General:
 - CHECK: What is the number of supported page levels? 20 or 100?
@@ -37,7 +41,7 @@ TCEmain:
        - Transformation API: Implement the possibility of custom to/from transformations for the "user" type (or any field?)
        - Selector box type:
                - MM support for strings
-       - Support for MM-records which does NOT get deleted, but is kept... and then support for having data in those!!
+       - Support for MM-records which does NOT get deleted, but is kept... and then support for having data in those!! NOTE 3/12 04: This will cause severe problems in the import/export interface and probably many other places where the MM relations are stored only as the uid of another table and nothing more. That makes it impossible to track the record in the middle....
        - Support that the content of a single field can be stored in an external file instead.
        - Support that a list of fields can be stored in an external XML file instead.
        - Record Reference tracking in a table in TCEmain; Used to:
@@ -131,6 +135,7 @@ TCEforms:
                - "readonly" flag, or user group dependant. See "Message-Id: <200210241441.50295.r.fritz@colorcube.de>"
        - ? type:
                - "Inverse relations"/"Foreign relations": A "Pseudo field", which lists records REFERING TO this record (foreign relations, eg. many small price-records belonging to ONE shop-article). Possibly this could also EDIT those references (attaching/adding new, removing old, no manual ordering though! - This is what RENE is doing (Message-Id: <E17LO4D-0002hj-00@cube.colorcube>)
+       - Concealed password fields, support for two fields with the same password being submitted... (JavaScript evaluated?)
 - BUGS:
        - Ask to save record when you want to add a category with the "Plus" icon.
        - CHECK: ###STORAGE_PID### incorrectly calculated?
@@ -170,6 +175,7 @@ Localization:
 
 Context Sensitive Help (CSH):
 - Add multimedia?
+- Special Glossary Support?
 
 WEB main module/page tree:
 - Option: For a frameset module, register the ID per sub-module, not just globally (see JH mail: Message-ID: <C018FF617C61AB4588D15494126A5C0F1F67AB@Soulman.hanno-kirchhoff.de>)
@@ -189,7 +195,7 @@ Web>List:
 - FlexForm tree view / editing:
        - When a record contains a FlexForm the web>List module could display the fields inside in a nice tree structure which one could expand/collapse! Then by clicking "edit" for a brand you get an interface where you can edit *that branch* of the flexform! Brilliant way to manage large structures inside of flexforms!
                - Can you picture it? That would be like expanding an XML document by a node-tree and add/edit/delete/rearrange any of the internal informational pieces!
-- Fikse copy/paste så at list-module reloader (løser også problemet med paste fra sidetræet/foldertræet?)
+- Fikse copy/paste s�at list-module reloader (lser ogs�problemet med paste fra sidetr�t/foldertr�t?)
 
 File>List:
 - BUG: UNIX: "RW" flag looks only on the permissions for the USER - not the group. So even if PHP via the group of a file can delete it, it is reported that it cannot.
@@ -253,6 +259,16 @@ Extensions:
 
 
 
+*****************
+PHP issues
+*****************
+Generally: TYPO3 works with PHP5. But...:
+- UTF-8 strings to freetype doesn't work! Renders box instead.
+- array_merge must always have arrays as arguments. When this problem is found in TYPO3 it is regarded a TYPO3 bug and we fix it.
+- Errors regarding treating strings as arrays: Normally, just check if the variable is an array first.
+       - Details: Non-existing indexes is not a problem if the variable is unset - only if it is another type (eg. string). This means we can normally just check if the first index is an array and it will work: is (is_array($a) && $a[key1][key2][key3]) ...
+
+
 
 *****************
 NOTES
@@ -287,6 +303,7 @@ Status 27/10 (TYPO3 Core + extensions "cms" and "lang" in sysext/ (but without g
 - 2000 @param and @return tags in 800 functions still needs commenting (3800 tags in 1400 functions has already been done)
 - 50 scripts still needs cleaning for XHTML, comments and single-quotes
 
+
 Note on XHTML compliance:
 - We strive for XHTML transitional / frames
 - Certain incompatibilities has been allowed for practical reasons (for now). These include:
@@ -303,6 +320,68 @@ NOTES ABOUT WHICH SCRIPTS HAS BEEN CLEANED AND WHICH REMAINS:
 Finished (XHTML, quotes, comments, revised-note), XQCR:
 (Indented scripts are still missing clean-up)
 
+typo3/___________________________________________:
+XQCR: alt_clickmenu.php
+XQCR: alt_db_navframe.php
+XQCR: alt_doc.php              TODO: Check "redirect" GPvar for XSS hole!?
+XQCR: alt_doc_nodoc.php
+XQCR: alt_file_navframe.php
+XQCR: alt_intro.php
+XQCR: alt_main.php
+XQCR: alt_menu.php
+XQCR: alt_menu_sel.php
+XQCR: alt_mod_frameset.php
+XQCR: alt_palette.php
+XQCR: alt_shortcut.php
+XQCR: alt_toplogo.php
+XQCR: alt_topmenu_dummy.php
+XQCR: browse_links.php
+XQCR: browser.php
+XQCR: class.alt_menu_functions.inc
+XQCR: class.db_list.inc
+XQCR: class.db_list_extra.inc
+XQCR: class.file_list.inc
+XQCR: class.show_rechis.inc
+XQCR: db_list.php
+XQCR: db_new.php
+XQCR: db_new_content_el.php
+default.htm
+default.html
+XQCR: dummy.php
+XQCR: file_edit.php
+XQCR: file_list.php
+XQCR: file_newfolder.php
+XQCR: file_rename.php
+XQCR: file_upload.php
+XQCR: index.php                TODO: Check "redirect" GPvar for XSS hole!?
+-QC-: index_re.php
+-Q-R: init.php
+XQCR: listframe_loader.php
+XQCR: login_frameset.php
+-QC-: logout.php               TODO: Check "redirect" GPvar for XSS hole!?
+XQCR: move_el.php
+XQCR: show_item.php
+XQCR: show_rechis.php
+-QCR: tce_db.php
+-QCR: tce_file.php
+XQCR: template.php
+XQCR: view_help.php
+XQCR: wizard_add.php
+XQCR: wizard_colorpicker.php
+XQCR: wizard_edit.php
+XQCR: wizard_forms.php
+XQCR: wizard_list.php
+XQCR: wizard_rte.php
+XQCR: wizard_table.php
+XQCR: wizard_tsconfig.php
+
+XQCR: mod/help/about/index.php:
+XQCR: mod/tools/em/index.php
+XQCR: mod/web/info/index.php
+XQCR: mod/web/func/index.php
+XQCR: mod/web/perm/index.php
+
+
 t3lib/________________________________________:
 XQCR: t3lib/class.t3lib_admin.php
 XQCR: t3lib/class.t3lib_arraybrowser.php
@@ -315,42 +394,43 @@ XQCR: t3lib/class.t3lib_clipboard.php
 -QC-: t3lib/class.t3lib_cs.php
 XQCR: t3lib/class.t3lib_diff.php
 XQCR: t3lib/class.t3lib_div.php
-               t3lib/class.t3lib_dmailer.php   [Jan-Erik?]
-               t3lib/class.t3lib_exec.php              [Rene]
+               t3lib/class.t3lib_dmailer.php                   [Jan-Erik!]
+               t3lib/class.t3lib_exec.php                              [Rene]
 -QCR: t3lib/class.t3lib_extfilefunc.php
 -QCR: t3lib/class.t3lib_extmgm.php
 -QCR: t3lib/class.t3lib_extobjbase.php
 XQCR: t3lib/class.t3lib_foldertree.php
 -QCR: t3lib/class.t3lib_formmail.php
-               t3lib/class.t3lib_fullsearch.php
-               t3lib/class.t3lib_htmlmail.php  [Jan-Erik?]
+               t3lib/class.t3lib_fullsearch.php                [Kasper]
+               t3lib/class.t3lib_htmlmail.php                  [Jan-Erik?]
 XQCR: t3lib/class.t3lib_iconworks.php
-               t3lib/class.t3lib_install.php
+-QCR: t3lib/class.t3lib_install.php
 -QCR: t3lib/class.t3lib_loaddbgroup.php
 -QCR: t3lib/class.t3lib_loadmodules.php
 -QCR: t3lib/class.t3lib_matchcondition.php
-               t3lib/class.t3lib_modsettings.php       [Rene]
+-QCR: t3lib/class.t3lib_modsettings.php
 XQCR: t3lib/class.t3lib_page.php
 XQCR: t3lib/class.t3lib_pagetree.php
 XQCR: t3lib/class.t3lib_parsehtml.php
 XQCR: t3lib/class.t3lib_parsehtml_proc.php
 XQCR: t3lib/class.t3lib_positionmap.php
-               t3lib/class.t3lib_querygenerator.php
+               t3lib/class.t3lib_querygenerator.php    [Kasper]
 -QCR: t3lib/class.t3lib_readmail.php
 XQCR: t3lib/class.t3lib_recordlist.php
 -QCR: t3lib/class.t3lib_scbase.php
+               t3lib/class.t3lib_sqlengine.php                 [Kasper/Karsten?]
 -QCR: t3lib/class.t3lib_stdgraphic.php
 XQCR: t3lib/class.t3lib_superadmin.php
-               t3lib/class.t3lib_svbase.php            [Rene]
--QCR: t3lib/class.t3lib_tceforms.php
-               t3lib/class.t3lib_tcemain.php
+               t3lib/class.t3lib_svbase.php                    [Rene]
+-QCR: t3lib/class.t3lib_tceforms.php                   [Kasper]
+               t3lib/class.t3lib_tcemain.php                   [Kasper]
 XQCR: t3lib/class.t3lib_timetrack.php
 -QCR: t3lib/class.t3lib_transferdata.php
 XQCR: t3lib/class.t3lib_treeview.php
 XQCR: t3lib/class.t3lib_tsfebeuserauth.php
 -QCR: t3lib/class.t3lib_tsparser.php
-               t3lib/class.t3lib_tsparser_ext.php
-               t3lib/class.t3lib_tsstyleconfig.php
+               t3lib/class.t3lib_tsparser_ext.php              [Kasper]
+               t3lib/class.t3lib_tsstyleconfig.php             [Kasper]
 -QCR: t3lib/class.t3lib_tstemplate.php
 XQCR: t3lib/class.t3lib_userauth.php
 XQCR: t3lib/class.t3lib_userauthgroup.php
@@ -364,9 +444,6 @@ XQCR: template.php
 -QCR: t3lib/stddb/tbl_be.php
 
 
-sysext/lang/___________________________________________:
-XQCR: lang.php
-
 sysext/cms/___________________________________________:
 XQCR: tslib/class.tslib_content.php
 XQCR: tslib/class.tslib_fe.php
@@ -405,148 +482,51 @@ XQCR: layout/db_layout.php
 XQCR: layout/class.tx_cms_layout.php
 XQCR: layout/db_new_content_el.php
 
-typo3/___________________________________________:
-XQCR: alt_clickmenu.php
-XQCR: alt_db_navframe.php
-XQCR: alt_doc.php              TODO: Check "redirect" GPvar for XSS hole!?
-XQCR: alt_doc_nodoc.php
-XQCR: alt_file_navframe.php
-XQCR: alt_intro.php
-XQCR: alt_main.php
-XQCR: alt_menu.php
-XQCR: alt_menu_sel.php
-XQCR: alt_mod_frameset.php
-XQCR: alt_palette.php
-XQCR: alt_shortcut.php
-XQCR: alt_toplogo.php
-XQCR: alt_topmenu_dummy.php
-XQCR: browse_links.php
-XQCR: browser.php
-XQCR: class.alt_menu_functions.inc
-XQCR: class.db_list.inc
-XQCR: class.db_list_extra.inc
-XQCR: class.file_list.inc
-XQCR: class.show_rechis.inc
-XQCR: db_list.php
-XQCR: db_new.php
-XQCR: db_new_content_el.php
-default.htm
-default.html
-XQCR: dummy.php
-XQCR: file_edit.php
-XQCR: file_list.php
-XQCR: file_newfolder.php
-XQCR: file_rename.php
-XQCR: file_upload.php
-XQCR: index.php                TODO: Check "redirect" GPvar for XSS hole!?
--QC-: index_re.php
--Q-R: init.php
-XQCR: listframe_loader.php
-XQCR: login_frameset.php
--QC-: logout.php               TODO: Check "redirect" GPvar for XSS hole!?
-XQCR: move_el.php
-XQCR: show_item.php
-XQCR: show_rechis.php
--QCR: tce_db.php
--QCR: tce_file.php
-XQCR: template.php
-XQCR: view_help.php
-XQCR: wizard_add.php
-XQCR: wizard_colorpicker.php
-XQCR: wizard_edit.php
-XQCR: wizard_forms.php
-XQCR: wizard_list.php
-XQCR: wizard_rte.php
-XQCR: wizard_table.php
-XQCR: wizard_tsconfig.php
-
-XQCR: mod/help/about/index.php:
-XQCR: mod/tools/em/index.php
-XQCR: mod/web/info/index.php
-XQCR: mod/web/func/index.php
-XQCR: mod/web/perm/index.php
-
 
 typo3/sysext/___________________________________________:
-               install/        [ingmar]
+OK             aboutmodules/
+               belog                   (2 / 500)
+                       - Needs a vision! Couldn't the Log be more useful?
+               beuser                  (1 / 1300)
+                       - Add option to Create backend users there! (backend users, groups, filemounts)
 OK             cms/
+OK             context_help/
+               css_styled_content              (1/200)         [H]
+                       - Manual written?
+XQCR:  extra_page_cm_options/
+XQCR:  func_wizards/
+XQC-:  impexp
+               indexed_search          (4/3500)
+                       - Templates?
+                       - Speedoptimizations?
+                       - Kasper has some objections regarding complex code parts.
+XQCR   info_pagetsconfig/
+               install/                                        [ingmar]
+                       - Clean-up of the Install Tool in general!
 OK             lang/
+               lowlevel                        (2/800)
+                       - Extend support and finish it with the efforts soon to be done for TCEmain.
 OK             setup/
-XQCR:  func_wizards/
+?              sv/                                                     [Rene]
+               sys_action                      (1/400)
+                       - Extend with API for adding custom action scripts
+                       - flexforms for configuration!
+OK             sys_note
+               taskcenter                      (4/400) [Julle]
+OK             tsconfig_help
+                       - Needs maintenance plan
+               version                         [Kasper]
+                       - (See Kaspers personal todo and Appendix about versioning in this document)
+               viewpage                        (2/200)
 XQRC:  wizard_crpages/
 XQRC:  wizard_sortpages/
-XQCR:  extra_page_cm_options/
-OK             aboutmodules/
-OK             install/                                                        + class.t3lib_install.php / class.t3lib_superadmin.php
-XQCR   info_pagetsconfig/
-OK             context_help/
 
 
-typo3/ext/_____________________________________:
-               belog/          (2 / 500)
-               beuser/         (1 / 1300)
-               cms_plaintext_import/   (1/200)
-OK             conf_userts/
-               css_styled_content/             (1/200)         [H]
-               direct_mail/            (3/2500)                [Jan-Erik] + class.t3lib_htmlmail.php
-OK             direct_mail_subscription/
-               extrep_wizard/          (2/4500)                [H]
-               feuser_admin/                                           [testsite...] - XHTML
-               freesite/                       (2/1600)
-               imagelist/                      (1/250)
-               impexp/                         (2/2000)                [H]
-               indexed_search/         (4/3500)                [H] [testsite...]
-               lowlevel/                       (2/800)                 [H]
-XQ-R:  metatags/
-               phpmyadmin/                     (1/130)
-               plugin_mgm/                     (1/300)         ->move? remove?
-               quickhelp/                      (1/80)
-               rte/                            (5/1900)                [H]
-OK             rte_conf/
-OK             setoldpluginlist/
-OK             skin1/
-OK             static_file_edit/
-               sys_action/                     (1/400)
-               sys_messages/           (1/450)
-OK             sys_note/
-               sys_notepad/            (1/130)
-OK             sys_stat/
-               sys_todos/                      (1/1100)
-OK             sys_workflows/
-               taskcenter/                     (4/400)
-               taskcenter_modules/             (1/100)
-               taskcenter_recent/              (1/150)
-               taskcenter_rootlist/    (1/50)
-               tipafriend/                             (1/260)         [testsite...]
-OK             tsconfig_help/
-OK             ts_language_de/
-OK             ts_language_dk/
-OK             ts_language_fr/
-OK             ts_language_nl/
-OK             ts_language_no/
-               tstemplate/                             (1/450)         + class.t3lib_tsparser_ext.php (1700)
-               tstemplate_analyzer/    (1/250)
-               tstemplate_ceditor/             (1/250)
-               tstemplate_info/                (1/450)
-               tstemplate_objbrowser/  (1/500)
-               tstemplate_styler/              (1/1700)
-OK             tt_address/
-               tt_board/                               (3/1200)
-               tt_calender/                    (1/170)         [testsite...]
-               tt_guest/                               (2/350)         [testsite...]
-               tt_news/                                (1/750)         [testsite...]
-               tt_poll/                                (2/400)         [testsite...], [Rene F]
-               tt_products/                    (5/2000)        [testsite...], [? Peter Kuehn]
-               tt_rating/                              (3/550)         [testsite...], [Rene F]
-               viewpage/                               (2/200)
-
-32,5 K Codes lines....
-
 For all extensions (even those approved):
 - Remember to add package tags to all classes!
-- Write documentation for each
+- Write documentation for each (CSH is fine enough).
 - Check HTML source / CSS usage / XHTML compliancy / That icons are skinnable (add to "skin360")
-- $LANG->getLL() are htmlspecialchars()'ed
+- $LANG->getLL() are htmlspecialchars()'ed / second argument is "1"
 
 
 
@@ -671,7 +651,7 @@ Authors: Julle and Kasper.
 ******************
 APPENDIX: Charsets
 ******************
-In TYPO3s backend charsets used has traditionally been the the charset of the backend user language. This is of course a big problem (when other than western european languages are involved) since the encoding of content is thus depending on the charset of the user and not of the system
+In TYPO3s backend charsets used have traditionally been the charset of the backend user language. This is of course a big problem (when other than western european languages are involved) since the encoding of content is thus depending on the charset of the user and not of the system
 From TYPO3 3.6.0 you can define a global charset for the whole database. This can be any local charset like iso-8859-1 or windows-1250. But for multilingual sites it is recommended to use utf-8 since that can represent all languages.
 You set the global charset in a localconf file like this: $TYPO3_CONF_VARS["BE"]["forceCharset"] = "utf-8";
 
@@ -767,6 +747,17 @@ General Crawler ("crawler"):
        - From session log we can read out the status-arrays of the threads and display in backend (handler shows as it likes.)
        - Start / stop crawler session
 
+For indexing (and caching and publishing!) we basically need to configure traversal through configurable paramters like:
+       - id
+       - type
+       - L (sys_language)
+       - MP (?)
+       - Simulate user logins (eg. sending "no-login", "user:kasper, password=blabla", "user:homer, password=blabla2")
+       - Additional parameter ranges per page (eg. "tx_myext[var1] : 1-7   AND tx_myext[var1] : 0,1 ")
+       - Command parameter like "&DO_INDEX=1" or "&RECACHE=1" (or both!)
+
+       - Use CLI script for crawler?
+
 __________________________________________-
 CACHE MANAGEMENT EXTENSION
 
@@ -945,3 +936,51 @@ Innovation, brainstorming for future
 - Backend for PDAs/Lynx
 
 
+
+
+*********************************
+Translation of Backend
+*********************************
+Overview of missing translations. (UPDATED 18/11 after major change to ll-XML and csh_* language packs)
+Numbers are new labels needing translation (changed labels are not measured)
+
+- dk [Danish]          55
+- de [German]          9
+- no [Norwegian]       57
+- it [Italian]         9
+- fr [French]          36
+- es [Spanish]         63
+- nl [Dutch]           9
+- cz [Czech]           9
+- pl [Polish]          9
+- si [Slovenian]       90
+- fi [Finnish]         9
+- tr [Turkish]         9
+- se [Swedish]         9
+- pt [Portuguese]      136
+- ru [Russian]         79
+- ro [Romanian]                74
+- ch [Chinese (Simpl)] 282
+- sk [Slovak]          188
+- lt [Lithuanian]      142
+- is [Icelandic]       624
+- hr [Croatian]                121
+- hu [Hungarian]       9
+- gl [Greenlandic]     1031
+- th [Thai]                    141
+- gr [Greek]           1262
+- hk [Chinese (Trad)]  168
+- eu [Basque]          938
+- bg [Bulgarian]       319
+- br [Brazilian Portuguese]    15
+- et [Estonian]                243
+- ar [Arabic]          691
+- he [Hebrew]          153
+- ua [Ukrainian]       662
+- lv [Latvian]         307
+- jp [Japanese]                1261
+- vn [Vietnamese]      1245
+- ca [Catalan]         1262
+- ba [Bosnian]         141
+- kr [Korean]          1262
+