Jump to:

762 Posts in 312 Topics by 291 members

Widgets

SilverStripe Forums » Widgets » Form Widget doesn't work on Blog Pages

Discuss SilverStripe Widgets.

Moderators: martimiz, Howard, Sean, Ryan M., biapar, Willr, Ingo, swaiba, simon_w

Page: 1
Go to End
Author Topic: 677 Views
  • socks
    Avatar
    Community Member
    182 Posts

    Form Widget doesn't work on Blog Pages Link to this post

    I made some custom widgets. All is well except that my Form Widget doesn't work on Blog pages (it does work on all other pages).

    Error:
    popCurrent called on ModelAsController controller, but it wasn't at the top of the stack
    POST /websitename/blog/widget/24/FormWidget

    Widget Form Code

    class FormWidget_Controller extends Widget_Controller {

       function FormWidget() {
          
          return new Form(
             $this,
             'FormWidget',
             new FieldSet(
                new EmailField('EmailFormWidget')
             ),
             new FieldSet(
                new FormAction('doFormWidget', 'Submit')
             ),
             new RequiredFields('EmailFormWidget')
          );
          
       }

    function doFormWidget($data, $form) {

          //Set data
          $from = $data['EmailFormWidget'];
          $to = 'example@example.com';
          $subject = "this is the subject";
          $body = '<h1>Email Signup List</h1><p><b>Email Address</b> - '.$data['EmailFormWidget'].'</p>';
          $email = new Email($from, $to, $subject, $body);
          $email->send();
          Director::redirect(Director::get_current_page()->Link() . "?success=1");
       }
       
       // Allows us to show different content in template "if Success"
       public function SuccessFormWidget() {
          return isset($_REQUEST['success']) && $_REQUEST['success'] == "1";
       }
    }

    Thank you

  • Matze0681
    Avatar
    Community Member
    25 Posts

    Re: Form Widget doesn't work on Blog Pages Link to this post

    I have the same issue. I know it is an old post, but did you find a solution for this?

    Thanks in advance
    Matze

    677 Views
Page: 1
Go to Top

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.