From 2f8b41fe0b00c39fd958d6fb38c73b1266d36f99 Mon Sep 17 00:00:00 2001
From: Thibault Dockx <thibault.dockx@fusiondirectory.org>
Date: Mon, 24 Jun 2024 15:52:40 +0100
Subject: [PATCH] :sparkles: Feat(CORE) - new directory structure

New sections assignments and small fixes
---
 .../.class_mailTemplateManagement.inc.swp     | Bin 16384 -> 0 bytes
 .../tasks/class_tasksManagement.inc           |  59 ++++++++++++++++++
 2 files changed, 59 insertions(+)
 delete mode 100644 plugins/management/mailtemplate/.class_mailTemplateManagement.inc.swp
 create mode 100644 plugins/management/tasks/class_tasksManagement.inc

diff --git a/plugins/management/mailtemplate/.class_mailTemplateManagement.inc.swp b/plugins/management/mailtemplate/.class_mailTemplateManagement.inc.swp
deleted file mode 100644
index 129eae9eea882410d9f5b607b915db5d4ddd53ed..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 16384
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
Y8gd;ok)ggHC?4eL(WI-^suAn_3)Qr3;Q#;t

diff --git a/plugins/management/tasks/class_tasksManagement.inc b/plugins/management/tasks/class_tasksManagement.inc
new file mode 100644
index 000000000..360bdc03d
--- /dev/null
+++ b/plugins/management/tasks/class_tasksManagement.inc
@@ -0,0 +1,59 @@
+<?php
+/*
+  This code is part of FusionDirectory (http://www.fusiondirectory.org/)
+  Copyright (C) 2011-2022  FusionDirectory
+
+  This program is free software; you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation; either version 2 of the License, or
+  (at your option) any later version.
+
+  This program 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 General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with this program; if not, write to the Free Software
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+*/
+
+class tasksManagement extends management
+{
+
+  protected $skipCpHandler    = TRUE;
+
+  /*
+  *  LinkColumn exists by class column
+  *  TasksColumn is a new class for Tasks based on argonaut column definition
+  */
+  public static $columns = [
+    //below fdTasksMailObject must be changed to have a type defined within task creation (new ldap attributes ?hidden)
+    ['LinkColumn',  ['attributes' => 'cn', 'label' => 'Tasks']],
+    ['TasksColumn', ['attributes' => 'fdTasksMailObject', 'label' => 'Types']],
+    ['Column', ['attributes' => 'fdTasksCreationDate', 'label' => 'Creation Date']],
+    ['TasksColumn', ['attributes' => 'fdTasksScheduleDate', 'label' => 'Scheduled']],
+    ['ActionsColumn', ['label' => 'Actions']],
+  ];
+
+  static function plInfo ()
+  {
+    return [
+      'plShortName'   => _('Tasks'),
+      'plDescription' => _('Provide a mechanism to create and manage tasks'),
+      'plTitle'       => _('Tasks'),
+      'plIcon'        => 'geticon.php?context=applications&icon=tasks&size=48',
+      'plSection'     => 'workflow',
+      'plPriority'    => 2,
+      'plManages'     => ['tasks'],
+      'plProvidedAcls' => [],
+    ];
+  }
+
+  protected function setUpListing ()
+  {
+    /* Set baseMode to FALSE */
+    $this->listing  = new managementListing($this, FALSE);
+  }
+
+}
-- 
GitLab