New Installation

  1. If you intend to write the story texts to the server or allow image uploads CHMOD the folder you intend to store the stories in to 777. If this folder is missing the script will attempt to create it for you during the install.
  2. Move config.php from the docs folder to the main eFiction folder. If the config.php is missing the install script will attempt to create it, but it's best if you move it.
  3. CHMOD config.php to 666.
  4. Using your web browser, go to the URL for your website(i.e. to run the install and set up the admin login.
  5. Login with the admin login and password set in step #4, and complete the configuration of your site through the Admin panel.

Upgrade from 2.0.X

BACK UP YOUR FILES AND YOUR DATABASE FIRST!! Upload the 3.0 files OVER your 2.0 files. DO NOT DELETE YOUR 2.0 FILES UNTIL THE UPGRADE IS COMPLETE! Go to your site. The script will detect that the config.php file is for 2.0 and start the upgrade.

Note: You're encouraged to choose one of the skins provided with the 3.0 script until you can update your 2.0 skins.

Upgrade from 1.1

BACK UP YOUR FILES AND YOUR DATABASE FIRST!! Upload the 3.0 files OVER your 1.1 files. DO NOT DELETE YOUR 2.0 FILES UNTIL THE UPGRADE IS COMPLETE! Go to your site. The script
will detect that the config.php file is for 1.1 and start the upgrade.

Note: You're encouraged to choose one of the skins provided with the 3.0 script until you can update your 1.1 skins.

Note 2: Make sure your config.php file is CHMOD'd to 666.

Note 3: If you have installed blocks that did not come with the 2.0 package, turn them off before starting the upgrade. They will most likely be incompatible!

Initial Configuration

After the install script has finished there are still a number of elements of the archive that you must configure before your archive will be operational.

Note: If you intend to bridge your eFiction site with another script. It's advisable to do it now before you open for business.

Translating eFiction

You can modify most of the text that is displayed in the script by changing the language file in the languages/ folder for the language you selected. Copy the en.php and en_admin.php files and rename them to your chosen language. For instance, en.php would become es.php for Spanish or ru.php for Russian. Just change the text within the quotes for each line to whatever you want it to say. Some wording is included within the skin's files. If you have created a translation for eFiction, we encourage you to share it!

Add New Series

Series are collections of related stories by the same or multiple authors. A story and its sequels, for example, would be a series. Series might also be used for a "shared universe" in which multiple authors write. The person who creates the series is considered the series "owner" and controls whether or not the series is "open" to contributions by other authors or not. Even if the series is "closed", the series owner has the option to include stories from other authors in the series. This form is the same as members with an additional option to select the owner of the series.

Add New Story

This form is the same as members use in the "Account Info" area except it has an additional option to select the author of the series. You will also see options to validate and mark the story as featured.

Featured Stories

This page allows administrators to manage the featured stories of the site. A story may initially be marked as featured:

  1. From the add/edit story form.
  2. By clicking on the "Featured" link in the "Admin Options" list for the story.

Once a story has been marked it will appear in a table on this admin page. From here, site administrators may choose to "retire" the story or remove it's featured status entirely.


This page is used to add and administer the news stories for the site.


This page allows site adminstrators to manage the stories in the submission queue. This page is only used when automatic validation of stories is turned off and admistrators are manually validating stories. This page will list the stories waiting in the queue.


This page lets site administrators "hide" skins from members. Administrators are advised to do this while they work on developing a new skin.


This page is used to manage the site categories. To view a category's sub-categories in the list click on the "+" sign next to the name of the category.

To add categories:

  1. Goto Admin -> Categories.
  2. For a new top level category click "Add New Top Level Category" or for a new sub-category click on the "Sub-Category" link in the Options column for the parent category.
  3. Enter the category information and click "Submit". A locked category is a category where new story submissions are not accepted. It is generally used to "lock" top level categories and force submissions into sub-categories beneath the locked category.


This page is used to manage the characters. Characters for a specific category can be added from the categories page or directly from this page.

To add characters:

  1. Choose on the category in which to place the characters (or "Sitewide" to make the characters accessible site wide).
  2. Choose on the number of characters to add.
  3. Click "Submit".
  4. You will now be presented with a form in which to enter the information about each character. A bio for the character is optional. If entered, it will appear at the top of the "Browse" page for that character.


Ratings are a required element for story submission. Ratings are intended to show the intended audience for a story much as the MPAA ratings work for movies. Note: You are strongly advised not to use the MPAA ratings for your archive as they have threatened archives with legal action for doing so. The story's rating can also be used to limit access to certain stories.


Classifications take the place of the genres and warnings from 1.1 and 2.0. The change lets you define your own classifications without hacking into the files.

To add a new classifcation type:

  1. Goto Admin -> Classifications.
  2. Click on "Add New Classification Type".
  3. Enter the name and title for the classification type such as "genres" or "warnings". The title can be anything you like. The title will be what is displayed on screen. The name will be used in your skin template as a variable so it should be a unique one word description. As an example: enter the name as "genre" and the title as "Genres".
  4. Click "Submit".
  5. After you click submit you'll be taken back to the table listing your classification types.
  6. Click on the classification type ("Genres" to continue the example). This will take you to the list of classifications within that type.
  7. Click "Add New Classifications" to go to the form to add your classifications for that type. You'll have as many blanks on this form as you've set items per page.
  8. Enter the classifications (to continue the example: romance, action/adventure, mystery) one in each text box.
  9. Click submit.

To edit a classification or classification type click "Edit" in the options in the table. To delete a classification click "delete" in the options.


This page gives site administrators a number of options for managing the members of their site. Note: Some of these options may be unavailable if you have bridged your eFiction site to another application.

At the top of the page are a number of options to sort members by:

Validated members are members whose stories by-pass the validation queue and are accepted automatically in archives where administrators are validating stories manually. By clicking on a members name in one of the last four lists, you are choosing to take that action on that member. For instance, if you click on a member's name in the Non-validated Members list, you will be taken to a page that will let you validate that member. The reverse is also true, if you click on a member's name in the Validated Members list, you will be taken to a page that will let you revoke the validated status for that member.

An additional option, at the bottom of the page, for non-bridged sites is the ability to add new members. These are the members that appear in the "Authors Input by Admins" list. When clicking on a name in that list, administrators are given the option to release the author's account to their control.

Mail Users

Site administrators can use this option to mail all members of the site. Administrators may also limit the email to authors or admins in a certain category of the site.


This panel will let your control the modules installed on your site. The script comes with one module, challenges. You can find other modules created by others or create your own. Modules are add-on programs that add functionality to your site without you needing to edit the files.


Panels are new in 3.0. The panels system has been implemented to make eFiction more configurable and easier to customize. Panels are used in a number of places throughout the site. Each panel is assigned a type. The following types are defined as part of the basic eFiction site:

Developers and site administrators also have the option of developing their own types of panels. See the list of default panels.

To modify the panel order, select a panel type from the drop-down list at the top of the page then use the arrows to move the panels up and down in the list. To change panel from hidden to visible, click on the edit option to the right of the panel name.

To add a new panel:

  1. Click "Add New Panel".
  2. Enter the name of the panel. This should be one word alpha-numeric name used to identify the panel.
  3. Enter the title of the panel. This will be the text displayed on the site for the panel.
  4. Enter a URL to the panel. If no URL is supplied the script will look for a file with the name of the panel in the default location for that panel type. For instance, for the browse panel named "recent", the script looks in the browse folder for a file named recent.php. You will need to supply a URL for panels located outside the default location or if you name the file differently than the panel. An example of this would be the browse panel for the challenges module, the URL is "modules/challenges/browse.php". The file is both outside the default location (the browse/ folder) and also named differently than the panel. The panel is named "challenges", but the file is named "browse.php". Note: Panels are not interchangable. You cannot use a browse panel for a top ten list panel.
  5. The panel level is used to determine who has access to that panel. This is most applicable to the admin and member account panels. In the admin panels the level is the admin level required to access the panel. In the member account panels, it is used to determine whether or not the visitor must be logged in to see the panel. 0 is for visitor access (registration, lost password, login) and 1 is for member access (everything else).
  6. Check the hidden box of you want this panel to be hidden (not displayed in the list of panels).
  7. Finally, enter the one letter code for the panel type. (See the above list)
  8. Click "Submit".


In eFiction 3.0 the site settings have been grouped into sections to make the numerous options easier to manage.

Site Information

This section of the settings defines general information about your site.

Submission Settings

This section of the settings defines various submission settings for the site.

Site Settings

This section of the settings defines various general settings used in multiple areas of the site.

Display Settings

This section of the settings defines how various elements of the site are displayed.

Review Settings

This section of the settings defines how reviews are handled.

User Settings

This section of the settings defines how the site interacts with users for certain things.

E-mail Settings

This section defines how e-mails are sent out. If this information is supplied, the e-mail forms will use SMTP.

Language Censor

This section is a list of words that will be forbidden in submissions to the site. They will be disallowed entirely in names and titles. They will be replaced with the first letter and trailing asterisks, a****, in summaries and the text of reviews. Seperate each word with a comma. Placing an asterisk before and/or after the word will act as a wildcard making the censor look for the entire word plus the word used as a suffix and/or prefix. For example, 'frog' will only find 'frog', '*frog' will find 'bullfrog' and 'frog' but not 'froglegs', 'frog*' will find both 'frog' and 'froglegs' but not 'bullfrog', '*frog*' will find 'frog', 'bullfrog', and 'froglegs.' To disable the censor simply leave the list of words empty.

Message Settings

The links that follow this header in the settings area are to the default messages for the site. The installation script placed generic text for these messages into the database for you, but you will most likely wish to edit these messages to better reflect your site.


Blocks are another part of your eFiction site that let you configure the look and feel of your site. A number of blocks are included with eFiction. You can also create your own or add blocks others have created. The included blocks are as follows:

The first page here lists the blocks available to you. Some will have been pre-installed. The first column lists the name of the block and is not editable. The second column, which you can edit, displays the title of the block as it will be displayed on your site. The third column displays the block's status. There are three possible status options.

It is advisable that if the block does not display on every page, you set it to "Index Only" or "Inactive" as this will save on your site's resources. The one exception to this is the Online block. If you use this block, you must set it to "Active" for the block to work properly.

The fourth column, gives you the option to admin the block if there are options to administer.

You may also see the name of a block and the words "Initialize Block" instead of the last three columns. You will see this when a block is available to be installed, but has not been installed yet. The Online, Poll, Search and Shoutbox blocks are not installed by default. Click on "Initialize Block" then change the status of the block to "Active" or "Index Only" to activate it.

Custom Pages

This page allows you to add custom pages to your site. These pages may not contain php code, only HTML and plain text. Four custom pages are defined for you during the installation.

To add a custom page:

  1. Goto Admin -> Custom Pages
  2. Click on "Add New Custom Page"
  3. Enter the name of the page in the form. Note: The name for your page should contain letters, numbers, and the underscore character ONLY.
  4. Enter the title for the page. The page title will also be the text of the link to the page in the page links.
  5. Enter the text of your page.
  6. Click the "Submit" button.

The name you assign to your custom page will be the {NAME_link} variable for you to use in your skins. The script will append "_link" to the name to help prevent naming conflicts with other variables. The title will be the title of the page. For the URL of your custom page, you may use either viewpage.php?id=ID or viewpage.php?page=NAME where ID is the ID number of the page or NAME is the name of the page.

Note: The name for your page should contain letters, numbers, and the underscore character ONLY.

Page Links

This page controls the page links used in the menu block and available for use in the skin as individual links.


This page is used to give admin privileges to a member of your site. The initial page lists all current admins and also gives you the option to add a new admin.

To give a member admin privileges:

  1. Click on "Add New Admin"
  2. Select the member's penname from the drop-down list.
  3. Select the level of admin privileges for this member.
  4. Select the categories that member will oversee or leave blank to have them oversee all categories.
  5. Check the box if you want this admin to receive e-mail notices of new stories to be validated.
  6. Click "Submit".

PHP Info

This page gives information about your server configuration. If you ever run into problems with your eFiction site, you may need to check these settings. This page is given as a courtesy. If you are upgrading from 1.1, delete the phpinfo.php in the main folder. The phpinfo.php file included with 1.1 was not secured and will allow hackers access to the same information it gives you. This admin page is only available to site administrators.

Action Log

If you have turned the action log on for your site, this page is where those logs can be viewed. You can also purge the log here.

Profile Information

This admin panel lets you add/remove items from the member profile page. Right now, there are twelve items pre-loaded.

The majority of the pre-loaded items were in 2.0. To turn one of the pre-loaded items on/off. Click edit. Check the box next to "Field enabled" to turn the field on. On the same form you can change the name and title of the field. Just like the page links and custom pages, the name will be the variable for you to use in your .tpl files and the title will be what appears on screen in the registration/edit bio form and the profile.

There are a number of types of fields defined.

Archive Maintenance

This admin panel provides a number of functions for maintaining your site. 

Default Panel List

Admin Panels:

The admin panels control the different admin options for the site. In 2.0 the list was static. Putting the admin options into panels allows site owners the option of changing the access level for the various features. It also allows new options to be added without editing everything. The 0-4 levels in the panel are most applicable here. The levels 1 to 4 indicate the admin level required to access a certain feature.

Browse Panels:

Browse panels control the "Browse By" area of the site.

Favorite Panels:

The favorites panels are included both in the member "Account Info" page and the list of panels in the profile. In the "Account Info" area the panel must be set to level 1 to be visible in the list of options. Otherwise, they're used as part of the "Manage Favorites" panel.

Top 10 List Panels:

The Top 10 panel. They're all turned on my default. If you turn favorites off, it is suggested that you hide, not delete, the favorites panels. (You could change your mind later.)

Profile Panels:

These are the panels that will be displayed on the user's profile page along with the non-hidden favorites panels.

Submissions Panels:

The submission panels will only be displayed in the user panel if submissions are turned on. They were placed in a type seperate from the user panels so they would be turned on and off together based on the submission site settings.

User Account Panels:

As an extra level of security here. The "level" of the panel should be set to either 0 or 1. Panels with level 0 will be displayed to anyone. Panels with level 1 will be displayed only to logged in members. The login, register, and lost password panels are currently the only panels set to level 0 for the user account area.

(1) Hidden by default.
(2) System panels. You should not need to alter these settings and may cause errors if you do.