Oh no! Where's the JavaScript?
Your Web browser does not have JavaScript enabled or does not support JavaScript. Please enable JavaScript on your Web browser to properly view this Web site, or upgrade to a Web browser that does support JavaScript.
Sign In
Not a member yet? Click here to register.

PHP-Fusion 9.x Development Plan - WiP

by , Last updated on 22 days ago in General Discussion
DISCLAIMER : This is only a draft. Items may increase or decrease.

[System]
Develop an automatic version checker and a remote update / patch system for PHP-Fusion Versions.
· a Version checker can be sufficient as first release. Sort where to have the version info, Perhaps a top bar notification in Admin.

Boiler Engine
· Complete and implement The Boiler Engine for full framework flexibility. To Enable switching between Bootstrap, Semantic UI etc etc, system wide. ( Semi Done ).

Hooks System
· Complete and implement The Hooks System. ( Done ).

Develop an automatic version checker and remote patch system for AddonDB

Example url: https://www.php-fusion.co.uk/infusions/addondb/...id=ITEM_ID &version
Ths url return in JSON Item current version.
$curl_init = curl_init('https://www.php-fusion.co.uk/infusions/addondb/view.php?addon_id=ITEM_ID&version');
curl_setopt($curl_init, CURLOPT_RETURNTRANSFER, TRUE);
$latest_update = json_decode(curl_exec($curl_init));
$current_version = 1.0.0;

if ($current_version < $latest_update->version) {
// code for alert
}

Develop and implement a Core based Tag system
· Suggesting Toxi Method with a 3 table solution, it is supposed to be the fastest in most scenarios
· This need to be a global API similar to Comment´s , display_tags(tag_id,item_id,type, etc, etc), save_tags(), edit_tags() , update_tags() functions.

Develop and implement a Core based Action Log System
· save_user_action(user_id,where(Blog,News,Members - ETC),action(Delete, Add, Ban, Edit - ETC),date);
· A complete Administration tab for this system with filters and history

Document saver function with history options
· save_document(user_id,type,data);
· Automatically save your work in a history table with hierarchy (main_item_id > session_id > history) as you type on a timed interval if computer crashes or you make a mistake.
· Every time an edited document is saved we create a snapshot in the history table of the old document that can be restored to a previous content.

Develop and implement Integrated Help Systems
· Automated Tutorials and Guides integrated in the Administration

Increment Comment system to allow more interaction
· Vote up and vote down
· Replying to comments
· Direct capture of images ( Paste to field and it auto uploads )

Add Tesseract´s file browser system as a replacement of current file browser. ( DONE )

Find ways to allow more types of WYSIWYG editors to be used globally as plugins

home.php only account for News,Blog,Articles & Downloads while it excludes Forums,Gallery FaQ, Weblinks and Polls.
· Forum will display a nice latest threads panel once enabled so for that Module it is not needed.
· Gallery, Weblinks & FAQ should be treated as all the other sections.
· Create a Core API for Infusions that scans the installed Infusions folder for API content and populates a MVTed home.php with it.
· The MVTed home.php default box can be similar to News Boxes and have a nice top bar GFX for each section.
· The API controls number of items to list, char lenghts to use on an Infusion level while the Theme controls the layout via the MVT system.

includes/ip_handling_include.php are redirecting banned people to google per default
· Create a separate MVT - landing page for these similar to maintenance.php that let´s people know that they are banned, include even temp bans etc and how to appeal the ban

Make The Administration 100% Multilingual
· Remove all Database Locale inserts system wide and only use locale files for everything to achive the above.
Smoothest method might be to separate db_admin and Infusions admin. Make a new Admin for Core > db_core_admin. Leave Infusions and we prevent Infusions API re-write.

Time Date Settings
· Add customization options for Registration dates ( profile ), visit dates, Blog dates.

Database support
· Add $settings['mysql_port'] ( Done )
· Full Support for PostgreSQL Core Database Factory
· Full Support for MariaDB ( Done )
· Check the MYSQLi Driver Core Driver ( Done )


[Custom Pages]
Need to be more completed & more tested
· Calculate ID so options are available for new pages as well as editing.
· A more complete Administration interface where we can arrange scanned content in real time with customized sections and background images for each section as an extension of the Theme Engine.
· Add some default layout templates for users to load.


[Infusions]
· Add a comprehensive error handler report system that reports what went wrong and why during failed Infuse attempts.


[Panels]
· The live preview system our News have is needed here as well
· Definable panel width´s. Support both % and pixels


[Modularization]
· Search modules should be able to reside and be scanned in each installed Infusion/Panel folder
· Permalink modules should be able to reside and be scanned in each installed Infusion/Panel folder. ( Done )
· Print need a new API such as search where we put a module in each Infusion/Panel folder and scan it for a print plugin

includes/core_mlang_hub is used to set the correct site language for requested content with out redirections if linked to non default language contents
· We need an API for each installed Infusion/Panel folder that contains required configuration, perhaps like BBCodes but on Infusion level with interface options.


[Optimization]
$settings
· Today the settings are today defined in maincore.php, $settings have been prepared to not be global, amend and remove all the globals from maincore.php ( Done )
· Complete the fusion_get_locale function so we can call it in one line like, fusion_get_locale("", NEWS_LOCALE); ( Done )
· Specific Core Infusions and their respective db definitions should be separated from this file for each Infusion that acts as Infusion.


[Tools]
The Administration need to have a new Tools section containing a minimum of,
· Optimize database tool
· Malicious code scanner ( base64 injections in images as trojans etc etc )
· Clean error logs
· Clean user logs
· Scan for possible duplicate user accounts ( by IP )
· Remove unapproved members
· Recount site wide ordering
· Delete messages older than xx
· Delete forum posts older than xx
· Delete news older than xx
· Delete articles older than xx
· Fix Database character´s function found in upgrade commented out, good when switching hosts etc as well.
· Site Map XML Generator
· Add some spam poison scripts to enable on home
· .htaccess editor, with some appliable examples, force www or http, force https , rewrite rule examples etc.
· Stats, overall site stats that can be fun to read
· and ?


[Users]
implement a better overview and more advanced tools that includes some of the functionality user_control Addon brings for the members administration area
· implement Tesseract´s overview for Admins
· implement Tesseract´s overview for Users
· implement Tesseract´s searchbar for all

See Account Center here for a memory update : https://www.php-fusion.co.uk/infusions/news/news.php?readmore=587

Registration
· Auto check name availability upon registration with suggestions if taken

Continue the work for User Groups that was started in Tesseract
· Make groups work with logo´s their own spaces and people can ask to sign up for them, See User Groups here for a memory update : https://www.php-fusion.co.uk/infusions/news/news.php?readmore=587

Automatic password generator
· We have all seen em, simply have one with a copy to clipboard function
· For registration and edit profiles for pw change and admin edit
· Copy function to this generator

Change Name Feature for users
· Auto check availability and allow a name change if available

Safe / Unsafe password gauge meters
· Measure all password strengths and not only in registration

Support more advanced user names
· There are no more non UTF-8 limitations for chars, we should allow many special chars

Support for more advanced passwords
· Less more limitations for chars used for passwords

Make a member options overlay function that contains some basic shortcuts to member options for Admins
· Edit
· Ban + options
· General member info

Optimize ban tools
· IP + email + user name ban combines in one button for example

Finalize the user´s blacklist features
· Each user should have the option to manage their blacklist
· Each user that is blacklisted from another user should be totally invisible in all areas and vice versa, a function not totally unlike the multilingual query is needed to add in areas if importance
· Comments
· Forums
· Users online
· Last seen
· Private Messages
· etc

Name reservations and name blocking
· Allowing full names and wildcards pretty much as we do with domains.
· All names starting with PHP_ should be able to be reserved ( Naturally, a Super Admin should be able to add em manually )

Members (members.php)
· MVT it
· Add some more info´s like display the Avatar, User Web etc..

Option to list unverified accounts
· There is no way to see people who yet have verified their email, we need this option and info.

Reduce amount of user statuses
· Security Banned Merge with Banned only
· Canceled Merge with Deactivated

Add a setting option to force users to change their password after xx days under user settings.

[Security]
Implement 2FA Option
· Google Authenticator ( Done )

Build an optional extra advanced layer of security for registration ( Done - Fusion Gateway )


[Comments]
We never had a specific Admin section for this.
· Time to build one under Content Admin
· Browse comments filter based on type ( n,b, etc )
· Option to remove comments or simply delete comments+user, same as forum user deletion.
· Include all comment related settings to this section and remove from settings.
· Some comment stats


[Control]
Approval system for member comments
· Many Admins have the need to preview comments posted to their sites before approving them
· Connect to the new above Comment Admin interface with the comment and an option to remove / publish
· Global setting for all comments with approval On or Off


[Private Messages]
Private messages should be encrypted.
· Message Signature
· Setting to display read or not read by receiver with date and time.
· Setting to allow / disallow the display read or not per user.
· It is not good that we bounce messages on full inboxes. Perhaps a auto sanitation system. oldest message gets deleted from the inbox when a new one arrives if the limits are breeched.


[Contact]
· MVT it
· Add a Admin interface with additional options, perhaps location, address, options for multiple emails ( departments etc ).


[Blog]
Category Image handling should be done within the Infusion
· Enable Image Upload when adding / editing Categories


[News]
Category Image handling should be done within the Infusion
· Enable Image Upload when adding / editing Categories
· Multiple Category support


[Theme Administration]
Make it more complete
· Advanced Background options [ http://www.colorzilla.com/gradient-editor ]
· Definable Panels width overrides
· More style overrides like Panels, sub header etc.


[Forum]
User fields integration
· Add the user fields to show in Forum option into the forum administration.

Ability to move individual forum posts and make a new thread of it in a new forum of choice.
· Poster of the Post will be set as author of the new thread.
· Moderator selects subject.
· Moderator selects which new forum it belong in. ( Default to current )

Provide with a choice to have HTML or BBcode switch in forum settings.
· HTML that does not allow javascripts. We must sanitize against hidden forum post <script> tags that can send user cookie data to 3rd party site or js console / alerts, XSS etc..
· a simple str_replace('<script>', '') & str_replace('javascript:', '') can sanitize it all to be safe.

Quick Ban, Edit
· A simple way to quick ban a user from the forum (iMOD and Administrators).
· A simple way to edit user from the forum.


[Gallery]
We need to use album_x directories in this Gallery.
· Suggested change ( think it is how it was? ) but nevertheless, we need it. It becomes very messy to fast with out it.
· photos/ > albums/
· then in albums >
· thumbs in a thumbs dir
· album_{ID}>thumbs/
· and photo files in root
· album_{ID}>ROOT


[SEO]
Enable Aliases and a nice Interface for this
· Today we match per ID in the SEO Engine, if we attach this to aliases the output can be 100% user controlled without IDs, for example display dates instead etc.


[Images]
Add a global image setting interface for allowed file types and sizes that will take over when nothing else is available.
Need help?, Having trouble?
• View our Documentation for Guides, Standards and Functions
• Name and Organize your content correctly in the corresponding Forums for best support results
• Attaching Log Files and Screenshots when reporting issues will help
• Please read and comply with the Code of Conduct

(¯`·._.·(¯`°·._.·°º*[ Project Manager ]*º°·._.·°´¯)·._.·´¯)
You can view all discussion threads in this forum.
You can start a new discussion thread in this forum.
You cannot reply in this discussion thread.
You cannot start on a poll in this forum.
You cannot upload attachments in this forum.
You can download attachments in this forum.
Users who participated in discussion: Falk