| Server IP : 127.0.1.1 / Your IP : 216.73.216.83 Web Server : Apache/2.4.58 (Ubuntu) System : Linux nepub 6.8.0-88-generic #89-Ubuntu SMP PREEMPT_DYNAMIC Sat Oct 11 01:02:46 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.2.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/html/public_html/lib/pkp/classes/submission/ |
Upload File : |
<?php
/**
* @file classes/submission/SubmissionArtworkFile.inc.php
*
* Copyright (c) 2014-2020 Simon Fraser University
* Copyright (c) 2003-2020 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class SubmissionArtworkFile
* @ingroup submission
* @see SubmissionFileDAO
*
* @brief Artwork file class.
*/
import('lib.pkp.classes.submission.SubmissionFile');
class SubmissionArtworkFile extends SubmissionFile {
/** @var array image file information */
var $_imageInfo;
//
// Getters and Setters
//
/**
* Get artwork caption.
* @return string
*/
function getCaption() {
return $this->getData('caption');
}
/**
* Set artwork caption.
* @param $caption string
*/
function setCaption($caption) {
$this->setData('caption', $caption);
}
/**
* Get the credit.
* @return string
*/
function getCredit() {
return $this->getData('credit');
}
/**
* Set the credit.
* @param $credit string
*/
function setCredit($credit) {
$this->setData('credit', $credit);
}
/**
* Get the copyright owner.
* @return string
*/
function getCopyrightOwner() {
return $this->getData('copyrightOwner');
}
/**
* Set the copyright owner.
* @param $owner string
*/
function setCopyrightOwner($owner) {
$this->setData('copyrightOwner', $owner);
}
/**
* Get contact details for the copyright owner.
* @return string
*/
function getCopyrightOwnerContactDetails() {
return $this->getData('copyrightOwnerContact');
}
/**
* Set the contact details for the copyright owner.
* @param $contactDetails string
*/
function setCopyrightOwnerContactDetails($contactDetails) {
$this->setData('copyrightOwnerContact', $contactDetails);
}
/**
* Get the permission terms.
* @return string
*/
function getPermissionTerms() {
return $this->getData('terms');
}
/**
* Set the permission terms.
* @param $terms string
*/
function setPermissionTerms($terms) {
$this->setData('terms', $terms);
}
/**
* Get the permission form file id.
* @return int
*/
function getPermissionFileId() {
return $this->getData('permissionFileId');
}
/**
* Set the permission form file id.
* @param $fileId int
*/
function setPermissionFileId($fileId) {
$this->setData('permissionFileId', $fileId);
}
/**
* Get the contact author's id.
* @return int
*/
function getContactAuthor() {
return $this->getData('contactAuthor');
}
/**
* Set the contact author's id.
* @param $authorId int
*/
function setContactAuthor($authorId) {
$this->setData('contactAuthor', $authorId);
}
/**
* Get the width of the image in pixels.
* @return integer
*/
function getWidth() {
if (!$this->_imageInfo) {
$this->_imageInfo = getimagesize($this->getFilePath());
}
return $this->_imageInfo[0];
}
/**
* Get the height of the image in pixels.
* @return integer
*/
function getHeight() {
if (!$this->_imageInfo) {
$this->_imageInfo = getimagesize($this->getFilePath());
}
return $this->_imageInfo[1];
}
/**
* Get the physical width of an image when printed
*
* Common use is to print at 300 DPI (dots per inch), but you can pass any
* any pixel density to this function to return it's printed width. For
* instance, a 300 DPI is roughly equal to 118 dpcm (dots per centimeter),
* so you'd pass $dpi = 118 to calculate the width in centimeters.
*
* @param $dpi int Dots (or pixels) per inch (or any other unit of
* measurement).
* @return integer
*/
function getPhysicalWidth($dpi) {
$width = $this->getWidth();
if (!is_int($width) || $width <= 0) {
return 0;
}
return number_format($width/$dpi,1);
}
/**
* Get the physical height of an image when printed
*
* @see self::getPhysicalWidth
* @param $dpi int Dots (or pixels) per inch (or any other unit of
* measurement).
* @return integer
*/
function getPhysicalHeight($dpi) {
$height = $this->getheight();
if (!is_int($height) || $height <= 0) {
return 0;
}
return number_format($height/$dpi,1);
}
/**
* Copy the user-facing (editable) metadata from another submission
* file.
* @param $submissionFile SubmissionFile
*/
function copyEditableMetadataFrom($submissionFile) {
if (is_a($submissionFile, 'SubmissionArtworkFile')) {
$this->setCaption($submissionFile->getCaption());
$this->setCredit($submissionFile->getCredit());
$this->setCopyrightOwner($submissionFile->getCopyrightOwner());
$this->setCopyrightOwnerContactDetails($submissionFile->getCopyrightOwnerContactDetails());
$this->setPermissionTerms($submissionFile->getPermissionTerms());
}
parent::copyEditableMetadataFrom($submissionFile);
}
/**
* @copydoc SubmissionFile::getMetadataForm
*/
function getMetadataForm($stageId, $reviewRound) {
import('lib.pkp.controllers.wizard.fileUpload.form.SubmissionFilesArtworkMetadataForm');
return new SubmissionFilesArtworkMetadataForm($this, $stageId, $reviewRound);
}
}