Init du projet
This commit is contained in:
70
module/Application/config/module.config.php
Normal file
70
module/Application/config/module.config.php
Normal file
@ -0,0 +1,70 @@
|
||||
<?php
|
||||
/**
|
||||
* @link http://github.com/zendframework/ZendSkeletonApplication for the canonical source repository
|
||||
* @copyright Copyright (c) 2005-2016 Zend Technologies USA Inc. (http://www.zend.com)
|
||||
* @license http://framework.zend.com/license/new-bsd New BSD License
|
||||
*/
|
||||
|
||||
namespace Application;
|
||||
|
||||
use Zend\Router\Http\Literal;
|
||||
use Zend\Router\Http\Segment;
|
||||
use Zend\ServiceManager\Factory\InvokableFactory;
|
||||
|
||||
return [
|
||||
'router' => [
|
||||
'routes' => [
|
||||
'home' => [
|
||||
'type' => Literal::class,
|
||||
'options' => [
|
||||
'route' => '/',
|
||||
'defaults' => [
|
||||
'controller' => Controller\IndexController::class,
|
||||
'action' => 'index',
|
||||
],
|
||||
],
|
||||
],
|
||||
'contact' => [
|
||||
'type' => Literal::class,
|
||||
'options' => [
|
||||
'route' => '/contact',
|
||||
'defaults' => [
|
||||
'controller' => Controller\IndexController::class,
|
||||
'action' => 'contact',
|
||||
],
|
||||
],
|
||||
],
|
||||
'application' => [
|
||||
'type' => Segment::class,
|
||||
'options' => [
|
||||
'route' => '/application[/:action]',
|
||||
'defaults' => [
|
||||
'controller' => Controller\IndexController::class,
|
||||
'action' => 'index',
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
'controllers' => [
|
||||
'factories' => [
|
||||
Controller\IndexController::class => InvokableFactory::class,
|
||||
],
|
||||
],
|
||||
'view_manager' => [
|
||||
'display_not_found_reason' => true,
|
||||
'display_exceptions' => true,
|
||||
'doctype' => 'HTML5',
|
||||
'not_found_template' => 'error/404',
|
||||
'exception_template' => 'error/index',
|
||||
'template_map' => [
|
||||
'layout/layout' => __DIR__ . '/../view/layout/layout.tpl',
|
||||
'application/index/index' => __DIR__ . '/../view/application/index/index.tpl',
|
||||
'error/404' => __DIR__ . '/../view/error/404.tpl',
|
||||
'error/index' => __DIR__ . '/../view/error/index.tpl',
|
||||
],
|
||||
'template_path_stack' => [
|
||||
__DIR__ . '/../view',
|
||||
],
|
||||
],
|
||||
];
|
100
module/Application/src/Controller/IndexController.php
Normal file
100
module/Application/src/Controller/IndexController.php
Normal file
@ -0,0 +1,100 @@
|
||||
<?php
|
||||
/**
|
||||
* @link http://github.com/zendframework/ZendSkeletonApplication for the canonical source repository
|
||||
* @copyright Copyright (c) 2005-2016 Zend Technologies USA Inc. (http://www.zend.com)
|
||||
* @license http://framework.zend.com/license/new-bsd New BSD License
|
||||
*/
|
||||
|
||||
namespace Application\Controller;
|
||||
|
||||
use Zend\Mvc\Controller\AbstractActionController;
|
||||
use Zend\View\Model\JsonModel;
|
||||
use Zend\View\Model\ViewModel;
|
||||
use PHPMailer\PHPMailer\PHPMailer;
|
||||
use PHPMailer\PHPMailer\Exception;
|
||||
|
||||
class IndexController extends AbstractActionController
|
||||
{
|
||||
public function indexAction()
|
||||
{ $view = new ViewModel();
|
||||
return $view;
|
||||
}
|
||||
|
||||
public function contactAction()
|
||||
{
|
||||
$json = new JsonModel();
|
||||
|
||||
$retMessage = "Le server n'a pas pu envoyer le message. Veuillez réessayer plus tard.";
|
||||
$isEnvoye = FALSE;
|
||||
ini_set('SMTP', 'smtp.free.fr');
|
||||
|
||||
if(isset($_POST['name']) && isset($_POST['email']) && isset($_POST['subject']) && isset($_POST['message'])){
|
||||
$name = $_POST['name'];
|
||||
$email = $_POST['email'];
|
||||
$subject = $_POST['subject'];
|
||||
$message = nl2br($_POST['message']);
|
||||
$to = "nicolas.riault@gmail.com";
|
||||
$from = $email;
|
||||
$message_format = '<b>Nom:</b> '.$name.' <br><b>Email:</b> '.$email.' <p>'.$message.'</p>';
|
||||
$headers = "From: $from\n";
|
||||
$headers .= "MIME-Version: 1.0\n";
|
||||
$headers .= "content-type: text/html; charset=iso-8859-1\n";
|
||||
if(mail($to, $subject, $message_format, $headers)){
|
||||
$retMessage = "Le mail est envoyé.";
|
||||
$isEnvoye = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
/* if(isset($_POST['name']) && isset($_POST['email']) && isset($_POST['subject']) && isset($_POST['message'])){
|
||||
$name = $_POST['name'];
|
||||
$email = $_POST['email'];
|
||||
$subject = $_POST['subject'];
|
||||
$message = nl2br($_POST['message']);
|
||||
$to = "nicolas.riault@gmail.com";
|
||||
$from = $email;
|
||||
$message_format = '<b>Nom:</b> '.$name.' <br><b>Email:</b> '.$email.' <p>'.$message.'</p>';
|
||||
|
||||
$mail = new PHPMailer(); // Passing `true` enables exceptions
|
||||
try {
|
||||
//Server settings // Enable verbose debug output
|
||||
$mail->isSMTP(); // Set mailer to use SMTP
|
||||
$mail->Host = 'smtp.gmail.com'; // Specify main and backup SMTP servers
|
||||
$mail->SMTPAuth = true; // Enable SMTP authentication
|
||||
$mail->Username = $to; // SMTP username
|
||||
$mail->Password = 'Dpz9jou99'; // SMTP password
|
||||
$mail->SMTPSecure = 'tls'; // Enable TLS encryption, `ssl` also accepted
|
||||
$mail->Port = 587; // TCP port to connect to
|
||||
|
||||
//Recipients
|
||||
$mail->setFrom($from, 'Mailer');
|
||||
$mail->addReplyTo($to, 'Nicolas Riault');
|
||||
|
||||
//Content
|
||||
$mail->isHTML(true); // Set email format to HTML
|
||||
$mail->Subject = $subject;
|
||||
$mail->Body = $message_format;
|
||||
|
||||
$mail->send();
|
||||
$retMessage = "Le mail est envoyé.";
|
||||
$isEnvoye = TRUE;
|
||||
} catch (Exception $e) {
|
||||
|
||||
$retMessage = "Le server n'a pas pu envoyer le message." . $mail->ErrorInfo;
|
||||
$isEnvoye = FALSE;
|
||||
}
|
||||
}
|
||||
*/
|
||||
$result = array(
|
||||
'result' => array(
|
||||
'content' => array(
|
||||
'msg' => $retMessage,
|
||||
'statut' => $isEnvoye,
|
||||
),
|
||||
),
|
||||
'success' => $isEnvoye,
|
||||
);
|
||||
|
||||
$json->setVariables($result);
|
||||
return $json;
|
||||
}
|
||||
}
|
18
module/Application/src/Module.php
Normal file
18
module/Application/src/Module.php
Normal file
@ -0,0 +1,18 @@
|
||||
<?php
|
||||
/**
|
||||
* @link http://github.com/zendframework/ZendSkeletonApplication for the canonical source repository
|
||||
* @copyright Copyright (c) 2005-2016 Zend Technologies USA Inc. (http://www.zend.com)
|
||||
* @license http://framework.zend.com/license/new-bsd New BSD License
|
||||
*/
|
||||
|
||||
namespace Application;
|
||||
|
||||
class Module
|
||||
{
|
||||
const VERSION = '3.0.3-dev';
|
||||
|
||||
public function getConfig()
|
||||
{
|
||||
return include __DIR__ . '/../config/module.config.php';
|
||||
}
|
||||
}
|
53
module/Application/test/Controller/IndexControllerTest.php
Normal file
53
module/Application/test/Controller/IndexControllerTest.php
Normal file
@ -0,0 +1,53 @@
|
||||
<?php
|
||||
/**
|
||||
* @link http://github.com/zendframework/ZendSkeletonApplication for the canonical source repository
|
||||
* @copyright Copyright (c) 2005-2016 Zend Technologies USA Inc. (http://www.zend.com)
|
||||
* @license http://framework.zend.com/license/new-bsd New BSD License
|
||||
*/
|
||||
|
||||
namespace ApplicationTest\Controller;
|
||||
|
||||
use Application\Controller\IndexController;
|
||||
use Zend\Stdlib\ArrayUtils;
|
||||
use Zend\Test\PHPUnit\Controller\AbstractHttpControllerTestCase;
|
||||
|
||||
class IndexControllerTest extends AbstractHttpControllerTestCase
|
||||
{
|
||||
public function setUp()
|
||||
{
|
||||
// The module configuration should still be applicable for tests.
|
||||
// You can override configuration here with test case specific values,
|
||||
// such as sample view templates, path stacks, module_listener_options,
|
||||
// etc.
|
||||
$configOverrides = [];
|
||||
|
||||
$this->setApplicationConfig(ArrayUtils::merge(
|
||||
include __DIR__ . '/../../../../config/application.config.php',
|
||||
$configOverrides
|
||||
));
|
||||
|
||||
parent::setUp();
|
||||
}
|
||||
|
||||
public function testIndexActionCanBeAccessed()
|
||||
{
|
||||
$this->dispatch('/', 'GET');
|
||||
$this->assertResponseStatusCode(200);
|
||||
$this->assertModuleName('application');
|
||||
$this->assertControllerName(IndexController::class); // as specified in router's controller name alias
|
||||
$this->assertControllerClass('IndexController');
|
||||
$this->assertMatchedRouteName('home');
|
||||
}
|
||||
|
||||
public function testIndexActionViewModelTemplateRenderedWithinLayout()
|
||||
{
|
||||
$this->dispatch('/', 'GET');
|
||||
$this->assertQuery('.container .jumbotron');
|
||||
}
|
||||
|
||||
public function testInvalidRouteDoesNotCrash()
|
||||
{
|
||||
$this->dispatch('/invalid/route', 'GET');
|
||||
$this->assertResponseStatusCode(404);
|
||||
}
|
||||
}
|
537
module/Application/view/application/index/index.tpl
Normal file
537
module/Application/view/application/index/index.tpl
Normal file
@ -0,0 +1,537 @@
|
||||
|
||||
|
||||
<!--------------------------------------HEADER-------------------------------------->
|
||||
|
||||
<header id="main-header">
|
||||
<div class="header-wrapper">
|
||||
<a class="logo" href="#">Nicolas</a>
|
||||
|
||||
<div class="mobile-toggle">
|
||||
<span></span>
|
||||
<span></span>
|
||||
<span></span>
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<ul>
|
||||
<!--Main nav to navigate to different parts of the page-->
|
||||
<li><a id="hero-link" href="#hero">Accueil</a></li>
|
||||
<li><a id="about-link" href="#about">À propos </a></li>
|
||||
<li><a id="competences-link" href="#competences">Competences</a></li>
|
||||
<li><a id="experiences-link" href="#experiences">Experiences</a></li>
|
||||
<li><a id="engagement-link" href="#engagement">Engagements</a></li>
|
||||
<li><a id="contact-link" href="#contact">Contact</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<!--------------------------------------HERO IMAGE-------------------------------------->
|
||||
|
||||
|
||||
<section id="hero">
|
||||
<div id="particles-js">
|
||||
<div class="row center-xs center-sm center-md center-lg middle-xs middle-sm middle-md middle-lg">
|
||||
<div class="static col-xs-10 col-sm-10 col-md-10 col-lg-10">
|
||||
<div class="hero-content">
|
||||
<img src="img/profile-pic2.jpg">
|
||||
<h1>Nicolas Riault</h1>
|
||||
<h2 id="hero-text-animation">Web Developer Full Stack, Consultant IT</h2>
|
||||
<button class="download"><a download href="downloads/example.txt">Télécharger mon CV</a></button>
|
||||
<!--To add your file simply replace example.txt with whatever file you want-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!--------------------------------------ABOUT SECTION-------------------------------------->
|
||||
|
||||
<section id="about">
|
||||
<div class="container">
|
||||
<div class="row left-xs left-sm left-md left-lg">
|
||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||
<div class="about-text">
|
||||
<h2>Bonjour, je m'appelle <span class="accent-text">Nicolas</span></h2>
|
||||
<p>
|
||||
Ouvert et curieux de caractère, je suis à l’aise dans la relation client et apprécie le travail
|
||||
en équipe.
|
||||
J’aime ce travail de développeur qui nécessite une capacité d’adaptation et d’écoute au service
|
||||
d’un projet.
|
||||
<br>
|
||||
Du point de vue technique, je développe principalement en PHP, C#. Je suis également a l'aise
|
||||
avec SQL Server et la solution MSBI.
|
||||
<br>
|
||||
Sur mon temps libre je travaille sur des projets personnels que j'autilise au quotidien en
|
||||
utilisant de nouvelles technologies (AngularJs, Ionic ... ).
|
||||
</p>
|
||||
<ul class="about-social">
|
||||
<!--Social icons for the about section-->
|
||||
<!--These icons are font-awesome icons and more can be looked up at https://fontawesome.com/icons?d=gallery-->
|
||||
<li><a href="http://www.google.com"><i class="fab fa-facebook-f"></i></a></li>
|
||||
<!--Simply replace the google link with your social media link-->
|
||||
<li><a href="http://www.google.com"><i class="fab fa-twitter"></i></a></li>
|
||||
<li><a href="http://www.google.com"><i class="far fa-envelope"></i></a></li>
|
||||
<li><a href="http://www.google.com"><i class="fab fa-google-plus-g"></i></a></li>
|
||||
<li><a href="http://www.google.com"><i class="fab fa-youtube"></i></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||
<div class="about-resume">
|
||||
<div class="education">
|
||||
<h2>Cursus et certifications</h2>
|
||||
<div class="eduction-block">
|
||||
<h4>SQL Server 2014 Performance Tuning and Optimization</h4>
|
||||
<p>2017 - IB Formation - Paris</p>
|
||||
</div>
|
||||
<div class="eduction-block">
|
||||
<h4>Licence Professionelle logiciel libre et propriétaire</h4>
|
||||
<p>2012 - UFR Des Sciences - Angers</p>
|
||||
</div>
|
||||
<div class="eduction-block">
|
||||
<h4>BTS Informatique de Gestion</h4>
|
||||
<p>2011 - Lycée Chevrollier - Angers</p>
|
||||
</div>
|
||||
<div class="eduction-block">
|
||||
<h4>Lycée Notre Dame</h4>
|
||||
<p>2009 - Baccalauréat Scientifique - La Flèche</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!--------------------------------------COMPETENCES SECTION-------------------------------------->
|
||||
|
||||
<section id="competences">
|
||||
<div class="container">
|
||||
<div class="section-title">
|
||||
<h1>Mes <span class="accent-text">Compétences</span></h1>
|
||||
</div>
|
||||
<div class="row left-xs left-sm left-md left-lg">
|
||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||
<div class="about-resume">
|
||||
<div class="skills">
|
||||
<h2>Développement</h2>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>PHP</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent php">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>Javascript</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent php">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>HTML / CSS</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent html">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>.NET / C#</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent net">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||
<div class="about-resume">
|
||||
<div class="skills">
|
||||
<h2>SGBD / Business intelligence</h2>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>SQL Server</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent php">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>Microsoft BI</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent msbi">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>MySQL</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent mysql">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>PostgreSQL</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent postgresql">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row left-xs left-sm left-md left-lg">
|
||||
|
||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||
<div class="about-resume">
|
||||
<div class="skills">
|
||||
<h2>Autres</h2>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>MongoDb / CassandraDb</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent msbi">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>Python</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent msbi">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>NodeJs</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent mysql">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>AngularJS</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent mysql">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-progress-container">
|
||||
<p>Ionic Framework</p>
|
||||
<div class="skill-bar">
|
||||
<div class="bar-percent postgresql">
|
||||
<div class="inner-percent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!--------------------------------------EXPERIENCES SECTION-------------------------------------->
|
||||
|
||||
<section id="experiences" class="timeline">
|
||||
<div class="container">
|
||||
<div class="section-title">
|
||||
<h1>Mes <span class="accent-text">Experiences</span></h1>
|
||||
</div>
|
||||
<div class="timeline-item">
|
||||
<div class="timeline-img"></div>
|
||||
<div class="timeline-content js--fadeInLeft">
|
||||
<h3>Développeur Full Stack - Serveurcom</h3>
|
||||
<div class="date">12/2015 - Actuel</div>
|
||||
<p>
|
||||
Maintenance évolutive d'une application de facturation pour les télécoms.
|
||||
<br>
|
||||
Macro gestion de l'équipe de développement.
|
||||
<br>
|
||||
Formation Microsoft 55144B.
|
||||
</p>
|
||||
<a class="bnt-more" onclick="launchModale('#modalServeurcom')">Détail</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="timeline-item">
|
||||
<div class="timeline-img"></div>
|
||||
<div class="timeline-content js--fadeInRight">
|
||||
<h3>Consultant SI - Capgémini</h3>
|
||||
<div class="date">02/2013 - 11/2015</div>
|
||||
<p>
|
||||
Développeur référent pour une TMA pour le groupe La Poste.
|
||||
<br>
|
||||
<small><i>PHP(CakePhp), MSBI/Asp.NET ( SSAS, SSRS, SSIS)</i></small>
|
||||
<br>
|
||||
TMA pour le ministère des sports.
|
||||
<br>
|
||||
<small><i>.NET/MSBI</i></small>
|
||||
<br>
|
||||
TMA pour l'Agence nationale de la recherche.
|
||||
<br>
|
||||
<small><i>C#, ASP, Sharepoint</i></small>
|
||||
<br>
|
||||
</p>
|
||||
<a class="bnt-more" onclick="launchModale('#modalCapgemini')">Détail</a>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="timeline-item">
|
||||
<div class="timeline-img"></div>
|
||||
<div class="timeline-content js--fadeInLeft">
|
||||
<div class="date">04/2012 - 11/2012</div>
|
||||
<h3>Développeur - INRA</h3>
|
||||
<p>
|
||||
Développement d'une application web pour informatiser le métier des chercheurs.
|
||||
<br>
|
||||
<small><i>Qooxdoo, Python, PostgreSQL</i></small>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="timeline-item">
|
||||
<div class="timeline-img"></div>
|
||||
<div class="timeline-content js--fadeInRight">
|
||||
<h3>Développeur Web - Archimède</h3>
|
||||
<div class="date">06/2011 - 07/2011</div>
|
||||
<p>Developpement d'un site vitrine sous Joomla</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!--------------------------------------ENGAGEMENT SECTION-------------------------------------->
|
||||
|
||||
<section id="engagement">
|
||||
<div class="container">
|
||||
<div class="section-title">
|
||||
<h1>Mes <span class="accent-text">Engagements</span></h1>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row center-xs center-sm center-md center-lg trigger"><!--Row 1-->
|
||||
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4 hb vb">
|
||||
<div class="service-block">
|
||||
<i class="icon fas fa-code"></i>
|
||||
<h3>Web Development</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4 hb vb">
|
||||
<div class="service-block">
|
||||
<i class="icon fas fa-laptop"></i>
|
||||
<h3>Web Design</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4 hb vb">
|
||||
<div class="service-block">
|
||||
<i class="icon fas fa-mobile-alt"></i>
|
||||
<h3>Fully Responsive</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4 hb vb">
|
||||
<div class="service-block">
|
||||
<i class="icon far fa-file-alt"></i>
|
||||
<h3>Documentation</h3>
|
||||
<p>
|
||||
Analyse du besoin, qualification, chiffrage, rédaction des spécifications et des cahiers de
|
||||
test.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4 hb vb">
|
||||
<div class="service-block">
|
||||
<i class="icon far fa-copy"></i>
|
||||
<h3>Clean Coder</h3>
|
||||
<p>
|
||||
Adepte du manifeste "Software craftsmanship manifesto".
|
||||
<br>
|
||||
<small>
|
||||
<i>Pas seulement une application qui marche, mais une application bien faite, perreine,
|
||||
robuste, maintenable et évolutive. </i>
|
||||
</small>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4 hb vb">
|
||||
<div class="service-block">
|
||||
<i class="icon fas fa-cogs"></i>
|
||||
<h3>Support</h3>
|
||||
<p>Gestion du SAV, priorisation des tickets.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!--------------------------------------CONTACT SECTION-------------------------------------->
|
||||
|
||||
<section id="contact">
|
||||
<div class="container">
|
||||
<div class="section-title">
|
||||
<h1>Contactez <span class="accent-text">Moi</span></h1>
|
||||
</div>
|
||||
|
||||
<div class="row center-xs center-sm center-md center-lg">
|
||||
<div class="col-xs-12 col-sm-4 col-md-4 col-lg-4">
|
||||
<div class="contact-info">
|
||||
|
||||
<div class="contact-block">
|
||||
<i class="fas fa-mobile-alt"></i>
|
||||
<div class="contact-text">
|
||||
<p>Numéro :</p>
|
||||
<p>+33637290170</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="contact-block">
|
||||
<i class="far fa-envelope"></i>
|
||||
<div class="contact-text">
|
||||
<p>Email : </p>
|
||||
<p>nicolas.riault@gmail.com</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="contact-block">
|
||||
<i class="fas fa-location-arrow"></i>
|
||||
<div class="contact-text">
|
||||
<p>
|
||||
Addresse :
|
||||
</p>
|
||||
<p>
|
||||
90 boulevard de la butte
|
||||
72230 - Mulsanne
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12 col-sm-8 col-md-8 col-lg-8">
|
||||
<form id="contact-form" onsubmit="submitForm(); return false;">
|
||||
<div class="field">
|
||||
Nom<br>
|
||||
<input type="text" id="name" value="" required>
|
||||
</div>
|
||||
<div class="field">
|
||||
Email<br>
|
||||
<input type="text" id="email" value="" required>
|
||||
</div>
|
||||
<div class="field">
|
||||
Sujet<br>
|
||||
<input type="text" id="subject" value="" required>
|
||||
</div>
|
||||
<div class="field">
|
||||
Message<br>
|
||||
<textarea id="message" rows="10" cols="75"
|
||||
required></textarea>
|
||||
</div>
|
||||
<div class="field">
|
||||
<input type="submit" id="contact-submit" value="Envoyer"><span id="status"></span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!--------------------------------------MODALES LIST-------------------------------------->
|
||||
<div class="modal fade" id="modalServeurcom" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Développeur Full Stack - Serveurcom</h5>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>
|
||||
Reprise en interne puis maintenance évolutive d'une application de facturation
|
||||
Télécom développée par un prestataire externe.<br>
|
||||
Développements de plusieurs briques dont une refonte visuelle complète de
|
||||
l'application et la création de tableaux de bords complets dans le but de suivre
|
||||
l'activité de l'entreprise mais aussi permettre aux revendeurs de suivre leur
|
||||
activité.<br>
|
||||
Responsable de la tenue des performances et de l'optimisation des traitements de
|
||||
facturation sous SQL Server 2014.<br>
|
||||
Rédaction de spécifications fonctionnelles pour les évolutions, définition de
|
||||
roadmap pour planifier les besoins, macro gestion de l'équipe de développeurs et
|
||||
organisation de daily meetings pour gérer l’activité de l'équipe de développement.<br>
|
||||
Mise en place de JIRA pour gérer les taches de l'équipe.<br>
|
||||
<br>
|
||||
Formation Microsoft 55144B : "SQL Server 2014 Performance Tuning and
|
||||
Optimization"
|
||||
</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal fade" id="modalCapgemini" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Consultant SI - Capgémini</h5>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>
|
||||
Projet de TMA pour le groupe La Poste, Développeur référent <br>
|
||||
- 6 applications php, sous framework CakePhp<br>
|
||||
- 3 applications MSBI/Asp.NET ( SSAS, SSRS, SSIS)<br>
|
||||
- Outre le développement pur, j'ai régulièrement réalisé les conceptions techniques, la mise à jour
|
||||
des spécifications fonctionnelles, mais aussi la rédaction et le passage des campagnes de tests sous
|
||||
quality center.<br>
|
||||
-Communication régulière avec le client<br><br>
|
||||
|
||||
TMA pour le ministère des sports.<br>
|
||||
- Développeur en support pour 2 applications .NET/MSBI pour le ministère des sports.<br>
|
||||
- Réalisation de conception techniques, mise à jour des spécifications fonctionnelles, rédaction et
|
||||
passage des campagnes de tests sous quality center.<br><br>
|
||||
|
||||
Développeur - Projet de TMA pour l'ANR.<br>
|
||||
- Maintenance et évolution d'une application de gestion des demandes
|
||||
</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--------------------------------------FOOTER SECTION-------------------------------------->
|
||||
|
||||
<footer>
|
||||
<p>Copyright © 2018 bricho.com And Made With Love All Rights Reserved.</p>
|
||||
</footer>
|
5
module/Application/view/error/403.tpl
Normal file
5
module/Application/view/error/403.tpl
Normal file
@ -0,0 +1,5 @@
|
||||
|
||||
403
|
||||
|
||||
{*<h1>{$this->translate('Access forbidden')}</h1>
|
||||
<h2>{$this->message}</h2>*}
|
1
module/Application/view/error/404.tpl
Normal file
1
module/Application/view/error/404.tpl
Normal file
@ -0,0 +1 @@
|
||||
404
|
1
module/Application/view/error/index.tpl
Normal file
1
module/Application/view/error/index.tpl
Normal file
@ -0,0 +1 @@
|
||||
error
|
50
module/Application/view/layout/layout.tpl
Normal file
50
module/Application/view/layout/layout.tpl
Normal file
@ -0,0 +1,50 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Nicolas Riault</title>
|
||||
|
||||
<!--------------------------------------CSS-------------------------------------->
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.10/css/all.css"
|
||||
integrity="sha384-+d0P83n9kaQMCwj8F4RJB66tzIwOKmrdb46+porD/OvrJ+37WqIM7UoBtwHO6Nlg" crossorigin="anonymous">
|
||||
<link href="css/libs/flexboxgrid.css" rel="stylesheet">
|
||||
<link href="css/libs/bootstrap.css" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css?family=Dancing+Script|Roboto" rel="stylesheet">
|
||||
<link href="css/libs/owl.carousel.min.css" rel="stylesheet">
|
||||
<link href="css/libs/owl.theme.default.min.css" rel="stylesheet">
|
||||
<link href="css/libs/magnific-popup.css" rel="stylesheet">
|
||||
<link href="css/styles.css" type="text/css" rel="stylesheet"/>
|
||||
<link href="css/timeline.css" type="text/css" rel="stylesheet"/>
|
||||
<!--------------------------------------JS-------------------------------------->
|
||||
<script src="js/form.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<!--------------------------------------PRELOAD PAGE-------------------------------------->
|
||||
|
||||
<div id="preload-overlay">
|
||||
<div class="loader-frame">
|
||||
<div class="loader1" id="loader1"></div>
|
||||
<div class="loader2" id="loader2"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{$content}
|
||||
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
|
||||
<script src="https://unpkg.com/isotope-layout@3/dist/isotope.pkgd.min.js"></script>
|
||||
<script src="http://cdn.jsdelivr.net/particles.js/2.0.0/particles.min.js"></script>
|
||||
<script src="js/particles.js"></script>
|
||||
<script src="js/owl.carousel.min.js"></script>
|
||||
<script src="js/jquery.magnific-popup.js"></script>
|
||||
<script src="js/scrollmagic/minified/ScrollMagic.min.js"></script>
|
||||
<script src="js/scrollmagic/uncompressed/plugins/debug.addIndicators.js"></script>
|
||||
<script src="js/bootstrap.js"></script>
|
||||
<script src="js/main.js"></script>
|
||||
<!--<script src="js/timeline.js"></script>-->
|
||||
<script src="https://cdn.jsdelivr.net/scrollreveal.js/3.3.1/scrollreveal.min.js"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
Reference in New Issue
Block a user