Program: CWE-89
Project: CVE-2016-5843
Buggy source:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
    "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">

<book lang="en">

<!--
************************************** Head ***********************************************
-->
<bookinfo>
    <title>$Name</title>
    <edition>$Description Version $Version</edition>
    <copyright>
        <year>$YearStamp</year>
        <holder>$Vendor, $URL</holder>
    </copyright>
    <date>$DateStamp</date>
    <legalnotice>
        <para>$License</para>
        <para>
            This work is copyrighted by $Vendor, Norsk-Data-Str. 1, 61352 Bad Homburg, Germany.
        </para>
        <para>Build Date: $DateStamp</para>
    </legalnotice>
</bookinfo>

<!--
************************************ Customer part ******************************************
-->

<!-- ********** -->
<!-- 1. Preface -->
<!-- ********** -->
<preface id="preface">
    <title>Preface</title>
    <para>
        The FAQ Module is an OTRS extension providing an FAQ or rather a knowledge database.
    </para>
    <para>
        It facilitates speeding-up the knowledge transfer between agents or (using a public web
        interface) between organizations and their customers, therefore effectively saving time.
    </para>
    <para>
        If you have questions regarding this document or if you need further information, please log in to our customer portal at portal.otrs.com with your OTRS ID and create a ticket.
        You do not have an OTRS ID yet? Register
        <ulink url="https://portal.otrs.com/otrs/customer.pl#Signup">here for free</ulink>.
    </para>
</preface>

<!-- *************** -->
<!-- 2. Feature List -->
<!-- *************** -->
<chapter>
    <title>Feature List</title>
    <section>
        <title>FAQ Explorer</title>
        <para>
            Intuitive navigation and flexible mapping of theme hierarchies within the FAQ Explorer
            enable easy navigation through the database.
        </para>
    </section>
    <section>
        <title>WYSIWYG Editor</title>
        <para>
            Using the WYSIWYG Editor you can change the formatting of articles and include screen
            shots or images.
        </para>
    </section>
    <section>
        <title>FAQ Articles</title>
        <para>
            FAQ articles with various attributes like &quot;Symptom&quot;, &quot;Problem&quot;,
            &quot;Solution&quot;, &quot;Title&quot;, &quot;Language&quot;, &quot;Category&quot;,
            &quot;Keywords&quot;, &quot;State&quot;, &quot;Created&quot; and &quot;Changed&quot;
        </para>
    </section>
    <section>
        <title>FAQ Attachments</title>
        <para>
            You can add attachments to FAQ articles, which are available in the customer interface,
            too (e. g. user guides in pdf format).
        </para>
    </section>
    <section>
        <title>Agent And Customer Interfaces</title>
        <para>
            Using the FAQ state you can determine the interface(s), in which an FAQ article should
            be displayed. Articles with their state set to &quot;internal&quot; are only visible for
            agents via the Agent Interface; Articles whose state is set to &quot;external&quot; are
            also displayed in the protected customer section, and articles tagged as
            &quot;public&quot; are available in the non-protected public area as well.
        </para>
    </section>
    <section>
        <title>Comfortable Navigation / Clickable Keywords</title>
        <para>
            The key words feature enables comfortable navigation to alternative articles using
            clickable key words.
        </para>
    </section>
    <section>
        <title>Linked Objects</title>
        <para>
            FAQ articles can be linked to other objects such as tickets, FAQ articles or (CMDB)
            configuration items.
        </para>
    </section>
    <section>
        <title>Full-text And Quick Search</title>
        <para>
            You can execute a full-text and quick search in the entire knowledge database. You can
            also use OTRS operators for &quot;AND&quot; or &quot;OR&quot; relations.
        </para>
    </section>
    <section>
        <title>Top 10 Articles</title>
        <para>
            An overview showing the Top 10 most often accessed, most recently generated and most
            recently changed articles.
        </para>
    </section>
    <section>
        <title>Ranking / Voting Of FAQ Articles</title>
        <para>
            A personal ranking / voting of FAQ articles providing other users with information
            about the quality of FAQ articles.
        </para>
    </section>
    <section>
        <title>Inserting FAQ Articles In OTRS Replies</title>
        <para>
            You can insert FAQ articles (including images and attachments) in new tickets or replies
            you generate in OTRS.
         </para>
    </section>
    <section>
        <title>Release Workflow</title>
        <para>
            Workflow to release FAQ articles that have been newly generated or changed.
        </para>
    </section>
    <section>
        <title>RSS Feeds For Public FAQ Articles</title>
        <para>
            In the public area, an option is provided to subscribe to RSS Feeds providing
            information about changes in FAQ articles.
        </para>
    </section>
    <section>
        <title>OpenSearch Format</title>
        <para>
            The FAQ Module supports Open Search format (enabling quick searches directly from the
            browser).
        </para>
    </section>
    <section>
        <title>Create Links Using The Category Name</title>
        <para>
            From FAQ 2.2.x it is possible to refer to FAQ items by creating a link for web browser
            using the category name instead of just the category ID
        </para>
        <para>
            To be able to use this feature just replace the CategoryID parameter with Category
            parameter in your current links. Category parameter is the full category path, each
            sub-category is separated by "::" (which is also called the "Category Long Name").
            Imagine the following category tree:
        </para>
        <para>
            <screen>
                <![CDATA[
|--GrandParent
|  |--Parent
|  |  |--|Son
                ]]>
            </screen>
        </para>
        <para>
            To create a link to the "Son" category we need to specify the following path:
            Category=GrandParent::Parent::Son.
        </para>
        <para>
            See the link examples below:
        </para>
        <para>
            from:
            <ulink url="http://localhost/otrs/index.pl?Action=AdminFAQExplorer;CategoryID=1">
                    http://localhost/otrs/index.pl?Action=AdminFAQExplorer;CategoryID=1
            </ulink>
        </para>
        <para>
            to:
            <ulink url="http://localhost/otrs/index.pl?Action=AdminFAQExplorer;Category=Misc">
                http://localhost/otrs/index.pl?Action=AdminFAQExplorer;Category=Misc
            </ulink>
        </para>
        <para>
            Other Examples:
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=AdminFAQExplorer;Category=My%20Category">
                http://localhost/otrs/index.pl?Action=AdminFAQExplorer;Category=My%20Category
            </ulink>
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=CustomerFAQExplorer;Category=GranParent::Parent::Son">
                http://localhost/otrs/index.pl?Action=CustomerFAQExplorer;Category=GrandParent::Parent::Son
            </ulink>
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=PublicFAQExplorer;Category=My%20Category::SubCategory">
                http://localhost/otrs/index.pl?Action=PublicFAQExplorer;Category=My%20Category::Subcategory
            </ulink>
        </para>
    </section>
    <section>
        <title>Generic Interface FAQ Connector For Public Interface</title>
        <para>
            Allow you to use the functions for FAQ public interface via OTRS Generic Interface by
            adding the following operations.
        </para>
        <itemizedlist mark="round">
            <listitem>
                <para>LanguageList</para>
                <para>
                    This operation returns the list of all FAQ languages available in the system.
                    The response of this operation is a list of languages including the ID and Name
                    for each language.
                </para>
            </listitem>
            <listitem>
                <para>PublicCategoryList</para>
                <para>
                    This operation is used to get the system FAQ categories that have at least one
                    public FAQ item, as a consequence also the category ancestors are also listed
                    even if they don't have any public FAQ item. The output of this operation is a
                    list of categories including ID and Name for each category.
                </para>
            </listitem>
            <listitem>
                <para>PublicFAQSearch</para>
                <para>
                    By using this operation is possible to perform a FAQ search for the public FAQ
                    items using the same search parameters as in the public web interface. It will
                    return a list of IDs for matched FAQ items.
                </para>
            </listitem>
            <listitem>
                <para>PublicFAQGet</para>
                <para>
                    This operation can be used to easily obtain one or more FAQ items. The response
                    will one or more main containers called 'FAQItem' that has all the FAQ item
                    information, including attachments, each attachment is represented by an
                    'Attachment' sub-containers and they could be more than one.
                </para>
            </listitem>
        </itemizedlist>
        <note>
            <para>
                Please take a look into the appendix:
                <link linkend="GIFAQCC">Generic Interface FAQ Connector Configuration</link> below
                to learn more about how to activate this feature, as well as the appendix:
                <link linkend="GIFAQCA">Generic Interface FAQ Connector API</link>
                for details on using the above functions.
            </para>
        </note>
    </section>
    <section>
        <title>Dynamic Fields for FAQ</title>
        <para>
            From FAQ 4, basic Dynamic Fields (Text, TextArea, Checkbox, Dropdown, Multiselect, Date
            and Date/Time) has been implemented for FAQ items. It creation, behavior and
            configuration is similar to the Dynamic Fields for Ticket.
        </para>
        <para>
            Already created Dynamic Fields can not be used for FAQ, new Dynamic Fields for FAQ
            (exclusively) has to be created (Same as Ticket and Article Dynamic Fields).
        </para>
        <para>
            Dynamic Fields extend FAQ by adding multiple options to store and present information on
            FAQ Items, beyond the normal fields (e.g. Symptom, Problem, Solution, etc. ).
        </para>
    </section>
</chapter>

<!-- ********************** -->
<!-- 3. System Requirements -->
<!-- ********************** -->
<chapter>
    <title>System Requirements</title>
    <section>
        <title>Framework</title>
        <para>The following OTRS framework is required:</para>
        <para>$Framework</para>
    </section>
    <section>
        <title>Packages</title>
        <para>The following packages are required:</para>
        <para>$PackageRequired</para>
    </section>
    <section>
        <title>Operating System</title>
        <para>This package requires one of the following operating systems:</para>
        <para>$OS</para>
    </section>
    <section>
        <title>Third Party Software</title>
        <para>This third party software is required to use this package:</para>
        <itemizedlist>
            <listitem>
                <para>None.</para>
            </listitem>
        </itemizedlist>
    </section>
</chapter>

<!-- *************** -->
<!-- 4. Installation -->
<!-- *************** -->
<chapter>
    <title>Installation</title>
    <para>
        The following instructions explain how to install the package.
    </para>
    <para>
        After having successfully completed the installation, please follow the instructions
        provided in the chapter &quot;First steps&quot;.
    </para>
    <section>
        <title>Admin Interface</title>
        <para>
            Please use the following URL to install the package utilizing the Admin Interface
            (please note that you need to be in the "admin" group).
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=AdminPackageManager">
                http://localhost/otrs/index.pl?Action=AdminPackageManager
            </ulink>
        </para>
    </section>
    <section>
        <title>Command Line</title>
        <para>
            Whenever you cannot use the Admin Interface for whatever reason, you may use the
            following command line tool ("bin/otrs.Console.pl Admin::Package::Install") instead.
        </para>
        <para>
            <screen>
shell> bin/otrs.Console.pl Admin::Package::Install /path/to/$Name-$Version.opm
            </screen>
        </para>
    </section>
</chapter>

<!-- **************** -->
<!-- 5. Configuration -->
<!-- **************** -->
<chapter>
    <title>Configuration</title>
    <section>
        <title>General</title>
        <para>The package can be configured via the SysConfig in the Admin Interface. The following configuration options are available:</para>
        <section>
            <title>CustomerFrontend::HeaderMetaModule###3-FAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleMetaHead.</para>
            <para>Module to generate HTML OpenSearch profile for short faq search in the customer interface.</para>
        </section>
        <section>
            <title>CustomerFrontend::Module###CustomerFAQExplorer.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleRegistration.</para>
            <para>Frontend module registration for the customer interface.</para>
        </section>
        <section>
            <title>CustomerFrontend::Module###CustomerFAQPrint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleRegistration.</para>
            <para>Frontend module registration for the customer interface.</para>
        </section>
        <section>
            <title>CustomerFrontend::Module###CustomerFAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleRegistration.</para>
            <para>Frontend module registration for the customer interface.</para>
        </section>
        <section>
            <title>CustomerFrontend::Module###CustomerFAQZoom.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleRegistration.</para>
            <para>Frontend module registration for the customer interface.</para>
        </section>
        <section>
            <title>DashboardBackend###0398-FAQ-LastChange.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::Dashboard.</para>
            <para>Defines the parameters for the dashboard backend. &quot;Limit&quot; defines the number of entries displayed by default. &quot;Group&quot; is used to restrict access to the plugin (e. g. Group: admin;group1;group2;). &quot;Default&quot; indicates if the plugin is enabled by default or if the user needs to enable it manually.</para>
        </section>
        <section>
            <title>DashboardBackend###0399-FAQ-LastCreate.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::Dashboard.</para>
            <para>Defines the parameters for the dashboard backend. &quot;Limit&quot; defines the number of entries displayed by default. &quot;Group&quot; is used to restrict access to the plugin (e. g. Group: admin;group1;group2;). &quot;Default&quot; indicates if the plugin is enabled by default or if the user needs to enable it manually.</para>
        </section>
        <section>
            <title>DynamicFields::ObjectType###FAQ.</title>
            <para>Group: FAQ, Subgroup: DynamicFields::ObjectType::Registration.</para>
            <para>DynamicField object registration.</para>
        </section>
        <section>
            <title>FAQ::Agent::StateTypes.</title>
            <para>Group: FAQ, Subgroup: Interface.</para>
            <para>List of state types which can be used in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::ApprovalGroup.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Group for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::ApprovalQueue.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Queue for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::ApprovalRequired.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>New FAQ articles need approval before they get published.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketBody.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Ticket body for approval of FAQ article.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketDefaultState.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Default state of tickets for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketPriority.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Default priority of tickets for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketSubject.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Ticket subject for approval of FAQ article.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketType.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Default type of tickets for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::CacheTTL.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Cache Time To Leave for FAQ items.</para>
        </section>
        <section>
            <title>FAQ::Customer::StateTypes.</title>
            <para>Group: FAQ, Subgroup: Interface.</para>
            <para>List of state types which can be used in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Default::Language.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default language for FAQ articles on single language mode.</para>
        </section>
        <section>
            <title>FAQ::Default::RootCategoryComment.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default category name.</para>
        </section>
        <section>
            <title>FAQ::Default::RootCategoryName.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default category name.</para>
        </section>
        <section>
            <title>FAQ::Default::State.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default state for FAQ entry.</para>
        </section>
        <section>
            <title>FAQ::Explorer::ItemList::VotingResultColors.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>CSS color for the voting result.</para>
        </section>
        <section>
            <title>FAQ::Explorer::ItemList::VotingResultDecimalPlaces.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Decimal places of the voting result.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastChange::Limit.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Number of shown items in last changes.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastChange::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show last change items in defined interfaces.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastChange::ShowSubCategoryItems.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show items of subcategories.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastCreate::Limit.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Number of shown items in last created.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastCreate::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show last created items in defined interfaces.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastCreate::ShowSubCategoryItems.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show items of subcategories.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Path::Separator.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>FAQ path separator.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Path::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show FAQ path yes/no.</para>
        </section>
        <section>
            <title>FAQ::Explorer::QuickSearch::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Interfaces where the quick search should be shown.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Top10::Limit.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Number of shown items in the top 10 feature.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Top10::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show top 10 items in defined interfaces.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Top10::ShowSubCategoryItems.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show items of subcategories.</para>
        </section>
        <section>
            <title>FAQ::FAQHook.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>The identifier for a FAQ, e.g. FAQ#, KB#, MyFAQ#. The default is FAQ#.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQAdd###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewAdd.</para>
            <para>Dynamic fields shown in the FAQ add screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and required.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQAdd###RichTextHeight.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewAdd.</para>
            <para>Defines the height for the rich text editor component for this screen. Enter number (pixels) or percent value (relative).</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQAdd###RichTextWidth.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewAdd.</para>
            <para>Defines the width for the rich text editor component for this screen. Enter number (pixels) or percent value (relative).</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQEdit###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewEdit.</para>
            <para>Dynamic fields shown in the FAQ edit screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and required.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQEdit###RichTextHeight.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewEdit.</para>
            <para>Defines the height for the rich text editor component for this screen. Enter number (pixels) or percent value (relative).</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQEdit###RichTextWidth.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewEdit.</para>
            <para>Defines the width for the rich text editor component for this screen. Enter number (pixels) or percent value (relative).</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ order in the FAQ Explorer result of the agent interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Maximum number of FAQ articles to be displayed in the FAQ Explorer result of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###ShowColumns.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Defines the shown columns in the FAQ Explorer. This option has no effect on the position of the column.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in the FAQ Explorer of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Explorer in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQJournal###JournalLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewJournal.</para>
            <para>Maximum number of FAQ articles to be displayed in the FAQ journal in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQJournal###ShowColumns.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewJournal.</para>
            <para>Defines the shown columns in the FAQ journal. This option has no effect on the position of the column.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQJournal###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewJournal.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ journal in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQPrint###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewPrint.</para>
            <para>Dynamic fields shown in the FAQ print screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ApprovedSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###CategoryIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###CreatedUserIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###Fulltext.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ItemChangeTimePoint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ItemChangeTimeSlot.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ItemCreateTimePoint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ItemCreateTimeSlot.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###Keyword.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###LanguageIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###LastChangedUserIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###Number.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###RateSearchType.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###StateIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###Title.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ValidIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###VoteSearchType.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Dynamic fields shown in the FAQ search screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and shown by default.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ order of a search result in the agent interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###SearchCSVDynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Dynamic Fields used to export the search result in CSV format.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Maximum number of FAQ articles to be displayed in the result of a search in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###ShowColumns.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the shown columns in the FAQ search. This option has no effect on the position of the column.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in a FAQ search of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Search in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQZoom###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewZoom.</para>
            <para>Dynamic fields shown in the FAQ zoom screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentHTMLFieldHeightDefault.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewZoom.</para>
            <para>Set the default height (in pixels) of inline HTML fields in AgentFAQZoom.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentHTMLFieldHeightMax.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewZoom.</para>
            <para>Set the maximum height (in pixels) of inline HTML fields in AgentFAQZoom.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ order in the FAQ Explorer result of the customer interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Maximum number of FAQ articles to be displayed in the FAQ Explorer result of the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###SearchPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Number of FAQ articles to be displayed in the FAQ Explorer of the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in the FAQ Explorer of the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Explorer in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQOverview###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQOverview.</para>
            <para>Dynamic fields shown in the FAQ overview screen of the customer interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and required.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQPrint###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewPrint.</para>
            <para>Dynamic fields shown in the FAQ print screen of the customer interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Dynamic fields shown in the FAQ search screen of the customer interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and shown by default.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ order of a search result in the customer interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###SearchCSVDynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Dynamic Fields used to export the search result in CSV format.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Maximum number of FAQ articles to be displayed in the result of a search in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###SearchPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Number of FAQ articles to be displayed on each page of a search result in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in a FAQ search of the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Search in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQZoom###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewZoom.</para>
            <para>Dynamic fields shown in the FAQ zoom screen of the customer interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerHTMLFieldHeightDefault.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewZoom.</para>
            <para>Set the default height (in pixels) of inline HTML fields in CustomerFAQZoom (and PublicFAQZoom).</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerHTMLFieldHeightMax.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewZoom.</para>
            <para>Set the maximum height (in pixels) of inline HTML fields in CustomerFAQZoom (and PublicFAQZoom).</para>
        </section>
        <section>
            <title>FAQ::Frontend::JournalOverview###Small.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQJournalOverview.</para>
            <para>Defines an overview module to show the small view of a FAQ journal.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###000-Back.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu to go back in the FAQ zoom view of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###010-Edit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu to edit a FAQ in the its zoom view of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###020-History.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu to access the history of a FAQ in its zoom view of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###030-Print.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu to print a FAQ in the its zoom view of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###040-Link.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu that allows linking a FAQ with another object in the zoom view of such FAQ of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###050-Delete.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu that allows to delete a FAQ in its zoom view in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::Overview###Small.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQOverview.</para>
            <para>Defines an overview module to show the small view of a FAQ list.</para>
        </section>
        <section>
            <title>FAQ::Frontend::OverviewSmall###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQOverview.</para>
            <para>Dynamic fields shown in the FAQ small format overview screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ order in the FAQ Explorer result of the public interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Maximum number of FAQ articles to be displayed in the FAQ Explorer result of the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###SearchPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Number of FAQ articles to be displayed in the FAQ Explorer of the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in the FAQ Explorer of the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Explorer in the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQOverview###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQOverview.</para>
            <para>Dynamic fields shown in the FAQ overview screen of the public interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and required.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQPrint###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewPrint.</para>
            <para>Dynamic fields shown in the FAQ print screen of the public interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Dynamic fields shown in the FAQ search screen of the public interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and shown by default.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ order of a search result in the public interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###SearchCSVDynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Dynamic Fields used to export the search result in CSV format.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Maximum number of FAQ articles to be displayed in the result of a search in the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###SearchPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewFAQSearch.</para>
            <para>Number of FAQ articles to be displayed on each page of a search result in the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in a FAQ search of the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Search in the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQZoom###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewZoom.</para>
            <para>Dynamic fields shown in the FAQ zoom screen of the public interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Item::Field1.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field2.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field3.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field4.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field5.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field6.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::HTML.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Show FAQ Article with HTML.</para>
        </section>
        <section>
            <title>FAQ::Item::Voting::Rates.</title>
            <para>Group: FAQ, Subgroup: Core::Item::Voting.</para>
            <para>Rates for voting. Key must be in percent.</para>
        </section>
        <section>
            <title>FAQ::Item::Voting::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Item::Voting.</para>
            <para>Show voting in defined interfaces.</para>
        </section>
        <section>
            <title>FAQ::MultiLanguage.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Enable multiple languages on FAQ module.</para>
        </section>
        <section>
            <title>FAQ::Public::StateTypes.</title>
            <para>Group: FAQ, Subgroup: Interface.</para>
            <para>List of state types which can be used in the public interface.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###IncludeInternal.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Include internal fields on a FAQ based Ticket.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###InsertMethod.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Defines the information to be inserted in a FAQ based Ticket. &quot;Full FAQ&quot; includes text, attachments and inline images.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###ShowFieldNames.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Include the name of each field in a FAQ based Ticket.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###ShowInsertLinkButton.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Show &quot;Insert FAQ Link&quot; Button in AgentFAQZoomSmall for public FAQ Articles.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###ShowInsertTextAndLinkButton.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Show &quot;Insert FAQ Text &amp; Link&quot; / &quot;Insert Full FAQ &amp; Link&quot; Button in AgentFAQZoomSmall for public FAQ Articles.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###ShowInsertTextButton.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Show &quot;Insert FAQ Text&quot; / &quot;Insert Full FAQ&quot; Button in AgentFAQZoomSmall.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###UpdateArticleSubject.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Define if the FAQ title should be concatenated to article subject.</para>
        </section>
        <section>
            <title>FAQ::TitleSize.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default maximum size of the titles in a FAQ article to be shown.</para>
        </section>
        <section>
            <title>FAQ::Voting.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Enable voting mechanism on FAQ module.</para>
        </section>
        <section>
            <title>Frontend::HeaderMetaModule###3-FAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleMetaHead.</para>
            <para>Module to generate html OpenSearch profile for short faq search.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQAdd.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQCategory.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQDelete.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQEdit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQExplorer.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQHistory.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQJournal.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQLanguage.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQPrint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQRichText.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQSearchSmall.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQZoom.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Output::FilterElementPost###FAQ.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent.</para>
            <para>Defines where the 'Insert FAQ' link will be displayed.</para>
        </section>
        <section>
            <title>Frontend::Output::OutputFilterTextAutoLink###FAQ.</title>
            <para>Group: FAQ, Subgroup: Core::Web.</para>
            <para>A filter for HTML output to add links behind a defined string. The element Image allows two input kinds. First the name of an image (e.g. faq.png). In this case the OTRS image path will be used. The second possibility is to insert the link to the image.</para>
        </section>
        <section>
            <title>Frontend::Search###FAQ.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::SearchRouter.</para>
            <para>FAQ search backend router of the agent interface.</para>
        </section>
        <section>
            <title>Frontend::ToolBarModule###90-FAQ::AgentFAQAdd.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ToolBarModule.</para>
            <para>Toolbar Item for a shortcut.</para>
        </section>
        <section>
            <title>GenericInterface::Operation::Module###FAQ::LanguageList.</title>
            <para>Group: FAQ, Subgroup: GenericInterface::Operation::ModuleRegistration.</para>
            <para>GenericInterface module registration for the operation layer.</para>
        </section>
        <section>
            <title>GenericInterface::Operation::Module###FAQ::PublicCategoryList.</title>
            <para>Group: FAQ, Subgroup: GenericInterface::Operation::ModuleRegistration.</para>
            <para>GenericInterface module registration for the operation layer.</para>
        </section>
        <section>
            <title>GenericInterface::Operation::Module###FAQ::PublicFAQGet.</title>
            <para>Group: FAQ, Subgroup: GenericInterface::Operation::ModuleRegistration.</para>
            <para>GenericInterface module registration for the operation layer.</para>
        </section>
        <section>
            <title>GenericInterface::Operation::Module###FAQ::PublicFAQSearch.</title>
            <para>Group: FAQ, Subgroup: GenericInterface::Operation::ModuleRegistration.</para>
            <para>GenericInterface module registration for the operation layer.</para>
        </section>
        <section>
            <title>LinkObject::PossibleLink###8301.</title>
            <para>Group: FAQ, Subgroup: Core::LinkObject.</para>
            <para>This setting defines that a 'FAQ' object can be linked with other 'FAQ' objects using the 'Normal' link type.</para>
        </section>
        <section>
            <title>LinkObject::PossibleLink###8302.</title>
            <para>Group: FAQ, Subgroup: Core::LinkObject.</para>
            <para>This setting defines that a 'FAQ' object can be linked with other 'FAQ' objects using the 'ParentChild' link type.</para>
        </section>
        <section>
            <title>LinkObject::PossibleLink###8303.</title>
            <para>Group: FAQ, Subgroup: Core::LinkObject.</para>
            <para>This setting defines that a 'FAQ' object can be linked with other 'Ticket' objects using the 'Normal' link type.</para>
        </section>
        <section>
            <title>LinkObject::PossibleLink###8304.</title>
            <para>Group: FAQ, Subgroup: Core::LinkObject.</para>
            <para>This setting defines that a 'FAQ' object can be linked with other 'Ticket' objects using the 'ParentChild' link type.</para>
        </section>
        <section>
            <title>Loader::Agent::CommonCSS###200-FAQ.</title>
            <para>Group: FAQ, Subgroup: Core::Web.</para>
            <para>List of CSS files to always be loaded for the agent interface.</para>
        </section>
        <section>
            <title>Loader::Agent::CommonJS###200-FAQ.</title>
            <para>Group: FAQ, Subgroup: Core::Web.</para>
            <para>List of JS files to always be loaded for the agent interface.</para>
        </section>
        <section>
            <title>PreferencesGroups###FAQJournalOverviewSmallPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::Preferences.</para>
            <para>Parameters for the pages (in which the FAQ items are shown) of the small FAQ journal overview.</para>
        </section>
        <section>
            <title>PreferencesGroups###FAQOverviewSmallPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::Preferences.</para>
            <para>Parameters for the pages (in which the FAQ items are shown) of the small FAQ overview.</para>
        </section>
        <section>
            <title>PublicFrontend::CommonParam###Action.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public.</para>
            <para>Default value for the Action parameter for the public frontend. The Action parameter is used in the scripts of the system.</para>
        </section>
        <section>
            <title>PublicFrontend::HeaderMetaModule###3-FAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleMetaHead.</para>
            <para>Module to generate HTML OpenSearch profile for short FAQ search in the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQ.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQExplorer.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQPrint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQRSS.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQZoom.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
    </section>
    <section>
        <title>Approval function</title>
        <para>
            The OTRS FAQ has an approval feature. If you activate the approval feature all newly
            created FAQs also create a new ticket in a predefined queue. The persons who need to
            approve the FAQ entries can then act on these tickets and approve the FAQ articles if
            they see fit. As long as the article has not been approved the article will not be
            visible in the public interface.
        </para>
        <para>
            You can activate the Approval function by setting the option FAQ::ApprovalRequired to
            Yes.
        </para>
        <para>
            The approval message can be defined under FAQ::ApprovalTicketBody. You can modify the
            text if you need, and you can also use variables that will be substituted with their
            actual values when the approval note is generated. The list of the available variables
            is listed below.
        </para>
        <table id="table-of-faq-approval-variables">
        <title>Variables for FAQ Approval message</title>
          <tgroup cols="2">
            <thead>
              <row>
                <entry>
                  Name
                </entry>
                <entry>
                  Description
                </entry>
              </row>
            </thead>
            <tbody>
              <row>
                <entry>
                  &lt;OTRS_FAQ_CATEGORY&gt;
                </entry>
                <entry>
                  Category name of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_CATEGORYID&gt;
                </entry>
                <entry>
                  Category ID of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_LANGUAGE&gt;
                </entry>
                <entry>
                  Language of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_ITEMID&gt;
                </entry>
                <entry>
                  Item ID of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_NUMBER&gt;
                </entry>
                <entry>
                  FAQ Number of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_TITLE&gt;
                </entry>
                <entry>
                  Title
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_AUTHOR&gt;
                </entry>
                <entry>
                  Author name
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_STATE&gt;
                </entry>
                <entry>
                  State (visibility) of the FAQ article
                </entry>
              </row>
            </tbody>
          </tgroup>
        </table>
    </section>
</chapter>

<!-- ******** -->
<!-- 6. Usage -->
<!-- ******** -->

<chapter>
    <title>Usage</title>
    <para>This package adds tree new groups to the system:</para>
    <itemizedlist mark="round">
        <listitem>
            <para>faq.</para>
            <para>Users in this group are able to:</para>
            <itemizedlist mark="round">
                <listitem><para>Use FAQ Explorer.</para></listitem>
                <listitem>
                    <para>Add, Edit, Delete, Zoom, Print and Link FAQ Articles.</para>
               </listitem>
               <listitem><para>Use FAQ Journal.</para></listitem>
               <listitem><para>Use FAQ Search.</para></listitem>
            </itemizedlist>
        </listitem>
        <listitem>
            <para>faq_admin.</para>
            <para>Users in this group are able to:</para>
            <itemizedlist mark="round">
                <listitem><para>Add, Edit and Delete FAQ Categories.</para></listitem>
                <listitem><para>Add, Edit and Delete FAQ Languages.</para></listitem>
            </itemizedlist>
        </listitem>
        <listitem>
            <para>faq_approval.</para>
            <para>Users in this group are able to:</para>
            <itemizedlist mark="round">
                <listitem><para>Approve FAQ Articles.</para></listitem>
            </itemizedlist>
            <note>
                <para>The group to approve FAQ Articles can be changed using SysConfig.</para>
            </note>
        </listitem>
    </itemizedlist>
    <para>
        Users in "faq_admin" and "faq_approval" groups (or custom approval group) need also to be
        in the "faq" group to perform the actions. Any change in the users groups will take effect
        on FAQ after the user logout and login again.
    </para>
    <para>
        Users that are members of the "faq" group will have a new menu called "FAQ" in the
        navigation bar that is in the top of the screen (after re-login), similar to the "Ticket"
        menu.
    </para>
    <section>
        <title>Create A New FAQ Article</title>
        <para>This example shows how to create a new FAQ article.</para>
        <note>
            <para>Be sure that the logged user is a member of "faq" group.</para>
        </note>
        <orderedlist>
            <listitem>
                <para>
                    From the Navigation Bar, click on "FAQ" and then on "New" (from the opened FAQ
                    menu option).
                </para>
            </listitem>
            <listitem>
                <para>
                    Fill the required information.
                </para>
                <para>
                    There are tree possible FAQ states: "internal": only agents can see the FAQ
                    article, "external": agents and registered customer can see the FAQ article and
                    "public": this FAQ articles are accessible from the OTRS public interface.
                </para>
                <para>
                    By default the system has the Category "Misc" and the Languages "en" for English
                    and "de" for German. (more Categories and Languages can be added to the system).
                </para>
                <para>
                    On a clean system there are four multiple line fields (with other two more than
                    can be added if needed), their names an visibility can be changed in the
                    SysConfig.
                </para>
            </listitem>
            <listitem>
                <para>Click on the "Create" button.</para>
                <para>
                    This will create a new FAQ article that can be accessed from the FAQ Explorer
                </para>
            </listitem>
        </orderedlist>
        <note>
            <para>
                By default the FAQ article does not need an approval procedure, if this
                functionality is enabled and the user is also a member of the FAQ Approval group,
                a selection to set the approval state is also shown in this screen.
            </para>
        </note>
    </section>
    <section>
        <title>Create a New Category</title>
        <para>This example shows how to create a new FAQ category.</para>
        <note>
            <para>Be sure that the logged user is a member of "faq" and "faq_admin" groups.</para>
        </note>
        <orderedlist>
            <listitem>
                <para>From FAQ menu click on "Category Management".</para>
                <para>
                    A list of available categories is shown (from there is also possible to edit or
                    delete them)
                </para>
            </listitem>
            <listitem>
                <para>Click on "Add Category" from the Actions side bar.</para>
            </listitem>
            <listitem>
                <para>Fill the required information.</para>
                <para>
                    Notice that a category can be a sub item from a wider category, this is helpful
                    to organize FAQ articles in a hierarchical way (this hierarchies can be drilled
                    drown from the FAQ Explorer).
                </para>
            </listitem>
            <listitem>
                <para>Click on "Submit" button, and the new category will be ready to use.</para>
            </listitem>
        </orderedlist>
    </section>
    <section>
        <title>Create a New Language</title>
        <para>This example shows how to create a new FAQ language.</para>
        <note>
            <para>Be sure that the logged user is a member of "faq" and "faq_admin" groups.</para>
        </note>
        <orderedlist>
            <listitem>
                <para>From FAQ menu click on "Language Management".</para>
                <para>
                    A list of available languages is shown (from there is also possible to edit or
                    delete them)
                </para>
            </listitem>
            <listitem>
                <para>Click on "Add Language" from the Actions side bar.</para>
            </listitem>
            <listitem>
                <para>Fill the required information.</para>
            </listitem>
            <listitem>
                <para>Click on "Submit" button, and the new language will be ready to use.</para>
            </listitem>
        </orderedlist>
    </section>
</chapter>

<!--
***************************************** Technical part ************************************
-->
<!-- ********************************* -->
<!-- 7. Technical Implementation Detail -->
<!-- ********************************* -->
<!--
<chapter>
    <title>Technical Implementation Details</title>
    <para></para>
</chapter>
 -->
<!-- *********** -->
<!-- 8. Filelist -->
<!-- *********** -->
<chapter>
    <title>File List</title>
    <para>This list shows all included files and the referring permissions.</para>
    <para>$Filelist</para>
</chapter>

<!-- ******* -->
<!-- 9. Test -->
<!-- ******* -->
<chapter>
    <title>Tests</title>
    <para>This module has been tested on the current state of the art in quality.</para>
    <section>
        <title>Test Cases</title>
        <para>
            To test this package please follow the examples described in the Usage section, all the
            tests cases should return the expected results defined at the beginning of each example.
        </para>
    </section>
    <section>
        <title>Unit Tests</title>
        <para>
            To ensure the quality of the module, several so-called unit tests were created, to test
            the functionalities of this module. These unit tests can be run via command line.
        </para>
        <para>
            ATTENTION: Please never run unit tests on a productive system, since the added test data
            to the system will no longer be removed. Always use a test system.
        </para>
        <para>Run the package specific unit tests</para>
        <para>
            To run only the unit test which will be delivered with this package, use the following
            command on the command line:
        </para>
        <screen>
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test FAQ:FAQSearch:GenericInterface/FAQConnector:Console/Command/Admin/FAQ/Import:Console/Command/Maint/FAQ/ContentTypeSet
        </screen>
        <para>Selenium unit tests</para>
        <para>
            To run the Selenium unit tests, make sure you have a complete Selenium environment setup in your Kernel/Config.pm file and a running a WebDriver.
        </para>
        <screen>
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test AgentFAQExplorer:AgentFAQLanguage:AgentFAQPrint:AgentFAQSearch:AgentFAQZoom
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test CustomerFAQExplorer:CustomerFAQPrint:CustomerFAQSearch:CustomerFAQZoom
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test PublicFAQExplorer:PublicFAQPrint:PublicFAQRSS:PublicFAQSearch:PublicFAQZoom
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test Dashboard/FAQ:FAQJournalOverview/Small:FAQMenu/Generic:FAQOverview/Small:HeaderMeta/AgentFAQSearch:HeaderMeta/CustomerFAQSearch:HeaderMeta/PublicFAQSearch:LinkObject/FAQ
        </screen>
        <para>Run all available unit tests</para>
        <para>
            To run all available unit tests, use the following command on the command line:
        </para>
        <screen>shell> perl bin/otrs.Console.pl Dev::UnitTest::Run</screen>
    </section>
</chapter>

<!-- ************* -->
<!-- 10. Changelog -->
<!-- ************* -->
<chapter>
    <title>ChangeLog</title>
    <para>$ChangeLog</para>
</chapter>

<!-- ************** -->
<!-- 11. Appendixes -->
<!-- ************** -->
<appendix id="GIFAQCC">
    <title>Generic Interface FAQ Connector Configuration</title>
    <section>
        <title>Web Service configuration</title>
        <para>
            In order to use the web service and the operations included on this package, you should
            first of all install the web service on your system, using the Command line or taking
            advantage of the Graphical User Interface (Admin Interface). Please note that the old
            configuration for rpc.pl is not relevant for the Generic Interface and therefore not
            needed.
        </para>
        <para>
            The following is an example of how to use Command line to install the web service in
            the system using the provided YAML file (.yaml) included on this package.
        </para>
        <para>
            <screen>
shell> bin/otrs.Console.pl Admin::WebService::Add --name GenericInterfaceFAQConnector --source-path scripts/webservices/GenericInterfaceFAQConnector.yaml
            </screen>
        </para>
        <para>
            Also you can install the web service importing the mentioned YAML file via web
            interface in the next URL using the 'Import web service' button on the left side bar.
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=AdminGenericInterfaceWebservice;Subaction=Add">
                http://localhost/otrs/index.pl?Action=AdminGenericInterfaceWebservice;Subaction=Add
            </ulink>
        </para>
        <para>
            The content of the YAML file is shown below.
        </para>
        <para>
            <screen>
                <![CDATA[
---
Debugger:
  DebugThreshold: debug
  TestMode: 0
Description: ''
Provider:
  Operation:
    LanguageList:
      Description: List  all availables languages
      Type: FAQ::LanguageList
    PublicCategoryList:
      Description: List all public FAQ categories (with tree information)
      Type: FAQ::PublicCategoryList
    PublicFAQSearch:
      Description: Search for public FAQs
      Type: FAQ::PublicFAQSearch
    PublicFAQGet:
      Description: Retrieve public FAQ entries
      Type: FAQ::PublicFAQGet
  Transport:
    Config:
      Encoding: UTF-8
      Endpoint: ''
      MaxLength: 10000000
      NameSpace: http://www.otrs.org/FAQConnector/
      SOAPAction: ''
    Type: HTTP::SOAP
RemoteSystem: ''
                ]]>
            </screen>
        </para>
        <para>
            In order to use the web service you need to use an new interface in OTRS.
            As for agents you use index.pl and for customers you use customer.pl, for web
            services you use "nph-genericinterface.pl".
        </para>
        <para>
            The default and suggested name for this web service is GenericFAQConnector.
            Since the name of the web service can be changed is very important that you write
            down the current name of your web service and update it in all locations that access
            to it.
        </para>
        <para>
            When a web service is installed on the system it always has an associated ID number.
            You can call the web service by name or by ID number. To get the list of
            "valid" web services and they corresponding ID number you can
            use the following command:
        </para>
        <para>
            <screen>
shell> bin/otrs.Console.pl Admin::WebService::List
            </screen>
        </para>
        <para>
            For this specific web service, using the default configuration you can call it as
            follows:
        </para>
        <para>
            <ulink url="http://localhost/otrs/nph-genericinterface.pl/Webservice/GenericFAQConnector">
                http://localhost/otrs/nph-genericinterface.pl/Webservice/GenericFAQConnector
            </ulink>
            (by name, recommended) or
            <ulink url="http://localhost/otrs/nph-genericinterface.pl/WebserviceID/1">
                http://localhost/otrs/nph-genericinterface.pl/WebserviceID/1
            </ulink>
            (by ID).
        </para>
        <note>
            <para>
                Both web service name and ID from the example above could be different in your
                current environment.
            </para>
        </note>
    </section>
</appendix>
<appendix id="GIFAQCA">
    <title>Generic Interface FAQ Connector API</title>
    <para>
        For the following examples uses SOAP XML data structures since HTTP::SOAP is the default
        transport for Generic Interface Operations and can be used with otrs.SOAPRequest.pl.
    </para>
    <para>
        otrs.SOAPRequest.pl is a simple Perl script to test the OTRS Generic Interface, the code
        can be found in the OTRS administration manual.
    </para>
    <section>
        <title>LanguageList</title>
        <para>
            For this operation is not necessary to send any special parameter to the server, you
            just need to request the web service directly indicating the "LanguageList" operation.
            The operation will return a list of languages including ID and the Name for each
            language on the system.
        </para>
        <para>
            Request format:
        </para>
        <para>
            <screen>
                <![CDATA[
        <LanguageList/>
                ]]>
            </screen>
        </para>
        <para>
            Response format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <LanguageListResponse>
         <!--1 or more repetitions:-->
         <Language>
            <ID>?</ID>
            <Name>?</Name>
         </Language>
      </LanguageListResponse>
                ]]>
            </screen>
        </para>
        <para>
            Response example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <LanguageListResponse>
         <Language>
            <ID>1</ID>
            <Name>en</Name>
         </Language>
         <Language>
            <ID>2</ID>
            <Name>de</Name>
         </Language>
         <Language>
            <ID>3</ID>
            <Name>es</Name>
         </Language>
      </LanguageListResponse>
                ]]>
            </screen>
        </para>
    </section>
    <section>
        <title>PubliCategoryList</title>
        <para>
            For this operation is also not necessary any special parameter, just the simple call for
            requesting the web service with the operation name 'PublicCategoryList' as a response
            you will receive a list of categories including the ID and the Name (long format) for
            each category.
        </para>
        <para>
            Request format:
        </para>
        <para>
            <screen>
                <![CDATA[
        <PublicCategoryList/>
                ]]>
            </screen>
        </para>
        <para>
            Response format:
        </para>
        <para>
            <screen>
                <![CDATA[
     <PublicCategoryListResponse>
         <!--1 or more repetitions:-->
         <Category>
            <ID>?</ID>
            <Name>?</Name>
         </Category>
      </PublicCategoryListResponse>
                 ]]>
            </screen>
        </para>
        <para>
            Response example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicCategoryListResponse>
         <Category>
            <ID>2</ID>
            <Name>Pulbic</Name>
         </Category>
         <Category>
            <ID>5</ID>
            <Name>Public::SubCategory A</Name>
         </Category>
         <Category>
            <ID>8</ID>
            <Name>Public::SubCategory B</Name>
         </Category>
      </PublicCategoryListResponse>
                ]]>
            </screen>
        </para>
    </section>
    <section>
        <title>PublicFAQGet</title>
        <para>
            To be able to get one or more FAQ entries, you should send the ItemID(s) as a parameter
            for the FAQ entry you want to get. You will receive the entire FAQ record with all
            attachments included. Note that attachment contents will be transferred as
            base64-encoded strings.
        </para>
        <para>
            Setting GetAttachmentContents to 0 will prevent to fetch the content of the attachment
            this will increase the performance of the operation when the attachment contents are not
            really needed.
        </para>
        <para>
            Request format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQGet>
         <ItemID>?</ItemID>
         <!-- optional, defaults to 1 -->
         <GetAttachmentContents>?</GetAttachmentContents>
      </PublicFAQGet>
                ]]>
            </screen>
        </para>
        <para>
            Request example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQGet>
        <ItemID>6,7</ItemID>
      </PublicFAQGet>
                ]]>
            </screen>
        </para>
        <para>
            Response format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQGetResponse>
         <!--Zero or more repetitions:-->
         <FAQItem>
            <Approved>?</Approved>
            <CategoryID>?</CategoryID>
            <CategoryName>?</CategoryName>
            <CategoryShortName>?</CategoryShortName>
            <Changed>?</Changed>
            <ChangedBy>?</ChangedBy>
            <Created>?</Created>
            <CreatedBy>?</CreatedBy>
            <FAQID>?</FAQID>
            <Field1>?</Field1>
            <Field2>?</Field2>
            <Field3>?</Field3>
            <Field4>?</Field4>
            <Field5>?</Field5>
            <Field6>?</Field6>
            <ID>?</ID>
            <ItemID>?</ItemID>
            <Keywords>?</Keywords>
            <Language>?</Language>
            <LanguageID>?</LanguageID>
            <Name>?</Name>
            <Number>?</Number>
            <State>?</State>
            <StateID>?</StateID>
            <StateTypeID>?</StateTypeID>
            <Title>?</Title>
            <VoteResult>?</VoteResult>
            <Votes>?</Votes>
            <StateTypeName>?</StateTypeName>
            <ContentType>?</ContentType>
            <!--Zero or more repetitions:-->
            <Attachment>
               <Filename>?</Filename>
               <Filesize>?</Filesize>
               <ContentType>?</ContentType>
               <Content>cid:1269416154096</Content>
               <Inline>?</Inline>
               <FileID>?</FileID>
            </Attachment>
         </FAQItem>
      </PublicFAQGetResponse>
                ]]>
            </screen>
        </para>
        <para>
            Response example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQGetResponse>
          <FAQItem>
            <ID>6</ID>
            <ItemID>6</ItemID>
            <FAQID>6</FAQID>
            <Number>10006</Number>
            <CategoryID>2</CategoryID>
            <CategoryName>Public</CategoryName>
            <CategoryShortName>Public</CategoryShortName>
            <LanguageID>1</LanguageID>
            <Language>en</Language>
            <Title>Public2</Title>
            <Field1>The Symptoms</Field1>
            <Field2>The Problem</Field2>
            <Field3>The Solution</Field3>
            <Field4/>
            <Field5/>
            <Field6>The Comments</Field6>
            <Approved>1</Approved>
            <Keywords>Keyword1 Keyword2 Keyword3</Keywords>
            <Votes>1</Votes>
            <VoteResult>75.00</VoteResult>
            <StateID>3</StateID>
            <State>public (all)</State>
            <StateTypeID>3</StateTypeID>
            <StateTypeName>public</StateTypeName>
            <Created>2010-11-02 08:06:43</Created>
            <CreatedBy>1</CreatedBy>
            <Changed>2010-11-02 08:06:43</Changed>
            <ChangedBy>1</ChangedBy>
            <Name>1288706803-91.878184450707</Name>
            <ContentType>text/html</ContentType>
             <Attachment>
                <Content>...==</Content>
                <ContentType>text/plain</ContentType>
                <Filename>Details.txt</Filename>
                <Filesize>296</Filesize>
               <Inline>0</Inline>
               <FileID>34</FileID>
             </Attachment>
             <Attachment>
                <Content>...==</Content>
                <ContentType>text/plain</ContentType>
                <Filename>Text.bin</Filename>
                <Filesize>980</Filesize>
               <Inline>0</Inline>
               <FileID>35</FileID>
             </Attachment>
          </FAQItem>
          <FAQItem>
            <ID>7</ID>
            <ItemID>7</ItemID>
            <FAQID>7</FAQID>
            <Number>10006</Number>
            <CategoryID>2</CategoryID>
            <CategoryName>Public</CategoryName>
            <CategoryShortName>Public</CategoryShortName>
            <LanguageID>1</LanguageID>
            <Language>en</Language>
            <Title>Public777</Title>
            <Field1>The Symptoms</Field1>
            <Field2>The Problem</Field2>
            <Field3>The Solution</Field3>
            <Field4/>
            <Field5/>
            <Field6>The Comments</Field6>
            <Approved>1</Approved>
            <Keywords>Keyword1 Keyword2 Keyword3</Keywords>
            <Votes>1</Votes>
            <VoteResult>75.00</VoteResult>
            <StateID>3</StateID>
            <State>public (all)</State>
            <StateTypeID>3</StateTypeID>
            <StateTypeName>public</StateTypeName>
            <Created>2010-16-03 02:06:43</Created>
            <CreatedBy>1</CreatedBy>
            <Changed>2010-11-02 02:06:43</Changed>
            <ChangedBy>1</ChangedBy>
            <Name>1288706803-91.878184450707</Name>
            <ContentType>text/html</ContentType>
          </FAQItem>
      </PublicFAQGetResponse>
                ]]>
            </screen>
        </para>
    </section>
    <section>
        <title>PublicFAQSearch</title>
        <para>
            For this operation you can specify the following optional parameters: Name, Title, What
            (full text search), Keyword, LanguageIDs and CategoryIDs to narrow the search results.
            You may also specify the order of the results by the following parameters: OrderBy and
            OrderByDirection.
        </para>
        <para>
            Send a request to the web service with the operation name 'PublicFAQSearch' as a
            response you will receive a list of FAQ item IDs.
        </para>
        <note>
            <para>
                The full FAQ item data can be retrieved for each ID by using 'PublicFAQGet'
                operation separately.
            </para>
        </note>
        <para>
            Request format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQSearch>
         <!--Optional:-->
         <Number>?</Number>
         <!--Optional:-->
         <Title>?</Title>
         <!--Optional:-->
         <What>?</What>
         <!--Optional:-->
         <Keyword>?</Keyword>
         <!--Zero or more repetitions:-->
         <LanguageIDs>?</LanguageIDs>
         <!--Zero or more repetitions:-->
         <CategoryIDs>?</CategoryIDs>
         <!--Zero or more repetitions:-->
         <SortBy>?</SortBy>
         <!--Optional:-->
         <OrderBy>?</OrderBy>
         <!--Optional:-->
         <OprderByDirection>?</OprderByDirection>
      </PublicFAQSearch>
                ]]>
            </screen>
        </para>
        <para>
            Request example:
        </para>
        <para>
            <screen>
                <![CDATA[
     <PublicFAQSearch>
        <Number>*134*</Number>
        <Title>*some title*</Title>
        <What>*some text*</What>
        <Keyword>*webserver*</Keyword/>
        <LanguageIDs>1</LanguageIDs>
        <CategoryIDs>2</CategoryIDs>
        <OrderBy>FAQID</OrderBy>
        <OrderByDirection>Up</OrderByDirection>
      </PublicFAQSearch>
                ]]>
            </screen>
        </para>
        <para>
            Response format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQSearchResponse>
         <!--Zero or more repetitions:-->
         <ID>?</ID>
      </PublicFAQSearchResponse>
                ]]>
            </screen>
        </para>
        <para>
            Response example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQSearchResponse>
         <ID>20</ID>
         <ID>19</ID>
         <ID>18</ID>
         <ID>17</ID>
         <ID>16</ID>
         <ID>15</ID>
         <ID>14</ID>
         <ID>13</ID>
         <ID>11</ID>
         <ID>6</ID>
         <ID>5</ID>
      </PublicFAQSearchResponse>
                ]]>
            </screen>
        </para>
    </section>
</appendix>
</book>


Fixed version (ground truth):
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
    "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">

<book lang="en">

<!--
************************************** Head ***********************************************
-->
<bookinfo>
    <title>$Name</title>
    <edition>$Description Version $Version</edition>
    <copyright>
        <year>$YearStamp</year>
        <holder>$Vendor, $URL</holder>
    </copyright>
    <date>$DateStamp</date>
    <legalnotice>
        <para>$License</para>
        <para>
            This work is copyrighted by $Vendor, Norsk-Data-Str. 1, 61352 Bad Homburg, Germany.
        </para>
        <para>Build Date: $DateStamp</para>
    </legalnotice>
</bookinfo>

<!--
************************************ Customer part ******************************************
-->

<!-- ********** -->
<!-- 1. Preface -->
<!-- ********** -->
<preface id="preface">
    <title>Preface</title>
    <para>
        The FAQ Module is an OTRS extension providing an FAQ or rather a knowledge database.
    </para>
    <para>
        It facilitates speeding-up the knowledge transfer between agents or (using a public web
        interface) between organizations and their customers, therefore effectively saving time.
    </para>
    <para>
        If you have questions regarding this document or if you need further information, please log in to our customer portal at portal.otrs.com with your OTRS ID and create a ticket.
        You do not have an OTRS ID yet? Register
        <ulink url="https://portal.otrs.com/otrs/customer.pl#Signup">here for free</ulink>.
    </para>
</preface>

<!-- *************** -->
<!-- 2. Feature List -->
<!-- *************** -->
<chapter>
    <title>Feature List</title>
    <section>
        <title>FAQ Explorer</title>
        <para>
            Intuitive navigation and flexible mapping of theme hierarchies within the FAQ Explorer
            enable easy navigation through the database.
        </para>
    </section>
    <section>
        <title>WYSIWYG Editor</title>
        <para>
            Using the WYSIWYG Editor you can change the formatting of articles and include screen
            shots or images.
        </para>
    </section>
    <section>
        <title>FAQ Articles</title>
        <para>
            FAQ articles with various attributes like &quot;Symptom&quot;, &quot;Problem&quot;,
            &quot;Solution&quot;, &quot;Title&quot;, &quot;Language&quot;, &quot;Category&quot;,
            &quot;Keywords&quot;, &quot;State&quot;, &quot;Created&quot; and &quot;Changed&quot;
        </para>
    </section>
    <section>
        <title>FAQ Attachments</title>
        <para>
            You can add attachments to FAQ articles, which are available in the customer interface,
            too (e. g. user guides in pdf format).
        </para>
    </section>
    <section>
        <title>Agent And Customer Interfaces</title>
        <para>
            Using the FAQ state you can determine the interface(s), in which an FAQ article should
            be displayed. Articles with their state set to &quot;internal&quot; are only visible for
            agents via the Agent Interface; Articles whose state is set to &quot;external&quot; are
            also displayed in the protected customer section, and articles tagged as
            &quot;public&quot; are available in the non-protected public area as well.
        </para>
    </section>
    <section>
        <title>Comfortable Navigation / Clickable Keywords</title>
        <para>
            The key words feature enables comfortable navigation to alternative articles using
            clickable key words.
        </para>
    </section>
    <section>
        <title>Linked Objects</title>
        <para>
            FAQ articles can be linked to other objects such as tickets, FAQ articles or (CMDB)
            configuration items.
        </para>
    </section>
    <section>
        <title>Full-text And Quick Search</title>
        <para>
            You can execute a full-text and quick search in the entire knowledge database. You can
            also use OTRS operators for &quot;AND&quot; or &quot;OR&quot; relations.
        </para>
    </section>
    <section>
        <title>Top 10 Articles</title>
        <para>
            An overview showing the Top 10 most often accessed, most recently generated and most
            recently changed articles.
        </para>
    </section>
    <section>
        <title>Ranking / Voting Of FAQ Articles</title>
        <para>
            A personal ranking / voting of FAQ articles providing other users with information
            about the quality of FAQ articles.
        </para>
    </section>
    <section>
        <title>Inserting FAQ Articles In OTRS Replies</title>
        <para>
            You can insert FAQ articles (including images and attachments) in new tickets or replies
            you generate in OTRS.
         </para>
    </section>
    <section>
        <title>Release Workflow</title>
        <para>
            Workflow to release FAQ articles that have been newly generated or changed.
        </para>
    </section>
    <section>
        <title>RSS Feeds For Public FAQ Articles</title>
        <para>
            In the public area, an option is provided to subscribe to RSS Feeds providing
            information about changes in FAQ articles.
        </para>
    </section>
    <section>
        <title>OpenSearch Format</title>
        <para>
            The FAQ Module supports Open Search format (enabling quick searches directly from the
            browser).
        </para>
    </section>
    <section>
        <title>Create Links Using The Category Name</title>
        <para>
            From FAQ 2.2.x it is possible to refer to FAQ items by creating a link for web browser
            using the category name instead of just the category ID
        </para>
        <para>
            To be able to use this feature just replace the CategoryID parameter with Category
            parameter in your current links. Category parameter is the full category path, each
            sub-category is separated by "::" (which is also called the "Category Long Name").
            Imagine the following category tree:
        </para>
        <para>
            <screen>
                <![CDATA[
|--GrandParent
|  |--Parent
|  |  |--|Son
                ]]>
            </screen>
        </para>
        <para>
            To create a link to the "Son" category we need to specify the following path:
            Category=GrandParent::Parent::Son.
        </para>
        <para>
            See the link examples below:
        </para>
        <para>
            from:
            <ulink url="http://localhost/otrs/index.pl?Action=AdminFAQExplorer;CategoryID=1">
                    http://localhost/otrs/index.pl?Action=AdminFAQExplorer;CategoryID=1
            </ulink>
        </para>
        <para>
            to:
            <ulink url="http://localhost/otrs/index.pl?Action=AdminFAQExplorer;Category=Misc">
                http://localhost/otrs/index.pl?Action=AdminFAQExplorer;Category=Misc
            </ulink>
        </para>
        <para>
            Other Examples:
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=AdminFAQExplorer;Category=My%20Category">
                http://localhost/otrs/index.pl?Action=AdminFAQExplorer;Category=My%20Category
            </ulink>
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=CustomerFAQExplorer;Category=GranParent::Parent::Son">
                http://localhost/otrs/index.pl?Action=CustomerFAQExplorer;Category=GrandParent::Parent::Son
            </ulink>
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=PublicFAQExplorer;Category=My%20Category::SubCategory">
                http://localhost/otrs/index.pl?Action=PublicFAQExplorer;Category=My%20Category::Subcategory
            </ulink>
        </para>
    </section>
    <section>
        <title>Generic Interface FAQ Connector For Public Interface</title>
        <para>
            Allow you to use the functions for FAQ public interface via OTRS Generic Interface by
            adding the following operations.
        </para>
        <itemizedlist mark="round">
            <listitem>
                <para>LanguageList</para>
                <para>
                    This operation returns the list of all FAQ languages available in the system.
                    The response of this operation is a list of languages including the ID and Name
                    for each language.
                </para>
            </listitem>
            <listitem>
                <para>PublicCategoryList</para>
                <para>
                    This operation is used to get the system FAQ categories that have at least one
                    public FAQ item, as a consequence also the category ancestors are also listed
                    even if they don't have any public FAQ item. The output of this operation is a
                    list of categories including ID and Name for each category.
                </para>
            </listitem>
            <listitem>
                <para>PublicFAQSearch</para>
                <para>
                    By using this operation is possible to perform a FAQ search for the public FAQ
                    items using the same search parameters as in the public web interface. It will
                    return a list of IDs for matched FAQ items.
                </para>
            </listitem>
            <listitem>
                <para>PublicFAQGet</para>
                <para>
                    This operation can be used to easily obtain one or more FAQ items. The response
                    will one or more main containers called 'FAQItem' that has all the FAQ item
                    information, including attachments, each attachment is represented by an
                    'Attachment' sub-containers and they could be more than one.
                </para>
            </listitem>
        </itemizedlist>
        <note>
            <para>
                Please take a look into the appendix:
                <link linkend="GIFAQCC">Generic Interface FAQ Connector Configuration</link> below
                to learn more about how to activate this feature, as well as the appendix:
                <link linkend="GIFAQCA">Generic Interface FAQ Connector API</link>
                for details on using the above functions.
            </para>
        </note>
    </section>
    <section>
        <title>Dynamic Fields for FAQ</title>
        <para>
            From FAQ 4, basic Dynamic Fields (Text, TextArea, Checkbox, Dropdown, Multiselect, Date
            and Date/Time) has been implemented for FAQ items. It creation, behavior and
            configuration is similar to the Dynamic Fields for Ticket.
        </para>
        <para>
            Already created Dynamic Fields can not be used for FAQ, new Dynamic Fields for FAQ
            (exclusively) has to be created (Same as Ticket and Article Dynamic Fields).
        </para>
        <para>
            Dynamic Fields extend FAQ by adding multiple options to store and present information on
            FAQ Items, beyond the normal fields (e.g. Symptom, Problem, Solution, etc. ).
        </para>
    </section>
</chapter>

<!-- ********************** -->
<!-- 3. System Requirements -->
<!-- ********************** -->
<chapter>
    <title>System Requirements</title>
    <section>
        <title>Framework</title>
        <para>The following OTRS framework is required:</para>
        <para>$Framework</para>
    </section>
    <section>
        <title>Packages</title>
        <para>The following packages are required:</para>
        <para>$PackageRequired</para>
    </section>
    <section>
        <title>Operating System</title>
        <para>This package requires one of the following operating systems:</para>
        <para>$OS</para>
    </section>
    <section>
        <title>Third Party Software</title>
        <para>This third party software is required to use this package:</para>
        <itemizedlist>
            <listitem>
                <para>None.</para>
            </listitem>
        </itemizedlist>
    </section>
</chapter>

<!-- *************** -->
<!-- 4. Installation -->
<!-- *************** -->
<chapter>
    <title>Installation</title>
    <para>
        The following instructions explain how to install the package.
    </para>
    <para>
        After having successfully completed the installation, please follow the instructions
        provided in the chapter &quot;First steps&quot;.
    </para>
    <section>
        <title>Admin Interface</title>
        <para>
            Please use the following URL to install the package utilizing the Admin Interface
            (please note that you need to be in the "admin" group).
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=AdminPackageManager">
                http://localhost/otrs/index.pl?Action=AdminPackageManager
            </ulink>
        </para>
    </section>
    <section>
        <title>Command Line</title>
        <para>
            Whenever you cannot use the Admin Interface for whatever reason, you may use the
            following command line tool ("bin/otrs.Console.pl Admin::Package::Install") instead.
        </para>
        <para>
            <screen>
shell> bin/otrs.Console.pl Admin::Package::Install /path/to/$Name-$Version.opm
            </screen>
        </para>
    </section>
</chapter>

<!-- **************** -->
<!-- 5. Configuration -->
<!-- **************** -->
<chapter>
    <title>Configuration</title>
    <section>
        <title>General</title>
        <para>The package can be configured via the SysConfig in the Admin Interface. The following configuration options are available:</para>
        <section>
            <title>CustomerFrontend::HeaderMetaModule###3-FAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleMetaHead.</para>
            <para>Module to generate HTML OpenSearch profile for short faq search in the customer interface.</para>
        </section>
        <section>
            <title>CustomerFrontend::Module###CustomerFAQExplorer.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleRegistration.</para>
            <para>Frontend module registration for the customer interface.</para>
        </section>
        <section>
            <title>CustomerFrontend::Module###CustomerFAQPrint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleRegistration.</para>
            <para>Frontend module registration for the customer interface.</para>
        </section>
        <section>
            <title>CustomerFrontend::Module###CustomerFAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleRegistration.</para>
            <para>Frontend module registration for the customer interface.</para>
        </section>
        <section>
            <title>CustomerFrontend::Module###CustomerFAQZoom.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::ModuleRegistration.</para>
            <para>Frontend module registration for the customer interface.</para>
        </section>
        <section>
            <title>DashboardBackend###0398-FAQ-LastChange.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::Dashboard.</para>
            <para>Defines the parameters for the dashboard backend. &quot;Limit&quot; defines the number of entries displayed by default. &quot;Group&quot; is used to restrict access to the plugin (e. g. Group: admin;group1;group2;). &quot;Default&quot; indicates if the plugin is enabled by default or if the user needs to enable it manually.</para>
        </section>
        <section>
            <title>DashboardBackend###0399-FAQ-LastCreate.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::Dashboard.</para>
            <para>Defines the parameters for the dashboard backend. &quot;Limit&quot; defines the number of entries displayed by default. &quot;Group&quot; is used to restrict access to the plugin (e. g. Group: admin;group1;group2;). &quot;Default&quot; indicates if the plugin is enabled by default or if the user needs to enable it manually.</para>
        </section>
        <section>
            <title>DynamicFields::ObjectType###FAQ.</title>
            <para>Group: FAQ, Subgroup: DynamicFields::ObjectType::Registration.</para>
            <para>DynamicField object registration.</para>
        </section>
        <section>
            <title>FAQ::Agent::StateTypes.</title>
            <para>Group: FAQ, Subgroup: Interface.</para>
            <para>List of state types which can be used in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::ApprovalGroup.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Group for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::ApprovalQueue.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Queue for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::ApprovalRequired.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>New FAQ articles need approval before they get published.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketBody.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Ticket body for approval of FAQ article.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketDefaultState.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Default state of tickets for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketPriority.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Default priority of tickets for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketSubject.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Ticket subject for approval of FAQ article.</para>
        </section>
        <section>
            <title>FAQ::ApprovalTicketType.</title>
            <para>Group: FAQ, Subgroup: Core::Approval.</para>
            <para>Default type of tickets for the approval of FAQ articles.</para>
        </section>
        <section>
            <title>FAQ::CacheTTL.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Cache Time To Leave for FAQ items.</para>
        </section>
        <section>
            <title>FAQ::Customer::StateTypes.</title>
            <para>Group: FAQ, Subgroup: Interface.</para>
            <para>List of state types which can be used in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Default::Language.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default language for FAQ articles on single language mode.</para>
        </section>
        <section>
            <title>FAQ::Default::RootCategoryComment.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default category name.</para>
        </section>
        <section>
            <title>FAQ::Default::RootCategoryName.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default category name.</para>
        </section>
        <section>
            <title>FAQ::Default::State.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default state for FAQ entry.</para>
        </section>
        <section>
            <title>FAQ::Explorer::ItemList::VotingResultColors.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>CSS color for the voting result.</para>
        </section>
        <section>
            <title>FAQ::Explorer::ItemList::VotingResultDecimalPlaces.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Decimal places of the voting result.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastChange::Limit.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Number of shown items in last changes.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastChange::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show last change items in defined interfaces.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastChange::ShowSubCategoryItems.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show items of subcategories.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastCreate::Limit.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Number of shown items in last created.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastCreate::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show last created items in defined interfaces.</para>
        </section>
        <section>
            <title>FAQ::Explorer::LastCreate::ShowSubCategoryItems.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show items of subcategories.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Path::Separator.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>FAQ path separator.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Path::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show FAQ path yes/no.</para>
        </section>
        <section>
            <title>FAQ::Explorer::QuickSearch::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Interfaces where the quick search should be shown.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Top10::Limit.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Number of shown items in the top 10 feature.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Top10::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show top 10 items in defined interfaces.</para>
        </section>
        <section>
            <title>FAQ::Explorer::Top10::ShowSubCategoryItems.</title>
            <para>Group: FAQ, Subgroup: Core::Explorer.</para>
            <para>Show items of subcategories.</para>
        </section>
        <section>
            <title>FAQ::FAQHook.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>The identifier for a FAQ, e.g. FAQ#, KB#, MyFAQ#. The default is FAQ#.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQAdd###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewAdd.</para>
            <para>Dynamic fields shown in the FAQ add screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and required.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQAdd###RichTextHeight.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewAdd.</para>
            <para>Defines the height for the rich text editor component for this screen. Enter number (pixels) or percent value (relative).</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQAdd###RichTextWidth.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewAdd.</para>
            <para>Defines the width for the rich text editor component for this screen. Enter number (pixels) or percent value (relative).</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQEdit###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewEdit.</para>
            <para>Dynamic fields shown in the FAQ edit screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and required.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQEdit###RichTextHeight.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewEdit.</para>
            <para>Defines the height for the rich text editor component for this screen. Enter number (pixels) or percent value (relative).</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQEdit###RichTextWidth.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewEdit.</para>
            <para>Defines the width for the rich text editor component for this screen. Enter number (pixels) or percent value (relative).</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ order in the FAQ Explorer result of the agent interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Maximum number of FAQ articles to be displayed in the FAQ Explorer result of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###ShowColumns.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Defines the shown columns in the FAQ Explorer. This option has no effect on the position of the column.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in the FAQ Explorer of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQExplorer###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewExplorer.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Explorer in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQJournal###JournalLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewJournal.</para>
            <para>Maximum number of FAQ articles to be displayed in the FAQ journal in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQJournal###ShowColumns.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewJournal.</para>
            <para>Defines the shown columns in the FAQ journal. This option has no effect on the position of the column.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQJournal###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewJournal.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ journal in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQPrint###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewPrint.</para>
            <para>Dynamic fields shown in the FAQ print screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ApprovedSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###CategoryIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###CreatedUserIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###Fulltext.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ItemChangeTimePoint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ItemChangeTimeSlot.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ItemCreateTimePoint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ItemCreateTimeSlot.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###Keyword.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###LanguageIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###LastChangedUserIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###Number.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###RateSearchType.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###StateIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###Title.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###ValidIDs.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Defaults###VoteSearchType.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default shown FAQ search attribute for FAQ search screen.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Dynamic fields shown in the FAQ search screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and shown by default.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ order of a search result in the agent interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###SearchCSVDynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Dynamic Fields used to export the search result in CSV format.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Maximum number of FAQ articles to be displayed in the result of a search in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###ShowColumns.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the shown columns in the FAQ search. This option has no effect on the position of the column.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in a FAQ search of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQSearch###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewSearch.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Search in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentFAQZoom###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewZoom.</para>
            <para>Dynamic fields shown in the FAQ zoom screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentHTMLFieldHeightDefault.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewZoom.</para>
            <para>Set the default height (in pixels) of inline HTML fields in AgentFAQZoom.</para>
        </section>
        <section>
            <title>FAQ::Frontend::AgentHTMLFieldHeightMax.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::ViewZoom.</para>
            <para>Set the maximum height (in pixels) of inline HTML fields in AgentFAQZoom.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ order in the FAQ Explorer result of the customer interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Maximum number of FAQ articles to be displayed in the FAQ Explorer result of the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###SearchPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Number of FAQ articles to be displayed in the FAQ Explorer of the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in the FAQ Explorer of the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQExplorer###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewExplorer.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Explorer in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQOverview###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQOverview.</para>
            <para>Dynamic fields shown in the FAQ overview screen of the customer interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and required.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQPrint###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewPrint.</para>
            <para>Dynamic fields shown in the FAQ print screen of the customer interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Dynamic fields shown in the FAQ search screen of the customer interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and shown by default.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ order of a search result in the customer interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###SearchCSVDynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Dynamic Fields used to export the search result in CSV format.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Maximum number of FAQ articles to be displayed in the result of a search in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###SearchPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Number of FAQ articles to be displayed on each page of a search result in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in a FAQ search of the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQSearch###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewSearch.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Search in the customer interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerFAQZoom###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewZoom.</para>
            <para>Dynamic fields shown in the FAQ zoom screen of the customer interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerHTMLFieldHeightDefault.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewZoom.</para>
            <para>Set the default height (in pixels) of inline HTML fields in CustomerFAQZoom (and PublicFAQZoom).</para>
        </section>
        <section>
            <title>FAQ::Frontend::CustomerHTMLFieldHeightMax.</title>
            <para>Group: FAQ, Subgroup: Frontend::Customer::FAQ::ViewZoom.</para>
            <para>Set the maximum height (in pixels) of inline HTML fields in CustomerFAQZoom (and PublicFAQZoom).</para>
        </section>
        <section>
            <title>FAQ::Frontend::JournalOverview###Small.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQJournalOverview.</para>
            <para>Defines an overview module to show the small view of a FAQ journal.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###000-Back.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu to go back in the FAQ zoom view of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###010-Edit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu to edit a FAQ in the its zoom view of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###020-History.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu to access the history of a FAQ in its zoom view of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###030-Print.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu to print a FAQ in the its zoom view of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###040-Link.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu that allows linking a FAQ with another object in the zoom view of such FAQ of the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::MenuModule###050-Delete.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQ::MenuModule.</para>
            <para>Shows a link in the menu that allows to delete a FAQ in its zoom view in the agent interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::Overview###Small.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQOverview.</para>
            <para>Defines an overview module to show the small view of a FAQ list.</para>
        </section>
        <section>
            <title>FAQ::Frontend::OverviewSmall###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::FAQOverview.</para>
            <para>Dynamic fields shown in the FAQ small format overview screen of the agent interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ order in the FAQ Explorer result of the public interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Maximum number of FAQ articles to be displayed in the FAQ Explorer result of the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###SearchPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Number of FAQ articles to be displayed in the FAQ Explorer of the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in the FAQ Explorer of the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQExplorer###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewExplorer.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Explorer in the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQOverview###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQOverview.</para>
            <para>Dynamic fields shown in the FAQ overview screen of the public interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and required.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQPrint###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewPrint.</para>
            <para>Dynamic fields shown in the FAQ print screen of the public interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Dynamic fields shown in the FAQ search screen of the public interface. Possible settings: 0 = Disabled, 1 = Enabled, 2 = Enabled and shown by default.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###Order::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ order of a search result in the public interface. Up: oldest on top. Down: latest on top.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###SearchCSVDynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Dynamic Fields used to export the search result in CSV format.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###SearchLimit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Maximum number of FAQ articles to be displayed in the result of a search in the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###SearchPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewFAQSearch.</para>
            <para>Number of FAQ articles to be displayed on each page of a search result in the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###SortBy::Default.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Defines the default FAQ attribute for FAQ sorting in a FAQ search of the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQSearch###TitleSize.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewSearch.</para>
            <para>Maximum size of the titles in a FAQ article to be shown in the FAQ Search in the public interface.</para>
        </section>
        <section>
            <title>FAQ::Frontend::PublicFAQZoom###DynamicField.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::FAQ::ViewZoom.</para>
            <para>Dynamic fields shown in the FAQ zoom screen of the public interface. Possible settings: 0 = Disabled, 1 = Enabled.</para>
        </section>
        <section>
            <title>FAQ::Item::Field1.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field2.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field3.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field4.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field5.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::Field6.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Definition of FAQ item free text field.</para>
        </section>
        <section>
            <title>FAQ::Item::HTML.</title>
            <para>Group: FAQ, Subgroup: Core::Item.</para>
            <para>Show FAQ Article with HTML.</para>
        </section>
        <section>
            <title>FAQ::Item::Voting::Rates.</title>
            <para>Group: FAQ, Subgroup: Core::Item::Voting.</para>
            <para>Rates for voting. Key must be in percent.</para>
        </section>
        <section>
            <title>FAQ::Item::Voting::Show.</title>
            <para>Group: FAQ, Subgroup: Core::Item::Voting.</para>
            <para>Show voting in defined interfaces.</para>
        </section>
        <section>
            <title>FAQ::MultiLanguage.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Enable multiple languages on FAQ module.</para>
        </section>
        <section>
            <title>FAQ::Public::StateTypes.</title>
            <para>Group: FAQ, Subgroup: Interface.</para>
            <para>List of state types which can be used in the public interface.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###IncludeInternal.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Include internal fields on a FAQ based Ticket.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###InsertMethod.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Defines the information to be inserted in a FAQ based Ticket. &quot;Full FAQ&quot; includes text, attachments and inline images.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###ShowFieldNames.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Include the name of each field in a FAQ based Ticket.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###ShowInsertLinkButton.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Show &quot;Insert FAQ Link&quot; Button in AgentFAQZoomSmall for public FAQ Articles.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###ShowInsertTextAndLinkButton.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Show &quot;Insert FAQ Text &amp; Link&quot; / &quot;Insert Full FAQ &amp; Link&quot; Button in AgentFAQZoomSmall for public FAQ Articles.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###ShowInsertTextButton.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Show &quot;Insert FAQ Text&quot; / &quot;Insert Full FAQ&quot; Button in AgentFAQZoomSmall.</para>
        </section>
        <section>
            <title>FAQ::TicketCompose###UpdateArticleSubject.</title>
            <para>Group: FAQ, Subgroup: Core::TicketCompose.</para>
            <para>Define if the FAQ title should be concatenated to article subject.</para>
        </section>
        <section>
            <title>FAQ::TitleSize.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Default maximum size of the titles in a FAQ article to be shown.</para>
        </section>
        <section>
            <title>FAQ::Voting.</title>
            <para>Group: FAQ, Subgroup: Core.</para>
            <para>Enable voting mechanism on FAQ module.</para>
        </section>
        <section>
            <title>Frontend::HeaderMetaModule###3-FAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleMetaHead.</para>
            <para>Module to generate html OpenSearch profile for short faq search.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQAdd.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQCategory.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQDelete.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQEdit.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQExplorer.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQHistory.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQJournal.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQLanguage.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQPrint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQRichText.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQSearchSmall.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Module###AgentFAQZoom.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ModuleRegistration.</para>
            <para>Frontend module registration for the agent interface.</para>
        </section>
        <section>
            <title>Frontend::Output::FilterElementPost###FAQ.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent.</para>
            <para>Defines where the 'Insert FAQ' link will be displayed.</para>
        </section>
        <section>
            <title>Frontend::Output::OutputFilterTextAutoLink###FAQ.</title>
            <para>Group: FAQ, Subgroup: Core::Web.</para>
            <para>A filter for HTML output to add links behind a defined string. The element Image allows two input kinds. First the name of an image (e.g. faq.png). In this case the OTRS image path will be used. The second possibility is to insert the link to the image.</para>
        </section>
        <section>
            <title>Frontend::Search###FAQ.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::SearchRouter.</para>
            <para>FAQ search backend router of the agent interface.</para>
        </section>
        <section>
            <title>Frontend::ToolBarModule###90-FAQ::AgentFAQAdd.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::ToolBarModule.</para>
            <para>Toolbar Item for a shortcut.</para>
        </section>
        <section>
            <title>GenericInterface::Operation::Module###FAQ::LanguageList.</title>
            <para>Group: FAQ, Subgroup: GenericInterface::Operation::ModuleRegistration.</para>
            <para>GenericInterface module registration for the operation layer.</para>
        </section>
        <section>
            <title>GenericInterface::Operation::Module###FAQ::PublicCategoryList.</title>
            <para>Group: FAQ, Subgroup: GenericInterface::Operation::ModuleRegistration.</para>
            <para>GenericInterface module registration for the operation layer.</para>
        </section>
        <section>
            <title>GenericInterface::Operation::Module###FAQ::PublicFAQGet.</title>
            <para>Group: FAQ, Subgroup: GenericInterface::Operation::ModuleRegistration.</para>
            <para>GenericInterface module registration for the operation layer.</para>
        </section>
        <section>
            <title>GenericInterface::Operation::Module###FAQ::PublicFAQSearch.</title>
            <para>Group: FAQ, Subgroup: GenericInterface::Operation::ModuleRegistration.</para>
            <para>GenericInterface module registration for the operation layer.</para>
        </section>
        <section>
            <title>LinkObject::PossibleLink###8301.</title>
            <para>Group: FAQ, Subgroup: Core::LinkObject.</para>
            <para>This setting defines that a 'FAQ' object can be linked with other 'FAQ' objects using the 'Normal' link type.</para>
        </section>
        <section>
            <title>LinkObject::PossibleLink###8302.</title>
            <para>Group: FAQ, Subgroup: Core::LinkObject.</para>
            <para>This setting defines that a 'FAQ' object can be linked with other 'FAQ' objects using the 'ParentChild' link type.</para>
        </section>
        <section>
            <title>LinkObject::PossibleLink###8303.</title>
            <para>Group: FAQ, Subgroup: Core::LinkObject.</para>
            <para>This setting defines that a 'FAQ' object can be linked with other 'Ticket' objects using the 'Normal' link type.</para>
        </section>
        <section>
            <title>LinkObject::PossibleLink###8304.</title>
            <para>Group: FAQ, Subgroup: Core::LinkObject.</para>
            <para>This setting defines that a 'FAQ' object can be linked with other 'Ticket' objects using the 'ParentChild' link type.</para>
        </section>
        <section>
            <title>Loader::Agent::CommonCSS###200-FAQ.</title>
            <para>Group: FAQ, Subgroup: Core::Web.</para>
            <para>List of CSS files to always be loaded for the agent interface.</para>
        </section>
        <section>
            <title>Loader::Agent::CommonJS###200-FAQ.</title>
            <para>Group: FAQ, Subgroup: Core::Web.</para>
            <para>List of JS files to always be loaded for the agent interface.</para>
        </section>
        <section>
            <title>PreferencesGroups###FAQJournalOverviewSmallPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::Preferences.</para>
            <para>Parameters for the pages (in which the FAQ items are shown) of the small FAQ journal overview.</para>
        </section>
        <section>
            <title>PreferencesGroups###FAQOverviewSmallPageShown.</title>
            <para>Group: FAQ, Subgroup: Frontend::Agent::Preferences.</para>
            <para>Parameters for the pages (in which the FAQ items are shown) of the small FAQ overview.</para>
        </section>
        <section>
            <title>PublicFrontend::CommonParam###Action.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public.</para>
            <para>Default value for the Action parameter for the public frontend. The Action parameter is used in the scripts of the system.</para>
        </section>
        <section>
            <title>PublicFrontend::HeaderMetaModule###3-FAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleMetaHead.</para>
            <para>Module to generate HTML OpenSearch profile for short FAQ search in the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQ.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQExplorer.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQPrint.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQRSS.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQSearch.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
        <section>
            <title>PublicFrontend::Module###PublicFAQZoom.</title>
            <para>Group: FAQ, Subgroup: Frontend::Public::ModuleRegistration.</para>
            <para>Frontend module registration for the public interface.</para>
        </section>
    </section>
    <section>
        <title>Approval function</title>
        <para>
            The OTRS FAQ has an approval feature. If you activate the approval feature all newly
            created FAQs also create a new ticket in a predefined queue. The persons who need to
            approve the FAQ entries can then act on these tickets and approve the FAQ articles if
            they see fit. As long as the article has not been approved the article will not be
            visible in the public interface.
        </para>
        <para>
            You can activate the Approval function by setting the option FAQ::ApprovalRequired to
            Yes.
        </para>
        <para>
            The approval message can be defined under FAQ::ApprovalTicketBody. You can modify the
            text if you need, and you can also use variables that will be substituted with their
            actual values when the approval note is generated. The list of the available variables
            is listed below.
        </para>
        <table id="table-of-faq-approval-variables">
        <title>Variables for FAQ Approval message</title>
          <tgroup cols="2">
            <thead>
              <row>
                <entry>
                  Name
                </entry>
                <entry>
                  Description
                </entry>
              </row>
            </thead>
            <tbody>
              <row>
                <entry>
                  &lt;OTRS_FAQ_CATEGORY&gt;
                </entry>
                <entry>
                  Category name of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_CATEGORYID&gt;
                </entry>
                <entry>
                  Category ID of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_LANGUAGE&gt;
                </entry>
                <entry>
                  Language of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_ITEMID&gt;
                </entry>
                <entry>
                  Item ID of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_NUMBER&gt;
                </entry>
                <entry>
                  FAQ Number of the FAQ article
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_TITLE&gt;
                </entry>
                <entry>
                  Title
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_AUTHOR&gt;
                </entry>
                <entry>
                  Author name
                </entry>
              </row>
              <row>
                <entry>
                  &lt;OTRS_FAQ_STATE&gt;
                </entry>
                <entry>
                  State (visibility) of the FAQ article
                </entry>
              </row>
            </tbody>
          </tgroup>
        </table>
    </section>
</chapter>

<!-- ******** -->
<!-- 6. Usage -->
<!-- ******** -->

<chapter>
    <title>Usage</title>
    <para>This package adds tree new groups to the system:</para>
    <itemizedlist mark="round">
        <listitem>
            <para>faq.</para>
            <para>Users in this group are able to:</para>
            <itemizedlist mark="round">
                <listitem><para>Use FAQ Explorer.</para></listitem>
                <listitem>
                    <para>Add, Edit, Delete, Zoom, Print and Link FAQ Articles.</para>
               </listitem>
               <listitem><para>Use FAQ Journal.</para></listitem>
               <listitem><para>Use FAQ Search.</para></listitem>
            </itemizedlist>
        </listitem>
        <listitem>
            <para>faq_admin.</para>
            <para>Users in this group are able to:</para>
            <itemizedlist mark="round">
                <listitem><para>Add, Edit and Delete FAQ Categories.</para></listitem>
                <listitem><para>Add, Edit and Delete FAQ Languages.</para></listitem>
            </itemizedlist>
        </listitem>
        <listitem>
            <para>faq_approval.</para>
            <para>Users in this group are able to:</para>
            <itemizedlist mark="round">
                <listitem><para>Approve FAQ Articles.</para></listitem>
            </itemizedlist>
            <note>
                <para>The group to approve FAQ Articles can be changed using SysConfig.</para>
            </note>
        </listitem>
    </itemizedlist>
    <para>
        Users in "faq_admin" and "faq_approval" groups (or custom approval group) need also to be
        in the "faq" group to perform the actions. Any change in the users groups will take effect
        on FAQ after the user logout and login again.
    </para>
    <para>
        Users that are members of the "faq" group will have a new menu called "FAQ" in the
        navigation bar that is in the top of the screen (after re-login), similar to the "Ticket"
        menu.
    </para>
    <section>
        <title>Create A New FAQ Article</title>
        <para>This example shows how to create a new FAQ article.</para>
        <note>
            <para>Be sure that the logged user is a member of "faq" group.</para>
        </note>
        <orderedlist>
            <listitem>
                <para>
                    From the Navigation Bar, click on "FAQ" and then on "New" (from the opened FAQ
                    menu option).
                </para>
            </listitem>
            <listitem>
                <para>
                    Fill the required information.
                </para>
                <para>
                    There are tree possible FAQ states: "internal": only agents can see the FAQ
                    article, "external": agents and registered customer can see the FAQ article and
                    "public": this FAQ articles are accessible from the OTRS public interface.
                </para>
                <para>
                    By default the system has the Category "Misc" and the Languages "en" for English
                    and "de" for German. (more Categories and Languages can be added to the system).
                </para>
                <para>
                    On a clean system there are four multiple line fields (with other two more than
                    can be added if needed), their names an visibility can be changed in the
                    SysConfig.
                </para>
            </listitem>
            <listitem>
                <para>Click on the "Create" button.</para>
                <para>
                    This will create a new FAQ article that can be accessed from the FAQ Explorer
                </para>
            </listitem>
        </orderedlist>
        <note>
            <para>
                By default the FAQ article does not need an approval procedure, if this
                functionality is enabled and the user is also a member of the FAQ Approval group,
                a selection to set the approval state is also shown in this screen.
            </para>
        </note>
    </section>
    <section>
        <title>Create a New Category</title>
        <para>This example shows how to create a new FAQ category.</para>
        <note>
            <para>Be sure that the logged user is a member of "faq" and "faq_admin" groups.</para>
        </note>
        <orderedlist>
            <listitem>
                <para>From FAQ menu click on "Category Management".</para>
                <para>
                    A list of available categories is shown (from there is also possible to edit or
                    delete them)
                </para>
            </listitem>
            <listitem>
                <para>Click on "Add Category" from the Actions side bar.</para>
            </listitem>
            <listitem>
                <para>Fill the required information.</para>
                <para>
                    Notice that a category can be a sub item from a wider category, this is helpful
                    to organize FAQ articles in a hierarchical way (this hierarchies can be drilled
                    drown from the FAQ Explorer).
                </para>
            </listitem>
            <listitem>
                <para>Click on "Submit" button, and the new category will be ready to use.</para>
            </listitem>
        </orderedlist>
    </section>
    <section>
        <title>Create a New Language</title>
        <para>This example shows how to create a new FAQ language.</para>
        <note>
            <para>Be sure that the logged user is a member of "faq" and "faq_admin" groups.</para>
        </note>
        <orderedlist>
            <listitem>
                <para>From FAQ menu click on "Language Management".</para>
                <para>
                    A list of available languages is shown (from there is also possible to edit or
                    delete them)
                </para>
            </listitem>
            <listitem>
                <para>Click on "Add Language" from the Actions side bar.</para>
            </listitem>
            <listitem>
                <para>Fill the required information.</para>
            </listitem>
            <listitem>
                <para>Click on "Submit" button, and the new language will be ready to use.</para>
            </listitem>
        </orderedlist>
    </section>
</chapter>

<!--
***************************************** Technical part ************************************
-->
<!-- ********************************* -->
<!-- 7. Technical Implementation Detail -->
<!-- ********************************* -->
<!--
<chapter>
    <title>Technical Implementation Details</title>
    <para></para>
</chapter>
 -->
<!-- *********** -->
<!-- 8. Filelist -->
<!-- *********** -->
<chapter>
    <title>File List</title>
    <para>This list shows all included files and the referring permissions.</para>
    <para>$Filelist</para>
</chapter>

<!-- ******* -->
<!-- 9. Test -->
<!-- ******* -->
<chapter>
    <title>Tests</title>
    <para>This module has been tested on the current state of the art in quality.</para>
    <section>
        <title>Test Cases</title>
        <para>
            To test this package please follow the examples described in the Usage section, all the
            tests cases should return the expected results defined at the beginning of each example.
        </para>
    </section>
    <section>
        <title>Unit Tests</title>
        <para>
            To ensure the quality of the module, several so-called unit tests were created, to test
            the functionalities of this module. These unit tests can be run via command line.
        </para>
        <para>
            ATTENTION: Please never run unit tests on a productive system, since the added test data
            to the system will no longer be removed. Always use a test system.
        </para>
        <para>Run the package specific unit tests</para>
        <para>
            To run only the unit test which will be delivered with this package, use the following
            command on the command line:
        </para>
        <screen>
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test FAQ:FAQSearch:FAQSearch/InConditionGet
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test GenericInterface/FAQConnector
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test Console/Command/Admin/FAQ/Import:Console/Command/Maint/FAQ/ContentTypeSet
        </screen>
        <para>Selenium unit tests</para>
        <para>
            To run the Selenium unit tests, make sure you have a complete Selenium environment setup in your Kernel/Config.pm file and a running a WebDriver.
        </para>
        <screen>
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test AgentFAQExplorer:AgentFAQLanguage:AgentFAQPrint:AgentFAQSearch:AgentFAQZoom
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test CustomerFAQExplorer:CustomerFAQPrint:CustomerFAQSearch:CustomerFAQZoom
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test PublicFAQExplorer:PublicFAQPrint:PublicFAQRSS:PublicFAQSearch:PublicFAQZoom
shell> perl bin/otrs.Console.pl Dev::UnitTest::Run --test Dashboard/FAQ:FAQJournalOverview/Small:FAQMenu/Generic:FAQOverview/Small:HeaderMeta/AgentFAQSearch:HeaderMeta/CustomerFAQSearch:HeaderMeta/PublicFAQSearch:LinkObject/FAQ
        </screen>
        <para>Run all available unit tests</para>
        <para>
            To run all available unit tests, use the following command on the command line:
        </para>
        <screen>shell> perl bin/otrs.Console.pl Dev::UnitTest::Run</screen>
    </section>
</chapter>

<!-- ************* -->
<!-- 10. Changelog -->
<!-- ************* -->
<chapter>
    <title>ChangeLog</title>
    <para>$ChangeLog</para>
</chapter>

<!-- ************** -->
<!-- 11. Appendixes -->
<!-- ************** -->
<appendix id="GIFAQCC">
    <title>Generic Interface FAQ Connector Configuration</title>
    <section>
        <title>Web Service configuration</title>
        <para>
            In order to use the web service and the operations included on this package, you should
            first of all install the web service on your system, using the Command line or taking
            advantage of the Graphical User Interface (Admin Interface). Please note that the old
            configuration for rpc.pl is not relevant for the Generic Interface and therefore not
            needed.
        </para>
        <para>
            The following is an example of how to use Command line to install the web service in
            the system using the provided YAML file (.yaml) included on this package.
        </para>
        <para>
            <screen>
shell> bin/otrs.Console.pl Admin::WebService::Add --name GenericInterfaceFAQConnector --source-path scripts/webservices/GenericInterfaceFAQConnector.yaml
            </screen>
        </para>
        <para>
            Also you can install the web service importing the mentioned YAML file via web
            interface in the next URL using the 'Import web service' button on the left side bar.
        </para>
        <para>
            <ulink url="http://localhost/otrs/index.pl?Action=AdminGenericInterfaceWebservice;Subaction=Add">
                http://localhost/otrs/index.pl?Action=AdminGenericInterfaceWebservice;Subaction=Add
            </ulink>
        </para>
        <para>
            The content of the YAML file is shown below.
        </para>
        <para>
            <screen>
                <![CDATA[
---
Debugger:
  DebugThreshold: debug
  TestMode: 0
Description: ''
Provider:
  Operation:
    LanguageList:
      Description: List  all availables languages
      Type: FAQ::LanguageList
    PublicCategoryList:
      Description: List all public FAQ categories (with tree information)
      Type: FAQ::PublicCategoryList
    PublicFAQSearch:
      Description: Search for public FAQs
      Type: FAQ::PublicFAQSearch
    PublicFAQGet:
      Description: Retrieve public FAQ entries
      Type: FAQ::PublicFAQGet
  Transport:
    Config:
      Encoding: UTF-8
      Endpoint: ''
      MaxLength: 10000000
      NameSpace: http://www.otrs.org/FAQConnector/
      SOAPAction: ''
    Type: HTTP::SOAP
RemoteSystem: ''
                ]]>
            </screen>
        </para>
        <para>
            In order to use the web service you need to use an new interface in OTRS.
            As for agents you use index.pl and for customers you use customer.pl, for web
            services you use "nph-genericinterface.pl".
        </para>
        <para>
            The default and suggested name for this web service is GenericFAQConnector.
            Since the name of the web service can be changed is very important that you write
            down the current name of your web service and update it in all locations that access
            to it.
        </para>
        <para>
            When a web service is installed on the system it always has an associated ID number.
            You can call the web service by name or by ID number. To get the list of
            "valid" web services and they corresponding ID number you can
            use the following command:
        </para>
        <para>
            <screen>
shell> bin/otrs.Console.pl Admin::WebService::List
            </screen>
        </para>
        <para>
            For this specific web service, using the default configuration you can call it as
            follows:
        </para>
        <para>
            <ulink url="http://localhost/otrs/nph-genericinterface.pl/Webservice/GenericFAQConnector">
                http://localhost/otrs/nph-genericinterface.pl/Webservice/GenericFAQConnector
            </ulink>
            (by name, recommended) or
            <ulink url="http://localhost/otrs/nph-genericinterface.pl/WebserviceID/1">
                http://localhost/otrs/nph-genericinterface.pl/WebserviceID/1
            </ulink>
            (by ID).
        </para>
        <note>
            <para>
                Both web service name and ID from the example above could be different in your
                current environment.
            </para>
        </note>
    </section>
</appendix>
<appendix id="GIFAQCA">
    <title>Generic Interface FAQ Connector API</title>
    <para>
        For the following examples uses SOAP XML data structures since HTTP::SOAP is the default
        transport for Generic Interface Operations and can be used with otrs.SOAPRequest.pl.
    </para>
    <para>
        otrs.SOAPRequest.pl is a simple Perl script to test the OTRS Generic Interface, the code
        can be found in the OTRS administration manual.
    </para>
    <section>
        <title>LanguageList</title>
        <para>
            For this operation is not necessary to send any special parameter to the server, you
            just need to request the web service directly indicating the "LanguageList" operation.
            The operation will return a list of languages including ID and the Name for each
            language on the system.
        </para>
        <para>
            Request format:
        </para>
        <para>
            <screen>
                <![CDATA[
        <LanguageList/>
                ]]>
            </screen>
        </para>
        <para>
            Response format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <LanguageListResponse>
         <!--1 or more repetitions:-->
         <Language>
            <ID>?</ID>
            <Name>?</Name>
         </Language>
      </LanguageListResponse>
                ]]>
            </screen>
        </para>
        <para>
            Response example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <LanguageListResponse>
         <Language>
            <ID>1</ID>
            <Name>en</Name>
         </Language>
         <Language>
            <ID>2</ID>
            <Name>de</Name>
         </Language>
         <Language>
            <ID>3</ID>
            <Name>es</Name>
         </Language>
      </LanguageListResponse>
                ]]>
            </screen>
        </para>
    </section>
    <section>
        <title>PubliCategoryList</title>
        <para>
            For this operation is also not necessary any special parameter, just the simple call for
            requesting the web service with the operation name 'PublicCategoryList' as a response
            you will receive a list of categories including the ID and the Name (long format) for
            each category.
        </para>
        <para>
            Request format:
        </para>
        <para>
            <screen>
                <![CDATA[
        <PublicCategoryList/>
                ]]>
            </screen>
        </para>
        <para>
            Response format:
        </para>
        <para>
            <screen>
                <![CDATA[
     <PublicCategoryListResponse>
         <!--1 or more repetitions:-->
         <Category>
            <ID>?</ID>
            <Name>?</Name>
         </Category>
      </PublicCategoryListResponse>
                 ]]>
            </screen>
        </para>
        <para>
            Response example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicCategoryListResponse>
         <Category>
            <ID>2</ID>
            <Name>Pulbic</Name>
         </Category>
         <Category>
            <ID>5</ID>
            <Name>Public::SubCategory A</Name>
         </Category>
         <Category>
            <ID>8</ID>
            <Name>Public::SubCategory B</Name>
         </Category>
      </PublicCategoryListResponse>
                ]]>
            </screen>
        </para>
    </section>
    <section>
        <title>PublicFAQGet</title>
        <para>
            To be able to get one or more FAQ entries, you should send the ItemID(s) as a parameter
            for the FAQ entry you want to get. You will receive the entire FAQ record with all
            attachments included. Note that attachment contents will be transferred as
            base64-encoded strings.
        </para>
        <para>
            Setting GetAttachmentContents to 0 will prevent to fetch the content of the attachment
            this will increase the performance of the operation when the attachment contents are not
            really needed.
        </para>
        <para>
            Request format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQGet>
         <ItemID>?</ItemID>
         <!-- optional, defaults to 1 -->
         <GetAttachmentContents>?</GetAttachmentContents>
      </PublicFAQGet>
                ]]>
            </screen>
        </para>
        <para>
            Request example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQGet>
        <ItemID>6,7</ItemID>
      </PublicFAQGet>
                ]]>
            </screen>
        </para>
        <para>
            Response format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQGetResponse>
         <!--Zero or more repetitions:-->
         <FAQItem>
            <Approved>?</Approved>
            <CategoryID>?</CategoryID>
            <CategoryName>?</CategoryName>
            <CategoryShortName>?</CategoryShortName>
            <Changed>?</Changed>
            <ChangedBy>?</ChangedBy>
            <Created>?</Created>
            <CreatedBy>?</CreatedBy>
            <FAQID>?</FAQID>
            <Field1>?</Field1>
            <Field2>?</Field2>
            <Field3>?</Field3>
            <Field4>?</Field4>
            <Field5>?</Field5>
            <Field6>?</Field6>
            <ID>?</ID>
            <ItemID>?</ItemID>
            <Keywords>?</Keywords>
            <Language>?</Language>
            <LanguageID>?</LanguageID>
            <Name>?</Name>
            <Number>?</Number>
            <State>?</State>
            <StateID>?</StateID>
            <StateTypeID>?</StateTypeID>
            <Title>?</Title>
            <VoteResult>?</VoteResult>
            <Votes>?</Votes>
            <StateTypeName>?</StateTypeName>
            <ContentType>?</ContentType>
            <!--Zero or more repetitions:-->
            <Attachment>
               <Filename>?</Filename>
               <Filesize>?</Filesize>
               <ContentType>?</ContentType>
               <Content>cid:1269416154096</Content>
               <Inline>?</Inline>
               <FileID>?</FileID>
            </Attachment>
         </FAQItem>
      </PublicFAQGetResponse>
                ]]>
            </screen>
        </para>
        <para>
            Response example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQGetResponse>
          <FAQItem>
            <ID>6</ID>
            <ItemID>6</ItemID>
            <FAQID>6</FAQID>
            <Number>10006</Number>
            <CategoryID>2</CategoryID>
            <CategoryName>Public</CategoryName>
            <CategoryShortName>Public</CategoryShortName>
            <LanguageID>1</LanguageID>
            <Language>en</Language>
            <Title>Public2</Title>
            <Field1>The Symptoms</Field1>
            <Field2>The Problem</Field2>
            <Field3>The Solution</Field3>
            <Field4/>
            <Field5/>
            <Field6>The Comments</Field6>
            <Approved>1</Approved>
            <Keywords>Keyword1 Keyword2 Keyword3</Keywords>
            <Votes>1</Votes>
            <VoteResult>75.00</VoteResult>
            <StateID>3</StateID>
            <State>public (all)</State>
            <StateTypeID>3</StateTypeID>
            <StateTypeName>public</StateTypeName>
            <Created>2010-11-02 08:06:43</Created>
            <CreatedBy>1</CreatedBy>
            <Changed>2010-11-02 08:06:43</Changed>
            <ChangedBy>1</ChangedBy>
            <Name>1288706803-91.878184450707</Name>
            <ContentType>text/html</ContentType>
             <Attachment>
                <Content>...==</Content>
                <ContentType>text/plain</ContentType>
                <Filename>Details.txt</Filename>
                <Filesize>296</Filesize>
               <Inline>0</Inline>
               <FileID>34</FileID>
             </Attachment>
             <Attachment>
                <Content>...==</Content>
                <ContentType>text/plain</ContentType>
                <Filename>Text.bin</Filename>
                <Filesize>980</Filesize>
               <Inline>0</Inline>
               <FileID>35</FileID>
             </Attachment>
          </FAQItem>
          <FAQItem>
            <ID>7</ID>
            <ItemID>7</ItemID>
            <FAQID>7</FAQID>
            <Number>10006</Number>
            <CategoryID>2</CategoryID>
            <CategoryName>Public</CategoryName>
            <CategoryShortName>Public</CategoryShortName>
            <LanguageID>1</LanguageID>
            <Language>en</Language>
            <Title>Public777</Title>
            <Field1>The Symptoms</Field1>
            <Field2>The Problem</Field2>
            <Field3>The Solution</Field3>
            <Field4/>
            <Field5/>
            <Field6>The Comments</Field6>
            <Approved>1</Approved>
            <Keywords>Keyword1 Keyword2 Keyword3</Keywords>
            <Votes>1</Votes>
            <VoteResult>75.00</VoteResult>
            <StateID>3</StateID>
            <State>public (all)</State>
            <StateTypeID>3</StateTypeID>
            <StateTypeName>public</StateTypeName>
            <Created>2010-16-03 02:06:43</Created>
            <CreatedBy>1</CreatedBy>
            <Changed>2010-11-02 02:06:43</Changed>
            <ChangedBy>1</ChangedBy>
            <Name>1288706803-91.878184450707</Name>
            <ContentType>text/html</ContentType>
          </FAQItem>
      </PublicFAQGetResponse>
                ]]>
            </screen>
        </para>
    </section>
    <section>
        <title>PublicFAQSearch</title>
        <para>
            For this operation you can specify the following optional parameters: Name, Title, What
            (full text search), Keyword, LanguageIDs and CategoryIDs to narrow the search results.
            You may also specify the order of the results by the following parameters: OrderBy and
            OrderByDirection.
        </para>
        <para>
            Send a request to the web service with the operation name 'PublicFAQSearch' as a
            response you will receive a list of FAQ item IDs.
        </para>
        <note>
            <para>
                The full FAQ item data can be retrieved for each ID by using 'PublicFAQGet'
                operation separately.
            </para>
        </note>
        <para>
            Request format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQSearch>
         <!--Optional:-->
         <Number>?</Number>
         <!--Optional:-->
         <Title>?</Title>
         <!--Optional:-->
         <What>?</What>
         <!--Optional:-->
         <Keyword>?</Keyword>
         <!--Zero or more repetitions:-->
         <LanguageIDs>?</LanguageIDs>
         <!--Zero or more repetitions:-->
         <CategoryIDs>?</CategoryIDs>
         <!--Zero or more repetitions:-->
         <SortBy>?</SortBy>
         <!--Optional:-->
         <OrderBy>?</OrderBy>
         <!--Optional:-->
         <OprderByDirection>?</OprderByDirection>
      </PublicFAQSearch>
                ]]>
            </screen>
        </para>
        <para>
            Request example:
        </para>
        <para>
            <screen>
                <![CDATA[
     <PublicFAQSearch>
        <Number>*134*</Number>
        <Title>*some title*</Title>
        <What>*some text*</What>
        <Keyword>*webserver*</Keyword/>
        <LanguageIDs>1</LanguageIDs>
        <CategoryIDs>2</CategoryIDs>
        <OrderBy>FAQID</OrderBy>
        <OrderByDirection>Up</OrderByDirection>
      </PublicFAQSearch>
                ]]>
            </screen>
        </para>
        <para>
            Response format:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQSearchResponse>
         <!--Zero or more repetitions:-->
         <ID>?</ID>
      </PublicFAQSearchResponse>
                ]]>
            </screen>
        </para>
        <para>
            Response example:
        </para>
        <para>
            <screen>
                <![CDATA[
      <PublicFAQSearchResponse>
         <ID>20</ID>
         <ID>19</ID>
         <ID>18</ID>
         <ID>17</ID>
         <ID>16</ID>
         <ID>15</ID>
         <ID>14</ID>
         <ID>13</ID>
         <ID>11</ID>
         <ID>6</ID>
         <ID>5</ID>
      </PublicFAQSearchResponse>
                ]]>
            </screen>
        </para>
    </section>
</appendix>
</book>