$youtrack = new YouTrack\Connection($getopt['host'], $getopt['username'], $getopt['password']); $pattern = $getopt['pattern']; echo 'Executing query: "' . $query . '"' . PHP_EOL; $issues = $youtrack->getIssuesByFilter($query, null, $limit); echo count($issues) . ' issues found' . PHP_EOL; foreach ($issues as $issue) { $attachments = $issue->getAttachments(); $ac = count($attachments); $ts = substr($issue->created, 0, -3); $created = new \DateTime('@' . $ts); echo $issue->getId() . ', created: ' . $created->format('Y-m-d H:i:s') . ': ' . $ac . ' attachments.' . PHP_EOL; foreach ($attachments as $attachment) { echo ' ID: ' . $attachment->getId() . ' (' . $attachment->getName() . ')'; if (!$pattern || preg_match('/' . $pattern . '/', $attachment->getName())) { if (!$dryRun) { $success = $youtrack->deleteAttachment($issue, $attachment); if ($success) { echo ' deleted'; } else { echo ' NOT deleted'; } } else { echo ' deleted (not really!)'; } } else { echo ' skipped'; } echo PHP_EOL; } echo PHP_EOL; }