Jump to content

What's new in IP.Board 3.2.0 and related Apps (so far)


Recommended Posts

  • Management

In our spirit of keeping everyone up to date, this topic will serve as a running list of what's new in IP.Board 3.2.0. As we make changes we will update this topic so check back now and then. This is not yet a complete list as we are still making changes, adding new features, and doing other work. If you don't see what you're looking for here just yet please check back later!

As always with IPS, everything listed here is not part of a "possible" roadmap. We will only post items on this list when they are 100% complete and included in IP.Board 3.2.0 so you can trust that what we post in public is what you will get.

Calendar Improvements

  • SEO Improvements:
  • Consistency:
  • RSVP:
  • Simplification and interface changes:
  • iCalendar support:

Moderator Functions
  • Report Center improvements:
  • Editing Member improvements:
  • Moderator Control Panel:

New Text Editor
  • New editor and auto-save:
  • Cleaner interface, quick reply, quick quoting:
  • New post alert while typing reply:

  • New style:
  • New "like" reputation mode:
  • Easy member management:
  • Improved restrictions:
  • Forum Management:
  • Remote skin editing:

Core Functionality
  • View new content and topic marking improvements: and part 2:
  • New Photo Editor:
  • Shared media:
  • Tagging and prefixes:
  • Notification enhancements: and
  • New mobile skin:

Miscellaneous Changes
  • "Delete All" button has been added to the SQL error logs page
  • Linear+ and Outline modes removed for topic viewing (they're a hold-over from an older time on the web and it's time to retire them)
  • Support for IPv6
  • You can now use the member management tools to search for incomplete members
  • Pagination added to the incomplete members page of the ACP
  • If only one skin or language is choosable, the dropdown selector at the bottom of the page will be hidden
  • Member photos and member avatars are being merged into one function: member photo. There was too much overlap between the two features.
  • IP.Calendar and IP.Chat will no longer be bundled in the IP.Board download zip to reduce the size of the download. This also allows clients who have no interest in IP.Chat or IP.Calendar to choose not to download or install those applications. Of course those who do wish to use those applications can easily download from the client area and install them.
  • Rebuild FURL cache button has been moved to the cache management page.
  • It is now possible to rename the “hooks” folder to something else editing the constant IPS_HOOKS_PATH in initdata.php.
  • You can now edit each group’s report center permissions directly from the group management area
  • Report center now supports item marking to remember and indicate which reports you’ve viewed
  • Customers who have purchased Copyright Removal no longer need to enter a separate Copyright Removal key. The copyright will automatically be removed when activating your license.
  • New settings for attachments to limit size of files stored on disk
  • Separate ACP restriction options have been added for managing spam users and incomplete users (access to these areas were previously controlled by the option “can manage banned users”).
  • “Show X Last visitors in profile” now shows always the last 5 visitors if the setting is enabled rather than having a 3, 5, 10 dropdown choice.
  • New ACP tool to create the cronjobs to rebuild sphinx indexes
  • When adding a ban filter in the ACP you will now have an option to enter a reason visible to all admins (the reason won’t show in the public side).
  • Pinned, polls, and moved topic prefixes have been moved to language files (they were previously in the settings area)
  • Many redundant or pointless settings removed. Other settings moved to more logical locations. Some settings groups merged to create fewer groups to go through when setting up your community. System Settings menu item moved to a top-level menu item under System tab so it's available with one-click anywhere in AdminCP.
  • The note box in your My Settings (UserCP) area has been removed. It is a hold-over from years past and doesn't seem to make sense in community software. If you are one of the very few people who use this: make a copy of your notes before upgrade.
  • The unread topic marking system will now remember what page of a topic you left off reading rather than assume you read the entire topic on the first click.

Other Important Changes
  • IP.Subscriptions, our simple application to allow you to sell member group promotions on your community, will be updated to work with IP.Board 3.2 but this will be the last update to IP.Subscriptions. IP.Subscriptions has been around for many years - long before communities were assumed to bring in revenue - and it's time to retire it to focus on our more modern application: IP.Nexus. With the release of IP.Board 3.2, IP.Subscriptions will be considered end of life (EOL) and will no longer be supported. Clients should switch to the new IP.Nexus product which is continually updated and contains many more opportunities to monetize your community. A member of our community, Andy Rixon, has agreed to take on continuing development of this product so those of you who use it will still have a solution.
  • The Portal application in IP.Board has existed from the very early days of our company. It was only ever intended as a simple portal and demo of the software but grew a bit over time. It has had minimal updates and the feature set is very minimal when compared to today's expectations of community owners and operators. The Portal application will not ship with IP.Board 3.2 and should be considered EOL. It will be available in the IPS Marketplace after IP.Board 3.2's release for those of you who do use it so you can still upgrade to 3.2. We will also post information on how to easily replicate the Portal's functionality in IP.Content which offers all that the old Portal did and much, much more. A member of our community, Andy Rixon, has agreed to take on continuing development of this product so those of you who use it will still have a solution.
  • As IP.Board 3.2 will have a whole new default skin, the CleanCut skin will become redundant and will therefore no longer be updated by IPS.
Link to comment
Share on other sites

  • 1 month later...
  • Management

Performance Improvements

  • Reduced several cache-load queries on the ACP index page
  • Combined two permissions queries loaded on every ACP page into one
  • Added some additional cache-loading calls to other ACP pages (manage applications, manage hooks, manage members)
  • Added some caching for fetching the max version ID in the upgrade_history table, which reduces the number of queries on the ACP manage applications page by the number of applications installed
  • Changed how modules are grabbed when IN_DEV is enabled for menu building (runs one query instead of one query per application)
  • class_forums was getting loaded and initialized twice in the Manage Forums page - fixed so it's not reloaded a second time. Also removed a shortcut for the class in the manage forums file to reduce small amount of overhead/memory.
  • Removed a query for group data on Manage Forums page (group_cache is already loaded, so used that instead)
  • Removed several deprecated functions, reducing the size of some classes and reducing their resulting overhead
  • Edited language export routine (for IN_DEV mode) so that it only exports the data we absolutely need. This reduces the size of our language XML files significantly, and also reduces memory overhead needed to process the language XML files.
  • Index added on ibf_posts.post_parent to speed up certain update queries that previously required a full table scan
  • A lot of unused code in the friend management files has been removed
  • Avatar or profile photo cleanup tools in ACP were unnecessarily loading and instantiating upload class
  • Removed outdated/non-functional coloring in admin logs
  • Calendar has been rewritten, and much unused code has been removed.
  • Caches used by calendar were not being properly loaded at runtime
  • Changed most of the file_exists call in the code with is_file for a faster code execution
  • The bbcode cache now uses the ‘bbcode_tag’ field as array key instead of an incremental integer, that allows a faster data access for single bbcode tags as there is no need to scan the whole array with a foreach.
  • An unnecessary query has been removed from the forum index view (the query used to verify the name used for the friendly URL is correct)
  • Removed unnecessary query from report center report view
  • A cached used by report center was being queried separately instead of at page initiation
  • Report center plugins are now cached for quicker runtime lookup without having to query the database
  • Useless queries removed from report center
  • Some queries that selected all rows and counted them (instead of running COUNT style queries) were changed to be better optimized
  • ACP skin files previously extended the output class unnecessarily. This was removed, resulting in approximately 20KB or more memory savings in each ACP page.
  • Report center plugins are now cached for quicker runtime lookup without having to query the database
  • RSS import now is much faster on boards with lots of feeds setup in the ACP.
  • overWrite header query / method_exists moved from every page load and value is cached in app_cache

Developer-Oriented Changes
Changes that may impact resource authors and skinners (including removed functions, database changes, new hooks, etc.)

  • $this->DB->force_data_type has been removed. Mod authors should now call $this->DB->setDataType( $column, $type ) instead.
  • $this->DB->no_escape_fields has been hidden. You should use the available $this->DB->preventAddSlashes( array( 'col' => 1 ) ); syntax instead.
  • Login management custom configurations have moved to database handling. conf.php (or conf.dist.php) files are no longer needed (though acp.php still is).
  • search_results, sessions.location, and cache_store.cs_extra are all removed
  • If you have a findIpAddress extension you can now add an array of additional columns to pull from your table as the fourth array member. i.e. "'posts' => array( 'author_id', 'ip_address', 'post_date', array( 'pid' ) ),"
  • IPB will now do a better job of cleaning up centralized application data during uninstall, so applications don't have to do it manually. (http://community.invisionpower.com/tracker/issue-25956-attachements-in-support-ticket/)
  • The way hook data to-be-exported is stored has changed. This should have minimal impact on developers as the upgrade routine will update it for developers. This should make working with hooks between multiple developers easier, and make hooks import, export, install and uninstall in a much more consistent manner whether IN_DEV is on or not.
  • Many skin system bugs have been resolved, and improvements implemented, making the skin system more flexible to developers using it outside of normal contexts, while allowing it to be more forgiving of various formatting possibilities (i.e. typehinting for function parameters and spacing around function parameter definitions).
  • Central permission management now correctly can handle more than one permission type within a single application
  • IPv6 is now supported. You should ensure any database columns holding IP addresses are varchar(46) or larger.
  • You should use the new ipsRegistry::getAppClass( $app ); call to load your app_class_(application).php class. This ensures any library hooks execute as appropriate and consolidates duplicative code.
  • You should use the new constants IPS_FILE_PERMISSION / IPS_FOLDER_PERMISSION for file and folder permission values. i.e. instead of chmod( $file, 0777 ); use chmod( $file, IPS_FILE_PERMISSION ); instead.
  • Calendar has been completely rewritten - the DB schema has changed, dates are stored as datetime parts in MySQL, etc.
  • The ACP has a new interface implemented, some of the JS has changed, jQuery is now supported in the ACP
  • Removed 4 data hooks in public_forums_forums_topics: topicViewTopicData, topicViewDisplayData, topicViewForumData, topicViewPostData. All 4 of them can be replaced with a simple skin overloader for the template "skin_topic > topicViewTemplate".
  • Photos and avatars have been merged.
  • Photos thumbs are now cropped at 100px and you can select which area to crop
  • Twitter / Facebook photos are actually imported and re-sized where possible (needs fopen URL wrappers otherwise the thumb URL for the services is used)
  • Some functionality for importing/exporting/rebuilding from and to XML files has been hidden unless IN_DEV mode is enabled
  • Added a second parameter for the function “$this→cache→getCache( $CACHE_KEY, FALSE );” which allows to skip the loading from the database if the cache isn’t loaded already.
  • A new option to define an application when creating an hook, if the application is filled the code checks if it is enabled and if not skips loading the hook file completely.
    class_forums::fetchTopicFolderIcon() has been changed to return an array of meta-data about the topic that can be used to generate the topic icon, although Rikki is changing how topic icons work in general anyways.
    pp_*thumb*_x is now pp_*small*_x
  • The sessions API (admin/sources/classes/session/api.php) now supports a different cutoff time rather than the default one, additional joins, ‘where’ query bits, complete ‘where’ query part override.
  • The function “IPSLib::unpackGroup()” now is “IPSMember::unpackGroup()”.
  • ACP group_form.php plugins now support an optional third method: postSave(). This method accepts one parameter (the group ID), is only called if present, is called after the rest of the group data is saved, and should not return anything.
  • Added a getCount() method to the like class to return just the number of followers
  • The setting disable_reportpost has been removed. Our applications now check the report center permissions directly, instead.
  • Hooks Improvements:
  • Applications Improvements:
  • A new extensions file per-app is supported: permissionsSync.php. Class name should be “(app)PermissionsSync” and supports a constructor (ipsRegistry reference passed) and one method with no arguments: updatePermissions(). This method can be used to rebuild application caches when the app permissions have been updated from the central permission manager.
  • Deprecated function getBlogID() in the blog API has been removed, developers will need to use the more updated function fetchBlogIds()
  • makeProfileLink, memberViewImages, makePassword, makeNameFormatted, canReceiveMobileNotifications have been moved to IPSMember
  • unconvertSmilies has been moved to IPSText. The redirect method in the bbcode class has been removed.
  • The “doneScreen” method in the admin output class has been entirely removed. Authors are encouraged to use the global_message/silentRedirectWithMessage() methodology instead.
  • The “redirect” method in the admin output class now simply routes to silentRedirectWithMessage(), and is marked deprecated.
  • The template “global_main_wrapper_no_furniture” has been removed from the admin skin.
  • Function “rebuildSphinxConfig” has been moved from “IPSLib” to “admin_core_applications_applications”
  • classCommunication.php was removed, and classFileManagement.php was extended to handle POST requests (encompassing the only functionality missing compared to classCommunication.php)
  • Almost all private methods have been switched to protected to allow more robust hook capabilities
  • New pagination potions to use a next/previous style pagination. Next/previous style pagination supports AJAX pagination.
  • The column “ban_nocache” has been removed from the “banfilters” table.
  • New adminOutput method setMessage() has been added. Allows to set the global_message, and allows to specify a “sticky” flag or not.
  • ACP Settings are now in their own “settings” module and the templates have been moved as well in “cp_skin_settings”.
  • menu.xml files for ACP modules now support specifying a language key, which can then be placed into “(app)_admin_menulang.php” as “menu__(language_key)” to support menu language abstraction in the ACP. This is optional for apps.
Link to comment
Share on other sites

  • 1 month later...
  • Management

IP.Nexus 1.3.0

Global Changes ()

  • Updated to match the new styling in IP.Board 3.2 both on front end and AdminCP
  • Search functions integrated with AdminCP live search
  • Attention icons to display items needing your attention
  • 2Checkout.com gateway added
  • Support for PayPal subscriptions
  • Subscription option for packages so a member can only purchase an item once
  • Better support to remember a member's original member group when you are using IP.Nexus group promotion feature
  • More admin-level notification options of new activity
Link to comment
Share on other sites


This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...