Skip to content

Commit

Permalink
Bug fixes & first draft of module manaager
Browse files Browse the repository at this point in the history
  • Loading branch information
marcelfolaron committed Jul 9, 2022
1 parent 489f47e commit ec474ff
Show file tree
Hide file tree
Showing 22 changed files with 98 additions and 54 deletions.
2 changes: 1 addition & 1 deletion src/core/class.application.php
Expand Up @@ -54,7 +54,7 @@ public function start()
$language = $this->language;
$telemetryResponse = false;

//Override theme appSettings
//Override theme settings
$this->overrideThemeSettings();

$this->loadHeaders();
Expand Down
4 changes: 2 additions & 2 deletions src/domain/api/controllers/class.files.php
Expand Up @@ -70,11 +70,11 @@ public function post($params)
*/
public function patch($params)
{
//Special handling for appSettings
//Special handling for settings

if(isset($params['patchModalSettings'])) {

if($this->usersService->updateUserSettings("modals", $params['appSettings'], 1)) {
if($this->usersService->updateUserSettings("modals", $params['settings'], 1)) {
echo "{status:ok}";
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/domain/api/controllers/class.sessions.php
Expand Up @@ -62,7 +62,7 @@ public function post($params)
*/
public function patch($params)
{
//Special handling for appSettings
//Special handling for settings

if(isset($params['tourActive'])) {

Expand Down
4 changes: 2 additions & 2 deletions src/domain/api/controllers/class.users.php
Expand Up @@ -92,11 +92,11 @@ public function post($params)
*/
public function patch($params)
{
//Special handling for appSettings
//Special handling for settings

if(isset($params['patchModalSettings'])) {

if($this->usersService->updateUserSettings("modals", $params['appSettings'], 1)) {
if($this->usersService->updateUserSettings("modals", $params['settings'], 1)) {
echo "{status:ok}";
}
}
Expand Down
4 changes: 2 additions & 2 deletions src/domain/clients/templates/showAll.tpl.php
Expand Up @@ -58,11 +58,11 @@

leantime.clientsController.initClientTable();

<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["showClients"]) === false || $_SESSION['userdata']['appSettings']["modals"]["showClients"] == 0) { ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["showClients"]) === false || $_SESSION['userdata']['settings']["modals"]["showClients"] == 0) { ?>
leantime.helperController.showHelperModal("showClients");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["showClients"] = 1;
$_SESSION['userdata']['settings']["modals"]["showClients"] = 1;
} ?>

}
Expand Down
4 changes: 2 additions & 2 deletions src/domain/dashboard/templates/show.tpl.php
Expand Up @@ -449,13 +449,13 @@

<?php } ?>

<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["dashboard"]) === false || $_SESSION['userdata']['appSettings']["modals"]["dashboard"] == 0){ ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["dashboard"]) === false || $_SESSION['userdata']['settings']["modals"]["dashboard"] == 0){ ?>

leantime.helperController.showHelperModal("dashboard", 500, 700);

<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["dashboard"] = 1;
$_SESSION['userdata']['settings']["modals"]["dashboard"] = 1;
} ?>

});
Expand Down
18 changes: 18 additions & 0 deletions src/domain/errors/controllers/class.error404.php
@@ -0,0 +1,18 @@
<?php

namespace leantime\domain\controllers {

use leantime\core;

class error404
{

public function run()
{

$tpl = new core\template();

$tpl->display('errors.error404');
}
}
}
14 changes: 14 additions & 0 deletions src/domain/errors/templates/error404.tpl.php
@@ -0,0 +1,14 @@
<?php defined('RESTRICTED') or die('Restricted access'); ?>

<div class="errortitle">

<h4 class="animate0 fadeInUp"><?php echo $this->__('headlines.page_not_found') ?></h4>
<span class="animate1 bounceIn">4</span>
<span class="animate2 bounceIn">0</span>
<span class="animate3 bounceIn">4</span>
<div class="errorbtns animate4 fadeInUp">
<a onclick="history.back()" class="btn btn-default"><?php echo $this->__('buttons.back') ?></a>
<a href="<?=BASE_URL ?>" class="btn btn-primary"><?php echo $this->__('links.dashboard') ?></a>
</div><br/><br/><br/><br/>

</div>
4 changes: 2 additions & 2 deletions src/domain/ideas/templates/advancedBoards.tpl.php
Expand Up @@ -282,11 +282,11 @@ class="addCanvasLink btn btn-primary"><?php echo $this->__("buttons.start_new_id
leantime.ideasController.initUserDropdown();


<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["advancedBoards"]) === false || $_SESSION['userdata']['appSettings']["modals"]["advancedBoards"] == 0) { ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["advancedBoards"]) === false || $_SESSION['userdata']['settings']["modals"]["advancedBoards"] == 0) { ?>
leantime.helperController.showHelperModal("advancedBoards");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["advancedBoards"] = 1;
$_SESSION['userdata']['settings']["modals"]["advancedBoards"] = 1;
} ?>

});
Expand Down
4 changes: 2 additions & 2 deletions src/domain/ideas/templates/showBoards.tpl.php
Expand Up @@ -273,11 +273,11 @@ class="addCanvasLink btn btn-primary"><?php echo $this->__("buttons.start_new_id
leantime.ideasController.initStatusDropdown();
leantime.ideasController.initUserDropdown();

<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["ideaBoard"]) === false || $_SESSION['userdata']['appSettings']["modals"]["ideaBoard"] == 0) { ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["ideaBoard"]) === false || $_SESSION['userdata']['settings']["modals"]["ideaBoard"] == 0) { ?>
leantime.helperController.showHelperModal("ideaBoard");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["ideaBoard"] = 1;
$_SESSION['userdata']['settings']["modals"]["ideaBoard"] = 1;
} ?>

<?php if(isset($_GET['showIdeaModal'])) {
Expand Down
4 changes: 2 additions & 2 deletions src/domain/leancanvas/templates/showCanvas.tpl.php
Expand Up @@ -1566,12 +1566,12 @@
leantime.leanCanvasController.initStatusDropdown();


<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["fullLeanCanvas"]) === false || $_SESSION['userdata']['appSettings']["modals"]["fullLeanCanvas"] == 0) { ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["fullLeanCanvas"]) === false || $_SESSION['userdata']['settings']["modals"]["fullLeanCanvas"] == 0) { ?>
leantime.helperController.showHelperModal("fullLeanCanvas");

<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["fullLeanCanvas"] = 1;
$_SESSION['userdata']['settings']["modals"]["fullLeanCanvas"] = 1;
} ?>

});
Expand Down
4 changes: 2 additions & 2 deletions src/domain/leancanvas/templates/simpleCanvas.tpl.php
Expand Up @@ -18,11 +18,11 @@
leantime.leanCanvasController.initUserDropdown();
leantime.leanCanvasController.initStatusDropdown();

<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["simpleLeanCanvas"]) === false || $_SESSION['userdata']['appSettings']["modals"]["simpleLeanCanvas"] == 0) { ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["simpleLeanCanvas"]) === false || $_SESSION['userdata']['settings']["modals"]["simpleLeanCanvas"] == 0) { ?>
leantime.helperController.showHelperModal("simpleLeanCanvas");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["simpleLeanCanvas"] = 1;
$_SESSION['userdata']['settings']["modals"]["simpleLeanCanvas"] = 1;
} ?>


Expand Down
42 changes: 27 additions & 15 deletions src/domain/modulemanager/services/class.moduleManager.php
Expand Up @@ -18,27 +18,27 @@ class modulemanager

private static $modules = array(
"api" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"calendar" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"calendar" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"clients" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"comments" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"dashboard" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"files" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"general" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"help" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"ideas" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"ldap" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"leancanvas" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"projects" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"read" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"reports" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"retrospectives" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"setting" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"sprints" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"tickets" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"timesheets" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"twoFA" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"users" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"modulemanager" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "company"),
"ideas" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"ldap" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"leancanvas" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"projects" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"read" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"reports" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"retrospectives" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"setting" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"sprints" => array("required" => false, "enabled" => true, "dependsOn" => "tickets", "scope" => "project"),
"tickets" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"timesheets" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "project"),
"twoFA" => array("required" => false, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"users" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "system"),
"modulemanager" => array("required" => true, "enabled" => true, "dependsOn" => "", "scope" => "system"),
);


Expand Down Expand Up @@ -68,6 +68,18 @@ public static function getInstance()
return self::$instance;
}

public static function isModuleEnabled($module) {

if(isset(self::$modules[$module])) {
if(self::$modules[$module]['enabled'] === true) {
return true;
}
}

return false;

}


}

Expand Down
4 changes: 2 additions & 2 deletions src/domain/projects/templates/newProject.tpl.php
Expand Up @@ -44,12 +44,12 @@
leantime.projectsController.initProjectTabs();
leantime.projectsController.initProjectsEditor();

<?php if((isset($_SESSION['userdata']['appSettings']["modals"]["newProject"]) === false || $_SESSION['userdata']['appSettings']["modals"]["newProject"] == 0) && $_SESSION['currentProject'] != '') { ?>
<?php if((isset($_SESSION['userdata']['settings']["modals"]["newProject"]) === false || $_SESSION['userdata']['settings']["modals"]["newProject"] == 0) && $_SESSION['currentProject'] != '') { ?>

leantime.helperController.showHelperModal("newProject");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["newProject"] = 1;
$_SESSION['userdata']['settings']["modals"]["newProject"] = 1;
} ?>

}
Expand Down
4 changes: 2 additions & 2 deletions src/domain/projects/templates/showAll.tpl.php
Expand Up @@ -67,11 +67,11 @@
<script type="text/javascript">
jQuery(document).ready(function() {

<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["showProjects"]) === false || $_SESSION['userdata']['appSettings']["modals"]["showProjects"] == 0){ ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["showProjects"]) === false || $_SESSION['userdata']['settings']["modals"]["showProjects"] == 0){ ?>
leantime.helperController.showHelperModal("showProjects");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["showProjects"] = 1;
$_SESSION['userdata']['settings']["modals"]["showProjects"] = 1;
} ?>

leantime.projectsController.initProjectTable();
Expand Down
4 changes: 2 additions & 2 deletions src/domain/retrospectives/templates/showBoards.tpl.php
Expand Up @@ -462,11 +462,11 @@ class="addCanvasLink btn btn-primary"><?php echo $this->__("buttons.start_retros
leantime.retroController.setKanbanHeights();

<?php
if(isset($_SESSION['userdata']['appSettings']["modals"]["retrospectives"]) === false || $_SESSION['userdata']['appSettings']["modals"]["retrospectives"] == 0) { ?>
if(isset($_SESSION['userdata']['settings']["modals"]["retrospectives"]) === false || $_SESSION['userdata']['settings']["modals"]["retrospectives"] == 0) { ?>
leantime.helperController.showHelperModal("retrospectives");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["retrospectives"] = 1;
$_SESSION['userdata']['settings']["modals"]["retrospectives"] = 1;
} ?>

<?php if(isset($_GET['showRetroModal'])) {
Expand Down
4 changes: 2 additions & 2 deletions src/domain/setting/controllers/class.editBoxLabel.php
Expand Up @@ -52,7 +52,7 @@ public function get($params)

if (isset($params['module']) && isset($params['label'])) {

//Move to appSettings service
//Move to settings service
if ($params['module'] == "ticketlabels") {
$stateLabels = $this->ticketsRepo->getStateLabels();
$currentLabel = $stateLabels[$params['label']]["name"];
Expand Down Expand Up @@ -98,7 +98,7 @@ public function post($params)

$sanitizedString = filter_var($params['newLabel'], FILTER_SANITIZE_STRING);

//Move to appSettings service
//Move to settings service
if ($_GET['module'] == "ticketlabels") {

$currentStateLabels = $this->ticketsRepo->getStateLabels();
Expand Down
8 changes: 4 additions & 4 deletions src/domain/tickets/templates/roadmap.tpl.php
Expand Up @@ -6,8 +6,8 @@
?>

<?php
if(isset($_SESSION['userdata']['appSettings']['views']['roadmap'])){
$roadmapView = $_SESSION['userdata']['appSettings']['views']['roadmap'];
if(isset($_SESSION['userdata']['settings']['views']['roadmap'])){
$roadmapView = $_SESSION['userdata']['settings']['views']['roadmap'];
}else{
$roadmapView = "Month";
}
Expand Down Expand Up @@ -87,11 +87,11 @@

<script type="text/javascript">
jQuery(document).ready(function(){
<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["roadmap"]) === false || $_SESSION['userdata']['appSettings']["modals"]["roadmap"] == 0){ ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["roadmap"]) === false || $_SESSION['userdata']['settings']["modals"]["roadmap"] == 0){ ?>
leantime.helperController.showHelperModal("roadmap");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["roadmap"] = 1;
$_SESSION['userdata']['settings']["modals"]["roadmap"] = 1;
} ?>

<?php if(isset($_GET['showMilestoneModal'])) {
Expand Down
4 changes: 2 additions & 2 deletions src/domain/tickets/templates/showAll.tpl.php
Expand Up @@ -453,11 +453,11 @@

leantime.ticketsController.initTicketsTable("<?=$searchCriteria["groupBy"] ?>");

<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["backlog"]) === false || $_SESSION['userdata']['appSettings']["modals"]["backlog"] == 0){ ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["backlog"]) === false || $_SESSION['userdata']['settings']["modals"]["backlog"] == 0){ ?>
leantime.helperController.showHelperModal("backlog");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["backlog"] = 1;
$_SESSION['userdata']['settings']["modals"]["backlog"] = 1;
} ?>


Expand Down
4 changes: 2 additions & 2 deletions src/domain/tickets/templates/showKanban.tpl.php
Expand Up @@ -443,12 +443,12 @@
var ticketStatusList = [<?php foreach($this->get('allTicketStates') as $key => $statusRow){ echo "'".$key."',"; }?>];
leantime.ticketsController.initTicketKanban(ticketStatusList);

<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["kanban"]) === false || $_SESSION['userdata']['appSettings']["modals"]["kanban"] == 0){ ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["kanban"]) === false || $_SESSION['userdata']['settings']["modals"]["kanban"] == 0){ ?>

leantime.helperController.showHelperModal("kanban");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["kanban"] = 1;
$_SESSION['userdata']['settings']["modals"]["kanban"] = 1;
}
?>

Expand Down
4 changes: 2 additions & 2 deletions src/domain/timesheets/templates/showMy.tpl.php
Expand Up @@ -196,11 +196,11 @@

});

<?php if(isset($_SESSION['userdata']['appSettings']["modals"]["mytimesheets"]) === false || $_SESSION['userdata']['appSettings']["modals"]["mytimesheets"] == 0){ ?>
<?php if(isset($_SESSION['userdata']['settings']["modals"]["mytimesheets"]) === false || $_SESSION['userdata']['settings']["modals"]["mytimesheets"] == 0){ ?>
leantime.helperController.showHelperModal("mytimesheets");
<?php
//Only show once per session
$_SESSION['userdata']['appSettings']["modals"]["mytimesheets"] = 1;
$_SESSION['userdata']['settings']["modals"]["mytimesheets"] = 1;
} ?>
});

Expand Down
6 changes: 3 additions & 3 deletions src/domain/users/services/class.users.php
Expand Up @@ -51,11 +51,11 @@ public function updateUserSettings($category, $setting, $value)
$filteredInput = filter_var($setting, FILTER_SANITIZE_STRING, FILTER_FLAG_ENCODE_HIGH);
$filteredValue = filter_var($value, FILTER_SANITIZE_STRING, FILTER_FLAG_ENCODE_HIGH);

$_SESSION['userdata']['appSettings'][$category][$filteredInput] = $filteredValue;
$_SESSION['userdata']['settings'][$category][$filteredInput] = $filteredValue;

$serializeSettings = serialize($_SESSION['userdata']['appSettings']);
$serializeSettings = serialize($_SESSION['userdata']['settings']);

return $this->userRepo->patchUser($_SESSION['userdata']['id'], array("appSettings" => $serializeSettings));
return $this->userRepo->patchUser($_SESSION['userdata']['id'], array("settings" => $serializeSettings));
}

}
Expand Down

0 comments on commit ec474ff

Please sign in to comment.