Jump to content

IC5: Extensions

We've been dropping hints about various development features that haven't yet made their appearance in our previous blog entries. Now that hooks are no longer a possibility, we've expanded our Extensions system to allow developers to integrate with other areas within the framework.

This blog entry will give an overview of our new Extensions. We are working on updating our developer documentation to include these changes.

 

AccountSettings

Allows you to add tabs to the Account Settings page. This extension contains two methods:

  • getTab
    Returns the key for the tab (or null to hide)
  • getContent
    The tab content

 

Loader

This extension was created primarily to allow you to load Javascript and CSS files in areas outside of your application, but has since been expanded to include other functionality. It is essentially an extension on the Dispatcher.

Available methods:

  • css
    Returns an array of CSS files to load
  • js
    Returns an array of JS files to load
  • checkForRedirect
    Redirect users to another location. This is especially useful for custom applications that would have previously bypassed an existing controller.
  • customError
    Show a custom error message to the user instead of the standard IPS error messages.

 

SearchContent

This is used to allow your application's content to the Search Index. Previously, the framework relied on the ContentRouter extension for this, and the use of the \IPS\Content\Searchable interface. The interface has been removed, and searchable classes are determined by the new extension.

The SearchContent extension contains one required method, supportedClasses. You can also use this extension to override our default search logic for your content.

 

Other New Extensions

  • LoginHandler
    Allows you to create additional Login methods
  • UIComment/UIItem/UINode/UIReview
    UI Extensions, described here, here, and here
  • UserMenu
    Allows you to add content to various menus. Additional information can be found here.

 

New Commerce Extensions

The following new extensions have been added to Commerce:

  • Gateway
    Allows you to create new payment gateways
  • LicenseKey
    Allows you to add new methods for generating and managing license keys
  • Payout
    Allows you to create gateways for payouts

 

Deprecated Extensions

The following Extensions are no longer supported and have been removed:

  • BBCode
  • ContentModeratorPermissions (use ModeratorPermissions instead)
  • CreateMenu (replaced by UserMenu)
  • IncomingEmail
  • MemberForm

 

Reminder: Send us your Feedback

Send us your questions or use-cases by submitting a topic here. Please note that this is a private forum; you will not see topics posted by others, so you are free to share code samples if necessary. We will review your questions, and then aggregate them into an FAQ. The deadline for your question to be considered for the FAQ is October 15. After that you may still submit questions in the Contributor forum, where we will do our best to respond.

 

Comments

Recommended Comments

There are no comments to display.


×
×
  • Create New...