Guest User

Untitled

a guest
Jun 18th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1. <?php
  2.  
  3. /**
  4. * Page containing a registration form.
  5. * Uses Member::getMemberFormFields() to know what to ask of a user.
  6. */
  7. class RegisterPage extends Page {
  8. static $db = array(
  9. "ThanksTitle" => "HTMLVarchar",
  10. "ThanksContent" => "HTMLText",
  11. );
  12.  
  13. function getCMSFields($cms) {
  14. $fields = parent::getCMSFields($cms);
  15.  
  16. $fields->addFieldsToTab("Root.Content.Thanks", array(
  17. new TextField("ThanksTitle", "Title"),
  18. new HTMLEditorField("ThanksContent", "Content"),
  19. ));
  20.  
  21. return $fields;
  22. }
  23.  
  24. }
  25.  
  26. class RegisterPage_Controller extends Page_Controller {
  27. /**
  28. * Return the edit form for the current user
  29. */
  30. function Form() {
  31. // Get the fields from a new member - seems like a good default :-)
  32. $member = new Member();
  33. $fields = $member->getMemberFormFields();
  34.  
  35. $actions = new FieldSet(
  36. new FormAction('register', 'Register')
  37. );
  38.  
  39. $form = new Form($this, 'Form', $fields, $actions);
  40.  
  41. return $form;
  42. }
  43.  
  44. /**
  45. * Save the profile details
  46. */
  47. function register($data, $form) {
  48. // Create a new member and save the form into it
  49. $member = new Member();
  50. $form->saveInto($member);
  51.  
  52. // Write to the databsae
  53. $member->write();
  54.  
  55. // To do: add a status message on the form, using the standard form message system
  56.  
  57. // Return to the original form
  58. Director::redirect($this->Link() . 'thanks');
  59. }
  60.  
  61. function thanks() {
  62. return array(
  63. 'Title' => $this->ThanksTitle,
  64. 'Content' => $this->ThanksContent,
  65. 'Form' => ' ',
  66. );
  67. }
  68. }
Add Comment
Please, Sign In to add comment