/** * Validation routine for account form * @param array $formdata Submitted data from form * @param object $files File uploads from form * @return Array of errors, if any found * @version 2015062901 * @since 2011042601 */ public function validation($formdata, $files = null) { $accountDAO = new TxttoolsAccountDAO(); $accountCount = $accountDAO->countTxttoolsRecords(); $err = array(); $formdata['accountCtxtInstance'] = trim($formdata['accountCtxtInstance']); $formdata['accountUrl'] = trim($formdata['accountUrl']); $formdata['accountName'] = trim($formdata['accountName']); $formdata['accountPassword1'] = trim($formdata['accountPassword1']); $formdata['accountPassword2'] = trim($formdata['accountPassword2']); $formdata['accountDescription'] = trim($formdata['accountDescription']); $formdata['accountDefaultInbox'] = trim($formdata['accountDefaultInbox']); if ($formdata['accountPassword1'] !== $formdata['accountPassword2']) { $err['accountPassword1'] = get_string('errornopasswordmatch', 'block_moodletxt'); } if ($accountCount < 1 && $formdata['accountCtxtInstance'] === 'URL' && !$formdata['accountUrl']) { $err['accountUrl'] = get_string('errornourl', 'block_moodletxt'); } return $err; }
*/ require_once '../../config.php'; require_once $CFG->libdir . '/adminlib.php'; require_once $CFG->dirroot . '/blocks/moodletxt/dao/TxttoolsAccountDAO.php'; require_once $CFG->dirroot . '/blocks/moodletxt/dao/MoodletxtMoodleUserDAO.php'; require_once $CFG->dirroot . '/blocks/moodletxt/forms/NewTxttoolsAccountForm.php'; require_once $CFG->dirroot . '/blocks/moodletxt/lib/MoodletxtEncryption.php'; require_once $CFG->dirroot . '/blocks/moodletxt/connect/MoodletxtOutboundControllerFactory.php'; require_login(); require_capability('block/moodletxt:adminsettings', context_system::instance()); // OK, so you're legit. Let's load DAOs $accountDAO = new TxttoolsAccountDAO(); $userDAO = new MoodletxtMoodleUserDAO(); // Check for txttools accounts - if there are no accounts in the system, we'll // display the "new installation" page introduction, rather than the standard one $numberOfAccounts = $accountDAO->countTxttoolsRecords(); admin_externalpage_setup('manageblocks'); // Shortcut function sets up page for block admin $PAGE->set_url('/blocks/moodletxt/settings_accounts_new.php'); $PAGE->set_button(''); // Clear editing button $PAGE->set_focuscontrol('id_accountName'); // Focus username field on load $PAGE->set_docs_path('admin/setting/moodletxtaccountsnew'); // External admin pages get their MoodleDocs links messed up $PAGE->navbar->add(get_string('navmoodletxt', 'block_moodletxt'), $CFG->wwwroot . '/admin/settings.php?section=blocksettingmoodletxt', navigation_node::TYPE_CUSTOM, 'moodletxt'); $PAGE->navbar->add(get_string('navaccounts', 'block_moodletxt'), $CFG->wwwroot . '/blocks/moodletxt/settings_accounts.php', navigation_node::TYPE_CUSTOM, 'moodletxt'); if ($numberOfAccounts == 0) { $PAGE->set_heading(get_string('headernewinstall', 'block_moodletxt')); $PAGE->set_title(get_string('titlenewinstall', 'block_moodletxt')); $PAGE->navbar->add(get_string('navnewaccount', 'block_moodletxt'), null, navigation_node::TYPE_CUSTOM, 'moodletxt');