/** * Loads an evaluation from DB into an object * * @access public * @param object EvaluationObject &$evalObject The evaluation to load * @throws error */ function load(&$evalObject) { /* load evaluation basics ---------------------------------------------- */ $row = DBManager::get()->fetchOne("SELECT * FROM eval WHERE eval_id = ?", array($evalObject->getObjectID())); if (!count($row)) { return $this->throwError(1, _("Keine Evaluation mit dieser ID gefunden.")); } $evalObject->setAuthorID($row['author_id']); $evalObject->setTitle($row['title']); $evalObject->setText($row['text']); $evalObject->setStartdate($row['startdate']); $evalObject->setStopdate($row['stopdate']); $evalObject->setTimespan($row['timespan']); $evalObject->setCreationdate($row['mkdate']); $evalObject->setChangedate($row['chdate']); $evalObject->setAnonymous($row['anonymous']); $evalObject->setVisible($row['visible']); $evalObject->setShared($row['shared']); /* --------------------------------------------------------- end: values */ /* load ranges --------------------------------------------------------- */ $range_ids = DBManager::get()->fetchFirst("SELECT range_id FROM eval_range WHERE eval_id = ?", array($evalObject->getObjectID())); foreach ($range_ids as $range_id) { $evalObject->addRangeID($range_id); } /* --------------------------------------------------------- end: ranges */ /* load groups --------------------------------------------------------- */ if ($evalObject->loadChildren != EVAL_LOAD_NO_CHILDREN) { EvaluationGroupDB::addChildren($evalObject); } /* ---------------------------------------------------------- end: group */ }
/** * Loads an evaluationgroup from DB into an object * * @access private * @param object EvaluationGroup &$groupObject The group to load * @throws error */ function load(&$groupObject) { /* load group ---------------------------------------------------------- */ $row = DBManager::get()->fetchOne("\n SELECT * FROM evalgroup\n WHERE evalgroup_id = ?\n ORDER BY position ", array($groupObject->getObjectID())); if (count($row) == 0) { return $this->throwError(1, _("Keine Gruppe mit dieser ID gefunden.")); } $groupObject->setParentID($row['parent_id']); $groupObject->setTitle($row['title']); $groupObject->setText($row['text']); $groupObject->setPosition($row['position']); $groupObject->setChildType($row['child_type']); $groupObject->setMandatory($row['mandatory']); $groupObject->setTemplateID($row['template_id']); /* ----------------------------------------------------------- end: load */ /* load children ------------------------------------------------------- */ if ($groupObject->loadChildren != EVAL_LOAD_NO_CHILDREN) { if ($groupObject->loadChildren == EVAL_LOAD_ONLY_EVALGROUP) { EvaluationGroupDB::addChildren($groupObject); } else { EvaluationGroupDB::addChildren($groupObject); EvaluationQuestionDB::addChildren($groupObject); } } /* ------------------------------------------------------ end: questions */ }