diff --git a/actions/class.RestQtiTests.php b/actions/class.RestQtiTests.php index eb4706f359..282dea4b89 100644 --- a/actions/class.RestQtiTests.php +++ b/actions/class.RestQtiTests.php @@ -18,13 +18,21 @@ use oat\taoQtiTest\models\tasks\ImportQtiTest; use oat\oatbox\task\Task; +use oat\tao\model\TaskQueueActionTrait; /** * * @author Absar Gilani & Rashid - PCG Team - {absar.gilani6@gmail.com} */ -class taoQtiTest_actions_RestQtiTests extends \tao_actions_TaskQueue +class taoQtiTest_actions_RestQtiTests extends \tao_actions_RestController { + use TaskQueueActionTrait { + getTask as parentGetTask; + getTaskData as traitGetTaskData; + } + + const TASK_ID_PARAM = 'id'; + private static $accepted_types = array( 'application/zip', 'application/x-zip-compressed', @@ -36,12 +44,58 @@ public function index() { $this->returnFailure(new \common_exception_NotImplemented('This API does not support this call.')); } - + + public function __construct() + { + parent::__construct(); + // The service that implements or inherits get/getAll/getRootClass ... for that particular type of resources + $this->service = taoQtiTest_models_classes_CrudQtiTestsService::singleton(); + } + /** * Import file entry point by using $this->service * Check POST method & get valid uploaded file */ public function import() + { + $fileUploadName = "qtiPackage"; + if ($this->getRequestMethod() != Request::HTTP_POST) { + throw new \common_exception_NotImplemented('Only post method is accepted to import Qti package.'); + } + if(tao_helpers_Http::hasUploadedFile($fileUploadName)) { + $file = tao_helpers_Http::getUploadedFile($fileUploadName); + $mimeType = tao_helpers_File::getMimeType($file['tmp_name']); + if (!in_array($mimeType, self::$accepted_types)) { + $this->returnFailure(new common_exception_BadRequest()); + } else { + $report = $this->service->importQtiTest($file['tmp_name']); + if ($report->getType() === common_report_Report::TYPE_SUCCESS) { + $data = array(); + foreach ($report as $r) { + $values = $r->getData(); + $testid = $values->rdfsResource->getUri(); + foreach ($values->items as $item) { + $itemsid[] = $item->getUri(); + } + $data[] = array( + 'testId' => $testid, + 'testItems' => $itemsid); + } + return $this->returnSuccess($data); + } else { + return $this->returnFailure(new common_exception_InconsistentData($report->getMessage())); + } + } + } else { + return $this->returnFailure(new common_exception_BadRequest()); + } + } + + /** + * Import test package through the task queue. + * Check POST method & get valid uploaded file + */ + public function importDeferred() { $fileUploadName = "qtiPackage"; if ($this->getRequestMethod() != Request::HTTP_POST) { @@ -89,6 +143,24 @@ public function getStatus() } } + /** + * @param $taskId + * @return array + */ + protected function getTaskData($taskId) + { + $data = $this->traitGetTaskData($taskId); + $task = $this->getTask($taskId); + $report = \common_report_Report::jsonUnserialize($task->getReport()); + $plainReport = $this->getPlainReport($report); + + //the third report is report of import test + if (isset($plainReport[2]) && isset($plainReport[2]->getData()['rdfsResource'])) { + $data['testId'] = $plainReport[2]->getData()['rdfsResource']['uriResource']; + } + return $data; + } + /** * @param Task $taskId * @return Task @@ -96,7 +168,7 @@ public function getStatus() */ protected function getTask($taskId) { - $task = parent::getTask($taskId); + $task = $this->parentGetTask($taskId); if ($task->getInvocable() !== 'oat\taoQtiTest\models\tasks\ImportQtiTest') { throw new \common_exception_BadRequest("Wrong task type"); } @@ -146,20 +218,4 @@ protected function getTaskReport(Task $task) } return $result; } - - /** - * @param $report - * @return array - */ - private function getPlainReport($report) - { - $result = []; - $result[] = $report; - if ($report->hasChildren()) { - foreach ($report as $r) { - $result = array_merge($result, $this->getPlainReport($r)); - } - } - return $result; - } } diff --git a/actions/class.TestRunner.php b/actions/class.TestRunner.php index 9fbcf77770..a59b5c058b 100644 --- a/actions/class.TestRunner.php +++ b/actions/class.TestRunner.php @@ -35,6 +35,7 @@ use qtism\data\NavigationMode; use oat\taoQtiItem\helpers\QtiRunner; use oat\taoQtiTest\models\TestSessionMetaData; +use oat\taoQtiTest\models\QtiTestCompilerIndex; /** * Runs a QTI Test. @@ -95,6 +96,13 @@ class taoQtiTest_actions_TestRunner extends tao_actions_ServiceModule { * @var array */ private $testMeta; + + /** + * The index of compiled items. + * + * @var QtiTestCompilerIndex + */ + private $itemIndex; /** * Testr session metadata manager @@ -222,6 +230,24 @@ protected function getTestMeta() { return $this->testMeta; } + /** + * @return QtiTestCompilerIndex + */ + protected function getItemIndex() + { + return $this->itemIndex; + } + + /** + * @param QtiTestCompilerIndex $itemIndex + * @return taoQtiTest_actions_TestRunner + */ + protected function setItemIndex($itemIndex) + { + $this->itemIndex = $itemIndex; + return $this; + } + /** * Print an error report into the response. * After you have called this method, you must prevent other actions to be processed and must close the response. @@ -288,6 +314,7 @@ protected function beforeAction($notifyError = true) { $sessionStateService->resumeSession($session); $this->retrieveTestMeta(); + $this->retrieveItemIndex(); // Prevent anything to be cached by the client. taoQtiTest_helpers_TestRunnerUtils::noHttpClientCache(); @@ -324,6 +351,7 @@ protected function afterAction($withContext = true) { // Build assessment test context. $ctx = taoQtiTest_helpers_TestRunnerUtils::buildAssessmentTestContext($this->getTestSession(), $this->getTestMeta(), + $this->getItemIndex(), $this->getRequestParameter('QtiTestDefinition'), $this->getRequestParameter('QtiTestCompilation'), $this->getRequestParameter('standalone'), @@ -848,6 +876,7 @@ protected function retrieveTestSession() { * into the private compilation directory. * * @return array + * @throws common_exception_InconsistentData */ protected function retrieveTestMeta() { @@ -865,6 +894,25 @@ protected function retrieveTestMeta() $this->setTestMeta($meta); } + /** + * Retrieves the index of compiled items. + */ + protected function retrieveItemIndex() + { + $this->setItemIndex(new QtiTestCompilerIndex()); + try { + $directories = $this->getCompilationDirectory(); + /** @var tao_models_classes_service_StorageDirectory $privateDirectory */ + $privateDirectory = $directories['private']; + $data = $privateDirectory->read(TAOQTITEST_COMPILED_INDEX); + if ($data) { + $this->getItemIndex()->unserialize($data); + } + } catch(\Exception $e) { + \common_Logger::i('Ignoring file not found exception for Items Index'); + } + } + protected function handleAssessmentTestSessionException(AssessmentTestSessionException $e) { switch ($e->getCode()) { case AssessmentTestSessionException::ASSESSMENT_TEST_DURATION_OVERFLOW: diff --git a/config/default/testRunner.conf.php b/config/default/testRunner.conf.php index 052ea1cae4..741b1977c1 100644 --- a/config/default/testRunner.conf.php +++ b/config/default/testRunner.conf.php @@ -78,6 +78,26 @@ */ 'test-taker-review-region' => 'left', + /** + * Show legend on review panel + * + * @type string + */ + 'test-taker-review-show-legend' => true, + + /** + * Show review panel open on launch + * + * @type string + */ + 'test-taker-review-default-open' => true, + + /** + * Use item title instead of item label. + * @type string + */ + 'test-taker-review-use-title' => true, + /** * Forces a unique title for all test items. * @type string @@ -372,8 +392,9 @@ ], 'itemThemeSwitcher' => [ 'toggle' => 'T', - 'loop' => 'Y', - 'select' => 'U' + 'up' => 'ArrowUp', + 'down' => 'ArrowDown', + 'select' => 'Enter' ], 'review' => [ 'toggle' => 'R', @@ -388,6 +409,10 @@ ], 'previous' => [ 'trigger' => 'K' + ], + 'dialog' => [ + 'accept' => 'Enter', + 'reject' => 'Esc' ] ], ); diff --git a/helpers/class.TestRunnerUtils.php b/helpers/class.TestRunnerUtils.php index a0a3f2d441..e6712059a9 100644 --- a/helpers/class.TestRunnerUtils.php +++ b/helpers/class.TestRunnerUtils.php @@ -30,6 +30,7 @@ use qtism\runtime\tests\Jump; use qtism\runtime\tests\RouteItem; use oat\taoQtiTest\models\ExtendedStateService; +use oat\taoQtiTest\models\QtiTestCompilerIndex; use qtism\common\datatypes\QtiString; /** @@ -383,13 +384,14 @@ static public function buildPossibleJumps(AssessmentTestSession $session) { * * @param AssessmentTestSession $session A given AssessmentTestSession object. * @param array $testMeta An associative array containing meta-data about the test definition taken by the candidate. + * @param QtiTestCompilerIndex $itemIndex * @param string $qtiTestDefinitionUri The URI of a reference to an Assessment Test definition in the knowledge base. * @param string $qtiTestCompilationUri The Uri of a reference to an Assessment Test compilation in the knowledge base. * @param string $standalone * @param string $compilationDirs An array containing respectively the private and public compilation directories. * @return array The context of the candidate session. */ - static public function buildAssessmentTestContext(AssessmentTestSession $session, array $testMeta, $qtiTestDefinitionUri, $qtiTestCompilationUri, $standalone, $compilationDirs) { + static public function buildAssessmentTestContext(AssessmentTestSession $session, array $testMeta, $itemIndex, $qtiTestDefinitionUri, $qtiTestCompilationUri, $standalone, $compilationDirs) { $context = array(); // The state of the test session. @@ -483,7 +485,7 @@ static public function buildAssessmentTestContext(AssessmentTestSession $session // The test review screen setup if (!empty($config['test-taker-review']) && $context['considerProgress']) { // The navigation map in order to build the test navigator - $navigator = self::getNavigatorMap($session); + $navigator = self::getNavigatorMap($session, $itemIndex); if ($navigator !== NavigationMode::LINEAR) { $context['navigatorMap'] = $navigator['map']; $context['itemFlagged'] = self::getItemFlag($session, $context['itemPosition']); @@ -763,7 +765,9 @@ static private function getJumpsMap(AssessmentTestSession $session, $jumps) { foreach ($jumps as $jump) { $routeItem = $jump->getTarget(); $partId = $routeItem->getTestPart()->getIdentifier(); - $sectionId = key(current($routeItem->getAssessmentSections())); + $sections = $routeItem->getAssessmentSections(); + $sections->rewind(); + $sectionId = key(current($sections)); $itemId = $routeItem->getAssessmentItemRef()->getIdentifier(); $jumpsMap[$partId][$sectionId][$itemId] = self::getItemInfo($session, $jump); @@ -782,9 +786,10 @@ static private function getJumpsMap(AssessmentTestSession $session, $jumps) { * Gets the section map for navigation between test parts, sections and items. * * @param AssessmentTestSession $session + * @param QtiTestCompilerIndex $itemIndex * @return array A navigator map (parts, sections, items so on) */ - static private function getNavigatorMap(AssessmentTestSession $session) { + static private function getNavigatorMap(AssessmentTestSession $session, $itemIndex) { // get jumps $jumps = $session->getPossibleJumps(); @@ -821,6 +826,8 @@ static private function getNavigatorMap(AssessmentTestSession $session) { $config = common_ext_ExtensionsManager::singleton()->getExtensionById('taoQtiTest')->getConfig('testRunner'); $forceTitles = !empty($config['test-taker-review-force-title']); $uniqueTitle = isset($config['test-taker-review-item-title']) ? $config['test-taker-review-item-title'] : '%d'; + $useTitle = !empty($config['test-taker-review-use-title']); + $language = \common_session_SessionManager::getSession()->getInterfaceLanguage(); $returnValue = array(); $testParts = array(); @@ -862,7 +869,8 @@ static private function getNavigatorMap(AssessmentTestSession $session) { if (isset($jumpsMap[$id][$sectionId][$itemId])) { $jumpInfo = $jumpsMap[$id][$sectionId][$itemId]; - $resItem = new \core_kernel_classes_Resource(strstr($item->getHref(), '|', true)); + $itemUri = strstr($item->getHref(), '|', true); + $resItem = new \core_kernel_classes_Resource($itemUri); if ($jumpInfo['answered']) { ++$completed; } @@ -875,7 +883,19 @@ static private function getNavigatorMap(AssessmentTestSession $session) { if ($forceTitles) { $label = sprintf($uniqueTitle, ++$positionInSection); } else { - $label = $resItem->getLabel(); + if ($useTitle) { + $label = $itemIndex->getItemValue($itemUri, $language, 'title'); + } else { + $label = ''; + } + + if (!$label) { + $label = $itemIndex->getItemValue($itemUri, $language, 'label'); + } + + if (!$label) { + $label = $resItem->getLabel(); + } } $items[] = array_merge( array( diff --git a/includes/constants.php b/includes/constants.php index d086ed3219..543c61b808 100755 --- a/includes/constants.php +++ b/includes/constants.php @@ -31,9 +31,10 @@ 'TAOQTITEST_FILENAME' => 'tao-qtitest-testdefinition.xml', 'TAOQTITEST_COMPILED_FILENAME' => 'compact-test.php', 'TAOQTITEST_COMPILED_META_FILENAME' => 'test-meta.php', + 'TAOQTITEST_COMPILED_INDEX' => 'test-index.json', 'TAOQTITEST_REMOTE_FOLDER' => 'tao-qtitest-remote', 'TAOQTITEST_RENDERING_STATE_NAME' => 'taoQtiTestState', 'TAOQTITEST_BASE_PATH_NAME' => 'taoQtiBasePath', 'TAOQTITEST_PLACEHOLDER_BASE_URI' => 'tao://qti-directory', 'TAOQTITEST_VIEWS_NAME' => 'taoQtiViews' -); \ No newline at end of file +); diff --git a/manifest.php b/manifest.php index b19acf888a..a7844f8acf 100755 --- a/manifest.php +++ b/manifest.php @@ -25,7 +25,7 @@ * */ use oat\taoQtiTest\scripts\install\RegisterQtiFlysystemManager; - + $extpath = dirname(__FILE__).DIRECTORY_SEPARATOR; $taopath = dirname(dirname(__FILE__)).DIRECTORY_SEPARATOR.'tao'.DIRECTORY_SEPARATOR; @@ -34,12 +34,12 @@ 'label' => 'QTI test model', 'description' => 'TAO QTI test implementation', 'license' => 'GPL-2.0', - 'version' => '5.46.1', + 'version' => '5.51.0', 'author' => 'Open Assessment Technologies', 'requires' => array( 'taoTests' => '>=3.7.0', - 'taoQtiItem' => '>=5.14.0', - 'tao' => '>=7.35.0' + 'taoQtiItem' => '>=6.8.0', + 'tao' => '>=7.42.0' ), 'models' => array( 'http://www.tao.lu/Ontologies/TAOTest.rdf' diff --git a/models/classes/QtiTestCompilerIndex.php b/models/classes/QtiTestCompilerIndex.php new file mode 100644 index 0000000000..9f12c2c9c2 --- /dev/null +++ b/models/classes/QtiTestCompilerIndex.php @@ -0,0 +1,125 @@ + + */ + +namespace oat\taoQtiTest\models; + +use oat\taoItems\model\ItemCompilerIndex; + +/** + * Class QtiTestCompilerIndex + * + * @package oat\taoQtiTest\models + */ +class QtiTestCompilerIndex implements ItemCompilerIndex +{ + /** + * The index of compiled items, keys are the items identifiers + * @var array + */ + private $index = []; + + /** + * Stores context info of a compiled Item into the index + * @param string $id + * @param string $language + * @param mixed $data + * @return $this + */ + public function setItem($id, $language, $data) + { + $this->index[$language][$id] = $data; + return $this; + } + + /** + * Gets context info of a compiled Item + * @param string $id + * @param string $language + * @return mixed + */ + public function getItem($id, $language) + { + if (isset($this->index[$language]) && isset($this->index[$language][$id])) { + return $this->index[$language][$id]; + } + return null; + } + + /** + * Gets a particular value from context info of a compiled Item + * @param string $id + * @param string $language + * @param string $name + * @return mixed + */ + public function getItemValue($id, $language, $name) + { + $attributes = $this->getItem($id, $language); + if ($attributes && isset($attributes[$name])) { + return $attributes[$name]; + } + return null; + } + + /** + * Unpacks index from a string + * @param string $data + * @param string $language + * @throws \common_exception_InconsistentData + */ + public function unserialize($data, $language = null) + { + if (!is_string($data)) { + throw new \common_exception_InconsistentData('The encoded index data should be provided as a string'); + } + + $index = json_decode($data, true); + + if (!is_array($index)) { + throw new \common_exception_InconsistentData('The decoded index data should be an array'); + } + + if ($language) { + $this->index[$language] = $index; + } else { + $this->index = $index; + } + } + + /** + * Packs the index into a string + * @param string $language + * @return string + */ + public function serialize($language = null) + { + if ($language) { + if (isset($this->index[$language])) { + return json_encode($this->index[$language]); + } else { + return json_encode([]); + } + } else { + return json_encode($this->index); + } + } +} diff --git a/models/classes/class.QtiTestCompiler.php b/models/classes/class.QtiTestCompiler.php index 9f8707e7f7..d6bd17edf9 100755 --- a/models/classes/class.QtiTestCompiler.php +++ b/models/classes/class.QtiTestCompiler.php @@ -35,6 +35,7 @@ use oat\oatbox\filesystem\Directory; use oat\oatbox\service\ServiceManager; use oat\taoQtiTest\models\TestCategoryRulesService; +use oat\taoQtiTest\models\QtiTestCompilerIndex; /** * A Test Compiler implementation that compiles a QTI Test and related QTI Items. @@ -261,6 +262,9 @@ protected function initCompilation() { // Initialize Post Markup Renderer. $this->setMarkupPostRenderer(new MarkupPostRenderer(true, true, true)); + + // Initialize the index that will contains info about items + $this->setContext(new QtiTestCompilerIndex()); } /** @@ -323,8 +327,11 @@ public function compile() { // 9. Compile the test meta data into PHP array source code and put it // into the private directory. $this->compileMeta($assessmentTest); + + // 10. Compile the test index in JSON content and put it into the private directory. + $this->compileIndex(); - // 10. Build the service call. + // 11. Build the service call. $serviceCall = $this->buildServiceCall(); common_Logger::t("QTI Test successfully compiled."); @@ -718,6 +725,21 @@ protected function compileMeta(AssessmentTest $test) $phpCode = ''; $compiledDocDir->write(TAOQTITEST_COMPILED_META_FILENAME, $phpCode); } + + /** + * Compile the test index into JSON file to improve performance of the map build. + * The file is stored into PRIVATE_DIRECTORY/test-index.json. + */ + protected function compileIndex() + { + $compiledDocDir = $this->getPrivateDirectory(); + + /** @var $index QtiTestCompilerIndex */ + $index = $this->getContext(); + if ($index) { + $compiledDocDir->write(TAOQTITEST_COMPILED_INDEX, $index->serialize()); + } + } /** * Get the list of mime types of files that are accepted to be put diff --git a/models/classes/runner/QtiRunnerService.php b/models/classes/runner/QtiRunnerService.php index 406c0cc3e4..72cbe4baf2 100644 --- a/models/classes/runner/QtiRunnerService.php +++ b/models/classes/runner/QtiRunnerService.php @@ -106,38 +106,6 @@ private function loadItemData($itemRef, $path) } } - /** - * Get the data folder from a given item definition - * @param string $itemRef - formatted as itemURI|publicFolderURI|privateFolderURI - * @return string the path - * @throws \common_Exception - */ - private function getItemDataFolder($itemRef) - { - $directoryIds = explode('|', $itemRef); - if (count($directoryIds) < 3) { - throw new \common_exception_InconsistentData('The itemRef is not formated correctly'); - } - - $itemUri = $directoryIds[0]; - $userDataLang = \common_session_SessionManager::getSession()->getDataLanguage(); - - $dirPath = \tao_models_classes_service_FileStorage::singleton()->getDirectoryById($directoryIds[2])->getPath(); - if (file_exists($dirPath . $userDataLang)) { - return $dirPath . $userDataLang . DIRECTORY_SEPARATOR; - } elseif (file_exists($dirPath . DEFAULT_LANG)) { - \common_Logger::i( - $userDataLang . ' is not part of compilation directory for item : ' . $itemUri . ' use ' . DEFAULT_LANG - ); - - return $dirPath . DEFAULT_LANG . DIRECTORY_SEPARATOR; - } else { - throw new \common_Exception( - 'item : ' . $itemUri . 'is neither compiled in ' . $userDataLang . ' nor in ' . DEFAULT_LANG - ); - } - } - /** * Gets the test session for a particular delivery execution * @param string $testDefinitionUri The URI of the test diff --git a/models/classes/runner/QtiRunnerServiceContext.php b/models/classes/runner/QtiRunnerServiceContext.php index 48b99bfd01..f90ca4a08a 100644 --- a/models/classes/runner/QtiRunnerServiceContext.php +++ b/models/classes/runner/QtiRunnerServiceContext.php @@ -22,6 +22,7 @@ namespace oat\taoQtiTest\models\runner; +use oat\taoQtiTest\models\QtiTestCompilerIndex; use oat\taoQtiTest\models\runner\session\TestSession; use oat\taoQtiTest\models\SessionStateService; use qtism\data\AssessmentTest; @@ -63,6 +64,13 @@ class QtiRunnerServiceContext extends RunnerServiceContext * @var array */ private $testMeta; + + /** + * The index of compiled items. + * + * @var QtiTestCompilerIndex + */ + private $itemIndex; /** * The URI of the assessment test @@ -112,9 +120,9 @@ public function init() /** @var SessionStateService $sessionStateService */ $sessionStateService = $this->getServiceManager()->get(SessionStateService::SERVICE_ID); $sessionStateService->resumeSession($this->getTestSession()); - - + $this->retrieveTestMeta(); + $this->retrieveItemIndex(); } /** @@ -183,13 +191,31 @@ protected function initTestSession() /** * Retrieves the QTI Test Definition meta-data array stored into the private compilation directory. */ - protected function retrieveTestMeta() { + protected function retrieveTestMeta() + { $directories = $this->getCompilationDirectory(); $data = $directories['private']->read(TAOQTITEST_COMPILED_META_FILENAME); $data = str_replace('', '', $data); $this->testMeta = eval($data); } + + /** + * Retrieves the index of compiled items. + */ + protected function retrieveItemIndex() + { + $this->itemIndex = new QtiTestCompilerIndex(); + try { + $directories = $this->getCompilationDirectory(); + $data = $directories['private']->read(TAOQTITEST_COMPILED_INDEX); + if ($data) { + $this->itemIndex->unserialize($data); + } + } catch(\Exception $e) { + \common_Logger::i('Ignoring file not found exception for Items Index'); + } + } /** * Sets the test session @@ -273,4 +299,27 @@ public function getTestExecutionUri() { return $this->testExecutionUri; } + + /** + * Gets info from item index + * @param string $id + * @return mixed + * @throws \common_exception_Error + */ + public function getItemIndex($id) + { + return $this->itemIndex->getItem($id, \common_session_SessionManager::getSession()->getInterfaceLanguage()); + } + + /** + * Gets a particular value from item index + * @param string $id + * @param string $name + * @return mixed + * @throws \common_exception_Error + */ + public function getItemIndexValue($id, $name) + { + return $this->itemIndex->getItemValue($id, \common_session_SessionManager::getSession()->getInterfaceLanguage(), $name); + } } diff --git a/models/classes/runner/config/QtiRunnerConfig.php b/models/classes/runner/config/QtiRunnerConfig.php index 722d8c888e..d0eb9bd9a6 100644 --- a/models/classes/runner/config/QtiRunnerConfig.php +++ b/models/classes/runner/config/QtiRunnerConfig.php @@ -36,6 +36,58 @@ class QtiRunnerConfig implements RunnerConfig */ protected $config; + /** + * The test runner currently activated options + * @var array + */ + protected $options; + + /** + * Returns the config of the test runner + * @return mixed + */ + protected function buildConfig() { + // get the raw server config, using the old notation + $rawConfig = \common_ext_ExtensionsManager::singleton()->getExtensionById('taoQtiTest')->getConfig('testRunner'); + + // build the test config using the new notation + return [ + 'timerWarning' => isset($rawConfig['timerWarning']) ? $rawConfig['timerWarning'] : null, + 'progressIndicator' => [ + 'type' => isset($rawConfig['progress-indicator']) ? $rawConfig['progress-indicator'] : null, + 'scope' => isset($rawConfig['progress-indicator-scope']) ? $rawConfig['progress-indicator-scope'] : null, + 'forced' => isset($rawConfig['progress-indicator-forced']) ? $rawConfig['progress-indicator-forced'] : false, + ], + 'review' => [ + 'enabled' => !empty($rawConfig['test-taker-review']), + 'scope' => isset($rawConfig['test-taker-review-scope']) ? $rawConfig['test-taker-review-scope'] : null, + 'useTitle' => !empty($rawConfig['test-taker-review-use-title']), + 'forceTitle' => !empty($rawConfig['test-taker-review-force-title']), + 'showLegend' => !empty($rawConfig['test-taker-review-show-legend']), + 'defaultOpen' => !empty($rawConfig['test-taker-review-default-open']), + 'itemTitle' => isset($rawConfig['test-taker-review-item-title']) ? $rawConfig['test-taker-review-item-title'] : null, + 'preventsUnseen' => !empty($rawConfig['test-taker-review-prevents-unseen']), + 'canCollapse' => !empty($rawConfig['test-taker-review-can-collapse']), + ], + 'exitButton' => !empty($rawConfig['exitButton']), + 'nextSection' => !empty($rawConfig['next-section']), + 'plugins' => isset($rawConfig['plugins']) ? $rawConfig['plugins'] : null, + 'security' => [ + 'csrfToken' => isset($rawConfig['csrf-token']) ? $rawConfig['csrf-token'] : false, + ], + 'timer' => [ + 'target' => isset($rawConfig['timer']) && isset($rawConfig['timer']['target']) ? $rawConfig['timer']['target'] : null, + 'resetAfterResume' => !empty($rawConfig['reset-timer-after-resume']), + 'keepUpToTimeout' => !empty($rawConfig['keep-timer-up-to-timeout']), + ], + 'enableAllowSkipping' => isset($rawConfig['enable-allow-skipping']) ? $rawConfig['enable-allow-skipping'] : false, + 'checkInformational' => isset($rawConfig['check-informational']) ? $rawConfig['check-informational'] : false, + 'enableUnansweredItemsWarning' => isset($rawConfig['test-taker-unanswered-items-message']) ? $rawConfig['test-taker-unanswered-items-message'] : true, + 'allowShortcuts' => !empty($rawConfig['allow-shortcuts']), + 'shortcuts' => isset($rawConfig['shortcuts']) ? $rawConfig['shortcuts'] : [], + ]; + } + /** * Returns the config of the test runner * @return mixed @@ -43,42 +95,8 @@ class QtiRunnerConfig implements RunnerConfig public function getConfig() { if (is_null($this->config)) { - // get the raw server config, using the old notation - $rawConfig = \common_ext_ExtensionsManager::singleton()->getExtensionById('taoQtiTest')->getConfig('testRunner'); - // build the test config using the new notation - $this->config = [ - 'timerWarning' => isset($rawConfig['timerWarning']) ? $rawConfig['timerWarning'] : null, - 'progressIndicator' => [ - 'type' => isset($rawConfig['progress-indicator']) ? $rawConfig['progress-indicator'] : null, - 'scope' => isset($rawConfig['progress-indicator-scope']) ? $rawConfig['progress-indicator-scope'] : null, - 'forced' => isset($rawConfig['progress-indicator-forced']) ? $rawConfig['progress-indicator-forced'] : false, - ], - 'review' => [ - 'enabled' => !empty($rawConfig['test-taker-review']), - 'scope' => isset($rawConfig['test-taker-review-scope']) ? $rawConfig['test-taker-review-scope'] : null, - 'forceTitle' => !empty($rawConfig['test-taker-review-force-title']), - 'itemTitle' => isset($rawConfig['test-taker-review-item-title']) ? $rawConfig['test-taker-review-item-title'] : null, - 'preventsUnseen' => !empty($rawConfig['test-taker-review-prevents-unseen']), - 'canCollapse' => !empty($rawConfig['test-taker-review-can-collapse']), - ], - 'exitButton' => !empty($rawConfig['exitButton']), - 'nextSection' => !empty($rawConfig['next-section']), - 'plugins' => isset($rawConfig['plugins']) ? $rawConfig['plugins'] : null, - 'security' => [ - 'csrfToken' => isset($rawConfig['csrf-token']) ? $rawConfig['csrf-token'] : false, - ], - 'timer' => [ - 'target' => isset($rawConfig['timer']) && isset($rawConfig['timer']['target']) ? $rawConfig['timer']['target'] : null, - 'resetAfterResume' => !empty($rawConfig['reset-timer-after-resume']), - 'keepUpToTimeout' => !empty($rawConfig['keep-timer-up-to-timeout']), - ], - 'enableAllowSkipping' => isset($rawConfig['enable-allow-skipping']) ? $rawConfig['enable-allow-skipping'] : false, - 'checkInformational' => isset($rawConfig['check-informational']) ? $rawConfig['check-informational'] : false, - 'enableUnansweredItemsWarning' => isset($rawConfig['test-taker-unanswered-items-message']) ? $rawConfig['test-taker-unanswered-items-message'] : true, - 'allowShortcuts' => !empty($rawConfig['allow-shortcuts']), - 'shortcuts' => isset($rawConfig['shortcuts']) ? $rawConfig['shortcuts'] : [], - ]; + $this->config = $this->buildConfig(); } return $this->config; } @@ -102,7 +120,7 @@ public function getConfigValue($name) * @param RunnerServiceContext $context The test context * @return mixed */ - public function getOptions(RunnerServiceContext $context) + protected function buildOptions(RunnerServiceContext $context) { $session = $context->getTestSession(); @@ -130,4 +148,18 @@ public function getOptions(RunnerServiceContext $context) return $options; } + + /** + * Returns the options related to the current test context + * @param RunnerServiceContext $context The test context + * @return mixed + */ + public function getOptions(RunnerServiceContext $context) + { + if (is_null($this->options)) { + // build the test config using the new notation + $this->options = $this->buildOptions($context); + } + return $this->options; + } } diff --git a/models/classes/runner/map/QtiRunnerMap.php b/models/classes/runner/map/QtiRunnerMap.php index 6af6657df1..115ff72c4a 100644 --- a/models/classes/runner/map/QtiRunnerMap.php +++ b/models/classes/runner/map/QtiRunnerMap.php @@ -23,6 +23,7 @@ namespace oat\taoQtiTest\models\runner\map; use oat\taoQtiTest\models\runner\config\RunnerConfig; +use oat\taoQtiTest\models\runner\QtiRunnerServiceContext; use oat\taoQtiTest\models\runner\RunnerServiceContext; use qtism\data\NavigationMode; use qtism\runtime\tests\AssessmentTestSession; @@ -39,9 +40,20 @@ class QtiRunnerMap implements RunnerMap * @param RunnerServiceContext $context The test context * @param RunnerConfig $config The runner config * @return mixed + * @throws \common_exception_InvalidArgumentType */ public function getMap(RunnerServiceContext $context, RunnerConfig $config) { + if (!($context instanceof QtiRunnerServiceContext)) { + throw new \common_exception_InvalidArgumentType( + 'QtiRunnerMap', + 'getMap', + 0, + 'oat\taoQtiTest\models\runner\QtiRunnerServiceContext', + $context + ); + } + $map = [ 'parts' => [], 'jumps' => [] @@ -51,6 +63,7 @@ public function getMap(RunnerServiceContext $context, RunnerConfig $config) $reviewConfig = $config->getConfigValue('review'); $checkInformational = $config->getConfigValue('checkInformational'); $forceTitles = !empty($reviewConfig['forceTitle']); + $useTitle = !empty($reviewConfig['useTitle']); $uniqueTitle = isset($reviewConfig['itemTitle']) ? $reviewConfig['itemTitle'] : '%d'; /* @var AssessmentTestSession $session */ @@ -94,7 +107,19 @@ public function getMap(RunnerServiceContext $context, RunnerConfig $config) if ($forceTitles) { $label = sprintf($uniqueTitle, $offsetSection + 1); } else { - $label = $item->getLabel(); + if ($useTitle) { + $label = $context->getItemIndexValue($itemUri, 'title'); + } else { + $label = ''; + } + + if (!$label) { + $label = $context->getItemIndexValue($itemUri, 'label'); + } + + if (!$label) { + $label = $item->getLabel(); + } } $itemInfos = [ diff --git a/scripts/update/Updater.php b/scripts/update/Updater.php index f24142b5f5..a38117b888 100644 --- a/scripts/update/Updater.php +++ b/scripts/update/Updater.php @@ -911,7 +911,7 @@ public function update($initialVersion) { 'out' => 'Shift+O', 'close' => 'esc' ]; - + $config['plugins']['magnifier'] = [ 'zoomMin' => 2, 'zoomMax' => 8, @@ -922,7 +922,86 @@ public function update($initialVersion) { $this->setVersion('5.45.0'); } + + $this->skip('5.45.0', '5.46.2'); + + if ($this->isVersion('5.46.2')) { + $extension = \common_ext_ExtensionsManager::singleton()->getExtensionById('taoQtiTest'); + + $config = $extension->getConfig('testRunner'); + + $config['shortcuts']['dialog'] = [ + 'accept' => 'Enter', + 'reject' => 'Esc' + ]; + + $extension->setConfig('testRunner', $config); + + $this->setVersion('5.47.0'); + } + + if ($this->isVersion('5.47.0')) { + + $qtiTest = \common_ext_ExtensionsManager::singleton()->getExtensionById('taoQtiTest'); + $config = $qtiTest->getConfig('testRunner'); + $config = array_merge($config, array( + 'test-taker-review-show-legend' => true, + 'test-taker-review-default-open' => true, + )); + $qtiTest->setConfig('testRunner', $config); + + $this->setVersion('5.48.0'); + } + + $this->skip('5.48.0', '5.49.0'); - $this->skip('5.45.0', '5.46.1'); + if ($this->isVersion('5.49.0')) { + + $extension = \common_ext_ExtensionsManager::singleton()->getExtensionById('taoQtiTest'); + + $config = $extension->getConfig('testRunner'); + + $config['shortcuts']['itemThemeSwitcher'] = [ + 'toggle' => 'T', + 'up' => 'ArrowUp', + 'down' => 'ArrowDown', + 'select' => 'Enter' + ]; + + $extension->setConfig('testRunner', $config); + + $this->setVersion('5.49.1'); + } + + if ($this->isVersion('5.49.1')) { + $extension = \common_ext_ExtensionsManager::singleton()->getExtensionById('taoQtiTest'); + + $config = $extension->getConfig('testRunner'); + + $config['test-taker-review-use-title'] = true; + + $extension->setConfig('testRunner', $config); + + $this->setVersion('5.50.0'); + } + + if ($this->isVersion('5.50.0')) { + $registry = PluginRegistry::getRegistry(); + if (!$registry->isRegistered('taoQtiTest/runner/plugins/tools/magnifier/magnifier')) { + $registry->register(TestPlugin::fromArray([ + 'id' => 'magnifier', + 'name' => 'Magnifier', + 'module' => 'taoQtiTest/runner/plugins/tools/magnifier/magnifier', + 'description' => 'Gives student access to a magnification tool', + 'category' => 'tools', + 'active' => false, + 'tags' => [ ] + ])); + } + + $this->setVersion('5.50.1'); + } + + $this->skip('5.50.1', '5.51.0'); } } diff --git a/views/css/new-test-runner.css b/views/css/new-test-runner.css index b5f8f1ad9d..d1264ccf98 100644 --- a/views/css/new-test-runner.css +++ b/views/css/new-test-runner.css @@ -1,2 +1,2 @@ -@-o-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@-moz-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@-webkit-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}.loading-bar{height:6px;position:absolute;width:100%;top:0px;display:none;overflow-x:hidden;overflow-y:visible;z-index:10000}.loading-bar.fixed{position:fixed;width:100%}.loading-bar.fixed:before{top:0 !important}.loading-bar.loading{display:block}.loading-bar.loading:before{position:absolute;top:86px;content:'';height:6px;width:20%;display:block;transform:translateZ(0);background:-webkit-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-moz-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-ms-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-o-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);-webkit-animation:loadingbar 5s linear infinite;-moz-animation:loadingbar 5s linear infinite;-ms-animation:loadingbar 5s linear infinite;-o-animation:loadingbar 5s linear infinite;animation:loadingbar 5s linear infinite}.no-version-warning .loading-bar:before{top:58px}.action-bar{background:#266d9c;padding:3px;overflow:hidden;color:#e7eff4}.action-bar li{float:left}.action-bar li .li-inner{padding-bottom:1px;text-decoration:none !important;outline:0;display:inline-block;color:inherit}.action-bar li .li-inner:hover{color:white}.action-bar li span.glyph{text-shadow:0 0 0 transparent;color:inherit}.action-bar li input{width:100%;font-size:12px;font-size:1.2rem;padding:2px 4px}.action-bar li.active .li-inner{color:white}.action-bar.horizontal-action-bar{padding:5px;height:35px}.action-bar.horizontal-action-bar .search-area{margin:2px 0 0 0;border:none;float:right;display:inline-block;position:relative;padding:0 30px 0 0}.action-bar.horizontal-action-bar .search-area input{padding-right:34px;min-width:250px !important}.action-bar.horizontal-action-bar .search-area button{position:absolute;right:32px;top:-2px;cursor:default;opacity:.5;background:transparent;width:25px;height:25px}.action-bar.horizontal-action-bar .search-area button:before{color:#666}.action-bar.horizontal-action-bar .search-area .icon-help{position:absolute;right:5px;top:-1px;text-shadow:0px 0px transparent;color:white;cursor:pointer;display:block;width:24px;height:24px;line-height:24px;text-align:center}.action-bar.horizontal-action-bar li{margin:0 1px;border:1px transparent solid;text-align:center;float:left}.action-bar.horizontal-action-bar li .glyph{width:14px}.action-bar.horizontal-action-bar li .svg-glyph{height:14px;width:14px;margin-right:9px}.action-bar.horizontal-action-bar li.btn-info{overflow:hidden;background:transparent}.action-bar.horizontal-action-bar li.btn-info:hover,.action-bar.horizontal-action-bar li.btn-info.active{border-color:rgba(255,255,255,0.3);opacity:1}.action-bar.horizontal-action-bar li.disabled{background:none !important;text-shadow:inherit !important;opacity:0.45 !important;color:inherit !important}.action-bar.horizontal-action-bar li.disabled a{cursor:not-allowed !important}.action-bar.vertical-action-bar li{max-height:60px}.action-bar.vertical-action-bar li .li-inner{height:60px;display:block;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:12px;font-size:1.2rem;line-height:12px}.action-bar.vertical-action-bar li .glyph{display:block;margin:12px auto 3px;width:20px;height:20px}.action-bar.tree-action-bar{background:#f3f1ef;position:relative;left:-1px;padding:0;margin:0 2.85714% 8px 2.85714%;width:94.64286%;font-size:13px;font-size:1.3rem}.action-bar.tree-action-bar li{background:rgba(255,255,255,0.5);border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;line-height:1.3;padding:0;text-align:center;float:left;width:65px;height:65px;margin:0 1px 1px 0}.action-bar.tree-action-bar li .glyph,.action-bar.tree-action-bar li .svg-glyph{display:block;color:#0e5d91;margin:12px auto 1px !important}.action-bar.tree-action-bar li .svg-glyph{width:20px;height:20px}.action-bar.tree-action-bar li .glyph{font-size:17px !important;font-size:1.7rem !important}.action-bar.tree-action-bar li .li-inner{display:block;height:65px;padding:2px;font-size:11px;font-size:1.1rem;color:#222}.action-bar.tree-action-bar li:hover{background:#ddd;color:#666}.action-bar .tree-filters{width:160px;position:relative}.action-bar .tree-filters input{padding-right:24px}.action-bar .tree-filters span{position:absolute;right:3px;color:#555;width:22px;top:2px;line-height:20px;display:inline-block;text-align:center;text-shadow:0 0 0 transparent;border-left:1px solid #ddd;cursor:pointer}.action-bar .tree-filters span.icon-close{display:none}.action-bar .tree-filters span:hover{color:#0e5d91}@media (max-width: 1150px){.action-bar.horizontal-action-bar .search-area{float:none;position:absolute;right:0px}.action-bar.horizontal-action-bar .search-area input{padding-right:30px;min-width:auto !important;width:150px}.action-bar.horizontal-action-bar .search-area input:focus{width:220px}}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area{float:none;position:absolute;right:0px}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area input{padding-right:30px;min-width:auto !important;width:150px}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area input:focus{width:220px}.section-container{top:0 !important}.section-container .flex-container-full{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 100%;-webkit-flex:0 0 100%;flex:0 0 100%}.section-container .flex-container-half{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 50%;-webkit-flex:0 0 50%;flex:0 0 50%}.section-container .flex-container-third{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 33.33333%;-webkit-flex:0 0 33.33333%;flex:0 0 33.33333%}.section-container .flex-container-quarter{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 25%;-webkit-flex:0 0 25%;flex:0 0 25%}.section-container .flex-container-remaining{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:1 1 480px;-webkit-flex:1 1 480px;flex:1 1 480px}.section-container .flex-container-main-form{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 500px;-webkit-flex:0 0 500px;flex:0 0 500px;margin:0 20px 20px 0}.section-container .flex-container-navi{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 280px;-webkit-flex:0 0 280px;flex:0 0 280px}.section-container .section-header{border:none}.section-container .content-panel{width:100%;height:100%;margin:0;padding:0;border:none !important;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.section-container .tab-container{border:none;display:none;list-style-type:none;padding:0;margin:0}.section-container .tab-container li{float:left;position:relative;top:0;padding:0;margin:0 1px 0px 0;border-top:1px solid #f3f1ef !important;border-bottom:1px solid #f3f1ef !important;background:#f3f1ef !important}.section-container .tab-container li a{top:0 !important;margin-bottom:0 !important;padding:6px 16px;text-decoration:none;min-height:32px;color:#222;float:left}.section-container .tab-container li.active,.section-container .tab-container li:hover{border-bottom-color:#4a86ad !important;border-top-color:#6e9ebd !important;background:#266d9c !important}.section-container .tab-container li.active a,.section-container .tab-container li:hover a{background:transparent !important;border-color:transparent !important;color:#fff !important;text-shadow:1px 1px 0 rgba(0,0,0,0.2)}.section-container .tab-container li.disabled:hover{background:#f3f1ef !important}.section-container .tab-container li.disabled:hover a{cursor:not-allowed !important;color:#222 !important}.section-container .navi-container{display:none;background:#f3f1ef;-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 280px;-webkit-flex:0 0 280px;flex:0 0 280px;border-right:1px #ddd solid}.section-container .navi-container .block-title{font-size:14px;font-size:1.4rem;padding:2px 8px;margin:0}.section-container .navi-container .tree-action-bar-box{margin:10px 0;opacity:0}.section-container .navi-container .tree-action-bar-box.active{opacity:1;-webkit-opacity:0.25s ease-in-out;-moz-opacity:0.25s ease-in-out;opacity:0.25s ease-in-out}.section-container .content-container{border:none;-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto;-ms-flex:1 1;-webkit-flex:1 1;flex:1 1}.section-container .content-block{padding:20px;overflow-y:auto;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.section-container .content-block>.grid-container{width:100%}.section-container .content-block .data-container-wrapper{padding:0px 20px 0 0}.section-container .content-block .data-container-wrapper:before,.section-container .content-block .data-container-wrapper:after{content:" ";display:table}.section-container .content-block .data-container-wrapper:after{clear:both}.section-container .content-block .data-container-wrapper>section,.section-container .content-block .data-container-wrapper .data-container{width:260px;margin:0 20px 20px 0;float:left;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.section-container .content-block .data-container-wrapper>section.double,.section-container .content-block .data-container-wrapper .data-container.double{width:540px}.section-container .content-block .data-container-wrapper>section .emptyContentFooter,.section-container .content-block .data-container-wrapper .data-container .emptyContentFooter{display:none}.section-container .content-block .data-container-wrapper>section .tree,.section-container .content-block .data-container-wrapper .data-container .tree{border:none;max-width:none;max-height:none}.section-container .content-block .data-container-wrapper>section form,.section-container .content-block .data-container-wrapper .data-container form{background:none;border:none;margin:0;padding:0}.section-container .content-block .data-container-wrapper>section>header,.section-container .content-block .data-container-wrapper>section .ui-widget-header,.section-container .content-block .data-container-wrapper .data-container>header,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header{background:#f3f1ef;border-width:0px !important;border-bottom:1px #ddd solid !important}.section-container .content-block .data-container-wrapper>section>header h1,.section-container .content-block .data-container-wrapper>section>header h6,.section-container .content-block .data-container-wrapper>section .ui-widget-header h1,.section-container .content-block .data-container-wrapper>section .ui-widget-header h6,.section-container .content-block .data-container-wrapper .data-container>header h1,.section-container .content-block .data-container-wrapper .data-container>header h6,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header h1,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header h6{padding:4px;margin:0;font-size:14px;font-size:1.4rem}.section-container .content-block .data-container-wrapper>section>div,.section-container .content-block .data-container-wrapper>section .ui-widget-content,.section-container .content-block .data-container-wrapper>section .container-content,.section-container .content-block .data-container-wrapper .data-container>div,.section-container .content-block .data-container-wrapper .data-container .ui-widget-content,.section-container .content-block .data-container-wrapper .data-container .container-content{border-width:0px !important;overflow-y:auto;min-height:250px;padding:5px}.section-container .content-block .data-container-wrapper>section>div .icon-grip,.section-container .content-block .data-container-wrapper>section .ui-widget-content .icon-grip,.section-container .content-block .data-container-wrapper>section .container-content .icon-grip,.section-container .content-block .data-container-wrapper .data-container>div .icon-grip,.section-container .content-block .data-container-wrapper .data-container .ui-widget-content .icon-grip,.section-container .content-block .data-container-wrapper .data-container .container-content .icon-grip{cursor:move}.section-container .content-block .data-container-wrapper>section>footer,.section-container .content-block .data-container-wrapper>section .data-container-footer,.section-container .content-block .data-container-wrapper .data-container>footer,.section-container .content-block .data-container-wrapper .data-container .data-container-footer{background:#f3f1ef;text-align:right !important;padding:4px;border-width:0px !important;border-top:1px #ddd solid !important}.section-container .content-block .data-container-wrapper>section>footer .square,.section-container .content-block .data-container-wrapper>section .data-container-footer .square,.section-container .content-block .data-container-wrapper .data-container>footer .square,.section-container .content-block .data-container-wrapper .data-container .data-container-footer .square{width:28px}.section-container .content-block .data-container-wrapper>section>footer .square span,.section-container .content-block .data-container-wrapper>section .data-container-footer .square span,.section-container .content-block .data-container-wrapper .data-container>footer .square span,.section-container .content-block .data-container-wrapper .data-container .data-container-footer .square span{padding:0;left:0}.section-container .content-block .data-container-wrapper>section ol,.section-container .content-block .data-container-wrapper .data-container ol{margin:0 0 0 15px;padding:10px}.section-container .content-block #form-container.ui-widget-content{border:none !important}.section-container .content-block form:not(.list-container){border:1px #ddd solid;background:#f3f1ef;padding:30px;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.section-container .content-block [class^="btn-"],.section-container .content-block [class*=" btn-"]{margin:0 2px}.qti-navigator{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;-o-flex-direction:column;flex-direction:column;padding:0;cursor:default;min-width:calc(18rem - 8px);height:100%;position:relative}.qti-navigator span{display:inline-block}.qti-navigator .collapsed .collapsible-panel{display:none !important}.qti-navigator .collapsed .qti-navigator-label .icon-up{display:none}.qti-navigator .collapsed .qti-navigator-label .icon-down{display:inline-block}.qti-navigator .collapsible>.qti-navigator-label,.qti-navigator .qti-navigator-item>.qti-navigator-label{cursor:pointer}.qti-navigator.scope-test-section .qti-navigator-part>.qti-navigator-label{display:none !important}.qti-navigator .qti-navigator-label{display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;min-width:calc(100% - 12px);padding:0 6px;line-height:3rem}.qti-navigator .qti-navigator-label .icon-up,.qti-navigator .qti-navigator-label .icon-down{line-height:3rem;margin-left:auto}.qti-navigator .qti-navigator-label .icon-down{display:none}.qti-navigator .qti-navigator-label .qti-navigator-number{display:none}.qti-navigator .qti-navigator-icon,.qti-navigator .icon{position:relative;top:1px;display:inline-block;width:2rem;line-height:2.8rem}.qti-navigator .unseen .qti-navigator-icon{cursor:default}.qti-navigator.prevents-unseen .unseen .qti-navigator-icon,.qti-navigator.prevents-unseen .unseen .qti-navigator-label{cursor:not-allowed !important}.qti-navigator .icon-answered:before{content:"\e69a"}.qti-navigator .icon-viewed:before{content:"\e631"}.qti-navigator .icon-flagged:before{content:"\e64e"}.qti-navigator .icon-unanswered:before,.qti-navigator .icon-unseen:before{content:"\e6a5"}.qti-navigator .qti-navigator-counter{text-align:right;margin-left:auto;font-size:12px;font-size:1.2rem}.qti-navigator .qti-navigator-actions{text-align:center}.qti-navigator .qti-navigator-info.collapsed{height:calc(3rem + 1px)}.qti-navigator .qti-navigator-info{height:calc(5 * (3rem + 1px));overflow:hidden}.qti-navigator .qti-navigator-info>.qti-navigator-label{min-width:calc(100% - 16px);padding:0 8px}.qti-navigator .qti-navigator-info ul{padding:0 4px}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-text{padding:0 6px;min-width:10rem}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-icon{min-width:1.5rem}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-counter{min-width:5rem}.qti-navigator .qti-navigator-filters{margin-top:1rem;text-align:center;width:15rem;height:calc(3rem + (2 * 1px))}.qti-navigator .qti-navigator-filters ul{display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.qti-navigator .qti-navigator-filters li{display:block}.qti-navigator .qti-navigator-filters li span{border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;border-left:none;line-height:3rem;width:5rem;cursor:pointer}.qti-navigator .qti-navigator-tree{-webkit-flex:1;-moz-flex:1;-ms-flex:1;-o-flex:1;flex:1;overflow-y:auto}.qti-navigator .qti-navigator-linear,.qti-navigator .qti-navigator-linear-part{padding:8px}.qti-navigator .qti-navigator-linear .icon,.qti-navigator .qti-navigator-linear-part .icon{display:none}.qti-navigator .qti-navigator-linear .qti-navigator-label,.qti-navigator .qti-navigator-linear-part .qti-navigator-label{font-size:14px;font-size:1.4rem}.qti-navigator .qti-navigator-linear .qti-navigator-title,.qti-navigator .qti-navigator-linear-part .qti-navigator-title{font-size:14px;font-size:1.4rem;margin:8px 0}.qti-navigator .qti-navigator-linear .qti-navigator-message,.qti-navigator .qti-navigator-linear-part .qti-navigator-message{font-size:14px;font-size:1.4rem}.qti-navigator .qti-navigator-part>.qti-navigator-label{padding:0 8px}.qti-navigator .qti-navigator-part:not(:first-child){margin-top:1px}.qti-navigator .qti-navigator-section>.qti-navigator-label{padding:0 8px}.qti-navigator .qti-navigator-item{margin:1px 0;padding-left:10px}.qti-navigator .qti-navigator-item:first-child{margin-top:0}.qti-navigator .qti-navigator-item.disabled>.qti-navigator-label{cursor:not-allowed}.qti-navigator .qti-navigator-collapsible{cursor:pointer;text-align:center;display:none;position:absolute;top:0;bottom:0;right:0;padding-top:50%}.qti-navigator .qti-navigator-collapsible .icon{font-size:20px;font-size:2rem;width:1rem !important;height:2rem !important}.qti-navigator .qti-navigator-collapsible .qti-navigator-expand{display:none}.qti-navigator.collapsible{padding-right:calc(1rem + 10px) !important}.qti-navigator.collapsible .qti-navigator-collapsible{display:block}.qti-navigator.collapsed{width:calc(8rem + 1rem + 10px);min-width:8rem}.qti-navigator.collapsed ul{padding:0 !important}.qti-navigator.collapsed .qti-navigator-text,.qti-navigator.collapsed .qti-navigator-info>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-part>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-section>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-message{display:none !important}.qti-navigator.collapsed .qti-navigator-label{padding:0 2px !important;width:calc(8rem - 4px);min-width:calc(8rem - 4px)}.qti-navigator.collapsed .qti-navigator-icon,.qti-navigator.collapsed .icon{width:auto}.qti-navigator.collapsed .qti-navigator-counter{margin-left:0;min-width:4rem !important}.qti-navigator.collapsed .qti-navigator-collapsible .qti-navigator-collapse{display:none}.qti-navigator.collapsed .qti-navigator-collapsible .qti-navigator-expand{display:block}.qti-navigator.collapsed .qti-navigator-info{height:calc(4 * (3rem + 1px))}.qti-navigator.collapsed .qti-navigator-info.collapsed .collapsible-panel{display:block !important}.qti-navigator.collapsed .qti-navigator-filters{width:calc(8rem - 16px)}.qti-navigator.collapsed .qti-navigator-filter span{display:none}.qti-navigator.collapsed .qti-navigator-filter.active span{display:block;border:0 none;width:calc(8rem - 16px)}.qti-navigator.collapsed .qti-navigator-item,.qti-navigator.collapsed .qti-navigator-linear,.qti-navigator.collapsed .qti-navigator-linear-part{padding-left:2px;text-align:center}.qti-navigator.collapsed .qti-navigator-item{overflow:hidden}.qti-navigator.collapsed .qti-navigator-item .qti-navigator-icon{padding-left:6px;width:2rem}.qti-navigator.collapsed .qti-navigator-item .qti-navigator-number{display:inline-block;margin-left:6px;margin-right:8rem}.qti-navigator.collapsed .qti-navigator-linear,.qti-navigator.collapsed .qti-navigator-linear-part{padding:0 0 8px 0}.qti-navigator.collapsed .qti-navigator-linear .icon,.qti-navigator.collapsed .qti-navigator-linear-part .icon{display:block}.qti-navigator.collapsed .qti-navigator-actions button{padding:0 9px 0 5px}.qti-navigator .qti-navigator-info>.qti-navigator-label{background-color:#D4D5D7;color:#222;border-top:1px solid #D4D5D7}.qti-navigator .qti-navigator-info li{border-bottom:1px solid #fff}.qti-navigator .qti-navigator-filter span{background-color:#fff}.qti-navigator .qti-navigator-filter span:hover{background-color:#3e7da7;color:#fff}.qti-navigator .qti-navigator-filter.active span{background-color:#a4a9b1;color:#fff}.qti-navigator .qti-navigator-linear,.qti-navigator .qti-navigator-linear-part{background:#fff}.qti-navigator .qti-navigator-part>.qti-navigator-label{background-color:#dddfe2}.qti-navigator .qti-navigator-part>.qti-navigator-label:hover{background-color:#c6cacf}.qti-navigator .qti-navigator-part.active>.qti-navigator-label{background-color:#c0c4ca}.qti-navigator .qti-navigator-section>.qti-navigator-label{border-bottom:1px solid #fff}.qti-navigator .qti-navigator-section>.qti-navigator-label:hover{background-color:#ebe8e4}.qti-navigator .qti-navigator-section.active>.qti-navigator-label{background-color:#ded9d4}.qti-navigator .qti-navigator-item{background:#fff}.qti-navigator .qti-navigator-item.active{background:#f4f7f8}.qti-navigator .qti-navigator-item:hover{background:#eef3f5}.qti-navigator .qti-navigator-item.disabled{background-color:#e2deda !important}.qti-navigator .qti-navigator-collapsible{background-color:#dfe1e4;color:#222}.qti-navigator .qti-navigator-collapsible .icon{color:#fff}.document-viewer-plugin{position:relative}.document-viewer-plugin .viewer-overlay{position:fixed;top:0;left:0;bottom:0;right:0;z-index:10000;width:100%;opacity:.5;background-color:#e4ecef}.document-viewer-plugin .viewer-panel{position:fixed;top:10px;left:10px;bottom:10px;right:10px;z-index:100000;color:#222;background:#f3f1ef;font-size:14px;font-size:1.4rem;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.document-viewer-plugin .viewer-header{position:relative;width:100%;height:30px;padding:5px 0;z-index:1}.document-viewer-plugin .viewer-header .viewer-title{font-size:15px;font-size:1.5rem;padding:0;margin:0 0 0 1.6rem}.document-viewer-plugin .viewer-header .icon{float:right;font-size:20px;font-size:2rem;color:#266d9c;margin:1px 6px;top:3px}.document-viewer-plugin .viewer-header .icon:hover{cursor:pointer;opacity:.75}.document-viewer-plugin .viewer-content{padding:0 20px;margin-top:4px;position:relative;height:calc(100% - 40px);overflow:auto}.mask{position:absolute;width:250px;height:100px;min-width:50px;min-height:25px;top:0;left:0;border:solid 1px #3e7da7;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background:transparent;opacity:1}.mask .inner{position:relative;width:100%;height:100%;background-color:#fff;opacity:1}.mask.moving .inner{opacity:.55}.mask.sizing{border-style:dashed}.mask.sizing .inner{opacity:.45}.mask.previewing .inner{opacity:.15;-webkit-transition:opacity, 600ms, ease;-moz-transition:opacity, 600ms, ease;-ms-transition:opacity, 600ms, ease;-o-transition:opacity, 600ms, ease;transition:opacity, 600ms, ease}.mask .controls{position:absolute;top:5px;right:5px}.mask .controls a{text-decoration:none;font-size:16px;font-size:1.6rem;margin-right:5px}body.delivery-scope{min-height:100vh;max-height:100vh;margin-bottom:0}.runner{position:relative}.test-runner-scope{position:relative;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;height:calc(100vh - 99px)}.test-runner-scope .test-runner-sections{-webkit-flex:1 1 0%;-ms-flex:1 1 0%;flex:1 1 0%;overflow:hidden;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.test-runner-scope .test-sidebar{background:#f3f1ef;-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto;height:calc(100vh - 179px);overflow-y:auto;max-width:350px}.test-runner-scope .test-sidebar>.qti-panel{max-width:350px;padding:10px}@media only screen and (max-device-width: 800px){.test-runner-scope .test-sidebar{max-width:200px}.test-runner-scope .test-sidebar>.qti-panel{max-width:200px}}@media only screen and (min-device-width: 800px) and (max-device-width: 1280px){.test-runner-scope .test-sidebar{max-width:250px}.test-runner-scope .test-sidebar>.qti-panel{max-width:250px}}@media only screen and (min-device-width: 1280px) and (max-device-width: 1440px){.test-runner-scope .test-sidebar{max-width:300px}.test-runner-scope .test-sidebar>.qti-panel{max-width:300px}}.test-runner-scope .test-sidebar-left{border-right:1px #ddd solid}.test-runner-scope .test-sidebar-right{border-left:1px #ddd solid}.test-runner-scope .content-wrapper{position:relative;-webkit-flex:1 1 0%;-ms-flex:1 1 0%;flex:1 1 0%;overflow:auto;padding-top:15px}.test-runner-scope .content-wrapper .overlay{position:absolute;left:0;right:0;top:0;bottom:0;width:100%;opacity:.9}.test-runner-scope .content-wrapper .overlay-full{background-color:#fff;opacity:1}.test-runner-scope #qti-content{max-width:1024px;width:100%;margin:auto}.test-runner-scope #qti-item{width:100%;min-width:100%;height:auto;overflow:visible}.test-runner-scope .size-wrapper{max-width:1280px;margin:auto;width:100%}.test-runner-scope #qti-rubrics{margin:auto;max-width:1024px;width:100%}.test-runner-scope #qti-rubrics .qti-rubricBlock{margin:20px 0}.test-runner-scope #qti-rubrics .hidden{display:none}.no-controls .test-runner-scope{height:100vh}.test-runner-scope .action-bar.content-action-bar li{margin:2px 0 0 10px}.test-runner-scope .action-bar.content-action-bar li.btn-info{border-color:rgba(255,255,255,0.3)}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group{border:none !important;overflow:hidden;padding:0}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a{float:left;margin:0 2px;padding:0 15px;border:1px solid rgba(255,255,255,0.3);border-radius:0px;display:inline-block;height:inherit}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a:first-of-type{border-top-left-radius:3px;border-bottom-left-radius:3px;margin-left:0}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a:last-of-type{border-top-right-radius:3px;border-bottom-right-radius:3px;margin-right:0}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a:hover,.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a.active{border-color:rgba(255,255,255,0.8)}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a .no-label{padding-right:0}.test-runner-scope .action-bar.content-action-bar li.btn-info:hover,.test-runner-scope .action-bar.content-action-bar li.btn-info.active{border-color:rgba(255,255,255,0.8)}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar{opacity:1;height:40px}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box{height:40px;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-justify-content:space-between;-ms-flex-pack:space-between;justify-content:space-between}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .title-box{font-size:14px;font-size:1.4rem;padding:4px 0 0;-ms-flex:0 1 auto;-webkit-flex:0 1 auto;flex:0 1 auto}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .progress-box,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .item-number-box{padding-top:4px;white-space:nowrap;-ms-flex:0 1 auto;-webkit-flex:0 1 auto;flex:0 1 auto}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .progress-box .qti-controls,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .item-number-box .qti-controls{display:inline-block;margin-left:20px;white-space:nowrap}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box{padding-top:0;white-space:nowrap;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer{display:inline-block;text-align:center;vertical-align:top;line-height:1.2;position:relative;padding:0 20px;margin-top:-1px}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer .qti-timer_label{max-width:130px;display:block;font-size:12px;font-size:1.2rem}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer::before{content:' ';background:rgba(255,255,255,0.3);width:1px;height:20px;position:absolute;left:0;top:5px}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer:first-child::before{content:none}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer.qti-timer__type-assessmentTest{-ms-flex-order:0;-webkit-order:0;order:0}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer.qti-timer__type-assessmentTestPart{-ms-flex-order:1;-webkit-order:1;order:1}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer.qti-timer__type-assessmentSection{-ms-flex-order:2;-webkit-order:2;order:2}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer.qti-timer__type-assessmentItemRef{-ms-flex-order:3;-webkit-order:3;order:3}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .progressbar{margin-top:5px;min-width:150px;max-width:200px;height:0.6em}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box{color:rgba(255,255,255,0.9);text-shadow:1px 1px 0 black}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .lft,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .rgt{padding-left:20px}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .lft:first-child,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .rgt:first-child{padding-left:0}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .lft:last-child ul,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .rgt:last-child ul{display:inline-block}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box [class^="btn-"],.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box [class*=" btn-"]{white-space:nowrap}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .no-tool-label .text,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .no-tool-label-hover li:not(:hover) .text{display:none}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .no-tool-label .icon,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .no-tool-label-hover li:not(:hover) .icon{padding:0}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .action{position:relative;overflow:visible}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu{color:#222;background:#f3f1ef;overflow:auto;list-style:none;min-width:150px;z-index:2000;margin:0;padding:0;position:absolute;bottom:30px;left:0}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action{display:inline-block;text-align:left;width:100%;white-space:nowrap;overflow:hidden;color:#222;margin:0;-moz-border-radius:0px;-webkit-border-radius:0px;border-radius:0px;height:32px;padding:6px 15px;line-height:1}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.selected{background-color:#3e7da7;color:#fff}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.selected .label,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.selected .icon{color:#fff}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.hover,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action:hover{background-color:#0e5d91;color:#fff}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.hover .label,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.hover .icon,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action:hover .label,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action:hover .icon{color:#fff}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action .label,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action .icon{font-size:14px;font-size:1.4rem;text-shadow:none;color:#222}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.bottom-action-bar{overflow:visible}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.bottom-action-bar .action{line-height:1.6}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.bottom-action-bar .icon.no-label{padding-right:0}.test-runner-scope [data-control="exit"]{margin-left:20px}.test-runner-scope [data-control="comment-toggle"]{display:none}.test-runner-scope.non-lti-context .title-box{display:none}.test-runner-scope [data-control="qti-comment"]{background-color:#f3f1ef;position:absolute;bottom:33px;left:8px;z-index:9999;text-align:right;padding:5px;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;-webkit-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-moz-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-ms-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-o-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);box-shadow:0 0 15px 1px rgba(0,0,0,0.2)}.test-runner-scope [data-control="qti-comment"] textarea{display:block;height:100px;resize:none;width:350px;padding:3px;margin:0 0 10px 0;border:none;font-size:13px;font-size:1.3rem;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.test-runner-scope .tools-box{position:relative;overflow:visible} +@-o-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@-moz-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@-webkit-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}.loading-bar{height:6px;position:absolute;width:100%;top:0px;display:none;overflow-x:hidden;overflow-y:visible;z-index:10000}.loading-bar.fixed{position:fixed;width:100%}.loading-bar.fixed:before{top:0 !important}.loading-bar.loading{display:block}.loading-bar.loading:before{position:absolute;top:86px;content:'';height:6px;width:20%;display:block;transform:translateZ(0);background:-webkit-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-moz-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-ms-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-o-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);-webkit-animation:loadingbar 5s linear infinite;-moz-animation:loadingbar 5s linear infinite;-ms-animation:loadingbar 5s linear infinite;-o-animation:loadingbar 5s linear infinite;animation:loadingbar 5s linear infinite}.no-version-warning .loading-bar:before{top:58px}.action-bar{background:#266d9c;padding:3px;overflow:hidden;color:#e7eff4}.action-bar li{float:left}.action-bar li .li-inner{padding-bottom:1px;text-decoration:none !important;outline:0;display:inline-block;color:inherit}.action-bar li .li-inner:hover{color:white}.action-bar li span.glyph{text-shadow:0 0 0 transparent;color:inherit}.action-bar li input{width:100%;font-size:12px;font-size:1.2rem;padding:2px 4px}.action-bar li.active .li-inner{color:white}.action-bar.horizontal-action-bar{padding:5px;height:35px}.action-bar.horizontal-action-bar .search-area{margin:2px 0 0 0;border:none;float:right;display:inline-block;position:relative;padding:0 30px 0 0}.action-bar.horizontal-action-bar .search-area input{padding-right:34px;min-width:250px !important}.action-bar.horizontal-action-bar .search-area button{position:absolute;right:32px;top:-2px;cursor:default;opacity:.5;background:transparent;width:25px;height:25px}.action-bar.horizontal-action-bar .search-area button:before{color:#666}.action-bar.horizontal-action-bar .search-area .icon-help{position:absolute;right:5px;top:-1px;text-shadow:0px 0px transparent;color:white;cursor:pointer;display:block;width:24px;height:24px;line-height:24px;text-align:center}.action-bar.horizontal-action-bar li{margin:0 1px;border:1px transparent solid;text-align:center;float:left}.action-bar.horizontal-action-bar li .glyph{width:14px}.action-bar.horizontal-action-bar li .svg-glyph{height:14px;width:14px;margin-right:9px}.action-bar.horizontal-action-bar li.btn-info{overflow:hidden;background:transparent}.action-bar.horizontal-action-bar li.btn-info:hover,.action-bar.horizontal-action-bar li.btn-info.active{border-color:rgba(255,255,255,0.3);opacity:1}.action-bar.horizontal-action-bar li.disabled{background:none !important;text-shadow:inherit !important;opacity:0.45 !important;color:inherit !important}.action-bar.horizontal-action-bar li.disabled a{cursor:not-allowed !important}.action-bar.vertical-action-bar li{max-height:60px}.action-bar.vertical-action-bar li .li-inner{height:60px;display:block;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:12px;font-size:1.2rem;line-height:12px}.action-bar.vertical-action-bar li .glyph{display:block;margin:12px auto 3px;width:20px;height:20px}.action-bar.tree-action-bar{background:#f3f1ef;position:relative;left:-1px;padding:0;margin:0 2.85714% 8px 2.85714%;width:94.64286%;font-size:13px;font-size:1.3rem}.action-bar.tree-action-bar li{background:rgba(255,255,255,0.5);border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;line-height:1.3;padding:0;text-align:center;float:left;width:65px;height:65px;margin:0 1px 1px 0}.action-bar.tree-action-bar li .glyph,.action-bar.tree-action-bar li .svg-glyph{display:block;color:#0e5d91;margin:12px auto 1px !important}.action-bar.tree-action-bar li .svg-glyph{width:20px;height:20px}.action-bar.tree-action-bar li .glyph{font-size:17px !important;font-size:1.7rem !important}.action-bar.tree-action-bar li .li-inner{display:block;height:65px;padding:2px;font-size:11px;font-size:1.1rem;color:#222}.action-bar.tree-action-bar li:hover{background:#ddd;color:#666}.action-bar .tree-filters{width:160px;position:relative}.action-bar .tree-filters input{padding-right:24px}.action-bar .tree-filters span{position:absolute;right:3px;color:#555;width:22px;top:2px;line-height:20px;display:inline-block;text-align:center;text-shadow:0 0 0 transparent;border-left:1px solid #ddd;cursor:pointer}.action-bar .tree-filters span.icon-close{display:none}.action-bar .tree-filters span:hover{color:#0e5d91}@media (max-width: 1150px){.action-bar.horizontal-action-bar .search-area{float:none;position:absolute;right:0px}.action-bar.horizontal-action-bar .search-area input{padding-right:30px;min-width:auto !important;width:150px}.action-bar.horizontal-action-bar .search-area input:focus{width:220px}}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area{float:none;position:absolute;right:0px}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area input{padding-right:30px;min-width:auto !important;width:150px}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area input:focus{width:220px}.section-container{top:0 !important}.section-container .flex-container-full{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 100%;-webkit-flex:0 0 100%;flex:0 0 100%}.section-container .flex-container-half{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 50%;-webkit-flex:0 0 50%;flex:0 0 50%}.section-container .flex-container-third{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 33.33333%;-webkit-flex:0 0 33.33333%;flex:0 0 33.33333%}.section-container .flex-container-quarter{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 25%;-webkit-flex:0 0 25%;flex:0 0 25%}.section-container .flex-container-remaining{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:1 1 480px;-webkit-flex:1 1 480px;flex:1 1 480px}.section-container .flex-container-main-form{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 500px;-webkit-flex:0 0 500px;flex:0 0 500px;margin:0 20px 20px 0}.section-container .flex-container-navi{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 280px;-webkit-flex:0 0 280px;flex:0 0 280px}.section-container .section-header{border:none}.section-container .content-panel{width:100%;height:100%;margin:0;padding:0;border:none !important;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.section-container .tab-container{border:none;display:none;list-style-type:none;padding:0;margin:0}.section-container .tab-container li{float:left;position:relative;top:0;padding:0;margin:0 1px 0px 0;border-top:1px solid #f3f1ef !important;border-bottom:1px solid #f3f1ef !important;background:#f3f1ef !important}.section-container .tab-container li a{top:0 !important;margin-bottom:0 !important;padding:6px 16px;text-decoration:none;min-height:32px;color:#222;float:left}.section-container .tab-container li.active,.section-container .tab-container li:hover{border-bottom-color:#4a86ad !important;border-top-color:#6e9ebd !important;background:#266d9c !important}.section-container .tab-container li.active a,.section-container .tab-container li:hover a{background:transparent !important;border-color:transparent !important;color:#fff !important;text-shadow:1px 1px 0 rgba(0,0,0,0.2)}.section-container .tab-container li.disabled:hover{background:#f3f1ef !important}.section-container .tab-container li.disabled:hover a{cursor:not-allowed !important;color:#222 !important}.section-container .navi-container{display:none;background:#f3f1ef;-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 280px;-webkit-flex:0 0 280px;flex:0 0 280px;border-right:1px #ddd solid}.section-container .navi-container .block-title{font-size:14px;font-size:1.4rem;padding:2px 8px;margin:0}.section-container .navi-container .tree-action-bar-box{margin:10px 0;opacity:0}.section-container .navi-container .tree-action-bar-box.active{opacity:1;-webkit-opacity:0.25s ease-in-out;-moz-opacity:0.25s ease-in-out;opacity:0.25s ease-in-out}.section-container .content-container{border:none;-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto;-ms-flex:1 1;-webkit-flex:1 1;flex:1 1}.section-container .content-block{padding:20px;overflow-y:auto;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.section-container .content-block>.grid-container{width:100%}.section-container .content-block .data-container-wrapper{padding:0px 20px 0 0}.section-container .content-block .data-container-wrapper:before,.section-container .content-block .data-container-wrapper:after{content:" ";display:table}.section-container .content-block .data-container-wrapper:after{clear:both}.section-container .content-block .data-container-wrapper>section,.section-container .content-block .data-container-wrapper .data-container{width:260px;margin:0 20px 20px 0;float:left;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.section-container .content-block .data-container-wrapper>section.double,.section-container .content-block .data-container-wrapper .data-container.double{width:540px}.section-container .content-block .data-container-wrapper>section .emptyContentFooter,.section-container .content-block .data-container-wrapper .data-container .emptyContentFooter{display:none}.section-container .content-block .data-container-wrapper>section .tree,.section-container .content-block .data-container-wrapper .data-container .tree{border:none;max-width:none;max-height:none}.section-container .content-block .data-container-wrapper>section form,.section-container .content-block .data-container-wrapper .data-container form{background:none;border:none;margin:0;padding:0}.section-container .content-block .data-container-wrapper>section>header,.section-container .content-block .data-container-wrapper>section .ui-widget-header,.section-container .content-block .data-container-wrapper .data-container>header,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header{background:#f3f1ef;border-width:0px !important;border-bottom:1px #ddd solid !important}.section-container .content-block .data-container-wrapper>section>header h1,.section-container .content-block .data-container-wrapper>section>header h6,.section-container .content-block .data-container-wrapper>section .ui-widget-header h1,.section-container .content-block .data-container-wrapper>section .ui-widget-header h6,.section-container .content-block .data-container-wrapper .data-container>header h1,.section-container .content-block .data-container-wrapper .data-container>header h6,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header h1,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header h6{padding:4px;margin:0;font-size:14px;font-size:1.4rem}.section-container .content-block .data-container-wrapper>section>div,.section-container .content-block .data-container-wrapper>section .ui-widget-content,.section-container .content-block .data-container-wrapper>section .container-content,.section-container .content-block .data-container-wrapper .data-container>div,.section-container .content-block .data-container-wrapper .data-container .ui-widget-content,.section-container .content-block .data-container-wrapper .data-container .container-content{border-width:0px !important;overflow-y:auto;min-height:250px;padding:5px}.section-container .content-block .data-container-wrapper>section>div .icon-grip,.section-container .content-block .data-container-wrapper>section .ui-widget-content .icon-grip,.section-container .content-block .data-container-wrapper>section .container-content .icon-grip,.section-container .content-block .data-container-wrapper .data-container>div .icon-grip,.section-container .content-block .data-container-wrapper .data-container .ui-widget-content .icon-grip,.section-container .content-block .data-container-wrapper .data-container .container-content .icon-grip{cursor:move}.section-container .content-block .data-container-wrapper>section>footer,.section-container .content-block .data-container-wrapper>section .data-container-footer,.section-container .content-block .data-container-wrapper .data-container>footer,.section-container .content-block .data-container-wrapper .data-container .data-container-footer{background:#f3f1ef;text-align:right !important;padding:4px;border-width:0px !important;border-top:1px #ddd solid !important}.section-container .content-block .data-container-wrapper>section>footer .square,.section-container .content-block .data-container-wrapper>section .data-container-footer .square,.section-container .content-block .data-container-wrapper .data-container>footer .square,.section-container .content-block .data-container-wrapper .data-container .data-container-footer .square{width:28px}.section-container .content-block .data-container-wrapper>section>footer .square span,.section-container .content-block .data-container-wrapper>section .data-container-footer .square span,.section-container .content-block .data-container-wrapper .data-container>footer .square span,.section-container .content-block .data-container-wrapper .data-container .data-container-footer .square span{padding:0;left:0}.section-container .content-block .data-container-wrapper>section ol,.section-container .content-block .data-container-wrapper .data-container ol{margin:0 0 0 15px;padding:10px}.section-container .content-block #form-container.ui-widget-content{border:none !important}.section-container .content-block form:not(.list-container){border:1px #ddd solid;background:#f3f1ef;padding:30px;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.section-container .content-block [class^="btn-"],.section-container .content-block [class*=" btn-"]{margin:0 2px}.qti-navigator{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;-o-flex-direction:column;flex-direction:column;padding:0;cursor:default;min-width:calc(18rem - 8px);height:100%;position:relative}.qti-navigator span{display:inline-block}.qti-navigator .collapsed .collapsible-panel{display:none !important}.qti-navigator .collapsed .qti-navigator-label .icon-up{display:none}.qti-navigator .collapsed .qti-navigator-label .icon-down{display:inline-block}.qti-navigator .collapsible>.qti-navigator-label,.qti-navigator .qti-navigator-item>.qti-navigator-label{cursor:pointer}.qti-navigator.scope-test-section .qti-navigator-part>.qti-navigator-label{display:none !important}.qti-navigator .qti-navigator-label{display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;min-width:calc(100% - 12px);padding:0 6px;line-height:3rem}.qti-navigator .qti-navigator-label .icon-up,.qti-navigator .qti-navigator-label .icon-down{line-height:3rem;margin-left:auto}.qti-navigator .qti-navigator-label .icon-down{display:none}.qti-navigator .qti-navigator-label .qti-navigator-number{display:none}.qti-navigator .qti-navigator-icon,.qti-navigator .icon{position:relative;top:1px;display:inline-block;width:2rem;line-height:2.8rem}.qti-navigator .unseen .qti-navigator-icon{cursor:default}.qti-navigator.prevents-unseen .unseen .qti-navigator-icon,.qti-navigator.prevents-unseen .unseen .qti-navigator-label{cursor:not-allowed !important}.qti-navigator .icon-answered:before{content:"\e69a"}.qti-navigator .icon-viewed:before{content:"\e631"}.qti-navigator .icon-flagged:before{content:"\e64e"}.qti-navigator .icon-unanswered:before,.qti-navigator .icon-unseen:before{content:"\e6a5"}.qti-navigator .qti-navigator-counter{text-align:right;margin-left:auto;font-size:12px;font-size:1.2rem}.qti-navigator .qti-navigator-actions{text-align:center}.qti-navigator .qti-navigator-info.collapsed{height:calc(3rem + 1px)}.qti-navigator .qti-navigator-info{height:calc(5 * (3rem + 1px));overflow:hidden}.qti-navigator .qti-navigator-info>.qti-navigator-label{min-width:calc(100% - 16px);padding:0 8px}.qti-navigator .qti-navigator-info ul{padding:0 4px}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-text{padding:0 6px;min-width:10rem}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-icon{min-width:1.5rem}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-counter{min-width:5rem}.qti-navigator .qti-navigator-filters{margin-top:1rem;text-align:center;width:15rem;height:calc(3rem + (2 * 1px))}.qti-navigator .qti-navigator-filters ul{display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.qti-navigator .qti-navigator-filters li{display:block}.qti-navigator .qti-navigator-filters li .qti-navigator-tab{border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;border-left:none;line-height:3rem;min-width:5rem;cursor:pointer;white-space:nowrap}.qti-navigator .qti-navigator-tree{-webkit-flex:1;-moz-flex:1;-ms-flex:1;-o-flex:1;flex:1;overflow-y:auto}.qti-navigator .qti-navigator-linear,.qti-navigator .qti-navigator-linear-part{padding:8px}.qti-navigator .qti-navigator-linear .icon,.qti-navigator .qti-navigator-linear-part .icon{display:none}.qti-navigator .qti-navigator-linear .qti-navigator-label,.qti-navigator .qti-navigator-linear-part .qti-navigator-label{font-size:14px;font-size:1.4rem}.qti-navigator .qti-navigator-linear .qti-navigator-title,.qti-navigator .qti-navigator-linear-part .qti-navigator-title{font-size:14px;font-size:1.4rem;margin:8px 0}.qti-navigator .qti-navigator-linear .qti-navigator-message,.qti-navigator .qti-navigator-linear-part .qti-navigator-message{font-size:14px;font-size:1.4rem}.qti-navigator .qti-navigator-part>.qti-navigator-label{padding:0 8px}.qti-navigator .qti-navigator-part:not(:first-child){margin-top:1px}.qti-navigator .qti-navigator-section>.qti-navigator-label{padding:0 8px}.qti-navigator .qti-navigator-item{margin:1px 0;padding-left:10px}.qti-navigator .qti-navigator-item:first-child{margin-top:0}.qti-navigator .qti-navigator-item.disabled>.qti-navigator-label{cursor:not-allowed}.qti-navigator .qti-navigator-collapsible{cursor:pointer;text-align:center;display:none;position:absolute;top:0;bottom:0;right:0;padding-top:50%}.qti-navigator .qti-navigator-collapsible .icon{font-size:20px;font-size:2rem;width:1rem !important;height:2rem !important}.qti-navigator .qti-navigator-collapsible .qti-navigator-expand{display:none}.qti-navigator.collapsible{padding-right:calc(1rem + 10px) !important}.qti-navigator.collapsible .qti-navigator-collapsible{display:block}.qti-navigator.collapsed{width:calc(8rem + 1rem + 10px);min-width:8rem}.qti-navigator.collapsed ul{padding:0 !important}.qti-navigator.collapsed .qti-navigator-text,.qti-navigator.collapsed .qti-navigator-info>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-part>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-section>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-message{display:none !important}.qti-navigator.collapsed .qti-navigator-label{padding:0 2px !important;width:calc(8rem - 4px);min-width:calc(8rem - 4px)}.qti-navigator.collapsed .qti-navigator-icon,.qti-navigator.collapsed .icon{width:auto}.qti-navigator.collapsed .qti-navigator-counter{margin-left:0;min-width:4rem !important}.qti-navigator.collapsed .qti-navigator-collapsible .qti-navigator-collapse{display:none}.qti-navigator.collapsed .qti-navigator-collapsible .qti-navigator-expand{display:block}.qti-navigator.collapsed .qti-navigator-info{height:calc(4 * (3rem + 1px))}.qti-navigator.collapsed .qti-navigator-info.collapsed .collapsible-panel{display:block !important}.qti-navigator.collapsed .qti-navigator-filters{width:calc(8rem - 16px)}.qti-navigator.collapsed .qti-navigator-filter span{display:none}.qti-navigator.collapsed .qti-navigator-filter.active span{display:block;border:0 none;width:calc(8rem - 16px)}.qti-navigator.collapsed .qti-navigator-item,.qti-navigator.collapsed .qti-navigator-linear,.qti-navigator.collapsed .qti-navigator-linear-part{padding-left:2px;text-align:center}.qti-navigator.collapsed .qti-navigator-item{overflow:hidden}.qti-navigator.collapsed .qti-navigator-item .qti-navigator-icon{padding-left:6px;width:2rem}.qti-navigator.collapsed .qti-navigator-item .qti-navigator-number{display:inline-block;margin-left:6px;margin-right:8rem}.qti-navigator.collapsed .qti-navigator-linear,.qti-navigator.collapsed .qti-navigator-linear-part{padding:0 0 8px 0}.qti-navigator.collapsed .qti-navigator-linear .icon,.qti-navigator.collapsed .qti-navigator-linear-part .icon{display:block}.qti-navigator.collapsed .qti-navigator-actions button{padding:0 9px 0 5px}.qti-navigator .qti-navigator-info>.qti-navigator-label{background-color:#D4D5D7;color:#222;border-top:1px solid #D4D5D7}.qti-navigator .qti-navigator-info li{border-bottom:1px solid #fff}.qti-navigator .qti-navigator-filter .qti-navigator-tab{background-color:#fff}.qti-navigator .qti-navigator-filter .qti-navigator-tab:hover{background-color:#3e7da7;color:#fff}.qti-navigator .qti-navigator-filter.active .qti-navigator-tab{background-color:#a4a9b1;color:#fff}.qti-navigator .qti-navigator-linear,.qti-navigator .qti-navigator-linear-part{background:#fff}.qti-navigator .qti-navigator-part>.qti-navigator-label{background-color:#dddfe2}.qti-navigator .qti-navigator-part>.qti-navigator-label:hover{background-color:#c6cacf}.qti-navigator .qti-navigator-part.active>.qti-navigator-label{background-color:#c0c4ca}.qti-navigator .qti-navigator-section>.qti-navigator-label{border-bottom:1px solid #fff}.qti-navigator .qti-navigator-section>.qti-navigator-label:hover{background-color:#ebe8e4}.qti-navigator .qti-navigator-section.active>.qti-navigator-label{background-color:#ded9d4}.qti-navigator .qti-navigator-item{background:#fff}.qti-navigator .qti-navigator-item.active{background:#f4f7f8}.qti-navigator .qti-navigator-item:hover{background:#eef3f5}.qti-navigator .qti-navigator-item.disabled{background-color:#e2deda !important}.qti-navigator .qti-navigator-collapsible{background-color:#dfe1e4;color:#222}.qti-navigator .qti-navigator-collapsible .icon{color:#fff}.document-viewer-plugin{position:relative}.document-viewer-plugin .viewer-overlay{position:fixed;top:0;left:0;bottom:0;right:0;z-index:10000;width:100%;opacity:.5;background-color:#e4ecef}.document-viewer-plugin .viewer-panel{position:fixed;top:10px;left:10px;bottom:10px;right:10px;z-index:100000;color:#222;background:#f3f1ef;font-size:14px;font-size:1.4rem;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.document-viewer-plugin .viewer-header{position:relative;width:100%;height:30px;padding:5px 0;z-index:1}.document-viewer-plugin .viewer-header .viewer-title{font-size:15px;font-size:1.5rem;padding:0;margin:0 0 0 1.6rem}.document-viewer-plugin .viewer-header .icon{float:right;font-size:20px;font-size:2rem;color:#266d9c;margin:1px 6px;top:3px}.document-viewer-plugin .viewer-header .icon:hover{cursor:pointer;opacity:.75}.document-viewer-plugin .viewer-content{padding:0 20px;margin-top:4px;position:relative;height:calc(100% - 40px);overflow:auto}.mask{position:absolute;width:250px;height:100px;min-width:50px;min-height:25px;top:0;left:0;border:solid 1px #3e7da7;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background:transparent;opacity:1}.mask .inner{position:relative;width:100%;height:100%;background-color:#fff;opacity:1}.mask.moving .inner{opacity:.55}.mask.sizing{border-style:dashed}.mask.sizing .inner{opacity:.45}.mask.previewing .inner{opacity:.15;-webkit-transition:opacity, 600ms, ease;-moz-transition:opacity, 600ms, ease;-ms-transition:opacity, 600ms, ease;-o-transition:opacity, 600ms, ease;transition:opacity, 600ms, ease}.mask .controls{position:absolute;top:5px;right:5px}.mask .controls a{text-decoration:none;font-size:16px;font-size:1.6rem;margin-right:5px}body.delivery-scope{min-height:100vh;max-height:100vh;margin-bottom:0}.runner{position:relative}.test-runner-scope{position:relative;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;height:calc(100vh - 99px)}.test-runner-scope .test-runner-sections{-webkit-flex:1 1 0%;-ms-flex:1 1 0%;flex:1 1 0%;overflow:hidden;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.test-runner-scope .test-sidebar{background:#f3f1ef;-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto;height:calc(100vh - 179px);overflow-y:auto;max-width:350px}.test-runner-scope .test-sidebar>.qti-panel{max-width:350px;padding:10px}@media only screen and (max-device-width: 800px){.test-runner-scope .test-sidebar{max-width:200px}.test-runner-scope .test-sidebar>.qti-panel{max-width:200px}}@media only screen and (min-device-width: 800px) and (max-device-width: 1280px){.test-runner-scope .test-sidebar{max-width:250px}.test-runner-scope .test-sidebar>.qti-panel{max-width:250px}}@media only screen and (min-device-width: 1280px) and (max-device-width: 1440px){.test-runner-scope .test-sidebar{max-width:300px}.test-runner-scope .test-sidebar>.qti-panel{max-width:300px}}.test-runner-scope .test-sidebar-left{border-right:1px #ddd solid}.test-runner-scope .test-sidebar-right{border-left:1px #ddd solid}.test-runner-scope .content-wrapper{position:relative;-webkit-flex:1 1 0%;-ms-flex:1 1 0%;flex:1 1 0%;overflow:auto;padding-top:15px}.test-runner-scope .content-wrapper .overlay{position:absolute;left:0;right:0;top:0;bottom:0;width:100%;opacity:.9}.test-runner-scope .content-wrapper .overlay-full{background-color:#fff;opacity:1}.test-runner-scope #qti-content{max-width:1024px;width:100%;margin:auto}.test-runner-scope #qti-item{width:100%;min-width:100%;height:auto;overflow:visible}.test-runner-scope .size-wrapper{max-width:1280px;margin:auto;width:100%}.test-runner-scope #qti-rubrics{margin:auto;max-width:1024px;width:100%}.test-runner-scope #qti-rubrics .qti-rubricBlock{margin:20px 0}.test-runner-scope #qti-rubrics .hidden{display:none}.no-controls .test-runner-scope{height:100vh}.test-runner-scope .action-bar.content-action-bar li{margin:2px 0 0 10px}.test-runner-scope .action-bar.content-action-bar li.btn-info{border-color:rgba(255,255,255,0.3)}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group{border:none !important;overflow:hidden;padding:0}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a{float:left;margin:0 2px;padding:0 15px;border:1px solid rgba(255,255,255,0.3);border-radius:0px;display:inline-block;height:inherit}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a:first-of-type{border-top-left-radius:3px;border-bottom-left-radius:3px;margin-left:0}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a:last-of-type{border-top-right-radius:3px;border-bottom-right-radius:3px;margin-right:0}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a:hover,.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a.active{border-color:rgba(255,255,255,0.8)}.test-runner-scope .action-bar.content-action-bar li.btn-info.btn-group a .no-label{padding-right:0}.test-runner-scope .action-bar.content-action-bar li.btn-info:hover,.test-runner-scope .action-bar.content-action-bar li.btn-info.active{border-color:rgba(255,255,255,0.8)}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar{opacity:1;height:40px}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box{height:40px;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-justify-content:space-between;-ms-flex-pack:space-between;justify-content:space-between}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .title-box{font-size:14px;font-size:1.4rem;padding:4px 0 0;-ms-flex:0 1 auto;-webkit-flex:0 1 auto;flex:0 1 auto}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .progress-box,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .item-number-box{padding-top:4px;white-space:nowrap;-ms-flex:0 1 auto;-webkit-flex:0 1 auto;flex:0 1 auto}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .progress-box .qti-controls,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .item-number-box .qti-controls{display:inline-block;margin-left:20px;white-space:nowrap}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box{padding-top:0;white-space:nowrap;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer{display:inline-block;text-align:center;vertical-align:top;line-height:1.2;position:relative;padding:0 20px;margin-top:-1px}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer .qti-timer_label{max-width:130px;display:block;font-size:12px;font-size:1.2rem}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer::before{content:' ';background:rgba(255,255,255,0.3);width:1px;height:20px;position:absolute;left:0;top:5px}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer:first-child::before{content:none}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer.qti-timer__type-assessmentTest{-ms-flex-order:0;-webkit-order:0;order:0}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer.qti-timer__type-assessmentTestPart{-ms-flex-order:1;-webkit-order:1;order:1}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer.qti-timer__type-assessmentSection{-ms-flex-order:2;-webkit-order:2;order:2}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .timer-box .qti-timer.qti-timer__type-assessmentItemRef{-ms-flex-order:3;-webkit-order:3;order:3}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.top-action-bar>.control-box .progressbar{margin-top:5px;min-width:150px;max-width:200px;height:0.6em}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box{color:rgba(255,255,255,0.9);text-shadow:1px 1px 0 black}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .lft,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .rgt{padding-left:20px}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .lft:first-child,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .rgt:first-child{padding-left:0}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .lft:last-child ul,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .rgt:last-child ul{display:inline-block}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box [class^="btn-"],.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box [class*=" btn-"]{white-space:nowrap}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .no-tool-label .text,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .no-tool-label-hover li:not(:hover) .text{display:none}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .no-tool-label .icon,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar>.control-box .no-tool-label-hover li:not(:hover) .icon{padding:0}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .action{position:relative;overflow:visible}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu{color:#222;background:#f3f1ef;overflow:auto;list-style:none;min-width:150px;z-index:2000;margin:0;padding:0;position:absolute;bottom:30px;left:0}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action{display:inline-block;text-align:left;width:100%;white-space:nowrap;overflow:hidden;color:#222;margin:0;-moz-border-radius:0px;-webkit-border-radius:0px;border-radius:0px;height:32px;padding:6px 15px;line-height:1}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.selected{background-color:#3e7da7;color:#fff}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.selected .label,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.selected .icon{color:#fff}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.hover,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action:hover{background-color:#0e5d91;color:#fff}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.hover .label,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action.hover .icon,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action:hover .label,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action:hover .icon{color:#fff}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action .label,.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar .tools-box .menu .action .icon{font-size:14px;font-size:1.4rem;text-shadow:none;color:#222}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.bottom-action-bar{overflow:visible}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.bottom-action-bar .action{line-height:1.6}.test-runner-scope .action-bar.content-action-bar.horizontal-action-bar.bottom-action-bar .icon.no-label{padding-right:0}.test-runner-scope [data-control="exit"]{margin-left:20px}.test-runner-scope [data-control="comment-toggle"]{display:none}.test-runner-scope.non-lti-context .title-box{display:none}.test-runner-scope [data-control="qti-comment"]{background-color:#f3f1ef;position:absolute;bottom:33px;left:8px;z-index:9999;text-align:right;padding:5px;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;-webkit-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-moz-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-ms-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-o-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);box-shadow:0 0 15px 1px rgba(0,0,0,0.2)}.test-runner-scope [data-control="qti-comment"] textarea{display:block;height:100px;resize:none;width:350px;padding:3px;margin:0 0 10px 0;border:none;font-size:13px;font-size:1.3rem;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.test-runner-scope .tools-box{position:relative;overflow:visible} /*# sourceMappingURL=new-test-runner.css.map */ diff --git a/views/css/new-test-runner.css.map b/views/css/new-test-runner.css.map index ff96e58065..99053aaf40 100644 --- a/views/css/new-test-runner.css.map +++ b/views/css/new-test-runner.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "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", +"mappings": "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", "sources": ["../../../tao/views/scss/inc/_functions.scss","../../../tao/views/scss/inc/_loading-bar.scss","../../../tao/views/scss/inc/_action-bars.scss","../../../tao/views/scss/inc/_colors.scss","../../../tao/views/scss/inc/_section-container.scss","../scss/inc/_navigator.scss","../../../tao/views/scss/inc/fonts/_tao-icon-vars.scss","../scss/inc/_document-viewer.scss","../scss/inc/_area-masking.scss","../scss/inc/_test-delivery-override.scss","../scss/inc/_test-layout.scss","../scss/inc/_test-action-bars.scss"], "names": [], "file": "new-test-runner.css" diff --git a/views/css/test-runner.css b/views/css/test-runner.css index c4f8ff0754..aa983c35fe 100644 --- a/views/css/test-runner.css +++ b/views/css/test-runner.css @@ -1,2 +1,2 @@ -@-o-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@-moz-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@-webkit-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}.loading-bar{height:6px;position:absolute;width:100%;top:0px;display:none;overflow-x:hidden;overflow-y:visible;z-index:10000}.loading-bar.fixed{position:fixed;width:100%}.loading-bar.fixed:before{top:0 !important}.loading-bar.loading{display:block}.loading-bar.loading:before{position:absolute;top:86px;content:'';height:6px;width:20%;display:block;transform:translateZ(0);background:-webkit-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-moz-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-ms-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-o-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);-webkit-animation:loadingbar 5s linear infinite;-moz-animation:loadingbar 5s linear infinite;-ms-animation:loadingbar 5s linear infinite;-o-animation:loadingbar 5s linear infinite;animation:loadingbar 5s linear infinite}.no-version-warning .loading-bar:before{top:58px}.action-bar{background:#266d9c;padding:3px;overflow:hidden;color:#e7eff4}.action-bar li{float:left}.action-bar li .li-inner{padding-bottom:1px;text-decoration:none !important;outline:0;display:inline-block;color:inherit}.action-bar li .li-inner:hover{color:white}.action-bar li span.glyph{text-shadow:0 0 0 transparent;color:inherit}.action-bar li input{width:100%;font-size:12px;font-size:1.2rem;padding:2px 4px}.action-bar li.active .li-inner{color:white}.action-bar.horizontal-action-bar{padding:5px;height:35px}.action-bar.horizontal-action-bar .search-area{margin:2px 0 0 0;border:none;float:right;display:inline-block;position:relative;padding:0 30px 0 0}.action-bar.horizontal-action-bar .search-area input{padding-right:34px;min-width:250px !important}.action-bar.horizontal-action-bar .search-area button{position:absolute;right:32px;top:-2px;cursor:default;opacity:.5;background:transparent;width:25px;height:25px}.action-bar.horizontal-action-bar .search-area button:before{color:#666}.action-bar.horizontal-action-bar .search-area .icon-help{position:absolute;right:5px;top:-1px;text-shadow:0px 0px transparent;color:white;cursor:pointer;display:block;width:24px;height:24px;line-height:24px;text-align:center}.action-bar.horizontal-action-bar li{margin:0 1px;border:1px transparent solid;text-align:center;float:left}.action-bar.horizontal-action-bar li .glyph{width:14px}.action-bar.horizontal-action-bar li .svg-glyph{height:14px;width:14px;margin-right:9px}.action-bar.horizontal-action-bar li.btn-info{overflow:hidden;background:transparent}.action-bar.horizontal-action-bar li.btn-info:hover,.action-bar.horizontal-action-bar li.btn-info.active{border-color:rgba(255,255,255,0.3);opacity:1}.action-bar.horizontal-action-bar li.disabled{background:none !important;text-shadow:inherit !important;opacity:0.45 !important;color:inherit !important}.action-bar.horizontal-action-bar li.disabled a{cursor:not-allowed !important}.action-bar.vertical-action-bar li{max-height:60px}.action-bar.vertical-action-bar li .li-inner{height:60px;display:block;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:12px;font-size:1.2rem;line-height:12px}.action-bar.vertical-action-bar li .glyph{display:block;margin:12px auto 3px;width:20px;height:20px}.action-bar.tree-action-bar{background:#f3f1ef;position:relative;left:-1px;padding:0;margin:0 2.85714% 8px 2.85714%;width:94.64286%;font-size:13px;font-size:1.3rem}.action-bar.tree-action-bar li{background:rgba(255,255,255,0.5);border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;line-height:1.3;padding:0;text-align:center;float:left;width:65px;height:65px;margin:0 1px 1px 0}.action-bar.tree-action-bar li .glyph,.action-bar.tree-action-bar li .svg-glyph{display:block;color:#0e5d91;margin:12px auto 1px !important}.action-bar.tree-action-bar li .svg-glyph{width:20px;height:20px}.action-bar.tree-action-bar li .glyph{font-size:17px !important;font-size:1.7rem !important}.action-bar.tree-action-bar li .li-inner{display:block;height:65px;padding:2px;font-size:11px;font-size:1.1rem;color:#222}.action-bar.tree-action-bar li:hover{background:#ddd;color:#666}.action-bar .tree-filters{width:160px;position:relative}.action-bar .tree-filters input{padding-right:24px}.action-bar .tree-filters span{position:absolute;right:3px;color:#555;width:22px;top:2px;line-height:20px;display:inline-block;text-align:center;text-shadow:0 0 0 transparent;border-left:1px solid #ddd;cursor:pointer}.action-bar .tree-filters span.icon-close{display:none}.action-bar .tree-filters span:hover{color:#0e5d91}@media (max-width: 1150px){.action-bar.horizontal-action-bar .search-area{float:none;position:absolute;right:0px}.action-bar.horizontal-action-bar .search-area input{padding-right:30px;min-width:auto !important;width:150px}.action-bar.horizontal-action-bar .search-area input:focus{width:220px}}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area{float:none;position:absolute;right:0px}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area input{padding-right:30px;min-width:auto !important;width:150px}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area input:focus{width:220px}.section-container{top:0 !important}.section-container .flex-container-full{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 100%;-webkit-flex:0 0 100%;flex:0 0 100%}.section-container .flex-container-half{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 50%;-webkit-flex:0 0 50%;flex:0 0 50%}.section-container .flex-container-third{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 33.33333%;-webkit-flex:0 0 33.33333%;flex:0 0 33.33333%}.section-container .flex-container-quarter{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 25%;-webkit-flex:0 0 25%;flex:0 0 25%}.section-container .flex-container-remaining{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:1 1 480px;-webkit-flex:1 1 480px;flex:1 1 480px}.section-container .flex-container-main-form{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 500px;-webkit-flex:0 0 500px;flex:0 0 500px;margin:0 20px 20px 0}.section-container .flex-container-navi{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 280px;-webkit-flex:0 0 280px;flex:0 0 280px}.section-container .section-header{border:none}.section-container .content-panel{width:100%;height:100%;margin:0;padding:0;border:none !important;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.section-container .tab-container{border:none;display:none;list-style-type:none;padding:0;margin:0}.section-container .tab-container li{float:left;position:relative;top:0;padding:0;margin:0 1px 0px 0;border-top:1px solid #f3f1ef !important;border-bottom:1px solid #f3f1ef !important;background:#f3f1ef !important}.section-container .tab-container li a{top:0 !important;margin-bottom:0 !important;padding:6px 16px;text-decoration:none;min-height:32px;color:#222;float:left}.section-container .tab-container li.active,.section-container .tab-container li:hover{border-bottom-color:#4a86ad !important;border-top-color:#6e9ebd !important;background:#266d9c !important}.section-container .tab-container li.active a,.section-container .tab-container li:hover a{background:transparent !important;border-color:transparent !important;color:#fff !important;text-shadow:1px 1px 0 rgba(0,0,0,0.2)}.section-container .tab-container li.disabled:hover{background:#f3f1ef !important}.section-container .tab-container li.disabled:hover a{cursor:not-allowed !important;color:#222 !important}.section-container .navi-container{display:none;background:#f3f1ef;-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 280px;-webkit-flex:0 0 280px;flex:0 0 280px;border-right:1px #ddd solid}.section-container .navi-container .block-title{font-size:14px;font-size:1.4rem;padding:2px 8px;margin:0}.section-container .navi-container .tree-action-bar-box{margin:10px 0;opacity:0}.section-container .navi-container .tree-action-bar-box.active{opacity:1;-webkit-opacity:0.25s ease-in-out;-moz-opacity:0.25s ease-in-out;opacity:0.25s ease-in-out}.section-container .content-container{border:none;-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto;-ms-flex:1 1;-webkit-flex:1 1;flex:1 1}.section-container .content-block{padding:20px;overflow-y:auto;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.section-container .content-block>.grid-container{width:100%}.section-container .content-block .data-container-wrapper{padding:0px 20px 0 0}.section-container .content-block .data-container-wrapper:before,.section-container .content-block .data-container-wrapper:after{content:" ";display:table}.section-container .content-block .data-container-wrapper:after{clear:both}.section-container .content-block .data-container-wrapper>section,.section-container .content-block .data-container-wrapper .data-container{width:260px;margin:0 20px 20px 0;float:left;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.section-container .content-block .data-container-wrapper>section.double,.section-container .content-block .data-container-wrapper .data-container.double{width:540px}.section-container .content-block .data-container-wrapper>section .emptyContentFooter,.section-container .content-block .data-container-wrapper .data-container .emptyContentFooter{display:none}.section-container .content-block .data-container-wrapper>section .tree,.section-container .content-block .data-container-wrapper .data-container .tree{border:none;max-width:none;max-height:none}.section-container .content-block .data-container-wrapper>section form,.section-container .content-block .data-container-wrapper .data-container form{background:none;border:none;margin:0;padding:0}.section-container .content-block .data-container-wrapper>section>header,.section-container .content-block .data-container-wrapper>section .ui-widget-header,.section-container .content-block .data-container-wrapper .data-container>header,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header{background:#f3f1ef;border-width:0px !important;border-bottom:1px #ddd solid !important}.section-container .content-block .data-container-wrapper>section>header h1,.section-container .content-block .data-container-wrapper>section>header h6,.section-container .content-block .data-container-wrapper>section .ui-widget-header h1,.section-container .content-block .data-container-wrapper>section .ui-widget-header h6,.section-container .content-block .data-container-wrapper .data-container>header h1,.section-container .content-block .data-container-wrapper .data-container>header h6,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header h1,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header h6{padding:4px;margin:0;font-size:14px;font-size:1.4rem}.section-container .content-block .data-container-wrapper>section>div,.section-container .content-block .data-container-wrapper>section .ui-widget-content,.section-container .content-block .data-container-wrapper>section .container-content,.section-container .content-block .data-container-wrapper .data-container>div,.section-container .content-block .data-container-wrapper .data-container .ui-widget-content,.section-container .content-block .data-container-wrapper .data-container .container-content{border-width:0px !important;overflow-y:auto;min-height:250px;padding:5px}.section-container .content-block .data-container-wrapper>section>div .icon-grip,.section-container .content-block .data-container-wrapper>section .ui-widget-content .icon-grip,.section-container .content-block .data-container-wrapper>section .container-content .icon-grip,.section-container .content-block .data-container-wrapper .data-container>div .icon-grip,.section-container .content-block .data-container-wrapper .data-container .ui-widget-content .icon-grip,.section-container .content-block .data-container-wrapper .data-container .container-content .icon-grip{cursor:move}.section-container .content-block .data-container-wrapper>section>footer,.section-container .content-block .data-container-wrapper>section .data-container-footer,.section-container .content-block .data-container-wrapper .data-container>footer,.section-container .content-block .data-container-wrapper .data-container .data-container-footer{background:#f3f1ef;text-align:right !important;padding:4px;border-width:0px !important;border-top:1px #ddd solid !important}.section-container .content-block .data-container-wrapper>section>footer .square,.section-container .content-block .data-container-wrapper>section .data-container-footer .square,.section-container .content-block .data-container-wrapper .data-container>footer .square,.section-container .content-block .data-container-wrapper .data-container .data-container-footer .square{width:28px}.section-container .content-block .data-container-wrapper>section>footer .square span,.section-container .content-block .data-container-wrapper>section .data-container-footer .square span,.section-container .content-block .data-container-wrapper .data-container>footer .square span,.section-container .content-block .data-container-wrapper .data-container .data-container-footer .square span{padding:0;left:0}.section-container .content-block .data-container-wrapper>section ol,.section-container .content-block .data-container-wrapper .data-container ol{margin:0 0 0 15px;padding:10px}.section-container .content-block #form-container.ui-widget-content{border:none !important}.section-container .content-block form:not(.list-container){border:1px #ddd solid;background:#f3f1ef;padding:30px;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.section-container .content-block [class^="btn-"],.section-container .content-block [class*=" btn-"]{margin:0 2px}.qti-navigator{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;-o-flex-direction:column;flex-direction:column;padding:0;cursor:default;min-width:calc(18rem - 8px);height:100%;position:relative}.qti-navigator span{display:inline-block}.qti-navigator .collapsed .collapsible-panel{display:none !important}.qti-navigator .collapsed .qti-navigator-label .icon-up{display:none}.qti-navigator .collapsed .qti-navigator-label .icon-down{display:inline-block}.qti-navigator .collapsible>.qti-navigator-label,.qti-navigator .qti-navigator-item>.qti-navigator-label{cursor:pointer}.qti-navigator.scope-test-section .qti-navigator-part>.qti-navigator-label{display:none !important}.qti-navigator .qti-navigator-label{display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;min-width:calc(100% - 12px);padding:0 6px;line-height:3rem}.qti-navigator .qti-navigator-label .icon-up,.qti-navigator .qti-navigator-label .icon-down{line-height:3rem;margin-left:auto}.qti-navigator .qti-navigator-label .icon-down{display:none}.qti-navigator .qti-navigator-label .qti-navigator-number{display:none}.qti-navigator .qti-navigator-icon,.qti-navigator .icon{position:relative;top:1px;display:inline-block;width:2rem;line-height:2.8rem}.qti-navigator .unseen .qti-navigator-icon{cursor:default}.qti-navigator.prevents-unseen .unseen .qti-navigator-icon,.qti-navigator.prevents-unseen .unseen .qti-navigator-label{cursor:not-allowed !important}.qti-navigator .icon-answered:before{content:"\e69a"}.qti-navigator .icon-viewed:before{content:"\e631"}.qti-navigator .icon-flagged:before{content:"\e64e"}.qti-navigator .icon-unanswered:before,.qti-navigator .icon-unseen:before{content:"\e6a5"}.qti-navigator .qti-navigator-counter{text-align:right;margin-left:auto;font-size:12px;font-size:1.2rem}.qti-navigator .qti-navigator-actions{text-align:center}.qti-navigator .qti-navigator-info.collapsed{height:calc(3rem + 1px)}.qti-navigator .qti-navigator-info{height:calc(5 * (3rem + 1px));overflow:hidden}.qti-navigator .qti-navigator-info>.qti-navigator-label{min-width:calc(100% - 16px);padding:0 8px}.qti-navigator .qti-navigator-info ul{padding:0 4px}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-text{padding:0 6px;min-width:10rem}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-icon{min-width:1.5rem}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-counter{min-width:5rem}.qti-navigator .qti-navigator-filters{margin-top:1rem;text-align:center;width:15rem;height:calc(3rem + (2 * 1px))}.qti-navigator .qti-navigator-filters ul{display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.qti-navigator .qti-navigator-filters li{display:block}.qti-navigator .qti-navigator-filters li span{border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;border-left:none;line-height:3rem;width:5rem;cursor:pointer}.qti-navigator .qti-navigator-tree{-webkit-flex:1;-moz-flex:1;-ms-flex:1;-o-flex:1;flex:1;overflow-y:auto}.qti-navigator .qti-navigator-linear,.qti-navigator .qti-navigator-linear-part{padding:8px}.qti-navigator .qti-navigator-linear .icon,.qti-navigator .qti-navigator-linear-part .icon{display:none}.qti-navigator .qti-navigator-linear .qti-navigator-label,.qti-navigator .qti-navigator-linear-part .qti-navigator-label{font-size:14px;font-size:1.4rem}.qti-navigator .qti-navigator-linear .qti-navigator-title,.qti-navigator .qti-navigator-linear-part .qti-navigator-title{font-size:14px;font-size:1.4rem;margin:8px 0}.qti-navigator .qti-navigator-linear .qti-navigator-message,.qti-navigator .qti-navigator-linear-part .qti-navigator-message{font-size:14px;font-size:1.4rem}.qti-navigator .qti-navigator-part>.qti-navigator-label{padding:0 8px}.qti-navigator .qti-navigator-part:not(:first-child){margin-top:1px}.qti-navigator .qti-navigator-section>.qti-navigator-label{padding:0 8px}.qti-navigator .qti-navigator-item{margin:1px 0;padding-left:10px}.qti-navigator .qti-navigator-item:first-child{margin-top:0}.qti-navigator .qti-navigator-item.disabled>.qti-navigator-label{cursor:not-allowed}.qti-navigator .qti-navigator-collapsible{cursor:pointer;text-align:center;display:none;position:absolute;top:0;bottom:0;right:0;padding-top:50%}.qti-navigator .qti-navigator-collapsible .icon{font-size:20px;font-size:2rem;width:1rem !important;height:2rem !important}.qti-navigator .qti-navigator-collapsible .qti-navigator-expand{display:none}.qti-navigator.collapsible{padding-right:calc(1rem + 10px) !important}.qti-navigator.collapsible .qti-navigator-collapsible{display:block}.qti-navigator.collapsed{width:calc(8rem + 1rem + 10px);min-width:8rem}.qti-navigator.collapsed ul{padding:0 !important}.qti-navigator.collapsed .qti-navigator-text,.qti-navigator.collapsed .qti-navigator-info>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-part>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-section>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-message{display:none !important}.qti-navigator.collapsed .qti-navigator-label{padding:0 2px !important;width:calc(8rem - 4px);min-width:calc(8rem - 4px)}.qti-navigator.collapsed .qti-navigator-icon,.qti-navigator.collapsed .icon{width:auto}.qti-navigator.collapsed .qti-navigator-counter{margin-left:0;min-width:4rem !important}.qti-navigator.collapsed .qti-navigator-collapsible .qti-navigator-collapse{display:none}.qti-navigator.collapsed .qti-navigator-collapsible .qti-navigator-expand{display:block}.qti-navigator.collapsed .qti-navigator-info{height:calc(4 * (3rem + 1px))}.qti-navigator.collapsed .qti-navigator-info.collapsed .collapsible-panel{display:block !important}.qti-navigator.collapsed .qti-navigator-filters{width:calc(8rem - 16px)}.qti-navigator.collapsed .qti-navigator-filter span{display:none}.qti-navigator.collapsed .qti-navigator-filter.active span{display:block;border:0 none;width:calc(8rem - 16px)}.qti-navigator.collapsed .qti-navigator-item,.qti-navigator.collapsed .qti-navigator-linear,.qti-navigator.collapsed .qti-navigator-linear-part{padding-left:2px;text-align:center}.qti-navigator.collapsed .qti-navigator-item{overflow:hidden}.qti-navigator.collapsed .qti-navigator-item .qti-navigator-icon{padding-left:6px;width:2rem}.qti-navigator.collapsed .qti-navigator-item .qti-navigator-number{display:inline-block;margin-left:6px;margin-right:8rem}.qti-navigator.collapsed .qti-navigator-linear,.qti-navigator.collapsed .qti-navigator-linear-part{padding:0 0 8px 0}.qti-navigator.collapsed .qti-navigator-linear .icon,.qti-navigator.collapsed .qti-navigator-linear-part .icon{display:block}.qti-navigator.collapsed .qti-navigator-actions button{padding:0 9px 0 5px}.qti-navigator .qti-navigator-info>.qti-navigator-label{background-color:#D4D5D7;color:#222;border-top:1px solid #D4D5D7}.qti-navigator .qti-navigator-info li{border-bottom:1px solid #fff}.qti-navigator .qti-navigator-filter span{background-color:#fff}.qti-navigator .qti-navigator-filter span:hover{background-color:#3e7da7;color:#fff}.qti-navigator .qti-navigator-filter.active span{background-color:#a4a9b1;color:#fff}.qti-navigator .qti-navigator-linear,.qti-navigator .qti-navigator-linear-part{background:#fff}.qti-navigator .qti-navigator-part>.qti-navigator-label{background-color:#dddfe2}.qti-navigator .qti-navigator-part>.qti-navigator-label:hover{background-color:#c6cacf}.qti-navigator .qti-navigator-part.active>.qti-navigator-label{background-color:#c0c4ca}.qti-navigator .qti-navigator-section>.qti-navigator-label{border-bottom:1px solid #fff}.qti-navigator .qti-navigator-section>.qti-navigator-label:hover{background-color:#ebe8e4}.qti-navigator .qti-navigator-section.active>.qti-navigator-label{background-color:#ded9d4}.qti-navigator .qti-navigator-item{background:#fff}.qti-navigator .qti-navigator-item.active{background:#f4f7f8}.qti-navigator .qti-navigator-item:hover{background:#eef3f5}.qti-navigator .qti-navigator-item.disabled{background-color:#e2deda !important}.qti-navigator .qti-navigator-collapsible{background-color:#dfe1e4;color:#222}.qti-navigator .qti-navigator-collapsible .icon{color:#fff}.qti-test-scope .action-bar li{margin:0 5px}.qti-test-scope .action-bar li.btn-info{border-color:rgba(255,255,255,0.3)}.qti-test-scope .action-bar li.btn-info.btn-group{border:none !important;overflow:hidden;padding:0}.qti-test-scope .action-bar li.btn-info.btn-group a{float:left;margin:0 2px;padding:0 15px;border:1px solid rgba(255,255,255,0.3);border-radius:0px;display:inline-block;height:inherit}.qti-test-scope .action-bar li.btn-info.btn-group a:first-of-type{border-top-left-radius:3px;border-bottom-left-radius:3px;margin-left:0}.qti-test-scope .action-bar li.btn-info.btn-group a:last-of-type{border-top-right-radius:3px;border-bottom-right-radius:3px;margin-right:0}.qti-test-scope .action-bar li.btn-info.btn-group a:hover,.qti-test-scope .action-bar li.btn-info.btn-group a.active{border-color:rgba(255,255,255,0.8)}.qti-test-scope .action-bar li.btn-info.btn-group a .no-label{padding-right:0}.qti-test-scope .action-bar li.btn-info:hover,.qti-test-scope .action-bar li.btn-info.active{border-color:rgba(255,255,255,0.8)}.qti-test-scope .action-bar.horizontal-action-bar{opacity:0}.qti-test-scope .action-bar.horizontal-action-bar .title-box{padding-top:4px}.qti-test-scope .action-bar.horizontal-action-bar .progress-box,.qti-test-scope .action-bar.horizontal-action-bar .timer-box,.qti-test-scope .action-bar.horizontal-action-bar .item-number-box{padding-top:4px;display:inline-block;white-space:nowrap;-webkit-flex:0 0 auto;flex:0 1 auto}.qti-test-scope .action-bar.horizontal-action-bar .progress-box .qti-controls,.qti-test-scope .action-bar.horizontal-action-bar .timer-box .qti-controls,.qti-test-scope .action-bar.horizontal-action-bar .item-number-box .qti-controls{display:inline-block;margin-left:20px;white-space:nowrap}.qti-test-scope .action-bar.horizontal-action-bar .progressbar{margin-top:5px;min-width:150px;max-width:200px;height:0.6em}.qti-test-scope .action-bar.horizontal-action-bar.top-action-bar>.control-box{display:-webkit-flex;-webkit-justify-content:space-between;-webkit-flex-flow:row nowrap;display:flex;justify-content:space-between;flex-flow:row nowrap}.qti-test-scope .action-bar.horizontal-action-bar>.control-box{color:rgba(255,255,255,0.9);text-shadow:1px 1px 0 black}.qti-test-scope .action-bar.horizontal-action-bar>.control-box .lft,.qti-test-scope .action-bar.horizontal-action-bar>.control-box .rgt{padding-left:20px}.qti-test-scope .action-bar.horizontal-action-bar>.control-box .lft:first-child,.qti-test-scope .action-bar.horizontal-action-bar>.control-box .rgt:first-child{padding-left:0}.qti-test-scope .action-bar.horizontal-action-bar>.control-box .lft:last-child ul,.qti-test-scope .action-bar.horizontal-action-bar>.control-box .rgt:last-child ul{display:inline-block}.qti-test-scope .action-bar.horizontal-action-bar>.control-box [class^="btn-"],.qti-test-scope .action-bar.horizontal-action-bar>.control-box [class*=" btn-"]{white-space:nowrap}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .action{position:relative;overflow:visible}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu{color:#222;background:#f3f1ef;overflow:auto;list-style:none;min-width:150px;margin:0;padding:0;position:absolute;bottom:30px;left:0}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action{display:inline-block;text-align:left;width:100%;white-space:nowrap;overflow:hidden;color:#222;margin:0;-moz-border-radius:0px;-webkit-border-radius:0px;border-radius:0px;height:32px;padding:6px 15px;line-height:1}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action.selected{background-color:#3e7da7;color:#fff}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action.selected .label,.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action.selected .icon{color:#fff}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action:hover{background-color:#0e5d91;color:#fff}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action:hover .label,.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action:hover .icon{color:#fff}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action .label,.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action .icon{font-size:14px;font-size:1.4rem;text-shadow:none;color:#222}.qti-test-scope .action-bar.horizontal-action-bar.bottom-action-bar{overflow:visible}.qti-test-scope .action-bar.horizontal-action-bar.bottom-action-bar .action{line-height:1.6}.qti-test-scope .action-bar.horizontal-action-bar.has-timers{height:47px}.qti-test-scope .action-bar.horizontal-action-bar.has-timers .progress-box,.qti-test-scope .action-bar.horizontal-action-bar.has-timers .title-box{padding-top:10px}.qti-test-scope .action-bar.horizontal-action-bar .bottom-action-bar .action{display:none}.qti-test-scope .test-sidebar{background:#f3f1ef;overflow:auto}.qti-test-scope .test-sidebar-left{border-right:1px #ddd solid}.qti-test-scope .test-sidebar-right{border-left:1px #ddd solid}.qti-test-scope .content-panel{height:auto !important}.qti-test-scope .content-panel #qti-content{-webkit-overflow-scrolling:touch;overflow-y:auto;font-size:0}.qti-test-scope .content-panel #qti-content #qti-rubrics{font-size:14px}.qti-test-scope #qti-item{width:100%;min-width:100%;height:auto;overflow:visible}.qti-test-scope .size-wrapper{max-width:1280px;margin:auto;width:100%}.qti-test-scope .tools-box{position:relative;overflow:visible}.qti-test-scope [data-control="qti-comment"]{background-color:#f3f1ef;position:absolute;bottom:33px;left:8px;z-index:9999;text-align:right;padding:5px;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;-webkit-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-moz-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-ms-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-o-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);box-shadow:0 0 15px 1px rgba(0,0,0,0.2)}.qti-test-scope [data-control="qti-comment"] textarea{display:block;height:100px;resize:none;width:350px;padding:3px;margin:0 0 10px 0;border:none;font-size:13px;font-size:1.3rem;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.qti-test-scope #qti-timers{display:none}.qti-test-scope [data-control="exit"]{margin-left:20px}.qti-test-scope [data-control="comment-toggle"]{display:none}.qti-test-scope .qti-timer{display:inline-block;text-align:center;vertical-align:top;line-height:1.2;position:relative;padding:0 20px}.qti-test-scope .qti-timer .qti-timer_label{max-width:130px;font-size:12px;font-size:1.2rem}.qti-test-scope .qti-timer::before{content:' ';background:rgba(255,255,255,0.3);width:1px;height:20px;position:absolute;left:0;top:5px}.qti-test-scope .qti-timer:first-child::before{content:none}.qti-test-scope.non-lti-context .title-box{display:none}.qti-test-scope #qti-rubrics{margin:auto;max-width:1024px;width:100%;padding:15px}.qti-test-scope #qti-rubrics .qti-rubricBlock{margin:20px 0}.qti-test-scope #qti-rubrics .hidden{display:none} +@-o-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@-moz-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@-webkit-keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}@keyframes loadingbar{0%{left:-10%}50%{left:90%}100%{left:-10%}}.loading-bar{height:6px;position:absolute;width:100%;top:0px;display:none;overflow-x:hidden;overflow-y:visible;z-index:10000}.loading-bar.fixed{position:fixed;width:100%}.loading-bar.fixed:before{top:0 !important}.loading-bar.loading{display:block}.loading-bar.loading:before{position:absolute;top:86px;content:'';height:6px;width:20%;display:block;transform:translateZ(0);background:-webkit-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-moz-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-ms-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:-o-linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);background:linear-gradient(to right, transparent 0%, #c35a13 20%, #c35a13 80%, transparent 100%);-webkit-animation:loadingbar 5s linear infinite;-moz-animation:loadingbar 5s linear infinite;-ms-animation:loadingbar 5s linear infinite;-o-animation:loadingbar 5s linear infinite;animation:loadingbar 5s linear infinite}.no-version-warning .loading-bar:before{top:58px}.action-bar{background:#266d9c;padding:3px;overflow:hidden;color:#e7eff4}.action-bar li{float:left}.action-bar li .li-inner{padding-bottom:1px;text-decoration:none !important;outline:0;display:inline-block;color:inherit}.action-bar li .li-inner:hover{color:white}.action-bar li span.glyph{text-shadow:0 0 0 transparent;color:inherit}.action-bar li input{width:100%;font-size:12px;font-size:1.2rem;padding:2px 4px}.action-bar li.active .li-inner{color:white}.action-bar.horizontal-action-bar{padding:5px;height:35px}.action-bar.horizontal-action-bar .search-area{margin:2px 0 0 0;border:none;float:right;display:inline-block;position:relative;padding:0 30px 0 0}.action-bar.horizontal-action-bar .search-area input{padding-right:34px;min-width:250px !important}.action-bar.horizontal-action-bar .search-area button{position:absolute;right:32px;top:-2px;cursor:default;opacity:.5;background:transparent;width:25px;height:25px}.action-bar.horizontal-action-bar .search-area button:before{color:#666}.action-bar.horizontal-action-bar .search-area .icon-help{position:absolute;right:5px;top:-1px;text-shadow:0px 0px transparent;color:white;cursor:pointer;display:block;width:24px;height:24px;line-height:24px;text-align:center}.action-bar.horizontal-action-bar li{margin:0 1px;border:1px transparent solid;text-align:center;float:left}.action-bar.horizontal-action-bar li .glyph{width:14px}.action-bar.horizontal-action-bar li .svg-glyph{height:14px;width:14px;margin-right:9px}.action-bar.horizontal-action-bar li.btn-info{overflow:hidden;background:transparent}.action-bar.horizontal-action-bar li.btn-info:hover,.action-bar.horizontal-action-bar li.btn-info.active{border-color:rgba(255,255,255,0.3);opacity:1}.action-bar.horizontal-action-bar li.disabled{background:none !important;text-shadow:inherit !important;opacity:0.45 !important;color:inherit !important}.action-bar.horizontal-action-bar li.disabled a{cursor:not-allowed !important}.action-bar.vertical-action-bar li{max-height:60px}.action-bar.vertical-action-bar li .li-inner{height:60px;display:block;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:12px;font-size:1.2rem;line-height:12px}.action-bar.vertical-action-bar li .glyph{display:block;margin:12px auto 3px;width:20px;height:20px}.action-bar.tree-action-bar{background:#f3f1ef;position:relative;left:-1px;padding:0;margin:0 2.85714% 8px 2.85714%;width:94.64286%;font-size:13px;font-size:1.3rem}.action-bar.tree-action-bar li{background:rgba(255,255,255,0.5);border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;line-height:1.3;padding:0;text-align:center;float:left;width:65px;height:65px;margin:0 1px 1px 0}.action-bar.tree-action-bar li .glyph,.action-bar.tree-action-bar li .svg-glyph{display:block;color:#0e5d91;margin:12px auto 1px !important}.action-bar.tree-action-bar li .svg-glyph{width:20px;height:20px}.action-bar.tree-action-bar li .glyph{font-size:17px !important;font-size:1.7rem !important}.action-bar.tree-action-bar li .li-inner{display:block;height:65px;padding:2px;font-size:11px;font-size:1.1rem;color:#222}.action-bar.tree-action-bar li:hover{background:#ddd;color:#666}.action-bar .tree-filters{width:160px;position:relative}.action-bar .tree-filters input{padding-right:24px}.action-bar .tree-filters span{position:absolute;right:3px;color:#555;width:22px;top:2px;line-height:20px;display:inline-block;text-align:center;text-shadow:0 0 0 transparent;border-left:1px solid #ddd;cursor:pointer}.action-bar .tree-filters span.icon-close{display:none}.action-bar .tree-filters span:hover{color:#0e5d91}@media (max-width: 1150px){.action-bar.horizontal-action-bar .search-area{float:none;position:absolute;right:0px}.action-bar.horizontal-action-bar .search-area input{padding-right:30px;min-width:auto !important;width:150px}.action-bar.horizontal-action-bar .search-area input:focus{width:220px}}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area{float:none;position:absolute;right:0px}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area input{padding-right:30px;min-width:auto !important;width:150px}body.oversized-nav:not(.delivery-scope) .action-bar.horizontal-action-bar .search-area input:focus{width:220px}.section-container{top:0 !important}.section-container .flex-container-full{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 100%;-webkit-flex:0 0 100%;flex:0 0 100%}.section-container .flex-container-half{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 50%;-webkit-flex:0 0 50%;flex:0 0 50%}.section-container .flex-container-third{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 33.33333%;-webkit-flex:0 0 33.33333%;flex:0 0 33.33333%}.section-container .flex-container-quarter{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 25%;-webkit-flex:0 0 25%;flex:0 0 25%}.section-container .flex-container-remaining{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:1 1 480px;-webkit-flex:1 1 480px;flex:1 1 480px}.section-container .flex-container-main-form{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 500px;-webkit-flex:0 0 500px;flex:0 0 500px;margin:0 20px 20px 0}.section-container .flex-container-navi{-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 280px;-webkit-flex:0 0 280px;flex:0 0 280px}.section-container .section-header{border:none}.section-container .content-panel{width:100%;height:100%;margin:0;padding:0;border:none !important;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.section-container .tab-container{border:none;display:none;list-style-type:none;padding:0;margin:0}.section-container .tab-container li{float:left;position:relative;top:0;padding:0;margin:0 1px 0px 0;border-top:1px solid #f3f1ef !important;border-bottom:1px solid #f3f1ef !important;background:#f3f1ef !important}.section-container .tab-container li a{top:0 !important;margin-bottom:0 !important;padding:6px 16px;text-decoration:none;min-height:32px;color:#222;float:left}.section-container .tab-container li.active,.section-container .tab-container li:hover{border-bottom-color:#4a86ad !important;border-top-color:#6e9ebd !important;background:#266d9c !important}.section-container .tab-container li.active a,.section-container .tab-container li:hover a{background:transparent !important;border-color:transparent !important;color:#fff !important;text-shadow:1px 1px 0 rgba(0,0,0,0.2)}.section-container .tab-container li.disabled:hover{background:#f3f1ef !important}.section-container .tab-container li.disabled:hover a{cursor:not-allowed !important;color:#222 !important}.section-container .navi-container{display:none;background:#f3f1ef;-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:0 0 280px;-webkit-flex:0 0 280px;flex:0 0 280px;border-right:1px #ddd solid}.section-container .navi-container .block-title{font-size:14px;font-size:1.4rem;padding:2px 8px;margin:0}.section-container .navi-container .tree-action-bar-box{margin:10px 0;opacity:0}.section-container .navi-container .tree-action-bar-box.active{opacity:1;-webkit-opacity:0.25s ease-in-out;-moz-opacity:0.25s ease-in-out;opacity:0.25s ease-in-out}.section-container .content-container{border:none;-ms-order:0;-webkit-order:0;order:0;flex-item-align:stretch;-ms-flex-item-align:stretch;-webkit-align-self:stretch;align-self:stretch;-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto;-ms-flex:1 1;-webkit-flex:1 1;flex:1 1}.section-container .content-block{padding:20px;overflow-y:auto;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.section-container .content-block>.grid-container{width:100%}.section-container .content-block .data-container-wrapper{padding:0px 20px 0 0}.section-container .content-block .data-container-wrapper:before,.section-container .content-block .data-container-wrapper:after{content:" ";display:table}.section-container .content-block .data-container-wrapper:after{clear:both}.section-container .content-block .data-container-wrapper>section,.section-container .content-block .data-container-wrapper .data-container{width:260px;margin:0 20px 20px 0;float:left;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.section-container .content-block .data-container-wrapper>section.double,.section-container .content-block .data-container-wrapper .data-container.double{width:540px}.section-container .content-block .data-container-wrapper>section .emptyContentFooter,.section-container .content-block .data-container-wrapper .data-container .emptyContentFooter{display:none}.section-container .content-block .data-container-wrapper>section .tree,.section-container .content-block .data-container-wrapper .data-container .tree{border:none;max-width:none;max-height:none}.section-container .content-block .data-container-wrapper>section form,.section-container .content-block .data-container-wrapper .data-container form{background:none;border:none;margin:0;padding:0}.section-container .content-block .data-container-wrapper>section>header,.section-container .content-block .data-container-wrapper>section .ui-widget-header,.section-container .content-block .data-container-wrapper .data-container>header,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header{background:#f3f1ef;border-width:0px !important;border-bottom:1px #ddd solid !important}.section-container .content-block .data-container-wrapper>section>header h1,.section-container .content-block .data-container-wrapper>section>header h6,.section-container .content-block .data-container-wrapper>section .ui-widget-header h1,.section-container .content-block .data-container-wrapper>section .ui-widget-header h6,.section-container .content-block .data-container-wrapper .data-container>header h1,.section-container .content-block .data-container-wrapper .data-container>header h6,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header h1,.section-container .content-block .data-container-wrapper .data-container .ui-widget-header h6{padding:4px;margin:0;font-size:14px;font-size:1.4rem}.section-container .content-block .data-container-wrapper>section>div,.section-container .content-block .data-container-wrapper>section .ui-widget-content,.section-container .content-block .data-container-wrapper>section .container-content,.section-container .content-block .data-container-wrapper .data-container>div,.section-container .content-block .data-container-wrapper .data-container .ui-widget-content,.section-container .content-block .data-container-wrapper .data-container .container-content{border-width:0px !important;overflow-y:auto;min-height:250px;padding:5px}.section-container .content-block .data-container-wrapper>section>div .icon-grip,.section-container .content-block .data-container-wrapper>section .ui-widget-content .icon-grip,.section-container .content-block .data-container-wrapper>section .container-content .icon-grip,.section-container .content-block .data-container-wrapper .data-container>div .icon-grip,.section-container .content-block .data-container-wrapper .data-container .ui-widget-content .icon-grip,.section-container .content-block .data-container-wrapper .data-container .container-content .icon-grip{cursor:move}.section-container .content-block .data-container-wrapper>section>footer,.section-container .content-block .data-container-wrapper>section .data-container-footer,.section-container .content-block .data-container-wrapper .data-container>footer,.section-container .content-block .data-container-wrapper .data-container .data-container-footer{background:#f3f1ef;text-align:right !important;padding:4px;border-width:0px !important;border-top:1px #ddd solid !important}.section-container .content-block .data-container-wrapper>section>footer .square,.section-container .content-block .data-container-wrapper>section .data-container-footer .square,.section-container .content-block .data-container-wrapper .data-container>footer .square,.section-container .content-block .data-container-wrapper .data-container .data-container-footer .square{width:28px}.section-container .content-block .data-container-wrapper>section>footer .square span,.section-container .content-block .data-container-wrapper>section .data-container-footer .square span,.section-container .content-block .data-container-wrapper .data-container>footer .square span,.section-container .content-block .data-container-wrapper .data-container .data-container-footer .square span{padding:0;left:0}.section-container .content-block .data-container-wrapper>section ol,.section-container .content-block .data-container-wrapper .data-container ol{margin:0 0 0 15px;padding:10px}.section-container .content-block #form-container.ui-widget-content{border:none !important}.section-container .content-block form:not(.list-container){border:1px #ddd solid;background:#f3f1ef;padding:30px;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.section-container .content-block [class^="btn-"],.section-container .content-block [class*=" btn-"]{margin:0 2px}.qti-navigator{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;-o-flex-direction:column;flex-direction:column;padding:0;cursor:default;min-width:calc(18rem - 8px);height:100%;position:relative}.qti-navigator span{display:inline-block}.qti-navigator .collapsed .collapsible-panel{display:none !important}.qti-navigator .collapsed .qti-navigator-label .icon-up{display:none}.qti-navigator .collapsed .qti-navigator-label .icon-down{display:inline-block}.qti-navigator .collapsible>.qti-navigator-label,.qti-navigator .qti-navigator-item>.qti-navigator-label{cursor:pointer}.qti-navigator.scope-test-section .qti-navigator-part>.qti-navigator-label{display:none !important}.qti-navigator .qti-navigator-label{display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;min-width:calc(100% - 12px);padding:0 6px;line-height:3rem}.qti-navigator .qti-navigator-label .icon-up,.qti-navigator .qti-navigator-label .icon-down{line-height:3rem;margin-left:auto}.qti-navigator .qti-navigator-label .icon-down{display:none}.qti-navigator .qti-navigator-label .qti-navigator-number{display:none}.qti-navigator .qti-navigator-icon,.qti-navigator .icon{position:relative;top:1px;display:inline-block;width:2rem;line-height:2.8rem}.qti-navigator .unseen .qti-navigator-icon{cursor:default}.qti-navigator.prevents-unseen .unseen .qti-navigator-icon,.qti-navigator.prevents-unseen .unseen .qti-navigator-label{cursor:not-allowed !important}.qti-navigator .icon-answered:before{content:"\e69a"}.qti-navigator .icon-viewed:before{content:"\e631"}.qti-navigator .icon-flagged:before{content:"\e64e"}.qti-navigator .icon-unanswered:before,.qti-navigator .icon-unseen:before{content:"\e6a5"}.qti-navigator .qti-navigator-counter{text-align:right;margin-left:auto;font-size:12px;font-size:1.2rem}.qti-navigator .qti-navigator-actions{text-align:center}.qti-navigator .qti-navigator-info.collapsed{height:calc(3rem + 1px)}.qti-navigator .qti-navigator-info{height:calc(5 * (3rem + 1px));overflow:hidden}.qti-navigator .qti-navigator-info>.qti-navigator-label{min-width:calc(100% - 16px);padding:0 8px}.qti-navigator .qti-navigator-info ul{padding:0 4px}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-text{padding:0 6px;min-width:10rem}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-icon{min-width:1.5rem}.qti-navigator .qti-navigator-info ul .qti-navigator-label span.qti-navigator-counter{min-width:5rem}.qti-navigator .qti-navigator-filters{margin-top:1rem;text-align:center;width:15rem;height:calc(3rem + (2 * 1px))}.qti-navigator .qti-navigator-filters ul{display:box;display:-ms-flexbox;display:-webkit-flexbox;display:flexbox;display:-ms-flex;display:-webkit-flex;display:flex;-ms-direction:row;-webkit-direction:row;direction:row;-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;flex-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;flex-line-pack:start;-ms-flex-line-pack:start;-webkit-align-content:flex-start;align-content:flex-start;flex-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch}.qti-navigator .qti-navigator-filters li{display:block}.qti-navigator .qti-navigator-filters li .qti-navigator-tab{border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;border-left:none;line-height:3rem;min-width:5rem;cursor:pointer;white-space:nowrap}.qti-navigator .qti-navigator-tree{-webkit-flex:1;-moz-flex:1;-ms-flex:1;-o-flex:1;flex:1;overflow-y:auto}.qti-navigator .qti-navigator-linear,.qti-navigator .qti-navigator-linear-part{padding:8px}.qti-navigator .qti-navigator-linear .icon,.qti-navigator .qti-navigator-linear-part .icon{display:none}.qti-navigator .qti-navigator-linear .qti-navigator-label,.qti-navigator .qti-navigator-linear-part .qti-navigator-label{font-size:14px;font-size:1.4rem}.qti-navigator .qti-navigator-linear .qti-navigator-title,.qti-navigator .qti-navigator-linear-part .qti-navigator-title{font-size:14px;font-size:1.4rem;margin:8px 0}.qti-navigator .qti-navigator-linear .qti-navigator-message,.qti-navigator .qti-navigator-linear-part .qti-navigator-message{font-size:14px;font-size:1.4rem}.qti-navigator .qti-navigator-part>.qti-navigator-label{padding:0 8px}.qti-navigator .qti-navigator-part:not(:first-child){margin-top:1px}.qti-navigator .qti-navigator-section>.qti-navigator-label{padding:0 8px}.qti-navigator .qti-navigator-item{margin:1px 0;padding-left:10px}.qti-navigator .qti-navigator-item:first-child{margin-top:0}.qti-navigator .qti-navigator-item.disabled>.qti-navigator-label{cursor:not-allowed}.qti-navigator .qti-navigator-collapsible{cursor:pointer;text-align:center;display:none;position:absolute;top:0;bottom:0;right:0;padding-top:50%}.qti-navigator .qti-navigator-collapsible .icon{font-size:20px;font-size:2rem;width:1rem !important;height:2rem !important}.qti-navigator .qti-navigator-collapsible .qti-navigator-expand{display:none}.qti-navigator.collapsible{padding-right:calc(1rem + 10px) !important}.qti-navigator.collapsible .qti-navigator-collapsible{display:block}.qti-navigator.collapsed{width:calc(8rem + 1rem + 10px);min-width:8rem}.qti-navigator.collapsed ul{padding:0 !important}.qti-navigator.collapsed .qti-navigator-text,.qti-navigator.collapsed .qti-navigator-info>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-part>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-section>.qti-navigator-label,.qti-navigator.collapsed .qti-navigator-message{display:none !important}.qti-navigator.collapsed .qti-navigator-label{padding:0 2px !important;width:calc(8rem - 4px);min-width:calc(8rem - 4px)}.qti-navigator.collapsed .qti-navigator-icon,.qti-navigator.collapsed .icon{width:auto}.qti-navigator.collapsed .qti-navigator-counter{margin-left:0;min-width:4rem !important}.qti-navigator.collapsed .qti-navigator-collapsible .qti-navigator-collapse{display:none}.qti-navigator.collapsed .qti-navigator-collapsible .qti-navigator-expand{display:block}.qti-navigator.collapsed .qti-navigator-info{height:calc(4 * (3rem + 1px))}.qti-navigator.collapsed .qti-navigator-info.collapsed .collapsible-panel{display:block !important}.qti-navigator.collapsed .qti-navigator-filters{width:calc(8rem - 16px)}.qti-navigator.collapsed .qti-navigator-filter span{display:none}.qti-navigator.collapsed .qti-navigator-filter.active span{display:block;border:0 none;width:calc(8rem - 16px)}.qti-navigator.collapsed .qti-navigator-item,.qti-navigator.collapsed .qti-navigator-linear,.qti-navigator.collapsed .qti-navigator-linear-part{padding-left:2px;text-align:center}.qti-navigator.collapsed .qti-navigator-item{overflow:hidden}.qti-navigator.collapsed .qti-navigator-item .qti-navigator-icon{padding-left:6px;width:2rem}.qti-navigator.collapsed .qti-navigator-item .qti-navigator-number{display:inline-block;margin-left:6px;margin-right:8rem}.qti-navigator.collapsed .qti-navigator-linear,.qti-navigator.collapsed .qti-navigator-linear-part{padding:0 0 8px 0}.qti-navigator.collapsed .qti-navigator-linear .icon,.qti-navigator.collapsed .qti-navigator-linear-part .icon{display:block}.qti-navigator.collapsed .qti-navigator-actions button{padding:0 9px 0 5px}.qti-navigator .qti-navigator-info>.qti-navigator-label{background-color:#D4D5D7;color:#222;border-top:1px solid #D4D5D7}.qti-navigator .qti-navigator-info li{border-bottom:1px solid #fff}.qti-navigator .qti-navigator-filter .qti-navigator-tab{background-color:#fff}.qti-navigator .qti-navigator-filter .qti-navigator-tab:hover{background-color:#3e7da7;color:#fff}.qti-navigator .qti-navigator-filter.active .qti-navigator-tab{background-color:#a4a9b1;color:#fff}.qti-navigator .qti-navigator-linear,.qti-navigator .qti-navigator-linear-part{background:#fff}.qti-navigator .qti-navigator-part>.qti-navigator-label{background-color:#dddfe2}.qti-navigator .qti-navigator-part>.qti-navigator-label:hover{background-color:#c6cacf}.qti-navigator .qti-navigator-part.active>.qti-navigator-label{background-color:#c0c4ca}.qti-navigator .qti-navigator-section>.qti-navigator-label{border-bottom:1px solid #fff}.qti-navigator .qti-navigator-section>.qti-navigator-label:hover{background-color:#ebe8e4}.qti-navigator .qti-navigator-section.active>.qti-navigator-label{background-color:#ded9d4}.qti-navigator .qti-navigator-item{background:#fff}.qti-navigator .qti-navigator-item.active{background:#f4f7f8}.qti-navigator .qti-navigator-item:hover{background:#eef3f5}.qti-navigator .qti-navigator-item.disabled{background-color:#e2deda !important}.qti-navigator .qti-navigator-collapsible{background-color:#dfe1e4;color:#222}.qti-navigator .qti-navigator-collapsible .icon{color:#fff}.qti-test-scope .action-bar li{margin:0 5px}.qti-test-scope .action-bar li.btn-info{border-color:rgba(255,255,255,0.3)}.qti-test-scope .action-bar li.btn-info.btn-group{border:none !important;overflow:hidden;padding:0}.qti-test-scope .action-bar li.btn-info.btn-group a{float:left;margin:0 2px;padding:0 15px;border:1px solid rgba(255,255,255,0.3);border-radius:0px;display:inline-block;height:inherit}.qti-test-scope .action-bar li.btn-info.btn-group a:first-of-type{border-top-left-radius:3px;border-bottom-left-radius:3px;margin-left:0}.qti-test-scope .action-bar li.btn-info.btn-group a:last-of-type{border-top-right-radius:3px;border-bottom-right-radius:3px;margin-right:0}.qti-test-scope .action-bar li.btn-info.btn-group a:hover,.qti-test-scope .action-bar li.btn-info.btn-group a.active{border-color:rgba(255,255,255,0.8)}.qti-test-scope .action-bar li.btn-info.btn-group a .no-label{padding-right:0}.qti-test-scope .action-bar li.btn-info:hover,.qti-test-scope .action-bar li.btn-info.active{border-color:rgba(255,255,255,0.8)}.qti-test-scope .action-bar.horizontal-action-bar{opacity:0}.qti-test-scope .action-bar.horizontal-action-bar .title-box{padding-top:4px}.qti-test-scope .action-bar.horizontal-action-bar .progress-box,.qti-test-scope .action-bar.horizontal-action-bar .timer-box,.qti-test-scope .action-bar.horizontal-action-bar .item-number-box{padding-top:4px;display:inline-block;white-space:nowrap;-webkit-flex:0 0 auto;flex:0 1 auto}.qti-test-scope .action-bar.horizontal-action-bar .progress-box .qti-controls,.qti-test-scope .action-bar.horizontal-action-bar .timer-box .qti-controls,.qti-test-scope .action-bar.horizontal-action-bar .item-number-box .qti-controls{display:inline-block;margin-left:20px;white-space:nowrap}.qti-test-scope .action-bar.horizontal-action-bar .progressbar{margin-top:5px;min-width:150px;max-width:200px;height:0.6em}.qti-test-scope .action-bar.horizontal-action-bar.top-action-bar>.control-box{display:-webkit-flex;-webkit-justify-content:space-between;-webkit-flex-flow:row nowrap;display:flex;justify-content:space-between;flex-flow:row nowrap}.qti-test-scope .action-bar.horizontal-action-bar>.control-box{color:rgba(255,255,255,0.9);text-shadow:1px 1px 0 black}.qti-test-scope .action-bar.horizontal-action-bar>.control-box .lft,.qti-test-scope .action-bar.horizontal-action-bar>.control-box .rgt{padding-left:20px}.qti-test-scope .action-bar.horizontal-action-bar>.control-box .lft:first-child,.qti-test-scope .action-bar.horizontal-action-bar>.control-box .rgt:first-child{padding-left:0}.qti-test-scope .action-bar.horizontal-action-bar>.control-box .lft:last-child ul,.qti-test-scope .action-bar.horizontal-action-bar>.control-box .rgt:last-child ul{display:inline-block}.qti-test-scope .action-bar.horizontal-action-bar>.control-box [class^="btn-"],.qti-test-scope .action-bar.horizontal-action-bar>.control-box [class*=" btn-"]{white-space:nowrap}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .action{position:relative;overflow:visible}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu{color:#222;background:#f3f1ef;overflow:auto;list-style:none;min-width:150px;margin:0;padding:0;position:absolute;bottom:30px;left:0}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action{display:inline-block;text-align:left;width:100%;white-space:nowrap;overflow:hidden;color:#222;margin:0;-moz-border-radius:0px;-webkit-border-radius:0px;border-radius:0px;height:32px;padding:6px 15px;line-height:1}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action.selected{background-color:#3e7da7;color:#fff}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action.selected .label,.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action.selected .icon{color:#fff}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action:hover{background-color:#0e5d91;color:#fff}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action:hover .label,.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action:hover .icon{color:#fff}.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action .label,.qti-test-scope .action-bar.horizontal-action-bar .tools-box .menu .action .icon{font-size:14px;font-size:1.4rem;text-shadow:none;color:#222}.qti-test-scope .action-bar.horizontal-action-bar.bottom-action-bar{overflow:visible}.qti-test-scope .action-bar.horizontal-action-bar.bottom-action-bar .action{line-height:1.6}.qti-test-scope .action-bar.horizontal-action-bar.has-timers{height:47px}.qti-test-scope .action-bar.horizontal-action-bar.has-timers .progress-box,.qti-test-scope .action-bar.horizontal-action-bar.has-timers .title-box{padding-top:10px}.qti-test-scope .action-bar.horizontal-action-bar .bottom-action-bar .action{display:none}.qti-test-scope .test-sidebar{background:#f3f1ef;overflow:auto}.qti-test-scope .test-sidebar-left{border-right:1px #ddd solid}.qti-test-scope .test-sidebar-right{border-left:1px #ddd solid}.qti-test-scope .content-panel{height:auto !important}.qti-test-scope .content-panel #qti-content{-webkit-overflow-scrolling:touch;overflow-y:auto;font-size:0}.qti-test-scope .content-panel #qti-content #qti-rubrics{font-size:14px}.qti-test-scope #qti-item{width:100%;min-width:100%;height:auto;overflow:visible}.qti-test-scope .size-wrapper{max-width:1280px;margin:auto;width:100%}.qti-test-scope .tools-box{position:relative;overflow:visible}.qti-test-scope [data-control="qti-comment"]{background-color:#f3f1ef;position:absolute;bottom:33px;left:8px;z-index:9999;text-align:right;padding:5px;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px;-webkit-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-moz-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-ms-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);-o-box-shadow:0 0 15px 1px rgba(0,0,0,0.2);box-shadow:0 0 15px 1px rgba(0,0,0,0.2)}.qti-test-scope [data-control="qti-comment"] textarea{display:block;height:100px;resize:none;width:350px;padding:3px;margin:0 0 10px 0;border:none;font-size:13px;font-size:1.3rem;border:1px solid #ddd;border-radius:2px;-webkit-border-radius:2px}.qti-test-scope #qti-timers{display:none}.qti-test-scope [data-control="exit"]{margin-left:20px}.qti-test-scope [data-control="comment-toggle"]{display:none}.qti-test-scope .qti-timer{display:inline-block;text-align:center;vertical-align:top;line-height:1.2;position:relative;padding:0 20px}.qti-test-scope .qti-timer .qti-timer_label{max-width:130px;font-size:12px;font-size:1.2rem}.qti-test-scope .qti-timer::before{content:' ';background:rgba(255,255,255,0.3);width:1px;height:20px;position:absolute;left:0;top:5px}.qti-test-scope .qti-timer:first-child::before{content:none}.qti-test-scope.non-lti-context .title-box{display:none}.qti-test-scope #qti-rubrics{margin:auto;max-width:1024px;width:100%;padding:15px}.qti-test-scope #qti-rubrics .qti-rubricBlock{margin:20px 0}.qti-test-scope #qti-rubrics .hidden{display:none} /*# sourceMappingURL=test-runner.css.map */ diff --git a/views/css/test-runner.css.map b/views/css/test-runner.css.map index 6ca07a12b1..5a68065e4f 100644 --- a/views/css/test-runner.css.map +++ b/views/css/test-runner.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "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", +"mappings": "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", "sources": ["../../../tao/views/scss/inc/_functions.scss","../../../tao/views/scss/inc/_loading-bar.scss","../../../tao/views/scss/inc/_action-bars.scss","../../../tao/views/scss/inc/_colors.scss","../../../tao/views/scss/inc/_section-container.scss","../scss/inc/_navigator.scss","../../../tao/views/scss/inc/fonts/_tao-icon-vars.scss","../scss/test-runner.scss"], "names": [], "file": "test-runner.css" diff --git a/views/js/controllers.min.js b/views/js/controllers.min.js index 5518b39afa..105026d690 100644 --- a/views/js/controllers.min.js +++ b/views/js/controllers.min.js @@ -17,8 +17,8 @@ hash:{},data:data}):helper),buffer+=escapeExpression(stack1)+"' class='itemref'> options={hash:{},data:data},helper?helper.call(depth0,"Item Reference Properties",options):helperMissing.call(depth0,"__","Item Reference Properties",options)))+'">\n \n \n \n \n \n \n \n \n \n \n \n \n\n'; })}),define("tpl!taoQtiTest/controller/creator/templates/item",["handlebars"],function(hb){return hb.template(function(Handlebars,depth0,helpers,partials,data){function program1(depth0,data){var stack1,helper,buffer="";return buffer+="\n
\n \n
\n \n');\n rubricBlockView.setUp($rubricBlock, model.rubricBlocks[index], data);\n }\n });\n }\n\n /**\n * Set up the category property\n * @private\n * @param {jQueryElement} $view - the $view object containing the $select\n */\n function categoriesProperty($view){\n var $select = $('[name=section-category]', $view);\n $select.select2({\n width: '100%',\n tags : _.pluck(sectionCategory.getTaoOptionCategories(), 'name'),\n multiple : true,\n tokenSeparators: [\",\", \" \", \";\"],\n formatNoMatches : function(){\n return __('Enter a category');\n },\n maximumInputLength : 32\n }).on('change', function(e){\n setCategories(e.val);\n });\n\n initCategories();\n $view.on('propopen.propview', function(){\n initCategories();\n });\n\n /**\n * Start the categories editing\n * @private\n */\n function initCategories(){\n\n var categories = sectionCategory.getCategories(model);\n\n //set categories found in the model in the select2 input\n $select.select2('val', categories.all);\n\n //color partial categories\n $select.siblings('.select2-container').find('.select2-search-choice').each(function(){\n var $li = $(this);\n var content = $li.find('div').text();\n if(_.indexOf(categories.partial, content) >= 0){\n $li.addClass('partial');\n }\n });\n }\n\n /**\n * save the categories into the model\n * @private\n */\n function setCategories(categories){\n sectionCategory.setCategories(model, categories);\n }\n\n }\n\n /**\n * Set up the Blueprint property\n * @private\n * @param {jQueryElement} $view - the $view object containing the $select\n */\n function blueprintProperty($view){\n var $select = $('[name=section-blueprint]', $view);\n $select.select2({\n ajax:{\n url: data.routes.blueprintsById,\n dataType: 'json',\n delay: 350,\n method: 'POST',\n data: function (params) {\n return {\n identifier: params // search term\n };\n },\n results: function (data) {\n return data;\n }\n },\n minimumInputLength: 3,\n width: '100%',\n multiple : false,\n formatNoMatches : function(){\n return __('Enter a blueprint');\n },\n maximumInputLength : 32\n }).on('change', function(e){\n setBlueprint(e.val);\n });\n\n initBlueprint();\n $view.on('propopen.propview', function(){\n initBlueprint();\n });\n\n /**\n * Start the blueprint editing\n * @private\n */\n function initBlueprint(){\n\n if(model.blueprint === undefined){\n sectionBlueprint\n .getBlueprint(data.routes.blueprintByTestSection, model)\n .success(function(data){\n if(!_.isEmpty(data)){\n if(model.blueprint !== \"\"){\n model.blueprint = data.uri;\n $select.select2('data', {id: data.uri, text: data.text});\n $select.trigger('change');\n }\n }\n });\n }\n }\n\n /**\n * save the categories into the model\n * @private\n */\n function setBlueprint(blueprint){\n sectionBlueprint.setBlueprint(model, blueprint);\n }\n\n }\n };\n\n /**\n * Listen for state changes to enable/disable . Called globally.\n */\n var listenActionState = function listenActionState (){\n\n var $sections;\n\n $('.sections').each(function(){\n $sections = $('.section', $(this));\n\n actions.removable($sections, 'h2');\n actions.movable($sections, 'section', 'h2');\n });\n\n $(document)\n .on('delete', function(e){\n var $parent;\n var $target = $(e.target);\n if($target.hasClass('section')){\n $parent = $target.parents('.sections');\n actions.disable($parent.find('.section'), 'h2');\n }\n })\n .on('add change undo.deleter deleted.deleter', function(e){\n var $target = $(e.target);\n if($target.hasClass('section') || $target.hasClass('sections')){\n $sections = $('.section', $target.hasClass('sections') ? $target : $target.parents('.sections'));\n actions.removable($sections, 'h2');\n actions.movable($sections, 'section', 'h2');\n }\n })\n .on('open.toggler', '.rub-toggler', function(e){\n if(e.namespace === 'toggler'){\n $(this).parents('h2').addClass('active');\n }\n })\n .on('close.toggler', '.rub-toggler', function(e){\n if(e.namespace === 'toggler'){\n $(this).parents('h2').removeClass('active');\n }\n });\n };\n\n\n /**\n * The sectionView setup section related components and beahvior\n *\n * @exports taoQtiTest/controller/creator/views/section\n */\n return {\n setUp : setUp,\n listenActionState: listenActionState\n };\n});\n\n","/**\n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; under version 2\n * of the License (non-upgradable).\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n *\n * Copyright (c) 2014 (original work) Open Assessment Technologies SA (under the project TAO-PRODUCT);\n */\n\n/**\n * @author Bertrand Chevrier
\\n \\n
\\n\n * var testMetaData = testMetaDataFactory({\n * testServiceCallId : this.itemServiceApi.serviceCallId\n * });\n *\n * testMetaData.setData({\n * 'TEST' : {\n * 'TEST_EXIT_CODE' : 'T'\n * },\n * 'SECTION' : {\n * 'SECTION_EXIT_CODE' : 704\n * }\n * });\n *\n * testMetaData.addData({'ITEM' : {\n * 'ITEM_START_TIME_CLIENT' : 1443596730143,\n * 'ITEM_END_TIME_CLIENT' : 1443596731301\n * }\n * });\n *\n *\n * Data for each service call id will be stored in local storage to be able get data\n * after reloading the page or resuming the test session.\n *\n * To clear all data related to current test_call_id used clearData method.\n */\ndefine('taoQtiTest/testRunner/testMetaData',[\n 'lodash'\n], function (_) {\n 'use strict';\n\n /**\n * @param {Object} options\n * @param {string} options.testServiceCallId - test call id.\n */\n var testMetaDataFactory = function testMetaDataFactory(options) {\n var _testServiceCallId,\n _storageKeyPrefix = 'testMetaData_',\n _data = {};\n\n if (!options || options.testServiceCallId === undefined) {\n throw new TypeError(\"testServiceCallId option is required\");\n }\n\n var testMetaData = {\n SECTION_EXIT_CODE : {\n 'COMPLETED_NORMALLY': 700,\n 'QUIT': 701,\n 'COMPLETE_TIMEOUT': 703,\n 'TIMEOUT': 704,\n 'FORCE_QUIT': 705,\n 'IN_PROGRESS': 706,\n 'ERROR': 300\n },\n TEST_EXIT_CODE : {\n 'COMPLETE': 'C',\n 'TERMINATED': 'T',\n 'INCOMPLETE': 'IC',\n 'INCOMPLETE_QUIT': 'IQ',\n 'INACTIVE': 'IA',\n 'CANDIDATE_DISAGREED_WITH_NDA': 'DA'\n },\n /**\n * Return test call id.\n * @returns {string}- Test call id\n */\n getTestServiceCallId : function getTestServiceCallId () {\n return _testServiceCallId;\n },\n\n /**\n * Set test call id.\n * @param {string} value\n */\n setTestServiceCallId : function setTestServiceCallId (value) {\n _testServiceCallId = value;\n },\n\n /**\n * Set meta data. Current data object will be overwritten.\n * @param {Object} data - metadata object\n */\n setData : function setData(data) {\n _data = data;\n setLocalStorageData(JSON.stringify(_data));\n },\n\n /**\n * Add data.\n * @param {Object} data - metadata object\n * @param {Boolean} overwrite - whether the same data should be overwritten. Default - false\n */\n addData : function addData(data, overwrite) {\n data = _.clone(data);\n if (overwrite === undefined) {\n overwrite = false;\n }\n\n if (overwrite) {\n _.merge(_data, data);\n } else {\n _data = _.merge(data, _data);\n }\n setLocalStorageData(JSON.stringify(_data));\n },\n\n /**\n * Get the saved data.\n * The cloned object will be returned to avoid unwanted affecting of the original data.\n * @returns {Object} - metadata object.\n */\n getData : function getData() {\n return _.clone(_data);\n },\n\n /**\n * Clear all data saved in current object and in local storage related to current test call id.\n * @returns {Object} - metadata object.\n */\n clearData : function clearData() {\n _data = {};\n window.localStorage.removeItem(testMetaData.getLocalStorageKey());\n },\n\n getLocalStorageKey : function getLocalStorageKey () {\n return _storageKeyPrefix + _testServiceCallId;\n }\n };\n\n /**\n * Initialize test meta data manager\n */\n function init() {\n _testServiceCallId = options.testServiceCallId;\n testMetaData.setData(getLocalStorageData());\n }\n\n /**\n * Set data to local storage\n * @param {string} val - data to be stored.\n */\n function setLocalStorageData(val) {\n var currentKey = testMetaData.getLocalStorageKey();\n try {\n window.localStorage.setItem(currentKey, val);\n } catch(domException) {\n if (domException.name === 'QuotaExceededError' ||\n domException.name === 'NS_ERROR_DOM_QUOTA_REACHED') {\n var removed = 0,\n i = window.localStorage.length,\n key;\n while (i--) {\n key = localStorage.key(i);\n if (/^testMetaData_.*/.test(key) && key !== currentKey) {\n window.localStorage.removeItem(key);\n removed++;\n }\n }\n if (removed) {\n setLocalStorageData(val);\n } else {\n throw domException;\n }\n } else {\n throw domException;\n }\n }\n }\n\n /**\n * Get data from local storage stored for current call id\n * @returns {*} saved data or empty object\n */\n function getLocalStorageData() {\n var data = window.localStorage.getItem(testMetaData.getLocalStorageKey()),\n result = JSON.parse(data) || {};\n\n return result;\n }\n\n init();\n\n return testMetaData;\n };\n\n return testMetaDataFactory;\n});\n","/**\n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; under version 2\n * of the License (non-upgradable).\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n *\n * Copyright (c) 2014 (original work) Open Assessment Technologies SA (under the project TAO-PRODUCT);\n */\ndefine('serviceApi/ServiceApi',['jquery', 'urlParser'], function($, UrlParser){\n 'use strict';\n\n /**\n * @constructor\n */\n function ServiceApi(baseUrl, parameters, serviceCallId, stateStorage, userService, paused){\n this.baseUrl = baseUrl;\n this.parameters = parameters;\n this.connected = false;\n\n this.serviceCallId = serviceCallId;\n this.state = stateStorage;\n this.userService = userService;\n this.hasBeenPaused = paused;\n }\n\n ServiceApi.SIG_SUCCESS = 0;\n ServiceApi.SIG_ERROR = 1;\n\n ServiceApi.prototype.loadInto = function(frame, connected){\n var self = this;\n var $frame = $(frame);\n var callUrl = this.getCallUrl();\n var isCORSAllowed = new UrlParser(callUrl).checkCORS();\n\n $frame.on('load', function(e){\n //if we are in the same domain, we add a variable\n //to the frame window, so the frame knows it can communicate\n //with the parent\n $(document).on('serviceready', function(){\n self.connect(frame, function(){\n $(document).off('serviceready');\n if(typeof connected === 'function'){\n connected();\n }\n });\n });\n if(isCORSAllowed === true){\n frame.contentWindow.__knownParent__ = true;\n }\n });\n\n $frame.attr('src', callUrl);\n };\n\n ServiceApi.prototype.connect = function(frame, connected){\n if(this.connected === false && frame.contentWindow){\n //frame.contentWindow.serviceApi = this;\n if (typeof(frame.contentWindow.onServiceApiReady) === \"function\") {\n frame.contentWindow.onServiceApiReady(this);\n this.connected = true;\n if(typeof connected === 'function'){\n connected();\n }\n }\n }\n };\n\n /**\n * Get the service call URL\n * @returns {String} the URI\n */\n ServiceApi.prototype.getCallUrl = function(){\n var params = this.parameters || {};\n params.serviceCallId = this.serviceCallId;\n return this.baseUrl + '?' + $.param(params);\n };\n\n ServiceApi.prototype.getUserPropertyValues = function(property, callback){\n \tthis.userService.get(property, callback);\n };\n\n //Context\n ServiceApi.prototype.getServiceCallId = function(){\n return this.serviceCallId;\n };\n\n //Context\n ServiceApi.prototype.getState = function(){\n return this.state.get();\n };\n\n ServiceApi.prototype.setState = function(state, callback){\n return this.state.set(state, callback);\n };\n\n //Context\n ServiceApi.prototype.getHasBeenPaused = function(){\n return this.hasBeenPaused;\n };\n\n ServiceApi.prototype.setHasBeenPaused = function(paused){\n this.hasBeenPaused = paused;\n };\n\n // Variables\n ServiceApi.prototype.getParameter = function(identifier){\n if (typeof(this.parameters[identifier]) !== \"undefined\") {\n return this.parameters[identifier];\n } else {\n return null;\n }\n };\n\n /**\n * Sets a callback on the finish action\n * @param {Function} callback\n * @returns {ServiceApi}\n */\n ServiceApi.prototype.onFinish = function(callback) {\n this.onFinishCallback = callback;\n return this;\n };\n\n /**\n * Sets a callback on the kill action\n * @param {Function} callback\n * @returns {ServiceApi}\n */\n ServiceApi.prototype.onKill = function(callback) {\n this.onKillCallback = callback;\n return this;\n };\n\n /**\n * Sets a callback on the exit action\n * @param {Function} callback\n * @returns {ServiceApi}\n */\n ServiceApi.prototype.onExit = function(callback) {\n this.onExitCallback = callback;\n return this;\n };\n\n /**\n * @param {Function} callback - Function called if no dedicated callback is found\n */\n ServiceApi.prototype.kill = function(callback) {\n \tif (typeof this.onKillCallback === 'function') {\n \t\tthis.onKillCallback(callback);\n \t} else {\n \t\tcallback(0);\n \t}\n };\n\n /**\n * Exits the flow\n * @param {Function} callback - Function called if no dedicated callback is found\n */\n ServiceApi.prototype.exit = function(callback) {\n \tif (typeof this.onExitCallback === 'function') {\n \t\tthis.onExitCallback(callback);\n \t} else {\n \t\tcallback(0);\n \t}\n };\n\n /**\n * Finishes the flow\n * @param valueArray - return parameters of the service.\n */\n ServiceApi.prototype.finish = function(valueArray) {\n //return execution to service caller\n if (typeof this.onFinishCallback === 'function') {\n this.onFinishCallback(valueArray);\n }\n };\n\n return ServiceApi;\n\n});\n\n","define('serviceApi/UserInfoService',['jquery'], function($){\n \n function UserInfoService(requestUrl, data) {\n this.data = data;\n this.requestUrl = requestUrl;\n }\n\n UserInfoService.prototype.get = function(property, callback){\n if (this.data.hasOwnProperty(property)) {\n if (typeof callback === \"function\") {\n callback(this.data[property]);\n }\n } else {\n $.ajax({\n url : this.requestUrl,\n data \t\t: {\n 'property' : property\n },\n type : 'post',\n dataType\t: 'json',\n success : (function(service, callback) {return function(r) {\n \t\tfor (key in r.data) {\n \t\t\tservice.data[key] = r.data[key];\n \t\t}\n if (typeof callback === \"function\") {\n callback(service.data[property]);\n }\n\n }})(this, callback)\n /*\t\n \tfunction(r){\n if(r.success){\n \tconsole.log(this.data);\n \tthis.data[property] = r.values;\n \t//console.log(this.data);\n\t if (typeof callback === \"function\") {\n\t callback(this.data[property]);\n\t }\n }\n }\n */\n \n \n });\n }\n };\n\n return UserInfoService;\n});\n","/**\n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; under version 2\n * of the License (non-upgradable).\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n *\n * Copyright (c) 2013 (original work) Open Assessment Technologies SA ;\n */\ndefine('serviceApi/StateStorage',['jquery'], function($){\n 'use strict';\n \n function StateStorage(state, submitUrl) {\n this.state = state;\n this.submitUrl = submitUrl;\n }\n\n StateStorage.prototype.get = function(callback){\n if (typeof callback === 'function') {\n callback(this.state);\n }\n return this.state;\n };\n\n StateStorage.prototype.set = function(state, callback){\n\n if (state === this.state) {\n if (typeof callback === \"function\") {\n callback();\n }\n } else {\n this.state = state;\n $.ajax({\n url : this.submitUrl,\n data \t\t: {\n 'state' : state\n },\n type : 'post',\n dataType\t: 'json',\n success : typeof callback === \"function\" ? callback : null\n });\n }\n };\n\n return StateStorage;\n});\n","/*\n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; under version 2\n * of the License (non-upgradable).\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n *\n * Copyright (c) 2015 (original work) Open Assessment Technologies SA;\n *\n */\n\ndefine('taoQtiTest/controller/runtime/testRunner',[\n 'jquery',\n 'lodash',\n 'i18n',\n 'module',\n 'taoQtiTest/testRunner/actionBarTools',\n 'taoQtiTest/testRunner/testReview',\n 'taoQtiTest/testRunner/progressUpdater',\n 'taoQtiTest/testRunner/testMetaData',\n 'serviceApi/ServiceApi',\n 'serviceApi/UserInfoService',\n 'serviceApi/StateStorage',\n 'iframeNotifier',\n 'mathJax',\n 'ui/feedback',\n 'ui/deleter',\n 'moment',\n 'ui/modal',\n 'ui/progressbar'\n],\nfunction (\n $,\n _,\n __,\n module,\n actionBarTools,\n testReview,\n progressUpdater,\n testMetaDataFactory,\n ServiceApi,\n UserInfoService,\n StateStorage,\n iframeNotifier,\n MathJax,\n feedback,\n deleter,\n moment,\n modal\n) {\n\n 'use strict';\n\n var timerIds = [],\n currentTimes = [],\n lastDates = [],\n timeDiffs = [],\n waitingTime = 0,\n $timers,\n $controls,\n timerIndex,\n testMetaData,\n sessionStateService,\n $doc = $(document),\n optionNextSection = 'x-tao-option-nextSection',\n optionNextSectionWarning = 'x-tao-option-nextSectionWarning',\n optionReviewScreen = 'x-tao-option-reviewScreen',\n optionEndTestWarning = 'x-tao-option-endTestWarning',\n optionNoExitTimedSectionWarning = 'x-tao-option-noExitTimedSectionWarning',\n TestRunner = {\n // Constants\n 'TEST_STATE_INITIAL': 0,\n 'TEST_STATE_INTERACTING': 1,\n 'TEST_STATE_MODAL_FEEDBACK': 2,\n 'TEST_STATE_SUSPENDED': 3,\n 'TEST_STATE_CLOSED': 4,\n 'TEST_NAVIGATION_LINEAR': 0,\n 'TEST_NAVIGATION_NONLINEAR': 1,\n 'TEST_ITEM_STATE_INTERACTING': 1,\n\n /**\n * Prepare a transition to another item\n * @param {Function} [callback]\n */\n beforeTransition: function (callback) {\n // Ask the top window to start the loader.\n iframeNotifier.parent('loading');\n\n // Disable buttons.\n this.disableGui();\n\n $controls.$itemFrame.hide();\n $controls.$rubricBlocks.hide();\n $controls.$timerWrapper.hide();\n\n // Wait at least waitingTime ms for a better user experience.\n if (typeof callback === 'function') {\n setTimeout(callback, waitingTime);\n }\n },\n\n /**\n * Complete a transition to another item\n */\n afterTransition: function () {\n this.enableGui();\n\n //ask the top window to stop the loader\n iframeNotifier.parent('unloading');\n testMetaData.addData({\n 'ITEM' : {'ITEM_START_TIME_CLIENT' : Date.now() / 1000}\n });\n },\n\n /**\n * Jumps to a particular item in the test\n * @param {Number} position The position of the item within the test\n */\n jump: function(position) {\n var self = this,\n action = 'jump',\n params = {position: position};\n this.disableGui();\n\n if( this.isJumpOutOfSection(position) && this.isCurrentItemActive() && this.isTimedSection() ){\n this.exitTimedSection(action, params);\n } else {\n this.killItemSession(function() {\n self.actionCall(action, params);\n });\n }\n },\n\n /**\n * Push to server how long user seen that item before to track duration\n * @param {Number} duration\n */\n keepItemTimed: function(duration){\n if (duration) {\n var self = this,\n action = 'keepItemTimed',\n params = {duration: duration};\n self.actionCall(action, params);\n }\n },\n\n /**\n * Marks an item for later review\n * @param {Boolean} flag The state of the flag\n * @param {Number} position The position of the item within the test\n */\n markForReview: function(flag, position) {\n var self = this;\n\n // Ask the top window to start the loader.\n iframeNotifier.parent('loading');\n\n // Disable buttons.\n this.disableGui();\n\n $.ajax({\n url: self.testContext.markForReviewUrl,\n cache: false,\n async: true,\n type: 'POST',\n dataType: 'json',\n data: {\n flag: flag,\n position: position\n },\n success: function(data) {\n // update the item flagged state\n if (self.testReview) {\n self.testReview.setItemFlag(position, flag);\n self.testReview.updateNumberFlagged(self.testContext, position, flag);\n if (self.testContext.itemPosition === position) {\n self.testContext.itemFlagged = flag;\n }\n self.updateTools(self.testContext);\n }\n\n // Enable buttons.\n self.enableGui();\n\n //ask the top window to stop the loader\n iframeNotifier.parent('unloading');\n }\n });\n },\n\n /**\n * Move to the next available item\n */\n moveForward: function () {\n var self = this,\n action = 'moveForward';\n\n function doExitSection() {\n if( self.isTimedSection() && !self.testContext.isTimeout){\n self.exitTimedSection(action);\n } else {\n self.exitSection(action);\n }\n }\n\n this.disableGui();\n\n if( (( this.testContext.numberItemsSection - this.testContext.itemPositionSection - 1) == 0) && this.isCurrentItemActive()){\n if (this.shouldDisplayEndTestWarning()) {\n this.displayEndTestWarning(doExitSection);\n this.enableGui();\n } else {\n doExitSection();\n }\n\n } else {\n this.killItemSession(function () {\n self.actionCall(action);\n });\n }\n },\n\n /**\n * Check if necessary to display an end test warning\n */\n shouldDisplayEndTestWarning: function(){\n return (this.testContext.isLast === true && this.hasOption(optionEndTestWarning));\n },\n\n /**\n * Warns upon exiting test\n */\n displayEndTestWarning: function(nextAction){\n var options = {\n confirmLabel: __('OK'),\n cancelLabel: __('Cancel'),\n showItemCount: false\n };\n\n this.displayExitMessage(\n __('You are about to submit the test. You will not be able to access this test once submitted. Click OK to continue and submit the test.'),\n nextAction,\n options\n );\n },\n\n /**\n * Move to the previous available item\n */\n moveBackward: function () {\n var self = this,\n action = 'moveBackward';\n\n this.disableGui();\n\n if( (this.testContext.itemPositionSection == 0) && this.isCurrentItemActive() && this.isTimedSection() ){\n this.exitTimedSection(action);\n } else {\n this.killItemSession(function () {\n self.actionCall(action);\n });\n }\n },\n\n /**\n * Checks if a position is out of the current section\n * @param {Number} jumpPosition\n * @returns {Boolean}\n */\n isJumpOutOfSection: function(jumpPosition){\n var items = this.getCurrentSectionItems(),\n isJumpToOtherSection = true,\n isValidPosition = (jumpPosition >= 0) && ( jumpPosition < this.testContext.numberItems );\n\n if( isValidPosition){\n for(var i in items ) {\n if (!items.hasOwnProperty(i)) {\n continue;\n }\n if( items[i].position == jumpPosition ){\n isJumpToOtherSection = false;\n break;\n }\n }\n } else {\n isJumpToOtherSection = false;\n }\n\n return isJumpToOtherSection;\n },\n\n /**\n * Exit from the current section. Set the exit code.de\n * @param {String} action\n * @param {Object} params\n * @param {Number} [exitCode]\n */\n exitSection: function(action, params, exitCode){\n var self = this;\n\n testMetaData.addData({\"SECTION\" : {\"SECTION_EXIT_CODE\" : exitCode || testMetaData.SECTION_EXIT_CODE.COMPLETED_NORMALLY}});\n self.killItemSession(function () {\n self.actionCall(action, params);\n });\n },\n\n /**\n * Tries to exit a timed section. Display a confirm message.\n * @param {String} action\n * @param {Object} params\n */\n exitTimedSection: function(action, params){\n var self = this,\n qtiRunner = this.getQtiRunner(),\n doExitTimedSection = function() {\n if (qtiRunner) {\n qtiRunner.updateItemApi();\n }\n self.exitSection(action, params);\n };\n\n if ((action === 'moveForward' && this.shouldDisplayEndTestWarning()) // prevent duplicate warning\n || this.hasOption(optionNoExitTimedSectionWarning) // check if warning is disabled\n || this.testContext.keepTimerUpToTimeout // no need to display the message as we may be able to go back\n ) {\n doExitTimedSection();\n } else {\n this.displayExitMessage(\n __('After you complete the section it would be impossible to return to this section to make changes. Are you sure you want to end the section?'),\n doExitTimedSection,\n { scope: 'testSection' }\n );\n }\n\n this.enableGui();\n },\n\n /**\n * Tries to leave the current section and go to the next\n */\n nextSection: function(){\n var self = this;\n var qtiRunner = this.getQtiRunner();\n var doNextSection = function() {\n self.exitSection('nextSection', null, testMetaData.SECTION_EXIT_CODE.QUIT);\n };\n\n if (qtiRunner) {\n qtiRunner.updateItemApi();\n }\n\n if (this.hasOption(optionNextSectionWarning)) {\n this.displayExitMessage(\n __('After you complete the section it would be impossible to return to this section to make changes. Are you sure you want to end the section?'),\n doNextSection,\n { scope: 'testSection' }\n );\n } else {\n doNextSection();\n }\n\n this.enableGui();\n },\n\n /**\n * Gets the current progression within a particular scope\n * @param {String} [scope]\n * @returns {Object}\n */\n getProgression: function(scope) {\n var scopeSuffixMap = {\n test : '',\n testPart : 'Part',\n testSection : 'Section'\n };\n var scopeSuffix = scope && scopeSuffixMap[scope] || '';\n\n return {\n total : this.testContext['numberItems' + scopeSuffix] || 0,\n answered : this.testContext['numberCompleted' + scopeSuffix] || 0,\n viewed : this.testContext['numberPresented' + scopeSuffix] || 0,\n flagged : this.testContext['numberFlagged' + scopeSuffix] || 0\n };\n },\n\n /**\n * Displays an exit message for a particular scope\n * @param {String} message\n * @param {Function} [action]\n * @param {Object} [options]\n * @param {String} [options.scope]\n * @param {String} [options.confirmLabel] - label of confirm button\n * @param {String} [options.cancelLabel] - label of cancel button\n * @param {Boolean} [options.showItemCount] - display the number of unanswered / flagged items in modal\n * @returns {jQuery} Returns the message box\n */\n displayExitMessage: function(message, action, options) {\n var self = this,\n options = options || {},\n scope = options.scope,\n confirmLabel = options.confirmLabel || __('Yes'),\n cancelLabel = options.cancelLabel || __('No'),\n showItemCount = typeof options.showItemCount !== 'undefined' ? options.showItemCount : true;\n\n var $confirmBox = $('.exit-modal-feedback');\n var progression = this.getProgression(scope);\n var unansweredCount = (progression.total - progression.answered);\n var flaggedCount = progression.flagged;\n\n if (showItemCount) {\n if (unansweredCount && this.isCurrentItemAnswered()) {\n unansweredCount--;\n }\n\n if (flaggedCount && unansweredCount) {\n message = __('You have %s unanswered question(s) and have %s item(s) marked for review.',\n unansweredCount.toString(),\n flaggedCount.toString()\n ) + ' ' + message;\n } else {\n if (flaggedCount) {\n message = __('You have %s item(s) marked for review.', flaggedCount.toString()) + ' ' + message;\n }\n\n if (unansweredCount) {\n message = __('You have %s unanswered question(s).', unansweredCount.toString()) + ' ' + message;\n }\n }\n }\n\n $confirmBox.find('.message').html(message);\n $confirmBox.find('.js-exit-confirm').html(confirmLabel);\n $confirmBox.find('.js-exit-cancel').html(cancelLabel);\n $confirmBox.modal({ width: 500 });\n\n $confirmBox.find('.js-exit-cancel, .modal-close').off('click').on('click', function () {\n $confirmBox.modal('close');\n });\n\n $confirmBox.find('.js-exit-confirm').off('click').on('click', function () {\n $confirmBox.modal('close');\n if (_.isFunction(action)) {\n action.call(self);\n }\n });\n\n return $confirmBox;\n },\n\n /**\n * Kill current item section and execute callback function given as first parameter.\n * Item end execution time will be stored in metadata object to be sent to the server.\n * @param {function} callback\n */\n killItemSession : function (callback) {\n testMetaData.addData({\n 'ITEM' : {\n 'ITEM_END_TIME_CLIENT' : Date.now() / 1000,\n 'ITEM_TIMEZONE' : moment().utcOffset(moment().utcOffset()).format('Z')\n }\n });\n if (typeof callback !== 'function') {\n callback = _.noop;\n }\n this.itemServiceApi.kill(callback);\n },\n\n /**\n * Checks if the current item is active\n * @returns {Boolean}\n */\n isCurrentItemActive: function(){\n return (this.testContext.itemSessionState !=4);\n },\n\n /**\n * Tells is the current item has been answered or not\n * The item is considered answered when at least one response has been set to not empty {base : null}\n *\n * @returns {Boolean}\n */\n isCurrentItemAnswered: function(){\n var answered = false;\n _.each(this.getCurrentItemState(), function(state){\n if(state && _.isObject(state.response) && state.response.base !== null){\n answered = true;//at least one response is not null so consider the item answered\n return false;\n }\n });\n return answered;\n },\n\n /**\n * Checks if a particular option is enabled for the current item\n * @param {String} option\n * @returns {Boolean}\n */\n hasOption: function(option) {\n return _.indexOf(this.testContext.categories, option) >= 0;\n },\n\n /**\n * Gets access to the qtiRunner instance\n * @returns {Object}\n */\n getQtiRunner: function(){\n var itemFrame = document.getElementById('qti-item');\n var itemWindow = itemFrame && itemFrame.contentWindow;\n var itemContainerFrame = itemWindow && itemWindow.document.getElementById('item-container');\n var itemContainerWindow = itemContainerFrame && itemContainerFrame.contentWindow;\n return itemContainerWindow && itemContainerWindow.qtiRunner;\n },\n\n /**\n * Checks if the current section is timed\n * @returns {Boolean}\n */\n isTimedSection: function(){\n var timeConstraints = this.testContext.timeConstraints,\n isTimedSection = false;\n for( var index in timeConstraints ){\n if(timeConstraints.hasOwnProperty(index) &&\n timeConstraints[index].qtiClassName === 'assessmentSection' ){\n isTimedSection = true;\n }\n }\n\n return isTimedSection;\n },\n\n /**\n * Gets the list of items owned by the current section\n * @returns {Array}\n */\n getCurrentSectionItems: function(){\n var partId = this.testContext.testPartId,\n navMap = this.testContext.navigatorMap,\n sectionItems;\n\n for( var partIndex in navMap ){\n if( !navMap.hasOwnProperty(partIndex)){\n continue;\n }\n if( navMap[partIndex].id !== partId ){\n continue;\n }\n\n for(var sectionIndex in navMap[partIndex].sections){\n if( !navMap[partIndex].sections.hasOwnProperty(sectionIndex)){\n continue;\n }\n if( navMap[partIndex].sections[sectionIndex].active === true ){\n sectionItems = navMap[partIndex].sections[sectionIndex].items;\n break;\n }\n }\n }\n\n return sectionItems;\n },\n\n /**\n * Skips the current item\n */\n skip: function () {\n var self = this,\n doSkip = function() {\n self.disableGui();\n self.actionCall('skip');\n };\n\n if (this.shouldDisplayEndTestWarning()) {\n this.displayEndTestWarning(doSkip);\n } else {\n doSkip();\n }\n },\n\n /**\n * Handles the timeout state\n */\n timeout: function () {\n var self = this;\n this.disableGui();\n this.testContext.isTimeout = true;\n this.updateTimer();\n\n this.killItemSession(function () {\n var confirmBox = $('.timeout-modal-feedback'),\n testContext = self.testContext,\n confirmBtn = confirmBox.find('.js-timeout-confirm, .modal-close');\n\n if (testContext.numberCompletedSection === testContext.numberItemsSection) {\n testMetaData.addData({\"SECTION\" : {\"SECTION_EXIT_CODE\" : testMetaData.SECTION_EXIT_CODE.COMPLETE_TIMEOUT}});\n } else {\n testMetaData.addData({\"SECTION\" : {\"SECTION_EXIT_CODE\" : testMetaData.SECTION_EXIT_CODE.TIMEOUT}});\n }\n\n self.enableGui();\n confirmBox.modal({width: 500});\n confirmBtn.off('click').on('click', function () {\n confirmBox.modal('close');\n self.actionCall('timeout');\n });\n });\n },\n\n /**\n * Sets the assessment test context object\n * @param {Object} testContext\n */\n setTestContext: function(testContext) {\n this.testContext = testContext;\n this.itemServiceApi = eval(testContext.itemServiceApiCall);\n this.itemServiceApi.setHasBeenPaused(testContext.hasBeenPaused);\n },\n\n\n /**\n * Handles Metadata initialization\n */\n initMetadata: function (){\n testMetaData = testMetaDataFactory({\n testServiceCallId: this.itemServiceApi.serviceCallId\n });\n },\n\n /**\n * Retrieve service responsible for broken session tracking\n * @returns {*}\n */\n getSessionStateService: function () {\n if (!sessionStateService) {\n sessionStateService = this.testContext.sessionStateService({accuracy: 1000});\n }\n return sessionStateService;\n },\n\n /**\n * Updates the GUI\n * @param {Object} testContext\n */\n update: function (testContext) {\n var self = this;\n $controls.$itemFrame.remove();\n\n var $runner = $('#runner');\n $runner.css('height', 'auto');\n\n this.getSessionStateService().restart();\n\n this.setTestContext(testContext);\n this.updateContext();\n this.updateProgress();\n this.updateNavigation();\n this.updateTestReview();\n this.updateInformation();\n this.updateRubrics();\n this.updateTools(testContext);\n this.updateTimer();\n this.updateExitButton();\n this.resetCurrentItemState();\n this.initMetadata();\n\n $controls.$itemFrame = $('