RELEASE 1.1.0.2
This commit is contained in:
parent
f990f72eb5
commit
5c88e0a098
@ -111,8 +111,8 @@ $config->custom->commands['all'] = array(
|
|||||||
|
|
||||||
/* If you want to choose the appearance of the tree, specify a class name which
|
/* If you want to choose the appearance of the tree, specify a class name which
|
||||||
inherits from the Tree class. */
|
inherits from the Tree class. */
|
||||||
// $config->custom->appearance['tree'] = "HTMLTree";
|
// $config->custom->appearance['tree'] = "AJAXTree";
|
||||||
# $config->custom->appearance['tree'] = "PLMTree";
|
# $config->custom->appearance['tree'] = "HTMLTree";
|
||||||
|
|
||||||
/* If you want to customise the entry view/edition, specify your factory name which
|
/* If you want to customise the entry view/edition, specify your factory name which
|
||||||
inherits from the EntryFactory class.
|
inherits from the EntryFactory class.
|
||||||
@ -404,6 +404,7 @@ $friendly_attrs = array();
|
|||||||
|
|
||||||
$friendly_attrs['facsimileTelephoneNumber'] = 'Fax';
|
$friendly_attrs['facsimileTelephoneNumber'] = 'Fax';
|
||||||
$friendly_attrs['telephoneNumber'] = 'Phone';
|
$friendly_attrs['telephoneNumber'] = 'Phone';
|
||||||
|
$friendly_attrs['uid'] = 'User Name';
|
||||||
|
|
||||||
/*********************************************/
|
/*********************************************/
|
||||||
/* Support for attrs display order */
|
/* Support for attrs display order */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/add_attr.php,v 1.20 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/add_attr.php,v 1.20.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds an attribute/value pair to an object
|
* Adds an attribute/value pair to an object
|
||||||
@ -21,7 +21,7 @@ require './common.php';
|
|||||||
if ($ldapserver->isReadOnly())
|
if ($ldapserver->isReadOnly())
|
||||||
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('attribute_add'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('add attribute')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('add attribute')));
|
||||||
|
|
||||||
$entry['val'] = get_request('val','POST');
|
$entry['val'] = get_request('val','POST');
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/add_attr_form.php,v 1.16 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/add_attr_form.php,v 1.16.2.2 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Displays a form for adding an attribute/value to an LDAP entry.
|
* Displays a form for adding an attribute/value to an LDAP entry.
|
||||||
@ -85,9 +85,9 @@ if (is_array($ldap['attrs']['avail']) && count($ldap['attrs']['avail']) > 0) {
|
|||||||
foreach ($ldap['attrs']['avail'] as $a) {
|
foreach ($ldap['attrs']['avail'] as $a) {
|
||||||
|
|
||||||
# is there a user-friendly translation available for this attribute?
|
# is there a user-friendly translation available for this attribute?
|
||||||
if (isset($_SESSION['plaConfig']->friendly_attrs[strtolower($a)])) {
|
if ($_SESSION[APPCONFIG]->haveFriendlyName($a)) {
|
||||||
$attr_display = sprintf('%s (%s)',
|
$attr_display = sprintf('%s (%s)',
|
||||||
htmlspecialchars($_SESSION['plaConfig']->friendly_attrs[strtolower($a)]),
|
htmlspecialchars($_SESSION[APPCONFIG]->getFriendlyName($a)),
|
||||||
htmlspecialchars($a));
|
htmlspecialchars($a));
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
@ -129,9 +129,9 @@ if (count($ldap['binattrs']['avail']) > 0) {
|
|||||||
foreach ($ldap['binattrs']['avail'] as $a) {
|
foreach ($ldap['binattrs']['avail'] as $a) {
|
||||||
|
|
||||||
# is there a user-friendly translation available for this attribute?
|
# is there a user-friendly translation available for this attribute?
|
||||||
if (isset($_SESSION['plaConfig']->friendly_attrs[strtolower($a)])) {
|
if ($_SESSION[APPCONFIG]->haveFriendlyName($a)) {
|
||||||
$attr_display = sprintf('%s (%s)',
|
$attr_display = sprintf('%s (%s)',
|
||||||
htmlspecialchars($_SESSION['plaConfig']->friendly_attrs[strtolower($a)]),
|
htmlspecialchars($_SESSION[APPCONFIG]->getFriendlyName($a)),
|
||||||
htmlspecialchars($a));
|
htmlspecialchars($a));
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/add_value.php,v 1.21 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/add_value.php,v 1.21.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds a value to an attribute for a given dn.
|
* Adds a value to an attribute for a given dn.
|
||||||
@ -20,7 +20,7 @@
|
|||||||
if ($ldapserver->isReadOnly())
|
if ($ldapserver->isReadOnly())
|
||||||
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('attribute_add_value'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add_value'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('add attribute value')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('add attribute value')));
|
||||||
|
|
||||||
# The DN and ATTR we are working with.
|
# The DN and ATTR we are working with.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/add_value_form.php,v 1.39 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/add_value_form.php,v 1.39.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Displays a form to allow the user to enter a new value to add
|
* Displays a form to allow the user to enter a new value to add
|
||||||
@ -48,7 +48,7 @@ if ($tree) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// define the template of the entry if possible
|
// define the template of the entry if possible
|
||||||
eval('$reader = new '.$_SESSION['plaConfig']->GetValue('appearance','entry_reader').'($ldapserver);');
|
eval('$reader = new '.$_SESSION[APPCONFIG]->GetValue('appearance','entry_reader').'($ldapserver);');
|
||||||
$reader->visit('Start', $entry['ldap']);
|
$reader->visit('Start', $entry['ldap']);
|
||||||
|
|
||||||
if (! $entry['ldap'] || $entry['ldap']->isReadOnly())
|
if (! $entry['ldap'] || $entry['ldap']->isReadOnly())
|
||||||
@ -58,12 +58,12 @@ if (! $entry['ldap'] || $entry['ldap']->isReadOnly())
|
|||||||
/* attribute values */
|
/* attribute values */
|
||||||
/*********************/
|
/*********************/
|
||||||
|
|
||||||
eval('$writer = new '.$_SESSION['plaConfig']->GetValue('appearance','entry_writer').'($ldapserver);');
|
eval('$writer = new '.$_SESSION[APPCONFIG]->GetValue('appearance','entry_writer').'($ldapserver);');
|
||||||
|
|
||||||
$ldap['attr'] = $entry['ldap']->getAttribute($entry['attr']['string']);
|
$ldap['attr'] = $entry['ldap']->getAttribute($entry['attr']['string']);
|
||||||
if (!$ldap['attr']) {
|
if (!$ldap['attr']) {
|
||||||
// define a new attribute for the entry
|
// define a new attribute for the entry
|
||||||
$attributefactoryclass = $_SESSION['plaConfig']->GetValue('appearance','attribute_factory');
|
$attributefactoryclass = $_SESSION[APPCONFIG]->GetValue('appearance','attribute_factory');
|
||||||
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
||||||
$ldap['attr'] = $attribute_factory->newAttribute($entry['attr']['string'], array());
|
$ldap['attr'] = $attribute_factory->newAttribute($entry['attr']['string'], array());
|
||||||
$ldap['attr']->setEntry($entry['ldap']);
|
$ldap['attr']->setEntry($entry['ldap']);
|
||||||
@ -72,9 +72,9 @@ $ldap['count'] = $ldap['attr']->getValueCount();
|
|||||||
|
|
||||||
if ($ldap['attr']->isReadOnly())
|
if ($ldap['attr']->isReadOnly())
|
||||||
pla_error(sprintf(_('The attribute (%s) is in readonly mode.'),$entry['attr']['html']),null,-1,true);
|
pla_error(sprintf(_('The attribute (%s) is in readonly mode.'),$entry['attr']['html']),null,-1,true);
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('attribute_add_value'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add_value'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('add attribute value')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('add attribute value')));
|
||||||
if (($ldap['attr']->getValueCount() == 0) && ! $_SESSION['plaConfig']->isCommandAvailable('attribute_add'))
|
if (($ldap['attr']->getValueCount() == 0) && ! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('add attribute')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('add attribute')));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -197,7 +197,7 @@ if ($entry['attr']['oclass']) {
|
|||||||
echo '</td></tr></table>';
|
echo '</td></tr></table>';
|
||||||
echo '<br />';
|
echo '<br />';
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->GetValue('appearance','show_hints'))
|
if ($_SESSION[APPCONFIG]->GetValue('appearance','show_hints'))
|
||||||
printf('<small><br /><img src="images/light.png" alt="Hint" /><span class="hint">%s</span></small>',
|
printf('<small><br /><img src="images/light.png" alt="Hint" /><span class="hint">%s</span></small>',
|
||||||
_('Note: You may be required to enter new attributes that these objectClass(es) require'));
|
_('Note: You may be required to enter new attributes that these objectClass(es) require'));
|
||||||
echo '</form>';
|
echo '</form>';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/cmd.php,v 1.3.2.1 2007/12/21 12:11:55 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/cmd.php,v 1.3.2.2 2007/12/24 10:45:57 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -7,47 +7,48 @@
|
|||||||
|
|
||||||
require_once './common.php';
|
require_once './common.php';
|
||||||
|
|
||||||
$body = new block();
|
$www['cmd'] = get_request('cmd','REQUEST');
|
||||||
$file = '';
|
$www['meth'] = get_request('meth','REQUEST');
|
||||||
$cmd = get_request('cmd','REQUEST');
|
|
||||||
$meth = get_request('meth','REQUEST');
|
|
||||||
|
|
||||||
ob_start();
|
ob_start();
|
||||||
|
|
||||||
if (is_null($cmd)) {
|
if (is_null($www['cmd']))
|
||||||
$cmd = 'welcome';
|
$www['cmd'] = 'welcome';
|
||||||
}
|
|
||||||
|
|
||||||
switch ($cmd) {
|
switch ($www['cmd']) {
|
||||||
case '_debug' :
|
case '_debug' :
|
||||||
debug_dump($_REQUEST,1);
|
debug_dump($_REQUEST,1);
|
||||||
$file = '';
|
$file = '';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default :
|
default :
|
||||||
if (file_exists(HOOKSDIR.$cmd.'.php'))
|
if (defined('HOOKSDIR') && file_exists(HOOKSDIR.$www['cmd'].'.php'))
|
||||||
$file = HOOKSDIR.$cmd.'.php';
|
$file = HOOKSDIR.$www['cmd'].'.php';
|
||||||
elseif (file_exists(HTDOCDIR.$cmd.'.php'))
|
|
||||||
$file = HTDOCDIR.$cmd.'.php';
|
elseif (defined('HTDOCDIR') && file_exists(HTDOCDIR.$www['cmd'].'.php'))
|
||||||
|
$file = HTDOCDIR.$www['cmd'].'.php';
|
||||||
|
|
||||||
else
|
else
|
||||||
$file = 'welcome.php';
|
$file = 'welcome.php';
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($file) {
|
if (DEBUG_ENABLED)
|
||||||
include $file;
|
debug_log('Ready to render page for command [%s,%s].',128,__FILE__,__LINE__,__METHOD__,$www['cmd'],$file);
|
||||||
}
|
|
||||||
|
|
||||||
$body->SetBody(ob_get_contents());
|
# Create page.
|
||||||
|
$www['page'] = new page($ldapserver->server_id);
|
||||||
|
|
||||||
|
if ($file)
|
||||||
|
include $file;
|
||||||
|
|
||||||
|
# Capture the output and put into the body of the page.
|
||||||
|
$www['body'] = new block();
|
||||||
|
$www['body']->SetBody(ob_get_contents());
|
||||||
|
$www['page']->block_add('body',$www['body']);
|
||||||
ob_end_clean();
|
ob_end_clean();
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
if ($www['meth'] == 'get_body')
|
||||||
debug_log('Ready to render page for command [%s,%s].',128,__FILE__,__LINE__,__METHOD__,$cmd,$file);
|
$www['page']->body(true);
|
||||||
|
|
||||||
$www = new page($ldapserver->server_id);
|
|
||||||
$www->block_add('body',$body);
|
|
||||||
|
|
||||||
if ($meth == 'get_body')
|
|
||||||
$www->body(true);
|
|
||||||
else
|
else
|
||||||
$www->display();
|
$www['page']->display();
|
||||||
?>
|
?>
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/common.php,v 1.3.2.1 2007/12/21 12:11:55 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/common.php,v 1.3.2.3 2007/12/26 08:21:10 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@define('LIBDIR',sprintf('%s/',realpath('../lib/')));
|
# This is just here to provide a convenient link back to the proper common.php
|
||||||
|
if (! defined('LIBDIR'))
|
||||||
|
define('LIBDIR',sprintf('%s/',realpath('../lib/')));
|
||||||
require_once LIBDIR.'common.php';
|
require_once LIBDIR.'common.php';
|
||||||
?>
|
?>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/compare.php,v 1.16 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/compare.php,v 1.16.2.2 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Compare two DNs - the destination DN is editable.
|
* Compare two DNs - the destination DN is editable.
|
||||||
@ -20,11 +20,11 @@ $encoded_dn_dst = rawurlencode($dn_dst);
|
|||||||
$server_id_src = (isset($_POST['server_id_src']) ? $_POST['server_id_src'] : '');
|
$server_id_src = (isset($_POST['server_id_src']) ? $_POST['server_id_src'] : '');
|
||||||
$server_id_dst = (isset($_POST['server_id_dst']) ? $_POST['server_id_dst'] : '');
|
$server_id_dst = (isset($_POST['server_id_dst']) ? $_POST['server_id_dst'] : '');
|
||||||
|
|
||||||
$ldapserver_src = $_SESSION['plaConfig']->ldapservers->Instance($server_id_src);
|
$ldapserver_src = $_SESSION[APPCONFIG]->ldapservers->Instance($server_id_src);
|
||||||
if (! $ldapserver_src->haveAuthInfo())
|
if (! $ldapserver_src->haveAuthInfo())
|
||||||
pla_error(_('Not enough information to login to server. Please check your configuration.'));
|
pla_error(_('Not enough information to login to server. Please check your configuration.'));
|
||||||
|
|
||||||
$ldapserver_dst = $_SESSION['plaConfig']->ldapservers->Instance($server_id_dst);
|
$ldapserver_dst = $_SESSION[APPCONFIG]->ldapservers->Instance($server_id_dst);
|
||||||
if (! $ldapserver_src->haveAuthInfo())
|
if (! $ldapserver_src->haveAuthInfo())
|
||||||
pla_error(_('Not enough information to login to server. Please check your configuration.'));
|
pla_error(_('Not enough information to login to server. Please check your configuration.'));
|
||||||
|
|
||||||
@ -33,10 +33,8 @@ if (! $ldapserver_src->dnExists($dn_src))
|
|||||||
if (! $ldapserver_dst->dnExists($dn_dst))
|
if (! $ldapserver_dst->dnExists($dn_dst))
|
||||||
pla_error(sprintf(_('No such entry: %s'),pretty_print_dn($dn_dst)));
|
pla_error(sprintf(_('No such entry: %s'),pretty_print_dn($dn_dst)));
|
||||||
|
|
||||||
$_SESSION['plaConfig']->friendly_attrs = process_friendly_attr_table();
|
$attrs_src = $ldapserver_src->getDNAttrs($dn_src,false,$_SESSION[APPCONFIG]->GetValue('deref','view'));
|
||||||
|
$attrs_dst = $ldapserver_dst->getDNAttrs($dn_dst,false,$_SESSION[APPCONFIG]->GetValue('deref','view'));
|
||||||
$attrs_src = $ldapserver_src->getDNAttrs($dn_src,false,$_SESSION['plaConfig']->GetValue('deref','view'));
|
|
||||||
$attrs_dst = $ldapserver_dst->getDNAttrs($dn_dst,false,$_SESSION['plaConfig']->GetValue('deref','view'));
|
|
||||||
|
|
||||||
# Get a list of all attributes.
|
# Get a list of all attributes.
|
||||||
$attrs_all = array_keys($attrs_src);
|
$attrs_all = array_keys($attrs_src);
|
||||||
@ -118,13 +116,13 @@ foreach ($attrs_all as $attr) {
|
|||||||
$required_note = '';
|
$required_note = '';
|
||||||
|
|
||||||
# is there a user-friendly translation available for this attribute?
|
# is there a user-friendly translation available for this attribute?
|
||||||
if (isset($_SESSION['plaConfig']->friendly_attrs[strtolower($attr)])) {
|
if ($_SESSION[APPCONFIG]->haveFriendlyName($attr)) {
|
||||||
$attr_display = $_SESSION['plaConfig']->friendly_attrs[strtolower($attr)];
|
$attr_display = $_SESSION[APPCONFIG]->getFriendlyName($attr);
|
||||||
$attr_note = sprintf('<acronym title="%s">alias</acronym>',sprintf(_('Note: \'%s\' is an alias for \'%s\''),$attr_display,$attr));
|
$attr_note = sprintf('<acronym title="%s: \'%s\' %s \'%s\'">%s</acronym>',_('Note'),$attr_display,_('is an alias for'),$attr,_('alias'));
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$attr_note = '';
|
|
||||||
$attr_display = $attr;
|
$attr_display = $attr;
|
||||||
|
$attr_note = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
# is this attribute required by an objectClass?
|
# is this attribute required by an objectClass?
|
||||||
@ -311,7 +309,7 @@ foreach ($attrs_all as $attr) {
|
|||||||
if (trim($val) == "")
|
if (trim($val) == "")
|
||||||
echo "<span style=\"color:red\">[" . _('empty') . "]</span><br />\n";
|
echo "<span style=\"color:red\">[" . _('empty') . "]</span><br />\n";
|
||||||
|
|
||||||
elseif (0 == strcasecmp($attr,'userPassword') && $_SESSION['plaConfig']->GetValue('appearance','obfuscate_password_display'))
|
elseif (0 == strcasecmp($attr,'userPassword') && $_SESSION[APPCONFIG]->GetValue('appearance','obfuscate_password_display'))
|
||||||
echo preg_replace('/./','*',$val) . "<br />";
|
echo preg_replace('/./','*',$val) . "<br />";
|
||||||
|
|
||||||
else
|
else
|
||||||
@ -320,7 +318,7 @@ foreach ($attrs_all as $attr) {
|
|||||||
|
|
||||||
// @todo: redundant - $vals is always an array.
|
// @todo: redundant - $vals is always an array.
|
||||||
} else {
|
} else {
|
||||||
if (0 == strcasecmp($attr,'userPassword') && $_SESSION['plaConfig']->GetValue('appearance','obfuscate_password_display'))
|
if (0 == strcasecmp($attr,'userPassword') && $_SESSION[APPCONFIG]->GetValue('appearance','obfuscate_password_display'))
|
||||||
echo preg_replace('/./','*',$vals) . "<br />";
|
echo preg_replace('/./','*',$vals) . "<br />";
|
||||||
else
|
else
|
||||||
echo $vals . "<br />";
|
echo $vals . "<br />";
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/copy.php,v 1.44 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/copy.php,v 1.44.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Copies a given object to create a new one.
|
* Copies a given object to create a new one.
|
||||||
@ -16,14 +16,14 @@
|
|||||||
|
|
||||||
require './common.php';
|
require './common.php';
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('entry_move'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('entry_move'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('copy entry')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('copy entry')));
|
||||||
|
|
||||||
$entry['src']['id'] = get_request('server_id');
|
$entry['src']['id'] = get_request('server_id');
|
||||||
$entry['dst']['id'] = get_request('dest_server_id');
|
$entry['dst']['id'] = get_request('dest_server_id');
|
||||||
|
|
||||||
$entry['src']['ldapserver'] = $_SESSION['plaConfig']->ldapservers->Instance($entry['src']['id']);
|
$entry['src']['ldapserver'] = $_SESSION[APPCONFIG]->ldapservers->Instance($entry['src']['id']);
|
||||||
$entry['dst']['ldapserver'] = $_SESSION['plaConfig']->ldapservers->Instance($entry['dst']['id']);
|
$entry['dst']['ldapserver'] = $_SESSION[APPCONFIG]->ldapservers->Instance($entry['dst']['id']);
|
||||||
|
|
||||||
if ($entry['dst']['ldapserver']->isReadOnly())
|
if ($entry['dst']['ldapserver']->isReadOnly())
|
||||||
pla_error(_('Destination server is currently READ-ONLY.'));
|
pla_error(_('Destination server is currently READ-ONLY.'));
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/copy_form.php,v 1.30 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/copy_form.php,v 1.30.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Copies a given object to create a new one.
|
* Copies a given object to create a new one.
|
||||||
@ -98,7 +98,7 @@ echo "\n";
|
|||||||
echo '</table></form>';
|
echo '</table></form>';
|
||||||
echo "\n";
|
echo "\n";
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->GetValue('appearance','show_hints'))
|
if ($_SESSION[APPCONFIG]->GetValue('appearance','show_hints'))
|
||||||
printf('<small><img src="images/light.png" alt="Light" /><span class="hint">%s</span></small>',_('Hint: Copying between different servers only works if there are no schema violations'));
|
printf('<small><img src="images/light.png" alt="Light" /><span class="hint">%s</span></small>',_('Hint: Copying between different servers only works if there are no schema violations'));
|
||||||
|
|
||||||
echo '</center>';
|
echo '</center>';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/create.php,v 1.48 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/create.php,v 1.48.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new object.
|
* Creates a new object.
|
||||||
@ -21,16 +21,16 @@ require './common.php';
|
|||||||
if ($ldapserver->isReadOnly())
|
if ($ldapserver->isReadOnly())
|
||||||
pla_error(_('You cannot perform updates while server is in read-only mode'), null, -1, true);
|
pla_error(_('You cannot perform updates while server is in read-only mode'), null, -1, true);
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('entry_create'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('entry_create'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('create entry')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('create entry')));
|
||||||
|
|
||||||
$rdn_attr = isset($_POST['rdn_attribute']) ? $_POST['rdn_attribute'] : null;
|
$rdn_attr = isset($_POST['rdn_attribute']) ? $_POST['rdn_attribute'] : null;
|
||||||
|
|
||||||
$entryfactoryclass = $_SESSION['plaConfig']->GetValue('appearance','entry_factory');
|
$entryfactoryclass = $_SESSION[APPCONFIG]->GetValue('appearance','entry_factory');
|
||||||
eval('$entry_factory = new '.$entryfactoryclass.'();');
|
eval('$entry_factory = new '.$entryfactoryclass.'();');
|
||||||
$entry = $entry_factory->newCreatingEntry('');
|
$entry = $entry_factory->newCreatingEntry('');
|
||||||
|
|
||||||
eval('$reader = new '.$_SESSION['plaConfig']->GetValue('appearance', 'entry_reader').'($ldapserver);');
|
eval('$reader = new '.$_SESSION[APPCONFIG]->GetValue('appearance', 'entry_reader').'($ldapserver);');
|
||||||
$entry->accept($reader);
|
$entry->accept($reader);
|
||||||
|
|
||||||
$container = $entry->getContainer();
|
$container = $entry->getContainer();
|
||||||
@ -94,7 +94,7 @@ if (run_hook('pre_entry_create',array('server_id'=>$ldapserver->server_id,'dn'=>
|
|||||||
if ($add_result) {
|
if ($add_result) {
|
||||||
run_hook('post_entry_create',array('server_id'=>$ldapserver->server_id,'dn'=>$new_dn,'attrs'=>$new_entry));
|
run_hook('post_entry_create',array('server_id'=>$ldapserver->server_id,'dn'=>$new_dn,'attrs'=>$new_entry));
|
||||||
|
|
||||||
$action_number = $_SESSION['plaConfig']->GetValue('appearance', 'action_after_creation');
|
$action_number = $_SESSION[APPCONFIG]->GetValue('appearance', 'action_after_creation');
|
||||||
|
|
||||||
$container = get_container($new_dn,false);
|
$container = get_container($new_dn,false);
|
||||||
//$container_container = get_container($container);
|
//$container_container = get_container($container);
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/css/style.css,v 1.48 2007/12/15 07:50:30 wurley Exp $ */
|
/* $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/css/style.css,v 1.48.2.1 2007/12/24 06:41:51 wurley Exp $ */
|
||||||
|
|
||||||
/* Global Page */
|
/* Global Page */
|
||||||
table.page {
|
table.page {
|
||||||
@ -82,9 +82,13 @@ table.page table.control a:hover {
|
|||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
table.page table.control tr td.spacer {
|
||||||
|
width: 20%;
|
||||||
|
}
|
||||||
|
|
||||||
table.page table.control tr td.logo {
|
table.page table.control tr td.logo {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
width: 20%;
|
width: 10%;
|
||||||
}
|
}
|
||||||
|
|
||||||
table.control td.logo img.logo {
|
table.control td.logo img.logo {
|
||||||
@ -706,6 +710,19 @@ table.login {
|
|||||||
background-color: #ddddff;
|
background-color: #ddddff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#generic {
|
||||||
|
background-color: #fafaff;
|
||||||
|
padding-left: 17px;
|
||||||
|
}
|
||||||
|
#generic:focus {
|
||||||
|
background-color: #ffffba;
|
||||||
|
}
|
||||||
|
|
||||||
|
#generic:disabled {
|
||||||
|
background-color: #ddddff;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Search Box */
|
/* Search Box */
|
||||||
table.search {
|
table.search {
|
||||||
background-color: #eeeeff;
|
background-color: #eeeeff;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/delete.php,v 1.27 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/delete.php,v 1.27.2.2 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Deletes a DN and presents a "job's done" message.
|
* Deletes a DN and presents a "job's done" message.
|
||||||
@ -17,7 +17,7 @@ require './common.php';
|
|||||||
if ($ldapserver->isReadOnly())
|
if ($ldapserver->isReadOnly())
|
||||||
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('entry_delete', 'simple_delete'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('entry_delete', 'simple_delete'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete entry')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete entry')));
|
||||||
|
|
||||||
$entry['dn'] = get_request('dn');
|
$entry['dn'] = get_request('dn');
|
||||||
@ -43,7 +43,7 @@ if ($result) {
|
|||||||
'title'=>_('Delete DN'),
|
'title'=>_('Delete DN'),
|
||||||
'body'=>_('Successfully deleted DN ').sprintf('<b>%s</b>',$entry['dn']),
|
'body'=>_('Successfully deleted DN ').sprintf('<b>%s</b>',$entry['dn']),
|
||||||
'type'=>'info'),
|
'type'=>'info'),
|
||||||
'index.php');
|
sprintf('index.php?server_id=%s',$ldapserver->server_id));
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
pla_error(sprintf(_('Could not delete the entry: %s'),'<b>'.pretty_print_dn($entry['dn']).'</b>'),
|
pla_error(sprintf(_('Could not delete the entry: %s'),'<b>'.pretty_print_dn($entry['dn']).'</b>'),
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/delete_attr.php,v 1.16 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/delete_attr.php,v 1.16.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Deletes an attribute from an entry with NO confirmation.
|
* Deletes an attribute from an entry with NO confirmation.
|
||||||
@ -17,7 +17,7 @@ require './common.php';
|
|||||||
if ($ldapserver->isReadOnly())
|
if ($ldapserver->isReadOnly())
|
||||||
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('attribute_delete'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_delete'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete attribute')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete attribute')));
|
||||||
|
|
||||||
$entry['dn']['string'] = get_request('dn');
|
$entry['dn']['string'] = get_request('dn');
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/download_binary_attr.php,v 1.15 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/download_binary_attr.php,v 1.15.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -25,7 +25,7 @@ $value_num = isset($_GET['value_num']) ? $_GET['value_num'] : null;
|
|||||||
if (! $ldapserver->dnExists($dn))
|
if (! $ldapserver->dnExists($dn))
|
||||||
pla_error(sprintf(_('No such entry: %s'),pretty_print_dn($dn)));
|
pla_error(sprintf(_('No such entry: %s'),pretty_print_dn($dn)));
|
||||||
|
|
||||||
$search = $ldapserver->search(null,$dn,'(objectClass=*)',array($attr),'base',false,$_SESSION['plaConfig']->GetValue('deref','view'));
|
$search = $ldapserver->search(null,$dn,'(objectClass=*)',array($attr),'base',false,$_SESSION[APPCONFIG]->GetValue('deref','view'));
|
||||||
|
|
||||||
# Dump the binary data to the browser
|
# Dump the binary data to the browser
|
||||||
if (ob_get_level()) ob_end_clean();
|
if (ob_get_level()) ob_end_clean();
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/entry_chooser.php,v 1.31 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/entry_chooser.php,v 1.31.2.2 2007/12/29 08:24:10 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Display a selection (popup window) to pick a DN.
|
* Display a selection (popup window) to pick a DN.
|
||||||
@ -40,12 +40,12 @@ if (isset($ldapserver) && ! is_null($entry['container'])) {
|
|||||||
if (! $ldapserver->haveAuthInfo())
|
if (! $ldapserver->haveAuthInfo())
|
||||||
pla_error(_('Not enough information to login to server. Please check your configuration.'));
|
pla_error(_('Not enough information to login to server. Please check your configuration.'));
|
||||||
|
|
||||||
$entry['children'] = $ldapserver->getContainerContents($entry['container'],0,'(objectClass=*)',$_SESSION['plaConfig']->GetValue('deref','tree'));
|
$entry['children'] = $ldapserver->getContainerContents($entry['container'],0,'(objectClass=*)',$_SESSION[APPCONFIG]->GetValue('deref','tree'));
|
||||||
sort($entry['children']);
|
sort($entry['children']);
|
||||||
|
|
||||||
foreach ($ldapserver->getBaseDN() as $base_dn) {
|
foreach ($ldapserver->getBaseDN() as $base_dn) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('entry_chooser.php: Comparing BaseDN [%s] with container [%s]',64,$base_dn,$entry['container']);
|
debug_log('Comparing BaseDN [%s] with container [%s]',64,__FILE__,__LINE__,__METHOD__,$base_dn,$entry['container']);
|
||||||
|
|
||||||
if (! pla_compare_dns($entry['container'],$base_dn)) {
|
if (! pla_compare_dns($entry['container'],$base_dn)) {
|
||||||
$parent_container = false;
|
$parent_container = false;
|
||||||
@ -85,9 +85,9 @@ if (isset($ldapserver) && ! is_null($entry['container'])) {
|
|||||||
|
|
||||||
/* draw the root of the selection tree (ie, list all the servers) */
|
/* draw the root of the selection tree (ie, list all the servers) */
|
||||||
} else {
|
} else {
|
||||||
foreach ($_SESSION['plaConfig']->ldapservers->GetServerList() as $id) {
|
foreach ($_SESSION[APPCONFIG]->ldapservers->GetServerList() as $id) {
|
||||||
|
|
||||||
$ldapserver = $_SESSION['plaConfig']->ldapservers->Instance($id);
|
$ldapserver = $_SESSION[APPCONFIG]->ldapservers->Instance($id);
|
||||||
|
|
||||||
if ($ldapserver->isVisible()) {
|
if ($ldapserver->isVisible()) {
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/export.php,v 1.18 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/export.php,v 1.18.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -14,7 +14,7 @@ ini_set('session.cache_limiter','');
|
|||||||
|
|
||||||
require LIBDIR.'export_functions.php';
|
require LIBDIR.'export_functions.php';
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('export'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('export'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('export')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('export')));
|
||||||
|
|
||||||
$entry['base_dn'] = get_request('dn');
|
$entry['base_dn'] = get_request('dn');
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/header.php,v 1.27 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/header.php,v 1.27.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -9,7 +9,7 @@ require_once LIBDIR.'./common.php';
|
|||||||
|
|
||||||
/* We want to get $language into scope in case we were included
|
/* We want to get $language into scope in case we were included
|
||||||
from within a function */
|
from within a function */
|
||||||
$language = isset($_SESSION['plaConfig']) ? $language = $_SESSION['plaConfig']->GetValue('appearance','language') : 'auto';
|
$language = isset($_SESSION[APPCONFIG]) ? $language = $_SESSION[APPCONFIG]->GetValue('appearance','language') : 'auto';
|
||||||
|
|
||||||
# text/xml won't work with MSIE, but is very useful for debugging xhtml code.
|
# text/xml won't work with MSIE, but is very useful for debugging xhtml code.
|
||||||
# header('Content-type: text/xml; charset="UTF-8"');
|
# header('Content-type: text/xml; charset="UTF-8"');
|
||||||
@ -26,13 +26,13 @@ echo "\n\n";
|
|||||||
|
|
||||||
echo '<head>';
|
echo '<head>';
|
||||||
|
|
||||||
if (isset($_SESSION['plaConfig']) && $pagetitle = $_SESSION['plaConfig']->GetValue('appearance','page_title'))
|
if (isset($_SESSION[APPCONFIG]) && $pagetitle = $_SESSION[APPCONFIG]->GetValue('appearance','page_title'))
|
||||||
printf('<title>phpLDAPadmin - %s</title>',$pagetitle);
|
printf('<title>phpLDAPadmin - %s</title>',$pagetitle);
|
||||||
else
|
else
|
||||||
echo '<title>phpLDAPadmin</title>';
|
echo '<title>phpLDAPadmin</title>';
|
||||||
|
|
||||||
if (isset($_SESSION['plaConfig']))
|
if (isset($_SESSION[APPCONFIG]))
|
||||||
$css = $_SESSION['plaConfig']->GetValue('appearance','stylesheet');
|
$css = $_SESSION[APPCONFIG]->GetValue('appearance','stylesheet');
|
||||||
else
|
else
|
||||||
$css = 'style.css';
|
$css = 'style.css';
|
||||||
printf('<link type="text/css" rel="stylesheet" href="%s%s" media="screen" />','../htdocs/'.CSSDIR,$css);
|
printf('<link type="text/css" rel="stylesheet" href="%s%s" media="screen" />','../htdocs/'.CSSDIR,$css);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/index.php,v 1.49 2007/12/15 13:17:43 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/index.php,v 1.49.2.3 2007/12/30 02:06:15 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -14,9 +14,9 @@ PHP is not installed on your web server!!!
|
|||||||
</pre>
|
</pre>
|
||||||
*******************************************/
|
*******************************************/
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* We will perform some sanity checking here, since this file is normally loaded first when users
|
* We will perform some sanity checking here, since this file is normally loaded first when users
|
||||||
* first setup PLA.
|
* first access the application.
|
||||||
*/
|
*/
|
||||||
define('LIBDIR',sprintf('%s/',realpath('../lib/')));
|
define('LIBDIR',sprintf('%s/',realpath('../lib/')));
|
||||||
ini_set('display_errors',1);
|
ini_set('display_errors',1);
|
||||||
@ -33,64 +33,72 @@ if (! is_readable(LIBDIR.'functions.php')) {
|
|||||||
if (ob_get_level()) ob_end_clean();
|
if (ob_get_level()) ob_end_clean();
|
||||||
die(sprintf("Cannot read the file '<b>%sfunctions.php</b>' its permissions may be too strict.",LIBDIR));
|
die(sprintf("Cannot read the file '<b>%sfunctions.php</b>' its permissions may be too strict.",LIBDIR));
|
||||||
}
|
}
|
||||||
if (ob_get_level()) ob_end_clean();
|
|
||||||
|
if (ob_get_level())
|
||||||
|
ob_end_clean();
|
||||||
|
|
||||||
require LIBDIR.'functions.php';
|
require LIBDIR.'functions.php';
|
||||||
$config_file = CONFDIR.'config.php';
|
|
||||||
|
# Define the path to our configuration file.
|
||||||
|
if (defined('CONFDIR'))
|
||||||
|
$app['config_file'] = CONFDIR.'config.php';
|
||||||
|
else
|
||||||
|
$app['config_file'] = 'config.php';
|
||||||
|
|
||||||
# Make sure this PHP install has gettext, we use it for language translation
|
# Make sure this PHP install has gettext, we use it for language translation
|
||||||
if (! extension_loaded('gettext'))
|
if (! extension_loaded('gettext'))
|
||||||
pla_error('<p>Your install of PHP appears to be missing GETTEXT support.</p><p>GETTEXT is used for language translation.</p><p>Please install GETTEXT support before using phpLDAPadmin.<br /><small>(Dont forget to restart your web server afterwards)</small></p>');
|
pla_error('<p>Your install of PHP appears to be missing GETTEXT support.</p><p>GETTEXT is used for language translation.</p><p>Please install GETTEXT support before using phpLDAPadmin.<br /><small>(Dont forget to restart your web server afterwards)</small></p>');
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* Helper functions.
|
* Helper functions.
|
||||||
* Our required helper functions are defined in functions.php
|
* Our required helper functions are defined in functions.php
|
||||||
*/
|
*/
|
||||||
foreach ($pla_function_files as $file_name ) {
|
if (isset($app['function_files']) && is_array($app['function_files']))
|
||||||
if (! file_exists($file_name))
|
foreach ($app['function_files'] as $file_name ) {
|
||||||
pla_error(sprintf('Fatal error: Required file "%s" does not exist.',$file_name));
|
if (! file_exists($file_name))
|
||||||
|
pla_error(sprintf('Fatal error: Required file "%s" does not exist.',$file_name));
|
||||||
|
|
||||||
if (! is_readable($file_name))
|
if (! is_readable($file_name))
|
||||||
pla_error(sprintf('Fatal error: Cannot read the file "%s", its permissions may be too strict.',$file_name));
|
pla_error(sprintf('Fatal error: Cannot read the file "%s", its permissions may be too strict.',$file_name));
|
||||||
|
|
||||||
ob_start();
|
ob_start();
|
||||||
require $file_name;
|
require $file_name;
|
||||||
if (ob_get_level()) ob_end_clean();
|
if (ob_get_level()) ob_end_clean();
|
||||||
}
|
}
|
||||||
|
|
||||||
# Configuration File check
|
# Configuration File check
|
||||||
if (! file_exists($config_file)) {
|
if (! file_exists($app['config_file'])) {
|
||||||
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"';
|
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"';
|
||||||
echo '"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">';
|
echo '"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">';
|
||||||
|
|
||||||
echo '<html>';
|
echo '<html>';
|
||||||
echo '<head>';
|
echo '<head>';
|
||||||
printf('<title>phpLDAPadmin - %s</title>',pla_version());
|
printf('<title>%s - %s</title>','phpLDAPadmin',pla_version());
|
||||||
echo '<link type="text/css" rel="stylesheet" href="css/style.css" />';
|
echo '<link type="text/css" rel="stylesheet" href="css/style.css" />';
|
||||||
echo '</head>';
|
echo '</head>';
|
||||||
|
|
||||||
echo '<body>';
|
echo '<body>';
|
||||||
echo '<h3 class="title">Configure phpLDAPadmin</h3>';
|
printf('<h3 class="title">Configure %s</h3>','phpLDAPadmin');
|
||||||
echo '<br /><br />';
|
echo '<br /><br />';
|
||||||
|
|
||||||
echo '<center>';
|
echo '<center>';
|
||||||
printf(_('You need to configure phpLDAPadmin. Edit the file "%s" to do so. An example config file is provided in "%s.example".'),$config_file,$config_file);
|
printf(_('You need to configure %s. Edit the file "%s" to do so. An example config file is provided in "%s.example".'),'phpLDAPadmin',$app['config_file'],$app['config_file']);
|
||||||
echo '</center>';
|
echo '</center>';
|
||||||
|
|
||||||
echo '</body>';
|
echo '</body>';
|
||||||
echo '</html>';
|
echo '</html>';
|
||||||
die();
|
die();
|
||||||
|
|
||||||
} elseif (! is_readable($config_file)) {
|
} elseif (! is_readable($app['config_file'])) {
|
||||||
pla_error(sprintf('Fatal error: Cannot read your configuration file "%s", its permissions may be too strict.',$config_file));
|
pla_error(sprintf('Fatal error: Cannot read your configuration file "%s", its permissions may be too strict.',$app['config_file']));
|
||||||
}
|
}
|
||||||
|
|
||||||
# If our config file fails the sanity check, then stop now.
|
# If our config file fails the sanity check, then stop now.
|
||||||
if (! check_config($config_file)) {
|
if (! check_config($app['config_file'])) {
|
||||||
$www = new page();
|
$www['page'] = new page();
|
||||||
$body = new block();
|
$www['body'] = new block();
|
||||||
$www->block_add('body',$body);
|
$www['page']->block_add('body',$www['body']);
|
||||||
$www->display();
|
$www['page']->display();
|
||||||
|
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/ldif_import.php,v 1.35 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/ldif_import.php,v 1.35.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Imports an LDIF file to the specified server_id.
|
* Imports an LDIF file to the specified server_id.
|
||||||
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
require './common.php';
|
require './common.php';
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('import'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('import'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('import')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('import')));
|
||||||
|
|
||||||
$entry['continuous_mode'] = get_request('continuous_mode') ? true : false;
|
$entry['continuous_mode'] = get_request('continuous_mode') ? true : false;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/login.php,v 1.56 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/login.php,v 1.56.2.2 2007/12/29 08:24:10 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* For servers whose auth_type is set to 'cookie' or 'session'. Pass me the
|
* For servers whose auth_type is set to 'cookie' or 'session'. Pass me the
|
||||||
@ -13,30 +13,29 @@
|
|||||||
|
|
||||||
require './common.php';
|
require './common.php';
|
||||||
|
|
||||||
$dn = get_request('login_dn');
|
$login['val'] = get_request($ldapserver->getLoginAttr());
|
||||||
$pass = get_request('login_pass');
|
$login['pass'] = get_request('login_pass');
|
||||||
$uid = get_request('uid');
|
|
||||||
|
|
||||||
if ($ldapserver->isAnonBindAllowed())
|
if ($ldapserver->isAnonBindAllowed())
|
||||||
$anon_bind = get_request('anonymous_bind') == 'on' ? true : false;
|
$anon_bind = get_request('anonymous_bind') == 'on' ? true : false;
|
||||||
else
|
else
|
||||||
$anon_bind = false;
|
$anon_bind = false;
|
||||||
|
|
||||||
if (! $anon_bind && ! strlen($pass))
|
if (! $anon_bind && ! strlen($login['pass']))
|
||||||
system_message(array(
|
system_message(array(
|
||||||
'title'=>_('Authenticate to server'),
|
'title'=>_('Authenticate to server'),
|
||||||
'body'=>_('You left the password blank.'),
|
'body'=>_('You left the password blank.'),
|
||||||
'type'=>'warn'),
|
'type'=>'warn'),
|
||||||
'cmd.php?cmd=login_form');
|
sprintf('cmd.php?cmd=login_form&server_id=%s',$ldapserver->server_id));
|
||||||
|
|
||||||
$save_auth_type = $ldapserver->auth_type;
|
$save_auth_type = $ldapserver->auth_type;
|
||||||
|
|
||||||
if ($anon_bind) {
|
if ($anon_bind) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Anonymous Login was posted [%s].',64,$anon_bind);
|
debug_log('Anonymous Login was posted [%s].',64,__FILE__,__LINE__,__METHOD__,$anon_bind);
|
||||||
|
|
||||||
$dn = null;
|
$login['dn'] = null;
|
||||||
$pass = null;
|
$login['pass'] = null;
|
||||||
|
|
||||||
/* Checks if the login_attr option is enabled for this host,
|
/* Checks if the login_attr option is enabled for this host,
|
||||||
which allows users to login with a simple username like 'jdoe' rather
|
which allows users to login with a simple username like 'jdoe' rather
|
||||||
@ -45,10 +44,10 @@ if ($anon_bind) {
|
|||||||
|
|
||||||
# Is this a login string (printf-style)
|
# Is this a login string (printf-style)
|
||||||
if ($ldapserver->isLoginStringEnabled()) {
|
if ($ldapserver->isLoginStringEnabled()) {
|
||||||
$dn = str_replace('<username>',$uid,$ldapserver->getLoginString());
|
$login['dn'] = str_replace('<username>',$ldapserver->getLoginAttr(),$ldapserver->getLoginString());
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('LoginStringDN: [%s]',64,$dn);
|
debug_log('LoginStringDN: [%s]',64,__FILE__,__LINE__,__METHOD__,$login['dn']);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
# This is a standard login_attr
|
# This is a standard login_attr
|
||||||
@ -63,36 +62,36 @@ if ($anon_bind) {
|
|||||||
$ldapserver->connect(true,'anonymous');
|
$ldapserver->connect(true,'anonymous');
|
||||||
|
|
||||||
if (! empty($ldapserver->login_class))
|
if (! empty($ldapserver->login_class))
|
||||||
$filter = sprintf('(&(objectClass=%s)(%s=%s))',$ldapserver->login_class,$ldapserver->login_attr,$uid);
|
$filter = sprintf('(&(objectClass=%s)(%s=%s))',$ldapserver->login_class,$ldapserver->getLoginAttr(),$login['val']);
|
||||||
else
|
else
|
||||||
$filter = sprintf('%s=%s',$ldapserver->login_attr,$uid);
|
$filter = sprintf('%s=%s',$ldapserver->getLoginAttr(),$login['val']);
|
||||||
|
|
||||||
# Got through each of the BASE DNs and test the login.
|
# Got through each of the BASE DNs and test the login.
|
||||||
foreach ($ldapserver->getBaseDN() as $base_dn) {
|
foreach ($ldapserver->getBaseDN() as $base_dn) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Searching LDAP with base [%s]',64,$base_dn);
|
debug_log('Searching LDAP with base [%s]',64,__FILE__,__LINE__,__METHOD__,$base_dn);
|
||||||
|
|
||||||
$result = $ldapserver->search(null,$base_dn,$filter,array('dn'));
|
$result = $ldapserver->search(null,$base_dn,$filter,array('dn'));
|
||||||
$result = array_pop($result);
|
$result = array_pop($result);
|
||||||
$dn = $result['dn'];
|
$login['dn'] = $result['dn'];
|
||||||
|
|
||||||
if ($dn) {
|
if ($login['dn']) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Got DN [%s] for user ID [%s]',64,$dn,$uid);
|
debug_log('Got DN [%s] for user ID [%s]',64,__FILE__,__LINE__,__METHOD__,$login['dn'],$login['val']);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# If we got here then we werent able to find a DN for the login filter.
|
# If we got here then we werent able to find a DN for the login filter.
|
||||||
if (! $dn)
|
if (! $login['dn'])
|
||||||
if ($ldapserver->login_fallback_dn)
|
if ($ldapserver->login_fallback_dn)
|
||||||
$dn = $uid;
|
$login['dn'] = $login['val'];
|
||||||
else
|
else
|
||||||
system_message(array(
|
system_message(array(
|
||||||
'title'=>_('Authenticate to server'),
|
'title'=>_('Authenticate to server'),
|
||||||
'body'=>_('Bad username or password. Please try again.'),
|
'body'=>_('Bad username or password. Please try again.'),
|
||||||
'type'=>'error'),
|
'type'=>'error'),
|
||||||
'cmd.php?cmd=login_form');
|
sprintf('cmd.php?cmd=login_form&server_id=%s',$ldapserver->server_id));
|
||||||
|
|
||||||
# Restore the original auth_type
|
# Restore the original auth_type
|
||||||
$ldapserver->auth_type = $save_auth_type;
|
$ldapserver->auth_type = $save_auth_type;
|
||||||
@ -101,32 +100,32 @@ if ($anon_bind) {
|
|||||||
|
|
||||||
# We fake a 'config' server auth_type to omit duplicated code
|
# We fake a 'config' server auth_type to omit duplicated code
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Setting login type to CONFIG with DN [%s]',64,$dn);
|
debug_log('Setting login type to CONFIG with DN [%s]',64,__FILE__,__LINE__,__METHOD__,$login['dn']);
|
||||||
|
|
||||||
$save_auth_type = $ldapserver->auth_type;
|
$save_auth_type = $ldapserver->auth_type;
|
||||||
$ldapserver->auth_type = 'config';
|
$ldapserver->auth_type = 'config';
|
||||||
$ldapserver->login_dn = $dn;
|
$ldapserver->login_dn = $login['dn'];
|
||||||
$ldapserver->login_pass = $pass;
|
$ldapserver->login_pass = $login['pass'];
|
||||||
|
|
||||||
# Verify that dn is allowed to login
|
# Verify that dn is allowed to login
|
||||||
if (! $ldapserver->userIsAllowedLogin($dn))
|
if (! $ldapserver->userIsAllowedLogin($login['dn']))
|
||||||
system_message(array(
|
system_message(array(
|
||||||
'title'=>_('Authenticate to server'),
|
'title'=>_('Authenticate to server'),
|
||||||
'body'=>_('Sorry, you are not allowed to use phpLDAPadmin with this LDAP server.'),
|
'body'=>_('Sorry, you are not allowed to use phpLDAPadmin with this LDAP server.'),
|
||||||
'type'=>'error'),
|
'type'=>'error'),
|
||||||
'cmd.php?cmd=login_form');
|
sprintf('cmd.php?cmd=login_form&server_id=%s',$ldapserver->server_id));
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('User is not prohibited from logging in - now bind with DN [%s]',64,$dn);
|
debug_log('User is not prohibited from logging in - now bind with DN [%s]',64,__FILE__,__LINE__,__METHOD__,$login['dn']);
|
||||||
|
|
||||||
# Verify that the login is good
|
# Verify that the login is good
|
||||||
if (is_null($dn) && is_null($pass))
|
if (is_null($login['dn']) && is_null($login['pass']))
|
||||||
$ds = $ldapserver->connect(false,'anonymous',true);
|
$ds = $ldapserver->connect(false,'anonymous',true);
|
||||||
else
|
else
|
||||||
$ds = $ldapserver->connect(false,'user',true);
|
$ds = $ldapserver->connect(false,'user',true);
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Connection returned [%s]',64,$ds);
|
debug_log('Connection returned [%s]',64,__FILE__,__LINE__,__METHOD__,$ds);
|
||||||
|
|
||||||
if (! is_resource($ds)) {
|
if (! is_resource($ds)) {
|
||||||
if ($anon_bind)
|
if ($anon_bind)
|
||||||
@ -134,24 +133,24 @@ if (! is_resource($ds)) {
|
|||||||
'title'=>_('Authenticate to server'),
|
'title'=>_('Authenticate to server'),
|
||||||
'body'=>_('Could not bind anonymously to server.'),
|
'body'=>_('Could not bind anonymously to server.'),
|
||||||
'type'=>'error'),
|
'type'=>'error'),
|
||||||
'cmd.php?cmd=login_form');
|
sprintf('cmd.php?cmd=login_form&server_id=%s',$ldapserver->server_id));
|
||||||
|
|
||||||
else
|
else
|
||||||
system_message(array(
|
system_message(array(
|
||||||
'title'=>_('Authenticate to server'),
|
'title'=>_('Authenticate to server'),
|
||||||
'body'=>_('Bad username or password. Please try again.'),
|
'body'=>_('Bad username or password. Please try again.'),
|
||||||
'type'=>'error'),
|
'type'=>'error'),
|
||||||
'cmd.php?cmd=login_form');
|
sprintf('cmd.php?cmd=login_form&server_id=%s',$ldapserver->server_id));
|
||||||
|
|
||||||
syslog_notice("Authentification FAILED for $dn");
|
syslog_notice(sprintf('Authentification FAILED for %s',$login['dn']));
|
||||||
}
|
}
|
||||||
|
|
||||||
$ldapserver->auth_type = $save_auth_type;
|
$ldapserver->auth_type = $save_auth_type;
|
||||||
$ldapserver->setLoginDN($dn,$pass,$anon_bind) or pla_error(_('Could not set cookie.'));
|
$ldapserver->setLoginDN($login['dn'],$login['pass'],$anon_bind) or pla_error(_('Could not set cookie.'));
|
||||||
set_lastactivity($ldapserver);
|
set_lastactivity($ldapserver);
|
||||||
|
|
||||||
if (! $anon_bind) {
|
if (! $anon_bind) {
|
||||||
syslog_notice("Authentification successful for $dn");
|
syslog_notice(sprintf('Authentification successful for %s',$login['dn']));
|
||||||
}
|
}
|
||||||
|
|
||||||
# Since we were successful, clear the cache so that it will be refreshed with the new creditentials.
|
# Since we were successful, clear the cache so that it will be refreshed with the new creditentials.
|
||||||
@ -161,5 +160,5 @@ system_message(array(
|
|||||||
'title'=>_('Authenticate to server'),
|
'title'=>_('Authenticate to server'),
|
||||||
'body'=>_('Successfully logged into server.').($anon_bind ? sprintf(' (%s)',_('Anonymous Bind')) : ''),
|
'body'=>_('Successfully logged into server.').($anon_bind ? sprintf(' (%s)',_('Anonymous Bind')) : ''),
|
||||||
'type'=>'info'),
|
'type'=>'info'),
|
||||||
'index.php');
|
sprintf('index.php?server_id=%s',$ldapserver->server_id));
|
||||||
?>
|
?>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/login_form.php,v 1.29 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/login_form.php,v 1.29.2.2 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Displays the login form for a server for users who specify 'cookie' or 'session' for their auth_type.
|
* Displays the login form for a server for users who specify 'cookie' or 'session' for their auth_type.
|
||||||
@ -42,11 +42,12 @@ if (isset($_GET['redirect']))
|
|||||||
echo '<center>';
|
echo '<center>';
|
||||||
echo '<table class="login">';
|
echo '<table class="login">';
|
||||||
|
|
||||||
printf('<tr><td><b>%s:</b></td></tr>',$ldapserver->isLoginAttrEnabled() ? _('Login Name') : _('Login DN'));
|
printf('<tr><td><b>%s:</b></td></tr>',
|
||||||
|
$ldapserver->login_attr == 'dn' ? _('Login DN') : $_SESSION[APPCONFIG]->getFriendlyName($ldapserver->login_attr));
|
||||||
|
|
||||||
printf('<tr><td><input type="text" id="pla_login" name="%s" size="40" value="%s" /></td></tr>',
|
printf('<tr><td><input type="text" id="pla_login" name="%s" size="40" value="%s" /></td></tr>',
|
||||||
$ldapserver->isLoginAttrEnabled() ? 'uid' : 'login_dn',
|
$ldapserver->login_attr,
|
||||||
$ldapserver->isLoginAttrEnabled() ? '' : $ldapserver->login_dn);
|
$ldapserver->login_attr == 'dn' ? $ldapserver->login_dn : '');
|
||||||
|
|
||||||
echo '<tr><td colspan=2> </td></tr>';
|
echo '<tr><td colspan=2> </td></tr>';
|
||||||
printf('<tr><td><b>%s:</b></td></tr>',_('Password'));
|
printf('<tr><td><b>%s:</b></td></tr>',_('Password'));
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/logout.php,v 1.20 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/logout.php,v 1.20.2.1 2007/12/26 03:25:38 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* For servers whose auth_type is set to 'cookie' or 'session'. Pass me
|
* For servers whose auth_type is set to 'cookie' or 'session'. Pass me
|
||||||
@ -33,5 +33,5 @@ system_message(array(
|
|||||||
'title'=>_('Logout'),
|
'title'=>_('Logout'),
|
||||||
'body'=>('Logged out successfully from server.'),
|
'body'=>('Logged out successfully from server.'),
|
||||||
'type'=>'info'),
|
'type'=>'info'),
|
||||||
'index.php');
|
sprintf('index.php?server_id=%s',$ldapserver->server_id));
|
||||||
?>
|
?>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/mass_delete.php,v 1.17 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/mass_delete.php,v 1.17.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Enables user to mass delete multiple entries using checkboxes.
|
* Enables user to mass delete multiple entries using checkboxes.
|
||||||
@ -22,7 +22,7 @@ require './common.php';
|
|||||||
if( $ldapserver->isReadOnly() )
|
if( $ldapserver->isReadOnly() )
|
||||||
pla_error(_('Unable to delete, server is in READY-ONLY mode.'));
|
pla_error(_('Unable to delete, server is in READY-ONLY mode.'));
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('entry_delete', 'mass_delete'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('entry_delete', 'mass_delete'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete mass entries')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete mass entries')));
|
||||||
|
|
||||||
$confirmed = isset($_POST['confirmed']) ? true : false;
|
$confirmed = isset($_POST['confirmed']) ? true : false;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/modify_member_form.php,v 1.5 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/modify_member_form.php,v 1.5.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Displays a form to allow the user to modify group members.
|
* Displays a form to allow the user to modify group members.
|
||||||
@ -46,14 +46,14 @@ foreach ($ldapserver->getBaseDN() as $base_dn) {
|
|||||||
|
|
||||||
# Get all entries that can be added to the group
|
# Get all entries that can be added to the group
|
||||||
|
|
||||||
if (preg_match("/^$attr$/i",$_SESSION['plaConfig']->GetValue('modify_member','posixgroupattr')))
|
if (preg_match("/^$attr$/i",$_SESSION[APPCONFIG]->GetValue('modify_member','posixgroupattr')))
|
||||||
$possible_values = array_merge($ldapserver->search(null,$base_dn,
|
$possible_values = array_merge($ldapserver->search(null,$base_dn,
|
||||||
$_SESSION['plaConfig']->GetValue('modify_member','posixfilter'),
|
$_SESSION[APPCONFIG]->GetValue('modify_member','posixfilter'),
|
||||||
array($_SESSION['plaConfig']->GetValue('modify_member','posixattr'))));
|
array($_SESSION[APPCONFIG]->GetValue('modify_member','posixattr'))));
|
||||||
else
|
else
|
||||||
$possible_values = array_merge($ldapserver->search(null,$base_dn,
|
$possible_values = array_merge($ldapserver->search(null,$base_dn,
|
||||||
$_SESSION['plaConfig']->GetValue('modify_member','filter'),
|
$_SESSION[APPCONFIG]->GetValue('modify_member','filter'),
|
||||||
array($_SESSION['plaConfig']->GetValue('modify_member','attr'))));
|
array($_SESSION[APPCONFIG]->GetValue('modify_member','attr'))));
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($possible_values)
|
if ($possible_values)
|
||||||
@ -75,10 +75,10 @@ printf('%s <b>%s</b> %s <b>%s</b>:',
|
|||||||
_('There are'),$num_current_members,_('members in group'),htmlspecialchars($rdn));
|
_('There are'),$num_current_members,_('members in group'),htmlspecialchars($rdn));
|
||||||
|
|
||||||
for ($i=0; $i<count($possible_values); $i++) {
|
for ($i=0; $i<count($possible_values); $i++) {
|
||||||
if (preg_match("/^$attr$/i",$_SESSION['plaConfig']->GetValue('modify_member','posixgroupattr')))
|
if (preg_match("/^$attr$/i",$_SESSION[APPCONFIG]->GetValue('modify_member','posixgroupattr')))
|
||||||
$possible_members[$i] = $possible_values[$i][$_SESSION['plaConfig']->GetValue('modify_member','posixattr')];
|
$possible_members[$i] = $possible_values[$i][$_SESSION[APPCONFIG]->GetValue('modify_member','posixattr')];
|
||||||
else
|
else
|
||||||
$possible_members[$i] = $possible_values[$i][$_SESSION['plaConfig']->GetValue('modify_member','attr')];
|
$possible_members[$i] = $possible_values[$i][$_SESSION[APPCONFIG]->GetValue('modify_member','attr')];
|
||||||
}
|
}
|
||||||
|
|
||||||
sort($possible_members);
|
sort($possible_members);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/purge_cache.php,v 1.9 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/purge_cache.php,v 1.9.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
require './common.php';
|
require './common.php';
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('purge'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('purge'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('purge')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('purge')));
|
||||||
|
|
||||||
$purge_session_keys = array('cache');
|
$purge_session_keys = array('cache');
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/rdelete.php,v 1.28 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/rdelete.php,v 1.28.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Recursively deletes the specified DN and all of its children
|
* Recursively deletes the specified DN and all of its children
|
||||||
@ -17,7 +17,7 @@ require './common.php';
|
|||||||
if ($ldapserver->isReadOnly())
|
if ($ldapserver->isReadOnly())
|
||||||
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('entry_delete', 'simple_delete'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('entry_delete', 'simple_delete'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete entry')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete entry')));
|
||||||
|
|
||||||
$entry['dn'] = $_POST['dn'];
|
$entry['dn'] = $_POST['dn'];
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/refresh.php,v 1.18 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/refresh.php,v 1.18.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This script alters the session variable 'tree', by re-querying
|
* This script alters the session variable 'tree', by re-querying
|
||||||
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
require './common.php';
|
require './common.php';
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('server_refresh'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('server_refresh'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('refresh server')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('refresh server')));
|
||||||
|
|
||||||
unset($_SESSION['cache'][$ldapserver->server_id]['tree']);
|
unset($_SESSION['cache'][$ldapserver->server_id]['tree']);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/rename.php,v 1.33 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/rename.php,v 1.33.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Renames a DN to a different name.
|
* Renames a DN to a different name.
|
||||||
@ -20,7 +20,7 @@ require './common.php';
|
|||||||
if ($ldapserver->isReadOnly())
|
if ($ldapserver->isReadOnly())
|
||||||
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('entry_rename'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('entry_rename'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('rename entry')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('rename entry')));
|
||||||
|
|
||||||
$dn = ($_POST['dn']);
|
$dn = ($_POST['dn']);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/schema.php,v 1.67 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/schema.php,v 1.67.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Displays the schema for the specified server_id
|
* Displays the schema for the specified server_id
|
||||||
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
require './common.php';
|
require './common.php';
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('schema'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('schema'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('view schema')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('view schema')));
|
||||||
|
|
||||||
$entry['view'] = get_request('view','GET','false','objectClasses');
|
$entry['view'] = get_request('view','GET','false','objectClasses');
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/search.php,v 1.78 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/search.php,v 1.78.2.4 2007/12/29 08:24:10 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Perform LDAP searches and draw the advanced/simple search forms
|
* Perform LDAP searches and draw the advanced/simple search forms
|
||||||
@ -24,7 +24,7 @@ define('SIZE_LIMIT_EXCEEDED',4);
|
|||||||
$result_formats = array('list','table');
|
$result_formats = array('list','table');
|
||||||
|
|
||||||
# Our incoming variables
|
# Our incoming variables
|
||||||
$entry['format'] = get_request('format','GET','false',$_SESSION['plaConfig']->GetValue('search','display'));
|
$entry['format'] = get_request('format','GET','false',$_SESSION[APPCONFIG]->GetValue('search','display'));
|
||||||
$entry['form'] = get_request('form','GET',false,get_request('form','SESSION'));
|
$entry['form'] = get_request('form','GET',false,get_request('form','SESSION'));
|
||||||
|
|
||||||
$entry['orderby']['raw'] = get_request('orderby','GET');
|
$entry['orderby']['raw'] = get_request('orderby','GET');
|
||||||
@ -81,9 +81,9 @@ if ($entry['base_dn']['string']) {
|
|||||||
printf('<script type="text/javascript" src="%ssearch_util.js"></script>','../htdocs/'.JSDIR);
|
printf('<script type="text/javascript" src="%ssearch_util.js"></script>','../htdocs/'.JSDIR);
|
||||||
echo '<center>';
|
echo '<center>';
|
||||||
|
|
||||||
$entry['command']['as'] = $_SESSION['plaConfig']->isCommandAvailable('search','advanced_search');
|
$entry['command']['as'] = $_SESSION[APPCONFIG]->isCommandAvailable('search','advanced_search');
|
||||||
$entry['command']['ps'] = $_SESSION['plaConfig']->isCommandAvailable('search','predefined_search');
|
$entry['command']['ps'] = $_SESSION[APPCONFIG]->isCommandAvailable('search','predefined_search');
|
||||||
$entry['command']['ss'] = $_SESSION['plaConfig']->isCommandAvailable('search','simple_search');
|
$entry['command']['ss'] = $_SESSION[APPCONFIG]->isCommandAvailable('search','simple_search');
|
||||||
|
|
||||||
if ($entry['form'] == 'advanced') {
|
if ($entry['form'] == 'advanced') {
|
||||||
if ($entry['command']['as'])
|
if ($entry['command']['as'])
|
||||||
@ -116,15 +116,15 @@ echo '<br />';
|
|||||||
|
|
||||||
if ($entry['search']) {
|
if ($entry['search']) {
|
||||||
if ($entry['form'] == 'advanced') {
|
if ($entry['form'] == 'advanced') {
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('search','advanced_search'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('search','advanced_search'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('advanced search')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('advanced search')));
|
||||||
|
|
||||||
} elseif ($entry['form'] == 'predefined') {
|
} elseif ($entry['form'] == 'predefined') {
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('search','predefined_search'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('search','predefined_search'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('predefined search')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('predefined search')));
|
||||||
|
|
||||||
} elseif ($entry['form'] == 'simple') {
|
} elseif ($entry['form'] == 'simple') {
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('search','simple_search'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('search','simple_search'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('simple search')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('simple search')));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -132,10 +132,10 @@ if ($entry['search']) {
|
|||||||
if ($entry['display'])
|
if ($entry['display'])
|
||||||
$search_result_attributes = $entry['display']['array'];
|
$search_result_attributes = $entry['display']['array'];
|
||||||
else
|
else
|
||||||
$search_result_attributes = $_SESSION['plaConfig']->GetValue('search','result_attributes');
|
$search_result_attributes = $_SESSION[APPCONFIG]->GetValue('search','result_attributes');
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$search_result_attributes = $_SESSION['plaConfig']->GetValue('search','result_attributes');
|
$search_result_attributes = $_SESSION[APPCONFIG]->GetValue('search','result_attributes');
|
||||||
}
|
}
|
||||||
|
|
||||||
# do we have enough authentication information for the specified server_id
|
# do we have enough authentication information for the specified server_id
|
||||||
@ -148,7 +148,7 @@ if ($entry['search']) {
|
|||||||
'title'=>_('Search'),
|
'title'=>_('Search'),
|
||||||
'body'=>_('You have not logged into the selected server yet, so you cannot perform searches on it.'),
|
'body'=>_('You have not logged into the selected server yet, so you cannot perform searches on it.'),
|
||||||
'type'=>'warn'),
|
'type'=>'warn'),
|
||||||
'cmd.php?cmd=login_form');
|
$login_url);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_numeric($entry['predefined'])) {
|
if (is_numeric($entry['predefined'])) {
|
||||||
@ -214,14 +214,14 @@ if ($entry['search']) {
|
|||||||
'title'=>_('Unrecognized criteria option: ').htmlspecialchars($entry['criterion']),
|
'title'=>_('Unrecognized criteria option: ').htmlspecialchars($entry['criterion']),
|
||||||
'body'=>_('If you want to add your own criteria to the list. Be sure to edit search.php to handle them. Quitting.'),
|
'body'=>_('If you want to add your own criteria to the list. Be sure to edit search.php to handle them. Quitting.'),
|
||||||
'type'=>'warn'),
|
'type'=>'warn'),
|
||||||
'cmd.php?cmd=search');
|
sprintf('cmd.php?cmd=search&server_id=%s',$ldapserver->server_id));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# prevent script from bailing early on a long delete
|
# prevent script from bailing early on a long delete
|
||||||
@set_time_limit(0);
|
@set_time_limit(0);
|
||||||
|
|
||||||
$size_limit = $_SESSION['plaConfig']->GetValue('search','size_limit');
|
$size_limit = $_SESSION[APPCONFIG]->GetValue('search','size_limit');
|
||||||
|
|
||||||
# Sanity check
|
# Sanity check
|
||||||
if ($size_limit < 1)
|
if ($size_limit < 1)
|
||||||
@ -233,18 +233,18 @@ if ($entry['search']) {
|
|||||||
foreach ($base_dns as $base_dn) {
|
foreach ($base_dns as $base_dn) {
|
||||||
if (! $ldapserver->dnExists($base_dn)) {
|
if (! $ldapserver->dnExists($base_dn)) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('BaseDN [%s] skipped as it doesnt exist in [%s].',64,
|
debug_log('BaseDN [%s] skipped as it doesnt exist in [%s].',64,__FILE__,__LINE__,__METHOD__,
|
||||||
$base_dn,$ldapserver->server_id);
|
$base_dn,$ldapserver->server_id);
|
||||||
|
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Search with base DN [%s]',64,$base_dn);
|
debug_log('Search with base DN [%s]',64,__FILE__,__LINE__,__METHOD__,$base_dn);
|
||||||
}
|
}
|
||||||
|
|
||||||
$results = $ldapserver->search(null,dn_escape($base_dn),$entry['filter']['clean'],$search_result_attributes,
|
$results = $ldapserver->search(null,dn_escape($base_dn),$entry['filter']['clean'],$search_result_attributes,
|
||||||
$entry['scope'],$entry['orderby']['array'],$_SESSION['plaConfig']->GetValue('deref','search'));
|
$entry['scope'],$entry['orderby']['array'],$_SESSION[APPCONFIG]->GetValue('deref','search'));
|
||||||
|
|
||||||
if ((! $results) && $ldapserver->errno())
|
if ((! $results) && $ldapserver->errno())
|
||||||
pla_error(_('Encountered an error while performing search.'),$ldapserver->error(),$ldapserver->errno());
|
pla_error(_('Encountered an error while performing search.'),$ldapserver->error(),$ldapserver->errno());
|
||||||
@ -265,7 +265,7 @@ if ($entry['search']) {
|
|||||||
printf('<td>%s%s <b>%s</b> <small>(%s %s)</small></td>',_('Entries found'),_(':'),
|
printf('<td>%s%s <b>%s</b> <small>(%s %s)</small></td>',_('Entries found'),_(':'),
|
||||||
number_format($count),$time_elapsed,_('seconds'));
|
number_format($count),$time_elapsed,_('seconds'));
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('export')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('export')) {
|
||||||
$href = htmlspecialchars(sprintf('cmd.php?cmd=export_form&server_id=%s&scope=%s&dn=%s&filter=%s&attributes=%s',
|
$href = htmlspecialchars(sprintf('cmd.php?cmd=export_form&server_id=%s&scope=%s&dn=%s&filter=%s&attributes=%s',
|
||||||
$ldapserver->server_id,$entry['scope'],$base_dn,rawurlencode($entry['filter']['clean']),rawurlencode(join(', ',$search_result_attributes))));
|
$ldapserver->server_id,$entry['scope'],$base_dn,rawurlencode($entry['filter']['clean']),rawurlencode(join(', ',$search_result_attributes))));
|
||||||
|
|
||||||
@ -290,7 +290,7 @@ if ($entry['search']) {
|
|||||||
|
|
||||||
echo ' ]</small>';
|
echo ' ]</small>';
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('schema')) {
|
||||||
echo '<br />';
|
echo '<br />';
|
||||||
printf('<small>%s%s <b>%s</b></small>',_('Base DN'),_(':'),htmlspecialchars($base_dn));
|
printf('<small>%s%s <b>%s</b></small>',_('Base DN'),_(':'),htmlspecialchars($base_dn));
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/server_info.php,v 1.27 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/server_info.php,v 1.27.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fetches and displays all information that it can from the specified server
|
* Fetches and displays all information that it can from the specified server
|
||||||
@ -12,7 +12,7 @@
|
|||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('server_info'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('server_info'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('view server informations')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('view server informations')));
|
||||||
|
|
||||||
# The attributes we'll examine when searching the LDAP server's RootDSE
|
# The attributes we'll examine when searching the LDAP server's RootDSE
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/show_cache.php,v 1.3 2007/12/15 11:33:27 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/show_cache.php,v 1.3.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This script shows the contents of the cache for debugging purposes
|
* This script shows the contents of the cache for debugging purposes
|
||||||
@ -21,7 +21,7 @@ if (isset($entry['index']) && isset($entry['key'])) {
|
|||||||
if ($entry['key'])
|
if ($entry['key'])
|
||||||
debug_dump($_SESSION[$entry['key']],1);
|
debug_dump($_SESSION[$entry['key']],1);
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->GetValue('appearance','hide_debug_info')) {
|
if (! $_SESSION[APPCONFIG]->GetValue('appearance','hide_debug_info')) {
|
||||||
echo '<div style="font-size: 11px"><ul>';
|
echo '<div style="font-size: 11px"><ul>';
|
||||||
foreach (array_keys($_SESSION) as $key) {
|
foreach (array_keys($_SESSION) as $key) {
|
||||||
if (($key == 'cache') && is_array($_SESSION[$key]))
|
if (($key == 'cache') && is_array($_SESSION[$key]))
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/template_engine.php,v 1.45 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/template_engine.php,v 1.45.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Template render engine.
|
* Template render engine.
|
||||||
@ -41,10 +41,10 @@ if ($entry['dn']['string']) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($entry['dn']['tree']) {
|
if ($entry['dn']['tree']) {
|
||||||
eval('$reader = new '.$_SESSION['plaConfig']->GetValue('appearance', 'entry_reader').'($ldapserver);');
|
eval('$reader = new '.$_SESSION[APPCONFIG]->GetValue('appearance', 'entry_reader').'($ldapserver);');
|
||||||
$entry['dn']['tree']->accept($reader);
|
$entry['dn']['tree']->accept($reader);
|
||||||
|
|
||||||
eval('$writer = new '.$_SESSION['plaConfig']->GetValue('appearance', 'entry_writer').'($ldapserver);');
|
eval('$writer = new '.$_SESSION[APPCONFIG]->GetValue('appearance', 'entry_writer').'($ldapserver);');
|
||||||
$entry['dn']['tree']->accept($writer);
|
$entry['dn']['tree']->accept($writer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -54,16 +54,16 @@ if ($entry['dn']['string']) {
|
|||||||
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
pla_error(_('You cannot perform updates while server is in read-only mode'));
|
||||||
|
|
||||||
# Create a new empty entry
|
# Create a new empty entry
|
||||||
$entryfactoryclass = $_SESSION['plaConfig']->GetValue('appearance','entry_factory');
|
$entryfactoryclass = $_SESSION[APPCONFIG]->GetValue('appearance','entry_factory');
|
||||||
eval('$entry_factory = new '.$entryfactoryclass.'();');
|
eval('$entry_factory = new '.$entryfactoryclass.'();');
|
||||||
$entry['dn']['tree'] = $entry_factory->newCreatingEntry('');
|
$entry['dn']['tree'] = $entry_factory->newCreatingEntry('');
|
||||||
|
|
||||||
# Init the entry with incoming data
|
# Init the entry with incoming data
|
||||||
eval('$reader = new '.$_SESSION['plaConfig']->GetValue('appearance', 'entry_reader').'($ldapserver);');
|
eval('$reader = new '.$_SESSION[APPCONFIG]->GetValue('appearance', 'entry_reader').'($ldapserver);');
|
||||||
$entry['dn']['tree']->accept($reader);
|
$entry['dn']['tree']->accept($reader);
|
||||||
|
|
||||||
# Display the creating entry
|
# Display the creating entry
|
||||||
eval('$writer = new '.$_SESSION['plaConfig']->GetValue('appearance', 'entry_writer').'($ldapserver);');
|
eval('$writer = new '.$_SESSION[APPCONFIG]->GetValue('appearance', 'entry_writer').'($ldapserver);');
|
||||||
$entry['dn']['tree']->accept($writer);
|
$entry['dn']['tree']->accept($writer);
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/update.php,v 1.29 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/update.php,v 1.29.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Updates or deletes a value from a specified attribute for a specified dn.
|
* Updates or deletes a value from a specified attribute for a specified dn.
|
||||||
@ -57,13 +57,13 @@ foreach ($entry['update'] as $attr => $val) {
|
|||||||
} elseif ($val == '') {
|
} elseif ($val == '') {
|
||||||
$entry['update'][$attr] = array();
|
$entry['update'][$attr] = array();
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('attribute_delete'))
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_delete'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete attribute')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('delete attribute')));
|
||||||
} else { # Skip change
|
} else { # Skip change
|
||||||
$entry['update'][$attr] = $val;
|
$entry['update'][$attr] = $val;
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('attribute_add_value')
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add_value')
|
||||||
&& ! $_SESSION['plaConfig']->isCommandAvailable('attribute_delete_value'))
|
&& ! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_delete_value'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('modify attribute values')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('modify attribute values')));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -75,8 +75,8 @@ foreach ($entry['update'] as $attr => $val) {
|
|||||||
foreach ($val as $i => $v)
|
foreach ($val as $i => $v)
|
||||||
$entry['update'][$attr][$i] = $v;
|
$entry['update'][$attr][$i] = $v;
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('attribute_add_value')
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add_value')
|
||||||
&& ! $_SESSION['plaConfig']->isCommandAvailable('attribute_delete_value'))
|
&& ! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_delete_value'))
|
||||||
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('modify attribute values')));
|
pla_error(sprintf('%s%s %s',_('This operation is not permitted by the configuration'),_(':'),_('modify attribute values')));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/update_confirm.php,v 1.49 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/update_confirm.php,v 1.49.2.2 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Takes the results of clicking "Save" in template_engine.php and determines which
|
* Takes the results of clicking "Save" in template_engine.php and determines which
|
||||||
@ -61,7 +61,7 @@ foreach ($entry['ldap']->getAttributes() as $old_attr) {
|
|||||||
/* new values */
|
/* new values */
|
||||||
/***************/
|
/***************/
|
||||||
|
|
||||||
eval('$reader = new '.$_SESSION['plaConfig']->GetValue('appearance','entry_reader').'($ldapserver);');
|
eval('$reader = new '.$_SESSION[APPCONFIG]->GetValue('appearance','entry_reader').'($ldapserver);');
|
||||||
$entry['ldap']->accept($reader);
|
$entry['ldap']->accept($reader);
|
||||||
|
|
||||||
$entry['values']['new'] = array();
|
$entry['values']['new'] = array();
|
||||||
@ -171,7 +171,7 @@ if (isset($entry['values']['new']['objectClass'])) {
|
|||||||
/* update array */
|
/* update array */
|
||||||
/****************/
|
/****************/
|
||||||
|
|
||||||
eval('$writer = new '.$_SESSION['plaConfig']->GetValue('appearance','entry_writer').'($ldapserver);');
|
eval('$writer = new '.$_SESSION[APPCONFIG]->GetValue('appearance','entry_writer').'($ldapserver);');
|
||||||
$writer->draw('Title',$entry['ldap']);
|
$writer->draw('Title',$entry['ldap']);
|
||||||
$writer->draw('Subtitle',$entry['ldap']);
|
$writer->draw('Subtitle',$entry['ldap']);
|
||||||
|
|
||||||
@ -204,18 +204,12 @@ if (count($entry['values']['new']) > 0) {
|
|||||||
echo "\n\n";
|
echo "\n\n";
|
||||||
$counter = 0;
|
$counter = 0;
|
||||||
|
|
||||||
$friendly_attrs = $_SESSION['plaConfig']->friendly_attrs;
|
|
||||||
foreach ($entry['values']['new'] as $attr => $new_val) {
|
foreach ($entry['values']['new'] as $attr => $new_val) {
|
||||||
$counter++;
|
$counter++;
|
||||||
|
|
||||||
printf('<tr class="%s">',$counter%2 ? 'even' : 'odd');
|
printf('<tr class="%s">',$counter%2 ? 'even' : 'odd');
|
||||||
echo '<td><b>';
|
echo '<td><b>';
|
||||||
$attr_display = isset($friendly_attrs[strtolower($attr)]) ? $friendly_attrs[strtolower($attr)] : $attr;
|
echo $_SESSION[APPCONFIG]->getFriendlyHTML($attr);
|
||||||
if (strcmp($attr,$attr_display) && $_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
|
||||||
printf('<acronym title="Alias for %s">%s</acronym>',$attr,htmlspecialchars($attr_display));
|
|
||||||
} else {
|
|
||||||
echo htmlspecialchars($attr_display);
|
|
||||||
}
|
|
||||||
echo '</b></td>';
|
echo '</b></td>';
|
||||||
echo '<td><span style="white-space: nowrap;">';
|
echo '<td><span style="white-space: nowrap;">';
|
||||||
|
|
||||||
@ -329,12 +323,7 @@ if (count($entry['values']['new']) > 0) {
|
|||||||
$i = 0;
|
$i = 0;
|
||||||
foreach ($attr_to_delete as $attr) {
|
foreach ($attr_to_delete as $attr) {
|
||||||
if ($i++ != 0) echo '</b>, <b>';
|
if ($i++ != 0) echo '</b>, <b>';
|
||||||
$attr_display = isset($friendly_attrs[strtolower($attr)]) ? $friendly_attrs[strtolower($attr)] : $attr;
|
echo $_SESSION[APPCONFIG]->getFriendlyHTML($attr);
|
||||||
if (strcmp($attr,$attr_display) && $_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
|
||||||
printf('<acronym title="Alias for %s">%s</acronym>',$attr,htmlspecialchars($attr_display));
|
|
||||||
} else {
|
|
||||||
echo htmlspecialchars($attr_display);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
echo '</b></td></tr></table>';
|
echo '</b></td></tr></table>';
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/view_jpeg_photo.php,v 1.11 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/view_jpeg_photo.php,v 1.11.2.1 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -20,7 +20,7 @@ if (! preg_match('/^pla/',$file['name']) || preg_match('/[\.\/\\\\]/',$file['nam
|
|||||||
/* Little security measure here (prevents users from accessing
|
/* Little security measure here (prevents users from accessing
|
||||||
files, like /etc/passwd for example).*/
|
files, like /etc/passwd for example).*/
|
||||||
$file['name'] = basename(addcslashes($file['name'],'/\\'));
|
$file['name'] = basename(addcslashes($file['name'],'/\\'));
|
||||||
$file['name'] = sprintf('%s/%s',$_SESSION['plaConfig']->GetValue('jpeg','tmpdir'),$file['name']);
|
$file['name'] = sprintf('%s/%s',$_SESSION[APPCONFIG]->GetValue('jpeg','tmpdir'),$file['name']);
|
||||||
if (! file_exists($file['name']))
|
if (! file_exists($file['name']))
|
||||||
pla_error(sprintf('%s%s %s',_('No such file'),_(':'),htmlspecialchars($file['name'])));
|
pla_error(sprintf('%s%s %s',_('No such file'),_(':'),htmlspecialchars($file['name'])));
|
||||||
|
|
||||||
|
@ -1,38 +1,36 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/welcome.php,v 1.26 2007/12/15 07:50:30 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/htdocs/welcome.php,v 1.26.2.2 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Show a simple welcome page.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require './common.php';
|
require './common.php';
|
||||||
|
|
||||||
echo '<center>';
|
echo '<center>';
|
||||||
echo '<br /><br />';
|
echo '<br /><br />';
|
||||||
|
printf('<img src="images/logo.jpg" title="%s" alt="%s" />',_('phpLDAPadmin logo'),_('phpLDAPadmin logo'));
|
||||||
printf('<img src="images/logo.jpg" title="%s" alt="%s" />',
|
|
||||||
_('phpLDAPadmin logo'),
|
|
||||||
_('phpLDAPadmin logo'));
|
|
||||||
|
|
||||||
echo '<br /><br />';
|
echo '<br /><br />';
|
||||||
echo _('Use the menu to the left to navigate');
|
echo _('Use the menu to the left to navigate');
|
||||||
echo '<br /><br />';
|
echo '<br /><br />';
|
||||||
|
|
||||||
$links = '';
|
$links = '';
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('external_links')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('external_links')) {
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('external_links', 'credits')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('external_links', 'credits')) {
|
||||||
$links .= sprintf('<a href="%s" target="new">%s</a>',get_href('credits'),_('Credits'));
|
$links .= sprintf('<a href="%s" target="new">%s</a>',get_href('credits'),_('Credits'));
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('external_links', 'help')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('external_links', 'help')) {
|
||||||
if ($links) $links .= ' | ';
|
if ($links) $links .= ' | ';
|
||||||
$links .= sprintf('<a href="%s" target="new">%s</a>',get_href('documentation'),_('Documentation'));
|
$links .= sprintf('<a href="%s" target="new">%s</a>',get_href('documentation'),_('Documentation'));
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('external_links', 'donation')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('external_links', 'donation')) {
|
||||||
if ($links) $links .= ' | ';
|
if ($links) $links .= ' | ';
|
||||||
$links .= sprintf('<a href="%s" target="new">%s</a>',get_href('donate'),_('Donate'));
|
$links .= sprintf('<a href="%s" target="new">%s</a>',get_href('donate'),_('Donate'));
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/Attribute.php,v 1.2 2007/12/15 07:50:31 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/Attribute.php,v 1.2.2.2 2007/12/26 09:26:32 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -188,18 +188,10 @@ class Attribute {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function getFriendlyName() {
|
public function getFriendlyName() {
|
||||||
$friendly_attrs = $_SESSION['plaConfig']->friendly_attrs;
|
if ($this->friendly_name)
|
||||||
$name = real_attr_name($this->name);
|
|
||||||
|
|
||||||
if ($this->friendly_name) {
|
|
||||||
return $this->friendly_name;
|
return $this->friendly_name;
|
||||||
} elseif (isset($friendly_attrs[$name])) {
|
else
|
||||||
return $friendly_attrs[$name];
|
return $_SESSION[APPCONFIG]->getFriendlyName(real_attr_name($this->name));
|
||||||
} elseif (isset($friendly_attrs[strtolower($name)])) {
|
|
||||||
return $friendly_attrs[strtolower($name)];
|
|
||||||
} else {
|
|
||||||
return $name;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setDescription($description) {
|
public function setDescription($description) {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/AttributeFactory.php,v 1.2 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/AttributeFactory.php,v 1.2.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -26,7 +26,7 @@ class AttributeFactory {
|
|||||||
} else if (! strcasecmp($name,'sambaLMPassword') || ! strcasecmp($name,'sambaNTPassword')) {
|
} else if (! strcasecmp($name,'sambaLMPassword') || ! strcasecmp($name,'sambaNTPassword')) {
|
||||||
return $this->newSambaPasswordAttribute($name,$values);
|
return $this->newSambaPasswordAttribute($name,$values);
|
||||||
|
|
||||||
} elseif (in_array_ignore_case($name,array_keys($_SESSION['plaConfig']->GetValue('appearance','date_attrs')))) {
|
} elseif (in_array_ignore_case($name,array_keys($_SESSION[APPCONFIG]->GetValue('appearance','date_attrs')))) {
|
||||||
return $this->newDateAttribute($name,$values);
|
return $this->newDateAttribute($name,$values);
|
||||||
|
|
||||||
} elseif (in_array(strtolower($name),array('shadowlastchange','shadowmin',
|
} elseif (in_array(strtolower($name),array('shadowlastchange','shadowmin',
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/DefaultCreatingEntry.php,v 1.2 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/DefaultCreatingEntry.php,v 1.2.2.2 2007/12/29 08:24:10 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -167,12 +167,13 @@ class DefaultCreatingEntry extends Entry {
|
|||||||
# we can use a static variable if there is only one instance of this class
|
# we can use a static variable if there is only one instance of this class
|
||||||
static $attrs = null;
|
static $attrs = null;
|
||||||
|
|
||||||
if (DEBUG_ENABLED) debug_log('%s[%s]::getAttributes()',1,get_class($this),$this->getDn());
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Entered with () for dn (%s)',1,__FILE__,__LINE__,__METHOD__,$this->getDn());
|
||||||
|
|
||||||
if (! $attrs) {
|
if (! $attrs) {
|
||||||
$attrs = array();
|
$attrs = array();
|
||||||
|
|
||||||
$attributefactoryclass = $_SESSION['plaConfig']->GetValue('appearance','attribute_factory');
|
$attributefactoryclass = $_SESSION[APPCONFIG]->GetValue('appearance','attribute_factory');
|
||||||
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
||||||
|
|
||||||
if ($this->objectClasses) {
|
if ($this->objectClasses) {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/DefaultEditingEntry.php,v 1.2 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/DefaultEditingEntry.php,v 1.2.2.2 2007/12/29 08:25:24 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -19,19 +19,20 @@ class DefaultEditingEntry extends Entry {
|
|||||||
static $attrs = array();
|
static $attrs = array();
|
||||||
$dn = $this->getDn();
|
$dn = $this->getDn();
|
||||||
|
|
||||||
if (DEBUG_ENABLED) debug_log('%s[%s]::getAttributes()',1,get_class($this),$dn);
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Entered with () for dn (%s)',1,__FILE__,__LINE__,__METHOD__,$dn);
|
||||||
|
|
||||||
if (! isset($attrs[$dn])) {
|
if (! isset($attrs[$dn])) {
|
||||||
$attrs[$dn] = array();
|
$attrs[$dn] = array();
|
||||||
|
|
||||||
$attributefactoryclass = $_SESSION['plaConfig']->GetValue('appearance','attribute_factory');
|
$attributefactoryclass = $_SESSION[APPCONFIG]->GetValue('appearance','attribute_factory');
|
||||||
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
||||||
|
|
||||||
$int_attrs_vals = $ldapserver->getDNSysAttrs($this->getDn());
|
$int_attrs_vals = $ldapserver->getDNSysAttrs($this->getDn());
|
||||||
if (!$int_attrs_vals) $int_attrs_vals = array();
|
if (!$int_attrs_vals) $int_attrs_vals = array();
|
||||||
elseif (!is_array($int_attrs_vals)) $int_attrs_vals = array($int_attrs_vals);
|
elseif (!is_array($int_attrs_vals)) $int_attrs_vals = array($int_attrs_vals);
|
||||||
|
|
||||||
$attrs_vals = $ldapserver->getDNAttrs($this->getDn(),false,$_SESSION['plaConfig']->GetValue('deref','view'));
|
$attrs_vals = $ldapserver->getDNAttrs($this->getDn(),false,$_SESSION[APPCONFIG]->GetValue('deref','view'));
|
||||||
if (! $attrs_vals) $attrs_vals = array();
|
if (! $attrs_vals) $attrs_vals = array();
|
||||||
elseif (! is_array($attrs_vals)) $attrs_vals = array($attrs_vals);
|
elseif (! is_array($attrs_vals)) $attrs_vals = array($attrs_vals);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/Entry.php,v 1.2 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/Entry.php,v 1.2.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -78,9 +78,9 @@ abstract class Entry {
|
|||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('LdapServer (%s)',1,__FILE__,__LINE__,__METHOD__, $ldapserver ? $ldapserver->server_id : -1);
|
debug_log('LdapServer (%s)',1,__FILE__,__LINE__,__METHOD__, $ldapserver ? $ldapserver->server_id : -1);
|
||||||
|
|
||||||
$ldap['child_limit'] = $nolimit ? 0 : $_SESSION['plaConfig']->GetValue('search','size_limit');
|
$ldap['child_limit'] = $nolimit ? 0 : $_SESSION[APPCONFIG]->GetValue('search','size_limit');
|
||||||
$ldap['filter'] = $_SESSION['plaConfig']->GetValue('appearance','tree_filter');
|
$ldap['filter'] = $_SESSION[APPCONFIG]->GetValue('appearance','tree_filter');
|
||||||
$ldap['deref'] = $_SESSION['plaConfig']->GetValue('deref','view');
|
$ldap['deref'] = $_SESSION[APPCONFIG]->GetValue('deref','view');
|
||||||
$ldap['children'] = $ldapserver->getContainerContents($this->getDn(),$ldap['child_limit'],$ldap['filter'],$ldap['deref']);
|
$ldap['children'] = $ldapserver->getContainerContents($this->getDn(),$ldap['child_limit'],$ldap['filter'],$ldap['deref']);
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/EntryReader.php,v 1.2 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/EntryReader.php,v 1.2.2.1 2007/12/29 08:24:10 wurley Exp $
|
||||||
|
|
||||||
define('ENTRY_READER_CREATION_CONTEXT', '1');
|
define('ENTRY_READER_CREATION_CONTEXT', '1');
|
||||||
define('ENTRY_READER_EDITING_CONTEXT', '2');
|
define('ENTRY_READER_EDITING_CONTEXT', '2');
|
||||||
@ -25,11 +25,13 @@ class EntryReader extends Visitor {
|
|||||||
/**************************/
|
/**************************/
|
||||||
|
|
||||||
public function visitEntryStart($entry) {
|
public function visitEntryStart($entry) {
|
||||||
if (DEBUG_ENABLED) debug_log('%s::visitEntryStart(%s)',1,get_class($this),$entry->getDn());
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Enter with (%s) for dn (%s)',1,__FILE__,__LINE__,__METHOD__,$entry,$entry->getDn());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function visitEntryEnd($entry) {
|
public function visitEntryEnd($entry) {
|
||||||
if (DEBUG_ENABLED) debug_log('%s::visitEntryEnd(%s)',1,get_class($this),$entry->getDn());
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Enter with (%s) for dn (%s)',1,__FILE__,__LINE__,__METHOD__,$entry,$entry->getDn());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**************************/
|
/**************************/
|
||||||
@ -37,14 +39,16 @@ class EntryReader extends Visitor {
|
|||||||
/**************************/
|
/**************************/
|
||||||
|
|
||||||
public function visitDefaultEditingEntryStart($entry) {
|
public function visitDefaultEditingEntryStart($entry) {
|
||||||
if (DEBUG_ENABLED) debug_log('%s::visitDefaultEditingEntryStart()',1,get_class($this));
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Enter with (%s) for dn (%s)',1,__FILE__,__LINE__,__METHOD__,$entry,$entry->getDn());
|
||||||
|
|
||||||
$this->context = ENTRY_READER_EDITING_CONTEXT;
|
$this->context = ENTRY_READER_EDITING_CONTEXT;
|
||||||
$this->visit('Entry::Start', $entry);
|
$this->visit('Entry::Start', $entry);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function visitTemplateEditingEntryStart($entry) {
|
public function visitTemplateEditingEntryStart($entry) {
|
||||||
if (DEBUG_ENABLED) debug_log('%s::visitTemplateEditingEntryStart()',1,get_class($this));
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Enter with (%s) for dn (%s)',1,__FILE__,__LINE__,__METHOD__,$entry,$entry->getDn());
|
||||||
|
|
||||||
$this->visit('DefaultEditingEntry::Start', $entry);
|
$this->visit('DefaultEditingEntry::Start', $entry);
|
||||||
|
|
||||||
@ -62,7 +66,8 @@ class EntryReader extends Visitor {
|
|||||||
/**************************/
|
/**************************/
|
||||||
|
|
||||||
public function visitDefaultCreatingEntryStart($entry) {
|
public function visitDefaultCreatingEntryStart($entry) {
|
||||||
if (DEBUG_ENABLED) debug_log('%s::visitDefaultCreatingEntryStart()',1,get_class($this));
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Enter with (%s) for dn (%s)',1,__FILE__,__LINE__,__METHOD__,$entry,$entry->getDn());
|
||||||
|
|
||||||
$this->context = ENTRY_READER_CREATION_CONTEXT;
|
$this->context = ENTRY_READER_CREATION_CONTEXT;
|
||||||
$this->visit('Entry::Start', $entry);
|
$this->visit('Entry::Start', $entry);
|
||||||
@ -81,7 +86,8 @@ class EntryReader extends Visitor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function visitTemplateCreatingEntryStart($entry) {
|
public function visitTemplateCreatingEntryStart($entry) {
|
||||||
if (DEBUG_ENABLED) debug_log('%s::visitTemplateCreatingEntryStart()',1,get_class($this));
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Enter with (%s) for dn (%s)',1,__FILE__,__LINE__,__METHOD__,$entry,$entry->getDn());
|
||||||
|
|
||||||
$this->visit('DefaultCreatingEntry::Start', $entry);
|
$this->visit('DefaultCreatingEntry::Start', $entry);
|
||||||
|
|
||||||
@ -99,7 +105,8 @@ class EntryReader extends Visitor {
|
|||||||
/**************************/
|
/**************************/
|
||||||
|
|
||||||
public function visitAttribute($attribute) {
|
public function visitAttribute($attribute) {
|
||||||
if (DEBUG_ENABLED) debug_log('%s::visitAttribute(%s)',1,get_class($this),$attribute->getName());
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Enter with (%s) for attribute (%s)',1,__FILE__,__LINE__,__METHOD__,$attribute,$attribute->getName());
|
||||||
|
|
||||||
$name = $attribute->getName();
|
$name = $attribute->getName();
|
||||||
// @todo editing objectclasses
|
// @todo editing objectclasses
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/EntryWriter1.php,v 1.3.2.1 2007/12/21 11:32:59 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/EntryWriter1.php,v 1.3.2.4 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
define('IdEntryRefreshMenuItem', '0');
|
define('IdEntryRefreshMenuItem', '0');
|
||||||
define('IdEntryExportBaseMenuItem', '1');
|
define('IdEntryExportBaseMenuItem', '1');
|
||||||
@ -56,10 +56,10 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
protected function drawEntryMenu($entry) {}
|
protected function drawEntryMenu($entry) {}
|
||||||
|
|
||||||
protected function drawEntryJavascript($entry) {
|
protected function drawEntryJavascript($entry) {
|
||||||
if (isset($_SESSION['plaConfig'])) {
|
if (isset($_SESSION[APPCONFIG])) {
|
||||||
echo '<script type="text/javascript" language="javascript">';
|
echo '<script type="text/javascript" language="javascript">';
|
||||||
echo 'var defaults = new Array();var default_date_format = "';
|
echo 'var defaults = new Array();var default_date_format = "';
|
||||||
echo $_SESSION['plaConfig']->GetValue('appearance', 'date');
|
echo $_SESSION[APPCONFIG]->GetValue('appearance', 'date');
|
||||||
echo '";</script>';
|
echo '";</script>';
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -352,7 +352,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
echo '</td>';
|
echo '</td>';
|
||||||
echo '</tr>';
|
echo '</tr>';
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->GetValue('appearance', 'show_hints')) {
|
if ($_SESSION[APPCONFIG]->GetValue('appearance', 'show_hints')) {
|
||||||
echo '<tr><td> </td><td><small><img src="images/light.png" alt="Hint" /><span class="hint">';
|
echo '<tr><td> </td><td><small><img src="images/light.png" alt="Hint" /><span class="hint">';
|
||||||
echo _('Hint: You must choose exactly one structural objectClass (shown in bold above)');
|
echo _('Hint: You must choose exactly one structural objectClass (shown in bold above)');
|
||||||
echo '</span></small><br /></td></tr>';
|
echo '</span></small><br /></td></tr>';
|
||||||
@ -587,7 +587,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected function getDefaultEditingEntryMenuItem($entry, $i) {
|
protected function getDefaultEditingEntryMenuItem($entry, $i) {
|
||||||
$config = $_SESSION['plaConfig'];
|
$config = $_SESSION[APPCONFIG];
|
||||||
|
|
||||||
switch ($i) {
|
switch ($i) {
|
||||||
case IdEntryRefreshMenuItem :
|
case IdEntryRefreshMenuItem :
|
||||||
@ -791,7 +791,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected function getDefaultEditingEntryDeleteAttributeMessage($entry) {
|
protected function getDefaultEditingEntryDeleteAttributeMessage($entry) {
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('attribute_delete_value'))
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('attribute_delete_value'))
|
||||||
return sprintf($this->hint_layout,_('Hint: To delete an attribute, empty the text field and click save.'));
|
return sprintf($this->hint_layout,_('Hint: To delete an attribute, empty the text field and click save.'));
|
||||||
else
|
else
|
||||||
return '';
|
return '';
|
||||||
@ -1464,7 +1464,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
echo '<td class="attr_note">';
|
echo '<td class="attr_note">';
|
||||||
|
|
||||||
# Setup the $attr_note, which will be displayed to the right of the attr name (if any)
|
# Setup the $attr_note, which will be displayed to the right of the attr name (if any)
|
||||||
if ($_SESSION['plaConfig']->GetValue('appearance', 'show_attribute_notes')) {
|
if ($_SESSION[APPCONFIG]->GetValue('appearance', 'show_attribute_notes')) {
|
||||||
$this->draw('Notes', $attribute);
|
$this->draw('Notes', $attribute);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1547,7 +1547,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
switch ($i) {
|
switch ($i) {
|
||||||
case IdAttributeAddValueMenuItem :
|
case IdAttributeAddValueMenuItem :
|
||||||
if ($attribute->isVisible() && !$attribute->isReadOnly()
|
if ($attribute->isVisible() && !$attribute->isReadOnly()
|
||||||
&& !$attribute->isRdn() && $_SESSION['plaConfig']->isCommandAvailable('attribute_add_value')) {
|
&& !$attribute->isRdn() && $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add_value')) {
|
||||||
if ($attribute->getMaxValueCount() < 0 || $attribute->getValueCount() < $attribute->getMaxValueCount()) {
|
if ($attribute->getMaxValueCount() < 0 || $attribute->getValueCount() < $attribute->getMaxValueCount()) {
|
||||||
return $this->get('AddValueMenuItem', $attribute);
|
return $this->get('AddValueMenuItem', $attribute);
|
||||||
}
|
}
|
||||||
@ -1555,10 +1555,10 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
return '';
|
return '';
|
||||||
|
|
||||||
case IdAttributeModifyMemberMenuItem :
|
case IdAttributeModifyMemberMenuItem :
|
||||||
if (in_array($attribute->getName(), $_SESSION['plaConfig']->GetValue('modify_member','groupattr'))) {
|
if (in_array($attribute->getName(), $_SESSION[APPCONFIG]->GetValue('modify_member','groupattr'))) {
|
||||||
if ($attribute->isVisible() && !$attribute->isReadOnly() && !$attribute->isRdn()
|
if ($attribute->isVisible() && !$attribute->isReadOnly() && !$attribute->isRdn()
|
||||||
&& ($_SESSION['plaConfig']->isCommandAvailable('attribute_add_value')
|
&& ($_SESSION[APPCONFIG]->isCommandAvailable('attribute_add_value')
|
||||||
|| $_SESSION['plaConfig']->isCommandAvailable('attribute_delete_value'))) {
|
|| $_SESSION[APPCONFIG]->isCommandAvailable('attribute_delete_value'))) {
|
||||||
return $this->get('ModifyMemberMenuItem', $attribute);
|
return $this->get('ModifyMemberMenuItem', $attribute);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1566,7 +1566,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
|
|
||||||
case IdAttributeRenameMenuItem :
|
case IdAttributeRenameMenuItem :
|
||||||
if ($attribute->isVisible() && $attribute->isRdn() && !$attribute->isReadOnly()
|
if ($attribute->isVisible() && $attribute->isRdn() && !$attribute->isReadOnly()
|
||||||
&& $_SESSION['plaConfig']->isCommandAvailable('entry_rename')) {
|
&& $_SESSION[APPCONFIG]->isCommandAvailable('entry_rename')) {
|
||||||
return $this->get('RenameMenuItem', $attribute);
|
return $this->get('RenameMenuItem', $attribute);
|
||||||
}
|
}
|
||||||
return '';
|
return '';
|
||||||
@ -1742,8 +1742,8 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
$opts = $arr1;
|
$opts = $arr1;
|
||||||
|
|
||||||
$default = (count($vals) > 0 ? $vals[0] : '');
|
$default = (count($vals) > 0 ? $vals[0] : '');
|
||||||
if (!is_string($default)) $default = '';
|
if (!is_scalar($default)) $default = '';
|
||||||
if (!is_null($attribute->getValue($i)) || (strlen($default) <= 0)) {
|
if (!is_null($attribute->getValue($i)) && (strlen($default) <= 0)) {
|
||||||
$default = $this->get('DefaultValueHelper', $attribute, $i);
|
$default = $this->get('DefaultValueHelper', $attribute, $i);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1876,7 +1876,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected function drawAttributeName($attribute) {
|
protected function drawAttributeName($attribute) {
|
||||||
$config = $_SESSION['plaConfig'];
|
$config = $_SESSION[APPCONFIG];
|
||||||
|
|
||||||
$attr_display = $attribute->getFriendlyName();
|
$attr_display = $attribute->getFriendlyName();
|
||||||
|
|
||||||
@ -1896,7 +1896,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
$friendly_name = $attribute->getFriendlyName();
|
$friendly_name = $attribute->getFriendlyName();
|
||||||
|
|
||||||
if ($friendly_name != $attribute->getName()) {
|
if ($friendly_name != $attribute->getName()) {
|
||||||
return "<acronym title=\"" . sprintf(_('Note: \'%s\' is an alias for \'%s\''), $friendly_name, $attribute->getName()) . "\">alias</acronym>";
|
return sprintf('<acronym title="%s: \'%s\' %s \'%s\'">%s</acronym>',_('Note'),$friendly_name,_('is an alias for'),$attribute->getName(),_('alias'));
|
||||||
} else {
|
} else {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
@ -1989,12 +1989,12 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! $attribute->isReadOnly() && $_SESSION['plaConfig']->isCommandAvailable('attribute_delete')) {
|
if (! $attribute->isReadOnly() && $_SESSION[APPCONFIG]->isCommandAvailable('attribute_delete')) {
|
||||||
printf('<a href="javascript:deleteAttribute(\'%s\', \'%s\');" style="color:red;">'.
|
printf('<a href="javascript:deleteAttribute(\'%s\', \'%s\');" style="color:red;">'.
|
||||||
'<img src="images/trash.png" alt="Trash" /> %s</a>',
|
'<img src="images/trash.png" alt="Trash" /> %s</a>',
|
||||||
$attribute->getName(), $attribute->getFriendlyName(), _('delete attribute'));
|
$attribute->getName(), $attribute->getFriendlyName(), _('delete attribute'));
|
||||||
}
|
}
|
||||||
} elseif ($attribute->isReadOnly() || ! $_SESSION['plaConfig']->isCommandAvailable('attribute_add_value')) {
|
} elseif ($attribute->isReadOnly() || ! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add_value')) {
|
||||||
printf('<input type="text" class="roval" value="%s" readonly /><br />',
|
printf('<input type="text" class="roval" value="%s" readonly /><br />',
|
||||||
_("[no value]"));
|
_("[no value]"));
|
||||||
} else {
|
} else {
|
||||||
@ -2081,9 +2081,9 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
protected function drawDateAttributeJavascript($attribute) {
|
protected function drawDateAttributeJavascript($attribute) {
|
||||||
$this->draw('Attribute::Javascript', $attribute);
|
$this->draw('Attribute::Javascript', $attribute);
|
||||||
|
|
||||||
$entry['date'] = $_SESSION['plaConfig']->GetValue('appearance','date_attrs');
|
$entry['date'] = $_SESSION[APPCONFIG]->GetValue('appearance','date_attrs');
|
||||||
$entry['time'] = $_SESSION['plaConfig']->GetValue('appearance','date_attrs_showtime');
|
$entry['time'] = $_SESSION[APPCONFIG]->GetValue('appearance','date_attrs_showtime');
|
||||||
$entry['format'] = $_SESSION['plaConfig']->GetValue('appearance', 'date');
|
$entry['format'] = $_SESSION[APPCONFIG]->GetValue('appearance', 'date');
|
||||||
|
|
||||||
if (isset($entry['date'][$attribute->getName()]))
|
if (isset($entry['date'][$attribute->getName()]))
|
||||||
$entry['format'] = $entry['date'][$attribute->getName()];
|
$entry['format'] = $entry['date'][$attribute->getName()];
|
||||||
@ -2202,9 +2202,9 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
if ($attribute->getEntry() && $attribute->getEntry()->getDn()) {
|
if ($attribute->getEntry() && $attribute->getEntry()->getDn()) {
|
||||||
draw_jpeg_photos($this->ldapserver, $attribute->getEntry()->getDn(),
|
draw_jpeg_photos($this->ldapserver, $attribute->getEntry()->getDn(),
|
||||||
$attribute->getName(), ! $attribute->isReadOnly()
|
$attribute->getName(), ! $attribute->isReadOnly()
|
||||||
&& $_SESSION['plaConfig']->isCommandAvailable('attribute_delete'));
|
&& $_SESSION[APPCONFIG]->isCommandAvailable('attribute_delete'));
|
||||||
}
|
}
|
||||||
} elseif ($attribute->isReadOnly() || ! $_SESSION['plaConfig']->isCommandAvailable('attribute_add_value')) {
|
} elseif ($attribute->isReadOnly() || ! $_SESSION[APPCONFIG]->isCommandAvailable('attribute_add_value')) {
|
||||||
printf('<input type="text" class="roval" value="%s" readonly /><br />',_('[no value]'));
|
printf('<input type="text" class="roval" value="%s" readonly /><br />',_('[no value]'));
|
||||||
} else {
|
} else {
|
||||||
$i = 0;
|
$i = 0;
|
||||||
@ -2633,7 +2633,7 @@ class EntryWriter1 extends EntryWriter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected function drawShadowAttributeShadowDate($attribute, $shadow_date) {
|
protected function drawShadowAttributeShadowDate($attribute, $shadow_date) {
|
||||||
$config = $_SESSION['plaConfig'];
|
$config = $_SESSION[APPCONFIG];
|
||||||
|
|
||||||
//$shadow_format_attrs = array_merge($shadow_before_today_attrs,$shadow_after_today_attrs);
|
//$shadow_format_attrs = array_merge($shadow_before_today_attrs,$shadow_after_today_attrs);
|
||||||
$shadow_before_today_attrs = arrayLower($attribute->shadow_before_today_attrs);
|
$shadow_before_today_attrs = arrayLower($attribute->shadow_before_today_attrs);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/EntryWriter2.php,v 1.2 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/EntryWriter2.php,v 1.2.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -175,7 +175,7 @@ class EntryWriter2 extends EntryWriter1 {
|
|||||||
echo _(':');
|
echo _(':');
|
||||||
|
|
||||||
echo '<br/>';
|
echo '<br/>';
|
||||||
if ($_SESSION['plaConfig']->GetValue('appearance', 'show_attribute_notes')) {
|
if ($_SESSION[APPCONFIG]->GetValue('appearance', 'show_attribute_notes')) {
|
||||||
$this->draw('Notes', $attribute);
|
$this->draw('Notes', $attribute);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -246,7 +246,7 @@ class EntryWriter2 extends EntryWriter1 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected function drawAttributeMenu($attribute) {
|
protected function drawAttributeMenu($attribute) {
|
||||||
if ($attribute->getHint() /*&& $_SESSION['plaConfig']->GetValue('appearance', 'show_hints')*/) {
|
if ($attribute->getHint() /*&& $_SESSION[APPCONFIG]->GetValue('appearance', 'show_hints')*/) {
|
||||||
echo '<img src="images/light.png" alt="Hint" /> <span class="hint">'.$attribute->getHint().'</span>';
|
echo '<img src="images/light.png" alt="Hint" /> <span class="hint">'.$attribute->getHint().'</span>';
|
||||||
}
|
}
|
||||||
parent::drawAttributeMenu($attribute);
|
parent::drawAttributeMenu($attribute);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/HTMLTree.php,v 1.2 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/HTMLTree.php,v 1.2.2.2 2007/12/29 07:23:45 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -186,22 +186,22 @@ class HTMLTree extends Tree {
|
|||||||
|
|
||||||
switch($i) {
|
switch($i) {
|
||||||
case 0 :
|
case 0 :
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('schema')) return $this->get_schema_menu_item();
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('schema')) return $this->get_schema_menu_item();
|
||||||
else return '';
|
else return '';
|
||||||
case 1 :
|
case 1 :
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('search')) return $this->get_search_menu_item();
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('search')) return $this->get_search_menu_item();
|
||||||
else return '';
|
else return '';
|
||||||
case 2 :
|
case 2 :
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('server_refresh')) return $this->get_refresh_menu_item();
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('server_refresh')) return $this->get_refresh_menu_item();
|
||||||
else return '';
|
else return '';
|
||||||
case 3 :
|
case 3 :
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('server_info')) return $this->get_info_menu_item();
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('server_info')) return $this->get_info_menu_item();
|
||||||
else return '';
|
else return '';
|
||||||
case 4 :
|
case 4 :
|
||||||
if (!$ldapserver->isReadOnly() && $_SESSION['plaConfig']->isCommandAvailable('import')) return $this->get_import_menu_item();
|
if (!$ldapserver->isReadOnly() && $_SESSION[APPCONFIG]->isCommandAvailable('import')) return $this->get_import_menu_item();
|
||||||
else return '';
|
else return '';
|
||||||
case 5 :
|
case 5 :
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('export')) return $this->get_export_menu_item();
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('export')) return $this->get_export_menu_item();
|
||||||
else return '';
|
else return '';
|
||||||
case 6 :
|
case 6 :
|
||||||
if ($ldapserver->auth_type != 'config') return $this->get_logout_menu_item();
|
if ($ldapserver->auth_type != 'config') return $this->get_logout_menu_item();
|
||||||
@ -221,7 +221,7 @@ class HTMLTree extends Tree {
|
|||||||
|
|
||||||
protected function get_search_menu_item() {
|
protected function get_search_menu_item() {
|
||||||
$ldapserver = $this->getLdapServer();
|
$ldapserver = $this->getLdapServer();
|
||||||
$href = sprintf('cmd.php?cmd=search&server_id=%s&form=undefined"',$ldapserver->server_id);
|
$href = sprintf('cmd.php?cmd=search&server_id=%s&form=undefined',$ldapserver->server_id);
|
||||||
|
|
||||||
return sprintf('<a title="%s %s" href="%s"><img src="%s" alt="%s" /><br />%s</a>',
|
return sprintf('<a title="%s %s" href="%s"><img src="%s" alt="%s" /><br />%s</a>',
|
||||||
_('search'),$ldapserver->name,htmlspecialchars($href),'images/search.png',_('search'),_('search'));
|
_('search'),$ldapserver->name,htmlspecialchars($href),'images/search.png',_('search'),_('search'));
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/TemplateCreatingEntry.php,v 1.3 2007/12/15 11:27:04 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/TemplateCreatingEntry.php,v 1.3.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -104,7 +104,7 @@ class TemplateCreatingEntry extends DefaultCreatingEntry {
|
|||||||
: array();
|
: array();
|
||||||
masort($template_attrs,'page,order',1);
|
masort($template_attrs,'page,order',1);
|
||||||
|
|
||||||
$attributefactoryclass = $_SESSION['plaConfig']->GetValue('appearance','attribute_factory');
|
$attributefactoryclass = $_SESSION[APPCONFIG]->GetValue('appearance','attribute_factory');
|
||||||
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
||||||
|
|
||||||
if ($this->objectClasses) {
|
if ($this->objectClasses) {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/TemplateEditingEntry.php,v 1.3 2007/12/15 11:18:38 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/TemplateEditingEntry.php,v 1.3.2.2 2007/12/29 08:24:11 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -27,11 +27,11 @@ class TemplateEditingEntry extends DefaultEditingEntry {
|
|||||||
global $ldapserver;
|
global $ldapserver;
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('TemplateEditingEntry::readEditingTemplates()',1);
|
debug_log('Entered with ()',1,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
if ($this->valid) {
|
if ($this->valid) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('TemplateEditingEntry::readEditingTemplates() : all templates [%s] are valid',1,count($this->templates));
|
debug_log('All templates [%s] are valid',1,__FILE__,__LINE__,__METHOD__,count($this->templates));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -46,24 +46,28 @@ class TemplateEditingEntry extends DefaultEditingEntry {
|
|||||||
foreach ($all_templates as $template_name => $template_attrs) {
|
foreach ($all_templates as $template_name => $template_attrs) {
|
||||||
# don't select hidden templates
|
# don't select hidden templates
|
||||||
if (isset($template_attrs['visible']) && (! $template_attrs['visible'])) {
|
if (isset($template_attrs['visible']) && (! $template_attrs['visible'])) {
|
||||||
if (DEBUG_ENABLED) debug_log('TemplateEditingEntry::readEditingTemplates() : the template %s is not visible',1,$template_name);
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('The template %s is not visible',1,__FILE__,__LINE__,__METHOD__,$template_name);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
# don't select invalid templates
|
# don't select invalid templates
|
||||||
if (isset($template_attrs['invalid']) && $template_attrs['invalid']) {
|
if (isset($template_attrs['invalid']) && $template_attrs['invalid']) {
|
||||||
if (DEBUG_ENABLED) debug_log('TemplateEditingEntry::readEditingTemplates() : the template %s is invalid [%s]',1,$template_name,isset($template_attrs['invalid_reason']) ? $template_attrs['invalid_reason'] : '');
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('The template %s is invalid [%s]',1,__FILE__,__LINE__,__METHOD__,$template_name,isset($template_attrs['invalid_reason']) ? $template_attrs['invalid_reason'] : '');
|
||||||
$this->valid = false;
|
$this->valid = false;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
# check the template filter
|
# check the template filter
|
||||||
if (isset($template_attrs['regexp'])) {
|
if (isset($template_attrs['regexp'])) {
|
||||||
if (! @preg_match('/'.$template_attrs['regexp'].'/i',$this->getDn())) {
|
if (! @preg_match('/'.$template_attrs['regexp'].'/i',$this->getDn())) {
|
||||||
if (DEBUG_ENABLED) debug_log('TemplateEditingEntry::readEditingTemplates() : the entry dn doesn\'t match the template %s regexp',1,$template_name);
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('The entry dn doesn\'t match the template %s regexp',1,__FILE__,__LINE__,__METHOD__,$template_name);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# finally add the template to the list
|
# finally add the template to the list
|
||||||
if (DEBUG_ENABLED) debug_log('TemplateEditingEntry::readEditingTemplates() : the template %s is available for the entry',1,$template_name);
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('The template %s is available for the entry',1,__FILE__,__LINE__,__METHOD__,$template_name);
|
||||||
$this->templates[$template_name] = $template_attrs;
|
$this->templates[$template_name] = $template_attrs;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -87,7 +91,8 @@ class TemplateEditingEntry extends DefaultEditingEntry {
|
|||||||
static $attrs = array();
|
static $attrs = array();
|
||||||
$dn = $this->getDn();
|
$dn = $this->getDn();
|
||||||
|
|
||||||
if (DEBUG_ENABLED) debug_log('%s[%s]::getAttributes()',1,get_class($this),$dn);
|
if (DEBUG_ENABLED)
|
||||||
|
debug_log('Entered with () for dn [%s]',1,__FILE__,__LINE__,__METHOD__,$dn);
|
||||||
|
|
||||||
if (!$this->selected_template) {
|
if (!$this->selected_template) {
|
||||||
return parent::getAttributes();
|
return parent::getAttributes();
|
||||||
@ -95,14 +100,14 @@ class TemplateEditingEntry extends DefaultEditingEntry {
|
|||||||
$attrs[$dn] = array();
|
$attrs[$dn] = array();
|
||||||
$tmpl[$dn] = $this->selected_template;
|
$tmpl[$dn] = $this->selected_template;
|
||||||
|
|
||||||
$attributefactoryclass = $_SESSION['plaConfig']->GetValue('appearance','attribute_factory');
|
$attributefactoryclass = $_SESSION[APPCONFIG]->GetValue('appearance','attribute_factory');
|
||||||
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
eval('$attribute_factory = new '.$attributefactoryclass.'();');
|
||||||
|
|
||||||
$int_attrs_vals = $ldapserver->getDNSysAttrs($this->getDn());
|
$int_attrs_vals = $ldapserver->getDNSysAttrs($this->getDn());
|
||||||
if (! $int_attrs_vals) $attrs_vals = array();
|
if (! $int_attrs_vals) $attrs_vals = array();
|
||||||
elseif (! is_array($int_attrs_vals)) $int_attrs_vals = array($attrs_vals);
|
elseif (! is_array($int_attrs_vals)) $int_attrs_vals = array($attrs_vals);
|
||||||
|
|
||||||
$attrs_vals = $ldapserver->getDNAttrs($this->getDn(),false,$_SESSION['plaConfig']->GetValue('deref','view'));
|
$attrs_vals = $ldapserver->getDNAttrs($this->getDn(),false,$_SESSION[APPCONFIG]->GetValue('deref','view'));
|
||||||
if (! $attrs_vals) $attrs_vals = array();
|
if (! $attrs_vals) $attrs_vals = array();
|
||||||
elseif (! is_array($attrs_vals)) $attrs_vals = array($attrs_vals);
|
elseif (! is_array($attrs_vals)) $attrs_vals = array($attrs_vals);
|
||||||
|
|
||||||
|
14
lib/Tree.php
14
lib/Tree.php
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/Tree.php,v 1.2 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/Tree.php,v 1.2.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -29,10 +29,10 @@ abstract class Tree {
|
|||||||
static public function getInstance($server_id) {
|
static public function getInstance($server_id) {
|
||||||
$tree = get_cached_item($server_id,'tree');
|
$tree = get_cached_item($server_id,'tree');
|
||||||
if (!$tree) {
|
if (!$tree) {
|
||||||
$ldapserver = $_SESSION['plaConfig']->ldapservers->Instance($server_id);
|
$ldapserver = $_SESSION[APPCONFIG]->ldapservers->Instance($server_id);
|
||||||
if (!$ldapserver) return null;
|
if (!$ldapserver) return null;
|
||||||
|
|
||||||
$treeclass = $_SESSION['plaConfig']->GetValue('appearance','tree');
|
$treeclass = $_SESSION[APPCONFIG]->GetValue('appearance','tree');
|
||||||
eval('$tree = new '.$treeclass.'($server_id);');
|
eval('$tree = new '.$treeclass.'($server_id);');
|
||||||
|
|
||||||
foreach ($ldapserver->getBaseDN() as $baseDn)
|
foreach ($ldapserver->getBaseDN() as $baseDn)
|
||||||
@ -45,7 +45,7 @@ abstract class Tree {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function getLdapServer() {
|
public function getLdapServer() {
|
||||||
return $_SESSION['plaConfig']->ldapservers->Instance($this->server_id);
|
return $_SESSION[APPCONFIG]->ldapservers->Instance($this->server_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -71,7 +71,7 @@ abstract class Tree {
|
|||||||
* children array of its parent
|
* children array of its parent
|
||||||
*
|
*
|
||||||
* The added entry is created using the factory class defined
|
* The added entry is created using the factory class defined
|
||||||
* in $_SESSION['plaConfig']->custom->appearance['entry_factory']
|
* in $_SESSION[APPCONFIG]->custom->appearance['entry_factory']
|
||||||
*
|
*
|
||||||
* @param $dn the dn of the entry to create
|
* @param $dn the dn of the entry to create
|
||||||
*/
|
*/
|
||||||
@ -79,7 +79,7 @@ abstract class Tree {
|
|||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Entered with (%s)',1,__FILE__,__LINE__,__METHOD__,$dn);
|
debug_log('Entered with (%s)',1,__FILE__,__LINE__,__METHOD__,$dn);
|
||||||
|
|
||||||
$ldapserver = $_SESSION['plaConfig']->ldapservers->Instance($this->server_id);
|
$ldapserver = $_SESSION[APPCONFIG]->ldapservers->Instance($this->server_id);
|
||||||
|
|
||||||
# We need to convert the DN to lower case, to avoid any case problems and strip any unnessary spaces after commas.
|
# We need to convert the DN to lower case, to avoid any case problems and strip any unnessary spaces after commas.
|
||||||
$dnlower = $this->indexDN($dn);
|
$dnlower = $this->indexDN($dn);
|
||||||
@ -121,7 +121,7 @@ abstract class Tree {
|
|||||||
if (isset($this->misses[$dnlower]))
|
if (isset($this->misses[$dnlower]))
|
||||||
unset($this->misses[$dnlower]);
|
unset($this->misses[$dnlower]);
|
||||||
|
|
||||||
$entryfactoryclass = $_SESSION['plaConfig']->GetValue('appearance','entry_factory');
|
$entryfactoryclass = $_SESSION[APPCONFIG]->GetValue('appearance','entry_factory');
|
||||||
eval('$entry_factory = new '.$entryfactoryclass.'();');
|
eval('$entry_factory = new '.$entryfactoryclass.'();');
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('New ENTRY (%s) for (%s).',64,__FILE__,__LINE__,__METHOD__,$dnlower,$dn);
|
debug_log('New ENTRY (%s) for (%s).',64,__FILE__,__LINE__,__METHOD__,$dnlower,$dn);
|
||||||
|
204
lib/common.php
204
lib/common.php
@ -1,23 +1,33 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/common.php,v 1.80 2007/12/15 07:50:32 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/common.php,v 1.80.2.7 2007/12/30 02:05:16 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Contains code to be executed at the top of each phpLDAPadmin page.
|
* Contains code to be executed at the top of each application page.
|
||||||
* include this file at the top of every PHP file.
|
* include this file at the top of every PHP file.
|
||||||
*
|
*
|
||||||
* This file will "pre-initialise" a PLA environment so that any PHP file will have a consistent
|
* This file will "pre-initialise" an application environment so that any PHP file will have a consistent
|
||||||
* environment with other PLA PHP files.
|
* environment with other application PHP files.
|
||||||
*
|
*
|
||||||
* This code WILL NOT check that all required functions are usable/readable, etc. This process has
|
* This code WILL NOT check that all required functions are usable/readable, etc. This process has
|
||||||
* been moved to index.php (which really is only called once when a browser hits PLA for the first time).
|
* been moved to index.php (which really is only called once when a browser hits the application for the first time).
|
||||||
*
|
*
|
||||||
* The list of ADDITIONAL function files is now defined in functions.php.
|
* The list of ADDITIONAL function files is now defined in functions.php.
|
||||||
*
|
*
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
*/
|
*/
|
||||||
|
|
||||||
# Catch any scripts that are called directly.
|
# The index we will store our config in $_SESSION
|
||||||
foreach (array('cmd.php','index.php','view_jpeg_photo.php','entry_chooser.php','password_checker.php', 'download_binary_attr.php') as $script) {
|
define('APPCONFIG','plaConfig');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Catch any scripts that are called directly.
|
||||||
|
* If they are called directly, then they should be routed back through index.php
|
||||||
|
*/
|
||||||
|
$app['direct_scripts'] = array('cmd.php','index.php',
|
||||||
|
'view_jpeg_photo.php','entry_chooser.php',
|
||||||
|
'password_checker.php','download_binary_attr.php');
|
||||||
|
|
||||||
|
foreach ($app['direct_scripts'] as $script) {
|
||||||
$scriptOK = false;
|
$scriptOK = false;
|
||||||
|
|
||||||
if (preg_match('/'.$script.'$/',$_SERVER['SCRIPT_NAME'])) {
|
if (preg_match('/'.$script.'$/',$_SERVER['SCRIPT_NAME'])) {
|
||||||
@ -27,7 +37,7 @@ foreach (array('cmd.php','index.php','view_jpeg_photo.php','entry_chooser.php','
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (! $scriptOK) {
|
if (! $scriptOK) {
|
||||||
if ($_REQUEST['server_id'])
|
if (isset($_REQUEST['server_id']))
|
||||||
header(sprintf('Location: index.php?server_id=%s',$_REQUEST['server_id']));
|
header(sprintf('Location: index.php?server_id=%s',$_REQUEST['server_id']));
|
||||||
else
|
else
|
||||||
header('Location: index.php');
|
header('Location: index.php');
|
||||||
@ -35,7 +45,7 @@ if (! $scriptOK) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Timer stopwatch, used to instrument PLA
|
* Timer stopwatch, used to instrument the application
|
||||||
*/
|
*/
|
||||||
if (! function_exists('stopwatch')) {
|
if (! function_exists('stopwatch')) {
|
||||||
function stopwatch() {
|
function stopwatch() {
|
||||||
@ -55,15 +65,19 @@ if (! function_exists('stopwatch')) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# For compatability - if common has been sourced, then return to the calling script.
|
# For compatability - if common has been sourced a second time, then return to the calling script.
|
||||||
} else {
|
} else {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (function_exists('date_default_timezone_set'))
|
# Set the defualt time zone, if it isnt set in php.ini
|
||||||
|
if (function_exists('date_default_timezone_set') && ! ini_get('date.timezone'))
|
||||||
date_default_timezone_set('UTC');
|
date_default_timezone_set('UTC');
|
||||||
|
|
||||||
|
# Start out instrumentation
|
||||||
$timer = stopwatch();
|
$timer = stopwatch();
|
||||||
|
|
||||||
|
# If we are called from index.php, LIBDIR will be set, all other calls to common.php dont need to set it.
|
||||||
if (! defined('LIBDIR'))
|
if (! defined('LIBDIR'))
|
||||||
define('LIBDIR','../lib/');
|
define('LIBDIR','../lib/');
|
||||||
|
|
||||||
@ -74,112 +88,86 @@ if (! defined('E_STRICT'))
|
|||||||
# General functions needed to proceed.
|
# General functions needed to proceed.
|
||||||
ob_start();
|
ob_start();
|
||||||
require_once realpath(LIBDIR.'functions.php');
|
require_once realpath(LIBDIR.'functions.php');
|
||||||
if (ob_get_level()) ob_end_clean();
|
if (ob_get_level())
|
||||||
|
ob_end_clean();
|
||||||
|
|
||||||
/* Turn on all notices and warnings. This helps us write cleaner code (we hope at least)
|
/**
|
||||||
|
* Turn on all notices and warnings. This helps us write cleaner code (we hope at least)
|
||||||
* Our custom error handler receives all error notices that pass the error_reporting()
|
* Our custom error handler receives all error notices that pass the error_reporting()
|
||||||
* level set above.
|
* level set above.
|
||||||
*/
|
*/
|
||||||
set_error_handler('pla_error_handler');
|
|
||||||
|
# Call our custom defined error handler, if it is defined in functions.php
|
||||||
|
if (function_exists('pla_error_handler'))
|
||||||
|
set_error_handler('pla_error_handler');
|
||||||
|
|
||||||
# Disable error reporting until all our required functions are loaded.
|
# Disable error reporting until all our required functions are loaded.
|
||||||
error_reporting(0);
|
error_reporting(0);
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* functions.php should have defined our pla_function_files array, listing all our
|
* functions.php should have defined our $app['function_files'] array, listing all our
|
||||||
* required functions (order IS important).
|
* required functions (order IS important).
|
||||||
* index.php should have checked they exist and are usable - we'll assume that the user
|
* index.php should have checked they exist and are usable - we'll assume that the user
|
||||||
* has been via index.php, and fixed any problems already.
|
* has been via index.php, and fixed any problems already.
|
||||||
*/
|
*/
|
||||||
ob_start();
|
ob_start();
|
||||||
foreach ($pla_function_files as $file_name) {
|
if (isset($app['function_files']) && is_array($app['function_files']))
|
||||||
require_once realpath ($file_name);
|
foreach ($app['function_files'] as $file_name) {
|
||||||
}
|
require_once realpath ($file_name);
|
||||||
|
}
|
||||||
|
|
||||||
# Now read in config_default.php
|
# Now read in config_default.php
|
||||||
require_once realpath(LIBDIR.'config_default.php');
|
require_once realpath(LIBDIR.'config_default.php');
|
||||||
if (ob_get_level()) ob_end_clean();
|
if (ob_get_level())
|
||||||
|
ob_end_clean();
|
||||||
|
|
||||||
# We are now ready for error reporting.
|
# We are now ready for error reporting.
|
||||||
error_reporting(E_ALL);
|
error_reporting(E_ALL);
|
||||||
|
|
||||||
|
# Start our session.
|
||||||
pla_session_start();
|
pla_session_start();
|
||||||
|
|
||||||
# Check we have the correct version of the SESSION cache
|
# If we get here, and $_SESSION[APPCONFIG] is not set, then redirect the user to the index.
|
||||||
if (isset($_SESSION['cache'])) {
|
if (! isset($_SESSION[APPCONFIG])) {
|
||||||
if (!is_array($_SESSION[pla_session_id_init])) $_SESSION[pla_session_id_init] = array();
|
if (isset($_REQUEST['server_id']))
|
||||||
|
header(sprintf('Location: index.php?server_id=%s',$_REQUEST['server_id']));
|
||||||
if (!isset($_SESSION[pla_session_id_init]['version']) || !isset($_SESSION[pla_session_id_init]['config'])
|
else
|
||||||
|| $_SESSION[pla_session_id_init]['version'] !== pla_version()
|
header('Location: index.php');
|
||||||
|| $_SESSION[pla_session_id_init]['config'] != filemtime(CONFDIR.'config.php')) {
|
|
||||||
|
|
||||||
$_SESSION[pla_session_id_init]['version'] = pla_version();
|
|
||||||
$_SESSION[pla_session_id_init]['config'] = filemtime(CONFDIR.'config.php');
|
|
||||||
|
|
||||||
unset($_SESSION['cache']);
|
|
||||||
unset($_SESSION['plaConfig']);
|
|
||||||
|
|
||||||
# Our configuration information has changed, so we'll redirect to index.php to get it reloaded again.
|
|
||||||
system_message(array(
|
|
||||||
'title'=>_('Configuration cache stale.'),
|
|
||||||
'body'=>_('Your configuration has been automatically refreshed.'),
|
|
||||||
'type'=>'info'));
|
|
||||||
|
|
||||||
$config_file = CONFDIR.'config.php';
|
|
||||||
check_config($config_file);
|
|
||||||
|
|
||||||
} else {
|
|
||||||
# Sanity check, specially when upgrading from a previous release.
|
|
||||||
foreach (array_keys($_SESSION['cache']) as $id)
|
|
||||||
if (isset($_SESSION['cache'][$id]['tree']['null']) && ! is_object($_SESSION['cache'][$id]['tree']['null']))
|
|
||||||
unset($_SESSION['cache'][$id]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# If we came via index.php, then set our $config.
|
|
||||||
if (! isset($_SESSION['plaConfig']) && isset($config))
|
|
||||||
$_SESSION['plaConfig'] = $config;
|
|
||||||
|
|
||||||
# If we get here, and plaConfig is not set, then redirect the user to the index.
|
|
||||||
if (! isset($_SESSION['plaConfig'])) {
|
|
||||||
header('Location: index.php');
|
|
||||||
die();
|
die();
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
# Check our custom variables.
|
# Check our custom variables.
|
||||||
# @todo: Change this so that we dont process a cached session.
|
# @todo: Change this so that we dont process a cached session.
|
||||||
$_SESSION['plaConfig']->CheckCustom();
|
$_SESSION[APPCONFIG]->CheckCustom();
|
||||||
}
|
}
|
||||||
|
|
||||||
# If we are here, $_SESSION is set - so enabled DEBUGing if it has been configured.
|
# If we are here, $_SESSION is set - so enabled DEBUGing if it has been configured.
|
||||||
if (($_SESSION['plaConfig']->GetValue('debug','syslog') || $_SESSION['plaConfig']->GetValue('debug','file'))
|
if (($_SESSION[APPCONFIG]->GetValue('debug','syslog') || $_SESSION[APPCONFIG]->GetValue('debug','file'))
|
||||||
&& $_SESSION['plaConfig']->GetValue('debug','level'))
|
&& $_SESSION[APPCONFIG]->GetValue('debug','level'))
|
||||||
define('DEBUG_ENABLED',1);
|
define('DEBUG_ENABLED',1);
|
||||||
else
|
else
|
||||||
define('DEBUG_ENABLED',0);
|
define('DEBUG_ENABLED',0);
|
||||||
|
|
||||||
# Since DEBUG_ENABLED is set later, as $config may not be set, we'll
|
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('PLA (%s) initialised and starting with (%s).',1,pla_version(),$_REQUEST);
|
debug_log('Application (%s) initialised and starting with (%s).',1,__FILE__,__LINE__,__METHOD__,
|
||||||
|
pla_version(),$_REQUEST);
|
||||||
|
|
||||||
# Set our PHP timelimit.
|
# Set our PHP timelimit.
|
||||||
if ($_SESSION['plaConfig']->GetValue('session','timelimit'))
|
if ($_SESSION[APPCONFIG]->GetValue('session','timelimit'))
|
||||||
set_time_limit($_SESSION['plaConfig']->GetValue('session','timelimit'));
|
set_time_limit($_SESSION[APPCONFIG]->GetValue('session','timelimit'));
|
||||||
|
|
||||||
# If debug mode is set, increase the time_limit, since we probably need it.
|
# If debug mode is set, increase the time_limit, since we probably need it.
|
||||||
if (DEBUG_ENABLED && $_SESSION['plaConfig']->GetValue('session','timelimit'))
|
if (DEBUG_ENABLED && $_SESSION[APPCONFIG]->GetValue('session','timelimit'))
|
||||||
set_time_limit($_SESSION['plaConfig']->GetValue('session','timelimit') * 5);
|
set_time_limit($_SESSION[APPCONFIG]->GetValue('session','timelimit') * 5);
|
||||||
|
|
||||||
# @todo: Change this so that we dont process a cached session.
|
/**
|
||||||
$_SESSION['plaConfig']->friendly_attrs = process_friendly_attr_table();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Language configuration. Auto or specified?
|
* Language configuration. Auto or specified?
|
||||||
* Shall we attempt to auto-determine the language?
|
* Shall we attempt to auto-determine the language?
|
||||||
*/
|
*/
|
||||||
|
$language = $_SESSION[APPCONFIG]->GetValue('appearance','language');
|
||||||
$language = $_SESSION['plaConfig']->GetValue('appearance','language');
|
|
||||||
|
|
||||||
if ($language == 'auto') {
|
if ($language == 'auto') {
|
||||||
|
|
||||||
# Make sure their browser correctly reports language. If not, skip this.
|
# Make sure their browser correctly reports language. If not, skip this.
|
||||||
if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
|
if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
|
||||||
|
|
||||||
@ -201,11 +189,10 @@ if ($language == 'auto') {
|
|||||||
$HTTP_LANGS = array_unique($HTTP_LANGS);
|
$HTTP_LANGS = array_unique($HTTP_LANGS);
|
||||||
|
|
||||||
foreach ($HTTP_LANGS as $HTTP_LANG) {
|
foreach ($HTTP_LANGS as $HTTP_LANG) {
|
||||||
# Try to grab one after the other the language file
|
$language_dir = LANGDIR.$HTTP_LANG;
|
||||||
$language_file = LANGDIR.$HTTP_LANG;
|
|
||||||
|
|
||||||
if ((substr($HTTP_LANG,0,2) == 'en') ||
|
if ((substr($HTTP_LANG,0,2) == 'en') ||
|
||||||
(file_exists($language_file) && is_readable($language_file))) {
|
(file_exists($language_dir) && is_readable($language_dir))) {
|
||||||
|
|
||||||
# Set language
|
# Set language
|
||||||
putenv('LANG='.$HTTP_LANG); # e.g. LANG=de_DE
|
putenv('LANG='.$HTTP_LANG); # e.g. LANG=de_DE
|
||||||
@ -218,16 +205,16 @@ if ($language == 'auto') {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#todo: Generate an error if language doesnt exist.
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
# Grab the language file configured in config.php
|
# Grab the language file configured in config.php
|
||||||
|
#todo: Generate an error if language doesnt exist.
|
||||||
if ($language != null) {
|
if ($language != null) {
|
||||||
if (strcmp($language,'english') == 0)
|
if (strcmp($language,'english') == 0)
|
||||||
$language = 'en_GB';
|
$language = 'en_GB';
|
||||||
|
|
||||||
$language_file = LANGDIR.$language;
|
|
||||||
|
|
||||||
# Set language
|
# Set language
|
||||||
putenv('LANG='.$language); # e.g. LANG=de_DE
|
putenv('LANG='.$language); # e.g. LANG=de_DE
|
||||||
$language .= '.UTF-8';
|
$language .= '.UTF-8';
|
||||||
@ -239,7 +226,7 @@ if ($language == 'auto') {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* Strip slashes from GET, POST, and COOKIE variables if this
|
* Strip slashes from GET, POST, and COOKIE variables if this
|
||||||
* PHP install is configured to automatically addslashes()
|
* PHP install is configured to automatically addslashes()
|
||||||
*/
|
*/
|
||||||
@ -251,34 +238,43 @@ if (get_magic_quotes_gpc() && (! isset($slashes_stripped) || ! $slashes_stripped
|
|||||||
$slashes_stripped = true;
|
$slashes_stripped = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_REQUEST['server_id'])) {
|
/**
|
||||||
$ldapserver = $_SESSION['plaConfig']->ldapservers->Instance($_REQUEST['server_id']);
|
* Create our application repository variable.
|
||||||
} else {
|
|
||||||
$ldapserver = $_SESSION['plaConfig']->ldapservers->Instance(null);
|
|
||||||
}
|
|
||||||
|
|
||||||
# Test to see if we should log out the user due to the timeout.
|
|
||||||
if ($ldapserver->haveAuthInfo() && $ldapserver->auth_type != 'config') {
|
|
||||||
/* If time out value has been reached:
|
|
||||||
- log out user
|
|
||||||
- put $server_id in array of recently timed out servers */
|
|
||||||
if (session_timed_out($ldapserver)) {
|
|
||||||
$timeout_url = 'cmd.php?cmd=timeout&server_id='.$ldapserver->server_id;
|
|
||||||
echo '<script type="text/javascript" language="javascript">location.href=\''.$timeout_url.'\'</script>';
|
|
||||||
die();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Update $_SESSION['activity']
|
|
||||||
* for timeout and automatic logout feature
|
|
||||||
*/
|
*/
|
||||||
if ($ldapserver->haveAuthInfo())
|
if (isset($_REQUEST['server_id'])) {
|
||||||
set_lastactivity($ldapserver);
|
$ldapserver = $_SESSION[APPCONFIG]->ldapservers->Instance($_REQUEST['server_id']);
|
||||||
|
} else {
|
||||||
|
if (isset($_SESSION[APPCONFIG]->ldapservers) && is_object($_SESSION[APPCONFIG]->ldapservers))
|
||||||
|
$ldapserver = $_SESSION[APPCONFIG]->ldapservers->Instance(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Look/evaluate our timeout
|
||||||
|
*/
|
||||||
|
if (isset($ldapserver) && is_object($ldapserver) && method_exists($ldapserver,'haveAuthInfo')) {
|
||||||
|
if ($ldapserver->haveAuthInfo() && isset($ldapserver->auth_type) && $ldapserver->auth_type != 'config') {
|
||||||
|
/**
|
||||||
|
* If time out value has been reached:
|
||||||
|
* - log out user
|
||||||
|
* - put $server_id in array of recently timed out servers
|
||||||
|
*/
|
||||||
|
if (function_exists('session_timed_out') && session_timed_out($ldapserver)) {
|
||||||
|
$app['url_timeout'] = sprintf('cmd.php?cmd=timeout&server_id=%s',$_REQUEST['server_id']);
|
||||||
|
printf('<script type="text/javascript" language="javascript">location.href=\'%s\'</script>',
|
||||||
|
htmlspecialchars($app['url_timeout']));
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Update $_SESSION['activity'] for timeout and automatic logout feature
|
||||||
|
if ($ldapserver->haveAuthInfo() && function_exists('set_lastactivity'))
|
||||||
|
set_lastactivity($ldapserver);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* At this point we have read all our additional function PHP files and our configuration.
|
* At this point we have read all our additional function PHP files and our configuration.
|
||||||
|
* If we are using hooks, run the session_init hook.
|
||||||
*/
|
*/
|
||||||
run_hook('post_session_init',array());
|
if (function_exists('run_hook'))
|
||||||
|
run_hook('post_session_init',array());
|
||||||
?>
|
?>
|
||||||
|
@ -1,22 +1,35 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/config_default.php,v 1.27.2.1 2007/12/20 10:47:20 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/config_default.php,v 1.27.2.3 2007/12/26 01:47:20 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Configuration processing and defaults.
|
* Configuration processing and defaults.
|
||||||
|
*
|
||||||
* @author The phpLDAPadmin development team
|
* @author The phpLDAPadmin development team
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
|
*
|
||||||
* @todo Add validation of set variables to enforce limits or particular values.
|
* @todo Add validation of set variables to enforce limits or particular values.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
# The minimum version of PHP required to run phpLDAPadmin.
|
# The minimum version of PHP required to run phpLDAPadmin.
|
||||||
define('REQUIRED_PHP_VERSION','5.0.0');
|
define('REQUIRED_PHP_VERSION','5.0.0');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The config class contains all our configuration settings for a session.
|
||||||
|
*
|
||||||
|
* An instance of this class should be stored in $_SESSION to maintain state, and to avoid
|
||||||
|
* rebuilding/rereading it at the state of each page output.
|
||||||
|
*
|
||||||
|
* @package phpLDAPadmin
|
||||||
|
*
|
||||||
|
* @author The phpLDAPadmin development team
|
||||||
|
* @author Deon George
|
||||||
|
*/
|
||||||
class Config {
|
class Config {
|
||||||
public $custom;
|
public $custom;
|
||||||
protected $default;
|
protected $default;
|
||||||
|
|
||||||
public $ldapservers = array();
|
public $ldapservers = array();
|
||||||
public $friendly_attrs = array();
|
protected $friendly_attrs = array();
|
||||||
public $queries = array();
|
public $queries = array();
|
||||||
public $attrs_display_order = array();
|
public $attrs_display_order = array();
|
||||||
public $hidden_attrs = array();
|
public $hidden_attrs = array();
|
||||||
@ -59,6 +72,10 @@ class Config {
|
|||||||
'desc'=>'Date format whenever dates are shown',
|
'desc'=>'Date format whenever dates are shown',
|
||||||
'default'=>'%A %e %B %Y');
|
'default'=>'%A %e %B %Y');
|
||||||
|
|
||||||
|
$this->default->appearance['custom_templates_only'] = array(
|
||||||
|
'desc'=>'Only display the custom templates.',
|
||||||
|
'default'=>false);
|
||||||
|
|
||||||
$this->default->appearance['date_attrs'] = array(
|
$this->default->appearance['date_attrs'] = array(
|
||||||
'desc'=>'Array of attributes that should show a jscalendar',
|
'desc'=>'Array of attributes that should show a jscalendar',
|
||||||
'default'=>array('shadowExpire'=>'%es','shadowLastChange'=>'%es'));
|
'default'=>array('shadowExpire'=>'%es','shadowLastChange'=>'%es'));
|
||||||
@ -556,5 +573,63 @@ class Config {
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reads the friendly_attrs array as defined in config.php and lower-cases all
|
||||||
|
* the keys. Will return an empty array if the friendly_attrs array is not defined
|
||||||
|
* in config.php. This is simply used so we can more easily lookup user-friendly
|
||||||
|
* attributes configured by the admin.
|
||||||
|
*/
|
||||||
|
function getFriendlyAttrs($friendly_attrs) {
|
||||||
|
if (defined('DEBUG_ENABLED') && DEBUG_ENABLED)
|
||||||
|
debug_log('Entered with ()',1,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
|
# If friendly_attrs is not an array, then set to an empty array.
|
||||||
|
if (! is_array($friendly_attrs))
|
||||||
|
$this->friendly_attrs = array();
|
||||||
|
|
||||||
|
else
|
||||||
|
foreach ($friendly_attrs as $old_name => $new_name)
|
||||||
|
$this->friendly_attrs[strtolower($old_name)] = $new_name;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function will return the friendly name of an attribute, if it exists.
|
||||||
|
* If the friendly name doesnt exist, the attribute name will be returned.
|
||||||
|
*
|
||||||
|
* @param attribute
|
||||||
|
* @return string friendly name|attribute
|
||||||
|
*/
|
||||||
|
public function getFriendlyName($attr) {
|
||||||
|
if ($this->haveFriendlyName($attr))
|
||||||
|
return $this->friendly_attrs[strtolower($attr)];
|
||||||
|
else
|
||||||
|
return $attr;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function will return true if a friendly name exists for an attribute.
|
||||||
|
* If the friendly name doesnt exist, it will return false.
|
||||||
|
*
|
||||||
|
* @param attribute
|
||||||
|
* @return boolean true|false
|
||||||
|
*/
|
||||||
|
public function haveFriendlyName($attr) {
|
||||||
|
return isset($this->friendly_attrs[strtolower($attr)]);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function will return the <ancronym> html for a friendly name attribute.
|
||||||
|
*
|
||||||
|
* @param attribute
|
||||||
|
* @return string html for the friendly name.
|
||||||
|
*/
|
||||||
|
public function getFriendlyHTML($attr) {
|
||||||
|
if ($this->haveFriendlyName($attr))
|
||||||
|
return sprintf('<acronym title="%s %s">%s</acronym>',_('Alias for'),$attr,htmlspecialchars($this->getFriendlyName($attr)));
|
||||||
|
else
|
||||||
|
return $attr;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/export_functions.php,v 1.36 2007/12/15 11:42:01 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/export_functions.php,v 1.36.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fuctions and classes for exporting ldap entries to others formats
|
* Fuctions and classes for exporting ldap entries to others formats
|
||||||
@ -70,7 +70,7 @@ class LdapExportInfo {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
function LdapExportInfo($server_id,$base_dn=null,$query_filter=null,$scope=null) {
|
function LdapExportInfo($server_id,$base_dn=null,$query_filter=null,$scope=null) {
|
||||||
$this->ldapserver = $_SESSION['plaConfig']->ldapservers->Instance($server_id);
|
$this->ldapserver = $_SESSION[APPCONFIG]->ldapservers->Instance($server_id);
|
||||||
$this->ldapserver->base_dn = $base_dn;
|
$this->ldapserver->base_dn = $base_dn;
|
||||||
$this->ldapserver->query_filter = $query_filter;
|
$this->ldapserver->query_filter = $query_filter;
|
||||||
$this->ldapserver->scope = $scope;
|
$this->ldapserver->scope = $scope;
|
||||||
@ -245,7 +245,7 @@ class PlaLdapExporter extends PlaAbstractExporter {
|
|||||||
|
|
||||||
# get the data to be exported
|
# get the data to be exported
|
||||||
$this->results = $this->ldap_info->ldapserver->search(null,$this->base_dn,$this->queryFilter,$this->attributes,
|
$this->results = $this->ldap_info->ldapserver->search(null,$this->base_dn,$this->queryFilter,$this->attributes,
|
||||||
$this->scope,true,$_SESSION['plaConfig']->GetValue('deref','export'));
|
$this->scope,true,$_SESSION[APPCONFIG]->GetValue('deref','export'));
|
||||||
|
|
||||||
# if no result, there is a something wrong
|
# if no result, there is a something wrong
|
||||||
if (! $this->results && $this->ldap_info->ldapserver->errno())
|
if (! $this->results && $this->ldap_info->ldapserver->errno())
|
||||||
|
1604
lib/functions.php
1604
lib/functions.php
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/hooks.php,v 1.10 2007/12/15 11:30:24 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/hooks.php,v 1.10.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Functions related to hooks management.
|
* Functions related to hooks management.
|
||||||
@ -50,7 +50,7 @@ function sort_array_by_priority($a,$b) {
|
|||||||
* @return true if all procedures returned true, false otherwise.
|
* @return true if all procedures returned true, false otherwise.
|
||||||
*/
|
*/
|
||||||
function run_hook($hook_name,$args) {
|
function run_hook($hook_name,$args) {
|
||||||
$hooks = isset($_SESSION['plaConfig']) ? $_SESSION['plaConfig']->hooks : array();
|
$hooks = isset($_SESSION[APPCONFIG]) ? $_SESSION[APPCONFIG]->hooks : array();
|
||||||
|
|
||||||
$debug = 0;
|
$debug = 0;
|
||||||
syslog_debug("Running hook $hook_name.");
|
syslog_debug("Running hook $hook_name.");
|
||||||
@ -161,8 +161,8 @@ function remove_hook($hook_name,$priority,$hook_function,$rollback_function) {
|
|||||||
*/
|
*/
|
||||||
function clear_hooks($hook_name) {
|
function clear_hooks($hook_name) {
|
||||||
global $config;
|
global $config;
|
||||||
if (!isset($config) && isset($_SESSION['plaConfig']))
|
if (!isset($config) && isset($_SESSION[APPCONFIG]))
|
||||||
$config = $_SESSION['plaConfig'];
|
$config = $_SESSION[APPCONFIG];
|
||||||
|
|
||||||
if (array_key_exists($hook_name,$config->hooks))
|
if (array_key_exists($hook_name,$config->hooks))
|
||||||
unset($config->hooks[$hook_name]);
|
unset($config->hooks[$hook_name]);
|
||||||
|
149
lib/page.php
149
lib/page.php
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/page.php,v 1.3.2.5 2007/12/21 12:51:28 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/page.php,v 1.3.2.11 2007/12/30 02:05:46 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Page Rendering Functions
|
* Page Rendering Functions
|
||||||
@ -39,14 +39,14 @@ class page {
|
|||||||
# Try and work around if php compression is on, or the user has set compression in the config.
|
# Try and work around if php compression is on, or the user has set compression in the config.
|
||||||
# type = 1 for user gzip, 0 for php.ini gzip.
|
# type = 1 for user gzip, 0 for php.ini gzip.
|
||||||
$obStatus = ob_get_status();
|
$obStatus = ob_get_status();
|
||||||
if ($obStatus['type'] && $obStatus['status']) {
|
if (isset($obStatus['type']) && $obStatus['type'] && $obStatus['status']) {
|
||||||
$preOutput = ob_get_contents();
|
$preOutput = ob_get_contents();
|
||||||
ob_end_clean();
|
ob_end_clean();
|
||||||
}
|
}
|
||||||
|
|
||||||
header('Content-type: text/html; charset="UTF-8"');
|
header('Content-type: text/html; charset="UTF-8"');
|
||||||
if (isset($_SESSION['plaConfig'])
|
if (isset($_SESSION[APPCONFIG])
|
||||||
&& $_SESSION['plaConfig']->GetValue('appearance','compress')
|
&& $_SESSION[APPCONFIG]->GetValue('appearance','compress')
|
||||||
&& eregi('gzip',$_SERVER['HTTP_ACCEPT_ENCODING'])
|
&& eregi('gzip',$_SERVER['HTTP_ACCEPT_ENCODING'])
|
||||||
&& ! ini_get('zlib.output_compression')) {
|
&& ! ini_get('zlib.output_compression')) {
|
||||||
|
|
||||||
@ -56,10 +56,10 @@ class page {
|
|||||||
debug_log('Sent COMPRESSED header to browser and discarded (%s)',129,__FILE__,__LINE__,__METHOD__,$preOutput);
|
debug_log('Sent COMPRESSED header to browser and discarded (%s)',129,__FILE__,__LINE__,__METHOD__,$preOutput);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_SESSION['plaConfig'])
|
if (isset($_SESSION[APPCONFIG])
|
||||||
&& $_SESSION['plaConfig']->GetValue('appearance','compress')
|
&& $_SESSION[APPCONFIG]->GetValue('appearance','compress')
|
||||||
&& ini_get('zlib.output_compression'))
|
&& ini_get('zlib.output_compression'))
|
||||||
$this->setsysmsg(array(array('title'=>_('Warning'),'body'=>_('WARNING: You cannot have PHP compression and phpLDAPadmin compression enabled at the same time. Please unset zlib.output_compression or set $config->custom->appearance[\'compress\']=false'),'type'=>'warn')));
|
$this->setsysmsg(array('title'=>_('Warning'),'body'=>_('WARNING: You cannot have PHP compression and phpLDAPadmin compression enabled at the same time. Please unset zlib.output_compression or set $config->custom->appearance[\'compress\']=false'),'type'=>'warn'));
|
||||||
|
|
||||||
# Turn back on output buffering.
|
# Turn back on output buffering.
|
||||||
ob_start();
|
ob_start();
|
||||||
@ -75,7 +75,7 @@ class page {
|
|||||||
$this->_app['logo'] = $this->_default['logo'];
|
$this->_app['logo'] = $this->_default['logo'];
|
||||||
|
|
||||||
if (! is_null($server_id))
|
if (! is_null($server_id))
|
||||||
$this->_app['urlcss'] = sprintf('%s%s',CSSDIR,$_SESSION['plaConfig']->GetValue('appearance','stylesheet'));
|
$this->_app['urlcss'] = sprintf('%s%s',CSSDIR,$_SESSION[APPCONFIG]->GetValue('appearance','stylesheet'));
|
||||||
else
|
else
|
||||||
$this->_app['urlcss'] = sprintf('%s%s',CSSDIR,'style.css');
|
$this->_app['urlcss'] = sprintf('%s%s',CSSDIR,'style.css');
|
||||||
|
|
||||||
@ -99,24 +99,27 @@ class page {
|
|||||||
# Page Title
|
# Page Title
|
||||||
echo '<head>';
|
echo '<head>';
|
||||||
|
|
||||||
if (isset($_SESSION['plaConfig']))
|
if (isset($_SESSION[APPCONFIG]))
|
||||||
printf('<title>%s (%s) - %s</title>',
|
printf('<title>%s (%s) - %s</title>',
|
||||||
$this->_app['title'],pla_version(),$_SESSION['plaConfig']->GetValue('appearance','page_title'));
|
$this->_app['title'],pla_version(),$_SESSION[APPCONFIG]->GetValue('appearance','page_title'));
|
||||||
else
|
else
|
||||||
printf('<title>%s - %s</title>',$this->_app['title'],pla_version());
|
printf('<title>%s - %s</title>',$this->_app['title'],pla_version());
|
||||||
|
|
||||||
# Style sheet.
|
# Style sheet.
|
||||||
printf('<link type="text/css" rel="stylesheet" href="%s" />',$this->_app['urlcss']);
|
printf('<link type="text/css" rel="stylesheet" href="%s" />',$this->_app['urlcss']);
|
||||||
printf('<link type="text/css" rel="stylesheet" media="all" href="%sjscalendar/calendar-blue.css" title="blue" />',JSDIR);
|
|
||||||
printf('<link type="text/css" rel="stylesheet" href="%s/phplayersmenu/layerstreemenu.css" />','../htdocs/'.JSDIR);
|
|
||||||
printf('<link rel="shortcut icon" href="%s/images/favicon.ico" type="image/vnd.microsoft.icon" />','../htdocs/');
|
printf('<link rel="shortcut icon" href="%s/images/favicon.ico" type="image/vnd.microsoft.icon" />','../htdocs/');
|
||||||
echo "\n";
|
|
||||||
printf('<script type="text/javascript" src="%spla_ajax.js"></script>',JSDIR);
|
if (defined('JSDIR')) {
|
||||||
printf('<script type="text/javascript" src="%stree_hide.js"></script>',JSDIR);
|
printf('<link type="text/css" rel="stylesheet" media="all" href="%sjscalendar/calendar-blue.css" title="blue" />',JSDIR);
|
||||||
printf('<script type="text/javascript" src="%sentry_chooser.js"></script>',JSDIR);
|
printf('<link type="text/css" rel="stylesheet" href="%s/phplayersmenu/layerstreemenu.css" />','../htdocs/'.JSDIR);
|
||||||
printf('<script type="text/javascript" src="%sto_ascii.js"></script>','../htdocs/'.JSDIR);
|
echo "\n";
|
||||||
printf('<script type="text/javascript" src="%sjscalendar/calendar.js"></script>','../htdocs/'.JSDIR);
|
printf('<script type="text/javascript" src="%spla_ajax.js"></script>',JSDIR);
|
||||||
echo "\n";
|
printf('<script type="text/javascript" src="%stree_hide.js"></script>',JSDIR);
|
||||||
|
printf('<script type="text/javascript" src="%sentry_chooser.js"></script>',JSDIR);
|
||||||
|
printf('<script type="text/javascript" src="%sto_ascii.js"></script>','../htdocs/'.JSDIR);
|
||||||
|
printf('<script type="text/javascript" src="%sjscalendar/calendar.js"></script>','../htdocs/'.JSDIR);
|
||||||
|
echo "\n";
|
||||||
|
}
|
||||||
|
|
||||||
# HTML head requirements.
|
# HTML head requirements.
|
||||||
if (is_array($this->_head) && count ($this->_head))
|
if (is_array($this->_head) && count ($this->_head))
|
||||||
@ -131,14 +134,14 @@ class page {
|
|||||||
if (defined('DEBUG_ENABLED') && DEBUG_ENABLED)
|
if (defined('DEBUG_ENABLED') && DEBUG_ENABLED)
|
||||||
debug_log('Entered with ()',129,__FILE__,__LINE__,__METHOD__);
|
debug_log('Entered with ()',129,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
if (isset($_SESSION['plaConfig']))
|
if (isset($_SESSION[APPCONFIG]))
|
||||||
$pagetitle = $_SESSION['plaConfig']->GetValue('appearance','page_title') ? ' - '.$_SESSION['plaConfig']->GetValue('appearance','page_title') : '';
|
$pagetitle = $_SESSION[APPCONFIG]->GetValue('appearance','page_title') ? ' - '.$_SESSION[APPCONFIG]->GetValue('appearance','page_title') : '';
|
||||||
else
|
else
|
||||||
$pagetitle = '';
|
$pagetitle = '';
|
||||||
|
|
||||||
echo '<tr class="head">';
|
echo '<tr class="head">';
|
||||||
|
|
||||||
if (is_null($this->server_id))
|
if (! isset($this->server_id) || is_null($this->server_id))
|
||||||
printf('<td colspan=0>%s</td>',' ');
|
printf('<td colspan=0>%s</td>',' ');
|
||||||
else
|
else
|
||||||
printf('<td colspan=0>%s %s</td>',$this->_app['title'],$pagetitle);
|
printf('<td colspan=0>%s %s</td>',$this->_app['title'],$pagetitle);
|
||||||
@ -150,63 +153,31 @@ class page {
|
|||||||
if (defined('DEBUG_ENABLED') && DEBUG_ENABLED)
|
if (defined('DEBUG_ENABLED') && DEBUG_ENABLED)
|
||||||
debug_log('Entered with ()',129,__FILE__,__LINE__,__METHOD__);
|
debug_log('Entered with ()',129,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
if (! isset($this->server_id) || is_null($this->server_id)) {
|
|
||||||
echo ' ';
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo '<table class="control" border=0>';
|
echo '<table class="control" border=0>';
|
||||||
echo '<tr>';
|
echo '<tr>';
|
||||||
|
|
||||||
$empty = true;
|
$empty = true;
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('home')) {
|
if (function_exists('cmd_control_pane'))
|
||||||
printf('<td><a href="cmd.php?cmd=welcome" title="%s"><img src="images/home-big.png" alt="%s" /><br />%s</a></td>',
|
foreach (cmd_control_pane() as $cmd => $cmddetails) {
|
||||||
_('Home'),_('Home'),_('Home'));
|
$cmds = preg_split('/:/',$cmd);
|
||||||
$empty = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('purge')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable($cmds)) {
|
||||||
printf('<td><a href="cmd.php?cmd=purge_cache" title="%s"><img src="images/trash-big.png" alt="%s" /><br />%s</a></td>',
|
if ((isset($cmddetails['enable']) && trim($cmddetails['enable'])) || ! isset($cmddetails['enable'])) {
|
||||||
_('Purge caches'),_('Purge all cached data in phpLDAPadmin, including server schemas.'),_('Purge caches'));
|
printf('<td>%s</td>',$cmddetails['link']);
|
||||||
$empty = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('external_links', 'feature')) {
|
$empty = false;
|
||||||
printf('<td><a href="%s" target="new" title="%s"><img src="images/request-feature.png" alt="%s" /><br />%s</a></td>',
|
}
|
||||||
get_href('add_rfe'),_('Request feature'),_('light'),_('Request feature'));
|
}
|
||||||
$empty = false;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('external_links', 'bug')) {
|
if ($empty)
|
||||||
printf('<td><a href="%s" target="new" title="%s"><img src="images/bug-big.png" alt="%s" /><br />%s</a></td>',
|
|
||||||
get_href('add_bug'),_('Report a bug'),_('bug'),_('Report a bug'));
|
|
||||||
$empty = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('external_links', 'donation')) {
|
|
||||||
printf('<td><a href="%s" target="new" title="%s"><img src="images/smile-big.png" alt="%s" /><br />%s</a></td>',
|
|
||||||
get_href('donate'),_('Donate'),_('Donate'),_('Donate'));
|
|
||||||
$empty = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->GetValue('appearance','hide_debug_info')) {
|
|
||||||
printf('<td><a href="cmd.php?cmd=show_cache" title="%s"><img src="images/debug-cache.png" alt="%s" /><br />%s</a></td>',
|
|
||||||
_('Show Cache'),_('Show Cache'),_('Show Cache'));
|
|
||||||
$empty = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('external_links', 'help')) {
|
|
||||||
printf('<td><a href="%s" target="new" title="%s"><img src="images/help-big.png" alt="%s" /><br />%s</a></td>',
|
|
||||||
get_href('documentation'),_('Help'),_('Help'),_('Help'));
|
|
||||||
$empty = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($empty) {
|
|
||||||
echo '<td></td>';
|
echo '<td></td>';
|
||||||
}
|
|
||||||
|
|
||||||
printf('<td> </td><td class="logo"><img src="%s" alt="Logo" class="logo" /></td>',$this->_app['logo']);
|
if (isset($this->_app['logo']))
|
||||||
|
printf('<td class="spacer"> </td><td class="logo"><img src="%s" alt="Logo" class="logo" /></td>',$this->_app['logo']);
|
||||||
|
else
|
||||||
|
echo '<td class="spacer" colspan=2> </td>';
|
||||||
|
|
||||||
echo '</tr>';
|
echo '</tr>';
|
||||||
echo '</table>';
|
echo '</table>';
|
||||||
@ -216,10 +187,10 @@ class page {
|
|||||||
if (defined('DEBUG_ENABLED') && DEBUG_ENABLED)
|
if (defined('DEBUG_ENABLED') && DEBUG_ENABLED)
|
||||||
debug_log('Entered with ()',129,__FILE__,__LINE__,__METHOD__);
|
debug_log('Entered with ()',129,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
if (! isset($_SESSION['plaConfig']))
|
if (! isset($_SESSION[APPCONFIG]))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
$server_id = is_null($this->server_id) ? min($_SESSION['plaConfig']->ldapservers->GetServerList()) : $this->server_id;
|
$server_id = is_null($this->server_id) ? min($_SESSION[APPCONFIG]->ldapservers->GetServerList()) : $this->server_id;
|
||||||
|
|
||||||
echo '<td class="tree" colspan=2>';
|
echo '<td class="tree" colspan=2>';
|
||||||
if (count(server_info_list(true)) > 1) {
|
if (count(server_info_list(true)) > 1) {
|
||||||
@ -232,9 +203,9 @@ class page {
|
|||||||
echo "\n\n";
|
echo "\n\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($_SESSION['plaConfig']->ldapservers->GetServerList() as $server_id) {
|
foreach ($_SESSION[APPCONFIG]->ldapservers->GetServerList() as $server_id) {
|
||||||
printf('<div id="SID_%s" style="display: %s">',$server_id,($server_id == $this->server_id) ? 'block': 'none');
|
printf('<div id="SID_%s" style="display: %s">',$server_id,($server_id == $this->server_id) ? 'block': 'none');
|
||||||
$ldapserver = $_SESSION['plaConfig']->ldapservers->Instance($server_id);
|
$ldapserver = $_SESSION[APPCONFIG]->ldapservers->Instance($server_id);
|
||||||
|
|
||||||
$tree = Tree::getInstance($ldapserver->server_id);
|
$tree = Tree::getInstance($ldapserver->server_id);
|
||||||
|
|
||||||
@ -246,7 +217,7 @@ class page {
|
|||||||
|
|
||||||
public function block_add($side,$object) {
|
public function block_add($side,$object) {
|
||||||
if (! is_object($object))
|
if (! is_object($object))
|
||||||
error('not an object');
|
error(sprintf('block_add called with [%s], but it is not an object',serialize($object)));
|
||||||
|
|
||||||
$this->_block[$side][] = $object;
|
$this->_block[$side][] = $object;
|
||||||
}
|
}
|
||||||
@ -312,9 +283,11 @@ class page {
|
|||||||
ob_start();
|
ob_start();
|
||||||
}
|
}
|
||||||
|
|
||||||
# System Message
|
# Add the Session System Messages
|
||||||
if (isset($_SESSION['sysmsg']) && $_SESSION['sysmsg']) {
|
if (isset($_SESSION['sysmsg']) && is_array($_SESSION['sysmsg'])) {
|
||||||
$this->setsysmsg($_SESSION['sysmsg']);
|
foreach ($_SESSION['sysmsg'] as $msg)
|
||||||
|
$this->setsysmsg($msg);
|
||||||
|
|
||||||
unset($_SESSION['sysmsg']);
|
unset($_SESSION['sysmsg']);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -330,8 +303,8 @@ class page {
|
|||||||
echo $object->draw('body');
|
echo $object->draw('body');
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($compress && ob_get_level() && isset($_SESSION['plaConfig'])
|
if ($compress && ob_get_level() && isset($_SESSION[APPCONFIG])
|
||||||
&& $_SESSION['plaConfig']->GetValue('appearance','compress')
|
&& $_SESSION[APPCONFIG]->GetValue('appearance','compress')
|
||||||
&& ! ini_get('zlib.output_compression')
|
&& ! ini_get('zlib.output_compression')
|
||||||
&& eregi('gzip',$_SERVER['HTTP_ACCEPT_ENCODING'])) {
|
&& eregi('gzip',$_SERVER['HTTP_ACCEPT_ENCODING'])) {
|
||||||
|
|
||||||
@ -410,8 +383,8 @@ class page {
|
|||||||
echo '</html>';
|
echo '</html>';
|
||||||
|
|
||||||
# compress output
|
# compress output
|
||||||
if (ob_get_level() && isset($_SESSION['plaConfig'])
|
if (ob_get_level() && isset($_SESSION[APPCONFIG])
|
||||||
&& $_SESSION['plaConfig']->GetValue('appearance','compress')
|
&& $_SESSION[APPCONFIG]->GetValue('appearance','compress')
|
||||||
&& ! ini_get('zlib.output_compression')
|
&& ! ini_get('zlib.output_compression')
|
||||||
&& eregi('gzip',$_SERVER['HTTP_ACCEPT_ENCODING'])) {
|
&& eregi('gzip',$_SERVER['HTTP_ACCEPT_ENCODING'])) {
|
||||||
|
|
||||||
@ -434,17 +407,13 @@ class page {
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (isset($this->sysmsg))
|
if (isset($this->sysmsg))
|
||||||
$nummsg = count($this->sysmsg);
|
$msgnum = count($this->sysmsg) + 1;
|
||||||
else
|
else
|
||||||
$nummsg = 1;
|
$msgnum = 1;
|
||||||
|
|
||||||
foreach ($data as $msgno => $msgarray) {
|
foreach (array('title','body','type') as $index)
|
||||||
$msgindex = $msgno + $nummsg;
|
if (isset($data[$index]))
|
||||||
|
$this->sysmsg[$msgnum][$index] = $data[$index];
|
||||||
foreach (array('title','body','type') as $index)
|
|
||||||
if (isset($msgarray[$index]))
|
|
||||||
$this->sysmsg[$msgindex][$index] = $msgarray[$index];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_form_advanced.php,v 1.26 2007/12/15 07:50:33 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_form_advanced.php,v 1.26.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -32,8 +32,8 @@ function focus_filter() {
|
|||||||
<tr><td class="title" colspan=2><?php echo _('Advanced Search Form'); ?></td></tr>
|
<tr><td class="title" colspan=2><?php echo _('Advanced Search Form'); ?></td></tr>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
$ss = $_SESSION['plaConfig']->isCommandAvailable('search', 'simple_search');
|
$ss = $_SESSION[APPCONFIG]->isCommandAvailable('search', 'simple_search');
|
||||||
$ps = $_SESSION['plaConfig']->isCommandAvailable('search', 'predefined_search');
|
$ps = $_SESSION[APPCONFIG]->isCommandAvailable('search', 'predefined_search');
|
||||||
if ($ss | $ps) {
|
if ($ss | $ps) {
|
||||||
echo '<tr><td class="subtitle" colspan=2>(';
|
echo '<tr><td class="subtitle" colspan=2>(';
|
||||||
if ($ss) {
|
if ($ss) {
|
||||||
@ -104,7 +104,7 @@ if (isset($entry['base_dn']['exist']) && $entry['base_dn']['exist'])
|
|||||||
|
|
||||||
<td><input type="text" name="display_attrs" style="width: 200px" value="<?php
|
<td><input type="text" name="display_attrs" style="width: 200px" value="<?php
|
||||||
echo $entry['display']['string'] ? htmlspecialchars($entry['display']['string']) :
|
echo $entry['display']['string'] ? htmlspecialchars($entry['display']['string']) :
|
||||||
join(', ',$_SESSION['plaConfig']->GetValue('search','result_attributes')); ?>" /></td>
|
join(', ',$_SESSION[APPCONFIG]->GetValue('search','result_attributes')); ?>" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_form_predefined.php,v 1.10 2007/12/15 07:50:33 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_form_predefined.php,v 1.10.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -21,8 +21,8 @@ else
|
|||||||
|
|
||||||
printf('<tr><td class="title" colspan=2>%s</td></tr>',_('Predefined Searches'));
|
printf('<tr><td class="title" colspan=2>%s</td></tr>',_('Predefined Searches'));
|
||||||
|
|
||||||
$ss = $_SESSION['plaConfig']->isCommandAvailable('search', 'simple_search');
|
$ss = $_SESSION[APPCONFIG]->isCommandAvailable('search', 'simple_search');
|
||||||
$as = $_SESSION['plaConfig']->isCommandAvailable('search', 'advanced_search');
|
$as = $_SESSION[APPCONFIG]->isCommandAvailable('search', 'advanced_search');
|
||||||
if ($ss | $as) {
|
if ($ss | $as) {
|
||||||
echo '<tr><td class="subtitle" colspan=2>(';
|
echo '<tr><td class="subtitle" colspan=2>(';
|
||||||
if ($ss) {
|
if ($ss) {
|
||||||
@ -37,7 +37,7 @@ if ($ss | $as) {
|
|||||||
|
|
||||||
echo '<tr><td colspan=2> </td></tr>';
|
echo '<tr><td colspan=2> </td></tr>';
|
||||||
|
|
||||||
if (! isset($_SESSION['plaConfig']->queries) || ! is_array($_SESSION['plaConfig']->queries) || count($_SESSION['plaConfig']->queries) == 0) {
|
if (! isset($_SESSION[APPCONFIG]->queries) || ! is_array($_SESSION[APPCONFIG]->queries) || count($_SESSION[APPCONFIG]->queries) == 0) {
|
||||||
printf('<tr><td>%s</td></tr>',_('No queries have been defined in config.php.'));
|
printf('<tr><td>%s</td></tr>',_('No queries have been defined in config.php.'));
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
@ -47,7 +47,7 @@ if (! isset($_SESSION['plaConfig']->queries) || ! is_array($_SESSION['plaConfig'
|
|||||||
echo '<td>';
|
echo '<td>';
|
||||||
echo '<select name="predefined">';
|
echo '<select name="predefined">';
|
||||||
|
|
||||||
foreach ($_SESSION['plaConfig']->queries as $q_number => $q) {
|
foreach ($_SESSION[APPCONFIG]->queries as $q_number => $q) {
|
||||||
if ($selected_q_number === $q_number)
|
if ($selected_q_number === $q_number)
|
||||||
$selected = ' selected';
|
$selected = ' selected';
|
||||||
else
|
else
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_form_simple.php,v 1.16 2007/12/15 07:50:33 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_form_simple.php,v 1.16.2.2 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -23,8 +23,8 @@
|
|||||||
<tr><td class="title"><?php echo _('Simple Search Form'); ?></td></tr>
|
<tr><td class="title"><?php echo _('Simple Search Form'); ?></td></tr>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
$as = $_SESSION['plaConfig']->isCommandAvailable('search', 'advanced_search');
|
$as = $_SESSION[APPCONFIG]->isCommandAvailable('search', 'advanced_search');
|
||||||
$ps = $_SESSION['plaConfig']->isCommandAvailable('search', 'predefined_search');
|
$ps = $_SESSION[APPCONFIG]->isCommandAvailable('search', 'predefined_search');
|
||||||
if ($as | $ps) {
|
if ($as | $ps) {
|
||||||
echo '<tr><td class="subtitle">(';
|
echo '<tr><td class="subtitle">(';
|
||||||
if ($as) {
|
if ($as) {
|
||||||
@ -52,16 +52,16 @@
|
|||||||
<tr><td><small><b><?php echo _('Search for entries whose'); ?></b></small></td></tr>
|
<tr><td><small><b><?php echo _('Search for entries whose'); ?></b></small></td></tr>
|
||||||
<tr><td>
|
<tr><td>
|
||||||
<select name="attribute">
|
<select name="attribute">
|
||||||
<?php foreach ($_SESSION['plaConfig']->GetValue('search','attributes') as $id => $attribute) { ?>
|
<?php foreach ($_SESSION[APPCONFIG]->GetValue('search','attributes') as $id => $attribute) { ?>
|
||||||
<option value="<?php echo rawurlencode($attribute); ?>"<?php echo $attribute==$entry['attr']?' selected="true"':''; ?>>
|
<option value="<?php echo rawurlencode($attribute); ?>"<?php echo $attribute==$entry['attr']?' selected="true"':''; ?>>
|
||||||
<?php echo htmlspecialchars($ldapserver->showFriendlyAttr($attribute)); ?>
|
<?php echo htmlspecialchars($_SESSION[APPCONFIG]->getFriendlyName($attribute)); ?>
|
||||||
</option>
|
</option>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select name="criterion">
|
<select name="criterion">
|
||||||
<?php
|
<?php
|
||||||
foreach ($_SESSION['plaConfig']->GetValue('search','criteria_options') as $c) { ?>
|
foreach ($_SESSION[APPCONFIG]->GetValue('search','criteria_options') as $c) { ?>
|
||||||
<option value="<?php echo $c; ?>"<?php echo $c==$entry['criterion']?' selected="true"':''; ?>>
|
<option value="<?php echo $c; ?>"<?php echo $c==$entry['criterion']?' selected="true"':''; ?>>
|
||||||
<?php echo htmlspecialchars(_($c)); ?>
|
<?php echo htmlspecialchars(_($c)); ?>
|
||||||
</option>
|
</option>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_results_list.php,v 1.7 2007/12/15 07:50:33 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_results_list.php,v 1.7.2.2 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
@ -23,7 +23,7 @@ foreach ($results as $dn => $dndetails) {
|
|||||||
printf('<td class="icon"><img src="images/%s" alt="icon" /></td>',get_icon($ldapserver,$dn));
|
printf('<td class="icon"><img src="images/%s" alt="icon" /></td>',get_icon($ldapserver,$dn));
|
||||||
|
|
||||||
$formatted_dn = get_rdn($dn);
|
$formatted_dn = get_rdn($dn);
|
||||||
if (!$_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
if (!$_SESSION[APPCONFIG]->isCommandAvailable('schema')) {
|
||||||
$formatted_dn = explode('=', $formatted_dn, 2);
|
$formatted_dn = explode('=', $formatted_dn, 2);
|
||||||
$formatted_dn = $formatted_dn[1];
|
$formatted_dn = $formatted_dn[1];
|
||||||
}
|
}
|
||||||
@ -32,7 +32,7 @@ foreach ($results as $dn => $dndetails) {
|
|||||||
$ldapserver->server_id,rawurlencode(dn_unescape($dn)),htmlspecialchars($formatted_dn));
|
$ldapserver->server_id,rawurlencode(dn_unescape($dn)),htmlspecialchars($formatted_dn));
|
||||||
echo '</tr>';
|
echo '</tr>';
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('schema')) {
|
||||||
printf('<tr class="list_attr"><td class="blank"> </td><td class="attr">dn</td><td class="val">%s</td></tr>',htmlspecialchars(dn_unescape($dn)));
|
printf('<tr class="list_attr"><td class="blank"> </td><td class="attr">dn</td><td class="val">%s</td></tr>',htmlspecialchars(dn_unescape($dn)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,18 +45,9 @@ foreach ($results as $dn => $dndetails) {
|
|||||||
if ($ldapserver->isAttrBinary($attr))
|
if ($ldapserver->isAttrBinary($attr))
|
||||||
$values = array('(binary)');
|
$values = array('(binary)');
|
||||||
|
|
||||||
if (isset($_SESSION['plaConfig']->friendly_attrs[strtolower($attr)])) {
|
|
||||||
$a = $attr;
|
|
||||||
$attr = htmlspecialchars($_SESSION['plaConfig']->friendly_attrs[strtolower($attr)]);
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
|
||||||
$attr = sprintf('<acronym title="Alias for %s">%s</acronym>', $a, $attr);
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
$attr = htmlspecialchars($attr);
|
|
||||||
|
|
||||||
echo '<tr class="list_attr">';
|
echo '<tr class="list_attr">';
|
||||||
echo '<td class="blank"> </td>';
|
echo '<td class="blank"> </td>';
|
||||||
printf('<td class="attr" valign="top">%s</td>',$attr);
|
printf('<td class="attr" valign="top">%s</td>',$_SESSION[APPCONFIG]->getFriendlyHTML($attr));
|
||||||
|
|
||||||
echo '<td class="val">';
|
echo '<td class="val">';
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_results_table.php,v 1.9 2007/12/15 07:50:33 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/search_results_table.php,v 1.9.2.2 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Incoming variables (among others)
|
* Incoming variables (among others)
|
||||||
@ -10,7 +10,7 @@
|
|||||||
* @package phpLDAPadmin
|
* @package phpLDAPadmin
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('schema')) {
|
||||||
$all_attrs = array('' =>1, 'dn'=>1);
|
$all_attrs = array('' =>1, 'dn'=>1);
|
||||||
} else {
|
} else {
|
||||||
$all_attrs = array('' =>1);
|
$all_attrs = array('' =>1);
|
||||||
@ -33,7 +33,7 @@ foreach ($results as $dn => $dndetails) {
|
|||||||
$attrs_display = array();
|
$attrs_display = array();
|
||||||
$attrs_display[''] = sprintf('<center><a href="%s"><img src="images/%s" alt="icon" /></a></center>',$edit_url,get_icon($ldapserver,$dn));
|
$attrs_display[''] = sprintf('<center><a href="%s"><img src="images/%s" alt="icon" /></a></center>',$edit_url,get_icon($ldapserver,$dn));
|
||||||
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
if ($_SESSION[APPCONFIG]->isCommandAvailable('schema')) {
|
||||||
$dn_display = strlen($dn) > 40
|
$dn_display = strlen($dn) > 40
|
||||||
? sprintf('<acronym title="%s">%s...</acronym>',htmlspecialchars($dn),htmlspecialchars(substr($dn,0,40)))
|
? sprintf('<acronym title="%s">%s...</acronym>',htmlspecialchars($dn),htmlspecialchars(substr($dn,0,40)))
|
||||||
: htmlspecialchars($dn);
|
: htmlspecialchars($dn);
|
||||||
@ -47,14 +47,7 @@ foreach ($results as $dn => $dndetails) {
|
|||||||
if ($attr == 'dn')
|
if ($attr == 'dn')
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
# Clean up the attr name
|
$attr_display = $_SESSION[APPCONFIG]->getFriendlyHTML($attr);
|
||||||
if (isset($_SESSION['plaConfig']->friendly_attrs[strtolower($attr)])) {
|
|
||||||
$attr_display = htmlspecialchars($_SESSION['plaConfig']->friendly_attrs[strtolower($attr)]);
|
|
||||||
if ($_SESSION['plaConfig']->isCommandAvailable('schema')) {
|
|
||||||
$attr_display = sprintf('<acronym title="Alias for %s">%s</acronym>', $attr, $attr_display);
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
$attr_display = htmlspecialchars($attr);
|
|
||||||
|
|
||||||
if (! isset($all_attrs[$attr_display]))
|
if (! isset($all_attrs[$attr_display]))
|
||||||
$all_attrs[$attr_display] = 1;
|
$all_attrs[$attr_display] = 1;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/server_functions.php,v 1.51 2007/12/15 07:50:33 wurley Exp $ */
|
/* $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/server_functions.php,v 1.51.2.5 2007/12/26 09:26:33 wurley Exp $ */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Classes and functions for LDAP server configuration and capability
|
* Classes and functions for LDAP server configuration and capability
|
||||||
@ -47,24 +47,6 @@ class LDAPserver {
|
|||||||
$this->server_id = $server_id;
|
$this->server_id = $server_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Checks the specified server id for sanity. Ensures that the server is indeed in the configured
|
|
||||||
* list and active. This is used by many many scripts to ensure that valid server ID values
|
|
||||||
* are passed in POST and GET.
|
|
||||||
*
|
|
||||||
* @param int $server_id the server_id of the LDAP server as defined in config.php
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
function isValidServer() {
|
|
||||||
if (DEBUG_ENABLED)
|
|
||||||
debug_log('Entered with ()',17,__FILE__,__LINE__,__METHOD__);
|
|
||||||
|
|
||||||
if (trim($this->host))
|
|
||||||
return true;
|
|
||||||
else
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if there is sufficent information to Authenticate to the LDAP server.
|
* Check if there is sufficent information to Authenticate to the LDAP server.
|
||||||
*
|
*
|
||||||
@ -413,8 +395,8 @@ class LDAPserver {
|
|||||||
debug_log('Checking config for BaseDN',80,__FILE__,__LINE__,__METHOD__);
|
debug_log('Checking config for BaseDN',80,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
# If the base is set in the configuration file, then just return that.
|
# If the base is set in the configuration file, then just return that.
|
||||||
if (count($_SESSION['plaConfig']->ldapservers->GetValue($this->server_id,'server','base')) > 0) {
|
if (count($_SESSION[APPCONFIG]->ldapservers->GetValue($this->server_id,'server','base')) > 0) {
|
||||||
$this->_baseDN = $_SESSION['plaConfig']->ldapservers->GetValue($this->server_id,'server','base');
|
$this->_baseDN = $_SESSION[APPCONFIG]->ldapservers->GetValue($this->server_id,'server','base');
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Return BaseDN from Config [%s]',17,__FILE__,__LINE__,__METHOD__,implode('|',$this->_baseDN));
|
debug_log('Return BaseDN from Config [%s]',17,__FILE__,__LINE__,__METHOD__,implode('|',$this->_baseDN));
|
||||||
@ -478,7 +460,7 @@ class LDAPserver {
|
|||||||
$return = true;
|
$return = true;
|
||||||
|
|
||||||
elseif ($this->getLoggedInDN() === 'anonymous' &&
|
elseif ($this->getLoggedInDN() === 'anonymous' &&
|
||||||
($_SESSION['plaConfig']->GetValue('appearance','anonymous_bind_implies_read_only') === true))
|
($_SESSION[APPCONFIG]->GetValue('appearance','anonymous_bind_implies_read_only') === true))
|
||||||
|
|
||||||
$return = true;
|
$return = true;
|
||||||
|
|
||||||
@ -505,7 +487,7 @@ class LDAPserver {
|
|||||||
debug_log('Entered with ()',17,__FILE__,__LINE__,__METHOD__);
|
debug_log('Entered with ()',17,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
if ($this->connect(false) && $this->haveAuthInfo() && ! $this->isReadOnly() &&
|
if ($this->connect(false) && $this->haveAuthInfo() && ! $this->isReadOnly() &&
|
||||||
$_SESSION['plaConfig']->isCommandAvailable('entry_delete', 'mass_delete'))
|
$_SESSION[APPCONFIG]->isCommandAvailable('entry_delete', 'mass_delete'))
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
@ -533,7 +515,7 @@ class LDAPserver {
|
|||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Entered with ()',17,__FILE__,__LINE__,__METHOD__);
|
debug_log('Entered with ()',17,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->isCommandAvailable('entry_create')) return false;
|
if (! $_SESSION[APPCONFIG]->isCommandAvailable('entry_create')) return false;
|
||||||
else return $this->show_create;
|
else return $this->show_create;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -566,7 +548,7 @@ class LDAPserver {
|
|||||||
* @return bool True if the feature is enabled and false otherwise.
|
* @return bool True if the feature is enabled and false otherwise.
|
||||||
*/
|
*/
|
||||||
function isVisible() {
|
function isVisible() {
|
||||||
if ($this->isValidServer() && $this->visible)
|
if ($this->visible)
|
||||||
$return = true;
|
$return = true;
|
||||||
else
|
else
|
||||||
$return = false;
|
$return = false;
|
||||||
@ -924,6 +906,13 @@ class LDAPserver {
|
|||||||
return $schema;
|
return $schema;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the attribute used for login
|
||||||
|
*/
|
||||||
|
function getLoginAttr() {
|
||||||
|
return $this->login_attr;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fetches whether the login_attr feature is enabled for a specified server.
|
* Fetches whether the login_attr feature is enabled for a specified server.
|
||||||
*
|
*
|
||||||
@ -939,7 +928,7 @@ class LDAPserver {
|
|||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
function isLoginAttrEnabled() {
|
function isLoginAttrEnabled() {
|
||||||
if ((strcasecmp($this->login_attr,'dn') != 0) && trim($this->login_attr))
|
if ((strcasecmp($this->getLoginAttr(),'dn') != 0) && trim($this->getLoginAttr()))
|
||||||
$return = true;
|
$return = true;
|
||||||
else
|
else
|
||||||
$return = false;
|
$return = false;
|
||||||
@ -962,9 +951,9 @@ class LDAPserver {
|
|||||||
*/
|
*/
|
||||||
function isLoginStringEnabled() {
|
function isLoginStringEnabled() {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('login_attr is [%s]',80,__FILE__,__LINE__,__METHOD__,$this->login_attr);
|
debug_log('login_attr is [%s]',80,__FILE__,__LINE__,__METHOD__,$this->getLoginAttr());
|
||||||
|
|
||||||
if (! strcasecmp($this->login_attr,'string'))
|
if (! strcasecmp($this->getLoginAttr(),'string'))
|
||||||
$return = true;
|
$return = true;
|
||||||
else
|
else
|
||||||
$return = false;
|
$return = false;
|
||||||
@ -1004,10 +993,10 @@ class LDAPserver {
|
|||||||
*/
|
*/
|
||||||
function isAnonBindAllowed() {
|
function isAnonBindAllowed() {
|
||||||
# If only_login_allowed_dns is set, then we cant have anonymous.
|
# If only_login_allowed_dns is set, then we cant have anonymous.
|
||||||
if (count($_SESSION['plaConfig']->ldapservers->GetValue($this->server_id,'login','allowed_dns')) > 0)
|
if (count($_SESSION[APPCONFIG]->ldapservers->GetValue($this->server_id,'login','allowed_dns')) > 0)
|
||||||
$return = false;
|
$return = false;
|
||||||
else
|
else
|
||||||
$return = $_SESSION['plaConfig']->ldapservers->GetValue($this->server_id,'login','anon_bind');
|
$return = $_SESSION[APPCONFIG]->ldapservers->GetValue($this->server_id,'login','anon_bind');
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Entered with (), Returning (%s)',17,__FILE__,__LINE__,__METHOD__,$return);
|
debug_log('Entered with (), Returning (%s)',17,__FILE__,__LINE__,__METHOD__,$return);
|
||||||
@ -1826,7 +1815,7 @@ class LDAPserver {
|
|||||||
/**
|
/**
|
||||||
* Determines if an attribute's value can contain multiple lines. Attributes that fall
|
* Determines if an attribute's value can contain multiple lines. Attributes that fall
|
||||||
* in this multi-line category may be configured in config.php. Hence, this function
|
* in this multi-line category may be configured in config.php. Hence, this function
|
||||||
* accesses the global variable $_SESSION['plaConfig']->custom->appearance['multi_line_attributes'];
|
* accesses the global variable $_SESSION[APPCONFIG]->custom->appearance['multi_line_attributes'];
|
||||||
*
|
*
|
||||||
* Usage example:
|
* Usage example:
|
||||||
* <code>
|
* <code>
|
||||||
@ -1851,7 +1840,7 @@ class LDAPserver {
|
|||||||
|
|
||||||
# Next, compare strictly by name first
|
# Next, compare strictly by name first
|
||||||
else
|
else
|
||||||
foreach ($_SESSION['plaConfig']->GetValue('appearance','multi_line_attributes') as $multi_line_attr_name)
|
foreach ($_SESSION[APPCONFIG]->GetValue('appearance','multi_line_attributes') as $multi_line_attr_name)
|
||||||
if (strcasecmp($multi_line_attr_name,$attr_name) == 0) {
|
if (strcasecmp($multi_line_attr_name,$attr_name) == 0) {
|
||||||
$return = true;
|
$return = true;
|
||||||
break;
|
break;
|
||||||
@ -1865,7 +1854,7 @@ class LDAPserver {
|
|||||||
$syntax_oid = $schema_attr->getSyntaxOID();
|
$syntax_oid = $schema_attr->getSyntaxOID();
|
||||||
|
|
||||||
if ($syntax_oid)
|
if ($syntax_oid)
|
||||||
foreach ($_SESSION['plaConfig']->GetValue('appearance','multi_line_syntax_oids') as $multi_line_syntax_oid)
|
foreach ($_SESSION[APPCONFIG]->GetValue('appearance','multi_line_syntax_oids') as $multi_line_syntax_oid)
|
||||||
if ($multi_line_syntax_oid == $syntax_oid) {
|
if ($multi_line_syntax_oid == $syntax_oid) {
|
||||||
$return = true;
|
$return = true;
|
||||||
break;
|
break;
|
||||||
@ -2212,8 +2201,8 @@ class LDAPserver {
|
|||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Entered with (%s)',17,__FILE__,__LINE__,__METHOD__,$attr);
|
debug_log('Entered with (%s)',17,__FILE__,__LINE__,__METHOD__,$attr);
|
||||||
|
|
||||||
$read_only_attrs = isset($_SESSION['plaConfig']->read_only_attrs) ? $_SESSION['plaConfig']->read_only_attrs : array();
|
$read_only_attrs = isset($_SESSION[APPCONFIG]->read_only_attrs) ? $_SESSION[APPCONFIG]->read_only_attrs : array();
|
||||||
$read_only_except_dn = isset($_SESSION['plaConfig']->read_only_except_dn) ? $_SESSION['plaConfig']->read_only_except_dn : '';
|
$read_only_except_dn = isset($_SESSION[APPCONFIG]->read_only_except_dn) ? $_SESSION[APPCONFIG]->read_only_except_dn : '';
|
||||||
|
|
||||||
$attr = trim($attr);
|
$attr = trim($attr);
|
||||||
if (! $attr)
|
if (! $attr)
|
||||||
@ -2258,9 +2247,9 @@ class LDAPserver {
|
|||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Entered with (%s)',17,__FILE__,__LINE__,__METHOD__,$attr);
|
debug_log('Entered with (%s)',17,__FILE__,__LINE__,__METHOD__,$attr);
|
||||||
|
|
||||||
$hidden_attrs = isset($_SESSION['plaConfig']->hidden_attrs) ? $_SESSION['plaConfig']->hidden_attrs : array();
|
$hidden_attrs = isset($_SESSION[APPCONFIG]->hidden_attrs) ? $_SESSION[APPCONFIG]->hidden_attrs : array();
|
||||||
$hidden_attrs_ro = isset($_SESSION['plaConfig']->hidden_attrs_ro) ? $_SESSION['plaConfig']->hidden_attrs_ro : array();
|
$hidden_attrs_ro = isset($_SESSION[APPCONFIG]->hidden_attrs_ro) ? $_SESSION[APPCONFIG]->hidden_attrs_ro : array();
|
||||||
$hidden_except_dn = isset($_SESSION['plaConfig']->hidden_except_dn) ? $_SESSION['plaConfig']->hidden_except_dn : '';
|
$hidden_except_dn = isset($_SESSION[APPCONFIG]->hidden_except_dn) ? $_SESSION[APPCONFIG]->hidden_except_dn : '';
|
||||||
|
|
||||||
$attr = trim($attr);
|
$attr = trim($attr);
|
||||||
if (! $attr)
|
if (! $attr)
|
||||||
@ -2407,9 +2396,9 @@ class LDAPserver {
|
|||||||
|
|
||||||
if (! empty($this->login_class))
|
if (! empty($this->login_class))
|
||||||
$filter = sprintf('(&(objectClass=%s)(%s=%s))',
|
$filter = sprintf('(&(objectClass=%s)(%s=%s))',
|
||||||
$this->login_class,$this->login_attr,$_SERVER['PHP_AUTH_USER']);
|
$this->login_class,$this->getLoginAttr(),$_SERVER['PHP_AUTH_USER']);
|
||||||
else
|
else
|
||||||
$filter = sprintf('%s=%s',$this->login_attr,$_SERVER['PHP_AUTH_USER']);
|
$filter = sprintf('%s=%s',$this->getLoginAttr(),$_SERVER['PHP_AUTH_USER']);
|
||||||
|
|
||||||
foreach ($this->getBaseDN() as $base_dn) {
|
foreach ($this->getBaseDN() as $base_dn) {
|
||||||
$result = $this->search(null,$base_dn,$filter,array('dn'));
|
$result = $this->search(null,$base_dn,$filter,array('dn'));
|
||||||
@ -2437,20 +2426,15 @@ class LDAPserver {
|
|||||||
'title'=>_('Authenticate to server'),
|
'title'=>_('Authenticate to server'),
|
||||||
'body'=>_('Bad username or password. Please try again.'),
|
'body'=>_('Bad username or password. Please try again.'),
|
||||||
'type'=>'error'),
|
'type'=>'error'),
|
||||||
'cmd.php?cmd=login_form');
|
sprintf('cmd.php?cmd=login_form&server_id=%s',$this->server_id));
|
||||||
syslog_notice("Authentification FAILED for $dn");
|
syslog_notice("Authentification FAILED for $dn");
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->auth_type = 'config';
|
$this->auth_type = 'config';
|
||||||
$this->login_dn = $dn;
|
$this->login_dn = $dn;
|
||||||
$this->login_pass = $pass;
|
$this->login_pass = $pass;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
//system_message(array(
|
|
||||||
// 'title'=>_('Authenticate to server'),
|
|
||||||
// 'body'=>_('Sorry, you are not allowed to use phpLDAPadmin with this LDAP server.'),
|
|
||||||
// 'type'=>'error'),
|
|
||||||
// 'cmd.php?cmd=login_form');
|
|
||||||
//pla_error(_('Sorry, you are not allowed to use phpLDAPadmin with this LDAP server.'));
|
|
||||||
$this->auth_type = 'session';
|
$this->auth_type = 'session';
|
||||||
$return = false;
|
$return = false;
|
||||||
}
|
}
|
||||||
@ -2703,25 +2687,6 @@ class LDAPserver {
|
|||||||
return $container;
|
return $container;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Show friendly attribute.
|
|
||||||
*/
|
|
||||||
function showFriendlyAttr($attr) {
|
|
||||||
if (DEBUG_ENABLED)
|
|
||||||
debug_log('Entered with (%s)',17,__FILE__,__LINE__,__METHOD__,$attr);
|
|
||||||
|
|
||||||
$_SESSION['plaConfig']->friendly_attrs = process_friendly_attr_table();
|
|
||||||
|
|
||||||
if (isset($_SESSION['plaConfig']->friendly_attrs[strtolower($attr)]))
|
|
||||||
$return = $_SESSION['plaConfig']->friendly_attrs[strtolower($attr)];
|
|
||||||
else
|
|
||||||
$return = $attr;
|
|
||||||
|
|
||||||
if (DEBUG_ENABLED)
|
|
||||||
debug_log('Returning (%s)',17,__FILE__,__LINE__,__METHOD__,$return);
|
|
||||||
return $return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Determins if the specified attribute is contained in the $unique_attrs list
|
* Determins if the specified attribute is contained in the $unique_attrs list
|
||||||
* configured in config.php.
|
* configured in config.php.
|
||||||
@ -2732,7 +2697,7 @@ class LDAPserver {
|
|||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Entered with (%s)',17,__FILE__,__LINE__,__METHOD__,$attr_name);
|
debug_log('Entered with (%s)',17,__FILE__,__LINE__,__METHOD__,$attr_name);
|
||||||
|
|
||||||
$unique_attrs = isset($_SESSION['plaConfig']->unique_attrs) ? $_SESSION['plaConfig']->unique_attrs : array();
|
$unique_attrs = isset($_SESSION[APPCONFIG]->unique_attrs) ? $_SESSION[APPCONFIG]->unique_attrs : array();
|
||||||
|
|
||||||
if (isset($unique_attrs) && is_array($unique_attrs))
|
if (isset($unique_attrs) && is_array($unique_attrs))
|
||||||
foreach ($unique_attrs as $attr)
|
foreach ($unique_attrs as $attr)
|
||||||
@ -2762,8 +2727,8 @@ class LDAPserver {
|
|||||||
if ($this->isUniqueAttr($attr_name)) {
|
if ($this->isUniqueAttr($attr_name)) {
|
||||||
|
|
||||||
$con = $this->connect(false,'unique_attr',false,true,
|
$con = $this->connect(false,'unique_attr',false,true,
|
||||||
$_SESSION['plaConfig']->ldapservers->GetValue($this->server_id,'unique_attrs','dn'),
|
$_SESSION[APPCONFIG]->ldapservers->GetValue($this->server_id,'unique_attrs','dn'),
|
||||||
$_SESSION['plaConfig']->ldapservers->GetValue($this->server_id,'unique_attrs','pass'));
|
$_SESSION[APPCONFIG]->ldapservers->GetValue($this->server_id,'unique_attrs','pass'));
|
||||||
|
|
||||||
if (! $con)
|
if (! $con)
|
||||||
pla_error(sprintf(_('Unable to bind to <b>%s</b> with your with unique_attrs credentials. Please check your configuration file.'),$this->name));
|
pla_error(sprintf(_('Unable to bind to <b>%s</b> with your with unique_attrs credentials. Please check your configuration file.'),$this->name));
|
||||||
@ -2859,10 +2824,10 @@ class LDAPserver {
|
|||||||
|
|
||||||
$user = trim(strtolower($user));
|
$user = trim(strtolower($user));
|
||||||
|
|
||||||
if (! $_SESSION['plaConfig']->ldapservers->GetValue($this->server_id,'login','allowed_dns'))
|
if (! $_SESSION[APPCONFIG]->ldapservers->GetValue($this->server_id,'login','allowed_dns'))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
foreach ($_SESSION['plaConfig']->ldapservers->GetValue($this->server_id,'login','allowed_dns') as $login_allowed_dn) {
|
foreach ($_SESSION[APPCONFIG]->ldapservers->GetValue($this->server_id,'login','allowed_dns') as $login_allowed_dn) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('Working through (%s)',80,__FILE__,__LINE__,__METHOD__,$login_allowed_dn);
|
debug_log('Working through (%s)',80,__FILE__,__LINE__,__METHOD__,$login_allowed_dn);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/session_functions.php,v 1.18 2007/12/15 07:50:33 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/session_functions.php,v 1.18.2.3 2007/12/29 08:24:11 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A collection of functions to handle sessions throughout phpLDAPadmin.
|
* A collection of functions to handle sessions throughout phpLDAPadmin.
|
||||||
@ -25,7 +25,7 @@ define('pla_session_id_ses_max', 36);
|
|||||||
*/
|
*/
|
||||||
function pla_session_get_id() {
|
function pla_session_get_id() {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('pla_session_get_id(): Entered with ()',1);
|
debug_log('Entered with ()',1,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
$id_md5 = md5(rand(1,1000000));
|
$id_md5 = md5(rand(1,1000000));
|
||||||
$ip_md5 = md5($_SERVER['REMOTE_ADDR']);
|
$ip_md5 = md5($_SERVER['REMOTE_ADDR']);
|
||||||
@ -50,7 +50,7 @@ function pla_session_get_id() {
|
|||||||
*/
|
*/
|
||||||
function pla_session_verify_id() {
|
function pla_session_verify_id() {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('pla_session_verify_id(): Entered with ()',1);
|
debug_log('Entered with ()',1,__FILE__,__LINE__,__METHOD__);
|
||||||
|
|
||||||
$check_id = session_id();
|
$check_id = session_id();
|
||||||
$ip_md5 = md5($_SERVER['REMOTE_ADDR']);
|
$ip_md5 = md5($_SERVER['REMOTE_ADDR']);
|
||||||
@ -81,6 +81,8 @@ function pla_session_param() {
|
|||||||
* @return bool Returns true if the session was started the first time
|
* @return bool Returns true if the session was started the first time
|
||||||
*/
|
*/
|
||||||
function pla_session_start() {
|
function pla_session_start() {
|
||||||
|
global $config;
|
||||||
|
|
||||||
/* If session.auto_start is on in the server's PHP configuration (php.ini), then
|
/* If session.auto_start is on in the server's PHP configuration (php.ini), then
|
||||||
* we will have problems loading our schema cache since the session will have started
|
* we will have problems loading our schema cache since the session will have started
|
||||||
* prior to loading the SchemaItem (and descedants) class. Destroy the auto-started
|
* prior to loading the SchemaItem (and descedants) class. Destroy the auto-started
|
||||||
@ -117,7 +119,41 @@ function pla_session_start() {
|
|||||||
if (pla_session_id_paranoid && ! pla_session_verify_id())
|
if (pla_session_id_paranoid && ! pla_session_verify_id())
|
||||||
pla_error('Session inconsistent or session timeout');
|
pla_error('Session inconsistent or session timeout');
|
||||||
|
|
||||||
return (! $is_initialized) ? true : false;
|
# Check we have the correct version of the SESSION cache
|
||||||
|
if (isset($_SESSION['cache']) || isset($_SESSION[pla_session_id_init])) {
|
||||||
|
if (!is_array($_SESSION[pla_session_id_init])) $_SESSION[pla_session_id_init] = array();
|
||||||
|
|
||||||
|
if (!isset($_SESSION[pla_session_id_init]['version']) || !isset($_SESSION[pla_session_id_init]['config'])
|
||||||
|
|| $_SESSION[pla_session_id_init]['version'] !== pla_version()
|
||||||
|
|| $_SESSION[pla_session_id_init]['config'] != filemtime(CONFDIR.'config.php')) {
|
||||||
|
|
||||||
|
$_SESSION[pla_session_id_init]['version'] = pla_version();
|
||||||
|
$_SESSION[pla_session_id_init]['config'] = filemtime(CONFDIR.'config.php');
|
||||||
|
|
||||||
|
unset($_SESSION['cache']);
|
||||||
|
unset($_SESSION[APPCONFIG]);
|
||||||
|
|
||||||
|
# Our configuration information has changed, so we'll redirect to index.php to get it reloaded again.
|
||||||
|
system_message(array(
|
||||||
|
'title'=>_('Configuration cache stale.'),
|
||||||
|
'body'=>_('Your configuration has been automatically refreshed.'),
|
||||||
|
'type'=>'info'));
|
||||||
|
|
||||||
|
$config_file = CONFDIR.'config.php';
|
||||||
|
check_config($config_file);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
# Sanity check, specially when upgrading from a previous release.
|
||||||
|
if (isset($_SESSION['cache']))
|
||||||
|
foreach (array_keys($_SESSION['cache']) as $id)
|
||||||
|
if (isset($_SESSION['cache'][$id]['tree']['null']) && ! is_object($_SESSION['cache'][$id]['tree']['null']))
|
||||||
|
unset($_SESSION['cache'][$id]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# If we came via index.php, then set our $config.
|
||||||
|
if (! isset($_SESSION[APPCONFIG]) && isset($config))
|
||||||
|
$_SESSION[APPCONFIG] = $config;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/syslog.php,v 1.13 2007/12/15 07:50:33 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/syslog.php,v 1.13.2.1 2007/12/26 09:26:33 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Functions related to syslog logging.
|
* Functions related to syslog logging.
|
||||||
@ -24,11 +24,11 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
# If config_default.php hasnt been called yet, then return.
|
# If config_default.php hasnt been called yet, then return.
|
||||||
if (! isset($_SESSION['plaConfig']))
|
if (! defined('APPCONFIG') || ! isset($_SESSION[APPCONFIG]))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* Initialize syslog */
|
/* Initialize syslog */
|
||||||
if ($_SESSION['plaConfig']->GetValue('debug','syslog')) {
|
if ($_SESSION[APPCONFIG]->GetValue('debug','syslog')) {
|
||||||
define_syslog_variables();
|
define_syslog_variables();
|
||||||
openlog('phpldapadmin', LOG_ODELAY, LOG_DAEMON );
|
openlog('phpldapadmin', LOG_ODELAY, LOG_DAEMON );
|
||||||
}
|
}
|
||||||
@ -42,7 +42,7 @@ if ($_SESSION['plaConfig']->GetValue('debug','syslog')) {
|
|||||||
* @param log_string String to log.
|
* @param log_string String to log.
|
||||||
*/
|
*/
|
||||||
function syslog_msg ( $emergency, $log_string, $ldapserver=null ) {
|
function syslog_msg ( $emergency, $log_string, $ldapserver=null ) {
|
||||||
if (isset($_SESSION['plaConfig']) && $_SESSION['plaConfig']->GetValue('debug','syslog')) {
|
if (isset($_SESSION[APPCONFIG]) && $_SESSION[APPCONFIG]->GetValue('debug','syslog')) {
|
||||||
|
|
||||||
if (isset($ldapserver->server_id))
|
if (isset($ldapserver->server_id))
|
||||||
$log_string = sprintf('(%s) %s',$ldapserver->getLoggedInDN(),$log_string);
|
$log_string = sprintf('(%s) %s',$ldapserver->getLoggedInDN(),$log_string);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/template_functions.php,v 1.43 2007/12/15 11:15:24 wurley Exp $ */
|
/* $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/template_functions.php,v 1.43.2.2 2007/12/26 09:26:33 wurley Exp $ */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Classes and functions for the template engine.ation and capability
|
* Classes and functions for the template engine.ation and capability
|
||||||
@ -113,6 +113,10 @@ class Templates {
|
|||||||
while( ( $file = readdir( $dir ) ) !== false ) {
|
while( ( $file = readdir( $dir ) ) !== false ) {
|
||||||
if (! preg_match('/.xml$/',$file)) continue;
|
if (! preg_match('/.xml$/',$file)) continue;
|
||||||
|
|
||||||
|
if ($_SESSION['plaConfig']->GetValue('appearance','custom_templates_only')
|
||||||
|
&& ! preg_match('/^custom_/',$file))
|
||||||
|
continue;
|
||||||
|
|
||||||
$objXML = new xml2array();
|
$objXML = new xml2array();
|
||||||
$xmldata = $objXML->parse(TMPLDIR.'creation/'.$file);
|
$xmldata = $objXML->parse(TMPLDIR.'creation/'.$file);
|
||||||
|
|
||||||
@ -671,7 +675,7 @@ class Templates {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
if ($args[0] == '$')
|
if ($args[0] == '$')
|
||||||
$args[0] = $_SESSION['plaConfig']->ldapservers->GetValue($ldapserver->server_id,'auto_number','search_base');
|
$args[0] = $_SESSION[APPCONFIG]->ldapservers->GetValue($ldapserver->server_id,'auto_number','search_base');
|
||||||
|
|
||||||
$container = $ldapserver->getContainerParent($container,$args[0]);
|
$container = $ldapserver->getContainerParent($container,$args[0]);
|
||||||
$vals = get_next_number($ldapserver,$container,$args[1],(!empty($args[2]) && ($args[2] == 'true')) ? true : false,(!empty($args[3])) ? $args[3] : false);
|
$vals = get_next_number($ldapserver,$container,$args[1],(!empty($args[2]) && ($args[2] == 'true')) ? true : false,(!empty($args[3])) ? $args[3] : false);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/timeout_functions.php,v 1.10 2007/12/15 07:50:33 wurley Exp $
|
// $Header: /cvsroot/phpldapadmin/phpldapadmin/lib/timeout_functions.php,v 1.10.2.1 2007/12/29 08:24:11 wurley Exp $
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A collection of functions used throughout phpLDAPadmin for the timeout and automatic logout feature
|
* A collection of functions used throughout phpLDAPadmin for the timeout and automatic logout feature
|
||||||
@ -19,7 +19,7 @@
|
|||||||
*/
|
*/
|
||||||
function set_lastactivity($ldapserver) {
|
function set_lastactivity($ldapserver) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('set_lastactivity(): Entered with (%s)',1,$ldapserver->server_id);
|
debug_log('Entered with (%s)',1,__FILE__,__LINE__,__METHOD__,$ldapserver->server_id);
|
||||||
|
|
||||||
$_SESSION['activity']['server'][$ldapserver->server_id] = time();
|
$_SESSION['activity']['server'][$ldapserver->server_id] = time();
|
||||||
$_SESSION['activity']['rightframe_server_id'] = $ldapserver->server_id;
|
$_SESSION['activity']['rightframe_server_id'] = $ldapserver->server_id;
|
||||||
@ -34,7 +34,7 @@ function set_lastactivity($ldapserver) {
|
|||||||
*/
|
*/
|
||||||
function unset_lastactivity($ldapserver) {
|
function unset_lastactivity($ldapserver) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('unset_lastactivity(): Entered with (%s)',1,$ldapserver->server_id);
|
debug_log('Entered with (%s)',1,__FILE__,__LINE__,__METHOD__,$ldapserver->server_id);
|
||||||
|
|
||||||
if (isset($_SESSION['activity']['server'][$ldapserver->server_id]))
|
if (isset($_SESSION['activity']['server'][$ldapserver->server_id]))
|
||||||
unset($_SESSION['activity']['server'][$ldapserver->server_id]);
|
unset($_SESSION['activity']['server'][$ldapserver->server_id]);
|
||||||
@ -52,7 +52,7 @@ function unset_lastactivity($ldapserver) {
|
|||||||
*/
|
*/
|
||||||
function session_timed_out($ldapserver) {
|
function session_timed_out($ldapserver) {
|
||||||
if (DEBUG_ENABLED)
|
if (DEBUG_ENABLED)
|
||||||
debug_log('session_timed_out(): Entered with (%s)',1,$ldapserver->server_id);
|
debug_log('Entered with (%s)',1,__FILE__,__LINE__,__METHOD__,$ldapserver->server_id);
|
||||||
|
|
||||||
# If session hasn't expired yet
|
# If session hasn't expired yet
|
||||||
if (isset($_SESSION['activity']['server'][$ldapserver->server_id])) {
|
if (isset($_SESSION['activity']['server'][$ldapserver->server_id])) {
|
||||||
|
Loading…
Reference in New Issue
Block a user