phpFox2 Alpha 2 Released
Its that time again. phpFox is rolling out with a new Alpha version for the community to test and return back with feedback on how we can improve the product.
With our first Alpha release we included the core engine and some of the first modules developed when working on the initial engine. With Alpha2 we will include those same modules with some minor improvements plus 10 new modules to test. The new modules included are the Bulletin, Contact, Forum, Invite, Notification, Photo, Poll, Search, Share and Shoutbox modules.
Note that this is an Alpha release and it is not a completed product nor is it close to being a stable product. Any of the modules we include and the features each module hold are not the final features for that module. We are releasing the core of each module to publicly test how these new modules behave under different environments and around a much larger user base as opposed to a closed in house testing environment, which always has a limit of diverse user interaction. Our goal with releasing such a version at such an early stage is to take in useful feedback from the community, which helps us build a much more user-friendly and stable product in the longer run. By taking into consideration many of the things we learned from releasing Alpha1 this has delayed the ETA for our stable release, however this information has helped us better design the new modules; which we feel is in the end saving us a lot more time when comparing to releasing a final product with no feedback from the community from the very start. Each of your feedbacks whether positive or negative has been really helpful and we hope for the same outcome with this Alpha release.
Some key additions/changes with Alpha2 include a new registration routine. By default the registration routine will work as a Step-by-StepӔ process, allowing you to add steps to the process. The registration form can now also be found on the sites index page and only includes 4 required fields from first glance, which are: Full name, user name, email and password. Once the user continues they will later be asked to add their date of birth, gender and location. Currently the product supports adding the steps to upload a profile image and invite friends to the site. The AdminCP controls the capability to add more steps as well as the order they come up in. If you do not want a step-by-step sign up form there will be an option to use the default sign up form.
You may notice on the sites index page two new blocks. One being the Whats NewӔ block. This will display anything new for each of the modules included. Since this uses our callback service to contact each of the modules, any module that supports the whatsNew()Ӕ method will be able to output data to this block. We plan on adding a setting in the AdminCP that will allow Admins control over, which modules should show up in this block and the ordering of them as well. Since this is a CMS block it can be moved anywhere on the site, by default it only shows up on the sites index page when a user is not logged in; however this can also be added to the same page when a user is logged in direct from the AdminCP.
The other new block is the Find FriendsӔ, which gives guest the opportunity to try to find their friends that may already be a member of the site. It also lists four random members under the form in case their friend luckily shows up. The search routine used is what we use for our browse section and something that was built for Alpha2. You can now set a browse criteria when searching for members on the site and currently includes searching for a user by their full name, full name and/or email, email, gender, age range, location. This currently is still covering the basic functionality of a user search, however at a later stage we will include the custom search filters (About Me, Hobbies, Music etc...).
Login with Email (Default)
In relation to other social networking sites this change is not really so drastic, however for our community this is a big change since the very first release of phpFox we have always used our user name to log into a phpFox site. With v2 we now offer 3 methods for Admins to choose from. You can setup your site to allow your users the ability to only login with their user name or only with their email or with either their email or user name. By default we have now set this to login only with a persons email. You can change this once your use v2 if you still want to use the user name login method.
User Status
Once you login and visit the sites index page you will notice a few more things added with Alpha2. First if you check up top in the left hand corner of the site we have the StatusӔ block. This works similar to how Facebook has the Whats on your mind?Ӕ feature. Once you update your status it will show up on your profile under your name and will also be added to your news feed.
Welcome Block
Under the main menu we added a welcome block, which has the persons first name, profile URL (Used to guide users what their personal URL is on the site and in the future we will include the feature to change their personal URL if the feature to do so is enabled by the Admins), current time stamp (Used to guide users what time zone the site is in and links to their account settings so they can change the time zone). In the future we will be adding a link to where users can change the theme they are currently browsing the site in.
Shoutbox
Next, on the sites index page when logged in you will find a ShoutboxӔ. Works very similar to the shoutbox included with v1.6.x, however with the update of the Emoticon module it now supports common emoticon shortcuts. Note that emoticon shortcuts can be changed at a later time from the AdminCP as well as the ability to add/remove emoticons. By default the shoutbox does not auto refresh so to receive new messages the entire page has to be refreshed. The shoutbox does have support for an AJAX auto refresh but will have to be enabled from the AdminCP.
Friends Module
This page also includes a My FriendsӔ block, which lists your friends and displays your top friends first. This block was included with Alpha1, however the search bar now connects to the browse section so users can easily search for other friends that may already be part of the site and from there they can request to be friends with them.
Bulletin Module
We have included the Bulletin module with this release, which lists all the latest bulletins on the sites index page. There are several ways this module can behave and depending on your server you can setup this module accordingly. By default we display all bulletins submitted to everyone, however there is support to display bulletins only from a users friends list. There is also the ability to control if bulletins on the sites index page should be cached for X minutes, which can drastically improve your server load. Bulletins include the ability to add attachments and control if public comments can be added. Note that the feature to allow public comments can be disabled entirely, however if enabled the end user can decide if comments are allowed on their bulletin or if they need to moderate them first or disable comments altogether. Depending on whether comments are allowed or not this gives other users that view bulletins the ability to reply to a bulletin privately (sends the bulletin owner a pm) or add a public comment.
Feeds (News/Friends Feed)
On the sites index page we also have the UpdatesӔ block, which can be a news feed or friends feed depending on how the site is configured. Admins can also control how long to keep something in the feed before its old news. This block isn't new, however more feeds were added; which include...
- when adding a new forum thread.
- when uploading images to your photo album.
- when uploading photos that are not part of a photo album.
- when adding a comment on any item that uses the Comment module.
- when adding a new blog.
- when befriending another member.
- when adding a new poll.
- when adding a new bulletin.
- when updating your sites status.
- when updating your profile photo.
- when joining the site.
More functionality will be introduced to the feed module, which include the ability to control what sort of information you would like to see in your news feed and from which members preferably. All the small icons used with each feed entry uses the blog news feed icon. Each feed will have a unique icon which relates to what sort of information we are trying to pass with the feed.
Adjusted Main Menu
We have adjusted the main menu a little. We now have two menus that are part of the main menu, one to the far left and the other to the far right. The links on the left menu include the common modules to interact with other users. Part of the left menu we have the ExploreӔ menu and this includes all the modules members can use to submit items such as blogs, polls, photos etc.. The menu to the right has a shortcut to their personal settings, which include account, privacy and profile photo settings. It also includes the logout button and link to the AdminCP. The ordering and the position of each link can be moved around and changed from the AdminCP.
Mail Module
We have updated the Mail module with the ability to attach items to each private message. When trying to find a user you want to send a message to when composing a new message with the first Alpha release you had to find a user by typing their name and a drop down menu would appear and display the best match based on what you typed, however with Alpha2 when you click on the input area or the ToӔ link you will receive an AJAX pop up, which lists all of your friends and includes the ability to search for your friends based on a keyword (name or email) or first letter of their name or finding friends that are currently online, in your top friends list or in one of your custom friends lists.
Invite Module
Our recently developed Invite module can be found on the sites main menu InviteӔ. This module will give the ability for your members to invite their friends with the two methods we provide. The first is sending all their friends an email manually and once sent it will send each friend a personal invitation to join the site. The second method is an unique invitation link based on the persons user ID#. If a user comes to the site by means of either method both users will automatically be friends and will each get points depending if points are enabled for being invited. The invitee will have the inviter's unique ID# so in the future we can follow who invited who. We also provide a page that lists all a persons pending invites, which they can currently delete a pending invitation. In the future we plan on adding an optional resendӔ button. It currently lists if the invited user has clicked on their link and visited the site but did not sign up. phpFox2 will have an add-on product, which will plug-in to this module and will have support to invite friends by simply logging into the popular email services such as Hotmail, Yahoo, Gmail etc... I am unable to divulge much information regarding this product at the moment, however I can confirm that this will be introduced at a later time once the script is stabilized . It unfortunately cannot be included in the default product for several reasons, however one being that it relies on other products/sites so it is not possible from the companies standpoint to include it with our core package; unless it is an add-on.
Contact Module
If you look at the bottom of the site we have the Contact UsӔ link and this leads to where users can get in contact with site Admins. This works very similar to how it does with v1.6.x with the exception that we added support for categories. In the future we plan on adding sub-categories and the ability to send a specific set of Admins the message based on the category they belong to. Internal ticket support is something we plan on developing as well as we are going to be replacing our current ticketing system with our own.
Notification Module
One of the 10 modules added is the Notification module. This module is still in its infant stage and is only used to notify us when something new has happened. One example and is what this module currently supports is when we get a new private message it notifies us that we have a new message. Or if we have more then one message it will notify us how many we have. The method of notifying us is basic at the moment and is done by visiting the sites index page. To your right if you have a notification you will find the NotificationsӔ block, much like how we have the RequestsӔ block. This module, similar to the Request module relies on other modules and does a mass callback request on all the available modules. This allows current and future modules the ability to interact with users and notify them when something new has happened to them in relation to a module. For our Mail module we use this module to let users know if they have any new message and if enabled from the AdminCP can check if a user has any new messages anywhere on the site by adding the message count beside the MailӔ link on the main menu. The idea behind this module is to if enabled from the AdminCP add an AJAX pop up located at the bottom right of the site when a user gets a new message, friends request, group invite etc...
Share Module
Each item added to the site we want to add the ability to share it with other sites. To do this we have the Share module. To see this module in action view a blog and to the bottom left of that entry you will find a ShareӔ link. Once you click on that you will find a list of social bookmarking sites you can submit the entry to. These sites can be changed in the near future. You can also add more social bookmarking sites. We also provide the option to post the entry and we provide a Facebook example for this. The ability to share this by sending out emails will also be added in the near future.
Search Module
Each section usually comes with a search tool, which is similar to how it works with v1.6.x. What we want to introduce with v2 and what we have included with Alpha2 is the ability to search for something in a more global scale. To accomplish this we developed the Search module. To test this, on any page you will find a search bar to the far top right hand side of the site. Once you run a search it will try to find items for all the available modules that support the global search. To start things off we included support for blogs, photos and members. It will find the 10 best matches for your search and from there you can continue to extend your search into the specific module if needed. The search routine is still at a very early stage so this module may undergo a makeover depending on the feedback from the community with how search results turn up.
Poll Module
Our Poll module has introduced a lot of new features when compared to what we currently offer with v1.6.x. Admins can now control how many answers a poll must and can have. This allows end users the ability to add or remove answers for their polls. Users have the choice to randomize their polls and leave them in a specific order, which we provide an easy to use drag-and-drop tool. Uploading of images for a poll is supported as well as the ability to add comments on each poll. Users can control if comments should first be approved or to disable all comments in general. Each poll can have specific privacy settings, which include setting a poll to be displayed publicly in the main poll section or just on their profile or just for their friends or just for a preferred list of users; which they can select from a list of their friends. Each poll can have its own unique design and with Alpha2 there is support to design the result bars with an easy to use color picker.
Photos Module
With v1.6.x we have the Gallery module and with v2 we are changing this to the Photo module. Alpha2 introduces this new module for v2. When uploading an image you can now upload more then one image at a time and Admins can control how many images a user can upload per round. Each set of images can either belong to your own personal photo album or part of your general photo gallery. Each image whether it is part of a photo album or not can be part of several public photo categories. Public photo categories are used when images are being viewed in the main public section so images are organized based on what the image displays, while the private photo albums are used to organize photos for users based on what the image holds in relation to other image they may have. Each image can have a title and mini description. The title of the image are used to give the image a unique URL. For example if the name of my image is This is a testӔ then the unique URL to view my image could be: http://www.site.com/natio/photo/view/this-is-a-tes...
If this image was part of my sample album called My AlbumӔ the URL would be:
http://www.site.com/natio/photo/my-album/this-is-a...
If I were to use the same name on another photo the 2nd photo with the same name would be:
http://www.site.com/natio/photo/my-album/this-is-a...
Dealing with mature images with an early release of v1.5.x we introduced the Over 18Ӕ system, however it was later removed. With Alpha2 we introduce a new system and it is based on the maturity level of each specific image. An image can have a strict, warning or no maturity setting. If set to strict only users above X years old can view an image. X is based on a setting which can be set from the AdminCP, by default it is 18. If set to a warning message then anyone that is about to view the image will receive a warning message before they view it. Setting an image to not have a maturity setting will allow anyone the ability to view the image without a warning.
Similar to other modules that allow comments you can set each image with a specific set of rule on how to deal with comments. By default all modules include the Allow Comments, No Comments or Moderate CommentsӔ rules, however this module includes the Encourage advanced critique and Discourage criticismӔ rules; unfortunately the system isn't built to work with those two extra rules. The idea behind those two extra rules is to inform members that they should take into consideration what they are about to say before they add the comment. This feature will have an option to be disabled entirely.
Alpha2 also introduces the ability to upload your images to your personal gallery without the need for it to be included into the public rating system, which some users may not like. Each image can be set to either allow public rating or not. If allowed to be rated publicly it will be used in the public rating section and photo battle section, which are both part of the photo module. Once you submit your images you have a few choices, which is to upload more images, view your recently upload images or process your photos. The process stage is where you can set specific rules for your photo. If you do not want to individually set rules for each of your photos during the process stage you can do this at a later time or simply use the GlobalӔ settings, which saves everything you have set in that form for all the recently uploaded images. If a set of images are part of a photo album there are a few more rules you can use to connect to all of the images that are part of that photo album. Each photo album can have a name and description. It can also have privacy settings, which is similar to how all other modules are being developed to work. You can set it to be a public, personal (profile only), friends only, or preferred list (only friends you select) photo album and any photo that belongs to that album will inherit these privacy settings. Each album can be password protected and works similar to how it does with blogs that are password protected. If an album is password protected all the photos part of that album is password protected as well.
You can view public photos by using the Photo section found in the Explore menu. Photos can be filtered based on a keyword and can be ordered by time, most viewed, most talked about, top rated or top votes in ascending or descending order. You can also choose how many images you want to display per page, which by default is from 9 to 100 photos. Based on the user group viewing the page there can be a limit of how many images can be listed. You can also extend this setting from the AdminCP. When browsing image it is all AJAX based, however for search bots and browsers that do not support JavaScript can still browse the section using the conventional method. You can view images based on the category they belong to. Photos can belong to more then just one photo category and can even belong to all the available categories. Categories can have as many child categories as needed. The main photo section also includes a random featured image, which Admins can select as many featured images they want.
When you are viewing an image and if it is part of a photo album it will display a photo stream of the images that are part of that album. Each image also displays details related to the image such as the date it was uploaded, file size, resolution, views, downloads and URL to the image. Each image if enabled can have public comments from other members. Alpha2 also introduces unique meta keyword and description support, which is based on the category, title, description and date of the specific image. You can share images using the Share module. Support to download images is also included. To the far right you have the sub-menu when viewing an image and for the first link you should find the View All SizesӔ link. This links to a page which displays all the available sizes for a specific image from where members can find larger or smaller prints of an image and if they want download them.
Similar with v1.6.x the Photo module has support to rate or battle photos. Rating images is done by viewing random images and giving them a rating from 1-10 or skipping the image. Unlike v1.6.x you can only rate the image once unless a setting is enabled to allow the re-rating of images. The photo battle section works very similar to v1.6.x, however instead of displaying the same image once they have won a photo battle it displays a new photo battle each time. Both sections unlike v1.6 use AJAX to cast votes and caches 10 images per round to speed up the entire process for your members. The caching of images can be controlled from the AdminCP.
Forum Module
With Alpha2 we have included the basic functionality any forum today should have. There is a heap of other features we will include, however before we get ahead of ourselves we want to test the base functionality that will power such a vast module. Our first goal was to add forum categories. You can now have forum categories and each category or forum can have as many child forums as you want. When adding a new thread as an Admin by default it can be a normal thread, sticky thread or an announcement. The difference between announcements and stickies is that a sticky thread will only show up on the top of the thread list on the first page, while an announcement will show up on the top of the thread list on all the pages for that forum. Announcements can also be part of as many forums as you want and not just the one. Threads can be closed and once its closed nobody can add a reply to a thread. You can attach items to a thread using the Attachment module and include a set of Tags that relate to the thread. Similar to our photo module we have meta keyword and description support and tags are used when creating these unique meta data.
When you reply to a thread you can use the Quick ReplyӔ form found at the bottom of each thread or click on the ReplyӔ link to use the advanced post form. Replies can also include attachments. You can quote and multi-quote threads.
Each forum can have one or more moderators. Admins with the proper privileges or moderators with the same privileges for a specific forum can edit, move, copy, delete, stick, close or merge a thread(s). You can also share threads using the Share module.
Alpha2 also includes a search engine for the Forum module which allows you to search a forum or forums based on a set of keywords or users.
Each forum URL is unique and does not use ID numbers. Here is an example URL of a forum thread: http://www.site.com/forum/forum-name-1/thread-titl...
The forum-name-1Ӕ represents the forum the thread belongs to and the thread-titleӔ represents the unique thread ID, which we create based on the threads title. If there is a thread with the same title we add a incremented numerical value at the end of the URL string.
Blog Module
The blog module isn't new with Alpha2, however we added some minor features to this module Currently we added support to control comments on a blog entry. Users can select if they want to allow comments on their blog entry or if they want to moderate them first before they are displayed publicly. Similar to some of the other modules we have also added meta tag support. We pick up data based on the title of the blog entry, the tags that maybe part of the entry and the categories it belongs to.
Square Images
With earlier versions of phpFox we used square images for users profile images, we then went to keeping the ratio of profile images based on the original image. With Alpha2 we introduce both. In some areas it is fine to use images that keep the original ratio of an image, however in others its best to display a resized evenly squared image. One example is the friends block found on a users profile. Since its situated in the right hand panel this is a perfect place to display images that are perfectly squared so it looks clean and organized and not utilize a lot extra space since the block space is smaller then the main content area.
Privacy Settings
Alpha2 introduces Profile and Notification privacy setting. Profile privacy settings control who can view what on a persons profile. We have included some of the basic data that is being displayed on a users profile into the privacy settings. Each privacy setting can allow everyone the ability to view the specific data the setting covers or just the network or just their friends or no one but themselves. Note that there is an Admin setting that will allow a super user the rights to view anything that is private since they are considered Admins of the site. We plan on adding a Preferred list of users setting, which will allow you to set a privacy setting based on the specific set of users you want to allow to view the data the setting covers. As for notification privacy, this handles the privacy of a user when in relation to emails they receive from the site. If they disable a notification setting they will not receive any emails covered by the setting. Based on the user group Admins can disable privacy settings entirely.
Enabling Debug Mode
You can now enable debug mode direct from your AdminCP without the need to open up an FTP client and find the right file to enable it. Debug mode now comes in 4 flavors and that is Level 0, 1, 2, 3.
Level 0 disables debug mode. Level 1 Enables PHP error reporting, page generation times and query count. Level 2 includes Level 1, server usage, session and cookie information. Level 3 includes Level 1, Level 2 and SQL queries.
Known Issues
Listing all the known issues might be a little hard since this is an Alpha release and there is obviously many known issues, however we would like to mention the obvious ones that may cause certain features to be unusable. The major flaws we have run into thus far is dealing with Internet Explorer 6. It is an outdated browser with its share on the market getting lower each month, however even with IE7 and IE8 out we don't plan on leaving IE6 behind and we plan on fixing all the odd quirks we are running into by stable. There are 3 major problems so far...
The first and most obvious is the site and all the tiny icons look different on IE6. That is because we are using transparent PNG images and IE6 does not have support for this. The painful fix is to use a JavaScript fix, however this slows down the browser even more since we need to replace all the png images with a transparent GIF image on each page. The more obvious but time consuming fix is to change all the images we have to transparent GIF's. This in the end might be the best fix since it will not cause any sort of a slow down on IE6. Another known issue is the menu in the AdminCP overlaps. The final and most annoying issue is the main sub menus always ends under a select field.
Specs
We have covered so far some of the new changes Alpha2 is introducing. Each of the modules included have a heap of settings and user group settings that can change the way the module will function based on the user group. To look over all the new settings you can find them here. We listed all the new settings that were added since the last release and pointed out all the new modules included with this version.
Live Demo
View this alpha demo in action here.
Download
phpFox2 Alpha2 can be downloaded direct from the clients area. When you have selected a license and reached the download page look for phpFox2 Alpha 2? to download the product.
Developers Documentation
Our developers documentation can be found here.
Feedback and Bugs
Your feedback is appreciated, please feel free to leave them here. We also provide a bug tracker here so we can get ahead start in squashing bugs.
Next Release
Stay tuned for the next Alpha release (Apr 8, 2009), which will introduce more modules to test and updates on the current modules released.
Good luck and Enjoy Alpha2!


