summaryrefslogtreecommitdiff
path: root/public
diff options
context:
space:
mode:
authorilotterytea <iltsu@alright.party>2025-06-08 03:05:14 +0400
committerilotterytea <iltsu@alright.party>2025-06-08 03:05:14 +0400
commit2e6a74c3fea5ee7c18d97e19dfade945295b851f (patch)
tree9f1f7a1cc4bb4046509e65ee230868d2618505bd /public
parent3985f082a08cbfa917f9f6376d04d1910100fb90 (diff)
feat: strip exif data
Diffstat (limited to 'public')
-rw-r--r--public/index.php6
-rw-r--r--public/upload.php5
2 files changed, 11 insertions, 0 deletions
diff --git a/public/index.php b/public/index.php
index 7c23b88..6f58fe8 100644
--- a/public/index.php
+++ b/public/index.php
@@ -299,6 +299,12 @@ $privacy_exists = is_file($_SERVER['DOCUMENT_ROOT'] . '/static/PRIVACY.txt');
<th>Preserve original filename:</th>
<td><input type="checkbox" name="preserve_original_name" value="1"></td>
</tr>
+ <?php if (FILE_STRIP_EXIF): ?>
+ <tr>
+ <th>Strip EXIF data:</th>
+ <td><input type="checkbox" name="strip_exif_data" value="1" checked></td>
+ </tr>
+ <?php endif; ?>
</table>
<button type="submit">Upload</button>
</form>
diff --git a/public/upload.php b/public/upload.php
index a0810ef..11c0f15 100644
--- a/public/upload.php
+++ b/public/upload.php
@@ -108,6 +108,11 @@ try {
throw new RuntimeException('Invalid file format.');
}
+ // striping exif data
+ if (FILE_STRIP_EXIF && $is_media && !strip_exif($file['tmp_name'])) {
+ throw new RuntimeException('Failed to strip EXIF tags.');
+ }
+
$file_data = [
'size' => $file['size'],
'mime' => $file_mime,