コード例 #1
0
// Clear editing button
$addressbookNav = new moodle_url('/blocks/moodletxt/addressbooks.php', array('course' => $courseId, 'instance' => $instanceId));
$addressbookEditNav = new moodle_url('/blocks/moodletxt/addressbook_view.php', array('course' => $courseId, 'instance' => $instanceId, 'addressbook' => $addressbook->getId()));
$PAGE->navbar->add(get_string('navmoodletxt', 'block_moodletxt'), null, navigation_node::TYPE_CUSTOM, 'moodletxt');
$PAGE->navbar->add(get_string('navaddressbooks', 'block_moodletxt'), $addressbookNav, navigation_node::TYPE_CUSTOM, 'moodletxt');
$PAGE->navbar->add($addressbook->getName(), $addressbookEditNav, navigation_node::TYPE_CUSTOM, 'moodletxt');
$PAGE->navbar->add(get_string('navcontactadd', 'block_moodletxt'), null, navigation_node::TYPE_CUSTOM, 'moodletxt');
$PAGE->requires->jquery();
$PAGE->requires->js('/blocks/moodletxt/js/lib.js', true);
$PAGE->requires->js('/blocks/moodletxt/js/lib/qfamsHandler.js', true);
$PAGE->requires->js('/blocks/moodletxt/js/addressbook_groups.js', true);
// SETUP FORMS WITH INITIAL DATA
$output = $PAGE->get_renderer('block_moodletxt');
$initialFormData = array('course' => $courseId, 'instance' => $instanceId, 'addressbook' => $addressbook->getId());
$customFormData = array('existingGroups' => array(), 'potentialContacts' => array());
$groupList = $addressbookDAO->getAddressbookGroupsForUser($USER->id, $addressbook->getId());
$contactList = $addressbookDAO->getAddressbookContactsForUser($USER->id, $addressbook->getId());
foreach ($groupList as $group) {
    $customFormData['existingGroups'][$group->getId()] = $group->getName();
}
foreach ($contactList as $contact) {
    $customFormData['potentialContacts'][$contact->getContactId()] = $contact->getFullNameForDisplay();
}
$GLOBALS['_HTML_QuickForm_default_renderer'] = new QuickFormRendererWithSlides();
// Override renderer for multi-select
$notifications = '';
// POST PROCESSING FOR ADD FORM
$addForm = new MoodletxtGroupAddForm(null, $customFormData);
// Already have this data out, so pass it for inline validation
$addData = $addForm->get_data();
if ($addData != null) {
コード例 #2
0
ファイル: send.php プロジェクト: educacionbe/campus
$PAGE->requires->css('/blocks/moodletxt/style/send.css');
// User's signature
$PAGE->requires->js_init_call('receiveUserSignature', array($userDAO->getUserConfig($USER->id)->getUserConfig('signature')));
// Set up send form and load in all our lovely data
$GLOBALS['_HTML_QuickForm_default_renderer'] = new QuickFormRendererWithSlides();
// Override renderer for slides
$output = $PAGE->get_renderer('block_moodletxt');
$potentialRecipients = array();
$initialData = array();
$customData = array('course' => $courseId, 'instance' => $instanceId, 'existingTemplates' => array(), 'potentialRecipients' => &$potentialRecipients, 'txttoolsAccounts' => array(), 'moodleUsers' => array(), 'moodleGroups' => array());
$templates = $templateDAO->getAllTemplatesForUserId($USER->id);
$accounts = $accountDAO->getAccessibleAccountsForUserId($USER->id, true, false);
$moodleUsers = $userDAO->getUsersOnCourse($courseId);
$moodleGroups = $userDAO->getUserGroupsOnCourse($courseId);
$abContacts = $addressbookDAO->getAddressbookContactsForUser($USER->id);
$abGroups = $addressbookDAO->getAddressbookGroupsForUser($USER->id);
if (count($accounts) === 0) {
    print_error('errornoaccountspresent', 'block_moodletxt');
}
foreach ($templates as $template) {
    $customData['existingTemplates'][$template->getId()] = $template->getText();
}
foreach ($accounts as $account) {
    $customData['txttoolsAccounts'][$account->getId()] = MoodletxtStringHelper::formatAccountForDisplay($account);
}
foreach ($moodleUsers as $user) {
    if ($user->hasPhoneNumber()) {
        $potentialRecipients['u#' . $user->getId()] = array($user->getFullNameForDisplay(), array('class' => 'userRecipient'));
    }
}
foreach ($moodleGroups as $group) {
コード例 #3
0
$PAGE->set_button('');
// Clear editing button
$addressbookNav = new moodle_url('/blocks/moodletxt/addressbooks.php', array('course' => $courseId, 'instance' => $instanceId));
$addressbookEditNav = new moodle_url('/blocks/moodletxt/addressbook_view.php', array('course' => $courseId, 'instance' => $instanceId, 'addressbook' => $addressbook->getId()));
$PAGE->navbar->add(get_string('navmoodletxt', 'block_moodletxt'), null, navigation_node::TYPE_CUSTOM, 'moodletxt');
$PAGE->navbar->add(get_string('navaddressbooks', 'block_moodletxt'), $addressbookNav, navigation_node::TYPE_CUSTOM, 'moodletxt');
$PAGE->navbar->add($addressbook->getName(), $addressbookEditNav, navigation_node::TYPE_CUSTOM, 'moodletxt');
$PAGE->navbar->add(get_string('navcontactadd', 'block_moodletxt'), null, navigation_node::TYPE_CUSTOM, 'moodletxt');
$PAGE->requires->jquery();
$PAGE->requires->js('/blocks/moodletxt/js/lib.js', true);
$PAGE->requires->js('/blocks/moodletxt/js/lib/qfamsHandler.js', true);
// SETUP FORM
$output = $PAGE->get_renderer('block_moodletxt');
$initialFormData = array('course' => $courseId, 'instance' => $instanceId, 'addressbook' => $addressbook->getId());
$customFormData = array('potentialGroups' => array());
$groupList = $addressbookDAO->getAddressbookGroupsForUser($USER->id, $addressbook->getId());
foreach ($groupList as $group) {
    $customFormData['potentialGroups'][$group->getId()] = $group->getName();
}
$GLOBALS['_HTML_QuickForm_default_renderer'] = new QuickFormRendererWithSlides();
// Override renderer for multi-select
$contactForm = new MoodletxtContactAddForm(null, $customFormData);
$notifications = '';
// POST PROCESSING
$formData = $contactForm->get_data();
if ($formData != null) {
    $formData = $contactForm->cleanupFormData($formData);
    // Create contact, add groups, save to DB
    $newContact = new MoodletxtAddressbookRecipient(new MoodletxtPhoneNumber($formData->phoneNumber), $formData->firstName, $formData->lastName, $formData->company, 0, $addressbook->getId());
    foreach ($formData->groups as $groupId) {
        $newContact->addGroup($addressbookDAO->getAddressbookGroupById($formData->addressbook, $groupId));