]> _ Git - cubedesigners-v7.git/commitdiff
(no commit message)
authorbruno@cubedesigners.com <bruno@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 30 Jan 2014 16:43:58 +0000 (16:43 +0000)
committerbruno@cubedesigners.com <bruno@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 30 Jan 2014 16:43:58 +0000 (16:43 +0000)
14 files changed:
framework/application/Bootstrap.php
framework/application/controllers/StudiesController.php [new file with mode: 0644]
framework/application/forms/CMS/Casestudies.php
framework/application/forms/CMS/Element/Casestudies.php [new file with mode: 0644]
framework/application/forms/CMS/Sub/Casestudies/Content/Bloc.php
framework/application/forms/CMS/Sub/Casestudies/Studies.php
framework/application/views/helpers/CasestudiesDetail.php [new file with mode: 0644]
framework/application/views/helpers/CasestudiesList.php
framework/application/views/helpers/CasestudiesTagsList.php
framework/application/views/scripts/studies/index.phtml [new file with mode: 0644]
framework/application/views/scripts/templates/casestudies.phtml
js/admin.js
less/casestudies.less
less/casestudies_detail.less [new file with mode: 0644]

index 31e60010cd9dbd21d8ecb526ac603e69f8d3b36e..2f559cb7cb672def782782e967327e82093623e0 100644 (file)
@@ -40,6 +40,19 @@ class Bootstrap extends CubeIT_Bootstrap {
         $tags->addColumn('id', 'integer', array('unsigned' => true, 'autoincrement' => true));
         $tags->setPrimaryKey(array('id'));
         $tags->addColumn('name', 'string', array('length' => 64));
+
+        $casestudies = $schema->createTable('casestudies');
+        $casestudies->addColumn('id', 'integer', array('unsigned' => true, 'autoincrement' => true));
+        $casestudies->setPrimaryKey(array('id'));
+        $casestudies->addColumn('titre', 'text');
+        $casestudies->addColumn('description', 'text');
+        $casestudies->addColumn('url', 'text');
+        $casestudies->addColumn('visuel', 'string', array('length' => 128));
+        $casestudies->addColumn('visuel_detail', 'string', array('length' => 128));
+        $casestudies->addColumn('legende', 'text');
+        $casestudies->addColumn('couleur', 'text');
+        $casestudies->addColumn('blocs', 'text');
+        $casestudies->addColumn('tags', 'text');
     }
 
     protected function _initAcl() {
@@ -47,6 +60,63 @@ class Bootstrap extends CubeIT_Bootstrap {
         return $acl;
     }
 
+    protected function _makeNavigationOnePage(&$navigation, $r, $t, $isAdmin, $locale = false) {
+        $page = parent::_makeNavigationOnePage($navigation, $r, $t, $isAdmin, $locale);
+
+        if (!$page) {
+            return;
+        }
+
+        if ($page->getTemplate() == 'casestudies') {
+            $this->addStudiesPages($page);
+        }
+    }
+
+    /**
+     *
+     * @param CubeIT_Navigation_Page_Locale $page
+     */
+    protected function addStudiesPages($page) {
+        $datas = $this->getCMSDatasOfNavigationPage($page);
+        //fb($datas);
+        $db = Zend_Db_Table::getDefaultAdapter();
+        $s = $db->select()->from('casestudies')
+                ->order('id ASC');
+        $q = $s->query();
+
+        fb("datas", $datas['seourl_stu']);
+
+        while ($r = $q->fetch()) {
+            if ($r->titre == '') {
+                continue;
+            }
+            $p = new CubeIT_Navigation_Page_Locale();
+            $p->setController('Studies');
+            $p->setId($page->getId() . '/' . $r->id);
+            $p->setAutoUri($r, $datas['seourl_stu'], $page->getLocale());
+            $p->setSitemap(true);
+            $p->setEditable(false);
+            $p->setDomain($page->getDomain());
+            $p->setLabel($r->titre);
+            $page->addPage($p);
+        }
+
+        /* foreach ($datas['studies'] as $k => $studie) {
+          if ($studie['titre'] == '') {
+          continue;
+          }
+          $p = new CubeIT_Navigation_Page_Locale();
+          $p->setController('Studies');
+          $p->setId($page->getId() . '/' . $k);
+          $p->setAutoUri($studie, $datas['seourl_stu'], $page->getLocale());
+          $p->setSitemap(true);
+          $p->setEditable(false);
+          $p->setDomain($page->getDomain());
+          $p->setLabel($studie['titre']);
+          $page->addPage($p);
+          } */
+    }
+
     /**
      *
      * @return array
@@ -57,6 +127,7 @@ class Bootstrap extends CubeIT_Bootstrap {
         $templates['Agence'] = array('agence' => 'L\'agence');
         $templates['Realisations'] = array('realisations' => 'Réalisations');
         $templates['Casestudies'] = array('casestudies' => 'Case-Studies');
+        $templates['CasestudiesDetail'] = array('casestudies_detail' => 'Case-Studies (détail)');
         $templates['Expertises'] = array('expertises' => 'Expertises');
         $templates['Contact'] = array('contact' => 'Contact');
         $templates['Mentions'] = array('mentions' => 'Mentions légales');
diff --git a/framework/application/controllers/StudiesController.php b/framework/application/controllers/StudiesController.php
new file mode 100644 (file)
index 0000000..ef7732a
--- /dev/null
@@ -0,0 +1,40 @@
+<?php\r
+\r
+class StudiesController extends CubeIT_Controller_PageController {\r
+\r
+    public function indexAction() {\r
+        $parent = $this->view->currentPage->getParent();\r
+\r
+        $datas = $this->getBootstrap()->getCMSDatasOfNavigationPage($parent);\r
+        $this->view->datas = $datas;\r
+\r
+        $url = $this->getRequest()->getParam('page');\r
+\r
+        $ok = false;\r
+\r
+        $db = Zend_Db_Table::getDefaultAdapter();\r
+        $s = $db->select()->from('casestudies')\r
+                ->order('id ASC');\r
+        $q = $s->query();\r
+\r
+        while ($r = $q->fetch()) {\r
+            if (CubeIT_Navigation_Page::generateAutoUri($r, $datas['seourl_stu'], null) == $url) {\r
+\r
+                $this->view->casestudies_titre = $datas["titre"];\r
+                $this->view->titre = $r->titre;\r
+                $this->view->studie = $r;\r
+\r
+                $ok = true;\r
+                break;\r
+            }\r
+        }\r
+\r
+        if (!$ok) {\r
+            $this->_404();\r
+            return;\r
+        }\r
+    }\r
+\r
+}\r
+\r
+?>\r
index 459e6a4a1d1d40f9f097e7f159b058f7bfa57d2c..b722215b102b408c4d6e821edc2d2802b9c0a6ca 100644 (file)
@@ -9,9 +9,13 @@ class Cubedesigners_Form_CMS_Casestudies extends Cubedesigners_Form_CMS {
         $titre->setLabel('Titre');\r
         $this->addElement($titre);\r
 \r
-        $studies = new Cubedesigners_Form_CMS_Sub_Casestudies_Studies();\r
-        $studies->setLabel('Etudes de cas');\r
-        $this->addSubForm($studies, 'studies');\r
+        $stuurl = new Zend_Form_Element_Text('seourl_stu');\r
+        $stuurl->setLabel('Modèle d\'URL des études de cas');\r
+        $this->addElement($stuurl);\r
+\r
+        $studies = new Cubedesigners_Form_CMS_Element_Casestudies('studies');\r
+        $studies->setLabel('Gestion des études de cas');\r
+        $this->addElement($studies);\r
     }\r
 \r
 }\r
diff --git a/framework/application/forms/CMS/Element/Casestudies.php b/framework/application/forms/CMS/Element/Casestudies.php
new file mode 100644 (file)
index 0000000..e316cb3
--- /dev/null
@@ -0,0 +1,12 @@
+<?php\r
+\r
+class Cubedesigners_Form_CMS_Element_Casestudies extends CubeIT_Form_Element_List {\r
+\r
+    public function init() {\r
+        parent::init();\r
+\r
+        $this->setBaseForm(new Cubedesigners_Form_CMS_Sub_Casestudies_Studies());\r
+        $this->clearDecorators();\r
+    }\r
+\r
+}\r
index 4b0087dc4a35be76187f19c4a0a1067f482f862f..a8d9fba4077f844472a3a7c450ec716dc5d37de2 100644 (file)
@@ -9,6 +9,10 @@ class Cubedesigners_Form_CMS_Sub_Casestudies_Content_Bloc extends CubeIT_Form_Su
         $select->setAttrib('data-name', 'selected-type');
         $this->addElement($select);
 
+        $margin = new Zend_Form_Element_Text('margin');
+        $margin->setLabel("Décalage du vertical bloc (en pixels)");
+        $this->addElement($margin);
+
         $titre = new Zend_Form_Element_Text('titre');
         $titre->setLabel('Titre');
         $this->addElement($titre);
@@ -25,6 +29,16 @@ class Cubedesigners_Form_CMS_Sub_Casestudies_Content_Bloc extends CubeIT_Form_Su
         $video = new CubeIT_Form_Element_WebVideo('video');
         $video->setLabel('URL de la vidéo');
         $this->addElement($video);
+
+        $video_background = new CubeIT_Form_Element_File_Image('video_background');
+        $video_background->setLabel('Fond de la vidéo');
+        $video_background->setMaxItems(1);
+        $this->addElement($video_background);
+
+        $type = new Zend_Form_Element_Hidden('form-type');
+        $type->setAttrib('data-name', 'form-type');
+        $type->setValue('test');
+        $this->addElement($type);
     }
 
 }
index b4c5359ce0337165f4add94cb6c356ea6ed6bf84..2e61ac93b824ddd791d784b9ef4da1011f1835a3 100644 (file)
@@ -1,14 +1,59 @@
 <?php
 
-class Cubedesigners_Form_CMS_Sub_Casestudies_Studies extends CubeIT_Form_Multi_SubForm {
+class Cubedesigners_Form_CMS_Sub_Casestudies_Studies extends CubeIT_Form_List {
 
     public function init() {
         parent::init();
+        $id = new CubeIT_Form_Element_Id();
+        $this->addElement($id);
 
-        $studie = new Cubedesigners_Form_CMS_Sub_Casestudies_Studie();
-        $this->setBaseSubForm($studie);
-        $this->setBaseLegend('Edition de l\'etude de cas « $titre »');
-        $this->setNewLegend('Nouvelle étude de cas');
+        $titre = new Zend_Form_Element_Text('titre');
+        $titre->setLabel('Titre');
+        $this->addElement($titre);
+
+        $description = new Zend_Form_Element_Text('description');
+        $description->setLabel('Description');
+        $this->addElement($description);
+
+        $url = new CubeIT_Form_Element_Url('url');
+        $url->setLabel('URL du site');
+        $this->addElement($url);
+
+        $visuel = new CubeIT_Form_Element_File_Image('visuel');
+        $visuel->setLabel('Visuel de la page Case Studies');
+        $visuel->setMaxItems(1);
+        $this->addElement($visuel);
+
+        $visuel_detail = new CubeIT_Form_Element_File_Image('visuel_detail');
+        $visuel_detail->setLabel('Visuel de la page de détail');
+        $visuel_detail->setMaxItems(1);
+        $this->addElement($visuel_detail);
+
+        $legende = new Zend_Form_Element_Text('legende');
+        $legende->setLabel('Legende du visuel');
+        $this->addElement($legende);
+
+        $color = new Zend_Form_Element_Text('couleur');
+        $color->setLabel('Code couleur de la zone de contenu');
+        $this->addElement($color);
+
+        $blocs = new Cubedesigners_Form_CMS_Sub_Casestudies_Content_Blocs('blocs');
+        $blocs->setLegend('Contenu');
+        $this->addSubForm($blocs, 'blocs');
+
+        $tags = new Cubedesigners_Form_Element_Tags('tags');
+        $tags->setLabel('Tags');
+        $this->addElement($tags);
+
+        $bootstrap = Bootstrap::getInstance();
+        $view = $bootstrap->getView();
+
+        $this->setListTitle('Etudes de cas')
+                ->setNewTitle('Créer une étude de cas')
+                ->setEditTitle('Edition de l\'éétude de cas « $titre »')
+                ->setBaseTable('casestudies')
+                ->setIdColumn('id')
+                ->setTitleColumn('titre');
     }
 
 }
diff --git a/framework/application/views/helpers/CasestudiesDetail.php b/framework/application/views/helpers/CasestudiesDetail.php
new file mode 100644 (file)
index 0000000..89dd28f
--- /dev/null
@@ -0,0 +1,91 @@
+<?php\r
+\r
+class Cubedesigners_View_Helper_CasestudiesDetail extends Zend_View_Helper_Abstract {\r
+\r
+    public function CasestudiesDetail($studie) {\r
+\r
+        $visuel_detail = $this->view->imageProcess($studie->visuel_detail, $studie->titre, 980, 400);\r
+\r
+        $res = '<div id="casestudies-detail-visuel">';\r
+        $res .= '<div class="visuel-holder">';\r
+        $res .= '<div class="visuel">' . $visuel_detail . '</div>';\r
+\r
+\r
+        $res .= '<div class="legende">' . $studie->legende . '</div>';\r
+\r
+        if ($studie->url != '') {\r
+            $res .= '<a href="' . $studie->url . '" style="float:right">' . __("Voir le site") . '</a>';\r
+        }\r
+\r
+        $res .= '</div>';\r
+        $res .= '</div>';\r
+\r
+        $style = '';\r
+        if ($studie->couleur != '') {\r
+            $style = 'background-color:' . $studie->couleur;\r
+        }\r
+        $res .= '<div id="casestudies-detail-content" style="' . $style . ';">';\r
+\r
+        $blocs = json_decode($studie->blocs, true);\r
+\r
+        foreach ($blocs as $bloc) {\r
+\r
+            $margin = '';\r
+\r
+            if ($bloc["margin"] != '') {\r
+                $margin = 'margin-top:' . $bloc["margin"] . 'px;';\r
+            }\r
+\r
+            if ($bloc["selectedtype"] == "text") {\r
+\r
+                $res .= '<div class="detail-text" style="' . $margin . '" >';\r
+                $res .= '<div class="titre">' . $bloc["titre"] . '</div>';\r
+                $res .= '<div class="texte">' . $bloc["texte"] . '</div>';\r
+                $res .= '</div>';\r
+            }\r
+\r
+            if ($bloc["selectedtype"] == "visuel") {\r
+                $visuel = $this->view->imageProcess()->imageProcessGetUrl($bloc["visuel"], '', 1200, null);\r
+                $width = -1;\r
+                $height = -1;\r
+                CubeIT_Image::getDimensions($visuel, $width, $height);\r
+\r
+\r
+\r
+                $res .= '<div class="detail-visuel" style="background-image:url(\'' . $visuel . '\');height:' . $height . 'px;' . $margin . '"></div>';\r
+            }\r
+\r
+\r
+            $addVideoBackground = false;\r
+            if ($bloc["video_background"] != false) {\r
+                $addVideoBackground = true;\r
+            }\r
+\r
+            if ($bloc["selectedtype"] == "video") {\r
+\r
+                if ($addVideoBackground) {\r
+                    $background = $this->view->imageProcess()->imageProcessGetUrl($bloc["video_background"], '', 1200, null);\r
+                    $width = -1;\r
+                    $height = -1;\r
+                    CubeIT_Image::getDimensions($background, $width, $height);\r
+                    $res.= '<div class="detail-video-background" style="width:100%;background-position:50%;background-image:url(\'' . $background . '\');height:' . $height . 'px;">';\r
+                }\r
+\r
+                $res .= '<div class="detail-video" style="' . $margin . '" >';\r
+                $video = $this->view->videoWeb($bloc["video"], 980);\r
+                $res .= '<div>' . $video . '</div>';\r
+                $res .= '</div>';\r
+\r
+                if ($addVideoBackground) {\r
+                    $res.= "</div>";\r
+                }\r
+            }\r
+        }\r
+        $res .= '</div>';\r
+\r
+        return $res;\r
+    }\r
+\r
+}\r
+\r
+?>\r
index 4a719e0e38f47cd153f9c5e308794af5005d3500..476dc10b725371245553d9531d065c21ad53a7fb 100644 (file)
@@ -2,14 +2,18 @@
 \r
 class Cubedesigners_View_Helper_CasestudiesList extends Zend_View_Helper_Abstract {\r
 \r
-    public function CasestudiesList($studies) {\r
+    public function CasestudiesList($datas) {\r
+\r
+        $db = Zend_Db_Table::getDefaultAdapter();\r
+        $s = $db->select()->from('casestudies')\r
+                ->order('id ASC');\r
+        $q = $s->query();\r
 \r
         $count = 1;\r
 \r
         $res = '';\r
 \r
-        foreach ($studies as $studie) {\r
-\r
+        while ($r = $q->fetch()) {\r
             $addSpacer = false;\r
 \r
             if ($count == 3) {\r
@@ -21,13 +25,15 @@ class Cubedesigners_View_Helper_CasestudiesList extends Zend_View_Helper_Abstrac
                 $count++;\r
             }\r
 \r
-            $image = $this->view->imageProcess($studie['visuel'], $studie['titre'], 300, 225);\r
-\r
-            $res .= '<div class="bloc' . $addClass . '" data-tags="' . $studie["tags"] . '">';\r
+            $image = $this->view->imageProcess($r->visuel, $r->titre, 300, 225);\r
+            $url = CubeIT_Navigation_Page::generateAutoUri($r, $datas['seourl_stu']);\r
+            $res .= '<a href="' . $url . '">';\r
+            $res .= '<div class="bloc' . $addClass . '" data-tags="' . $r->tags . '">';\r
             $res .= '<div class="project-photo">' . $image . '</div>';\r
-            $res .= '<div class="project-title">' . $studie["titre"] . '</div>';\r
-            $res .= '<div class="project-description">' . $studie["description"] . '</div>';\r
+            $res .= '<div class="project-title">' . $r->titre . '</div>';\r
+            $res .= '<div class="project-description">' . $r->description . '</div>';\r
             $res .= '</div>';\r
+            $res .= '</a>';\r
 \r
             // if ($addSpacer) {\r
             //    $res .= '<div class="spacer"></div>';\r
index 1a193078314093de40ae5b6287b00daa21687aee..f130bf2d01faf800c694acf5434733269d77a3a9 100644 (file)
@@ -6,8 +6,13 @@ class Cubedesigners_View_Helper_CasestudiesTagsList extends Zend_View_Helper_Abs
 \r
         $tagslist = Array();\r
 \r
-        foreach ($studies as $studie) {\r
-            $temp = explode(',', $studie["tags"]);\r
+        $db0 = Zend_Db_Table::getDefaultAdapter();\r
+        $s0 = $db0->select()->from('casestudies')\r
+                ->order('id ASC');\r
+        $q0 = $s0->query();\r
+\r
+        while ($r0 = $q0->fetch()) {\r
+            $temp = explode(',', $r0->tags);\r
 \r
             for ($i = 0; $i < count($temp); $i++) {\r
                 if (!in_array($temp[$i], $tagslist)) {\r
diff --git a/framework/application/views/scripts/studies/index.phtml b/framework/application/views/scripts/studies/index.phtml
new file mode 100644 (file)
index 0000000..4e331c2
--- /dev/null
@@ -0,0 +1,16 @@
+<?php\r
+$this->headScript()->addScriptAndStyle('casestudies');\r
+$this->headScript()->addScriptAndStyle('casestudies_detail');\r
+?>\r
+\r
+<div class="casestudies-detail-title"><?php echo $this->markupDotclear($this->titre); ?></div>\r
+\r
+<?php\r
+echo $this->CasestudiesDetail($this->studie);\r
+?>\r
+\r
+<div class="title"><?php echo $this->markupDotclear($this->casestudies_titre); ?></div>\r
+\r
+<div id="casestudies-list">\r
+    <?php echo $this->CasestudiesList($this->datas); ?>\r
+</div>
\ No newline at end of file
index 86d27b8ab0ee5b61c28c2adb6b78dfda2514e44c..f64145aee2ec578a0f44470b1417b577abe5f138 100644 (file)
@@ -1,7 +1,5 @@
 <?php\r
 $this->headScript()->addScriptAndStyle('casestudies');\r
-\r
-fb($this->studies);\r
 ?>\r
 \r
 <div class="title"><?php echo $this->markupDotclear($this->titre); ?></div>\r
@@ -12,6 +10,9 @@ fb($this->studies);
 \r
 \r
 <div id="casestudies-list">\r
-    <?php echo $this->CasestudiesList($this->studies); ?>\r
+    <?php\r
+    $datas = Bootstrap::getInstance()->getCMSDatasOfPage($this->id);\r
+    echo $this->CasestudiesList($datas);\r
+    ?>\r
 </div>\r
 \r
index 54dacd0f61a0bb4753f0ee49191f0038fc4b834c..578e0d08b1f239a200a1bf463430d18803577661 100644 (file)
@@ -7,7 +7,7 @@ function load_admin() {
 function initSelectType() {\r
     $( "select[data-name='selected-type']" ).each( function() {\r
         var cible = $(this).parent().parent();\r
-        displayFormTypeElements( cible, 'text' );\r
+        displayFormTypeElements( cible, this.value );\r
     });\r
     \r
     $(document).on("change", "select[data-name='selected-type']", function() {\r
@@ -17,13 +17,14 @@ function initSelectType() {
 }\r
 \r
 function displayFormTypeElements( cible, choice ) {\r
-    \r
+\r
     switch ( choice ) {\r
         case 'text' :\r
             cible.children(".elementwrap-titre").css("display","block");\r
             cible.children(".elementwrap-texte").css("display","block");\r
             cible.children(".elementwrap-visuel").css("display","none");\r
             cible.children(".elementwrap-video").css("display","none");\r
+            cible.children(".elementwrap-video_background").css("display","none");\r
         break;\r
             \r
         case 'visuel' :\r
@@ -31,6 +32,7 @@ function displayFormTypeElements( cible, choice ) {
             cible.children(".elementwrap-texte").css("display","none");\r
             cible.children(".elementwrap-visuel").css("display","block");\r
             cible.children(".elementwrap-video").css("display","none");\r
+            cible.children(".elementwrap-video_background").css("display","none");\r
         break;\r
         \r
         case 'video' :\r
@@ -38,6 +40,7 @@ function displayFormTypeElements( cible, choice ) {
             cible.children(".elementwrap-texte").css("display","none");\r
             cible.children(".elementwrap-visuel").css("display","none");\r
             cible.children(".elementwrap-video").css("display","block");\r
+            cible.children(".elementwrap-video_background").css("display","block");\r
         break;\r
     }\r
     \r
index 689846ee9a6bfe5acb6c8459b03919a770360445..1c1dcb17c9ad536faa6f31454c57cf76da438ea9 100644 (file)
     margin: 0 auto;
     padding: 0 0 50px 0;
     overflow: hidden;
-}
-
-#casestudies-list .bloc {    
+    
+    .bloc {    
     width:300px;
     float:left;
 }
 
-#casestudies-list .bloc .project-photo {
+a,a:hover {    
+    color:#000;
+}
+
+.bloc .project-photo {
     width:300px;
     height:225px;
     background-color: #ccc;
     margin:0 0 20px 0;
 }
 
-#casestudies-list .bloc .project-title {
+.bloc .project-title {
     font-size: 32px;
 }
-#casestudies-list .bloc .project-description {
+ .bloc .project-description {
     font-size: 14px;
     margin-bottom: 20px;
 }
 
-#casestudies-list .blocmargin {
+.blocmargin {
     margin-right:40px;
 }
-#casestudies-list .spacer {
+.spacer {
     clear: left;
     height:20px;
+}
+
+}
+
+
+/*.casestudies-detail-visuel {
+    width: 1200px;
+    margin: auto;
+}
+*/
+#casestudies-detail-content {
+    background-color: #3885E0;
 }
\ No newline at end of file
diff --git a/less/casestudies_detail.less b/less/casestudies_detail.less
new file mode 100644 (file)
index 0000000..75d5cde
--- /dev/null
@@ -0,0 +1,96 @@
+/* Case studies detail Title */\r
+.casestudies-detail-title {\r
+    min-width: 980px;\r
+    max-width: 980px;\r
+    width:100%;\r
+    margin: 0 auto;\r
+    padding: 50px 0px 50px 0;\r
+    font-size: 32px;\r
+}\r
+\r
+/* Case studies detail visuel */\r
+#casestudies-detail-visuel {\r
+    padding-bottom:50px;\r
+}\r
+\r
+#casestudies-detail-visuel a {\r
+    background-color: #3885e0;\r
+    border-radius: 2px;\r
+    padding: 5px 20px;\r
+    color:#fff;\r
+}\r
+\r
+#casestudies-detail-visuel a:hover,\r
+#casestudies-detail-visuel a:active {\r
+    background-color: #65a8f6;\r
+    color:#fff;\r
+}\r
+\r
+#casestudies-detail-visuel .visuel-holder {\r
+    min-width: 980px;\r
+    max-width: 980px;\r
+    width:100%;\r
+    margin: 0 auto;\r
+    overflow:hidden;\r
+}\r
+\r
+#casestudies-detail-visuel .visuel-holder .visuel {\r
+    width:980px;\r
+    height:400px;\r
+    padding-bottom: 20px;\r
+}\r
+\r
+\r
+#casestudies-detail-visuel .visuel-holder .legende {\r
+    font-size: 18px;\r
+    float:left;\r
+}\r
+\r
+#casestudies-detail-content {\r
+    text-align: center;\r
+    background-color: #0194d5;\r
+    padding: 50px 0 0px 0;\r
+}\r
+\r
+#casestudies-detail-content .detail-text {\r
+    color: #fff;\r
+    width:640px;\r
+    margin:auto;\r
+    //padding: 0px 0 50px 0;\r
+    position: relative;\r
+    z-index: 10;\r
+}\r
+\r
+#casestudies-detail-content .detail-text .titre {\r
+    font-size:32px;\r
+    padding-bottom: 20px;\r
+}\r
+\r
+#casestudies-detail-content .detail-text .texte {\r
+    font-size:18px;\r
+}\r
+\r
+#casestudies-detail-content .detail-visuel {\r
+    padding: 0px 0 50px 0;\r
+    z-index: 1;\r
+}\r
+\r
+#casestudies-detail-content .detail-video-background {\r
+    display: table;\r
+}\r
+\r
+\r
+#casestudies-detail-content .detail-video {\r
+    padding: 0px 0 50px 0;\r
+    position: relative;\r
+    z-index: 5;\r
+    text-align: center;\r
+    vertical-align: middle;\r
+    display: table-cell;\r
+}\r
+\r
+#casestudies-detail-content .detail-visuel {\r
+    width:100%;\r
+    background-position: 50%;\r
+    position: relative;\r
+}
\ No newline at end of file