<?php

include_once INTENSE_PLUGIN_FOLDER . '/inc/plugins/class-tgm-plugin-activation.php';

if ( ! function_exists( 'intense_register_required_plugins' ) ) :
  function intense_register_required_plugins() {

    $plugins = array(
      array(
        'name' => 'Device Mockups',
        'slug' => 'device-mockups',
        'required' => false,
        'force_activation' => false,
        'force_deactivation' => false,
        'version' => '1.5.2'   
      )
    );

    /**
     * Array of configuration settings. Amend each line as needed.
     * If you want the default strings to be available under your own theme domain,
     * leave the strings uncommented.
     * Some of the strings are added into a sprintf, so see the comments at the
     * end of each line for what each argument will be.
     */
    $config = array(
      'domain'          => 'intense',          // Text domain - likely want to be the same as your theme.
      'default_path'    => '',                          // Default absolute path to pre-packaged plugins
      'menu'            => 'install-required-plugins',  // Menu slug
      'has_notices'       => true,                        // Show admin notices or not
      'is_automatic'      => false,             // Automatically activate plugins after installation or not
      'message'       => '',              // Message to output right before the plugins table
      'strings'         => array(
        'page_title'                            => __( 'Install Required Plugins', 'intense' ),
        'menu_title'                            => __( 'Install Plugins', 'intense' ),
        'installing'                            => __( 'Installing Plugin: %s', 'intense' ), // %1$s = plugin name
        'oops'                                  => __( 'Something went wrong with the plugin API.', 'intense' ),
        'notice_can_install_required'           => _n_noop( 'This theme requires the following plugin: %1$s.', 'This theme requires the following plugins: %1$s.', 'intense' ), // %1$s = plugin name(s)
        'notice_can_install_recommended'      => _n_noop( 'This theme recommends the following plugin: %1$s.', 'This theme recommends the following plugins: %1$s.', 'intense' ), // %1$s = plugin name(s)
        'notice_cannot_install'           => _n_noop( 'Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', 'Sorry, but you do not have the correct permissions to install the %s plugins. Contact the administrator of this site for help on getting the plugins installed.', 'intense' ), // %1$s = plugin name(s)
        'notice_can_activate_required'          => _n_noop( 'The following required plugin is currently inactive: %1$s.', 'The following required plugins are currently inactive: %1$s.', 'intense' ), // %1$s = plugin name(s)
        'notice_can_activate_recommended'     => _n_noop( 'The following recommended plugin is currently inactive: %1$s.', 'The following recommended plugins are currently inactive: %1$s.', 'intense' ), // %1$s = plugin name(s)
        'notice_cannot_activate'          => _n_noop( 'Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', 'Sorry, but you do not have the correct permissions to activate the %s plugins. Contact the administrator of this site for help on getting the plugins activated.', 'intense' ), // %1$s = plugin name(s)
        'notice_ask_to_update'            => _n_noop( 'The following plugin needs to be updated to its latest version to ensure maximum compatibility with this plugin: %1$s.', 'The following plugins need to be updated to their latest version to ensure maximum compatibility with this plugin: %1$s.', 'intense' ), // %1$s = plugin name(s)
        'notice_cannot_update'            => _n_noop( 'Sorry, but you do not have the correct permissions to update the %s plugin. Contact the administrator of this site for help on getting the plugin updated.', 'Sorry, but you do not have the correct permissions to update the %s plugins. Contact the administrator of this site for help on getting the plugins updated.', 'intense' ), // %1$s = plugin name(s)
        'install_link'                  => _n_noop( 'Begin installing plugin', 'Begin installing plugins', 'intense' ),
        'activate_link'                 => _n_noop( 'Activate installed plugin', 'Activate installed plugins', 'intense'  ),
        'return'                                => __( 'Return to Required Plugins Installer', 'intense' ),
        'plugin_activated'                      => __( 'Plugin activated successfully.', 'intense' ),
        'complete'                  => __( 'All plugins installed and activated successfully. %s', 'intense' ), // %1$s = dashboard link
        'nag_type'                  => 'updated' // Determines admin notice type - can only be 'updated' or 'error'
      )
    );

    tgmpa( $plugins, $config );
  }
endif;

add_action( 'tgmpa_register', 'intense_register_required_plugins' );
