public function run() { $searchString = isset($_GET['searchString']) ? $_GET['searchString'] : ""; $sortField = isset($_GET['sort']) ? $_GET['sort'] : "mark"; $sortDir = isset($_GET['dir']) ? $_GET['dir'] : "desc"; $page = isset($_GET['page']) ? $_GET['page'] : 1; if ($searchString == "") { $students = $this->stg->getAllStudents($sortField, $sortDir, $this->studentsPerPage, $this->studentsPerPage * ($page - 1)); } else { $students = $this->stg->searchInDB($searchString, $sortField, $sortDir); } $urlHelper = new UrlHelper(); $pager = new Pager(intval(ceil($this->stg->getTotalStudentsNum() / $this->studentsPerPage)), $this->studentsPerPage, $urlHelper->getPagerURL($searchString, $sortField, $sortDir, "{page}")); include __DIR__ . '/../views/ViewStudentsList.php'; }
var s = d.createElement(t), options = { 'id': <?php echo $formModel->id; ?> , 'theme': 0, 'container': 'c<?php echo $formModel->id; ?> ', 'height': '<?php echo $formDataModel->height; ?> px', 'form': '<?php echo UrlHelper::removeScheme(Url::to(['/app/embed'], true)); ?> ' }; s.type= 'text/javascript'; s.src = '<?php echo Url::to('@web/static_files/js/form.widget.js', true); ?> '; s.onload = s.onreadystatechange = function() { var rs = this.readyState; if (rs) if (rs != 'complete') if (rs != 'loaded') return; try { FormWidget.initialize(options); FormWidget.display() } catch (e) { } }; var scr = d.getElementsByTagName(t)[0], par = scr.parentNode; par.insertBefore(s, scr); })(document, 'script'); </script>
/* @var $formModel app\models\Form */ /* @var $formDataModel app\models\FormData */ /* @var $formConfirmationModel app\models\FormConfirmation */ /* @var $formRuleModels app\models\FormRule[] */ /* @var $showTheme boolean Show or hide theme css */ /* @var $customJS boolean Load or Not Custom Javascript File */ /* @var $record boolean Enable / Disable record stats dynamically */ $this->title = $formModel->name; /** @var $rules array Conditions and Actions of active rules */ $rules = []; foreach ($formRuleModels as $formRuleModel) { $rule = ['conditions' => $formRuleModel['conditions'], 'actions' => $formRuleModel['actions']]; array_push($rules, $rule); } // Base URL without schema $baseUrl = UrlHelper::removeScheme(Url::home(true)); // PHP options required by embed.js $options = array("id" => $formModel->id, "app" => $baseUrl . "app", "tracker" => $baseUrl . "/static_files/js/form.tracker.js", "name" => "#form-app", "actionUrl" => Url::to(['app/a', 'id' => $formModel->id], true), "validationUrl" => Url::to(['app/check', 'id' => $formModel->id], true), "_csrf" => Yii::$app->request->getCsrfToken(), "resume" => $formModel->resume, "autocomplete" => $formModel->autocomplete, "analytics" => $formModel->analytics && $record, "confirmationType" => $formConfirmationModel->type, "confirmationMessage" => $formConfirmationModel->message, "confirmationUrl" => $formConfirmationModel->url, "showOnlyMessage" => $formConfirmationModel::CONFIRM_WITH_ONLY_MESSAGE, "redirectToUrl" => $formConfirmationModel::CONFIRM_WITH_REDIRECTION, "rules" => $rules, "fieldIds" => $formDataModel->getFieldIds(), "submitted" => false, "runOppositeActions" => true, "i18n" => ['complete' => Yii::t('app', 'Complete'), 'unexpectedError' => Yii::t('app', 'An unexpected error has occurred. Please retry later.')]); // Pass php options to javascript $this->registerJs("var options = " . json_encode($options) . ";", View::POS_BEGIN, 'form-options'); // Load reCAPTCHA JS Api // Only if Form has reCaptcha component and was not passed in this session if ($formModel->recaptcha === $formModel::RECAPTCHA_ACTIVE && !Yii::$app->session['reCaptcha']) { $this->registerJsFile('https://www.google.com/recaptcha/api.js', ['position' => View::POS_HEAD]); $this->registerCss(".g-recaptcha { height: 78px; }"); } // Pager $pager = new Pager(Html::decode($formDataModel->html)); // Utilities required for javascript files $this->registerJsFile('@web/static_files/js/form.utils.min.js', ['depends' => JqueryAsset::className()]); // If form has multiple pages