Thank you to anyone who has already donated - your generous donations helped make three months of treatment possible.

My brother Nate continues to fight stage IV Hodgkin's lymphoma. He's just 31, with a wife and baby girl. They have no active income (since he's been unable to return to work), no insurance, and cannot afford the treatment he needs. Nate and his family need your help. Please consider a donation, every dollar helps. Thanks.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<?php
  // INTERFACES:
  // - ContactPage
  // - ContactPage_Controller


  //============================================================================
  // ContactPage
  //============================================================================
  class ContactPage extends Page
  {
    // properties
    public static $db      = array
    (
      'Mailto'     => 'Varchar(100)',
      'SubmitText' => 'Text'
    );
    public static $has_one = array();
    public static $icon    = 'themes/Standard/images/treeicons/contact';
    //--------------------------------------------------------------------------


    // overrides/implements
    function getCMSFields()
    {
      $fields = parent::getCMSFields();

      // add new fields
      $fields->addFieldToTab('Root.Content.OnSubmission', new TextField('Mailto', _t('ContactPage.BE_EMAIL_LABEL', 'Send contact form to')));
      $fields->addFieldToTab('Root.Content.OnSubmission', new TextareaField('SubmitText', _t('ContactPage.BE_MESSAGE_LABEL', 'Notification to the user after successful submit this form')));

      // change exists fields
      $fields->fieldByName('Root.Content.OnSubmission')->setTitle(_t('ContactPage.BE_TAB_MAILSETTINGS', 'E-Mail settings'));

      return $fields;
    }
    //--------------------------------------------------------------------------
  }


  //============================================================================
  // ContactPage_Controller
  //============================================================================
  class ContactPage_Controller extends Page_Controller
  {
    // properties
    static $allowed_actions = array
    (
      'ContactForm'
    );
    //--------------------------------------------------------------------------


    // email functionality
    function ContactForm()
    {
      // create fields
      $fields = new FieldSet
      (
        new TextField('Name', _t('ContactPage.FE_NAME_LABEL', 'Name')),
        new EmailField('Email', _t('ContactPage.FE_EMAIL_LABEL', 'E-Mail')),
        new TextareaField('Comments', _t('ContactPage.FE_MESSAGE_LABEL', 'Message'))
      );

      // create action
      $actions = new FieldSet
      (
        new FormAction('SendContactForm', _t('ContactPage.FE_SEND_BUTTON', 'Send'))
      );

      // create Validators
      $validator = new RequiredFields('Name', 'Email', 'Comments');

      return new Form($this, 'ContactForm', $fields, $actions, $validator);
    }

    function SendContactForm($data, $form)
    {
      // set data
      $from    = $data['Email'];
      $to      = $this->Mailto;
      $subject = _t('ContactPage.EMAIL_SUBJECT', 'E-Mail for the contact form');
      $email   = new Email($from, $to, $subject);

      // set template
      $email->setTemplate('ContactEmail');

      // populate template
      $email->populateTemplate($data);

      // send mail
      $email->send();

      // return to submitted message
      Director::redirect($this->Link("?success=1"));
    }

    public function Success()
    {
      return isset($_REQUEST['success']) && $_REQUEST['success'] == "1";
    }
    //--------------------------------------------------------------------------
  }
?>