function areConditionsTrue($conditions)
 {
     $curCheck = true;
     $prevCond = 'AND';
     foreach ($conditions as $condition) {
         if (is_string($condition)) {
             $prevCond = $condition;
         } else {
             $condition = cloneob($condition);
             $fieldName = $condition->getFieldName();
             $val = trim($condition->_value2);
             if ($val[0] == '\'') {
                 $val = substr($val, 1, strlen($val) - 2);
             } else {
                 $val = $this->_values[$val];
             }
             $condition->_value2 = $val;
             //TODO: fix hack
             $this->_values[$fieldName];
             if ($prevCond == 'AND') {
                 if ($condition->isTrue($this->_values[$fieldName])) {
                     // no change
                 } else {
                     $curCheck = false;
                 }
             } else {
                 if ($condition->isTrue($this->_values[$fieldName])) {
                     $curCheck = true;
                 } else {
                     // no change
                 }
             }
         }
     }
     return $curCheck;
 }
 function testOptionsForTranslatedPage()
 {
     $translator = new dbField('translator', 'int(11)');
     $translator2 = cloneob($translator);
     $translator2->canBeNull = true;
     $r = $this->pageManager->addOptionToTranslatedPage($translator);
     $this->assertFalse(isError($r), 'Unexpected error');
     $this->assertEquals(array('translator' => $translator2), $this->pageManager->getAllOptionsForTranslatedPage(), 'Wrong options 1');
     $r = $this->pageManager->addOptionToTranslatedPage($translator);
     $this->assertEquals(new Error('PAGEMANAGER_OPTION_FORTRANSLATEDPAGE_EXISTS', 'translator'), $r, 'Wrong error');
     $this->assertEquals(array('translator' => $translator2), $this->pageManager->getAllOptionsForTranslatedPage(), 'Wrong options 2');
     $r = $this->pageManager->removeOptionForTranslatedPage('translator');
     $this->assertFalse(isError($r), 'Unexpected error 2');
     $this->assertEquals(array(), $this->pageManager->getAllOptionsForTranslatedPage(), 'Wrong options 3');
     $r = $this->pageManager->removeOptionForTranslatedPage('translator');
     $this->assertEquals(new Error('PAGEMANAGER_OPTION_FORTRANSLATEDPAGE_DOESNT_EXISTS', 'translator'), $r, 'Wrong error 2');
 }