Everyone at IPS is very proud of IP.Board 3.2.0 and the Application updates. We have worked hard to create a quality, modern community platform and the feedback from our clients has been tremendous.
We are releasing the following new software:
Fully featured community platform including forums, members profiles, calendar, status system, integration, and much, much more.
Categories and photo albums for your members to share their images and videos on your community.
Fully featured commerce system to sell products, membership access, advertising, digital downloads, and more. Includes tools like a support desk to help manage you clients.
Allow you and your members to post blogs on your community or syndicate externally hosted blogs easily.
Complete file management application including file version control, commenting, and forum topic linking.
Content management for your community - run a full web site or a simply community portal. The possibilities are endless.
Engage your members in real time chat or send them private chats while in the chat room.
Event calendar for your community with multiple calendars, public/private events, and iCal support.
What's new in IP.Board 3.2!
In addition to this list there are countless other minor improvements and changes based on client feedback too numerous to mention.
- SEO Improvements: http://community.inv...o-improvements/
- Consistency: http://community.inv...ii-consistency/
- RSVP: http://community.inv...-part-iii-rsvp/
- Simplification and interface changes: http://community.inv...erface-changes/
- iCalendar support: http://community.inv...lendar-support/
- Report Center improvements: http://community.inv...r-improvements/
- Editing Member improvements: http://community.inv...r-improvements/
- Moderator Control Panel: http://community.inv...-control-panel/
New Text Editor
- New editor and auto-save: http://community.inv...ew-text-editor/
- Cleaner interface, quick reply, quick quoting: http://community.inv...editor-part-ii/
- New post alert while typing reply: http://community.inv...ditor-part-iii/
- New style: http://community.inv...-admincp-style/
- New "like" reputation mode: http://community.inv...tion-mode-like/
- Easy member management: http://community.inv...ber-management/
- Improved restrictions: http://community.inv...s-enhancements/
- Forum Management: http://community.inv...rum-management/
- Remote skin editing: http://community.inv...e-skin-editing/
- View new content and topic marking improvements: http://community.inv...d-topic-marking and part 2: http://community.inv...t-improvements/
- New Photo Editor: http://community.inv...w-photo-editor/
- Shared media: http://community.inv...e-shared-media/
- Tagging and prefixes: http://community.inv...g-and-prefixes/
- Notification enhancements: http://community.inv...n-enhancements/ and http://community.inv...cations-part-2/
- New mobile skin: http://community.inv...te-mobile-skin/
- Facebook, Twitter, and mobile updates: http://community.inv...mobile-updates/
- Visual Skin Editor: http://community.inv...al-skin-editor/
- "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.
- Global Changes http://community.inv...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
- Hosting improvements: http://community.inv...us-130-hosting/
- Customers and purchases: http://community.inv...-and-purchases/
- Support: http://community.inv...us-130-support/
Other applications have been updated to work with IP.Board 3.2.0, have received cosmetic improvements, and other minor updates to improve functionality. All applications will get larger updates now that IP.Board 3.2.0 has been released. Keep an eye on our news feed for information.
These are changes made at the code-level of our software during this release phase that may interest our power-user clients.
- 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 cache 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
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.inv...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: http://community.inv...s-improvements/
- Applications Improvements: http://community.inv...s-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.