Archive for April, 2007

Compile Check = false

Our current load average for v1.6 Beta 2 was at 0.2938 sec and we added a compile check function where it will not check if a template has been modified. This is positive since it droped the average load down to 0.2380 sec, so we are getting closer to our goal of getting under 0.2. The negative side to this function is that if a template is modified it will not re-cache the template. This would mean any changes made to the template will not be updated. Now since a developer/designer on average does not modify their template every day this option will be very useful. If need it be that we would have to modify a template there will be a setting in the admin panel to turn on the compile check so it will do a check if there is a new template to cache.

Konsort v1.6 Beta 2 Development Log

HTML Layout Functionality
Created a new routine in the App class to allow the feature to create multiple HTML layouts. In the past the system only supported 1 layout with different CSS themes.
Our goal with 1.6 is to have it where users can still select different themes for their website but with the extra added feature to select what sort of layout they would like.
Our idea now is to still have it where they select
a theme but each theme will be connected to a specific layout which in return can add a sense of flexibility to the system.

SQL Caching and Benchmarks
Rebuilding of the SQL queries has gone really well over the last few days. We will take section by section and first start with areas where we feel has a lot of traffic and excess queries.
Our first goal is to drop the total number of queries per page. With 1.6 Beta 2 we have added a new caching class that will class a few queries that do not need to be live on each page.
So far we ran tests on the main index page when a user is not logged in and we got the following results when comparing with older versions.

Below we display how many queries on average was used to execute the page:
V1.6 Beta 2     = 7
v1.6 Beta 1        = 29
v1.5.1        = 67

Below we display how long it took to execute all the queries:
V1.6 Beta 2     = 0.0038469
v1.6 Beta 1        = 0.0291002
v1.5.1        = 0.0378141

Thus far it has been a significant improvement and our next focus will be the “My Account” and user profile section.

Memory
Another part of the software we have been working on is lowering the memory limit. Both v1.6 Beta 1 and v1.5.1 had a 5.4 Mb average.
After lowering the queries and removing the usage of the Menu class which creates the main menu, v1.6 Beta 2 has an average of 3.23 Mb.
Target is to bring it under 3 and run around 2.3-2.5 tops.

Average Load
Over the next few weeks while we are fixing issues we come across we will also streamline each section to make sure we drop the overall load of each page.
Below we added the loading times of each version we have tested so far.

V1.6 Beta 2     = 0.2938
v1.6 Beta 1        = 0.7195
v1.5.1        = 0.5669

Our goal is to bring it down to 0.1. We now average around 0.3 seconds and in some cases it drops under 0.2.
To our surprise we found that the SMARTY template engine is taking a good chunk of the load. On average to load cached templates it takes 0.2245.
Which gives us a load time for the core software at 0.0693. Which is something we would like as the average time for the entire script including the template system.
We have a few options now and we are still looking into what is the most viable option.
Our first option and it is something we started to look into yesterday was to go with using Template Lite (formally known as Smarty Lite).
It took some major modifications in the code for it to work with Konsort at 90%. 10% is still not functional, but we will still look into this option.
Another option and I believe the best bet is to modify the template system to fit our needs. The last viable option is to use a template system we created not to long ago.
This however would take a lot longer since all the HTML files will have to be re modified.
Plus SMARTY is a very popular template system and the language they created is widely used so this is why we used it to begin with.

Our main focus for today will be to drop the SQL remodeling and focus on the issue with the template system and come up with a plan that will improve the load for each page to our and your satisfaction.

Removal of some Requirements
Slight modifications have been made to the SMARTY template system where it will now not store cached templates in multiple folders.
It will all be housed in 1 template cache folder. The reason for this change was mainly to remove the requirement for running Konsort in “safe_mode”.

Numerous testing was done to confirm that the requirement for “register_globals” and “open_basedir” will not needed anymore as well.
However we will still recommend to run Konsort with “safe_mode” turned OFF and “register_globals” turned OFF as well.
For a detailed guide on why, feel free to check: http://se2.php.net/manual/en/security.registerglobals.php

phpFoX Konsort Version 1.6 Beta 1 Released!

Version 1.6 Beta 1 has now been released.

Important Notice: Before you attempt to install or upgrade to v1.6 Beta 1, please note that this version is not supported nor is it stable to run on a large scale live environment.
Use this version only for testing or for future production purposes.

We also ask the community that if you have the time to test the beta version(s) please do so and report any issues you find to our issue tracker found here:
http://tracker.phpfox.com/index.php

What has changed?
- Point system can be fully turned off from the admin control panel.

- Mysql “Repair Table” added to admin control panel

- HTML issue(s) fixed where if adding HTML with long URL’s it would add a break which in return would destroy the functionality.

- Bad word filter fixed in various areas where it was left out in previous releases

- “New Blogs” added a HTML
which in return would cause issues with certain languages.

- Mailer routine updated to help solves various issues with the “Mass Email” routine.

- The invite service would try to call for a users image which was not needed so this function as removed.

- Full forum link added to all email links being sent out to a member.

- Error 404 page added.

- Fixed issues with the internal mail service where reports came in that certain users could not open their messages. These fixes however will not fix any old messages only
new messages being sent out.

- Fixed top users routine where the image was missing.

- Feature Added: Issue #97 - Privacy Setting: Gives bad impression

- Fixed: Issue #98 - first space in link text being removed - forums

- Fixed: Issue #96 - forum post - replacing text in HREF

- Fixed: Issue #77 - User image thumbnail issues

- Fixed: Issue #95 - No User Name Popup for Recent visitors

- Fixed: Issue #87 - New Crush Alerts Email Notifications check box

- Fixed: Issue #88 - Editing classifieds

- Fixed: Issue #90 - doubled friends

- Fixed: Issue #92 - Bad Word Filter

- Fixed: Issue #83 - CSRF Exploit

- Fixed: Issue #57 - Site Config: logo.gif does not show throughout

- Fixed: Issue #65 - Forum Announcement’s & Sticky’s missing

- Fixed: Issue #64 - Events - Featured Issue

- Added back the public and private events.

- Fixed: Issue #71 - User IP missing in admin panel (Browse)

- Fixed: Issue #75 - bad words filter in blog title not working

- Fixed: Issue #39 - Site Stats Inaccuracy

- Fixed: Issue #22 - Post Redirect Error

- Fixed: Issue #34 - Photo uploading doesn’t resize

- Option added where admins can change the URL of the admin panel. This can be changed in the file: /include/settings/common.sett.php
The current “test” default URL will be “adminpanel” which is what we had in v1.1. So the new admin panel will be located at: http://www.yoursite.com/adminpanel/

- Language package system added. Currently we have installed both English and German. Please note that the German language package that was added is only
for testing purposes and is not to be deemed as the official German language pack. We used Babel (http://babelfish.altavista.com/) to create the German language pack
and we used it mainly to differentiate from the English language pack.

- Site Content in the admin panel has the option to modify templates from any language package that is avaible.

- Option added in admin cp to turn on/off the option of members to change the language they are viewing the site in.

- Full option added to where you can turn off the “point system”.

- Mysql queries improved and dropped total query count by half compared to v1.5.x.

Where can I test a live demo?
Here: http://benchmark.phpfox.com/1_6_Beta/

Scripts Requirements:

- Web Server API : Apache, CGI, FastCGI and ISAPI
- Supported Operating System(s) : Solaris, Linux, BSD, Windows IIS and Mac
- PHP Version - Minimum : 4.3.3
- MySQL Version - Minimum : 4.1
- GD complied with your PHP Build : Yes
- SendMail : Yes
- PHP safe mode : OFF
- PHP register_globals : OFF
- PHP magic_qoutes_runtime : OFF
- PHP memory_limit : 42
- PHP open_basedir : OFF
- CURL extension : YES (Only if you plan to use the PayPal IPN system)

The requirements listed below is only if you would like to use the Music module:
- PHP file_uploads : 1
- PHP post_max_size : 40M
- PHP max_input_time : -1
- PHP upload_max_filesize : 38M

Where can I download it?

Go to: http://clients.phpfox.com/index.php?cmd=licenses/index

From the download list look for “phpFoX Konsort :: Version 1.6 Beta 1 (NOT SUPPORTED)”.

Does the phpfox team support this version?

No, sorry. Any Beta version is not supported so the only thing you can do is report bugs till the stable release is available.
Please report bugs here: http://tracker.phpfox.com/

When will stable version be released?

We will be running a new system with “Beta Testing” to assure that once the stable version is released it is fully stable in all aspects. We have hired in-house software testers which their main focus will be to debug the software. We will also have each of our full time staff members test the software. Plus we will work closely with the community to make sure each and every client is fully satisfied with the software and that it is fully stable in their eyes. With each beta release we will send out a newsletter to clients where each of you can vote on the stability of the package. Once we get a 100% vote from our in-house testers, full time staff and the community we will release the stable version. As for how long this can take there is no ETA at the moment. During this first week we will get an idea of how many issues we will face which in return will give us an ETA on when the package will be stable.