Skip to content
This repository has been archived by the owner on Jan 29, 2020. It is now read-only.

Commit

Permalink
Fixes #27: Optional sig, delete signature
Browse files Browse the repository at this point in the history
  • Loading branch information
philcali committed Mar 19, 2012
1 parent 9df5d6f commit 2a25907
Show file tree
Hide file tree
Showing 4 changed files with 46 additions and 8 deletions.
4 changes: 3 additions & 1 deletion CHANGELOG.md
@@ -1,8 +1,10 @@
## v1.2.2

- Emergency Fix for alternate emails [#25][25]
- Embed image permission too strong for thick app clients [#26][26]

[25]: https://github.com/lsuits/quickmail/issues/22
[25]: https://github.com/lsuits/quickmail/issues/25
[26]: https://github.com/lsuits/quickmail/issues/26

## v1.2.1

Expand Down
3 changes: 3 additions & 0 deletions lang/en/block_quickmail.php
Expand Up @@ -68,6 +68,9 @@
$string['courselayout'] = 'Course Layout';
$string['courselayout_desc'] = 'Use _Course_ page layout when rendering the Quickmail block pages. Enable this setting, if you are getting Moodle form fixed width issues.';

$string['are_you_sure'] = 'Are you sure you want to delete {$a->title}? This action
cannot be reversed.';

// Alternate Email strings
$string['alternate_new'] = 'Add Alternate Address';
$string['sure'] = 'Are you sure you want to delete {$a->address}? This action cannot be undone.';
Expand Down
45 changes: 39 additions & 6 deletions signature.php
Expand Up @@ -10,6 +10,8 @@

$courseid = required_param('courseid', PARAM_INT);
$sigid = optional_param('id', 0, PARAM_INT);
$flash = optional_param('flash', 0, PARAM_INT);
$confirm = optional_param('confirm', 0, PARAM_INT);

if ($courseid and !$course = $DB->get_record('course', array('id' => $courseid))) {
print_error('no_course', 'block_quickmail', '', $courseid);
Expand Down Expand Up @@ -75,15 +77,26 @@

$form = new signature_form(null, array('signature_options' => $options));

if ($confirm) {
$DB->delete_records('block_quickmail_signatures', array('id' => $sigid));
redirect(new moodle_url('/blocks/quickmail/signature.php', array(
'courseid' => $courseid,
'flash' => 1
)));
}

if ($form->is_cancelled()) {
redirect(new moodle_url('/course/view.php', array('id' => $courseid)));
} else if ($data = $form->get_data()) {
if (isset($data->delete)) {
$delete = true;
}

if (empty($data->title) or empty($data->signature_editor['text'])) {
if (empty($data->title)) {
$warnings[] = quickmail::_s('required');
}

if (empty($warnings)) {
if (empty($warnings) and empty($delete)) {
$data->signature = $data->signature_editor['text'];

if (empty($data->default_flag)) {
Expand Down Expand Up @@ -113,7 +126,9 @@

$DB->update_record('block_quickmail_signatures', $data);

$url = new moodle_url('signature.php', array('id' => $data->id, 'courseid' => $course->id));
$url = new moodle_url('signature.php', array(
'id' => $data->id, 'courseid' => $course->id, 'flash' => 1
));
redirect($url);
}
}
Expand All @@ -127,10 +142,28 @@
};
$sig_options = $first + array_map($only_names, $dbsigs);

echo $OUTPUT->single_select('signature.php?courseid='.$courseid, 'id', $sig_options, $sigid);

$form->set_data($sig);

$form->display();
if ($flash) {
echo $OUTPUT->notification(get_string('changessaved'), 'notifysuccess');
}

if (!empty($delete)) {
$msg = get_string('are_you_sure', 'block_quickmail', $sig);
$confirm_url = new moodle_url('/blocks/quickmail/signature.php', array(
'id' => $sig->id,
'courseid' => $courseid,
'confirm' => 1
));
$cancel_url = new moodle_url('/blocks/quickmail/signature.php', array(
'id' => $sig->id,
'courseid' => $courseid
));
echo $OUTPUT->confirm($msg, $confirm_url, $cancel_url);
} else {
echo $OUTPUT->single_select('signature.php?courseid='.$courseid, 'id', $sig_options, $sigid);

$form->display();
}

echo $OUTPUT->footer();
2 changes: 1 addition & 1 deletion signature_form.php
Expand Up @@ -22,11 +22,11 @@ public function definition() {

$buttons = array(
$mform->createElement('submit', 'save', get_string('savechanges')),
$mform->createElement('submit', 'delete', get_string('delete')),
$mform->createElement('cancel')
);

$mform->addGroup($buttons, 'buttons', quickmail::_s('actions'), array(' '), false);
$mform->addRule('title', null, 'required', null, 'client');
$mform->addRule('signature_editor', null, 'required', null, 'client');
}
}

0 comments on commit 2a25907

Please sign in to comment.