Bugzilla::Attachment - a file related to a bug that a user has uploaded to the Bugzilla server
use Bugzilla::Attachment; # Get the attachment with the given ID. my $attachment = Bugzilla::Attachment->get($attach_id); # Get the attachments with the given IDs. my $attachments = Bugzilla::Attachment->get_list($attach_ids);
This module defines attachment objects, which represent files related to bugs that users upload to the Bugzilla server.
idthe unique identifier for the attachment
bug_idthe ID of the bug to which the attachment is attached
descriptionuser-provided text describing the attachment
contenttypethe attachment's MIME media type
attacherthe user who attached the attachment
attachedthe date and time on which the attacher attached the attachment
filenamethe name of the file the attacher attached
ispatchwhether or not the attachment is a patch
isurlwhether or not the attachment is a URL
isobsoletewhether or not the attachment is obsolete
isprivatewhether or not the attachment is private
datathe content of the attachment
datasizethe length (in characters) of the attachment content
flagsflags that have been set on the attachment
get_attachments_by_bug($bug_id)Description: retrieves and returns the attachments the currently logged in user can view for the given bug.
Params: $bug_id - integer - the ID of the bug for which to retrieve and return attachments.
Returns: a reference to an array of attachment objects.
validate_is_patch()Description: validates the "patch" flag passed in by CGI.
Returns: 1 on success.
validate_description()Description: validates the description passed in by CGI.
Returns: 1 on success.
validate_content_type()Description: validates the content type passed in by CGI.
Returns: 1 on success.
validate_can_edit($attachment, $product_id)Description: validates if the user is allowed to view and edit the attachment. Only the submitter or someone with editbugs privs can edit it. Only the submitter and users in the insider group can view private attachments.
Params: $attachment - the attachment object being edited. $product_id - the product ID the attachment belongs to.
Returns: 1 on success. Else an error is thrown.
validate_obsolete($bug)Description: validates if attachments the user wants to mark as obsolete really belong to the given bug and are not already obsolete. Moreover, a user cannot mark an attachment as obsolete if he cannot view it (due to restrictions on it).
Params: $bug - The bug object obsolete attachments should belong to.
Returns: 1 on success. Else an error is thrown.
insert_attachment_for_bug($throw_error, $bug, $user, $timestamp, $hr_vars)Description: inserts an attachment from CGI input for the given bug.
Params: $bug - Bugzilla::Bug object - the bug for which to insert the attachment. $user - Bugzilla::User object - the user we're inserting an attachment for. $timestamp - scalar - timestamp of the insert as returned by SELECT NOW(). $hr_vars - hash reference - reference to a hash of template variables.
Returns: the ID of the new attachment.