GithubHelp home page GithubHelp logo

ludomon / resor Goto Github PK

View Code? Open in Web Editor NEW
1.0 3.0 0.0 12.67 MB

Plateforme de réservation de campings : projet d'études de l'Ecole Centrale de Lille

License: MIT License

ApacheConf 0.19% PHP 6.52% CSS 0.85% JavaScript 92.29% HTML 0.16%

resor's Introduction

Resor : plateforme de réservation de voyages

Ce projet est un petit projet d'études réalisé par des étudiants de l'Ecole Centrale de Lille. Le but est de réalises par petits groupes de 2 ou 3 un environnement composé de 4 acteurs :

  • Un site de camping qui propose des offres

  • Un site de réservation qui collecte les offres des campings et permet de réserver en ligne

  • Un site d'avis client

  • Un site d'analytics

Ce repository constitue la brique "plateforme de réservation en ligne"

  1. Installer ce projet en local

Environnement de développement

Pour pouvoir développer, installez un environnement de développement web sur votre machine. Sous windows, j'utilise WAMP : http://www.wampserver.com/

Je vous laisse Googler si vous êtes sous Linux ou Mac, et vous pouvez bien sur utiliser une autre méthode : autre logiciel, installation d'Apache/MySql/Php manuellemenet :)

S'inscrire dans GitHub

Créez un compte gratuit dans le site https://github.com. Il vous permettra de collaborer au projet à l'avenir.

Une fois que c'est fait, envoyez-moi un e-mail en m'indiquant votre pseudo : je vous rajouterai en tant que collaborateur du projet.

Installer git

Git vous permettra de collaborer au projet, de faire des modifications et de les enregistrer. C'est un gestionnaire de version très connu et très puissant !

Téléchargez le sur http://git-scm.com/ et installez-le. Vous aurez un nouveau programme appelé Git Bash, qui est (comme son nom l'indique) une console.

Utiliser Git

Pour vous former rapidement à git, je vous laisse une fois encore Googler :) La ligne de commande est assez rapide à prendre en main (comptez 30min-1h pour avoir fait le tour des principales fonctions)

N'oubliez pas de configurer git !

git config --global user.name "Pseudo" (celui que vous voulez, essayez de prendre un pseudo qui me permette de vous reconnaitre)

git config --global user.email "email" (OBLIGATOIREMENT l'e-mail que vous avez indiqué lors de la création de votre compte GitHub)

git config --global http.proxy http://proxy.ec-lille.fr:3128 (si vous êtes derrière un proxy, celui donné est celui d'ECL)

Télécharger le code source

On attaque enfin les étapes intéressantes :) Une fois que vous êtes associé au projet en tant que collaborateur, vous pouvez télécharger le code source.

Tout d'abord, il faut indiquer à git que vous souhaitez qu'il se souvienne de vos identifiants GitHub (si vous tenez à les saisir à chaque fois, n'exécutez pas cette étape)

git config --global credential.helper wincred

Ensuite, vous pouvez télécharger le code lui-même sur votre ordinateur :

cd /c/wamp/www (mettez-vous dans votre répertoire www, ici celui de WAMP)

git clone https://github.com/LudoZeGeek/Resor.git

Installer les dépendances

Pour installer les librairies requises par le projet, il vous faut installer composer (gestionnaire de dépendances PHP). Téléchargez-le et installez-le en allant sur http://getcomposer.org/

Une fois qu'il est installé, utilisez-le pour installer toutes les dépendances, en ouvrant une invite de commande Windows et en tapant les lignes suivantes :

cd C:\wamp\www\Resor (on se place dans le répertoire du projet)

composer install (télécharge les dépendances dans un dossier *vendor*)

Configurer le projet

Pour configurer le projet, vous devez copier-coller le fichier Resor/app/config/parameters.yml.dist et renomer la copie en parameters.yml

Ouvrez-le, et modifiez les paramètres de connexion à une base de données que vous devez créer, par exemple :

database_driver:   pdo_mysql
database_host:     127.0.0.1
database_port:     ~
database_name:     resor
database_user:     root
database_password: ~

Attention à ne pas supprimer le fichier parameters.yml.dist, sinon il sera supprimé du serveur !

Vous pouvez maintenant lire le site en vous rendant sur votre serveur local : http://localhost/Resor/web/app_dev.php dans un navigateur

  1. Vérifier votre configuration système

Avant de commencer à coder, vous pouvez vérifer que votre serveur local est bien cofiguré pour l'utilisation de Symfony2.

Ouvrez un terminal Windows et tapez les commandes suivantes :

cd C:\wamp\www\Resor

php app/check.php

Le script php renvoie 0 si toutes les obligations sont remplies, 1 sinon.

Depuis votre navigateur, accédez au script config.php pour savoir si vous avez des recommandations, afin de les appliquer :

http://localhost/Resor/web/config.php
  1. Collaborez au projet !

Vous pouvez maintenant collaborer au projet, essayez au maximum de respecter les bonnes pratiques de git : faites des commits courts et bien expliqués. Ca peut parraitre inutile, mais dans 3 mois si on veut s'y retrouver, on en aura besoin :)

Enjoy !

resor's People

Contributors

himmelarthur avatar ludomon avatar thibaulthaeberle avatar

Stargazers

Martin avatar

Watchers

James Cloos avatar  avatar  avatar

resor's Issues

Gérer les offres

Dans l'admin d'un camping, le propriétaire doit pouvoir ajouter, éditer, supprimer (sauf si une réservation est prévue) ses offres.

Mettre en place l'api

On a une api qui renvoie le planning d'un camping (cf Maxence)
On a une api qui permet d'ajouter une réservation (informer Maxence de la strucutre)

Make campings API

Generate a token by camping, which should be included in each request (home made security)
First API : POST a JSON object with all camping places
Second API : CRUD operations on reservations

Gérer le compte client

Pour réserver, il faut avoir un compte client
Un client peut éditer ses informations à tout moment

Interact with alfred

Camping registration -> get an id
Camping presentation -> display alfred data

Lieux intéressants

Un propriétaire de camping peut indiquer des lieux intéressants à proximité de son camping, et ça apparait dans les résultats de la recherche

Add Resor admin pages

An administrator can

  • see a list of campings
  • validate new campings
  • test campings api url

Use symfony2 security

A user can login, logout
Three roles : ROLE_ADMIN, ROLE_CAMPING, ROLE_USER
Secure admin pages with admin role

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.