예제 #1
0
 /**
  * Example usage:
  * Utils_AttachmentCommon::persistent_mass_delete('CRM/Contact'); // deletes all entries located in CRM/Contact*** group
  */
 public static function persistent_mass_delete($group, $group_starts_with = true, array $selective = null)
 {
     $ids = self::get_where($group, $group_starts_with);
     if (isset($selective) && !empty($selective)) {
         $ids = array_intersect($ids, $selective);
     }
     foreach ($ids as $id) {
         $mids = DB::GetCol('SELECT id FROM utils_attachment_file WHERE attach_id=%d', array($id));
         foreach ($mids as $mid) {
             Utils_FileStorageCommon::delete('attachment_file/' . $mid);
             DB::Execute('DELETE FROM utils_attachment_download WHERE attach_file_id=%d', array($mid));
         }
         DB::Execute('DELETE FROM utils_attachment_file WHERE attach_id=%d', array($id));
         DB::Execute('DELETE FROM utils_attachment_local WHERE attachment=%d', array($id));
         Utils_RecordBrowserCommon::delete_record('utils_attachment', $id, true);
     }
 }
예제 #2
0
 public function delete()
 {
     return Utils_FileStorageCommon::delete($this->id);
 }