This plugin hasn’t been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

occupied

Description

custom page locking for WordPress admin screens

usage

In the function for your custom page, just use Occupied::protect() to enable locking on that page.

<?php 
add_action('admin_menu', 'register_my_plugin_menu');

function register_my_plugin_menu(){
  add_menu_page("My Cool Plugin", "cool-plugin", "manage_options", "my_cool_plugin_page", "render_my_cool_plugin", "dashicons-heart", 7);
}

function render_my_cool_plugin(){
  // Occupied::protect enables locking on this page
  // and returns a lock array
  // optional: pass a message to the protect method to appear on the lock modal.
  $lock = Occupied::protect("Cool Plugin Occupied!");

  echo "<h1>My Cool Plugin!</h1>";
}
?>

In another action, you can check whether a screen is occupied by the current user

<?php
function some_other_action(){
  if(Occupied::is_authorized('toplevel_page_my_cool_plugin_page')){
    // business logic, save to database, etc..
  }else{
    // return error
  }
}
?><h3>todo</h3>

* break out styles
* add locking hooks
* rethink using vue for a modal and some event handlers

developers

This plugin is developed on github

license

GPLv3

Screenshots

  • Demonstration

Installation

put this plugin in the plugins directory of your wordpress installation

or

include the plugin in the root folder of your own plugin and require it with

require_once('occupied-installation-folder/occupied.php');

FAQ

Installation Instructions

put this plugin in the plugins directory of your wordpress installation

or

include the plugin in the root folder of your own plugin and require it with

require_once('occupied-installation-folder/occupied.php');

Reviews

There are no reviews for this plugin.

Contributors & Developers

“occupied” is open source software. The following people have contributed to this plugin.

Contributors

Translate “occupied” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Change log

  • Initial upload