本文整理汇总了PHP中question_engine_data_mapper::load_questions_usages_by_activity方法的典型用法代码示例。如果您正苦于以下问题:PHP question_engine_data_mapper::load_questions_usages_by_activity方法的具体用法?PHP question_engine_data_mapper::load_questions_usages_by_activity怎么用?PHP question_engine_data_mapper::load_questions_usages_by_activity使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类question_engine_data_mapper
的用法示例。
在下文中一共展示了question_engine_data_mapper::load_questions_usages_by_activity方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: load_extra_data
protected function load_extra_data()
{
if (count($this->rawdata) === 0) {
return;
}
$qubaids = $this->get_qubaids_condition();
$dm = new question_engine_data_mapper();
$this->questionusagesbyactivity = $dm->load_questions_usages_by_activity($qubaids);
// Insert an extra field in attempt data and extra rows where necessary.
$newrawdata = array();
foreach ($this->rawdata as $attempt) {
$maxtriesinanyslot = 1;
foreach ($this->questionusagesbyactivity[$attempt->usageid]->get_slots() as $slot) {
$tries = $this->get_no_of_tries($attempt, $slot);
$maxtriesinanyslot = max($maxtriesinanyslot, $tries);
}
for ($try = 1; $try <= $maxtriesinanyslot; $try++) {
$newtablerow = clone $attempt;
$newtablerow->lasttryforallparts = $try == $maxtriesinanyslot;
if ($try !== $maxtriesinanyslot) {
$newtablerow->state = quiz_attempt::IN_PROGRESS;
}
$newtablerow->try = $try;
$newrawdata[] = $newtablerow;
if ($this->options->whichtries == question_attempt::FIRST_TRY) {
break;
}
}
}
$this->rawdata = $newrawdata;
}