예제 #1
0
파일: options.php 프로젝트: hersche/Peta
<?php

require_once 'default.php';
require_once 'class/base.php';
require_once '../class/plugin.php';
$allAllowedSites = new allowedSites($connection);
$instancedPluginManager = new instancedPluginManager($user, $template, $connection);
$template->assign('allSites', $instancedPluginManager->getInstancedPlugins());
//$dojorequire = array("dijit.InlineEditBox", "dijit.form.Textarea");
//$template->assign("dojorequire", $dojorequire);
/**
 * This is the site for managing the users as admin
 */
switch ($_GET['action']) {
    case "editStartpage":
        if ($connection->query("SELECT * FROM `options` WHERE `key` LIKE 'startpage';")->rowCount() == 0) {
            $connection->exec('INSERT INTO `options` (`id`, `key`, `value`) VALUES (NULL,"startpage","' . $_POST['startpageEdit'] . '");');
        } else {
            $connection->exec('UPDATE `options` SET `value` = ' . $_POST['startpageEdit'] . ' WHERE `options`.`key` = "startpage";');
        }
        array_push($messages, "Startpage changed");
        $template->assign("messages", $messages);
        $template->display('options_misc.tpl');
        break;
    case "deleteAllowedSite":
        if (!empty($_GET['siteid'])) {
            array_push($messages, $allAllowedSites->deleteAllowedSite($_GET['siteid'], $connection));
        }
        $template->assign("messages", $messages);
        $template->assign('sites', $allAllowedSites->getAllowedSiteList());
        $template->display('options_misc.tpl');
예제 #2
0
파일: plugin.php 프로젝트: hersche/Peta
    $rawPlugin = $pluginmanager->getRawPluginByName($_GET['rawPluginName']);
    $rawPluginName['path'] = $rawPlugin->getPath();
    $rawPluginName['className'] = $rawPlugin->getName();
    $template->assign("getPluginEdit", $rawPluginName);
}
if ($_GET['action'] == "editPluginInstance") {
    $pluginInstance = $instancedPluginManager->getInstancedPluginById($_GET['pluginId']);
    $pluginInstance->edit();
}
if ($_GET['action'] == "createInstancedPlugin") {
    //var_dump($_GET);
    $newInstPlugin = $instancedPluginManager->createInstancedPlugin($_GET['name'], $_GET['description'], $_GET['path'], $_GET['className'], $_GET['active']);
}
// $var = array("content");
// $template->_smarty_include("plugins/exampleplugin/templates/content.tpl", $var);
if (isset($_GET['rawPluginName'])) {
    $rawPlugin = $pluginmanager->getRawPluginByName($_GET['rawPluginName']);
    require_once $rawPlugin->getPath();
    $className = $rawPlugin->getName();
    //Just get the description - for that we have to init one plugin of this kind (empty, NOT START IT!)
    $instance = new $className("", "", "", "", $connection);
    if (isset($instance)) {
        $template->assign("rawPluginDescription", $instance->getPluginDescription());
    }
    $template->assign("instancedPlugin", $instancedPlugin);
    $template->assign("instancedPluginList", $instancedPluginManager->getInstancedPluginList($className));
    $template->assign("rawPlugin", $rawPlugin);
}
$template->assign("messages", $messages);
$template->assign("plugins", $instancedPluginManager->getInstancedPlugins());
$template->display('plugin.tpl');
예제 #3
0
파일: default.php 프로젝트: hersche/Peta
    $user->setId(-1);
    $user->setUsername("Public");
    $role = new role();
    $role->setId(-1);
    $role->setRole("Public");
    $user->addRoleToRam($role);
    $_SESSION["user"] = $user;
    $template->assign("user", $user);
}
$instancedPluginManager = new instancedPluginManager($user, $template, $connection);
$allowedPluginInstances = array();
$pluginInstance = Null;
$allowed = False;
$allowedAccess = "Null";
$fn = basename($_SERVER['PHP_SELF']);
foreach ($instancedPluginManager->getInstancedPlugins() as $pI) {
    foreach ($user->getRoles() as $uRole) {
        foreach ($pI->getUsedRoles() as $pRole) {
            if ($pRole->getId() == $uRole->getId()) {
                if (!in_array($pI, $allowedPluginInstances)) {
                    array_push($allowedPluginInstances, $pI);
                }
                if ($_GET['plugin'] == $pI->getId()) {
                    $allowedAccess = $pRole->getAccesRightsString();
                    $template->assign("allowedAccess", $allowedAccess);
                    $allowed = True;
                }
                if ($_GET['rawPluginName'] == $pI->getClassName() && $_GET['editPluginId'] == $pI->getId()) {
                    $paccess = $pRole->getAccesRightsString();
                    if ($paccess == "Admin") {
                        $allowedAccess = $paccess;