示例#1
0
    if ($source && $source->read && $source->write && $destination && $destination->write) {
      OBM_Contact::move($contact, $destination);
      $subTemplate['card'] = new OBM_Template('card');
    } else {
      header('HTTP', true, 403);
      //FIXME : Not compatible with the HTML/Ajax implemetation
      OBM_Error::getInstance()->addError('rights', __('Permission denied'));
      echo OBM_Error::getInstance()->toJson();
      exit();
    }

  } elseif ($action == 'deleteContact') {
  ///////////////////////////////////////////////////////////////////////////////
    $addressbooks = OBM_AddressBook::search();
    $params['contact_id'] = $params['id'];
    $contact = OBM_Contact::get($params['id']);
    $current['addressbook'] = $addressbook->id;
    $addressbook = $addressbooks[$contact->addressbook_id];
    if ($addressbook && $addressbook->write && check_can_delete_contact($params['id'])) {
      if($contact->archive) {
        OBM_Contact::delete($contact);
        update_last_visit('contact',$params['id'],'delete');
      } else {
        $contact->archive = 1;
        OBM_Contact::store($contact);
      }
      // Update "archive" addressbook
      $contacts = $addressbooks->searchContacts($params['searchpattern']);
      $subTemplate['contacts'] = new OBM_Template('contacts');
      $subTemplate['contacts']->set('fields', get_display_pref($GLOBALS['obm']['uid'], 'contact'));      
    } else {
示例#2
0
  public static function removeFromArchive($contact) {
    if (!$contact->id) return false;

    $now = date('Y-m-d H:i:s');
    $uid = $GLOBALS['obm']['uid'];
    $sql_id = sql_parse_id($contact->id, true);
    $multidomain = sql_multidomain('contact');
    $archive = 0;
    $query = "UPDATE Contact SET
      contact_timeupdate='{$now}',
      contact_userupdate='{$uid}',
      contact_archive=$archive
    WHERE contact_id $sql_id $multidomain";
    $obm_q = new DB_OBM;
    $obm_q->query($query);
    $contact = OBM_Contact::get($contact->id);

    OBM_AddressBook::timestamp($contact->addressbook_id);

    // Indexing Contact
    self::solrStore($contact);
    OBM_IndexingService::commit('contact');
    
    return $contact;
  }