summaryrefslogtreecommitdiff
path: root/modules/gallery/models
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2012-05-05 18:52:44 -0700
committerBharat Mediratta <bharat@menalto.com>2012-05-05 18:52:44 -0700
commit801c9a98e438a9c6a072630c3a051435986f6cf0 (patch)
tree09c316787785d0a0b7ca344687aef44e553bfeee /modules/gallery/models
parent0a811f9a4ebabf50081402d611b7cb3ccceb3e7f (diff)
Fix #1846.
Diffstat (limited to 'modules/gallery/models')
-rw-r--r--modules/gallery/models/item.php20
1 files changed, 12 insertions, 8 deletions
diff --git a/modules/gallery/models/item.php b/modules/gallery/models/item.php
index e90e0fcb..0e3f0fb8 100644
--- a/modules/gallery/models/item.php
+++ b/modules/gallery/models/item.php
@@ -803,18 +803,22 @@ class Item_Model_Core extends ORM_MPTT {
}
if ($this->is_movie() || $this->is_photo()) {
- if (!$this->loaded()) {
+ $ext = pathinfo($this->name, PATHINFO_EXTENSION);
+
+ if (!$this->loaded() && !$ext) {
// New items must have an extension
- $ext = pathinfo($this->name, PATHINFO_EXTENSION);
- if (!$ext) {
+ $v->add_error("name", "illegal_data_file_extension");
+ return;
+ }
+
+ if ($this->is_photo()) {
+ if (!in_array(strtolower($ext), legal_file::get_photo_extensions())) {
$v->add_error("name", "illegal_data_file_extension");
- return;
}
+ }
- if ($this->is_photo() &&
- !in_array(strtolower($ext), array_map("strtolower", legal_file::get_photo_extensions())) ||
- $this->is_movie() &&
- !in_array(strtolower($ext), array_map("strtolower", legal_file::get_movie_extensions()))) {
+ if ($this->is_movie()) {
+ if (!in_array(strtolower($ext), legal_file::get_movie_extensions())) {
$v->add_error("name", "illegal_data_file_extension");
}
}