For code, I only edited:
/inc/profiles.inc.php
/inc/classes/BxDolTemplate.php
In profiles.inc.php, I just changed one line in the getProfileLink() function from:
return (getParam('enable_modrewrite') == 'on') ? BX_DOL_URL_ROOT . getNickName($iID) . ( $sLinkAdd ? "?{$sLinkAdd}" : '' ) : BX_DOL_URL_ROOT . 'profile.php?ID='.$iID . ( $sLinkAdd ? "&{$sLinkAdd}" : '' );
To:
return (getParam('enable_modrewrite') == 'on') ? BX_DOL_URL_ROOT . str_replace("%2520", "+", urlencode(urlencode(utf8_encode(getNickName($iID))))) . ( $sLinkAdd ? "?{$sLinkAdd}" : '' ) : BX_DOL_URL_ROOT . 'profile.php?ID='.$iID . ( $sLinkAdd ? "&{$sLinkAdd}" : '' );
In BxDolTemplate.php, I changed this line:
$sRet = getMainLogo();
to:
$sRet= '';
In the database, I changed:
1. Email to be a non-unique index. I don't recall what if it was set to "unique" before but I feel that it's OK for members to sign up more than 1 account with the same email.
2. Password field from varchar(40) to varchar(64).
From Admin section, I allowed Email field to allow duplicates and changed the regex for NickName to support space & few other characters.
That's it... I don't notice a problem from Admin when logged in, not from guest browsing fro a different web browser. But when a new account is being created, the page in that browser goes white/blank. No recovery. Admin keeps working. If I try to delete that new account from within Admin, I get a similar white/blank page. But if I back out then Admin is still fine & I can delete the profile from phpMyAdmin. Problem is, once I log out of Admin, I get the white/blank page.
The way I've been able to restore (for a short time at least) is to replace the original PHP files, delete all the files from cache & cache_public, and upload from a backup of what was in cache & cache_public. Not a good way to recover, since I don't know what the error is - there is no way to turn on debugging. Not sure if it's an issue with PHP or something else, but for 1 week everything was working without any problem even with lots of template, CSS, graphics changes. As soon as I modify something simple like a database field (for more space), a regex in Admin, or a simple line of code... pretty soon the white page problem happens.
It would be very helpful for me to know the following:
- I keep reading "clear the cache" in different discussions but deleting the contents of the cache folder manually seems to be creating a problem. Clearing from within Admin deletes some but not all those files. It's unclear when changing code what else may need to be done to avoid problems, so what is the actual procedure for this when developing?
- What sort of PHP.INI can I place in certain folders to check for errors? I'm not seeing any errors in my web logs.
- I can understand something going wrong if I edit code which causes an error, but if I put everything back exactly how it was before & clear the all the cache settings from Admin, I don't understand why the problem would remain. What is the procedure for "refreshing" the system after changing code, to make sure the problem is not due to something cached which is in conflict?
- Another issue I noticed, I'm not sure if it's related, is that the new accounts being created (only by me, I'm still testing) are not having the passwords salted & encrypted - the database ends up with nothing in the Salt field and the password is not encrypted. What would cause the encryption step to be skipped?