public function subscribe() { $response = array(); if ($this->validateEmail()) { $newsletter = new Journal2Newsletter($this->registry, $this->request->post['email']); if ($newsletter->isSubscribed()) { $response['status'] = 'error'; $response['unsubscribe'] = 1; $response['message'] = $this->journal2->settings->get('newsletter_confirm_unsubscribe_message', 'Already subscribed. Unsubscribe?'); } else { $newsletter->subscribe(); $response['status'] = 'success'; $response['message'] = $this->journal2->settings->get('newsletter_subscribed_message', 'Thank you for subscribing on our newsletter.'); } } else { $response['status'] = 'error'; $response['message'] = $this->journal2->settings->get('newsletter_invalid_email_message', 'Invalid E-Mail.'); } $this->response->setOutput(json_encode($response)); }