├── .browserslistrc ├── .editorconfig ├── .eslintrc.js ├── .gitignore ├── README.md ├── babel.config.js ├── jsconfig.json ├── package-lock.json ├── package.json ├── public ├── favicon.ico ├── index.html └── store │ ├── capuche.jpg │ ├── hoodi.jpg │ ├── hoodie.jpg │ ├── maryoul.jpg │ ├── socks_blue.jpg │ ├── socks_green.jpg │ ├── switer.PNG │ ├── t-shirt (2).jpg │ ├── t-shirt (3).jpg │ ├── t-shirt (4).jpg │ └── t-shirt.jpg ├── src ├── App.vue ├── assets │ ├── contact.png │ ├── hero-bg.png │ ├── intro.jpg │ └── logo.png ├── components │ ├── Eventcard.vue │ ├── PreloaderPage.vue │ ├── all_products.vue │ ├── contact.vue │ ├── navbar.vue │ └── toast.vue ├── main.js ├── router │ └── index.js ├── services │ └── EventService.js └── views │ ├── AboutView.vue │ ├── EventdetailsView.vue │ ├── HomeView.vue │ ├── TestEventView.vue │ └── contact.vue └── vue.config.js /.browserslistrc: -------------------------------------------------------------------------------- 1 | > 1% 2 | last 2 versions 3 | not dead 4 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig is awesome: https://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | [*] 7 | indent_style = space 8 | indent_size = 4 9 | end_of_line = crlf 10 | charset = utf-8 11 | trim_trailing_whitespace = false 12 | insert_final_newline = false -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | node: true 5 | }, 6 | 'extends': [ 7 | 'plugin:vue/essential', 8 | ], 9 | rules: { 10 | 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off', 11 | "vue/multi-word-component-names": "off", 12 | 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off' 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | 6 | # local env files 7 | .env.local 8 | .env.*.local 9 | 10 | # Log files 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # Editor directories and files 17 | .idea 18 | .vscode 19 | *.suo 20 | *.ntvs* 21 | *.njsproj 22 | *.sln 23 | *.sw? 24 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # projet_sem1_vuejs 2 | 3 | ## Project setup 4 | ``` 5 | npm install 6 | ``` 7 | 8 | ### Compiles and hot-reloads for development 9 | ``` 10 | npm run serve 11 | ``` 12 | 13 | ### Compiles and minifies for production 14 | ``` 15 | npm run build 16 | ``` 17 | 18 | ### Lints and fixes files 19 | ``` 20 | npm run lint 21 | ``` 22 | 23 | ### Customize configuration 24 | See [Configuration Reference](https://cli.vuejs.org/config/). 25 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es5", 4 | "module": "esnext", 5 | "baseUrl": "./", 6 | "moduleResolution": "node", 7 | "paths": { 8 | "@/*": [ 9 | "src/*" 10 | ] 11 | }, 12 | "lib": [ 13 | "esnext", 14 | "dom", 15 | "dom.iterable", 16 | "scripthost" 17 | ] 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "projet_sem1_vuejs", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "serve": "vue-cli-service serve", 7 | "build": "vue-cli-service build", 8 | "lint": "vue-cli-service lint" 9 | }, 10 | "dependencies": { 11 | "axios": "^1.1.3", 12 | "bootstrap": "^5.2.2", 13 | "core-js": "^3.8.3", 14 | "jquery": "^3.6.1", 15 | "jspdf": "^2.5.1", 16 | "jspdf-autotable": "^3.5.25", 17 | "vue": "^2.6.14", 18 | "vue-confetti": "^2.3.0", 19 | "vue-router": "^3.5.1" 20 | }, 21 | "devDependencies": { 22 | "@babel/core": "^7.12.16", 23 | "@babel/eslint-parser": "^7.12.16", 24 | "@vue/cli-plugin-babel": "~5.0.0", 25 | "@vue/cli-plugin-eslint": "~5.0.0", 26 | "@vue/cli-plugin-router": "~5.0.0", 27 | "@vue/cli-service": "~5.0.0", 28 | "eslint": "^7.32.0", 29 | "eslint-plugin-vue": "^8.0.3", 30 | "sass": "^1.32.7", 31 | "sass-loader": "^12.0.0", 32 | "vue-template-compiler": "^2.6.14" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/favicon.ico -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | <%= htmlWebpackPlugin.options.title %> 9 | 10 | 11 | 14 |
15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /public/store/capuche.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/capuche.jpg -------------------------------------------------------------------------------- /public/store/hoodi.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/hoodi.jpg -------------------------------------------------------------------------------- /public/store/hoodie.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/hoodie.jpg -------------------------------------------------------------------------------- /public/store/maryoul.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/maryoul.jpg -------------------------------------------------------------------------------- /public/store/socks_blue.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/socks_blue.jpg -------------------------------------------------------------------------------- /public/store/socks_green.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/socks_green.jpg -------------------------------------------------------------------------------- /public/store/switer.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/switer.PNG -------------------------------------------------------------------------------- /public/store/t-shirt (2).jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/t-shirt (2).jpg -------------------------------------------------------------------------------- /public/store/t-shirt (3).jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/t-shirt (3).jpg -------------------------------------------------------------------------------- /public/store/t-shirt (4).jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/t-shirt (4).jpg -------------------------------------------------------------------------------- /public/store/t-shirt.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/public/store/t-shirt.jpg -------------------------------------------------------------------------------- /src/App.vue: -------------------------------------------------------------------------------- 1 | 11 | 22 | 39 | -------------------------------------------------------------------------------- /src/assets/contact.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/src/assets/contact.png -------------------------------------------------------------------------------- /src/assets/hero-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/src/assets/hero-bg.png -------------------------------------------------------------------------------- /src/assets/intro.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/src/assets/intro.jpg -------------------------------------------------------------------------------- /src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/projet_sem1_vuejs/bad5bc4fd26ebcb266e3cc4045b83669fda0d228/src/assets/logo.png -------------------------------------------------------------------------------- /src/components/Eventcard.vue: -------------------------------------------------------------------------------- 1 | 42 | 43 | 69 | 70 | 71 | 74 | -------------------------------------------------------------------------------- /src/components/PreloaderPage.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 26 | 27 | -------------------------------------------------------------------------------- /src/components/all_products.vue: -------------------------------------------------------------------------------- 1 | 170 | 171 | 172 | 279 | 280 | 281 | -------------------------------------------------------------------------------- /src/components/contact.vue: -------------------------------------------------------------------------------- 1 | 90 | 91 | 133 | 134 | -------------------------------------------------------------------------------- /src/components/navbar.vue: -------------------------------------------------------------------------------- 1 | 22 | 23 | -------------------------------------------------------------------------------- /src/components/toast.vue: -------------------------------------------------------------------------------- 1 | 10 | 15 | -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import App from './App.vue' 3 | import router from './router' 4 | import "bootstrap"; 5 | import "bootstrap/dist/css/bootstrap.min.css"; 6 | import "bootstrap/js/dist/offcanvas"; 7 | import "bootstrap/js/dist/alert"; 8 | import "bootstrap/js/dist/modal"; 9 | import "bootstrap/js/dist/dropdown"; 10 | 11 | /*global.jQuery = require('jquery'); 12 | var $ = global.jQuery; 13 | window.$ = $;*/ 14 | 15 | Vue.config.productionTip = false 16 | 17 | new Vue({ 18 | router, 19 | render: h => h(App) 20 | }).$mount('#app') 21 | -------------------------------------------------------------------------------- /src/router/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import VueRouter from 'vue-router' 3 | import HomeView from '../views/HomeView.vue' 4 | import contact from '../views/contact.vue' 5 | import testEvent from '../views/TestEventView.vue' 6 | import eventbyid from '../views/EventdetailsView' 7 | Vue.use(VueRouter) 8 | 9 | const routes = [ 10 | { 11 | path: '/', 12 | name: 'home', 13 | component: HomeView 14 | }, 15 | { 16 | path:'/contact', 17 | name:'contact', 18 | component:contact 19 | }, 20 | { 21 | path: '/about', 22 | name: 'about', 23 | component: () => import('../views/AboutView.vue') 24 | }, 25 | { 26 | path:"/event/:id", 27 | name:'event', 28 | component:eventbyid 29 | }, 30 | { 31 | path: '/testevent', 32 | name: 'testEvent', 33 | component: testEvent 34 | }, 35 | ] 36 | 37 | const router = new VueRouter({ 38 | mode: 'history', 39 | base: process.env.BASE_URL, 40 | routes 41 | }) 42 | 43 | export default router 44 | -------------------------------------------------------------------------------- /src/services/EventService.js: -------------------------------------------------------------------------------- 1 | 2 | import axios from "axios"; 3 | 4 | const ApiClient=axios.create({ 5 | baseURL:'https://my-json-server.typicode.com/TalelMejri/api_calls', 6 | withCredentials:false, 7 | headers:{ 8 | accept:"application/json", 9 | "content-type":"application/json" 10 | }, 11 | }) 12 | 13 | export default{ 14 | getEvents(){ 15 | return ApiClient.get('/events'); 16 | }, 17 | 18 | getEventByid(id){ 19 | return ApiClient.get('/events/'+id); 20 | }, 21 | 22 | 23 | } 24 | 25 | -------------------------------------------------------------------------------- /src/views/AboutView.vue: -------------------------------------------------------------------------------- 1 | 32 | 33 | 134 | 137 | -------------------------------------------------------------------------------- /src/views/EventdetailsView.vue: -------------------------------------------------------------------------------- 1 | 31 | 32 | -------------------------------------------------------------------------------- /src/views/HomeView.vue: -------------------------------------------------------------------------------- 1 | 37 | 38 | 64 | 65 | 93 | -------------------------------------------------------------------------------- /src/views/TestEventView.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 42 | -------------------------------------------------------------------------------- /src/views/contact.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 31 | 32 | -------------------------------------------------------------------------------- /vue.config.js: -------------------------------------------------------------------------------- 1 | const { defineConfig } = require('@vue/cli-service') 2 | module.exports = defineConfig({ 3 | lintOnSave:false, 4 | transpileDependencies: true, 5 | }) 6 | --------------------------------------------------------------------------------