diff --git a/assets/css/fonts.css b/assets/css/fonts.css new file mode 100644 index 0000000..190dc25 --- /dev/null +++ b/assets/css/fonts.css @@ -0,0 +1,378 @@ +/* cyrillic-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 800; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 800; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 800; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 800; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 800; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 800; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 800; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: url(../fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} diff --git a/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2 b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2 new file mode 100644 index 0000000..d750914 Binary files /dev/null and b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2 differ diff --git a/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2 b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2 new file mode 100644 index 0000000..d15208d Binary files /dev/null and b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2 differ diff --git a/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2 b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2 new file mode 100644 index 0000000..024f077 Binary files /dev/null and b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2 differ diff --git a/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2 b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2 new file mode 100644 index 0000000..479d010 Binary files /dev/null and b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2 differ diff --git a/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2 b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2 new file mode 100644 index 0000000..de83a9c Binary files /dev/null and b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2 differ diff --git a/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2 b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2 new file mode 100644 index 0000000..6e7141f Binary files /dev/null and b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2 differ diff --git a/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2 b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2 new file mode 100644 index 0000000..a40c469 Binary files /dev/null and b/assets/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2 differ diff --git a/assets/images/cars/car_25.jpg b/assets/images/cars/car_25.jpg new file mode 100644 index 0000000..7659395 Binary files /dev/null and b/assets/images/cars/car_25.jpg differ diff --git a/assets/images/cars/car_26.jpg b/assets/images/cars/car_26.jpg new file mode 100644 index 0000000..78c1113 Binary files /dev/null and b/assets/images/cars/car_26.jpg differ diff --git a/assets/images/cars/car_27.jpg b/assets/images/cars/car_27.jpg new file mode 100644 index 0000000..434008e Binary files /dev/null and b/assets/images/cars/car_27.jpg differ diff --git a/assets/images/cars/car_28.jpg b/assets/images/cars/car_28.jpg new file mode 100644 index 0000000..d386b71 Binary files /dev/null and b/assets/images/cars/car_28.jpg differ diff --git a/assets/images/cars/car_29.jpg b/assets/images/cars/car_29.jpg new file mode 100644 index 0000000..738b698 Binary files /dev/null and b/assets/images/cars/car_29.jpg differ diff --git a/assets/images/cars/car_30.jpg b/assets/images/cars/car_30.jpg new file mode 100644 index 0000000..c4ca3b2 Binary files /dev/null and b/assets/images/cars/car_30.jpg differ diff --git a/assets/images/cars/car_31.jpg b/assets/images/cars/car_31.jpg new file mode 100644 index 0000000..a00b22d Binary files /dev/null and b/assets/images/cars/car_31.jpg differ diff --git a/assets/images/cars/car_32.jpg b/assets/images/cars/car_32.jpg new file mode 100644 index 0000000..20b0cc7 Binary files /dev/null and b/assets/images/cars/car_32.jpg differ diff --git a/assets/images/cars/car_33.jpg b/assets/images/cars/car_33.jpg new file mode 100644 index 0000000..ae69e1c Binary files /dev/null and b/assets/images/cars/car_33.jpg differ diff --git a/assets/images/cars/car_34.jpg b/assets/images/cars/car_34.jpg new file mode 100644 index 0000000..89803b8 Binary files /dev/null and b/assets/images/cars/car_34.jpg differ diff --git a/assets/images/cars/car_35.jpg b/assets/images/cars/car_35.jpg new file mode 100644 index 0000000..61e9a57 Binary files /dev/null and b/assets/images/cars/car_35.jpg differ diff --git a/assets/images/cars/car_36.jpg b/assets/images/cars/car_36.jpg new file mode 100644 index 0000000..915068f Binary files /dev/null and b/assets/images/cars/car_36.jpg differ diff --git a/assets/images/cars/car_37.jpg b/assets/images/cars/car_37.jpg new file mode 100644 index 0000000..bca178c Binary files /dev/null and b/assets/images/cars/car_37.jpg differ diff --git a/assets/images/cars/car_38.jpg b/assets/images/cars/car_38.jpg new file mode 100644 index 0000000..2cb6426 Binary files /dev/null and b/assets/images/cars/car_38.jpg differ diff --git a/assets/images/cars/car_39.jpg b/assets/images/cars/car_39.jpg new file mode 100644 index 0000000..4c0c84b Binary files /dev/null and b/assets/images/cars/car_39.jpg differ diff --git a/assets/images/cars/car_40.jpg b/assets/images/cars/car_40.jpg new file mode 100644 index 0000000..e93e744 Binary files /dev/null and b/assets/images/cars/car_40.jpg differ diff --git a/assets/images/cars/car_41.jpg b/assets/images/cars/car_41.jpg new file mode 100644 index 0000000..c893b2e Binary files /dev/null and b/assets/images/cars/car_41.jpg differ diff --git a/assets/images/cars/car_42.jpg b/assets/images/cars/car_42.jpg new file mode 100644 index 0000000..73816d8 Binary files /dev/null and b/assets/images/cars/car_42.jpg differ diff --git a/assets/images/cars/car_43.jpg b/assets/images/cars/car_43.jpg new file mode 100644 index 0000000..b443b67 Binary files /dev/null and b/assets/images/cars/car_43.jpg differ diff --git a/assets/images/cars/car_44.jpg b/assets/images/cars/car_44.jpg new file mode 100644 index 0000000..0e8341a Binary files /dev/null and b/assets/images/cars/car_44.jpg differ diff --git a/assets/images/placeholder-car.jpg b/assets/images/placeholder-car.jpg new file mode 100644 index 0000000..7da6ce8 Binary files /dev/null and b/assets/images/placeholder-car.jpg differ diff --git a/db/database.sql b/db/database.sql index fadff5e..4fed2ab 100644 --- a/db/database.sql +++ b/db/database.sql @@ -1,38 +1,97 @@ --- AfgCars Database Schema +/*M!999999\- enable the sandbox mode */ +-- MariaDB dump 10.19 Distrib 10.11.14-MariaDB, for debian-linux-gnu (x86_64) +-- +-- Host: localhost Database: app_38703 +-- ------------------------------------------------------ +-- Server version 10.11.14-MariaDB-0+deb12u2 -SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; -START TRANSACTION; -SET time_zone = "+00:00"; +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; -- --- Table structure for table `users` +-- Table structure for table `car_images` -- -CREATE TABLE IF NOT EXISTS `users` ( +DROP TABLE IF EXISTS `car_images`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `car_images` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(100) NOT NULL, - `email` varchar(100) NOT NULL UNIQUE, - `password` varchar(255) NOT NULL, - `role` enum('guest','user','admin') DEFAULT 'user', - `status` enum('active','inactive') DEFAULT 'active', - `created_at` timestamp DEFAULT CURRENT_TIMESTAMP, - `deleted_at` timestamp NULL DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + `car_id` int(11) NOT NULL, + `image_path` varchar(255) NOT NULL, + `is_main` tinyint(1) DEFAULT 0, + PRIMARY KEY (`id`), + KEY `car_id` (`car_id`), + CONSTRAINT `car_images_ibfk_1` FOREIGN KEY (`car_id`) REFERENCES `cars` (`id`) ON DELETE CASCADE +) ENGINE=InnoDB AUTO_INCREMENT=41 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; +/*!40101 SET character_set_client = @saved_cs_client */; -- --- Dumping data for table `users` +-- Dumping data for table `car_images` -- -INSERT INTO `users` (`name`, `email`, `password`, `role`) VALUES -('Admin', 'admin@gmail.com', '$2y$10$TKh8H1.PfQx37YgCzwiKb.KjNyWgaHb9cbcoQgdIVFlYg7B77UdFm', 'admin'); --- Default password is '12345678' +LOCK TABLES `car_images` WRITE; +/*!40000 ALTER TABLE `car_images` DISABLE KEYS */; +INSERT INTO `car_images` VALUES +(1,5,'https://images.pexels.com/photos/170811/pexels-photo-170811.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(2,6,'https://images.pexels.com/photos/116675/pexels-photo-116675.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(3,7,'https://images.pexels.com/photos/337909/pexels-photo-337909.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(4,8,'https://images.pexels.com/photos/912413/pexels-photo-912413.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(5,9,'https://images.pexels.com/photos/3729464/pexels-photo-3729464.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(6,10,'https://images.pexels.com/photos/337909/pexels-photo-337909.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(7,11,'https://images.pexels.com/photos/3729464/pexels-photo-3729464.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(8,12,'https://images.pexels.com/photos/112460/pexels-photo-112460.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(9,13,'https://images.pexels.com/photos/1149137/pexels-photo-1149137.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(10,14,'https://images.pexels.com/photos/3729464/pexels-photo-3729464.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(11,15,'https://images.pexels.com/photos/1149137/pexels-photo-1149137.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(12,16,'https://images.pexels.com/photos/1149137/pexels-photo-1149137.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(13,17,'https://images.pexels.com/photos/210019/pexels-photo-210019.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(14,18,'https://images.pexels.com/photos/1149137/pexels-photo-1149137.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(15,19,'https://images.pexels.com/photos/3729464/pexels-photo-3729464.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(16,20,'https://images.pexels.com/photos/337909/pexels-photo-337909.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(17,21,'https://images.pexels.com/photos/210019/pexels-photo-210019.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(18,22,'https://images.pexels.com/photos/912413/pexels-photo-912413.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(19,23,'https://images.pexels.com/photos/337909/pexels-photo-337909.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(20,24,'https://images.pexels.com/photos/112460/pexels-photo-112460.jpeg?auto=compress&cs=tinysrgb&w=600',1), +(21,25,'assets/images/cars/car_25.jpg',1), +(22,26,'assets/images/cars/car_26.jpg',1), +(23,27,'assets/images/cars/car_27.jpg',1), +(24,28,'assets/images/cars/car_28.jpg',1), +(25,29,'assets/images/cars/car_29.jpg',1), +(26,30,'assets/images/cars/car_30.jpg',1), +(27,31,'assets/images/cars/car_31.jpg',1), +(28,32,'assets/images/cars/car_32.jpg',1), +(29,33,'assets/images/cars/car_33.jpg',1), +(30,34,'assets/images/cars/car_34.jpg',1), +(31,35,'assets/images/cars/car_35.jpg',1), +(32,36,'assets/images/cars/car_36.jpg',1), +(33,37,'assets/images/cars/car_37.jpg',1), +(34,38,'assets/images/cars/car_38.jpg',1), +(35,39,'assets/images/cars/car_39.jpg',1), +(36,40,'assets/images/cars/car_40.jpg',1), +(37,41,'assets/images/cars/car_41.jpg',1), +(38,42,'assets/images/cars/car_42.jpg',1), +(39,43,'assets/images/cars/car_43.jpg',1), +(40,44,'assets/images/cars/car_44.jpg',1); +/*!40000 ALTER TABLE `car_images` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `cars` -- -CREATE TABLE IF NOT EXISTS `cars` ( +DROP TABLE IF EXISTS `cars`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `cars` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL, `brand` varchar(50) NOT NULL, @@ -40,54 +99,107 @@ CREATE TABLE IF NOT EXISTS `cars` ( `year` int(11) NOT NULL, `price` decimal(10,2) NOT NULL, `city` varchar(50) NOT NULL, - `description` text, + `description` text DEFAULT NULL, `status` enum('pending','approved','rejected','sold') DEFAULT 'pending', - `is_hot_deal` boolean DEFAULT FALSE, - `created_at` timestamp DEFAULT CURRENT_TIMESTAMP, + `is_hot_deal` tinyint(1) DEFAULT 0, + `created_at` timestamp NULL DEFAULT current_timestamp(), `deleted_at` timestamp NULL DEFAULT NULL, PRIMARY KEY (`id`), KEY `user_id` (`user_id`), CONSTRAINT `cars_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; +) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; +/*!40101 SET character_set_client = @saved_cs_client */; -- --- Table structure for table `car_images` +-- Dumping data for table `cars` -- -CREATE TABLE IF NOT EXISTS `car_images` ( +LOCK TABLES `cars` WRITE; +/*!40000 ALTER TABLE `cars` DISABLE KEYS */; +INSERT INTO `cars` VALUES +(1,1,'Toyota','Land Cruiser',2023,85000.00,'Kabul','Brand new armored Land Cruiser.','approved',1,'2026-02-23 08:30:42',NULL), +(2,1,'Mercedes-Benz','G-Wagon',2022,120000.00,'Kabul','Luxury performance SUV.','approved',1,'2026-02-23 08:30:42',NULL), +(3,1,'Lexus','LX570',2021,95000.00,'Herat','Full option premium SUV.','approved',1,'2026-02-23 08:30:42',NULL), +(4,1,'Toyota','Corolla',2020,15000.00,'Mazar-i-Sharif','Reliable and fuel efficient.','approved',1,'2026-02-23 08:30:42',NULL), +(5,1,'Honda','CR-V',2023,108176.00,'Ghazni','Luxury interior, premium sound system, and smooth ride.','approved',1,'2026-02-23 08:38:51',NULL), +(6,1,'Honda','CR-V',2020,92260.00,'Kunduz','Very clean inside and out, low mileage.','approved',0,'2026-02-23 08:38:51',NULL), +(7,1,'Hyundai','Elantra',2018,106805.00,'Mazar-i-Sharif','Powerful engine, off-road capabilities, and spacious.','approved',0,'2026-02-23 08:38:51',NULL), +(8,1,'Lexus','RX350',2022,113917.00,'Jalalabad','Fuel efficient, perfect for city driving.','approved',0,'2026-02-23 08:38:51',NULL), +(9,1,'Toyota','4Runner',2019,9825.00,'Kandahar','Recently imported, custom cleared, and plate registered.','approved',0,'2026-02-23 08:38:51',NULL), +(10,1,'Ford','Mustang',2015,73007.00,'Balkh','Powerful engine, off-road capabilities, and spacious.','approved',1,'2026-02-23 08:38:51',NULL), +(11,1,'Lexus','GX460',2019,55171.00,'Kunduz','Fuel efficient, perfect for city driving.','approved',1,'2026-02-23 08:38:51',NULL), +(12,1,'Mercedes-Benz','E-Class',2021,32368.00,'Balkh','Very clean inside and out, low mileage.','approved',0,'2026-02-23 08:38:51',NULL), +(13,1,'Lexus','GX460',2016,113113.00,'Jalalabad','Top of the line model with all modern features.','approved',0,'2026-02-23 08:38:51',NULL), +(14,1,'Honda','CR-V',2024,47994.00,'Kabul','Top of the line model with all modern features.','approved',1,'2026-02-23 08:38:51',NULL), +(15,1,'BMW','X6',2023,47523.00,'Kunduz','Very clean inside and out, low mileage.','approved',0,'2026-02-23 08:38:51',NULL), +(16,1,'Lexus','LX570',2024,16004.00,'Balkh','Excellent condition, very well maintained.','approved',1,'2026-02-23 08:38:51',NULL), +(17,1,'Ford','F-150',2017,94685.00,'Mazar-i-Sharif','Very clean inside and out, low mileage.','approved',0,'2026-02-23 08:38:51',NULL), +(18,1,'Hyundai','Elantra',2018,72033.00,'Jalalabad','Very clean inside and out, low mileage.','approved',1,'2026-02-23 08:38:51',NULL), +(19,1,'Lexus','RX350',2019,22049.00,'Kabul','Powerful engine, off-road capabilities, and spacious.','approved',0,'2026-02-23 08:38:51',NULL), +(20,1,'Toyota','Corolla',2015,46604.00,'Kunduz','Very clean inside and out, low mileage.','approved',0,'2026-02-23 08:38:51',NULL), +(21,1,'Mercedes-Benz','E-Class',2022,122658.00,'Kandahar','Full option, armored, and ready for any terrain.','approved',1,'2026-02-23 08:38:51',NULL), +(22,1,'BMW','X5',2023,129562.00,'Balkh','Powerful engine, off-road capabilities, and spacious.','approved',0,'2026-02-23 08:38:51',NULL), +(23,1,'Ford','Explorer',2019,83940.00,'Kandahar','Recently imported, custom cleared, and plate registered.','approved',0,'2026-02-23 08:38:51',NULL), +(24,1,'Toyota','Hilux',2018,93171.00,'Mazar-i-Sharif','Fuel efficient, perfect for city driving.','approved',0,'2026-02-23 08:38:51',NULL), +(25,1,'Toyota','Camry',2022,25000.00,'Kabul','Excellent condition, low mileage, full options.','approved',1,'2026-02-23 09:39:14',NULL), +(26,1,'Honda','Accord',2021,22000.00,'Herat','Well maintained, fuel efficient, clean interior.','approved',0,'2026-02-23 09:39:14',NULL), +(27,1,'Ford','F-150',2023,45000.00,'Kandahar','Powerful truck, brand new, ready for heavy duty.','approved',1,'2026-02-23 09:39:14',NULL), +(28,1,'BMW','3 Series',2020,32000.00,'Mazar-i-Sharif','Luxury sedan, premium sound system, sunroof.','approved',0,'2026-02-23 09:39:14',NULL), +(29,1,'Mercedes-Benz','C-Class',2021,38000.00,'Jalalabad','Elegant design, smooth ride, advanced safety features.','approved',1,'2026-02-23 09:39:14',NULL), +(30,1,'Audi','A4',2022,35000.00,'Kabul','Quattro all-wheel drive, leather seats, virtual cockpit.','approved',0,'2026-02-23 09:39:14',NULL), +(31,1,'Tesla','Model 3',2023,40000.00,'Kabul','Electric car, long range, autopilot enabled.','approved',1,'2026-02-23 09:39:14',NULL), +(32,1,'Hyundai','Elantra',2021,18000.00,'Herat','Reliable daily driver, great gas mileage.','approved',0,'2026-02-23 09:39:14',NULL), +(33,1,'Kia','Forte',2022,19500.00,'Kandahar','Sporty look, modern technology, long warranty.','approved',0,'2026-02-23 09:39:14',NULL), +(34,1,'Mazda','3',2021,21000.00,'Mazar-i-Sharif','Fun to drive, stylish exterior, high-quality materials.','approved',0,'2026-02-23 09:39:14',NULL), +(35,1,'Volkswagen','Jetta',2020,17500.00,'Kabul','German engineering, spacious cabin, comfortable ride.','approved',0,'2026-02-23 09:39:14',NULL), +(36,1,'Chevrolet','Malibu',2022,23000.00,'Herat','Smooth performance, quiet interior, spacious trunk.','approved',0,'2026-02-23 09:39:14',NULL), +(37,1,'Nissan','Altima',2021,20000.00,'Jalalabad','All-wheel drive, comfortable seats, good fuel economy.','approved',0,'2026-02-23 09:39:14',NULL), +(38,1,'Subaru','Impreza',2022,21500.00,'Kabul','Standard AWD, great safety ratings, durable build.','approved',0,'2026-02-23 09:39:14',NULL), +(39,1,'Lexus','IS',2021,36000.00,'Kandahar','Refined luxury, excellent reliability, sharp handling.','approved',1,'2026-02-23 09:39:14',NULL), +(40,1,'Volvo','S60',2022,39000.00,'Mazar-i-Sharif','Award-winning safety, Scandinavian design, powerful engine.','approved',0,'2026-02-23 09:39:14',NULL), +(41,1,'Cadillac','CT4',2021,33000.00,'Kabul','American luxury, sporty performance, advanced tech.','approved',0,'2026-02-23 09:39:14',NULL), +(42,1,'Genesis','G70',2022,37000.00,'Herat','Premium interior, athletic handling, great value.','approved',1,'2026-02-23 09:39:14',NULL), +(43,1,'Infiniti','Q50',2020,28000.00,'Kandahar','Dynamic performance, twin-turbo engine, stylish looks.','approved',0,'2026-02-23 09:39:14',NULL), +(44,1,'Acura','TLX',2021,31000.00,'Jalalabad','Precision crafted performance, comfortable and tech-focused.','approved',0,'2026-02-23 09:39:14',NULL); +/*!40000 ALTER TABLE `cars` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `contact_messages` +-- + +DROP TABLE IF EXISTS `contact_messages`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `contact_messages` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `car_id` int(11) NOT NULL, - `image_path` varchar(255) NOT NULL, - `is_main` boolean DEFAULT FALSE, - PRIMARY KEY (`id`), - KEY `car_id` (`car_id`), - CONSTRAINT `car_images_ibfk_1` FOREIGN KEY (`car_id`) REFERENCES `cars` (`id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + `name` varchar(100) DEFAULT NULL, + `email` varchar(100) DEFAULT NULL, + `subject` varchar(200) DEFAULT NULL, + `message` text DEFAULT NULL, + `status` enum('unread','read','answered') DEFAULT 'unread', + `created_at` timestamp NULL DEFAULT current_timestamp(), + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; +/*!40101 SET character_set_client = @saved_cs_client */; -- --- Table structure for table `reviews` +-- Dumping data for table `contact_messages` -- -CREATE TABLE IF NOT EXISTS `reviews` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `car_id` int(11) NOT NULL, - `user_id` int(11) NOT NULL, - `rating` int(11) DEFAULT NULL CHECK (`rating` >= 1 and `rating` <= 5), - `comment` text, - `status` enum('pending','approved') DEFAULT 'pending', - `created_at` timestamp DEFAULT CURRENT_TIMESTAMP, - PRIMARY KEY (`id`), - KEY `car_id` (`car_id`), - KEY `user_id` (`user_id`), - CONSTRAINT `reviews_ibfk_1` FOREIGN KEY (`car_id`) REFERENCES `cars` (`id`) ON DELETE CASCADE, - CONSTRAINT `reviews_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; +LOCK TABLES `contact_messages` WRITE; +/*!40000 ALTER TABLE `contact_messages` DISABLE KEYS */; +/*!40000 ALTER TABLE `contact_messages` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `purchases` -- -CREATE TABLE IF NOT EXISTS `purchases` ( +DROP TABLE IF EXISTS `purchases`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `purchases` ( `id` int(11) NOT NULL AUTO_INCREMENT, `car_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, @@ -95,27 +207,95 @@ CREATE TABLE IF NOT EXISTS `purchases` ( `buyer_email` varchar(100) DEFAULT NULL, `buyer_phone` varchar(20) DEFAULT NULL, `status` enum('pending','completed','cancelled') DEFAULT 'pending', - `created_at` timestamp DEFAULT CURRENT_TIMESTAMP, + `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), KEY `car_id` (`car_id`), KEY `user_id` (`user_id`), CONSTRAINT `purchases_ibfk_1` FOREIGN KEY (`car_id`) REFERENCES `cars` (`id`) ON DELETE CASCADE, CONSTRAINT `purchases_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; +/*!40101 SET character_set_client = @saved_cs_client */; -- --- Table structure for table `contact_messages` +-- Dumping data for table `purchases` -- -CREATE TABLE IF NOT EXISTS `contact_messages` ( +LOCK TABLES `purchases` WRITE; +/*!40000 ALTER TABLE `purchases` DISABLE KEYS */; +/*!40000 ALTER TABLE `purchases` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `reviews` +-- + +DROP TABLE IF EXISTS `reviews`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `reviews` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(100) DEFAULT NULL, - `email` varchar(100) DEFAULT NULL, - `subject` varchar(200) DEFAULT NULL, - `message` text, - `status` enum('unread','read','answered') DEFAULT 'unread', - `created_at` timestamp DEFAULT CURRENT_TIMESTAMP, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + `car_id` int(11) NOT NULL, + `user_id` int(11) NOT NULL, + `rating` int(11) DEFAULT NULL CHECK (`rating` >= 1 and `rating` <= 5), + `comment` text DEFAULT NULL, + `status` enum('pending','approved') DEFAULT 'pending', + `created_at` timestamp NULL DEFAULT current_timestamp(), + PRIMARY KEY (`id`), + KEY `car_id` (`car_id`), + KEY `user_id` (`user_id`), + CONSTRAINT `reviews_ibfk_1` FOREIGN KEY (`car_id`) REFERENCES `cars` (`id`) ON DELETE CASCADE, + CONSTRAINT `reviews_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; +/*!40101 SET character_set_client = @saved_cs_client */; -COMMIT; +-- +-- Dumping data for table `reviews` +-- + +LOCK TABLES `reviews` WRITE; +/*!40000 ALTER TABLE `reviews` DISABLE KEYS */; +/*!40000 ALTER TABLE `reviews` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `users` +-- + +DROP TABLE IF EXISTS `users`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `users` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + `email` varchar(100) NOT NULL, + `password` varchar(255) NOT NULL, + `role` enum('guest','user','admin') DEFAULT 'user', + `status` enum('active','inactive') DEFAULT 'active', + `created_at` timestamp NULL DEFAULT current_timestamp(), + `deleted_at` timestamp NULL DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `email` (`email`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `users` +-- + +LOCK TABLES `users` WRITE; +/*!40000 ALTER TABLE `users` DISABLE KEYS */; +INSERT INTO `users` VALUES +(1,'Admin','admin@gmail.com','$2y$10$JCXfZuRFtFozIdO.r40iQeueUsqIWutBjlAS/8hkL/7rVbPd2JOhu','admin','active','2026-02-23 08:29:20',NULL); +/*!40000 ALTER TABLE `users` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2026-02-23 9:40:16 diff --git a/includes/header.php b/includes/header.php index cbb4cb0..a6e95b7 100644 --- a/includes/header.php +++ b/includes/header.php @@ -12,9 +12,9 @@ $projectDescription = $_SERVER['PROJECT_DESCRIPTION'] ?? 'Premium Car Marketplac