示例#1
0
  function EnableAccount()	{
    $this->logger->debug("Enable account");

    $obm_q = new DB_OBM;
    $query = "UPDATE Userobm set userobm_archive=0 
      WHERE #DAYDIFF(now(),userobm_account_dateexp)>=0 AND userobm_archive=1";
    $this->logger->core($query);
    $obm_q->xquery($query);
    $this->logger->info($obm_q->affected_rows()." account enabled");
  }
示例#2
0
  private static function storeCoords($contact) {
    global $cdg_sql;

    $id = sql_parse_id($contact->__get('entity_id'));
    $obm_q = new DB_OBM;
  
    $query = "DELETE FROM Phone WHERE phone_entity_id = $id";
    display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(phone)');
    $obm_q->query($query);
    if(is_array($contact->phone)) {
      $cpt = array();
      foreach($contact->phone as $phone) {
        if(trim($phone['number']) != '' ) {
          if(is_array($phone['label'])) {
            array_pop($phone['label']);
            $phone['label'] = implode(';',$phone['label']); 
          } else {
            $phone['label'] = str_replace('_', ';', $phone['label']);
          }
          $cpt[$phone['label']]++;
          $query = "INSERT INTO Phone (phone_entity_id, phone_number, phone_label) VALUES ($id, '$phone[number]', '$phone[label];X-OBM-Ref".$cpt[$phone['label']]."')";
          display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(phone)');
          $obm_q->query($query);
        }
      }
    }
  
    $query = "DELETE FROM Address WHERE address_entity_id = $id";
    display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(address)');
    $obm_q->query($query);
    if(is_array($contact->address)) {
      $cpt = array();
      foreach($contact->address as $address) {
        if(trim($address['country_iso3166']) == 'none') $address['country_iso3166'] = '';
        if(trim($address['country_iso3166']) == '' &&  trim($address['country']) != '') {
          $address['country_iso3166'] = self::getCountryIso3166($address['country']);
        }
        if(trim($address['street']) != '' || trim($address['country_iso3166']) != '' 
          || trim($address['zipcode']) != '' || trim($address['expresspostal']) != '') {
          if(is_array($address['label'])) {
            array_pop($address['label']);
            $address['label'] = implode(';',$address['label']); 
          } else {
            $address['label'] = str_replace('_', ';', $address['label']);
          }          
          $cpt[$address['label']]++;
          $query = "INSERT INTO Address (
            address_entity_id,
            address_street,
            address_zipcode,
            address_town,
            address_expresspostal,
            address_country,
            address_label
          ) VALUES (
            $id, 
            '".addslashes($address[street])."',
            '".addslashes($address[zipcode])."',
            '".addslashes($address[town])."',
            '".addslashes($address[expresspostal])."',
            '$address[country_iso3166]',
            '$address[label];X-OBM-Ref".$cpt[$address['label']]."'
          )";
          display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(address)');
          $obm_q->query($query);
        }
      }
    }
  
    $query = "DELETE FROM Website WHERE website_entity_id = $id";
    display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(website)');
    $obm_q->query($query);
  
    if(is_array($contact->website)) {
      $cpt = array();
      foreach($contact->website as $website) {
        if(trim($website['url']) != '' ) {
          if(is_array($website['label'])) {
            array_pop($website['label']);
            $website['label'] = implode(';',$website['label']); 
          } else {
            $website['label'] = str_replace('_', ';', $website['label']);
          }              
          $cpt[$website['label']]++;
          $query = "INSERT INTO Website (website_entity_id, website_url, website_label) VALUES ($id, '".addslashes($website[url])."', '$website[label];X-OBM-Ref".$cpt[$website['label']]."')";
          display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(website)');
          $obm_q->query($query);
        }
      }
    }
  
    $query = "DELETE FROM IM WHERE im_entity_id = $id";
    display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(IM)');
    $obm_q->query($query);
  
    if(is_array($contact->im)) {
      $cpt = array();
      foreach($contact->im as $im) {
        if(trim($im['address']) != '' ) {
          $cpt[$im['protocol']]++;          
          $query = "INSERT INTO IM (im_entity_id, im_address, im_protocol, im_label) VALUES ($id, '".addslashes($im[address])."', '$im[protocol]', '$im[protocol];X-OBM-Ref".$cpt[$im['protocol']]."')";
          display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(IM)');
          $obm_q->query($query);
        }
      }
    }

    $query = "DELETE FROM Email WHERE email_entity_id = $id";
    display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(Email)');
    $obm_q->query($query);
    if($obm_q->affected_rows() > 0) $updateGroup = true;
  
    if(is_array($contact->email)) {
      $cpt = array();
      foreach($contact->email as $email) {
        $updateGroup = true;
        if(trim($email['address']) != '' ) {
          if(is_array($email['label'])) {
            array_pop($email['label']);
            $email['label'] = implode(';',$email['label']); 
          } else {
            $email['label'] = str_replace('_', ';', $email['label']);
          }                
          $cpt[$email['label']]++;
          $query = "INSERT INTO Email (email_entity_id, email_address, email_label) VALUES ($id, '".trim($email['address'])."', '$email[label];X-OBM-Ref".$cpt[$email['label']]."')";
          display_debug_msg($query, $cdg_sql, 'OBM_Contact::storeCoords(Email)');
          $obm_q->query($query);
        }
      }
    }
    if($updateGroup) {
      $obm_q->query("UPDATE UGroup SET group_timeupdate = NOW() WHERE group_id IN (SELECT group_id FROM _contactgroup WHERE contact_id = ".$contact->id.")");
      set_update_state();
    }    
  }