1. Go to this page and download the library: Download staffbase/plugins-sdk-php library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
staffbase / plugins-sdk-php example snippets
use Exception;
use Staffbase\plugins\sdk\SSOToken;
try {
$appSecret = 'abcdef012345='; // the public key received from Staffbase.
$sso = new SSOToken($appSecret, $_GET['jwt']);
print "Hello again ". $sso->getFullName();
} catch (Exception $e) {
print "Sorry we could not authenticate You.";
exit;
}
use Exception;
use Staffbase\plugins\sdk\PluginSession;
try {
$pluginId = 'weatherplugin'; // the id you received from Staffbase.
$appSecret = 'abcdef012345='; // the public key received from Staffbase.
$session = new PluginSession($pluginId, $appSecret);
print "Hello again ". $PluginSession->getFullName(). ', '. $PluginSession->getSessionVar('message');
} catch (Exception $e) {
print "Sorry we could not authenticate You.";
exit;
}
use Staffbase\plugins\sdk\RemoteCall\AbstractRemoteCallHandler;
use Staffbase\plugins\sdk\RemoteCall\DeleteInstanceCallHandlerInterface;
// create a call handler which can have multiple call interfaces implemented
class RemoteCallHandler extends AbstractRemoteCallHandler implements DeleteInstanceCallHandlerInterface {
private $db;
public function __construct($db) {
$this->db = $db;
}
public function deleteInstance($instanceId) {
$result = $this->db->posts->deleteByInstance($instanceId);
return $result !== false;
}
}
// pass it to the PluginSession on construction as the last parameter
$remoteCallHandler = new RemoteCallHandler($db);
$session = new PluginSession(PLUGIN_ID, $secret, $sessionHandler, null, $remoteCallHandler);
/* Unreachable code in a delete call follows */
...
composer
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.