Version 38 (modified by IgorL, 9 years ago) (diff)


I can't remember my Admin login and/or password. How can I restore or change it?

You should empty the Admins table and create a new admin record there. The following script will allow you to do that. Place the script in the main directory of your Dolphin site, name it so its name would end with .php and run it in your browser, for example http://yoursite/admin_restore.php:

db_res("TRUNCATE TABLE `Admins`");
db_res("INSERT INTO `Admins` SET `Name`='ADMIN_NAME', `Password`=MD5('ADMIN_PASSWORD')");
echo "<h2>Success</h2>";

where ADMIN_NAME and ADMIN_PASSWORD should be replaced with their real values.

I see this error on some of my site's pages: Call to undefined function: mb_ereg_replace() in /path_to_dolphin/inc/ on line 120

This error and similar errors (yielding about functions starting with mb_) refer to mbstring extension being absent from your PHP compilation. You should either re-compile it with --with-mbstring directive (under Linux) or uncomment extension=php_mbstring.dll in php.ini (under Windows). Then you should restart Apache web server.

When I try to open a Navigation Menu link or somebody's profile, I get this page: Not Found

The problem is that your Apache server is not compiled with mod_rewrite module or you don't have rewrite instructions in your Dolphin's root .htaccess file. These instructions should be as follows:

<IfModule mod_rewrite.c>
RewriteEngine on

RewriteRule ^articles/{0,1}$   articles.php [QSA,L]
RewriteRule ^articles/entry/([^/.]+)/{0,1}$   articles.php?action=viewarticle&articleUri=$1 [QSA,L]
RewriteRule ^articles/entry/{0,1}$   articles.php?action=viewarticle&articleUri=$1 [QSA,L]
RewriteRule ^articles/category/([^/.]+)/{0,1}$   articles.php?action=viewcategory&articleCatUri=$1 [QSA,L]

RewriteRule ^news/{0,1}$  news.php [QSA,L]
RewriteRule ^news/([^/.]+)/{0,1}$  news.php?newsUri=$1 [QSA,L]

RewriteRule ^blogs/{0,1}$   blogs.php [QSA,L]
RewriteRule ^blogs/all/([0-9]+)/([0-9]+)/{0,1}$  blogs.php?page=$2&per_page=$1  [QSA,L]
RewriteRule ^blogs/top/{0,1}$   blogs.php?action=top_blogs [QSA,L]
RewriteRule ^blogs/top/([0-9]+)/([0-9]+)/{0,1}$   blogs.php?action=top_blogs&page=$2&per_page=$1 [QSA,L]
RewriteRule ^blogs/top_posts/{0,1}$   blogs.php?action=top_posts [QSA,L]
RewriteRule ^blogs/tag/([^/.]+)/{0,1}$   blogs.php?action=search_by_tag&tagKey=$1 [QSA,L]
RewriteRule ^blogs/tag/{0,1}$   blogs.php?action=search_by_tag&tagKey= [QSA,L]
RewriteRule ^blogs/posts/([^/.]+)/tag/([^/.]+)/{0,1}$   blogs.php?action=search_by_tag&tagKey=$2&ownerName=$1 [QSA,L]
RewriteRule ^blogs/posts/([^/.]+)/category/([^/.]+)/{0,1}$   blogs.php?action=show_member_blog&ownerName=$1&categoryUri=$2 [QSA,L]
RewriteRule ^blogs/entry/([^/.]+)/{0,1}$   blogs.php?action=show_member_post&postUri=$1 [QSA,L]
RewriteRule ^blogs/entry/{0,1}$    blogs.php?action=show_member_post&postUri= [QSA,L]
RewriteRule ^blogs/posts/([^/.]+)/{0,1}$   blogs.php?action=show_member_blog&ownerName=$1 [QSA,L]
RewriteRule ^blogs/posts/{0,1}$   blogs.php?action=show_member_blog&ownerName= [QSA,L]
RewriteRule ^blogs/posts/([^/.]+)/([0-9]+)/([0-9]+)/{0,1}$   blogs.php?action=show_member_blog&ownerName=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^blogs/posts/([^/.]+)/category/([^/.]+)/([0-9]+)/([0-9]+)/{0,1}$   blogs.php?action=show_member_blog&ownerName=$1&categoryUri=$2&page=$4&per_page=$3 [QSA,L]

RewriteRule ^events/{0,1}$  events.php?show_events=all&action=show [QSA,L]
RewriteRule ^events/all/([0-9]+)/([0-9]+)/{0,1}$  events.php?show_events=all&action=show&page=$2&per_page=$1  [QSA,L]
RewriteRule ^events/part/{0,1}$  events.php?show_events=all&action=show [QSA,L]
RewriteRule ^events/search/{0,1}$  events.php?action=search [QSA,L]
RewriteRule ^events/search/([^/.]+)/{0,1}$  events.php?action=search_by_tag&tagKey=$1 [QSA,L]
RewriteRule ^events/my/{0,1}$  events.php?action=show&show_events=my [QSA,L]
RewriteRule ^events/new/{0,1}$  events.php?action=new [QSA,L]
RewriteRule ^events/entry/([^/.]+)/{0,1}$  events.php?action=show_info&eventUri=$1 [QSA,L]
RewriteRule ^events/part/([^/.]+)/{0,1}$  events.php?action=show_part&eventUri=$1 [QSA,L]

RewriteRule ^ads/{0,1}$  classifieds.php?Browse=1 [QSA,L]
RewriteRule ^ads/search/{0,1}$  classifieds.php?SearchForm=1 [QSA,L]
RewriteRule ^ads/my/{0,1}$  classifiedsmy.php?MyAds=1 [QSA,L]
RewriteRule ^ads/new/{0,1}$  classifiedsmy.php?PostAd=1 [QSA,L]
RewriteRule ^ads/cat/([^/.]+)/{0,1}$  classifieds.php?catUri=$1 [QSA,L]
RewriteRule ^ads/all/cat/([0-9]+)/([0-9]+)/([^/.]+)/{0,1}$  classifieds.php?catUri=$3&page=$2&per_page=$1 [QSA,L]
RewriteRule ^ads/subcat/([^/.]+)/{0,1}$  classifieds.php?scatUri=$1 [QSA,L]
RewriteRule ^ads/all/subcat/([0-9]+)/([0-9]+)/([^/.]+)/{0,1}$  classifieds.php?scatUri=$3&page=$2&per_page=$1 [QSA,L]
RewriteRule ^ads/entry/([^/.]+)/{0,1}$  classifieds.php?entryUri=$1 [QSA,L]
RewriteRule ^ads/tag/([^/.]+)/{0,1}$  classifieds_tags.php?tag=$1 [QSA,L]

RewriteRule ^photo/all/([0-9]+)/([0-9]+)/{0,1}$   browsePhoto.php?page=$2&per_page=$1 [QSA,L]
RewriteRule ^photo/gallery_top/{0,1}$  browsePhoto.php?rate=top [QSA,L]
RewriteRule ^photo/gallery_top/([0-9]+)/([0-9]+)/{0,1}$  browsePhoto.php?rate=top&page=$2&per_page=$1 [QSA,L]
RewriteRule ^photo/gallery_top/([0-9]+)/([0-9]+)/{0,1}$  browsePhoto.php?rate=top&page=$2&per_page=$1 [QSA,L]
RewriteRule ^photo/gallery_tag/([^/.]+)/([0-9]+)/([0-9]+)/{0,1}$  browsePhoto.php?tag=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^photo/gallery_tag/([^/.]+)/([0-9]+)/([0-9]+)/$  browsePhoto.php?tag=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^photo/gallery_tag/([^/.]+)/{0,1}$  browsePhoto.php?tag=$1 [QSA,L]
RewriteRule ^photo/gallery/all/([^/.]+)/([0-9]+)/([0-9]+)$  browsePhoto.php?ownerName=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^photo/gallery/all/([^/.]+)/([0-9]+)/([0-9]+)/$  browsePhoto.php?ownerName=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^photo/gallery/all/([^/.]+)/{0,1}$  browsePhoto.php?ownerName=$1 [QSA,L]
RewriteRule ^photo/gallery/([^/.]+)/{0,1}$  viewPhoto.php?fileUri=$1 [QSA,L]
RewriteRule ^photo/gallery/{0,1}$  viewPhoto.php?fileUri=$1 [QSA,L]

RewriteRule ^music/all/([0-9]+)/([0-9]+)/{0,1}$  browseMusic.php?page=$2&per_page=$1 [QSA,L]
RewriteRule ^music/gallery_top/{0,1}$  browseMusic.php?rate=top [QSA,L]
RewriteRule ^music/gallery_top/([0-9]+)/([0-9]+)/{0,1}$  browseMusic.php?rate=top&page=$2&per_page=$1 [QSA,L]
RewriteRule ^music/gallery_top/([0-9]+)/([0-9]+)/{0,1}$  browseMusic.php?rate=top&page=$2&per_page=$1 [QSA,L]
RewriteRule ^music/gallery_tag/([^/.]+)/([0-9]+)/([0-9]+)/{0,1}$  browseMusic.php?tag=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^music/gallery_tag/([^/.]+)/([0-9]+)/([0-9]+)/$  browseMusic.php?tag=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^music/gallery_tag/([^/.]+)/{0,1}$  browseMusic.php?tag=$1 [QSA,L]
RewriteRule ^music/gallery/all/([^/.]+)/([0-9]+)/([0-9]+)$  browseMusic.php?ownerName=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^music/gallery/all/([^/.]+)/([0-9]+)/([0-9]+)/$  browseMusic.php?ownerName=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^music/gallery/all/([^/.]+)/{0,1}$  browseMusic.php?ownerName=$1 [QSA,L]
RewriteRule ^music/gallery/([^/.]+)/{0,1}$  viewMusic.php?fileUri=$1 [QSA,L]
RewriteRule ^music/gallery/{0,1}$  viewMusic.php?fileUri=$1 [QSA,L]

RewriteRule ^video/all/([0-9]+)/([0-9]+)/{0,1}$  browseVideo.php?page=$2&per_page=$1 [QSA,L]
RewriteRule ^video/gallery_top/{0,1}$  browseVideo.php?rate=top [QSA,L]
RewriteRule ^video/gallery_top/([0-9]+)/([0-9]+)/{0,1}$  browseVideo.php?rate=top&page=$2&per_page=$1 [QSA,L]
RewriteRule ^video/gallery_top/([0-9]+)/([0-9]+)/{0,1}$  browseVideo.php?rate=top&page=$2&per_page=$1 [QSA,L]
RewriteRule ^video/gallery_tag/([^/.]+)/([0-9]+)/([0-9]+)/{0,1}$  browseVideo.php?tag=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^video/gallery_tag/([^/.]+)/([0-9]+)/([0-9]+)/$  browseVideo.php?tag=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^video/gallery_tag/([^/.]+)/{0,1}$  browseVideo.php?tag=$1 [QSA,L]
RewriteRule ^video/gallery/all/([^/.]+)/([0-9]+)/([0-9]+)$  browseVideo.php?ownerName=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^video/gallery/all/([^/.]+)/([0-9]+)/([0-9]+)/$  browseVideo.php?ownerName=$1&page=$3&per_page=$2 [QSA,L]
RewriteRule ^video/gallery/all/([^/.]+)/{0,1}$  browseVideo.php?ownerName=$1 [QSA,L]
RewriteRule ^video/gallery/([^/.]+)/{0,1}$  viewVideo.php?fileUri=$1 [QSA,L]
RewriteRule ^video/gallery/{0,1}$  viewVideo.php?fileUri=$1 [QSA,L]

RewriteRule ^groups/all/{0,1}$ grp.php [QSA,L]
RewriteRule ^groups/entry/([^/.]+)/{0,1}$	grp.php?action=group&groupUri=$1	[QSA,L]
RewriteRule ^groups/category/([^/.]+)/{0,1}$		grp.php?action=categ&categUri=$1	[QSA,L]
RewriteRule ^groups/keyword/([^/.]+)/{0,1}$		grp.php?action=categ&keyword=$1	[QSA,L]

RewriteRule ^search/tag/([^/.]+)/{0,1}$  search.php?Tags=$1 [QSA,L]

RewriteRule ^New\sPage$  viewPage.php?ID=New+Page [QSA,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .+ - [L]
RewriteRule ^([A-Za-z0-9_-]+)$ profile.php?ID=$1 [QSA,L]


If you can't solve these problems, you can disable Friendly profile permalinks in Settings -> Permalinks.

After disabling permalinks you need to recompile Navigation Menu Builder in Admin Panel -> Builders -> Navigation Menu Builder by moving any block here.

I see this error when I open my site: Warning: Missing argument 1 for TopMenuDesign(), called in ...templates\tmpl_...\scripts\BxTemplMenu.php on line 45 and defined in\ on line 250

Templates created for versions under 6.0.0004 will generate this error. But it can be fixed the following way:

1) open templates/tmpl_TEMPLATE-NAME/scripts/BxTemplMenu.php

2) replace

$ret .= TopMenuDesign( ... );


$ret .= TopMenuDesign( (int)getParam('topmenu_items_perline'), '</tr><tr>' );

This should solve the problem.

My security image doesn't show up. So no one can join my site

This may be caused by a few reasons: 1) You either don't have GD library or ImageMagick installed.

2) If you still have GD library installed it may be not compiled with TrueType fonts.

3) Another reason for this problem may be unchecked Use GD library for image processing in Settings -> Advanced Settings.

4) And at last, if you're using ImageMagick, not GD library, you may have incorrect paths to its applications in inc/ In this case you should check the paths to $MOGRIFY, $CONVERT and $COMPOSITE.

If all this doesn't help, you can just disable security image in Settings -> Advanced Settings -> Enable security image on join page.

I get this error message throughout my site: Fatal error: Call to undefined function: mb_internal_encoding

The default PHP installation does not always have the mb_string extension enabled, but the program requires that you run the PHP multibyte-string extension which is not enabled by default. In brief, in order to do this you will need to (in Windows):

  • uncomment out the line

in the php.ini file

  • ensure that the path to this file is set correctly, again in php.ini, for example:
    extension_dir = "./ext"
  • Note that you can ensure that this file is correctly loaded by setting in php.ini:
    display_errors = on
  • Restart your webserver, e.g. restart Apache
  • You can check via phpinfo() that mbstring appears within the information page
  • Here's how to do it in UNIX-based systems:

I receive this error when I try to install Dolphin: The server encountered an internal error or misconfiguration and was unable to complete your request

1) This is most probably caused by some .htaccess instructions which your server refuses to handle. These instructions usually are

php_flag register_globals Off

in the .htaccess file of the main Dolphin folder


Options -Indexes

in the .htaccess files of the subfolders

Comment out these statements, for example:

# Options -Indexes

and try to run installation again.

2) This problem can also be caused by inappropriate permissions if your PHP is installed as CGI (common gateway interface).

To check the mode your PHP is running in, create the file phpinfo.php with the following contents:


and upload it to the Dolphin installation directory. Then open this file in a browser.

When you're sure that your PHP is running in CGI mode, you should set the permissions of all folders to 755 and files to 644; the file ray/modules/global/app/ffmpeg.exe should be set to 755 as well. To do this quickly, you can run the following commands when you're in the Dolphin installation folder under your SSH account:

find ./ -type d -exec chmod 755 {} \;
find ./ -type f -exec chmod 644 {} \;
chmod 755 ray/modules/global/app/ffmpeg.exe;

Now you need to let Ray determine your new permissions properly. To do so, open the file ray/modules/global/inc/ and insert these lines of code:

$sResult = "";
$bDir = is_dir($sFilePath);
if(is_readable($sFilePath)) $sResult = $bDir ? "755" : "644";
if(is_writable($sFilePath)) $sResult = $bDir ? "777" : "666";
if(!$bDir && is_executable($sFilePath)) $sResult = "777";

before the line

return $sResult;

in the function checkPermissions($sFileName).

I see this error on my site: Fatal Error: Cannot apply localization

  • Check that the langs folder have 777 permissions.
  • If your default language is not English, run thw following query in phpMyAdmin:
    UPDATE `GlParams` SET `Value` = 'your_lang_name' WHERE `Name` = 'lang_default'

where your_lang_name is the name of your default language as it is stated in the Name field of the LocalizationLanguages table.

When I try to add any fields in the Fields Builder it tells me "Unable to add New_Item. Check if New_Item is already added"

Enter phpMyAdmin (or a different database manager), open the structure of the table Profiles and remove the column NEW_ITEM (it is usually the last column in this table).

Try to create a new field again.

The Member Log-In Link at the far right side of my homepage header does not work

This is connected with some relocation settings on your server. To fix it, open the file templates/tmpl_uni/scripts/functions.php and replace

<a href="<?= $site['url'] ?>member.php" onclick="showItemEditForm('login_div'); $( '#login_div' ).show().load( '<?= $site['url'] ?>member.php?action=show_login_form&relocate=' + encodeURIComponent( window.location )  );return false;"><?= _t( '_Member Login' ) ?></a>


<a href="<?= $site['url'] ?>member.php" onclick="showItemEditForm('login_div'); $( '#login_div' ).show().load( '<?= $site['url'] ?>member.php?action=show_login_form&relocate=' + encodeURIComponent( window.location.pathname )  );return false;"><?= _t( '_Member Login' ) ?></a>

I periodically get this error on my site: "Got error 28 from storage engine"

The error comes when MySQL doesn't have any free hard disk space to write to. Check your tmp directory or delete older backups.

I get the "undefined" error when trying to register my widgets

As soon as Adobe has made some changes in the base XML class of their latest Flash Player, it has become incompatible with Ray.
So, you need to make sure that your Flash Player version is 8 or 9. If you have upgraded Flash Player to the 10th version, you should downgrade it to 8 or 9 version.

My RMS widgets (Chat, IM, Video Recorder) end up in "Connecting". What should I do?

Use RMS is enabled in Plugins -> Ray Suite -> Base Settings but:

1) your RMS is not installed or not properly installed (refer to RMS installation manual)

2) you are using Ad-Free widgets and your RMS is not properly specified in Plugins -> Ray Suite -> Base Settings (refer to RMS installation manual)

3) you are using Free widgets and BoonEx RMS is not properly specified in Plugins -> Ray Suite -> Base Settings (refer to Dolphin install: Final step)

4) you have specified BoonEx RMS but you're using Ad-Free widgets; in this case you're not eligible to use BoonEx RMS so you should install your own one (refer to the 1) step)

Note: If you somehow still can't make RMS work, you can disable it by unticking the Use RMS checkbox. But in this case you won't be able to use audio/video streaming features in Ray widgets.

Some of the widgets show "Not Installed" in the Ray Suite Panel though I have a regular Dolphin installation

This is typically caused by the wrong permissions on some XML files inside the ray/modules directory.

Check if the following files have 666 permissions:

./ray/modules/global/xml/config.xml ./ray/modules/global/xml/main.xml ./ray/modules/board/xml/config.xml ./ray/modules/board/xml/langs.xml ./ray/modules/board/xml/main.xml ./ray/modules/board/xml/skins.xml ./ray/modules/chat/xml/config.xml ./ray/modules/chat/xml/langs.xml ./ray/modules/chat/xml/main.xml ./ray/modules/chat/xml/skins.xml ./ray/modules/im/xml/config.xml ./ray/modules/im/xml/langs.xml ./ray/modules/im/xml/main.xml ./ray/modules/im/xml/skins.xml ./ray/modules/presence/xml/config.xml ./ray/modules/presence/xml/langs.xml ./ray/modules/presence/xml/main.xml ./ray/modules/presence/xml/skins.xml ./ray/modules/video/xml/config.xml ./ray/modules/video/xml/langs.xml ./ray/modules/video/xml/main.xml ./ray/modules/video/xml/skins.xml ./ray/modules/mp3/xml/config.xml ./ray/modules/mp3/xml/langs.xml ./ray/modules/mp3/xml/main.xml ./ray/modules/mp3/xml/skins.xml ./ray/modules/movie/xml/config.xml ./ray/modules/movie/xml/langs.xml ./ray/modules/movie/xml/main.xml ./ray/modules/movie/xml/skins.xml ./ray/modules/music/xml/config.xml ./ray/modules/music/xml/langs.xml ./ray/modules/music/xml/main.xml ./ray/modules/music/xml/skins.xml ./ray/modules/desktop/xml/config.xml ./ray/modules/desktop/xml/langs.xml ./ray/modules/desktop/xml/main.xml ./ray/modules/desktop/xml/skins.xml ./ray/modules/shoutbox/xml/config.xml ./ray/modules/shoutbox/xml/langs.xml ./ray/modules/shoutbox/xml/main.xml ./ray/modules/shoutbox/xml/skins.xml

and if the permissions are wrong set them using SSH or FTP's chmod command, for example:

chmod 666 ./ray/modules/global/xml/config.xml ./ray/modules/global/xml/main.xml ./ray/modules/board/xml/config.xml ./ray/modules/board/xml/langs.xml ./ray/modules/board/xml/main.xml ./ray/modules/board/xml/skins.xml ./ray/modules/chat/xml/config.xml ./ray/modules/chat/xml/langs.xml ./ray/modules/chat/xml/main.xml ./ray/modules/chat/xml/skins.xml ./ray/modules/im/xml/config.xml ./ray/modules/im/xml/langs.xml ./ray/modules/im/xml/main.xml ./ray/modules/im/xml/skins.xml ./ray/modules/presence/xml/config.xml ./ray/modules/presence/xml/langs.xml ./ray/modules/presence/xml/main.xml ./ray/modules/presence/xml/skins.xml ./ray/modules/video/xml/config.xml ./ray/modules/video/xml/langs.xml ./ray/modules/video/xml/main.xml ./ray/modules/video/xml/skins.xml ./ray/modules/mp3/xml/config.xml ./ray/modules/mp3/xml/langs.xml ./ray/modules/mp3/xml/main.xml ./ray/modules/mp3/xml/skins.xml ./ray/modules/movie/xml/config.xml ./ray/modules/movie/xml/langs.xml ./ray/modules/movie/xml/main.xml ./ray/modules/movie/xml/skins.xml ./ray/modules/music/xml/config.xml ./ray/modules/music/xml/langs.xml ./ray/modules/music/xml/main.xml ./ray/modules/music/xml/skins.xml ./ray/modules/desktop/xml/config.xml ./ray/modules/desktop/xml/langs.xml ./ray/modules/desktop/xml/main.xml ./ray/modules/desktop/xml/skins.xml ./ray/modules/shoutbox/xml/config.xml ./ray/modules/shoutbox/xml/langs.xml ./ray/modules/shoutbox/xml/main.xml ./ray/modules/shoutbox/xml/skins.xml

I get Uploading file error or Undefined when uploading audio/video files in Ray Media and Video Players

1) This is a common problem and most of the time it is caused by the following reasons:

1) You're trying to upload files bigger than 2 Megabytes which is the default value for PHP configuration. To fix it, edit php.ini file which is used as a configuration file by your PHP processor. You have to find two variables: upload_max_filesize and post_max_size and assign bigger values to them.

2) You don't have .htaccess or have it corrupted in the ray folder. Here's the code that this file must contain:

			 <IfModule mod_security.c>
				SecFilterEngine off

3) You have the correct .htaccess file but it gets overridden by other Apache settings on your server. You should contact your hosting provider in this case.

4) You don't have the proper ffmpeg.exe in ray/modules/global/app or it doesn't have 777 permissions (readable, writable, executable). In this case change the permissions and make sure the ffmpeg.exe file is applicable to your operating system: Linux (provided with Dolphin), Windows or FreeBSD.

5) You have incorrect permissions for the following folders:

ray/modules/mp3/files/, ray/modules/movie/files and ray/modules/music/files These folders must have 777 permissions.

6) You have PHP exec() function disabled on your server. Advise with your hosting provider in order to figure this out.

2) If you still can't make it work, please follow this diagnostic procedure:

  • To determine the reason of such problems, create a php file with the following contents, upload it in your Dolphin's root directory and run it in your browser window:
echo "<br/><b>PHP INI settings</b><br/>";
echo "<br>safe mode = ".ini_get('safe_mode');
echo "<br>disabled functions = ".ini_get('disable_functions');
echo "<br>max execution time = ".ini_get('max_execution_time');
echo "<br>post_max_size = ".ini_get('post_max_size');
echo "<br>upload max filesize = ".ini_get('upload_max_filesize');

echo "<br/><br/><b>ffmpeg output</b><pre>";
$s = realpath("ray/modules/global/app/ffmpeg.exe");
echo `$s -version 2>&1`;

Output analysis:

safe_mode = if this variable has non-empty value then ffmpeg will not be able to execute; in this case advise with your hosting about disabling safe mode.

disabled_functions = if this variable contains exec then this function is forbidden by hosting and thus your script won't be able to run ffmpeg.

max_execution_time, max_input_time = it's usually set to 30 seconds; you should increase its value several times.

post_max_size = the size of POST data that PHP can handle; it's usually set at 2M; you should increase its value up to 8M or more.

upload_max_filesize = the size limit of uploaded files; it's usually set at 2M; you should increase its value up to 8M or more.

ffmpeg output: - this command will result in a message like this:

FFmpeg version SVN-r9115, Copyright (c) 2000-2007 Fabrice Bellard, et al.
  configuration: --enable-libmp3lame --enable-xvid --enable-x264 --enable-gpl --enable-libvorbis --enable-libogg --enable-libtheora --enable-liba52 --enable-libamr-nb --enable-libamr-wb --enable-libfaad --enable-libfaac --enable-pthreads --disable-shared --enable-static
  libavutil version: 49.4.0
  libavcodec version: 51.40.4
  libavformat version: 51.12.1
  built on Aug 14 2007 18:26:46, gcc: 3.4.5 (Gentoo 3.4.5, ssp-3.4.5-1.0, pie-8.7.9)
ffmpeg      SVN-r9115
libavutil   3212288
libavcodec  3352580
libavformat 3345409

If you didn't see anything like this your hosting doesn't allow your web script to run exe files (this can be the result of safe_mode and disabled_functions values, see above).

Possible ways to fix this problem:

  • safe_mode and disabled_functions issues can be resolved only by hosting provider.
  • Make sure you have set appropriate PHP settings for uploading media files.

a) If PHP on your server is running in CGI mode, you need to create a php.ini file with the following contents:


Then copy this file to the ray/modules/movie/files subfolder

b) If PHP on your server is running as Apache module, place this code in the .htaccess file which resides in the main Dolphin directory:

php_value upload_max_filesize 300M
php_value post_max_size 300M
php_value max_input_time 3000
php_value max_execution_time 3000
php_value memory_limit 128M

  • You can also change some MySQL settings to prevent connection timeouts when uploading big files: Open the file ray/modules/global/inc/ and insert the following commands
    mysql_query ("SET @@local.wait_timeout=9000;");
    mysql_query ("SET @@wait_timeout=9000;");
    mysql_query ("SET @@local.interactive_timeout=9000;");
    mysql_query ("SET @@interactive_timeout=9000;");
    mysql_query ("SET @@local.connect_timeout=9000;");
    mysql_query ("SET @@connect_timeout=9000;");

after the line

@mysql_select_db($this->sDb, $this->rLink);

My widgets result in "Invalid parameters" error and my Ray Base results in "Not Installed"

  • Referring to Dolphin, it can be caused by efforts to replace the ray folder with that from the Ray package and install it which is obviously not needed because Ray is already integrated into Dolphin.
    Here are the steps of fixing it in this case:

    • Backup the media files if they already have been uploaded by your members. They reside in the folders ray/modules/WIDGET_NAME/files, where WIDGET_NAME stands for the name of the widget (chat, im, etc.)

    • Replace the whole ray folder with that from your original Dolphin package (for example Dolphin 6.1.4 Free or AdFree)

    • Set the following permissions using an FTP or SSH client
      chmod 777 ./ray/modules/board/files ./ray/modules/chat/files ./ray/modules/im/files ./ray/modules/movie/files ./ray/modules/mp3/files ./ray/modules/music/files ./ray/modules/global/app/ffmpeg.exe
      chmod 666 ./ray/modules/board/xml/config.xml ./ray/modules/board/xml/langs.xml ./ray/modules/board/xml/main.xml ./ray/modules/board/xml/skins.xml ./ray/modules/chat/xml/config.xml ./ray/modules/chat/xml/langs.xml ./ray/modules/chat/xml/main.xml ./ray/modules/chat/xml/skins.xml ./ray/modules/desktop/xml/config.xml ./ray/modules/desktop/xml/langs.xml ./ray/modules/desktop/xml/main.xml ./ray/modules/desktop/xml/skins.xml ./ray/modules/global/data/integration.dat ./ray/modules/global/inc/ ./ray/modules/global/inc/ ./ray/modules/global/xml/config.xml ./ray/modules/global/xml/main.xml ./ray/modules/im/xml/config.xml ./ray/modules/im/xml/langs.xml ./ray/modules/im/xml/main.xml ./ray/modules/im/xml/skins.xml ./ray/modules/movie/xml/config.xml ./ray/modules/movie/xml/langs.xml ./ray/modules/movie/xml/main.xml ./ray/modules/movie/xml/skins.xml ./ray/modules/mp3/xml/config.xml ./ray/modules/mp3/xml/langs.xml ./ray/modules/mp3/xml/main.xml ./ray/modules/mp3/xml/skins.xml ./ray/modules/music/xml/config.xml ./ray/modules/music/xml/langs.xml ./ray/modules/music/xml/main.xml ./ray/modules/music/xml/skins.xml ./ray/modules/presence/xml/config.xml ./ray/modules/presence/xml/langs.xml ./ray/modules/presence/xml/main.xml ./ray/modules/presence/xml/skins.xml ./ray/modules/shoutbox/xml/config.xml ./ray/modules/shoutbox/xml/langs.xml ./ray/modules/shoutbox/xml/main.xml ./ray/modules/shoutbox/xml/skins.xml ./ray/modules/video/xml/config.xml ./ray/modules/video/xml/langs.xml ./ray/modules/video/xml/main.xml ./ray/modules/video/xml/skins.xml
    • Open the file ray/modules/global/inc/ and replace * [path_to] with the server path to Dolphin's folder, for example /home/user/community/ *

    • Log into Dolphin's Admin Panel and navigate to Plugins -> Ray Suite. Register all your widgets and specify your RMS in Base Settings. Please refer to Dolphin Installation Manual.

    • Restore the media files from backup placing them into the same folders where they used to be.

My Free/Ad?-Free licenses don't work resulting in "wrong license number" message

  • The most common reason for this is that you're trying to apply your licenses on incompatible package, i.e. you're trying to register Free Ray widgets with Ad-Free licenses or vice versa. To check the version of your widgets, open the following file inside each widget's folder:

Search for the version number which looks like this:

'code' => "chat_3.0.0000_free" or
'code' => "chat_3.0.0000"

The Free widgets contain _free wording in these lines, while the Ad-Free ones don't.

To replace the current Ray package in Dolphin with the appropriate one, please refer to Ray FAQ.

My Ray widgets show "Not Registered" on user end though they have been successfully registered on admin end

  • You're probably using the wrong license number. In order to check it out, open ray/modules/module_name/xml/main.xml and replace CDATA[enabled] with CDATA[not registered]. Then try to register your widgets again and you will probably encounter a problem mentioned in the previous paragraph.

  • If there's no problem registering the widget again, but it still appears to be unregistered on users end, you have most probably installed 3.1 widgets together with 3.0. In this case you need to install all widgets of the same verson.

My Audio/Video? widgets (Chat, IM, Video Recorder and Whiteboard) can't connect

  • You need to install RMS, enable it and specify its IP address in Admin Panel -> Plugins -> Ray Suite -> Base Settings.

Set the following ports: RMS Port: 1935, RMS HTTP Port: 5080.

If you still experience RMS connection problem with Free widgets, please contact BoonEx Support Department and provide your site's full URL.

Ray 3.1 HotFix

Ray 3.1 HotFix. Download Free or AdFree version. This Hotfix is with a minor fixes in Ray modules. They are:

  • Problem with version check in Ray Base
  • Corrections of buttons representation in VPlayer abd VRecorder
  • Minor bugs in Chat and IM interface

The archives contain only .swf files. This HotFix does not require any specific instruction on how to apply it. You should just upload .swf files according to their location in Ray modules and that's all.

When I open the video recorder, it's connecting forever. In the admin panel it opens up ok, but hangs when I click on a video

You have recorded a corrupted video file.

You need now to delete the folder that belongs to the member and is located in the rms_path/webapps/video/streams folder.

Then you need to delete a few lines of code from the file rms_folder/webapps/video/streams/config.xml

The lines look like these:

   <void method="put">
    <object class="">

Some or all of my widgets keep on loading and do not work.

This problem usually happens when there are writable permissions on folders and files when PHP is running in CGI mode.

To check the mode your PHP is running in, log into your Dolphin's Admin Panel and then open the page admin/phpinfo.php.

To fix it, you will need to set all folders permissions to 755 and all files to 644. The file ray/modules/global/app/ffmpeg.exe should be also set to 755.

Now you need to let Ray determine your new permissions properly. To do so, open the file ray/modules/global/inc/ and insert these lines of code:

$sResult = "";
$bDir = is_dir($sFilePath);
if(is_readable($sFilePath)) $sResult = $bDir ? "755" : "644";
if(is_writable($sFilePath)) $sResult = $bDir ? "777" : "666";
if(!$bDir && is_executable($sFilePath)) $sResult = "777";

before the line

return $sResult;

in the function checkPermissions($sFileName).

When accessing Orca, I get error "Warning: fopen(.../orca/conf/params.conf) [function.fopen]: failed to open stream"

This problem occurs only on those sites where PHP is running as an Apache module. On such sites, the files created by scripts (such as Dolphin or Orca), don't belong to the owner of the script's directory. That's why they sometimes become inaccessible after some actions on the site. This can be overriden by placing 666 permissions on such scripts:

1) FIX:

  • Create a script in Dolphin's home directory with the following contents:
    exec( "chmod 666 ./orca/conf/params.conf;\n
    find ./orca/layout/base_en -type f -exec chmod 666 {} \\;\n
    find ./orca/conf -type f -exec chmod 666 {} \\;\n
    find ./orca/layout/uni_en -type f -exec chmod 666 {} \\;\n
    find ./orca/classes/en -type f -exec chmod 666 {} \\;\n
    find ./orca/js/en -type f -exec chmod 666 {} \\;\n
    find ./groups/orca/layout/base_en -type f -exec chmod 666 {} \\;\n
    find ./groups/orca/layout/uni_en -type f -exec chmod 666 {} \\;\n
    find ./groups/orca/classes/en -type f -exec chmod 666 {} \\;\n
    find ./groups/orca/js/en -type f -exec chmod 666 {} \\;\n" );
    echo "Success";
  • Name the script with the .php extension, for example: orca_fix.php
  • Run the script in a browser, for example: http://dolphin_url/orca_fix.php

2) If you still get this error, try to do the following:

1) Delete the folders orca/classes/en, orca/js/en, orca/layout/base_en, orca/layout/uni_en and the file orca/conf/params.conf (the subfolder en corresponds to the English language, while your subfolder may be named fr or de depending on what language you installed).

2) Compile Orca languages.

3) Apply the above FIX.

When trying to compile Orca languages I get error "Language files compilation have been failed"

See the previous solution

Fork me on GitHub