Deployment of the WebHelp With Feedback System

System Requirements

The feedback-enabled WebHelp system of Oxygen XML Editor requires the following system components:
  • Apache Web Server running

  • MySQL server running

  • PHP Version 5.1.6 or later

  • PHP MySQL Support

    Oxygen XML WebHelp system supports the following browsers: IE7+, Chrome 19+, Firefox 11+, Safari 5+, Opera 11+

Installation Instructions

Note: These instructions were written for XAMPP 1.7.7 with PHP 5.3.8 and for phpMyAdmin 3.4.5. Later versions of these packages may change the location or name of some options, however the following installation steps should remain valid and basically the same.

In case you have a web server configured with PHP, MySQL, you can deploy the WebHelp output directly. Otherwise, install XAMPP. XAMPP is a free and open source cross-platform web server solution stack package. It consists mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts written in PHP.

Install XAMPP

  1. Go to https://www.apachefriends.org/download.html and download XAMPP, for instance for a Windows system.
  2. Install it in C:\xampp.
  3. From the XAMPP control panel, start MySQL, and then Apache.
  4. Open http://localhost/xampp/index.php in your browser to check whether the HTTP server is working.

Create the WebHelp Feedback database

The WebHelp system needs a database to store user details and the actual feedback they provide. The following procedure creates a database for the feedback system and a MySQL user with privileges on that database. The feedback system uses these credentials to connect to the database.

Use phpMyAdmin to create a database:
  1. Type localhost in your browser.
  2. In the left area, select: phpMyAdmin.
  3. Click Databases (in the right frame) and then create a database. You can give any name you want to your database, for example comments.
  4. Create a user with connection privileges for this database. In the SQL tab, paste the following text:
      INSERT INTO `mysql`.`user` (`Host`,`User`,`Password`,`Select_priv`,`Insert_priv`,`Update_priv`,`Delete_priv`,`Create_priv`,
          `Drop_priv`,`Reload_priv`,`Shutdown_priv`,`Process_priv`,`File_priv`,`Grant_priv`,`References_priv`,`Index_priv`,`Alter_priv`, 
          `Show_db_priv`,`Super_priv`,`Create_tmp_table_priv`,`Lock_tables_priv`,`Execute_priv`,`Repl_slave_priv`,`Repl_client_priv`,         
          `Create_view_priv`, `Show_view_priv`,`Create_routine_priv`,`Alter_routine_priv`,`Create_user_priv`,`Event_priv`,`Trigger_priv`,
          `Create_tablespace_priv`,`ssl_type`,`max_questions`,`max_updates`,`max_connections`,`max_user_connections`,`plugin`, 
          `authentication_string`) VALUES ('localhost', 'user_name', PASSWORD('user_password'), 'Y','Y','Y','Y','Y','Y','Y', 'N','N','N',
          'N','Y','Y','Y','Y','N','Y','Y','Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'Y', 'Y', 'Y','', '0', '0', '0', '0', '', '');  
  5. Change the user_name and the user_password values.
  6. Under localhost in the right frame click Privileges and then at the bottom of the page click the reload the privileges link.

Deploying the WebHelp output

To deploy the WebHelp output, follow these steps:
  1. Locate the directory of the HTML documents. Open http://localhost/xampp/phpinfo.php in your browser and see the value of the DOCUMENT_ROOT variable. In case you installed XAMPP in C:\xampp, the value of DOCUMENT_ROOT is C:/xampp/htdocs.
  2. Copy the transformation output folder in the DOCUMENT_ROOT.
  3. Rename it to a relevant name, for example, webhelp_1.
  4. Open http://localhost/webhelp_1/. You are redirected to http://localhost/webhelp_1/oxygen-webhelp/install/.
    • Verify that the prerequisites are met.
    • Press Start Installation.
    • Configure the Deployment Settings section. Default values are provided, but you should adjust them as needed.
    • Configure the MySql Database Connection Settings section. Use the details from the Create the WebHelp Feedback database section to fill-in the appropriate text boxes.
      Warning: Checking the Create new database structure option will overwrite any existing data in the selected database, if it already exists.
    • If you are using a domain (such as OpenLDAP or Active Directory) to manage users in your organization, check the Enable LDAP Autehntication option. This will allow you to configure the LDAP server, which will provide information and credentials for users who will access the WebHelp system. Also, this will allow you to choose which of the domain users will have administrator privileges.
    • If the Create new database structure option is checked, the Create WebHelp Administrator Account section becomes available. Here you can set the administrator account data. The administrator is able to moderate new posts and manage WebHelp users.
      The same database can be used to store comments for different WebHelp deployments. If a topic is available in more than one WebHelp deployments and there are comments associated with it, you can choose to display the comments in all deployments that share the database. To do this, enable the Display comments from other products option. In the Display comments from section a list with the deployments sharing the same database is displayed. Select the deployments allowed to share common feedback.
      Note: You can restrict the displayed comments of a product depending on its version. In case you have two products that use the same database and you restrict one of them to display comments starting from a certain version, the comments of the other product are also displayed from the specified version onwards.
    • Press Next Step.
    • Remove the installation folder from your web server.
    • Click the link pointing to the index of the documentation, or visit: http://localhost/webhelp_1/.
To test your system, create a user and post a comment. Check if the notification emails are delivered to your inbox.
Note: To read debug messages generated by the system:
  1. Enable JScript logging by doing one of the following:
    • Open the log.js file, locate the var log= new Log(Level.NONE); line, and change the logging level to: Level.INFO, Level.DEBUG, Level.WARN, or Level.ERROR.
    • Append ?log=true to the WebHelp URL.
  2. Inspect the PHP and Apache server log files.