mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-05-08 20:46:05 +00:00
create slim app and add hook for setting up routes
This commit is contained in:
parent
6b11e9cb87
commit
ca84e27e47
|
@ -43,6 +43,7 @@ class SeedDMS_ExtExample extends SeedDMS_ExtBase {
|
||||||
* $GLOBALS['SEEDDMS_HOOKS'] : all hooks added so far
|
* $GLOBALS['SEEDDMS_HOOKS'] : all hooks added so far
|
||||||
*/
|
*/
|
||||||
function init() { /* {{{ */
|
function init() { /* {{{ */
|
||||||
|
$GLOBALS['SEEDDMS_HOOKS']['initDMS'][] = new SeedDMS_ExtExample_InitDMS;
|
||||||
$GLOBALS['SEEDDMS_HOOKS']['view']['addDocument'][] = new SeedDMS_ExtExample_AddDocument;
|
$GLOBALS['SEEDDMS_HOOKS']['view']['addDocument'][] = new SeedDMS_ExtExample_AddDocument;
|
||||||
$GLOBALS['SEEDDMS_HOOKS']['view']['viewFolder'][] = new SeedDMS_ExtExample_ViewFolder;
|
$GLOBALS['SEEDDMS_HOOKS']['view']['viewFolder'][] = new SeedDMS_ExtExample_ViewFolder;
|
||||||
$GLOBALS['SEEDDMS_SCHEDULER']['tasks']['example']['example'] = new SeedDMS_ExtExample_Task;
|
$GLOBALS['SEEDDMS_SCHEDULER']['tasks']['example']['example'] = new SeedDMS_ExtExample_Task;
|
||||||
|
@ -52,6 +53,35 @@ class SeedDMS_ExtExample extends SeedDMS_ExtBase {
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class containing methods for hooks when the dms is initialized
|
||||||
|
*
|
||||||
|
* @author Uwe Steinmann <uwe@steinmann.cx>
|
||||||
|
* @package SeedDMS
|
||||||
|
* @subpackage example
|
||||||
|
*/
|
||||||
|
class SeedDMS_ExtExample_InitDMS { /* {{{ */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Hook after initializing the application
|
||||||
|
*
|
||||||
|
* This method sets the callback 'onAttributeValidate' in SeedDMS_Core
|
||||||
|
*/
|
||||||
|
public function addRoute($arr) { /* {{{ */
|
||||||
|
$dms = $arr['dms'];
|
||||||
|
$settings = $arr['settings'];
|
||||||
|
$app = $arr['app'];
|
||||||
|
|
||||||
|
$app->get('/ext/example/echo',
|
||||||
|
function ($request, $response) use ($app) {
|
||||||
|
echo "Output of route /ext/example/echo";
|
||||||
|
}
|
||||||
|
);
|
||||||
|
return null;
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class containing methods for hooks when a document is added
|
* Class containing methods for hooks when a document is added
|
||||||
*
|
*
|
||||||
|
|
42
index.php
42
index.php
|
@ -18,6 +18,48 @@
|
||||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
include("inc/inc.Settings.php");
|
include("inc/inc.Settings.php");
|
||||||
|
include("inc/inc.LogInit.php");
|
||||||
|
include("inc/inc.Utils.php");
|
||||||
|
include("inc/inc.Language.php");
|
||||||
|
include("inc/inc.Init.php");
|
||||||
|
include("inc/inc.Extension.php");
|
||||||
|
include("inc/inc.DBInit.php");
|
||||||
|
include("inc/inc.Authentication.php");
|
||||||
|
|
||||||
|
require "vendor/autoload.php";
|
||||||
|
|
||||||
|
$c = new \Slim\Container(); //Create Your container
|
||||||
|
$c['notFoundHandler'] = function ($c) use ($settings) {
|
||||||
|
return function ($request, $response) use ($c, $settings) {
|
||||||
|
return $c['response']
|
||||||
|
->withStatus(302)
|
||||||
|
->withHeader('Location', isset($settings->_siteDefaultPage) && strlen($settings->_siteDefaultPage)>0 ? $settings->_siteDefaultPage : "out/out.ViewFolder.php");
|
||||||
|
};
|
||||||
|
};
|
||||||
|
$app = new \Slim\App($c);
|
||||||
|
|
||||||
|
if(isset($GLOBALS['SEEDDMS_HOOKS']['initDMS'])) {
|
||||||
|
foreach($GLOBALS['SEEDDMS_HOOKS']['initDMS'] as $hookObj) {
|
||||||
|
if (method_exists($hookObj, 'addRoute')) {
|
||||||
|
$hookObj->addRoute(array('dms'=>$dms, 'app'=>$app, 'settings'=>$settings));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
$app->any('/echo',
|
||||||
|
function ($request, $response) use ($app) {
|
||||||
|
echo "lasjf".$request->getBody();
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
$app->any('/[{path:.*}]', function($request, $response, $path = null) {
|
||||||
|
return $response->write($path ? 'subroute' : 'index');
|
||||||
|
});
|
||||||
|
*/
|
||||||
|
|
||||||
|
$app->run();
|
||||||
|
exit;
|
||||||
|
|
||||||
header("Location: ". (isset($settings->_siteDefaultPage) && strlen($settings->_siteDefaultPage)>0 ? $settings->_siteDefaultPage : "out/out.ViewFolder.php"));
|
header("Location: ". (isset($settings->_siteDefaultPage) && strlen($settings->_siteDefaultPage)>0 ? $settings->_siteDefaultPage : "out/out.ViewFolder.php"));
|
||||||
?>
|
?>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user