Hacked By AnonymousFox

Current Path : /home/missmand/public_html/projet/
Upload File :
Current File : /home/missmand/public_html/projet/addProjet.php

<?php
	include '../lib/app/init.php';

	use Lib\Tool;
    use Cocur\Slugify\Slugify;
    use Lib\Upload;
    use Imagine\Gd\Imagine;
    use Imagine\Image\Box;
    use Imagine\Image\Point;
    use Gregwar\Captcha\CaptchaBuilder;
    use Lib\Newsletter;
    use Lib\Mail;
    use Lib\Utilisateur;

    $erreur = array();
    $nom = '';
    $utilisateurNom = '';
    $utilisateurPrenom = '';
    $utilisateurEmail = '';
    $creation = '';
    $effectif = '';
    $chiffre = '';
    $adresse = '';
    $telephone = '';
    $email = '';
    $video = '';
    $site = '';
    $twitter = '';
    $facebook = '';
    $linkedin = '';
    $instagram = '';;
    $tag = [];
    $resume = '';
    $description = '';
    $dirigeant = '';
    $activite = '';
    $objectif = '';
    $complementaire = '';

    /* Captcha */
    $builderRegister = new CaptchaBuilder();
    $builderRegister->build(180,50);

    /**
     * Formulaire
     */
    if(isset($_POST['add'])){

        /**
         * Variables de formulaire
         */
        $utilisateurNom = $_POST['utilisateurNom'];
        $utilisateurPrenom = $_POST['utilisateurPrenom'];
        $utilisateurEmail = $_POST['utilisateurEmail'];
        $nom = $_POST['nom'];
        $effectif = $_POST['effectif'];
        $chiffre = $_POST['chiffre'];
        $adresse = $_POST['adresse'];
        $telephone = $_POST['telephone'];
        $email = $_POST['email'];
        $video = $_POST['video'];
        $site = $_POST['site'];
        $twitter = $_POST['twitter'];
        $facebook = $_POST['facebook'];
        $linkedin = $_POST['linkedin'];
        $instagram = $_POST['instagram'];
        if(isset($_POST['tag'])) $tag = $_POST['tag'];
        $creation = $_POST['creation'];
        $resume = $_POST['resume'];
        $description = $_POST['description'];
        $dirigeant = $_POST['dirigeant'];
        $activite = $_POST['activite'];
        $objectif = $_POST['objectif'];
        $complementaire = $_POST['complementaire'];
        $cgu = (isset($_POST['cgu'])) ? 1 : 0;
        $newsletter = (isset($_POST['newsletter'])) ? 1 : 0;
        $code = $_POST['code'];

        /**
         * Erreurs
         */
        if(empty($utilisateurNom)) array_push($erreur, 'Veuillez compléter le champ "Votre nom"');
        if(empty($utilisateurPrenom)) array_push($erreur, 'Veuillez compléter le champ "Votre prénom"');
        if(empty($utilisateurEmail)) array_push($erreur, 'Veuillez compléter le champ "Votre adresse email"');
        else{
            if(!filter_var($utilisateurEmail, FILTER_VALIDATE_EMAIL)) array_push($erreur, 'Le format de l\'email n\'est pas bon');
        }
        if(empty($nom)) array_push($erreur, 'Veuillez compléter le champ "Nom du projet"');
        if(!empty($creation)){
            $creationEn = Tool::dateConvert($creation, 'fr=>en');
            if(!DateTime::createFromFormat('Y-m-d', $creationEn)) array_push($erreur, 'Le format de la date de création n\'est pas bon');
        }
        if(!empty($email)){
            if(!filter_var($email, FILTER_VALIDATE_EMAIL)) array_push($erreur, 'Le format de l\'email de contact n\'est pas bon');
        }
        if(!empty($site)){
            if(!filter_var($site, FILTER_VALIDATE_URL)) array_push($erreur, 'Le format de l\'url du site internet n\'est pas bonne');
        }
        if(!empty($twitter)){
            if(!filter_var($twitter, FILTER_VALIDATE_URL)) array_push($erreur, 'Le format de l\'url de twitter n\'est pas bonne');
        }
        if(empty($resume)) array_push($erreur, 'Veuillez compléter le champ "Résumé"');
        if(empty($description)) array_push($erreur, 'Veuillez compléter le champ "Description"');
        if(empty($dirigeant)) array_push($erreur, 'Veuillez compléter le champ "Dirigeants"');
        if(empty($activite)) array_push($erreur, 'Veuillez compléter le champ "Activité / Savoir faire"');
        if(!$cgu) array_push($erreur,'Veuillez compléter le champ "Acceptation CGU"');
        if(empty($code)) array_push($erreur, 'Veuillez compléter le champ "Confirmer le code"');
        else
            if($code != $_SESSION['builderRegister']) array_push($erreur, 'Le code de confirmation n\'est pas bon');

        /* Le logo */
        if ($_FILES['logo']['error'] === UPLOAD_ERR_OK){
            $logo = Upload::postFichier($_FILES['logo'],'Logo',2000000,array('jpg','jpeg','png'),array('mi',150,150));
        }

        /* L'image 1 */
        if ($_FILES['image1']['error'] === UPLOAD_ERR_OK){
            $image1 = Upload::postFichier($_FILES['image1'],'L\'image 1',5000000,array('jpg','jpeg','png'),array('mi',640,480));
        }

        /* L'image 2 */
        if ($_FILES['image2']['error'] === UPLOAD_ERR_OK){
            $image2 = Upload::postFichier($_FILES['image2'],'L\'image 2',5000000,array('jpg','jpeg','png'),array('mi',640,480));
        }

        /* L'image 3 */
        if ($_FILES['image3']['error'] === UPLOAD_ERR_OK){
            $image3 = Upload::postFichier($_FILES['image3'],'L\'image 3',5000000,array('jpg','jpeg','png'),array('mi',640,480));
        }

        /**
         * Si aucune erreur alors
         */
        if(empty($erreur)){

            $slugify = new Slugify();

            /**
             * Ajout du projet en base de donnée
             */
            $sql = $bdd->prepare("INSERT INTO projet 
                                      (
                                        projetCreated,
                                        projetNom,
                                        projetSlug,
                                        projetUtilisateurNom,
                                        projetUtilisateurPrenom,
                                        projetUtilisateurEmail,
                                        projetCreation,
                                        projetEffectif,
                                        projetChiffre,
                                        projetAdresse,
                                        projetTelephone,
                                        projetEmail,
                                        projetVideo,
                                        projetSite,
                                        projetTwitter,
                                        projetFacebook,
                                        projetLinkedin,
                                        projetInstagram,
                                        projetTag,
                                        projetLogo,
                                        projetImage1,
                                        projetImage2,
                                        projetImage3,
                                        projetResume,
                                        projetDescription,
                                        projetDirigeant,
                                        projetActivite,
                                        projetObjectif,
                                        projetComplementaire,
                                        projetAvant,
                                        projetCgu,
                                        projetEtat,
                                        projetMetaTitle,
                                        projetMetaDescription
                                      )
                                      VALUES 
                                      (
                                        :created,
                                        :nom ,
                                        :slug,
                                        :utilisateurNom,
                                        :utilisateurPrenom,
                                        :utilisateurEmail,
                                        :creation,
                                        :effectif,
                                        :chiffre,
                                        :adresse,
                                        :telephone,
                                        :email,
                                        :video,
                                        :site,
                                        :twitter,
                                        :facebook,
                                        :linkedin,
                                        :instagram,
                                        :tag,
                                        :logo,
                                        :image1,
                                        :image2,
                                        :image3,
                                        :resume,
                                        :description,
                                        :dirigeant,
                                        :activite,
                                        :objectif,
                                        :complementaire,
                                        :avant,
                                        :cgu,
                                        :etat,
                                        :metaTitle,
                                        :metaDescription
                                      ) ");

            $sql->execute(array(
                    'created' => Tool::dateTime('Y-m-d H:i'),
                    'nom' => $_POST['nom'],
                    'slug' => $slugify->slugify($_POST['nom']),
                    'utilisateurNom' => $_POST['utilisateurNom'],
                    'utilisateurPrenom' => $_POST['utilisateurPrenom'],
                    'utilisateurEmail' => $_POST['utilisateurEmail'],
                    'creation' => (isset($creationEn)) ? $creationEn : null,
                    'effectif' => (!empty($_POST['effectif'])) ? $_POST['effectif'] : null,
                    'chiffre' => (!empty($_POST['chiffre'])) ? $_POST['chiffre'] : null,
                    'adresse' => (!empty($_POST['adresse'])) ? $_POST['adresse'] : null,
                    'telephone' => (!empty($_POST['telephone'])) ? $_POST['telephone'] : null,
                    'email' => (!empty($_POST['email'])) ? $_POST['email'] : null,
                    'video' => (!empty($_POST['video'])) ? $_POST['video'] : null,
                    'site' => (!empty($_POST['site'])) ? $_POST['site'] : null,
                    'twitter' => (!empty($_POST['twitter'])) ? $_POST['twitter'] : null,
                    'facebook' => (!empty($_POST['facebook'])) ? $_POST['facebook'] : null,
                    'linkedin' => (!empty($_POST['linkedin'])) ? $_POST['linkedin'] : null,
                    'instagram' => (!empty($_POST['instagram'])) ? $_POST['instagram'] : null,
                    'tag' => (!empty($tag)) ? implode(',',$tag) : null,
                    'logo' => (isset($logo)) ? $logo : null,
                    'image1' => (isset($image1)) ? $image1 : null,
                    'image2' => (isset($image2)) ? $image2 : null,
                    'image3' => (isset($image3)) ? $image3 : null,
                    'resume' => $_POST['resume'],
                    'description' => $_POST['description'],
                    'dirigeant' => $_POST['dirigeant'],
                    'activite' => $_POST['activite'],
                    'objectif' => (!empty($_POST['objectif'])) ? $_POST['objectif'] : null,
                    'complementaire' => (!empty($_POST['complementaire'])) ? $_POST['complementaire'] : null,
                    'avant' => 0,
                    'cgu' => $cgu,
                    'etat' => 0,
                    'metaTitle' => $_POST['nom'],
                    'metaDescription' => Tool::tronquer($_POST['description'],250)
                )
            );

            /* Upload du logo */
            if(isset($logo)){
                $imagine = new Imagine();

                /* Image de base */
                $size = new Box(200,200);
                $thumb = $imagine->open($_FILES['logo']['tmp_name'])
                    ->thumbnail($size, 'inset');

                $thumbSize = $thumb->getSize();
                $thumbHeight = $thumbSize->getHeight();
                $thumbWidth = $thumbSize->getWidth();

                $preserve = $imagine->create($size);
                $startX = $startY = 0;

                if($thumbWidth < 200)  $startX = (200 - $thumbWidth) / 2;
                if($thumbHeight < 200)  $startY = (200 - $thumbHeight) / 2;

                $preserve->paste($thumb, new Point($startX, $startY))->save('../img/projet/logo/'.$logo);
            }

            /* Upload de l'image 1 */
            if(isset($image1)){
                $imagine = new Imagine();

                /* Image de base */
                $size = new Box(1024,768);
                $imagine->open($_FILES['image1']['tmp_name'])
                    ->thumbnail($size, 'inset')
                    ->save('../img/projet/tmp/'.$image1);

                /* Miniature */
                $size = new Box(600,300);
                $imagine->open($_FILES['image1']['tmp_name'])
                    ->thumbnail($size, 'outbound')
                    ->save('../img/projet/miniature/'.$image1);
            }

            /* Upload de l'image 2 */
            if(isset($image2)){
                $imagine = new Imagine();

                /* Image de base */
                $size = new Box(1024,768);
                $imagine->open($_FILES['image2']['tmp_name'])
                    ->thumbnail($size, 'inset')
                    ->save('../img/projet/tmp/'.$image2);

                /* Miniature */
                $size = new Box(600,300);
                $imagine->open($_FILES['image2']['tmp_name'])
                    ->thumbnail($size, 'outbound')
                    ->save('../img/projet/miniature/'.$image2);
            }

            /* Upload de l'image 3 */
            if(isset($image3)){
                $imagine = new Imagine();

                /* Image de base */
                $size = new Box(1024,768);
                $imagine->open($_FILES['image3']['tmp_name'])
                    ->thumbnail($size, 'inset')
                    ->save('../img/projet/tmp/'.$image3);

                /* Miniature */
                $size = new Box(600,300);
                $imagine->open($_FILES['image3']['tmp_name'])
                    ->thumbnail($size, 'outbound')
                    ->save('../img/projet/miniature/'.$image3);
            }

            /* Inscription  à la newsletter */
            if($newsletter) Newsletter::addNewsletter($utilisateurEmail);

            /* Notification */
            $adminUtilisateur = Utilisateur::getAdminGeneral();
            Mail::sendSimpletHtml(
                'Formulaire d\'ajout de projet',
                array('contact@colocarts.com'),
                $adminUtilisateur,
                'Un nouveau projet à été ajouté sur le site Miss Mandarine',
                'Une nouvelle fiche projet a été soumise sur Miss Mandarine. Connectez-vous à l’administration du site pour la mettre en ligne !'
            );

            /* Succès + redirection */
            Tool::setFlash('Projet enregistré avec succès');

            /* Redirection */
            header('location:'.BASEFRONT);

        }

    }

?>
<!doctype html>
<html lang="fr">

<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width; initial-scale=1;">
	<title>Ajouter un projet</title>
	<link rel="icon" type="image/png" href="<?= BASEFRONT ?>img/layout/favicon.png">
    <link href="<?= BASEFRONT ?>js/datedropper/datedropper.min.css" rel="stylesheet" type="text/css">
    <link href="<?= BASEFRONT ?>js/datedropper/my-style.css" rel="stylesheet" type="text/css">
	<link href="<?= BASEFRONT ?>css/app.css" rel="stylesheet" type="text/css">
</head>

<body class="addProjet">

    <main class="main">

        <?php include'../include/header.php'; ?>

        <div class="contenuTop">
            <div class="inner">
                <div class="contenuTopLeft">
                    <h1>Ajouter<br>un projet</h1>
                    <p>Vous êtes une startup ? Vous souhaitez vous faire connaitre, gagner en visibilité, partager vos problématiques et rencontrer des partenaires ? Parlez-nous de vous, nous parlerons de vous !</p>
                </div>

                <div class="contenuTopRight">
                    <h2>Informations vous concernant</h2>

                    <form action="#" method="post">
                        <div class="form-group">
                            <input type="text" name="utilisateurNom" class="form-elem" placeholder="Votre nom *" value="<?= $utilisateurNom ?>">
                        </div>

                        <div class="form-group">
                            <input type="text" name="utilisateurPrenom" class="form-elem" placeholder="Votre prénom *" value="<?= $utilisateurPrenom ?>">
                        </div>

                        <div class="form-group">
                            <input type="text" name="utilisateurEmail" class="form-elem" placeholder="Votre adresse email *" value="<?= $utilisateurEmail ?>">
                        </div>
                    </form>
                </div>

                <div class="clear"></div>
            </div>
        </div>

        <section class="section28">
            <div class="inner">

                <div class="section28Header">
                    <h2>Informations concernant votre projet</h2>
                    <p>Veuillez remplir les informations demandées ci-dessous</p>
                </div>

                <?php
                    if(!empty($erreur)){ Tool::getMessage($erreur, 'erreur'); }
                ?>

                <form action="#header" method="post" enctype="multipart/form-data">

                    <div class="section28Left">

                        <div class="form-group">
                            <label>Nom du projet *</label>
                            <input type="text" name="nom" value="<?= $nom ?>" class="form-elem big">
                        </div>

                        <input type="hidden" name="utilisateurNom" value="<?= $utilisateurNom ?>" class="form-elem big">
                        <input type="hidden" name="utilisateurPrenom" value="<?= $utilisateurPrenom ?>" class="form-elem big">
                        <input type="hidden" name="utilisateurEmail" value="<?= $utilisateurEmail ?>" class="form-elem big">

                        <div class="form-group">
                            <label>Date de création</label>
                            <input type="text" name="creation" value="<?php echo $creation ?>" class="form-elem big dateDropper" data-lang="fr" data-large-default="true" data-large-mode="true" data-theme="my-style" data-format="d-m-Y" data-init-set="false">
                        </div>

                        <div class="form-group">
                            <label>Effectifs</label>
                            <input type="text" name="effectif" value="<?= $effectif ?>" class="form-elem big">
                        </div>

                        <div class="form-group">
                            <label>Chiffre d'affaire</label>
                            <input type="text" name="chiffre" value="<?= $chiffre ?>" class="form-elem big">
                        </div>

                        <div class="form-group">
                            <label>Adresse</label>
                            <input type="text" name="adresse" value="<?= $adresse ?>" class="form-elem big">
                        </div>

                        <div class="form-group">
                            <label>Téléphone</label>
                            <input type="text" name="telephone" value="<?= $telephone ?>" class="form-elem big">
                        </div>

                        <div class="form-group">
                            <label>Email de contact</label>
                            <input type="text" name="email" value="<?= $email ?>" class="form-elem big">
                        </div>

                        <div class="form-group">
                            <label>Vidéo</label>
                            <input type="text" name="video" value="<?= $video ?>" class="form-elem big">
                            <div class="form-legende">
                                Uniquement le code de la vidéo<br>ex : https://www.youtube.com/watch?v=<strong>imtPF2b2Q4M</strong><br>(la partie en gras)
                            </div>
                        </div>

                        <div class="form-group">
                            <label>Site internet</label>
                            <input type="text" name="site" value="<?= $site ?>" class="form-elem big" placeholder="http://...">
                        </div>

                        <div class="form-group">
                            <label>Twitter</label>
                            <input type="text" name="twitter" value="<?= $twitter ?>" class="form-elem big" placeholder="http://...">
                        </div>

                        <div class="form-group">
                            <label>Facebook</label>
                            <input type="text" name="facebook" value="<?= $facebook ?>" class="form-elem big" placeholder="http://...">
                        </div>

                        <div class="form-group">
                            <label>Linkedin</label>
                            <input type="text" name="linkedin" value="<?= $linkedin ?>" class="form-elem big" placeholder="http://...">
                        </div>

                        <div class="form-group">
                            <label>Instagram</label>
                            <input type="text" name="instagram" value="<?= $instagram ?>" class="form-elem big" placeholder="http://...">
                        </div>

                        <div class="form-group">
                            <label>Logo</label>
                            <input type="file" name="logo" class="form-elem big">
                            <div class="form-legende">
                                Taille minimum: 150px de largeur et 150px de hauteur<br>
                                Poid maximum : 2Mo<br>
                                Format : jpg, jpeg, png
                            </div>
                        </div>

                        <div class="form-group">
                            <label>L'image 1</label>
                            <input type="file" name="image1" class="form-elem big">
                            <div class="form-legende">
                                Taille minimum: 640px de largeur et 480px de hauteur<br>
                                Poid maximum : 5Mo<br>
                                Format : jpg, jpeg, png
                            </div>
                        </div>

                        <div class="form-group">
                            <label>L'image 2</label>
                            <input type="file" name="image2" class="form-elem big">
                            <div class="form-legende">
                                Taille minimum: 640px de largeur et 480px de hauteur<br>
                                Poid maximum : 5Mo<br>
                                Format : jpg, jpeg, png
                            </div>
                        </div>

                        <div class="form-group">
                            <label>L'image 3</label>
                            <input type="file" name="image3" class="form-elem big">
                            <div class="form-legende">
                                Taille minimum: 640px de largeur et 480px de hauteur<br>
                                Poid maximum : 5Mo<br>
                                Format : jpg, jpeg, png
                            </div>
                        </div>

                    </div>

                    <div class="section28Right">

                        <div class="form-group">
                            <label>Résumé *</label>
                            <textarea name="resume" class="form-elem big"><?= $resume ?></textarea>
                        </div>

                        <div class="form-group">
                            <label>Description *</label>
                            <textarea name="description" class="form-elem big wysiwyg"><?= $description ?></textarea>
                        </div>

                        <div class="form-group">
                            <label>Dirigeants *</label>
                            <textarea name="dirigeant" class="form-elem big wysiwyg"><?= $dirigeant ?></textarea>
                        </div>

                        <div class="form-group">
                            <label>Activité / Savoir faire *</label>
                            <textarea name="activite" class="form-elem big wysiwyg"><?= $activite ?></textarea>
                        </div>

                        <div class="form-group">
                            <label>Objectifs / Besoins</label>
                            <textarea name="objectif" class="form-elem big wysiwyg"><?= $objectif ?></textarea>
                        </div>

                        <div class="form-group">
                            <label>Eléments complémentaires</label>
                            <textarea name="complementaire" class="form-elem big wysiwyg"><?= $complementaire ?></textarea>
                        </div>

                        <div class="form-group">
                            <label>Tags</label>
                            <div class="liste big">
                                <?php
                                $sql = $bdd->query("SELECT * FROM tag
                                                        ORDER BY tagNom ASC ");
                                while($data = $sql->fetchObject()){
                                    $checked = (in_array($data->tagId, $tag)) ? 'checked' : '';

                                    echo'<p><span class="elem-checkbox orange '.$checked.'" data-name="tag'.$data->tagId.'"></span>  '.$data->tagNom.'</p>';
                                    echo'<input type="checkbox" name="tag[]" class="hidden" data-name="tag'.$data->tagId.'" value="'.$data->tagId.'" '.$checked.'>';
                                }
                                ?>
                            </div>
                        </div>

                        <div class="form-group">
                            <p><span class="elem-checkbox vert <?= (isset($cgu) && $cgu) ? 'checked' : '' ?>" data-name="cgu"></span> J’accepte les conditions générales d'utilisation *</p>
                            <input type="checkbox" class="hidden" name="cgu" data-name="cgu" <?= (isset($cgu) && $cgu) ? 'checked' : '' ?> >
                        </div>

                        <div class="form-group">
                            <p><span class="elem-checkbox vert <?= (isset($newsletter) && $newsletter) ? 'checked' : '' ?>" data-name="newsletter"></span>  Je souhaite m’inscrire à la newsletter de Miss Mandarine et ses partenaires.</p>
                            <input type="checkbox" class="hidden" name="newsletter" data-name="newsletter" <?= (isset($newsletter) && $newsletter) ? 'checked' : '' ?>>
                        </div>

                        <div class="form-group">
                            <img src="<?= $builderRegister->inline(); ?>">
                            <?php $_SESSION['builderRegister'] = $builderRegister->getPhrase(); ?>
                        </div>

                        <div class="form-group">
                            <label>Confirmer le code *</label>
                            <input type="text" name="code" class="form-elem">
                        </div>

                        <button name="add" type="submit" class="form-submit orange medium">Envoyer votre projet</button>

                        <div class="form-mention">
                            <p>* Champs obligatoires</p>
                        </div>

                    </div>

                    <div class="clear"></div>

                </form>

            </div>
        </section>

        <?php include'../include/footer.php'; ?>

    </main>

	<script type="text/javascript" src="<?= BASEFRONT ?>js/jquery/jquery.js"></script>
    <script type="text/javascript" src="<?= BASEFRONT ?>js/datedropper/datedropper.min.js"></script>
	<script type="text/javascript" src="<?= BASEFRONT ?>js/app.js"></script>
    <script type="text/javascript" src="<?= BASEFRONT ?>js/form.js"></script>

</body>
</html>

Hacked By AnonymousFox1.0, Coded By AnonymousFox