.. You may want to use the usual include line. Uncomment and adjust the path. .. include:: ../Includes.txt ================================= Browser Tutorial Development (en) ================================= :Author: Kasper Skårhøj :Created: 2002-11-01T00:32:00 :Changed by: dirk :Changed: 2014-10-07T19:29:21 :Classification: browser_tut_development_en :Description: Develop the Browser - the TYPO3-Frontend-Engine. This is a manual, how to use the SVN-Repository. :Keywords: browser, typo3 without php, development, svn :Author: Dirk Wildt, Die Netzmacher :Email: http://wildt.at.die-netzmacher.de :Website: http://die-netzmacher.de :Language: en |img-1| |img-2| Browser Tutorial Development (en) (extkey: browser\_tut\_development\_en) |img-3| .. _Browser-Tutorial-Development-en: Browser Tutorial Development (en) ================================= **Browser - TYPO3 without PHP** Develop the Browser - the TYPO3-Frontend-Engine. This is a manual, how to use the SVN-Repository. |img-4| Version: 6.0.0 - 2014-10-07 Extension Key: browser\_tut\_development\_en Language: en Keywords: browser, typo3 without php, development, svn Copyright 2008-2014, Dirk Wildt, Die Netzmacher, This document is published under the Open Content License available from `http://www.opencontent.org/opl.shtml `_ The content of this document is related to TYPO3 - a GNU/GPL CMS/Framework available from `www.typo3.org `_ .. _Table-of-Contents: Table of Contents ----------------- `Browser Tutorial Development (en) 1 <#__RefHeading__24238_633547889>`_ `Introduction 3 <#__RefHeading__4384_47717468>`_ `What does it do? 3 <#__RefHeading__1169_1172745218>`_ `The Browser and SVN 4 <#__RefHeading__1177_1172745218>`_ `Repository URL 4 <#__RefHeading__598_255953126>`_ `Download / checkout of the Browser 4 <#__RefHeading__11009_1112387226>`_ `Update your Browser version 4 <#__RefHeading__600_255953126>`_ `Upload / commit the Browser 4 <#__RefHeading__2015_991962144>`_ `The first time – initial check out 4 <#__RefHeading__945_1396104453>`_ `Resolve a conflict and other problems 5 <#__RefHeading__947_1396104453>`_ `Branches 6 <#__RefHeading__52143_1960331820>`_ `Tags 6 <#__RefHeading__52145_1960331820>`_ `Update extensions without TYPO3 7 <#__RefHeading__1307_1711473255>`_ `TYPO3 Extension Utils 7 <#__RefHeading__1309_1711473255>`_ `https://github.com/etobi/Typo3ExtensionUtils 7 <#__RefHeading__1311_1711473255>`_ `Upload extension 7 <#__RefHeading__1313_1711473255>`_ `Help 7 <#__RefHeading__1317_1711473255>`_ `DRS - Development Reporting System 8 <#__RefHeading__2027_991962144>`_ `Develop the DRS and gets support for yourself 8 <#__RefHeading__604_255953126>`_ `dev\_var\_dump 9 <#__RefHeading__55058_1116738509>`_ `Prompting for my IP only 9 <#__RefHeading__949_1396104453>`_ `Minify \*.css and \*.js 10 <#__RefHeading__951_1396104453>`_ `Precondition 10 <#__RefHeading__8429_1159840010>`_ `Samples 10 <#__RefHeading__8431_1159840010>`_ `Reference 11 <#__RefHeading__8441_1159840010>`_ `Completely browser reference 11 <#__RefHeading__44233_603351207>`_ `Further Information 12 <#__RefHeading__2408_1819262770>`_ `Tutorials 12 <#__RefHeading__2410_1819262770>`_ `Forum 12 <#__RefHeading__2366_1819262770>`_ `SVN 12 <#__RefHeading__2368_1819262770>`_ `Helpful suggestions 13 <#__RefHeading__3100_964823982>`_ `Change log 14 <#__RefHeading__3727_2139160512>`_ `Illustration Index 15 <#__RefHeading__7879_1359502716>`_ `Alphabetical Index 16 <#__RefHeading__14691_1458450892>`_ .. _Introduction: Introduction ------------ .. _What-does-it-do: What does it do? ^^^^^^^^^^^^^^^^ This is a tutorial for the extension Browser (extkey: browser). It is - a manual for developing the browser especially - how to use the SVN repository on forge.typo3.org .. _The-Browser-and-SVN: The Browser and SVN ------------------- .. _Repository-URL: Repository URL ^^^^^^^^^^^^^^ `https://svn.typo3.org/TYPO3v4/Extensions/browser/ `_ .. _Download-checkout-of-the-Browser: Download / checkout of the Browser ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ $ cd typo3conf/ext/ $ svn co https://svn.typo3.org/TYPO3v4/Extensions/browser/trunk browser If you are need an initial checkout, please take a look in the section "The first time – initial check out" on page 4 below. .. _Update-your-Browser-version: Update your Browser version ^^^^^^^^^^^^^^^^^^^^^^^^^^^ $ svn update U foo.c U bar.c Updated to revision 2. $ .. _Upload-commit-the-Browser: Upload / commit the Browser ^^^^^^^^^^^^^^^^^^^^^^^^^^^ First you have to checkout the Browser (see above). $ cd typo3conf/ext/browser $ svn add \* $ svn st $ svn commit -m 'my comment' Sende ChangeLog Sende ext\_conf\_template.txt Sende ext\_emconf.php Sende lib/class.tx\_browser\_extmanager.php Sende lib/locallang.xml Sende pi1/class.tx\_browser\_pi1.php Sende pi1/class.tx\_browser\_pi1\_filter.php Sende pi1/class.tx\_browser\_pi1\_marker.php Sende pi1/class.tx\_browser\_pi1\_template.php Sende pi1/class.tx\_browser\_pi1\_views.php Sende pi1/class.tx\_browser\_pi1\_wrapper.php Sende pi1/class.tx\_browser\_pi1\_zz.php Sende static/setup.txt Übertrage Daten ............. Revision 43025 übertragen. Comment - svn add \*: add all (new and changed) files to your local svn index - svn st: display your local svn index - svn commit: commit / upload your changings .. _The-first-time-initial-check-out: The first time – initial check out ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ If you have a local version of the browser but without any SVN folder, you can initiate a local SVN version this way: $ mv browser browser.bak $ svn co https://svn.typo3.org/TYPO3v4/Extensions/browser/trunk browser $ mv -u browser.bak/\* browser $ cd browser $ svn add \* .. _Resolve-a-conflict-and-other-problems: Resolve a conflict and other problems ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Sometimes there is a conflict between the files of your working directory and the files in the repository. Maybe you can resolve the conflict with the following steps .. _is-out-of-date: ... is out of date """""""""""""""""" You try to commit your files, and there is an conflict, you will get a message like: Item '/org/trunk/res/html/doc' is out of date .. _Example: Example ~~~~~~~ [dwildt@localhost org]$ svn commit -m '2.0.9 mv document module to download module' Anmeldebereich: TYPO3 SVN Access Passwort für »dwildt«: Sende ChangeLog ... Ersetze res/html/doc svn: Übertragen schlug fehl (Details folgen): svn: Item '/org/trunk/res/html/doc' is out of date .. _Step-1-Update: Step 1: Update ~~~~~~~~~~~~~~ Make a update. Example [dwildt@localhost org]$ svn update C static/doc C res/html/doc Revision 54475. Konfliktübersicht: Baumkonflikte: 2 .. _Step-2-Resolve-the-conflict: Step 2: Resolve the conflict ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Try to resolve the conflict like in the example below. Take the parameter: - base if the repository is the proper version - working if your working directory is the proper version Example [dwildt@localhost org]$ svn resolve --accept=working org/org/res/html/doc Konflikt von »org/org/res/html/doc« aufgelöst .. _Step-3-Commit-your-files: Step 3: Commit your files ~~~~~~~~~~~~~~~~~~~~~~~~~ Now commit your files again. .. _version-control: ... version control """"""""""""""""""" .. _Example: Example ~~~~~~~ $ svn add res/e-payment/ svn: warnung: »res/e-payment« befindet sich bereits unter Versionskontrolle .. _Solutions: Solutions ~~~~~~~~~ $ svn revert res/e-payment/ Rückgängig gemacht: »res/e-payment« $ svn revert --depth infinity res/e-payment/ Rückgängig gemacht: »res/e-payment« .. _Hard-Core-Resolving: Hard Core Resolving """"""""""""""""""" .. _Remove-the-SVN-management: Remove the SVN management ~~~~~~~~~~~~~~~~~~~~~~~~~ $ mv deal deal.bak $ cd deal.bak $ find . -name ".svn" -print \| xargs /bin/rm -Rf .. _Another-Initial-Checkout: Another Initial Checkout ~~~~~~~~~~~~~~~~~~~~~~~~ Next step see "The first time – initial check out" on page 4 above. .. _Branches: Branches ^^^^^^^^ Englisch `http://svnbook.red- bean.com/nightly/en/svn.branchmerge.maint.html `_ German `http://svnbook.red- bean.com/nightly/de/svn.branchmerge.maint.html `_ .. _New: New """ If you have a local version of the browser but without any SVN folder, you can initiate a local SVN version this way: $ mv browser browser.bak $ svn co https://svn.typo3.org/TYPO3v4/Extensions/browser/branches browser $ cd browser ... .. _Tags: Tags ^^^^ .. _Add-a-tag: Add a tag """"""""" $ svn copy https://svn.typo3.org/TYPO3v4/Extensions/browser/trunk \ https://svn.typo3.org/TYPO3v4/Extensions/browser/tags/4.5.3 \ -m "Release 4.5.3." .. _Delete-a-tag: Delete a tag """""""""""" $ svn delete `https://svn.typo3.org/TYPO3v4/Extensions/browser/tags/4.5.0 `_ \-m "4.5.0 is deprecated" .. _Update-extensions-without-TYPO3: Update extensions without TYPO3 ------------------------------- .. _TYPO3-Extension-Utils: TYPO3 Extension Utils ^^^^^^^^^^^^^^^^^^^^^ `https://github.com/etobi/Typo3ExtensionUtils `_ .. _Upload-extension: Upload extension ^^^^^^^^^^^^^^^^ root@gera:/opt/scripts/typo3#./t3xutils.phar upload *username password* introductionplus"1.2.0 Feature detachable multi columns menu, bugfix chrome and IE"/var/www/typo3\_62.local/typo3conf/ext/introductionplus .. _Result-in-case-of-success: Result in case of success """"""""""""""""""""""""" array(3) { ["resultCode"]=> string(5) "10504" ["resultMessages"]=> array(1) { [0]=> string(118) "Please note that it might take a while (up to an hour) until your extension and the documentation appear on TYPO3.org." } ["version"]=> string(5) "1.2.0" } .. _Help: Help ^^^^ root@gera:/opt/scripts/typo3# ./t3xutils.phar Usage: ./t3xutils.phar help ./t3xutils.phar version ./t3xutils.phar updateinfo ./t3xutils.phar info [] ./t3xutils.phar fetch [] [] ./t3xutils.phar upload "" ./t3xutils.phar extract ./t3xutils.phar listfiles [details] ./t3xutils.phar create ./t3xutils.phar checkforupdate ./t3xutils.phar selfupdate .. _DRS-Development-Reporting-System: DRS - Development Reporting System ---------------------------------- .. _Develop-the-DRS-and-gets-support-for-yourself: Develop the DRS and gets support for yourself ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ... .. _dev-var-dump: dev\_var\_dump -------------- .. _Prompting-for-my-IP-only: Prompting for my IP only ^^^^^^^^^^^^^^^^^^^^^^^^ dev\_var\_dump enables you to prompt content into the frontend, which will displayed for a visitor with your IP only. .. _Characteristics: Characteristics """"""""""""""" The Browser has an own var\_dump method for developing. It is similar to var\_dump: it prompts the given content into the frontend but - It checks weather the current IP is in the list of the allowed IPs (configurable by the extension manager). - If the current IP isn't proper, dev\_var\_dump will return nothing. - dev\_var\_dump wraps the content with
...
- If you prompt an array, you will have a tree view. - dev\_var\_dump reports a security warning to devlog. .. _Parameters: Parameters """""""""" - Content for prompting. Type is mixed. - Amount of parameters is unlimited. .. _PHP-snippet: PHP snippet """"""""""" $my\_prompt = array('Hello world', array( 'green', 'red' ) ); $my\_other\_prompt = array('Hallo Welt', array( 'gruen', 'rot' ) ); $this->pObj->dev\_var\_dump( $my\_prompt, $my\_other\_prompt ); .. _Result: Result """"""
tx\_browser\_pi1\_sql::init (line 119):

type: array

array (

0 => 'Hello world',

1 =>

array (

0 => 'green',

1 => 'red',

),

)

...

.. _Minify-css-and-js: Minify \*.css and \*.js ----------------------- .. _Precondition: Precondition ^^^^^^^^^^^^ Intalled JavaScript/CSS minifieryui-compressor-2.4.7-1 .. _Samples: Samples ^^^^^^^ Sample directory $ tree -L 1 . ├── jquery ├── map ├── tx\_browser\_pi1\_ajax-0.0.5.js ├── tx\_browser\_pi1\_ajax\_languages.js └── tx\_browser\_pi1.js Minify a \*.js-file $ java -jar /usr/share/yui-compressor/yui-compressor.jar --type js -v tx\_browser\_pi1.js -o 'tx\_browser\_pi1-min.js' $ tree -L 1 . ├── all-min.js ├── jquery ├── map ├── tx\_browser\_pi1\_ajax-0.0.5.js ├── tx\_browser\_pi1\_ajax\_languages.js └── tx\_browser\_pi1.js Minify all \*.js-files $ java -jar /usr/share/yui-compressor/yui-compressor.jar --type js -v \*.js -o '.js$:-min.js' $ tree -L 1 . ├── all-min.js ├── jquery ├── map ├── tx\_browser\_pi1\_ajax-0.0.5.js ├── tx\_browser\_pi1\_ajax\_languages.js └── tx\_browser\_pi1.js Minify and merge all \*.js-files $ java -jar /usr/share/yui-compressor/yui-compressor.jar --type js -v \*.js -o 'all-min.js' $ tree -L 1 . ├── all-min.js ├── jquery ├── map ├── tx\_browser\_pi1\_ajax-0.0.5.js ├── tx\_browser\_pi1\_ajax\_languages.js └── tx\_browser\_pi1.js .. _Reference: Reference --------- .. _Completely-browser-reference: Completely browser reference ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - HTML `http://typo3.org/extension-manuals/browser\_manual\_en/ `_ - PDF: `http://typo3-browser.de/typo3conf/ext/browser\_manual\_en/doc/ma nual.pdf `_ .. _Further-Information: Further Information ------------------- .. _Tutorials: Tutorials ^^^^^^^^^ .. _This-tutorial-in-PDF-format: This tutorial in PDF format """"""""""""""""""""""""""" You find this tutorial as a PDF file at - doc/manual.pdf - `http://typo3-browser.de/typo3conf/ext/browser\_tut\_dev\_en/doc/manua l.pdf `_ .. _Tutorial-Overview: Tutorial Overview """"""""""""""""" `http://typo3-browser.de/en/browser-tutorials/ `_ .. _Forum: Forum ^^^^^ |img-5| Illustration 1: The TYPO3-Frontend-Engine Browser Forum The Browser has its own forum (leading language is German).You are welcome to post any question, bug or snippet code at TYPO3-Frontend-Engine Browser: Forum `http://typo3-browser-forum.de/ `_ .. _SVN: SVN ^^^ .. _SVN-book: SVN book """""""" - English `http://svnbook.red-bean.com/nightly/en `_ - German `http://svnbook.red-bean.com/nightly/de `_ .. _Quickstart: Quickstart """""""""" `http://svnbook.red-bean.com/nightly/en/svn.intro.quickstart.html `_ .. _Basic-Work-Cycle: Basic Work Cycle """""""""""""""" `http://svnbook.red-bean.com/nightly/en/svn.tour.cycle.html `_ .. _Reference: Reference """"""""" `http://svnbook.red-bean.com/nightly/en/svn.ref.html `_ .. _Helpful-suggestions: Helpful suggestions ------------------- If you have helpful suggestions, feel free to publish any question, bug or code snippet on `http://typo3-browser-forum.de/ `_ Posts are welcome in English and German. .. _Change-log: Change log ---------- 3.9.14 **Update** for Browser 3.9.14 3.6.1 **Initial release** .. _Illustration-Index: Illustration Index ------------------ Illustration 1: The TYPO3-Frontend-Engine Browser Forum 12 .. _Alphabetical-Index: Alphabetical Index ------------------ 16 .. ######CUTTER_MARK_IMAGES###### .. |img-1| image:: img-1.png .. :align: left .. |img-2| image:: img-2.jpeg .. :border: 0 .. :height: 20 .. :id: Grafik2 .. :name: Grafik2 .. :width: 69 .. |img-3| image:: img-3.png .. :align: bottom .. :border: 0 .. :height: 16 .. :id: graphics1 .. :name: graphics1 .. :width: 18 .. |img-4| image:: img-4.png .. :align: bottom .. :border: 0 .. :height: 268 .. :id: graphics6 .. :name: graphics6 .. :width: 302 .. |img-5| image:: img-5.jpeg .. :align: left .. :border: 0 .. :height: 161 .. :id: graphics81 .. :name: graphics81 .. :width: 302