Jump to content

IPS Community Suite 4.1

Browse our IPS 4.0 and 4.1.x content.

641 files

  1. Confirm Email Address

    This simple plugin will add another email address field on registration screen to user confirm the email address. The validation will occur when the user submits the form.

    106 downloads

       (1 review)

    Updated

  2. Transliteration FileNames

    This simple plugin converts non-Latin filenames into Latin.
    IPS changes the non-Latin names of the files to a unique hash eg:
    Не Латинское Имя Файла.jpg -> 56965a79219b5_.jpg.d81ced405a1fda8a9536815a2c1de2a8.jpg
    After installing the plugin:
    Не Латинское Имя Файла.jpg -> Ne_Latinskoe_Imya_Fayla.jpg.9fe1ac7cc75105b8930a0d434783980e.jpg

    3 downloads

       (0 reviews)

    Updated

  3. X-Sendfile

    This plugin enables X-Sendfile support for filesystem downloads in the Invision Power Suite.
    In short, X-Sendfile is a way of allowing PHP to tell your web server to deliver files to the client after proper authentication checks, logging and other application logic has been performed.
    This is far more ideal than forcing PHP to handle file transfers directly, as your web server is much more efficient in regards to handling static file transfers.
    For more information on X-Sendfile and instructions on how to install/enable it on your web server, please refer to the following guide:
    https://www.makoto.io/blogs/entry/1-setting-up-x-sendfile-with-ips/
    How it works
    IPS4's framework makes enabling X-Sendfile support incredibly easy. This plugin works by hooking into the FileSystem class and overriding the method that normally reads and prints files out in PHP. This offers universal X-Sendfile support everywhere in the suite with just a few lines of code, including attachment and IDM downloads.
    Caveats
    Download sessions can not be utilized when using X-Sendfile. This means you can not restrict the number of concurrent downloads a user can make in the IPS Downloads application. Download speed throttling is only supported when using Nginx.  

    21 downloads

       (0 reviews)

    Updated

  4. Coding Standards

    This archive contains an unofficial collection of IDE configurations and other files for use with IPS' own coding standards.
    phpStorm
    To import the PHP Storm code style configuration, go to File > Import Settings. Select the phpStorm.jar file included in this repository. Afterwards, open up the Setting page (File > Settings) and navigate to Editor > Code Style > PHP.

    From the right-hand side of the scheme selection box, click on Manage. You should now see the IPS code style available for use!
    This repository also includes a projectCodeStyle.xml document, which you can use to automatically import the IPS coding styles in your own repositories for anyone else that uses phpStorm. To do this, you'll need to copy this file to the .idea/ directory in your projects root and commit it.
    If you decide to do this, it's recommended you set up your .gitignore configuration to only commit this file in your .idea directory and ignore everything else.
    Scrutinizer
    Scrutinizer is a great service for performing automated code checks and scrutinizing your code for quality, and best of all, it's completely free to use for open-source projects! To learn more about it, head over to the official website.

    13 downloads

       (0 reviews)

    Updated

  5. JQuery UI Library

    Packaged for the "libraries" application.
    Usage:
    This library is packaged specifically for use with the libraries app in the IPS4 marketplace. You may need to download this file and upload it to the libraries app if you have not done so previously and an app or plugin that you are using has a dependency on it.

    22 downloads

       (1 review)

    Updated

  6. Enhanced Joined Date

    This plugin will display JOINED DATE in user panel in posts and will allow the admin to choose between three different ways to show this date.
    Requirement:
    FORUMS app. Note:
    Version 2.0.1: IPS 4.1.X Version 2.0.0: IPS 4.0.X

    27 downloads

       (0 reviews)

    Submitted

  7. Knockout JS Library

    Knockout JS Library v3.2.0
    Packaged for the "libraries" application.
    Usage:
    This library is packaged specifically for use with the libraries app in the IPS4 marketplace. You may need to download this file and upload it to the libraries app if you have not done so previously and an app or plugin that you are using has a dependency on it.

    6 downloads

       (0 reviews)

    Updated

  8. Bootstrap Library v

    Packaged for the "libraries" application.
    Usage:
    This library is packaged specifically for use with the libraries app in the IPS4 marketplace. You may need to download this file and upload it to the libraries app if you have not done so previously and an app or plugin that you are using has a dependency on it.

    25 downloads

       (0 reviews)

    Updated

  9. Libraries

    Libraries is an application which consolidates and provides a central repository for 3rd party
    libraries which can be used and shared by apps and plugins. This application provides an API
    for app and plugin developers to load and use libraries without having to bundle the library
    with the plugin/app distribution.
    For site owners, this application allows you to have one centrally located library, ( such as
    JQuery UI, Bootstrap, etc ) that you can customize to your own needs and give plugins/apps an
    easy way to share it.
    Notice to site owners:
    You may have been asked to install this application because another app or plugin that you're
    using requires it. If that's the case, simply install "libraries" and upload any library files
    that are required by the particular app/plugin.
    Notice to developers:
    Download and read the readme.txt for information on how to use the libraries API in your own
    projects.

    19 downloads

       (0 reviews)

    Updated

  10. Proxy Class Generator

    Due to the nature of the IPS 4.0 framework, several useful features of your IDE are non-functional (like suggestions/code completion/etc). This file will generate proxy classes for IPS classes (including 3rd-party applications), so your IDE will know how to use IPS style classes.
    This file is MIT licensed, please feel free to alter/redistribute/etc, while maintaining license requirements.

    11 downloads

       (0 reviews)

    Updated

  11. CMS Custom Database Field Construction Kit

    AUDIENCE: Developers
    DISCLAIMER:
    --------------
    This is not a functioning plugin or app! It is only provided to help expedite
    the creation of your own plugin or app ONLY.
    SUMMARY:
    --------------
    This package includes two documented hook templates that can be customized
    for use in your own custom cms database fields for use in pages apps and
    custom databases.
    It has been provided as a quick and easy way to hook into all the basic
    methods required to add your own custom cms field to pages.

    15 downloads

       (1 review)

    Updated

  12. Polliwog

    Note: there is no upgrade path from froggy to polliwog. Also noteworthy, the version check in polliwog is incompatible with the version check for 3.x applications.
    Note2: if you receive a failed push warning from the marketplace api, check the permissions for applications/polliwog/interface/rest/rest.php, verify it conforms to your security settings (for me it was 0644).

    1 download

       (0 reviews)

    Updated

  13. PHPStorm Templates

    This has several predefined templates for IPS 4.0
    Included:
    Class (basic class) Template (creates an empty *.phtml, with the param header) Items (creates a blank item's class with many of the predefined options included) Javascript Controller (creates JS controller) JS Mixin (creates Mixin JS file) JS Module (creates Module JS File) Nodes (creates a basic node class with permissions) Singleton (creates a class that extends the singleton class) When creating files, for the ones that have namespace you do not need to include IPS nor do you need to include the _ (underscore) for class name (filename is used for the class name). If you find any problems, drop me a line.

    13 downloads

       (0 reviews)

    Updated

  14. Vagrant Development Box

    ipsv is an unofficial Vagrant box utility designed specifically for Invision Power Suite third party developers. It aims to make developing IPS applications and plugins a more enjoyable experience by eliminating the headache of having to manage and manually configure a local development environment using WAMP or similar means.
    Whenever you normally want to make a new test install of IPS, you have to..
    Download the most recent IPS release Extract the setup files to a new web directory Apply proper permissions to those files and folders Update the configuration files for your web server Create a new MySQL database Go through the process of running the web installer and filling in all your server information again Download the most recent developer tools from the marketplace Extract those developer tools to your IPS installation Create a new constants.php file to finally put the installation into IN_DEV mode. That's quite a headache to go through every time you want to create a new IPS test installation.
    Wouldn't it be nice if you could automate doing all of the above in a single command? Meet IPS Vagrant.
    What is Vagrant?
    Vagrant is software for managing virtual development environments. It allows you to easily create and destroy virtual machines on the fly.
    What is IPS Vagrant?
    IPSV is a custom server and configuration file management application that comes pre-installed on the FujiMakoto/ipsv Vagrant box.
     
    For more information (including installation instructions), please check out the Getting Started section of the projects README page.

    12 downloads

       (0 reviews)

    Updated

  15. Power Tools

    Introduction
    Power Tools is a third party command line utility for Invision Power Suite developers. It aims to aid in development by packaging several useful command line script and applications together in one easy to use application.
    Installation
    If you are on Linux, there is an optional executable included in the release package which you can extract and copy to /usr/local/bin for convenience.
    Otherwise, just extract the included ptools.phar file to the directory of your IPS installation. Then, from your terminal window, navigate to the applications directory and run ptools.phar as you would any other PHP script from the command line,
    $ php ptools.phar Power Tools version 0.2 Usage: command [options] [arguments] Options: -h, --help Display this help message -q, --quiet Do not output any message -V, --version Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output -n, --no-interaction Do not ask any interactive question -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug Available commands: classmap Generate a map of error codes for classes in an IPS application help Displays help for a command list Lists commands tinker Launches an interactive shell interpreter for an IPS installation generate generate:activerecord Generates an Active Record boilerplate class generate:content-comment Generates a Content Comment boilerplate class generate:content-item Generates a Content Item boilerplate class generate:content-node Generates a Content Node boilerplate class proxy proxy:regen (Re)generates all proxy classes for the application Features
    Tinker
    Tinker is one of Power Tools most.. well, powerful features! The name tinker was inspired by Laravel's own "tinker" command, and it essentially operates in the same manner.
    Both are powered by PsySH, an application that provides an extremely powerful PHP REPL for your applications.
    Stop making your life difficult by executing arbitrary code in random modules for testing, or worse yet, actually trying to use the native PHP CLI interpreter.
    Need to test if your Item class is working correctly? Just pop into the REPL and give it a whirl! 
    Everything in the tinker shell essentially works as your application does when run through the web browser. You can even get documentation on class methods right from within the interpreter,
     
    PsySh is a truly awesome tool. To learn more about it and all the features it offers you, check it out on PsySh.org.
    Proxy Classes
    Due to the nature of the IPS 4.x framework, several useful features of your IDE may become non-functional (suggestions, code completion, etc). This command will generate proxy classes for IPS (including 3rd-party applications), so your IDE will know how to use IPS style classes.
    This command was based off of @CodingJungle's own Proxy Class Generator script.

    Class Mapping
    The classmap command maps unique ID numbers to your applications class files. These ID numbers are then stored and maintained for use in error codes.
    By maintaining and actively using a proper error code scheme, you can easily and transparently map the location of errors that are triggered in production.
    For more information on this feature, refer to the original Classmap script.

    9 downloads

       (0 reviews)

    Updated

  16. Development Packager

    Introduction
    Development Packager is an IPS application for third party developers that fully automates the task of packaging development files with other IPS applications.
    It also has the added benefit of doing all this in a fully transparent manner, meaning you never have to manually include these development files with your application releases again.
    How does it work?
    Integrating Development Packager into your own IPS application can be done in three easy steps.
    Step 1: Install the Development Packager application as normal.
    Step 2: Now that the hard stuff is out of the way, create a new core Build extension for your application in the Development Center.
    In this file, replace the build method with the following,
    /** * Build * * @return void * @throws \RuntimeException */ public function build() { /** * Make sure we have the DevPackager application installed. * If you want to require developers install this application, simply remove this check. */ if ( !class_exists( 'IPS\devpackager\Packager' ) ) { return; } /** * Package our development files and build our extraction class */ $devPackager = new \IPS\devpackager\Packager( 'yourAppDirHere' ); $devPackager->packageDevFiles(); $devPackager->createDevFilesClass(); } Naturally, replace yourAppDirHere with your actual application directory.
    Step 3: In your applications Application.php file, add the following method,
    /** * Extract developer resources on installation */ public function installOther() { try { \IPS\yourAppDirHere\DevFiles::extract(); } catch ( \Exception $e ) {} } Again, replace yourAppDirHere respectively.
    Once that's done, build your application. That's it!
    Now whenever your application is built, all of your development resources should be re-packaged and saved to your applications data directory.
    These files are always included with your applications installation archive. Not only this, but any time your application is installed in an environment where \IPS\IN_DEV is enabled, your development files will be automatically extracted on installation.
    This means you no longer have to maintain copies of your development files with every release, and other developers no longer have to manually extract these files every time they install or upgrade your application in their development environments. Awesome!

    9 downloads

       (0 reviews)

    Updated

  17. Classmap (Error code generator)

    Introduction
    Classmap is a PHP script that maps unique ID numbers to your applications class files. These ID numbers are then maintained for use in error codes.
    By maintaining and actively using a proper error code scheme, you can easily and transparently map the location of errors that are triggered in production.
    This script was designed to be (mostly) compatible with Invison Power Services' own error code schema.
    You can see a quick example of the scripts output in FujiMakoto/IPS-Faker,
    https://github.com/FujiMakoto/IPS-Faker/blob/master/data/class_ids.md https://github.com/FujiMakoto/IPS-Faker/blob/master/data/class_ids.txt Installation
    To install and utilize this script, just upload classmap.php to your applications root directory. For example,/srv/http/ips/applications/yourappdir/classmap.php
    Then just execute the script from the command line. A map of class ID's should be outputted to your terminal and saved in your applications data directory.
    Error Formatting
    The recommended format for error codes (which is the format used by IPS) is ABC/D
    A is a number 1-5 indicating the severity,
    Severity Description Examples 1 User does something that is not allowed. Can happen in normal use. User did not fill in a required form element. 2 Action cannot be performed. Will not happen in normal clicking around, but may happen if a URL is shared. User does not have permission to access requested page; Page doesn't exist. 3 Action cannot be performed. Will not happen in normal use. Secure key doesn't match; User submitted a value for a select box that wasn't in the select box. 4 Configuration error that may happen if the admin hasn't set things up properly. Uploads directory isn't writable; Facebook application data was rejected. 5 Any error that should never happen. No login modules exist; Module doesn't have a defined default section. B is a short string indicating the application. You should try and make this unique, but limit it to roughly 3-5 characters.
    C is a 3-digit number indicating the class in which the error occurred. ID numbers are split into range groups of 100 depending on the class type,
    Type Min Max Sources 100 199 Modules 200 299 Extensions 300 399 Hooks 400 499 Widgets 500 599 Tasks 600 699 Interface 700 799 Setup 800 899 Misc 900 999 If more than 100 files are present in any type, the ID number will reset with a suffix of A, B, C, and so on.
    D is then an identifier error within the class. The first error code in the class is given 1, the second is 2, and so on.
    General Tips
    Use descriptive error messages and make use of the ability to show a different error message to admins where appropriate. If it's a severity 4 error, you probably want to show an admin message. The HTTP status code you use is important so make sure you set that properly. Don't use HTTP 500 for an error code with severity 1 or 2 or a HTTP 4xx error for a code with severity 4 or 5. HTTP 404 and 403 will usually be severity 2, HTTP 429 and 503 will usually be severity 1.

    1 download

       (0 reviews)

    Updated

  18. Plugin Location

    This plugin will display on ACP -> Plugins -> plugin row -> Plugin Details, the plugin location (installation folder).
    When you install a plugin on IPS 4.0.X, it doesn't preserve Plugin Directory name you chose when you created that plugin; it installs the plugin in a random folder name, like pfc562c91e1 or p83de4d4757, etc.
    Installing this plugin, you will get the exact location of the plugin. This is very handy in case you need to support a client's board and needs to know in which folder your plugin is installed.

    28 downloads

       (0 reviews)

    Updated

  19. Build App from Dev Center

    This plugin will help you not to waste your time everytime you need to build your app to test it on public side. Currently you can do this by going to main Applications page and selecting Build from the app menu.

    36 downloads

       (1 review)

    Updated

  20. Versions

    Overview
    The Versions application provides a simple interface for IPS developers to create and easily maintain Update Check URL's for their Applications, Plugins and even Themes.
    There are three primary ways you can utilize this application:
     
    1) Manually creating versions
    As one would expect, this application will allow you to create version entries by simply manually inputting data about your application, plugin or theme. Just provide the name of the application, its directory name (this does not need to be a valid directory, it is only used for the URL identifier), the textual version representation (eg 1.0.0) and lastly the version ID number (eg 100000) and hit create.
    Once your entry has been created, you'll be able to easily bump the version whenever an update is made by clicking the "^" icon beside the version entry. To get the Update Check URL, click the button with the external link icon. Copy and paste this URL into your application settings page in the Update Check URL entry box and you're done.
     
    2) Importing the application .tar archive or plugin/theme .xml file
    A quicker alternative to manually inputting data is to simply import your settings automatically. Just click the import button and upload your applications .tar archive (or plugin/themes .xml file) and everything will be automatically inputted for you. Whenever you update your application in the future, you just import it again. Your previous entry will automatically be updated to reflect your most recent changes.
     
    3) Tracking installed applications, plugins or themes
    If you have your applications, plugins or themes installed on your IPS community website, you can track these existing installations automatically without ever having to manually input or import any data. As long as you keep these installations updated, the versions of these installations will be pulled directly on request without requiring any additional effort on your end. Just track and forget!

    9 downloads

       (0 reviews)

    Updated

  21. Cookie Notice

    This plugin displays a cookie notice message popup. In the ACP you can set the message and specify an URL to read more about your cookies policy. You can also choose different styles and positions for the popup. Clicking the "Got it!" button sets a cookie to no longer show the message.
    You are able to block Google Analytics Cookie until the consent message is dismissed.
    There are language strings for the "More info" link, for the "Got it!" button, and for the message itself if you choose to use the translations.
    Powered by: https://silktide.com/tools/cookie-consent/ - Now it's possible to use a local version of the JavaScript though.

    212 downloads

       (2 reviews)

    Updated

  22. WhatsApp Share Link

    Adds the WhatsApp share service to IPS 4.1.x.
    Once enabled, the WhatsApp icon should appear in your share links on your phone/tablet. It is hidden by default on desktops because clicking the icon on desktop does nothing and the ability to share has not yet been added to WhatsApp Web. This is toggable in the WhatsApp share link settings.
    After clicking the link it opens WhatsApp and you will need to click on a user/conversation for the text to appear.
    Notice:
    If you're updating to 1.0.9 or later you need to upload the contents of the /upload folder to your IPS 4.1.x install.
    Customize:
    As of 1.0.6 the text string has been removed to improve performance. To customize you still have access to $url and $title within the whatsapp_cvh template (Core > Global > Plugins in the template editor). You will need to format the text string as desired. An example would be:
    <a href="whatsapp://send?text={expression="\IPS\Content\ShareServices\Whatsappcvh::encodeURIComponent( $title . ' ' . $url )"}" class="cShareLink cShareLink_whatsapp" title='{lang="whatsapp_text"}' data-ipsTooltip> <i class="fa fa-whatsapp"></i> </a>

    80 downloads

       (0 reviews)

    Updated

  23. Feed Widget

    Will let you add RSS widget and show latest feed.
    Options
    Widget Title RSS Url Number OF Feed Cache Time

    46 downloads

       (0 reviews)

    Updated

  24. [pages] Hide Side Bar Records

    Hide the sidebar if it is enabled for the page in record view. there might be little to no point in having the sidebar in a record view, this gives you the option to "hide" it for databases.

    8 downloads

       (2 reviews)

    Updated

  25. Online Status in Post View

    This simple template hook will show the post author's online status like in ipb3

    301 downloads

       (1 review)

    Updated


×
×
  • Create New...