diff --git a/controllers/class.EditFolder.php b/controllers/class.EditFolder.php index 03d01c327..44b0c174d 100644 --- a/controllers/class.EditFolder.php +++ b/controllers/class.EditFolder.php @@ -55,46 +55,10 @@ class SeedDMS_Controller_EditFolder extends SeedDMS_Controller_Common { $attrdef = $dms->getAttributeDefinition($attrdefid); if($attribute) { if(!$attrdef->validate($attribute)) { - $this->error = $attrdef->getValidationError(); - switch($attrdef->getValidationError()) { - case 5: - $this->errormsg = getMLText("attr_malformed_email", array("attrname"=>$attrdef->getName(), "value"=>$attribute)); - break; - case 4: - $this->errormsg = getMLText("attr_malformed_url", array("attrname"=>$attrdef->getName(), "value"=>$attribute)); - break; - case 3: - $this->errormsg = getMLText("attr_no_regex_match", array("attrname"=>$attrdef->getName(), "value"=>$attribute, "regex"=>$attrdef->getRegex())); - break; - case 2: - $this->errormsg = getMLText("attr_max_values", array("attrname"=>$attrdef->getName())); - break; - case 1: - $this->errormsg = getMLText("attr_min_values", array("attrname"=>$attrdef->getName())); - break; - default: - $this->errormsg = getMLText("error_occured"); - } + $this->errormsg = getAttributeValidationText($attrdef->getValidationError(), $attrdef->getName(), $attribute); return false; } - /* - if($attrdef->getRegex()) { - if(!preg_match($attrdef->getRegex(), $attribute)) { - $this->error = 1; - return false; - } - } - if(is_array($attribute)) { - if($attrdef->getMinValues() > count($attribute)) { - $this->error = 2; - return false; - } - if($attrdef->getMaxValues() && $attrdef->getMaxValues() < count($attribute)) { - $this->error = 3; - return false; - } - } - */ + if(!isset($oldattributes[$attrdefid]) || $attribute != $oldattributes[$attrdefid]->getValue()) { if(!$folder->setAttributeValue($dms->getAttributeDefinition($attrdefid), $attribute)) return false; diff --git a/op/op.AddDocument.php b/op/op.AddDocument.php index 7068a184a..2741aed8c 100644 --- a/op/op.AddDocument.php +++ b/op/op.AddDocument.php @@ -97,21 +97,10 @@ else foreach($attributes_version as $attrdefid=>$attribute) { $attrdef = $dms->getAttributeDefinition($attrdefid); if($attribute) { - if($attrdef->getRegex()) { - if(!preg_match($attrdef->getRegex(), $attribute)) { - UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("attr_no_regex_match")); - } + if(!$attrdef->validate($attribute)) { + $errmsg = getAttributeValidationText($attrdef->getValidationError(), $attrdef->getName(), $attribute); + UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),$errmsg); } - if(is_array($attribute)) { - if($attrdef->getMinValues() > count($attribute)) { - UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName()))); - } - if($attrdef->getMaxValues() && $attrdef->getMaxValues() < count($attribute)) { - UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("attr_max_values", array("attrname"=>$attrdef->getName()))); - } - } - } elseif($attrdef->getMinValues() > 0) { - UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName()))); } } diff --git a/op/op.AddSubFolder.php b/op/op.AddSubFolder.php index 4ebd2fe9e..eedd0cda8 100644 --- a/op/op.AddSubFolder.php +++ b/op/op.AddSubFolder.php @@ -66,18 +66,9 @@ else foreach($attributes as $attrdefid=>$attribute) { $attrdef = $dms->getAttributeDefinition($attrdefid); if($attribute) { - if($attrdef->getRegex()) { - if(!preg_match($attrdef->getRegex(), $attribute)) { - UI::exitError(getMLText("folder_title", array("foldername" => $document->getName())),getMLText("attr_no_regex_match")); - } - } - if(is_array($attribute)) { - if($attrdef->getMinValues() > count($attribute)) { - UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName()))); - } - if($attrdef->getMaxValues() && $attrdef->getMaxValues() < count($attribute)) { - UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())),getMLText("attr_max_values", array("attrname"=>$attrdef->getName()))); - } + if(!$attrdef->validate($attribute)) { + $errmsg = getAttributeValidationText($attrdef->getValidationError(), $attrdef->getName(), $attribute); + UI::exitError(getMLText("folder_title", array("foldername" => $folder->getName())), $errmsg); } } } diff --git a/op/op.EditDocument.php b/op/op.EditDocument.php index 046cabe31..d8fd39f18 100644 --- a/op/op.EditDocument.php +++ b/op/op.EditDocument.php @@ -261,41 +261,9 @@ if($attributes) { $attrdef = $dms->getAttributeDefinition($attrdefid); if($attribute) { if(!$attrdef->validate($attribute)) { - switch($attrdef->getValidationError()) { - case 5: - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_malformed_email", array("attrname"=>$attrdef->getName(), "value"=>$attribute))); - break; - case 4: - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_malformed_url", array("attrname"=>$attrdef->getName(), "value"=>$attribute))); - break; - case 3: - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_no_regex_match", array("attrname"=>$attrdef->getName(), "value"=>$attribute, "regex"=>$attrdef->getRegex()))); - break; - case 2: - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_max_values", array("attrname"=>$attrdef->getName()))); - break; - case 1: - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName()))); - break; - default: - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("error_occured")); - } + $errmsg = getAttributeValidationText($attrdef->getValidationError(), $attrdef->getName(), $attribute); + UI::exitError(getMLText("document_title", array("documentname" => $document->getName())), $errmsg); } - /* - if($attrdef->getRegex()) { - if(!preg_match($attrdef->getRegex(), $attribute)) { - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_no_regex_match")); - } - } - if(is_array($attribute)) { - if($attrdef->getMinValues() > count($attribute)) { - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName()))); - } - if($attrdef->getMaxValues() && $attrdef->getMaxValues() < count($attribute)) { - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_max_values", array("attrname"=>$attrdef->getName()))); - } - } - */ if(!isset($oldattributes[$attrdefid]) || $attribute != $oldattributes[$attrdefid]->getValue()) { if(!$document->setAttributeValue($dms->getAttributeDefinition($attrdefid), $attribute)) UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("error_occured")); diff --git a/views/bootstrap/class.AttributeMgr.php b/views/bootstrap/class.AttributeMgr.php index 25742ae84..799118689 100644 --- a/views/bootstrap/class.AttributeMgr.php +++ b/views/bootstrap/class.AttributeMgr.php @@ -97,9 +97,8 @@ $(document).ready( function() { /* various checks, if the value is valid */ echo "