thomascube
2012-01-18 7fe3811c65a7c63154f03610e289a6d196f3ae2e
program/steps/addressbook/func.inc
@@ -6,7 +6,10 @@
 |                                                                       |
 | This file is part of the Roundcube Webmail client                     |
 | Copyright (C) 2005-2007, The Roundcube Dev Team                       |
 | Licensed under the GNU GPL                                            |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 | PURPOSE:                                                              |
 |   Provide addressbook functionality and GUI objects                   |
@@ -56,6 +59,7 @@
  // TODO: define fields for vcards like GEO, KEY
);
$PAGE_SIZE = $RCMAIL->config->get('addressbook_pagesize', $RCMAIL->config->get('pagesize', 50));
// Addressbook UI
if (!$RCMAIL->action && !$OUTPUT->ajax_call) {
@@ -108,7 +112,7 @@
// instantiate a contacts object according to the given source
function rcmail_contact_source($source=null, $init_env=false, $writable=false)
{
    global $RCMAIL, $OUTPUT, $CONFIG, $CONTACT_COLTYPES;
    global $RCMAIL, $OUTPUT, $CONTACT_COLTYPES, $PAGE_SIZE;
    if (!strlen($source)) {
        $source = get_input_value('_source', RCUBE_INPUT_GPC);
@@ -116,7 +120,7 @@
    // Get object
    $CONTACTS = $RCMAIL->get_address_book($source, $writable);
    $CONTACTS->set_pagesize($CONFIG['pagesize']);
    $CONTACTS->set_pagesize($PAGE_SIZE);
    // set list properties and session vars
    if (!empty($_GET['_page']))
@@ -382,13 +386,16 @@
    $OUTPUT->add_gui_object('countdisplay', $attrib['id']);
    if ($attrib['label'])
      $_SESSION['contactcountdisplay'] = $attrib['label'];
    return html::span($attrib, rcube_label('loading'));
}
function rcmail_get_rowcount_text($result=null)
{
    global $CONTACTS, $CONFIG;
    global $CONTACTS, $PAGE_SIZE;
    // read nr of contacts
    if (!$result) {
@@ -399,10 +406,10 @@
        $out = rcube_label('nocontactsfound');
    else
        $out = rcube_label(array(
            'name'  => 'contactsfromto',
            'name'  => $_SESSION['contactcountdisplay'] ? $_SESSION['contactcountdisplay'] : 'contactsfromto',
            'vars'  => array(
            'from'  => $result->first + 1,
            'to'    => min($result->count, $result->first + $CONFIG['pagesize']),
            'to'    => min($result->count, $result->first + $PAGE_SIZE),
            'count' => $result->count)
        ));
@@ -427,7 +434,6 @@
function rcmail_contact_form($form, $record, $attrib = null)
{
    global $RCMAIL, $CONFIG;
    static $jqueryui_loaded = 0;
    // Allow plugins to modify contact form content
    $plugin = $RCMAIL->plugins->exec_hook('contact_form', array(
@@ -616,15 +622,8 @@
                        // load jquery UI datepickert for date fields
                        if ($colprop['type'] == 'date') {
                            if (!$jqueryui_loaded++) {
                                $RCMAIL->plugins->load_plugin('jqueryui');
                                $RCMAIL->output->set_env('date_format', strtr($RCMAIL->config->get('date_format', 'Y-m-d'), array('y'=>'y', 'Y'=>'yy', 'm'=>'mm', 'n'=>'m', 'd'=>'dd', 'j'=>'d')));
                                foreach (array('jan','feb','mar','apr','may','jun','jul','aug','sep','oct','nov','dec') as $month)
                                    $month_names[] = rcube_label($month);
                                $RCMAIL->output->set_env('month_names', $month_names);
                            }
                            $colprop['class'] .= ($colprop['class'] ? ' ' : '') . 'datepicker';
                            $val = format_date($val, $RCMAIL->config->get('date_format', 'Y-m-d'));
                            $val = rcmail_format_date_col($val);
                        }
                        $val = rcmail_get_edit_field($col, $val, $colprop, $colprop['type']);
@@ -700,9 +699,6 @@
{
    global $SOURCE_ID, $CONTACTS, $CONTACT_COLTYPES, $RCMAIL, $CONFIG;
    if (!$CONTACT_COLTYPES['photo'])
        return '';
    if ($result = $CONTACTS->get_result())
        $record = $result->first();
@@ -710,7 +706,7 @@
    $RCMAIL->output->set_env('photo_placeholder', $photo_img);
    unset($attrib['placeholder']);
    if (strpos($record['photo'], 'http:') === 0)
    if (preg_match('!^https?://!i', $record['photo']))
        $photo_img = $record['photo'];
    else if ($record['photo'])
        $photo_img = $RCMAIL->url(array('_action' => 'photo', '_cid' => $record['ID'], '_source' => $SOURCE_ID));
@@ -720,7 +716,7 @@
    $img = html::img(array('src' => $photo_img, 'border' => 1, 'alt' => ''));
    $content = html::div($attrib, $img);
    if ($RCMAIL->action == 'edit' || $RCMAIL->action == 'add') {
    if ($CONTACT_COLTYPES['photo'] && ($RCMAIL->action == 'edit' || $RCMAIL->action == 'add')) {
        $RCMAIL->output->add_gui_object('contactphoto', $attrib['id']);
        $hidden = new html_hiddenfield(array('name' => '_photo', 'id' => 'ff_photo', 'value' => $ff_value));
        $content .= $hidden->show();
@@ -733,7 +729,7 @@
function rcmail_format_date_col($val)
{
    global $RCMAIL;
    return format_date($val, $RCMAIL->config->get('date_format', 'Y-m-d'));
    return format_date($val, $RCMAIL->config->get('date_format', 'Y-m-d'), false);
}