private function build_form() { $mail_request = AppContext::get_request()->get_string('mail_newsletter', ''); if (AppContext::get_current_user()->check_level(User::MEMBER_LEVEL) && empty($mail_request)) { $email = AppContext::get_current_user()->get_email(); } else { $email = $mail_request; } $form = new HTMLForm(__CLASS__); $fieldset = new FormFieldsetHTML('unsubscribe.newsletter', $this->lang['unsubscribe.newsletter']); $form->add_fieldset($fieldset); $fieldset->add_field(new FormFieldMailEditor('mail', $this->lang['subscribe.mail'], $email, array('required' => true))); $fieldset->add_field(new FormFieldCheckbox('delete_all_streams', $this->lang['newsletter.delete_all_streams'], FormFieldCheckbox::UNCHECKED, array('events' => array('click' => ' if (HTMLForms.getField("delete_all_streams").getValue()) { HTMLForms.getField("choice").disable(); } else { HTMLForms.getField("choice").enable(); }')))); $newsletter_subscribe = AppContext::get_current_user()->check_level(User::MEMBER_LEVEL) ? NewsletterService::get_member_id_streams(AppContext::get_current_user()->get_id()) : array(); $fieldset->add_field(new FormFieldMultipleCheckbox('choice', $this->lang['unsubscribe.newsletter_choice'], $newsletter_subscribe, $this->get_streams(), array('required' => true))); $this->submit_button = new FormButtonDefaultSubmit(); $form->add_button($this->submit_button); $form->add_button(new FormButtonReset()); $this->form = $form; }
public function display_field_update(MemberExtendedField $member_extended_field) { $fieldset = $member_extended_field->get_fieldset(); $streams = $this->get_streams(); if (!empty($streams)) { $newsletter_subscribe = NewsletterService::get_member_id_streams($member_extended_field->get_user_id()); $fieldset->add_field(new FormFieldMultipleCheckbox($member_extended_field->get_field_name(), $member_extended_field->get_name(), $newsletter_subscribe, $streams, array('description' => $member_extended_field->get_description()))); } }