diff --git a/phpgwapi/addressbook.php b/phpgwapi/addressbook.php index 3809d3b3e1..f2bef08e3f 100644 --- a/phpgwapi/addressbook.php +++ b/phpgwapi/addressbook.php @@ -1,316 +1,18 @@ + * @package addressbook + * @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License + * @version $Id$ + */ - $GLOBALS['egw_info']['flags'] = array( - 'noheader' => True, - 'nonavbar' => True, - 'currentapp' => 'addressbook', - 'enable_nextmatchs_class' => True - ); - - include('../header.inc.php'); - - // add a content-type header to overwrite an existing default charset in apache (AddDefaultCharset directiv) - header('Content-type: text/html; charset='.$GLOBALS['egw']->translation->charset()); - - include('templates/'.$GLOBALS['egw_info']['user']['preferences']['common']['template_set'].'/head.inc.php'); - - $GLOBALS['egw']->template->set_root(EGW_TEMPLATE_DIR); - $GLOBALS['egw']->template->set_file(array( - 'addressbook_list_t' => 'addressbook.tpl', - )); - $GLOBALS['egw']->template->set_block('addressbook_list_t','addressbook_list','list'); - - $contacts =& CreateObject('phpgwapi.contacts'); - $cats =& CreateObject('phpgwapi.categories','','addressbook'); - - $include_personal = True; - - $GLOBALS['egw']->template->set_var(array( - 'lang_search' => lang('Search'), - 'lang_select_cats' => lang('Show all categorys'), - 'lang_done' => lang('Done'), - 'to' => lang('To'), - 'cc' => lang('Cc'), - 'bcc' => lang('Bcc'), - 'lang_email' => lang('Select work email address'), - 'lang_hemail' => lang('Select home email address'), - 'lang_to_title' => lang('Select all %1 %2 for %3') - )); - - $start = (int)get_var('start',array('POST','GET'),0); - $filter = get_var('filter',array('POST','GET'),'none'); - $cat_id = (int)get_var('cat_id',array('POST','GET'),0); - $query = get_var('query',array('POST','GET')); - $sort = get_var('sort',array('POST','GET')); - $order = get_var('order',array('POST','GET')); - list($all) = @each($_POST['all']); - $inserted = $_GET['inserted']; - - $common_vars = array( - 'filter' => $filter, - 'cat_id' => $cat_id, - 'query' => $query, - 'sort' => $sort, - 'order' => $order, - ); - - $link = '/phpgwapi/addressbook.php'; - $full_link = $GLOBALS['egw']->link($link,$common_vars+array( - 'start' => $start, - )); - $GLOBALS['egw']->template->set_var('form_action',$full_link); - - $qfilter = 'tid=n'; - switch($filter) - { - case 'none': - break; - case 'private': - $qfilter .=',access=private'; - // fall-through - case 'yours': - $qfilter .= ',owner='.$GLOBALS['egw_info']['user']['account_id']; - break; - default: - if(is_numeric($filter)) - { - $qfilter = ',owner='.$filter; - } - break; - } - - if ($cat_id) - { - $qfilter .= ',cat_id='.$cat_id; - } - - if ($GLOBALS['egw_info']['user']['preferences']['common']['maxmatchs'] > 0) - { - $offset = $GLOBALS['egw_info']['user']['preferences']['common']['maxmatchs']; - } - else - { - $offset = 15; - } - - $account_id = $GLOBALS['egw_info']['user']['account_id']; - - $cols = array ( - 'n_given' => 'n_given', - 'n_family' => 'n_family', - 'org_name' => 'org_name', - 'email' => 'email', - 'email_home' => 'email_home' - ); - - if ($all) - { - $qfilter .= ',email'.($all[0] == 'h' ? '_home' : '')."=!''"; - $entries = $contacts->read(0,0,$cols,$query,$qfilter,$sort,$order); - //echo "
".print_r($entries,True)."
\n"; - if (!$entries) - { - $all = False; - $inserted = 0; - } - } - if (!$all) - { - $entries = $contacts->read($start,$offset,$cols,$query,$qfilter,$sort,$order); - } - //------------------------------------------- nextmatch -------------------------------------------- - $GLOBALS['egw']->template->set_var('left',$GLOBALS['egw']->nextmatchs->left( - $link,$start,$contacts->total_records,$GLOBALS['egw']->nextmatchs->extras_to_string($common_vars))); - $GLOBALS['egw']->template->set_var('right',$GLOBALS['egw']->nextmatchs->right( - $link,$start,$contacts->total_records,$GLOBALS['egw']->nextmatchs->extras_to_string($common_vars))); - foreach(array( - 'n_given' => lang('Firstname'), - 'n_family' => lang('Lastname'), - 'org_name' => lang('Company'), - ) as $col => $translation) - { - $GLOBALS['egw']->template->set_var('sort_'.$col,$GLOBALS['egw']->nextmatchs->show_sort_order( - $sort,$col,$order,$link,$translation,'&cat_id='.$cat_id)); - } - - if ($contacts->total_records > $offset) - { - $GLOBALS['egw']->template->set_var('lang_showing',lang('showing %1 - %2 of %3', - 1+$start,$start+$offset>$contacts->total_records ? $contacts->total_records : $start+$offset, - $contacts->total_records)); - } - - else - { - $GLOBALS['egw']->template->set_var('lang_showing',lang('showing %1',$contacts->total_records)); - } - // --------------------------------------- end nextmatch ------------------------------------------ - - foreach(array( - 'work' => lang('work email'), - 'home' => lang('home email') - ) as $type => $lang_type) - { - foreach(array( - 'to' => lang('To'), - 'cc' => lang('Cc'), - 'bcc'=> lang('Bcc')) as $target => $lang_target) - { - $GLOBALS['egw']->template->set_var('title_'.$type.'_'.$target, - lang('Insert all %1 addresses of the %2 contacts in %3',$lang_type, - $contacts->total_records,$lang_target)); - } - } - - // ------------------- list header variable template-declaration ----------------------- - $GLOBALS['egw']->template->set_var('cats_list',$cats->formated_list('select','all',$cat_id,'True')); - - $filter_list = ''; - foreach(array( - 'none' => lang('Show all'), - 'yours' => lang('Only yours'), - 'private' => lang('Only private'), - ) as $id => $translation) - { - $filter_list .= "\n"; - } - $GLOBALS['egw']->template->set_var(array( - 'query' => $query, - 'filter_list' => $filter_list, - )); - // --------------------------- end header declaration ---------------------------------- - - $all_emails = array(); - if ($entries) - foreach ($entries as $entry) - { - $GLOBALS['egw']->template->set_var('tr_class', - $GLOBALS['egw']->nextmatchs->alternate_row_color('',True)); - - $firstname = $entry['n_given']; - if (!$firstname) - { - $firstname = ' '; - } - $lastname = $entry['n_family']; - if (!$lastname) - { - $lastname = ' '; - } - // thanks to dave.hall@mbox.com.au for adding company - $company = $entry['org_name']; - if (!$company) - { - $company = ' '; - } - - $personal_firstname = ''; - $personal_lastname = ''; - $personal_part = ''; - if ((isset($firstname)) && - ($firstname != '') && - ($firstname != ' ')) - { - $personal_firstname = $firstname.' '; - } - if ((isset($lastname)) && - ($lastname != '') && - ($lastname != ' ')) - { - $personal_lastname = $lastname; - } - $personal_part = $personal_firstname.$personal_lastname; - - if (($personal_part == '') || - ($include_personal == False)) - { - $id = $entry['id']; - $email = $entry['email']; - $hemail = $entry['email_home']; - } - else - { - $id = $entry['id']; - if ((isset($entry['email'])) && - (trim($entry['email']) != '')) - { - $email = '"'.$personal_part.'" <'.$entry['email'].'>'; - } - else - { - $email = $entry['email']; - } - if ((isset($entry['email_home'])) && - (trim($entry['email_home']) != '')) - { - $hemail = '"'.$personal_part.'" <'.$entry['email_home'].'>'; - } - else - { - $hemail = $entry['email_home']; - } - } - if ($all) - { - $all_emails[] = $all[0] == 'h' ? $hemail : $email; - } - else - { - $email = htmlspecialchars($email); - $hemail = htmlspecialchars($hemail); - - // --------------------- template declaration for list records -------------------------- - $GLOBALS['egw']->template->set_var(array( - 'firstname' => $firstname, - 'lastname' => $lastname, - 'company' => $company - )); - - $GLOBALS['egw']->template->set_var('id',$id); - $GLOBALS['egw']->template->set_var('email',$email); - $GLOBALS['egw']->template->set_var('hemail',$hemail); - - $GLOBALS['egw']->template->parse('list','addressbook_list',True); - } - } - // --------------------------- end record declaration --------------------------- - - if ($all && count($all_emails)) - { - $full_link .= '&inserted='.count($all_emails); - $target = substr($all,1); - echo " - - \n"; - } - else - { - if ($inserted || $inserted === 0) - { - $GLOBALS['egw']->template->set_var('message',''. - lang('%1 email addresses inserted',(int)$_GET['inserted']).''); - } - $GLOBALS['egw']->template->parse('out','addressbook_list_t',True); - $GLOBALS['egw']->template->p('out'); - } - $GLOBALS['egw']->common->egw_exit(); -?> +$url = '../index.php?menuaction=addressbook.uicontacts.emailpopup&compat=1'; +if (isset($_GET['sessionid']) && isset($_GET['kp3'])) +{ + $url .= '&sessionid='.$_GET['sessionid'].'&kp3='.$_GET['kp3']; +} +header('Location: '.$url);