User Tools

Site Tools


en:dev:284:registry

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
en:dev:284:registry [12.08.2015 19:41] – [Geänderte Bezeichner] translated table mrbasemanen:dev:284:registry [26.09.2023 06:24] Manuela v.d.Decken
Line 1: Line 1:
-FIXME **This page is not fully translated, yet. Please help completing the translation.**\\ //(remove this paragraph once the translation is finished)// 
- 
 ====== The Registry (WbAdaptor) ====== ====== The Registry (WbAdaptor) ======
 Programming without **global** constants and variables. Programming without **global** constants and variables.
Line 10: Line 8:
 Global constants (as well as global variables), used within classes, break up their clear encapsulation and can prevent the reusability of the code. See 'Basics of object-oriented programming'. Global constants (as well as global variables), used within classes, break up their clear encapsulation and can prevent the reusability of the code. See 'Basics of object-oriented programming'.
  
-Global constants are, as has long been stated, from this version on deprecated, that is undesirable. See: [[en:dev:284:deprecated|Deprecated-List Entry 10 from 12.2013]].+Global constants are, as has long been stated, from this version on deprecated, that is undesirable. See: [[dev:284:deprecated|Deprecated-List Entry 10 from 12.2013]].
  
 Of course, discarding all previous constants without any replacement is clearly not a feasible approach. That's simply impossible. At least in the first step, the class '**WbAdaptor**' makes properties available that are similar to the previous constants. Of course, discarding all previous constants without any replacement is clearly not a feasible approach. That's simply impossible. At least in the first step, the class '**WbAdaptor**' makes properties available that are similar to the previous constants.
Line 29: Line 27:
  
 ^old constant   ^new key    ^content (example)  ^ ^old constant   ^new key    ^content (example)  ^
-|{introduced}      |Db              |the current object for accessing the database +|NEW               |Db              |the current object for accessing the database 
-|{introduced}      |Trans           |the current translation object                 | +|NEW               |Trans           |the current translation object                 | 
-|{introduced}      |App             |the current application/core object            |  +|NEW               |App             |the current application/core object            |  
-|{introduced}      |PageId          |the ID of the current page                     | +|NEW               |PageId          |the ID of the current page                     | 
-|{introduced}      |BlockId         |the ID of the current block                    | +|NEW               |BlockId         |the ID of the current block                    | 
-|{introduced}      |SectionId       |the ID of the current section                  |+|NEW               |SectionId       |the ID of the current section                  |
 |WB_URL            |AppUrl          |http: ⁄⁄ example.com/wb/                                                     | |WB_URL            |AppUrl          |http: ⁄⁄ example.com/wb/                                                     |
-|WB_REL            |AppRel          |/wb/                                                                         |+|WB_REL            |AppRel          |/wb/  (absolute path from DOCUMENT_ROOT, for use as a relative URL)                                                                      |
 |WB_PATH           |AppPath         |/var/www/httpdocs/wb/ \\ alternatively, in Windows  ('c:/var/www/httpdocs/wb/' | |WB_PATH           |AppPath         |/var/www/httpdocs/wb/ \\ alternatively, in Windows  ('c:/var/www/httpdocs/wb/' |
 |ADMIN_URL         |AcpUrl          |http: ⁄⁄ example.com/wb/admin/                                               | |ADMIN_URL         |AcpUrl          |http: ⁄⁄ example.com/wb/admin/                                               |
Line 44: Line 42:
 |TEMPLATE          |Template        |MyTemplate             | |TEMPLATE          |Template        |MyTemplate             |
 |TEMPLATE_DIR      |TemplateDir     |templates/MyTemplate/  | |TEMPLATE_DIR      |TemplateDir     |templates/MyTemplate/  |
-|{neu eingeführt}  |TemplateUrl     |http: ⁄⁄ example.com/wb/templates/MyTemplate/ +|NEW               |TemplateUrl     |http: ⁄⁄ example.com/wb/templates/MyTemplate/ 
-|{neu eingeführt}  |TemplateRel     |/wb/templates/MyTemplate/ +|NEW               |TemplateRel     |/wb/templates/MyTemplate/ 
-|{neu eingeführt}  |TemplatePath    |/var/www/httpdocs/wb/templates/MyTemplate/  |+|NEW               |TemplatePath    |/var/www/httpdocs/wb/templates/MyTemplate/  |
 |ADMIN_DIRECTORY   |AcpDir          |admin/                                                                       | |ADMIN_DIRECTORY   |AcpDir          |admin/                                                                       |
 |PAGES_DIRECTORY   |PagesDir        |pages/                                                                       | |PAGES_DIRECTORY   |PagesDir        |pages/                                                                       |
Line 53: Line 51:
 |WB_REVISION       |AppRevision     |2060                                                                         | |WB_REVISION       |AppRevision     |2060                                                                         |
 |WB_SP             |AppServicePack  |SP1                                                                          | |WB_SP             |AppServicePack  |SP1                                                                          |
-|{introduced}  |AppName         |WebsiteBaker                                                                 |+|NEW               |AppName         |WebsiteBaker                                                                 |
 |STRING_DIR_MODE   |DirModeString   | %%rwxrwxr-x%%   (textual representation, corresponds to 0775 octal)                                                           | |STRING_DIR_MODE   |DirModeString   | %%rwxrwxr-x%%   (textual representation, corresponds to 0775 octal)                                                           |
 |OCTAL_DIR_MODE    |DirModeOctal    | %%509%% (stored integer, corresponds to 0775 written in octal)  | |OCTAL_DIR_MODE    |DirModeOctal    | %%509%% (stored integer, corresponds to 0775 written in octal)  |
Line 59: Line 57:
 |OCTAL_FILE_MODE   |FileModeOctal   | %%436%% (stored integer, corresponds to 0664 written in octal)  | |OCTAL_FILE_MODE   |FileModeOctal   | %%436%% (stored integer, corresponds to 0664 written in octal)  |
  
-Wer die Liste aufmerksam durchschautwird ein paar neue Gesetzmäßigkeiten erkennen:+Who looks attentively at the listwill recognize a few new laws:
  
-Die Zeichenfolge **WB_** wurde zu **App** (hat nichts mit irgendwelchen APP-Stores zu tun!!), es ist einfach nur die ursprüngliche Abkürzung für Applikation => Anwendung => Programm.\\ +The string **WB**_ became **App** (has nothing to do with any of these App Stores !!), it's just the original abbreviation for application =>  program.\\ 
-Die Zeichenfolge **ADMIN_** wurde zu **Acp** was **A**dmin**C**ontrol**P**anel bedeutetda die Funktionen und Bezeichnungen 'Backendund 'Admin-Tools' in einer der Folgeversionen abgeschafft bzw. ersetzt werden.\\+The string **ADMIN_** became **Acp** which is the abbreviation for **A**dmin **C**ontrol **P**anel, because the functions and names 'backendand 'admin toolswill be abolished or replaced in one of the subsequent versions.\\
  
-Unabhängig von den geänderten Präfixes gelten folgende Regeln für Endungen+Regardless of the changed prefixes, the following rules apply for extensions
-  * xxx**Url** beinhaltet grundsätzlich eine vollwertige URL mit Protokollangabe +   * xxx**Url** basically includes a full URL with protocol specification 
-  * xxx**Path** beinhaltet einen vollwertigen Pfad ausgehend vom Wurzelverzeichnis des physikalischen Dateisystems und beginnt **immer** mit einem Slash** / ** bzw. **c:/** unter Windows. +   * xxx**Path** includes a full path starting from the root directory of the physical file system and **always** begins with a slash ** / ** and **c:/** for Windows. 
-  * xxx**Rel** beinhaltet einen absoluten Pfadausgehend von DOCUMENT_ROOT und beginnt **immer** mit einem Slash** / ** +   * xxx**Rel** includes an absolute pathstarting from DOCUMENT_ROOT and **always** begins with a slash ** / ** 
-  * xxx**Dir** beinhaltet ein oder mehrere aufeinanderfolgende Verzeichnisnamenund darf **nicht** mit einem Slash** / ** beginnen. +   * xxx**Dir** contains one or more successive directory namesand **must not** start with a slash ** / **.
-__Für alle Angaben gemeinsam gilt:__ +
-  * Als PATH_SEPERATOR ist ausschließlich der Slash** / ** zugelassen. Anpassungen können problemlos erfolgen mit\\ <php> $sPath = str_replace('\\', '/', $sPath); </php> +
-  * Ist das letzte Element einer URL-,Rel-, Path-, oder Dir-Angabe ein Verzeichnis, so **muss** die Angabe mit einem Slash** / ** enden.\\ +
-  * Um sicher zu stellen, dass ein Verzeichnis mit einem einzelnen Slash** / **abgeschlossen wird genügt die kurze Sequenz\\ <php> $sPath = rtrim($sPath, '/').'/'; </php> +
-  * Führende Slashes** / **werden entfernt mit\\ <php>  $sPath = ltrim($sPath, '/');  </php>+
  
-ALT => NEU Beispiele+__for all statements in common the following rules apply:__ 
-|     ^ Schlüssel        ^ Wert                     ^ +  * As PATH_SEPERATOR only the slash** ** is allowedAdjustments can be made easily with\\ <code> $sPath = str_replace('\\', '/', $sPath); </code> 
-^alt  | WB_URL           | http: ⁄⁄ example.com/wb  | +  * If the last element of a URL, Rel, Path-, or Dir-specified directory, the indication must terminate on a slash** **.\\ 
-^neu  | AppUrl           | http: ⁄⁄ example.com/wb| +  * To ensure that a directory path is terminated with a single slash** **the short sequence is sufficient\\ <code> $sPath = rtrim($sPath, '/').'/'; </code> 
-^alt  | ADMIN_REL        | /wb/admin                | +   Leading slashes** **are removed by\\ <code>  $sPath = ltrim($sPath, '/');  </code>
-^neu  | AcpRel           /wb/admin              |  +
-^alt  | PAGES_DIRECTORY  /pages                   | +
-^neu  | PagesDir         | pages                  | +
-^alt  | TEMPLATE_DIR     | http: ⁄⁄ example.com/wb/templates/MyTemplate +
-^neu  | TemplateDir      | templates/MyTemplate/    |+
  
 +OLD => NEW example:
 +|     ^ key        ^ value                     ^
 +^old  | WB_URL           | http: ⁄⁄ example.com/wb  |
 +^new  | AppUrl           | http: ⁄⁄ example.com/wb/ |
 +^old  | ADMIN_REL        | /wb/admin                |
 +^new  | AcpRel           | /wb/admin/               
 +^old  | PAGES_DIRECTORY  | /pages                   |
 +^new  | PagesDir         | pages/                   |
 +^old  | TEMPLATE_DIR     | http: ⁄⁄ example.com/wb/templates/MyTemplate  |
 +^new  | TemplateDir      | templates/MyTemplate/    |
  
-===== Anwendung von WbAdaptor ===== +===== Application of WbAdaptor ===== 
-Diese Klasse ist von überall zu erreichenEs genügt völlig, die einzig existierende, aktive Instanz der Klasse mit\\ <php> $oReg = WbAdaptor::getInstance(); </phpin den aktuellen Sichtbarkeitsbereich zu importierenNoch besser ist jedoch die Nutzung von Dependency-Injectionalso die Übergabe der Instanz von außen an die Funktion oder Klasse.+This class can be reached from anywhereIt is sufficient to import that only existing active instance of the class with\\ <code> $oReg = \bin\WbAdaptor::getInstance(); </codeto import into the current scope 
 +But even better is the use of dependency injectioni.e. the transfer of the instance from outside to the function or class.
  
-:!: Es wird dringend empfohlen, den Bezeichner //**$oReg**// für die Instanz des WbAdaptor-Objektes zu verwenden um eine leichtere und über alle Programmteile durchgängige Lesbarkeit zu erreichen.+:!: It is strongly recommended that the identifier //**$oReg**// is used for the instance of the WbAdaptor object in order to achieve a better and consistent readability of all program components.
  
-Auch der Abruf der einzelnen Werte ist recht unproblematisch:\\ +Also the request of the individual values quite straightforward:\\ 
-<php> echo $oReg->TemplateDir.'images/logo.png'; </php> \\ +<code> echo $oReg->TemplateDir.'images/logo.png'; </code> \\ 
-Ausgabe:  ''templates/myTemplate/images/logo.png''+Output:  ''templates/myTemplate/images/logo.png''
  
-Was nach außen nicht sichtbar istist der Umstand dass alle abrufbaren Werte in zwei Basis-Gruppen abgelegt sind+What is not visible from the outsidethe fact is that all retrievable values are stored in two basic groups
-  * //System//  ⇒ das sind alle Werte, die bei unveränderten Grundeinstellungen bei jedem Scriptaufruf **immer** gleich sind+  * //System// -> these are all values that are **always** the same at constant, for basic settings constant for each script call
-  * //Request// ⇒ alle anderen Wertedie je nach SeiteBenutzerRequestmodus oder sonstigen Kriterien unterschiedliche Werte haben können+  * //Request// -> all other valueswhich candepending on the pageusers who request mode or other criteria have different values
-Die //System//-Werte sind geschützt und können **nicht** durch //Request//-Werte oder anderes überschrieben werden.+The system values are protected and can **not** be overridden by //Request// values or anything else.
  
  
en/dev/284/registry.txt · Last modified: 26.09.2023 07:14 by Manuela v.d.Decken