...
Code Block | ||||
---|---|---|---|---|
| ||||
// Plugin/FooSource/Controller/FooSourceCoPetitionsController.php App::uses('CoPetitionsController', 'Controller'); class FooSourceCoPetitionsController extends CoPetitionsController { public $name = "FooSourceCoPetitions"; public $uses = array("CoPetition", // Your plugin will most likely need to use OrgIdentitySource to // create the OrgIdentity "OrgIdentitySource"); /** * @param Integer $id CO Petition ID * @param Array $oiscfg Array of configuration data for this plugin * @param Array $onFinish URL, in Cake format * @param Integer $actorCoPersonId CO Person ID of actor */ protected function execute_plugin_selectOrgIdentityAuthenticate($id, $oiscfg, $onFinish, $actorCoPersonId) { // Do some work here, then redirect when finished. // By default, Exceptions will be caught further up the stack, though you could catch them here. $myId = result_of_some_work(); // Create an Org Identity $this->OrgIdentitySource->createOrgIdentity($oiscfg['OrgIdentitySource']['id'], $myId, $actorCoPersonId, $this->cur_co['Co']['id'], $actorCoPersonId); // Create some history $this->CoPetition->CoPetitionHistoryRecord->record($id, $actorCoPersonId, PetitionActionEnum::IdentityLinked, _txt('pl.foosource.linked', array($myId))); $this->redirect($onFinish); } } |
...