.. You may want to use the usual include line. Uncomment and adjust the path. .. include:: ../Includes.txt ================== EXT: Books Library ================== :Author: Kasper Skårhøj :Created: 2002-11-01T00:32:00 :Changed by: Sebastian Fischer :Changed: 2009-08-09T15:28:50.390000000 :Classification: sf_books :Description: The keywords help with categorizing and tagging of the manuals. You can combine two or more keywords and add additional keywords yourself. Please use at least one keyword from both lists. If your manual is NOT in english, see next tab "language" ---- forEditors (use this for editors / german "Redakteure") forAdmins (use this for Administrators) forDevelopers (use this for Developers) forBeginners (manuals covering TYPO3 basics) forIntermediates (manuals going into more depth) forAdvanced (covering the most advanced TYPO3 topics) see more: http://wiki.typo3.org/doc_template#tags ---- :Keywords: books, listview, singleview :Author: Sebastian Fischer :Email: typo3@fischer.im :Info 4: :Language: en, de, fi, fr, lt, ru |img-1| |img-2| EXT: Books Library - sf\_books .. _EXT-Books-Library: EXT: Books Library ================== Extension Key: sf\_books Language: en, de, fi, fr, lt, ru Keywords: books, listview, singleview Copyright 2000-2008, Sebastian Fischer, 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 ----------------- `EXT: Books Library 1 <#1.EXT:%20Books%20Library|outline>`_ **`Introduction 3 <#1.1.Introduction|outline>`_** `What does it do? 3 <#1.1.1.What%20does%20it%20do_|outline>`_ `Screenshots 3 <#1.1.2.Screenshots|outline>`_ **`Users manual 5 <#1.2.Users%20manual|outline>`_** `Plugin and Pages 5 <#1.2.1.Plugin%20and%20Pages|outline>`_ `Books 5 <#1.2.2.Books|outline>`_ **`Administration 7 <#1.3.Administration|outline>`_** **`Configuration 8 <#1.4.Configuration|outline>`_** `General plugin configuration 8 <#1.4.1.General%20plugin%20configuration|outline>`_ `listView configuration 8 <#1.4.2.listView%20configuration|outline>`_ `singleView configuration 8 <#1.4.3.singleView%20configuration|outline>`_ `Adding Items to locations 9 <#1.4.4.Adding%20Items%20to%20locations|outline>`_ **`To-Do list 10 <#1.5.To-Do%20list|outline>`_** **`FAQ 11 <#1.6.FAQ|outline>`_** .. _Introduction: Introduction ------------ .. _What-does-it-do: What does it do? ^^^^^^^^^^^^^^^^ Purpose of this extesion is to manage few to a lot of books. There is a list- and a singleview for the frontend. In listview a pagebrowser and a searchfield makes book finding an ease. Books can have category, serie, number, title, author, ISBN-Number, Description, Cover and Extras. In listview number, title, author and isbn-number are possible sortfields. Searching books is done on fields title, author, isbn-number and description. .. _Screenshots: Screenshots ^^^^^^^^^^^ .. _generated: ((generated)) """"""""""""" .. _Backend-book-edit: Backend book edit ~~~~~~~~~~~~~~~~~ |img-3| .. _Backend-book-edit-Locations: Backend book edit Locations ~~~~~~~~~~~~~~~~~~~~~~~~~~~ If you use locations for your books two additional fields get avaialable after you changed the first location field. |img-4| .. _Frontend-SingleView: Frontend SingleView ~~~~~~~~~~~~~~~~~~~ |img-5| .. _Users-manual: Users manual ------------ .. _Plugin-and-Pages: Plugin and Pages ^^^^^^^^^^^^^^^^ You need atleast two pages for managing and displaying the books, one Sysfolder and one standard page which will contain the plugin. |img-6| The plugin must be of type Book Library. In the plugin you need to select the sysfolder as startingpoint and as long as you use only one folder for the books the recursive selectbox could be left empty. |img-7| .. _Books: Books ^^^^^ Books are split in four parts. They consists of books, category, series and extras. Extras has an additional subpart the extraslabel. |img-8| To create a book you need categories and series first. They are for information and sorting purpose. After you selected those and the textfield in the book, you can add additional informations like publisher or translators if its an foreign author that wrote the book. For these extras you are able to add further lables that get displayed in frontend when extras are rendered. Extras are rendered as continuous text as long as there is no linebreak in these textbox. If a linebreak is found in this box the hole content gets rendered as unordered list. |img-9| .. _Administration: Administration -------------- Download the extension from TER (key: sf\_books) and install it. If the extensionmanager ask to create tables agree to it. |img-10| In your Typoscript template change to Includes tab and select the Book Library (sf\_books) in Include static |img-11| Every extension related setting is found in Typoscript beneath plugin.tx\_sfbooks\_pi1 {} see Configuration part. .. _Configuration: Configuration ------------- There are configurations for listView and singleView and more general parts like templateFile or pidList. In all fields related stdWraps fields from tx\_sfbooks\_books are available for field and data like uid. .. _General-plugin-configuration: General plugin configuration ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. ### BEGIN~OF~TABLE ### .. _templateFile: templateFile """""""""""" .. container:: table-row Property templateFile Data type string Description Path to the template file like EXT:sf\_books/books\_template.html Default .. _code: code """" .. container:: table-row Property code Data type string Description Command to choose listView or singleView Default .. _storagePid: storagePid """""""""" .. container:: table-row Property storagePid Data type integer / list of integers Description Comma seperated list where the books are stored Default empty .. _recursive: recursive """"""""" .. container:: table-row Property recursive Data type integer Description Depth of pages to fetch pageids inside the pages given in pidList Default .. ###### END~OF~TABLE ###### [tsref:plugin.tx\_sfbooks\_pi1] .. _listView-configuration: listView configuration ^^^^^^^^^^^^^^^^^^^^^^ .. ### BEGIN~OF~TABLE ### .. _limit: limit """"" .. container:: table-row Property limit Data type integer Description Amount of books to display on one page Default 3 .. _maxPages: maxPages """""""" .. container:: table-row Property maxPages Data type integer Description Amount of pages to display in pagebrowser Default 10 .. _editpanel: editpanel """"""""" .. container:: table-row Property editpanel Data type stdWrap Description stdWrap for the Editpanel with all possibilities Default .. _headers: headers """"""" .. container:: table-row Property headers Data type array Description Collection of stdWraps for all fieldheaders Default .. _fields: fields """""" .. container:: table-row Property fields Data type array Description Collection of stdWraps for all fields in listrows Default .. ###### END~OF~TABLE ###### [tsref:plugin.tx\_sfbooks\_pi1.listView] .. _singleView-configuration: singleView configuration ^^^^^^^^^^^^^^^^^^^^^^^^ .. ### BEGIN~OF~TABLE ### .. _backlink: backlink """""""" .. container:: table-row Property backlink Data type typolink Description Configuration of backlink with all params that typolink has Default .. _fields: fields """""" .. container:: table-row Property fields Data type array Description Collection of stdWraps for all fields in singleview Default .. _fields-cover: fields.cover """""""""""" .. container:: table-row Property fields.cover Data type stdWrap/IMAGE Description Covers are rendered as image and have all settings like the IMAGE object Default .. _fields-description: fields.description """""""""""""""""" .. container:: table-row Property fields.description Data type stdWrap Description As an continuous text this fields has as default: :: parseFunc < tt_content.text.20.parseFunc Default .. _fields-extras: fields.extras """"""""""""" .. container:: table-row Property fields.extras Data type array/stdWrap Description extras could be rendered as unordered list. Therefor there are some extra stdWraps. :: fields.extras { # wrap around list and continuous text wrap =
|
# wrap around the extras label label.wrap = | # if rendered as list list.wrap = listitem.wrap =
  • |
  • # if renderes as contiuous text content.wrap =

    |

    } Default .. ###### END~OF~TABLE ###### [tsref:plugin.tx\_sfbooks\_pi1.listView] .. _generated: ((generated)) """"""""""""" .. _Example: Example ~~~~~~~ Fields are used like every other stdWrap: :: plugin.tx_sfbooks_pi1 { listView.fields { title.wrap =
    |
    title.crop = 20 | … | 1 } } .. _Adding-Items-to-locations: Adding Items to locations ^^^^^^^^^^^^^^^^^^^^^^^^^ Its possible to add items to the locations fields by using pageTS. Remember, that you need to add typoscript with every item that you add for the frontend labels too. There are three locations available (location1, location2, location3). .. ### BEGIN~OF~TABLE ### .. _Location1-addItems-itemValue: Location1.addItems.[itemValue] """""""""""""""""""""""""""""" .. container:: table-row Property Location1.addItems.[itemValue] Data type string Description Label, LS Default .. _Location2-addItems-itemValue: Location2.addItems.[itemValue] """""""""""""""""""""""""""""" .. container:: table-row Property Location2.addItems.[itemValue] Data type string Description Label, LS Default .. _Location3-addItems-itemValue: Location3.addItems.[itemValue] """""""""""""""""""""""""""""" .. container:: table-row Property Location3.addItems.[itemValue] Data type string Description Label, LS Default .. ###### END~OF~TABLE ###### [TSconfig:TCEFORM.tx\_sfbooks\_books] .. _generated: ((generated)) """"""""""""" .. _Example: Example ~~~~~~~ Adding items to rooms page TSconfig: :: TCEFORM.tx_sfbooks_books.location1.addItems { 2 = Room 02 3 = Room 03 } Adding items to rooms page Tsconfig: :: plugin.tx_sfbooks_pi1._LOCAL_LANG { default { label_location1_I_3 = Room03 } de { label_location1_I_3 = Raum 03 } } .. _To-Do-list: To-Do list ---------- `This extension should be usable in the future, to achieve this, the extension is undergoing a change to extbase. This means that there is a complete refactory needed to update the extension. To speed this up, you could either help coding or donate some money to motivate the development. <#1.6.Known%20problems|outline>`_ `Task to be solved afterwards are, rethink the datamodel, split the views into suitable blocks and define the interfaces. <#1.6.Known%20problems|outline>`_ `Anyway, afterwards the extension wont be downwards compatible, so keep in mind that the typoscript needs to get adapted on the new configuration needs. The release will happen in the end of 2009 or the first quarter of 2010, but not before extbase will be commited. <#1.6.Known%20problems|outline>`_ .. _FAQ: FAQ --- Having books is nice to discuss with others is even nicer. Instead of installing a heavyweight forum you could try comments on book level. To achieve this, there is an extension called comments. Comments serves with a comment form and list. It uses pagebrowse to paginate the comments. To prevent unwanted spam you can configure comments to display only approved user comments. Having comments to books is easy as one two three. Everything else is preconfigured, but I advise you to read the `comments documentation `_ carefully if you want to tweak the settings. |img-12| Download and install pagebrowse and comments |img-13| Include both typoscripts (pagebrowse and comments) in include “Include static (from extensions):” |img-14| Insert the plugin on the page with the singleview for books plugin, enter tx\_sfbooks\_pi1 in “triggering prefix” and select the sysfolder which contains the books ans Stora records at page. 11 .. ######CUTTER_MARK_IMAGES###### .. |img-1| image:: img-1.png .. :align: left .. |img-2| image:: img-2.png .. :border: 0 .. :height: 21 .. :hspace: 9 .. :id: Grafik2 .. :name: Grafik2 .. :width: 87 .. |img-3| image:: img-3.png .. :align: left .. :border: 0 .. :height: 615 .. :id: graphics1 .. :name: graphics1 .. :width: 591 .. |img-4| image:: img-4.png .. :align: left .. :border: 0 .. :height: 80 .. :id: graphics2 .. :name: graphics2 .. :width: 585 .. |img-5| image:: img-5.png .. :align: left .. :border: 0 .. :height: 449 .. :id: Grafik1 .. :name: Grafik1 .. :width: 531 .. |img-6| image:: img-6.png .. :align: left .. :border: 0 .. :height: 237 .. :id: Grafik6 .. :name: Grafik6 .. :width: 525 .. |img-7| image:: img-7.png .. :align: left .. :border: 0 .. :height: 378 .. :id: Grafik7 .. :name: Grafik7 .. :width: 666 .. |img-8| image:: img-8.png .. :align: left .. :border: 0 .. :height: 381 .. :id: Grafik8 .. :name: Grafik8 .. :width: 669 .. |img-9| image:: img-9.png .. :align: left .. :border: 0 .. :height: 264 .. :id: Grafik9 .. :name: Grafik9 .. :width: 246 .. |img-10| image:: img-10.png .. :align: left .. :border: 0 .. :height: 379 .. :id: Grafik4 .. :name: Grafik4 .. :width: 669 .. |img-11| image:: img-11.png .. :align: left .. :border: 0 .. :height: 178 .. :id: Grafik3 .. :name: Grafik3 .. :width: 576 .. |img-12| image:: img-12.png .. :align: left .. :border: 0 .. :height: 126 .. :id: Grafik12 .. :name: Grafik12 .. :width: 547 .. |img-13| image:: img-13.png .. :align: left .. :border: 0 .. :height: 177 .. :id: Grafik10 .. :name: Grafik10 .. :width: 304 .. |img-14| image:: img-14.png .. :align: left .. :border: 0 .. :height: 381 .. :id: Grafik11 .. :name: Grafik11 .. :width: 666