# filebird/5.6/includes/Plugin.php

FileBird – WordPress Media Library Folders &amp; File Manager, version 5.6. 51 lines.

- Page: https://pluginprobe.com/plugins/filebird/5.6/code/includes/Plugin.php
- Raw: https://pluginprobe.com/plugins/filebird/5.6/raw/includes/Plugin.php
- Modified: 2024-01-19T08:51:52+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/filebird/5.6/code/includes/Plugin.php#L10-L20`.

```php
<?php
namespace FileBird;

defined( 'ABSPATH' ) || exit;

use FileBird\Classes\Review;
use FileBird\Classes\Schedule as FilebirdSchedule;
use FileBird\Install;
/**
 * Plugin activate/deactivate logic
 */
class Plugin {
	protected static $instance = null;

	public static function getInstance() {
		if ( null == self::$instance ) {
			self::$instance = new self();
		}

		return self::$instance;
	}

	private function __construct() {
	}

	public static function prepareRun() {
		$current_version = get_option( 'fbv_version' );
		if ( version_compare( NJFB_VERSION, $current_version, '>' ) ) {
			self::activate();
			update_option( 'fbv_version', NJFB_VERSION );
			Review::update_time_display();
		}
	}

	/** Plugin activated hook */
	public static function activate() {
		$first_time_active = get_option( 'fbv_first_time_active' );
		if ( $first_time_active === false ) {
			update_option( 'fbv_is_new_user', 1 );
			update_option( 'fbv_first_time_active', 1 );
		}
		Install::create_tables();
		FilebirdSchedule::clearSchedule();
	}

	/** Plugin deactivate hook */
	public static function deactivate() {
		FilebirdSchedule::clearSchedule();
	}
}

```
