From: Kurund Jalmi Date: Fri, 12 Jul 2013 10:21:55 +0000 (+0530) Subject: added formRule to prevent conflict between barcode and #4, CRM-12965 X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=890a1fbb438e0ba35a18ec0c66ea25beba0aa927;p=civicrm-core.git added formRule to prevent conflict between barcode and #4, CRM-12965 --- diff --git a/CRM/Badge/Form/Layout.php b/CRM/Badge/Form/Layout.php index d27c8814cd..471b899c4f 100644 --- a/CRM/Badge/Form/Layout.php +++ b/CRM/Badge/Form/Layout.php @@ -106,6 +106,34 @@ class CRM_Badge_Form_Layout extends CRM_Admin_Form { $this->add('checkbox', 'is_default', ts('Default?')); $this->add('checkbox', 'is_active', ts('Enabled?')); $this->add('checkbox', 'is_reserved', ts('Reserved?')); + + $this->addFormRule(array('CRM_Badge_Form_Layout', 'formRule')); + } + + /** + * form rule + * + * @param array $fields the input form values + * + * @return true if no errors, else array of errors + * @access public + * @static + */ + static function formRule($fields) { + $errors = array(); + + if (CRM_Utils_Array::value(4, $fields['token']) + && CRM_Utils_Array::value('add_barcode', $fields) + && (CRM_Utils_Array::value('barcode_alignment', $fields) == CRM_Utils_Array::value(4, $fields['text_alignment'])) + ) { + $errors['barcode_alignment'] = ts('You cannot have same alignment for barcode and #4 row.'); + } + + if (!empty($errors)) { + return $errors; + } + + return empty($errors) ? TRUE : $errors; } /**