# weforms/1.6.8/includes/class-integration-manager.php

weForms – Easy Drag &amp; Drop Contact Form Builder For WordPress, version 1.6.8. 53 lines.

- Page: https://pluginprobe.com/plugins/weforms/1.6.8/code/includes/class-integration-manager.php
- Raw: https://pluginprobe.com/plugins/weforms/1.6.8/raw/includes/class-integration-manager.php
- Modified: 2020-11-11T13:07:46+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/weforms/1.6.8/code/includes/class-integration-manager.php#L10-L20`.

```php
<?php

/**
 * The Integration Loader
 */
class WeForms_Integration_Manager {

    /**
     * The integration instances
     *
     * @var array
     */
    public $integrations = [];

    /**
     * Return loaded integrations.
     *
     * @return array
     */
    public function get_integrations() {
        if ( $this->integrations ) {
            return $this->integrations;
        }

        require_once WEFORMS_INCLUDES . '/integrations/slack/class-integration-slack.php';
        require_once WEFORMS_INCLUDES . '/integrations/erp/class-integration-erp.php';
        require_once WEFORMS_INCLUDES . '/integrations/mailpoet/class-integration-mailpoet.php';
        require_once WEFORMS_INCLUDES . '/integrations/sprout-invoices/class-integration-sprout-invoices.php';

        $integrations = apply_filters( 'weforms_integrations', [
            'WeForms_Integration_Slack', 'WeForms_Integration_ERP', 'WeForms_Integration_MailPoet_Free', 'WeForms_Integration_SI',
        ] );

        // Load integration classes
        foreach ( $integrations as $integration ) {
            $integration_instance = new $integration();

            $this->integrations[ $integration_instance->id ] = $integration_instance;
        }

        return $this->integrations;
    }

    public function get_integration_js_settings() {
        $settings = [];

        foreach ( $this->get_integrations() as $integration_id => $integration ) {
            $settings[ $integration_id ] = $integration->get_js_settings();
        }

        return $settings;
    }
}
```
