* @copyright Sander Brand 2016 */ namespace OCA\Passman\Controller; use OCP\IRequest; use OCP\AppFramework\Http\JSONResponse; use OCP\AppFramework\ApiController; use OCA\Passman\Service\CredentialService; use \OCP\App; class InternalController extends ApiController { private $userId; private $credentialService; public function __construct($AppName, IRequest $request, $UserId, CredentialService $credentialService) { parent::__construct($AppName, $request); $this->userId = $UserId; $this->credentialService = $credentialService; } /** * @NoAdminRequired */ public function remind($credential_id) { $credential = $this->credentialService->getCredentialById($credential_id, $this->userId); $credential->setExpireTime(time() + (24 * 60 * 60)); $this->credentialService->upd($credential); $manager = \OC::$server->getNotificationManager(); $notification = $manager->createNotification(); $notification->setApp('passman') ->setObject('credential', $credential_id) ->setUser($this->userId); $manager->markProcessed($notification); } /** * @NoAdminRequired */ public function read($credential_id) { $credential = $this->credentialService->getCredentialById($credential_id, $this->userId); $credential->setExpireTime(0); $this->credentialService->upd($credential); $manager = \OC::$server->getNotificationManager(); $notification = $manager->createNotification(); $notification->setApp('passman') ->setObject('credential', $credential_id) ->setUser($this->userId); $manager->markProcessed($notification); } /** * @NoAdminRequired * @NoCSRFRequired */ public function getAppVersion() { $AppInstance = new App(); return new JSONResponse(array('version' => $AppInstance->getAppInfo("passman")["version"])); } /** * @NoAdminRequired */ public function generatePerson() { $random_person = json_decode(file_get_contents('http://api.namefake.com/')); return new JSONResponse($random_person); } }