]> _ Git - fluidbook-v3.git/commitdiff
wip #484 @0.5
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 30 Jun 2016 16:55:32 +0000 (16:55 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 30 Jun 2016 16:55:32 +0000 (16:55 +0000)
framework/application/controllers/AjaxController.php
framework/application/forms/RequestQuote.php
less/102-intro.less

index 1015ddb64c4324e1cb25507afa669699d14d8752..2551069247ebe1c67a79d87fe93a34b81e52dbec 100644 (file)
@@ -2,19 +2,18 @@
 
 class AjaxController extends CubeIT_Controller_AjaxController {
 
-    public function requestQuote() {
-
-        $form = new Fluidbook_Form_RequestQuote();
-
-        if ($form->isValid($_POST)) {
-
-            // ToDo: process form...
-
-        } else {
-            $this->_datas->refreshForm($form); // Respond with validation errors
-            $this->_datas->addAction('eval', 'displayErrors()');
-        }
-
-    }
+       public function requestQuote() {
+               $form = new Fluidbook_Form_RequestQuote();
+
+               if ($form->isValid($_POST)) {
+                       $url = 'https://workshop.fluidbook.com/ajax/demandeDevis?devis_form=' . base64_encode(serialize($_POST));
+                       fb($url);
+                       fb(file_get_contents($url));
+               } else {
+                       $this->_datas->refreshForm($form); // Respond with validation errors
+                       $this->_datas->addAction('eval', 'displayErrors()');
+               }
+
+       }
 
 }
index bbbdeba7f05a174f07da20213ab5a56b361e35c1..67a5b3764feb5594bb3ae15ebb4ff68203ebb1d0 100644 (file)
@@ -2,77 +2,85 @@
 
 class Fluidbook_Form_RequestQuote extends CubeIT_Form {
 
-    public function init() {
-        parent::init();
-
-        $first_name = new Zend_Form_Element_Text('first_name');
-        $first_name->setLabel(__('Prénom'));
-        $this->addElement($first_name);
-
-        $last_name = new Zend_Form_Element_Text('last_name');
-        $last_name->setLabel(__('Nom'));
-        $last_name->setRequired(true);
-        $last_name->addErrorMessage(__('Votre nom est obligatoire'));
-        $this->addElement($last_name);
-
-        $company = new Zend_Form_Element_Text('company');
-        $company->setLabel(__('Nom de la société'));
-        $company->setRequired(true);
-        $company->addErrorMessage(__('Votre nom de la société est obligatoire'));
-        $this->addElement($company);
-
-        $contact_type = new Zend_Form_Element_Select('contact_type');
-        $contact_type->setLabel(__('Vous êtes'));
-        $contact_type->setMultiOptions(array(
-            '' => '',
-            'agency' => 'Une agence de communication',
-            'freelancer' => 'Un créatif freelance',
-            'company' => 'Une société',
-            'other' => 'Autre',
-        ));
-        $contact_type->setAttrib('required', 'required'); // Needed so we can style the first element when nothing selected
-        $contact_type->setRequired(true);
-        $contact_type->addErrorMessage(__('Champ obligatoire'));
-        $this->addElement($contact_type);
-
-        $email = new CubeIT_Form_Element_Email('email');
-        $email->setLabel(__('Email professionnel'));
-        $email->setRequired(true);
-        $email->addErrorMessage(__('E-mail invalide'));
-        $this->addElement($email);
-
-        $phone = new Zend_Form_Element_Text('phone');
-        $phone->setLabel(__('Téléphone'));
-        $this->addElement($phone);
-
-        $comments = new Zend_Form_Element_Textarea('comments');
-        $comments->setLabel(__('Commentaires sur votre projet'));
-        $this->addElement($comments);
-
-        $tips = new CubeIT_Form_Element_Html('tips');
-        $tips->setContent('<!-- TIPS -->'); // Just a placeholder for CMS content
-        $this->addElement($tips);
-
-        $submit = new Zend_Form_Element_Button('submit');
-        $submit->setLabel(__('Envoyer la demande'));
-        $submit->setAttrib('class', 'submit-button');
-        $submit->setAttrib('type', 'submit');
-        $this->addElement($submit);
-
-        $this->setId('requestQuote')
-            ->setAjax()
-            ->setAction('/ajax/requestQuote');
-
-    }
-
-    public function render(Zend_View_Interface $view = null) {
-
-        $form = parent::render($view);
-
-        // Inject tips HTML into form via placeholder
-        $tips = $this->getView()->markupDotclear($this->getView()->option('quote_form_tips'), [], ['class' => 'tips']);
-        return str_replace('<!-- TIPS -->', '<div id="wrap-tips">'. $tips .'</div>', $form);
-    }
+       public function init() {
+               parent::init();
+
+               $first_name = new Zend_Form_Element_Text('prenom');
+               $first_name->setLabel(__('Prénom'));
+               $this->addElement($first_name);
+
+               $last_name = new Zend_Form_Element_Text('nom');
+               $last_name->setLabel(__('Nom'));
+               $last_name->setRequired(true);
+               $last_name->addErrorMessage(__('Veuillez indiquer votre nom'));
+               $this->addElement($last_name);
+
+               $company = new Zend_Form_Element_Text('rs');
+               $company->setLabel(__('Nom de la société'));
+               $company->setRequired(true);
+               $company->addErrorMessage(__('Veuillez indiquer le nom de votre société'));
+               $this->addElement($company);
+
+               $contact_type = new Zend_Form_Element_Select('contact_type');
+               $contact_type->setLabel(__('Vous êtes'));
+               $contact_type->setMultiOptions(array(
+                       '' => '',
+                       'agency' => 'Une agence de communication',
+                       'freelancer' => 'Un créatif freelance',
+                       'company' => 'Une société',
+                       'other' => 'Autre',
+               ));
+               $contact_type->setAttrib('required', 'required'); // Needed so we can style the first element when nothing selected
+               $contact_type->setRequired(true);
+               $contact_type->addErrorMessage(__('Veuillez indiquer le type de votre société'));
+               $this->addElement($contact_type);
+
+               $email = new CubeIT_Form_Element_Email('email');
+               $email->setLabel(__('Email professionnel'));
+               $email->setRequired(true);
+               $email->addErrorMessage(__('Veuillez indiquer une adresse e-mail valide'));
+               $this->addElement($email);
+
+               $phone = new Zend_Form_Element_Text('telephone');
+               $phone->setLabel(__('Téléphone'));
+               $this->addElement($phone);
+
+               $comments = new Zend_Form_Element_Textarea('detail');
+               $comments->setLabel(__('Commentaires sur votre projet'));
+               $this->addElement($comments);
+
+               $tips = new CubeIT_Form_Element_Html('tips');
+               $tips->setContent('<!-- TIPS -->'); // Just a placeholder for CMS content
+               $this->addElement($tips);
+
+               $pays = new Zend_Form_Element_Hidden('pays');
+               $pays->setValue(CubeIT_Networking_GeoIP2::lookupCountryCode());
+               $this->addElement($pays);
+
+               $locale = new Zend_Form_Element_Hidden('lang');
+               $locale->setValue(Bootstrap::getInstance()->getDefaultLocale());
+               $this->addElement($locale);
+
+               $submit = new Zend_Form_Element_Button('submit');
+               $submit->setLabel(__('Envoyer la demande'));
+               $submit->setAttrib('class', 'submit-button');
+               $submit->setAttrib('type', 'submit');
+               $this->addElement($submit);
+
+               $this->setId('requestQuote')
+                       ->setAjax()
+                       ->setAction('/ajax/requestQuote');
+
+       }
+
+       public function render(Zend_View_Interface $view = null) {
+
+               $form = parent::render($view);
+
+               // Inject tips HTML into form via placeholder
+               $tips = $this->getView()->markupDotclear($this->getView()->option('quote_form_tips'), [], ['class' => 'tips']);
+               return str_replace('<!-- TIPS -->', '<div id="wrap-tips">' . $tips . '</div>', $form);
+       }
 
 
 }
\ No newline at end of file
index d6b31d8ef627b13a7a17849d0c2995f100c9de71..8f430e0c504d829bd201f02d8f0edbaaee97781c 100644 (file)
@@ -1,6 +1,8 @@
 @import "000-imports";\r
 \r
 .intro {\r
+       color: #151e28;\r
+\r
        .content-wrapper {\r
                background-size: 1680px auto;\r
                padding-top: 152px; // Minimum clearance and top for fixed menu\r