Search
Table of ContentsFrequently Asked Questions
Advanced User's Guide: Index How to use the administration panel

# Frequently Asked Questions

## I got a problem with the automated installation. How do I install the software manually?

Please remember to check the system requirements and read chapter "manual installation".

## What should I do if I run into a problem during configuration of the database connection?

Please check first whether your connection parameters are correct and the database server is available. You may also want to check the compatibility notes, as these contain guides and solutions to known problems with some DBMS.

If the connection parameters are correct and there is no problem with the database driver or a version conflict, you may circumvent the problem by trying a manual installation. To do so, read the chapter trouble shooting.

## If I call the file "index.php" in my web browser, only the source code is shown. Why?

This script requires PHP. If only source code is shown in the browser, PHP might not be supported by your hosting service provider. When in doubt ask your provider.

## Forgotten passwords

If you, as a standard user, have forgotten your password, write an e-mail to your administrator. He can set up a new password for you.

Administrators do as follows to set a new password:

1. Open the administration menu.
2. Click the option "user management" / "user overview" to see a list of all users.

   Figure: menu "user overview"

3. You should now see a list of users. Find the name of the user you want to edit and click on the icon in column "user name".

   Figure: list of all users

4. Below these settings you will find the link "lost password". Click to generate a new password. The new password will be sent to the user via E-Mail. So ensure the mail adress ist correct.

   Figure: generate new password

If you have forgotten your own password, please contact another administrator. If you ARE the ONLY administrator, then no new password can be generated. However it is also possible to reset the old password manually.

If the installation works with text files, please connect via FTP to your account, and download the file "config/db/user/user.sml". Edit this file and replace the password with the text "UNINITIALIZED". Upload the file again, and set the access rights via CHMOD to 777.

If the installation works with a database, open a connection to the database by using an appropriate program (for example PHPmyAdmin for MySQL) and edit the table "user" and set password of user "Administrator" to "UNINITIALIZED".
Alternatively, you can simply execute the following SQL statement.
`UPDATE `user` SET user_pwd = 'UNINITIALIZED' WHERE user_id = 'ADMINISTRATOR';`
(please adapt the quoting for the corresponding DBMS)

Remember to set a new password afterwards.

Note: This script never stores the password as real text Instead it is encrypted after input. This is an one-way encryption which cannot be reversed. For this reason, it is not possible to retrieve a forgotten password on demand - instead it is always required to create a new one.

## Adding own smilies and icons

Choose the smilies you want to insert. Please note that these graphics are to be stored in GIF format.

Copy the files to the directory " `common_files/smilies` " of the framework.

If you want to use smilies from a directory other than the prescribed, then proceed as follows.

1. Open the administration menu.
2. Switch to the expert mode.
3. In the left column of the main menu "options" click on "pogram setup".
4. search for the entry "load smilies from". (see figure)
5. Type in the desired directory.
6. When you are done, click "Save changes".

If you have multiple profiles, you may need to copy the settings for all other profiles as well.

Figure: Load icons from another directory

## Problems with the installation

Refer to the section " Installation for Beginners ". Since version 2.2 the program has has a self-diagnostic mode. If you have finished the installation as described in the manual, you can use it to verify that all files are installed correctly.

For the self-diagnostic mode to start, open the URL "index.php?action=test" in your browser program. The program will then begin to create a diagnostic protocol. The self-diagnostic mode tests important directories and files and reports errors. These are shown as red lines in the protocol. If an error is found, read the error message and follow the instructions.

The self-diagnostic mode finds some of the most typical installation errors, but may not discover all kinds of possible problems. If you have installed the program according to instructions and still encounter problems during operation, send an email to. Don't forget to add the URL and a description of your problem. This offer is available to registered users free of charge.

## Using the database prefix

The database setup offers an option labeled "prefix for database" (see figure ). This option is EXPERIMENTAL and serves the only purpose, of running two installations of the YANA Framework on the same server and the same database without having them affect each other. In any situation where this is not needed it is strongly recommend that this option is NOT used, due to it's experimental status.

Figure: experimental option to set a prefix on a database connection

A typical application for this option would be if someone is switching from an older to a new version, and therefore wants to temporarily run tow installations for testing purposes, to test the new version in a real environment before making a permanent change.

If you use a prefix, this also means that the SQL installation files in the directory "config/db/.install" need to be corrected by hand, according to the new table names including the chosen prefix. Only then the database may be installed as usual. The is currently no automatic process available to apply these changes. The PHP source code, however, does not need to be changed.

If you use your own plugins with hand-written SQL statements, you must of course also change the source code there to use the reflect names of the tables. Should you, however, use the database API of the framework, and have your SQL statements generated automatically, then editing these files is not necessary. The framework will correct your SQL at runtime automatically.

You should schedule 5 to 15 minutes for the conversion of the SQL installation files.

If this option is used accidentally and you experience problems accessing your data, then you can may reset this option manually. To do this edit the file "config/dbconfig.php" and change the entry at line 9 to: `define('YANA_DATABASE_PREFIX',"");`

Note: in some versions of the application, this feature is intentionally disabled.

## Disable site map

If you don't watn to use the site map as the front page for the application, it is possible to replace it with a different page - for example, the start page of a plugin of your choice.

To do this open the file "config/system.config" in any text editor of your choice and change the entry "DEFAULT.HOMEPAGE" as you see fit (see figure).

Figure: Changing the front page (default homepage)

The following is a list of suggestions of possible settings:

- GUESTBOOK_READ_READ (front page for the guestbook)
- GET_NEWS (front page for the RSS viewer)
- SEARCH_START (front page for the search-plugin)
- SITEMAP (site map with a list of available programs)

## Formatting entries with EmbTags

### Why not use HTML in web forms?

It is not allowed to insert HTML codes via a plublicly available form. The risk that a person abuses this offer to insert unwanted content or manipulate the website in an unacceptable way would be too large Among other things, a malicious attacker could, for example insert scripts, which, for example, might be used to commence a "phising attack" to view visitors a different site content in order to steal passwords of users.

Basically to ban HTML completely is also not useful, because some elements are totally harmless and the readability of text may benefit from their use. This requires a compromise.

There are two possibilities:

1. "Black Listing" prohibits certain elements, which are considered dangerous, but allows all other elements.
2. "White listing," allows certain elements, which are considered harmless, but prohibits all other elements.

Both methods have exactly opposite advantages and disadvantages:

- "Black Listing" has the advantage of greater freedom in the use of HTML, however, to the detriment of safety.
- "White listing" has the advantage of a higher level of security, but to the detriment of the freedom in the use of HTML.

Since the security of the applications of this framework have a greater relevance than the freedom to use HTML, the "whitelist" approach is used.

This program works, as just described, as well as most other programs on the WWW with a "Whitelist". That is, some harmless tags are allowed. All other tags are not allowed and will be automatically removed.

For example: `[b]this is bold text[/b]` This code is easily controllable and may be converted to clean HTML later: `<b>this is bold text</b>` An abuse is no longer possible..

As a side effect, these simple tags are much easier to understand than pure HTML. This makes it easier for beginners to write new entries.

### What formatting options are there?

Icon | Tags | Description | Example | Output
--- | --- | --- | --- | ---
| [b] | bold text format | [b]bold text[/b] | bold text
| [i] | italic text format | [i]italic text[/i] | italic text
| [u] | underline text | [u]underline text[/u] | underline text
| [code] | insert source code (code ist not executed, but formatted as text) | [code]Text[/code] | `Text`
| [php] | insert PHP-code (code ist not executed, but formatted as text) | [php]print 'Hello World';[/php] |
    <?php
    print 'Hello World';
    ?>
| [color] | set a text color | [color=red]Text[/color] | Text
| [mark] | set background color | [mark=yellow]Text[/mark] | Text
| [url] | inset hyperlink | [url]www.yanaframework.net[/url] | www.yanaframework.net
| [mail] | insert mail adress | [mail]mail@domain.tld[/mail] | mail@domain.tld
| [img] | insert graphic * | [img]domain.tld/img/image.gif[/img] |
| [emp] | emphasize text | [emp]Text[/emp] | Text
| [h] | insert header | [h]header[/h] | header
| [small] | reduce font size | [small]small text[/small] | small text
| [big] | increase font size | [big]big text[/big] | big text
| [c] | insert comment (e.g. for writing signatures) | [c]comment[/c] | comment
| [hide] | hide a text, till the users moves the mouse over it | [hide]this is a secret[/hide] | this is a secret
| [wbr] | allow line break within a word | ship[wbr]yard-[wbr]employee | shipyard- employee
| [br] | force line break | ship-[br]yard-[br]employee | ship- yard- employee

* YANA prevents attacks on your site through cross-site scripting (XSS), because it only the inclusion of graphics from the local server within the directory of the framework is permitted. The file must also have the file extensions "jpeg", "jpg, png", or "gif". Special characters are not allowed, which will prevent an attacker to conceal the true URL of a file by the skillful use of escape sequences, to try to sneak by the protection of the framework.
The tag [img] is useful for community sites, where users can upload their own graphics files on the server.

### Using your own tags

Warning: Incorrect settings may by chance prevent the program from running properly. Therefore never perform such changes in a productive environment. Instead check your settings first in a test environment.

It is possible to set up individual tags for each website profile. Poceed as follows.

1. Open the directory "config/profiles"
2. Select the profile that you want to edit (for example, "default.config"), and open this file in a text editor of your choice
3. Fill the container "PROFILES" as follows.
   Explanation of the syntax:

       <PROFILE>
        ...
        <EMBTAG>
        <tagname>
        <TITLE>value of attribute "title"</TITLE>
        <TEXT>label</TEXT>
        <IMAGE>image of the button, that inserts the tag/IMAGE>
        <1>optional regular expression to transform to HTML</1>
        (default value = /\[$tagname\](.*)(?:\[\/$tagname\]|$)/Us)
        <2>optional replacement string to convert to HTML</2>
        (default = &lt;span class="embtag_tag_{tagname}"&gt;$1&lt;/span&gt;)
        </tagname>
        </EMBTAG>
       </PROFILE>

   See the following example for the tag "bold":

       <PROFILE>
        ...
        <EMBTAG>
        <bold>
        <TITLE>insert bold text</TITLE>
        <TEXT>bold text</TEXT>
        <IMAGE>%SKINDIR%/default/styles/tags/b.gif</IMAGE>
        <1>/\[bold\](.*)\[\/bold\]/Us</1>
        <2>&lt;b&gt;$1&lt;/b&gt;</2>
        </bold>
        </EMBTAG>
       </PROFILE>

4. Save your changes.
5. Try to use your new tags in a form

Note: If you remove a tag, it is no longer viewed as HTML as well. This includes such data, that has had this tag earlier. Also be sure not to remove or replace the original tags.

## My question is still non answered - what am I to do?

Take your question to the internet forum at yanaframework.net/forum. This offer is free of charge. Please understand, that there is no guarantee that unsolicited e.mail is handled. Please respect, that requests by known donators, who engage in the further development of this project, may be answered faster than normal mail.

Advanced User's Guide: Index How to use the administration panel

Thomas Meyer, www.yanaframework.net