示例#1
0
 public function testUrl()
 {
     $this->uri->initializeWithURL('http://localhost:8080/grav/it/ueper')->init();
     $this->assertSame('/grav/it/ueper', $this->uri->url());
     $this->uri->initializeWithURL('http://localhost:8080/grav/it/ueper:xxx')->init();
     $this->assertSame('/grav/it', $this->uri->url());
     $this->uri->initializeWithURL('http://localhost:8080/grav/it/ueper:xxx/test:yyy')->init();
     $this->assertSame('/grav/it', $this->uri->url());
     $this->uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x')->init();
     $this->assertSame('/grav/it/ueper', $this->uri->url());
     $this->uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y')->init();
     $this->assertSame('/grav/it/ueper', $this->uri->url());
     $this->uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y&test3=x&test4=y')->init();
     $this->assertSame('/grav/it/ueper', $this->uri->url());
     $this->uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y&test3=x&test4=y/test')->init();
     $this->assertSame('/grav/it/ueper', $this->uri->url());
     $this->uri->initializeWithURL('http://localhost:8080/a/b/c/d')->init();
     $this->assertSame('/a/b/c/d', $this->uri->url());
     $this->uri->initializeWithURL('http://localhost:8080/a/b/c/d/e/f/a/b/c/d/e/f/a/b/c/d/e/f')->init();
     $this->assertSame('/a/b/c/d/e/f/a/b/c/d/e/f/a/b/c/d/e/f', $this->uri->url());
 }
 /**
  * Handle the Form Process
  *
  * @param \Grav\Common\Uri $uri
  */
 protected function processFormAction(Uri $uri)
 {
     $message_success = $this->overwriteConfigVariable('plugins.recaptchacontact.messages.success', 'RECAPTCHACONTACT.MESSAGES.SUCCESS');
     $message_error = $this->overwriteConfigVariable('plugins.recaptchacontact.messages.error', 'RECAPTCHACONTACT.MESSAGES.ERROR');
     $message_fail = $this->overwriteConfigVariable('plugins.recaptchacontact.messages.fail', 'RECAPTCHACONTACT.MESSAGES.FAIL');
     if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['g-recaptcha-response'])) {
         $this->clearSession();
         if (false === $this->validateFormData()) {
             $this->setSubmissionMessage('error', $message_error);
             $this->setSessionFields();
         } else {
             if (false === $this->sendEmail()) {
                 $this->setSubmissionMessage('fail', $message_fail);
                 $this->setSessionFields();
             } else {
                 $this->setSubmissionMessage('success', $message_success);
             }
         }
         $this->grav->redirectLangSafe($uri->url());
     }
 }