home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2004 April
/
CMCD0404.ISO
/
Software
/
Freeware
/
Programare
/
groupoffice-com-2.01
/
lib
/
scripts
/
tt.php
< prev
next >
Wrap
PHP Script
|
2004-03-08
|
2KB
|
80 lines
<?php
require('../../Group-Office.php');
/*
This script will update the databse fopr version 1.96
*/
echo 'Updating ACL Table...';
$acl_tables[] = 'ab_addressbooks';
$acl_tables[] = 'cal_calendars';
$acl_tables[] = 'cal_events';
$acl_tables[] = 'cms_sites';
$acl_tables[] = 'cms_templates';
$acl_tables[] = 'fsShares';
$acl_tables[] = 'pmProjects';
$acl_tables[] = 'tp_templates';
require_once($GO_CONFIG->class_path.'email.class.inc');
$db = new db();
$db2 = new db();
if (!ini_set('max_execution_time', '3600'))
{
die('Aborted: Could not set max_execution_time');
}
$db->query("SELECT id FROM acl_items");
while($db->next_record())
{
for ($i=0;$i<count($acl_tables);$i++)
{
$db2->query("SELECT user_id FROM ".$acl_tables[$i]." WHERE acl_read='".$db->f('id')."' OR acl_write='".$db->f('id')."'");
if ($db2->next_record())
{
$user_id=$db2->f('user_id');
if ($user_id > 0)
{
$db2->query("UPDATE acl_items SET user_id='$user_id' WHERE id='".$db->f('id')."'");
break;
}
}
}
if ($user_id == 0)
{
$db2->query("SELECT id FROM users WHERE acl_id='".$db->f('id')."'");
if ($db2->next_record())
{
$user_id=$db2->f('id');
if ($user_id > 0)
{
$db2->query("UPDATE acl_items SET user_id='$user_id' WHERE id='".$db->f('id')."'");
}
}
}
}
echo 'Done<br />Converting addressbook....';
$db->query("SELECT id, addressbook_id FROM ab_contacts");
while($db->next_record())
{
$addressbook_id = $db->f('addressbook_id');
$contact_id = $db->f('id');
$acl_read = $GO_SECURITY->get_new_acl('contact read');
$acl_write = $GO_SECURITY->get_new_acl('contact write');
if($db2->query("UPDATE ab_contacts SET acl_read='$acl_read', acl_write='$acl_write' WHERE id='$contact_id'"))
{
$db2->query("SELECT acl_read, acl_write FROM ab_addressbooks WHERE id='$addressbook_id'");
if ($db2->next_record())
{
$addressbook = $db2->Record;
$GO_SECURITY->copy_acl($addressbook['acl_read'], $acl_read);
$GO_SECURITY->copy_acl($addressbook['acl_write'], $acl_write);
}
}
}
echo 'All Done<br />';
?>