Documentation

Markers

Table of Contents

core/API.php 1
core/ClassLoader/ClassLoader.class.php 2
core/CompressedList.class.php 1
core/Config/Controller/Config.class.php 10
core/Config/Model/Entity/ConfigArray.class.php 1
core/ContentManager/Controller/ContentManager.class.php 2
core/ContentManager/Controller/EsiWidgetController.class.php 2
core/ContentManager/Controller/JsonContentManager.class.php 1
core/ContentManager/Controller/JsonPage.class.php 6
core/ContentManager/Model/Entity/Node.class.php 1
core/ContentManager/Model/Entity/Page.class.php 8
core/ContentManager/Model/Repository/NodeRepository.class.php 2
core/ContentManager/Model/Repository/PageRepository.class.php 5
core/ContentWorkflow/Controller/ContentWorkflow.class.php 1
core/Core/Controller/ComponentController.class.php 2
core/Core/Controller/ComponentHandler.class.php 1
core/Core/Controller/Cx.class.php 31
core/Core/Model/Entity/AdminNavigation.class.php 5
core/Core/Model/Entity/EntityBase.class.php 1
core/Core/Model/Entity/ReflectionComponent.class.php 12
core/Core/Model/Entity/SystemComponentBackendController.class.php 1
core/Core/Model/Entity/SystemComponentController.class.php 2
core/Core/Model/Repository/SystemComponentRepository.class.php 2
core/Country/Controller/Country.class.php 1
core/Creditcard.class.php 1
core/DataSource/Model/Entity/DoctrineRepository.class.php 2
core/DateTime/Controller/ComponentController.class.php 11
core/DateTime/Controller/EsiWidgetController.class.php 1
core/Error/Controller/Error.class.php 2
core/Event/Model/Entity/DefaultEventListener.class.php 1
core/Filetype.class.php 1
core/Html/Controller/ComponentController.class.php 1
core/Html/Controller/FormGenerator.class.php 13
core/Html/Controller/ViewGenerator.class.php 12
core/Html/Controller/ViewGeneratorJsonController.class.php 2
core/Html.class.php 12
core/Init.class.php 7
core/Json/JsonData.class.php 2
core/JsonData/Controller/ComponentController.class.php 7
core/LanguageManager/Controller/ComponentController.class.php 3
core/LanguageManager/Controller/EsiWidgetController.class.php 3
core/LinkSanitizer.class.php 1
core/Locale/Controller/BackendController.class.php 1
core/Locale/Controller/ComponentController.class.php 1
core/MailTemplate/Controller/MailTemplate.class.php 11
core/MediaSource/Model/Entity/FileSystem.interface.php 6
core/MediaSource/Model/Entity/LocalFileSystem.class.php 5
core/MediaSource/Model/Entity/MediaSource.class.php 2
core/MediaSource/Model/Entity/MediaSourceManager.class.php 2
core/MediaSource/Model/Entity/ThumbnailGenerator.class.php 1
core/MediaSource/Model/Event/IndexerSearchResultEventListener.class.php 1
core/Message/Controller/ComponentController.class.php 1
core/Message.class.php 5
core/Model/Controller/YamlDriver.class.php 1
core/Model/Controller/YamlRepository.class.php 2
core/Model/Model/Event/LoggableListener.class.php 1
core/Model/Model/Repository/LogEntryRepository.class.php 3
core/ModuleChecker.class.php 2
core/Navigation.class.php 2
core/Net/Controller/ComponentController.class.php 6
core/NetManager/Controller/ComponentController.class.php 3
core/NetManager/Model/Event/CacheTtlUpdateEventListener.class.php 1
core/PageTree/NavigationPageTree.class.php 2
core/PageTree/PageTree.class.php 1
core/PageTree/XmlSitemapPageTree.class.php 1
core/paging.class.php 2
core/Routing/Controller/BackendController.class.php 1
core/Routing/Controller/ComponentController.class.php 11
core/Routing/Model/Entity/Request.class.php 4
core/Routing/Resolver.class.php 14
core/Routing/Url.class.php 9
core/Security/Controller/ComponentController.class.php 4
core/Session/Model/Entity/Session.class.php 1
core/Setting/Controller/Setting.class.php 14
core/Setting/Model/Entity/DbEngine.class.php 6
core/Setting/Model/Entity/Engine.class.php 1
core/Setting/Model/Entity/EngineInterface.interface.php 1
core/Setting/Model/Entity/FileSystem.class.php 6
core/Setting/Model/Entity/Setting.class.php 2
core/Setting/Model/Entity/YamlEngine.class.php 6
core/SmtpSettings.class.php 1
core/Sorting.class.php 1
core/Tree.class.php 6
core/Usercache/Controller/Usercache.class.php 3
core/validator.inc.php 1
core/View/Controller/ComponentController.class.php 3
core/ViewManager/Controller/ViewManager.class.php 1
core_modules/Access/Controller/Access.class.php 2
core_modules/Access/Controller/AccessBlocks.class.php 1
core_modules/Access/Controller/AccessLib.class.php 1
core_modules/Access/Controller/AccessManager.class.php 12
core_modules/Access/Controller/ComponentController.class.php 1
core_modules/Access/Controller/RandomEsiWidgetController.class.php 3
core_modules/Alias/Controller/AliasLib.class.php 1
core_modules/Alias/Controller/AliasManager.class.php 2
core_modules/BlockEditor/Controller/ComponentController.class.php 9
core_modules/BlockEditor/Model/Entity/BlockType.class.php 2
core_modules/BlockEditor/Model/Entity/InlineTool.class.php 4
core_modules/Cache/Controller/Cache.class.php 1
core_modules/Cache/Controller/CacheLib.class.php 9
core_modules/Cache/Controller/ComponentController.class.php 1
core_modules/Cache/Model/Event/CoreEntityBaseEventListener.class.php 1
core_modules/Contact/Controller/Contact.class.php 11
core_modules/Contact/Controller/ContactLib.class.php 3
core_modules/Contact/Controller/ContactManager.class.php 3
core_modules/Contact/Model/Entity/FormTemplate.class.php 1
core_modules/DataAccess/Controller/CliOutputController.class.php 1
core_modules/DataAccess/Controller/ComponentController.class.php 3
core_modules/GeoIp/Controller/ComponentController.class.php 1
core_modules/License/Controller/ComponentController.class.php 2
core_modules/License/License.class.php 1
core_modules/License/LicenseManager.class.php 1
core_modules/License/Version.class.php 2
core_modules/License/versioncheck.php 1
core_modules/Listing/Controller/ListingController.class.php 4
core_modules/Listing/Model/Entity/CsvInterface.class.php 4
core_modules/Listing/Model/Entity/DataSet.class.php 6
core_modules/Listing/Model/Entity/LegacyYamlInterface.class.php 1
core_modules/Login/Controller/Login.class.php 1
core_modules/Login/Controller/LoginManager.class.php 3
core_modules/Media/Controller/MediaLibrary.class.php 1
core_modules/Media/Controller/MediaManager.class.php 2
core_modules/MediaBrowser/Controller/JsonMediaBrowser.class.php 1
core_modules/MediaBrowser/Model/Entity/MediaBrowserPageTree.class.php 9
core_modules/News/Controller/ComponentController.class.php 3
core_modules/News/Controller/EsiWidgetController.class.php 2
core_modules/News/Controller/News.class.php 4
core_modules/News/Controller/NewsLibrary.class.php 12
core_modules/News/Controller/NewsManager.class.php 9
core_modules/News/Controller/NewsRecentComments.class.php 2
core_modules/News/Model/Event/NewsEventListener.class.php 4
core_modules/Pdf/Model/Entity/PdfDocument.class.php 1
core_modules/Privacy/Controller/BackendController.class.php 1
core_modules/Privacy/Controller/EsiWidgetController.class.php 2
core_modules/Search/Controller/Search.class.php 1
core_modules/Stats/Controller/Stats.class.php 2
core_modules/Sync/Controller/ComponentController.class.php 4
core_modules/SysLog/Controller/ComponentController.class.php 1
core_modules/Uploader/Controller/JsonUploader.class.php 2
core_modules/Widget/Controller/ComponentController.class.php 1
core_modules/Widget/Controller/EsiWidgetController.class.php 2
core_modules/Widget/Controller/RandomEsiWidgetController.class.php 1
core_modules/Widget/Model/Entity/EsiWidget.class.php 1
lib/FRAMEWORK/cxjs/ContrexxJavascript.class.php 3
lib/FRAMEWORK/DateTimeTools.class.php 3
lib/FRAMEWORK/DBG/DBG.php 6
lib/FRAMEWORK/FileSystem/File.class.php 1
lib/FRAMEWORK/FileSystem/FileSystem.class.php 5
lib/FRAMEWORK/FWUser.class.php 4
lib/FRAMEWORK/Image.class.php 24
lib/FRAMEWORK/Javascript.class.php 5
lib/FRAMEWORK/Language.class.php 3
lib/FRAMEWORK/MXLookup.class.php 1
lib/FRAMEWORK/Net/Model/Entity/Uri.class.php 2
lib/FRAMEWORK/Net/Model/Entity/Url.class.php 5
lib/FRAMEWORK/ReverseProxy/Model/Entity/SsiProcessor.class.php 1
lib/FRAMEWORK/System.class.php 1
lib/FRAMEWORK/UpdateUtil.class.php 4
lib/FRAMEWORK/User/User.class.php 13
lib/FRAMEWORK/User/User_Profile.class.php 1
lib/FRAMEWORK/User/User_Profile_Attribute.class.php 3
lib/FRAMEWORK/User/User_Setting.class.php 1
lib/FRAMEWORK/User/UserGroup.class.php 1
lib/FRAMEWORK/Validator.class.php 8
model/entities/Cx/Model/Base/EntityBase.class.php 1
modules/Block/Controller/Block.class.php 1
modules/Block/Controller/BlockLibrary.class.php 2
modules/Block/Controller/ComponentController.class.php 1
modules/Block/Controller/JsonBlockController.class.php 1
modules/Calendar/Controller/Calendar.class.php 4
modules/Calendar/Controller/CalendarEvent.class.php 1
modules/Calendar/Controller/CalendarEventManager.class.php 1
modules/Calendar/Controller/CalendarHeadlines.class.php 1
modules/Calendar/Controller/CalendarLibrary.class.php 2
modules/Calendar/Controller/CalendarMailManager.class.php 1
modules/Calendar/Controller/CalendarRegistrationManager.class.php 1
modules/Calendar/Controller/ComponentController.class.php 1
modules/Calendar/Controller/EsiWidgetController.class.php 2
modules/Calendar/Controller/JsonCalendarController.class.php 1
modules/Calendar/Controller/MailRecipient.class.php 1
modules/Calendar/Model/Entity/Category.class.php 4
modules/Calendar/Model/Entity/Event.class.php 6
modules/Crm/Controller/CrmLibrary.class.php 1
modules/Downloads/Controller/Category.class.php 1
modules/Downloads/Controller/Downloads.class.php 2
modules/Downloads/Controller/DownloadsLibrary.class.php 2
modules/Downloads/Controller/DownloadsManager.class.php 4
modules/FileSharing/Controller/FileSharing.class.php 3
modules/Gallery/Controller/Gallery.class.php 1
modules/Gallery/Controller/GalleryManager.class.php 6
modules/MediaDir/Controller/BackendController.class.php 1
modules/MediaDir/Controller/ComponentController.class.php 6
modules/MediaDir/Controller/MediaDirectoryEntry.class.php 3
modules/MediaDir/Controller/MediaDirectoryInputfield.class.php 1
modules/MediaDir/Controller/MediaDirectoryLibrary.class.php 4
modules/MediaDir/Controller/MediaDirectoryManager.class.php 3
modules/MediaDir/Controller/MediaDirectoryPlaceholder.class.php 1
modules/MediaDir/Model/Entity/MediaDirectoryInputfield.class.php 7
modules/MediaDir/Model/Entity/MediaDirectoryInputfieldFile.class.php 2
modules/MediaDir/Model/Entity/MediaDirectoryInputfieldImage.class.php 2
modules/MediaDir/Model/Entity/MediaDirectoryInputfieldWysiwyg.class.php 2
modules/Newsletter/Controller/Newsletter.class.php 11
modules/Newsletter/Controller/NewsletterLib.class.php 9
modules/Newsletter/Controller/NewsletterManager.class.php 37
modules/Shop/Controller/Attribute.class.php 5
modules/Shop/Controller/Attributes.class.php 1
modules/Shop/Controller/Cart.class.php 7
modules/Shop/Controller/Coupon.class.php 2
modules/Shop/Controller/CsvImport.class.php 2
modules/Shop/Controller/Currency.class.php 6
modules/Shop/Controller/Customer.class.php 5
modules/Shop/Controller/Mail.class.php 7
modules/Shop/Controller/Manufacturer.class.php 5
modules/Shop/Controller/Order.class.php 3
modules/Shop/Controller/Orders.class.php 12
modules/Shop/Controller/PriceList.class.php 1
modules/Shop/Controller/Product.class.php 3
modules/Shop/Controller/Products.class.php 1
modules/Shop/Controller/Shipment.class.php 1
modules/Shop/Controller/Shop.class.php 33
modules/Shop/Controller/ShopLibrary.class.php 1
modules/Shop/Controller/ShopManager.class.php 25
modules/Shop/Controller/ShopSettings.class.php 2
modules/Shop/payments/dummy/Dummy.class.php 1
modules/Shop/payments/saferpay/Saferpay.class.php 2
modules/Shop/payments/yellowpay/Yellowpay.class.php 1

API.php

Type Line Description
TODO 128 Change the system to use the new, static class method, then remove this one.

ClassLoader.class.php

Type Line Description
TODO 658 $useCustomizing does not work correctly if legacy is enabled
TODO 171 Use Composer's class autoloading for libraries

CompressedList.class.php

Type Line Description
TODO 91 Add better Examples

Config.class.php

Type Line Description
TODO 65 Edit PHP DocBlocks!
TODO 633 Instead of including the sections of other components directly here, we should implement an event that other components can listen to and use to register their configuration sections.
TODO 1262 see CLX-3407
TODO 1284 add settings option as UDP would be better in general
TODO 1289 we should first fetch the current nameservers of $domain
TODO 1347 compare with actual result of internal command call to 'help Data'
TODO 1462 this should be done in the model-event-listener
TODO 1479 this should be done in the model-event-listener
TODO 1564 this should be done in the model-event-listener
TODO 2057 only perform this operation not before the preInit hook

ConfigArray.class.php

Type Line Description
TODO 68 This is a workaround for JSON-encoded values. See CLX-4345

ContentManager.class.php

Type Line Description
TODO 452 move including of add'l JS dependencies to cx obj from /cadmin/index.html
TODO 465 move including of add'l JS dependencies to cx obj from /cadmin/index.html

EsiWidgetController.class.php

Type Line Description
TODO 223 handle shop navigation
TODO 232 handle subnavigation

JsonContentManager.class.php

Type Line Description
TODO 108 Move this method to the ContentManager class and use it everywhere

JsonPage.class.php

Type Line Description
TODO 134 Clean up usage of $param
TODO 204 Clean up usage of $param and $_GET
TODO 959 This method should be called using the Plain output module and should then response with {@see \Cx\Core\Routing\Model\Entity\Response::send()}
TODO 939 should we allow filter/callback fns in field processing above?
TODO 1014 This breaks paging
TODO 1105 add functionality for $page!=null (see below), DRY up #getFallbackPageArray

Node.class.php

Type Line Description
TODO 417 This hack should not be part of this method. Do move it to a

Page.class.php

Type Line Description
TODO 924 Move this method to CM!
TODO 1191 Drop $module verification here. Instead implement proper model association to {@see \Cx\Core\Core\Model\Entity\SystemComponent}
TODO 1191 Setting {static::$module} to an empty string is non-sense. This property must be migrated to a proper association. See CLX-4198
TODO 1214 Returning an empty string for non-application is non-sense. This must be migrated to a proper association that would return null. See CLX-4198
TODO 1960 Define what to do if destination lang is not the fallback of $this->getLang() (always follow fallbacks or do not copy content)
TODO 2459 do something more sensful than checking for module
TODO 997 this needs to be read-only; values are set through active/display setters
TODO 2302 This hack should not be part of this method. Do move it to a

NodeRepository.class.php

Type Line Description
TODO 131 DO NOT use NestedTreeRepository->getRootNodes(), it needs a lot of RAM, implement own query to get all root nodes
TODO 147 This does only work for root node by now

PageRepository.class.php

Type Line Description
TODO 211 Instead of casting $cmd to string here, we must ensure that all method-calls do properly pass $cmd as string.
TODO 352 Remembering virtual pages is no longer necessary, rewrite method to create new virtual pages
TODO 595 remove this method
TODO 685 use this everywhere (resolver!)
TODO 690 basically the method \Cx\Core\ContentManager\Model\Entity\Page::cutTarget() would provide us a ready to use $crit array

ContentWorkflow.class.php

Type Line Description
TODO 61 Edit PHP DocBlocks!

ComponentController.class.php

Type Line Description
TODO 48 ' &' should not be here and instead be a flag for cx (i.e.: ./cx -async <params>)
TODO 48 we should allow overriding the call using event system (for cloud)

ComponentHandler.class.php

Type Line Description
TODO 105 Read component list from license (see $this->components for why we didn't do that yet)

Cx.class.php

Type Line Description
TODO 106 Remove all instances of "global" or at least move them to a single place
TODO 1280 Find a way to store configuration by avoiding global variables
TODO 1317 Throw exception instead of calling die()
TODO 1390 Move to \Cx\Core\Routing\Model\Entity\Request and convert into a non-static method
TODO 1722 Implement protocol and domain adjustments as rewrite rules. See CLX-5700.
TODO 1864 Remove deprecated elements
TODO 1864 Remove usage of globals
TODO 2300 Avoid this! All this should be part of some components hook
TODO 2377 Implement resolver for backend
TODO 2377 Is this useful in CLI mode?
TODO 2455 Remove usage of globals
TODO 2470 Remove usage of globals
TODO 2525 Does this even make any sense? Couldn't simply everything be set after content parsing?
TODO 2525 Remove usage of globals
TODO 2548 Write a method, that only returns the content, in order to allow usage in CLI mode
TODO 2548 Remove usage of globals
TODO 2730 Remove usage of globals
TODO 2970 Remove usage of globals
TODO 316 In stage 3 of command mode value is currently fixed to self::SUB_STAGE_PRE_RESOLVE.
TODO 403 Update FWSystem
TODO 1488 is this actually the cause of the CSRF missing issue?
TODO 1786 drop call to http_response_code() along with the manual hack
TODO 2049 see CLX-1856 on how this whole initialization must be refactored/improved
TODO 2349 this constanst used to be located in config/set_constants.php, but needed to be relocated to this very place,
TODO 2489 Move template initialization to here instead
TODO 2509 Remove language selector for modules which require navigation but bring their own language management.
TODO 2862 drop in CLX-1707
TODO 2945 Remove this after CLX-4059 is implemented
TODO 3018 The following code should be moved to ComponentController of Wysiwyg component.
TODO 3116 This function call returns the empty string -- always! What's the use?
TODO 3242 workaround as $this->resolvedPage is not set when cached page is loaded

AdminNavigation.class.php

Type Line Description
TODO 99 Find a better way to load administration-things
TODO 651 Load icon from component (if set)
TODO 879 This list should not exist and should be solved differently!
TODO 880 See CLX-5246
TODO 902 See CLX-5249

EntityBase.class.php

Type Line Description
TODO 51 Implement virtual entity feature (as seen on ContentManager's Page)

ReflectionComponent.class.php

Type Line Description
TODO 327 This should not do any FS action as these should be done by GIT or `cx env component`. Instead, this should do initializations like settings, DB tables, entries in modules and component tables, ...
TODO 327 Uninstall should do the opposite of what's described above
TODO 327 DB stuff (structure and data)
TODO 327 check dependency versions
TODO 327 activate templates
TODO 757 Apparently unused; drop?
TODO 788 Backend navigation entry from meta.yml (rxqcmv1)
TODO 788 Pages from meta.yml (rxqcmv1)
TODO 1387 Test removing components tables (including doctrine schema)
TODO 1387 This contains duplicate code with $this->deactivate()
TODO 66 Wouldn't it be better to move this to Component class?
TODO 374 templates need to be activated too!

SystemComponentBackendController.class.php

Type Line Description
TODO 98 $this->cx->getTemplate()->setVariable() should not be called here but in Cx class

SystemComponentController.class.php

Type Line Description
TODO 583 This is currently only available in "frontend" mode.
TODO 103 This needs to be fixed

SystemComponentRepository.class.php

Type Line Description
TODO 355 Re-enable for all modes.
TODO 169 merge this case with code below

Country.class.php

Type Line Description
TODO 421 init country list

Creditcard.class.php

Type Line Description
TODO 51 Test!

DoctrineRepository.class.php

Type Line Description
TODO 521 Check relations
TODO 774 This slows down operations considerably. As we do not currently have a

ComponentController.class.php

Type Line Description
TODO 231 Drop argument $locale. As soon as the Locale component does provide the ability to load language files, the argument $locale must be dropped. The Locale component must itself figure out which language files it must load.
TODO 231 Migrate code that loads the language files (InitCMS::loadLangFile()) to use the Locale component as soon as the Locale provides such a method.
TODO 283 Not yet implemented
TODO 326 Not yet implemented
TODO 329 Not yet implemented
TODO 330 Not yet implemented
TODO 331 Not yet implemented
TODO 346 implement
TODO 352 implement
TODO 357 implement
TODO 361 implement

EsiWidgetController.class.php

Type Line Description
TODO 72 move the required language variables to component DateTime

Error.class.php

Type Line Description
TODO 79 Is this deprecated?
TODO 93 Handle more errors.

DefaultEventListener.class.php

Type Line Description
TODO 59 Using current() here is a bug and leads to arguments not being passed

Filetype.class.php

Type Line Description
TODO 462 Add proper names for the file types

ComponentController.class.php

Type Line Description
TODO 100 It might make sense to add a scope param and move this to a more generic location.

FormGenerator.class.php

Type Line Description
TODO 347 Return type can be null, should this throw an exception instead?
TODO 479 Return type is inconsistent. Needs to be DataElement always!
TODO 479 Return type can be null, should this throw an exception instead?
TODO 1332 this only works with single valued identifiers
TODO 526 This shouldn't happen
TODO 573 Wrong return type
TODO 745 Wrong return type
TODO 932 Wrong return type
TODO 942 Wrong return type
TODO 1002 Wrong return type
TODO 1010 Wrong return type
TODO 1084 Wrong return type
TODO 1272 Handle this case as we'll otherwise probably run out of memory

ViewGenerator.class.php

Type Line Description
TODO 43 Refactor
TODO 43 Currently, composite primary keys cannot be handled
TODO 373 In some cases the initialization order differs and this
TODO 640 only check for indexes that can be set
TODO 816 Check if this is triggered for DataSet
TODO 1263 order fields. Can't be done reliably here as field order depends
TODO 1288 $this->object should always be a dataset!
TODO 1478 This is quite a simple way of solving this
TODO 1518 Should keep params of other VG instances
TODO 2007 Use this:
TODO 2009 Drop the following:
TODO 2011 only check for indexes that can be set

ViewGeneratorJsonController.class.php

Type Line Description
TODO 398 This should trigger an async job
TODO 398 ViewGenerator config should be taken into account (exclude fields)

Html.class.php

Type Line Description
TODO 452 Maybe the optional attributes will never be used and can be removed?
TODO 1454 There should be an unchecked icon other than "pixel.gif"
TODO 92 Find a better icon for this
TODO 245 Add this exeption to other elements
TODO 280 Add this exeption to other elements
TODO 316 Add this exeption to other elements
TODO 547 Add this exeption to other elements
TODO 679 Add this exeption to other elements
TODO 924 Add sensible defaults for mandatory options *only*
TODO 1102 Add an option to set the separator or to reposition the labels
TODO 1374 This loop is always the same for all jQuery stuff; create a method
TODO 1637 I should probably wrap this in contrexx_raw2xhtml()

Init.class.php

Type Line Description
TODO 63 Any methods handling content or language should be moved away from here to a distinct class!
TODO 63 Most if not all of the properties and methods are potentially static.
TODO 131 what is this used for?
TODO 196 this is obsolete, isn't it?
TODO 1022 we must load the language specified by $path
TODO 1029 we must load the language specified by $path
TODO 1309 Workaround for Widget parsing.

JsonData.class.php

Type Line Description
TODO 120 Adapter loading could be optimized
TODO 400 Support cookies (to allow login and similiar features)

ComponentController.class.php

Type Line Description
TODO 111 This should be moved to command mode initialization
TODO 112 Instead of finishing the request early it should skip
TODO 165 This should be moved to command mode handling, see above
TODO 234 move this code to /core/Json/...
TODO 235 handle expired sessions in any xhr callers.
TODO 237 Verify that the arguments are actually present!
TODO 240 Replace arguments by something reasonable

ComponentController.class.php

Type Line Description
TODO 242 Does language list only for now. Update as soon as locales are available
TODO 268 this is a workaround
TODO 277 migrate to $this->cx->getResponse()->getLocaleAlternateUrl($lang)

EsiWidgetController.class.php

Type Line Description
TODO 102 this is a workaround
TODO 252 this is a workaround
TODO 309 this is a workaround

LinkSanitizer.class.php

Type Line Description
TODO 254 this is basically wrong as question marks are valid

BackendController.class.php

Type Line Description
TODO 1143 this should be done dynamically

ComponentController.class.php

Type Line Description
TODO 76 Get rid of InitCMS class

MailTemplate.class.php

Type Line Description
TODO 57 Test!
TODO 365 Hard to decide which should be mandatory, as any of them may
TODO 575 Fix the regex to produce proper "CR/LF" in any case.
TODO 689 Comment for test only!
TODO 694 $objMail->send() seems to sometimes return true on localhost where
TODO 927 Field verification
TODO 1066 TEMPORARY
TODO 1468 Add support for tooltips
TODO 1469 Add support for blocks
TODO 1555 Wrong; might stripslashes() again later, yielding wrong results
TODO 1606 Primary keys with a length (like "key(32)") are not supported

FileSystem.interface.php

Type Line Description
TODO 53 Implement a driver structure to allow efficient cross FS operations
TODO 53 Create a path helper class to sanitize paths
TODO 96 Extension "Dir" could be ambiguous
TODO 96 Sanitize files named "datainfo"
TODO 114 Specify whether moving accross FS should be supported by this method
TODO 151 Reverse engineer or remove, seems to be unused

LocalFileSystem.class.php

Type Line Description
TODO 286 check whether $file is part of this FS
TODO 456 Sanitize $directory
TODO 542 This shouldn't be possible, drop this method
TODO 450 Implement getLink() method.
TODO 521 This is a hack to make theme mediasource work.

MediaSource.class.php

Type Line Description
TODO 471 Chunked upload is untested and will most likely not work
TODO 532 This currently only works for indexers that use the default index table. To allow other ways of storage a storage driver should be introduced. Indexers using the same storage driver could then still be queried at once.

MediaSourceManager.class.php

Type Line Description
TODO 127 This is a dirty hack to allow the API control over permissions. As soon as DataSource can load the correct MediaSource instance directly, this should be removed.
TODO 281 The naming of this method is misleading as it does not return multiple paths as the method name woudl suggest.

ThumbnailGenerator.class.php

Type Line Description
TODO 381 there should be an option that lets the admin set which

IndexerSearchResultEventListener.class.php

Type Line Description
TODO 49 Drop this code!

ComponentController.class.php

Type Line Description
TODO 66 This would better be handled by the Message class

Message.class.php

Type Line Description
TODO 50 Distinguish between flash and deferred messages
TODO 306 Add the missing classes CLASS_INFO and CLASS_WARN to the backend views
TODO 306 Unify the placeholders, and add the message block
TODO 342 Unify this placeholder once the type is available:
TODO 349 Make this unconditional once the block is generally available

YamlDriver.class.php

Type Line Description
TODO 384 We should cache $enums, but this method is called before

YamlRepository.class.php

Type Line Description
TODO 70 Make thread safe. The current implementation of YamlRepository does not take the case into account if the repository gets modified by a parallel operation. Changes made by a parallel operation will be discarded,merged or overwritten. The behavior is unknown!
TODO 70 Either drop this class or convert its storage format from plain PHP objects to normalized data. See CLX-3825

LoggableListener.class.php

Type Line Description
TODO 81 As metadata needs to be read for this we should cache the result

LogEntryRepository.class.php

Type Line Description
TODO 66 Fix CLX-1776 and return number of total results as well
TODO 223 Fix wrong paging for action 'deleted'
TODO 223 Convert this method into a generic implementation for models which are using an editingStatus.

ModuleChecker.class.php

Type Line Description
TODO 164 what is the proper syntax for non-empty values?
TODO 165 add additional check for module != NULL

Navigation.class.php

Type Line Description
TODO 120 add comment to why the subnavigation will need the rootNode
TODO 127 drop this case as soon as NAVBAR_FILE (and related) have been

ComponentController.class.php

Type Line Description
TODO 137 Net model operations should be dropped and instead be provided through the data api.
TODO 289 This method should do validation and throw an error if $name is not valid
TODO 418 Implement all record types
TODO 564 Implement all record types
TODO 633 Implement all record types
TODO 643 ?

ComponentController.class.php

Type Line Description
TODO 273 This method does not work correctly if Cache component is not available
TODO 752 Validate actual record $spf instead of currently published DNS record
TODO 723 Maybe reload usages to ensure we do not have a caching problem

CacheTtlUpdateEventListener.class.php

Type Line Description
TODO 47 This currently always keeps all entries. We need to find a way to drop/refresh them

NavigationPageTree.class.php

Type Line Description
TODO 125 invisible childs
TODO 129 navigation_id

PageTree.class.php

Type Line Description
TODO 138 Virtual pages!

XmlSitemapPageTree.class.php

Type Line Description
TODO 234 setting the proper protocol should be done in Url::fromPage()

paging.class.php

Type Line Description
TODO 206 This is a temporary solution for setting HEAD_INCLUDES.
TODO 231 we should use $objInit->userFrontendLangId instead of getLangDir()

BackendController.class.php

Type Line Description
TODO 71 This is used as a temporary workaround to set user titles of fieldnames If BackendTable and FormGenerator use a sensful format for getting the fieldname titles (/headers), this can be removed.

ComponentController.class.php

Type Line Description
TODO 100 Implement protocol and domain adjustments as rewrite rules. See CLX-5700.
TODO 170 drop call to http_response_code() along with the manual hack
TODO 241 drop call to http_response_code() along with the manual hack
TODO 284 drop call to http_response_code() along with the manual hack
TODO 301 The registration of widgets must not be done here.
TODO 325 Once each componet will have implemented a proper resolve hook
TODO 342 note: the registration of the CANONICAL_LINK widget must be moved
TODO 354 CLX-2483 rollout: remove
TODO 375 CLX-2483 rollout: add
TODO 377 CLX-2483 rollout: DONE
TODO 383 Once each component will have implemented a proper resolve hook

Request.class.php

Type Line Description
TODO 273 This should be based on a member variable instead of superglobal
TODO 284 This should be based on a member variable instead of superglobal
TODO 304 Code copied from Init.class.php, there might be a better way to detect this
TODO 371 Code copied from Init.class.php, there might be a better way to detect this

Resolver.class.php

Type Line Description
TODO 1401 Remove this method as soon as legacy request are no longer possible
TODO 251 The check for the virtual lang dir is wrong as url->getLangDir(true)
TODO 329 This should not be done here!
TODO 380 history (empty($history) ? )
TODO 392 should this check (for type 'application') moved to \Cx\Core\ContentManager\Model\Entity\Page::getCmd()|getModule() ?
TODO 424 question: what do we need this for? I think there is no need for this (had been added in r15026)
TODO 471 analyze those, take action.
TODO 481 history
TODO 483 refactor system to be able to remove this backward compatibility
TODO 488 This was disabled during codebase sync. Re-enable. Commit ID a32378e
TODO 549 this should be handled by the affected components themself
TODO 602 There are cases where an alias exists for a page on the first level with
TODO 605 FRONTEND_LANG_ID should not be used here. It is only set if we're within an
TODO 842 add check for endless/circular redirection (a -> b -> a -> b ... and more complex)

Url.class.php

Type Line Description
TODO 53 Edit PHP DocBlocks!
TODO 73 Edit PHP DocBlocks!
TODO 73 This class does not properly handle question marks in query strings. According to the RFC ( https://tools.ietf.org/html/rfc3986#section-3.4), question marks are valid characters within the query string. Therefore, all operations on the question mark '?' character in this class must be reviewed and where applicable being fixed. See CLX-1780 for associated issue in LinkSanitizer.
TODO 569 This method should return {@see \Cx\Core\Routing\Url::pathPart} instead.
TODO 591 Throw exception in case $path contains query or fragment part. See CLX-3931
TODO 932 There could be more than one page using the same module and cmd per lang
TODO 968 This method does what the constructor of a clean Url class should do!
TODO 98 Implement protocol support (at the moment only http is supported)
TODO 1089 set protocol based on mode and protocol configuration

ComponentController.class.php

Type Line Description
TODO 797 Remove report-only from backend
TODO 1022 Extend to backend
TODO 577 rename option to 'cspForFetchDirectives'
TODO 1039 we should migrate all inline events so that we can drop unsafe-hashes

Session.class.php

Type Line Description
TODO 894 We should return the actual number of removed sessions here

Setting.class.php

Type Line Description
TODO 55 Edit PHP DocBlocks!
TODO 71 Edit PHP DocBlocks!
TODO 581 Add functionality to handle arrays within arrays
TODO 581 Add functionality to handle special form elements
TODO 581 Verify special values like e-mail addresses in methods that store them, like add(), update(), and updateAll()
TODO 1010 Use {@see \Cx\Core\MediaSource\Model\Entity\MediaSource} for file manipulation instead of using \Cx\Lib\FileSystem\FileSystem. See CLX-3079
TODO 1376 Untested! May or may not work as described.
TODO 741 this might be dangerous! should be rewritten probably
TODO 1020 You *MUST* call this yourself *before* in order to
TODO 1063 Test if this works in all browsers:
TODO 1073 Noop is not implemented in File::upload_file_http()
TODO 1079 Add error message
TODO 1117 this is a workaround for CLX-5922.
TODO 1136 we should use the MediaSource file

DbEngine.class.php

Type Line Description
TODO 55 Edit PHP DocBlocks!
TODO 171 These messages are inapropriate when settings are stored by another piece of code, too.
TODO 209 Add error messages for individual errors
TODO 280 Error message
TODO 462 Error message
TODO 496 The index array structure is wrong here!

Engine.class.php

Type Line Description
TODO 55 Edit PHP DocBlocks!

EngineInterface.interface.php

Type Line Description
TODO 55 Edit PHP DocBlocks!

FileSystem.class.php

Type Line Description
TODO 55 Edit PHP DocBlocks!
TODO 194 These messages are inapropriate when settings are stored by another piece of code, too.
TODO 199 Add error messages for section errors
TODO 204 Add error messages for setting array errors
TODO 239 Add error messages for individual errors
TODO 285 Error message

Setting.class.php

Type Line Description
TODO 343 Add support for currently unsupported types
TODO 390 Add support for currently unsupported types

YamlEngine.class.php

Type Line Description
TODO 55 Edit PHP DocBlocks!
TODO 198 These messages are inapropriate when settings are stored by another piece of code, too.
TODO 203 Add error messages for section errors
TODO 208 Add error messages for setting array errors
TODO 254 Add error messages for individual errors
TODO 311 Error message

SmtpSettings.class.php

Type Line Description
TODO 50 Edit PHP DocBlocks!

Sorting.class.php

Type Line Description
TODO 457 I guess that it's better to leave it to another piece of code

Tree.class.php

Type Line Description
TODO 83 this conversion is a hack. in the final dump, we'll have module names instead of ids in the module attribute.
TODO 84 this means we will need to do exactly the opposite conversion (module2id)
TODO 96 'catid' => $page->getId(),
TODO 98 'parcat' => 0,
TODO 110 'frontend_access_id' => 0,
TODO 112 'backend_access_id' => 0,

Usercache.class.php

Type Line Description
TODO 41 Refactor the code and clean up
TODO 314 Migrate to Memcached::increment() once the $initial_value is supported by the PECL extension.
TODO 332 Migrate to Memcached::increment() once the $initial_value is supported by the PECL extension.

validator.inc.php

Type Line Description
TODO 376 Check for event handlers

ComponentController.class.php

Type Line Description
TODO 158 Replace Request and Page by Response once it's used in the system
TODO 213 Replace Request and Page by Response once it's used in the system
TODO 253 Replace Request and Page by Response once it's used in the system

ViewManager.class.php

Type Line Description
TODO 1950 This should get superseded by CLX-4610

Access.class.php

Type Line Description
TODO 899 Migrate this code to an event listener as soon as User is a proper doctrine entity
TODO 940 Migrate this code to an event listener as soon as User is a proper doctrine event

AccessBlocks.class.php

Type Line Description
TODO 282 Implement feature to filter by filter group placeholder (see fetchGroupFilter())

AccessLib.class.php

Type Line Description
TODO 55 This is probably not meant to be public, but protected instead

AccessManager.class.php

Type Line Description
TODO 258 BETA-status
TODO 873 handle broken pages differently
TODO 1806 Never used
TODO 2129 BETA-status
TODO 2466 // if (\FWSystem::getBytesOfLiteralSizeFormat($_POST['accessMaxProfilePicSize']) != $arrSettings['max_profile_pic_size']['value']) {
TODO 2503 // if (\FWSystem::getBytesOfLiteralSizeFormat($_POST['accessMaxPicSize']) != $arrSettings['max_pic_size']['value']) {
TODO 3100 $objAttribute is never used
TODO 3103 $objAttribute is never used
TODO 3319 Do you really need to reinitialize that?
TODO 3434 I suppose that the imported file is ISO-8859-1 or so
TODO 3478 Make new Users active or inactive?
TODO 3514 Shall I do this?

ComponentController.class.php

Type Line Description
TODO 402 in ESI request mode is MODE_MINIMAL.

RandomEsiWidgetController.class.php

Type Line Description
TODO 121 Add support for subwidgets
TODO 64 should we not load the ARRAYLANG and CORELANG language data here??
TODO 126 this is a workaround

AliasLib.class.php

Type Line Description
TODO 47 Edit PHP DocBlocks!

AliasManager.class.php

Type Line Description
TODO 47 Edit PHP DocBlocks!
TODO 288 Use param $page (to update a page without prividing an id per GET)

ComponentController.class.php

Type Line Description
TODO 161 merge with loadBlocks()
TODO 161 improve caching
TODO 192 merge with loadInlineTools()
TODO 192 Only the individual block configs are cached so far. Also cache the list of blocks
TODO 223 Maybe move this to /Model/Repository/BlockRepository
TODO 256 Get foldername and prefix based on tool directly
TODO 138 Cache the result of this method in usercache
TODO 140 Check list of directories. Allow registering additional directories
TODO 145 Do this using filesystem abstraction

BlockType.class.php

Type Line Description
TODO 253 cast to array or object
TODO 376 if this block type has style or script:

InlineTool.class.php

Type Line Description
TODO 43 Most methods could probably be moved to Tool if this was made an abstract class
TODO 242 cast to array or object
TODO 283 Re-implement nested blocks
TODO 305 if this inline tool has style or script:

Cache.class.php

Type Line Description
TODO 405 this is a workaround, as most components do still set their headers directly

CacheLib.class.php

Type Line Description
TODO 55 Descriptions are wrong. What is it really?
TODO 926 Only drop this specific content instead of complete cache
TODO 173 $dynVars needs to be built dynamically (via event handler)
TODO 228 $dynFuncs needs to be built dynamically (via event handler)
TODO 251 drop this code as soon as strftime of DateTime
TODO 522 force usage of OPcache. See CLX-5257
TODO 596 force usage of OPcache. See CLX-5257
TODO 1556 we should pass $cx as argument to internalEsiParsing()
TODO 1603 Somehow FRONTEND_LANG_ID is sometimes undefined here...

ComponentController.class.php

Type Line Description
TODO 124 This is a workaround for Doctrine's result query cache.

CoreEntityBaseEventListener.class.php

Type Line Description
TODO 53 This is a workaround for Doctrine's result query cache.

Contact.class.php

Type Line Description
TODO 49 Edit PHP DocBlocks!
TODO 381 check if _uploadFiles does something dangerous with $arrFormData['fields'] (this is raw data!)
TODO 429 implement browser option
TODO 562 this does not work for certain reloads - add cleanup routine
TODO 947 check if we have to excape $arrRecipients later in the code
TODO 952 check if the label of upload-fields are taken into account as well
TODO 1030 parse TH row instead
TODO 1032 add visual horizontal line
TODO 1066 check for XSS
TODO 1138 this is some fixed plaintext message data -> must be ported to html body
TODO 1335 $this->arrFormfields contains the labels of the form fields in raw format. That means that this array might contain some special characters that might brake the regular expression. Therefore, we must add a regular expression string sanitizer here.

ContactLib.class.php

Type Line Description
TODO 1522 The javascript code must be loaded using JS:registerCode()
TODO 1480 what is with legacyMode uploads??
TODO 1540 do we have to change FRONTEND_LANG_ID to selectedInterfaceLanguage ?

ContactManager.class.php

Type Line Description
TODO 891 this might be a bug. Shouldn't this be the MAX(of used IDs) when modifying a form
TODO 1841 The following is a work-around to avoid empty labels.
TODO 2122 Use octal notation for special characters in regexes!

FormTemplate.class.php

Type Line Description
TODO 1267 this should not be done here but in session directly. See CLX-5834

CliOutputController.class.php

Type Line Description
TODO 205 add option to break long lines after some chars

ComponentController.class.php

Type Line Description
TODO 1226 Implement "older than"...
TODO 1294 Drop this method as soon as the OpenAPI parser does support multilines.
TODO 1060 should check if the PUT/POST/PATCH request contains data (fields)

ComponentController.class.php

Type Line Description
TODO 199 ESI variable should be registered in another way

ComponentController.class.php

Type Line Description
TODO 121 reenable in CLX-4195
TODO 141 Deactivated license check for now. Implement new behavior.

License.class.php

Type Line Description
TODO 468 reenable in CLX-4195

LicenseManager.class.php

Type Line Description
TODO 73 reenable in CLX-4195

Version.class.php

Type Line Description
TODO 110 Update to current version, found in wiki
TODO 122 Update to current version, found in wiki

versioncheck.php

Type Line Description
TODO 29 reenable in CLX-4195

ListingController.class.php

Type Line Description
TODO 282 This does not work yet
TODO 283 JsonData->json() expects a Response object
TODO 463 If $this->searchFields is empty allow all
TODO 473 Since we don't know how related data is presented we

CsvInterface.class.php

Type Line Description
TODO 63 Add "" around values containing separator
TODO 63 Add support for different charsets, since CSV does not declare which one to use Please note that Excel uses tab as delimiter if charset is unicode and semikolon for ANSI charsets
TODO 84 Add "" around values containing separator
TODO 84 Add support for different charsets, since CSV does not declare which one to use Please note that Excel uses tab as delimiter if charset is unicode and semikolon for ANSI charsets

DataSet.class.php

Type Line Description
TODO 369 Fix CLX-5705 so that we can set a proper return type.
TODO 391 Fix CLX-5705 so that we can set a proper return type.
TODO 507 Fix CLX-5705 so that we can set a proper return type.
TODO 718 Rethink this method, DataSet is always iterable, this is a general helper method
TODO 412 temporarily deactivated. Re-enable once CLX-4352 is implemented
TODO 631 {@see static::convertObject()} should remember the data types

LegacyYamlInterface.class.php

Type Line Description
TODO 57 this is potentially evil -> see CLX-3825

Login.class.php

Type Line Description
TODO 314 loading the language data of component Access at this

LoginManager.class.php

Type Line Description
TODO 170 Why oh why isn't function resetPassword() located in the AccessLibrary?
TODO 227 implement error message
TODO 231 implement error message

MediaLibrary.class.php

Type Line Description
TODO 1100 this is probably an overhead, because the uploader might already to this. doesn't it?

MediaManager.class.php

Type Line Description
TODO 686 CLX-3822: Implement a proper solution for this purpose.
TODO 730 size of thumbnails not supported by ThumbnailGenerator

JsonMediaBrowser.class.php

Type Line Description
TODO 303 Implement getDefaultPermissions() method.

MediaBrowserPageTree.class.php

Type Line Description
TODO 42 Implement preRenderElement() method.
TODO 99 Implement postRenderElement() method.
TODO 103 Implement preRenderLevel() method.
TODO 107 Implement postRenderLevel() method.
TODO 111 Implement renderHeader() method.
TODO 115 Implement renderFooter() method.
TODO 119 Implement preRender() method.
TODO 123 Implement postRender() method.
TODO 134 Implement init() method.

ComponentController.class.php

Type Line Description
TODO 250 filter arguments as in adjustResponse()
TODO 261 migrate to use additional path arguments
TODO 298 This should never happen, see DBG::log() below

EsiWidgetController.class.php

Type Line Description
TODO 70 // 1. FRONTEND_LANG_ID should be set by Widget component
TODO 257 migrate to MediaSource once CLX-1896 has been completed

News.class.php

Type Line Description
TODO 197 add error handler to load the fallback-language version of the news message
TODO 728 fetch typename through a newly to be created separate methode
TODO 1198 fetch typename from a newly to be created separate methode
TODO 1781 add fail check

NewsLibrary.class.php

Type Line Description
TODO 2231 Handle issue
TODO 2248 Handle issue
TODO 2369 @ Throw execption or log error message
TODO 2420 @ Throw execption or log error message
TODO 2460 @ Throw execption or log error message
TODO 2501 @ Throw execption or log error message
TODO 2520 @ Throw execption or log error message
TODO 2537 @ Throw execption or log error message
TODO 2783 Add AJAX-based paging
TODO 3679 Check if those can be generated by query
TODO 3694 Check if those can be generated by query
TODO 3709 This could be calculated in query

NewsManager.class.php

Type Line Description
TODO 396 use SQL_CALC_FOUND_ROWS and drop 'n.validated' in where clause instead of calling same query four times
TODO 428 Not in use yet. From r8465@branches/contrexx_2_1
TODO 2014 Check and refactor if required
TODO 2136 Check and refactor if required
TODO 2173 Check and refactor if required
TODO 2200 Check and refactor if required
TODO 2236 Check and refactor if required
TODO 2289 Check and refactor if required
TODO 3163 setting the proper protocol should be done in Url::fromPage()

NewsRecentComments.class.php

Type Line Description
TODO 66 This does not respect scheduled publishing!
TODO 92 add permission access check

NewsEventListener.class.php

Type Line Description
TODO 79 replace by FQCN of model once migrated to EntityBase
TODO 88 replace by FQCN of model once migrated to EntityBase
TODO 106 replace by FQCN of model once migrated to EntityBase
TODO 128 replace by FQCN of model once migrated to EntityBase

PdfDocument.class.php

Type Line Description
TODO 131 temporarily disable error-reporting until CLX-2322 is done

BackendController.class.php

Type Line Description
TODO 68 Drop cache more selectively as soon as this is possible

EsiWidgetController.class.php

Type Line Description
TODO 93 drop argument $params['locale']->getId() as it
TODO 126 drop argument $params['locale']->getId() as it

Search.class.php

Type Line Description
TODO 457 (*) I think these are actually bytes.

Stats.class.php

Type Line Description
TODO 1097 Remove unused argument $parser
TODO 1108 Remove unused argument $parser

ComponentController.class.php

Type Line Description
TODO 48 In order to respect permission layer, this should not make direct use of doctrine (except for handling \Cx\Core_Modules\Sync\Model\Entity\... entities)
TODO 293 pretending delete was successful does not work for other output methods than json
TODO 293 update ID fields does not work as expected
TODO 474 update ID fields does not work as expected

ComponentController.class.php

Type Line Description
TODO 108 This drops page cache in GIT

JsonUploader.class.php

Type Line Description
TODO 97 this should not be done here but in session directly. See CLX-5834
TODO 326 Implement getDefaultPermissions() method.

ComponentController.class.php

Type Line Description
TODO 247 Move the CATCH-logic to \Cx\Core\Model\Controller\EntityManager

EsiWidgetController.class.php

Type Line Description
TODO 127 We should check at least all ESI params of this widget
TODO 387 this is currently deactivated, as it will

RandomEsiWidgetController.class.php

Type Line Description
TODO 129 This randomly picks some instead of randomizing all

EsiWidget.class.php

Type Line Description
TODO 363 is this the right place to do so?

ContrexxJavascript.class.php

Type Line Description
TODO 62 this can be cached
TODO 82 Unused
TODO 140 Throw an exception here instead once all current cases are cleaned up

DateTimeTools.class.php

Type Line Description
TODO 107 Add more languages to the i18n folder!
TODO 110 Append the locale code ("-GB", "-US") as well!
TODO 321 Extend here

DBG.php

Type Line Description
TODO 1175 The log prefix should be a property of a log stream.
TODO 1185 The log prefix should be a property of a log stream.
TODO 168 This should be split up into two constants. One for log verbosity and one for profiling setup.
TODO 1390 This should be split up into two properties. One for log verbosity and one for profiling setup.
TODO 718 implement own dump-method that is able to handle recursive references
TODO 867 add option to enable/disable ip anonymization (CLX-4544)

File.class.php

Type Line Description
TODO 60 This should be merged with FileSystemFile and FileSystemFile removed. Having two separate classes was necessary to implement transparent file operations via FTP, which is no longer supported.

FileSystem.class.php

Type Line Description
TODO 186 Drop this method is favor of {@see \Cx\Lib\FileSystem\static::copy_folder()}. Migrate logic of $ignoreExists to the usages of this method when migrating to {@see \Cx\Lib\FileSystem\static::copy_folder()}.
TODO 186 Migrate logic of 'prevent infinit copy loop' to {@see \Cx\Lib\FileSystem\static::copy_folder()}.
TODO 234 Drop this method is favor of {@see \Cx\Lib\FileSystem\File::copy()}. Migrate logic of $ignoreExists to the usages of this method when migrating to {@see \Cx\Lib\FileSystem\File::copy()}.
TODO 803 Test!
TODO 803 Replace non-ASCII charactes with octal values

FWUser.class.php

Type Line Description
TODO 208 Seems that this method returns zero at first when the Users' language is set to "default"!
TODO 676 add verificationTimeout as configuration option
TODO 692 destroy session and create new one
TODO 699 add language variable

Image.class.php

Type Line Description
TODO 302 Refactor redundant code
TODO 449 Merge with {@see \static::resizeImage()}
TODO 640 In case the PHP script has no write access to the location set by $this->newImageFile, the image shall be sent to the output buffer and then be put into the new file location using the FileSystemFile object.
TODO 640 Check for all usages of this method if argument $injectTransparency must be set to FALSE.
TODO 949 This method is completely redundant. It does exactly the same as calling @getimagesize($file) directly! - Remove.
TODO 42 While this is inteded to be a resource this is sometimes set to string
TODO 49 This should be protected and be accessed via getter instead
TODO 49 While this is inteded to be a int this is sometimes set to string
TODO 56 This should be protected and be accessed via getter instead
TODO 56 While this is inteded to be a int this is sometimes set to string
TODO 62 While this is inteded to be a int this is sometimes set to string or bool
TODO 74 While this is inteded to be a resource this is sometimes set to string
TODO 74 This should not exist. Instead we should directly work with $orgImage
TODO 81 While this is inteded to be a int this is sometimes set to string
TODO 81 This should not exist. Instead we should directly work with $orgImage
TODO 88 While this is inteded to be a int this is sometimes set to string
TODO 88 This should not exist. Instead we should directly work with $orgImage
TODO 95 While this is inteded to be a int this is sometimes set to string
TODO 95 This should not exist. Instead we should directly work with $orgImage
TODO 102 While this is inteded to be a int this is sometimes set to string or bool
TODO 102 This should not exist. Instead we should directly work with $orgImage
TODO 108 This should not exist. Instead we should directly work with $orgImage
TODO 641 Add some sort of diagnostics (Message) here and elsewhere in this class
TODO 657 Unfortunately, the functions imagegif(), imagejpeg(), imagepng() and imagewebp() can't use the Cloudrexx FileSystem wrapper,

Javascript.class.php

Type Line Description
TODO 57 Edit PHP DocBlocks!
TODO 252 remove & replace by cx call
TODO 742 Throw an exception here instead once all current cases are cleaned up
TODO 936 This makes including files starting with dynamic protocol (//) impossible,
TODO 1062 Unused

Language.class.php

Type Line Description
TODO 399 Use the Html class instead
TODO 425 Use the Html class instead
TODO 447 Use the Html class instead

MXLookup.class.php

Type Line Description
TODO 49 Edit PHP DocBlocks!

Uri.class.php

Type Line Description
TODO 48 Add support for relative URI parsing
TODO 326 implement a (descendant) method for relative URI/Ls

Url.class.php

Type Line Description
TODO 58 Add query section parsing
TODO 302 Naming isn't consistent with RFC's expressions
TODO 316 Naming isn't consistent with RFC's expressions
TODO 332 Naming isn't consistent with RFC's expressions
TODO 344 Naming isn't consistent with RFC's expressions

SsiProcessor.class.php

Type Line Description
TODO 98 this should be a generic feature of \Cx\Core\Html\Sigma

System.class.php

Type Line Description
TODO 51 Edit PHP DocBlocks!

UpdateUtil.class.php

Type Line Description
TODO 843 Add proper docblock
TODO 503 maybe we should somehow notify the caller if
TODO 535 maybe we should check for the type of the
TODO 644 "INDEX" instead of "KEY" produces an error for type "PRIMARY"? -- RK

User.class.php

Type Line Description
TODO 2460 Migrate the logic of this method to \Cx\Core\Session\Model\Entity\Session::getUser() and then mark it as deprecated.
TODO 2460 Instead of configuring the LoggableListener of Gedmo here (through {@see \Cx\Core\Model\Db::setUsername()}) we should implement&trigger a signed-in event and configure the LoggableListener there.
TODO 2577 Merge with hasBackendAccess() and fix CLX-5047
TODO 3164 Implement a way to detect the real timezone
TODO 3164 Implement DateTime postResolve() to set $this->userTimezone again once the sign-in user has been loaded
TODO 3400 Merge with hasModeAccess() and fix CLX-5047
TODO 332 Explain this method in plain english...
TODO 339 Provide default values here in case the settings are missing!
TODO 437 add verificationTimeout as configuration option
TODO 486 add verificationTimeout as configuration option
TODO 1285 I guess this is wrong, then.
TODO 1377 some conditions are not well enclosed, so there might be a more proper solution than adding more brackes at this point
TODO 3084 Maybe this should be restricted to MODULE_ID == 16 (Shop)?

User_Profile.class.php

Type Line Description
TODO 686 What is this good for?

User_Profile_Attribute.class.php

Type Line Description
TODO 1060 Hmmmm... No error message here? We just failed an "integrity check"!?
TODO 1340 I suppose the precedence is okay like this.
TODO 2203 check if this methods logic could be replaced by the following code

User_Setting.class.php

Type Line Description
TODO 84 This seems to be bogus

UserGroup.class.php

Type Line Description
TODO 233 This returns garbage if cache is not complete. See CLX-5047

Validator.class.php

Type Line Description
TODO 107 Edit PHP DocBlocks!
TODO 107 Most, if not all, should be static
TODO 229 This function does not belong in here
TODO 250 This function does not belong in here
TODO 634 Possibly throw an Exception if an unknown/typoed constraint was provided
TODO 674 Translate messages
TODO 725 Translate messages
TODO 759 Translate messages

EntityBase.class.php

Type Line Description
TODO 288 Order the array by the fallback order (same as in ContentManager)

Block.class.php

Type Line Description
TODO 64 this is a hotfix; drop and properly implement CLX-6031 instead

BlockLibrary.class.php

Type Line Description
TODO 1684 This is legacy code and must be replaced by proper EsiWidget implementation through a EsiWidgetController.
TODO 1726 This is legacy code and must be replaced by proper EsiWidget implementation through a EsiWidgetController.

ComponentController.class.php

Type Line Description
TODO 93 this call in unhappy, becase the content/home template already gets parsed just the line above

JsonBlockController.class.php

Type Line Description
TODO 464 This is legacy code and must be replaced by proper EsiWidget implementation through a EsiWidgetController.

Calendar.class.php

Type Line Description
TODO 326 implement logic
TODO 757 create element using Html library
TODO 764 create element using Html library
TODO 1077 this must be moved to ComponentController::resolve()

CalendarEvent.class.php

Type Line Description
TODO 299 Better replace all Event properties with one single doctrine Event instance... ...and drop this class.

CalendarEventManager.class.php

Type Line Description
TODO 952 implement with new Google Maps Embed API. see https://developers.google.com/maps/documentation/embed/guide

CalendarHeadlines.class.php

Type Line Description
TODO 109 implement logic

CalendarLibrary.class.php

Type Line Description
TODO 206 Implement behavior of this option
TODO 367 we have to manually load the language-data here, as it

CalendarMailManager.class.php

Type Line Description
TODO 927 this is a workaround

CalendarRegistrationManager.class.php

Type Line Description
TODO 789 This method's code is magic. Trying to document it is pointless. It makes more sense to refactor the whole method instead.

ComponentController.class.php

Type Line Description
TODO 328 is this still required? the widget initialization does no longer

EsiWidgetController.class.php

Type Line Description
TODO 173 implement logic
TODO 207 implement logic

JsonCalendarController.class.php

Type Line Description
TODO 173 Support categories as well

MailRecipient.class.php

Type Line Description
TODO 47 Add DocBlocks

Category.class.php

Type Line Description
TODO 137 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$categoryNames}
TODO 149 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$categoryNames}
TODO 223 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$events}
TODO 235 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$events}

Event.class.php

Type Line Description
TODO 1891 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$eventFields}
TODO 1903 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$eventFields}
TODO 2017 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$registrations}
TODO 2029 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$registrations}
TODO 2122 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$categories}
TODO 2136 This method is most likely obsolete as the associated property is named {@see \Cx\Modules\Calendar\Model\Entity\static::$categories}

CrmLibrary.class.php

Type Line Description
TODO 898 $selectedCountry must be converted into an integer. See CLX-3968

Category.class.php

Type Line Description
TODO 440 Only load downloads of subcategories if we're not modifying a category

Downloads.class.php

Type Line Description
TODO 163 Algorithm for loading downloads has to be refactored
TODO 415 Rating system has to be implemented first!

DownloadsLibrary.class.php

Type Line Description
TODO 279 getVisibility() < should only be checked if the user isn't an admin or so
TODO 445 Use own methods instead of \FWUser::getValidityString() and \FWUser::getValidityMenuOptions()

DownloadsManager.class.php

Type Line Description
TODO 1820 Documentation
TODO 1730 WHY THAT?
TODO 1824 check subcategory manage access permission of $parentCategoryId
TODO 1988 rename

FileSharing.class.php

Type Line Description
TODO 123 This should be merged together with {@see \Cx\Core\Session\Model\Entity\Session::getLock()} and put into {@see \Cx\Core\Model\Db}
TODO 146 This should be merged together with {@see \Cx\Core\Session\Model\Entity\Session::releaseLock()} and put into {@see \Cx\Core\Model\Db}
TODO 161 This should be merged together with {@see \Cx\Core\Session\Model\Entity\Session::getLockName()} and put into {@see \Cx\Core\Model\Db}

Gallery.class.php

Type Line Description
TODO 51 Edit PHP DocBlocks!

GalleryManager.class.php

Type Line Description
TODO 1534 move this code up before setting any template placeholders
TODO 2563 Unused
TODO 2983 $strFileOld, $strFileNew are not initialized
TODO 3168 $strFileOld, $strFileNew are not initialized
TODO 3539 sometimes, strings are passed... this is a workaround
TODO 3562 Unfortunately, the functions imagegif(), imagejpeg() and imagepng() can't use the Cloudrexx FileSystem wrapper,

BackendController.class.php

Type Line Description
TODO 45 Fix alias for entry

ComponentController.class.php

Type Line Description
TODO 885 this is a hotfix; drop and properly implement CLX-6031 instead
TODO 558 we need an other method that does also load the additional infos (template, css, etc.)
TODO 563 this is a hotfix; drop and properly implement CLX-6031 instead
TODO 569 this code snipped is taken from \Cx\Core\Routing\Resolver
TODO 589 the system should not access superglobals directly.
TODO 747 issue: EsiWidget CANONICAL_LINK (of ContentManager) does cache its result per page

MediaDirectoryEntry.class.php

Type Line Description
TODO 789 Migrate deprecated frontend entry list ($intView=5) to $intView=2.
TODO 2248 Fetch category data once. Also fetch all entry relations at once. Then cache them.
TODO 1039 break-statement is missing here. This enables the google-map

MediaDirectoryInputfield.class.php

Type Line Description
TODO 697 how can this happen?

MediaDirectoryLibrary.class.php

Type Line Description
TODO 1593 Extend returned data by additional meta data.
TODO 2350 Move templates to /data/private/MediaDir (CLX-4442)
TODO 180 assignment will be obsolete once this component has been migrated to extend form SystemComponentController
TODO 1024 do we need the shadowbox every time?

MediaDirectoryManager.class.php

Type Line Description
TODO 110 Drop these:
TODO 221 We should use Doctrines translation method instead
TODO 1108 _FORM_ONSUBMIT not used?

MediaDirectoryPlaceholder.class.php

Type Line Description
TODO 56 seams not to be working in the frontend right now

MediaDirectoryInputfield.class.php

Type Line Description
TODO 72 Implement DocBlock
TODO 81 Implement DocBlock
TODO 90 Implement DocBlock
TODO 111 Implement DocBlock
TODO 120 Implement DocBlock
TODO 147 Implement DocBlock
TODO 174 Implement DocBlock

MediaDirectoryInputfieldFile.class.php

Type Line Description
TODO 332 do fetch currently set file from database instead of
TODO 381 we must fetch the actual data from this field and not

MediaDirectoryInputfieldImage.class.php

Type Line Description
TODO 334 do actually delete the image in case of a frontend
TODO 385 we must fetch the actual data from this field and not

MediaDirectoryInputfieldWysiwyg.class.php

Type Line Description
TODO 71 What if the current language value is missing?
TODO 81 Bogus line

Newsletter.class.php

Type Line Description
TODO 54 Edit PHP DocBlocks!
TODO 267 use FWUSER
TODO 323 Mail should be sent on success only.
TODO 575 use FWUSER
TODO 680 implement feature
TODO 684 send notification e-mail about existing e-mail account
TODO 1031 add validation CODE!!!
TODO 1032 use FWUSER
TODO 1257 This used to return *nothing* when notifications were turned off.
TODO 1383 migrate to Country class
TODO 1400 migrate to Country class

NewsletterLib.class.php

Type Line Description
TODO 57 Edit PHP DocBlocks!
TODO 905 Refactor settings handling of component by migrating to \Cx\Setting
TODO 935 Refactor settings handling of component by migrating to \Cx\Setting
TODO 1040 Merge with user_profile_attribute_title
TODO 1049 add language variable
TODO 1062 Merge with user_profile_attribute_title
TODO 1072 Merge with user_profile_attribute_title
TODO 1086 Merge with user_profile_attribute_title
TODO 1428 This should not be used anymore. See {@see preg_quote()}!

NewsletterManager.class.php

Type Line Description
TODO 1218 Apparently parses one group too much
TODO 2859 I think this should be rewritten too
TODO 2937 Refactor the repetitive recipient query building logic for access users and user groups into reusable methods to avoid duplication and enhance maintainability.
TODO 5955 instead of just not linking the access users probably link to the access module in case the user has the appropriate rights
TODO 6322 Update this DocBlock
TODO 205 refactor and reactivate these extended statistics
TODO 1495 All calls to getPaging(): Shouldn't '&' be written as '&amp;'?
TODO 3294 check if there are any recipients left that were missed out in the send process (sendt=1).
TODO 3298 check if the delivery to any recipients failed (sendt=2).
TODO 3570 Unused
TODO 3725 Remove newsletter subscription for access_user
TODO 3900 replace with new methode $this->GetBrowserViewURL()
TODO 3950 migrate tracker to new URL-format
TODO 4261 use FWUser instead of _getRecipientTitles()
TODO 4300 Unused
TODO 4353 Unused
TODO 4534 use FWUSER
TODO 4549 $WhereStatement is not defined
TODO 4563 $count is never used
TODO 4566 $query is not defined, this has probably been superseeded by the
TODO 4806 Refactor this method
TODO 4807 $emailCount never used!!
TODO 4982 use FWUSER
TODO 5053 Undefined
TODO 5064 Unused
TODO 5339 Unused
TODO 5343 Unused
TODO 5520 use FWUSER
TODO 5621 Unused
TODO 6747 we consider, that attribute values are all included in double quotes (""): wysiwyg editor replaces them automatically
TODO 6769 wouldn't that
TODO 6866 This code should go into the library as a private method.
TODO 6872 These REs miserably fail when apostrophes (') are used
TODO 6873 What do they *really* do?
TODO 6877 The /s flag is probably unnecessary
TODO 6984 refactor method
TODO 7158 refactor method

Attribute.class.php

Type Line Description
TODO 59 Test!
TODO 117 Disabled FTTB. Feature for 3.1.0
TODO 118 Include upload path with corresponding backend setting
TODO 119 Set form type for multipart
TODO 830 Improve the regex for file names

Attributes.class.php

Type Line Description
TODO 54 Test!

Cart.class.php

Type Line Description
TODO 49 Test!
TODO 351 True? // $arrNewProduct['id'] may be undefined!
TODO 379 I suspect that this could be completely skipped when $new === false!?
TODO 711 Support products with different VAT rates
TODO 941 Handle missing or empty Template, load one
TODO 994 Move this to (global) language variables
TODO 1219 implement/test this

Coupon.class.php

Type Line Description
TODO 857 If the $active parameter value is set, limit the number to Coupons of the given status (not implemented yet)
TODO 910 Three umlauts in UTF-8 encoding might count as six characters here!

CsvImport.class.php

Type Line Description
TODO 55 Edit PHP DocBlocks!
TODO 70 Optional. Include it?

Currency.class.php

Type Line Description
TODO 337 In case that the {@link formatPrice()} function is localized, the returned value *MUST NOT* be treated as a number anymore!
TODO 359 In case that the {@link formatPrice()} function is localized, the returned value *MUST NOT* be treated as a number anymore!
TODO 396 Localize! Create language and country dependant settings in the database, and make this behave accordingly.
TODO 731 Add a symbol, symbol position, and other localization settings (decimal- and thousands separator, etc.) for each currency
TODO 975 Changed default increment to '0.01'. Apply to installation database!
TODO 1014 I dunno if I'm just lucky, or if this will work with any charsets

Customer.class.php

Type Line Description
TODO 546 Add the Customer Usergroup to the filter and test that
TODO 60 Is that necessary?
TODO 812 Translate
TODO 843 Translate
TODO 968 See whether a User with that username (but different e-mail address) exists!

Mail.class.php

Type Line Description
TODO 226 Some valid addresses are rejected by this method, such as *%+@mymail.com. Valid (atom) characters are: "!#$%&'*+-/=?^_`{|}~" (without the double quotes), see {@link http://rfc.net/rfc2822.html} for details.
TODO 226 The rules applied to host names are not correct either, see {@link http://rfc.net/rfc1738.html} and {@link http://rfc.net/rfc3986.html}. Excerpt from RFC 1738: - hostport = host [ ":" port ] - host = hostname | hostnumber - hostname = *[ domainlabel "." ] toplabel - domainlabel = alphadigit | alphadigit *[ alphadigit | "-" ] alphadigit - toplabel = alpha | alpha *[ alphadigit | "-" ] alphadigit - alphadigit = alpha | digit Excerpt from RFC 3986: "Non-ASCII characters must first be encoded according to UTF-8 [STD63], and then each octet of the corresponding UTF-8 sequence must be percent- encoded to be represented as URI characters".
TODO 226 This doesn't really belong here. Should be placed into a proper core e-mail class as a static method.
TODO 376 Migrate the old template using the original IDs, make them unprotected
TODO 377 Add the new default templates with the new keys
TODO 411 utf8_encode() may not be necessary in all cases.
TODO 438 This is completely unreliable.

Manufacturer.class.php

Type Line Description
TODO 83 Order the Manufacturers by their name
TODO 330 Implement the filter
TODO 424 Move this to the Manufacturer class!
TODO 442 Move this to the Manufacturer class!
TODO 254 Message

Order.class.php

Type Line Description
TODO 2331 Let items be handled by their own class
TODO 1214 Should add verification for POSTed fields and ignore unset values!
TODO 2218 TEST

Orders.class.php

Type Line Description
TODO 555 Rewrite the statistics in a seperate class, extending Order
TODO 950 Should definitely use POST instead.
TODO 285 Better use a redirect after doing stuff!
TODO 407 Obsolete ASAP
TODO 460 For Order export
TODO 507 (still unused in the view)
TODO 512 Order export
TODO 521 Order export
TODO 1006 It might be useful to move this to its own method:
TODO 1281 Use proper localized date formats
TODO 1371 Add individual VAT rates for Products
TODO 1421 Add proper formatting with sprintf() and language entries

PriceList.class.php

Type Line Description
TODO 52 Font, color and basic layout should be configurable in the backend

Product.class.php

Type Line Description
TODO 643 Unused DATETIME should be NULL
TODO 667 Unused DATETIME should be NULL
TODO 991 MUST NOT delete while the Product is part of any Order!

Products.class.php

Type Line Description
TODO 391 This is prolly somewhat slow. Could we use an "index" of sorts?

Shipment.class.php

Type Line Description
TODO 349 Because the value posted from the form is not currently verified,

Shop.class.php

Type Line Description
TODO 849 The cart info is not updated in time when the cart is destroyed and the product overview is shown again!
TODO 2813 Reimplement the $flagUpload parameter
TODO 3691 Make sure there are proper payment and shipment IDs set in the session!
TODO 4106 Fill in the order summary automatically.
TODO 4106 Problem: If the order is big enough, it may not fit into the visible text area, thus causing some order items to be cut off when printed. This issue should be resolved by replacing the <textarea> with a variable height element, such as a table, or a div.
TODO 300 This should be set up in a more elegant way
TODO 424 Add Order history view (see History.class.php)
TODO 431 Experimental
TODO 448 Set the Messages in the global template instead when that's ready
TODO 773 drop placeholder/feature as soon as placeholder-modification-
TODO 815 reactivate 'break' statement as soon as placeholder-modification-
TODO 897 Handle this properly!
TODO 1389 This probably breaks paging in search results!
TODO 1414 Use the alias, if any
TODO 1425 Add creation and/or change date to Products.
TODO 1499 There are other cases of flag combinations that are not indivuidually
TODO 1518 Use the alias, if any
TODO 1628 Use the alias, if any
TODO 1744 Test results for any combination of name and url
TODO 2821 Fix this bug in \ContrexxJavascript::setVariable():
TODO 2827 Also consider Customer type (reseller, final customer)
TODO 2929 Even though no one can register herself, there still might
TODO 3012 Use the slug
TODO 3451 this is a workaround. proper implementation must be done by CLX-3506
TODO 3905 This is not the solution. The value posted by the form should
TODO 4418 Implement a proper method
TODO 5005 Verify error message set by Order::insertItem()
TODO 5017 Do something if the Coupon does not work
TODO 5057 These arguments are no longer valid. Set them up later?
TODO 5096 Invert this flag, as it may no longer be present after paying
TODO 5448 Should be set by the calling view, if any
TODO 5503 Should be set by the calling view
TODO 5673 I don't see why this would be done here:

ShopLibrary.class.php

Type Line Description
TODO 51 Add a proper constructor that initializes the class with its various variables, and/or move the appropriate parts to a pure Shop class.

ShopManager.class.php

Type Line Description
TODO 4255 Seems that this is unused!?
TODO 110 Translate
TODO 148 Translate
TODO 185 Workaround for the language selection. Remove when the new UI
TODO 327 Implement the filter in the Manufacturer class
TODO 720 !!! CSV EXPORT IS OBSOLETE AND DYSFUNCT !!!
TODO 793 Use Customer class!
TODO 811 Use Customer class!
TODO 850 Use Customer class!
TODO 908 Add success message?
TODO 954 Set messages in there
TODO 966 Set messages in there
TODO 1533 TEMPORARY. Remove when a proper update is available.
TODO 1561 Temporary. Remove in release with working update
TODO 1625 Temporary. Remove in release with working update
TODO 1711 Use \Cx\Core\Setting\Controller\Setting::show(), and add a proper setting type!
TODO 1846 Add controls to fold parent categories
TODO 1879 Implement a folded hierarchy view
TODO 2367 Any attributes for the datepicker input?
TODO 2751 Add error message
TODO 2780 Strip what URI parameters?
TODO 2974 Messages *SHOULD* be set up by the User class
TODO 3062 TEST
TODO 3281 Use a common sendLogin() method
TODO 3369 Strip URL parameters: Which?

ShopSettings.class.php

Type Line Description
TODO 670 Add possibility to choose some products to change, and add a parameter for this list of IDs
TODO 121 Use

Dummy.class.php

Type Line Description
TODO 55 Edit PHP DocBlocks!

Saferpay.class.php

Type Line Description
TODO 60 Implement using this
TODO 586 Verify URLs

Yellowpay.class.php

Type Line Description
TODO 779 Currently, all fields present in the $fields array are added to the string with SHASIGN being the only exception that is skipped. It will probably be necessary to exclude further keys that are not used for computing the hash.

Search results