home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2004 April
/
CMCD0404.ISO
/
Software
/
Freeware
/
Programare
/
groupoffice-com-2.01
/
modules
/
addressbook
/
search.inc
< prev
next >
Wrap
Text File
|
2004-03-08
|
14KB
|
379 lines
<input type="hidden" name="post_action" value="search" />
<input type="hidden" name="task" />
<br />
<table border="0" cellpadding="0" cellspacing="3">
<tr height="30">
<td nowrap>
<h2>
<a href="javascript:letter_click('A')">A</a>
<a href="javascript:letter_click('B')">B</a>
<a href="javascript:letter_click('C')">C</a>
<a href="javascript:letter_click('D')">D</a>
<a href="javascript:letter_click('E')">E</a>
<a href="javascript:letter_click('F')">F</a>
<a href="javascript:letter_click('G')">G</a>
<a href="javascript:letter_click('H')">H</a>
<a href="javascript:letter_click('I')">I</a>
<a href="javascript:letter_click('J')">J</a>
<a href="javascript:letter_click('K')">K</a>
<a href="javascript:letter_click('L')">L</a>
<a href="javascript:letter_click('M')">M</a>
<a href="javascript:letter_click('N')">N</a>
<a href="javascript:letter_click('O')">O</a>
<a href="javascript:letter_click('P')">P</a>
<a href="javascript:letter_click('Q')">Q</a>
<a href="javascript:letter_click('R')">R</a>
<a href="javascript:letter_click('S')">S</a>
<a href="javascript:letter_click('T')">T</a>
<a href="javascript:letter_click('U')">U</a>
<a href="javascript:letter_click('V')">V</a>
<a href="javascript:letter_click('W')">W</a>
<a href="javascript:letter_click('X')">X</a>
<a href="javascript:letter_click('Y')">Y</a>
<a href="javascript:letter_click('Z')">Z</a>
</h2>
</td>
</tr>
<tr>
<td>
<?php
echo '<table border="0"><tr><td>'.$ab_search_for.':</td><td><table border="0" cellpadding="0" cellspacing="0"><tr><td>';
$_COOKIE['ab_search_type'] = isset($_COOKIE['ab_search_type']) ? $_COOKIE['ab_search_type'] : 'contacts';
$search_type = isset($_POST['search_type']) ? $_POST['search_type'] : $_COOKIE['ab_search_type'];
$dropbox = new dropbox();
$dropbox->add_value('contacts', $contacts_contacts);
$dropbox->add_value('companies', $ab_companies);
$dropbox->add_value('users', $contacts_members);
$dropbox->print_dropbox('search_type', $search_type, 'onchange="javascript:document.forms[0].submit()"');
echo '</td>';
$_COOKIE['ab_search_addressbook_id'] = isset($_COOKIE['ab_search_addressbook_id']) ? $_COOKIE['ab_search_addressbook_id'] : '0';
$search_addressbook_id = isset($_REQUEST['search_addressbook_id']) ? $_REQUEST['search_addressbook_id'] : $_COOKIE['ab_search_addressbook_id'];
if ($search_type != 'users' && $ab->get_subscribed_addressbooks($GO_SECURITY->user_id) > 1)
{
$subscribed_addressbooks = new dropbox();
$subscribed_addressbooks->add_value('0', $ab_all_your_addressbooks);
while ($ab->next_record())
{
$subscribed_addressbooks->add_value($ab->f('id'), $ab->f('name'));
}
echo '<td>'.$ab_search_in.' </td><td>';
$subscribed_addressbooks->print_dropbox('search_addressbook_id', $search_addressbook_id);
echo '</td>';
}else
{
echo '<input type="hidden" name="search_addressbook_id" value="'.$search_addressbook_id.'" />';
}
$_COOKIE['ab_search_companies_field'] = isset($_COOKIE['ab_search_companies_field']) ? $_COOKIE['ab_search_companies_field'] : 'name';
$_COOKIE['ab_search_contacts_field'] = isset($_COOKIE['ab_search_contacts_field']) ? $_COOKIE['ab_search_contacts_field'] : 'first_name';
$search_field = ($search_type == 'contacts' || $search_type == 'users') ? $_COOKIE['ab_search_contacts_field'] : $_COOKIE['ab_search_companies_field'];
$dropbox = new dropbox();
if ($search_type == 'companies')
{
$dropbox->add_value('name', $strName);
$dropbox->add_value('email', $strEmail);
$dropbox->add_value('address',$strAddress);
$dropbox->add_value('city', $strCity);
$dropbox->add_value('zip',$strZip);
$dropbox->add_value('state',$strState);
$dropbox->add_value('country', $strCountry);
}else
{
$dropbox->add_value('first_name', $strFirstName);
$dropbox->add_value('last_name', $strLastName);
$dropbox->add_value('email', $strEmail);
$dropbox->add_value('department',$strDepartment);
$dropbox->add_value('function',$strFunction);
$dropbox->add_value('address',$strAddress);
$dropbox->add_value('city', $strCity);
$dropbox->add_value('zip',$strZip);
$dropbox->add_value('state',$strState);
$dropbox->add_value('country', $strCountry);
$dropbox->add_value('comment', $ab_comment);
}
echo '<td>'.$ab_search_on.' </td><td>';
$dropbox->print_dropbox('search_field', $search_field);
echo '</td></tr></table></tr></td>';
?>
<tr>
<td><?php echo $ab_search_keyword; ?>:</td>
<td colspan="3"><input type="text" name="query" size="31" maxlength="255" class="textbox" value="<?php if (isset($_POST['query'])) echo $_POST['query']; ?>">
<?php echo $ab_wildcard; ?>
</td>
</tr>
</table>
<br />
<?php
$button = new button($cmdSearch, "javascript:document.forms[0].task.value='search';document.forms[0].submit()");
?>
</td>
</tr>
</table>
<?php
if ($task=='search' || $task == 'show_letter')
{
if (isset($_POST['contact']))
{
for ($i=0;$i<sizeof($_POST['contact']);$i++)
{
$contact = $ab->get_contact($_POST['contact'][$i]);
if ($GO_SECURITY->has_permission($GO_SECURITY->user_id, $contact['acl_write']))
{
$ab->delete_contact($_POST['contact'][$i]);
$GO_SECURITY->delete_acl($contact['acl_write']);
$GO_SECURITY->delete_acl($contact['acl_read']);
}
}
}
if (isset($_POST['companies']))
{
for ($i=0;$i<sizeof($_POST['companies']);$i++)
{
$company = $ab->get_company($_POST['companies'][$i]);
if ($GO_SECURITY->has_permission($GO_SECURITY->user_id, $company['acl_write']))
{
$ab->delete_company($_POST['companies'][$i]);
$GO_SECURITY->delete_acl($company['acl_write']);
$GO_SECURITY->delete_acl($company['acl_read']);
}
}
}
if ($_POST['task'] != 'show_letter')
{
$query = '%'.$_POST['query'].'%';
}else
{
$query = $_POST['query'].'%';
}
$count = 0;
$results = '';
switch($search_type)
{
case 'contacts':
$ab->search_contacts($GO_SECURITY->user_id, $query, $search_field, $search_addressbook_id);
while ($ab->next_record())
{
if ($GO_SECURITY->has_permission($GO_SECURITY->user_id, $ab->f('acl_write')) || $GO_SECURITY->has_permission($GO_SECURITY->user_id, $ab->f('acl_read')))
{
$count++;
if ($ab->f('color') != '')
{
$style = ' style="color: '.$ab->f('color').';"';
}else
{
$style = '';
}
$middle_name = $ab->f('middle_name') == '' ? '' : $ab->f('middle_name').' ';
$name = $ab->f('first_name').' '.$middle_name.$ab->f('last_name');
$results .= '<tr height="20" id="'.$ab->f('id').'">';
$results .= '<td><input id="'.$name.'" type="checkbox" onclick="javacript:item_click(this)" name="contact[]" value="'.$ab->f("id").'" /></td>';
$results .= "<td nowrap><a".$style." class=\"normal\" href=\"contact.php?contact_id=".$ab->f("id")."&return_to=".$GO_MODULES->url."index.php\" title=\"".$strShowProfile."\">".empty_to_stripe($name)."</a> </td>\n";
$results .= "<td>".mail_to(empty_to_stripe($ab->f("email")), empty_to_stripe($ab->f("email")),'normal',true, $ab->f("id"))." </td>\n";
$results .= '<td>'.empty_to_stripe($ab->f('home_phone')).' </td>';
$results .= '<td>'.empty_to_stripe($ab->f('work_phone')).' </td>';
$results .= "</tr>\n";
$results .= '<tr><td colspan="99" height="1"><img src="'.$GO_THEME->images['cccccc'].'" border="0" height="1" width="100%" /></td></tr>';
}
}
$result_str = ($count == 1) ? $count.' '.$contacts_result : $count.' '.$contacts_results;
echo '<br /><h2>'.$result_str.'</h2>';
if ($count > 0)
{
echo '<table border="0" cellpadding="0" cellspacing="0" width="600">';
echo '<tr>';
echo '<td class="TableHead2" width="16"><input type="checkbox" name="dummy" value="dummy" onclick="javascript:invert_selection()" /></td>';
echo '<td class="TableHead2">'.$strName.'</td>';
echo '<td class="TableHead2">'.$strEmail.'</td>';
echo '<td class="TableHead2">'.$strPhone.'</td>';
echo '<td class="TableHead2">'.$strWorkphone.'</td>';
echo '</tr>';
echo $results;
echo '</table>';
}
break;
case 'companies':
$ab->search_companies($GO_SECURITY->user_id, $query, $search_field, $search_addressbook_id);
while ($ab->next_record())
{
if ($GO_SECURITY->has_permission($GO_SECURITY->user_id, $ab->f('acl_write')) || $GO_SECURITY->has_permission($GO_SECURITY->user_id, $ab->f('acl_read')))
{
$count++;
$results .= '<tr height="20" id="'.$ab->f('id').'">';
$results .= '<td><input id="'.$ab->f('name').'" type="checkbox" onclick="javacript:item_click(this)" name="companies[]" value="'.$ab->f("id").'" /></td>';
$results .= '<td nowrap><a class="normal" href="'.$GO_MODULES->url.'company.php?company_id='.$ab->f('id').'&return_to='.rawurlencode($link_back).'" title="'.$strShowProfile.'">'.$ab->f('name').'</a> </td>';
$results .= '<td>'.empty_to_stripe($ab->f('city')).' </td>';
$results .= "<td>".mail_to(empty_to_stripe($ab->f("email")), empty_to_stripe($ab->f("email")),'normal',true, $ab->f("id"))." </td>\n";
$results .= '<td>'.empty_to_stripe($ab->f('phone')).' </td>';
$results .= '<td><a class="normal" target="_blank" href="'.$ab->f('homepage').'">'.$ab->f('homepage').'</a> </td>';
$results .= "</tr>\n";
$results .= '<tr><td colspan="99" height="1"><img src="'.$GO_THEME->images['cccccc'].'" border="0" height="1" width="100%" /></td></tr>';
}
}
$result_str = ($count == 1) ? $count.' '.$contacts_result : $count.' '.$contacts_results;
echo '<br /><h2>'.$result_str.'</h2>';
if ($count > 0)
{
echo '<table border="0" cellpadding="0" cellspacing="0" width="600">';
echo '<tr>';
echo '<td class="TableHead2" width="16"><input type="checkbox" name="dummy" value="dummy" onclick="javascript:invert_selection()" /></td>';
echo '<td class="TableHead2">'.$strName.'</td>';
echo '<td class="TableHead2">'.$strCity.'</td>';
echo '<td class="TableHead2">'.$strEmail.'</td>';
echo '<td class="TableHead2">'.$strPhone.'</td>';
echo '<td class="TableHead2">'.$strHomepage.'</td>';
echo '</tr>';
echo $results;
echo '</table>';
}
break;
case 'users':
require_once($GO_CONFIG->class_path.'users.class.inc');
$users = new users();
$users->search($query, $search_field, $GO_SECURITY->user_id);
while ($users->next_record())
{
if ($GO_SECURITY->has_permission($GO_SECURITY->user_id, $users->f('acl_id')))
{
$middle_name = $users->f('middle_name') == '' ? '' : $users->f('middle_name').' ';
$name = $users->f('first_name').' '.$middle_name.$users->f('last_name');
$results .= '<tr height="20"><td><a href="" class="normal">'.show_profile($users->f('id'), $name).'</a> </td>';
$results .= "<td>".mail_to(empty_to_stripe($users->f("email")))." </td>\n";
$results .= "</tr>\n";
$results .= '<tr><td colspan="99" height="1"><img src="'.$GO_THEME->images['cccccc'].'" border="0" height="1" width="100%" /></td></tr>';
$count++;
}
}
$result_str = ($count == 1) ? $count.' '.$contacts_result : $count.' '.$contacts_results;
echo '<br /><h2>'.$result_str.'</h2>';
if ($count > 0)
{
echo '<table border="0" cellpadding="0" cellspacing="0" width="600">';
echo '<tr>';
echo '<td class="TableHead2">'.$strName.'</td>';
echo '<td class="TableHead2">'.$strEmail.'</td>';
echo '<td class="TableHead2">'.$strPhone.'</td>';
echo '<td class="TableHead2">'.$strWorkphone.'</td>';
echo '</tr>';
echo $results;
echo '</table>';
}
break;
}
}
?>
<script type="text/javascript">
document.forms[0].query.focus();
function letter_click(letter)
{
document.forms[0].task.value='show_letter';
document.forms[0].query.value=letter;
document.forms[0].submit();
}
function item_click(check_box)
{
var item = get_object(check_box.value);
if (check_box.checked)
{
item.className = 'Table2';
}else
{
item.className = 'Table1';
}
}
function invert_selection()
{
for (var i=0;i<document.forms[0].elements.length;i++)
{
if(document.forms[0].elements[i].type == 'checkbox' && document.forms[0].elements[i].name != 'dummy')
{
document.forms[0].elements[i].checked = !(document.forms[0].elements[i].checked);
item_click(document.forms[0].elements[i]);
}
}
}
function confirm_delete()
{
var count = 0;
var name = new String;
for (var i=0;i<document.forms[0].elements.length;i++)
{
if(document.forms[0].elements[i].type == 'checkbox' && document.forms[0].elements[i].name != 'dummy')
{
if (document.forms[0].elements[i].checked == true)
{
count++;
name = document.forms[0].elements[i].id;
}
}
}
switch (count)
{
case 0:
alert("<?php echo $contacts_no_select; ?>");
break;
case 1:
if (confirm("<?php echo $strDeletePrefix; ?> '"+name+"' <?php echo $strDeleteSuffix; ?>"))
{
document.forms[0].task.value='<?php echo $task; ?>';
document.forms[0].submit();
}
break;
default:
if (confirm("<?php echo $strDeletePrefix.$strThis; ?> "+count+" <?php echo $contacts_contacts.$strDeleteSuffix; ?>"))
{
document.forms[0].task.value='<?php echo $task; ?>';
document.forms[0].submit();
}
break;
}
}
</script>