Skip to content

Instantly share code, notes, and snippets.

@LukasReschke
Created November 24, 2014 19:18
Show Gist options
  • Save LukasReschke/cef33fef4bf959944245 to your computer and use it in GitHub Desktop.
Save LukasReschke/cef33fef4bf959944245 to your computer and use it in GitHub Desktop.
<?php
/**
* ownCloud
*
* @author Frank Karlitschek
* @copyright 2010 Frank Karlitschek karlitschek@kde.org
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
*
* You should have received a copy of the GNU Affero General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*/
try {
require_once 'lib/base.php';
//OC::handleRequest();
class TestHook {
function hookFunc($args) {
$args['new'] = 'value';
}
}
$test = array('testargs' => 'testvalue');
\OCP\Util::connectHook('testnamespace', 'testhook', 'TestHook', 'hookFunc');
\OCP\Util::emitHook('testnamespace', 'testhook', array('new' => &$test));
var_dump($test);
} catch(\OC\ServiceUnavailableException $ex) {
\OCP\Util::logException('index', $ex);
//show the user a detailed error page
OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE);
OC_Template::printExceptionErrorPage($ex);
} catch (\OC\HintException $ex) {
OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE);
OC_Template::printErrorPage($ex->getMessage(), $ex->getHint());
} catch (Exception $ex) {
\OCP\Util::logException('index', $ex);
//show the user a detailed error page
OC_Response::setStatus(OC_Response::STATUS_INTERNAL_SERVER_ERROR);
OC_Template::printExceptionErrorPage($ex);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment