You are here

function ueditor_delete_filepath in UEditor - 百度编辑器 7.2

Deletes a file by uri.

1 call to ueditor_delete_filepath()
ueditor_delete_file in ./ueditor.module
Deletes a file in the file list.

File

./ueditor.module, line 893
Integration ueditor for wysiwyg.

Code

function ueditor_delete_filepath($uri = '', $type = '', $field_key = '', $id = '') {
  $file = file_load_multiple(array(), array(
    'uri' => $uri,
  ));
  $file = reset($file);
  if (empty($id)) {
    $id = $file->fid;
  }

  // File exists in database
  if ($file) {
    $usage = file_usage_list($file);

    // File is in use by an other module.
    if (!empty($usage)) {
      if (isset($usage[$type]) && isset($usage[$type][$field_key][$id])) {
        $count_sum = 0;
        foreach ($usage[$type] as $item) {
          $count_sum += (int) array_sum($item);
        }
        if ($count_sum > 1) {
          file_usage_delete($file, $type, $field_key, $id, 1);
          return FALSE;
        }
        else {
          file_usage_delete($file, $type, $field_key, $id, 1);
          file_delete($file, TRUE);
          return TRUE;
        }
      }
    }
  }
  elseif (!file_unmanaged_delete($uri)) {
    return FALSE;
  }
}