added auto delete module

This commit is contained in:
Roland Gruber 2018-06-29 20:44:36 +02:00
parent 237ba66711
commit 1f23b0314b
17 changed files with 132 additions and 108 deletions

View File

@ -19,6 +19,7 @@ time.
* lib/modules/customFields.inc * lib/modules/customFields.inc
* lib/modules/customScripts.inc * lib/modules/customScripts.inc
* lib/modules/device.inc * lib/modules/device.inc
* lib/modules/autoDelete.inc
* lib/modules/dynamicList.inc * lib/modules/dynamicList.inc
* lib/modules/groupOfNames.inc * lib/modules/groupOfNames.inc
* lib/modules/groupOfNamesUser.inc * lib/modules/groupOfNamesUser.inc

View File

@ -19,6 +19,7 @@ time.
* lib/modules/customFields.inc * lib/modules/customFields.inc
* lib/modules/customScripts.inc * lib/modules/customScripts.inc
* lib/modules/device.inc * lib/modules/device.inc
* lib/modules/autoDelete.inc
* lib/modules/dynamicList.inc * lib/modules/dynamicList.inc
* lib/modules/groupOfNames.inc * lib/modules/groupOfNames.inc
* lib/modules/groupOfNamesUser.inc * lib/modules/groupOfNamesUser.inc

Binary file not shown.

Before

Width:  |  Height:  |  Size: 463 B

After

Width:  |  Height:  |  Size: 450 B

View File

@ -102,7 +102,10 @@ class baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
public function getListAttributeDescriptions() { public function getListAttributeDescriptions() {
return array(); return array(
'entryexpiretimestamp' => _('Deletion time'),
"description" => _("Description"),
);
} }
/** /**

View File

@ -566,9 +566,14 @@ class lamList {
// print all attribute entries seperated by "; " // print all attribute entries seperated by "; "
if (isset($entry[$attribute]) && sizeof($entry[$attribute]) > 0) { if (isset($entry[$attribute]) && sizeof($entry[$attribute]) > 0) {
if (is_array($entry[$attribute])) { if (is_array($entry[$attribute])) {
// sort array if (($attribute == 'entryexpiretimestamp') && !empty($entry[$attribute][0])) {
sort($entry[$attribute]); echo formatLDAPTimestamp($entry[$attribute][0]);
echo htmlspecialchars(implode("; ", $entry[$attribute]), ENT_QUOTES, "UTF-8"); }
else {
// sort array
sort($entry[$attribute]);
echo htmlspecialchars(implode("; ", $entry[$attribute]), ENT_QUOTES, "UTF-8");
}
} }
else { else {
echo htmlspecialchars($entry[$attribute], ENT_QUOTES, "UTF-8"); echo htmlspecialchars($entry[$attribute], ENT_QUOTES, "UTF-8");

View File

@ -38,3 +38,4 @@
/kopano*.inc /kopano*.inc
/dynamicList.inc /dynamicList.inc
/customBaseType.inc /customBaseType.inc
/autoDelete.inc

View File

@ -91,11 +91,13 @@ class asteriskExt extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array( return array_merge(
"astextension" => _("Extension name"), parent::getListAttributeDescriptions(),
"astcontext" => _("Account context"), array(
"member" => _("Owner"), "astextension" => _("Extension name"),
); "astcontext" => _("Account context"),
"member" => _("Owner"),
));
} }
/** /**

View File

@ -1,10 +1,9 @@
<?php <?php
/* /*
$Id$
This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/)
Copyright (C) 2008 Thomas Manninger Copyright (C) 2008 Thomas Manninger
2009 - 2017 Roland Gruber 2009 - 2018 Roland Gruber
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -92,11 +91,13 @@ class dhcp extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
public function getListAttributeDescriptions() { public function getListAttributeDescriptions() {
return array ( return array_merge(
"cn" => _("Subnet"), parent::getListAttributeDescriptions(),
"dhcprange" => _("Ranges"), array (
"fixed_ips" => _("IP address") . ' / ' . _('MAC address') . ' / ' . _("Description") "cn" => _("Subnet"),
); "dhcprange" => _("Ranges"),
"fixed_ips" => _("IP address") . ' / ' . _('MAC address') . ' / ' . _("Description")
));
} }
/** /**

View File

@ -103,17 +103,19 @@ class group extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
$return = array ( $return = array_merge(
"cn" => _("Group name"), parent::getListAttributeDescriptions(),
"description" => _("Group description"), array(
"displayName" => _("Display name"), "cn" => _("Group name"),
"gidnumber" => _("GID number"), "description" => _("Group description"),
"member" => _("Group member DNs"), "displayName" => _("Display name"),
"memberuid" => _("Group members"), "gidnumber" => _("GID number"),
"roleOccupant" => _("Role member DNs"), "member" => _("Group member DNs"),
"uniqueMember" => _("Group member DNs"), "memberuid" => _("Group members"),
"memberUrl" => _("Entries"), "roleOccupant" => _("Role member DNs"),
); "uniqueMember" => _("Group member DNs"),
"memberUrl" => _("Entries"),
));
if ($this->getType() != null) { if ($this->getType() != null) {
$modules = $this->getType()->getModules(); $modules = $this->getType()->getModules();
if (in_array('organizationalRole', $modules)) { if (in_array('organizationalRole', $modules)) {

View File

@ -89,16 +89,18 @@ class host extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array ( return array_merge(
"uid" => _("Host name"), parent::getListAttributeDescriptions(),
"cn" => _("Common name"), array (
"rid" => _("RID (Windows UID)"), "uid" => _("Host name"),
"description" => _("Host description"), "cn" => _("Common name"),
"uidnumber" => _("UID number"), "rid" => _("RID (Windows UID)"),
"gidnumber" => _("GID number"), "description" => _("Host description"),
'location' => _('Location'), "uidnumber" => _("UID number"),
'serialNumber' => _('Serial number') "gidnumber" => _("GID number"),
); 'location' => _('Location'),
'serialNumber' => _('Serial number')
));
} }
/** /**

View File

@ -1,9 +1,8 @@
<?php <?php
/* /*
$Id$
This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/)
Copyright (C) 2013 Roland Gruber Copyright (C) 2013 - 2018 Roland Gruber
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -89,10 +88,12 @@ class kolabSharedFolderType extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array ( return array_merge(
"kolabDelegate" => _('Delegates'), parent::getListAttributeDescriptions(),
'alias' => _('Email aliases'), array (
); "kolabDelegate" => _('Delegates'),
'alias' => _('Email aliases'),
));
} }
/** /**

View File

@ -1,9 +1,8 @@
<?php <?php
/* /*
$Id$
This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/)
Copyright (C) 2005 - 2012 Roland Gruber Copyright (C) 2005 - 2018 Roland Gruber
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -89,10 +88,12 @@ class mailAlias extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array( return array_merge(
"cn" => _("Alias name"), parent::getListAttributeDescriptions(),
"rfc822mailmember" => _("Recipient list") array(
); "cn" => _("Alias name"),
"rfc822mailmember" => _("Recipient list")
));
} }
/** /**

View File

@ -1,9 +1,8 @@
<?php <?php
/* /*
$Id$
This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/)
Copyright (C) 2009 - 2012 Roland Gruber Copyright (C) 2009 - 2018 Roland Gruber
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -89,12 +88,14 @@ class netgroup extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array ( return array_merge(
"cn" => _("Group name"), parent::getListAttributeDescriptions(),
'description' => _('Description'), array (
'membernisnetgroup' => _('Subgroups'), "cn" => _("Group name"),
'nisnetgrouptriple' => _('Members') 'description' => _('Description'),
); 'membernisnetgroup' => _('Subgroups'),
'nisnetgrouptriple' => _('Members')
));
} }
/** /**

View File

@ -1,9 +1,8 @@
<?php <?php
/* /*
$Id$
This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/)
Copyright (C) 2013 - 2017 Roland Gruber Copyright (C) 2013 - 2018 Roland Gruber
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -89,12 +88,13 @@ class pykotaBillingCodeType extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array ( return array_merge(
"cn" => _('Billing code'), parent::getListAttributeDescriptions(),
"description" => _('Description'), array(
'pykotaBalance' => _('Balance'), "cn" => _('Billing code'),
'pykotaPageCounter' => _('Page count'), 'pykotaBalance' => _('Balance'),
); 'pykotaPageCounter' => _('Page count'),
));
} }
/** /**

View File

@ -1,9 +1,8 @@
<?php <?php
/* /*
$Id$
This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/)
Copyright (C) 2013 - 2017 Roland Gruber Copyright (C) 2013 - 2018 Roland Gruber
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -89,13 +88,14 @@ class pykotaPrinterType extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array ( return array_merge(
"cn" => _('Printer name'), parent::getListAttributeDescriptions(),
"description" => _('Description'), array(
'pykotaPricePerPage' => _('Price per page'), "cn" => _('Printer name'),
'pykotaPricePerJob' => _('Price per job'), 'pykotaPricePerPage' => _('Price per page'),
'pykotaMaxJobSize' => _('Maximum job size'), 'pykotaPricePerJob' => _('Price per job'),
); 'pykotaMaxJobSize' => _('Maximum job size'),
));
} }
/** /**

View File

@ -1,9 +1,8 @@
<?php <?php
/* /*
$Id$
This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/)
Copyright (C) 2005 - 2012 Roland Gruber Copyright (C) 2005 - 2018 Roland Gruber
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -89,10 +88,12 @@ class smbDomain extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array( return array_merge(
"sambasid" => _("Domain SID"), parent::getListAttributeDescriptions(),
"sambadomainname" => _("Domain name") array(
); "sambasid" => _("Domain SID"),
"sambadomainname" => _("Domain name")
));
} }
/** /**

View File

@ -88,34 +88,36 @@ class user extends baseType {
* @return array list of descriptions * @return array list of descriptions
*/ */
function getListAttributeDescriptions() { function getListAttributeDescriptions() {
return array ( return array_merge(
"cn" => _("Common name"), parent::getListAttributeDescriptions(),
'company' => _('Company'), array(
'departmentNumber' => _('Department'), "cn" => _("Common name"),
'displayName' => _('Display name'), 'company' => _('Company'),
'employeeNumber' => _('Employee number'), 'departmentNumber' => _('Department'),
"gecos" => _("Description"), 'displayName' => _('Display name'),
"gidnumber" => _("GID number"), 'employeeNumber' => _('Employee number'),
"givenname" => _("First name"), "gecos" => _("Description"),
"homedirectory" => _("Home directory"), "gidnumber" => _("GID number"),
"host" => _("Allowed hosts"), "givenname" => _("First name"),
"jpegphoto" => _('Photo'), "homedirectory" => _("Home directory"),
"loginshell" => _("Login shell"), "host" => _("Allowed hosts"),
"mail" => _("Email"), "jpegphoto" => _('Photo'),
'manager' => _('Manager'), "loginshell" => _("Login shell"),
'o' => _('Organisation'), "mail" => _("Email"),
'ou' => _('Organisational unit'), 'manager' => _('Manager'),
'proxyAddresses' => _('Proxy-Addresses'), 'o' => _('Organisation'),
'sambakickofftime' => _('Account expiration date'), 'ou' => _('Organisational unit'),
'shadowexpire' => _('Password expiration'), 'proxyAddresses' => _('Proxy-Addresses'),
"sn" => _("Last name"), 'sambakickofftime' => _('Account expiration date'),
'streetAddress' => _('Street'), 'shadowexpire' => _('Password expiration'),
'telephoneNumber' => _('Telephone number'), "sn" => _("Last name"),
'title' => _('Job title'), 'streetAddress' => _('Street'),
"uid" => _("User name"), 'telephoneNumber' => _('Telephone number'),
"uidnumber" => _("UID number"), 'title' => _('Job title'),
'userPrincipalName' => _('User name'), "uid" => _("User name"),
); "uidnumber" => _("UID number"),
'userPrincipalName' => _('User name'),
));
} }
/** /**